@accounter/client
Version:
Accounter client application
3 lines • 38.4 kB
JavaScript
import{s as e}from"./dist-BmACi7k_.js";import{a as t,i as n,o as r}from"./utils-BxkqV8PM.js";import{In as i,j as a,nt as o,r as s,tt as c,zo as l}from"./error-handling-sQ-z99nE.js";import{n as u}from"./routes-C4NpBRv7.js";import{lt as d}from"./select-BJv1AsCh.js";import{$t as f,Wt as p,_t as m,bt as h,er as g,f as _,it as v,mt as ee,nr as y,ot as te,p as b,tt as x}from"./common-CzeXtlCH.js";import{c as S}from"./separator-CyMtmDO1.js";import{t as C}from"./funnel-9d55SEx6.js";import{t as w}from"./button-BZ6z_NAl.js";import{$c as T,$n as E,Bn as D,Gc as O,Gt as k,Jc as A,Kl as j,Pl as ne,Pt as re,Vt as M,Wc as ie,Xc as N,Yc as P,h as ae,il as oe,nl as se,qc as F}from"./table-4P1UQn5n.js";import{a as ce,n as le,o as ue,r as de,t as fe}from"./card-BRoEyy6u.js";import{t as pe}from"./sub-B14hpi46.js";import{t as me}from"./use-url-query-DXFemxIX.js";import{t as he}from"./page-layout-zwz-Hp58.js";import{t as ge}from"./transactions-table-D6zqcVWC.js";import{Q as I}from"./wiggle-CF2Xq23u.js";import{$ as _e,A as ve,At as ye,B as be,Bt as xe,C as Se,Ct as Ce,Dt as we,E as Te,Ft as L,G as Ee,Gt as De,H as Oe,Ht as R,I as ke,It as Ae,J as z,K as je,Kt as Me,L as Ne,Lt as B,N as Pe,Nt as Fe,O as Ie,Ot as Le,P as Re,Pt as ze,R as Be,Rt as Ve,S as He,T as Ue,Tt as We,V as Ge,W as V,Y as Ke,_t as qe,a as Je,at as Ye,bt as Xe,c as Ze,d as Qe,dt as $e,et,f as tt,ft as H,gt as nt,i as rt,it,j as at,jt as ot,k as st,kt as ct,lt,mt as ut,n as dt,nt as ft,o as pt,ot as mt,p as ht,r as gt,rt as _t,s as vt,st as yt,t as bt,u as xt,vt as St,w as Ct,wt,xt as Tt,yt as Et,z as Dt,zt as Ot}from"./download-csv-DLwuVIVR.js";var kt=e=>null;kt.displayName=`Cell`;var At=(e,t,n)=>{var r=ct();return(i,a)=>o=>{e?.(i,a,o),r(Oe({activeIndex:String(a),activeDataKey:t,activeCoordinate:i.tooltipPosition,activeGraphicalItemId:n}))}},jt=e=>{var t=ct();return(n,r)=>i=>{e?.(n,r,i),t(be())}},Mt=(e,t,n)=>{var r=ct();return(i,a)=>o=>{e?.(i,a,o),r(Ge({activeIndex:String(a),activeDataKey:t,activeCoordinate:i.tooltipPosition,activeGraphicalItemId:n}))}};function Nt(e,t){return Rt(e)||Lt(e,t)||Ft(e,t)||Pt()}function Pt(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Ft(e,t){if(e){if(typeof e==`string`)return It(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?It(e,t):void 0}}function It(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Lt(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function Rt(e){if(Array.isArray(e))return e}var zt=(e,t,n)=>{var r=n??e;if(!B(r))return ze(r,t,0)},Bt=(e,t,n)=>{var r={},i=e.filter(_e),a=e.filter(e=>e.stackId==null),o=i.reduce((e,t)=>{var n=e[t.stackId];return n??=[],n.push(t),e[t.stackId]=n,e},r),s=Object.entries(o).map(e=>{var r=Nt(e,2),i=r[0],a=r[1];return{stackId:i,dataKeys:a.map(e=>e.dataKey),barSize:zt(t,n,a[0]?.barSize)}}),c=a.map(e=>({stackId:void 0,dataKeys:[e.dataKey].filter(e=>e!=null),barSize:zt(t,n,e.barSize)}));return[...s,...c]};function Vt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function U(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?Vt(Object(n),!0).forEach(function(t){Ht(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Vt(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function Ht(e,t,n){return(t=Ut(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ut(e){var t=Wt(e,`string`);return typeof t==`symbol`?t:t+``}function Wt(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function Gt(e,t,n,r,i){var a=r.length;if(!(a<1)){var o=ze(e,n,0,!0),s,c=[];if(Le(r[0]?.barSize)){var l=!1,u=n/a,d=r.reduce((e,t)=>e+(t.barSize||0),0);d+=(a-1)*o,d>=n&&(d-=(a-1)*o,o=0),d>=n&&u>0&&(l=!0,u*=.9,d=a*u);var f={offset:Math.round((n-d)/2)-o,size:0};s=r.reduce((e,t)=>{var n={stackId:t.stackId,dataKeys:t.dataKeys,position:{offset:f.offset+f.size+o,size:l?u:t.barSize??0}},r=[...e,n];return f=n.position,r},c)}else{var p=ze(t,n,0,!0);n-2*p-(a-1)*o<=0&&(o=0);var m=(n-2*p-(a-1)*o)/a;m>1&&(m=Math.round(m));var h=Le(i)?Math.min(m,i):m;s=r.reduce((e,t,n)=>[...e,{stackId:t.stackId,dataKeys:t.dataKeys,position:{offset:p+(m+o)*n+(m-h)/2,size:h}}],c)}return s}}var Kt=(e,t,n,r,i,a,o)=>{var s=B(o)?t:o,c=Gt(n,r,i===a?a:i,e,s);return i!==a&&c!=null&&(c=c.map(e=>U(U({},e),{},{position:U(U({},e.position),{},{offset:e.position.offset-i/2})}))),c},qt=(e,t)=>{var n=et(t);if(!(!e||n==null||t==null)){var r=t.stackId;if(r!=null){var i=e[r];if(i){var a=i.stackedData;if(a)return a.find(e=>e.key===n)}}}},Jt=(e,t)=>{if(!(e==null||t==null)){var n=e.find(e=>e.stackId===t.stackId&&t.dataKey!=null&&e.dataKeys.includes(t.dataKey));if(n!=null)return n.position}};function Yt(e,t){return e&&typeof e==`object`&&`zIndex`in e&&typeof e.zIndex==`number`&&Le(e.zIndex)?e.zIndex:t}function W(e,t){return e.graphicalItems.cartesianItems.find(e=>e.id===t)?.xAxisId??0}function G(e,t){return e.graphicalItems.cartesianItems.find(e=>e.id===t)?.yAxisId??0}var Xt=`Invariant failed`;function Zt(e,t){if(!e)throw Error(Xt)}var K=e(r()),Qt=[`option`];function $t(e,t){if(e==null)return{};var n,r,i=en(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function en(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var tn=lt;function nn(e){var t=e.option,n=$t(e,Qt);return K.createElement(ve,{option:t,DefaultShape:tn,shapeProps:n,activeClassName:`recharts-active-bar`,inActiveClassName:`recharts-inactive-bar`})}var rn=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return(n,r)=>{if(Ve(e))return e;var i=Ve(n)||B(n);return i?e(n,r):(!i&&Zt(!1,`minPointSize callback function received a value with type of ${typeof n}. Currently only numbers or null/undefined are supported.`),t)}},an=(e,t,n)=>n,q=I([Ke,(e,t)=>t],(e,t)=>e.filter(e=>e.type===`bar`).find(e=>e.id===t)),on=I([q],e=>e?.maxBarSize),sn=(e,t,n,r)=>r,cn=I([H,Ke,W,G,an],(e,t,n,r,i)=>t.filter(t=>e===`horizontal`?t.xAxisId===n:t.yAxisId===r).filter(e=>e.isPanorama===i).filter(e=>e.hide===!1).filter(e=>e.type===`bar`)),ln=(e,t,n)=>{var r=H(e),i=W(e,t),a=G(e,t);if(!(i==null||a==null))return r===`horizontal`?je(e,`yAxis`,a,n):je(e,`xAxis`,i,n)},un=I([cn,Ye,(e,t)=>{var n=H(e),r=W(e,t),i=G(e,t);if(!(r==null||i==null))return n===`horizontal`?Ee(e,`xAxis`,r):Ee(e,`yAxis`,i)}],Bt),dn=(e,t,n)=>{var r=q(e,t);if(r==null)return 0;var i=W(e,t),a=G(e,t);if(i==null||a==null)return 0;var o=H(e),s=mt(e),c=r.maxBarSize,l=B(c)?s:c,u,d;return o===`horizontal`?(u=V(e,`xAxis`,i,n),d=z(e,`xAxis`,i,n)):(u=V(e,`yAxis`,a,n),d=z(e,`yAxis`,a,n)),Et(u,d,!0)??l??0},fn=(e,t,n)=>{var r=H(e),i=W(e,t),a=G(e,t);if(!(i==null||a==null)){var o,s;return r===`horizontal`?(o=V(e,`xAxis`,i,n),s=z(e,`xAxis`,i,n)):(o=V(e,`yAxis`,a,n),s=z(e,`yAxis`,a,n)),Et(o,s)}},pn=I([St,qe,(e,t,n)=>{var r=W(e,t);if(r!=null)return V(e,`xAxis`,r,n)},(e,t,n)=>{var r=G(e,t);if(r!=null)return V(e,`yAxis`,r,n)},(e,t,n)=>{var r=W(e,t);if(r!=null)return z(e,`xAxis`,r,n)},(e,t,n)=>{var r=G(e,t);if(r!=null)return z(e,`yAxis`,r,n)},I([I([un,mt,it,_t,dn,fn,on],Kt),q],Jt),H,yt,fn,I([ln,q],qt),q,sn],(e,t,n,r,i,a,o,s,c,l,u,d,f)=>{var p=c.chartData,m=c.dataStartIndex,h=c.dataEndIndex;if(!(d==null||o==null||t==null||s!==`horizontal`&&s!==`vertical`||n==null||r==null||i==null||a==null||l==null)){var g=d.data,_=g!=null&&g.length>0?g:p?.slice(m,h+1);if(_!=null)return er({layout:s,barSettings:d,pos:o,parentViewBox:t,bandSize:l,xAxis:n,yAxis:r,xAxisTicks:i,yAxisTicks:a,stackedData:u,displayedData:_,offset:e,cells:f,dataStartIndex:m})}}),mn=[`index`];function hn(){return hn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},hn.apply(null,arguments)}function gn(e,t){if(e==null)return{};var n,r,i=_n(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function _n(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var vn=(0,K.createContext)(void 0),yn=e=>{var t=(0,K.useContext)(vn);if(t!=null)return t.stackId;if(e!=null)return Ce(e)},bn=(e,t)=>`recharts-bar-stack-clip-path-${e}-${t}`,xn=e=>{var t=(0,K.useContext)(vn);if(t!=null){var n=t.stackId;return`url(#${bn(n,e)})`}},Sn=e=>{var t=e.index,n=gn(e,mn),r=xn(t);return K.createElement(R,hn({className:`recharts-bar-stack-layer`,clipPath:r},n))},Cn=[`onMouseEnter`,`onMouseLeave`,`onClick`],wn=[`value`,`background`,`tooltipPosition`],Tn=[`id`],En=[`onMouseEnter`,`onClick`,`onMouseLeave`];function Dn(e,t){return Mn(e)||jn(e,t)||kn(e,t)||On()}function On(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function kn(e,t){if(e){if(typeof e==`string`)return An(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?An(e,t):void 0}}function An(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function jn(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function Mn(e){if(Array.isArray(e))return e}function J(){return J=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},J.apply(null,arguments)}function Nn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Y(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?Nn(Object(n),!0).forEach(function(t){Pn(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Nn(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function Pn(e,t,n){return(t=Fn(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Fn(e){var t=In(e,`string`);return typeof t==`symbol`?t:t+``}function In(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function Ln(e,t){if(e==null)return{};var n,r,i=Rn(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function Rn(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}var zn=e=>{var t=e.dataKey,n=e.name,r=e.fill,i=e.legendType;return[{inactive:e.hide,dataKey:t,type:i,color:r,value:wt(n,t),payload:e}]},Bn=K.memo(e=>{var t=e.dataKey,n=e.stroke,r=e.strokeWidth,i=e.fill,a=e.name,o=e.hide,s=e.unit,c=e.formatter,l=e.tooltipType,u=e.id,d={dataDefinedOnItem:void 0,getPosition:xe,settings:{stroke:n,strokeWidth:r,fill:i,dataKey:t,nameKey:void 0,name:wt(a,t),hide:o,type:l,color:i,unit:s,formatter:c,graphicalItemId:u}};return K.createElement(st,{tooltipEntrySettings:d})});function Vn(e){var t=ye(Dt),n=e.data,r=e.dataKey,i=e.background,a=e.allOtherBarProps,o=a.onMouseEnter,s=a.onMouseLeave,c=a.onClick,l=Ln(a,Cn),u=At(o,r,a.id),d=jt(s),f=Mt(c,r,a.id);if(!i||n==null)return null;var p=Me(i);return K.createElement(Ne,{zIndex:Yt(i,ft.barBackground)},n.map((e,n)=>{e.value;var a=e.background;e.tooltipPosition;var o=Ln(e,wn);if(!a)return null;var s=u(e,e.originalDataIndex),c=d(e,e.originalDataIndex),m=f(e,e.originalDataIndex),h=Y(Y(Y(Y(Y({option:i,isActive:String(e.originalDataIndex)===t},o),{},{fill:`#eee`},a),p),Fe(l,e,n)),{},{onMouseEnter:s,onMouseLeave:c,onClick:m,dataKey:r,index:n,className:`recharts-bar-background-rectangle`});return K.createElement(nn,J({key:`background-bar-${n}`},h))}))}function Hn(e){var t=e.showLabels,n=e.children,r=e.rects?.map(e=>{var t={x:e.x,y:e.y,width:e.width,lowerWidth:e.width,upperWidth:e.width,height:e.height};return Y(Y({},t),{},{value:e.value,payload:e.payload,parentViewBox:e.parentViewBox,viewBox:t,fill:e.fill})});return K.createElement(Pe,{value:t?r:void 0},n)}function Un(e){var t=e.shape,n=e.activeBar,r=e.baseProps,i=e.entry,a=e.index,o=e.dataKey,s=ye(Dt),c=ye(Be),l=n&&String(i.originalDataIndex)===s&&(c==null||o===c),u=Dn((0,K.useState)(!1),2),d=u[0],f=u[1],p=Dn((0,K.useState)(!1),2),m=p[0],h=p[1];(0,K.useEffect)(()=>{var e;return l?(f(!0),e=requestAnimationFrame(()=>{h(!0)})):h(!1),()=>{cancelAnimationFrame(e)}},[l]);var g=(0,K.useCallback)(()=>{l||f(!1)},[l]),_=l&&m,v=l||d,ee=l?n===!0?t:n:t,y=K.createElement(nn,J({},r,{name:String(r.name)},i,{isActive:_,option:ee,index:a,dataKey:o,animationElapsedTime:e.animationElapsedTime,isAnimating:e.isAnimating,isEntrance:e.isEntrance,onTransitionEnd:g}));return v?K.createElement(Ne,{zIndex:ft.activeBar},K.createElement(Sn,{index:i.originalDataIndex},y)):y}function Wn(e){var t=e.shape,n=e.baseProps,r=e.entry,i=e.index,a=e.dataKey;return K.createElement(nn,J({},n,{name:String(n.name)},r,{isActive:!1,option:t,index:i,dataKey:a,animationElapsedTime:e.animationElapsedTime,isAnimating:e.isAnimating,isEntrance:e.isEntrance}))}function Gn(e){var t=e.data,n=e.props,r=e.animationElapsedTime,i=e.isAnimating,a=e.isEntrance,o=De(n)??{},s=o.id,c=Ln(o,Tn),l=n.shape,u=n.dataKey,d=n.activeBar,f=n.onMouseEnter,p=n.onClick,m=n.onMouseLeave,h=Ln(n,En),g=At(f,u,s),_=jt(m),v=Mt(p,u,s);return t?K.createElement(K.Fragment,null,t.map((e,t)=>K.createElement(Sn,J({index:e.originalDataIndex,key:`rectangle-${e?.x}-${e?.y}-${e?.value}-${t}`,className:`recharts-bar-rectangle`},Fe(h,e,t),{onMouseEnter:g(e,e.originalDataIndex),onMouseLeave:_(e,e.originalDataIndex),onClick:v(e,e.originalDataIndex)}),d?K.createElement(Un,{shape:l,activeBar:d,baseProps:c,entry:e,index:t,dataKey:u,animationElapsedTime:r,isAnimating:i,isEntrance:a}):K.createElement(Wn,{shape:l,baseProps:c,entry:e,index:t,dataKey:u,animationElapsedTime:r,isAnimating:i,isEntrance:a})))):null}var Kn=(e,t,n)=>e==null?[]:t===1?e.flatMap(e=>e.status===`removed`?[]:[e.next]):e.flatMap(e=>{if(e.status===`removed`)return n===`horizontal`?[Y(Y({},e.prev),{},{height:L(e.prev.height,0,t),y:L(e.prev.y,e.prev.y+e.prev.height,t)})]:[Y(Y({},e.prev),{},{width:L(e.prev.width,0,t)})];if(e.status===`matched`)return[Y(Y({},e.next),{},{x:L(e.prev.x,e.next.x,t),y:L(e.prev.y,e.next.y,t),width:L(e.prev.width,e.next.width,t),height:L(e.prev.height,e.next.height,t)})];var r=e.next;return n===`horizontal`?[Y(Y({},r),{},{height:L(0,r.height,t),y:L(r.stackedBarStart,r.y,t)})]:[Y(Y({},r),{},{width:L(0,r.width,t),x:L(r.stackedBarStart,r.x,t)})]});function qn(e){var t=e.props,n=e.previousRectanglesRef,r=t.data,i=t.isAnimationActive,a=t.animationBegin,o=t.animationDuration,s=t.animationEasing,c=t.animationInterpolateFn,l=t.layout,u=Ue(t.onAnimationStart,t.onAnimationEnd),d=u.isAnimating,f=u.handleAnimationStart,p=u.handleAnimationEnd;return K.createElement(Hn,{showLabels:!d,rects:r},K.createElement(Ct,{animationInput:r,animationIdPrefix:`recharts-bar-`,items:r,previousItemsRef:n,isAnimationActive:i,animationBegin:a,animationDuration:o,animationEasing:s,onAnimationStart:f,onAnimationEnd:p,animationInterpolateFn:c,animationMatchBy:t.animationMatchBy,layout:l},(e,n,r)=>K.createElement(R,null,K.createElement(Gn,{props:t,data:e,animationElapsedTime:n,isAnimating:d||n<1,isEntrance:r}))),K.createElement(Re,{label:t.label}),t.children)}function Jn(e){var t=(0,K.useRef)(null);return K.createElement(qn,{previousRectanglesRef:t,props:e})}var Yn=0,Xn=(e,t)=>{var n=Array.isArray(e.value)?e.value[1]:e.value;return{x:e.x,y:e.y,value:n,errorVal:We(e,t)}},Zn=class extends K.PureComponent{render(){var e=this.props,n=e.hide,r=e.data,i=e.dataKey,a=e.className,o=e.xAxisId,s=e.yAxisId,c=e.needClip,l=e.background,u=e.id;if(n||r==null)return null;var d=t(`recharts-bar`,a),f=u;return K.createElement(R,{className:d,id:u},c&&K.createElement(`defs`,null,K.createElement(xt,{clipPathId:f,xAxisId:o,yAxisId:s})),K.createElement(R,{className:`recharts-bar-rectangles`,clipPath:c?`url(#clipPath-${f})`:void 0},K.createElement(Vn,{data:r,dataKey:i,background:l,allOtherBarProps:this.props}),K.createElement(Jn,this.props)))}},Qn={activeBar:!1,animationBegin:0,animationDuration:400,animationEasing:`ease`,animationInterpolateFn:Kn,animationMatchBy:Te,background:!1,hide:!1,isAnimationActive:`auto`,label:!1,legendType:`rect`,minPointSize:Yn,shape:tn,xAxisId:0,yAxisId:0,zIndex:ft.bar};function $n(e){var t=e.xAxisId,n=e.yAxisId,r=e.hide,i=e.legendType,a=e.minPointSize,o=e.activeBar,s=e.animationBegin,c=e.animationDuration,l=e.animationEasing,u=e.isAnimationActive,d=Qe(t,n).needClip,f=ut(),p=nt(),m=at(e.children,kt),h=ye(t=>pn(t,e.id,p,m));if(f!==`vertical`&&f!==`horizontal`)return null;var g,_=h?.[0];return g=_==null||_.height==null||_.width==null?0:f===`vertical`?_.height/2:_.width/2,K.createElement(tt,{xAxisId:t,yAxisId:n,data:h,dataPointFormatter:Xn,errorBarOffset:g},K.createElement(Zn,J({},e,{layout:f,needClip:d,data:h,xAxisId:t,yAxisId:n,hide:r,legendType:i,minPointSize:a,activeBar:o,animationBegin:s,animationDuration:c,animationEasing:l,isAnimationActive:u})))}function er(e){var t=e.layout,n=e.barSettings,r=n.dataKey,i=n.minPointSize,a=n.hasCustomShape,o=e.pos,s=e.bandSize,c=e.xAxis,l=e.yAxis,u=e.xAxisTicks,d=e.yAxisTicks,f=e.stackedData,p=e.displayedData,m=e.offset,h=e.cells,g=e.parentViewBox,_=e.dataStartIndex,v=t===`horizontal`?l:c,ee=f?v.scale.domain():null,y=Xe({numericAxis:v}),te=v.scale.map(y);return p.map((e,n)=>{var p,v,b,x,S,C;if(f){var w=f[n+_];if(w==null)return null;p=we(w,ee)}else p=We(e,r),Array.isArray(p)||(p=[y,p]);var T=rn(i,Yn)(p[1],n);if(t===`horizontal`){var E=l.scale.map(p[0]),D=l.scale.map(p[1]);if(E==null||D==null)return null;v=Tt({axis:c,ticks:u,bandSize:s,offset:o.offset,entry:e,index:n}),b=D??E??void 0,x=o.size;var O=E-D;if(S=Ae(O)?0:O,C={x:v,y:m.top,width:x,height:m.height},Math.abs(T)>0&&Math.abs(S)<Math.abs(T)){var k=Ot(S||T)*(Math.abs(T)-Math.abs(S));b-=k,S+=k}}else{var A=c.scale.map(p[0]),j=c.scale.map(p[1]);if(A==null||j==null)return null;if(v=A,b=Tt({axis:l,ticks:d,bandSize:s,offset:o.offset,entry:e,index:n}),x=j-A,S=o.size,C={x:m.left,y:b,width:m.width,height:S},Math.abs(T)>0&&Math.abs(x)<Math.abs(T)){var ne=Ot(x||T)*(Math.abs(T)-Math.abs(x));x+=ne}}return v==null||b==null||x==null||S==null||!a&&(x===0||S===0)?null:Y(Y({},e),{},{stackedBarStart:te,x:v,y:b,width:x,height:S,value:f?p:p[1],payload:e,background:C,tooltipPosition:{x:v+x/2,y:b+S/2},parentViewBox:g,originalDataIndex:n},h&&h[n]&&h[n].props)}).filter(Boolean)}function tr(e){var t=ot(e,Qn),n=yn(t.stackId),r=nt();return K.createElement(Se,{id:t.id,type:`bar`},e=>K.createElement(K.Fragment,null,K.createElement(Ie,{legendPayload:zn(t)}),K.createElement(Bn,{dataKey:t.dataKey,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,formatter:t.formatter,tooltipType:t.tooltipType,id:e}),K.createElement(He,{type:`bar`,id:e,data:void 0,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,stackId:n,hide:t.hide,barSize:t.barSize,minPointSize:t.minPointSize,maxBarSize:t.maxBarSize,isPanorama:r,hasCustomShape:t.shape!=null&&t.shape!==tn}),K.createElement(Ne,{zIndex:t.zIndex},K.createElement($n,J({},t,{id:e})))))}var X=K.memo(tr,$e);X.displayName=`Bar`;var nr=[`axis`,`item`],rr=(0,K.forwardRef)((e,t)=>K.createElement(vt,{chartName:`BarChart`,defaultTooltipEventType:`axis`,validateTooltipEventTypes:nr,tooltipPayloadSearcher:ke,categoricalChartProps:e,ref:t})),ir=e(ne(),1),ar=()=>{let[{data:e,fetching:t,error:n},r]=l({query:a});n&&(console.error(`Error fetching financial accounts: ${n}`),s.error(`Error`,{description:`Unable to fetch financial accounts`}));let i=(0,K.useMemo)(()=>e?.allFinancialAccounts?.sort((e,t)=>e.name>t.name?1:-1)??[],[e]);return{fetching:t,refresh:()=>r(),financialAccounts:i,selectableFinancialAccounts:(0,K.useMemo)(()=>i.map(e=>({value:e.id,label:e.name})),[i])}},Z=n();function or(e){return u(e??null)}var sr=`balanceReportFilters`,Q={MONTHLY:`Monthly`,BI_MONTHLY:`Bi-monthly`,QUARTERLY:`Quarterly`,SEMI_ANNUALLY:`Semi-Annually`,ANNUALLY:`Annually`},cr=D({ownerId:E().optional(),fromDate:E().regex(y,`Date must be in format yyyy-mm-dd`),toDate:E().regex(y,`Date must be in format yyyy-mm-dd`),period:re([Q.MONTHLY,Q.BI_MONTHLY,Q.QUARTERLY,Q.SEMI_ANNUALLY,Q.ANNUALLY]),filterFinancialAccounts:k(),financialAccountsBusinesses:M(E()),includedCounterparties:M(E()),excludedCounterparties:M(E()),includedTags:M(E()),excludedTags:M(E()),includedAccounts:M(E()),excludedAccounts:M(E())});function lr(e,t){return{ownerId:e.ownerId??void 0,fromDate:e.fromDate,toDate:e.toDate,period:e.period??Q.MONTHLY,filterFinancialAccounts:e.filterFinancialAccounts??!0,financialAccountsBusinesses:e.financialAccountsBusinesses??t,includedCounterparties:e.includedCounterparties??[],excludedCounterparties:e.excludedCounterparties??[],includedTags:e.includedTags??[],excludedTags:e.excludedTags??[],includedAccounts:e.includedAccounts??[],excludedAccounts:e.excludedAccounts??[]}}function ur({filter:e,setFilter:t,closeModal:n}){let{userContext:r}=(0,K.useContext)(se),i=(0,K.useMemo)(()=>r?.context.financialAccountsBusinessesIds??[],[r?.context.financialAccountsBusinessesIds]),a=T({resolver:ae(cr),defaultValues:lr(e,i)}),{selectableAdminBusinesses:o,fetching:s}=_(),{selectableFinancialEntities:c,fetching:l}=ee(),{selectableFinancialAccounts:u,fetching:d}=ar(),{selectableTags:f,fetching:g}=h(),y=e=>{t(e),n()},b=a.watch(`includedCounterparties`),S=(0,K.useMemo)(()=>b.length>0,[b]),C=a.watch(`includedTags`),E=(0,K.useMemo)(()=>C.length>0,[C]),D=a.watch(`includedAccounts`),k=(0,K.useMemo)(()=>D.length>0,[D]),j=a.watch(`filterFinancialAccounts`);return(0,Z.jsx)(ie,{...a,children:(0,Z.jsxs)(`form`,{onSubmit:a.handleSubmit(y),children:[(0,Z.jsxs)(p,{cols:2,children:[(0,Z.jsx)(F,{control:a.control,name:`ownerId`,render:({field:e})=>(0,Z.jsxs)(A,{children:[(0,Z.jsx)(P,{children:`Admin Business`}),(0,Z.jsx)(O,{children:(0,Z.jsx)(te,{onChange:e.onChange,data:o,value:e.value,disabled:s,placeholder:`Scroll to see all options`,formPart:!0})}),(0,Z.jsx)(N,{})]})}),(0,Z.jsx)(F,{control:a.control,name:`fromDate`,render:({field:e,fieldState:t})=>(0,Z.jsxs)(A,{children:[(0,Z.jsx)(P,{htmlFor:`balance-report-from-date`,children:`From Date`}),(0,Z.jsx)(O,{children:(0,Z.jsx)(v,{id:`balance-report-from-date`,onChange:t=>{t!==e.value&&e.onChange(t)},value:e.value??void 0,"aria-invalid":!!t.error})}),(0,Z.jsx)(N,{})]})}),(0,Z.jsx)(F,{control:a.control,name:`toDate`,render:({field:e,fieldState:t})=>(0,Z.jsxs)(A,{children:[(0,Z.jsx)(P,{htmlFor:`balance-report-to-date`,children:`To Date`}),(0,Z.jsx)(O,{children:(0,Z.jsx)(v,{id:`balance-report-to-date`,onChange:t=>{t!==e.value&&e.onChange(t)},value:e.value??void 0,"aria-invalid":!!t.error})}),(0,Z.jsx)(N,{})]})}),(0,Z.jsx)(F,{control:a.control,name:`period`,render:({field:e})=>(0,Z.jsxs)(A,{children:[(0,Z.jsx)(P,{children:`Period`}),(0,Z.jsx)(O,{children:(0,Z.jsx)(te,{onChange:e.onChange,data:Object.values(Q).map(e=>({value:e,label:e})),value:e.value,placeholder:`Select period`,formPart:!0})}),(0,Z.jsx)(N,{})]})}),(0,Z.jsx)(F,{control:a.control,name:`filterFinancialAccounts`,render:({field:e})=>(0,Z.jsxs)(A,{children:[(0,Z.jsx)(P,{children:`Filter Out Financial Accounts`}),(0,Z.jsx)(O,{children:(0,Z.jsx)(`div`,{className:`flex h-9 items-center`,children:(0,Z.jsx)(m,{checked:e.value,onCheckedChange:e.onChange})})}),(0,Z.jsx)(N,{})]})}),(0,Z.jsx)(F,{control:a.control,name:`financialAccountsBusinesses`,render:({field:e})=>(0,Z.jsxs)(A,{children:[(0,Z.jsx)(P,{children:`Financial Accounts Businesses`}),(0,Z.jsx)(O,{children:(0,Z.jsx)(x,{asChild:!0,options:c,onValueChange:e.onChange,defaultValue:e.value??[],value:e.value??[],placeholder:`Scroll to see all options`,variant:`default`,disabled:l||!j})}),(0,Z.jsx)(N,{})]})}),(0,Z.jsx)(F,{control:a.control,name:`includedCounterparties`,render:({field:e})=>(0,Z.jsxs)(A,{children:[(0,Z.jsx)(P,{children:`Included Counterparties`}),(0,Z.jsx)(O,{children:(0,Z.jsx)(x,{asChild:!0,options:c,onValueChange:e.onChange,defaultValue:e.value??[],value:e.value??[],placeholder:`Scroll to see all options`,variant:`default`,disabled:l})}),(0,Z.jsx)(N,{})]})}),(0,Z.jsx)(F,{control:a.control,name:`excludedCounterparties`,render:({field:e})=>(0,Z.jsxs)(A,{children:[(0,Z.jsx)(P,{children:`Excluded Counterparties`}),(0,Z.jsx)(O,{children:(0,Z.jsx)(x,{asChild:!0,options:c,onValueChange:e.onChange,defaultValue:e.value??[],value:e.value??[],placeholder:`Scroll to see all options`,variant:`default`,disabled:l||S})}),(0,Z.jsx)(N,{})]})}),(0,Z.jsx)(F,{control:a.control,name:`includedAccounts`,render:({field:e})=>(0,Z.jsxs)(A,{children:[(0,Z.jsx)(P,{children:`Included Accounts`}),(0,Z.jsx)(O,{children:(0,Z.jsx)(x,{asChild:!0,options:u,onValueChange:e.onChange,defaultValue:e.value??[],value:e.value??[],placeholder:`Scroll to see all options`,variant:`default`,disabled:d})}),(0,Z.jsx)(N,{})]})}),(0,Z.jsx)(F,{control:a.control,name:`excludedAccounts`,render:({field:e})=>(0,Z.jsxs)(A,{children:[(0,Z.jsx)(P,{children:`Excluded Accounts`}),(0,Z.jsx)(O,{children:(0,Z.jsx)(x,{asChild:!0,options:u,onValueChange:e.onChange,defaultValue:e.value??[],value:e.value??[],placeholder:`Scroll to see all options`,variant:`default`,disabled:d||k})}),(0,Z.jsx)(N,{})]})}),(0,Z.jsx)(F,{control:a.control,name:`includedTags`,render:({field:e})=>(0,Z.jsxs)(A,{children:[(0,Z.jsx)(P,{children:`Included Tags`}),(0,Z.jsx)(O,{children:(0,Z.jsx)(x,{asChild:!0,options:f,onValueChange:e.onChange,defaultValue:e.value??[],value:e.value??[],placeholder:`Scroll to see all options`,variant:`default`,disabled:g})}),(0,Z.jsx)(N,{})]})}),(0,Z.jsx)(F,{control:a.control,name:`excludedTags`,render:({field:e})=>(0,Z.jsxs)(A,{children:[(0,Z.jsx)(P,{children:`Excluded Tags`}),(0,Z.jsx)(O,{children:(0,Z.jsx)(x,{asChild:!0,options:f,onValueChange:e.onChange,defaultValue:e.value??[],value:e.value??[],placeholder:`Scroll to see all options`,variant:`default`,disabled:g||E})}),(0,Z.jsx)(N,{})]})})]}),(0,Z.jsxs)(`div`,{className:`flex justify-center mt-5 gap-3`,children:[(0,Z.jsx)(w,{type:`submit`,disabled:s,children:`Filter`}),(0,Z.jsx)(w,{type:`button`,variant:`destructive`,onClick:n,children:`Cancel`})]})]})})}function dr({filter:e,setFilter:t,initiallyOpened:n=!1}){let[r,i]=(0,K.useState)(n),[a,o]=(0,K.useState)(!!e),{get:s,set:c}=me();return(0,K.useEffect)(()=>{let t=or(e);t!==s(`balanceReportFilters`)&&c(sr,t)},[e,s,c]),(0,Z.jsxs)(`div`,{className:`flex flex-row gap-5 items-center`,children:[(0,Z.jsx)(b,{opened:r,onClose:()=>i(!1),content:(0,Z.jsx)(ur,{filter:e,setFilter:(0,K.useCallback)(n=>{(0,ir.default)(n,e)||(t(n),o(!!n))},[e,t]),closeModal:()=>i(!1)}),modalSize:`xl`}),(0,Z.jsx)(f,{inline:!0,size:16,disabled:!a,children:(0,Z.jsx)(w,{variant:`outline`,size:`icon`,className:`size-7.5`,onClick:()=>i(!0),children:(0,Z.jsx)(C,{className:`size-5`})})})]})}var fr=({periodInfo:e})=>{let t=g(i.Usd);return e?(0,Z.jsx)(fe,{className:`mb-4`,children:(0,Z.jsx)(le,{className:`pt-6`,children:(0,Z.jsxs)(`div`,{className:`grid grid-cols-2 md:grid-cols-4 gap-4`,children:[(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsx)(`p`,{className:`text-sm font-medium text-muted-foreground`,children:`Income`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Z.jsx)(`div`,{className:`h-3 w-3 rounded-sm bg-[hsl(var(--chart-1))]`}),(0,Z.jsx)(`p`,{className:`text-2xl font-bold`,children:t.format(e.income)})]}),Object.keys(e.incomeInfo).length>0&&(0,Z.jsx)(`div`,{className:`mt-2 space-y-1`,children:Object.entries(e.incomeInfo).map(([e,t])=>{let n=e;return(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:g(n).format(t??0)},n)})})]}),(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsx)(`p`,{className:`text-sm font-medium text-muted-foreground`,children:`Expense`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Z.jsx)(`div`,{className:`h-3 w-3 rounded-sm bg-[hsl(var(--chart-2))]`}),(0,Z.jsx)(`p`,{className:`text-2xl font-bold`,children:t.format(e.expense)})]}),Object.keys(e.expenseInfo).length>0&&(0,Z.jsx)(`div`,{className:`mt-2 space-y-1`,children:Object.entries(e.expenseInfo).map(([e,t])=>{let n=e;return(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:g(n).format(t??0)},n)})})]}),(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsx)(`p`,{className:`text-sm font-medium text-muted-foreground`,children:`Delta`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Z.jsx)(`div`,{className:`h-3 w-3 rounded-sm bg-[hsl(var(--chart-3))]`}),(0,Z.jsx)(`p`,{className:`text-2xl font-bold`,children:t.format(e.delta)})]}),Object.keys(e.deltaInfo).length>0&&(0,Z.jsx)(`div`,{className:`mt-2 space-y-1`,children:Object.entries(e.deltaInfo).map(([e,t])=>{let n=e;return(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:g(n).format(t??0)},n)})})]}),(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsx)(`p`,{className:`text-sm font-medium text-muted-foreground`,children:`Cumulative`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Z.jsx)(`div`,{className:`h-3 w-3 rounded-sm bg-[hsl(var(--chart-4))]`}),(0,Z.jsx)(`p`,{className:`text-2xl font-bold`,children:t.format(e.cumulative)})]})]})]})})}):null},pr=({periodInfo:e,onCloseExtendedTransactions:t})=>{let n=e?.transactions,r=(0,K.useMemo)(()=>!n||n.length===0?[]:[...n].sort((e,t)=>Math.abs(e.amount.raw)>Math.abs(t.amount.raw)?-1:1).map(e=>e.id),[n]),[{data:i,fetching:a},o]=l({query:c,variables:{transactionIDs:r},pause:r.length===0});(0,K.useEffect)(()=>{r.length>0&&o()},[r,o]);let s=(0,K.useMemo)(()=>i?.transactionsByIDs?r.map(e=>i?.transactionsByIDs.find(t=>t.id===e)).filter(Boolean):[],[i,r]);return(0,Z.jsx)(fe,{className:`mt-5 w-full`,children:a?(0,Z.jsx)(oe,{}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(ce,{children:(0,Z.jsxs)(ue,{className:`flex justify-between`,children:[(0,Z.jsxs)(`span`,{children:[e?.period,` Transactions`]}),(0,Z.jsxs)(`div`,{className:`flex flex-row gap-2 items-center`,children:[(0,Z.jsx)(bt,{rawTransactions:s}),(0,Z.jsx)(w,{variant:`link`,onClick:t,children:(0,Z.jsx)(d,{className:`h-4 w-4`})})]})]})}),(0,Z.jsxs)(le,{children:[(0,Z.jsx)(fr,{periodInfo:e}),(0,Z.jsx)(ge,{transactionsProps:s})]})]})})},$={income:{label:`Income`,color:`rgba(0, 255, 50, 0.5)`},expense:{label:`Expense`,color:`rgba(255, 0, 0, 0.5)`},delta:{label:`Delta`,color:`rgba(0, 30, 255, 0.5)`},cumulative:{label:`Cumulative Balance`,color:`rgba(100, 0, 255, 0.5)`}};function mr(e,t,n){switch(n){case Q.MONTHLY:return`${e}-${String(t).padStart(2,`0`)}`;case Q.BI_MONTHLY:{let n=t%2==0?t-1:t;return`${e}-${String(n).padStart(2,`0`)}`}case Q.QUARTERLY:return`${e}-Q${Math.ceil(t/3)}`;case Q.SEMI_ANNUALLY:return`${e}-H${t>6?2:1}`;case Q.ANNUALLY:return String(e)}}function hr(e,t){switch(t){case Q.MONTHLY:{let[t,n]=e.split(`-`);return`${n}/${t}`}case Q.BI_MONTHLY:{let[t,n]=e.split(`-`),r=Number(n)+1;return`${n}-${String(r).padStart(2,`0`)}/${t}`}case Q.QUARTERLY:{let[t,n]=e.split(`-`);return`${n}, ${t}`}case Q.SEMI_ANNUALLY:{let[t,n]=e.split(`-`);return`${n}, ${t}`}case Q.ANNUALLY:return e}}var gr=g(i.Usd),_r=()=>{let{setFiltersContext:e}=(0,K.useContext)(S),{userContext:t}=(0,K.useContext)(se),{get:n}=me(),[r,i]=(0,K.useState)((0,K.useMemo)(()=>{let e={ownerId:t?.context.adminBusinessId,toDate:j(new Date,`yyyy-MM-dd`),period:Q.MONTHLY,fromDate:j(pe(new Date,{years:1}),`yyyy-MM-dd`),filterFinancialAccounts:!0,financialAccountsBusinesses:t?.context.financialAccountsBusinessesIds,includedCounterparties:[],excludedCounterparties:[],includedTags:[],excludedTags:[],includedAccounts:[],excludedAccounts:[]},r=n(sr);if(r)try{return JSON.parse(decodeURIComponent(r))}catch(e){console.log(`Error parsing balance report filters from URL:`,e)}return e},[t?.context.adminBusinessId,t?.context.financialAccountsBusinessesIds,n])),[a,s]=(0,K.useState)(void 0),[c,u]=(0,K.useState)(Object.keys($)),[{data:d,fetching:f}]=l({query:o,variables:(0,K.useMemo)(()=>{let{ownerId:e,fromDate:t,toDate:n}=r;return{ownerId:e,fromDate:t,toDate:n}},[r]),pause:!r});(0,K.useEffect)(()=>{e((0,Z.jsxs)(`div`,{className:`flex flex-row gap-x-5`,children:[(0,Z.jsx)(dr,{filter:r,setFilter:i,initiallyOpened:!r}),(0,Z.jsx)(x,{options:Object.entries($).map(([e,t])=>({label:t.label,value:e})),onValueChange:u,defaultValue:c,placeholder:`Select Data Sets`,variant:`default`,maxCount:1})]})),s(void 0)},[d,f,r,e,i,c]),(0,K.useEffect)(()=>{i(e=>({...e,ownerId:t?.context.adminBusinessId}))},[t]);let p=(0,K.useMemo)(()=>{if(!d?.transactionsForBalanceReport)return[];let e=r.filterFinancialAccounts!==!1,n=r.financialAccountsBusinesses??t?.context.financialAccountsBusinessesIds??[],i=new Map;d.transactionsForBalanceReport.map(t=>{if(r.includedCounterparties?.length>0){if(!t.counterparty?.id||e&&!t.isFee&&n.includes(t.counterparty.id)||!r.includedCounterparties.includes(t.counterparty.id))return}else if(t.counterparty?.id&&(e&&!t.isFee&&n.includes(t.counterparty.id)||r.excludedCounterparties?.includes(t.counterparty.id)))return;if(r.includedTags?.length>0){if(!t.charge?.tags||t.charge.tags.length===0||!t.charge.tags.some(e=>r.includedTags.includes(e.id)))return}else if(r.excludedTags.length>0&&t.charge?.tags.length&&t.charge.tags.some(e=>r.excludedTags.includes(e.id)))return;if(r.includedAccounts?.length>0){if(!t.account?.id||!r.includedAccounts.includes(t.account.id))return}else if(t.account?.id&&r.excludedAccounts?.includes(t.account.id))return;let a=mr(t.year,t.month,r.period);i.has(a)||i.set(a,{period:a,income:0,expense:0,delta:0,incomeInfo:{},expenseInfo:{},deltaInfo:{},cumulative:0,transactions:[]});let o=i.get(a);t.amountUsd.raw>0?(o.income+=t.amountUsd.raw,o.incomeInfo[t.amount.currency]=(o.incomeInfo[t.amount.currency]||0)+t.amount.raw):(o.expense+=t.amountUsd.raw,o.expenseInfo[t.amount.currency]=(o.expenseInfo[t.amount.currency]||0)+t.amount.raw),o.delta+=t.amountUsd.raw,o.deltaInfo[t.amount.currency]=(o.deltaInfo[t.amount.currency]||0)+t.amount.raw,o.transactions.push(t)});let a=0;return Array.from(i.entries()).sort((e,t)=>e[0].localeCompare(t[0])).map(([e,t])=>(a+=t.delta,{period:e,income:t.income,expense:t.expense,delta:t.delta,deltaInfo:t.deltaInfo,incomeInfo:t.incomeInfo,expenseInfo:t.expenseInfo,cumulative:a,transactions:t.transactions.sort((e,t)=>Math.abs(t.amountUsd.raw)-Math.abs(e.amountUsd.raw))}))},[d,r.period,r.filterFinancialAccounts,r.financialAccountsBusinesses,r.includedCounterparties,r.excludedCounterparties,r.includedAccounts,r.excludedAccounts,r.includedTags,r.excludedTags,t?.context.financialAccountsBusinessesIds]);return(0,Z.jsx)(he,{title:`Balance Report`,description:`Accounts periodical balance`,children:f?(0,Z.jsx)(oe,{}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(fe,{className:`w-full`,children:[(0,Z.jsx)(ce,{children:(0,Z.jsx)(de,{children:`Click specific period to expand it's transactions data`})}),(0,Z.jsx)(le,{children:(0,Z.jsx)(dt,{config:$,className:`h-150 w-full`,children:(0,Z.jsxs)(rr,{accessibilityLayer:!0,data:p,onClick:e=>s(e.activeLabel?.toString()),children:[(0,Z.jsx)(ht,{vertical:!1}),(0,Z.jsx)(Ze,{dataKey:`period`,tickLine:!1,tickMargin:10,axisLine:!1,tickFormatter:e=>hr(e,r.period)}),(0,Z.jsx)(Je,{content:(0,Z.jsx)(pt,{className:`bg-white`,formatter:(e,t,n,r)=>{let i=`bg-[var(--color-${t})]`;return r<2?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`${i} h-2.5 w-2.5 shrink-0 rounded-[2px]`}),$[t]?.label||t,(0,Z.jsx)(`div`,{className:`ml-auto flex items-baseline gap-0.5 font-mono font-medium tabular-nums text-foreground`,children:gr.format(Number(e))})]}):(0,Z.jsxs)(`div`,{className:`mt-1.5 flex basis-full items-center border-t pt-1.5 text-xs font-medium text-foreground`,children:[(0,Z.jsx)(`div`,{className:`h-2.5 w-2.5 shrink-0 rounded-[2px] mr-2 ${i}`}),$[t]?.label||t,(0,Z.jsx)(`div`,{className:`ml-auto flex items-baseline gap-0.5 font-mono font-medium tabular-nums text-foreground`,children:gr.format(Number(e))})]})}})}),(0,Z.jsx)(gt,{content:(0,Z.jsx)(rt,{})}),c.includes(`income`)&&(0,Z.jsx)(X,{dataKey:`income`,fill:`var(--color-income)`,radius:4}),c.includes(`expense`)&&(0,Z.jsx)(X,{dataKey:`expense`,fill:`var(--color-expense)`,radius:4}),c.includes(`delta`)&&(0,Z.jsx)(X,{dataKey:`delta`,fill:`var(--color-delta)`,radius:4}),c.includes(`cumulative`)&&(0,Z.jsx)(X,{dataKey:`cumulative`,fill:`var(--color-cumulative)`,radius:4})]})})})]}),a&&(0,Z.jsx)(pr,{periodInfo:p.find(e=>e.period===a),onCloseExtendedTransactions:()=>s(void 0)})]})})};export{_r as BalanceReport};