@accounter/client 0.0.9-alpha-20251231172137-dddfa0e87bba85e9878d2202a7a08c091d3a072c → 0.0.9-alpha-20260101203321-7b45fdf7fc347af916e48050f6d78e383af86513
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -1
- package/dist/assets/{Checkbox-DjYfysLQ.js → Checkbox-CIjNLOvn.js} +1 -1
- package/dist/assets/{MultiSelect-BD7TiyFi.js → MultiSelect-E2FPCJdH.js} +1 -1
- package/dist/assets/{Progress-BGe6eqTK.js → Progress-DMJQvFdk.js} +1 -1
- package/dist/assets/{Table-CvPVUBGR.js → Table-0rvmS2wr.js} +1 -1
- package/dist/assets/{Typography-DYfTIQ9E.js → Typography-4nqQ7puF.js} +1 -1
- package/dist/assets/{YearPickerInput-KXBFZT0r.js → YearPickerInput-XVeVR1Oa.js} +1 -1
- package/dist/assets/{accordion-9oIj6aBX.js → accordion-L1IRyzyA.js} +1 -1
- package/dist/assets/{accountant-approvals--NVi1WNl.js → accountant-approvals-D3Rk9Awv.js} +1 -1
- package/dist/assets/{accounter-table-BPhdMaz1.js → accounter-table-DO07S-Ok.js} +1 -1
- package/dist/assets/{addDays-WRhtMNwP.js → addDays-B1nYv7cD.js} +1 -1
- package/dist/assets/{all-charges-arcBoOZI.js → all-charges-Bl4rmLPr.js} +1 -1
- package/dist/assets/{arrow-up-down-qrpLj_VC.js → arrow-up-down-RAyr4F6x.js} +1 -1
- package/dist/assets/{building-2-BqoUIYTv.js → building-2-CJWjJWAd.js} +1 -1
- package/dist/assets/{business-D1UESgbs.js → business-CD7jRx3V.js} +1 -1
- package/dist/assets/{business-extended-info-pVXBlqa8.js → business-extended-info-CZ8kd93o.js} +1 -1
- package/dist/assets/{business-header-JSRtchUY.js → business-header-DnJ4wJTw.js} +1 -1
- package/dist/assets/{business-ledger-filters-Dk6NSKoV.js → business-ledger-filters-b6ihKqcv.js} +1 -1
- package/dist/assets/{business-ledger-single-uvIkUZgL.js → business-ledger-single-CTJvfW-L.js} +1 -1
- package/dist/assets/{business-trip-C2CvWBAW.js → business-trip-D71-CjJS.js} +1 -1
- package/dist/assets/{charge-Lvg4y24H.js → charge-BKa3ocZT.js} +1 -1
- package/dist/assets/{charges-filters-B-sOEaZh.js → charges-filters-f-g5zs9d.js} +1 -1
- package/dist/assets/{charges-ledger-validation-CeANhh8s.js → charges-ledger-validation-C1uzo7m-.js} +1 -1
- package/dist/assets/{charges-table-BmIFJP9B.js → charges-table-BlXyOjYT.js} +1 -1
- package/dist/assets/{chart-CjKqHefu.js → chart-CVakbbuJ.js} +1 -1
- package/dist/assets/{contracts-COyusiVp.js → contracts-BEtzHuzD.js} +1 -1
- package/dist/assets/{data-table-column-header-Bb8YefMr.js → data-table-column-header-Dm4KLrte.js} +1 -1
- package/dist/assets/{data-table-pagination-B0lEp6Kn.js → data-table-pagination-DXDS4nhy.js} +1 -1
- package/dist/assets/{deposits-transactions-table-BGWV_o2J.js → deposits-transactions-table-CTYnxtJU.js} +1 -1
- package/dist/assets/{download-csv-button-BJBOkT9V.js → download-csv-button-BMcEBrSS.js} +1 -1
- package/dist/assets/{editable-business-trip-Cs82BdC1.js → editable-business-trip-Bp6IxoxB.js} +1 -1
- package/dist/assets/{eye-off-CzZqG4x5.js → eye-off-CEEw38cP.js} +1 -1
- package/dist/assets/{funnel-B_esqPkd.js → funnel-wCPsNKWN.js} +1 -1
- package/dist/assets/{index-DNh6yAJt.js → index-B0iyn-mI.js} +1 -1
- package/dist/assets/{index-CDf5ehig.js → index-B8pw7b-t.js} +1 -1
- package/dist/assets/{index-Cr98UVLb.js → index-BXce2cs4.js} +1 -1
- package/dist/assets/{index-BXTyDG4y.js → index-B_RJNtUo.js} +1 -1
- package/dist/assets/{index-D5_Z08Zt.js → index-Bhwo2jRi.js} +1 -1
- package/dist/assets/{index-DKa-18hA.js → index-Bnf9EGJh.js} +1 -1
- package/dist/assets/{index-BDqqTuZ7.js → index-BwIk76Fe.js} +1 -1
- package/dist/assets/{index-D6aqKVWr.js → index-CDqlmlUs.js} +1 -1
- package/dist/assets/{index-BSS6FK0T.js → index-CJQEWig2.js} +50 -50
- package/dist/assets/{index-DiSe2roU.js → index-CLejPZ03.js} +1 -1
- package/dist/assets/{index-BfD1LaZl.js → index-CeNpBiZt.js} +1 -1
- package/dist/assets/{index-Bk84cVaB.js → index-CoZLNRyy.js} +1 -1
- package/dist/assets/{index-CcgWtq-8.js → index-D740cLRg.js} +1 -1
- package/dist/assets/{index-BL3ZcZMt.js → index-D9594uhM.js} +1 -1
- package/dist/assets/{index-D3F32uWe.js → index-DI-u7X-4.js} +1 -1
- package/dist/assets/{index-sLf28GuC.js → index-DKpeP7IO.js} +1 -1
- package/dist/assets/{index-DptIXaYu.js → index-DM8ePwsN.js} +1 -1
- package/dist/assets/{index-DQVt2_1v.js → index-DMYTBz5s.js} +1 -1
- package/dist/assets/{index-Dl-yRsLc.js → index-DSnmInPt.js} +1 -1
- package/dist/assets/{index-ZKB1iywJ.js → index-Dc3RBoFY.js} +1 -1
- package/dist/assets/{index-DBDqi8y7.js → index-DpHMidPk.js} +1 -1
- package/dist/assets/{index-CkajRhzm.js → index-Dtg9Ebru.js} +1 -1
- package/dist/assets/{index-BkLi1t0h.js → index-MwL919Y6.js} +1 -1
- package/dist/assets/{index-ChCpA9LF.js → index-aKsfgLig.js} +1 -1
- package/dist/assets/{index-DhnrB3n7.js → index-oG-TuXTF.js} +1 -1
- package/dist/assets/{index-C5qooFq6.js → index-qmr8EzkY.js} +1 -1
- package/dist/assets/{index.es-CzYdazso.js → index.es-D5j_e-90.js} +1 -1
- package/dist/assets/{insert-business-trip-modal-l81s3dH_.js → insert-business-trip-modal-DAddh4SL.js} +1 -1
- package/dist/assets/issue-document-DhsyLMjh.js +1 -0
- package/dist/assets/{list-plus-Bl9bDWr3.js → list-plus-D47DH24w.js} +1 -1
- package/dist/assets/{login-page-B2vj_Vi9.js → login-page-BrIhzx0o.js} +1 -1
- package/dist/assets/{match-document-modal-BW7Tu7Cn.js → match-document-modal-CIlUk8Ew.js} +1 -1
- package/dist/assets/{missing-info-charges-CxSW8wv4.js → missing-info-charges-D-yagKqj.js} +1 -1
- package/dist/assets/{modal-CnWz1mbU.js → modal-B-dHSlvi.js} +1 -1
- package/dist/assets/{modify-contract-dialog-kpUxLkRE.js → modify-contract-dialog-CPd5HePs.js} +1 -1
- package/dist/assets/{page-layout-D5L-cVYf.js → page-layout-B2gYTWUz.js} +1 -1
- package/dist/assets/{page-not-found-Dka294QE.js → page-not-found-DNb-8ubr.js} +1 -1
- package/dist/assets/{panel-top-open-BM-oB523.js → panel-top-open-et1B6Qub.js} +1 -1
- package/dist/assets/{report-commentary-row-BKrfBAWW.js → report-commentary-row-BEtZ8QZo.js} +1 -1
- package/dist/assets/{save-C3c_dc6e.js → save-DYKKYhD4.js} +1 -1
- package/dist/assets/{similar-transactions-modal-BSXSuyS_.js → similar-transactions-modal-DPUwmIYc.js} +1 -1
- package/dist/assets/{sub-DNnP4yzZ.js → sub-CP-0oRhw.js} +1 -1
- package/dist/assets/subMonths-Cu93C5UH.js +1 -0
- package/dist/assets/{summary-dBKqS0oP.js → summary-CzvCns1x.js} +1 -1
- package/dist/assets/{toggle-expansion-button-SCGtyuX7.js → toggle-expansion-button-CERf5wnd.js} +1 -1
- package/dist/assets/{use-issue-monthly-documents-B5iJSj4z.js → use-issue-monthly-documents-BxcraBxY.js} +1 -1
- package/dist/assets/{use-url-query-BNmqlRtS.js → use-url-query-B4uMZFi3.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +4 -4
- package/dist/assets/issue-document-DCyxZcVW.js +0 -1
- package/dist/assets/subMonths-BxrBFcPp.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as e,bP as D,bS as a,w as f,d6 as n,G as N,gh as v,r as d,bH as E,D as T,aL as A,B as w,x as I,bA as O,z as P,dq as L,V as M,Y as y,Z as C,_ as F,$ as V,b7 as B,a1 as g,b5 as U,au as q,F as _,aC as k,u as Q,c as $,bN as z,bO as G,bQ as o,bR as H,gi as J}from"./index-
|
|
1
|
+
import{j as e,bP as D,bS as a,w as f,d6 as n,G as N,gh as v,r as d,bH as E,D as T,aL as A,B as w,x as I,bA as O,z as P,dq as L,V as M,Y as y,Z as C,_ as F,$ as V,b7 as B,a1 as g,b5 as U,au as q,F as _,aC as k,u as Q,c as $,bN as z,bO as G,bQ as o,bR as H,gi as J}from"./index-CJQEWig2.js";import{u as S}from"./use-url-query-B4uMZFi3.js";import{P as Z}from"./page-layout-B2gYTWUz.js";import{F as K}from"./funnel-wCPsNKWN.js";const W=({record:s})=>{const t=N(v,s);return e.jsxs(D,{children:[e.jsx(a,{children:s.description}),e.jsx(a,{children:f(new Date(s.purchaseDate),"dd/MM/yyyy")}),e.jsx(a,{children:s.activationDate?f(new Date(s.activationDate),"dd/MM/yyyy"):void 0}),e.jsx(a,{children:t.originalCost?n(t.originalCost,0):void 0}),e.jsx(a,{children:t.reportYearDelta?n(t.reportYearDelta,0):void 0}),e.jsx(a,{children:n(t.totalDepreciableCosts,0)}),e.jsxs(a,{children:[n(s.statutoryDepreciationRate,0),"%"]}),e.jsx(a,{children:s.claimedDepreciationRate?`${n(s.claimedDepreciationRate,1)}%`:"-"}),e.jsx(a,{children:t.reportYearClaimedDepreciation?n(t.reportYearClaimedDepreciation,0):"-"}),e.jsx(a,{children:t.pastYearsAccumulatedDepreciation?n(t.pastYearsAccumulatedDepreciation,0):"-"}),e.jsx(a,{children:t.totalDepreciation?n(t.totalDepreciation,0):"-"}),e.jsx(a,{children:t.netValue?n(t.netValue,0):"-"})]})};function X(s){return!s||O(s)?null:encodeURIComponent(JSON.stringify(s))}const b="depreciationReportFilters";function ee({filter:s,setFilter:t,close:r}){const m=P({defaultValues:{...s}}),{control:c,handleSubmit:x}=m,{selectableFinancialEntities:u,fetching:l}=L(),j=i=>{t({...i,year:Number(i.year)}),r()};return e.jsx(M,{...m,children:e.jsxs("form",{onSubmit:x(j),className:"space-y-4",children:[e.jsx(y,{name:"year",control:c,rules:{required:"Year is required",validate:i=>{const p=Number(i);return Number.isNaN(p)||p<2e3||p>2100?"Invalid year":!0}},render:({field:i})=>e.jsxs(C,{children:[e.jsx(F,{children:"Year"}),e.jsx(V,{children:e.jsx(B,{...i,hideControls:!0,decimalScale:0})}),e.jsx(g,{})]})}),e.jsx(y,{name:"financialEntityId",defaultValue:s?.financialEntityId,control:c,render:({field:i})=>e.jsxs(C,{children:[e.jsx(F,{children:"Owner"}),e.jsx(U,{...i,data:u,value:i.value??void 0,disabled:l,placeholder:"Select a financial entity",formPart:!0}),e.jsx(g,{})]})}),e.jsx(q,{children:e.jsx(w,{type:"submit",disabled:l,children:"Filter"})})]})})}function ae({filter:s,setFilter:t}){const[r,m]=d.useState(!1),{get:c,set:x}=S();d.useEffect(()=>{const l=X(s),j=c(b);l!==j&&x(b,l)},[s,c,x]);const u=d.useCallback(l=>{E(l,s)||t(l)},[s,t]);return e.jsxs(T,{open:r,onOpenChange:m,children:[e.jsx(A,{asChild:!0,children:e.jsx(w,{variant:"outline",size:"icon",children:e.jsx(K,{size:20})})}),e.jsx(I,{className:"sm:max-w-[425px]",children:e.jsx(ee,{filter:s,setFilter:u,close:()=>m(!1)})})]})}const R=({data:s,groupName:t})=>{const r=N(v,s);return e.jsxs(D,{className:"font-bold border-b border-black",children:[e.jsx(a,{children:t?"Group Total":"Overall Total"}),e.jsx(a,{colSpan:2,children:t}),e.jsx(a,{children:r.originalCost?n(r.originalCost,0):void 0}),e.jsx(a,{children:r.reportYearDelta?n(r.reportYearDelta,0):void 0}),e.jsx(a,{children:r.totalDepreciableCosts?n(r.totalDepreciableCosts,0):void 0}),e.jsx(a,{}),e.jsx(a,{}),e.jsx(a,{children:r.reportYearClaimedDepreciation?n(r.reportYearClaimedDepreciation,0):void 0}),e.jsx(a,{children:r.pastYearsAccumulatedDepreciation?n(r.pastYearsAccumulatedDepreciation,0):void 0}),e.jsx(a,{children:r.totalDepreciation?n(r.totalDepreciation,0):void 0}),e.jsx(a,{children:r.netValue?n(r.netValue,0):void 0})]})},ne=()=>{const{setFiltersContext:s}=d.useContext(_),{userContext:t}=d.useContext(k),{get:r}=S(),m=d.useMemo(()=>{const i={financialEntityId:t?.context.adminBusinessId,year:new Date().getFullYear()},p=r(b);if(p)try{return JSON.parse(decodeURIComponent(p))}catch(h){console.error("Failed to parse depreciation report filters from URL",h)}return i},[t?.context.adminBusinessId]),[c,x]=d.useState(m),[{data:u,fetching:l}]=Q({query:J,variables:{filters:c}});d.useEffect(()=>{s(e.jsx("div",{className:"flex flex-row gap-x-5",children:e.jsx(ae,{filter:c,setFilter:x})}))},[c,s,x]);const j=d.useMemo(()=>`Depreciation Report for ${c.year}`,[c.year]);return e.jsx(Z,{title:"Depreciation Report",description:j,children:l?e.jsx($,{}):e.jsxs(z,{children:[e.jsxs(G,{children:[e.jsxs(D,{className:"font-bold text-xl",children:[e.jsx(o,{colSpan:6,className:"text-center border-x",children:"List of Assets and Costs"}),e.jsx(o,{colSpan:5,className:"text-center border-x",children:"Depreciation"}),e.jsx(o,{className:"text-center border-x",children:"Remaining"})]}),e.jsxs(D,{className:"border-b border-black",children:[e.jsx(o,{className:"whitespace-normal",children:"Assets List and Descriptions"}),e.jsx(o,{className:"whitespace-normal",children:"Date of Purchase"}),e.jsx(o,{className:"whitespace-normal",children:"Activation Date"}),e.jsx(o,{className:"whitespace-normal",children:"Original Cost"}),e.jsx(o,{className:"whitespace-normal",children:"Changes During the Year"}),e.jsx(o,{className:"whitespace-normal",children:"Total Depreciable Assets"}),e.jsx(o,{className:"whitespace-normal",children:"Statutory Depreciation Rate"}),e.jsx(o,{className:"whitespace-normal",children:"Claimed Depreciation Rate"}),e.jsx(o,{className:"whitespace-normal",children:"Depreciation Claimed This Year"}),e.jsx(o,{className:"whitespace-normal",children:"Previous Tax Years Accumulated Depreciation"}),e.jsx(o,{className:"whitespace-normal",children:"Total Depreciation"}),e.jsx(o,{className:"whitespace-normal",children:"Net Book Value"})]})]}),e.jsx(H,{children:u?.depreciationReport&&e.jsxs(e.Fragment,{children:[u.depreciationReport.categories.map((i,p)=>e.jsxs(d.Fragment,{children:[e.jsxs(D,{className:"font-bold",children:[e.jsx(a,{children:`Category ${p+1}`}),e.jsx(a,{colSpan:2,children:i.category.name}),e.jsx(a,{colSpan:3}),e.jsxs(a,{children:[n(i.category.percentage,0),"%"]}),e.jsx(a,{colSpan:5})]}),i.records.sort((h,Y)=>h.purchaseDate.localeCompare(Y.purchaseDate)).map(h=>e.jsx(W,{record:h},h.id)),e.jsx(R,{data:i.summary,groupName:i.category.name})]},i.id)),e.jsx(R,{data:u.depreciationReport.summary})]})})]})})};export{ne as DepreciationReport};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as e,Y as C,Z as p,_ as S,$ as y,b7 as w,a1 as b,I as L,g as k,io as H,r as u,t as m,i as R,D as E,aL as M,B as x,ah as _,x as T,al as A,am as $,u as P,ip as z,L as O,z as q,V as K,a9 as V,iq as Q,F as X,bX as Y,bN as Z,bO as G,bP as I,bQ as J,c1 as v,bR as W,bS as g,ir as ee,c4 as se,c3 as te,c5 as oe}from"./index-
|
|
1
|
+
import{j as e,Y as C,Z as p,_ as S,$ as y,b7 as w,a1 as b,I as L,g as k,io as H,r as u,t as m,i as R,D as E,aL as M,B as x,ah as _,x as T,al as A,am as $,u as P,ip as z,L as O,z as q,V as K,a9 as V,iq as Q,F as X,bX as Y,bN as Z,bO as G,bP as I,bQ as J,c1 as v,bR as W,bS as g,ir as ee,c4 as se,c3 as te,c5 as oe}from"./index-CJQEWig2.js";import{D as re}from"./data-table-pagination-DXDS4nhy.js";import{P as ne}from"./page-layout-B2gYTWUz.js";import{A as D}from"./arrow-up-down-RAyr4F6x.js";function U({isInsert:s,formManager:n}){const{control:o}=n;return e.jsxs(e.Fragment,{children:[e.jsx(C,{name:"key",control:o,disabled:!s,rules:{required:"Required",validate:{positive:t=>Number(t)>0||"Key must be a positive number",integer:t=>Number.isInteger(Number(t))||"Key must be an integer"}},render:({field:t})=>e.jsxs(p,{children:[e.jsx(S,{children:"Key"}),e.jsx(y,{children:e.jsx(w,{...t,value:t.value??void 0,hideControls:!0,decimalScale:0,thousandSeparator:"",required:!0})}),e.jsx(b,{})]})}),e.jsx(C,{name:"name",control:o,rules:{required:"Required",minLength:{value:2,message:"Must be at least 2 characters"}},render:({field:t})=>e.jsxs(p,{children:[e.jsx(S,{children:"Name"}),e.jsx(y,{children:e.jsx(L,{...t,value:t.value??void 0,required:!0})}),e.jsx(b,{})]})}),e.jsx(C,{name:"defaultIrsCode",control:o,render:({field:t})=>e.jsxs(p,{children:[e.jsx(S,{children:"Default IRS Code"}),e.jsx(y,{children:e.jsx(w,{...t,value:t.value??void 0,hideControls:!0,decimalScale:0})}),e.jsx(b,{})]})})]})}const ae="updateSortCode",de=()=>{const[{fetching:s},n]=k(H),o=u.useCallback(async t=>{const d=`Error updating sort code ID [${t.key}]`,r=`${ae}-${t.key}`;m.loading("Updating Sort Code...",{id:r});try{const a=await n(t),i=R(a,d,r,"updateSortCode");if(i)return m.success("Success",{id:r,description:"SortCode updated"}),i.updateSortCode}catch(a){console.error(`${d}: ${a}`),m.error("Error",{id:r,description:d,duration:1e5,closeButton:!0})}return!1},[n]);return{fetching:s,updateSortCode:o}};function ie({sortCodeKey:s,onAdd:n}){const[o,t]=u.useState(!1);return e.jsxs(E,{open:o,onOpenChange:t,children:[e.jsx(M,{asChild:!0,children:e.jsx(x,{variant:"outline",size:"icon",children:e.jsx(_,{})})}),e.jsxs(T,{className:"w-[400px] max-w-screen-md",children:[e.jsx(A,{children:e.jsx($,{children:"Edit Sort Code"})}),e.jsx(le,{sortCodeKey:s,close:()=>t(!1),onAdd:n})]})]})}function le({sortCodeKey:s,close:n,onAdd:o}){const[{data:t,fetching:d}]=P({query:z,variables:{key:s}}),r=t?.sortCode;return!r&&!d&&m.error("Error",{description:"Couldn't find sort code"}),d?e.jsx(O,{className:"h-10 w-10 animate-spin"}):r?e.jsx(ce,{sortCode:r,close:n,onAdd:o}):e.jsx("div",{children:"Sort code not found"})}function ce({sortCode:s,close:n,onAdd:o}){const t=q({defaultValues:s}),{handleSubmit:d,formState:{dirtyFields:r}}=t,{updateSortCode:a,fetching:i}=de(),l=({key:c,...B})=>{const h=V(B,r);if(h&&Object.keys(h).length>0){let N;if(h.defaultIrsCode){const f=h.defaultIrsCode,j=Number(f);if(!Number.isInteger(j)||j<2||j>9999)throw new Error(`Invalid IRS code: ${f}`);N=j}a({fields:{...h,defaultIrsCode:N},key:s.key}).then(f=>{f&&(o?.(s.key),n())})}};return e.jsx(K,{...t,children:e.jsxs("form",{onSubmit:d(l),children:[e.jsx("div",{className:"flex flex-col gap-4 my-4",children:e.jsx(U,{isInsert:!1,formManager:t})}),e.jsx("div",{className:"flex justify-end mt-4",children:e.jsx(x,{type:"submit",disabled:i,children:"Update"})})]})})}const ue="addSortCode",me=()=>{const[{fetching:s},n]=k(Q),o=u.useCallback(async t=>{const d=`Error adding new sort code [${t.name}]`,r=`${ue}-${t.name}`;m.loading("Adding sort code",{id:r});try{const a=await n(t);R(a,d,r)&&m.success("Success",{id:r,description:`"${t.name}" sort code was successfully added`})}catch(a){console.error(`${d}: ${a}`),m.error("Error",{id:r,description:d,duration:1e5,closeButton:!0})}},[n]);return{fetching:s,addSortCode:o}};function xe({onAdd:s}){const[n,o]=u.useState(!1);return e.jsxs(E,{open:n,onOpenChange:o,children:[e.jsx(M,{asChild:!0,children:e.jsx(x,{children:"Add Sort Code"})}),e.jsxs(T,{className:"w-[90vw] max-w-screen-md",children:[e.jsx(A,{children:e.jsx($,{children:"Add New Sort Code"})}),e.jsx(he,{close:()=>o(!1),onAdd:s})]})]})}function he({close:s,onAdd:n}){const o=q({}),{handleSubmit:t}=o,{addSortCode:d,fetching:r}=me(),a=i=>{i.key&&=parseInt(i.key.toString()),i.defaultIrsCode&&=parseInt(i.defaultIrsCode.toString()),d(i).then(()=>{s(),n?.()})};return e.jsx(K,{...o,children:e.jsxs("form",{onSubmit:t(a),children:[e.jsx("div",{className:"flex flex-col gap-4 my-4",children:e.jsx(U,{isInsert:!0,formManager:o})}),e.jsx("div",{className:"flex justify-end mt-4",children:e.jsx(x,{type:"submit",disabled:r,children:"Add Sort Code"})})]})})}const F=[{id:"key",accessorKey:"key",cell:({row:s})=>e.jsx(g,{children:s.original.key}),header:({column:s})=>e.jsxs(x,{variant:"ghost",onClick:()=>s.toggleSorting(s.getIsSorted()==="asc"),children:["Key",e.jsx(D,{})]})},{id:"name",accessorKey:"name",cell:({row:s})=>e.jsx(g,{children:s.original.name}),header:({column:s})=>e.jsxs(x,{variant:"ghost",onClick:()=>s.toggleSorting(s.getIsSorted()==="asc"),children:["Name",e.jsx(D,{})]})},{id:"defaultIrsCode",accessorKey:"defaultIrsCode",cell:({row:s})=>e.jsx(g,{className:"flex flex-wrap gap-1 p-1",children:s.original.defaultIrsCode&&e.jsx(x,{variant:"outline",disabled:!0,className:"p-1 w-15",children:s.original.defaultIrsCode})}),header:"Default IRS Code"},{id:"edit",cell:({row:s})=>e.jsx(ie,{sortCodeKey:s.original.key,onAdd:s.original.refetchSortCodes})}],pe=()=>{const[{data:s,fetching:n,error:o},t]=P({query:ee}),{setFiltersContext:d}=u.useContext(X),r=u.useMemo(()=>s?.allSortCodes?.map(l=>({...l,refetchSortCodes:t}))??[],[s?.allSortCodes,t]),a=Y({data:r,columns:F,getCoreRowModel:oe(),getPaginationRowModel:te(),getSortedRowModel:se(),initialState:{pagination:{pageSize:100}}}),i=a.getPageOptions();return u.useEffect(()=>{d(e.jsx("div",{className:"flex items-center justify-end gap-10 space-x-2 py-4",children:e.jsx(re,{table:a})}))},[d,a,i]),u.useEffect(()=>{o&&(console.error("Error fetching sort codes",o),m.error("Error",{description:"Error fetching sort codes"}))},[o]),e.jsx(ne,{title:`Sort Codes (${r.length})`,description:"All sort codes",headerActions:e.jsx(xe,{onAdd:()=>t()}),children:n?e.jsx("div",{className:"flex flex-row justify-center",children:e.jsx(O,{className:"h-10 w-10 animate-spin mr-2"})}):e.jsx("div",{className:"flex flex-col gap-4 rounded-md border",children:e.jsxs(Z,{children:[e.jsx(G,{children:a.getHeaderGroups().map(l=>e.jsx(I,{children:l.headers.map(c=>e.jsx(J,{children:c.isPlaceholder?null:v(c.column.columnDef.header,c.getContext())},c.id))},l.id))}),e.jsx(W,{children:a.getRowModel().rows.length===0?e.jsx(I,{children:e.jsx(g,{colSpan:F.length,className:"text-center py-8",children:"No sort codes found"})}):a.getRowModel().rows.map(l=>e.jsx(I,{children:l.getVisibleCells().map(c=>e.jsx(g,{children:v(c.column.columnDef.cell,c.getContext())},c.id))},l.id))})]})})})};export{pe as SortCodes};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as F,j as r,e as H,u as Q,hd as q,L as E,aC as $,bA as K,B as U,z as X,bC as ee,bD as te,bG as ne,bM as O,w as S,he as T,bH as se,F as oe,J as re,O as ie,W as le}from"./index-
|
|
1
|
+
import{r as F,j as r,e as H,u as Q,hd as q,L as E,aC as $,bA as K,B as U,z as X,bC as ee,bD as te,bG as ne,bM as O,w as S,he as T,bH as se,F as oe,J as re,O as ie,W as le}from"./index-CJQEWig2.js";import{u as J}from"./use-url-query-B4uMZFi3.js";import{P as ae}from"./page-layout-B2gYTWUz.js";import{A as ce,a as fe,b as ue,c as he}from"./accordion-L1IRyzyA.js";import{P as de}from"./modal-B-dHSlvi.js";import{F as pe}from"./funnel-wCPsNKWN.js";var v={},z;function ye(){if(z)return v;z=1,Object.defineProperty(v,"__esModule",{value:!0}),v.calcSlices=v.applyPatch=v.calcPatch=v.lcs=v.diff=v.diff_core=void 0;function c(e,n){const{b:t,eq:s,stack_base:i}=e;let{i:l,N:o,j:h,M:a,Z:f,stack_top:x}=e;for(;;)switch(n){case 0:{e:for(;o>0&&a>0;){t.fill(0,0,2*f);const V=o-a,_=o+a,B=_&1,W=l+o-1,Y=h+a-1,Z=(_+B)/2;let N;t:for(let M=0;M<=Z;M++){const I=2*Math.max(0,M-a)-M,L=M-2*Math.max(0,M-o);for(let u=I;u<=L;u+=2){const A=t[u-1-f*Math.floor((u-1)/f)],R=t[u+1-f*Math.floor((u+1)/f)],w=u===-M||u!==M&&A<R?R:A+1,k=w-u;let b=w,C=k;for(;b<o&&C<a&&s(l+b,h+C);)b++,C++;if(t[u-f*Math.floor(u/f)]=b,B===1&&(N=V-u)>=1-M&&N<M&&b+t[f+N-f*Math.floor(N/f)]>=o)if(M>1||b!==w){i[x++]=l+b,i[x++]=o-b,i[x++]=h+C,i[x++]=a-C,o=w,a=k,f=2*(Math.min(o,a)+1);continue e}else break t}for(let u=I;u<=L;u+=2){const A=t[f+u-1-f*Math.floor((u-1)/f)],R=t[f+u+1-f*Math.floor((u+1)/f)],w=u===-M||u!==M&&A<R?R:A+1,k=w-u;let b=w,C=k;for(;b<o&&C<a&&s(W-b,Y-C);)b++,C++;if(t[f+u-f*Math.floor(u/f)]=b,B===0&&(N=V-u)>=-M&&N<=M&&b+t[N-f*Math.floor(N/f)]>=o)if(M>0||b!==w){i[x++]=l+o-w,i[x++]=w,i[x++]=h+a-k,i[x++]=k,o=o-b,a=a-C,f=2*(Math.min(o,a)+1);continue e}else break t}}if(o!==a){a>o?(l+=o,h+=o,a-=o,o=0):(l+=a,h+=a,o-=a,a=0);break}}if(o+a!==0)if(e.pxe===l||e.pye===h)e.pxe=l+o,e.pye=h+a;else{const V=e.pxs;if(e.oxs=e.pxs,e.oxe=e.pxe,e.oys=e.pys,e.oye=e.pye,e.pxs=l,e.pxe=l+o,e.pys=h,e.pye=h+a,V>=0)return e.i=l,e.N=o,e.j=h,e.M=a,e.Z=f,e.stack_top=x,1}}case 1:{if(x===0)return 2;a=i[--x],h=i[--x],o=i[--x],l=i[--x],f=2*(Math.min(o,a)+1),n=0}}}class m{constructor(n){this.state=n,this.c=0,this.result={value:null,done:!1}}[Symbol.iterator](){return this}next(){const{state:n,result:t}=this;if(this.c>1)return t.done=!0,t.value=void 0,t;const s=c(n,this.c);return this.c=s,s===1?(t.value=[n.oxs,n.oxe,n.oys,n.oye],t):n.pxs>=0?(t.value=[n.pxs,n.pxe,n.pys,n.pye],t):(t.done=!0,t.value=void 0,t)}}function D(e,n,t,s,i){const l=(Math.min(n,s)+1)*2,o=n+s,h=new(o<256?Uint8Array:o<65536?Uint16Array:Uint32Array)(2*l);return new m({i:e,N:n,j:t,M:s,Z:l,b:h,eq:i,pxs:-1,pxe:-1,pys:-1,pye:-1,oxs:-1,oxe:-1,oys:-1,oye:-1,stack_top:0,stack_base:[]})}v.diff_core=D;function d(e,n,t){let[s,i,l]=[0,e.length,n.length];if(typeof t=="function"){for(;s<i&&s<l&&t(s,s);)s++;if(s===i&&s===l)return[][Symbol.iterator]();for(;t(--i,--l)&&i>s&&l>s;);}else{for(;s<i&&s<l&&e[s]===n[s];)s++;if(s===i&&s===l)return[][Symbol.iterator]();for(;e[--i]===n[--l]&&i>s&&l>s;);t=(o,h)=>e[o]===n[h]}return D(s,i+1-s,s,l+1-s,t)}v.diff=d;class p{constructor(n,t){this.diff=n,this.N=t,this.i=0,this.j=0}[Symbol.iterator](){return this}next(){const n=this.diff.next();if(n.done){const{i:a,j:f,N:x}=this;return a<x&&(n.done=!1,n.value=[a,f,x-a],this.i=x),n}const t=n.value,s=t[0],i=t[1],l=t[3],{i:o,j:h}=this;return o!==s&&(t.length--,t[0]=o,t[1]=h,t[2]=s-o),this.i=i,this.j=l,n}}function y(e,n,t){return new p(d(e,n,t),e.length)}v.lcs=y;function*g(e,n,t){const s=ArrayBuffer.isView(e)?Uint8Array.prototype.subarray:e.slice;for(const i of d(e,n,t))i[2]=s.call(n,i[2],i[3]),yield i}v.calcPatch=g;function*P(e,n){let t=0;const s=ArrayBuffer.isView(e)?Uint8Array.prototype.subarray:e.slice;for(const[i,l,o]of n)t<i&&(yield s.call(e,t,i)),o.length>0&&(yield o),t=l;t<e.length&&(yield s.call(e,t))}v.applyPatch=P;function*j(e,n,t){let s=0;const i=ArrayBuffer.isView(e)?Uint8Array.prototype.subarray:e.slice;for(const[l,o,h,a]of d(e,n,t))s<l&&(yield[0,i.call(e,s,l)]),l<o&&(yield[-1,i.call(e,l,o)]),h<a&&(yield[1,i.call(n,h,a)]),s=o;s<e.length&&(yield[0,e.slice(s)])}return v.calcSlices=j,v}var xe=ye();const me=({children:c})=>r.jsx("span",{className:"bg-green-100",children:c}),je=({children:c})=>r.jsx("span",{className:"bg-red-100 line-through",children:c}),G=({children:c})=>r.jsx("span",{children:c}),ge=({content:c,contentOrigin:m,monthDate:D})=>{const d=F.useMemo(()=>{const p=[];if(!m)return p;const y=c.split(""),g=m.split(""),P=Array.from(xe.calcPatch(g,y)),j=[];let e=0;for(const[t,s,i]of P)if(j.length===0&&t>=17&&s<=25&&i.length===s-t){if(P.length===1)return p;continue}else e<t&&j.push([g.slice(e,t).join(""),G]),s>t&&j.push([g.slice(t,s).join(""),je]),i.length>0&&j.push([i.join(""),me]),e=s;e<g.length&&j.push([g.slice(e).join(""),G]);let n=[];for(const[t,s]of j){const i=t.split(`
|
|
2
2
|
`);i.length===1?n.push(r.jsx(s,{children:t},`unchanged-${n.length}`)):i.map((l,o)=>{n.push(r.jsx(s,{children:l},o)),p.push(r.jsx("div",{children:n},p.length-1)),n=[]})}return n.length>0&&p.push(r.jsx("div",{children:n},p.length-1)),p},[c,m]);return r.jsxs("div",{className:"flex flex-col",children:[r.jsxs("div",{className:"text-sm text-gray-500 flex flex-row gap-2",children:[r.jsx("span",{className:"font-bold",children:"Month:"}),r.jsx("span",{children:D.slice(0,7)}),!d.length&&r.jsx(H,{className:"text-green-500"})]}),!!d.length&&d]})},Me=({filter:c})=>{const[{data:m,fetching:D,hasNext:d}]=Q({query:q,variables:c}),p=F.useMemo(()=>m?.pcnByDate?m.pcnByDate.sort((y,g)=>g.date>y.date?1:g.date<y.date?-1:0):[],[m?.pcnByDate]);return D?r.jsx("div",{className:"w-full h-full flex justify-center",children:r.jsx(E,{className:"h-10 w-10 animate-spin mr-2 self-center"})}):r.jsxs("div",{className:"flex flex-col gap-4",children:[!!m&&d&&r.jsx("div",{className:"w-full h-full flex justify-center",children:r.jsx(E,{className:"h-10 w-10 animate-spin mr-2 self-center"})}),p.map((y,g)=>r.jsx(ge,{content:y.content,contentOrigin:y.diffContent,monthDate:y.date},g))]})};function be({filter:c,setFilter:m,closeModal:D}){const{control:d,handleSubmit:p,setValue:y}=X({defaultValues:{...c}}),{selectableBusinesses:g,fetching:P}=ee(),j=e=>{m(e),D()};return r.jsxs(r.Fragment,{children:[P?r.jsx("div",{children:"Loading..."}):r.jsx("div",{}),r.jsxs("form",{onSubmit:p(j),children:[r.jsx(te,{name:"businessId",control:d,defaultValue:void 0,render:({field:e,fieldState:n})=>r.jsx(ne,{...e,data:g,value:e.value,disabled:P,label:"Businesses",placeholder:"Scroll to see all options",maxDropdownHeight:160,searchable:!0,error:n.error?.message})}),r.jsx(O,{label:"From date",defaultValue:c?.fromMonthDate?new Date(c.fromMonthDate):new Date,defaultDate:c?.fromMonthDate?new Date(c.fromMonthDate):new Date,onChange:e=>{const n=new Date(e.getFullYear(),e.getMonth(),15);y("fromMonthDate",S(n,"yyyy-MM-dd"))},popoverProps:{withinPortal:!0}}),r.jsx(O,{label:"To date",defaultValue:c?.toMonthDate?new Date(c.toMonthDate):new Date,defaultDate:c?.toMonthDate?new Date(c.toMonthDate):new Date,onChange:e=>{const n=new Date(e.getFullYear(),e.getMonth(),15);y("toMonthDate",S(n,"yyyy-MM-dd"))},popoverProps:{withinPortal:!0}}),r.jsxs("div",{className:"flex justify-center mt-5 gap-3",children:[r.jsx(U,{type:"submit",children:"Filter"}),r.jsx(U,{type:"button",onClick:D,children:"Cancel"})]})]})]})}function ve({filter:c,setFilter:m}){const[D,d]=F.useState(!1),{get:p,set:y}=J(),{userContext:g}=F.useContext($);function P(j){j||={businessId:g?.context.adminBusinessId??c.businessId,fromMonthDate:S(T(new Date),"yyyy-MM-15"),toMonthDate:S(new Date,"yyyy-MM-15")},se(j,c)||m(j)}return F.useEffect(()=>{const j=K(c??{})?null:encodeURIComponent(JSON.stringify(c)),e=p("validateReportsFilters");j!==e&&y("validateReportsFilters",j)},[c,p,y]),r.jsxs(r.Fragment,{children:[r.jsx(de,{opened:D,onClose:()=>d(!1),content:r.jsx(be,{filter:c,setFilter:P,closeModal:()=>d(!1)})}),r.jsx(U,{variant:"outline",size:"icon",className:"size-7.5",onClick:()=>d(!0),children:r.jsx(pe,{className:"size-5"})})]})}const ke=()=>{const{get:c}=J(),{setFiltersContext:m}=F.useContext(oe),D=F.useMemo(()=>{try{if(c("validateReportsFilters"))return JSON.parse(decodeURIComponent(c("validateReportsFilters")))}catch(y){console.error("Error parsing filter from URL",y)}return{fromMonthDate:S(T(new Date),"yyyy-MM-15"),toMonthDate:S(new Date,"yyyy-MM-15")}},[c]),[d,p]=F.useState(D);return F.useEffect(()=>{m(r.jsx("div",{className:"flex flex-row gap-2",children:r.jsx(ve,{filter:{...d},setFilter:p})}))},[d,m]),r.jsx(ae,{title:"Report Validations",children:r.jsx(ce,{type:"single",collapsible:!0,children:r.jsx(fe,{value:"pcn874",children:r.jsxs(re,{className:"p-4",children:[r.jsx(ue,{children:r.jsx(ie,{children:"Monthly VAT (PCN874)"})}),r.jsx(he,{children:r.jsx(le,{children:r.jsx(Me,{filter:d})})})]})})})})};export{ke as ValidateReportsScreen};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as m,bH as _,j as e,bB as k,B as I,bA as V,z as Q,bC as G,dq as q,b4 as K,dr as z,bD as y,bG as L,bE as F,bF as B,w as S,u as R,gN as X,J as P,c as U,K as $,O as J,a4 as W,W as O,F as Z,aC as ee,b8 as ae,Q as se,dV as te,gO as re,ay as ne}from"./index-BSS6FK0T.js";import{u as Y}from"./use-url-query-BNmqlRtS.js";import{P as oe}from"./page-layout-D5L-cVYf.js";import{k as ie,B as w,X as H,Y as le,l as ce,m as de,n as ue,o as me,p as pe,q as xe,r as ge}from"./chart-CjKqHefu.js";import{P as he}from"./modal-CnWz1mbU.js";import{F as fe}from"./funnel-B_esqPkd.js";import{M as E}from"./MultiSelect-BD7TiyFi.js";import{T as be}from"./index-BkLi1t0h.js";import{s as je}from"./sub-DNnP4yzZ.js";import"./sequential-CAnleQny.js";import"./similar-transactions-modal-BSXSuyS_.js";import"./addDays-WRhtMNwP.js";import"./list-plus-Bl9bDWr3.js";import"./subMonths-BxrBFcPp.js";var ye=ie({chartName:"BarChart",GraphicalChild:w,defaultTooltipEventType:"axis",validateTooltipEventTypes:["axis","item"],axisComponents:[{axisType:"xAxis",AxisComp:H},{axisType:"yAxis",AxisComp:le}],formatAxisMap:ce});function ve(s){return!s||V(s)?null:encodeURIComponent(JSON.stringify(s))}const A="balanceReportFilters",x={MONTHLY:"Monthly",BI_MONTHLY:"Bi-monthly",QUARTERLY:"Quarterly",SEMI_ANNUALLY:"Semi-Annually",ANNUALLY:"Annually"};function Ce({filter:s,setFilter:i,closeModal:c}){const{control:t,handleSubmit:r,watch:g}=Q({defaultValues:{...s}}),{selectableBusinesses:b,fetching:h}=G(),{selectableFinancialEntities:f,fetching:v}=q(),{selectableTags:p,fetching:j}=K(),M=a=>{i(a),c()},C=g("excludedTags"),o=m.useMemo(()=>p.filter(a=>!C.includes(a.value)),[C,p]),d=g("includedTags"),n=m.useMemo(()=>p.filter(a=>!d.includes(a.value)),[d,p]);return e.jsxs("form",{onSubmit:r(M),children:[e.jsxs(z,{cols:2,children:[e.jsx(y,{name:"ownerId",control:t,defaultValue:s?.ownerId,render:({field:a,fieldState:l})=>e.jsx(L,{...a,data:b,value:a.value,disabled:h,label:"Owners",placeholder:"Scroll to see all options",maxDropdownHeight:160,searchable:!0,error:l.error?.message,withinPortal:!0})}),e.jsx(y,{name:"fromDate",control:t,defaultValue:s?.fromDate,rules:{pattern:{value:F,message:"Date must be im format yyyy-mm-dd"}},render:({field:a,fieldState:l})=>e.jsx(B,{...a,onChange:u=>{const T=u?typeof u=="string"?u:S(u,"yyyy-MM-dd"):void 0;T!==a.value&&a.onChange(T)},value:a.value?new Date(a.value):void 0,error:l.error?.message,label:"From Date",popoverProps:{withinPortal:!0}})}),e.jsx(y,{name:"toDate",control:t,defaultValue:s?.toDate,rules:{pattern:{value:F,message:"Date must be im format yyyy-mm-dd"}},render:({field:a,fieldState:l})=>e.jsx(B,{...a,onChange:u=>{const T=u?typeof u=="string"?u:S(u,"yyyy-MM-dd"):void 0;T!==a.value&&a.onChange(T)},value:a.value?new Date(a.value):void 0,error:l.error?.message,label:"To Date",popoverProps:{withinPortal:!0}})}),e.jsx(y,{name:"period",control:t,defaultValue:x.MONTHLY,render:({field:a,fieldState:l})=>e.jsx(L,{...a,data:Object.values(x).map(u=>({value:u,label:u})),value:a.value,label:"Period",maxDropdownHeight:160,error:l.error?.message,withinPortal:!0})}),e.jsx(y,{name:"excludedCounterparties",control:t,defaultValue:s.excludedCounterparties,render:({field:a,fieldState:l})=>e.jsx(E,{...a,data:f,value:a.value??[],disabled:v,label:"Excluded Counterparties",placeholder:"Scroll to see all options",maxDropdownHeight:160,searchable:!0,error:l.error?.message,withinPortal:!0})}),e.jsx(y,{name:"includedTags",control:t,defaultValue:s.includedTags,render:({field:a,fieldState:l})=>e.jsx(E,{...a,data:o,value:a.value??[],disabled:j,label:"Included Tags",placeholder:"Scroll to see all options",maxDropdownHeight:160,searchable:!0,error:l.error?.message,withinPortal:!0})}),e.jsx(y,{name:"excludedTags",control:t,defaultValue:s.excludedTags,render:({field:a,fieldState:l})=>e.jsx(E,{...a,data:n,value:a.value??[],disabled:j,label:"Excluded Tags",placeholder:"Scroll to see all options",maxDropdownHeight:160,searchable:!0,error:l.error?.message,withinPortal:!0})})]}),e.jsxs("div",{className:"flex justify-center mt-5 gap-3",children:[e.jsx("button",{type:"submit",disabled:h,className:"text-white bg-indigo-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-indigo-600 rounded-sm text-lg",children:"Filter"}),e.jsx("button",{type:"button",className:"text-white bg-rose-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-rose-600 rounded-sm text-lg",onClick:c,children:"Cancel"})]})]})}function Te({filter:s,setFilter:i,initiallyOpened:c=!1}){const[t,r]=m.useState(c),[g,b]=m.useState(!!s),{get:h,set:f}=Y();m.useEffect(()=>{const p=ve(s),j=h(A);p!==j&&f(A,p)},[s,h,f]);const v=m.useCallback(p=>{_(p,s)||(i(p),b(!!p))},[s,i]);return e.jsxs("div",{className:"flex flex-row gap-5 items-center",children:[e.jsx(he,{opened:t,onClose:()=>r(!1),content:e.jsx(Ce,{filter:s,setFilter:v,closeModal:()=>r(!1)}),modalSize:"xl"}),e.jsx(k,{inline:!0,size:16,disabled:!g,children:e.jsx(I,{variant:"outline",size:"icon",className:"size-7.5",onClick:()=>r(!0),children:e.jsx(fe,{className:"size-5"})})})]})}const Ne=({period:s,transactionIDs:i,onCloseExtendedTransactions:c})=>{const[{data:t,fetching:r}]=R({query:X,variables:{transactionIDs:i}}),g=m.useMemo(()=>t?.transactionsByIDs?i.map(b=>t?.transactionsByIDs.find(h=>h.id===b)).filter(Boolean):[],[t,i]);return e.jsx(P,{className:"mt-5 w-full",children:r?e.jsx(U,{}):e.jsxs(e.Fragment,{children:[e.jsx($,{children:e.jsxs(J,{className:"flex justify-between",children:[e.jsxs("span",{children:[s," Transactions"]}),e.jsx(I,{variant:"link",onClick:c,children:e.jsx(W,{className:"h-4 w-4"})})]})}),e.jsx(O,{children:e.jsx(be,{transactionsProps:g})})]})})},N={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 we(s,i,c){switch(c){case x.MONTHLY:{const t=String(i).padStart(2,"0");return`${s}-${t}`}case x.BI_MONTHLY:{const t=i%2===0?i-1:i,r=String(t).padStart(2,"0");return`${s}-${r}`}case x.QUARTERLY:{const t=Math.ceil(i/3);return`${s}-Q${t}`}case x.SEMI_ANNUALLY:{const t=i>6?2:1;return`${s}-H${t}`}case x.ANNUALLY:return String(s)}}function Me(s,i){switch(i){case x.MONTHLY:{const[c,t]=s.split("-");return`${t}/${c}`}case x.BI_MONTHLY:{const[c,t]=s.split("-"),r=Number(t)+1,g=String(r).padStart(2,"0");return`${t}-${g}/${c}`}case x.QUARTERLY:{const[c,t]=s.split("-");return`${t}, ${c}`}case x.SEMI_ANNUALLY:{const[c,t]=s.split("-");return`${t}, ${c}`}case x.ANNUALLY:return s}}const D=te(ne.Usd),He=()=>{const{setFiltersContext:s}=m.useContext(Z),{userContext:i}=m.useContext(ee),{get:c}=Y(),t=m.useMemo(()=>{const o={ownerId:i?.context.adminBusinessId,toDate:S(new Date,"yyyy-MM-dd"),period:x.MONTHLY,fromDate:S(je(new Date,{years:1}),"yyyy-MM-dd"),excludedCounterparties:[],includedTags:[],excludedTags:[]},d=c(A);if(d)try{return JSON.parse(decodeURIComponent(d))}catch(n){console.log("Error parsing balance report filters from URL:",n)}return o},[i?.context.adminBusinessId,c]),[r,g]=m.useState(t),[b,h]=m.useState(void 0),[f,v]=m.useState(Object.keys(N)),p=m.useMemo(()=>{const{ownerId:o,fromDate:d,toDate:n}=r;return{ownerId:o,fromDate:d,toDate:n}},[r]),[{data:j,fetching:M}]=R({query:re,variables:p,pause:!r});m.useEffect(()=>{s(e.jsxs("div",{className:"flex flex-row gap-x-5",children:[e.jsx(Te,{filter:r,setFilter:g,initiallyOpened:!r}),e.jsx(ae,{options:Object.entries(N).map(([o,d])=>({label:d.label,value:o})),onValueChange:v,defaultValue:f,placeholder:"Select Data Sets",variant:"default",maxCount:1})]})),h(void 0)},[j,M,r,s,g,f]),m.useEffect(()=>{g(o=>({...o,ownerId:i?.context.adminBusinessId}))},[i]);const C=m.useMemo(()=>{if(!j?.transactionsForBalanceReport)return[];const o=new Map;j.transactionsForBalanceReport.map(n=>{if(n.counterparty?.id&&(!n.isFee&&i?.context.financialAccountsBusinessesIds?.includes(n.counterparty.id)||r.excludedCounterparties?.includes(n.counterparty.id))||r.includedTags.length>0&&(!n.charge?.tags||n.charge.tags.length===0||!n.charge.tags.some(u=>r.includedTags.includes(u.id)))||r.excludedTags.length>0&&n.charge?.tags.length&&n.charge.tags.some(u=>r.excludedTags.includes(u.id)))return;const a=we(n.year,n.month,r.period);o.has(a)||o.set(a,{income:0,expense:0,delta:0,transactions:[]});const l=o.get(a);n.amountUsd.raw>0?l.income+=n.amountUsd.raw:l.expense+=n.amountUsd.raw,l.delta+=n.amountUsd.raw,l.transactions.push(n)});let d=0;return Array.from(o.entries()).sort((n,a)=>n[0].localeCompare(a[0])).map(([n,a])=>(d+=a.delta,{period:n,income:a.income,expense:a.expense,delta:a.delta,cumulative:d,transactions:a.transactions.sort((l,u)=>Math.abs(u.amountUsd.raw)-Math.abs(l.amountUsd.raw))}))},[j,r.period,r.excludedCounterparties,i?.context.financialAccountsBusinessesIds,r.includedTags,r.excludedTags]);return e.jsx(oe,{title:"Balance Report",description:"Accounts periodical balance",children:M?e.jsx(U,{}):e.jsxs(e.Fragment,{children:[e.jsxs(P,{className:"w-full",children:[e.jsx($,{children:e.jsx(se,{children:"Click specific period to expand it's transactions data"})}),e.jsx(O,{children:e.jsx(de,{config:N,className:"h-150 w-full",children:e.jsxs(ye,{accessibilityLayer:!0,data:C,onClick:o=>h(o.activeLabel),children:[e.jsx(ue,{vertical:!1}),e.jsx(H,{dataKey:"period",tickLine:!1,tickMargin:10,axisLine:!1,tickFormatter:o=>Me(o,r.period)}),e.jsx(me,{content:e.jsx(pe,{formatter:(o,d,n,a)=>{const l=`bg-[var(--color-${d})]`;return a<2?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:`${l} h-2.5 w-2.5 shrink-0 rounded-[2px]`}),N[d]?.label||d,e.jsx("div",{className:"ml-auto flex items-baseline gap-0.5 font-mono font-medium tabular-nums text-foreground",children:D.format(Number(o))})]}):e.jsxs("div",{className:"mt-1.5 flex basis-full items-center border-t pt-1.5 text-xs font-medium text-foreground",children:[e.jsx("div",{className:`h-2.5 w-2.5 shrink-0 rounded-[2px] mr-2 ${l}`}),N[d]?.label||d,e.jsx("div",{className:"ml-auto flex items-baseline gap-0.5 font-mono font-medium tabular-nums text-foreground",children:D.format(Number(o))})]})}})}),e.jsx(xe,{content:e.jsx(ge,{})}),f.includes("income")&&e.jsx(w,{dataKey:"income",fill:"var(--color-income)",radius:4}),f.includes("expense")&&e.jsx(w,{dataKey:"expense",fill:"var(--color-expense)",radius:4}),f.includes("delta")&&e.jsx(w,{dataKey:"delta",fill:"var(--color-delta)",radius:4}),f.includes("cumulative")&&e.jsx(w,{dataKey:"cumulative",fill:"var(--color-cumulative)",radius:4})]})})})]}),b&&e.jsx(Ne,{period:b,onCloseExtendedTransactions:()=>h(void 0),transactionIDs:C.find(o=>o.period===b)?.transactions.map(o=>o.id)??[]})]})})};export{He as BalanceReport};
|
|
1
|
+
import{r as m,bH as _,j as e,bB as k,B as I,bA as V,z as Q,bC as G,dq as q,b4 as K,dr as z,bD as y,bG as L,bE as F,bF as B,w as S,u as R,gN as X,J as P,c as U,K as $,O as J,a4 as W,W as O,F as Z,aC as ee,b8 as ae,Q as se,dV as te,gO as re,ay as ne}from"./index-CJQEWig2.js";import{u as Y}from"./use-url-query-B4uMZFi3.js";import{P as oe}from"./page-layout-B2gYTWUz.js";import{k as ie,B as w,X as H,Y as le,l as ce,m as de,n as ue,o as me,p as pe,q as xe,r as ge}from"./chart-CVakbbuJ.js";import{P as he}from"./modal-B-dHSlvi.js";import{F as fe}from"./funnel-wCPsNKWN.js";import{M as E}from"./MultiSelect-E2FPCJdH.js";import{T as be}from"./index-MwL919Y6.js";import{s as je}from"./sub-CP-0oRhw.js";import"./sequential-CAnleQny.js";import"./similar-transactions-modal-DPUwmIYc.js";import"./addDays-B1nYv7cD.js";import"./list-plus-D47DH24w.js";import"./subMonths-Cu93C5UH.js";var ye=ie({chartName:"BarChart",GraphicalChild:w,defaultTooltipEventType:"axis",validateTooltipEventTypes:["axis","item"],axisComponents:[{axisType:"xAxis",AxisComp:H},{axisType:"yAxis",AxisComp:le}],formatAxisMap:ce});function ve(s){return!s||V(s)?null:encodeURIComponent(JSON.stringify(s))}const A="balanceReportFilters",x={MONTHLY:"Monthly",BI_MONTHLY:"Bi-monthly",QUARTERLY:"Quarterly",SEMI_ANNUALLY:"Semi-Annually",ANNUALLY:"Annually"};function Ce({filter:s,setFilter:i,closeModal:c}){const{control:t,handleSubmit:r,watch:g}=Q({defaultValues:{...s}}),{selectableBusinesses:b,fetching:h}=G(),{selectableFinancialEntities:f,fetching:v}=q(),{selectableTags:p,fetching:j}=K(),M=a=>{i(a),c()},C=g("excludedTags"),o=m.useMemo(()=>p.filter(a=>!C.includes(a.value)),[C,p]),d=g("includedTags"),n=m.useMemo(()=>p.filter(a=>!d.includes(a.value)),[d,p]);return e.jsxs("form",{onSubmit:r(M),children:[e.jsxs(z,{cols:2,children:[e.jsx(y,{name:"ownerId",control:t,defaultValue:s?.ownerId,render:({field:a,fieldState:l})=>e.jsx(L,{...a,data:b,value:a.value,disabled:h,label:"Owners",placeholder:"Scroll to see all options",maxDropdownHeight:160,searchable:!0,error:l.error?.message,withinPortal:!0})}),e.jsx(y,{name:"fromDate",control:t,defaultValue:s?.fromDate,rules:{pattern:{value:F,message:"Date must be im format yyyy-mm-dd"}},render:({field:a,fieldState:l})=>e.jsx(B,{...a,onChange:u=>{const T=u?typeof u=="string"?u:S(u,"yyyy-MM-dd"):void 0;T!==a.value&&a.onChange(T)},value:a.value?new Date(a.value):void 0,error:l.error?.message,label:"From Date",popoverProps:{withinPortal:!0}})}),e.jsx(y,{name:"toDate",control:t,defaultValue:s?.toDate,rules:{pattern:{value:F,message:"Date must be im format yyyy-mm-dd"}},render:({field:a,fieldState:l})=>e.jsx(B,{...a,onChange:u=>{const T=u?typeof u=="string"?u:S(u,"yyyy-MM-dd"):void 0;T!==a.value&&a.onChange(T)},value:a.value?new Date(a.value):void 0,error:l.error?.message,label:"To Date",popoverProps:{withinPortal:!0}})}),e.jsx(y,{name:"period",control:t,defaultValue:x.MONTHLY,render:({field:a,fieldState:l})=>e.jsx(L,{...a,data:Object.values(x).map(u=>({value:u,label:u})),value:a.value,label:"Period",maxDropdownHeight:160,error:l.error?.message,withinPortal:!0})}),e.jsx(y,{name:"excludedCounterparties",control:t,defaultValue:s.excludedCounterparties,render:({field:a,fieldState:l})=>e.jsx(E,{...a,data:f,value:a.value??[],disabled:v,label:"Excluded Counterparties",placeholder:"Scroll to see all options",maxDropdownHeight:160,searchable:!0,error:l.error?.message,withinPortal:!0})}),e.jsx(y,{name:"includedTags",control:t,defaultValue:s.includedTags,render:({field:a,fieldState:l})=>e.jsx(E,{...a,data:o,value:a.value??[],disabled:j,label:"Included Tags",placeholder:"Scroll to see all options",maxDropdownHeight:160,searchable:!0,error:l.error?.message,withinPortal:!0})}),e.jsx(y,{name:"excludedTags",control:t,defaultValue:s.excludedTags,render:({field:a,fieldState:l})=>e.jsx(E,{...a,data:n,value:a.value??[],disabled:j,label:"Excluded Tags",placeholder:"Scroll to see all options",maxDropdownHeight:160,searchable:!0,error:l.error?.message,withinPortal:!0})})]}),e.jsxs("div",{className:"flex justify-center mt-5 gap-3",children:[e.jsx("button",{type:"submit",disabled:h,className:"text-white bg-indigo-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-indigo-600 rounded-sm text-lg",children:"Filter"}),e.jsx("button",{type:"button",className:"text-white bg-rose-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-rose-600 rounded-sm text-lg",onClick:c,children:"Cancel"})]})]})}function Te({filter:s,setFilter:i,initiallyOpened:c=!1}){const[t,r]=m.useState(c),[g,b]=m.useState(!!s),{get:h,set:f}=Y();m.useEffect(()=>{const p=ve(s),j=h(A);p!==j&&f(A,p)},[s,h,f]);const v=m.useCallback(p=>{_(p,s)||(i(p),b(!!p))},[s,i]);return e.jsxs("div",{className:"flex flex-row gap-5 items-center",children:[e.jsx(he,{opened:t,onClose:()=>r(!1),content:e.jsx(Ce,{filter:s,setFilter:v,closeModal:()=>r(!1)}),modalSize:"xl"}),e.jsx(k,{inline:!0,size:16,disabled:!g,children:e.jsx(I,{variant:"outline",size:"icon",className:"size-7.5",onClick:()=>r(!0),children:e.jsx(fe,{className:"size-5"})})})]})}const Ne=({period:s,transactionIDs:i,onCloseExtendedTransactions:c})=>{const[{data:t,fetching:r}]=R({query:X,variables:{transactionIDs:i}}),g=m.useMemo(()=>t?.transactionsByIDs?i.map(b=>t?.transactionsByIDs.find(h=>h.id===b)).filter(Boolean):[],[t,i]);return e.jsx(P,{className:"mt-5 w-full",children:r?e.jsx(U,{}):e.jsxs(e.Fragment,{children:[e.jsx($,{children:e.jsxs(J,{className:"flex justify-between",children:[e.jsxs("span",{children:[s," Transactions"]}),e.jsx(I,{variant:"link",onClick:c,children:e.jsx(W,{className:"h-4 w-4"})})]})}),e.jsx(O,{children:e.jsx(be,{transactionsProps:g})})]})})},N={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 we(s,i,c){switch(c){case x.MONTHLY:{const t=String(i).padStart(2,"0");return`${s}-${t}`}case x.BI_MONTHLY:{const t=i%2===0?i-1:i,r=String(t).padStart(2,"0");return`${s}-${r}`}case x.QUARTERLY:{const t=Math.ceil(i/3);return`${s}-Q${t}`}case x.SEMI_ANNUALLY:{const t=i>6?2:1;return`${s}-H${t}`}case x.ANNUALLY:return String(s)}}function Me(s,i){switch(i){case x.MONTHLY:{const[c,t]=s.split("-");return`${t}/${c}`}case x.BI_MONTHLY:{const[c,t]=s.split("-"),r=Number(t)+1,g=String(r).padStart(2,"0");return`${t}-${g}/${c}`}case x.QUARTERLY:{const[c,t]=s.split("-");return`${t}, ${c}`}case x.SEMI_ANNUALLY:{const[c,t]=s.split("-");return`${t}, ${c}`}case x.ANNUALLY:return s}}const D=te(ne.Usd),He=()=>{const{setFiltersContext:s}=m.useContext(Z),{userContext:i}=m.useContext(ee),{get:c}=Y(),t=m.useMemo(()=>{const o={ownerId:i?.context.adminBusinessId,toDate:S(new Date,"yyyy-MM-dd"),period:x.MONTHLY,fromDate:S(je(new Date,{years:1}),"yyyy-MM-dd"),excludedCounterparties:[],includedTags:[],excludedTags:[]},d=c(A);if(d)try{return JSON.parse(decodeURIComponent(d))}catch(n){console.log("Error parsing balance report filters from URL:",n)}return o},[i?.context.adminBusinessId,c]),[r,g]=m.useState(t),[b,h]=m.useState(void 0),[f,v]=m.useState(Object.keys(N)),p=m.useMemo(()=>{const{ownerId:o,fromDate:d,toDate:n}=r;return{ownerId:o,fromDate:d,toDate:n}},[r]),[{data:j,fetching:M}]=R({query:re,variables:p,pause:!r});m.useEffect(()=>{s(e.jsxs("div",{className:"flex flex-row gap-x-5",children:[e.jsx(Te,{filter:r,setFilter:g,initiallyOpened:!r}),e.jsx(ae,{options:Object.entries(N).map(([o,d])=>({label:d.label,value:o})),onValueChange:v,defaultValue:f,placeholder:"Select Data Sets",variant:"default",maxCount:1})]})),h(void 0)},[j,M,r,s,g,f]),m.useEffect(()=>{g(o=>({...o,ownerId:i?.context.adminBusinessId}))},[i]);const C=m.useMemo(()=>{if(!j?.transactionsForBalanceReport)return[];const o=new Map;j.transactionsForBalanceReport.map(n=>{if(n.counterparty?.id&&(!n.isFee&&i?.context.financialAccountsBusinessesIds?.includes(n.counterparty.id)||r.excludedCounterparties?.includes(n.counterparty.id))||r.includedTags.length>0&&(!n.charge?.tags||n.charge.tags.length===0||!n.charge.tags.some(u=>r.includedTags.includes(u.id)))||r.excludedTags.length>0&&n.charge?.tags.length&&n.charge.tags.some(u=>r.excludedTags.includes(u.id)))return;const a=we(n.year,n.month,r.period);o.has(a)||o.set(a,{income:0,expense:0,delta:0,transactions:[]});const l=o.get(a);n.amountUsd.raw>0?l.income+=n.amountUsd.raw:l.expense+=n.amountUsd.raw,l.delta+=n.amountUsd.raw,l.transactions.push(n)});let d=0;return Array.from(o.entries()).sort((n,a)=>n[0].localeCompare(a[0])).map(([n,a])=>(d+=a.delta,{period:n,income:a.income,expense:a.expense,delta:a.delta,cumulative:d,transactions:a.transactions.sort((l,u)=>Math.abs(u.amountUsd.raw)-Math.abs(l.amountUsd.raw))}))},[j,r.period,r.excludedCounterparties,i?.context.financialAccountsBusinessesIds,r.includedTags,r.excludedTags]);return e.jsx(oe,{title:"Balance Report",description:"Accounts periodical balance",children:M?e.jsx(U,{}):e.jsxs(e.Fragment,{children:[e.jsxs(P,{className:"w-full",children:[e.jsx($,{children:e.jsx(se,{children:"Click specific period to expand it's transactions data"})}),e.jsx(O,{children:e.jsx(de,{config:N,className:"h-150 w-full",children:e.jsxs(ye,{accessibilityLayer:!0,data:C,onClick:o=>h(o.activeLabel),children:[e.jsx(ue,{vertical:!1}),e.jsx(H,{dataKey:"period",tickLine:!1,tickMargin:10,axisLine:!1,tickFormatter:o=>Me(o,r.period)}),e.jsx(me,{content:e.jsx(pe,{formatter:(o,d,n,a)=>{const l=`bg-[var(--color-${d})]`;return a<2?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:`${l} h-2.5 w-2.5 shrink-0 rounded-[2px]`}),N[d]?.label||d,e.jsx("div",{className:"ml-auto flex items-baseline gap-0.5 font-mono font-medium tabular-nums text-foreground",children:D.format(Number(o))})]}):e.jsxs("div",{className:"mt-1.5 flex basis-full items-center border-t pt-1.5 text-xs font-medium text-foreground",children:[e.jsx("div",{className:`h-2.5 w-2.5 shrink-0 rounded-[2px] mr-2 ${l}`}),N[d]?.label||d,e.jsx("div",{className:"ml-auto flex items-baseline gap-0.5 font-mono font-medium tabular-nums text-foreground",children:D.format(Number(o))})]})}})}),e.jsx(xe,{content:e.jsx(ge,{})}),f.includes("income")&&e.jsx(w,{dataKey:"income",fill:"var(--color-income)",radius:4}),f.includes("expense")&&e.jsx(w,{dataKey:"expense",fill:"var(--color-expense)",radius:4}),f.includes("delta")&&e.jsx(w,{dataKey:"delta",fill:"var(--color-delta)",radius:4}),f.includes("cumulative")&&e.jsx(w,{dataKey:"cumulative",fill:"var(--color-cumulative)",radius:4})]})})})]}),b&&e.jsx(Ne,{period:b,onCloseExtendedTransactions:()=>h(void 0),transactionIDs:C.find(o=>o.period===b)?.transactions.map(o=>o.id)??[]})]})})};export{He as BalanceReport};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as T,i8 as N,r as u,t as l,i as f,z as y,G as b,j as e,V as C,eo as $,Y as D,Z as F,_ as w,$ as k,I as j,a1 as E,i9 as v,ia as z,a9 as A,l as S,T as L,B as p,ah as M,n as O,ib as P,ic as B,F as q,u as _,id as U,L as V,co as G,ie as R}from"./index-
|
|
1
|
+
import{g as T,i8 as N,r as u,t as l,i as f,z as y,G as b,j as e,V as C,eo as $,Y as D,Z as F,_ as w,$ as k,I as j,a1 as E,i9 as v,ia as z,a9 as A,l as S,T as L,B as p,ah as M,n as O,ib as P,ic as B,F as q,u as _,id as U,L as V,co as G,ie as R}from"./index-CJQEWig2.js";import{P as Q}from"./page-layout-B2gYTWUz.js";import{L as Y}from"./list-plus-D47DH24w.js";const Z="updateTag",H=()=>{const[{fetching:c},r]=T(N),i=u.useCallback(async t=>{const a=`Error updating tag ID [${t.tagId}]`,s=`${Z}-${t.tagId}`;l.loading("Updating Tag...",{id:s});try{const n=await r(t),d=f(n,a,s,"updateTag");if(d)return l.success("Success",{id:s,description:"Tag updated"}),d.updateTag}catch(n){console.error(`${a}: ${n}`),l.error("Error",{id:s,description:a,duration:1e5,closeButton:!0})}return!1},[r]);return{fetching:c,updateTag:i}},J=({onDone:c,data:r,close:i})=>{const{updateTag:t,fetching:a}=H(),s=b(z,r),n=y({defaultValues:{name:s.name,parentId:s.parent?.id}}),{control:d,handleSubmit:m,formState:{dirtyFields:h}}=n,x=o=>{const g=A(o,h);i(),g&&Object.keys(g).length>0&&t({tagId:s.id,fields:g}).then(()=>c?.())};return e.jsx(C,{...n,children:e.jsxs("form",{onSubmit:m(x),children:[e.jsx("div",{className:"flex-row px-10 h-max justify-start block",children:e.jsxs($,{cols:3,children:[e.jsx(D,{name:"name",control:d,defaultValue:s.name,rules:{required:"Required",minLength:{value:2,message:"Must be at least 2 characters"}},render:({field:o})=>e.jsxs(F,{children:[e.jsx(w,{children:"Name"}),e.jsx(k,{children:e.jsx(j,{...o,value:o.value??void 0})}),e.jsx(E,{})]})}),e.jsx(v,{formManager:n,tagsPath:"parentId",label:"Parent Tag"})]})}),e.jsxs("div",{className:"mt-10 mb-5 flex justify-center gap-5",children:[e.jsx("button",{type:"submit",onClick:()=>m(x),className:"mt-8 text-white bg-indigo-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-indigo-600 rounded-sm text-lg",disabled:a||Object.keys(h).length===0,children:"Accept"}),e.jsx("button",{type:"button",className:"mt-8 text-white bg-rose-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-rose-600 rounded-sm text-lg",onClick:i,children:"Cancel"})]})]})})},K=({onDone:c,data:r})=>{const[i,{open:t,close:a}]=S(!1);function s(){a(),c?.()}return e.jsxs(e.Fragment,{children:[e.jsx(L,{content:"Edit Tag",children:e.jsx(p,{variant:"ghost",size:"icon",className:"size-7.5",onClick:t,children:e.jsx(M,{className:"size-5"})})}),e.jsx(O,{centered:!0,opened:i,onClose:a,title:"Insert Business Trip",children:e.jsx(J,{close:a,onDone:s,data:r})})]})},W="addTag",X=()=>{const[{fetching:c},r]=T(P),i=u.useCallback(async t=>{const a=`Error adding new tag [${t.tagName}]`,s=`${W}-${t.tagName}`;l.loading("Adding tag",{id:s});try{const n=await r(t);f(n,a,s)&&l.success("Success",{id:s,description:`"${t.tagName}" tag was successfully added`})}catch(n){console.error(`${a}: ${n}`),l.error("Error",{id:s,description:a,duration:1e5,closeButton:!0})}},[r]);return{fetching:c,addTag:i}},ee="deleteTag",se=()=>{const[{fetching:c},r]=T(B),i=u.useCallback(async t=>{const a=`Error deleting new tag [${t.name}]`,s=`${ee}-${t.tagId}`;l.loading(`Deleting tag [${t.name}]`,{id:s});try{const n=await r(t);f(n,a,s)&&l.success("Tag Deleted",{id:s,description:`[${t.name}] tag was successfully removed`})}catch(n){console.error(`${a}: ${n}`),l.error("Error",{id:s,description:a,duration:1e5,closeButton:!0})}},[r]);return{fetching:c,deleteTag:i}},oe=()=>{const{setFiltersContext:c}=u.useContext(q),[r,i]=u.useState(""),[{data:t,fetching:a},s]=_({query:R}),{addTag:n}=X(),{deleteTag:d}=se();u.useEffect(()=>{c(null)},[c]);const m=U(t?.allTags??[]),h=u.useCallback(o=>{o.length>2&&n({tagName:o}).then(()=>{s()})},[n,s]),x=u.useCallback((o,g)=>{d({tagId:o,name:g}).then(()=>{s()})},[d,s]);return e.jsx(Q,{title:"Tags",description:"Manage tags for your bookmarks.",children:a?e.jsx(V,{className:"h-10 w-10 animate-spin mr-2 self-center"}):e.jsxs("div",{className:"h-full flex flex-col overflow-hidden",children:[m?.map(o=>e.jsxs("div",{className:"flex items-center gap-2 text-gray-600 mb-2",children:[e.jsxs("div",{className:"w-full mt-1 relative rounded-md shadow-xs",children:[o.namePath?.map((g,I)=>e.jsx("span",{className:"ms-2"},I)),o.name]}),e.jsx(K,{data:o}),e.jsx(p,{variant:"ghost",size:"icon",className:"size-7.5",onClick:()=>x(o.id,o.name),children:e.jsx(G,{className:"size-5"})})]},o.id)),e.jsxs("div",{className:"flex justify-start items-center gap-2 text-gray-600 mb-2",children:[e.jsx(j,{className:"w-80",value:r,onChange:o=>i(o.currentTarget.value),placeholder:"Add new tag",required:!0}),e.jsx(p,{variant:"ghost",size:"icon",className:"size-7.5",disabled:r.length<2,onClick:()=>h(r),children:e.jsx(Y,{className:"size-5"})})]})]})})};export{oe as TagsManager};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{v as En,gQ as oe,g0 as R,f_ as ve,gR as Ke,gS as _n,j as c,T as Ze,ai as wt,R as St,B as q,m as _,bW as In,aX as Yn,en as Fn,u as Ot,gT as Pn,z as Ct,r as O,dq as Nt,d as Bn,V as jt,eo as Rn,Y as le,Z as ce,_ as de,ao as An,$ as ye,ap as zn,aq as qn,ar as Hn,as as $n,a1 as fe,bE as Wt,w as Z,at as Un,a9 as Gn,g as Kn,gU as Vn,t as Fe,i as Zn,L as Xn,b5 as ct,bD as dt,cp as Qn,bF as Jn,gV as Ln,I as Tt,gW as pe,gX as es,gY as ts,f$ as Et,gZ as ns,g_ as _t,g$ as It,h0 as ss,h1 as rs,h2 as os,h3 as as,aF as m,h4 as is,gk as ls,b_ as ie,h5 as ut,h6 as cs,h7 as ds,aO as us,h8 as fs,dN as hs,et as ms,eu as gs,h9 as ys,D as ps,aL as bs,x as vs,al as xs,am as Ds,d6 as ks,bC as Ms,d1 as ws,q as Ss,e as Os,dG as ue,fT as Cs,G as Ns,fG as js,bX as Ws,c3 as Ts,c4 as Es,c5 as _s,bN as Is,bO as Ys,bP as Pe,bQ as Fs,c1 as ft,bR as Ps,bS as ht,P as Bs}from"./index-BSS6FK0T.js";import{u as Xe,S as Rs}from"./similar-transactions-modal-BSXSuyS_.js";import{a as Yt}from"./addDays-WRhtMNwP.js";import{L as As}from"./list-plus-Bl9bDWr3.js";const zs=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],qs=En("external-link",zs);function Hs(e,t,s){return Yt(e,t*7,s)}function $s(e,t){let s,n=t?.in;return e.forEach(r=>{!n&&typeof r=="object"&&(n=oe.bind(null,r));const l=R(r,n);(!s||s<l||isNaN(+l))&&(s=l)}),oe(n,s||NaN)}function Us(e,t){let s,n=t?.in;return e.forEach(r=>{!n&&typeof r=="object"&&(n=oe.bind(null,r));const l=R(r,n);(!s||s>l||isNaN(+l))&&(s=l)}),oe(n,s||NaN)}function Gs(e,t,s){const[n,r]=ve(s?.in,e,t);return+Ke(n)==+Ke(r)}function Ft(e,t,s){const[n,r]=ve(s?.in,e,t),l=n.getFullYear()-r.getFullYear(),a=n.getMonth()-r.getMonth();return l*12+a}function Ks(e,t){const s=R(e,t?.in),n=s.getMonth();return s.setFullYear(s.getFullYear(),n+1,0),s.setHours(23,59,59,999),s}function Pt(e,t){const[s,n]=ve(e,t.start,t.end);return{start:s,end:n}}function Vs(e,t){const{start:s,end:n}=Pt(t?.in,e);let r=+s>+n;const l=r?+s:+n,a=r?n:s;a.setHours(0,0,0,0),a.setDate(1);let o=1;const i=[];for(;+a<=l;)i.push(oe(s,a)),a.setMonth(a.getMonth()+o);return r?i.reverse():i}function Zs(e,t){const s=R(e,t?.in);return s.setDate(1),s.setHours(0,0,0,0),s}function Xs(e,t){const{start:s,end:n}=Pt(t?.in,e);let r=+s>+n;const l=r?+s:+n,a=r?n:s;a.setHours(0,0,0,0),a.setMonth(0,1);let o=1;const i=[];for(;+a<=l;)i.push(oe(s,a)),a.setFullYear(a.getFullYear()+o);return r?i.reverse():i}function Bt(e,t){const s=_n(),n=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??s.weekStartsOn??s.locale?.options?.weekStartsOn??0,r=R(e,t?.in),l=r.getDay(),a=(l<n?-7:0)+6-(l-n);return r.setDate(r.getDate()+a),r.setHours(23,59,59,999),r}function Qs(e,t){return Bt(e,{...t,weekStartsOn:1})}function Js(e,t){const s=R(e,t?.in),n=s.getFullYear(),r=s.getMonth(),l=oe(s,0);return l.setFullYear(n,r+1,0),l.setHours(0,0,0,0),l.getDate()}function Ls(e,t){return R(e,t?.in).getMonth()}function er(e,t){return R(e,t?.in).getFullYear()}function tr(e,t){return+R(e)>+R(t)}function nr(e,t){return+R(e)<+R(t)}function sr(e,t,s){const[n,r]=ve(s?.in,e,t);return n.getFullYear()===r.getFullYear()&&n.getMonth()===r.getMonth()}function rr(e,t,s){const[n,r]=ve(s?.in,e,t);return n.getFullYear()===r.getFullYear()}function or(e,t,s){const n=R(e,s?.in),r=n.getFullYear(),l=n.getDate(),a=oe(e,0);a.setFullYear(r,t,15),a.setHours(0,0,0,0);const o=Js(a);return n.setMonth(t,Math.min(l,o)),n}function ar(e,t,s){const n=R(e,s?.in);return isNaN(+n)?oe(e,NaN):(n.setFullYear(t),n)}function ir(e){return c.jsx(Ze,{content:"To Charge",children:c.jsx(wt,{to:St.CHARGES.DETAIL(e.chargeId),target:"_blank",rel:"noreferrer",onClick:t=>t.stopPropagation(),className:"inline-block",children:c.jsx(q,{...e,className:_("size-7.5",e.className),variant:"ghost",children:c.jsx(qs,{className:"size-5"})})})})}function lr({transactionId:e}){const{updateTransaction:t}=Xe();function s(){t({transactionId:e,fields:{chargeId:Fn}})}return c.jsx(In,{onConfirm:s,title:"Are you sure you want to unlink this transaction from the charge?",children:c.jsx(q,{variant:"ghost",size:"icon",className:"size-7.5",children:c.jsx(Yn,{className:"size-5"})})})}const cr=({transactionID:e,onDone:t,onChange:s})=>{const[{data:n,fetching:r}]=Ot({query:Pn,variables:{transactionIDs:[e]}}),l=n?.transactionsByIDs?.[0],a=Ct({defaultValues:l??{}});O.useEffect(()=>{l&&a.reset(l)},[l,a]);const{control:o,handleSubmit:i,formState:{dirtyFields:d}}=a,{updateTransaction:f,fetching:u}=Xe(),h=v=>{if(!l)return;const p=Gn(v,d);t?.(),p&&Object.keys(p).length>0&&f({transactionId:l.id,fields:p}).then(s)},{selectableFinancialEntities:y,fetching:S}=Nt();return c.jsxs(c.Fragment,{children:[r&&c.jsx(Bn,{className:"flex self-center my-5",color:"dark",size:"xl",variant:"dots"}),!r&&l&&c.jsx(jt,{...a,children:c.jsxs("form",{onSubmit:i(h),children:[c.jsx("div",{className:"flex-row px-10 h-max justify-start block",children:c.jsxs(Rn,{cols:3,children:[c.jsx(le,{name:"counterpartyId",control:o,defaultValue:l.counterparty?.id,rules:{minLength:{value:2,message:"Minimum 2 characters"}},render:({field:v})=>c.jsxs(ce,{children:[c.jsx(de,{children:"Counterparty"}),c.jsxs(An,{onValueChange:v.onChange,value:v.value??void 0,disabled:S,children:[c.jsx(ye,{children:c.jsx(zn,{className:"w-full truncate",children:c.jsx(qn,{placeholder:"Scroll to see all options"})})}),c.jsx(Hn,{onClick:p=>p.stopPropagation(),children:y.map(({value:p,label:k})=>c.jsx($n,{value:p,children:k},p))})]}),c.jsx(fe,{})]})}),l?.account.__typename==="CardFinancialAccount"?c.jsx(le,{name:"effectiveDate",control:o,rules:{pattern:{value:Wt,message:"Date must be im format yyyy-mm-dd"}},render:({field:v})=>c.jsxs(ce,{children:[c.jsx(de,{children:"Effective Date"}),c.jsx(ye,{children:c.jsx(Vo,{...v,onChange:p=>{const k=p?Z(p,"yyyy-MM-dd"):void 0;k!==v.value&&v.onChange(k)},value:v.value?new Date(v.value):void 0})}),c.jsx(fe,{})]})}):c.jsx(c.Fragment,{}),c.jsx(le,{name:"isFee",control:o,defaultValue:l.isFee,render:({field:v})=>c.jsxs(ce,{className:"flex flex-row items-center justify-between rounded-lg border p-3 shadow-sm",children:[c.jsx("div",{className:"space-y-0.5",children:c.jsx(de,{children:"Fee Transaction"})}),c.jsx(ye,{children:c.jsx(Un,{checked:v.value===!0,onCheckedChange:v.onChange})})]})})]})}),c.jsxs("div",{className:"mt-10 mb-5 flex justify-center gap-5",children:[c.jsx("button",{type:"submit",onClick:()=>i(h),className:"mt-8 text-white bg-indigo-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-indigo-600 rounded-sm text-lg",disabled:u||Object.keys(d).length===0,children:"Accept"}),c.jsx("button",{type:"button",className:"mt-8 text-white bg-rose-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-rose-600 rounded-sm text-lg",onClick:t,children:"Cancel"})]})]})})]})},dr="insertMiscExpense",ur=()=>{const[{fetching:e},t]=Kn(Vn),s=O.useCallback(async n=>{const r="Error creating misc expense",l=`${dr}-${n.chargeId}`;Fe.loading("Creating misc expense",{id:l});try{const a=await t(n),o=Zn(a,r,l);if(o)return Fe.success("Success",{id:l,description:"Misc expense was created"}),o.insertMiscExpense}catch(a){console.error(`${r}: ${a}`),Fe.error("Error",{id:l,description:r,duration:1e5,closeButton:!0})}},[t]);return{fetching:e,insertMiscExpense:s}},fr=({onDone:e,defaultValues:t={},chargeId:s})=>{const{insertMiscExpense:n,fetching:r}=ur(),l=O.useCallback(async a=>{await n({chargeId:s,fields:a}),e()},[n,s,e]);return c.jsx(hr,{defaultValues:t,onInsertDone:l,fetching:r})},hr=({onInsertDone:e,defaultValues:t,fetching:s})=>{const n=o=>{o&&Object.keys(o).length>0&&e(o)},r=Ct({defaultValues:{...t}}),{handleSubmit:l,formState:{dirtyFields:a}}=r;return c.jsx(jt,{...r,children:c.jsx("form",{onSubmit:l(n),noValidate:!0,children:c.jsxs("div",{className:"px-5 flex flex-col gap-5 relative",children:[s&&c.jsx("div",{className:"absolute bg-white/60 z-10 h-full w-full flex items-center justify-center",children:c.jsx("div",{className:"flex items-center",children:c.jsx("span",{className:"text-3xl mr-4",children:c.jsx(Xn,{className:"h-10 w-10 animate-spin mr-2 self-center"})})})}),c.jsx(mr,{formManager:r,isInsert:!0}),c.jsx("div",{className:"flex justify-right gap-5 mt-5",children:c.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",disabled:s||Object.keys(a).length===0,children:"Accept"})})]})})})},mr=({formManager:e,isInsert:t})=>{const{control:s,setValue:n}=e,{selectableFinancialEntities:r,fetching:l}=Nt();return c.jsxs(c.Fragment,{children:[c.jsx(le,{name:"creditorId",control:s,rules:{required:t?"Required":void 0},render:({field:a})=>c.jsxs(ce,{children:[c.jsx(de,{children:"Creditor"}),c.jsx(ct,{...a,data:r,value:a.value??void 0,disabled:l,placeholder:"Select creditor",formPart:!0}),c.jsx(fe,{})]})}),c.jsx(le,{name:"debtorId",control:s,rules:{required:t?"Required":void 0},render:({field:a})=>c.jsxs(ce,{children:[c.jsx(de,{children:"Debtor"}),c.jsx(ct,{...a,data:r,value:a.value??void 0,disabled:l,placeholder:"Select debtor",formPart:!0}),c.jsx(fe,{})]})}),c.jsx(dt,{name:"amount",control:s,rules:{required:t?"Required":void 0},render:({field:a,fieldState:o})=>c.jsx(dt,{name:"currency",control:s,rules:{required:t?"Required":void 0},render:({field:i,fieldState:d})=>c.jsx(Qn,{...a,required:t,value:a.value??void 0,error:o.error?.message||d.error?.message,label:"Amount",currencyCodeProps:{...i,required:t,label:"Currency"}})})}),c.jsx(le,{name:"invoiceDate",control:s,rules:{...t?{required:"Required"}:{},pattern:{value:Wt,message:"Date must be im format yyyy-mm-dd"}},render:({field:a})=>{const o=a.value?new Date(a.value):void 0;return c.jsxs(ce,{children:[c.jsx(de,{children:"Invoice Date"}),c.jsx(ye,{children:c.jsx(Jn,{...a,required:t,onChange:i=>{const d=i?typeof i=="string"?i:Z(i,"yyyy-MM-dd"):void 0;d!==a.value&&(n("invoiceDate",d),a.onChange(d))},value:o,valueFormat:"DD/MM/YYYY"})}),c.jsx(fe,{})]})}}),c.jsx(le,{name:"valueDate",control:s,rules:{...t?{required:"Required"}:{},validate:a=>a?!Number.isNaN(a.getTime())||"Invalid date and time format":!0},render:({field:a})=>c.jsxs(ce,{children:[c.jsx(de,{children:"Value Date"}),c.jsx(ye,{children:c.jsx(Ln,{...a,onChange:o=>{n("valueDate",o),a.onChange(o)},onPointerEnterCapture:()=>{},onPointerLeaveCapture:()=>{},required:t,placeholder:"Pick date and time",valueFormat:"DD/MM/YYYY HH:mm:ss",withSeconds:!0})}),c.jsx(fe,{})]})}),c.jsx(le,{name:"description",control:s,rules:{required:t?"Required":void 0},render:({field:a})=>c.jsxs(ce,{children:[c.jsx(de,{children:"Description"}),c.jsx(ye,{children:c.jsx(Tt,{...a,required:t,value:a.value??void 0})}),c.jsx(fe,{})]})})]})};function gr(e,t,s="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:e,timeZoneName:s}).format(t).split(/\s/g).slice(2).join(" ")}const yr={},be={};function he(e,t){try{const n=(yr[e]||=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format)(t).split("GMT")[1];return n in be?be[n]:mt(n,n.split(":"))}catch{if(e in be)return be[e];const s=e?.match(pr);return s?mt(e,s.slice(1)):NaN}}const pr=/([+-]\d\d):?(\d\d)?/;function mt(e,t){const s=+(t[0]||0),n=+(t[1]||0),r=+(t[2]||0)/60;return be[e]=s*60+n>0?s*60+n+r:s*60-n-r}class L extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(he(this.timeZone,this))?this.setTime(NaN):t.length?typeof t[0]=="number"&&(t.length===1||t.length===2&&typeof t[1]!="number")?this.setTime(t[0]):typeof t[0]=="string"?this.setTime(+new Date(t[0])):t[0]instanceof Date?this.setTime(+t[0]):(this.setTime(+new Date(...t)),Rt(this),Ve(this)):this.setTime(Date.now())}static tz(t,...s){return s.length?new L(...s,t):new L(Date.now(),t)}withTimeZone(t){return new L(+this,t)}getTimezoneOffset(){const t=-he(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),Ve(this),+this}[Symbol.for("constructDateFrom")](t){return new L(+new Date(t),this.timeZone)}}const gt=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!gt.test(e))return;const t=e.replace(gt,"$1UTC");L.prototype[t]&&(e.startsWith("get")?L.prototype[e]=function(){return this.internal[t]()}:(L.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),br(this),+this},L.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),Ve(this),+this}))});function Ve(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-he(e.timeZone,e)*60))}function br(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),Rt(e)}function Rt(e){const t=he(e.timeZone,e),s=t>0?Math.floor(t):Math.ceil(t),n=new Date(+e);n.setUTCHours(n.getUTCHours()-1);const r=-new Date(+e).getTimezoneOffset(),l=-new Date(+n).getTimezoneOffset(),a=r-l,o=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();a&&o&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+a);const i=r-s;i&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+i);const d=new Date(+e);d.setUTCSeconds(0);const f=r>0?d.getSeconds():(d.getSeconds()-60)%60,u=Math.round(-(he(e.timeZone,e)*60))%60;(u||f)&&(e.internal.setUTCSeconds(e.internal.getUTCSeconds()+u),Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+u+f));const h=he(e.timeZone,e),y=h>0?Math.floor(h):Math.ceil(h),v=-new Date(+e).getTimezoneOffset()-y,p=y!==s,k=v-i;if(p&&k){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+k);const W=he(e.timeZone,e),w=W>0?Math.floor(W):Math.ceil(W),M=y-w;M&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+M),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+M))}}class B extends L{static tz(t,...s){return s.length?new B(...s,t):new B(Date.now(),t)}toISOString(){const[t,s,n]=this.tzComponents(),r=`${t}${s}:${n}`;return this.internal.toISOString().slice(0,-1)+r}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,s,n,r]=this.internal.toUTCString().split(" ");return`${t?.slice(0,-1)} ${n} ${s} ${r}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[s,n,r]=this.tzComponents();return`${t} GMT${s}${n}${r} (${gr(this.timeZone,this)})`}toLocaleString(t,s){return Date.prototype.toLocaleString.call(this,t,{...s,timeZone:s?.timeZone||this.timeZone})}toLocaleDateString(t,s){return Date.prototype.toLocaleDateString.call(this,t,{...s,timeZone:s?.timeZone||this.timeZone})}toLocaleTimeString(t,s){return Date.prototype.toLocaleTimeString.call(this,t,{...s,timeZone:s?.timeZone||this.timeZone})}tzComponents(){const t=this.getTimezoneOffset(),s=t>0?"-":"+",n=String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),r=String(Math.abs(t)%60).padStart(2,"0");return[s,n,r]}withTimeZone(t){return new B(+this,t)}[Symbol.for("constructDateFrom")](t){return new B(+new Date(t),this.timeZone)}}const yt=5,vr=4;function xr(e,t){const s=t.startOfMonth(e),n=s.getDay()>0?s.getDay():7,r=t.addDays(e,-n+1),l=t.addDays(r,yt*7-1);return t.getMonth(e)===t.getMonth(l)?yt:vr}function At(e,t){const s=t.startOfMonth(e),n=s.getDay();return n===1?s:n===0?t.addDays(s,-6):t.addDays(s,-1*(n-1))}function Dr(e,t){const s=At(e,t),n=xr(e,t);return t.addDays(s,n*7-1)}const zt={...pe,labels:{labelDayButton:(e,t,s,n)=>{let r;n&&typeof n.format=="function"?r=n.format.bind(n):r=(a,o)=>Z(a,o,{locale:pe,...s});let l=r(e,"PPPP");return t.today&&(l=`Today, ${l}`),t.selected&&(l=`${l}, selected`),l},labelMonthDropdown:"Choose the Month",labelNext:"Go to the Next Month",labelPrevious:"Go to the Previous Month",labelWeekNumber:e=>`Week ${e}`,labelYearDropdown:"Choose the Year",labelGrid:(e,t,s)=>{let n;return s&&typeof s.format=="function"?n=s.format.bind(s):n=(r,l)=>Z(r,l,{locale:pe,...t}),n(e,"LLLL yyyy")},labelGridcell:(e,t,s,n)=>{let r;n&&typeof n.format=="function"?r=n.format.bind(n):r=(a,o)=>Z(a,o,{locale:pe,...s});let l=r(e,"PPPP");return t?.today&&(l=`Today, ${l}`),l},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(e,t,s)=>{let n;return s&&typeof s.format=="function"?n=s.format.bind(s):n=(r,l)=>Z(r,l,{locale:pe,...t}),n(e,"cccc")}}};class H{constructor(t,s){this.Date=Date,this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?B.tz(this.options.timeZone):new this.Date,this.newDate=(n,r,l)=>this.overrides?.newDate?this.overrides.newDate(n,r,l):this.options.timeZone?new B(n,r,l,this.options.timeZone):new Date(n,r,l),this.addDays=(n,r)=>this.overrides?.addDays?this.overrides.addDays(n,r):Yt(n,r),this.addMonths=(n,r)=>this.overrides?.addMonths?this.overrides.addMonths(n,r):es(n,r),this.addWeeks=(n,r)=>this.overrides?.addWeeks?this.overrides.addWeeks(n,r):Hs(n,r),this.addYears=(n,r)=>this.overrides?.addYears?this.overrides.addYears(n,r):ts(n,r),this.differenceInCalendarDays=(n,r)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(n,r):Et(n,r),this.differenceInCalendarMonths=(n,r)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(n,r):Ft(n,r),this.eachMonthOfInterval=n=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(n):Vs(n),this.eachYearOfInterval=n=>{const r=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(n):Xs(n),l=new Set(r.map(o=>this.getYear(o)));if(l.size===r.length)return r;const a=[];return l.forEach(o=>{a.push(new Date(o,0,1))}),a},this.endOfBroadcastWeek=n=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(n):Dr(n,this),this.endOfISOWeek=n=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(n):Qs(n),this.endOfMonth=n=>this.overrides?.endOfMonth?this.overrides.endOfMonth(n):Ks(n),this.endOfWeek=(n,r)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(n,r):Bt(n,this.options),this.endOfYear=n=>this.overrides?.endOfYear?this.overrides.endOfYear(n):ns(n),this.format=(n,r,l)=>{const a=this.overrides?.format?this.overrides.format(n,r,this.options):Z(n,r,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(a):a},this.getISOWeek=n=>this.overrides?.getISOWeek?this.overrides.getISOWeek(n):_t(n),this.getMonth=(n,r)=>this.overrides?.getMonth?this.overrides.getMonth(n,this.options):Ls(n,this.options),this.getYear=(n,r)=>this.overrides?.getYear?this.overrides.getYear(n,this.options):er(n,this.options),this.getWeek=(n,r)=>this.overrides?.getWeek?this.overrides.getWeek(n,this.options):It(n,this.options),this.isAfter=(n,r)=>this.overrides?.isAfter?this.overrides.isAfter(n,r):tr(n,r),this.isBefore=(n,r)=>this.overrides?.isBefore?this.overrides.isBefore(n,r):nr(n,r),this.isDate=n=>this.overrides?.isDate?this.overrides.isDate(n):ss(n),this.isSameDay=(n,r)=>this.overrides?.isSameDay?this.overrides.isSameDay(n,r):Gs(n,r),this.isSameMonth=(n,r)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(n,r):sr(n,r),this.isSameYear=(n,r)=>this.overrides?.isSameYear?this.overrides.isSameYear(n,r):rr(n,r),this.max=n=>this.overrides?.max?this.overrides.max(n):$s(n),this.min=n=>this.overrides?.min?this.overrides.min(n):Us(n),this.setMonth=(n,r)=>this.overrides?.setMonth?this.overrides.setMonth(n,r):or(n,r),this.setYear=(n,r)=>this.overrides?.setYear?this.overrides.setYear(n,r):ar(n,r),this.startOfBroadcastWeek=(n,r)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(n,this):At(n,this),this.startOfDay=n=>this.overrides?.startOfDay?this.overrides.startOfDay(n):Ke(n),this.startOfISOWeek=n=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(n):rs(n),this.startOfMonth=n=>this.overrides?.startOfMonth?this.overrides.startOfMonth(n):Zs(n),this.startOfWeek=(n,r)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(n,this.options):os(n,this.options),this.startOfYear=n=>this.overrides?.startOfYear?this.overrides.startOfYear(n):as(n),this.options={locale:zt,...t},this.overrides=s}getDigitMap(){const{numerals:t="latn"}=this.options,s=new Intl.NumberFormat("en-US",{numberingSystem:t}),n={};for(let r=0;r<10;r++)n[r.toString()]=s.format(r);return n}replaceDigits(t){const s=this.getDigitMap();return t.replace(/\d/g,n=>s[n]||n)}formatNumber(t){return this.replaceDigits(t.toString())}getMonthYearOrder(){const t=this.options.locale?.code;return t&&H.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:s,timeZone:n,numerals:r}=this.options,l=s?.code;if(l&&H.yearFirstLocales.has(l))try{return new Intl.DateTimeFormat(l,{month:"long",year:"numeric",timeZone:n,numberingSystem:r}).format(t)}catch{}const a=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(t,a)}}H.yearFirstLocales=new Set(["eu","hu","ja","ja-Hira","ja-JP","ko","ko-KR","lt","lt-LT","lv","lv-LV","mn","mn-MN","zh","zh-CN","zh-HK","zh-TW"]);const ee=new H;class qt{constructor(t,s,n=ee){this.date=t,this.displayMonth=s,this.outside=!!(s&&!n.isSameMonth(t,s)),this.dateLib=n,this.isoDate=n.format(t,"yyyy-MM-dd"),this.displayMonthId=n.format(s,"yyyy-MM"),this.dateMonthId=n.format(t,"yyyy-MM")}isEqualTo(t){return this.dateLib.isSameDay(t.date,this.date)&&this.dateLib.isSameMonth(t.displayMonth,this.displayMonth)}}class kr{constructor(t,s){this.date=t,this.weeks=s}}class Mr{constructor(t,s){this.days=s,this.weekNumber=t}}function wr(e){return m.createElement("button",{...e})}function Sr(e){return m.createElement("span",{...e})}function Or(e){const{size:t=24,orientation:s="left",className:n}=e;return m.createElement("svg",{className:n,width:t,height:t,viewBox:"0 0 24 24"},s==="up"&&m.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),s==="down"&&m.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),s==="left"&&m.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),s==="right"&&m.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function Cr(e){const{day:t,modifiers:s,...n}=e;return m.createElement("td",{...n})}function Nr(e){const{day:t,modifiers:s,...n}=e,r=m.useRef(null);return m.useEffect(()=>{s.focused&&r.current?.focus()},[s.focused]),m.createElement("button",{ref:r,...n})}var b;(function(e){e.Root="root",e.Chevron="chevron",e.Day="day",e.DayButton="day_button",e.CaptionLabel="caption_label",e.Dropdowns="dropdowns",e.Dropdown="dropdown",e.DropdownRoot="dropdown_root",e.Footer="footer",e.MonthGrid="month_grid",e.MonthCaption="month_caption",e.MonthsDropdown="months_dropdown",e.Month="month",e.Months="months",e.Nav="nav",e.NextMonthButton="button_next",e.PreviousMonthButton="button_previous",e.Week="week",e.Weeks="weeks",e.Weekday="weekday",e.Weekdays="weekdays",e.WeekNumber="week_number",e.WeekNumberHeader="week_number_header",e.YearsDropdown="years_dropdown"})(b||(b={}));var Y;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})(Y||(Y={}));var X;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(X||(X={}));var z;(function(e){e.weeks_before_enter="weeks_before_enter",e.weeks_before_exit="weeks_before_exit",e.weeks_after_enter="weeks_after_enter",e.weeks_after_exit="weeks_after_exit",e.caption_after_enter="caption_after_enter",e.caption_after_exit="caption_after_exit",e.caption_before_enter="caption_before_enter",e.caption_before_exit="caption_before_exit"})(z||(z={}));function jr(e){const{options:t,className:s,components:n,classNames:r,...l}=e,a=[r[b.Dropdown],s].join(" "),o=t?.find(({value:i})=>i===l.value);return m.createElement("span",{"data-disabled":l.disabled,className:r[b.DropdownRoot]},m.createElement(n.Select,{className:a,...l},t?.map(({value:i,label:d,disabled:f})=>m.createElement(n.Option,{key:i,value:i,disabled:f},d))),m.createElement("span",{className:r[b.CaptionLabel],"aria-hidden":!0},o?.label,m.createElement(n.Chevron,{orientation:"down",size:18,className:r[b.Chevron]})))}function Wr(e){return m.createElement("div",{...e})}function Tr(e){return m.createElement("div",{...e})}function Er(e){const{calendarMonth:t,displayIndex:s,...n}=e;return m.createElement("div",{...n},e.children)}function _r(e){const{calendarMonth:t,displayIndex:s,...n}=e;return m.createElement("div",{...n})}function Ir(e){return m.createElement("table",{...e})}function Yr(e){return m.createElement("div",{...e})}const Ht=O.createContext(void 0);function xe(){const e=O.useContext(Ht);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function Fr(e){const{components:t}=xe();return m.createElement(t.Dropdown,{...e})}function Pr(e){const{onPreviousClick:t,onNextClick:s,previousMonth:n,nextMonth:r,...l}=e,{components:a,classNames:o,labels:{labelPrevious:i,labelNext:d}}=xe(),f=O.useCallback(h=>{r&&s?.(h)},[r,s]),u=O.useCallback(h=>{n&&t?.(h)},[n,t]);return m.createElement("nav",{...l},m.createElement(a.PreviousMonthButton,{type:"button",className:o[b.PreviousMonthButton],tabIndex:n?void 0:-1,"aria-disabled":n?void 0:!0,"aria-label":i(n),onClick:u},m.createElement(a.Chevron,{disabled:n?void 0:!0,className:o[b.Chevron],orientation:"left"})),m.createElement(a.NextMonthButton,{type:"button",className:o[b.NextMonthButton],tabIndex:r?void 0:-1,"aria-disabled":r?void 0:!0,"aria-label":d(r),onClick:f},m.createElement(a.Chevron,{disabled:r?void 0:!0,orientation:"right",className:o[b.Chevron]})))}function Br(e){const{components:t}=xe();return m.createElement(t.Button,{...e})}function Rr(e){return m.createElement("option",{...e})}function Ar(e){const{components:t}=xe();return m.createElement(t.Button,{...e})}function zr(e){const{rootRef:t,...s}=e;return m.createElement("div",{...s,ref:t})}function qr(e){return m.createElement("select",{...e})}function Hr(e){const{week:t,...s}=e;return m.createElement("tr",{...s})}function $r(e){return m.createElement("th",{...e})}function Ur(e){return m.createElement("thead",{"aria-hidden":!0},m.createElement("tr",{...e}))}function Gr(e){const{week:t,...s}=e;return m.createElement("th",{...s})}function Kr(e){return m.createElement("th",{...e})}function Vr(e){return m.createElement("tbody",{...e})}function Zr(e){const{components:t}=xe();return m.createElement(t.Dropdown,{...e})}const Xr=Object.freeze(Object.defineProperty({__proto__:null,Button:wr,CaptionLabel:Sr,Chevron:Or,Day:Cr,DayButton:Nr,Dropdown:jr,DropdownNav:Wr,Footer:Tr,Month:Er,MonthCaption:_r,MonthGrid:Ir,Months:Yr,MonthsDropdown:Fr,Nav:Pr,NextMonthButton:Br,Option:Rr,PreviousMonthButton:Ar,Root:zr,Select:qr,Week:Hr,WeekNumber:Gr,WeekNumberHeader:Kr,Weekday:$r,Weekdays:Ur,Weeks:Vr,YearsDropdown:Zr},Symbol.toStringTag,{value:"Module"}));function se(e,t,s=!1,n=ee){let{from:r,to:l}=e;const{differenceInCalendarDays:a,isSameDay:o}=n;return r&&l?(a(l,r)<0&&([r,l]=[l,r]),a(t,r)>=(s?1:0)&&a(l,t)>=(s?1:0)):!s&&l?o(l,t):!s&&r?o(r,t):!1}function Qe(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function Se(e){return!!(e&&typeof e=="object"&&"from"in e)}function Je(e){return!!(e&&typeof e=="object"&&"after"in e)}function Le(e){return!!(e&&typeof e=="object"&&"before"in e)}function $t(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function Ut(e,t){return Array.isArray(e)&&e.every(t.isDate)}function re(e,t,s=ee){const n=Array.isArray(t)?t:[t],{isSameDay:r,differenceInCalendarDays:l,isAfter:a}=s;return n.some(o=>{if(typeof o=="boolean")return o;if(s.isDate(o))return r(e,o);if(Ut(o,s))return o.some(i=>r(e,i));if(Se(o))return se(o,e,!1,s);if($t(o))return Array.isArray(o.dayOfWeek)?o.dayOfWeek.includes(e.getDay()):o.dayOfWeek===e.getDay();if(Qe(o)){const i=l(o.before,e),d=l(o.after,e),f=i>0,u=d<0;return a(o.before,o.after)?u&&f:f||u}return Je(o)?l(e,o.after)>0:Le(o)?l(o.before,e)>0:typeof o=="function"?o(e):!1})}function Qr(e,t,s,n,r){const{disabled:l,hidden:a,modifiers:o,showOutsideDays:i,broadcastCalendar:d,today:f=r.today()}=t,{isSameDay:u,isSameMonth:h,startOfMonth:y,isBefore:S,endOfMonth:v,isAfter:p}=r,k=s&&y(s),W=n&&v(n),w={[Y.focused]:[],[Y.outside]:[],[Y.disabled]:[],[Y.hidden]:[],[Y.today]:[]},M={};for(const x of e){const{date:g,displayMonth:N}=x,T=!!(N&&!h(g,N)),P=!!(k&&S(g,k)),F=!!(W&&p(g,W)),Q=!!(l&&re(g,l,r)),ae=!!(a&&re(g,a,r))||P||F||!d&&!i&&T||d&&i===!1&&T,te=u(g,f);T&&w.outside.push(x),Q&&w.disabled.push(x),ae&&w.hidden.push(x),te&&w.today.push(x),o&&Object.keys(o).forEach($=>{const me=o?.[$];me&&re(g,me,r)&&(M[$]?M[$].push(x):M[$]=[x])})}return x=>{const g={[Y.focused]:!1,[Y.disabled]:!1,[Y.hidden]:!1,[Y.outside]:!1,[Y.today]:!1},N={};for(const T in w){const P=w[T];g[T]=P.some(F=>F===x)}for(const T in M)N[T]=M[T].some(P=>P===x);return{...g,...N}}}function Jr(e,t,s={}){return Object.entries(e).filter(([,r])=>r===!0).reduce((r,[l])=>(s[l]?r.push(s[l]):t[Y[l]]?r.push(t[Y[l]]):t[X[l]]&&r.push(t[X[l]]),r),[t[b.Day]])}function Lr(e){return{...Xr,...e}}function eo(e){const t={"data-mode":e.mode??void 0,"data-required":"required"in e?e.required:void 0,"data-multiple-months":e.numberOfMonths&&e.numberOfMonths>1||void 0,"data-week-numbers":e.showWeekNumber||void 0,"data-broadcast-calendar":e.broadcastCalendar||void 0,"data-nav-layout":e.navLayout||void 0};return Object.entries(e).forEach(([s,n])=>{s.startsWith("data-")&&(t[s]=n)}),t}function et(){const e={};for(const t in b)e[b[t]]=`rdp-${b[t]}`;for(const t in Y)e[Y[t]]=`rdp-${Y[t]}`;for(const t in X)e[X[t]]=`rdp-${X[t]}`;for(const t in z)e[z[t]]=`rdp-${z[t]}`;return e}function Gt(e,t,s){return(s??new H(t)).formatMonthYear(e)}const to=Gt;function no(e,t,s){return(s??new H(t)).format(e,"d")}function so(e,t=ee){return t.format(e,"LLLL")}function ro(e,t,s){return(s??new H(t)).format(e,"cccccc")}function oo(e,t=ee){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function ao(){return""}function Kt(e,t=ee){return t.format(e,"yyyy")}const io=Kt,lo=Object.freeze(Object.defineProperty({__proto__:null,formatCaption:Gt,formatDay:no,formatMonthCaption:to,formatMonthDropdown:so,formatWeekNumber:oo,formatWeekNumberHeader:ao,formatWeekdayName:ro,formatYearCaption:io,formatYearDropdown:Kt},Symbol.toStringTag,{value:"Module"}));function co(e){return e?.formatMonthCaption&&!e.formatCaption&&(e.formatCaption=e.formatMonthCaption),e?.formatYearCaption&&!e.formatYearDropdown&&(e.formatYearDropdown=e.formatYearCaption),{...lo,...e}}function tt(e,t,s,n){let r=(n??new H(s)).format(e,"PPPP");return t.today&&(r=`Today, ${r}`),t.selected&&(r=`${r}, selected`),r}const uo=tt;function nt(e,t,s){return(s??new H(t)).formatMonthYear(e)}const fo=nt;function Vt(e,t,s,n){let r=(n??new H(s)).format(e,"PPPP");return t?.today&&(r=`Today, ${r}`),r}function Zt(e){return"Choose the Month"}function Xt(){return""}const ho="Go to the Next Month";function Qt(e,t){return ho}function Jt(e){return"Go to the Previous Month"}function Lt(e,t,s){return(s??new H(t)).format(e,"cccc")}function en(e,t){return`Week ${e}`}function tn(e){return"Week Number"}function nn(e){return"Choose the Year"}const mo=Object.freeze(Object.defineProperty({__proto__:null,labelCaption:fo,labelDay:uo,labelDayButton:tt,labelGrid:nt,labelGridcell:Vt,labelMonthDropdown:Zt,labelNav:Xt,labelNext:Qt,labelPrevious:Jt,labelWeekNumber:en,labelWeekNumberHeader:tn,labelWeekday:Lt,labelYearDropdown:nn},Symbol.toStringTag,{value:"Module"})),V=(e,t,s)=>t||(s?typeof s=="function"?s:(...n)=>s:e);function go(e,t){const s=t.locale?.labels??{};return{...mo,...e??{},labelDayButton:V(tt,e?.labelDayButton,s.labelDayButton),labelMonthDropdown:V(Zt,e?.labelMonthDropdown,s.labelMonthDropdown),labelNext:V(Qt,e?.labelNext,s.labelNext),labelPrevious:V(Jt,e?.labelPrevious,s.labelPrevious),labelWeekNumber:V(en,e?.labelWeekNumber,s.labelWeekNumber),labelYearDropdown:V(nn,e?.labelYearDropdown,s.labelYearDropdown),labelGrid:V(nt,e?.labelGrid,s.labelGrid),labelGridcell:V(Vt,e?.labelGridcell,s.labelGridcell),labelNav:V(Xt,e?.labelNav,s.labelNav),labelWeekNumberHeader:V(tn,e?.labelWeekNumberHeader,s.labelWeekNumberHeader),labelWeekday:V(Lt,e?.labelWeekday,s.labelWeekday)}}function yo(e,t,s,n,r){const{startOfMonth:l,startOfYear:a,endOfYear:o,eachMonthOfInterval:i,getMonth:d}=r;return i({start:a(e),end:o(e)}).map(h=>{const y=n.formatMonthDropdown(h,r),S=d(h),v=t&&h<l(t)||s&&h>l(s)||!1;return{value:S,label:y,disabled:v}})}function po(e,t={},s={}){let n={...t?.[b.Day]};return Object.entries(e).filter(([,r])=>r===!0).forEach(([r])=>{n={...n,...s?.[r]}}),n}function bo(e,t,s,n){const r=n??e.today(),l=s?e.startOfBroadcastWeek(r,e):t?e.startOfISOWeek(r):e.startOfWeek(r),a=[];for(let o=0;o<7;o++){const i=e.addDays(l,o);a.push(i)}return a}function vo(e,t,s,n,r=!1){if(!e||!t)return;const{startOfYear:l,endOfYear:a,eachYearOfInterval:o,getYear:i}=n,d=l(e),f=a(t),u=o({start:d,end:f});return r&&u.reverse(),u.map(h=>{const y=s.formatYearDropdown(h,n);return{value:i(h),label:y,disabled:!1}})}function xo(e,t={}){const{weekStartsOn:s,locale:n}=t,r=s??n?.options?.weekStartsOn??0,l=o=>{const i=typeof o=="number"||typeof o=="string"?new Date(o):o;return new B(i.getFullYear(),i.getMonth(),i.getDate(),12,0,0,e)},a=o=>{const i=l(o);return new Date(i.getFullYear(),i.getMonth(),i.getDate(),0,0,0,0)};return{today:()=>l(B.tz(e)),newDate:(o,i,d)=>new B(o,i,d,12,0,0,e),startOfDay:o=>l(o),startOfWeek:(o,i)=>{const d=l(o),f=i?.weekStartsOn??r,u=(d.getDay()-f+7)%7;return d.setDate(d.getDate()-u),d},startOfISOWeek:o=>{const i=l(o),d=(i.getDay()-1+7)%7;return i.setDate(i.getDate()-d),i},startOfMonth:o=>{const i=l(o);return i.setDate(1),i},startOfYear:o=>{const i=l(o);return i.setMonth(0,1),i},endOfWeek:(o,i)=>{const d=l(o),h=(((i?.weekStartsOn??r)+6)%7-d.getDay()+7)%7;return d.setDate(d.getDate()+h),d},endOfISOWeek:o=>{const i=l(o),d=(7-i.getDay())%7;return i.setDate(i.getDate()+d),i},endOfMonth:o=>{const i=l(o);return i.setMonth(i.getMonth()+1,0),i},endOfYear:o=>{const i=l(o);return i.setMonth(11,31),i},eachMonthOfInterval:o=>{const i=l(o.start),d=l(o.end),f=[],u=new B(i.getFullYear(),i.getMonth(),1,12,0,0,e),h=d.getFullYear()*12+d.getMonth();for(;u.getFullYear()*12+u.getMonth()<=h;)f.push(new B(u,e)),u.setMonth(u.getMonth()+1,1);return f},addDays:(o,i)=>{const d=l(o);return d.setDate(d.getDate()+i),d},addWeeks:(o,i)=>{const d=l(o);return d.setDate(d.getDate()+i*7),d},addMonths:(o,i)=>{const d=l(o);return d.setMonth(d.getMonth()+i),d},addYears:(o,i)=>{const d=l(o);return d.setFullYear(d.getFullYear()+i),d},eachYearOfInterval:o=>{const i=l(o.start),d=l(o.end),f=[],u=new B(i.getFullYear(),0,1,12,0,0,e);for(;u.getFullYear()<=d.getFullYear();)f.push(new B(u,e)),u.setFullYear(u.getFullYear()+1,0,1);return f},getWeek:(o,i)=>{const d=a(o);return It(d,{weekStartsOn:i?.weekStartsOn??r,firstWeekContainsDate:i?.firstWeekContainsDate??n?.options?.firstWeekContainsDate??1})},getISOWeek:o=>{const i=a(o);return _t(i)},differenceInCalendarDays:(o,i)=>{const d=a(o),f=a(i);return Et(d,f)},differenceInCalendarMonths:(o,i)=>{const d=a(o),f=a(i);return Ft(d,f)}}}const De=e=>e instanceof HTMLElement?e:null,Be=e=>[...e.querySelectorAll("[data-animated-month]")??[]],Do=e=>De(e.querySelector("[data-animated-month]")),Re=e=>De(e.querySelector("[data-animated-caption]")),Ae=e=>De(e.querySelector("[data-animated-weeks]")),ko=e=>De(e.querySelector("[data-animated-nav]")),Mo=e=>De(e.querySelector("[data-animated-weekdays]"));function wo(e,t,{classNames:s,months:n,focused:r,dateLib:l}){const a=O.useRef(null),o=O.useRef(n),i=O.useRef(!1);O.useLayoutEffect(()=>{const d=o.current;if(o.current=n,!t||!e.current||!(e.current instanceof HTMLElement)||n.length===0||d.length===0||n.length!==d.length)return;const f=l.isSameMonth(n[0].date,d[0].date),u=l.isAfter(n[0].date,d[0].date),h=u?s[z.caption_after_enter]:s[z.caption_before_enter],y=u?s[z.weeks_after_enter]:s[z.weeks_before_enter],S=a.current,v=e.current.cloneNode(!0);if(v instanceof HTMLElement?(Be(v).forEach(w=>{if(!(w instanceof HTMLElement))return;const M=Do(w);M&&w.contains(M)&&w.removeChild(M);const x=Re(w);x&&x.classList.remove(h);const g=Ae(w);g&&g.classList.remove(y)}),a.current=v):a.current=null,i.current||f||r)return;const p=S instanceof HTMLElement?Be(S):[],k=Be(e.current);if(k?.every(W=>W instanceof HTMLElement)&&p&&p.every(W=>W instanceof HTMLElement)){i.current=!0,e.current.style.isolation="isolate";const W=ko(e.current);W&&(W.style.zIndex="1"),k.forEach((w,M)=>{const x=p[M];if(!x)return;w.style.position="relative",w.style.overflow="hidden";const g=Re(w);g&&g.classList.add(h);const N=Ae(w);N&&N.classList.add(y);const T=()=>{i.current=!1,e.current&&(e.current.style.isolation=""),W&&(W.style.zIndex=""),g&&g.classList.remove(h),N&&N.classList.remove(y),w.style.position="",w.style.overflow="",w.contains(x)&&w.removeChild(x)};x.style.pointerEvents="none",x.style.position="absolute",x.style.overflow="hidden",x.setAttribute("aria-hidden","true");const P=Mo(x);P&&(P.style.opacity="0");const F=Re(x);F&&(F.classList.add(u?s[z.caption_before_exit]:s[z.caption_after_exit]),F.addEventListener("animationend",T));const Q=Ae(x);Q&&Q.classList.add(u?s[z.weeks_before_exit]:s[z.weeks_after_exit]),w.insertBefore(x,w.firstChild)})}})}function So(e,t,s,n){const r=e[0],l=e[e.length-1],{ISOWeek:a,fixedWeeks:o,broadcastCalendar:i}=s??{},{addDays:d,differenceInCalendarDays:f,differenceInCalendarMonths:u,endOfBroadcastWeek:h,endOfISOWeek:y,endOfMonth:S,endOfWeek:v,isAfter:p,startOfBroadcastWeek:k,startOfISOWeek:W,startOfWeek:w}=n,M=i?k(r,n):a?W(r):w(r),x=i?h(l):a?y(S(l)):v(S(l)),g=t&&(i?h(t):a?y(t):v(t)),N=g&&p(x,g)?g:x,T=f(N,M),P=u(l,r)+1,F=[];for(let te=0;te<=T;te++){const $=d(M,te);F.push($)}const ae=(i?35:42)*P;if(o&&F.length<ae){const te=ae-F.length;for(let $=0;$<te;$++){const me=d(F[F.length-1],1);F.push(me)}}return F}function Oo(e){const t=[];return e.reduce((s,n)=>{const r=n.weeks.reduce((l,a)=>l.concat(a.days.slice()),t.slice());return s.concat(r.slice())},t.slice())}function Co(e,t,s,n){const{numberOfMonths:r=1}=s,l=[];for(let a=0;a<r;a++){const o=n.addMonths(e,a);if(t&&o>t)break;l.push(o)}return l}function pt(e,t,s,n){const{month:r,defaultMonth:l,today:a=n.today(),numberOfMonths:o=1}=e;let i=r||l||a;const{differenceInCalendarMonths:d,addMonths:f,startOfMonth:u}=n;if(s&&d(s,i)<o-1){const h=-1*(o-1);i=f(s,h)}return t&&d(i,t)<0&&(i=t),u(i)}function No(e,t,s,n){const{addDays:r,endOfBroadcastWeek:l,endOfISOWeek:a,endOfMonth:o,endOfWeek:i,getISOWeek:d,getWeek:f,startOfBroadcastWeek:u,startOfISOWeek:h,startOfWeek:y}=n,S=e.reduce((v,p)=>{const k=s.broadcastCalendar?u(p,n):s.ISOWeek?h(p):y(p),W=s.broadcastCalendar?l(p):s.ISOWeek?a(o(p)):i(o(p)),w=t.filter(N=>N>=k&&N<=W),M=s.broadcastCalendar?35:42;if(s.fixedWeeks&&w.length<M){const N=t.filter(T=>{const P=M-w.length;return T>W&&T<=r(W,P)});w.push(...N)}const x=w.reduce((N,T)=>{const P=s.ISOWeek?d(T):f(T),F=N.find(ae=>ae.weekNumber===P),Q=new qt(T,p,n);return F?F.days.push(Q):N.push(new Mr(P,[Q])),N},[]),g=new kr(p,x);return v.push(g),v},[]);return s.reverseMonths?S.reverse():S}function jo(e,t){let{startMonth:s,endMonth:n}=e;const{startOfYear:r,startOfDay:l,startOfMonth:a,endOfMonth:o,addYears:i,endOfYear:d,newDate:f,today:u}=t,{fromYear:h,toYear:y,fromMonth:S,toMonth:v}=e;!s&&S&&(s=S),!s&&h&&(s=t.newDate(h,0,1)),!n&&v&&(n=v),!n&&y&&(n=f(y,11,31));const p=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return s?s=a(s):h?s=f(h,0,1):!s&&p&&(s=r(i(e.today??u(),-100))),n?n=o(n):y?n=f(y,11,31):!n&&p&&(n=d(e.today??u())),[s&&l(s),n&&l(n)]}function Wo(e,t,s,n){if(s.disableNavigation)return;const{pagedNavigation:r,numberOfMonths:l=1}=s,{startOfMonth:a,addMonths:o,differenceInCalendarMonths:i}=n,d=r?l:1,f=a(e);if(!t)return o(f,d);if(!(i(t,e)<l))return o(f,d)}function To(e,t,s,n){if(s.disableNavigation)return;const{pagedNavigation:r,numberOfMonths:l}=s,{startOfMonth:a,addMonths:o,differenceInCalendarMonths:i}=n,d=r?l??1:1,f=a(e);if(!t)return o(f,-d);if(!(i(f,t)<=0))return o(f,-d)}function Eo(e){const t=[];return e.reduce((s,n)=>s.concat(n.weeks.slice()),t.slice())}function Oe(e,t){const[s,n]=O.useState(e);return[t===void 0?s:t,n]}function _o(e,t){const[s,n]=jo(e,t),{startOfMonth:r,endOfMonth:l}=t,a=pt(e,s,n,t),[o,i]=Oe(a,e.month?a:void 0);O.useEffect(()=>{const M=pt(e,s,n,t);i(M)},[e.timeZone]);const{months:d,weeks:f,days:u,previousMonth:h,nextMonth:y}=O.useMemo(()=>{const M=Co(o,n,{numberOfMonths:e.numberOfMonths},t),x=So(M,e.endMonth?l(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),g=No(M,x,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t),N=Eo(g),T=Oo(g),P=To(o,s,e,t),F=Wo(o,n,e,t);return{months:g,weeks:N,days:T,previousMonth:P,nextMonth:F}},[t,o.getTime(),n?.getTime(),s?.getTime(),e.disableNavigation,e.broadcastCalendar,e.endMonth?.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:S,onMonthChange:v}=e,p=M=>f.some(x=>x.days.some(g=>g.isEqualTo(M))),k=M=>{if(S)return;let x=r(M);s&&x<r(s)&&(x=r(s)),n&&x>r(n)&&(x=r(n)),i(x),v?.(x)};return{months:d,weeks:f,days:u,navStart:s,navEnd:n,previousMonth:h,nextMonth:y,goToMonth:k,goToDay:M=>{p(M)||k(M.date)}}}var J;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})(J||(J={}));function bt(e){return!e[Y.disabled]&&!e[Y.hidden]&&!e[Y.outside]}function Io(e,t,s,n){let r,l=-1;for(const a of e){const o=t(a);bt(o)&&(o[Y.focused]&&l<J.FocusedModifier?(r=a,l=J.FocusedModifier):n?.isEqualTo(a)&&l<J.LastFocused?(r=a,l=J.LastFocused):s(a.date)&&l<J.Selected?(r=a,l=J.Selected):o[Y.today]&&l<J.Today&&(r=a,l=J.Today))}return r||(r=e.find(a=>bt(t(a)))),r}function Yo(e,t,s,n,r,l,a){const{ISOWeek:o,broadcastCalendar:i}=l,{addDays:d,addMonths:f,addWeeks:u,addYears:h,endOfBroadcastWeek:y,endOfISOWeek:S,endOfWeek:v,max:p,min:k,startOfBroadcastWeek:W,startOfISOWeek:w,startOfWeek:M}=a;let g={day:d,week:u,month:f,year:h,startOfWeek:N=>i?W(N,a):o?w(N):M(N),endOfWeek:N=>i?y(N):o?S(N):v(N)}[e](s,t==="after"?1:-1);return t==="before"&&n?g=p([n,g]):t==="after"&&r&&(g=k([r,g])),g}function sn(e,t,s,n,r,l,a,o=0){if(o>365)return;const i=Yo(e,t,s.date,n,r,l,a),d=!!(l.disabled&&re(i,l.disabled,a)),f=!!(l.hidden&&re(i,l.hidden,a)),u=i,h=new qt(i,u,a);return!d&&!f?h:sn(e,t,h,n,r,l,a,o+1)}function Fo(e,t,s,n,r){const{autoFocus:l}=e,[a,o]=O.useState(),i=Io(t.days,s,n||(()=>!1),a),[d,f]=O.useState(l?i:void 0);return{isFocusTarget:v=>!!i?.isEqualTo(v),setFocused:f,focused:d,blur:()=>{o(d),f(void 0)},moveFocus:(v,p)=>{if(!d)return;const k=sn(v,p,d,t.navStart,t.navEnd,e,r);k&&(e.disableNavigation&&!t.days.some(w=>w.isEqualTo(k))||(t.goToDay(k),f(k)))}}}function Po(e,t){const{selected:s,required:n,onSelect:r}=e,[l,a]=Oe(s,r?s:void 0),o=r?s:l,{isSameDay:i}=t,d=y=>o?.some(S=>i(S,y))??!1,{min:f,max:u}=e;return{selected:o,select:(y,S,v)=>{let p=[...o??[]];if(d(y)){if(o?.length===f||n&&o?.length===1)return;p=o?.filter(k=>!i(k,y))}else o?.length===u?p=[y]:p=[...p,y];return r||a(p),r?.(p,y,S,v),p},isSelected:d}}function Bo(e,t,s=0,n=0,r=!1,l=ee){const{from:a,to:o}=t||{},{isSameDay:i,isAfter:d,isBefore:f}=l;let u;if(!a&&!o)u={from:e,to:s>0?void 0:e};else if(a&&!o)i(a,e)?s===0?u={from:a,to:e}:r?u={from:a,to:void 0}:u=void 0:f(e,a)?u={from:e,to:a}:u={from:a,to:e};else if(a&&o)if(i(a,e)&&i(o,e))r?u={from:a,to:o}:u=void 0;else if(i(a,e))u={from:a,to:s>0?void 0:e};else if(i(o,e))u={from:e,to:s>0?void 0:e};else if(f(e,a))u={from:e,to:o};else if(d(e,a))u={from:a,to:e};else if(d(e,o))u={from:a,to:e};else throw new Error("Invalid range");if(u?.from&&u?.to){const h=l.differenceInCalendarDays(u.to,u.from);n>0&&h>n?u={from:e,to:void 0}:s>1&&h<s&&(u={from:e,to:void 0})}return u}function Ro(e,t,s=ee){const n=Array.isArray(t)?t:[t];let r=e.from;const l=s.differenceInCalendarDays(e.to,e.from),a=Math.min(l,6);for(let o=0;o<=a;o++){if(n.includes(r.getDay()))return!0;r=s.addDays(r,1)}return!1}function vt(e,t,s=ee){return se(e,t.from,!1,s)||se(e,t.to,!1,s)||se(t,e.from,!1,s)||se(t,e.to,!1,s)}function Ao(e,t,s=ee){const n=Array.isArray(t)?t:[t];if(n.filter(o=>typeof o!="function").some(o=>typeof o=="boolean"?o:s.isDate(o)?se(e,o,!1,s):Ut(o,s)?o.some(i=>se(e,i,!1,s)):Se(o)?o.from&&o.to?vt(e,{from:o.from,to:o.to},s):!1:$t(o)?Ro(e,o.dayOfWeek,s):Qe(o)?s.isAfter(o.before,o.after)?vt(e,{from:s.addDays(o.after,1),to:s.addDays(o.before,-1)},s):re(e.from,o,s)||re(e.to,o,s):Je(o)||Le(o)?re(e.from,o,s)||re(e.to,o,s):!1))return!0;const a=n.filter(o=>typeof o=="function");if(a.length){let o=e.from;const i=s.differenceInCalendarDays(e.to,e.from);for(let d=0;d<=i;d++){if(a.some(f=>f(o)))return!0;o=s.addDays(o,1)}}return!1}function zo(e,t){const{disabled:s,excludeDisabled:n,selected:r,required:l,onSelect:a}=e,[o,i]=Oe(r,a?r:void 0),d=a?r:o;return{selected:d,select:(h,y,S)=>{const{min:v,max:p}=e,k=h?Bo(h,d,v,p,l,t):void 0;return n&&s&&k?.from&&k.to&&Ao({from:k.from,to:k.to},s,t)&&(k.from=h,k.to=void 0),a||i(k),a?.(k,h,y,S),k},isSelected:h=>d&&se(d,h,!1,t)}}function qo(e,t){const{selected:s,required:n,onSelect:r}=e,[l,a]=Oe(s,r?s:void 0),o=r?s:l,{isSameDay:i}=t;return{selected:o,select:(u,h,y)=>{let S=u;return!n&&o&&o&&i(u,o)&&(S=void 0),r||a(S),r?.(S,u,h,y),S},isSelected:u=>o?i(o,u):!1}}function Ho(e,t){const s=qo(e,t),n=Po(e,t),r=zo(e,t);switch(e.mode){case"single":return s;case"multiple":return n;case"range":return r;default:return}}function U(e,t){return e instanceof B&&e.timeZone===t?e:new B(e,t)}function ge(e,t,s){return U(e,t)}function xt(e,t,s){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?ge(e,t):Array.isArray(e)?e.map(n=>n instanceof Date?ge(n,t):n):Se(e)?{...e,from:e.from?U(e.from,t):e.from,to:e.to?U(e.to,t):e.to}:Qe(e)?{before:ge(e.before,t),after:ge(e.after,t)}:Je(e)?{after:ge(e.after,t)}:Le(e)?{before:ge(e.before,t)}:e}function ze(e,t,s){return e&&(Array.isArray(e)?e.map(n=>xt(n,t)):xt(e,t))}function $o(e){let t=e;const s=t.timeZone;if(s&&(t={...e,timeZone:s},t.today&&(t.today=U(t.today,s)),t.month&&(t.month=U(t.month,s)),t.defaultMonth&&(t.defaultMonth=U(t.defaultMonth,s)),t.startMonth&&(t.startMonth=U(t.startMonth,s)),t.endMonth&&(t.endMonth=U(t.endMonth,s)),t.mode==="single"&&t.selected?t.selected=U(t.selected,s):t.mode==="multiple"&&t.selected?t.selected=t.selected?.map(C=>U(C,s)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?U(t.selected.from,s):t.selected.from,to:t.selected.to?U(t.selected.to,s):t.selected.to}),t.disabled!==void 0&&(t.disabled=ze(t.disabled,s)),t.hidden!==void 0&&(t.hidden=ze(t.hidden,s)),t.modifiers)){const C={};Object.keys(t.modifiers).forEach(I=>{C[I]=ze(t.modifiers?.[I],s)}),t.modifiers=C}const{components:n,formatters:r,labels:l,dateLib:a,locale:o,classNames:i}=O.useMemo(()=>{const C={...zt,...t.locale},I=t.broadcastCalendar?1:t.weekStartsOn,D=t.noonSafe&&t.timeZone?xo(t.timeZone,{weekStartsOn:I,locale:C}):void 0,E=t.dateLib&&D?{...D,...t.dateLib}:t.dateLib??D,A=new H({locale:C,weekStartsOn:I,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},E);return{dateLib:A,components:Lr(t.components),formatters:co(t.formatters),labels:go(t.labels,A.options),locale:C,classNames:{...et(),...t.classNames}}},[t.locale,t.broadcastCalendar,t.weekStartsOn,t.firstWeekContainsDate,t.useAdditionalWeekYearTokens,t.useAdditionalDayOfYearTokens,t.timeZone,t.numerals,t.dateLib,t.noonSafe,t.components,t.formatters,t.labels,t.classNames]);t.today||(t={...t,today:a.today()});const{captionLayout:d,mode:f,navLayout:u,numberOfMonths:h=1,onDayBlur:y,onDayClick:S,onDayFocus:v,onDayKeyDown:p,onDayMouseEnter:k,onDayMouseLeave:W,onNextClick:w,onPrevClick:M,showWeekNumber:x,styles:g}=t,{formatCaption:N,formatDay:T,formatMonthDropdown:P,formatWeekNumber:F,formatWeekNumberHeader:Q,formatWeekdayName:ae,formatYearDropdown:te}=r,$=_o(t,a),{days:me,months:ke,navStart:Ce,navEnd:Ne,previousMonth:G,nextMonth:K,goToMonth:ne}=$,je=Qr(me,t,Ce,Ne,a),{isSelected:We,select:Te,selected:Me}=Ho(t,a)??{},{blur:st,focused:rt,isFocusTarget:rn,moveFocus:ot,setFocused:we}=Fo(t,$,je,We??(()=>!1),a),{labelDayButton:on,labelGridcell:an,labelGrid:ln,labelMonthDropdown:cn,labelNav:at,labelPrevious:dn,labelNext:un,labelWeekday:fn,labelWeekNumber:hn,labelWeekNumberHeader:mn,labelYearDropdown:gn}=l,yn=O.useMemo(()=>bo(a,t.ISOWeek,t.broadcastCalendar,t.today),[a,t.ISOWeek,t.broadcastCalendar,t.today]),it=f!==void 0||S!==void 0,Ee=O.useCallback(()=>{G&&(ne(G),M?.(G))},[G,ne,M]),_e=O.useCallback(()=>{K&&(ne(K),w?.(K))},[ne,K,w]),pn=O.useCallback((C,I)=>D=>{D.preventDefault(),D.stopPropagation(),we(C),!I.disabled&&(Te?.(C.date,I,D),S?.(C.date,I,D))},[Te,S,we]),bn=O.useCallback((C,I)=>D=>{we(C),v?.(C.date,I,D)},[v,we]),vn=O.useCallback((C,I)=>D=>{st(),y?.(C.date,I,D)},[st,y]),xn=O.useCallback((C,I)=>D=>{const E={ArrowLeft:[D.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[D.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[D.shiftKey?"year":"week","after"],ArrowUp:[D.shiftKey?"year":"week","before"],PageUp:[D.shiftKey?"year":"month","before"],PageDown:[D.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(E[D.key]){D.preventDefault(),D.stopPropagation();const[A,j]=E[D.key];ot(A,j)}p?.(C.date,I,D)},[ot,p,t.dir]),Dn=O.useCallback((C,I)=>D=>{k?.(C.date,I,D)},[k]),kn=O.useCallback((C,I)=>D=>{W?.(C.date,I,D)},[W]),Mn=O.useCallback(C=>I=>{const D=Number(I.target.value),E=a.setMonth(a.startOfMonth(C),D);ne(E)},[a,ne]),wn=O.useCallback(C=>I=>{const D=Number(I.target.value),E=a.setYear(a.startOfMonth(C),D);ne(E)},[a,ne]),{className:Sn,style:On}=O.useMemo(()=>({className:[i[b.Root],t.className].filter(Boolean).join(" "),style:{...g?.[b.Root],...t.style}}),[i,t.className,t.style,g]),Cn=eo(t),lt=O.useRef(null);wo(lt,!!t.animate,{classNames:i,months:ke,focused:rt,dateLib:a});const Nn={dayPickerProps:t,selected:Me,select:Te,isSelected:We,months:ke,nextMonth:K,previousMonth:G,goToMonth:ne,getModifiers:je,components:n,classNames:i,styles:g,labels:l,formatters:r};return m.createElement(Ht.Provider,{value:Nn},m.createElement(n.Root,{rootRef:t.animate?lt:void 0,className:Sn,style:On,dir:t.dir,id:t.id,lang:t.lang,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t["aria-label"],"aria-labelledby":t["aria-labelledby"],...Cn},m.createElement(n.Months,{className:i[b.Months],style:g?.[b.Months]},!t.hideNavigation&&!u&&m.createElement(n.Nav,{"data-animated-nav":t.animate?"true":void 0,className:i[b.Nav],style:g?.[b.Nav],"aria-label":at(),onPreviousClick:Ee,onNextClick:_e,previousMonth:G,nextMonth:K}),ke.map((C,I)=>m.createElement(n.Month,{"data-animated-month":t.animate?"true":void 0,className:i[b.Month],style:g?.[b.Month],key:I,displayIndex:I,calendarMonth:C},u==="around"&&!t.hideNavigation&&I===0&&m.createElement(n.PreviousMonthButton,{type:"button",className:i[b.PreviousMonthButton],tabIndex:G?void 0:-1,"aria-disabled":G?void 0:!0,"aria-label":dn(G),onClick:Ee,"data-animated-button":t.animate?"true":void 0},m.createElement(n.Chevron,{disabled:G?void 0:!0,className:i[b.Chevron],orientation:t.dir==="rtl"?"right":"left"})),m.createElement(n.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:i[b.MonthCaption],style:g?.[b.MonthCaption],calendarMonth:C,displayIndex:I},d?.startsWith("dropdown")?m.createElement(n.DropdownNav,{className:i[b.Dropdowns],style:g?.[b.Dropdowns]},(()=>{const D=d==="dropdown"||d==="dropdown-months"?m.createElement(n.MonthsDropdown,{key:"month",className:i[b.MonthsDropdown],"aria-label":cn(),classNames:i,components:n,disabled:!!t.disableNavigation,onChange:Mn(C.date),options:yo(C.date,Ce,Ne,r,a),style:g?.[b.Dropdown],value:a.getMonth(C.date)}):m.createElement("span",{key:"month"},P(C.date,a)),E=d==="dropdown"||d==="dropdown-years"?m.createElement(n.YearsDropdown,{key:"year",className:i[b.YearsDropdown],"aria-label":gn(a.options),classNames:i,components:n,disabled:!!t.disableNavigation,onChange:wn(C.date),options:vo(Ce,Ne,r,a,!!t.reverseYears),style:g?.[b.Dropdown],value:a.getYear(C.date)}):m.createElement("span",{key:"year"},te(C.date,a));return a.getMonthYearOrder()==="year-first"?[E,D]:[D,E]})(),m.createElement("span",{role:"status","aria-live":"polite",style:{border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap",wordWrap:"normal"}},N(C.date,a.options,a))):m.createElement(n.CaptionLabel,{className:i[b.CaptionLabel],role:"status","aria-live":"polite"},N(C.date,a.options,a))),u==="around"&&!t.hideNavigation&&I===h-1&&m.createElement(n.NextMonthButton,{type:"button",className:i[b.NextMonthButton],tabIndex:K?void 0:-1,"aria-disabled":K?void 0:!0,"aria-label":un(K),onClick:_e,"data-animated-button":t.animate?"true":void 0},m.createElement(n.Chevron,{disabled:K?void 0:!0,className:i[b.Chevron],orientation:t.dir==="rtl"?"left":"right"})),I===h-1&&u==="after"&&!t.hideNavigation&&m.createElement(n.Nav,{"data-animated-nav":t.animate?"true":void 0,className:i[b.Nav],style:g?.[b.Nav],"aria-label":at(),onPreviousClick:Ee,onNextClick:_e,previousMonth:G,nextMonth:K}),m.createElement(n.MonthGrid,{role:"grid","aria-multiselectable":f==="multiple"||f==="range","aria-label":ln(C.date,a.options,a)||void 0,className:i[b.MonthGrid],style:g?.[b.MonthGrid]},!t.hideWeekdays&&m.createElement(n.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:i[b.Weekdays],style:g?.[b.Weekdays]},x&&m.createElement(n.WeekNumberHeader,{"aria-label":mn(a.options),className:i[b.WeekNumberHeader],style:g?.[b.WeekNumberHeader],scope:"col"},Q()),yn.map(D=>m.createElement(n.Weekday,{"aria-label":fn(D,a.options,a),className:i[b.Weekday],key:String(D),style:g?.[b.Weekday],scope:"col"},ae(D,a.options,a)))),m.createElement(n.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:i[b.Weeks],style:g?.[b.Weeks]},C.weeks.map(D=>m.createElement(n.Week,{className:i[b.Week],key:D.weekNumber,style:g?.[b.Week],week:D},x&&m.createElement(n.WeekNumber,{week:D,style:g?.[b.WeekNumber],"aria-label":hn(D.weekNumber,{locale:o}),className:i[b.WeekNumber],scope:"row",role:"rowheader"},F(D.weekNumber,a)),D.days.map(E=>{const{date:A}=E,j=je(E);if(j[Y.focused]=!j.hidden&&!!rt?.isEqualTo(E),j[X.selected]=We?.(A)||j.selected,Se(Me)){const{from:Ie,to:Ye}=Me;j[X.range_start]=!!(Ie&&Ye&&a.isSameDay(A,Ie)),j[X.range_end]=!!(Ie&&Ye&&a.isSameDay(A,Ye)),j[X.range_middle]=se(Me,A,!0,a)}const jn=po(j,g,t.modifiersStyles),Wn=Jr(j,i,t.modifiersClassNames),Tn=!it&&!j.hidden?an(A,j,a.options,a):void 0;return m.createElement(n.Day,{key:`${E.isoDate}_${E.displayMonthId}`,day:E,modifiers:j,className:Wn.join(" "),style:jn,role:"gridcell","aria-selected":j.selected||void 0,"aria-label":Tn,"data-day":E.isoDate,"data-month":E.outside?E.dateMonthId:void 0,"data-selected":j.selected||void 0,"data-disabled":j.disabled||void 0,"data-hidden":j.hidden||void 0,"data-outside":E.outside||void 0,"data-focused":j.focused||void 0,"data-today":j.today||void 0},!j.hidden&&it?m.createElement(n.DayButton,{className:i[b.DayButton],style:g?.[b.DayButton],type:"button",day:E,modifiers:j,disabled:!j.focused&&j.disabled||void 0,"aria-disabled":j.focused&&j.disabled||void 0,tabIndex:rn(E)?0:-1,"aria-label":on(A,j,a.options,a),onClick:pn(E,j),onBlur:vn(E,j),onFocus:bn(E,j),onKeyDown:xn(E,j),onMouseEnter:Dn(E,j),onMouseLeave:kn(E,j)},T(A,a.options,a)):!j.hidden&&T(E.date,a.options,a))})))))))),t.footer&&m.createElement(n.Footer,{className:i[b.Footer],style:g?.[b.Footer],role:"status","aria-live":"polite"},t.footer)))}function Uo({className:e,classNames:t,showOutsideDays:s=!0,captionLayout:n="label",buttonVariant:r="ghost",formatters:l,components:a,...o}){const i=et();return c.jsx($o,{showOutsideDays:s,className:_("bg-white group/calendar p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent dark:bg-gray-950",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,e),captionLayout:n,formatters:{formatMonthDropdown:d=>d.toLocaleString("default",{month:"short"}),...l},classNames:{root:_("w-fit",i.root),months:_("flex gap-4 flex-col md:flex-row relative",i.months),month:_("flex flex-col w-full gap-4",i.month),nav:_("flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between",i.nav),button_previous:_(ut({variant:r}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",i.button_previous),button_next:_(ut({variant:r}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",i.button_next),month_caption:_("flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)",i.month_caption),dropdowns:_("w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5",i.dropdowns),dropdown_root:_("relative has-focus:border-gray-950 border border-gray-200 shadow-xs has-focus:ring-gray-950/50 has-focus:ring-[3px] rounded-md dark:has-focus:border-gray-300 dark:border-gray-800 dark:has-focus:ring-gray-300/50",i.dropdown_root),dropdown:_("absolute bg-white inset-0 opacity-0 dark:bg-gray-950",i.dropdown),caption_label:_("select-none font-medium",n==="label"?"text-sm":"rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-gray-500 [&>svg]:size-3.5 dark:[&>svg]:text-gray-400",i.caption_label),table:"w-full border-collapse",weekdays:_("flex",i.weekdays),weekday:_("text-gray-500 rounded-md flex-1 font-normal text-[0.8rem] select-none dark:text-gray-400",i.weekday),week:_("flex w-full mt-2",i.week),week_number_header:_("select-none w-(--cell-size)",i.week_number_header),week_number:_("text-[0.8rem] select-none text-gray-500 dark:text-gray-400",i.week_number),day:_("relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none",i.day),range_start:_("rounded-l-md bg-gray-100 dark:bg-gray-800",i.range_start),range_middle:_("rounded-none",i.range_middle),range_end:_("rounded-r-md bg-gray-100 dark:bg-gray-800",i.range_end),today:_("bg-gray-100 text-gray-900 rounded-md data-[selected=true]:rounded-none dark:bg-gray-800 dark:text-gray-50",i.today),outside:_("text-gray-500 aria-selected:text-gray-500 dark:text-gray-400 dark:aria-selected:text-gray-400",i.outside),disabled:_("text-gray-500 opacity-50 dark:text-gray-400",i.disabled),hidden:_("invisible",i.hidden),...t},components:{Root:({className:d,rootRef:f,...u})=>c.jsx("div",{"data-slot":"calendar",ref:f,className:_(d),...u}),Chevron:({className:d,orientation:f,...u})=>f==="left"?c.jsx(is,{className:_("size-4",d),...u}):f==="right"?c.jsx(ls,{className:_("size-4",d),...u}):c.jsx(ie,{className:_("size-4",d),...u}),DayButton:Go,WeekNumber:({children:d,...f})=>c.jsx("td",{...f,children:c.jsx("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:d})}),...a},...o})}function Go({className:e,day:t,modifiers:s,...n}){const r=et(),l=m.useRef(null);return m.useEffect(()=>{s.focused&&l.current?.focus()},[s.focused]),c.jsx(q,{ref:l,variant:"ghost",size:"icon","data-day":t.date.toLocaleDateString(),"data-selected-single":s.selected&&!s.range_start&&!s.range_end&&!s.range_middle,"data-range-start":s.range_start,"data-range-end":s.range_end,"data-range-middle":s.range_middle,className:_("data-[selected-single=true]:bg-gray-900 data-[selected-single=true]:text-gray-50 data-[range-middle=true]:bg-gray-100 data-[range-middle=true]:text-gray-900 data-[range-start=true]:bg-gray-900 data-[range-start=true]:text-gray-50 data-[range-end=true]:bg-gray-900 data-[range-end=true]:text-gray-50 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-gray-900 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md [&>span]:text-xs [&>span]:opacity-70 dark:data-[selected-single=true]:bg-gray-50 dark:data-[selected-single=true]:text-gray-900 dark:data-[range-middle=true]:bg-gray-800 dark:data-[range-middle=true]:text-gray-50 dark:data-[range-start=true]:bg-gray-50 dark:data-[range-start=true]:text-gray-900 dark:data-[range-end=true]:bg-gray-50 dark:data-[range-end=true]:text-gray-900 dark:dark:hover:text-gray-50",r.day,e),...n})}function qe(e){return e?Z(e,"yyyy-MM-dd"):""}function Ko(e){return e?!Number.isNaN(e.getTime()):!1}function Vo({value:e,onChange:t,disabled:s,...n}){const[r,l]=m.useState(!1),[a,o]=m.useState(e),[i,d]=m.useState(qe(e));return O.useEffect(()=>{e&&d(qe(e))},[e]),c.jsxs("div",{className:"relative flex gap-2",children:[c.jsx(Tt,{...n,disabled:s,value:i,onChange:f=>{d(f.target.value);const u=f.target.value?new Date(f.target.value):void 0;Ko(u)&&(t?.(u),o(u))},onKeyDown:f=>{f.key==="ArrowDown"&&(f.preventDefault(),l(!0))}}),c.jsxs(cs,{open:r,onOpenChange:l,children:[c.jsx(ds,{asChild:!0,children:c.jsxs(q,{id:"date-picker",variant:"ghost",className:"absolute top-1/2 right-2 size-6 -translate-y-1/2",disabled:s,children:[c.jsx(us,{className:"size-3.5"}),c.jsx("span",{className:"sr-only",children:"Select date"})]})}),c.jsx(fs,{className:"w-auto overflow-hidden p-0",align:"end",alignOffset:-8,sideOffset:10,children:c.jsx(Uo,{mode:"single",selected:e,captionLayout:"dropdown",month:a,onMonthChange:o,onSelect:f=>{t?.(f),d(qe(f??void 0)),l(!1)}})})]})]})}var He={exports:{}},$e,Dt;function Zo(){if(Dt)return $e;Dt=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return $e=e,$e}var Ue,kt;function Xo(){if(kt)return Ue;kt=1;var e=Zo();function t(){}function s(){}return s.resetWarningCache=t,Ue=function(){function n(a,o,i,d,f,u){if(u!==e){var h=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw h.name="Invariant Violation",h}}n.isRequired=n;function r(){return n}var l={array:n,bigint:n,bool:n,func:n,number:n,object:n,string:n,symbol:n,any:n,arrayOf:r,element:n,elementType:n,instanceOf:r,node:n,objectOf:r,oneOf:r,oneOfType:r,shape:r,exact:r,checkPropTypes:s,resetWarningCache:t};return l.PropTypes=l,l},Ue}var Mt;function Qo(){return Mt||(Mt=1,He.exports=Xo()()),He.exports}var Jo=Qo();const ha=hs(Jo),Lo=({close:e,transactionID:t,onChange:s})=>t?c.jsx(ms,{modalSize:"fit-content",position:"bottom",title:c.jsxs("div",{className:"flex flex-row mx-3 pt-3 sm:text-1xl gap-10",children:[c.jsx("h1",{className:"sm:text-2xl font-small text-gray-900",children:"Edit Transaction:"}),c.jsxs("div",{className:"flex flex-row gap-2",children:["ID: ",t,c.jsx(gs,{content:t}),c.jsx(lr,{transactionId:t})]})]}),opened:!!t,onClose:e,children:c.jsx(cr,{transactionID:t,onDone:e,onChange:s})}):null,ea=({onDone:e,transactionId:t,chargeId:s})=>{const[n,r]=O.useState(!1),[{data:l,fetching:a}]=Ot({query:ys,pause:!t,variables:{transactionId:t}}),o=l?.transactionsByIDs[0];function i(){r(!1),e?.()}return c.jsxs(ps,{open:n,onOpenChange:r,children:[c.jsx(Ze,{content:"Insert Related Misc Expense",children:c.jsx(bs,{asChild:!0,children:c.jsx(q,{variant:"ghost",size:"icon",className:"size-7.5",disabled:a,children:c.jsx(As,{className:"size-5"})})})}),c.jsxs(vs,{className:"sm:max-w-[425px]",children:[c.jsx(xs,{children:c.jsx(Ds,{children:"Insert Misc Expense"})}),o&&c.jsx(fr,{onDone:i,chargeId:s,defaultValues:{amount:o?.amount.raw?Math.abs(o?.amount.raw):void 0,currency:o?.amount.currency,invoiceDate:o?.eventDate,valueDate:o?.exactEffectiveDate||o?.effectiveDate?new Date(o.exactEffectiveDate??o.effectiveDate):void 0,creditorId:(o?.amount.raw??0)>0?o?.counterparty?.id:void 0,debtorId:(o?.amount.raw??0)<0?o?.counterparty?.id:void 0}})]})]})},ta=({transaction:e})=>{const t="effectiveDate"in e?e.effectiveDate:void 0;return c.jsxs("div",{className:"flex flex-col justify-center",children:[c.jsx("div",{children:t&&Z(new Date(t),"dd/MM/yy")}),e.sourceEffectiveDate&&c.jsxs("div",{className:"text-xs text-gray-500",children:["(Originally ",Z(new Date(e.sourceEffectiveDate),"dd/MM/yy"),")"]})]})},na=({transaction:e})=>{const t="eventDate"in e?e.eventDate:void 0;return c.jsx("div",{className:"flex flex-col justify-center",children:t&&Z(new Date(t),"dd/MM/yy")})},sa=({transaction:e})=>{const t="amount"in e?e.amount:void 0;return c.jsxs("div",{style:{color:Number(t?.raw)>0?"green":"red",whiteSpace:"nowrap"},children:[t?.formatted,c.jsx("br",{}),e.cryptoExchangeRate&&c.jsxs("span",{style:{color:"gray",marginLeft:"0.5rem"},children:[`(Rate: ${e.cryptoExchangeRate.rate})`,c.jsx("br",{}),t?.raw?`${ks(t.raw*e.cryptoExchangeRate.rate)}$`:null]})]})},ra=({transaction:e})=>{const{account:t}=e,s=t.type,n=t.name;return c.jsxs("div",{className:"flex flex-col justify-center",children:[c.jsx("p",{children:s}),c.jsx("p",{children:n})]})},oa=({transaction:e})=>{const t="sourceDescription"in e?e.sourceDescription:"Missing";return c.jsx("div",{className:"flex flex-wrap",children:c.jsx("div",{className:"flex flex-col justify-center",children:t})})},aa=({transaction:e})=>c.jsx("div",{className:"flex flex-wrap",children:c.jsx("div",{className:"flex flex-col justify-center",children:e.referenceKey})});function ia({transaction:e,onChange:t}){const{id:s,counterparty:n,missingInfoSuggestions:r,id:l,sourceDescription:a,enableEdit:o}=e,i=!!r?.business&&o,d=i?r?.business?.name:"Missing",f=i?r?.business?.id:null,u=n?.name??d,[h,y]=O.useState(!1),{updateTransaction:S,fetching:v}=Xe(),p=O.useCallback(async T=>{await S({transactionId:l,fields:{counterpartyId:T}}),y(!0)},[l,S]),k=O.useCallback(async T=>{await p(T),t?.()},[p,t]),{selectableBusinesses:W,fetching:w}=Ms(),[M,x]=O.useState(f??null),[g,N]=O.useState(a);return c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"flex flex-wrap flex-col justify-center",children:n?.id?c.jsx(wt,{to:St.BUSINESSES.DETAIL(n.id),target:"_blank",rel:"noreferrer",onClick:T=>T.stopPropagation(),className:"inline-flex items-center font-semibold",children:u}):c.jsxs(c.Fragment,{children:[c.jsx(ws,{options:W,value:M,onChange:x,search:g,onSearchChange:N,placeholder:"Choose or create a business",empty:g?c.jsx(Ss,{description:g,onAdd:k}):null}),c.jsx(Ze,{content:"Approve",children:c.jsx(q,{variant:"outline",size:"icon",onClick:()=>M&&p(M),disabled:v||w||!M,children:c.jsx(Os,{className:"size-4"})})})]})}),c.jsx(Rs,{transactionId:s,counterpartyId:n?.id??M,open:h,onOpenChange:y,onClose:t})]})}const Ge=[{accessorKey:"counterparty.name",header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Counterparty",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(ia,{transaction:e.original})},{accessorKey:"eventDate",sortingFn:e=>"eventDate"in e.original&&e.original.eventDate?new Date(e.original.eventDate).getTime():0,header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Event Date",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(na,{transaction:e.original})},{accessorKey:"effectiveDate",sortingFn:e=>"effectiveDate"in e.original&&e.original.effectiveDate?new Date(e.original.effectiveDate).getTime():0,header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Debit Date",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(ta,{transaction:e.original})},{accessorKey:"amount.raw",header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Amount",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(sa,{transaction:e.original})},{accessorKey:"account.name",header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Account",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(ra,{transaction:e.original})},{accessorKey:"sourceDescription",header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Description",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(oa,{transaction:e.original})},{accessorKey:"referenceKey",header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Reference#",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(aa,{transaction:e.original})}],la={accessorKey:"id",header:"Actions",cell:({row:e})=>e.original.enableEdit?c.jsxs(c.Fragment,{children:[c.jsx(Cs,{onClick:()=>e.original.editTransaction(e.original.id),tooltip:"Edit Transaction"}),c.jsx(ea,{chargeId:e.original.chargeId,transactionId:e.original.id,onDone:e.original.onUpdate})]}):e.original.enableChargeLink?c.jsx(ir,{chargeId:e.original.chargeId}):null},ma=({transactionsProps:e,onChange:t,enableEdit:s,enableChargeLink:n})=>{const[r,l]=O.useState(void 0),[a,o]=O.useState([]),i=O.useMemo(()=>e.map(h=>Ns(js,h)),[e]),d=O.useMemo(()=>i.map(h=>({...h,editTransaction:l,onUpdate:t||(()=>{}),enableEdit:s,enableChargeLink:n})),[i,s,n,t]),f=O.useMemo(()=>s||n?[...Ge,la]:Ge,[s,n]),u=Ws({data:d,columns:f,getCoreRowModel:_s(),onSortingChange:o,getSortedRowModel:Es(),getPaginationRowModel:Ts(),state:{sorting:a},initialState:{pagination:{pageIndex:0,pageSize:100},sorting:[{id:"eventDate",desc:!0}]}});return c.jsxs(c.Fragment,{children:[c.jsxs(Is,{children:[c.jsx(Ys,{children:u.getHeaderGroups().map(h=>c.jsx(Pe,{children:h.headers.map(y=>c.jsx(Fs,{colSpan:y.colSpan,children:y.isPlaceholder?null:ft(y.column.columnDef.header,y.getContext())},y.id))},h.id))}),c.jsx(Ps,{children:u.getRowModel().rows?.length?u.getRowModel().rows.map(h=>c.jsx(Pe,{children:h.getVisibleCells().map(y=>c.jsx(ht,{children:ft(y.column.columnDef.cell,y.getContext())},y.id))},h.id)):c.jsx(Pe,{children:c.jsx(ht,{colSpan:Ge.length,className:"h-24 text-center",children:"No results."})})})]}),u.getPageCount()>1&&c.jsx("div",{className:"flex items-center justify-end space-x-2 py-4",children:c.jsx(Bs,{currentPageIndex:u.getState().pagination.pageIndex,totalPages:u.getPageCount(),onChange:h=>u.setPageIndex(h)})}),c.jsx(Lo,{transactionID:r,close:()=>l(void 0),onChange:t??(()=>{})})]})};export{sa as A,ia as C,ta as D,qs as E,fr as I,mr as M,ha as P,aa as S,ma as T,na as a,ra as b,oa as c,ir as d};
|
|
1
|
+
import{v as En,gQ as oe,g0 as R,f_ as ve,gR as Ke,gS as _n,j as c,T as Ze,ai as wt,R as St,B as q,m as _,bW as In,aX as Yn,en as Fn,u as Ot,gT as Pn,z as Ct,r as O,dq as Nt,d as Bn,V as jt,eo as Rn,Y as le,Z as ce,_ as de,ao as An,$ as ye,ap as zn,aq as qn,ar as Hn,as as $n,a1 as fe,bE as Wt,w as Z,at as Un,a9 as Gn,g as Kn,gU as Vn,t as Fe,i as Zn,L as Xn,b5 as ct,bD as dt,cp as Qn,bF as Jn,gV as Ln,I as Tt,gW as pe,gX as es,gY as ts,f$ as Et,gZ as ns,g_ as _t,g$ as It,h0 as ss,h1 as rs,h2 as os,h3 as as,aF as m,h4 as is,gk as ls,b_ as ie,h5 as ut,h6 as cs,h7 as ds,aO as us,h8 as fs,dN as hs,et as ms,eu as gs,h9 as ys,D as ps,aL as bs,x as vs,al as xs,am as Ds,d6 as ks,bC as Ms,d1 as ws,q as Ss,e as Os,dG as ue,fT as Cs,G as Ns,fG as js,bX as Ws,c3 as Ts,c4 as Es,c5 as _s,bN as Is,bO as Ys,bP as Pe,bQ as Fs,c1 as ft,bR as Ps,bS as ht,P as Bs}from"./index-CJQEWig2.js";import{u as Xe,S as Rs}from"./similar-transactions-modal-DPUwmIYc.js";import{a as Yt}from"./addDays-B1nYv7cD.js";import{L as As}from"./list-plus-D47DH24w.js";const zs=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],qs=En("external-link",zs);function Hs(e,t,s){return Yt(e,t*7,s)}function $s(e,t){let s,n=t?.in;return e.forEach(r=>{!n&&typeof r=="object"&&(n=oe.bind(null,r));const l=R(r,n);(!s||s<l||isNaN(+l))&&(s=l)}),oe(n,s||NaN)}function Us(e,t){let s,n=t?.in;return e.forEach(r=>{!n&&typeof r=="object"&&(n=oe.bind(null,r));const l=R(r,n);(!s||s>l||isNaN(+l))&&(s=l)}),oe(n,s||NaN)}function Gs(e,t,s){const[n,r]=ve(s?.in,e,t);return+Ke(n)==+Ke(r)}function Ft(e,t,s){const[n,r]=ve(s?.in,e,t),l=n.getFullYear()-r.getFullYear(),a=n.getMonth()-r.getMonth();return l*12+a}function Ks(e,t){const s=R(e,t?.in),n=s.getMonth();return s.setFullYear(s.getFullYear(),n+1,0),s.setHours(23,59,59,999),s}function Pt(e,t){const[s,n]=ve(e,t.start,t.end);return{start:s,end:n}}function Vs(e,t){const{start:s,end:n}=Pt(t?.in,e);let r=+s>+n;const l=r?+s:+n,a=r?n:s;a.setHours(0,0,0,0),a.setDate(1);let o=1;const i=[];for(;+a<=l;)i.push(oe(s,a)),a.setMonth(a.getMonth()+o);return r?i.reverse():i}function Zs(e,t){const s=R(e,t?.in);return s.setDate(1),s.setHours(0,0,0,0),s}function Xs(e,t){const{start:s,end:n}=Pt(t?.in,e);let r=+s>+n;const l=r?+s:+n,a=r?n:s;a.setHours(0,0,0,0),a.setMonth(0,1);let o=1;const i=[];for(;+a<=l;)i.push(oe(s,a)),a.setFullYear(a.getFullYear()+o);return r?i.reverse():i}function Bt(e,t){const s=_n(),n=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??s.weekStartsOn??s.locale?.options?.weekStartsOn??0,r=R(e,t?.in),l=r.getDay(),a=(l<n?-7:0)+6-(l-n);return r.setDate(r.getDate()+a),r.setHours(23,59,59,999),r}function Qs(e,t){return Bt(e,{...t,weekStartsOn:1})}function Js(e,t){const s=R(e,t?.in),n=s.getFullYear(),r=s.getMonth(),l=oe(s,0);return l.setFullYear(n,r+1,0),l.setHours(0,0,0,0),l.getDate()}function Ls(e,t){return R(e,t?.in).getMonth()}function er(e,t){return R(e,t?.in).getFullYear()}function tr(e,t){return+R(e)>+R(t)}function nr(e,t){return+R(e)<+R(t)}function sr(e,t,s){const[n,r]=ve(s?.in,e,t);return n.getFullYear()===r.getFullYear()&&n.getMonth()===r.getMonth()}function rr(e,t,s){const[n,r]=ve(s?.in,e,t);return n.getFullYear()===r.getFullYear()}function or(e,t,s){const n=R(e,s?.in),r=n.getFullYear(),l=n.getDate(),a=oe(e,0);a.setFullYear(r,t,15),a.setHours(0,0,0,0);const o=Js(a);return n.setMonth(t,Math.min(l,o)),n}function ar(e,t,s){const n=R(e,s?.in);return isNaN(+n)?oe(e,NaN):(n.setFullYear(t),n)}function ir(e){return c.jsx(Ze,{content:"To Charge",children:c.jsx(wt,{to:St.CHARGES.DETAIL(e.chargeId),target:"_blank",rel:"noreferrer",onClick:t=>t.stopPropagation(),className:"inline-block",children:c.jsx(q,{...e,className:_("size-7.5",e.className),variant:"ghost",children:c.jsx(qs,{className:"size-5"})})})})}function lr({transactionId:e}){const{updateTransaction:t}=Xe();function s(){t({transactionId:e,fields:{chargeId:Fn}})}return c.jsx(In,{onConfirm:s,title:"Are you sure you want to unlink this transaction from the charge?",children:c.jsx(q,{variant:"ghost",size:"icon",className:"size-7.5",children:c.jsx(Yn,{className:"size-5"})})})}const cr=({transactionID:e,onDone:t,onChange:s})=>{const[{data:n,fetching:r}]=Ot({query:Pn,variables:{transactionIDs:[e]}}),l=n?.transactionsByIDs?.[0],a=Ct({defaultValues:l??{}});O.useEffect(()=>{l&&a.reset(l)},[l,a]);const{control:o,handleSubmit:i,formState:{dirtyFields:d}}=a,{updateTransaction:f,fetching:u}=Xe(),h=v=>{if(!l)return;const p=Gn(v,d);t?.(),p&&Object.keys(p).length>0&&f({transactionId:l.id,fields:p}).then(s)},{selectableFinancialEntities:y,fetching:S}=Nt();return c.jsxs(c.Fragment,{children:[r&&c.jsx(Bn,{className:"flex self-center my-5",color:"dark",size:"xl",variant:"dots"}),!r&&l&&c.jsx(jt,{...a,children:c.jsxs("form",{onSubmit:i(h),children:[c.jsx("div",{className:"flex-row px-10 h-max justify-start block",children:c.jsxs(Rn,{cols:3,children:[c.jsx(le,{name:"counterpartyId",control:o,defaultValue:l.counterparty?.id,rules:{minLength:{value:2,message:"Minimum 2 characters"}},render:({field:v})=>c.jsxs(ce,{children:[c.jsx(de,{children:"Counterparty"}),c.jsxs(An,{onValueChange:v.onChange,value:v.value??void 0,disabled:S,children:[c.jsx(ye,{children:c.jsx(zn,{className:"w-full truncate",children:c.jsx(qn,{placeholder:"Scroll to see all options"})})}),c.jsx(Hn,{onClick:p=>p.stopPropagation(),children:y.map(({value:p,label:k})=>c.jsx($n,{value:p,children:k},p))})]}),c.jsx(fe,{})]})}),l?.account.__typename==="CardFinancialAccount"?c.jsx(le,{name:"effectiveDate",control:o,rules:{pattern:{value:Wt,message:"Date must be im format yyyy-mm-dd"}},render:({field:v})=>c.jsxs(ce,{children:[c.jsx(de,{children:"Effective Date"}),c.jsx(ye,{children:c.jsx(Vo,{...v,onChange:p=>{const k=p?Z(p,"yyyy-MM-dd"):void 0;k!==v.value&&v.onChange(k)},value:v.value?new Date(v.value):void 0})}),c.jsx(fe,{})]})}):c.jsx(c.Fragment,{}),c.jsx(le,{name:"isFee",control:o,defaultValue:l.isFee,render:({field:v})=>c.jsxs(ce,{className:"flex flex-row items-center justify-between rounded-lg border p-3 shadow-sm",children:[c.jsx("div",{className:"space-y-0.5",children:c.jsx(de,{children:"Fee Transaction"})}),c.jsx(ye,{children:c.jsx(Un,{checked:v.value===!0,onCheckedChange:v.onChange})})]})})]})}),c.jsxs("div",{className:"mt-10 mb-5 flex justify-center gap-5",children:[c.jsx("button",{type:"submit",onClick:()=>i(h),className:"mt-8 text-white bg-indigo-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-indigo-600 rounded-sm text-lg",disabled:u||Object.keys(d).length===0,children:"Accept"}),c.jsx("button",{type:"button",className:"mt-8 text-white bg-rose-500 border-0 py-2 px-8 focus:outline-hidden hover:bg-rose-600 rounded-sm text-lg",onClick:t,children:"Cancel"})]})]})})]})},dr="insertMiscExpense",ur=()=>{const[{fetching:e},t]=Kn(Vn),s=O.useCallback(async n=>{const r="Error creating misc expense",l=`${dr}-${n.chargeId}`;Fe.loading("Creating misc expense",{id:l});try{const a=await t(n),o=Zn(a,r,l);if(o)return Fe.success("Success",{id:l,description:"Misc expense was created"}),o.insertMiscExpense}catch(a){console.error(`${r}: ${a}`),Fe.error("Error",{id:l,description:r,duration:1e5,closeButton:!0})}},[t]);return{fetching:e,insertMiscExpense:s}},fr=({onDone:e,defaultValues:t={},chargeId:s})=>{const{insertMiscExpense:n,fetching:r}=ur(),l=O.useCallback(async a=>{await n({chargeId:s,fields:a}),e()},[n,s,e]);return c.jsx(hr,{defaultValues:t,onInsertDone:l,fetching:r})},hr=({onInsertDone:e,defaultValues:t,fetching:s})=>{const n=o=>{o&&Object.keys(o).length>0&&e(o)},r=Ct({defaultValues:{...t}}),{handleSubmit:l,formState:{dirtyFields:a}}=r;return c.jsx(jt,{...r,children:c.jsx("form",{onSubmit:l(n),noValidate:!0,children:c.jsxs("div",{className:"px-5 flex flex-col gap-5 relative",children:[s&&c.jsx("div",{className:"absolute bg-white/60 z-10 h-full w-full flex items-center justify-center",children:c.jsx("div",{className:"flex items-center",children:c.jsx("span",{className:"text-3xl mr-4",children:c.jsx(Xn,{className:"h-10 w-10 animate-spin mr-2 self-center"})})})}),c.jsx(mr,{formManager:r,isInsert:!0}),c.jsx("div",{className:"flex justify-right gap-5 mt-5",children:c.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",disabled:s||Object.keys(a).length===0,children:"Accept"})})]})})})},mr=({formManager:e,isInsert:t})=>{const{control:s,setValue:n}=e,{selectableFinancialEntities:r,fetching:l}=Nt();return c.jsxs(c.Fragment,{children:[c.jsx(le,{name:"creditorId",control:s,rules:{required:t?"Required":void 0},render:({field:a})=>c.jsxs(ce,{children:[c.jsx(de,{children:"Creditor"}),c.jsx(ct,{...a,data:r,value:a.value??void 0,disabled:l,placeholder:"Select creditor",formPart:!0}),c.jsx(fe,{})]})}),c.jsx(le,{name:"debtorId",control:s,rules:{required:t?"Required":void 0},render:({field:a})=>c.jsxs(ce,{children:[c.jsx(de,{children:"Debtor"}),c.jsx(ct,{...a,data:r,value:a.value??void 0,disabled:l,placeholder:"Select debtor",formPart:!0}),c.jsx(fe,{})]})}),c.jsx(dt,{name:"amount",control:s,rules:{required:t?"Required":void 0},render:({field:a,fieldState:o})=>c.jsx(dt,{name:"currency",control:s,rules:{required:t?"Required":void 0},render:({field:i,fieldState:d})=>c.jsx(Qn,{...a,required:t,value:a.value??void 0,error:o.error?.message||d.error?.message,label:"Amount",currencyCodeProps:{...i,required:t,label:"Currency"}})})}),c.jsx(le,{name:"invoiceDate",control:s,rules:{...t?{required:"Required"}:{},pattern:{value:Wt,message:"Date must be im format yyyy-mm-dd"}},render:({field:a})=>{const o=a.value?new Date(a.value):void 0;return c.jsxs(ce,{children:[c.jsx(de,{children:"Invoice Date"}),c.jsx(ye,{children:c.jsx(Jn,{...a,required:t,onChange:i=>{const d=i?typeof i=="string"?i:Z(i,"yyyy-MM-dd"):void 0;d!==a.value&&(n("invoiceDate",d),a.onChange(d))},value:o,valueFormat:"DD/MM/YYYY"})}),c.jsx(fe,{})]})}}),c.jsx(le,{name:"valueDate",control:s,rules:{...t?{required:"Required"}:{},validate:a=>a?!Number.isNaN(a.getTime())||"Invalid date and time format":!0},render:({field:a})=>c.jsxs(ce,{children:[c.jsx(de,{children:"Value Date"}),c.jsx(ye,{children:c.jsx(Ln,{...a,onChange:o=>{n("valueDate",o),a.onChange(o)},onPointerEnterCapture:()=>{},onPointerLeaveCapture:()=>{},required:t,placeholder:"Pick date and time",valueFormat:"DD/MM/YYYY HH:mm:ss",withSeconds:!0})}),c.jsx(fe,{})]})}),c.jsx(le,{name:"description",control:s,rules:{required:t?"Required":void 0},render:({field:a})=>c.jsxs(ce,{children:[c.jsx(de,{children:"Description"}),c.jsx(ye,{children:c.jsx(Tt,{...a,required:t,value:a.value??void 0})}),c.jsx(fe,{})]})})]})};function gr(e,t,s="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:e,timeZoneName:s}).format(t).split(/\s/g).slice(2).join(" ")}const yr={},be={};function he(e,t){try{const n=(yr[e]||=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format)(t).split("GMT")[1];return n in be?be[n]:mt(n,n.split(":"))}catch{if(e in be)return be[e];const s=e?.match(pr);return s?mt(e,s.slice(1)):NaN}}const pr=/([+-]\d\d):?(\d\d)?/;function mt(e,t){const s=+(t[0]||0),n=+(t[1]||0),r=+(t[2]||0)/60;return be[e]=s*60+n>0?s*60+n+r:s*60-n-r}class L extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(he(this.timeZone,this))?this.setTime(NaN):t.length?typeof t[0]=="number"&&(t.length===1||t.length===2&&typeof t[1]!="number")?this.setTime(t[0]):typeof t[0]=="string"?this.setTime(+new Date(t[0])):t[0]instanceof Date?this.setTime(+t[0]):(this.setTime(+new Date(...t)),Rt(this),Ve(this)):this.setTime(Date.now())}static tz(t,...s){return s.length?new L(...s,t):new L(Date.now(),t)}withTimeZone(t){return new L(+this,t)}getTimezoneOffset(){const t=-he(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),Ve(this),+this}[Symbol.for("constructDateFrom")](t){return new L(+new Date(t),this.timeZone)}}const gt=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!gt.test(e))return;const t=e.replace(gt,"$1UTC");L.prototype[t]&&(e.startsWith("get")?L.prototype[e]=function(){return this.internal[t]()}:(L.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),br(this),+this},L.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),Ve(this),+this}))});function Ve(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-he(e.timeZone,e)*60))}function br(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),Rt(e)}function Rt(e){const t=he(e.timeZone,e),s=t>0?Math.floor(t):Math.ceil(t),n=new Date(+e);n.setUTCHours(n.getUTCHours()-1);const r=-new Date(+e).getTimezoneOffset(),l=-new Date(+n).getTimezoneOffset(),a=r-l,o=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();a&&o&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+a);const i=r-s;i&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+i);const d=new Date(+e);d.setUTCSeconds(0);const f=r>0?d.getSeconds():(d.getSeconds()-60)%60,u=Math.round(-(he(e.timeZone,e)*60))%60;(u||f)&&(e.internal.setUTCSeconds(e.internal.getUTCSeconds()+u),Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+u+f));const h=he(e.timeZone,e),y=h>0?Math.floor(h):Math.ceil(h),v=-new Date(+e).getTimezoneOffset()-y,p=y!==s,k=v-i;if(p&&k){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+k);const W=he(e.timeZone,e),w=W>0?Math.floor(W):Math.ceil(W),M=y-w;M&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+M),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+M))}}class B extends L{static tz(t,...s){return s.length?new B(...s,t):new B(Date.now(),t)}toISOString(){const[t,s,n]=this.tzComponents(),r=`${t}${s}:${n}`;return this.internal.toISOString().slice(0,-1)+r}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,s,n,r]=this.internal.toUTCString().split(" ");return`${t?.slice(0,-1)} ${n} ${s} ${r}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[s,n,r]=this.tzComponents();return`${t} GMT${s}${n}${r} (${gr(this.timeZone,this)})`}toLocaleString(t,s){return Date.prototype.toLocaleString.call(this,t,{...s,timeZone:s?.timeZone||this.timeZone})}toLocaleDateString(t,s){return Date.prototype.toLocaleDateString.call(this,t,{...s,timeZone:s?.timeZone||this.timeZone})}toLocaleTimeString(t,s){return Date.prototype.toLocaleTimeString.call(this,t,{...s,timeZone:s?.timeZone||this.timeZone})}tzComponents(){const t=this.getTimezoneOffset(),s=t>0?"-":"+",n=String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),r=String(Math.abs(t)%60).padStart(2,"0");return[s,n,r]}withTimeZone(t){return new B(+this,t)}[Symbol.for("constructDateFrom")](t){return new B(+new Date(t),this.timeZone)}}const yt=5,vr=4;function xr(e,t){const s=t.startOfMonth(e),n=s.getDay()>0?s.getDay():7,r=t.addDays(e,-n+1),l=t.addDays(r,yt*7-1);return t.getMonth(e)===t.getMonth(l)?yt:vr}function At(e,t){const s=t.startOfMonth(e),n=s.getDay();return n===1?s:n===0?t.addDays(s,-6):t.addDays(s,-1*(n-1))}function Dr(e,t){const s=At(e,t),n=xr(e,t);return t.addDays(s,n*7-1)}const zt={...pe,labels:{labelDayButton:(e,t,s,n)=>{let r;n&&typeof n.format=="function"?r=n.format.bind(n):r=(a,o)=>Z(a,o,{locale:pe,...s});let l=r(e,"PPPP");return t.today&&(l=`Today, ${l}`),t.selected&&(l=`${l}, selected`),l},labelMonthDropdown:"Choose the Month",labelNext:"Go to the Next Month",labelPrevious:"Go to the Previous Month",labelWeekNumber:e=>`Week ${e}`,labelYearDropdown:"Choose the Year",labelGrid:(e,t,s)=>{let n;return s&&typeof s.format=="function"?n=s.format.bind(s):n=(r,l)=>Z(r,l,{locale:pe,...t}),n(e,"LLLL yyyy")},labelGridcell:(e,t,s,n)=>{let r;n&&typeof n.format=="function"?r=n.format.bind(n):r=(a,o)=>Z(a,o,{locale:pe,...s});let l=r(e,"PPPP");return t?.today&&(l=`Today, ${l}`),l},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(e,t,s)=>{let n;return s&&typeof s.format=="function"?n=s.format.bind(s):n=(r,l)=>Z(r,l,{locale:pe,...t}),n(e,"cccc")}}};class H{constructor(t,s){this.Date=Date,this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?B.tz(this.options.timeZone):new this.Date,this.newDate=(n,r,l)=>this.overrides?.newDate?this.overrides.newDate(n,r,l):this.options.timeZone?new B(n,r,l,this.options.timeZone):new Date(n,r,l),this.addDays=(n,r)=>this.overrides?.addDays?this.overrides.addDays(n,r):Yt(n,r),this.addMonths=(n,r)=>this.overrides?.addMonths?this.overrides.addMonths(n,r):es(n,r),this.addWeeks=(n,r)=>this.overrides?.addWeeks?this.overrides.addWeeks(n,r):Hs(n,r),this.addYears=(n,r)=>this.overrides?.addYears?this.overrides.addYears(n,r):ts(n,r),this.differenceInCalendarDays=(n,r)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(n,r):Et(n,r),this.differenceInCalendarMonths=(n,r)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(n,r):Ft(n,r),this.eachMonthOfInterval=n=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(n):Vs(n),this.eachYearOfInterval=n=>{const r=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(n):Xs(n),l=new Set(r.map(o=>this.getYear(o)));if(l.size===r.length)return r;const a=[];return l.forEach(o=>{a.push(new Date(o,0,1))}),a},this.endOfBroadcastWeek=n=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(n):Dr(n,this),this.endOfISOWeek=n=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(n):Qs(n),this.endOfMonth=n=>this.overrides?.endOfMonth?this.overrides.endOfMonth(n):Ks(n),this.endOfWeek=(n,r)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(n,r):Bt(n,this.options),this.endOfYear=n=>this.overrides?.endOfYear?this.overrides.endOfYear(n):ns(n),this.format=(n,r,l)=>{const a=this.overrides?.format?this.overrides.format(n,r,this.options):Z(n,r,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(a):a},this.getISOWeek=n=>this.overrides?.getISOWeek?this.overrides.getISOWeek(n):_t(n),this.getMonth=(n,r)=>this.overrides?.getMonth?this.overrides.getMonth(n,this.options):Ls(n,this.options),this.getYear=(n,r)=>this.overrides?.getYear?this.overrides.getYear(n,this.options):er(n,this.options),this.getWeek=(n,r)=>this.overrides?.getWeek?this.overrides.getWeek(n,this.options):It(n,this.options),this.isAfter=(n,r)=>this.overrides?.isAfter?this.overrides.isAfter(n,r):tr(n,r),this.isBefore=(n,r)=>this.overrides?.isBefore?this.overrides.isBefore(n,r):nr(n,r),this.isDate=n=>this.overrides?.isDate?this.overrides.isDate(n):ss(n),this.isSameDay=(n,r)=>this.overrides?.isSameDay?this.overrides.isSameDay(n,r):Gs(n,r),this.isSameMonth=(n,r)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(n,r):sr(n,r),this.isSameYear=(n,r)=>this.overrides?.isSameYear?this.overrides.isSameYear(n,r):rr(n,r),this.max=n=>this.overrides?.max?this.overrides.max(n):$s(n),this.min=n=>this.overrides?.min?this.overrides.min(n):Us(n),this.setMonth=(n,r)=>this.overrides?.setMonth?this.overrides.setMonth(n,r):or(n,r),this.setYear=(n,r)=>this.overrides?.setYear?this.overrides.setYear(n,r):ar(n,r),this.startOfBroadcastWeek=(n,r)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(n,this):At(n,this),this.startOfDay=n=>this.overrides?.startOfDay?this.overrides.startOfDay(n):Ke(n),this.startOfISOWeek=n=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(n):rs(n),this.startOfMonth=n=>this.overrides?.startOfMonth?this.overrides.startOfMonth(n):Zs(n),this.startOfWeek=(n,r)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(n,this.options):os(n,this.options),this.startOfYear=n=>this.overrides?.startOfYear?this.overrides.startOfYear(n):as(n),this.options={locale:zt,...t},this.overrides=s}getDigitMap(){const{numerals:t="latn"}=this.options,s=new Intl.NumberFormat("en-US",{numberingSystem:t}),n={};for(let r=0;r<10;r++)n[r.toString()]=s.format(r);return n}replaceDigits(t){const s=this.getDigitMap();return t.replace(/\d/g,n=>s[n]||n)}formatNumber(t){return this.replaceDigits(t.toString())}getMonthYearOrder(){const t=this.options.locale?.code;return t&&H.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:s,timeZone:n,numerals:r}=this.options,l=s?.code;if(l&&H.yearFirstLocales.has(l))try{return new Intl.DateTimeFormat(l,{month:"long",year:"numeric",timeZone:n,numberingSystem:r}).format(t)}catch{}const a=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(t,a)}}H.yearFirstLocales=new Set(["eu","hu","ja","ja-Hira","ja-JP","ko","ko-KR","lt","lt-LT","lv","lv-LV","mn","mn-MN","zh","zh-CN","zh-HK","zh-TW"]);const ee=new H;class qt{constructor(t,s,n=ee){this.date=t,this.displayMonth=s,this.outside=!!(s&&!n.isSameMonth(t,s)),this.dateLib=n,this.isoDate=n.format(t,"yyyy-MM-dd"),this.displayMonthId=n.format(s,"yyyy-MM"),this.dateMonthId=n.format(t,"yyyy-MM")}isEqualTo(t){return this.dateLib.isSameDay(t.date,this.date)&&this.dateLib.isSameMonth(t.displayMonth,this.displayMonth)}}class kr{constructor(t,s){this.date=t,this.weeks=s}}class Mr{constructor(t,s){this.days=s,this.weekNumber=t}}function wr(e){return m.createElement("button",{...e})}function Sr(e){return m.createElement("span",{...e})}function Or(e){const{size:t=24,orientation:s="left",className:n}=e;return m.createElement("svg",{className:n,width:t,height:t,viewBox:"0 0 24 24"},s==="up"&&m.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),s==="down"&&m.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),s==="left"&&m.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),s==="right"&&m.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function Cr(e){const{day:t,modifiers:s,...n}=e;return m.createElement("td",{...n})}function Nr(e){const{day:t,modifiers:s,...n}=e,r=m.useRef(null);return m.useEffect(()=>{s.focused&&r.current?.focus()},[s.focused]),m.createElement("button",{ref:r,...n})}var b;(function(e){e.Root="root",e.Chevron="chevron",e.Day="day",e.DayButton="day_button",e.CaptionLabel="caption_label",e.Dropdowns="dropdowns",e.Dropdown="dropdown",e.DropdownRoot="dropdown_root",e.Footer="footer",e.MonthGrid="month_grid",e.MonthCaption="month_caption",e.MonthsDropdown="months_dropdown",e.Month="month",e.Months="months",e.Nav="nav",e.NextMonthButton="button_next",e.PreviousMonthButton="button_previous",e.Week="week",e.Weeks="weeks",e.Weekday="weekday",e.Weekdays="weekdays",e.WeekNumber="week_number",e.WeekNumberHeader="week_number_header",e.YearsDropdown="years_dropdown"})(b||(b={}));var Y;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})(Y||(Y={}));var X;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(X||(X={}));var z;(function(e){e.weeks_before_enter="weeks_before_enter",e.weeks_before_exit="weeks_before_exit",e.weeks_after_enter="weeks_after_enter",e.weeks_after_exit="weeks_after_exit",e.caption_after_enter="caption_after_enter",e.caption_after_exit="caption_after_exit",e.caption_before_enter="caption_before_enter",e.caption_before_exit="caption_before_exit"})(z||(z={}));function jr(e){const{options:t,className:s,components:n,classNames:r,...l}=e,a=[r[b.Dropdown],s].join(" "),o=t?.find(({value:i})=>i===l.value);return m.createElement("span",{"data-disabled":l.disabled,className:r[b.DropdownRoot]},m.createElement(n.Select,{className:a,...l},t?.map(({value:i,label:d,disabled:f})=>m.createElement(n.Option,{key:i,value:i,disabled:f},d))),m.createElement("span",{className:r[b.CaptionLabel],"aria-hidden":!0},o?.label,m.createElement(n.Chevron,{orientation:"down",size:18,className:r[b.Chevron]})))}function Wr(e){return m.createElement("div",{...e})}function Tr(e){return m.createElement("div",{...e})}function Er(e){const{calendarMonth:t,displayIndex:s,...n}=e;return m.createElement("div",{...n},e.children)}function _r(e){const{calendarMonth:t,displayIndex:s,...n}=e;return m.createElement("div",{...n})}function Ir(e){return m.createElement("table",{...e})}function Yr(e){return m.createElement("div",{...e})}const Ht=O.createContext(void 0);function xe(){const e=O.useContext(Ht);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function Fr(e){const{components:t}=xe();return m.createElement(t.Dropdown,{...e})}function Pr(e){const{onPreviousClick:t,onNextClick:s,previousMonth:n,nextMonth:r,...l}=e,{components:a,classNames:o,labels:{labelPrevious:i,labelNext:d}}=xe(),f=O.useCallback(h=>{r&&s?.(h)},[r,s]),u=O.useCallback(h=>{n&&t?.(h)},[n,t]);return m.createElement("nav",{...l},m.createElement(a.PreviousMonthButton,{type:"button",className:o[b.PreviousMonthButton],tabIndex:n?void 0:-1,"aria-disabled":n?void 0:!0,"aria-label":i(n),onClick:u},m.createElement(a.Chevron,{disabled:n?void 0:!0,className:o[b.Chevron],orientation:"left"})),m.createElement(a.NextMonthButton,{type:"button",className:o[b.NextMonthButton],tabIndex:r?void 0:-1,"aria-disabled":r?void 0:!0,"aria-label":d(r),onClick:f},m.createElement(a.Chevron,{disabled:r?void 0:!0,orientation:"right",className:o[b.Chevron]})))}function Br(e){const{components:t}=xe();return m.createElement(t.Button,{...e})}function Rr(e){return m.createElement("option",{...e})}function Ar(e){const{components:t}=xe();return m.createElement(t.Button,{...e})}function zr(e){const{rootRef:t,...s}=e;return m.createElement("div",{...s,ref:t})}function qr(e){return m.createElement("select",{...e})}function Hr(e){const{week:t,...s}=e;return m.createElement("tr",{...s})}function $r(e){return m.createElement("th",{...e})}function Ur(e){return m.createElement("thead",{"aria-hidden":!0},m.createElement("tr",{...e}))}function Gr(e){const{week:t,...s}=e;return m.createElement("th",{...s})}function Kr(e){return m.createElement("th",{...e})}function Vr(e){return m.createElement("tbody",{...e})}function Zr(e){const{components:t}=xe();return m.createElement(t.Dropdown,{...e})}const Xr=Object.freeze(Object.defineProperty({__proto__:null,Button:wr,CaptionLabel:Sr,Chevron:Or,Day:Cr,DayButton:Nr,Dropdown:jr,DropdownNav:Wr,Footer:Tr,Month:Er,MonthCaption:_r,MonthGrid:Ir,Months:Yr,MonthsDropdown:Fr,Nav:Pr,NextMonthButton:Br,Option:Rr,PreviousMonthButton:Ar,Root:zr,Select:qr,Week:Hr,WeekNumber:Gr,WeekNumberHeader:Kr,Weekday:$r,Weekdays:Ur,Weeks:Vr,YearsDropdown:Zr},Symbol.toStringTag,{value:"Module"}));function se(e,t,s=!1,n=ee){let{from:r,to:l}=e;const{differenceInCalendarDays:a,isSameDay:o}=n;return r&&l?(a(l,r)<0&&([r,l]=[l,r]),a(t,r)>=(s?1:0)&&a(l,t)>=(s?1:0)):!s&&l?o(l,t):!s&&r?o(r,t):!1}function Qe(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function Se(e){return!!(e&&typeof e=="object"&&"from"in e)}function Je(e){return!!(e&&typeof e=="object"&&"after"in e)}function Le(e){return!!(e&&typeof e=="object"&&"before"in e)}function $t(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function Ut(e,t){return Array.isArray(e)&&e.every(t.isDate)}function re(e,t,s=ee){const n=Array.isArray(t)?t:[t],{isSameDay:r,differenceInCalendarDays:l,isAfter:a}=s;return n.some(o=>{if(typeof o=="boolean")return o;if(s.isDate(o))return r(e,o);if(Ut(o,s))return o.some(i=>r(e,i));if(Se(o))return se(o,e,!1,s);if($t(o))return Array.isArray(o.dayOfWeek)?o.dayOfWeek.includes(e.getDay()):o.dayOfWeek===e.getDay();if(Qe(o)){const i=l(o.before,e),d=l(o.after,e),f=i>0,u=d<0;return a(o.before,o.after)?u&&f:f||u}return Je(o)?l(e,o.after)>0:Le(o)?l(o.before,e)>0:typeof o=="function"?o(e):!1})}function Qr(e,t,s,n,r){const{disabled:l,hidden:a,modifiers:o,showOutsideDays:i,broadcastCalendar:d,today:f=r.today()}=t,{isSameDay:u,isSameMonth:h,startOfMonth:y,isBefore:S,endOfMonth:v,isAfter:p}=r,k=s&&y(s),W=n&&v(n),w={[Y.focused]:[],[Y.outside]:[],[Y.disabled]:[],[Y.hidden]:[],[Y.today]:[]},M={};for(const x of e){const{date:g,displayMonth:N}=x,T=!!(N&&!h(g,N)),P=!!(k&&S(g,k)),F=!!(W&&p(g,W)),Q=!!(l&&re(g,l,r)),ae=!!(a&&re(g,a,r))||P||F||!d&&!i&&T||d&&i===!1&&T,te=u(g,f);T&&w.outside.push(x),Q&&w.disabled.push(x),ae&&w.hidden.push(x),te&&w.today.push(x),o&&Object.keys(o).forEach($=>{const me=o?.[$];me&&re(g,me,r)&&(M[$]?M[$].push(x):M[$]=[x])})}return x=>{const g={[Y.focused]:!1,[Y.disabled]:!1,[Y.hidden]:!1,[Y.outside]:!1,[Y.today]:!1},N={};for(const T in w){const P=w[T];g[T]=P.some(F=>F===x)}for(const T in M)N[T]=M[T].some(P=>P===x);return{...g,...N}}}function Jr(e,t,s={}){return Object.entries(e).filter(([,r])=>r===!0).reduce((r,[l])=>(s[l]?r.push(s[l]):t[Y[l]]?r.push(t[Y[l]]):t[X[l]]&&r.push(t[X[l]]),r),[t[b.Day]])}function Lr(e){return{...Xr,...e}}function eo(e){const t={"data-mode":e.mode??void 0,"data-required":"required"in e?e.required:void 0,"data-multiple-months":e.numberOfMonths&&e.numberOfMonths>1||void 0,"data-week-numbers":e.showWeekNumber||void 0,"data-broadcast-calendar":e.broadcastCalendar||void 0,"data-nav-layout":e.navLayout||void 0};return Object.entries(e).forEach(([s,n])=>{s.startsWith("data-")&&(t[s]=n)}),t}function et(){const e={};for(const t in b)e[b[t]]=`rdp-${b[t]}`;for(const t in Y)e[Y[t]]=`rdp-${Y[t]}`;for(const t in X)e[X[t]]=`rdp-${X[t]}`;for(const t in z)e[z[t]]=`rdp-${z[t]}`;return e}function Gt(e,t,s){return(s??new H(t)).formatMonthYear(e)}const to=Gt;function no(e,t,s){return(s??new H(t)).format(e,"d")}function so(e,t=ee){return t.format(e,"LLLL")}function ro(e,t,s){return(s??new H(t)).format(e,"cccccc")}function oo(e,t=ee){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function ao(){return""}function Kt(e,t=ee){return t.format(e,"yyyy")}const io=Kt,lo=Object.freeze(Object.defineProperty({__proto__:null,formatCaption:Gt,formatDay:no,formatMonthCaption:to,formatMonthDropdown:so,formatWeekNumber:oo,formatWeekNumberHeader:ao,formatWeekdayName:ro,formatYearCaption:io,formatYearDropdown:Kt},Symbol.toStringTag,{value:"Module"}));function co(e){return e?.formatMonthCaption&&!e.formatCaption&&(e.formatCaption=e.formatMonthCaption),e?.formatYearCaption&&!e.formatYearDropdown&&(e.formatYearDropdown=e.formatYearCaption),{...lo,...e}}function tt(e,t,s,n){let r=(n??new H(s)).format(e,"PPPP");return t.today&&(r=`Today, ${r}`),t.selected&&(r=`${r}, selected`),r}const uo=tt;function nt(e,t,s){return(s??new H(t)).formatMonthYear(e)}const fo=nt;function Vt(e,t,s,n){let r=(n??new H(s)).format(e,"PPPP");return t?.today&&(r=`Today, ${r}`),r}function Zt(e){return"Choose the Month"}function Xt(){return""}const ho="Go to the Next Month";function Qt(e,t){return ho}function Jt(e){return"Go to the Previous Month"}function Lt(e,t,s){return(s??new H(t)).format(e,"cccc")}function en(e,t){return`Week ${e}`}function tn(e){return"Week Number"}function nn(e){return"Choose the Year"}const mo=Object.freeze(Object.defineProperty({__proto__:null,labelCaption:fo,labelDay:uo,labelDayButton:tt,labelGrid:nt,labelGridcell:Vt,labelMonthDropdown:Zt,labelNav:Xt,labelNext:Qt,labelPrevious:Jt,labelWeekNumber:en,labelWeekNumberHeader:tn,labelWeekday:Lt,labelYearDropdown:nn},Symbol.toStringTag,{value:"Module"})),V=(e,t,s)=>t||(s?typeof s=="function"?s:(...n)=>s:e);function go(e,t){const s=t.locale?.labels??{};return{...mo,...e??{},labelDayButton:V(tt,e?.labelDayButton,s.labelDayButton),labelMonthDropdown:V(Zt,e?.labelMonthDropdown,s.labelMonthDropdown),labelNext:V(Qt,e?.labelNext,s.labelNext),labelPrevious:V(Jt,e?.labelPrevious,s.labelPrevious),labelWeekNumber:V(en,e?.labelWeekNumber,s.labelWeekNumber),labelYearDropdown:V(nn,e?.labelYearDropdown,s.labelYearDropdown),labelGrid:V(nt,e?.labelGrid,s.labelGrid),labelGridcell:V(Vt,e?.labelGridcell,s.labelGridcell),labelNav:V(Xt,e?.labelNav,s.labelNav),labelWeekNumberHeader:V(tn,e?.labelWeekNumberHeader,s.labelWeekNumberHeader),labelWeekday:V(Lt,e?.labelWeekday,s.labelWeekday)}}function yo(e,t,s,n,r){const{startOfMonth:l,startOfYear:a,endOfYear:o,eachMonthOfInterval:i,getMonth:d}=r;return i({start:a(e),end:o(e)}).map(h=>{const y=n.formatMonthDropdown(h,r),S=d(h),v=t&&h<l(t)||s&&h>l(s)||!1;return{value:S,label:y,disabled:v}})}function po(e,t={},s={}){let n={...t?.[b.Day]};return Object.entries(e).filter(([,r])=>r===!0).forEach(([r])=>{n={...n,...s?.[r]}}),n}function bo(e,t,s,n){const r=n??e.today(),l=s?e.startOfBroadcastWeek(r,e):t?e.startOfISOWeek(r):e.startOfWeek(r),a=[];for(let o=0;o<7;o++){const i=e.addDays(l,o);a.push(i)}return a}function vo(e,t,s,n,r=!1){if(!e||!t)return;const{startOfYear:l,endOfYear:a,eachYearOfInterval:o,getYear:i}=n,d=l(e),f=a(t),u=o({start:d,end:f});return r&&u.reverse(),u.map(h=>{const y=s.formatYearDropdown(h,n);return{value:i(h),label:y,disabled:!1}})}function xo(e,t={}){const{weekStartsOn:s,locale:n}=t,r=s??n?.options?.weekStartsOn??0,l=o=>{const i=typeof o=="number"||typeof o=="string"?new Date(o):o;return new B(i.getFullYear(),i.getMonth(),i.getDate(),12,0,0,e)},a=o=>{const i=l(o);return new Date(i.getFullYear(),i.getMonth(),i.getDate(),0,0,0,0)};return{today:()=>l(B.tz(e)),newDate:(o,i,d)=>new B(o,i,d,12,0,0,e),startOfDay:o=>l(o),startOfWeek:(o,i)=>{const d=l(o),f=i?.weekStartsOn??r,u=(d.getDay()-f+7)%7;return d.setDate(d.getDate()-u),d},startOfISOWeek:o=>{const i=l(o),d=(i.getDay()-1+7)%7;return i.setDate(i.getDate()-d),i},startOfMonth:o=>{const i=l(o);return i.setDate(1),i},startOfYear:o=>{const i=l(o);return i.setMonth(0,1),i},endOfWeek:(o,i)=>{const d=l(o),h=(((i?.weekStartsOn??r)+6)%7-d.getDay()+7)%7;return d.setDate(d.getDate()+h),d},endOfISOWeek:o=>{const i=l(o),d=(7-i.getDay())%7;return i.setDate(i.getDate()+d),i},endOfMonth:o=>{const i=l(o);return i.setMonth(i.getMonth()+1,0),i},endOfYear:o=>{const i=l(o);return i.setMonth(11,31),i},eachMonthOfInterval:o=>{const i=l(o.start),d=l(o.end),f=[],u=new B(i.getFullYear(),i.getMonth(),1,12,0,0,e),h=d.getFullYear()*12+d.getMonth();for(;u.getFullYear()*12+u.getMonth()<=h;)f.push(new B(u,e)),u.setMonth(u.getMonth()+1,1);return f},addDays:(o,i)=>{const d=l(o);return d.setDate(d.getDate()+i),d},addWeeks:(o,i)=>{const d=l(o);return d.setDate(d.getDate()+i*7),d},addMonths:(o,i)=>{const d=l(o);return d.setMonth(d.getMonth()+i),d},addYears:(o,i)=>{const d=l(o);return d.setFullYear(d.getFullYear()+i),d},eachYearOfInterval:o=>{const i=l(o.start),d=l(o.end),f=[],u=new B(i.getFullYear(),0,1,12,0,0,e);for(;u.getFullYear()<=d.getFullYear();)f.push(new B(u,e)),u.setFullYear(u.getFullYear()+1,0,1);return f},getWeek:(o,i)=>{const d=a(o);return It(d,{weekStartsOn:i?.weekStartsOn??r,firstWeekContainsDate:i?.firstWeekContainsDate??n?.options?.firstWeekContainsDate??1})},getISOWeek:o=>{const i=a(o);return _t(i)},differenceInCalendarDays:(o,i)=>{const d=a(o),f=a(i);return Et(d,f)},differenceInCalendarMonths:(o,i)=>{const d=a(o),f=a(i);return Ft(d,f)}}}const De=e=>e instanceof HTMLElement?e:null,Be=e=>[...e.querySelectorAll("[data-animated-month]")??[]],Do=e=>De(e.querySelector("[data-animated-month]")),Re=e=>De(e.querySelector("[data-animated-caption]")),Ae=e=>De(e.querySelector("[data-animated-weeks]")),ko=e=>De(e.querySelector("[data-animated-nav]")),Mo=e=>De(e.querySelector("[data-animated-weekdays]"));function wo(e,t,{classNames:s,months:n,focused:r,dateLib:l}){const a=O.useRef(null),o=O.useRef(n),i=O.useRef(!1);O.useLayoutEffect(()=>{const d=o.current;if(o.current=n,!t||!e.current||!(e.current instanceof HTMLElement)||n.length===0||d.length===0||n.length!==d.length)return;const f=l.isSameMonth(n[0].date,d[0].date),u=l.isAfter(n[0].date,d[0].date),h=u?s[z.caption_after_enter]:s[z.caption_before_enter],y=u?s[z.weeks_after_enter]:s[z.weeks_before_enter],S=a.current,v=e.current.cloneNode(!0);if(v instanceof HTMLElement?(Be(v).forEach(w=>{if(!(w instanceof HTMLElement))return;const M=Do(w);M&&w.contains(M)&&w.removeChild(M);const x=Re(w);x&&x.classList.remove(h);const g=Ae(w);g&&g.classList.remove(y)}),a.current=v):a.current=null,i.current||f||r)return;const p=S instanceof HTMLElement?Be(S):[],k=Be(e.current);if(k?.every(W=>W instanceof HTMLElement)&&p&&p.every(W=>W instanceof HTMLElement)){i.current=!0,e.current.style.isolation="isolate";const W=ko(e.current);W&&(W.style.zIndex="1"),k.forEach((w,M)=>{const x=p[M];if(!x)return;w.style.position="relative",w.style.overflow="hidden";const g=Re(w);g&&g.classList.add(h);const N=Ae(w);N&&N.classList.add(y);const T=()=>{i.current=!1,e.current&&(e.current.style.isolation=""),W&&(W.style.zIndex=""),g&&g.classList.remove(h),N&&N.classList.remove(y),w.style.position="",w.style.overflow="",w.contains(x)&&w.removeChild(x)};x.style.pointerEvents="none",x.style.position="absolute",x.style.overflow="hidden",x.setAttribute("aria-hidden","true");const P=Mo(x);P&&(P.style.opacity="0");const F=Re(x);F&&(F.classList.add(u?s[z.caption_before_exit]:s[z.caption_after_exit]),F.addEventListener("animationend",T));const Q=Ae(x);Q&&Q.classList.add(u?s[z.weeks_before_exit]:s[z.weeks_after_exit]),w.insertBefore(x,w.firstChild)})}})}function So(e,t,s,n){const r=e[0],l=e[e.length-1],{ISOWeek:a,fixedWeeks:o,broadcastCalendar:i}=s??{},{addDays:d,differenceInCalendarDays:f,differenceInCalendarMonths:u,endOfBroadcastWeek:h,endOfISOWeek:y,endOfMonth:S,endOfWeek:v,isAfter:p,startOfBroadcastWeek:k,startOfISOWeek:W,startOfWeek:w}=n,M=i?k(r,n):a?W(r):w(r),x=i?h(l):a?y(S(l)):v(S(l)),g=t&&(i?h(t):a?y(t):v(t)),N=g&&p(x,g)?g:x,T=f(N,M),P=u(l,r)+1,F=[];for(let te=0;te<=T;te++){const $=d(M,te);F.push($)}const ae=(i?35:42)*P;if(o&&F.length<ae){const te=ae-F.length;for(let $=0;$<te;$++){const me=d(F[F.length-1],1);F.push(me)}}return F}function Oo(e){const t=[];return e.reduce((s,n)=>{const r=n.weeks.reduce((l,a)=>l.concat(a.days.slice()),t.slice());return s.concat(r.slice())},t.slice())}function Co(e,t,s,n){const{numberOfMonths:r=1}=s,l=[];for(let a=0;a<r;a++){const o=n.addMonths(e,a);if(t&&o>t)break;l.push(o)}return l}function pt(e,t,s,n){const{month:r,defaultMonth:l,today:a=n.today(),numberOfMonths:o=1}=e;let i=r||l||a;const{differenceInCalendarMonths:d,addMonths:f,startOfMonth:u}=n;if(s&&d(s,i)<o-1){const h=-1*(o-1);i=f(s,h)}return t&&d(i,t)<0&&(i=t),u(i)}function No(e,t,s,n){const{addDays:r,endOfBroadcastWeek:l,endOfISOWeek:a,endOfMonth:o,endOfWeek:i,getISOWeek:d,getWeek:f,startOfBroadcastWeek:u,startOfISOWeek:h,startOfWeek:y}=n,S=e.reduce((v,p)=>{const k=s.broadcastCalendar?u(p,n):s.ISOWeek?h(p):y(p),W=s.broadcastCalendar?l(p):s.ISOWeek?a(o(p)):i(o(p)),w=t.filter(N=>N>=k&&N<=W),M=s.broadcastCalendar?35:42;if(s.fixedWeeks&&w.length<M){const N=t.filter(T=>{const P=M-w.length;return T>W&&T<=r(W,P)});w.push(...N)}const x=w.reduce((N,T)=>{const P=s.ISOWeek?d(T):f(T),F=N.find(ae=>ae.weekNumber===P),Q=new qt(T,p,n);return F?F.days.push(Q):N.push(new Mr(P,[Q])),N},[]),g=new kr(p,x);return v.push(g),v},[]);return s.reverseMonths?S.reverse():S}function jo(e,t){let{startMonth:s,endMonth:n}=e;const{startOfYear:r,startOfDay:l,startOfMonth:a,endOfMonth:o,addYears:i,endOfYear:d,newDate:f,today:u}=t,{fromYear:h,toYear:y,fromMonth:S,toMonth:v}=e;!s&&S&&(s=S),!s&&h&&(s=t.newDate(h,0,1)),!n&&v&&(n=v),!n&&y&&(n=f(y,11,31));const p=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return s?s=a(s):h?s=f(h,0,1):!s&&p&&(s=r(i(e.today??u(),-100))),n?n=o(n):y?n=f(y,11,31):!n&&p&&(n=d(e.today??u())),[s&&l(s),n&&l(n)]}function Wo(e,t,s,n){if(s.disableNavigation)return;const{pagedNavigation:r,numberOfMonths:l=1}=s,{startOfMonth:a,addMonths:o,differenceInCalendarMonths:i}=n,d=r?l:1,f=a(e);if(!t)return o(f,d);if(!(i(t,e)<l))return o(f,d)}function To(e,t,s,n){if(s.disableNavigation)return;const{pagedNavigation:r,numberOfMonths:l}=s,{startOfMonth:a,addMonths:o,differenceInCalendarMonths:i}=n,d=r?l??1:1,f=a(e);if(!t)return o(f,-d);if(!(i(f,t)<=0))return o(f,-d)}function Eo(e){const t=[];return e.reduce((s,n)=>s.concat(n.weeks.slice()),t.slice())}function Oe(e,t){const[s,n]=O.useState(e);return[t===void 0?s:t,n]}function _o(e,t){const[s,n]=jo(e,t),{startOfMonth:r,endOfMonth:l}=t,a=pt(e,s,n,t),[o,i]=Oe(a,e.month?a:void 0);O.useEffect(()=>{const M=pt(e,s,n,t);i(M)},[e.timeZone]);const{months:d,weeks:f,days:u,previousMonth:h,nextMonth:y}=O.useMemo(()=>{const M=Co(o,n,{numberOfMonths:e.numberOfMonths},t),x=So(M,e.endMonth?l(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),g=No(M,x,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t),N=Eo(g),T=Oo(g),P=To(o,s,e,t),F=Wo(o,n,e,t);return{months:g,weeks:N,days:T,previousMonth:P,nextMonth:F}},[t,o.getTime(),n?.getTime(),s?.getTime(),e.disableNavigation,e.broadcastCalendar,e.endMonth?.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:S,onMonthChange:v}=e,p=M=>f.some(x=>x.days.some(g=>g.isEqualTo(M))),k=M=>{if(S)return;let x=r(M);s&&x<r(s)&&(x=r(s)),n&&x>r(n)&&(x=r(n)),i(x),v?.(x)};return{months:d,weeks:f,days:u,navStart:s,navEnd:n,previousMonth:h,nextMonth:y,goToMonth:k,goToDay:M=>{p(M)||k(M.date)}}}var J;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})(J||(J={}));function bt(e){return!e[Y.disabled]&&!e[Y.hidden]&&!e[Y.outside]}function Io(e,t,s,n){let r,l=-1;for(const a of e){const o=t(a);bt(o)&&(o[Y.focused]&&l<J.FocusedModifier?(r=a,l=J.FocusedModifier):n?.isEqualTo(a)&&l<J.LastFocused?(r=a,l=J.LastFocused):s(a.date)&&l<J.Selected?(r=a,l=J.Selected):o[Y.today]&&l<J.Today&&(r=a,l=J.Today))}return r||(r=e.find(a=>bt(t(a)))),r}function Yo(e,t,s,n,r,l,a){const{ISOWeek:o,broadcastCalendar:i}=l,{addDays:d,addMonths:f,addWeeks:u,addYears:h,endOfBroadcastWeek:y,endOfISOWeek:S,endOfWeek:v,max:p,min:k,startOfBroadcastWeek:W,startOfISOWeek:w,startOfWeek:M}=a;let g={day:d,week:u,month:f,year:h,startOfWeek:N=>i?W(N,a):o?w(N):M(N),endOfWeek:N=>i?y(N):o?S(N):v(N)}[e](s,t==="after"?1:-1);return t==="before"&&n?g=p([n,g]):t==="after"&&r&&(g=k([r,g])),g}function sn(e,t,s,n,r,l,a,o=0){if(o>365)return;const i=Yo(e,t,s.date,n,r,l,a),d=!!(l.disabled&&re(i,l.disabled,a)),f=!!(l.hidden&&re(i,l.hidden,a)),u=i,h=new qt(i,u,a);return!d&&!f?h:sn(e,t,h,n,r,l,a,o+1)}function Fo(e,t,s,n,r){const{autoFocus:l}=e,[a,o]=O.useState(),i=Io(t.days,s,n||(()=>!1),a),[d,f]=O.useState(l?i:void 0);return{isFocusTarget:v=>!!i?.isEqualTo(v),setFocused:f,focused:d,blur:()=>{o(d),f(void 0)},moveFocus:(v,p)=>{if(!d)return;const k=sn(v,p,d,t.navStart,t.navEnd,e,r);k&&(e.disableNavigation&&!t.days.some(w=>w.isEqualTo(k))||(t.goToDay(k),f(k)))}}}function Po(e,t){const{selected:s,required:n,onSelect:r}=e,[l,a]=Oe(s,r?s:void 0),o=r?s:l,{isSameDay:i}=t,d=y=>o?.some(S=>i(S,y))??!1,{min:f,max:u}=e;return{selected:o,select:(y,S,v)=>{let p=[...o??[]];if(d(y)){if(o?.length===f||n&&o?.length===1)return;p=o?.filter(k=>!i(k,y))}else o?.length===u?p=[y]:p=[...p,y];return r||a(p),r?.(p,y,S,v),p},isSelected:d}}function Bo(e,t,s=0,n=0,r=!1,l=ee){const{from:a,to:o}=t||{},{isSameDay:i,isAfter:d,isBefore:f}=l;let u;if(!a&&!o)u={from:e,to:s>0?void 0:e};else if(a&&!o)i(a,e)?s===0?u={from:a,to:e}:r?u={from:a,to:void 0}:u=void 0:f(e,a)?u={from:e,to:a}:u={from:a,to:e};else if(a&&o)if(i(a,e)&&i(o,e))r?u={from:a,to:o}:u=void 0;else if(i(a,e))u={from:a,to:s>0?void 0:e};else if(i(o,e))u={from:e,to:s>0?void 0:e};else if(f(e,a))u={from:e,to:o};else if(d(e,a))u={from:a,to:e};else if(d(e,o))u={from:a,to:e};else throw new Error("Invalid range");if(u?.from&&u?.to){const h=l.differenceInCalendarDays(u.to,u.from);n>0&&h>n?u={from:e,to:void 0}:s>1&&h<s&&(u={from:e,to:void 0})}return u}function Ro(e,t,s=ee){const n=Array.isArray(t)?t:[t];let r=e.from;const l=s.differenceInCalendarDays(e.to,e.from),a=Math.min(l,6);for(let o=0;o<=a;o++){if(n.includes(r.getDay()))return!0;r=s.addDays(r,1)}return!1}function vt(e,t,s=ee){return se(e,t.from,!1,s)||se(e,t.to,!1,s)||se(t,e.from,!1,s)||se(t,e.to,!1,s)}function Ao(e,t,s=ee){const n=Array.isArray(t)?t:[t];if(n.filter(o=>typeof o!="function").some(o=>typeof o=="boolean"?o:s.isDate(o)?se(e,o,!1,s):Ut(o,s)?o.some(i=>se(e,i,!1,s)):Se(o)?o.from&&o.to?vt(e,{from:o.from,to:o.to},s):!1:$t(o)?Ro(e,o.dayOfWeek,s):Qe(o)?s.isAfter(o.before,o.after)?vt(e,{from:s.addDays(o.after,1),to:s.addDays(o.before,-1)},s):re(e.from,o,s)||re(e.to,o,s):Je(o)||Le(o)?re(e.from,o,s)||re(e.to,o,s):!1))return!0;const a=n.filter(o=>typeof o=="function");if(a.length){let o=e.from;const i=s.differenceInCalendarDays(e.to,e.from);for(let d=0;d<=i;d++){if(a.some(f=>f(o)))return!0;o=s.addDays(o,1)}}return!1}function zo(e,t){const{disabled:s,excludeDisabled:n,selected:r,required:l,onSelect:a}=e,[o,i]=Oe(r,a?r:void 0),d=a?r:o;return{selected:d,select:(h,y,S)=>{const{min:v,max:p}=e,k=h?Bo(h,d,v,p,l,t):void 0;return n&&s&&k?.from&&k.to&&Ao({from:k.from,to:k.to},s,t)&&(k.from=h,k.to=void 0),a||i(k),a?.(k,h,y,S),k},isSelected:h=>d&&se(d,h,!1,t)}}function qo(e,t){const{selected:s,required:n,onSelect:r}=e,[l,a]=Oe(s,r?s:void 0),o=r?s:l,{isSameDay:i}=t;return{selected:o,select:(u,h,y)=>{let S=u;return!n&&o&&o&&i(u,o)&&(S=void 0),r||a(S),r?.(S,u,h,y),S},isSelected:u=>o?i(o,u):!1}}function Ho(e,t){const s=qo(e,t),n=Po(e,t),r=zo(e,t);switch(e.mode){case"single":return s;case"multiple":return n;case"range":return r;default:return}}function U(e,t){return e instanceof B&&e.timeZone===t?e:new B(e,t)}function ge(e,t,s){return U(e,t)}function xt(e,t,s){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?ge(e,t):Array.isArray(e)?e.map(n=>n instanceof Date?ge(n,t):n):Se(e)?{...e,from:e.from?U(e.from,t):e.from,to:e.to?U(e.to,t):e.to}:Qe(e)?{before:ge(e.before,t),after:ge(e.after,t)}:Je(e)?{after:ge(e.after,t)}:Le(e)?{before:ge(e.before,t)}:e}function ze(e,t,s){return e&&(Array.isArray(e)?e.map(n=>xt(n,t)):xt(e,t))}function $o(e){let t=e;const s=t.timeZone;if(s&&(t={...e,timeZone:s},t.today&&(t.today=U(t.today,s)),t.month&&(t.month=U(t.month,s)),t.defaultMonth&&(t.defaultMonth=U(t.defaultMonth,s)),t.startMonth&&(t.startMonth=U(t.startMonth,s)),t.endMonth&&(t.endMonth=U(t.endMonth,s)),t.mode==="single"&&t.selected?t.selected=U(t.selected,s):t.mode==="multiple"&&t.selected?t.selected=t.selected?.map(C=>U(C,s)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?U(t.selected.from,s):t.selected.from,to:t.selected.to?U(t.selected.to,s):t.selected.to}),t.disabled!==void 0&&(t.disabled=ze(t.disabled,s)),t.hidden!==void 0&&(t.hidden=ze(t.hidden,s)),t.modifiers)){const C={};Object.keys(t.modifiers).forEach(I=>{C[I]=ze(t.modifiers?.[I],s)}),t.modifiers=C}const{components:n,formatters:r,labels:l,dateLib:a,locale:o,classNames:i}=O.useMemo(()=>{const C={...zt,...t.locale},I=t.broadcastCalendar?1:t.weekStartsOn,D=t.noonSafe&&t.timeZone?xo(t.timeZone,{weekStartsOn:I,locale:C}):void 0,E=t.dateLib&&D?{...D,...t.dateLib}:t.dateLib??D,A=new H({locale:C,weekStartsOn:I,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},E);return{dateLib:A,components:Lr(t.components),formatters:co(t.formatters),labels:go(t.labels,A.options),locale:C,classNames:{...et(),...t.classNames}}},[t.locale,t.broadcastCalendar,t.weekStartsOn,t.firstWeekContainsDate,t.useAdditionalWeekYearTokens,t.useAdditionalDayOfYearTokens,t.timeZone,t.numerals,t.dateLib,t.noonSafe,t.components,t.formatters,t.labels,t.classNames]);t.today||(t={...t,today:a.today()});const{captionLayout:d,mode:f,navLayout:u,numberOfMonths:h=1,onDayBlur:y,onDayClick:S,onDayFocus:v,onDayKeyDown:p,onDayMouseEnter:k,onDayMouseLeave:W,onNextClick:w,onPrevClick:M,showWeekNumber:x,styles:g}=t,{formatCaption:N,formatDay:T,formatMonthDropdown:P,formatWeekNumber:F,formatWeekNumberHeader:Q,formatWeekdayName:ae,formatYearDropdown:te}=r,$=_o(t,a),{days:me,months:ke,navStart:Ce,navEnd:Ne,previousMonth:G,nextMonth:K,goToMonth:ne}=$,je=Qr(me,t,Ce,Ne,a),{isSelected:We,select:Te,selected:Me}=Ho(t,a)??{},{blur:st,focused:rt,isFocusTarget:rn,moveFocus:ot,setFocused:we}=Fo(t,$,je,We??(()=>!1),a),{labelDayButton:on,labelGridcell:an,labelGrid:ln,labelMonthDropdown:cn,labelNav:at,labelPrevious:dn,labelNext:un,labelWeekday:fn,labelWeekNumber:hn,labelWeekNumberHeader:mn,labelYearDropdown:gn}=l,yn=O.useMemo(()=>bo(a,t.ISOWeek,t.broadcastCalendar,t.today),[a,t.ISOWeek,t.broadcastCalendar,t.today]),it=f!==void 0||S!==void 0,Ee=O.useCallback(()=>{G&&(ne(G),M?.(G))},[G,ne,M]),_e=O.useCallback(()=>{K&&(ne(K),w?.(K))},[ne,K,w]),pn=O.useCallback((C,I)=>D=>{D.preventDefault(),D.stopPropagation(),we(C),!I.disabled&&(Te?.(C.date,I,D),S?.(C.date,I,D))},[Te,S,we]),bn=O.useCallback((C,I)=>D=>{we(C),v?.(C.date,I,D)},[v,we]),vn=O.useCallback((C,I)=>D=>{st(),y?.(C.date,I,D)},[st,y]),xn=O.useCallback((C,I)=>D=>{const E={ArrowLeft:[D.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[D.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[D.shiftKey?"year":"week","after"],ArrowUp:[D.shiftKey?"year":"week","before"],PageUp:[D.shiftKey?"year":"month","before"],PageDown:[D.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(E[D.key]){D.preventDefault(),D.stopPropagation();const[A,j]=E[D.key];ot(A,j)}p?.(C.date,I,D)},[ot,p,t.dir]),Dn=O.useCallback((C,I)=>D=>{k?.(C.date,I,D)},[k]),kn=O.useCallback((C,I)=>D=>{W?.(C.date,I,D)},[W]),Mn=O.useCallback(C=>I=>{const D=Number(I.target.value),E=a.setMonth(a.startOfMonth(C),D);ne(E)},[a,ne]),wn=O.useCallback(C=>I=>{const D=Number(I.target.value),E=a.setYear(a.startOfMonth(C),D);ne(E)},[a,ne]),{className:Sn,style:On}=O.useMemo(()=>({className:[i[b.Root],t.className].filter(Boolean).join(" "),style:{...g?.[b.Root],...t.style}}),[i,t.className,t.style,g]),Cn=eo(t),lt=O.useRef(null);wo(lt,!!t.animate,{classNames:i,months:ke,focused:rt,dateLib:a});const Nn={dayPickerProps:t,selected:Me,select:Te,isSelected:We,months:ke,nextMonth:K,previousMonth:G,goToMonth:ne,getModifiers:je,components:n,classNames:i,styles:g,labels:l,formatters:r};return m.createElement(Ht.Provider,{value:Nn},m.createElement(n.Root,{rootRef:t.animate?lt:void 0,className:Sn,style:On,dir:t.dir,id:t.id,lang:t.lang,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t["aria-label"],"aria-labelledby":t["aria-labelledby"],...Cn},m.createElement(n.Months,{className:i[b.Months],style:g?.[b.Months]},!t.hideNavigation&&!u&&m.createElement(n.Nav,{"data-animated-nav":t.animate?"true":void 0,className:i[b.Nav],style:g?.[b.Nav],"aria-label":at(),onPreviousClick:Ee,onNextClick:_e,previousMonth:G,nextMonth:K}),ke.map((C,I)=>m.createElement(n.Month,{"data-animated-month":t.animate?"true":void 0,className:i[b.Month],style:g?.[b.Month],key:I,displayIndex:I,calendarMonth:C},u==="around"&&!t.hideNavigation&&I===0&&m.createElement(n.PreviousMonthButton,{type:"button",className:i[b.PreviousMonthButton],tabIndex:G?void 0:-1,"aria-disabled":G?void 0:!0,"aria-label":dn(G),onClick:Ee,"data-animated-button":t.animate?"true":void 0},m.createElement(n.Chevron,{disabled:G?void 0:!0,className:i[b.Chevron],orientation:t.dir==="rtl"?"right":"left"})),m.createElement(n.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:i[b.MonthCaption],style:g?.[b.MonthCaption],calendarMonth:C,displayIndex:I},d?.startsWith("dropdown")?m.createElement(n.DropdownNav,{className:i[b.Dropdowns],style:g?.[b.Dropdowns]},(()=>{const D=d==="dropdown"||d==="dropdown-months"?m.createElement(n.MonthsDropdown,{key:"month",className:i[b.MonthsDropdown],"aria-label":cn(),classNames:i,components:n,disabled:!!t.disableNavigation,onChange:Mn(C.date),options:yo(C.date,Ce,Ne,r,a),style:g?.[b.Dropdown],value:a.getMonth(C.date)}):m.createElement("span",{key:"month"},P(C.date,a)),E=d==="dropdown"||d==="dropdown-years"?m.createElement(n.YearsDropdown,{key:"year",className:i[b.YearsDropdown],"aria-label":gn(a.options),classNames:i,components:n,disabled:!!t.disableNavigation,onChange:wn(C.date),options:vo(Ce,Ne,r,a,!!t.reverseYears),style:g?.[b.Dropdown],value:a.getYear(C.date)}):m.createElement("span",{key:"year"},te(C.date,a));return a.getMonthYearOrder()==="year-first"?[E,D]:[D,E]})(),m.createElement("span",{role:"status","aria-live":"polite",style:{border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap",wordWrap:"normal"}},N(C.date,a.options,a))):m.createElement(n.CaptionLabel,{className:i[b.CaptionLabel],role:"status","aria-live":"polite"},N(C.date,a.options,a))),u==="around"&&!t.hideNavigation&&I===h-1&&m.createElement(n.NextMonthButton,{type:"button",className:i[b.NextMonthButton],tabIndex:K?void 0:-1,"aria-disabled":K?void 0:!0,"aria-label":un(K),onClick:_e,"data-animated-button":t.animate?"true":void 0},m.createElement(n.Chevron,{disabled:K?void 0:!0,className:i[b.Chevron],orientation:t.dir==="rtl"?"left":"right"})),I===h-1&&u==="after"&&!t.hideNavigation&&m.createElement(n.Nav,{"data-animated-nav":t.animate?"true":void 0,className:i[b.Nav],style:g?.[b.Nav],"aria-label":at(),onPreviousClick:Ee,onNextClick:_e,previousMonth:G,nextMonth:K}),m.createElement(n.MonthGrid,{role:"grid","aria-multiselectable":f==="multiple"||f==="range","aria-label":ln(C.date,a.options,a)||void 0,className:i[b.MonthGrid],style:g?.[b.MonthGrid]},!t.hideWeekdays&&m.createElement(n.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:i[b.Weekdays],style:g?.[b.Weekdays]},x&&m.createElement(n.WeekNumberHeader,{"aria-label":mn(a.options),className:i[b.WeekNumberHeader],style:g?.[b.WeekNumberHeader],scope:"col"},Q()),yn.map(D=>m.createElement(n.Weekday,{"aria-label":fn(D,a.options,a),className:i[b.Weekday],key:String(D),style:g?.[b.Weekday],scope:"col"},ae(D,a.options,a)))),m.createElement(n.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:i[b.Weeks],style:g?.[b.Weeks]},C.weeks.map(D=>m.createElement(n.Week,{className:i[b.Week],key:D.weekNumber,style:g?.[b.Week],week:D},x&&m.createElement(n.WeekNumber,{week:D,style:g?.[b.WeekNumber],"aria-label":hn(D.weekNumber,{locale:o}),className:i[b.WeekNumber],scope:"row",role:"rowheader"},F(D.weekNumber,a)),D.days.map(E=>{const{date:A}=E,j=je(E);if(j[Y.focused]=!j.hidden&&!!rt?.isEqualTo(E),j[X.selected]=We?.(A)||j.selected,Se(Me)){const{from:Ie,to:Ye}=Me;j[X.range_start]=!!(Ie&&Ye&&a.isSameDay(A,Ie)),j[X.range_end]=!!(Ie&&Ye&&a.isSameDay(A,Ye)),j[X.range_middle]=se(Me,A,!0,a)}const jn=po(j,g,t.modifiersStyles),Wn=Jr(j,i,t.modifiersClassNames),Tn=!it&&!j.hidden?an(A,j,a.options,a):void 0;return m.createElement(n.Day,{key:`${E.isoDate}_${E.displayMonthId}`,day:E,modifiers:j,className:Wn.join(" "),style:jn,role:"gridcell","aria-selected":j.selected||void 0,"aria-label":Tn,"data-day":E.isoDate,"data-month":E.outside?E.dateMonthId:void 0,"data-selected":j.selected||void 0,"data-disabled":j.disabled||void 0,"data-hidden":j.hidden||void 0,"data-outside":E.outside||void 0,"data-focused":j.focused||void 0,"data-today":j.today||void 0},!j.hidden&&it?m.createElement(n.DayButton,{className:i[b.DayButton],style:g?.[b.DayButton],type:"button",day:E,modifiers:j,disabled:!j.focused&&j.disabled||void 0,"aria-disabled":j.focused&&j.disabled||void 0,tabIndex:rn(E)?0:-1,"aria-label":on(A,j,a.options,a),onClick:pn(E,j),onBlur:vn(E,j),onFocus:bn(E,j),onKeyDown:xn(E,j),onMouseEnter:Dn(E,j),onMouseLeave:kn(E,j)},T(A,a.options,a)):!j.hidden&&T(E.date,a.options,a))})))))))),t.footer&&m.createElement(n.Footer,{className:i[b.Footer],style:g?.[b.Footer],role:"status","aria-live":"polite"},t.footer)))}function Uo({className:e,classNames:t,showOutsideDays:s=!0,captionLayout:n="label",buttonVariant:r="ghost",formatters:l,components:a,...o}){const i=et();return c.jsx($o,{showOutsideDays:s,className:_("bg-white group/calendar p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent dark:bg-gray-950",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,e),captionLayout:n,formatters:{formatMonthDropdown:d=>d.toLocaleString("default",{month:"short"}),...l},classNames:{root:_("w-fit",i.root),months:_("flex gap-4 flex-col md:flex-row relative",i.months),month:_("flex flex-col w-full gap-4",i.month),nav:_("flex items-center gap-1 w-full absolute top-0 inset-x-0 justify-between",i.nav),button_previous:_(ut({variant:r}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",i.button_previous),button_next:_(ut({variant:r}),"size-(--cell-size) aria-disabled:opacity-50 p-0 select-none",i.button_next),month_caption:_("flex items-center justify-center h-(--cell-size) w-full px-(--cell-size)",i.month_caption),dropdowns:_("w-full flex items-center text-sm font-medium justify-center h-(--cell-size) gap-1.5",i.dropdowns),dropdown_root:_("relative has-focus:border-gray-950 border border-gray-200 shadow-xs has-focus:ring-gray-950/50 has-focus:ring-[3px] rounded-md dark:has-focus:border-gray-300 dark:border-gray-800 dark:has-focus:ring-gray-300/50",i.dropdown_root),dropdown:_("absolute bg-white inset-0 opacity-0 dark:bg-gray-950",i.dropdown),caption_label:_("select-none font-medium",n==="label"?"text-sm":"rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-gray-500 [&>svg]:size-3.5 dark:[&>svg]:text-gray-400",i.caption_label),table:"w-full border-collapse",weekdays:_("flex",i.weekdays),weekday:_("text-gray-500 rounded-md flex-1 font-normal text-[0.8rem] select-none dark:text-gray-400",i.weekday),week:_("flex w-full mt-2",i.week),week_number_header:_("select-none w-(--cell-size)",i.week_number_header),week_number:_("text-[0.8rem] select-none text-gray-500 dark:text-gray-400",i.week_number),day:_("relative w-full h-full p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md group/day aspect-square select-none",i.day),range_start:_("rounded-l-md bg-gray-100 dark:bg-gray-800",i.range_start),range_middle:_("rounded-none",i.range_middle),range_end:_("rounded-r-md bg-gray-100 dark:bg-gray-800",i.range_end),today:_("bg-gray-100 text-gray-900 rounded-md data-[selected=true]:rounded-none dark:bg-gray-800 dark:text-gray-50",i.today),outside:_("text-gray-500 aria-selected:text-gray-500 dark:text-gray-400 dark:aria-selected:text-gray-400",i.outside),disabled:_("text-gray-500 opacity-50 dark:text-gray-400",i.disabled),hidden:_("invisible",i.hidden),...t},components:{Root:({className:d,rootRef:f,...u})=>c.jsx("div",{"data-slot":"calendar",ref:f,className:_(d),...u}),Chevron:({className:d,orientation:f,...u})=>f==="left"?c.jsx(is,{className:_("size-4",d),...u}):f==="right"?c.jsx(ls,{className:_("size-4",d),...u}):c.jsx(ie,{className:_("size-4",d),...u}),DayButton:Go,WeekNumber:({children:d,...f})=>c.jsx("td",{...f,children:c.jsx("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:d})}),...a},...o})}function Go({className:e,day:t,modifiers:s,...n}){const r=et(),l=m.useRef(null);return m.useEffect(()=>{s.focused&&l.current?.focus()},[s.focused]),c.jsx(q,{ref:l,variant:"ghost",size:"icon","data-day":t.date.toLocaleDateString(),"data-selected-single":s.selected&&!s.range_start&&!s.range_end&&!s.range_middle,"data-range-start":s.range_start,"data-range-end":s.range_end,"data-range-middle":s.range_middle,className:_("data-[selected-single=true]:bg-gray-900 data-[selected-single=true]:text-gray-50 data-[range-middle=true]:bg-gray-100 data-[range-middle=true]:text-gray-900 data-[range-start=true]:bg-gray-900 data-[range-start=true]:text-gray-50 data-[range-end=true]:bg-gray-900 data-[range-end=true]:text-gray-50 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-gray-900 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md [&>span]:text-xs [&>span]:opacity-70 dark:data-[selected-single=true]:bg-gray-50 dark:data-[selected-single=true]:text-gray-900 dark:data-[range-middle=true]:bg-gray-800 dark:data-[range-middle=true]:text-gray-50 dark:data-[range-start=true]:bg-gray-50 dark:data-[range-start=true]:text-gray-900 dark:data-[range-end=true]:bg-gray-50 dark:data-[range-end=true]:text-gray-900 dark:dark:hover:text-gray-50",r.day,e),...n})}function qe(e){return e?Z(e,"yyyy-MM-dd"):""}function Ko(e){return e?!Number.isNaN(e.getTime()):!1}function Vo({value:e,onChange:t,disabled:s,...n}){const[r,l]=m.useState(!1),[a,o]=m.useState(e),[i,d]=m.useState(qe(e));return O.useEffect(()=>{e&&d(qe(e))},[e]),c.jsxs("div",{className:"relative flex gap-2",children:[c.jsx(Tt,{...n,disabled:s,value:i,onChange:f=>{d(f.target.value);const u=f.target.value?new Date(f.target.value):void 0;Ko(u)&&(t?.(u),o(u))},onKeyDown:f=>{f.key==="ArrowDown"&&(f.preventDefault(),l(!0))}}),c.jsxs(cs,{open:r,onOpenChange:l,children:[c.jsx(ds,{asChild:!0,children:c.jsxs(q,{id:"date-picker",variant:"ghost",className:"absolute top-1/2 right-2 size-6 -translate-y-1/2",disabled:s,children:[c.jsx(us,{className:"size-3.5"}),c.jsx("span",{className:"sr-only",children:"Select date"})]})}),c.jsx(fs,{className:"w-auto overflow-hidden p-0",align:"end",alignOffset:-8,sideOffset:10,children:c.jsx(Uo,{mode:"single",selected:e,captionLayout:"dropdown",month:a,onMonthChange:o,onSelect:f=>{t?.(f),d(qe(f??void 0)),l(!1)}})})]})]})}var He={exports:{}},$e,Dt;function Zo(){if(Dt)return $e;Dt=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return $e=e,$e}var Ue,kt;function Xo(){if(kt)return Ue;kt=1;var e=Zo();function t(){}function s(){}return s.resetWarningCache=t,Ue=function(){function n(a,o,i,d,f,u){if(u!==e){var h=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw h.name="Invariant Violation",h}}n.isRequired=n;function r(){return n}var l={array:n,bigint:n,bool:n,func:n,number:n,object:n,string:n,symbol:n,any:n,arrayOf:r,element:n,elementType:n,instanceOf:r,node:n,objectOf:r,oneOf:r,oneOfType:r,shape:r,exact:r,checkPropTypes:s,resetWarningCache:t};return l.PropTypes=l,l},Ue}var Mt;function Qo(){return Mt||(Mt=1,He.exports=Xo()()),He.exports}var Jo=Qo();const ha=hs(Jo),Lo=({close:e,transactionID:t,onChange:s})=>t?c.jsx(ms,{modalSize:"fit-content",position:"bottom",title:c.jsxs("div",{className:"flex flex-row mx-3 pt-3 sm:text-1xl gap-10",children:[c.jsx("h1",{className:"sm:text-2xl font-small text-gray-900",children:"Edit Transaction:"}),c.jsxs("div",{className:"flex flex-row gap-2",children:["ID: ",t,c.jsx(gs,{content:t}),c.jsx(lr,{transactionId:t})]})]}),opened:!!t,onClose:e,children:c.jsx(cr,{transactionID:t,onDone:e,onChange:s})}):null,ea=({onDone:e,transactionId:t,chargeId:s})=>{const[n,r]=O.useState(!1),[{data:l,fetching:a}]=Ot({query:ys,pause:!t,variables:{transactionId:t}}),o=l?.transactionsByIDs[0];function i(){r(!1),e?.()}return c.jsxs(ps,{open:n,onOpenChange:r,children:[c.jsx(Ze,{content:"Insert Related Misc Expense",children:c.jsx(bs,{asChild:!0,children:c.jsx(q,{variant:"ghost",size:"icon",className:"size-7.5",disabled:a,children:c.jsx(As,{className:"size-5"})})})}),c.jsxs(vs,{className:"sm:max-w-[425px]",children:[c.jsx(xs,{children:c.jsx(Ds,{children:"Insert Misc Expense"})}),o&&c.jsx(fr,{onDone:i,chargeId:s,defaultValues:{amount:o?.amount.raw?Math.abs(o?.amount.raw):void 0,currency:o?.amount.currency,invoiceDate:o?.eventDate,valueDate:o?.exactEffectiveDate||o?.effectiveDate?new Date(o.exactEffectiveDate??o.effectiveDate):void 0,creditorId:(o?.amount.raw??0)>0?o?.counterparty?.id:void 0,debtorId:(o?.amount.raw??0)<0?o?.counterparty?.id:void 0}})]})]})},ta=({transaction:e})=>{const t="effectiveDate"in e?e.effectiveDate:void 0;return c.jsxs("div",{className:"flex flex-col justify-center",children:[c.jsx("div",{children:t&&Z(new Date(t),"dd/MM/yy")}),e.sourceEffectiveDate&&c.jsxs("div",{className:"text-xs text-gray-500",children:["(Originally ",Z(new Date(e.sourceEffectiveDate),"dd/MM/yy"),")"]})]})},na=({transaction:e})=>{const t="eventDate"in e?e.eventDate:void 0;return c.jsx("div",{className:"flex flex-col justify-center",children:t&&Z(new Date(t),"dd/MM/yy")})},sa=({transaction:e})=>{const t="amount"in e?e.amount:void 0;return c.jsxs("div",{style:{color:Number(t?.raw)>0?"green":"red",whiteSpace:"nowrap"},children:[t?.formatted,c.jsx("br",{}),e.cryptoExchangeRate&&c.jsxs("span",{style:{color:"gray",marginLeft:"0.5rem"},children:[`(Rate: ${e.cryptoExchangeRate.rate})`,c.jsx("br",{}),t?.raw?`${ks(t.raw*e.cryptoExchangeRate.rate)}$`:null]})]})},ra=({transaction:e})=>{const{account:t}=e,s=t.type,n=t.name;return c.jsxs("div",{className:"flex flex-col justify-center",children:[c.jsx("p",{children:s}),c.jsx("p",{children:n})]})},oa=({transaction:e})=>{const t="sourceDescription"in e?e.sourceDescription:"Missing";return c.jsx("div",{className:"flex flex-wrap",children:c.jsx("div",{className:"flex flex-col justify-center",children:t})})},aa=({transaction:e})=>c.jsx("div",{className:"flex flex-wrap",children:c.jsx("div",{className:"flex flex-col justify-center",children:e.referenceKey})});function ia({transaction:e,onChange:t}){const{id:s,counterparty:n,missingInfoSuggestions:r,id:l,sourceDescription:a,enableEdit:o}=e,i=!!r?.business&&o,d=i?r?.business?.name:"Missing",f=i?r?.business?.id:null,u=n?.name??d,[h,y]=O.useState(!1),{updateTransaction:S,fetching:v}=Xe(),p=O.useCallback(async T=>{await S({transactionId:l,fields:{counterpartyId:T}}),y(!0)},[l,S]),k=O.useCallback(async T=>{await p(T),t?.()},[p,t]),{selectableBusinesses:W,fetching:w}=Ms(),[M,x]=O.useState(f??null),[g,N]=O.useState(a);return c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"flex flex-wrap flex-col justify-center",children:n?.id?c.jsx(wt,{to:St.BUSINESSES.DETAIL(n.id),target:"_blank",rel:"noreferrer",onClick:T=>T.stopPropagation(),className:"inline-flex items-center font-semibold",children:u}):c.jsxs(c.Fragment,{children:[c.jsx(ws,{options:W,value:M,onChange:x,search:g,onSearchChange:N,placeholder:"Choose or create a business",empty:g?c.jsx(Ss,{description:g,onAdd:k}):null}),c.jsx(Ze,{content:"Approve",children:c.jsx(q,{variant:"outline",size:"icon",onClick:()=>M&&p(M),disabled:v||w||!M,children:c.jsx(Os,{className:"size-4"})})})]})}),c.jsx(Rs,{transactionId:s,counterpartyId:n?.id??M,open:h,onOpenChange:y,onClose:t})]})}const Ge=[{accessorKey:"counterparty.name",header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Counterparty",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(ia,{transaction:e.original})},{accessorKey:"eventDate",sortingFn:e=>"eventDate"in e.original&&e.original.eventDate?new Date(e.original.eventDate).getTime():0,header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Event Date",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(na,{transaction:e.original})},{accessorKey:"effectiveDate",sortingFn:e=>"effectiveDate"in e.original&&e.original.effectiveDate?new Date(e.original.effectiveDate).getTime():0,header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Debit Date",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(ta,{transaction:e.original})},{accessorKey:"amount.raw",header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Amount",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(sa,{transaction:e.original})},{accessorKey:"account.name",header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Account",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(ra,{transaction:e.original})},{accessorKey:"sourceDescription",header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Description",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(oa,{transaction:e.original})},{accessorKey:"referenceKey",header:({column:e})=>c.jsxs(q,{variant:"ghost",onClick:()=>e.toggleSorting(e.getIsSorted()==="asc"),children:["Reference#",e.getIsSorted()&&(e.getIsSorted()==="asc"?c.jsx(ue,{className:"ml-2 h-4 w-4"}):c.jsx(ie,{className:"ml-2 h-4 w-4"}))]}),cell:({row:e})=>c.jsx(aa,{transaction:e.original})}],la={accessorKey:"id",header:"Actions",cell:({row:e})=>e.original.enableEdit?c.jsxs(c.Fragment,{children:[c.jsx(Cs,{onClick:()=>e.original.editTransaction(e.original.id),tooltip:"Edit Transaction"}),c.jsx(ea,{chargeId:e.original.chargeId,transactionId:e.original.id,onDone:e.original.onUpdate})]}):e.original.enableChargeLink?c.jsx(ir,{chargeId:e.original.chargeId}):null},ma=({transactionsProps:e,onChange:t,enableEdit:s,enableChargeLink:n})=>{const[r,l]=O.useState(void 0),[a,o]=O.useState([]),i=O.useMemo(()=>e.map(h=>Ns(js,h)),[e]),d=O.useMemo(()=>i.map(h=>({...h,editTransaction:l,onUpdate:t||(()=>{}),enableEdit:s,enableChargeLink:n})),[i,s,n,t]),f=O.useMemo(()=>s||n?[...Ge,la]:Ge,[s,n]),u=Ws({data:d,columns:f,getCoreRowModel:_s(),onSortingChange:o,getSortedRowModel:Es(),getPaginationRowModel:Ts(),state:{sorting:a},initialState:{pagination:{pageIndex:0,pageSize:100},sorting:[{id:"eventDate",desc:!0}]}});return c.jsxs(c.Fragment,{children:[c.jsxs(Is,{children:[c.jsx(Ys,{children:u.getHeaderGroups().map(h=>c.jsx(Pe,{children:h.headers.map(y=>c.jsx(Fs,{colSpan:y.colSpan,children:y.isPlaceholder?null:ft(y.column.columnDef.header,y.getContext())},y.id))},h.id))}),c.jsx(Ps,{children:u.getRowModel().rows?.length?u.getRowModel().rows.map(h=>c.jsx(Pe,{children:h.getVisibleCells().map(y=>c.jsx(ht,{children:ft(y.column.columnDef.cell,y.getContext())},y.id))},h.id)):c.jsx(Pe,{children:c.jsx(ht,{colSpan:Ge.length,className:"h-24 text-center",children:"No results."})})})]}),u.getPageCount()>1&&c.jsx("div",{className:"flex items-center justify-end space-x-2 py-4",children:c.jsx(Bs,{currentPageIndex:u.getState().pagination.pageIndex,totalPages:u.getPageCount(),onChange:h=>u.setPageIndex(h)})}),c.jsx(Lo,{transactionID:r,close:()=>l(void 0),onChange:t??(()=>{})})]})};export{sa as A,ia as C,ta as D,qs as E,fr as I,mr as M,ha as P,aa as S,ma as T,na as a,ra as b,oa as c,ir as d};
|