UNPKG

@accounter/client

Version:
4 lines 110 kB
import{s as e}from"./dist-ypP48_Ax.js";import{i as t,o as n,t as r}from"./utils-CbS-oR5I.js";import{i,r as a,t as o}from"./error-handling-CKe_iwSC.js";import{a as s,s as c,t as l}from"./routes-D0AKaVmS.js";import{n as u,t as d}from"./loader-circle-CfW9jOIr.js";import{An as f,B as p,Ct as m,Dn as h,Dr as g,Dt as _,Er as v,Et as y,Fn as b,Fr as x,H as S,It as C,J as w,K as T,Kt as E,Lt as D,Mn as O,O as ee,On as k,Ot as te,Qn as ne,Qt as re,Rt as ie,Tr as A,V as ae,W as oe,Wt as se,Xt as ce,Zn as j,ar as M,at as le,ct as N,en as P,hr as ue,i as de,ir as F,it as fe,jr as pe,l as me,lt as he,m as ge,mr as I,nn as _e,nr as ve,nt as ye,o as be,pt as xe,q as Se,qt as Ce,r as we,rn as Te,rr as Ee,s as De,t as Oe,tn as ke,tr as Ae,tt as je,v as Me,vr as Ne,x as Pe,xt as Fe,yt as Ie,z as Le,zn as Re,zt as ze}from"./common-DLHrF4-C.js";import{i as Be,n as Ve,r as He,t as Ue}from"./bank-deposits-BgJYhSBZ.js";import{a as We,c as Ge,d as Ke,dt as qe,f as Je,i as Ye,l as Xe,mt as Ze,n as Qe,o as $e,p as et,pt as tt,r as nt,s as rt,t as it,u as at,ut as ot}from"./select-Bp1lD5cE.js";import{_ as st,d as ct,f as L,g as lt,h as ut,l as dt,m as ft,p as pt,u as mt}from"./separator-CzGTi79B.js";import{t as ht}from"./triangle-alert-_tQzp_G-.js";import{t as R}from"./button-DUNsVBiu.js";import{i as z,n as B,r as V,t as gt}from"./accordion-Ckkmz79P.js";import{Al as _t,Bc as vt,El as H,Gc as yt,Hc as bt,Jc as xt,Kc as St,Ol as U,Qc as Ct,Tl as wt,Ul as Tt,Vc as Et,Wc as Dt,Xc as Ot,Zc as W,a as kt,al as At,c as jt,cl as Mt,d as Nt,dl as Pt,i as G,il as Ft,n as It,nl as Lt,o as Rt,ol as zt,qc as Bt,r as K,rl as Vt,s as Ht,sl as Ut,t as Wt,ul as Gt}from"./table-CLAyk1Jz.js";import{n as Kt,o as qt,t as Jt}from"./card-DR4aRSHr.js";import{$n as Yt,En as Xt,Fa as Zt,Fn as Qt,Gi as $t,Ia as en,In as tn,Jt as nn,Kn as rn,Na as an,Pa as on,Qt as sn,T as cn,Ui as ln,Un as un,Xn as dn,Xt as fn,Yt as q,_r as pn,an as mn,as as hn,cn as gn,dn as _n,ei as vn,en as yn,f as bn,fn as xn,gr as Sn,hn as Cn,in as wn,ir as Tn,it as En,jn as Dn,mn as On,os as kn,po as An,sn as jn,ss as Mn,tt as Nn,wi as J,wr as Pn,za as Fn}from"./graphql-6oWwD3Rd.js";import{t as In}from"./Card-DlmMlgja.js";import{F as Ln}from"./index-CYnYhVCc.js";import{n as Rn,t as zn}from"./alert-55QsYEfR.js";import{i as Bn,o as Vn,r as Hn,t as Un}from"./empty-D4M2N2lX.js";import{t as Wn}from"./ledger-table-DGBmyVa6.js";import{a as Gn,c as Kn,i as qn,n as Jn,o as Yn,r as Xn,s as Zn,t as Qn}from"./transactions-table-C7X9r7t5.js";import{t as $n}from"./security-executions-table-DyapN-4Z.js";var er=u(`arrow-down-wide-narrow`,[[`path`,{d:`m3 16 4 4 4-4`,key:`1co6wj`}],[`path`,{d:`M7 20V4`,key:`1yoxec`}],[`path`,{d:`M11 4h10`,key:`1w87gc`}],[`path`,{d:`M11 8h7`,key:`djye34`}],[`path`,{d:`M11 12h4`,key:`q8tih4`}]]),tr=u(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),nr=u(`arrow-up-narrow-wide`,[[`path`,{d:`m3 8 4-4 4 4`,key:`11wl7u`}],[`path`,{d:`M7 4v16`,key:`1glfcx`}],[`path`,{d:`M11 12h4`,key:`q8tih4`}],[`path`,{d:`M11 16h7`,key:`uosisv`}],[`path`,{d:`M11 20h10`,key:`jvxblo`}]]),rr=u(`file-plus-corner`,[[`path`,{d:`M11.35 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v5.35`,key:`17jvcc`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M14 19h6`,key:`bvotb8`}],[`path`,{d:`M17 16v6`,key:`18yu1i`}]]),ir=u(`stretch-vertical`,[[`rect`,{width:`6`,height:`20`,x:`4`,y:`2`,rx:`2`,key:`19qu7m`}],[`rect`,{width:`6`,height:`20`,x:`14`,y:`2`,rx:`2`,key:`24v0nk`}]]),ar=u(`text-align-justify`,[[`path`,{d:`M3 5h18`,key:`1u36vt`}],[`path`,{d:`M3 12h18`,key:`1i2n21`}],[`path`,{d:`M3 19h18`,key:`awlh7x`}]]),Y=e(n()),or=e(i()),sr=Object.defineProperty,cr=Object.defineProperties,lr=Object.getOwnPropertyDescriptors,ur=Object.getOwnPropertySymbols,dr=Object.prototype.hasOwnProperty,fr=Object.prototype.propertyIsEnumerable,pr=(e,t,n)=>t in e?sr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,mr=(e,t)=>{for(var n in t||={})dr.call(t,n)&&pr(e,n,t[n]);if(ur)for(var n of ur(t))fr.call(t,n)&&pr(e,n,t[n]);return e},hr=(e,t)=>cr(e,lr(t)),gr=(e,t)=>{var n={};for(var r in e)dr.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&ur)for(var r of ur(e))t.indexOf(r)<0&&fr.call(e,r)&&(n[r]=e[r]);return n};function _r(e){if(!e||typeof e==`string`)return 0;let t=e/36;return Math.round((4+15*t**.25+t/5)*10)}function vr(e){return e?.current?e.current.scrollHeight:`auto`}var yr=typeof window<`u`&&window.requestAnimationFrame;function br({transitionDuration:e,transitionTimingFunction:t=`ease`,onTransitionEnd:n=()=>{},opened:r}){let i=(0,Y.useRef)(null),a={display:`none`,height:0,overflow:`hidden`},[o,s]=(0,Y.useState)(r?{}:a),c=e=>{(0,or.flushSync)(()=>s(e))},l=e=>{c(t=>mr(mr({},t),e))};function u(n){return{transition:`height ${e||_r(n)}ms ${t}`}}Ut(()=>{yr(r?()=>{l({willChange:`height`,display:`block`,overflow:`hidden`}),yr(()=>{let e=vr(i);l(hr(mr({},u(e)),{height:e}))})}:()=>{let e=vr(i);l(hr(mr({},u(e)),{willChange:`height`,height:e})),yr(()=>l({height:0,overflow:`hidden`}))})},[r]);let d=e=>{if(e.target===i.current&&e.propertyName===`height`){if(r){let e=vr(i);e===o.height?c({}):l({height:e}),n()}else o.height===0&&(c(a),n())}};function f(e={}){var t=e,{style:n={},refKey:a=`ref`}=t,s=gr(t,[`style`,`refKey`]);let c=s[a];return hr(mr({"aria-hidden":!r},s),{[a]:O(i,c),onTransitionEnd:d,style:mr(mr({boxSizing:`border-box`},n),o)})}return f}var xr=Object.defineProperty,Sr=Object.getOwnPropertySymbols,Cr=Object.prototype.hasOwnProperty,wr=Object.prototype.propertyIsEnumerable,Tr=(e,t,n)=>t in e?xr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Er=(e,t)=>{for(var n in t||={})Cr.call(t,n)&&Tr(e,n,t[n]);if(Sr)for(var n of Sr(t))wr.call(t,n)&&Tr(e,n,t[n]);return e},Dr=(e,t)=>{var n={};for(var r in e)Cr.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&Sr)for(var r of Sr(e))t.indexOf(r)<0&&wr.call(e,r)&&(n[r]=e[r]);return n},Or={transitionDuration:200,transitionTimingFunction:`ease`,animateOpacity:!0},kr=(0,Y.forwardRef)((e,t)=>{let n=Gt(`Collapse`,Or,e),{children:r,in:i,transitionDuration:a,transitionTimingFunction:o,style:s,onTransitionEnd:c,animateOpacity:l}=n,u=Dr(n,[`children`,`in`,`transitionDuration`,`transitionTimingFunction`,`style`,`onTransitionEnd`,`animateOpacity`]),d=Pt(),p=f(),m=d.respectReducedMotion&&p?0:a,{systemStyles:h,rest:g}=zt(u),_=br({opened:i,transitionDuration:m,transitionTimingFunction:o,onTransitionEnd:c});return m===0?i?Y.createElement(At,Er({},g),r):null:Y.createElement(At,Er({},_(Er(Er({style:s,ref:t},g),h))),Y.createElement(`div`,{style:{opacity:i||!l?1:0,transition:l?`opacity ${m}ms ${o}`:`none`}},r))});kr.displayName=`@mantine/core/Collapse`;var Ar=Object.defineProperty,jr=Object.defineProperties,Mr=Object.getOwnPropertyDescriptors,Nr=Object.getOwnPropertySymbols,Pr=Object.prototype.hasOwnProperty,Fr=Object.prototype.propertyIsEnumerable,Ir=(e,t,n)=>t in e?Ar(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Lr=(e,t)=>{for(var n in t||={})Pr.call(t,n)&&Ir(e,n,t[n]);if(Nr)for(var n of Nr(t))Fr.call(t,n)&&Ir(e,n,t[n]);return e},Rr=(e,t)=>jr(e,Mr(t)),zr=[`light`,`filled`,`outline`,`dot`,`gradient`],Br={xs:{fontSize:U(9),height:U(16)},sm:{fontSize:U(10),height:U(18)},md:{fontSize:U(11),height:U(20)},lg:{fontSize:U(13),height:U(26)},xl:{fontSize:U(16),height:U(32)}},Vr={xs:U(4),sm:U(4),md:U(6),lg:U(8),xl:U(10)};function Hr({theme:e,variant:t,color:n,size:r,gradient:i}){if(!zr.includes(t))return null;if(t===`dot`){let t=H({size:r,sizes:Vr});return{backgroundColor:`transparent`,color:e.colorScheme===`dark`?e.colors.dark[0]:e.colors.gray[7],border:`${U(1)} solid ${e.colorScheme===`dark`?e.colors.dark[3]:e.colors.gray[3]}`,paddingLeft:`calc(${H({size:r,sizes:e.spacing})} / 1.5 - ${t} / 2)`,"&::before":{content:`""`,display:`block`,width:t,height:t,borderRadius:t,backgroundColor:e.fn.themeColor(n,e.colorScheme===`dark`?4:e.fn.primaryShade(`light`),!0),marginRight:t}}}let a=e.fn.variant({color:n,variant:t,gradient:i});return{background:a.background,color:a.color,border:`${U(t===`gradient`?0:1)} solid ${a.border}`}}var Ur=Mt((e,{color:t,radius:n,gradient:r,fullWidth:i},{variant:a,size:o})=>{let{fontSize:s,height:c}=o in Br?Br[o]:Br.md;return{leftSection:{marginRight:`calc(${e.spacing.xs} / 2)`},rightSection:{marginLeft:`calc(${e.spacing.xs} / 2)`},inner:{whiteSpace:`nowrap`,overflow:`hidden`,textOverflow:`ellipsis`},root:Lr(Rr(Lr(Lr({},e.fn.focusStyles()),e.fn.fontStyles()),{fontSize:s,height:c,WebkitTapHighlightColor:`transparent`,lineHeight:`calc(${c} - ${U(2)})`,textDecoration:`none`,padding:`0 calc(${H({size:o,sizes:e.spacing})} / 1.5)`,boxSizing:`border-box`,display:i?`flex`:`inline-flex`,alignItems:`center`,justifyContent:`center`,width:i?`100%`:`auto`,textTransform:`uppercase`,borderRadius:e.fn.radius(n),fontWeight:700,letterSpacing:U(.25),cursor:`inherit`,textOverflow:`ellipsis`,overflow:`hidden`}),Hr({theme:e,variant:a,color:t,size:o,gradient:r}))}}),Wr=Object.defineProperty,Gr=Object.getOwnPropertySymbols,Kr=Object.prototype.hasOwnProperty,qr=Object.prototype.propertyIsEnumerable,Jr=(e,t,n)=>t in e?Wr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Yr=(e,t)=>{for(var n in t||={})Kr.call(t,n)&&Jr(e,n,t[n]);if(Gr)for(var n of Gr(t))qr.call(t,n)&&Jr(e,n,t[n]);return e},Xr=(e,t)=>{var n={};for(var r in e)Kr.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&Gr)for(var r of Gr(e))t.indexOf(r)<0&&qr.call(e,r)&&(n[r]=e[r]);return n},Zr={variant:`light`,size:`md`,radius:`xl`},Qr=(0,Y.forwardRef)((e,t)=>{let n=Gt(`Badge`,Zr,e),{className:r,color:i,variant:a,fullWidth:o,children:s,size:c,leftSection:l,rightSection:u,radius:d,gradient:f,classNames:p,styles:m,unstyled:h}=n,g=Xr(n,[`className`,`color`,`variant`,`fullWidth`,`children`,`size`,`leftSection`,`rightSection`,`radius`,`gradient`,`classNames`,`styles`,`unstyled`]),{classes:_,cx:v}=Ur({fullWidth:o,color:i,radius:d,gradient:f},{classNames:p,styles:m,name:`Badge`,unstyled:h,variant:a,size:c});return Y.createElement(At,Yr({className:v(_.root,r),ref:t},g),l&&Y.createElement(`span`,{className:_.leftSection},l),Y.createElement(`span`,{className:_.inner},s),u&&Y.createElement(`span`,{className:_.rightSection},u))});Qr.displayName=`@mantine/core/Badge`;var $r=_t(Qr),ei=Object.defineProperty,ti=Object.defineProperties,ni=Object.getOwnPropertyDescriptors,ri=Object.getOwnPropertySymbols,ii=Object.prototype.hasOwnProperty,ai=Object.prototype.propertyIsEnumerable,oi=(e,t,n)=>t in e?ei(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,si=(e,t)=>{for(var n in t||={})ii.call(t,n)&&oi(e,n,t[n]);if(ri)for(var n of ri(t))ai.call(t,n)&&oi(e,n,t[n]);return e},ci=(e,t)=>ti(e,ni(t)),li={xs:U(16),sm:U(20),md:U(26),lg:U(32),xl:U(40)},ui=[`filled`,`light`,`gradient`,`outline`,`default`];function di({theme:e,variant:t,color:n,gradient:r}){if(!ui.includes(t))return null;let i=e.fn.variant({variant:t,color:n||e.primaryColor,gradient:r,primaryFallback:!1});return{backgroundColor:i.background,color:i.color,backgroundImage:t===`gradient`?i.background:void 0,border:`${U(t===`gradient`?0:1)} solid ${i.border}`}}var fi=Mt((e,{color:t,radius:n,gradient:r},{variant:i,size:a})=>{let o=H({size:a,sizes:li});return{root:si(ci(si({},e.fn.fontStyles()),{display:`inline-flex`,alignItems:`center`,justifyContent:`center`,boxSizing:`border-box`,width:o,height:o,minWidth:o,minHeight:o,borderRadius:e.fn.radius(n)}),di({theme:e,variant:i,gradient:r,color:t}))}}),pi=Object.defineProperty,mi=Object.getOwnPropertySymbols,hi=Object.prototype.hasOwnProperty,gi=Object.prototype.propertyIsEnumerable,_i=(e,t,n)=>t in e?pi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,vi=(e,t)=>{for(var n in t||={})hi.call(t,n)&&_i(e,n,t[n]);if(mi)for(var n of mi(t))gi.call(t,n)&&_i(e,n,t[n]);return e},yi=(e,t)=>{var n={};for(var r in e)hi.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&mi)for(var r of mi(e))t.indexOf(r)<0&&gi.call(e,r)&&(n[r]=e[r]);return n},bi={size:`md`,variant:`filled`},xi=(0,Y.forwardRef)((e,t)=>{let n=Gt(`ThemeIcon`,bi,e),{className:r,size:i,radius:a,variant:o,color:s,children:c,gradient:l,unstyled:u}=n,d=yi(n,[`className`,`size`,`radius`,`variant`,`color`,`children`,`gradient`,`unstyled`]),{classes:f,cx:p}=fi({variant:o,radius:a,color:s,gradient:l},{name:`ThemeIcon`,unstyled:u,variant:o,size:i});return Y.createElement(At,vi({className:p(f.root,r),ref:t},d),c)});xi.displayName=`@mantine/core/ThemeIcon`;function Si({minDebitDate:e,minEventDate:t,minDocumentsDate:n,maxDebitDate:r,maxEventDate:i,maxDocumentsDate:a}){if(!n&&!t&&!e)return;let o=[n,t,e].filter(Boolean).map(e=>new Date(e).getTime()),s=[a,i,r].filter(Boolean).map(e=>new Date(e).getTime()),c=o.length>0?new Date(Math.min(...o)):void 0,l=s.length>0?new Date(Math.max(...s)):void 0,u=n||t||e;return{date:u?new Date(u):void 0,mostMinDate:c,mostMaxDate:l}}function Ci(e){return!!e?.mostMinDate&&!!e.mostMaxDate&&e.mostMinDate.getTime()!==e.mostMaxDate.getTime()}function wi(e){return Object.prototype.toString.call(e)===`[object Object]`}function Ti(e){return wi(e)||Array.isArray(e)}function Ei(){return!!(typeof window<`u`&&window.document&&window.document.createElement)}function Di(e,t){let n=Object.keys(e),r=Object.keys(t);return n.length!==r.length||JSON.stringify(Object.keys(e.breakpoints||{}))!==JSON.stringify(Object.keys(t.breakpoints||{}))?!1:n.every(n=>{let r=e[n],i=t[n];return typeof r==`function`?`${r}`==`${i}`:!Ti(r)||!Ti(i)?r===i:Di(r,i)})}function Oi(e){return e.concat().sort((e,t)=>e.name>t.name?1:-1).map(e=>e.options)}function ki(e,t){if(e.length!==t.length)return!1;let n=Oi(e),r=Oi(t);return n.every((e,t)=>{let n=r[t];return Di(e,n)})}function Ai(e){return typeof e==`number`}function ji(e){return typeof e==`string`}function Mi(e){return typeof e==`boolean`}function Ni(e){return Object.prototype.toString.call(e)===`[object Object]`}function X(e){return Math.abs(e)}function Pi(e){return Math.sign(e)}function Fi(e,t){return X(e-t)}function Ii(e,t){return e===0||t===0||X(e)<=X(t)?0:X(Fi(X(e),X(t))/e)}function Li(e){return Math.round(e*100)/100}function Ri(e){return Hi(e).map(Number)}function Z(e){return e[zi(e)]}function zi(e){return Math.max(0,e.length-1)}function Bi(e,t){return t===zi(e)}function Vi(e,t=0){return Array.from(Array(e),(e,n)=>t+n)}function Hi(e){return Object.keys(e)}function Ui(e,t){return[e,t].reduce((e,t)=>(Hi(t).forEach(n=>{let r=e[n],i=t[n];e[n]=Ni(r)&&Ni(i)?Ui(r,i):i}),e),{})}function Wi(e,t){return t.MouseEvent!==void 0&&e instanceof t.MouseEvent}function Gi(e,t){let n={start:r,center:i,end:a};function r(){return 0}function i(e){return a(e)/2}function a(e){return t-e}function o(r,i){return ji(e)?n[e](r):e(t,r,i)}return{measure:o}}function Ki(){let e=[];function t(t,n,i,a={passive:!0}){let o;if(`addEventListener`in t)t.addEventListener(n,i,a),o=()=>t.removeEventListener(n,i,a);else{let e=t;e.addListener(i),o=()=>e.removeListener(i)}return e.push(o),r}function n(){e=e.filter(e=>e())}let r={add:t,clear:n};return r}function qi(e,t,n,r){let i=Ki(),a=1e3/60,o=null,s=0,c=0;function l(){i.add(e,`visibilitychange`,()=>{e.hidden&&m()})}function u(){p(),i.clear()}function d(e){if(!c)return;o||(o=e,n(),n());let i=e-o;for(o=e,s+=i;s>=a;)n(),s-=a;r(s/a),c&&=t.requestAnimationFrame(d)}function f(){c||=t.requestAnimationFrame(d)}function p(){t.cancelAnimationFrame(c),o=null,s=0,c=0}function m(){o=null,s=0}return{init:l,destroy:u,start:f,stop:p,update:n,render:r}}function Ji(e,t){let n=t===`rtl`,r=e===`y`,i=r?`y`:`x`,a=r?`x`:`y`,o=!r&&n?-1:1,s=u(),c=d();function l(e){let{height:t,width:n}=e;return r?t:n}function u(){return r?`top`:n?`right`:`left`}function d(){return r?`bottom`:n?`left`:`right`}function f(e){return e*o}return{scroll:i,cross:a,startEdge:s,endEdge:c,measureSize:l,direction:f}}function Yi(e=0,t=0){let n=X(e-t);function r(t){return t<e}function i(e){return e>t}function a(e){return r(e)||i(e)}function o(n){return a(n)?r(n)?e:t:n}function s(e){return n?e-n*Math.ceil((e-t)/n):e}return{length:n,max:t,min:e,constrain:o,reachedAny:a,reachedMax:i,reachedMin:r,removeOffset:s}}function Xi(e,t,n){let{constrain:r}=Yi(0,e),i=e+1,a=o(t);function o(e){return n?X((i+e)%i):r(e)}function s(){return a}function c(e){return a=o(e),d}function l(e){return u().set(s()+e)}function u(){return Xi(e,s(),n)}let d={get:s,set:c,add:l,clone:u};return d}function Zi(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v){let{cross:y,direction:b}=e,x=[`INPUT`,`SELECT`,`TEXTAREA`],S={passive:!1},C=Ki(),w=Ki(),T=Yi(50,225).constrain(p.measure(20)),E={mouse:300,touch:400},D={mouse:500,touch:600},O=m?43:25,ee=!1,k=0,te=0,ne=!1,re=!1,ie=!1,A=!1;function ae(e){if(!v)return;function n(t){(Mi(v)||v(e,t))&&le(t)}let r=t;C.add(r,`dragstart`,e=>e.preventDefault(),S).add(r,`touchmove`,()=>void 0,S).add(r,`touchend`,()=>void 0).add(r,`touchstart`,n).add(r,`mousedown`,n).add(r,`touchcancel`,P).add(r,`contextmenu`,P).add(r,`click`,ue,!0)}function oe(){C.clear(),w.clear()}function se(){let e=A?n:t;w.add(e,`touchmove`,N,S).add(e,`touchend`,P).add(e,`mousemove`,N,S).add(e,`mouseup`,P)}function ce(e){let t=e.nodeName||``;return x.includes(t)}function j(){return(m?D:E)[A?`mouse`:`touch`]}function M(e,t){let n=d.add(Pi(e)*-1),r=u.byDistance(e,!m).distance;return m||X(e)<T?r:g&&t?r*.5:u.byIndex(n.get(),0).distance}function le(e){let t=Wi(e,r);A=t,ie=m&&t&&!e.buttons&&ee,ee=Fi(i.get(),o.get())>=2,!(t&&e.button!==0)&&(ce(e.target)||(ne=!0,a.pointerDown(e),l.useFriction(0).useDuration(0),i.set(o),se(),k=a.readPoint(e),te=a.readPoint(e,y),f.emit(`pointerDown`)))}function N(e){if(!Wi(e,r)&&e.touches.length>=2)return P(e);let t=a.readPoint(e),n=a.readPoint(e,y),o=Fi(t,k),c=Fi(n,te);if(!re&&!A&&(!e.cancelable||(re=o>c,!re)))return P(e);let u=a.pointerMove(e);o>h&&(ie=!0),l.useFriction(.3).useDuration(.75),s.start(),i.add(b(u)),e.preventDefault()}function P(e){let t=u.byDistance(0,!1).index!==d.get(),n=a.pointerUp(e)*j(),r=M(b(n),t),i=Ii(n,r),o=O-10*i,s=_+i/50;re=!1,ne=!1,w.clear(),l.useDuration(o).useFriction(s),c.distance(r,!m),A=!1,f.emit(`pointerUp`)}function ue(e){ie&&=(e.stopPropagation(),e.preventDefault(),!1)}function de(){return ne}return{init:ae,destroy:oe,pointerDown:de}}function Qi(e,t){let n,r;function i(e){return e.timeStamp}function a(n,r){let i=`client${(r||e.scroll)===`x`?`X`:`Y`}`;return(Wi(n,t)?n:n.touches[0])[i]}function o(e){return n=e,r=e,a(e)}function s(e){let t=a(e)-a(r),o=i(e)-i(n)>170;return r=e,o&&(n=e),t}function c(e){if(!n||!r)return 0;let t=a(r)-a(n),o=i(e)-i(n),s=i(e)-i(r)>170,c=t/o;return o&&!s&&X(c)>.1?c:0}return{pointerDown:o,pointerMove:s,pointerUp:c,readPoint:a}}function $i(){function e(e){let{offsetTop:t,offsetLeft:n,offsetWidth:r,offsetHeight:i}=e;return{top:t,right:n+r,bottom:t+i,left:n,width:r,height:i}}return{measure:e}}function ea(e){function t(t){return t/100*e}return{measure:t}}function ta(e,t,n,r,i,a,o){let s=[e].concat(r),c,l,u=[],d=!1;function f(e){return i.measureSize(o.measure(e))}function p(i){if(!a)return;l=f(e),u=r.map(f);function o(n){for(let a of n){if(d)return;let n=a.target===e,o=r.indexOf(a.target),s=n?l:u[o];if(X(f(n?e:r[o])-s)>=.5){i.reInit(),t.emit(`resize`);break}}}c=new ResizeObserver(e=>{(Mi(a)||a(i,e))&&o(e)}),n.requestAnimationFrame(()=>{s.forEach(e=>c.observe(e))})}function m(){d=!0,c&&c.disconnect()}return{init:p,destroy:m}}function na(e,t,n,r,i,a){let o=0,s=0,c=i,l=a,u=e.get(),d=0;function f(){let t=r.get()-e.get(),i=!c,a=0;return i?(o=0,n.set(r),e.set(r),a=t):(n.set(e),o+=t/c,o*=l,u+=o,e.add(o),a=u-d),s=Pi(a),d=u,x}function p(){return X(r.get()-t.get())<.001}function m(){return c}function h(){return s}function g(){return o}function _(){return y(i)}function v(){return b(a)}function y(e){return c=e,x}function b(e){return l=e,x}let x={direction:h,duration:m,velocity:g,seek:f,settled:p,useBaseFriction:v,useBaseDuration:_,useFriction:b,useDuration:y};return x}function ra(e,t,n,r,i){let a=i.measure(10),o=i.measure(50),s=Yi(.1,.99),c=!1;function l(){return!(c||!e.reachedAny(n.get())||!e.reachedAny(t.get()))}function u(i){if(!l())return;let c=X(e[e.reachedMin(t.get())?`min`:`max`]-t.get()),u=n.get()-t.get(),d=s.constrain(c/o);n.subtract(u*d),!i&&X(u)<a&&(n.set(e.constrain(n.get())),r.useDuration(25).useBaseFriction())}function d(e){c=!e}return{shouldConstrain:l,constrain:u,toggleActive:d}}function ia(e,t,n,r,i){let a=Yi(-t+e,0),o=d(),s=u(),c=f();function l(e,t){return Fi(e,t)<=1}function u(){let e=o[0],t=Z(o);return Yi(o.lastIndexOf(e),o.indexOf(t)+1)}function d(){return n.map((e,t)=>{let{min:r,max:i}=a,o=a.constrain(e),s=!t,c=Bi(n,t);return s?i:c||l(r,o)?r:l(i,o)?i:o}).map(e=>parseFloat(e.toFixed(3)))}function f(){if(t<=e+i)return[a.max];if(r===`keepSnaps`)return o;let{min:n,max:c}=s;return o.slice(n,c)}return{snapsContained:c,scrollContainLimit:s}}function aa(e,t,n){let r=t[0];return{limit:Yi(n?r-e:Z(t),r)}}function oa(e,t,n,r){let i=.1,{reachedMin:a,reachedMax:o}=Yi(t.min+i,t.max+i);function s(e){return e===1?o(n.get()):e===-1&&a(n.get())}function c(t){if(!s(t))return;let n=t*-1*e;r.forEach(e=>e.add(n))}return{loop:c}}function sa(e){let{max:t,length:n}=e;function r(e){let r=e-t;return n?r/-n:0}return{get:r}}function ca(e,t,n,r,i){let{startEdge:a,endEdge:o}=e,{groupSlides:s}=i,c=d().map(t.measure),l=f(),u=p();function d(){return s(r).map(e=>Z(e)[o]-e[0][a]).map(X)}function f(){return r.map(e=>n[a]-e[a]).map(e=>-X(e))}function p(){return s(l).map(e=>e[0]).map((e,t)=>e+c[t])}return{snaps:l,snapsAligned:u}}function la(e,t,n,r,i,a){let{groupSlides:o}=i,{min:s,max:c}=r,l=u();function u(){let r=o(a),i=!e||t===`keepSnaps`;return n.length===1?[a]:i?r:r.slice(s,c).map((e,t,n)=>{let r=!t,i=Bi(n,t);return r?Vi(Z(n[0])+1):i?Vi(zi(a)-Z(n)[0]+1,Z(n)[0]):e})}return{slideRegistry:l}}function ua(e,t,n,r,i){let{reachedAny:a,removeOffset:o,constrain:s}=r;function c(e){return e.concat().sort((e,t)=>X(e)-X(t))[0]}function l(n){let r=e?o(n):s(n),{index:i}=t.map((e,t)=>({diff:u(e-r,0),index:t})).sort((e,t)=>X(e.diff)-X(t.diff))[0];return{index:i,distance:r}}function u(t,r){let i=[t,t+n,t-n];if(!e)return t;if(!r)return c(i);let a=i.filter(e=>Pi(e)===r);return a.length?c(a):Z(i)-n}function d(e,n){return{index:e,distance:u(t[e]-i.get(),n)}}function f(n,r){let o=i.get()+n,{index:s,distance:c}=l(o),d=!e&&a(o);return!r||d?{index:s,distance:n}:{index:s,distance:n+u(t[s]-c,0)}}return{byDistance:f,byIndex:d,shortcut:u}}function da(e,t,n,r,i,a,o){function s(i){let s=i.distance,c=i.index!==t.get();a.add(s),s&&(r.duration()?e.start():(e.update(),e.render(1),e.update())),c&&(n.set(t.get()),t.set(i.index),o.emit(`select`))}function c(e,t){s(i.byDistance(e,t))}function l(e,n){let r=t.clone().set(e);s(i.byIndex(r.get(),n))}return{distance:c,index:l}}function fa(e,t,n,r,i,a,o,s){let c={passive:!0,capture:!0},l=0;function u(u){if(!s)return;function f(t){if(new Date().getTime()-l>10)return;o.emit(`slideFocusStart`),e.scrollLeft=0;let a=n.findIndex(e=>e.includes(t));Ai(a)&&(i.useDuration(0),r.index(a,0),o.emit(`slideFocus`))}a.add(document,`keydown`,d,!1),t.forEach((e,t)=>{a.add(e,`focus`,e=>{(Mi(s)||s(u,e))&&f(t)},c)})}function d(e){e.code===`Tab`&&(l=new Date().getTime())}return{init:u}}function pa(e){let t=e;function n(){return t}function r(e){t=o(e)}function i(e){t+=o(e)}function a(e){t-=o(e)}function o(e){return Ai(e)?e:e.get()}return{get:n,set:r,add:i,subtract:a}}function ma(e,t){let n=e.scroll===`x`?o:s,r=t.style,i=null,a=!1;function o(e){return`translate3d(${e}px,0px,0px)`}function s(e){return`translate3d(0px,${e}px,0px)`}function c(t){if(a)return;let o=Li(e.direction(t));o!==i&&(r.transform=n(o),i=o)}function l(e){a=!e}function u(){a||(r.transform=``,t.getAttribute(`style`)||t.removeAttribute(`style`))}return{clear:u,to:c,toggleActive:l}}function ha(e,t,n,r,i,a,o,s,c){let l=.5,u=Ri(i),d=Ri(i).reverse(),f=_().concat(v());function p(e,t){return e.reduce((e,t)=>e-i[t],t)}function m(e,t){return e.reduce((e,n)=>p(e,t)>0?e.concat([n]):e,[])}function h(e){return a.map((n,i)=>({start:n-r[i]+l+e,end:n+t-l+e}))}function g(t,r,i){let a=h(r);return t.map(t=>{let r=i?0:-n,o=i?n:0,l=i?`end`:`start`,u=a[t][l];return{index:t,loopPoint:u,slideLocation:pa(-1),translate:ma(e,c[t]),target:()=>s.get()>u?r:o}})}function _(){let e=o[0];return g(m(d,e),n,!1)}function v(){let e=t-o[0]-1;return g(m(u,e),-n,!0)}function y(){return f.every(({index:e})=>p(u.filter(t=>t!==e),t)<=.1)}function b(){f.forEach(e=>{let{target:t,translate:n,slideLocation:r}=e,i=t();i!==r.get()&&(n.to(i),r.set(i))})}function x(){f.forEach(e=>e.translate.clear())}return{canLoop:y,clear:x,loop:b,loopPoints:f}}function ga(e,t,n){let r,i=!1;function a(a){if(!n)return;function o(e){for(let n of e)if(n.type===`childList`){a.reInit(),t.emit(`slidesChanged`);break}}r=new MutationObserver(e=>{i||(Mi(n)||n(a,e))&&o(e)}),r.observe(e,{childList:!0})}function o(){r&&r.disconnect(),i=!0}return{init:a,destroy:o}}function _a(e,t,n,r){let i={},a=null,o=null,s,c=!1;function l(){s=new IntersectionObserver(e=>{c||(e.forEach(e=>{let n=t.indexOf(e.target);i[n]=e}),a=null,o=null,n.emit(`slidesInView`))},{root:e.parentElement,threshold:r}),t.forEach(e=>s.observe(e))}function u(){s&&s.disconnect(),c=!0}function d(e){return Hi(i).reduce((t,n)=>{let r=parseInt(n),{isIntersecting:a}=i[r];return(e&&a||!e&&!a)&&t.push(r),t},[])}function f(e=!0){if(e&&a)return a;if(!e&&o)return o;let t=d(e);return e&&(a=t),e||(o=t),t}return{init:l,destroy:u,get:f}}function va(e,t,n,r,i,a){let{measureSize:o,startEdge:s,endEdge:c}=e,l=n[0]&&i,u=m(),d=h(),f=n.map(o),p=g();function m(){if(!l)return 0;let e=n[0];return X(t[s]-e[s])}function h(){if(!l)return 0;let e=a.getComputedStyle(Z(r));return parseFloat(e.getPropertyValue(`margin-${c}`))}function g(){return n.map((e,t,n)=>{let r=!t,i=Bi(n,t);return r?f[t]+u:i?f[t]+d:n[t+1][s]-e[s]}).map(X)}return{slideSizes:f,slideSizesWithGaps:p,startGap:u,endGap:d}}function ya(e,t,n,r,i,a,o,s,c){let{startEdge:l,endEdge:u,direction:d}=e,f=Ai(n);function p(e,t){return Ri(e).filter(e=>e%t===0).map(n=>e.slice(n,n+t))}function m(e){return e.length?Ri(e).reduce((n,f,p)=>{let m=Z(n)||0,h=m===0,g=f===zi(e),_=i[l]-a[m][l],v=i[l]-a[f][u],y=!r&&h?d(o):0,b=X(v-(!r&&g?d(s):0)-(_+y));return p&&b>t+c&&n.push(f),g&&n.push(e.length),n},[]).map((t,n,r)=>{let i=Math.max(r[n-1]||0);return e.slice(i,t)}):[]}function h(e){return f?p(e,n):m(e)}return{groupSlides:h}}function ba(e,t,n,r,i,a,o){let{align:s,axis:c,direction:l,startIndex:u,loop:d,duration:f,dragFree:p,dragThreshold:m,inViewThreshold:h,slidesToScroll:g,skipSnaps:_,containScroll:v,watchResize:y,watchSlides:b,watchDrag:x,watchFocus:S}=a,C=$i(),w=C.measure(t),T=n.map(C.measure),E=Ji(c,l),D=E.measureSize(w),O=ea(D),ee=Gi(s,D),k=!d&&!!v,{slideSizes:te,slideSizesWithGaps:ne,startGap:re,endGap:ie}=va(E,w,T,n,d||!!v,i),A=ya(E,D,g,d,w,T,re,ie,2),{snaps:ae,snapsAligned:oe}=ca(E,ee,w,T,A),se=-Z(ae)+Z(ne),{snapsContained:ce,scrollContainLimit:j}=ia(D,se,oe,v,2),M=k?ce:oe,{limit:le}=aa(se,M,d),N=Xi(zi(M),u,d),P=N.clone(),ue=Ri(n),de=({dragHandler:e,scrollBody:t,scrollBounds:n,options:{loop:r}})=>{r||n.constrain(e.pointerDown()),t.seek()},F=({scrollBody:e,translate:t,location:n,offsetLocation:r,previousLocation:i,scrollLooper:a,slideLooper:o,dragHandler:s,animation:c,eventHandler:l,scrollBounds:u,options:{loop:d}},f)=>{let p=e.settled(),m=!u.shouldConstrain(),h=d?p:p&&m,g=h&&!s.pointerDown();g&&c.stop();let _=n.get()*f+i.get()*(1-f);r.set(_),d&&(a.loop(e.direction()),o.loop()),t.to(r.get()),g&&l.emit(`settle`),h||l.emit(`scroll`)},fe=qi(r,i,()=>de(Ee),e=>F(Ee,e)),pe=.68,me=M[N.get()],he=pa(me),ge=pa(me),I=pa(me),_e=pa(me),ve=na(he,I,ge,_e,f,pe),ye=ua(d,M,se,le,_e),be=da(fe,N,P,ve,ye,_e,o),xe=sa(le),Se=Ki(),Ce=_a(t,n,o,h),{slideRegistry:we}=la(k,v,M,j,A,ue),Te=fa(e,n,we,be,ve,Se,o,S),Ee={ownerDocument:r,ownerWindow:i,eventHandler:o,containerRect:w,slideRects:T,animation:fe,axis:E,dragHandler:Zi(E,e,r,i,_e,Qi(E,i),he,fe,be,ve,ye,N,o,O,p,m,_,pe,x),eventStore:Se,percentOfView:O,index:N,indexPrevious:P,limit:le,location:he,offsetLocation:I,previousLocation:ge,options:a,resizeHandler:ta(t,o,i,n,E,y,C),scrollBody:ve,scrollBounds:ra(le,I,_e,ve,O),scrollLooper:oa(se,le,I,[he,I,ge,_e]),scrollProgress:xe,scrollSnapList:M.map(xe.get),scrollSnaps:M,scrollTarget:ye,scrollTo:be,slideLooper:ha(E,D,se,te,ne,ae,M,I,n),slideFocus:Te,slidesHandler:ga(t,o,b),slidesInView:Ce,slideIndexes:ue,slideRegistry:we,slidesToScroll:A,target:_e,translate:ma(E,t)};return Ee}function xa(){let e={},t;function n(e){t=e}function r(t){return e[t]||[]}function i(e){return r(e).forEach(n=>n(t,e)),c}function a(t,n){return e[t]=r(t).concat([n]),c}function o(t,n){return e[t]=r(t).filter(e=>e!==n),c}function s(){e={}}let c={init:n,emit:i,off:o,on:a,clear:s};return c}var Sa={align:`center`,axis:`x`,container:null,slides:null,containScroll:`trimSnaps`,direction:`ltr`,slidesToScroll:1,inViewThreshold:0,breakpoints:{},dragFree:!1,dragThreshold:10,loop:!1,skipSnaps:!1,duration:25,startIndex:0,active:!0,watchDrag:!0,watchResize:!0,watchSlides:!0,watchFocus:!0};function Ca(e){function t(e,t){return Ui(e,t||{})}function n(n){let r=n.breakpoints||{};return t(n,Hi(r).filter(t=>e.matchMedia(t).matches).map(e=>r[e]).reduce((e,n)=>t(e,n),{}))}function r(t){return t.map(e=>Hi(e.breakpoints||{})).reduce((e,t)=>e.concat(t),[]).map(e.matchMedia)}return{mergeOptions:t,optionsAtMedia:n,optionsMediaQueries:r}}function wa(e){let t=[];function n(n,r){return t=r.filter(({options:t})=>e.optionsAtMedia(t).active!==!1),t.forEach(t=>t.init(n,e)),r.reduce((e,t)=>Object.assign(e,{[t.name]:t}),{})}function r(){t=t.filter(e=>e.destroy())}return{init:n,destroy:r}}function Ta(e,t,n){let r=e.ownerDocument,i=r.defaultView,a=Ca(i),o=wa(a),s=Ki(),c=xa(),{mergeOptions:l,optionsAtMedia:u,optionsMediaQueries:d}=a,{on:f,off:p,emit:m}=c,h=D,g=!1,_,v=l(Sa,Ta.globalOptions),y=l(v),b=[],x,S,C;function w(){let{container:t,slides:n}=y;S=(ji(t)?e.querySelector(t):t)||e.children[0];let r=ji(n)?S.querySelectorAll(n):n;C=[].slice.call(r||S.children)}function T(t){let n=ba(e,S,C,r,i,t,c);return t.loop&&!n.slideLooper.canLoop()?T(Object.assign({},t,{loop:!1})):n}function E(e,t){g||(v=l(v,e),y=u(v),b=t||b,w(),_=T(y),d([v,...b.map(({options:e})=>e)]).forEach(e=>s.add(e,`change`,D)),y.active&&(_.translate.to(_.location.get()),_.animation.init(),_.slidesInView.init(),_.slideFocus.init(de),_.eventHandler.init(de),_.resizeHandler.init(de),_.slidesHandler.init(de),_.options.loop&&_.slideLooper.loop(),S.offsetParent&&C.length&&_.dragHandler.init(de),x=o.init(de,b)))}function D(e,t){let n=oe();O(),E(l({startIndex:n},e),t),c.emit(`reInit`)}function O(){_.dragHandler.destroy(),_.eventStore.clear(),_.translate.clear(),_.slideLooper.clear(),_.resizeHandler.destroy(),_.slidesHandler.destroy(),_.slidesInView.destroy(),_.animation.destroy(),o.destroy(),s.clear()}function ee(){g||(g=!0,s.clear(),O(),c.emit(`destroy`),c.clear())}function k(e,t,n){!y.active||g||(_.scrollBody.useBaseFriction().useDuration(t===!0?0:y.duration),_.scrollTo.index(e,n||0))}function te(e){k(_.index.add(1).get(),e,-1)}function ne(e){k(_.index.add(-1).get(),e,1)}function re(){return _.index.add(1).get()!==oe()}function ie(){return _.index.add(-1).get()!==oe()}function A(){return _.scrollSnapList}function ae(){return _.scrollProgress.get(_.offsetLocation.get())}function oe(){return _.index.get()}function se(){return _.indexPrevious.get()}function ce(){return _.slidesInView.get()}function j(){return _.slidesInView.get(!1)}function M(){return x}function le(){return _}function N(){return e}function P(){return S}function ue(){return C}let de={canScrollNext:re,canScrollPrev:ie,containerNode:P,internalEngine:le,destroy:ee,off:p,on:f,emit:m,plugins:M,previousScrollSnap:se,reInit:h,rootNode:N,scrollNext:te,scrollPrev:ne,scrollProgress:ae,scrollSnapList:A,scrollTo:k,selectedScrollSnap:oe,slideNodes:ue,slidesInView:ce,slidesNotInView:j};return E(t,n),setTimeout(()=>c.emit(`init`),0),de}Ta.globalOptions=void 0;function Ea(e={},t=[]){let n=(0,Y.useRef)(e),r=(0,Y.useRef)(t),[i,a]=(0,Y.useState)(),[o,s]=(0,Y.useState)(),c=(0,Y.useCallback)(()=>{i&&i.reInit(n.current,r.current)},[i]);return(0,Y.useEffect)(()=>{Di(n.current,e)||(n.current=e,c())},[e,c]),(0,Y.useEffect)(()=>{ki(r.current,t)||(r.current=t,c())},[t,c]),(0,Y.useEffect)(()=>{if(Ei()&&o){Ta.globalOptions=Ea.globalOptions;let e=Ta(o,n.current,r.current);return a(e),()=>e.destroy()}a(void 0)},[o,a]),[s,i]}Ea.globalOptions=void 0;var[Da,Oa]=Re({context:`[@mantine/carousel] Carousel.Slide was rendered outside of Carousel context`}.context),ka=Object.defineProperty,Aa=Object.defineProperties,ja=Object.getOwnPropertyDescriptors,Ma=Object.getOwnPropertySymbols,Na=Object.prototype.hasOwnProperty,Pa=Object.prototype.propertyIsEnumerable,Fa=(e,t,n)=>t in e?ka(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Ia=(e,t)=>{for(var n in t||={})Na.call(t,n)&&Fa(e,n,t[n]);if(Ma)for(var n of Ma(t))Pa.call(t,n)&&Fa(e,n,t[n]);return e},La=(e,t)=>Aa(e,ja(t)),Ra=Mt((e,{controlSize:t,controlsOffset:n,orientation:r,height:i,includeGapInSize:a,breakpoints:o=[],slideGap:s})=>{let c=r===`horizontal`,l=t=>{if(!a)return{};let n=H({size:t,sizes:e.spacing});return{[r===`horizontal`?`marginRight`:`marginBottom`]:`calc(${n} * -1)`}},u=o.some(e=>e.slideGap!==void 0||e.slideSize!==void 0)?E(e,o).reduce((t,n)=>{let r=`maxWidth`in n?`max-width`:`min-width`,i=H({size:r===`max-width`?n.maxWidth:n.minWidth,sizes:e.breakpoints}),a=n.slideGap===void 0?void 0:U(n.slideGap),o=wt(i)-+(r===`max-width`);return t[`@media (${r}: ${U(o)})`]=l(a),t},{}):null;return{root:{position:`relative`},viewport:{height:U(i),overflow:`hidden`},container:Ia(Ia({display:`flex`,flexDirection:c?`row`:`column`,height:U(i)},l(s)),u),controls:{position:`absolute`,zIndex:1,left:c?0:`calc(50% - ${U(t)} / 2)`,right:c?0:void 0,top:c?`calc(50% - ${U(t)} / 2)`:0,bottom:c?void 0:0,display:`flex`,flexDirection:c?`row`:`column`,alignItems:`center`,justifyContent:`space-between`,paddingLeft:c?H({size:n,sizes:e.spacing}):void 0,paddingRight:c?H({size:n,sizes:e.spacing}):void 0,paddingTop:c?void 0:H({size:n,sizes:e.spacing}),paddingBottom:c?void 0:H({size:n,sizes:e.spacing}),pointerEvents:`none`},control:La(Ia({display:`flex`,justifyContent:`center`,alignItems:`center`,minWidth:U(t),minHeight:U(t),borderRadius:U(t),pointerEvents:`all`,backgroundColor:e.white,color:e.black,boxShadow:e.shadows.md,opacity:e.colorScheme===`dark`?.65:.85,border:`${U(1)} solid ${e.colors.gray[3]}`,transition:`opacity 150ms ${e.transitionTimingFunction}`},e.fn.hover({opacity:1})),{"&:active":e.activeStyles}),indicators:{position:`absolute`,bottom:c?e.spacing.md:0,top:c?void 0:0,left:c?0:void 0,right:c?0:e.spacing.md,display:`flex`,flexDirection:c?`row`:`column`,justifyContent:`center`,gap:U(8),pointerEvents:`none`},indicator:{pointerEvents:`all`,width:U(c?25:5),height:U(c?5:25),borderRadius:e.radius.xl,backgroundColor:e.white,boxShadow:e.shadows.sm,opacity:.6,transition:`opacity 150ms ${e.transitionTimingFunction}`,"&[data-active]":{opacity:1}}}}),za=Object.defineProperty,Ba=Object.getOwnPropertySymbols,Va=Object.prototype.hasOwnProperty,Ha=Object.prototype.propertyIsEnumerable,Ua=(e,t,n)=>t in e?za(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Wa=(e,t)=>{for(var n in t||={})Va.call(t,n)&&Ua(e,n,t[n]);if(Ba)for(var n of Ba(t))Ha.call(t,n)&&Ua(e,n,t[n]);return e},Ga=Mt((e,{size:t,gap:n,orientation:r,includeGapInSize:i,breakpoints:a=[]})=>{let o=(t,n)=>{let a=H({size:t,sizes:e.spacing}),o=U(n),s=i?{[r===`horizontal`?`paddingRight`:`paddingBottom`]:a}:{[r===`horizontal`?`marginRight`:`marginBottom`]:a};return Wa({flex:`0 0 ${o}`},s)},s=a.some(e=>e.slideGap!==void 0||e.slideSize!==void 0)?E(e,a).reduce((t,r)=>{let i=`maxWidth`in r?`max-width`:`min-width`,a=H({size:i===`max-width`?r.maxWidth:r.minWidth,sizes:e.breakpoints}),s=r.slideGap===void 0?n:r.slideGap,c=wt(a)-+(i===`max-width`);return t[`@media (${i}: ${U(c)})`]=o(s,r.slideSize),t},{}):null;return{slide:Wa(Wa({position:`relative`},o(n,t)),s)}}),Ka=Object.defineProperty,qa=Object.getOwnPropertySymbols,Ja=Object.prototype.hasOwnProperty,Ya=Object.prototype.propertyIsEnumerable,Xa=(e,t,n)=>t in e?Ka(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Za=(e,t)=>{for(var n in t||={})Ja.call(t,n)&&Xa(e,n,t[n]);if(qa)for(var n of qa(t))Ya.call(t,n)&&Xa(e,n,t[n]);return e},Qa=(e,t)=>{var n={};for(var r in e)Ja.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&qa)for(var r of qa(e))t.indexOf(r)<0&&Ya.call(e,r)&&(n[r]=e[r]);return n},$a=(0,Y.forwardRef)((e,t)=>{var n=e,{children:r,className:i,size:a,gap:o}=n,s=Qa(n,[`children`,`className`,`size`,`gap`]);let c=Oa(),{classes:l,cx:u}=Ga({gap:o===void 0?c.slideGap:o,size:a===void 0?c.slideSize:a,orientation:c.orientation,includeGapInSize:c.includeGapInSize,breakpoints:c.breakpoints},{name:`Carousel`,classNames:c.classNames,styles:c.styles,unstyled:c.unstyled,variant:c.variant});return Y.createElement(At,Za({className:u(l.slide,i),ref:t},s),r)});$a.displayName=`@mantine/carousel/CarouselSlide`;function eo({dir:e,orientation:t,direction:n}){return n===`previous`?t===`horizontal`?90*(e===`ltr`?1:-1):-180:t===`horizontal`?90*(e===`ltr`?-1:1):0}var to=Object.defineProperty,no=Object.getOwnPropertySymbols,ro=Object.prototype.hasOwnProperty,io=Object.prototype.propertyIsEnumerable,ao=(e,t,n)=>t in e?to(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,oo=(e,t)=>{for(var n in t||={})ro.call(t,n)&&ao(e,n,t[n]);if(no)for(var n of no(t))io.call(t,n)&&ao(e,n,t[n]);return e},so=(e,t)=>{var n={};for(var r in e)ro.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&no)for(var r of no(e))t.indexOf(r)<0&&io.call(e,r)&&(n[r]=e[r]);return n},co={controlSize:26,controlsOffset:`sm`,slideSize:`100%`,slideGap:0,orientation:`horizontal`,align:`center`,slidesToScroll:1,includeGapInSize:!0,draggable:!0,dragFree:!1,loop:!1,speed:10,initialSlide:0,inViewThreshold:0,withControls:!0,withIndicators:!1,skipSnaps:!1,containScroll:``,withKeyboardEvents:!0},lo=(0,Y.forwardRef)((e,t)=>{let n=Gt(`Carousel`,co,e),{children:r,className:i,getEmblaApi:a,onNextSlide:o,onPreviousSlide:s,onSlideChange:c,nextControlLabel:l,previousControlLabel:u,controlSize:d,controlsOffset:f,classNames:p,styles:m,unstyled:g,slideSize:_,slideGap:v,orientation:y,height:x,align:S,slidesToScroll:C,includeGapInSize:w,draggable:T,dragFree:E,loop:D,speed:O,initialSlide:ee,inViewThreshold:te,withControls:ne,withIndicators:re,plugins:ie,nextControlIcon:A,previousControlIcon:ae,breakpoints:oe,skipSnaps:se,containScroll:ce,withKeyboardEvents:j,variant:M}=n,le=so(n,`children.className.getEmblaApi.onNextSlide.onPreviousSlide.onSlideChange.nextControlLabel.previousControlLabel.controlSize.controlsOffset.classNames.styles.unstyled.slideSize.slideGap.orientation.height.align.slidesToScroll.includeGapInSize.draggable.dragFree.loop.speed.initialSlide.inViewThreshold.withControls.withIndicators.plugins.nextControlIcon.previousControlIcon.breakpoints.skipSnaps.containScroll.withKeyboardEvents.variant`.split(`.`)),{classes:N,cx:P,theme:ue}=Ra({controlSize:d,controlsOffset:f,orientation:y,height:x,includeGapInSize:w,breakpoints:oe,slideGap:v},{name:`Carousel`,classNames:p,styles:m,unstyled:g,variant:M}),[de,F]=Ea({axis:y===`horizontal`?`x`:`y`,direction:y===`horizontal`?ue.dir:void 0,startIndex:ee,loop:D,align:S,slidesToScroll:C,draggable:T,dragFree:E,speed:O,inViewThreshold:te,skipSnaps:se,containScroll:ce},ie),[fe,pe]=(0,Y.useState)(0),[me,he]=(0,Y.useState)(0),ge=(0,Y.useCallback)(e=>F&&F.scrollTo(e),[F]),I=(0,Y.useCallback)(()=>{if(!F)return;let e=F.selectedScrollSnap();pe(e),c?.(e)},[F,pe]),_e=(0,Y.useCallback)(()=>{F?.scrollPrev(),s?.()},[F]),ve=(0,Y.useCallback)(()=>{F?.scrollNext(),o?.()},[F]),ye=(0,Y.useCallback)(e=>{j&&(e.key===`ArrowRight`&&(e.preventDefault(),ve()),e.key===`ArrowLeft`&&(e.preventDefault(),_e()))},[F]);(0,Y.useEffect)(()=>{if(F)return a?.(F),I(),he(F.scrollSnapList().length),F.on(`select`,I),()=>{F.off(`select`,I)}},[F,C]),(0,Y.useEffect)(()=>{F&&(F.reInit(),he(F.scrollSnapList().length),pe(e=>b(e,0,Y.Children.toArray(r).length-1)))},[Y.Children.toArray(r).length,C]);let be=F?.canScrollPrev()||!1,xe=F?.canScrollNext()||!1,Se=Array(me).fill(0).map((e,t)=>Y.createElement(k,{key:t,"data-active":t===fe||void 0,className:N.indicator,"aria-hidden":!0,tabIndex:-1,onClick:()=>ge(t)}));return Y.createElement(Da,{value:{slideGap:v,slideSize:_,embla:F,orientation:y,includeGapInSize:w,breakpoints:oe,classNames:p,styles:m,unstyled:g,variant:M}},Y.createElement(At,oo({className:P(N.root,i),ref:t,onKeyDownCapture:ye},le),Y.createElement(`div`,{className:N.viewport,ref:de},Y.createElement(`div`,{className:N.container},r)),re&&Y.createElement(`div`,{className:N.indicators},Se),ne&&Y.createElement(`div`,{className:N.controls},Y.createElement(k,{onClick:_e,className:N.control,"aria-label":u,"data-inactive":!be||void 0,tabIndex:be?0:-1},ae===void 0?Y.createElement(h,{style:{transform:`rotate(${eo({dir:ue.dir,orientation:y,direction:`previous`})}deg)`}}):ae),Y.createElement(k,{onClick:ve,className:N.control,"aria-label":l,"data-inactive":!xe||void 0,tabIndex:xe?0:-1},A===void 0?Y.createElement(h,{style:{transform:`rotate(${eo({dir:ue.dir,orientation:y,direction:`next`})}deg)`}}):A))))});lo.Slide=$a,lo.displayName=`@mantine/carousel/Carousel`;var uo=lo,Q=t(),fo=({chargeProps:e,onChange:t,onChargeDeleted:n})=>{let{additionalDocuments:r}=W(Tn,e),[i,a]=(0,Y.useState)(void 0);return(0,Q.jsx)(`div`,{className:`container mx-auto text-gray-600 body-font`,children:r?.length>0?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`flex flex-wrap`,children:(0,Q.jsx)(uo,{sx:{maxWidth:320},mx:`auto`,align:`center`,withControls:r.length>1,slideGap:0,withIndicators:!0,className:`[&>*>.mantine-Carousel-indicator]:bg-gray-500`,children:r.map(e=>(0,Q.jsx)(uo.Slide,{children:(0,Q.jsxs)(`div`,{className:`flex flex-col items-center`,children:[(0,Q.jsx)(`h2`,{className:`text-gray-900 text-base font-medium`,children:`documentType`in e?e.documentType:`Unprocessed`}),(0,Q.jsx)(`button`,{className:`mx-10`,onClick:()=>a(e.id),children:(0,Q.jsx)(`div`,{className:`flex rounded-lg h-full bg-gray-100 p-2 m-2 flex-col`,children:(0,Q.jsx)(Lt,{src:e.image?.toString(),withPlaceholder:!0})})})]})},e.id))})}),(0,Q.jsx)(p,{documentId:i,onDone:()=>a(void 0),onChange:t,onChargeDeleted:n})]}):(0,Q.jsx)($r,{color:`red`,children:`No Documents Related`})})},po=({data:e})=>{let t=W(On,e);return t?.errorsLedger?.validate?.errors?.length?(0,Q.jsxs)(Te,{shadow:`xs`,p:`md`,children:[(0,Q.jsx)(Vt,{c:`red`,children:`Errors:`}),(0,Q.jsx)(re,{size:`sm`,withPadding:!0,children:t.errorsLedger.validate.errors.map((e,t)=>(0,Q.jsx)(re.Item,{children:(0,Q.jsx)(Vt,{c:`red`,children:e})},t))})]}):null},mo=({transactionsProps:e,chargeType:t,onChange:n})=>{let{transactions:r}=W(gn,e);return(0,Q.jsx)(Qn,{transactionsProps:r,onChange:n,chargeType:t,enableEdit:!0})},ho=(0,Y.createContext)({active:!1,fetching:!1,getCharge:()=>void 0,refetch:()=>void 0});function go({chargeIds:e,active:t,children:n}){let[{data:r,fetching:i},a]=Mn({query:_n,variables:{chargeIDs:e},pause:!t||e.length===0}),o=(0,Y.useMemo)(()=>{let e=new Map;for(let t of r?.chargesByIDs??[])e.set(t.id,t);return e},[r]),s=(0,Y.useCallback)(()=>{a({requestPolicy:`network-only`})},[a]),c=(0,Y.useMemo)(()=>({active:t,fetching:t?i:!1,getCharge:e=>o.get(e),refetch:s}),[t,i,o,s]);return(0,Q.jsx)(ho.Provider,{value:c,children:n})}var _o=`createDepositFromCharge`,vo=()=>{let[{fetching:e},t]=kn(Dn);return{creating:e,createDepositFromCharge:(0,Y.useCallback)(async e=>{let n=`Error creating deposit "${e.name}" from charge`,r=`${_o}-${e.chargeId}`;a.loading(`Creating deposit`,{id:r});try{let i=await t(e),s=o(i,n,r);if(s)return a.success(`Deposit created`,{id:r,description:`Deposit "${s.createDepositFromCharge.name}" (${s.createDepositFromCharge.currency}) created successfully`}),s.createDepositFromCharge.id}catch(e){console.error(`${n}: ${e}`),a.error(`Error`,{id:r,description:n,duration:1e5,closeButton:!0})}return null},[t])}},yo=e=>{let[{data:t,fetching:n,error:r}]=Mn({query:$t,variables:{chargeId:e}});return{fetching:n,error:r,deposits:t?.relevantDepositsForCharge.deposits??[],conflictError:t?.relevantDepositsForCharge.error??null}},bo=({chargeId:e,onChange:t})=>{let[{data:n,fetching:r}]=Mn({query:Nn,variables:{chargeId:e}}),{fetching:i,deposits:a,conflictError:o}=yo(e),{creating:s,createDepositFromCharge:c}=vo(),{assigning:l,assignChargeToDeposit:u}=Ve(),[f,p]=(0,Y.useState)(void 0),[m,h]=(0,Y.useState)(!1),[g,_]=(0,Y.useState)(``),v=(0,Y.useCallback)(async()=>{await c({chargeId:e,name:g})&&(h(!1),_(``),t?.())},[c,g,e,t]),y=(0,Y.useCallback)(async n=>{await u({chargeId:e,depositId:n}),t?.()},[u,e,t]),b=!!n?.depositByCharge||a.length>0||!!o,x=(r||i)&&!b,S=(0,Q.jsx)(Ge,{open:m,onOpenChange:h,children:(0,Q.jsxs)(Xe,{children:[(0,Q.jsx)(Je,{children:(0,Q.jsx)(et,{children:`Create Bank Deposit`})}),(0,Q.jsx)(`div`,{className:`space-y-4`,children:(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)($e,{htmlFor:`deposit-name-input`,children:`Deposit Name`}),(0,Q.jsx)(rt,{id:`deposit-name-input`,value:g,onChange:e=>_(e.target.value),placeholder:`e.g. Savings Deposit 2026`})]})}),(0,Q.jsx)(Ke,{children:(0,Q.jsx)(R,{variant:`secondary`,disabled:s||!g.trim(),onClick:v,children:s?`Creating…`:`Create`})})]})});if(x)return(0,Q.jsx)(d,{className:`h-10 w-10 animate-spin`});if(n?.depositByCharge){let e=n.depositByCharge;return(0,Q.jsxs)(`div`,{children:[(0,Q.jsxs)(`div`,{className:`text-lg font-semibold mb-4`,children:[`Bank Deposit "`,e.name,`" Balance: `,e.metadata.currentBalance.formatted]}),(0,Q.jsx)(`div`,{className:`mb-4`,children:(0,Q.jsx)(`span`,{className:`text-sm text-gray-500`,children:e.isOpen?`Deposit is open`:`Deposit is closed`})}),(0,Q.jsx)(Ue,{depositId:e.id})]})}if(o)return(0,Q.jsx)(`div`,{className:`space-y-4`,children:(0,Q.jsx)(zn,{variant:`destructive`,children:(0,Q.jsx)(Rn,{children:o})})});if(a.length===1){let e=a[0];return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsx)(`div`,{className:`text-sm text-gray-500`,children:`Suggested deposit:`}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsxs)(`span`,{className:`font-medium`,children:[e.name,` (`,e.currency,`)`]}),(0,Q.jsx)(R,{variant:`secondary`,disabled:l,onClick:()=>y(e.id),children:l?`Assigning…`:`Assign`})]}),(0,Q.jsx)(R,{variant:`outline`,size:`sm`,onClick:()=>h(!0),children:`Create New Deposit Instead`}),S]})}return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsx)(`div`,{className:`text-sm text-gray-500`,children:a.length===0?`No matching open deposits found.`:`Select an open deposit to assign this charge to:`}),a.length>1&&(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsxs)(it,{value:f,onValueChange:p,children:[(0,Q.jsx)(Ye,{className:`min-w-[220px]`,children:(0,Q.jsx)(We,{placeholder:`Select deposit`})}),(0,Q.jsx)(Qe,{children:a.map(e=>(0,Q.jsxs)(nt,{value:e.id,children:[e.name,` (`,e.currency,`)`]},e.id))})]}),(0,Q.jsx)(R,{variant:`secondary`,disabled:!f||l,onClick:()=>f&&y(f),children:l?`Assigning…`:`Assign`})]}),(0,Q.jsx)(R,{variant:`outline`,onClick:()=>h(!0),children:`Create New Deposit`}),S]})};function xo({row:e}){let[t,n]=(0,Y.useState)([`transactions`,`documents`]),[{data:r,fetching:i}]=Mn({query:fn,variables:{chargeId:e.original.id??``},pause:!e.original.id}),a=r?.charge.transactions,o=!!a&&a.length>0,s=r?.charge.additionalDocuments,c=!!s&&s.length>0;return(0,Q.jsxs)(gt,{type:`multiple`,value:t,onValueChange:n,className:`space-y-4`,children:[o&&(0,Q.jsxs)(V,{value:`transactions`,className:`rounded-lg border-2`,children:[(0,Q.jsx)(`div`,{className:`px-2 bg-gray-600/10 rounded-t-lg`,children:(0,Q.jsx)(z,{className:`p-2`,disabled:!o,children:(0,Q.jsx)(`h3`,{className:`font-semibold text-lg`,children:`Transactions`})})}),i?(0,Q.jsx)(B,{children:(0,Q.jsx)(`div`,{className:`p-2`,children:(0,Q.jsx)(T,{})})}):(0,Q.jsx)(B,{children:a&&(0,Q.jsx)(`div`,{className:`p-2`,children:(0,Q.jsx)(Qn,{transactionsProps:a})})})]}),c&&(0,Q.jsxs)(V,{value:`documents`,className:`rounded-lg border-2`,children:[(0,Q.jsx)(`div`,{className:`px-2 bg-gray-600/10 rounded-t-lg`,children:(0,Q.jsx)(z,{className:`p-2`,disabled:!c,children:(0,Q.jsx)(`h3`,{className:`font-semibold text-lg`,children:`Documents`})})}),i?(0,Q.jsx)(B,{children:(0,Q.jsx)(`div`,{className:`p-2`,children:(0,Q.jsx)(T,{})})}):(0,Q.jsx)(B,{children:s&&(0,Q.jsx)(`div`,{className:`p-2`,children:(0,Q.jsx)(Me,{documentsProps:s})})})]})]})}var So=({row:e})=>{let[t,n]=(0,Y.useState)(!1);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(Rt,{children:[e.getVisibleCells().map(e=>(0,Q.jsx)(K,{children:Nt(e.column.columnDef.cell,e.getContext())},e.id)),(0,Q.jsx)(K,{children:(0,Q.jsx)(y,{toggleExpansion:n,isExpanded:t})})]},e.id),t&&(0,Q.jsx)(Rt,{children:(0,Q.jsx)(K,{colSpan:e.getVisibleCells().length+1,children:(0,Q.jsx)(xo,{row:e})})},`${e.id}-extensions`)]})},Co=({business:e})=>e.id?(0,Q.jsx)(c,{to:l.BUSINESSES.DETAIL(e.id),target:`_blank`,rel:`noreferrer`,onClick:e=>e.stopPropagation(),className:`inline-flex items-center font-semibold`,children:e.name}):(0,Q.jsx)(`div`,{}),wo=({date:e})=>(0,Q.jsx)(`p`,{className:`text-sm font-medium`,children:e?Be(e):``}),To=({tags:e})=>(0,Q.jsx)(Se,{items:e.map(e=>(0,Q.jsx)(P,{children:(0,Q.jsxs)(`div`,{children:[e.namePath&&(0,Q.jsx)(Vt,{size:`xs`,opacity:.65,children:`${e.namePath.join(` > `)} >`}),(0,Q.jsx)(Vt,{size:`sm`,children:e.name})]})},e.id))}),Eo=({taxCategory:e})=>(0,Q.jsx)(`p`,{className:`text-sm font-medium`,children:e?.name}),Do=({type:e})=>{let{text:t,icon:n}=(0,Y.useMemo)(()=>({text:M(e),icon:F(e)}),[e]);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{children:t}),(0,Q.jsx)(xi,{radius:`xl`,size:`xl`,children:n})]})},Oo=[{id:`select`,cell:({row:e})=>(0,Q.jsx)(Pe,{checked:e.original.isSelected,onCheckedChange:t=>(e.original.selectCharge(t?e.original.id:null),t),"aria-label":`Select charge`}),enableSorting:!1,enableHiding:!1},{accessorKey:`confidenceScore`,header:({column:e})=>(0,Q.jsx)(m,{column:e,title:`Score`}),cell:({row:e})=>{let t=e.getValue(`confidenceScore`);return(0,Q.jsx)(Oe,{value:t*100,size:`sm`})}},{accessorKey:`type`,header:({column:e})=>(0,Q.jsx)(m,{column:e,title:`Type`}),cell:({row:e})=>(0,Q.jsx)(Do,{type:e.getValue(`type`)})},{accessorKey:`date`,header:({column:e})=>(0,Q.jsx)(m,{column:e,title:`Date`}),cell:({row:e})=>(0,Q.jsx)(wo,{date:e.getValue(`date`)})},{accessorKey:`amountRaw`,header:({column:e})=>(0,Q.jsx)(m,{column:e,title:`Amount`}),cell:({row:e})=>{let t=e.original.amountFormatted;return(0,Q.jsx)(`p`,{className:`text-sm font-medium`,children:t})}},{accessorKey:`vatAmountRaw`,header:({column:e})=>(0,Q.jsx)(m,{column:e,title:`VAT`}),cell:({row:e})=>{let t=e.original.vatAmountFormatted;return(0,Q.jsx)(`p`,{className:`text-sm font-medium`,children:t})}},{accessorKey:`businessName`,header:({column:e})=>(0,Q.jsx)(m,{column:e,title:`Main Business`}),cell:({row:e})=>(0,Q.jsx)(Co,{business:{id:e.original.businessId,name:e.original.businessName}})},{accessorKey:`description`,header:({column:e})=>(0,Q.jsx)(m,{column:e,title:`Description`}),cell:({row:e})=>{let t=e.getValue(`description`);return(0,Q.jsx)(`p`,{className:`text-sm font-medium max-w-100 whitespace-normal`,children:t})}},{accessorKey:`tags`,header:({column:e})=>(0,Q.jsx)(m,{column:e,title:`Tags`}),cell:({row:e})=>(0,Q.jsx)(To,{tags:e.getValue(`tags`)}),enableSorting:!1},{accessorKey:`taxCategoryName`,header:({column:e})=>(0,Q.jsx)(m,{column:e,title:`Tax Category`}),cell:({row:e})=>(0,Q.jsx)(Eo,{taxCategory:{id:e.original.taxCategoryId,name:e.original.taxCategoryName}})}];function ko(e,t,n){let r=W(mn,e),i=r.charge.minDocumentsDate||r.charge.minEventDate||r.charge.minDebitDate||void 0;return{id:r.charge.id,confidenceScore:r.confidenceScore,type:r.charge.__typename,date:i?new Date(i):void 0,amountRaw:r.charge.totalAmount?.raw,amountFormatted:r.charge.totalAmount?.formatted,vatAmountRaw:r.charge.vat?.raw,vatAmountFormatted:r.charge.vat?.formatted,businessId:r.charge.counterparty?.id,businessName:r.charge.counterparty?.name,description:r.charge.userDescription??void 0,tags:r.charge.tags.map(e=>({id:e.id,name:e.name,namePath:e.namePath??void 0})),taxCategoryId:r.charge.taxCategory?.id,taxCategoryName:r.charge.taxCategory?.name,selectCharge:t,isSelected:r.charge.id===n}}var Ao=({originChargeId:e,chargesProps:t,onChange:n})=>{let[r,i]=(0,Y.useState)([{id:`confidenceScore`,desc:!0},{id:`amountRaw`,desc:!0}]),[a,o]=(0,Y.useState)([]),[s,c]=(0,Y.useState)(null),[l,u]=(0,Y.useState)([{id:e,onChange:n}]);(0,Y.useEffect)(()=>{u([e,...s?[s]:[]].map(e=>({id:e,onChange:n})))},[s,n,e]);let d=(0,Y.useMemo)(()=>t?.map(e=>ko(e,c,s)).sort((e,t)=>t.confidenceScore-e.confidenceScore)??[],[t,s]),f=jt({features:Ht,data:d,columns:Oo,onSortingChange:i,onColumnFiltersChange:o,state:{sorting:r,columnFilters:a}});return(0,Q.jsxs)(`div`,{className:`max-w-[90vw]`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center py-4 gap-4`,children:[(0,Q.jsx)(oe,{selected:l,resetMergeList:()=>c(null)}),(0,Q.jsxs)(dt,{children:[(0,Q.jsx)(st,{asChild:!0,className:`ml-auto`,children:(0,Q.jsxs)(R,{variant:`outline`,children:[`Columns `,(0,Q.jsx)(tt,{})]})}),(0,Q.jsx)(ct,{align:`end`,children:f.getAllColumns().filter(e=>e.getCanHide()).map(e=>(0,Q.jsx)(mt,{className:`capitalize`,checked:e.getIsVisible(),onCheckedChange:t=>e.toggleVisibility(!!t),children:e.id},e.id))})]})]}),(0,Q.jsx)(`div`,{className:`overflow-hidden rounded-md border`,children:(0,Q.jsxs)(Wt,{children:[(0,Q.jsx)(kt,{children:f.getHeaderGroups().map(e=>(0,Q.jsxs)(Rt,{children:[e.headers.map(e=>(0,Q.jsx)(G,{colSpan:e.colSpan,children:e.isPlaceholder?null:Nt(e.column.columnDef.header,e.getContext())},e.id)),(0,Q.jsx)(G,{})]},e.id))}),(0,Q.jsx)(It,{children:f.getRowModel().rows?.length?f.getRowModel().rows.map(e=>(0,Q.jsx)(So,{row:e},e.id)):(0,Q.jsx)(Rt,{children:(0,Q.jsx)(K,{colSpan:Oo.length,className:`h-24 text-center`,children:`No results.`})})})]})})]})},jo=({chargeId:e,isOpened:t,onChange:n})=>{let[{data:r,fetching:i}]=Mn({query:wn,variables:{chargeId:e},pause:!t});return(0,Q.jsxs)(V,{value:`charges-matches`,children:[(0,Q.jsx)(z,{children:`Charge Matches`}),(0,Q.jsx)(B,{children:i&&!r?(0,Q.jsx)(d,{className:`h-10 w-10 animate-spin`}):(0,Q.jsx)(Ao,{originChargeId:e,chargesProps:r?.findChargeMatches.matches,onChange:n})})]})},Mo=({chargeProps:e})=>{let t=W(Xt,e);if(t.__typename!==`ConversionCharge`)return(0,Q.jsx)(Q.Fragment,{});let{eventRate:n,officialRate:r}=t;return(0,Q.jsxs)(ke,{justify:`center`,children:[r&&(0,Q.jsx)(ke.Col,{span:`content`,children:(0,Q.jsx)(In,{shadow:`sm`,padding:`xs`,radius:`md`,withBorder:!0,children:(0,Q.jsxs)(P,{position:`apart`,children:[(0,Q.jsx)(Vt,{weight:500,children:`Official Conversion Rate`}),(0,Q.jsx)($r,{color:`green`,variant:`light`,children:`${Number(r.rate)} ${j(r.from)} => ${j(r.to)}`})]})})}),n&&(0,Q.jsx)(ke.Col,{span:`content`,children:(0,Q.jsx)(In,{shadow:`sm`,padding:`xs`,radius:`md`,withBorder:!0,children:(0,Q.jsxs)(P,{position:`apart`,children:[(0,Q.jsx)(Vt,{weight:500,children:`Bank Conversion Rate`}),(0,Q.jsx)($r,{color:`green`,variant:`light`,children:`${Number(n.rate)} ${j(n.from)} => ${j(n.to)}`})]})})})]})},No=({chargeProps:e})=>{let t=W(Qt,e),n=(0,Y.useMemo)(()=>t.__typename===`CreditcardBankCharge`&&t.creditCardTransactions?t.creditCardTransactions.map(e=>W(Fn,e)):[],[t]);return n.length?(0,Q.jsxs)(Wt,{children:[(0,Q.jsx)(kt,{children:(0,Q.jsxs)(Rt,{children:[(0,Q.jsx)(G,{children:`Event Date`}),(0,Q.jsx)(G,{children:`Debit Date`}),(0,Q.jsx)(G,{children:`Amount`}),(0,Q.jsx)(G,{children:`Account`}),(0,Q.jsx)(G,{children:`Description`}),(0,Q.jsx)(G,{children:`Reference#`}),(0,Q.jsx)(G,{children:`Counterparty`}),(0,Q.jsx)(G,{children:`Charge`})]})}),(0,Q.jsx)(It,{children:n.map(e=>{let t={...e,onUpdate:()=>void 0,editTransaction:()=>void 0,enableEdit:!1,enableChargeLink:!1};return(0,Q.jsxs)(Rt,{children:[(0,Q.jsx)(K,{children:(0,Q.jsx)(Zn,{transaction:t})}),(0,Q.jsx)(K,{children:(0,Q.jsx)(Kn,{transaction:t})}),(0,Q.jsx)(K,{children:(0,Q.jsx)(Yn,{transaction:t})}),(0,Q.jsx)(K,{children:(0,Q.jsx)(Gn,{transaction:t})}),(0,Q.jsx)(K,{children:(0,Q.jsx)(qn,{transaction:t})}),(0,Q.jsx)(K,{children:(0,Q.jsx)(Xn,{transaction:t})}),(0,Q.jsx)(K,{children:(0,Q.jsx)(Jn,{transaction:t})}),(0,Q.jsx)(K,{children:(0,Q.jsx)(ie,{chargeId:e.chargeId})})]},e.id)})})]}):null},Po=({chargeProps:e})=>{let t=W(Sn,e),n=(0,Y.useMemo)(()=>t.__typename===`FinancialCharge`?Object.entries(t.exchangeRates??{}).sort((e,t)=>e[0].localeCompare(t[0])):[],[t]);return t.__typename===`FinancialCharge`?(0,Q.jsx)(`div`,{className:`flex flex-row flex-wrap gap-2 px-2`,children:n.map(([e,t])=>(0,Q.jsx)(Jt,{className:`gap-0 py-2`,children:(0,Q.jsxs)(Kt,{className:`flex flex-col px-2`,children:[(0,Q.jsx)(qt,{className:`text-xl font-semibold`,children:e.toLocaleUpperCase()}),(0,Q.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,Q.jsxs)(`span`,{className:`whitespace-nowrap`,children:[j(e.toLocaleUpperCase()),`1=`]}),(0,Q.jsxs)(vt,{variant:`default`,className:`flex gap-1 rounded-lg text-md`,children:[j(tn.Ils),t]})]})]})},e))}):(0,Q.jsx)(Q.Fragment,{})},Fo=({chargeProps:e})=>{let t=W(Pn,e),n=(0,Y.useMemo)(()=>t.__typename===`ForeignSecuritiesCharge`?t.securities:[],[t]);return n.length?(0,Q.jsx)(`div`,{className:`flex flex-col gap-6`,children:n.map(e=>(0,Q.jsx)(Io,{security:e},e.id))}):null},Io=({security:e})=>{let{details:t}=e;return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[t?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsxs)(`div`,{className:`text-lg font-semibold`,children:[t.engName,t.symbol&&(0,Q.jsxs)(`span`,{className:`text-gray-500`,children:[` (`,t.symbol,`)`]})]}),(0,Q.jsx)(`div`,{className:`text-sm text-gray-500`,children:t.hebName}),(0,Q.jsxs)(`div`,{className:`flex flex-row flex-wrap items-center gap-2`,children:[t.exchange&&(0,Q.jsx)(vt,{variant:`secondary`,children:t.exchange}),(0,Q.jsx)(vt,{variant:`secondary`,children:t.currencyCode}),(0,Q.jsx)(vt,{variant:`outline`,children:t.itemType}),t.stockType&&(0,Q.jsx)(vt,{variant:`outline`,children:t.stockType}),t.isEtf&&(0,Q.jsx)(vt,{variant:`outline`,children:`ETF`}),t.isForeign&&(0,Q.jsx)(vt,{variant:`outline`,children:`Foreign`})]}),(0,Q.jsxs)(`div`,{className:`text-xs text-gray-400`,children:[`Key `,e.securityKey,` · reference data as of`,` `,new Date(t.asOfDate).toLocaleDateString()]})]}):(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsxs)(`div`,{className:`text-lg font-semibold`,children:[`Security `,e.securityKey]}),(0,Q.jsx)(`div`,{className:`text-sm text-gray-500`,children:`Not found in the ingested securities list — the reference list may be out of date.`})]}),(0,Q.jsx)(Ro,{transactions:e.transactions}),e.executions.length>0&&(0,Q.jsx)(Lo,{title:`Portfolio activity`,children:(0,Q.jsx)($n,{rows:e.executions.map(e=>({execution:e}))})})]})},Lo=({title:e,children:t})=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsx)(`div`,{className:`text-sm font-medium text-gray-500`,children:e}),t]}),Ro=({transactions:e})=>{let t=(0,Y.useMemo)(()=>e.map(e=>W(Fn,e)),[e]);return t.length?(0,Q.jsx)(Lo,{title:`Bank transactions`,children:(0,Q.jsxs)(Wt,{children:[(0,Q.jsx)(kt,{children:(0,Q.jsxs)(Rt,{children:[(0,Q.jsx)(G,{children:`Event Date`}),(0,Q.jsx)(G,{children:`Debit Date`}),(0,Q.jsx)(G,{children:`Amount`}),(0,Q.jsx)(G,{children:`Account`}),(0,Q.jsx)(G,{children:`Description`}),(0,Q.jsx)(G,{children:`Reference#`})]})}),(0,Q.jsx)(It,{children:t.map(e=>{let t={...e,onUpdate:()=>void 0,editTransaction:()=>void 0,enableEdit:!1,enableChargeLink:!1};return(0,Q.jsxs)(Rt,{children:[(0,Q.jsx)(K,{children:(0,Q.jsx)(Zn,{transaction:t})}),(0,Q.jsx)(K,{children:(0,Q.jsx)(Kn,{transaction:t})}),(0,Q.jsx)(K,{children:(0,Q.jsx)(Yn,{transaction:t})}),(0,Q.jsx)(K,{children:(0,Q.jsx)(Gn,{transaction:t})}),(0,Q.jsx)(K,{children:(0,Q.jsx)(qn,{transaction:t})}),(0,Q.jsx)(K,{children:(0,Q.jsx)(Xn,{transaction:t})})]},e.id)})})]})}):null},zo=`deleteMiscExpense`,Bo=()=>{let[{fetching:e},t]=kn(rn);return{fetching:e,deleteMiscExpense:(0,Y.useCallback)(async e=>{let n=`Error deleting misc expense`,r=`${zo}-${e.id}`;a.loading(`Deleting misc expense`,{id:r});try{let i=await t(e),s=o(i,n,r);if(s)return a.success(`Success`,{id:r,description:`Misc expense was deleted successfully`}),s.deleteMiscExpense}catch(e){console.error(`${n}: ${e}`),a.error(`Error`,{id:r,description:n,duration:1e5,closeButton:!0})}},[t])}};function Vo({miscExpenseId:e,onChange:t}){let{deleteMiscExpense:n}=Bo();async function r(){try{await n({id:e}),t?.()}catch(e){let t=`Failed to delete misc expense`;console.error(`${t}: ${e}`),a.error(`Error`,{description:t})}}return(0,Q.jsx)(S,{onConfirm:r,title:`Are you sure you want to delete this expense?`,children:(0,Q.jsx)(R,{className:`size-7.5 text-red-500`,variant:`ghost`,children:(0,Q.jsx)(I,{className:`size-5`})})})}var Ho=({miscExpensesData:e,onChange:t})=>{let{miscExpenses:n}=W(Zt,e);return(0,Q.jsxs)(`table`,{className:`w-full h-full`,children:[(0,Q.jsx)(`thead`,{children:(0,Q.jsxs)(`tr`,{children:[(0,Q.jsx)(`th`,{children:`Creditor`}),(0,Q.jsx)(`th`,{children:`Debtor`}),(0,Q.jsx)(`th`,{children:`Amount`}),(0,Q.jsx)(`th`,{children:`Invoice Date`}),(0,Q.jsx)(`th`,{children:`Value Date`}),(0,Q.jsx)(`th`,{children:`Description`}),(0,Q.jsx)(`th`,{children:`Actions`})]})}),(0,Q.jsx)(`tbody`,{children:n?.map(e=>(0,Q.jsxs)(`tr`,{children:[(0,Q.jsx)(`td`,{children:(0,Q.jsx)(`div`,{children:e.creditor?.name})}),(0,Q.jsx)(`td`,{children:(0,Q.jsx)(`div`,{children:e.debtor?.name})}),(0,Q.jsx)(`td`,{children:(0,Q.jsx)(`div`,{children:e.amount?.formatted})}),(0,Q.jsx)(`td`,{children:(0,Q.jsx)(`div`,{children:e.invoiceDate})}),(0,Q.jsx)(`td`,{children:(0,Q.jsx)(`div`,{children:e.valueDate&&Tt(new Date(e.valueDate),`yyyy-MM-dd`)})}),(0,Q.jsx)(`td`,{children:(0,Q.jsx)(`div`,{children:e.description})}),(0,Q.jsxs)(`td`,{children:[(0,Q.jsx)(Le,{onDone:t,data:e}),(0,Q.jsx)(Vo,{miscExpenseId:e.id,onChange:t})]})]},e?.id))})]})},Uo=({salaryRecordsProps:e})=>{let t=W(en,e);if(t.__typename!==`SalaryCharge`)return(0,Q.jsx)(Q.Fragment,{});let{salaryRecords:n}=t;return(0,Q.jsxs)(`table`,{className:`w-full h-full`,children:[(0,Q.jsx)(`thead`,{children:(0,Q.jsxs)(`tr`,{children:[(0,Q.jsx)(`th`,{children:`Employee`}),(0,Q.jsx)(`th`,{children:`Direct Salary`}),(0,Q.jsx)(`th`,{children:`Base Salary`}),(0,Q.jsx)(`th`,{children:`Pension`}),(0,Q.jsx)(`th`,{children:`Training Fund`}),(0,Q.jsx)(`th`,{children:`Social Security`}),(0,Q.jsx)(`th`,{children:`Tax`})]})}),(0,Q.jsx)(`tbody`,{children:n?.map(e=>(0,Q.jsxs)(`tr`,{children:[(0,Q.jsx)(`td`,{children:(0,Q.jsx)(`div`,{children:e.employee?.name??`Missing`})}),(0,Q.jsx)(`td`,{children:(0,Q.jsx)(`div`,{children:e.directAmount.formatted})}),(0,Q.jsx)(`td`,{children:(0,Q.jsx)(`div`,{children:e.baseAmount?.formatted})}),(0,Q.jsxs)(`td`,{children:[(0,Q.jsx)(`div`,{children:e.pensionFund?.name}),(0,Q.jsxs)(`div`,{children:[`Employee: `,e.pensionEmployeeAmount?.formatted]}),(0,Q.jsxs)(`div`,{children:[`Employer: `,e.pensionEmployerAmount?.formatted]}),(0,Q.jsxs)(`div`,{children:[`Compensation: `,e.compensationsAmount?.formatted]})]}),(0,Q.jsxs)(`td`,{children:[(0,Q.jsx)(`div`,{children:e.trainingFund?.name}),(0,Q.jsxs)(`div`,{children:[`Employee: `,e.trainingFundEmployeeAmount?.formatted]}),(0,Q.jsxs)(`div`,{children:[`Employer: `,e.trainingFundEmployerAmount?.formatted]})]}),(0,Q.jsxs)(`td`,{children:[(0,Q.jsxs)(`div`,{children:[`Employee: `,e.socialSecurityEmployeeAmount?.formatted]}),(0,Q.jsxs)(`div`,{children:[`Employer: `,e.socialSecurityEmployerAmount?.formatted]}),(0,Q.jsxs)(`div`,{children:[`Health: `,e.healthInsuranceAmount?.formatted]})]}),(0,Q.jsx)(`td`,{children:(0,Q.jsx)(`div`,{children:e.incomeTaxAmount?.formatted})})]},`${e.employee?.name}-${e.baseAmount}`))})]})};function Wo({chargeID:e,onChange:t=()=>void 0,onChargeDeleted:n,fetching:r}){let[i,a]=(0,Y.useState)([]),[o,s]=(0,Y.useState)(e),[c,l]=(0,Y.useState)(!1),[u,d]=(0,Y.useState)(void 0),f=(0,Y.useContext)(ho),[{data:p,fetching:m},h]=Mn({query:pn,variables:{chargeId:o},pause:f.active}),v=W(q,f.active?f.getCharge(e):p?.charge),y=f.active?f.fetching:m,b=He(u),x=(0,Y.useCallback)(()=>{f.active?f.refetch():h({requestPolicy:`network-only`}),t()},[f,h,t]),S=(0,Y.useCallback)(e=>{if(n){n(e);return}f.active&&f.refetch(),t()},[f,t,n]);(0,Y.useEffect)(()=>{let e=v;e&&d(t=>{if(!t||t.id!==e.id)return e;let n={...t};for(let[t,r]of Object.entries(e))r!==void 0&&(n[t]=r);return n})},[v]),(0,Y.useEffect)(()=>{r&&!f.active&&h()},[r,h,f.active]),e!==o&&(s(e),d(void 0));let C=b?.__typename,w=!!b?.metadata?.ledgerCount,T=!!b?.metadata?.transactionsCount,E=!!b?.metadata?.documentsCount,D=!!b?.metadata?.receiptsCount,O=!!b?.metadata?.invoicesCount,ee=C===`SalaryCharge`,k=!!b?.metadata?.miscExpensesCount,te=b?.metadata?.openDocuments,ne=(b?.totalAmount?.raw??0)>0&&!D,re=!(O||D)||!T;(0,Y.useEffect)(()=>{T&&a(e=>e.includes(`transactions`)?e:[...e,`transactions`])},[T]),(0,Y.useEffect)(()=>{E&&a(e=>e.includes(`documents`)?e:[...e,`documents`])},[E]),(0,Y.useEffect)(()=>{w&&a(e=>e.includes(`ledger`)?e:[...e,`ledger`])},[w]),(0,Y.useEffect)(()=>{ee&&a(e=>e.includes(`salaries`)?e:[...e,`salaries`])},[ee]),(0,Y.useEffect)(()=>{k&&a(e=>e.includes(`miscExpenses`)?e:[...e,`miscExpenses`])},[k]);let ie=Ct(q,Tn,b),A=Ct(q,an,b),ae=Ct(q,yn,b),oe=Ct(q,gn,b),se=Ct(q,Zt,b),ce=(0,Y.useMemo)(()=>C===`ConversionCharge`&&Ct(q,Xt,b),[b,C]),j=(0,Y.useMemo)(()=>C===`FinancialCharge`&&Ct(q,Sn,b),[b,C]),M=C===`SalaryCharge`&&Ct(q,en,b),le=(0,Y.useMemo)(()=>C===`CreditcardBankCharge`&&Ct(q,Qt,b),[b,C]),P=(0,Y.useMemo)(()=>C===`ForeignSecuritiesCharge`&&Ct(q,Pn,b),[b,C]);return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[Ct(q,On,b)&&(0,Q.jsx)(po,{data:b}),b?(0,Q.jsxs)(`div`,{className:`flex flex-row`,children:[(0,Q.jsxs)(gt,{className:`w-full`,type:`multiple`,value:i,onValueChange:a,children:[C===`ConversionCharge`&&(0,Q.jsxs)(V,{value:`conversion`,children:[(0,Q.jsx)(z,{disabled:!T,children:`Conversion Info`}),(0,Q.jsx)(B,{children:ce&&(0,Q.jsx)(Mo,{chargeProps:b})})]}),C===`FinancialCharge`&&(0,Q.jsxs)(V,{value:`exchangeRates`,children:[(0,Q.jsx)(z,{disabled:!j,children:`Exchange Rates`}),(0,Q.jsx)(B,{children:j&&(0,Q.jsx)(Po,{chargeProps:b})})]}),T&&(0,Q.jsxs)(V,{value:`transactions`,children:[(0,Q.jsx)(z,{disabled:!T,children:(0,Q.jsxs)(`div`,{className:`flex flex-row items-center gap-2 justify-between w-full`,children:[`Transactions`,ne&&(0,Q.jsx)(ge,{chargeId:b.id,onIssued:x})]})}),(0,Q.jsx)(B,{children:oe&&(0,Q.jsx)(mo,{transactionsProps:b,chargeType:C,onChange:x})})]}),k&&(0,Q.jsxs)(V,{value:`miscExpenses`,children:[(0,Q.jsx)(z,{disabled:!k,children:`Misc Expenses`}),(0,Q.jsx)(B,{children:se&&(0,Q.jsx)(Ho,{miscExpensesData:b,onChange:x})})]}),E&&(0,Q.jsxs)(V,{value:`documents`,children:[(0,Q.jsx)(z,{disabled:!E,children:(0,Q.jsxs)(`div`,{className:`flex flex-row items-center gap-2 justify-between w-full`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-row items-center gap-2 justify-start`,children:[E&&(0,Q.jsx)(N,{content:`Documents Gallery`,children:(0,Q.jsx)(R,{onClick:e=>{e.stopPropagation(),l(e=>!e)},variant:`outline`,disabled:!ie,size:`icon`,className:`size-7.5 text-gray-500`,children:(0,Q.jsx)(g,{className:`size-5`})})}),`Documents`]}),te&&(0,Q.jsx)(ge,{chargeId:b.id,onIssued:x})]})}),(0,Q.jsx)(B,{children:A&&(0,Q.jsx)(Me,{documentsProps:W(an,b)?.additionalDocuments,onChange:x,onChargeDeleted:S})})]}),C===`SalaryCharge`&&(0,Q.jsxs)(V,{value:`salaries`,children:[(0,Q.jsx)(z,{disabled:!ee,children:`Salaries`}),(0,Q.jsx)(B,{children:M&&(0,Q.jsx)(Uo,{salaryRecordsProps:b})})]}),b.__typename===`BusinessTripCharge`&&(0,Q.jsxs)(V,{value:`businessTrip`,children:[(0,Q.jsx)(z,{children:`Business Trip`}),(0,Q.jsx)(B,{children:(0,Q.jsx)(ze,{data:b.businessTrip})})]}),C===`CreditcardBankCharge`&&(0,Q.jsxs)(V,{value:`creditcard`,children:[(0,Q.jsx)(z,{children:`CreditCard Transactions`}),(0,Q.jsx)(B,{children:le&&(0,Q.jsx)(No,{chargeProps:b})})]}),C===`ForeignSecuritiesCharge`&&(0,Q.jsxs)(V,{value:`foreignSecurities`,children:[(0,Q.jsx)(z,{children:`Foreign Securities`}),(0,Q.jsx)(B,{children:P&&(0,Q.jsx)(Fo,{chargeProps:b})})]}),w&&(0,Q.jsxs)(V,{value:`ledger`,children:[(0,Q.jsx)(z,{disabled:!w,onClick:e=>{e.stopPropagation()},children:(0,Q.jsxs)(`div`,{className:`flex flex-row items-center gap-2 justify-start w-full`,children:[!b.metadata?.isLedgerLocked&&(0,Q.jsx)(_,{chargeId:b.id,onChange:x,variant:`outline`}),`Ledger Records`]})}),(0,Q.jsx)(B,{children:ae&&(0,Q.jsx)(Go,{data:b})})]}),C===`BankDepositCharge`&&(0,Q.jsxs)(V,{value:`bankDeposit`,children:[(0,Q.jsx)(z,{children:`Bank Deposit`}),(0,Q.jsx)(B,{children:(0,Q.jsx)(bo,{chargeId:b.id,onChange:x})})]}),re&&(0,Q.jsx)(jo,{chargeId:b.id,onChange:x,isOpened:i.includes(`charges-matches`)})]}),ie&&(0,Q.jsx)(At,{maw:`1/6`,children:(0,Q.jsx)(kr,{in:c,transitionDuration:500,transitionTimingFunction:`linear`,children:(0,Q.jsx)(fo,{chargeProps:b,onChange:x,onChargeDeleted:S})})})]}):y?(0,Q.jsx)(Ft,{className:`flex self-center my-5`,color:`dark`,size:`xl`,variant:`dots`}):(0,Q.jsx)(Q.Fragment,{children:!v&&(0,Q.jsx)(`p`,{children:`Error fetching extended information for this charge`})})]})}var Go=({data:e})=>{let{ledger:t}=W(yn,e);return(0,Q.jsx)(Wn,{ledgerRecordsData:t.records,ledgerDiffData:t.validate?.differences,matches:t.validate?.matches})},Ko=`insertDepreciationRecord`,qo=()=>{let[{fetching:e},t]=kn(bn);return{fetching:e,addDepreciationRecord:(0,Y.useCallback)(async e=>{let n=`Error adding depreciation record`,r=Ko;a.loading(`Adding depreciation record`,{id:r});try{let i=await t(e),s=o(i,n,r,`insertDepreciationRecord`);if(s)return a.success(`Success`,{id:r,description:`Depreciation record was added`}),s.insertDepreciationRecord}catch(e){console.error(`${n}: ${e}`),a.error(`Error`,{id:r,description:n,duration:1e5,closeButton:!0})}},[t])}};function Jo(e){let{chargeId:t,onAdd:n}=e,[r,i]=(0,Y.useState)(!1);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(N,{content:`Add Depreciation Record`,children:(0,Q.jsx)(R,{variant:`outline`,size:`icon`,className:`size-7.5`,onClick:e=>{e.stopPropagation(),i(!0)},children:(0,Q.jsx)(ot,{className:`size-5`})})}),r&&(0,Q.jsx)(Yo,{chargeId:t,opened:r,close:()=>i(!1),onAdd:n})]})}function Yo({chargeId:e,opened:t,close:n,onAdd:r}){let i=Ot({defaultValues:{chargeId:e}}),{control:a,handleSubmit:o}=i,[s,c]=(0,Y.useState)(!1),[{data:l,fetching:u}]=Mn({query:cn}),{addDepreciationRecord:d,fetching:f}=qo(),p=e=>{d({fields:e}).then(()=>{r?.(),n()})},m=l?.depreciationCategories?.map(e=>({value:e.id,label:e.name}))??[];return(0,Y.useEffect)(()=>{c(!!(u||f))},[u,f]),(0,Q.jsxs)(ce,{opened:t,onClose:n,centered:!0,lockScroll:!0,children:[(0,Q.jsx)(ce.Title,{children:`Add Depreciation Record`}),(0,Q.jsx)(ce.Body,{children:(0,Q.jsx)(Et,{...i,children:(0,Q.jsxs)(`form`,{onSubmit:o(p),children:[(0,Q.jsx)(Dt,{name:`activationDate`,control:a,rules:{pattern:{value:Ae,message:`Date must be in format yyyy-mm-dd`}},render:({field:e,fieldState:t})=>(0,Q.jsxs)(yt,{className:`h-min`,children:[(0,Q.jsx)(St,{htmlFor:`activation-date`,children:`Activation Date`}),(0,Q.jsx)(bt,{children:(0,Q.jsx)(fe,{id:`activation-date`,value:e.value??void 0,onChange:t=>{t!==e.value&&e.onChange(t)},"aria-invalid":!!t.error})}),(0,Q.jsx)(Bt,{})]})}),(0,Q.jsx)(xt,{name:`amount`,control:a,render:({field:e,fieldState:t})=>(0,Q.jsx)(xt,{name:`currency`,control:a,render:({field:n,fieldState:r})=>(0,Q.jsx)(le,{...e,value:e.value??void 0,error:t.error?.message||r.error?.message,label:`Amount`,currencyCodeProps:{...n,label:`Currency`}})})}),(0,Q.jsx)(xt,{name:`categoryId`,control:a,render:({field:e,fieldState:t})=>(0,Q.jsx)(Ce,{...e,disabled:u,data:m,label:`Category`,placeholder:`Scroll to see all options`,maxDropdownHeight:160,searchable:!0,error:t.error?.message,withinPortal:!0})}),(0,Q.jsx)(xt,{name:`type`,control:a,render:({field:e,fieldState:t})=>(0,Q.jsx)(Ce,{...e,data:rs,value:e.value,label:`Type`,placeholder:`Scroll to see all options`,maxDropdownHeight:160,searchable:!0,error:t.error?.message,withinPortal:!0})}),(0,Q.jsx)(`div`,{className:`flex justify-center mt-5 gap-3`,children:(0,Q.jsx)(`button`,{type:`submit`,className:`text-white bg-indigo-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-indigo-600 rounded-sm text-lg`,children:`Add`})})]})})}),(f||s)&&(0,Q.jsx)(_e,{blur:1,center:!0,children:(0,Q.jsx)(Ft,{})})]})}var Xo=`updateDepreciationRecord`,Zo=()=>{let[{fetching:e},t]=kn(An);return{fetching:e,updateDepreciationRecord:(0,Y.useCallback)(async e=>{let n=`Error updating depreciation record`,r=Xo;a.loading(`Updating depreciation record`,{id:r});try{let i=await t(e),s=o(i,n,r,`updateDepreciationRecord`);if(s)return a.success(`Success`,{id:r,description:`Depreciation record was updated`}),s.updateDepreciationRecord}catch(e){console.error(`${n}: ${e}`),a.error(`Error`,{id:r,description:n,duration:1e5,closeButton:!0})}},[t])}},Qo=`deleteDepreciationRecord`,$o=()=>{let[{fetching:e},t]=kn(un);return{fetching:e,deleteDepreciationRecord:(0,Y.useCallback)(async e=>{let n=`Error deleting depreciation record`,r=`${Qo}-${e.depreciationRecordId}`;a.loading(`Deleting depreciation record`,{id:r});try{let i=await t(e),s=o(i,n,r);if(s)return a.success(`Success`,{id:r,description:`Depreciation record was deleted`}),s.deleteDepreciationRecord}catch(e){console.error(`${n}: ${e}`),a.error(`Error`,{id:r,description:n,duration:1e5,closeButton:!0})}},[t])}};function es(e){let{fetching:t,deleteDepreciationRecord:n}=$o(),r=(0,Y.useCallback)(()=>{n({depreciationRecordId:e.depreciationRecordId}).then(()=>{e.onDelete?.()})},[e,n]);return(0,Q.jsx)(N,{content:`Remove Depreciation`,children:(0,Q.jsx)(S,{onConfirm:r,title:`Are you sure you want to delete the depreciation record?`,children:(0,Q.jsx)(R,{variant:`outline`,size:`icon`,className:`size-7.5 text-red-500`,disabled:t,children:(0,Q.jsx)(I,{className:`size-5`})})})})}var ts=({data:e,onChange:t})=>{let n=W(dn,e),[r,i]=(0,Y.useState)(!1),[{data:a,fetching:o},c]=Mn({query:cn,pause:!0}),l=Ot({defaultValues:{id:n.id}}),{control:u,handleSubmit:d,formState:{dirtyFields:f}}=l,{updateDepreciationRecord:p,fetching:m}=Zo(),h=e=>{let r=s(e,f);r&&Object.keys(r).length>0&&p({fields:{...e,id:n.id}}).then(()=>{t?.(),i(!1)})},g=a?.depreciationCategories.map(e=>({value:e.id,label:e.name}));return(0,Y.useEffect)(()=>{r&&!a&&c()},[r,a,c]),(0,Q.jsx)(Et,{...l,children:(0,Q.jsxs)(`tr`,{children:[(0,Q.jsx)(`td`,{children:(0,Q.jsx)(`form`,{id:`form ${n.id}`,onSubmit:d(h),children:r?(0,Q.jsx)(Dt,{name:`amount`,control:u,render:({field:e,fieldState:t})=>(0,Q.jsx)(Dt,{name:`currency`,control:u,render:({field:r,fieldState:i})=>(0,Q.jsx)(le,{...e,defaultValue:n.amount?.raw??n.charge.totalAmount?.raw,value:e.value??void 0,error:t.error?.message||i.error?.message,label:`Amount`,currencyCodeProps:{...r,label:`Currency`,defaultValue:n.amount?.currency??n.charge.totalAmount?.currency}})})}):(0,Q.jsx)(`div`,{children:n.amount?.formatted??n.charge.totalAmount?.formatted})})}),(0,Q.jsx)(`td`,{children:(0,Q.jsx)(`div`,{className:`flex flex-col gap-2 justify-center`,children:r?(0,Q.jsx)(Dt,{name:`activationDate`,control:u,defaultValue:n.activationDate,rules:{pattern:{value:Ae,message:`Date must be in format yyyy-mm-dd`}},render:({field:e,fieldState:t})=>(0,Q.jsxs)(yt,{children:[(0,Q.jsx)(St,{htmlFor:`activation-date-${n.id}`,children:`Activation Date`}),(0,Q.jsx)(bt,{children:(0,Q.jsx)(fe,{id:`activation-date-${n.id}`,form:`form ${n.id}`,value:e.value??void 0,onChange:t=>{t!==e.value&&e.onChange(t)},"aria-invalid":!!t.error})}),(0,Q.jsx)(Bt,{})]})}):(0,Q.jsx)(`div`,{children:Tt(new Date(n.activationDate),`dd/MM/yy`)})})}),(0,Q.jsx)(`td`,{children:r?(0,Q.jsx)(Dt,{name:`categoryId`,control:u,render:({field:e,fieldState:t})=>(0,Q.jsxs)(yt,{children:[(0,Q.jsx)(St,{children:`Category`}),(0,Q.jsx)(bt,{children:(0,Q.jsx)(Ce,{...e,form:`form ${n.id}`,disabled:o,data:g??[],placeholder:`Scroll to see all options`,maxDropdownHeight:160,searchable:!0,error:t.error?.message,withinPortal:!0})}),(0,Q.jsx)(Bt,{})]})}):(0,Q.jsxs)(`div`,{children:[n.category.name,` (`,n.category.percentage,`%)`]})}),(0,Q.jsx)(`td`,{children:r?(0,Q.jsx)(Dt,{name:`type`,control:u,render:({field:e,fieldState:t})=>(0,Q.jsxs)(yt,{children:[(0,Q.jsx)(St,{children:`Type`}),(0,Q.jsx)(bt,{children:(0,Q.jsx)(Ce,{...e,form:`form ${n.id}`,data:rs,value:e.value,placeholder:`Scroll to see all options`,maxDropdownHeight:160,searchable:!0,error:t.error?.message,withinPortal:!0})}),(0,Q.jsx)(Bt,{})]})}):(0,Q.jsx)(`div`,{children:n.type})}),(0,Q.jsxs)(`td`,{children:[(0,Q.jsx)(N,{content:`Edit`,children:(0,Q.jsx)(R,{disabled:m||o,variant:r?`default`:`outline`,size:`icon`,className:`size-7.5`,onClick:e=>{e.stopPropagation(),i(e=>!e)},children:(0,Q.jsx)(ue,{className:`size-5`})})}),r&&(0,Q.jsx)(N,{content:`Confirm Changes`,children:(0,Q.jsx)(R,{type:`submit`,form:`form ${n.id}`,variant:`outline`,size:`icon`,className:`size-7.5 text-green-500`,children:(0,Q.jsx)(Ze,{className:`size-5`})})}),(0,Q.jsx)(es,{depreciationRecordId:n.id,onDelete:t})]})]},n.id)})},ns=({chargeId:e,onChange:t})=>{let[{data:n,fetching:r}]=Mn({query:nn,variables:{chargeId:e}});return!r&&!n?.depreciationRecordsByCharge.length?(0,Q.jsx)(Jo,{chargeId:e,onAdd:t}):r?(0,Q.jsx)(d,{className:`h-10 w-10 animate-spin mr-2 self-center`}):(0,Q.jsx)(`div`,{className:`flex flex-col gap-2 mt-5`,children:(0,Q.jsxs)(se,{highlightOnHover:!0,withBorder:!0,children:[(0,Q.jsx)(`thead`,{children:(0,Q.jsxs)(`tr`,{children:[(0,Q.jsx)(`th`,{children:`Amount`}),(0,Q.jsx)(`th`,{children:`Activation Date`}),(0,Q.jsx)(`th`,{children:`Category`}),(0,Q.jsx)(`th`,{children:`Type`}),(0,Q.jsx)(`th`,{})]})}),(0,Q.jsxs)(`tbody`,{children:[n?.depreciationRecordsByCharge.map(e=>(0,Q.jsx)(ts,{data:e,onChange:t},e.id)),(0,Q.jsx)(`tr`,{children:(0,Q.jsx)(`td`,{colSpan:5,children:(0,Q.jsx)(Jo,{chargeId:e,onAdd:t})})})]})]})})},rs=Object.entries(Yt).map(([e,t])=>({value:t,label:e}));function is({chargeId:e,chargeType:t,onChange:n,onDelete:r,isIncome:i}){let{deleteCharge:a}=D(),[o,s]=(0,Y.useState)(!1),[c,u]=(0,Y.useState)(!1),d=(0,Y.useCallback)(()=>u(!1),[]),[f,p]=(0,Y.useState)(!1),[m,h]=(0,Y.useState)(!1),g=(0,Y.useCallback)(()=>h(!1),[]),[_,y]=(0,Y.useState)(!1),[b,C]=(0,Y.useState)(!1),[w,T]=(0,Y.useState)(!1),[E,O]=(0,Y.useState)(!1),k=(0,Y.useCallback)(()=>{ve(`${window.location.origin}${l.CHARGES.DETAIL(e)}`)},[e]),te=(0,Y.useCallback)(async()=>{if(await a({chargeId:e})&&r){r();return}n?.()},[e,a,n,r]);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(dt,{children:[(0,Q.jsx)(st,{asChild:!0,children:(0,Q.jsx)(R,{variant:`ghost`,size:`icon`,"aria-label":`Charge actions`,onClick:e=>e.stopPropagation(),children:(0,Q.jsx)(x,{className:`size-4`})})}),(0,Q.jsxs)(ct,{align:`start`,className:`w-50`,onClick:e=>e.stopPropagation(),children:[(0,Q.jsx)(pt,{variant:`section`,children:`Charge`}),(0,Q.jsxs)(L,{onSelect:()=>C(!0),children:[(0,Q.jsx)(ue,{className:`size-4`}),`Edit Charge`]}),(0,Q.jsxs)(L,{onSelect:k,children:[(0,Q.jsx)(v,{className:`size-4`}),`Copy Charge Link`]}),(0,Q.jsxs)(L,{variant:`destructive`,onSelect:()=>s(!0),children:[(0,Q.jsx)(I,{className:`size-4`}),`Delete Charge`]}),(0,Q.jsx)(lt,{}),(0,Q.jsx)(pt,{variant:`section`,children:`Documents`}),(0,Q.jsxs)(L,{onSelect:()=>T(!0),children:[(0,Q.jsx)(A,{className:`size-4`}),`Insert Document`]}),(0,Q.jsxs)(L,{onSelect:()=>O(!0),children:[(0,Q.jsx)(rr,{className:`size-4`}),`Upload Documents`]}),i&&(0,Q.jsxs)(L,{onSelect:()=>y(!0),children:[(0,Q.jsx)(A,{className:`size-4`}),`Issue Document`]}),(0,Q.jsx)(lt,{}),(0,Q.jsx)(pt,{variant:`section`,children:`Misc Expenses`}),(0,Q.jsxs)(L,{onSelect:()=>p(!0),children:[(0,Q.jsx)(A,{className:`size-4`}),`Add expense`]}),t===`CommonCharge`&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(lt,{}),(0,Q.jsx)(pt,{variant:`section`,children:`Depreciation`}),(0,Q.jsxs)(L,{onSelect:()=>u(!0),children:[(0,Q.jsx)(er,{className:`size-4`}),`Depreciation`]})]}),t===`SalaryCharge`&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(lt,{}),(0,Q.jsx)(pt,{variant:`section`,children:`Salaries`}),(0,Q.jsxs)(L,{onSelect:()=>h(!0),children:[(0,Q.jsx)(rr,{className:`size-4`}),`Payroll file upload`]})]})]})]}),(0,Q.jsx)(S,{open:o,setOpen:s,onConfirm:te,title:`Are you sure you want to delete this charge?`}),(0,Q.jsx)(ce,{withinPortal:!0,size:`xl`,centered:!0,opened:c,onClose:d,title:`Depreciation`,onClick:e=>e.stopPropagation(),children:(0,Q.jsx)(ns,{chargeId:e,onChange:()=>{d(),n?.()}})}),(0,Q.jsx)(Ge,{open:f,onOpenChange:p,children:(0,Q.jsx)(Xe,{className:`sm:max-w-[425px]`,onClick:e=>e.stopPropagation(),children:(0,Q.jsx)(xe,{onDone:()=>{p(!1),n?.()},chargeId:e})})}),(0,Q.jsx)(ce,{centered:!0,opened:m,onClose:g,title:`Upload Payroll File`,onClick:e=>e.stopPropagation(),children:(0,Q.jsx)(he,{onDone:()=>{g(),n?.()},chargeId:e})}),(0,Q.jsx)(we,{open:E,onOpenChange:O,onChange:n,chargeId:e}),(0,Q.jsx)(ge,{chargeId:e,open:_,setOpen:y,onIssued:()=>n?.()}),(0,Q.jsx)(ae,{chargeId:b?e:void 0,close:()=>C(!1),onChange:n}),(0,Q.jsx)(ee,{chargeId:w?e:void 0,onChange:n,close:()=>T(!1)})]})}var as=[`type`,`mainDate`,`dateRange`,`amount`,`vat`,`mainCounterparty`,`description`,`tags`,`mainTaxCategory`,`businessTrip`,`transactionsCount`,`documentsCount`,`miscExpensesCount`,`ledgerCount`],os={BankDepositCharge:[1,1,0,1,0,0,1,1,0,0,1,0,0,1],BusinessTripCharge:[1,1,1,1,0,0,1,1,1,1,1,1,1,1],CommonCharge:[1,1,1,1,1,1,1,1,1,0,1,1,1,1],ConversionCharge:[1,1,0,2,0,0,1,1,1,0,1,0,0,1],CreditcardBankCharge:[1,1,0,1,0,1,1,1,1,0,1,0,0,1],DividendCharge:[1,1,1,1,0,0,1,1,0,0,1,0,1,1],FinancialCharge:[1,1,1,0,0,0,1,1,1,0,0,1,1,1],ForeignSecuritiesCharge:[1,1,1,1,0,1,1,1,0,0,1,0,0,1],InternalTransferCharge:[1,1,1,1,0,2,1,1,0,0,1,0,1,1],MonthlyVatCharge:[1,1,0,1,0,0,1,1,0,0,1,1,1,1],SalaryCharge:[1,1,1,1,0,0,1,1,0,0,1,1,1,1]},ss=new Map(as.map((e,t)=>[e,t]));function cs(e,t){let n=os[e];return n?n[ss.get(t)]??0:1}function $(e,t){return cs(e,t)!==0}function ls(e,t){return cs(e,t)===2}var us={[J.Counterparty]:`mainCounterparty`,[J.Description]:`description`,[J.Documents]:`documentsCount`,[J.Tags]:`tags`,[J.TaxCategory]:`mainTaxCategory`,[J.Transactions]:`transactionsCount`,[J.Vat]:`vat`};function ds(e,t){return(t??[]).filter(t=>$(e,us[t]))}function fs(e,t,n){return!!t?.includes(n)&&$(e,us[n])}var ps={pending:`bg-muted-foreground/40 animate-pulse`,warning:`bg-amber-500 dark:bg-amber-400`,error:`bg-red-500 dark:bg-red-400`},ms={ok:`ok`,pending:`checking`,warning:`has differences`,error:`has issues`};function hs({children:e}){return(0,Q.jsx)(`span`,{className:`italic text-muted-foreground/70`,children:e})}function gs({state:e,className:t}){return e===`ok`?null:(0,Q.jsx)(`span`,{"aria-hidden":!0,className:r(`inline-block size-2 shrink-0 rounded-full`,ps[e],t)})}var _s={indigo:`bg-indigo-50 text-indigo-700 ring-indigo-200 dark:bg-indigo-950/40 dark:text-indigo-300 dark:ring-indigo-900`,violet:`bg-violet-50 text-violet-700 ring-violet-200 dark:bg-violet-950/40 dark:text-violet-300 dark:ring-violet-900`,teal:`bg-teal-50 text-teal-700 ring-teal-200 dark:bg-teal-950/40 dark:text-teal-300 dark:ring-teal-900`,cyan:`bg-cyan-50 text-cyan-700 ring-cyan-200 dark:bg-cyan-950/40 dark:text-cyan-300 dark:ring-cyan-900`,blue:`bg-blue-50 text-blue-700 ring-blue-200 dark:bg-blue-950/40 dark:text-blue-300 dark:ring-blue-900`,orange:`bg-orange-50 text-orange-700 ring-orange-200 dark:bg-orange-950/40 dark:text-orange-300 dark:ring-orange-900`,fuchsia:`bg-fuchsia-50 text-fuchsia-700 ring-fuchsia-200 dark:bg-fuchsia-950/40 dark:text-fuchsia-300 dark:ring-fuchsia-900`,slate:`bg-slate-100 text-slate-700 ring-slate-200 dark:bg-slate-800/60 dark:text-slate-300 dark:ring-slate-700`,purple:`bg-purple-50 text-purple-700 ring-purple-200 dark:bg-purple-950/40 dark:text-purple-300 dark:ring-purple-900`,sky:`bg-sky-50 text-sky-700 ring-sky-200 dark:bg-sky-950/40 dark:text-sky-300 dark:ring-sky-900`,pink:`bg-pink-50 text-pink-700 ring-pink-200 dark:bg-pink-950/40 dark:text-pink-300 dark:ring-pink-900`};function vs(e){return _s[Ee(e)]}function ys({type:e,className:t}){return(0,Q.jsxs)(`span`,{className:r(`flex min-w-0 items-center gap-1.5`,t),children:[(0,Q.jsx)(`span`,{className:r(`inline-flex size-6 shrink-0 items-center justify-center rounded-md ring-1 [&_svg]:size-3.5`,vs(e)),children:F(e)}),(0,Q.jsx)(`span`,{className:`truncate text-sm font-medium`,children:M(e)})]})}function bs(e){switch(e){case void 0:return`pending`;case vn.Valid:return`ok`;case vn.Diff:return`warning`;case vn.Invalid:return`error`}}function xs(e,t){return e?t===void 0?`pending`:t?`ok`:`error`:`ok`}function Ss({label:e,count:t,state:n=`ok`,hint:i}){return(0,Q.jsxs)(`span`,{title:i,className:r(`inline-flex items-center gap-1 whitespace-nowrap text-xs`,n===`error`?`text-red-600 dark:text-red-400`:n===`warning`?`text-amber-700 dark:text-amber-400`:`text-muted-foreground`),"aria-label":`${e} ${t}${n===`ok`?``:`, ${ms[n]}`}`,children:[(0,Q.jsx)(gs,{state:n}),(0,Q.jsx)(`span`,{"aria-hidden":!0,className:`tabular-nums font-medium`,children:t}),(0,Q.jsx)(`span`,{"aria-hidden":!0,children:e})]})}var Cs={[J.Counterparty]:`counterparty`,[J.Description]:`description`,[J.Documents]:`documents`,[J.Tags]:`tags`,[J.TaxCategory]:`tax category`,[J.Transactions]:`transactions`,[J.Vat]:`VAT`};function ws({type:e,missingInfo:t}){let n=ds(e,t);if(n.length===0)return null;let r=n.map(e=>Cs[e]).join(`, `);return(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-0.5 rounded-md border border-amber-300 bg-amber-50 px-1 py-0.5 text-xs font-medium text-amber-900 dark:border-amber-800 dark:bg-amber-950 dark:text-amber-200`,title:`Missing: ${r}`,"aria-label":`${n.length} detail${n.length===1?``:`s`} missing: ${r}`,children:[(0,Q.jsx)(ht,{"aria-hidden":!0,className:`size-3`}),(0,Q.jsx)(`span`,{"aria-hidden":!0,className:`tabular-nums`,children:n.length})]})}function Ts({value:e,currency:t,className:n}){return(0,Q.jsx)(`span`,{className:r(`whitespace-nowrap tabular-nums font-medium`,e>0?`text-emerald-700 dark:text-emerald-400`:`text-red-600 dark:text-red-400`,n),children:ne(e,t)})}function Es({value:e,currency:t,amountValue:n,isMissingInfo:r}){return r||e==null&&t===tn.Ils||(e??0)>0&&(n??0)<0||(e??0)<0&&(n??0)>0?`error`:`ok`}function Ds({chargeId:e,label:t,onAccept:n,fetching:r,onChange:i,children:a}){let[o,s]=(0,Y.useState)(!1),[c,l]=(0,Y.useState)(void 0),u=(0,Y.useCallback)(async e=>{e.stopPropagation();let t=await n();t&&(i(),l(t),s(!0))},[n,i]);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{className:`inline-flex items-baseline gap-1`,children:[(0,Q.jsx)(`span`,{className:`border-b border-dashed border-amber-400 dark:border-amber-600`,children:a}),(0,Q.jsx)(R,{variant:`ghost`,onClick:u,disabled:r,"aria-label":t,title:t,className:`size-5 shrink-0 p-0 text-emerald-600 dark:text-emerald-400`,children:(0,Q.jsx)(Ze,{className:`size-3.5`})})]}),(0,Q.jsx)(me,{chargeId:e,description:c?.description,tagIds:c?.tagIds,open:o,onOpenChange:s})]})}function Os({chargeId:e,value:t,suggestion:n,onChange:r}){let{updateCharge:i,fetching:a}=Ie(),o=t?.trim(),s=(0,Y.useCallback)(async()=>{let t=n;return await i({chargeId:e,fields:{userDescription:t}})?{description:t}:null},[e,n,i]);return o?(0,Q.jsx)(`span`,{className:`font-medium`,children:o}):n?(0,Q.jsx)(Ds,{chargeId:e,label:`Accept suggested description "${n}"`,onAccept:s,fetching:a,onChange:r,children:(0,Q.jsx)(`span`,{className:`font-medium text-amber-900 dark:text-amber-200`,children:n})}):(0,Q.jsx)(hs,{children:`No description`})}function ks({tag:e}){let t=e.namePath?.length?`${e.namePath.join(` > `)} > ${e.name}`:void 0;return(0,Q.jsx)(vt,{variant:`secondary`,title:t,className:`font-normal`,children:e.name})}function As({chargeId:e,tags:t,suggestedTags:n,onChange:r}){let{updateCharge:i,fetching:a}=Ie(),o=(0,Y.useCallback)(async()=>{let t=n.map(e=>({id:e.id}));return await i({chargeId:e,fields:{tags:t}})?{tagIds:t}:null},[e,n,i]);return t.length>0?(0,Q.jsx)(`span`,{className:`flex flex-wrap items-center gap-1`,children:t.map(e=>(0,Q.jsx)(ks,{tag:e},e.id))}):n.length===0?(0,Q.jsx)(hs,{children:`No tags`}):(0,Q.jsx)(Ds,{chargeId:e,label:`Accept ${n.length} suggested tag${n.length===1?``:`s`}`,onAccept:o,fetching:a,onChange:r,children:(0,Q.jsx)(`span`,{className:`flex flex-wrap items-center gap-1`,children:n.map(e=>(0,Q.jsx)(ks,{tag:e},e.id))})})}function js(e){return e===`compact`}var Ms={ok:`Ledger is valid`,pending:`Validating the ledger…`,warning:`Ledger differs from the expected records`,error:`Ledger is invalid`};function Ns({row:e,onChange:t,isSelected:n,onSelectedChange:r,onStatusChange:i}){return(0,Q.jsxs)(`div`,{className:`col-span-3 flex items-center gap-1 md:col-span-1`,children:[(0,Q.jsx)(Pe,{checked:n,onCheckedChange:e=>r(!!e),"aria-label":`Select charge ${e.description??e.id}`}),(0,Q.jsx)(w,{chargeId:e.id,value:e.accountantApproval,onChange:t,onStatusChange:i}),(0,Q.jsx)(ws,{type:e.type,missingInfo:e.missingInfo})]})}function Ps({row:e,density:t}){let n=!js(t)&&$(e.type,`dateRange`)&&Ci(e.dates);return(0,Q.jsxs)(`div`,{className:`col-span-9 flex min-w-0 flex-col gap-0.5 md:col-span-2`,children:[(0,Q.jsx)(ys,{type:e.type}),$(e.type,`mainDate`)&&(0,Q.jsx)(`span`,{className:`text-xs tabular-nums text-muted-foreground`,children:e.dates?.date?Tt(e.dates.date,`dd MMM yy`):(0,Q.jsx)(hs,{children:`No date`})}),n&&(0,Q.jsxs)(`span`,{className:`text-xs tabular-nums text-muted-foreground/70`,children:[Tt(e.dates.mostMinDate,`dd MMM`),` –`,` `,Tt(e.dates.mostMaxDate,`dd MMM yy`)]})]})}function Fs({row:e,onChange:t,density:n}){let r=js(n),i=!r&&$(e.type,`mainCounterparty`),a=!r&&$(e.type,`mainTaxCategory`),o=!r&&$(e.type,`businessTrip`),s=ls(e.type,`mainCounterparty`);return(0,Q.jsxs)(`div`,{className:`col-span-12 flex min-w-0 flex-col gap-1 md:col-span-4`,children:[$(e.type,`description`)&&(0,Q.jsx)(`span`,{className:`min-w-0 break-words text-sm`,children:(0,Q.jsx)(Os,{chargeId:e.id,value:e.description,suggestion:e.suggestedDescription,onChange:t})}),(i||a||o)&&(0,Q.jsxs)(`span`,{className:`flex min-w-0 flex-wrap items-center gap-1 text-xs text-muted-foreground`,children:[i&&(e.counterparty?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(c,{to:l.BUSINESSES.DETAIL(e.counterparty.id),target:`_blank`,rel:`noreferrer`,onClick:e=>e.stopPropagation(),className:`font-medium underline-offset-2 hover:underline`,children:e.counterparty.name}),s&&(0,Q.jsx)(N,{content:`Internal transfer — both sides of the movement are your own accounts`,children:(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-muted-foreground/70`,children:[(0,Q.jsx)(tr,{"aria-hidden":!0,className:`size-3`}),`both sides`]})})]}):(0,Q.jsx)(hs,{children:`No counterparty`})),i&&a&&(0,Q.jsx)(tr,{"aria-hidden":!0,className:`size-3 shrink-0 text-muted-foreground/40`}),a&&(e.taxCategory?(0,Q.jsx)(`span`,{className:`truncate`,children:e.taxCategory.name}):(0,Q.jsx)(hs,{children:`No tax category`})),o&&e.businessTrip&&(i||a)&&(0,Q.jsx)(`span`,{"aria-hidden":!0,className:`text-muted-foreground/40`,children:`·`}),o&&e.businessTrip&&(0,Q.jsx)(c,{to:l.BUSINESS_TRIPS.DETAIL(e.businessTrip.id),target:`_blank`,rel:`noreferrer`,onClick:e=>e.stopPropagation(),className:`font-medium underline-offset-2 hover:underline`,children:e.businessTrip.name})]}),!r&&$(e.type,`tags`)&&(0,Q.jsx)(`span`,{className:`min-w-0 text-xs`,children:(0,Q.jsx)(As,{chargeId:e.id,tags:e.tags,suggestedTags:e.suggestedTags,onChange:t})})]})}function Is({row:e,density:t}){let n=$(e.type,`amount`),r=!js(t)&&$(e.type,`vat`),i=ls(e.type,`amount`);return(0,Q.jsxs)(`div`,{className:`col-span-6 flex min-w-0 flex-col items-end gap-0.5 md:col-span-2`,children:[n&&(e.amount?(0,Q.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,Q.jsx)(gs,{state:xs(e.amount.shouldValidate,e.amount.isValid)}),(0,Q.jsx)(Ts,{value:e.amount.value,currency:e.amount.currency,className:`text-sm font-semibold`})]}):(0,Q.jsx)(hs,{children:`No amount`})),i&&(0,Q.jsx)(`span`,{className:`text-xs text-muted-foreground/70`,children:`base → quote`}),r&&(0,Q.jsxs)(`span`,{className:`flex items-center gap-1 text-xs text-muted-foreground`,children:[(0,Q.jsx)(gs,{state:Es({value:e.vat?.value,currency:e.vat?.currency,amountValue:e.amount?.value,isMissingInfo:fs(e.type,e.missingInfo,J.Vat)})}),e.vat?.value==null?(0,Q.jsx)(hs,{children:`No VAT`}):(0,Q.jsxs)(`span`,{className:`tabular-nums`,children:[`VAT `,e.vat.value.toLocaleString()]})]})]})}function Ls({row:e,density:t}){let n=[],r=js(t),i=fs(e.type,e.missingInfo,J.Transactions),a=fs(e.type,e.missingInfo,J.Documents);return!r&&$(e.type,`transactionsCount`)&&n.push((0,Q.jsx)(Ss,{label:`tx`,count:e.counts.transactions,state:i?`error`:`ok`,hint:i?`Missing a transaction`:`${e.counts.transactions} transactions`},`tx`)),!r&&$(e.type,`documentsCount`)&&n.push((0,Q.jsx)(Ss,{label:`doc`,count:e.counts.documents,state:a?`error`:`ok`,hint:a?`Missing a document`:`${e.counts.documents} documents`},`doc`)),!r&&$(e.type,`miscExpensesCount`)&&n.push((0,Q.jsx)(Ss,{label:`misc`,count:e.counts.miscExpenses,hint:`${e.counts.miscExpenses} misc expenses`},`misc`)),!r&&$(e.type,`ledgerCount`)&&n.push((0,Q.jsx)(Ss,{label:`ledger`,count:e.counts.ledger,state:bs(e.counts.invalidLedger),hint:Ms[bs(e.counts.invalidLedger)]},`ledger`)),(0,Q.jsx)(`div`,{className:`col-span-6 flex min-w-0 flex-wrap items-start gap-x-2 gap-y-0.5 md:col-span-2`,children:n})}function Rs({row:e,onChange:t,onDelete:n,isExpanded:r,onToggleExpanded:i,panelId:a}){return(0,Q.jsxs)(`div`,{className:`col-span-3 flex items-center justify-end gap-1 md:col-span-1`,children:[(0,Q.jsx)(is,{chargeId:e.id,chargeType:e.type,onChange:t,onDelete:n,isIncome:(e.amount?.value??0)>0}),(0,Q.jsx)(N,{content:r?`Collapse`:`Expand info`,asChild:!0,children:(0,Q.jsx)(R,{variant:r?`default`:`outline`,onClick:e=>{e.stopPropagation(),i()},className:`size-7.5`,"aria-label":r?`Collapse charge details`:`Expand charge details`,"aria-expanded":r,"aria-controls":a,children:r?(0,Q.jsx)(qe,{className:`size-4`}):(0,Q.jsx)(tt,{className:`size-4`})})})]})}function zs({row:e,isSelected:t,isExpanded:n,density:i,onSelectedChange:a,onToggleExpanded:o,onCollapse:s,registerRefetch:c,updateCharge:l,removeCharge:u}){let[{data:d,fetching:f},p]=Mn({query:ln,pause:!0,variables:{chargeId:e.id}});(0,Y.useEffect)(()=>c(e.id,p),[c,e.id,p]);let m=(0,Y.useCallback)(()=>{p({requestPolicy:`network-only`})},[p]),h=(0,Y.useCallback)(()=>u(e.id),[u,e.id]),g=(0,Y.useMemo)(()=>JSON.stringify(e),[e]),_=(0,Y.useMemo)(()=>d?.charge?uc(W(sn,d.charge)):null,[d]),v=(0,Y.useMemo)(()=>_?JSON.stringify(_):null,[_]);(0,Y.useEffect)(()=>{_&&v&&!f&&v!==g&&l(_)},[_,v,g,f,l]);let y=`charge-${e.id}-title`,b=`charge-${e.id}-panel`;return(0,Q.jsxs)(`li`,{children:[(0,Q.jsx)(ye,{chargeId:e.id,children:(0,Q.jsxs)(`article`,{"aria-labelledby":y,"data-state":t?`selected`:void 0,className:r(`grid grid-cols-12 items-start gap-x-3`,`border-l-2 border-l-transparent`,`data-[state=selected]:border-l-primary/40 data-[state=selected]:bg-muted/60`,`group-data-[accept]/dropzone:bg-accent group-data-[accept]/dropzone:ring-2 group-data-[accept]/dropzone:ring-primary/60 group-data-[accept]/dropzone:ring-inset`,i===`compact`?`gap-y-0.5 px-3 py-1.5`:`gap-y-2 p-3`),children:[(0,Q.jsx)(Ns,{row:e,onChange:m,isSelected:t,onSelectedChange:a,onStatusChange:s}),(0,Q.jsx)(Ps,{row:e,density:i}),(0,Q.jsx)(`span`,{id:y,className:`hidden`,children:e.description??e.suggestedDescription??`Charge ${e.id}`}),(0,Q.jsx)(Fs,{row:e,onChange:m,density:i}),(0,Q.jsx)(Ls,{row:e,density:i}),(0,Q.jsx)(Is,{row:e,density:i}),(0,Q.jsx)(Rs,{row:e,onChange:m,onDelete:h,isExpanded:n,onToggleExpanded:o,panelId:b})]})}),n&&(0,Q.jsx)(`div`,{id:b,role:`region`,"aria-labelledby":y,className:`border-t bg-muted/30 py-3 pr-3`,children:(0,Q.jsx)(`div`,{className:`ml-4 border-l-2 border-border pl-4`,children:(0,Q.jsx)(`div`,{className:`w-0 min-w-full overflow-x-auto`,children:(0,Q.jsx)(Jt,{className:`w-full shadow-lg`,children:(0,Q.jsx)(Wo,{chargeID:e.id,onChange:m,onChargeDeleted:u,fetching:f})})})})})]})}var Bs=(0,Y.memo)(zs,(e,t)=>e.row===t.row&&e.isSelected===t.isSelected&&e.isExpanded===t.isExpanded&&e.density===t.density),Vs=`batchUpdateChargesTags`,Hs=()=>{let[{fetching:e},t]=kn(En);return{fetching:e,batchUpdateChargesTags:(0,Y.useCallback)(async e=>{let n=e.chargeIds.length,r=`Error updating charges tags`,i=`${Vs}-batch`;a.loading(`Updating tags`,{id:i});try{let s=await t(e),c=o(s,r,i,`batchUpdateChargesTags`);if(c)return a.success(`Success`,{id:i,description:`Tags updated for ${n} charge${n>1?`s`:``}`}),c.batchUpdateChargesTags.charges}catch(e){console.error(`${r}: ${e}`),a.error(`Error`,{id:i,description:r,duration:1e5,closeButton:!0})}},[t])}};function Us({chargeIds:e,open:t,onOpenChange:n,onDone:r}){let{selectableTags:i,fetching:a}=Fe(),{fetching:o,batchUpdateChargesTags:s}=Hs(),[c,l]=(0,Y.useState)(`add`),[u,d]=(0,Y.useState)([]),[f,p]=(0,Y.useState)(0),m=e.length,h=()=>{d([]),p(e=>e+1)},g=e=>{l(e),h()},_=e=>{e||h(),n(e)},v=async()=>{u.length!==0&&m!==0&&await s({chargeIds:e,...c===`add`?{addTagIds:u}:{removeTagIds:u}})&&(h(),n(!1),r())};return(0,Q.jsx)(Ge,{open:t,onOpenChange:_,children:(0,Q.jsxs)(Xe,{className:`sm:max-w-md`,onClick:e=>e.stopPropagation(),children:[(0,Q.jsxs)(Je,{children:[(0,Q.jsxs)(et,{children:[`Change tags for `,m,` charge`,m===1?``:`s`]}),(0,Q.jsx)(at,{children:`Add the selected tags to, or remove them from, every selected charge. Other tags are left unchanged.`})]}),(0,Q.jsxs)(`div`,{className:`grid gap-3`,children:[(0,Q.jsx)(de,{value:c,onValueChange:g,children:(0,Q.jsxs)(be,{className:`w-full`,children:[(0,Q.jsx)(De,{value:`add`,children:`Add tags`}),(0,Q.jsx)(De,{value:`remove`,children:`Remove tags`})]})}),(0,Q.jsxs)(`div`,{className:`grid gap-1`,children:[(0,Q.jsx)($e,{children:`Tags`}),(0,Q.jsx)(je,{options:i,onValueChange:d,defaultValue:u,placeholder:c===`add`?`Select tags to add`:`Select tags to remove`,variant:`default`,disabled:a},`${c}-${f}`)]})]}),(0,Q.jsxs)(Ke,{children:[(0,Q.jsx)(R,{variant:`outline`,onClick:()=>_(!1),children:`Cancel`}),(0,Q.jsxs)(R,{onClick:()=>void v(),disabled:o||u.length===0||m===0,children:[c===`add`?`Add to`:`Remove from`,` `,m,` charge`,m===1?``:`s`]})]})]})})}function Ws({table:e,onRefreshCharges:t}){let{regenerateLedgerRecords:n}=te(),[r,i]=(0,Y.useState)(!1),[a,o]=(0,Y.useState)(!1),{rows:s}=e.getSelectedRowModel(),c=s.length,l=s.map(e=>e.original.id);function u(){t?.(e.getSelectedRowModel().rows.map(e=>e.original.id))}function d(){l.length!==0&&n(l).then(u)}return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(dt,{children:[(0,Q.jsx)(st,{asChild:!0,children:(0,Q.jsx)(R,{variant:`ghost`,size:`icon`,className:`size-6`,"aria-label":`Batch charge actions`,onClick:e=>e.stopPropagation(),children:(0,Q.jsx)(x,{className:`size-4`})})}),(0,Q.jsxs)(ct,{align:`start`,children:[(0,Q.jsxs)(L,{disabled:c===0,onSelect:()=>i(!0),children:[(0,Q.jsx)(Ne,{className:`size-4`}),`Regenerate ledger`]}),(0,Q.jsxs)(L,{disabled:c===0,onSelect:()=>o(!0),children:[(0,Q.jsx)(Ln,{className:`size-4`}),`Change tags`]})]})]}),(0,Q.jsx)(S,{open:r,setOpen:i,onConfirm:d,title:`Are you sure you want to regenerate ledger records for ${c} selected charge${c===1?``:`s`}?`}),(0,Q.jsx)(Us,{chargeIds:l,open:a,onOpenChange:o,onDone:u})]})}function Gs({options:e,field:t,ascending:n,onChange:r,scope:i}){let a=e.find(e=>e.value===t),o=n?nr:er;return(0,Q.jsxs)(dt,{children:[(0,Q.jsx)(st,{asChild:!0,children:(0,Q.jsxs)(R,{variant:`outline`,size:`sm`,className:`gap-1.5`,"aria-label":`Sort charges`,children:[(0,Q.jsx)(o,{className:`size-4`}),(0,Q.jsx)(`span`,{className:`text-xs font-normal text-muted-foreground`,children:`Sort`}),(0,Q.jsx)(`span`,{className:`text-xs font-medium`,children:a?.label??`None`})]})}),(0,Q.jsxs)(ct,{align:`end`,className:`w-56`,children:[(0,Q.jsx)(pt,{variant:`section`,children:i===`server`?`Sort all matching charges`:`Sort the loaded charges`}),(0,Q.jsx)(ft,{value:t??``,onValueChange:e=>r(e,n),children:e.map(e=>(0,Q.jsx)(ut,{value:e.value,children:e.label},e.value))}),(0,Q.jsx)(lt,{}),(0,Q.jsxs)(L,{disabled:!t,onSelect:()=>t&&r(t,!n),children:[(0,Q.jsx)(o,{className:`size-4`}),n?`Ascending`:`Descending`]})]})]})}var Ks=[{value:`date`,label:`Date`},{value:`amount`,label:`Amount`},{value:`vat`,label:`VAT`},{value:`counterparty`,label:`Counterparty`},{value:`description`,label:`Description`},{value:`taxCategory`,label:`Tax category`},{value:`type`,label:`Type`},{value:`businessTrip`,label:`Business trip`}],qs=[{key:`Charge ID`,valueFn:e=>e.id},{key:`Type`,valueFn:e=>e.__typename??``},{key:`Date`,valueFn:e=>$s(e.minDebitDate??e.minEventDate??e.minDocumentsDate)},{key:`Event Date`,valueFn:e=>$s(e.minEventDate)},{key:`Documents Date`,valueFn:e=>$s(e.minDocumentsDate)},{key:`Counterparty`,valueFn:e=>e.counterparty?.name??``},{key:`Description`,valueFn:e=>e.userDescription?.trim()??``},{key:`Tags`,valueFn:e=>(e.tags??[]).map(e=>e.name).join(`; `)},{key:`Tax Category`,valueFn:e=>e.taxCategory?.name??``},{key:`Business Trip`,valueFn:e=>`businessTrip`in e&&e.businessTrip?e.businessTrip.name:``},{key:`Accountant Approval`,valueFn:e=>e.accountantApproval??``},{key:`Amount`,valueFn:e=>ec(e.totalAmount?.raw)},{key:`Currency`,valueFn:e=>e.totalAmount?.currency??``},{key:`VAT`,valueFn:e=>ec(e.vat?.raw)},{key:`Is Valid`,valueFn:e=>nc(e.validationData?.isValid)},...Js(),{key:`Valid Credit Card Amount`,valueFn:e=>`validCreditCardAmount`in e?nc(e.validCreditCardAmount):``},{key:`Ledger Status`,valueFn:e=>e.metadata?.invalidLedger??``},{key:`Ledger Balanced`,valueFn:e=>nc(e.ledger?.balance?.isBalanced)},{key:`Ledger Errors`,valueFn:e=>(e.ledger?.validate?.errors??[]).join(`; `)},{key:`Transactions Count`,valueFn:e=>tc(e.metadata?.transactionsCount)},{key:`Documents Count`,valueFn:e=>tc(e.metadata?.documentsCount)},{key:`Invoices Count`,valueFn:e=>tc(e.metadata?.invoicesCount)},{key:`Receipts Count`,valueFn:e=>tc(e.metadata?.receiptsCount)},{key:`Ledger Count`,valueFn:e=>tc(e.metadata?.ledgerCount)},{key:`Misc Expenses Count`,valueFn:e=>tc(e.metadata?.miscExpensesCount)},{key:`Has Open Documents`,valueFn:e=>nc(e.metadata?.openDocuments)},{key:`Suggested Description`,valueFn:e=>e.missingInfoSuggestions?.description?.trim()??``},{key:`Suggested Tags`,valueFn:e=>(e.missingInfoSuggestions?.tags??[]).map(e=>e.name).join(`; `)},{key:`Transactions Detail`,valueFn:e=>Ys(e)},{key:`Documents Detail`,valueFn:e=>Xs(e)}];function Js(){return[[`Missing Counterparty`,J.Counterparty],[`Missing Description`,J.Description],[`Missing Documents`,J.Documents],[`Missing Tags`,J.Tags],[`Missing Transactions`,J.Transactions],[`Missing VAT`,J.Vat],[`Missing Tax Category`,J.TaxCategory]].map(([e,t])=>({key:e,valueFn:e=>e.validationData?nc(e.validationData.missingInfo.includes(t)):``}))}function Ys(e){return(e.transactions??[]).map(e=>{let t=W(Fn,e);return[$s(t.eventDate),t.amount.formatted??ec(t.amount.raw),t.account?.name??``,t.sourceDescription??``,t.referenceKey??``,t.counterparty?.name??``].join(` | `)}).join(`
`)}function Xs(e){return(e.additionalDocuments??[]).map(e=>{let t=W(on,e),n=`amount`in t;return[t.documentType??``,n?$s(t.date):``,n?`${t.amount?.formatted??ec(t.amount?.raw)} ${t.amount?.currency??``}`.trim():``,n?t.vat?.formatted??ec(t.vat?.raw):``,n?t.serialNumber??``:``,n?`${t.creditor?.name??``} → ${t.debtor?.name??``}`:``].join(` | `)}).join(`
`)}function Zs(e){return[qs.map(e=>Qs(e.key)).join(`,`),...e.map(e=>qs.map(t=>Qs(t.valueFn(e))).join(`,`))].join(`\r
`)}function Qs(e){return e===``?``:/[",\r\n]/.test(e)?`"${e.replace(/"/g,`""`)}"`:e}function $s(e){if(!e)return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:Tt(t,`yyyy-MM-dd`)}function ec(e){return e==null?``:e.toFixed(2)}function tc(e){return e==null?``:String(e)}function nc(e){return e==null?``:e?`Yes`:`No`}var rc=({chargeIds:e,businessName:t})=>{let n=hn(),r=(0,Y.useCallback)(async()=>{let r=`${t?`business_${t}_`:``}charges_${Tt(new Date,`yyyy-MM-dd`)}`;if(e.length===0)return{fileContent:``,fileName:r};let{data:i,error:o}=await n.query(xn,{chargeIDs:e}).toPromise();if(o)throw a.error(`Error`,{description:`Failed to fetch charges for CSV export`}),o;return{fileContent:Zs(i?.chargesByIDs??[]),fileName:r}},[n,e,t]);return(0,Q.jsx)(C,{createFileVariables:r,label:`Download charges CSV`,buttonContent:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(pe,{className:`size-4`}),`Export CSV`]}),buttonProps:{size:`sm`,className:`gap-1.5 px-2.5`}})},ic=[{value:jn.Date,label:`Date`},{value:jn.Amount,label:`Amount`},{value:jn.AbsAmount,label:`Absolute amount`}];function ac({table:e,showExport:t,exportIds:n,sort:r,sorting:i,onSortingChange:a,onRefreshCharges:o,density:s,onDensityChange:c}){let l=e.getSelectedRowModel().rows.length,u=e.getRowModel().rows.length,d=r?(0,Q.jsx)(Gs,{scope:`server`,options:ic,field:r.value?.field??jn.Date,ascending:r.value?.asc??!1,onChange:(e,t)=>r.onChange({field:e,asc:t})}):(0,Q.jsx)(Gs,{scope:`page`,options:Ks,field:i[0]?.id,ascending:!i[0]?.desc,onChange:(e,t)=>a([{id:e,desc:!t}])});return(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(Pe,{checked:e.getIsAllPageRowsSelected()||e.getIsSomePageRowsSelected()&&`indeterminate`,onCheckedChange:t=>e.toggleAllPageRowsSelected(!!t),"aria-label":`Select all charges`}),(0,Q.jsx)(`span`,{"aria-live":`polite`,className:`text-sm text-muted-foreground`,children:l>0?`${l} of ${u} selected`:`${u} charge${u===1?``:`s`}`}),(0,Q.jsx)(Ws,{table:e,onRefreshCharges:o})]}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[u>1&&d,(0,Q.jsx)(N,{content:s===`compact`?`Show more detail`:`Show less detail`,children:(0,Q.jsx)(R,{variant:`outline`,size:`sm`,"aria-label":s===`compact`?`Comfortable density`:`Compact density`,"aria-pressed":s===`compact`,onClick:()=>c(s===`compact`?`comfortable`:`compact`),children:s===`compact`?(0,Q.jsx)(ir,{className:`size-4`}):(0,Q.jsx)(ar,{className:`size-4`})})}),t&&(0,Q.jsx)(rc,{chargeIds:n})]})]})}var oc=[{id:`type`,accessorKey:`type`},{id:`date`,accessorFn:e=>e.dates?.date},{id:`amount`,accessorFn:e=>e.amount?.value,sortFn:(e,t)=>Math.abs(e.original.amount?.value??0)-Math.abs(t.original.amount?.value??0)},{id:`vat`,accessorFn:e=>e.vat?.value},{id:`counterparty`,accessorFn:e=>e.counterparty?.name},{id:`description`,accessorFn:e=>e.description},{id:`taxCategory`,accessorFn:e=>e.taxCategory?.name},{id:`businessTrip`,accessorFn:e=>e.businessTrip?.name}],sc=`accounter.charges.density`;function cc(){try{return localStorage.getItem(sc)===`compact`?`compact`:`comfortable`}catch{return`comfortable`}}function lc(){let[e,t]=(0,Y.useState)(cc);return(0,Y.useEffect)(()=>{let e=()=>t(cc());return window.addEventListener(`storage`,e),window.addEventListener(sc,e),()=>{window.removeEventListener(`storage`,e),window.removeEventListener(sc,e)}},[]),[e,(0,Y.useCallback)(e=>{t(e);try{localStorage.setItem(sc,e)}catch{}window.dispatchEvent(new Event(sc))},[])]}function uc(e){let t=W(Cn,e)?.missingInfoSuggestions,n=e.__typename,r=e.__typename===`CreditcardBankCharge`,i=e=>({id:e.id,name:e.name,namePath:e.namePath??void 0});return{id:e.id,type:n,dates:Si({minDebitDate:e.minDebitDate,minEventDate:e.minEventDate,minDocumentsDate:e.minDocumentsDate,maxDebitDate:e.maxDebitDate,maxEventDate:e.maxEventDate,maxDocumentsDate:e.maxDocumentsDate}),amount:e.totalAmount?{value:e.totalAmount.raw,currency:e.totalAmount.currency,shouldValidate:r,isValid:r?e.validCreditCardAmount:void 0}:void 0,vat:{value:e.vat?.raw,currency:e.totalAmount?.currency},counterparty:e.counterparty?{id:e.counterparty.id,name:e.counterparty.name}:void 0,description:e.userDescription?.trim()??void 0,suggestedDescription:t?.description?.trim()??void 0,tags:e.tags.map(i),suggestedTags:t?.tags.map(i)??[],taxCategory:e.taxCategory?{id:e.taxCategory.id,name:e.taxCategory.name}:void 0,businessTrip:`businessTrip`in e&&e.businessTrip?{id:e.businessTrip.id,name:e.businessTrip.name}:void 0,counts:{transactions:e.metadata?.transactionsCount??0,documents:e.metadata?.documentsCount??0,ledger:e.metadata?.ledgerCount??0,miscExpenses:e.metadata?.miscExpensesCount??0,invalidLedger:e.metadata?.invalidLedger},missingInfo:e.validationData?.missingInfo??[],accountantApproval:e.accountantApproval}}var dc=({data:e,rowSelection:t,onRowSelectionChange:n,isAllOpened:r=!1,showExport:i=!1,sort:a,hideToolbar:o=!1})=>{let[s,c]=(0,Y.useState)([]),[l,u]=(0,Y.useState)({}),[d,f]=lc(),[p,m]=(0,Y.useState)({});(0,Y.useEffect)(()=>{m(r?!0:{})},[r]);let h=t!==void 0,g=h?t:l,_=h?n??(()=>{}):u,[v,y]=(0,Y.useState)([]),b=(0,Y.useRef)(new Map),x=(0,Y.useCallback)((e,t)=>(b.current.set(e,t),()=>{b.current.delete(e)}),[]),S=(0,Y.useCallback)(e=>{for(let t of e)b.current.get(t)?.()},[]),C=(0,Y.useCallback)(e=>{y(t=>t.map(t=>t.id===e.id?e:t))},[]),w=(0,Y.useCallback)(e=>{y(t=>t.filter(t=>t.id!==e)),_(t=>{if(!(e in t))return t;let{[e]:n,...r}=t;return r})},[_]),T=He(e);(0,Y.useEffect)(()=>{y(T?.map(e=>uc(W(sn,e)))??[])},[T]);let E=jt({features:Ht,data:v,columns:oc,getRowId:e=>e.id,onSortingChange:c,onExpandedChange:m,getRowCanExpand:()=>!0,autoResetExpanded:!1,enableSorting:!a,enableRowSelection:!0,onRowSelectionChange:_,state:{sorting:s,rowSelection:g,expanded:p},initialState:{pagination:{pageIndex:0,pageSize:2**53-1}}}),D=(0,Y.useMemo)(()=>v.map(e=>e.id),[v]),O=Object.keys(g).filter(e=>g[e]&&D.includes(e)),ee=O.length>0?O:D,{rows:k}=E.getRowModel();return(0,Q.jsx)(go,{chargeIds:D,active:r,children:(0,Q.jsxs)(`div`,{className:`w-full overflow-hidden rounded-md border bg-card`,children:[!o&&(0,Q.jsx)(`div`,{className:`border-b px-3 py-2`,children:(0,Q.jsx)(ac,{table:E,showExport:i,exportIds:ee,sort:a,sorting:s,onSortingChange:c,onRefreshCharges:S,density:d,onDensityChange:f})}),k.length?(0,Q.jsx)(`ul`,{className:`w-full divide-y`,children:k.map(e=>(0,Q.jsx)(Bs,{row:e.original,isSelected:e.getIsSelected(),isExpanded:e.getIsExpanded(),density:d,onSelectedChange:t=>e.toggleSelected(t),onToggleExpanded:()=>e.toggleExpanded(),onCollapse:()=>e.toggleExpanded(!1),registerRefetch:x,updateCharge:C,removeCharge:w},e.id))}):(0,Q.jsx)(Un,{children:(0,Q.jsxs)(Bn,{children:[(0,Q.jsx)(Vn,{children:`No charges`}),(0,Q.jsx)(Hn,{children:`Nothing matches the current filters.`})]})})]})})};export{Wo as n,xi as r,dc as t};