UNPKG

@accounter/client

Version:
3 lines 94 kB
import{v as oe,u as re,S as Ks,r as j,j as e,D as Te,w as Be,x as Ys,c as as,y as Xs,g as Ee,t as K,i as Pe,U as Js,z as Oe,E as ts,G as Ce,H as Y,J as X,K as Ss,N as J,O as Q,Q as Le,V as Z,W as le,X as g,Y as f,Z as v,_ as N,I as w,$ as S,a0 as b,a1 as Ae,B as T,a2 as ae,a3 as te,a4 as is,a5 as fe,a6 as Qs,a7 as rs,a8 as Ts,a9 as cs,aa as pe,ab as me,ac as ls,ad as Zs,ae as R,af as ie,ag as en,ah as he,R as Bs,ai as xe,aj as sn,ak as nn,al as Es,am as os,an as ds,ao as ms,ap as Ue,aq as He,ar as qe,as as Ge,at as We,au as ce,av as Ke,aw as ke,ax as Ps,ay as Ye,az as Os,aA as an,aB as Xe,aC as tn,aD as rn,aE as us,aF as cn,P as ln,aG as on,aH as U,aI as xs,aJ as Me,aK as dn,aL as mn,aM as un,aN as Ls,aO as hn,aP as xn,aQ as pn,aR as jn,aS as gn,aT as Fs,aU as fn,aV as P,aW as Je,aX as Ms,aY as Qe,aZ as ps,a_ as vn,a$ as _s,b0 as yn,b1 as Nn,b2 as bn,b3 as de,b4 as Cn,b5 as An,b6 as wn,b7 as In,b8 as Dn,b9 as kn,ba as Sn,bb as js,bc as Tn,bd as Bn,be as En,bf as Pn,bg as gs,bh as On,bi as Ln,bj as Fn,bk as Mn,F as _n,bl as Rn,bm as zn,bn as se,bo as Vn,bp as $n,bq as Un,br as W,bs as Hn,a as qn,b as Gn,bt as Wn}from"./index-CDv8MTrU.js";import{f as Kn,M as Yn,C as Xn,L as Jn}from"./charges-table-BVxQTfBE.js";import{S as hs}from"./save-DEuasK72.js";import{g as Qn,a as Rs}from"./similar-transactions-modal-BrWJ90m1.js";import{B as Zn}from"./business-extended-info-DLCYOk5c.js";import{B as ea}from"./business-header-BUDg5TkX.js";import{i as sa,D as na,f as aa,E as ta,L as _e,a as Ie,C as ia,A as ra,b as ve,c as ca,d as Ze,h as la,e as oa,g as zs,u as da,G as ma,j as fs,k as ua,X as Vs,Y as $s,l as ha,m as xa,R as pa,n as ja,o as ga,p as fa,q as va}from"./download-csv-4_I4JLJJ.js";import{M as es,s as ya,a as Na}from"./modify-contract-dialog-BOiqU0pP.js";import{u as ba,E as Ca}from"./use-issue-monthly-documents-CIZD9g_Q.js";import{s as Aa}from"./subMonths-R4saX6JJ.js";import{E as wa,T as Ia}from"./index-BSXv5S5U.js";import{A as Da,a as Re,b as vs,c as ys}from"./accordion-CRFl4b_U.js";import{B as ka}from"./building-2-we51QwoB.js";import"./toggle-expansion-button-D_sqNCfP.js";import"./panel-top-open-B0dy6Z0_.js";import"./update-accountant-status-BkPOJv2s.js";import"./Table-CnwiwZMD.js";import"./summary-DNGSbjeZ.js";import"./deposits-transactions-table-41MroH8q.js";import"./Checkbox-DzoVLGuy.js";import"./data-table-column-header-DF5fndn9.js";import"./eye-off-DE8XkTfo.js";import"./download-csv-button-FxjssS8w.js";import"./sequential-CjOfRLtc.js";import"./addDays-CT4mtlSF.js";const Sa=[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"m19 9-5 5-4-4-3 3",key:"2osh9i"}]],Ta=oe("chart-line",Sa);const Ba=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],ze=oe("circle-check",Ba);const Ea=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"9",x2:"15",y1:"15",y2:"9",key:"1dfufj"}]],Ns=oe("circle-slash",Ea);const Pa=[["line",{x1:"12",x2:"12",y1:"2",y2:"22",key:"7eqyqh"}],["path",{d:"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6",key:"1b0p4s"}]],De=oe("dollar-sign",Pa);const Oa=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m9 15 2 2 4-4",key:"1grp1n"}]],La=oe("file-check",Oa);const Fa=[["path",{d:"M3 7V5a2 2 0 0 1 2-2h2",key:"aa7l1z"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2",key:"4qcy5o"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2",key:"6vwrx8"}],["path",{d:"M7 21H5a2 2 0 0 1-2-2v-2",key:"ioqczr"}],["rect",{width:"10",height:"8",x:"7",y:"8",rx:"1",key:"vys8me"}]],Ma=oe("fullscreen",Fa);const _a=[["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",key:"1nb95v"}],["path",{d:"M16 2v20",key:"rotuqe"}]],Ra=oe("notebook",_a);const za=[["path",{d:"M12 22v-5",key:"1ega77"}],["path",{d:"M15 8V2",key:"18g5xt"}],["path",{d:"M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z",key:"1xoxul"}],["path",{d:"M9 8V2",key:"14iosj"}]],Va=oe("plug",za);function $a({businessId:s,tagIds:n,description:a,open:t,onOpenChange:r,onClose:o}){const[{data:c,fetching:l},h]=re({pause:!0,query:Ks,variables:{businessId:s,tagsDifferentThan:n?n.map(x=>x.id):void 0,descriptionDifferentThan:a}});j.useEffect(()=>{t&&(n||a)&&!c&&h()},[t,n,a,h,c]);const d=j.useCallback(x=>{r(x),t&&!x&&o?.()},[r,o,t]),m=j.useMemo(()=>t&&(!!n||!!a)&&c&&c?.similarChargesByBusiness.length>0,[t,n,a,c]);return e.jsx(Te,{open:m,onOpenChange:d,children:e.jsx(Be,{className:"overflow-scroll max-h-screen w-full sm:max-w-[640px] md:max-w-[768px] lg:max-w-[900px]",onClick:x=>x.stopPropagation(),children:e.jsx(Ys,{fallback:e.jsx("div",{children:"Error fetching similar charges"}),children:l?e.jsx(as,{}):n||a?e.jsx(Xs,{data:c?.similarChargesByBusiness??[],tagIds:n,description:a,onOpenChange:d,title:"Similar Charges by Business"}):null})})})}const Ua="updateAdminBusiness",Ha=()=>{const[{fetching:s},n]=Ee(Js),a=j.useCallback(async t=>{const r=`Error updating admin business ID [${t.adminBusinessId}]`,o=`${Ua}-${t.adminBusinessId}`;K.loading("Updating admin business",{id:o});try{const c=await n(t),l=Pe(c,r,o,"updateAdminBusiness");if(l)return K.success("Success",{id:o,description:"Admin Business Updated"}),l.updateAdminBusiness}catch(c){console.error(`${r}: ${c}`),K.error("Error",{id:o,description:r,duration:1e5,closeButton:!0})}},[n]);return{fetching:s,updateAdminBusiness:a}},Ve=pe({year:ls().min(2e3).max(2100),id:R().min(1,{message:"ID is required"})}),qa=pe({registrationDate:R().min(1,{message:"Business Registration Start Date is required"}),withholdingTaxAnnualIds:me(Ve),withholdingTaxCompanyId:R().min(1,{message:"Withholding Tax Company ID is required"}),socialSecurityEmployerIds:me(Ve),socialSecurityDeductionsId:R().min(1,{message:"Social Security Deductions ID is required"}),taxAdvancesAnnualIds:me(Ve),taxAdvancesRates:me(pe({date:Zs(),rate:ls().min(0,{message:"Rate must be at least 0"}).max(100,{message:"Rate must be at most 100"})}))}),ye={WITHHOLDING_TAX:"https://secapp.taxes.gov.il/NikPay/StartPage.aspx#/Home",TAX_ADVANCES:"https://secapp.taxes.gov.il/gmftashmh/main/entrance",SOCIAL_SECURITY:"https://b2b.btl.gov.il/BTL.ILG.Payments/ChovDochMaasikInfo.aspx",VAT:"https://secapp.taxes.gov.il/emdvhmfrt/wLogOnMenu.aspx"},Ne=({href:s,children:n})=>e.jsxs("h3",{className:"flex flex-row gap-2 text-sm font-semibold text-foreground md:col-span-2",children:[e.jsx("a",{href:s,target:"_blank",rel:"noreferrer",onClick:a=>a.stopPropagation(),className:"inline-flex items-center font-semibold",children:e.jsx(rs,{size:12})}),e.jsx("span",{children:n})]});function bs(s){return!s||s.__typename!=="LtdFinancialEntity"||!s.adminInfo?{}:{registrationDate:s.adminInfo.registrationDate,withholdingTaxAnnualIds:s.adminInfo.withholdingTaxAnnualIds.sort((n,a)=>a.year-n.year),withholdingTaxCompanyId:s.adminInfo.withholdingTaxCompanyId??void 0,socialSecurityEmployerIds:s.adminInfo.socialSecurityEmployerIds.sort((n,a)=>a.year-n.year),socialSecurityDeductionsId:s.adminInfo.socialSecurityDeductionsId??void 0,taxAdvancesAnnualIds:s.adminInfo.taxAdvancesAnnualIds.sort((n,a)=>a.year-n.year),taxAdvancesRates:s.adminInfo.taxAdvancesRates?.map(n=>({date:n.date,rate:n.rate*100}))}}function Ga(s){return{registrationDate:s.registrationDate?Kn(new Date(s.registrationDate)):void 0,withholdingTaxAnnualIds:s.withholdingTaxAnnualIds,withholdingTaxCompanyId:s.withholdingTaxCompanyId,socialSecurityEmployerIds:s.socialSecurityEmployerIds,taxAdvancesRates:s.taxAdvancesRates?.map(n=>({date:n.date,rate:n.rate/100})),taxAdvancesAnnualIds:s.taxAdvancesAnnualIds}}function Wa({data:s,refetchBusiness:n}){const a=fe(Qs,s),[t,r]=j.useState(bs(a)),{updateAdminBusiness:o,fetching:c}=Ha(),l=Oe({resolver:ts(qa),defaultValues:t}),h=async C=>{if(!a)return;const I=cs(C,l.formState.dirtyFields);if(!I)return;const _=Ga(I);await o({adminBusinessId:a.id,fields:_}),n?.()};j.useEffect(()=>{if(a){const C=bs(a);r(C),l.reset(C)}},[a,l]);const{fields:d,append:m,remove:x}=Ce({control:l.control,name:"taxAdvancesAnnualIds"}),{fields:u,append:D,remove:A}=Ce({control:l.control,name:"withholdingTaxAnnualIds"}),{fields:p,append:B,remove:F}=Ce({control:l.control,name:"socialSecurityEmployerIds"}),O={withholdingTaxAnnualIds:{append:D,remove:A},taxAdvancesAnnualIds:{append:m,remove:x},socialSecurityEmployerIds:{append:B,remove:F}},V=C=>{O[C].append({year:new Date().getFullYear(),id:""})},z=(C,I)=>{O[C].remove(I)},{fields:M,append:G,remove:$}=Ce({control:l.control,name:"taxAdvancesRates"}),ee=()=>{G({date:Ts(new Date,"yyyy-MM-dd"),rate:0})},i=C=>{$(C)};return e.jsxs(Y,{children:[e.jsxs(X,{children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Ss,{className:"h-5 w-5 text-primary"}),e.jsx(J,{children:"Admin Business Configuration"})]}),e.jsx(Q,{children:"Tax and registration information for the business operating this application"})]}),e.jsx(Le,{...l,children:e.jsxs("form",{onSubmit:l.handleSubmit(h),className:"space-y-6",children:[e.jsx(Z,{children:e.jsxs("div",{className:"grid gap-6 md:grid-cols-2",children:[e.jsx(Ne,{href:ye.VAT,children:"VAT"}),e.jsx(le,{className:"md:col-span-2"}),e.jsx(Ne,{href:ye.TAX_ADVANCES,children:"Tax Advances"}),e.jsx(le,{className:"md:col-span-2"}),e.jsx(Ne,{href:ye.WITHHOLDING_TAX,children:"Withholding Tax"}),e.jsx(g,{control:l.control,name:"withholdingTaxCompanyId",render:({field:C,fieldState:I})=>e.jsxs(f,{children:[e.jsx(v,{children:"Company Tax ID"}),e.jsx(N,{children:e.jsx(w,{placeholder:"Enter company ID",...C,className:S(I)})}),e.jsx(b,{})]})}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(Ae,{children:"Annual IDs"}),e.jsx(T,{type:"button",variant:"outline",size:"sm",onClick:()=>V("withholdingTaxAnnualIds"),children:e.jsx(ae,{className:"size-4"})})]}),e.jsx("div",{className:"space-y-3",children:u.map((C,I)=>e.jsxs("div",{className:"flex gap-2 items-start",children:[e.jsxs("div",{className:"flex-1 grid grid-cols-2 gap-2",children:[e.jsx(w,{placeholder:"Year",type:"number",...l.register(`withholdingTaxAnnualIds.${I}.year`,{valueAsNumber:!0})}),e.jsx(w,{placeholder:"ID",...l.register(`withholdingTaxAnnualIds.${I}.id`)})]}),e.jsx(T,{type:"button",variant:"ghost",size:"icon",onClick:()=>z("withholdingTaxAnnualIds",I),children:e.jsx(te,{className:"size-4"})})]},C.id))})]}),e.jsx(le,{className:"md:col-span-2"}),e.jsx(Ne,{href:ye.TAX_ADVANCES,children:"Tax Advances"}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(Ae,{children:"Annual IDs"}),e.jsx(T,{type:"button",variant:"outline",size:"sm",onClick:()=>V("taxAdvancesAnnualIds"),children:e.jsx(ae,{className:"size-4"})})]}),e.jsx("div",{className:"space-y-3",children:d.map((C,I)=>e.jsxs("div",{className:"flex gap-2 items-start",children:[e.jsxs("div",{className:"flex-1 grid grid-cols-2 gap-2",children:[e.jsx(w,{placeholder:"Year",type:"number",...l.register(`taxAdvancesAnnualIds.${I}.year`,{valueAsNumber:!0})}),e.jsx(w,{placeholder:"ID",...l.register(`taxAdvancesAnnualIds.${I}.id`)})]}),e.jsx(T,{type:"button",variant:"ghost",size:"icon",onClick:()=>z("taxAdvancesAnnualIds",I),children:e.jsx(te,{className:"size-4"})})]},C.id))})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(Ae,{children:"Rates (%)"}),e.jsx(T,{type:"button",variant:"outline",size:"sm",onClick:ee,children:e.jsx(ae,{className:"size-4"})})]}),e.jsx("div",{className:"space-y-3",children:M.map((C,I)=>e.jsxs("div",{className:"flex gap-2 items-start",children:[e.jsxs("div",{className:"flex-1 grid grid-cols-2 gap-2",children:[e.jsx(w,{placeholder:"Date",type:"date",...l.register(`taxAdvancesRates.${I}.date`)}),e.jsx(w,{placeholder:"Rate",...l.register(`taxAdvancesRates.${I}.rate`,{valueAsNumber:!0})})]}),e.jsx(T,{type:"button",variant:"ghost",size:"icon",onClick:()=>i(I),children:e.jsx(te,{className:"size-4"})})]},C.id))})]}),e.jsx(le,{className:"md:col-span-2"}),e.jsx(Ne,{href:ye.SOCIAL_SECURITY,children:"Social Security"}),e.jsx(g,{control:l.control,name:"socialSecurityDeductionsId",render:({field:C,fieldState:I})=>e.jsxs(f,{children:[e.jsx(v,{children:"Deductions ID"}),e.jsx(N,{children:e.jsx(w,{placeholder:"Enter deductions ID",...C,className:S(I)})}),e.jsx(b,{})]})}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(Ae,{children:"Annual Employer IDs"}),e.jsx(T,{type:"button",variant:"outline",size:"sm",onClick:()=>V("socialSecurityEmployerIds"),children:e.jsx(ae,{className:"size-4"})})]}),e.jsx("div",{className:"space-y-3",children:p.map((C,I)=>e.jsxs("div",{className:"flex gap-2 items-start",children:[e.jsxs("div",{className:"flex-1 grid grid-cols-2 gap-2",children:[e.jsx(w,{placeholder:"Year",type:"number",...l.register(`socialSecurityEmployerIds.${I}.year`,{valueAsNumber:!0})}),e.jsx(w,{placeholder:"ID",...l.register(`socialSecurityEmployerIds.${I}.id`)})]}),e.jsx(T,{type:"button",variant:"ghost",size:"icon",onClick:()=>z("socialSecurityEmployerIds",I),children:e.jsx(te,{className:"size-4"})})]},C.id))})]}),e.jsx(le,{className:"md:col-span-2"}),e.jsx(g,{control:l.control,name:"registrationDate",render:({field:C,fieldState:I})=>e.jsxs(f,{children:[e.jsx(v,{children:"Business Registration Start Date"}),e.jsx(N,{children:e.jsx(w,{type:"date",...C,className:S(I)})}),e.jsx(b,{})]})})]})}),e.jsx(is,{className:"flex justify-end border-t mt-4 pt-6",children:e.jsxs(T,{type:"submit",disabled:c||Object.keys(l.formState.dirtyFields).length===0||!l.formState.isValid,children:[e.jsx(hs,{className:"h-4 w-4"}),"Save Changes"]})})]})})]})}function Ka({account:s,handleOpenModal:n}){return e.jsxs(Y,{children:[e.jsx(X,{children:e.jsxs("div",{className:"flex items-start justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"p-2 rounded-lg bg-primary/10 text-primary",children:Qn(s.type)}),e.jsxs("div",{children:[e.jsxs(J,{className:"text-lg",children:[s.name,s.name===s.number?"":` (${s.number})`]}),e.jsxs(Q,{className:"flex items-center gap-2 mt-1",children:[e.jsx(ie,{variant:"outline",children:Rs(s.type)}),!s.isBusiness&&e.jsx(ie,{variant:"secondary",children:"Private"})]})]})]}),e.jsx("div",{className:"flex gap-1",children:e.jsx(T,{variant:"ghost",size:"sm",onClick:()=>n(s),"aria-label":`Edit account ${s.name}`,children:e.jsx(en,{className:"h-4 w-4","aria-hidden":"true"})})})]})}),e.jsxs(Z,{className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx("h4",{className:"text-sm font-medium mb-2",children:"Currencies & Tax Categories"}),e.jsx("div",{className:"flex flex-wrap gap-2",children:s.currencies?.map(a=>e.jsx(he,{to:Bs.TAX_CATEGORIES,target:"_blank",rel:"noreferrer",onClick:t=>t.stopPropagation(),children:e.jsxs(ie,{variant:"secondary",className:"text-xs",children:[a.currency," → ",a.taxCategory.name]})},a.currency))})]}),s.type===xe.BankAccount&&e.jsxs("div",{className:"border-t pt-4",children:[e.jsx("h4",{className:"text-sm font-medium mb-3",children:"Bank Details"}),e.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-3 text-sm",children:[e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Bank Number:"}),e.jsx("p",{className:"font-medium",children:s.bankNumber})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Branch Number:"}),e.jsx("p",{className:"font-medium",children:s.branchNumber})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Extended Bank Number:"}),e.jsx("p",{className:"font-medium",children:s.extendedBankNumber})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"IBAN:"}),e.jsx("p",{className:"font-medium",children:s.iban})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Swift Code:"}),e.jsx("p",{className:"font-medium",children:s.swiftCode})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Party Preferred Indication:"}),e.jsx("p",{className:"font-medium",children:s.partyPreferredIndication})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Party Account Involvement:"}),e.jsx("p",{className:"font-medium",children:s.partyAccountInvolvementCode})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Account Deal Date:"}),e.jsx("p",{className:"font-medium",children:s.accountDealDate})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Account Update Date:"}),e.jsx("p",{className:"font-medium",children:s.accountUpdateDate})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Meteg Dora Net:"}),e.jsx("p",{className:"font-medium",children:s.metegDoarNet})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Kod Harshaot Peilut:"}),e.jsx("p",{className:"font-medium",children:s.kodHarshaatPeilut})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Closing Reason Code:"}),e.jsx("p",{className:"font-medium",children:s.accountClosingReasonCode})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Agreement Opening Date:"}),e.jsx("p",{className:"font-medium",children:s.accountAgreementOpeningDate})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Branch Type Code:"}),e.jsx("p",{className:"font-medium",children:s.branchTypeCode})]}),e.jsxs("div",{children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Mymail Entitlement:"}),e.jsx("p",{className:"font-medium",children:s.mymailEntitlementSwitch})]}),e.jsxs("div",{className:"col-span-2",children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Service Authorization:"}),e.jsx("p",{className:"font-medium",children:s.serviceAuthorizationDesc})]}),e.jsxs("div",{className:"col-span-2",children:[e.jsx("span",{className:"text-muted-foreground text-xs",children:"Product Label:"}),e.jsx("p",{className:"font-medium",children:s.productLabel})]})]})]})]})]})}const Ya="createFinancialAccount",Xa=()=>{const[{fetching:s},n]=Ee(sn),a=j.useCallback(async t=>{const r=`Error creating new account "${t.input.name}"`,o=`${Ya}-${t.input.name}`;K.loading("Creating account",{id:o});try{const c=await n(t);Pe(c,r,o)&&K.success("Success",{id:o,description:`Financial Account ${t.input.name} was successfully created`})}catch(c){console.error(`${r}: ${c}`),K.error("Error",{id:o,description:r,duration:1e5,closeButton:!0})}},[n]);return{creating:s,createFinancialAccount:a}},Ja="updateFinancialAccount",Qa=()=>{const[{fetching:s},n]=Ee(nn),a=j.useCallback(async t=>{const r=`Error updating financial account ID [${t.financialAccountId}]`,o=`${Ja}-${t.financialAccountId}`;K.loading("Updating financial account",{id:o});try{const c=await n(t),l=Pe(c,r,o,"updateFinancialAccount");if(l)return K.success("Success",{id:o,description:"Financial account updated"}),l.updateFinancialAccount}catch(c){console.error(`${r}: ${c}`),K.error("Error",{id:o,description:r,duration:1e5,closeButton:!0})}},[n]);return{updating:s,updateFinancialAccount:a}},Za=pe({currency:Os(Object.values(Ke),"Currency is required"),taxCategoryId:tn("Tax category ID is required")}),H=Ye(s=>{if(s===""||s===void 0||s===null)return;const n=typeof s=="string"?parseInt(s,10):s;return Number.isNaN(n)?void 0:n},ls().int().optional()),et=pe({name:R().min(1,"Name is required"),number:R().min(1,"Account number is required"),isBusiness:an().default(!1).optional(),type:Os(Object.values(xe),"Account type is required"),currencies:me(Za),bankNumber:H,branchNumber:H,iban:Ye(s=>s===""?void 0:s,R().optional()),swiftCode:Ye(s=>s===""?void 0:s,R().optional()),extendedBankNumber:H,partyPreferredIndication:H,partyAccountInvolvementCode:H,accountDealDate:H,accountUpdateDate:H,metegDoarNet:H,kodHarshaatPeilut:H,accountClosingReasonCode:H,accountAgreementOpeningDate:H,serviceAuthorizationDesc:R().optional(),branchTypeCode:H,mymailEntitlementSwitch:H,productLabel:R().optional()});function st(s){return{name:s.name,number:s.number,isBusiness:s.isBusiness,type:s.type,currencies:s.currencies?.map(n=>({currency:n.currency,taxCategoryId:n.taxCategory.id}))??[],bankNumber:s.bankNumber,branchNumber:s.branchNumber,iban:s.iban,swiftCode:s.swiftCode,extendedBankNumber:s.extendedBankNumber,partyPreferredIndication:s.partyPreferredIndication,partyAccountInvolvementCode:s.partyAccountInvolvementCode,accountDealDate:s.accountDealDate,accountUpdateDate:s.accountUpdateDate,metegDoarNet:s.metegDoarNet,kodHarshaatPeilut:s.kodHarshaatPeilut,accountClosingReasonCode:s.accountClosingReasonCode,accountAgreementOpeningDate:s.accountAgreementOpeningDate,serviceAuthorizationDesc:s.serviceAuthorizationDesc,branchTypeCode:s.branchTypeCode,mymailEntitlementSwitch:s.mymailEntitlementSwitch,productLabel:s.productLabel}}const nt=j.forwardRef(function({ownerId:n,onDone:a},t){const[r,o]=j.useState(!1),[c,l]=j.useState(null),{createFinancialAccount:h,creating:d}=Xa(),{updateFinancialAccount:m,updating:x}=Qa(),{selectableTaxCategories:u,fetching:D}=Es(),A=Oe({resolver:ts(et),defaultValues:{name:"",number:"",isBusiness:!1,type:xe.BankAccount,currencies:[],bankNumber:void 0,branchNumber:void 0,iban:void 0,swiftCode:void 0,extendedBankNumber:void 0,partyPreferredIndication:void 0,partyAccountInvolvementCode:void 0,accountDealDate:void 0,accountUpdateDate:void 0,metegDoarNet:void 0,kodHarshaatPeilut:void 0,accountClosingReasonCode:void 0,accountAgreementOpeningDate:void 0,serviceAuthorizationDesc:void 0,branchTypeCode:void 0,mymailEntitlementSwitch:void 0,productLabel:void 0},mode:"onBlur"}),{control:p,handleSubmit:B,watch:F,reset:O}=A,V=i=>{i?(l(i),O(st(i))):(l(null),O()),o(!0)};j.useImperativeHandle(t,()=>({open:V}));const z=Ce({control:p,name:"currencies"}),M=()=>{o(!1),l(null),O()},G=async i=>{console.log("Submitting form with values:",i);try{const C=i.isBusiness?Xe.Business:Xe.Private,I=i.type===xe.BankAccount&&i.bankNumber!==void 0&&i.branchNumber!==void 0?{bankNumber:i.bankNumber,branchNumber:i.branchNumber,...i.iban!==void 0&&{iban:i.iban},...i.swiftCode!==void 0&&{swiftCode:i.swiftCode},...i.extendedBankNumber!==void 0&&{extendedBankNumber:i.extendedBankNumber},...i.partyPreferredIndication!==void 0&&{partyPreferredIndication:i.partyPreferredIndication},...i.partyAccountInvolvementCode!==void 0&&{partyAccountInvolvementCode:i.partyAccountInvolvementCode},...i.accountDealDate!==void 0&&{accountDealDate:i.accountDealDate},...i.accountUpdateDate!==void 0&&{accountUpdateDate:i.accountUpdateDate},...i.metegDoarNet!==void 0&&{metegDoarNet:i.metegDoarNet},...i.kodHarshaatPeilut!==void 0&&{kodHarshaatPeilut:i.kodHarshaatPeilut},...i.accountClosingReasonCode!==void 0&&{accountClosingReasonCode:i.accountClosingReasonCode},...i.accountAgreementOpeningDate!==void 0&&{accountAgreementOpeningDate:i.accountAgreementOpeningDate},...i.serviceAuthorizationDesc!==void 0&&{serviceAuthorizationDesc:i.serviceAuthorizationDesc},...i.branchTypeCode!==void 0&&{branchTypeCode:i.branchTypeCode},...i.mymailEntitlementSwitch!==void 0&&{mymailEntitlementSwitch:i.mymailEntitlementSwitch},...i.productLabel!==void 0&&{productLabel:i.productLabel}}:void 0;c?await m({financialAccountId:c.id,fields:{name:i.name,number:i.number,type:i.type,privateOrBusiness:C,bankAccountDetails:I,currencies:i.currencies}}):await h({input:{name:i.name,number:i.number,ownerId:n,type:i.type,privateOrBusiness:C,bankAccountDetails:I}}),M(),a?.()}catch{}},$=()=>{z.append({currency:Ke.Usd,taxCategoryId:""})},ee=i=>{z.remove(i)};return e.jsx(Te,{open:r,onOpenChange:o,children:e.jsxs(Be,{className:"max-w-4xl max-h-[90vh] overflow-y-auto",children:[e.jsxs(os,{children:[e.jsx(ds,{children:c?"Edit Account":"New Account"}),e.jsx(ms,{children:c?"Update account details and settings":"Add a new financial account"})]}),e.jsx(Le,{...A,children:e.jsxs("form",{onSubmit:B(G),className:"space-y-6",children:[e.jsxs("div",{className:"space-y-4",children:[e.jsx("h3",{className:"text-sm font-semibold",children:"Basic Information"}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsx(g,{control:p,name:"name",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Name *"}),e.jsx(N,{children:e.jsx(w,{...i})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"number",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Account Number *"}),e.jsx(N,{children:e.jsx(w,{...i})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"type",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Account Type *"}),e.jsxs(Ue,{value:i.value,onValueChange:i.onChange,children:[e.jsx(He,{id:"type",children:e.jsx(qe,{})}),e.jsx(Ge,{children:Object.values(xe).map(C=>e.jsx(We,{value:C,children:Rs(C)},C))})]}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"isBusiness",render:({field:i})=>e.jsxs(f,{className:"flex items-center space-x-2",children:[e.jsx(N,{children:e.jsx(ce,{id:"isBusiness",checked:i.value,onCheckedChange:i.onChange})}),e.jsx(v,{children:"Business Account"})]})})]})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("h3",{className:"text-sm font-semibold",children:"Currencies & Tax Categories"}),e.jsxs(T,{type:"button",variant:"outline",size:"sm",onClick:$,"aria-label":"Add currency row",children:[e.jsx(ae,{className:"h-4 w-4 mr-2","aria-hidden":"true"}),"Add Currency"]})]}),e.jsx("div",{className:"space-y-3",children:z.fields.map((i,C)=>e.jsxs("div",{className:"flex gap-2 items-start",children:[e.jsxs("div",{className:"flex-1 grid grid-cols-2 gap-2",children:[e.jsx(g,{control:p,name:`currencies.${C}.currency`,render:({field:I})=>e.jsxs(f,{className:"space-y-2",children:[e.jsxs(Ue,{value:I.value,onValueChange:I.onChange,children:[e.jsx(He,{id:`currencies.${C}.currency`,children:e.jsx(qe,{})}),e.jsx(Ge,{children:Object.entries(Ke).map(([_,y])=>e.jsx(We,{value:y,children:y},_))})]}),e.jsx(b,{})]})}),e.jsx(g,{control:A.control,name:`currencies.${C}.taxCategoryId`,render:({field:I})=>e.jsxs(f,{children:[e.jsx(N,{children:e.jsx(ke,{data:u,disabled:D,value:I.value,onChange:I.onChange,placeholder:"Scroll to see all options",formPart:!0})}),e.jsx(b,{})]})})]}),e.jsx(T,{type:"button",variant:"ghost",size:"icon",onClick:()=>ee(C),"aria-label":`Remove currency ${F(`currencies.${C}.currency`)||""}`,children:e.jsx(te,{className:"h-4 w-4","aria-hidden":"true"})})]},i.id))})]}),F("type")===xe.BankAccount&&e.jsxs("div",{className:"space-y-4 border-t pt-4",children:[e.jsx("h3",{className:"text-sm font-semibold",children:"Bank-Specific Details"}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:[e.jsx(g,{control:p,name:"bankNumber",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Bank Number"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"branchNumber",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Branch Number"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"iban",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"IBAN"}),e.jsx(N,{children:e.jsx(w,{value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"swiftCode",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Swift Code"}),e.jsx(N,{children:e.jsx(w,{value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"extendedBankNumber",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Extended Bank Number"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"partyPreferredIndication",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Party Preferred Indication"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"partyAccountInvolvementCode",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Party Account Involvement Code"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"accountDealDate",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Account Deal Date"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",placeholder:"YYYYMMDD",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"accountUpdateDate",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Account Update Date"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",placeholder:"YYYYMMDD",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"metegDoarNet",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Meteg Dora Net"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"kodHarshaatPeilut",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Kod Harshaot Peilut"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"accountClosingReasonCode",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Account Closing Reason Code"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"accountAgreementOpeningDate",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Account Agreement Opening Date"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",placeholder:"YYYYMMDD",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"branchTypeCode",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Branch Type Code"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"mymailEntitlementSwitch",render:({field:i})=>e.jsxs(f,{className:"space-y-2",children:[e.jsx(v,{children:"Mymail Entitlement Switch"}),e.jsx(N,{children:e.jsx(w,{inputMode:"numeric",value:i.value??"",onChange:i.onChange})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"serviceAuthorizationDesc",render:({field:i})=>e.jsxs(f,{className:"space-y-2 md:col-span-2",children:[e.jsx(v,{children:"Service Authorization Description"}),e.jsx(N,{children:e.jsx(w,{...i})}),e.jsx(b,{})]})}),e.jsx(g,{control:p,name:"productLabel",render:({field:i})=>e.jsxs(f,{className:"space-y-2 md:col-span-2 lg:col-span-3",children:[e.jsx(v,{children:"Product Label"}),e.jsx(N,{children:e.jsx(w,{...i})}),e.jsx(b,{})]})})]})]}),e.jsxs(Ps,{children:[e.jsx(T,{type:"button",variant:"outline",onClick:M,children:"Cancel"}),e.jsx(T,{type:"submit",disabled:d||x,children:c?x?"Updating…":"Update Account":d?"Creating…":"Create Account"})]})]})})]})})});function at(s){return{id:s.id,name:s.name,number:s.number,isBusiness:s.privateOrBusiness===Xe.Business,type:s.type,currencies:s.accountTaxCategories.map(n=>({currency:n.currency,taxCategory:{id:n.taxCategory.id,name:n.taxCategory.name}})),...s.__typename==="BankFinancialAccount"?{bankNumber:s.bankNumber,branchNumber:s.branchNumber,iban:s.iban??void 0,swiftCode:s.swiftCode??void 0,extendedBankNumber:s.extendedBankNumber??void 0,partyPreferredIndication:s.partyPreferredIndication??void 0,partyAccountInvolvementCode:s.partyAccountInvolvementCode??void 0,accountDealDate:s.accountDealDate??void 0,accountUpdateDate:s.accountUpdateDate??void 0,metegDoarNet:s.metegDoarNet??void 0,kodHarshaatPeilut:s.kodHarshaatPeilut??void 0,accountClosingReasonCode:s.accountClosingReasonCode??void 0,accountAgreementOpeningDate:s.accountAgreementOpeningDate??void 0,serviceAuthorizationDesc:s.serviceAuthorizationDesc??void 0,branchTypeCode:s.branchTypeCode??void 0,mymailEntitlementSwitch:s.mymailEntitlementSwitch??void 0,productLabel:s.productLabel??void 0}:{}}}function tt({adminId:s}){const[n,a]=j.useState([]),[{data:t,fetching:r},o]=re({query:rn,variables:{adminId:s}});j.useEffect(()=>{t?.financialAccountsByOwner&&a(t.financialAccountsByOwner?.map(at)??[])},[t]);const c=j.useRef(null),l=h=>{c.current?.open(h)};return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-2xl font-semibold tracking-tight",children:"Financial Accounts"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Manage bank accounts, credit cards, and crypto wallets"})]}),e.jsxs(T,{onClick:()=>l(),"aria-label":"Create new financial account",children:[e.jsx(ae,{className:"h-4 w-4 mr-2","aria-hidden":"true"}),"New Account"]})]}),r?e.jsx("p",{children:"Loading..."}):e.jsxs("div",{className:"grid gap-4",children:[n.length===0&&e.jsx("p",{className:"text-sm text-muted-foreground",children:"No financial accounts added yet."}),n.map(h=>e.jsx(Ka,{account:h,handleOpenModal:l},h.id))]}),e.jsx(nt,{ownerId:s,ref:c,onDone:()=>o()})]})}function it({businessId:s}){return e.jsxs(Y,{children:[e.jsxs(X,{className:"flex w-full justify-between items-center",children:[e.jsx("div",{className:"flex items-center justify-between",children:e.jsxs("div",{children:[e.jsx(J,{children:"Balance"}),e.jsx(Q,{children:"Business balance overview"})]})}),e.jsx(he,{to:Bs.BUSINESSES.DETAIL_LEDGER(s),children:e.jsx(T,{variant:"outline",size:"icon",children:e.jsx(Ma,{})})})]}),e.jsx(Z,{children:e.jsx("div",{className:"rounded-md border",children:e.jsx(Zn,{businessID:s,filter:{}})})})]})}function rt({businessId:s}){const{userContext:n}=j.useContext(us),[a,t]=j.useState(0),[r,o]=j.useState([]),c=j.useCallback(A=>{o(p=>p.includes(A)?p.filter(B=>B!==A):[...p,A])},[]),l=j.useMemo(()=>new Set(r),[r]),h=j.useCallback(()=>{o([])},[]),[{data:d,fetching:m},x]=re({query:cn,variables:{filters:{byOwners:n?.context.adminBusinessId?[n.context.adminBusinessId]:void 0,sortBy:{field:on.Date,asc:!1},byBusinesses:[s]},page:a,limit:10}}),u=d?.allCharges?.pageInfo.totalPages??1,D=j.useMemo(()=>d?.allCharges?.nodes??[],[d]);return m&&!D.length?e.jsx("div",{children:"Loading charges..."}):e.jsxs(Y,{children:[e.jsxs(X,{className:"flex w-full justify-between items-center",children:[e.jsx("div",{className:"flex items-center justify-between",children:e.jsxs("div",{children:[e.jsx(J,{children:"Charges"}),e.jsx(Q,{children:"Recurring and one-time charges for this business"})]})}),e.jsxs("div",{className:"flex items-center gap-2",children:[u>1&&e.jsx(ln,{className:"flex-fit w-fit mx-0",currentPageIndex:a,onChange:t,totalPages:u}),e.jsx(Yn,{selected:r.map(A=>({id:A,onChange:()=>{x({requestPolicy:"cache-and-network"})}})),resetMerge:h})]})]}),e.jsx(Z,{children:e.jsx("div",{className:"rounded-md border",children:e.jsx(Xn,{data:D,isAllOpened:!1,toggleMergeCharge:c,mergeSelectedCharges:l})})})]})}var ct=["type","layout","connectNulls","ref"],lt=["key"];function je(s){"@babel/helpers - typeof";return je=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},je(s)}function Cs(s,n){if(s==null)return{};var a=ot(s,n),t,r;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(s);for(r=0;r<o.length;r++)t=o[r],!(n.indexOf(t)>=0)&&Object.prototype.propertyIsEnumerable.call(s,t)&&(a[t]=s[t])}return a}function ot(s,n){if(s==null)return{};var a={};for(var t in s)if(Object.prototype.hasOwnProperty.call(s,t)){if(n.indexOf(t)>=0)continue;a[t]=s[t]}return a}function we(){return we=Object.assign?Object.assign.bind():function(s){for(var n=1;n<arguments.length;n++){var a=arguments[n];for(var t in a)Object.prototype.hasOwnProperty.call(a,t)&&(s[t]=a[t])}return s},we.apply(this,arguments)}function As(s,n){var a=Object.keys(s);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(s);n&&(t=t.filter(function(r){return Object.getOwnPropertyDescriptor(s,r).enumerable})),a.push.apply(a,t)}return a}function q(s){for(var n=1;n<arguments.length;n++){var a=arguments[n]!=null?arguments[n]:{};n%2?As(Object(a),!0).forEach(function(t){ne(s,t,a[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(s,Object.getOwnPropertyDescriptors(a)):As(Object(a)).forEach(function(t){Object.defineProperty(s,t,Object.getOwnPropertyDescriptor(a,t))})}return s}function ue(s){return ht(s)||ut(s)||mt(s)||dt()}function dt(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function mt(s,n){if(s){if(typeof s=="string")return ss(s,n);var a=Object.prototype.toString.call(s).slice(8,-1);if(a==="Object"&&s.constructor&&(a=s.constructor.name),a==="Map"||a==="Set")return Array.from(s);if(a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return ss(s,n)}}function ut(s){if(typeof Symbol<"u"&&s[Symbol.iterator]!=null||s["@@iterator"]!=null)return Array.from(s)}function ht(s){if(Array.isArray(s))return ss(s)}function ss(s,n){(n==null||n>s.length)&&(n=s.length);for(var a=0,t=new Array(n);a<n;a++)t[a]=s[a];return t}function xt(s,n){if(!(s instanceof n))throw new TypeError("Cannot call a class as a function")}function ws(s,n){for(var a=0;a<n.length;a++){var t=n[a];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(s,Hs(t.key),t)}}function pt(s,n,a){return n&&ws(s.prototype,n),a&&ws(s,a),Object.defineProperty(s,"prototype",{writable:!1}),s}function jt(s,n,a){return n=Se(n),gt(s,Us()?Reflect.construct(n,a||[],Se(s).constructor):n.apply(s,a))}function gt(s,n){if(n&&(je(n)==="object"||typeof n=="function"))return n;if(n!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return ft(s)}function ft(s){if(s===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return s}function Us(){try{var s=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(Us=function(){return!!s})()}function Se(s){return Se=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(a){return a.__proto__||Object.getPrototypeOf(a)},Se(s)}function vt(s,n){if(typeof n!="function"&&n!==null)throw new TypeError("Super expression must either be null or a function");s.prototype=Object.create(n&&n.prototype,{constructor:{value:s,writable:!0,configurable:!0}}),Object.defineProperty(s,"prototype",{writable:!1}),n&&ns(s,n)}function ns(s,n){return ns=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,r){return t.__proto__=r,t},ns(s,n)}function ne(s,n,a){return n=Hs(n),n in s?Object.defineProperty(s,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):s[n]=a,s}function Hs(s){var n=yt(s,"string");return je(n)=="symbol"?n:n+""}function yt(s,n){if(je(s)!="object"||!s)return s;var a=s[Symbol.toPrimitive];if(a!==void 0){var t=a.call(s,n);if(je(t)!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(s)}var ge=(function(s){function n(){var a;xt(this,n);for(var t=arguments.length,r=new Array(t),o=0;o<t;o++)r[o]=arguments[o];return a=jt(this,n,[].concat(r)),ne(a,"state",{isAnimationFinished:!0,totalLength:0}),ne(a,"generateSimpleStrokeDasharray",function(c,l){return"".concat(l,"px ").concat(c-l,"px")}),ne(a,"getStrokeDasharray",function(c,l,h){var d=h.reduce(function(F,O){return F+O});if(!d)return a.generateSimpleStrokeDasharray(l,c);for(var m=Math.floor(c/d),x=c%d,u=l-c,D=[],A=0,p=0;A<h.length;p+=h[A],++A)if(p+h[A]>x){D=[].concat(ue(h.slice(0,A)),[x-p]);break}var B=D.length%2===0?[0,u]:[u];return[].concat(ue(n.repeat(h,m)),ue(D),B).map(function(F){return"".concat(F,"px")}).join(", ")}),ne(a,"id",da("recharts-line-")),ne(a,"pathRef",function(c){a.mainCurve=c}),ne(a,"handleAnimationEnd",function(){a.setState({isAnimationFinished:!0}),a.props.onAnimationEnd&&a.props.onAnimationEnd()}),ne(a,"handleAnimationStart",function(){a.setState({isAnimationFinished:!1}),a.props.onAnimationStart&&a.props.onAnimationStart()}),a}return vt(n,s),pt(n,[{key:"componentDidMount",value:function(){if(this.props.isAnimationActive){var t=this.getTotalLength();this.setState({totalLength:t})}}},{key:"componentDidUpdate",value:function(){if(this.props.isAnimationActive){var t=this.getTotalLength();t!==this.state.totalLength&&this.setState({totalLength:t})}}},{key:"getTotalLength",value:function(){var t=this.mainCurve;try{return t&&t.getTotalLength&&t.getTotalLength()||0}catch{return 0}}},{key:"renderErrorBar",value:function(t,r){if(this.props.isAnimationActive&&!this.state.isAnimationFinished)return null;var o=this.props,c=o.points,l=o.xAxis,h=o.yAxis,d=o.layout,m=o.children,x=aa(m,ta);if(!x)return null;var u=function(p,B){return{x:p.x,y:p.y,value:p.value,errorVal:zs(p.payload,B)}},D={clipPath:t?"url(#clipPath-".concat(r,")"):null};return U.createElement(_e,D,x.map(function(A){return U.cloneElement(A,{key:"bar-".concat(A.props.dataKey),data:c,xAxis:l,yAxis:h,layout:d,dataPointFormatter:u})}))}},{key:"renderDots",value:function(t,r,o){var c=this.props.isAnimationActive;if(c&&!this.state.isAnimationFinished)return null;var l=this.props,h=l.dot,d=l.points,m=l.dataKey,x=Ie(this.props,!1),u=Ie(h,!0),D=d.map(function(p,B){var F=q(q(q({key:"dot-".concat(B),r:3},x),u),{},{index:B,cx:p.x,cy:p.y,value:p.value,dataKey:m,payload:p.payload,points:d});return n.renderDotItem(h,F)}),A={clipPath:t?"url(#clipPath-".concat(r?"":"dots-").concat(o,")"):null};return U.createElement(_e,we({className:"recharts-line-dots",key:"dots"},A),D)}},{key:"renderCurveStatically",value:function(t,r,o,c){var l=this.props,h=l.type,d=l.layout,m=l.connectNulls;l.ref;var x=Cs(l,ct),u=q(q(q({},Ie(x,!0)),{},{fill:"none",className:"recharts-line-curve",clipPath:r?"url(#clipPath-".concat(o,")"):null,points:t},c),{},{type:h,layout:d,connectNulls:m});return U.createElement(ia,we({},u,{pathRef:this.pathRef}))}},{key:"renderCurveWithAnimation",value:function(t,r){var o=this,c=this.props,l=c.points,h=c.strokeDasharray,d=c.isAnimationActive,m=c.animationBegin,x=c.animationDuration,u=c.animationEasing,D=c.animationId,A=c.animateNewValues,p=c.width,B=c.height,F=this.state,O=F.prevPoints,V=F.totalLength;return U.createElement(ra,{begin:m,duration:x,isActive:d,easing:u,from:{t:0},to:{t:1},key:"line-".concat(D),onAnimationEnd:this.handleAnimationEnd,onAnimationStart:this.handleAnimationStart},function(z){var M=z.t;if(O){var G=O.length/l.length,$=l.map(function(_,y){var k=Math.floor(y*G);if(O[k]){var E=O[k],L=ve(E.x,_.x),Fe=ve(E.y,_.y);return q(q({},_),{},{x:L(M),y:Fe(M)})}if(A){var Gs=ve(p*2,_.x),Ws=ve(B/2,_.y);return q(q({},_),{},{x:Gs(M),y:Ws(M)})}return q(q({},_),{},{x:_.x,y:_.y})});return o.renderCurveStatically($,t,r)}var ee=ve(0,V),i=ee(M),C;if(h){var I="".concat(h).split(/[,\s]+/gim).map(function(_){return parseFloat(_)});C=o.getStrokeDasharray(i,V,I)}else C=o.generateSimpleStrokeDasharray(V,i);return o.renderCurveStatically(l,t,r,{strokeDasharray:C})})}},{key:"renderCurve",value:function(t,r){var o=this.props,c=o.points,l=o.isAnimationActive,h=this.state,d=h.prevPoints,m=h.totalLength;return l&&c&&c.length&&(!d&&m>0||!ca(d,c))?this.renderCurveWithAnimation(t,r):this.renderCurveStatically(c,t,r)}},{key:"render",value:function(){var t,r=this.props,o=r.hide,c=r.dot,l=r.points,h=r.className,d=r.xAxis,m=r.yAxis,x=r.top,u=r.left,D=r.width,A=r.height,p=r.isAnimationActive,B=r.id;if(o||!l||!l.length)return null;var F=this.state.isAnimationFinished,O=l.length===1,V=xs("recharts-line",h),z=d&&d.allowDataOverflow,M=m&&m.allowDataOverflow,G=z||M,$=Ze(B)?this.id:B,ee=(t=Ie(c,!1))!==null&&t!==void 0?t:{r:3,strokeWidth:2},i=ee.r,C=i===void 0?3:i,I=ee.strokeWidth,_=I===void 0?2:I,y=la(c)?c:{},k=y.clipDot,E=k===void 0?!0:k,L=C*2+_;return U.createElement(_e,{className:V},z||M?U.createElement("defs",null,U.createElement("clipPath",{id:"clipPath-".concat($)},U.createElement("rect",{x:z?u:u-D/2,y:M?x:x-A/2,width:z?D:D*2,height:M?A:A*2})),!E&&U.createElement("clipPath",{id:"clipPath-dots-".concat($)},U.createElement("rect",{x:u-L/2,y:x-L/2,width:D+L,height:A+L}))):null,!O&&this.renderCurve(G,$),this.renderErrorBar(G,$),(O||c)&&this.renderDots(G,E,$),(!p||F)&&oa.renderCallByParent(this.props,l))}}],[{key:"getDerivedStateFromProps",value:function(t,r){return t.animationId!==r.prevAnimationId?{prevAnimationId:t.animationId,curPoints:t.points,prevPoints:r.curPoints}:t.points!==r.curPoints?{curPoints:t.points}:null}},{key:"repeat",value:function(t,r){for(var o=t.length%2!==0?[].concat(ue(t),[0]):t,c=[],l=0;l<r;++l)c=[].concat(ue(c),ue(o));return c}},{key:"renderDotItem",value:function(t,r){var o;if(U.isValidElement(t))o=U.cloneElement(t,r);else if(sa(t))o=t(r);else{var c=r.key,l=Cs(r,lt),h=xs("recharts-line-dot",typeof t!="boolean"?t.className:"");o=U.createElement(na,we({key:c},l,{className:h}))}return o}}])})(j.PureComponent);ne(ge,"displayName","Line");ne(ge,"defaultProps",{xAxisId:0,yAxisId:0,connectNulls:!1,activeDot:!0,dot:!0,legendType:"line",stroke:"#3182bd",strokeWidth:1,fill:"#fff",points:[],isAnimationActive:!ma.isSsr,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",hide:!1,label:!1});ne(ge,"getComposedData",function(s){var n=s.props,a=s.xAxis,t=s.yAxis,r=s.xAxisTicks,o=s.yAxisTicks,c=s.dataKey,l=s.bandSize,h=s.displayedData,d=s.offset,m=n.layout,x=h.map(function(u,D){var A=zs(u,c);return m==="horizontal"?{x:fs({axis:a,ticks:r,bandSize:l,entry:u,index:D}),y:Ze(A)?null:t.scale(A),value:A,payload:u}:{x:Ze(A)?null:a.scale(A),y:fs({axis:t,ticks:o,bandSize:l,entry:u,index:D}),value:A,payload:u}});return q({points:x,layout:m},d)});var Nt=ua({chartName:"LineChart",GraphicalChild:ge,axisComponents:[{axisType:"xAxis",AxisComp:Vs},{axisType:"yAxis",AxisComp:$s}],formatAxisMap:ha});const be=[{month:"Jan",revenue:12500,expenses:8200},{month:"Feb",revenue:15800,expenses:9100},{month:"Mar",revenue:18200,expenses:10500},{month:"Apr",revenue:16900,expenses:9800},{month:"May",revenue:21300,expenses:11200},{month:"Jun",revenue:24500,expenses:12800},{month:"Jul",revenue:22800,expenses:11900},{month:"Aug",revenue:26100,expenses:13500},{month:"Sep",revenue:28900,expenses:14200},{month:"Oct",revenue:31200,expenses:15100}];function bt(){const s=be.reduce((a,t)=>a+t.revenue,0),n=s/be.length;return e.jsxs(Y,{children:[e.jsxs(X,{children:[e.jsx(J,{children:"Revenue Analytics"}),e.jsx(Q,{children:"Revenue and expenses over time"})]}),e.jsxs(Z,{children:[e.jsxs("div",{className:"grid gap-4 md:grid-cols-3 mb-6",children:[e.jsxs("div",{className:"rounded-lg border p-4 space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsx(De,{className:"h-4 w-4"}),"Total Revenue"]}),e.jsxs("p",{className:"text-2xl font-bold",children:["$",s.toLocaleString()]}),e.jsxs("div",{className:"flex items-center gap-1 text-sm text-green-600",children:[e.jsx(Me,{className:"h-3 w-3"}),e.jsx("span",{children:"+24.5% from last period"})]})]}),e.jsxs("div",{className:"rounded-lg border p-4 space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsx(De,{className:"h-4 w-4"}),"Average Monthly"]}),e.jsxs("p",{className:"text-2xl font-bold",children:["$",n.toLocaleString(void 0,{maximumFractionDigits:0})]}),e.jsxs("div",{className:"flex items-center gap-1 text-sm text-green-600",children:[e.jsx(Me,{className:"h-3 w-3"}),e.jsx("span",{children:"+18.2% growth rate"})]})]}),e.jsxs("div",{className:"rounded-lg border p-4 space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsx(De,{className:"h-4 w-4"}),"Current Month"]}),e.jsxs("p",{className:"text-2xl font-bold",children:["$",be[be.length-1].revenue.toLocaleString()]}),e.jsxs("div",{className:"flex items-center gap-1 text-sm text-green-600",children:[e.jsx(Me,{className:"h-3 w-3"}),e.jsx("span",{children:"+8.0% from last month"})]})]})]}),e.jsx(xa,{config:{revenue:{label:"Revenue",color:"hsl(var(--chart-1))"},expenses:{label:"Expenses",color:"hsl(var(--chart-2))"}},className:"h-[400px]",children:e.jsx(pa,{width:"100%",height:"100%",children:e.jsxs(Nt,{data:be,margin:{top:5,right:10,left:10,bottom:5},children:[e.jsx(ja,{strokeDasharray:"3 3",className:"stroke-muted"}),e.jsx(Vs,{dataKey:"month",className:"text-xs",tick:{fill:"hsl(var(--muted-foreground))"}}),e.jsx($s,{className:"text-xs",tick:{fill:"hsl(var(--muted-foreground))"}}),e.jsx(ga,{content:e.jsx(fa,{})}),e.jsx(ge,{type:"monotone",dataKey:"revenue",stroke:"var(--color-revenue)",strokeWidth:2,dot:{fill:"var(--color-revenue)",r:4}}),e.jsx(ge,{type:"monotone",dataKey:"expenses",stroke:"var(--color-expenses)",strokeWidth:2,dot:{fill:"var(--color-expenses)",r:4}})]})})})]})]})}const Ct=({contractId:s})=>{const[n,a]=j.useState(!1),[t,r]=j.useState(void 0),{issueDocuments:o}=ba(),c=Ts(Aa(new Date,1),"yyyy-MM-dd"),[{data:l,fetching:h},d]=re({query:dn,variables:{issueMonth:c,contractId:s},pause:!n});j.useEffect(()=>{n&&d()},[n,d]),j.useEffect(()=>{if(l?.periodicalDocumentDraftsByContracts?.length){const x=mn(fe(un,l.periodicalDocumentDraftsByContracts[0]));r(x)}else l&&r(void 0)},[l,r]);const m=j.useCallback(async x=>{await o({generateDocumentsInfo:[x]}),a(!1)},[o]);return e.jsxs(Te,{open:n,onOpenChange:a,children:[e.jsx(Ls,{asChild:!0,children:e.jsx(T,{className:"size-7.5",variant:"ghost",children:e.jsx(hn,{className:"size-5"})})}),e.jsxs(Be,{className:"w-[90vw] sm:max-w-[95%] max-h-[90vh] overflow-y-auto",children:[e.jsxs(os,{children:[e.jsx(ds,{children:"Issue Document for Contract"}),e.jsx(ms,{children:"Issue periodically documents based on contract"})]}),h?e.jsx(as,{}):t?e.jsx(Ca,{draft:t,onApprove:m}):e.jsx("div",{className:"text-center p-4 text-muted-foreground",children:"No document draft available to issue for this contract and period."})]})]})};function Is(s){return{id:s.id,pos:s.purchaseOrders??void 0,startDate:s.startDate,endDate:s.endDate,paymentAmount:s.amount.raw,paymentCurrency:s.amount.currency,productType:s.product??void 0,billingCycle:s.billingCycle,msCloudLink:s.msCloud?.toString(),isActive:s.isActive,subscriptionPlan:s.plan??void 0,defaultRemark:s.remarks??void 0,defaultDocumentType:s.documentType??void 0,operationsLimit:s.operationsLimit}}function At({clientId:s}){const[{data:n,fetching:a},t]=re({query:xn,variables:{clientId:s}}),r=j.useMemo(()=>[...n?.contractsByClient??[]].sort((o,c)=>new Date(c.startDate).getTime()-new Date(o.startDate).getTime()),[n?.contractsByClient]);return a?e.jsx("div",{children:"Loading contracts..."}):e.jsxs(Y,{children:[e.jsx(X,{children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{children:[e.jsx(J,{children:"Contracts"}),e.jsx(Q,{children:"Current and past contracts sorted by start date"})]}),e.jsx(es,{clientId:s,onDone:t})]})}),e.jsx(Z,{className:"space-y-4",children:r.map(o=>e.jsx(wt,{clientId:s,contract:o,refetch:t},o.id))})]})}function wt({clientId:s,contract:n,refetch:a}){const t=!!n.isActive;return e.jsxs("div",{className:"rounded-lg border p-4 space-y-4",children:[e.jsxs("div",{className:"flex items-start justify-between",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h4",{className:"font-semibold",children:n.product}),e.jsx(ie,{variant:t?"default":"secondary",children:n.isActive?"Active":"Inactive"})]}),e.jsx("p",{className:"text-sm text-muted-foreground font-mono",children:n.id})]}),e.jsxs("div",{children:[e.jsx(es,{clientId:s,contract:Is(n),onDone:a}),e.jsx(es,{clientId:s,contract:Is(n),onDone:a,duplicate:!0}),e.jsx(Ct,{contractId:n.id})]})]}),e.jsxs("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:[e.jsxs("div",{className:"space-y-0",children:[e.jsxs("p",{className:"text-sm text-muted-foreground flex items-center gap-1",children:[e.jsx(pn,{className:"h-3 w-3"}),"Contract Period"]}),e.jsxs("p",{className:"text-sm font-medium",children:[new Date(n.startDate).toLocaleDateString()," →"," ",new Date(n.endDate).toLocaleDateString()]})]}),e.jsxs("div",{className:"space-y-0",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"PO Numbers"}),e.jsx("p",{className:"text-sm font-medium font-mono",children:n.purchaseOrders.toReversed()[0]??""}),n.purchaseOrders.length>1&&e.jsx("div",{className:"space-x-1",children:n.purchaseOrders.toReversed().slice(1).map(r=>e.jsx("span",{className:"text-xs font-thin font-mono",children:r},r))})]}),e.jsxs("div",{className:"space-y-0",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"Payment"}),e.jsx("p",{className:"text-sm font-medium",children:jn(n.amount.raw,n.amount.currency)})]}),e.jsxs("div",{className:"space-y-0",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"Billing Cycle"}),e.jsx("p",{className:"text-sm font-medium",children:ya(n.billingCycle)})]}),e.jsxs("div",{className:"space-y-0",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"Subscription Plan"}),e.jsx("p",{className:"text-sm font-medium",children:n.plan?Na(n.plan):"N/A"})]}),e.jsxs("div",{className:"space-y-0",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"Operations Limit"}),e.jsx("p",{className:"text-sm font-medium",children:n.operationsLimit.toLocaleString()})]}),e.jsxs("div",{className:"space-y-0",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"Document Type"}),e.jsx("p",{className:"text-sm font-medium",children:gn(n.documentType)})]})]}),n.remarks&&e.jsxs("div",{className:"space-y-0",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:"Remark"}),e.jsx("p",{className:"text-sm",children:n.remarks})]}),e.jsx("div",{className:"flex flex-wrap gap-2",children:n.msCloud&&e.jsx(T,{variant:"outline",size:"sm",asChild:!0,children:e.jsxs("a",{href:n.msCloud.toString(),target:"_blank",rel:"noopener noreferrer",children:[e.jsx(rs,{className:"h-4 w-4 mr-2"}),"MS Cloud",e.jsx(wa,{className:"h-3 w-3 ml-1"})]})})})]},n.id)}const It=[{id:"linearId",name:"Linear",description:"Issue tracking and project management",url:"https://linear.app/the-guild/customer/[ID]",color:"indigo-500"},{id:"slackChannelKey",name:"Slack",description:"Team communication and notifications",keyType:"Channel Key",url:"https://guild-oss.slack.com/archives/[ID]"},{id:"notionId",name:"Notion",description:"Documentation and knowledge management",url:"https://www.notion.so/theguildoss/[ID]"},{id:"workflowyUrl",name:"Workflowy",keyType:"URL",description:"Task management and note taking",url:"[ID]"}];function Dt({data:s}){const[n,a]=j.useState([]),t=fe(vn,s),r=t?.clientInfo?.integrations,{updateClient:o}=Fs(),[{data:c,fetching:l},h]=re({query:fn,variables:{clientId:t?.id??""},pause:!r?.greenInvoiceInfo||!t?.id||!n.includes("green-invoice")}),d=c?.greenInvoiceClient,m=r?.hiveId,x=j.useCallback((u,D)=>{if(!t?.id)return;const A={};A[D]=u,o({businessId:t?.id,fields:{integrations:A}})},[t?.id,o]);return j.useEffect(()=>{r?.greenInvoiceInfo?.greenInvoiceId&&t?.id&&n.includes("green-invoice")&&h()},[r?.greenInvoiceInfo?.greenInvoiceId,t?.id,h,n]),e.jsxs(Y,{children:[e.jsx(X,{children:e.jsx("div",{className:"flex items-center justify-between",children:e.jsxs("div",{children:[e.jsx(J,{children:"Integrations"}),e.jsx(Q,{children:"Connected external services and providers"})]})})}),e.jsx(Z,{className:"space-y-6",children:e.jsxs(Da,{type:"multiple",value:n,onValueChange:a,className:"space-y-4",children:[e.jsxs(Re,{value:"green-invoice",className:"rounded-lg border-2 border-green-600/20 bg-green-600/5",children:[e.jsx("div",{className:"px-4 py-3 bg-green-600/10 rounded-t-lg",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3 flex-1",children:[e.jsx("div",{className:"h-10 w-10 rounded-lg bg-green-600 flex items-center justify-center text-white font-bold",children:"GI"}),e.jsxs("div",{className:"flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h3",{className:"font-semibold text-lg",children:"Green Invoice"}),e.jsx(ze,{className:"h-5 w-5 text-green-600"})]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Israeli invoicing system integration"})]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx($e,{id:t?.clientInfo?.integrations.greenInvoiceInfo?.greenInvoiceId??void 0,provider:"Green Invoice",updateClient:async u=>x(u,"greenInvoiceId")}),t?.clientInfo?.integrations.greenInvoiceInfo?.greenInvoiceId&&e.jsx(vs,{className:"p-2"})]})]})}),e.jsx(ys,{children:l?e.jsxs("div",{className:"p-6 space-y-6",children:[e.jsxs("div",{className:"space-y-4",children:[e.jsx(P,{className:"h-4 w-40"}),e.jsxs("div",{className:"grid gap-4 md:grid-cols-2",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{className:"h-3 w-24"}),e.jsx(P,{className:"h-4 w-full"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{className:"h-3 w-24"}),e.jsx(P,{className:"h-4 w-full"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{className:"h-3 w-24"}),e.jsx(P,{className:"h-4 w-full"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{className:"h-3 w-24"}),e.jsx(P,{className:"h-4 w-full"})]})]})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsx(P,{className:"h-4 w-40"}),e.jsxs("div",{className:"grid gap-4 md:grid-cols-2",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{className:"h-3 w-32"}),e.jsx(P,{className:"h-6 w-full"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{className:"h-3 w-24"}),e.jsx(P,{className:"h-4 w-full"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{className:"h-3 w-24"}),e.jsx(P,{className:"h-4 w-full"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{className:"h-3 w-24"}),e.jsx(P,{className:"h-4 w-full"})]})]})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsx(P,{className:"h-4 w-40"}),e.jsxs("div",{className:"grid gap-4 md:grid-cols-3",children:[e.jsxs("div",{className:"space-y-2 md:col-span-2",children:[e.jsx(P,{className:"h-3 w-24"}),e.jsx(P,{className:"h-4 w-full"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{className:"h-3 w-24"}),e.jsx(P,{className:"h-4 w-full"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{className:"h-3 w-24"}),e.jsx(P,{className:"h-4 w-full"})]})]})]})]}):d&&e.jsxs("div",{className:"p-6 space-y-6",children:[e.jsxs("div",{className:"space-y-4",children:[e.jsx("h4",{className:"font-semibold text-sm text-muted-foreground uppercase tracking-wide",children:"Business Information"}),e.jsxs("div",{className:"grid gap-4 md:grid-cols-2",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Integration ID"}),e.jsx("p",{className:"text-sm font-mono",children:t?.clientInfo?.integrations.greenInvoiceInfo?.greenInvoiceId})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Business Name"}),e.jsx("p",{className:"text-sm",children:d.name})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Country"}),e.jsx("p",{className:"text-sm",children:d.country?.name})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Tax ID"}),e.jsx("p",{className:"text-sm font-mono",children:d.taxId})]})]})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsx("h4",{className:"font-semibold text-sm text-muted-foreground uppercase tracking-wide",children:"Contact Information"}),e.jsxs("div",{className:"grid gap-4 md:grid-cols-2",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("span",{className:"text-sm font-medium text-muted-foreground flex items-center gap-2",children:[e.jsx(Je,{className:"h-3.5 w-3.5"}),"Email Addresses"]}),e.jsx("div",{className:"flex flex-wrap gap-2",children:d.emails?.map((u,D)=>e.jsx("span",{className:"text-sm px-2 py-1 bg-muted rounded",children:u},D))})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsxs("span",{className:"text-sm font-medium text-muted-foreground flex items-center gap-2",children:[e.jsx(Ms,{className:"h-3.5 w-3.5"}),"Phone"]}),e.jsx("p",{className:"text-sm font-mono",children:d.phone})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Mobile"}),e.jsx("p",{className:"text-sm font-mono",children:d.mobile})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Fax"}),e.jsx("p",{className:"text-sm font-mono",children:d.fax})]})]})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("h4",{className:"font-semibold text-sm text-muted-foreground uppercase tracking-wide flex items-center gap-2",children:[e.jsx(Qe,{className:"h-3.5 w-3.5"}),"Address"]}),e.jsxs("div",{className:"grid gap-4 md:grid-cols-3",children:[e.jsxs("div",{className:"space-y-1 md:col-span-2",children:[e.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Street Address"}),e.jsx("p",{className:"text-sm",children:d.address})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"City"}),e.jsx("p",{className:"text-sm",children:d.city})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:"Zip Code"}),e.jsx("p",{className:"text-sm font-mono",children:d.zip})]})]})]})]})})]}),e.jsxs(Re,{value:"hiveId",className:"rounded-lg border-2 border-green-900/20 bg-green-900/5",children:[e.jsx("div",{className:"px-4 py-3 bg-green-900/10 rounded-t-lg",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3 flex-1",children:[m?e.jsx(he,{to:"https://the-guild.dev/graphql/hive",target:"_blank",rel:"noreferrer",onClick:u=>u.stopPropagation(),className:"inline-flex items-center font-semibold",children:e.jsx("div",{className:"h-10 w-10 rounded-lg bg-green-900 flex items-center justify-center text-white font-bold",children:e.jsx("img",{src:"/icons/logos/hive.svg",alt:"Hive logo",className:"size-8 object-cover"})})}):e.jsx("div",{className:"h-10 w-10 rounded-lg bg-green-900 flex items-center justify-center text-white font-bold",children:e.jsx(ps,{})}),e.jsxs("div",{className:"flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h3",{className:"font-semibold text-lg",children:"Hive"}),m?e.jsx(ze,{className:"h-5 w-5 text-green-600"}):e.jsx(Ns,{className:"h-5 w-5 text-red-600"})]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Schema registry, analytics, metrics and gateway for GraphQL federation and other GraphQL APIs"})]})]}),e.jsx("div",{className:"flex items-center gap-2",children:e.jsx($e,{id:r?.hiveId??void 0,provider:"Hive",updateClient:async u=>x(u,"hiveId")})}),m&&e.jsx(vs,{className:"p-2"})]})}),e.jsx(ys,{children:m&&e.jsxs("div",{className:"flex flex-col gap-4 px-4 pb-4 pt-2 border-t",children:[e.jsx("div",{className:"text-sm",children:e.jsxs(he,{to:"https://the-guild.dev/graphql/hive",target:"_blank",rel:"noreferrer",onClick:u=>u.stopPropagation(),className:"inline-flex items-center font-semibold gap-2",children:[e.jsx("img",{src:"/icons/logos/hive.svg",alt:"Hive logo",className:"size-8 object-cover"}),"Hive"]})}),e.jsx("div",{className:"text-sm",children:e.jsxs(he,{to:`https://graphcdn.retool.com/apps/f6c244bc-b7ce-11ef-a86c-0b05f221c5b4/Hive/Hive%20Admin/explore_organization?id=${r.hiveId}`,target:"_blank",rel:"noreferrer",onClick:u=>u.stopPropagation(),className:"inline-flex items-center font-semibold gap-2",children:[e.jsx("img",{src:"/icons/logos/retool.svg",alt:"Retool logo",className:"size-8 object-cover"}),"Retool"]})})]})})]},"hiveId"),It.map(u=>e.jsx(Re,{value:u.id,className:"rounded-lg border-2 border-gray-500/20 bg-gray-500/5",children:e.jsx("div",{className:"px-4 py-3 bg-gray-500/10 rounded-t-lg",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3 flex-1",children:[r?.[u.id]?e.jsx(he,{to:u.url.replace("[ID]",r?.[u.id]??""),target:"_blank",rel:"noreferrer",onClick:D=>D.stopPropagation(),className:"inline-flex items-center font-semibold",children:e.jsx("div",{className:"h-10 w-10 rounded-lg bg-gray-500 flex items-center justify-center text-white font-bold",children:e.jsx(rs,{})})}):e.jsx("div",{className:"h-10 w-10 rounded-lg bg-gray-500 flex items-center justify-center text-white font-bold",children:e.jsx(ps,{})}),e.jsxs("div",{className:"flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h3",{className:"font-semibold text-lg",children:u.name}),r?.[u.id]==null?e.jsx(Ns,{className:"h-5 w-5 text-red-600"}):e.jsx(ze,{className:"h-5 w-5 text-green-600"})]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:u.description})]})]}),e.jsx("div",{className:"flex items-center gap-2",children:e.jsx($e,{id:t?.clientInfo?.integrations[u.id]??void 0,provider:u.name,keyType:u.keyType,updateClient:async D=>x(D,u.id)})})]})})},u.id))]})})]})}function $e({id:s,provider:n,keyType:a,updateClient:t}){const[r,o]=j.useState(!1),[c,l]=j.useState(s),h=j.useCallback(async()=>{await t(c),o(!1)},[c,t]);return e.jsxs(Te,{open:r,onOpenChange:o,children:[e.jsx(Ls,{asChild:!0,children:e.jsx(T,{variant:"outline",size:"sm",onClick:d=>d.stopPropagation(),children:e.jsx(_s,{className:"h-4 w-4"})})}),e.jsxs(Be,{onClick:d=>d.stopPropagation(),children:[e.jsxs(os,{children:[e.jsxs(ds,{children:["Configure ",n]}),e.jsxs(ms,{children:["Update your ",n," integration settings"]})]}),e.jsx("div",{className:"space-y-4 py-4",children:e.jsxs("div",{className:"space-y-2",children:[e.jsxs(Ae,{htmlFor:"id",children:[n," ",a??"ID"]}),e.jsx(w,{id:"id",value:c,onChange:d=>l(d.target.value),placeholder:`Enter ${n} ${a??"ID"}`})]})}),e.jsxs(Ps,{children:[e.jsx(T,{variant:"outline",onClick:()=>o(!1),children:"Cancel"}),e.jsx(T,{onClick:h,disabled:!c,children:"Save Changes"})]})]})]})}const kt="updateBusiness",qs=()=>{const[{fetching:s},n]=Ee(yn),a=j.useCallback(async t=>{const r=`Error updating business ID [${t.businessId}]`,o=`${kt}-${t.businessId}`;K.loading("Updating business",{id:o});try{const c=await n(t),l=Pe(c,r,o,"updateBusiness");if(l)return K.success("Success",{id:o,description:"Business updated"}),l.updateBusiness}catch(c){console.error(`${r}: ${c}`),K.error("Error",{id:o,description:r,duration:1e5,closeButton:!0})}},[n]);return{fetching:s,updateBusiness:a}},St=Object.values(kn);function Ds(s){return!s||s.__typename!=="LtdFinancialEntity"?{}:{isClient:!!s.clientInfo?.id,isActive:s.isActive,isReceiptEnough:s.isReceiptEnough??void 0,isDocumentsOptional:s.isDocumentsOptional??void 0,isVatOptional:s.optionalVAT??void 0,isExemptDealer:s.exemptDealer??void 0,sortCode:s.sortCode?.key?.toString()??void 0,taxCategory:s.taxCategory?.id??void 0,pcn874RecordType:s?.pcn874RecordType??void 0,irsCode:s?.irsCode??void 0,description:s.suggestions?.description??void 0,tags:s.suggestions?.tags?.map(n=>n.id)??[],phrases:s.suggestions?.phrases??[],emails:s.suggestions?.emails??[],internalLinks:s.suggestions?.emailListener?.internalEmailLinks??[],attachmentTypes:s.suggestions?.emailListener?.attachments??[],useMessageBody:s.suggestions?.emailListener?.emailBody??void 0}}function Tt(s){const a=s.internalLinks||s.useMessageBody||s.attachmentTypes?{internalEmailLinks:s.internalLinks,emailBody:s.useMessageBody,attachments:s.attachmentTypes}:void 0,r=s.description||s.tags||s.phrases||s.emails||a?{description:s.description,tags:s.tags?.map(o=>({id:o})),phrases:s.phrases,emails:s.emails,emailListener:a}:void 0;return{optionalVAT:s.isVatOptional,exemptDealer:s.isExemptDealer,sortCode:s.sortCode?parseInt(s.sortCode):void 0,taxCategory:s.taxCategory,pcn874RecordType:s.pcn874RecordType,irsCode:s.irsCode,isActive:s.isActive,isReceiptEnough:s.isReceiptEnough,isDocumentsOptional:s.isDocumentsOptional,suggestions:r}}function Bt({data:s,refetchBusiness:n}){const a=fe(bn,s),[t,r]=j.useState(Ds(a)),{userContext:o}=j.useContext(us),{updateBusiness:c,fetching:l}=qs(),[h,d]=j.useState(!1),[m,x]=j.useState(void 0),u=Oe({defaultValues:t}),D=async p=>{if(!a||!o?.context.adminBusinessId)return;const B=cs(p,u.formState.dirtyFields);if(!B)return;const F=Tt(B);await c({businessId:a.id,ownerId:o.context.adminBusinessId,fields:F}),B.tags?.length||B.description?(x({tagIds:B.tags?.map(O=>({id:O})),description:B.description}),d(!0)):n?.()};if(j.useEffect(()=>{if(a){const p=Ds(a);r(p),u.reset(p)}},[a,u]),!a)return e.jsx("div",{});const A=u.watch("isClient");return e.jsxs(Y,{children:[e.jsx(X,{children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{children:[e.jsx(J,{children:"Configurations"}),e.jsx(Q,{children:"Business status, tax settings, automation rules, and integration preferences"})]}),!A&&e.jsx(Nn,{businessId:a.id,onDone:n})]})}),e.jsx(Le,{...u,children:e.jsxs("form",{onSubmit:u.handleSubmit(D),children:[e.jsxs(Z,{className:"space-y-6",children:[e.jsx(Et,{form:u}),e.jsx(le,{}),e.jsx(Pt,{form:u}),e.jsx(le,{}),e.jsx(Ot,{form:u}),e.jsx(le,{}),e.jsx(Lt,{form:u})]}),e.jsx(is,{className:"flex justify-end border-t pt-6",children:e.jsxs(T,{type:"submit",disabled:l||Object.keys(u.formState.dirtyFields).length===0,children:[e.jsx(hs,{className:"h-4 w-4 mr-2"}),"Save Changes"]})})]})}),e.jsx($a,{businessId:a.id,tagIds:m?.tagIds,description:m?.description,open:h,onOpenChange:d,onClose:n})]})}function Et({form:s}){return e.jsxs("div",{className:"space-y-4",children:[e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:"Business Status & Behavior"}),e.jsxs("div",{className:"space-y-4",children:[e.jsx(g,{control:s.control,name:"isClient",render:({field:n,fieldState:a})=>e.jsxs(f,{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"space-y-0.5",children:[e.jsx(v,{children:"Is Client"}),e.jsx(de,{children:"Mark this business as a client"})]}),e.jsx(N,{children:e.jsx(ce,{disabled:!0,checked:n.value,onCheckedChange:n.onChange,className:S(a)})})]})}),e.jsx(g,{control:s.control,name:"isActive",render:({field:n,fieldState:a})=>e.jsxs(f,{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"space-y-0.5",children:[e.jsx(v,{children:"Is Active"}),e.jsx(de,{children:"Business is currently active"})]}),e.jsx(N,{children:e.jsx(ce,{checked:n.value,onCheckedChange:n.onChange,className:S(a)})})]})}),e.jsx(g,{control:s.control,name:"isReceiptEnough",render:({field:n,fieldState:a})=>e.jsxs(f,{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"space-y-0.5",children:[e.jsx(v,{children:"Is Receipt Enough"}),e.jsx(de,{children:"Generate ledger for receipt documents if no invoice available"})]}),e.jsx(N,{children:e.jsx(ce,{checked:n.value,onCheckedChange:n.onChange,className:S(a)})})]})}),e.jsx(g,{control:s.control,name:"isDocumentsOptional",render:({field:n,fieldState:a})=>e.jsxs(f,{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"space-y-0.5",children:[e.jsx(v,{children:"No Docs Required"}),e.jsx(de,{children:"Skip document validation for common charges"})]}),e.jsx(N,{children:e.jsx(ce,{checked:n.value,onCheckedChange:n.onChange,className:S(a)})})]})}),e.jsx(g,{control:s.control,name:"isVatOptional",render:({field:n,fieldState:a})=>e.jsxs(f,{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"space-y-0.5",children:[e.jsx(v,{children:"Is VAT Optional"}),e.jsx(de,{children:"Mute missing VAT indicator"})]}),e.jsx(N,{children:e.jsx(ce,{checked:n.value,onCheckedChange:n.onChange,className:S(a)})})]})}),e.jsx(g,{control:s.control,name:"isExemptDealer",render:({field:n,fieldState:a})=>e.jsxs(f,{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"space-y-0.5",children:[e.jsx(v,{children:"Is Exempt Dealer"}),e.jsx(de,{children:"Business is exempt from VAT requirements"})]}),e.jsx(N,{children:e.jsx(ce,{checked:n.value,onCheckedChange:n.onChange,className:S(a)})})]})})]})]})}function Pt({form:s}){const{selectableTaxCategories:n,fetching:a}=Es(),{selectableSortCodes:t,fetching:r,sortCodes:o}=Cn(),{selectableTags:c,fetching:l}=An(),h=j.useCallback(d=>{if(d){const m=o.find(x=>Number(x.key)===Number(d));m&&(m.defaultIrsCode?s.setValue("irsCode",m.defaultIrsCode,{shouldDirty:!0}):s.setValue("irsCode",null,{shouldDirty:!0}))}},[s,o]);return e.jsxs("div",{className:"space-y-4",children:[e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:"Default Settings"}),e.jsxs("div",{className:"grid gap-4 md:grid-cols-2",children:[e.jsx(g,{control:s.control,name:"sortCode",render:({field:d,fieldState:m})=>e.jsxs(f,{children:[e.jsx(v,{children:"Sort Code"}),e.jsx(N,{children:e.jsx(ke,{onChange:x=>{h(x),d.onChange(x)},data:t,value:d.value,disabled:r,placeholder:"Scroll to see all options",formPart:!0,triggerProps:{className:S(m)}})}),e.jsx(b,{})]})}),e.jsx(g,{control:s.control,name:"taxCategory",render:({field:d,fieldState:m})=>e.jsxs(f,{children:[e.jsx(v,{children:"Tax Category"}),e.jsx(N,{children:e.jsx(ke,{data:n,disabled:a,value:d.value,onChange:d.onChange,placeholder:"Scroll to see all options",formPart:!0,triggerProps:{className:S(m)}})}),e.jsx(b,{})]})}),e.jsx(g,{control:s.control,name:"pcn874RecordType",render:({field:d,fieldState:m})=>e.jsxs(f,{children:[e.jsx(v,{children:"PCN874 Record Type"}),e.jsxs(Ue,{onValueChange:d.onChange,value:d.value,children:[e.jsx(N,{children:e.jsx(He,{className:S(m),children:e.jsx(qe,{})})}),e.jsx(Ge,{children:Object.entries(wn).map(([x,u])=>e.jsx(We,{value:x,children:`${u} (${x})`},x))})]}),e.jsx(b,{})]})}),e.jsx(g,{control:s.control,name:"irsCode",render:({field:d,fieldState:m})=>e.jsxs(f,{children:[e.jsx(v,{children:"IRS Code"}),e.jsx(N,{children:e.jsx(In,{value:d.value??void 0,onValueChange:x=>d.onChange(x??null),hideControls:!0,decimalScale:0,className:S(m)})}),e.jsx(b,{})]})}),e.jsx(g,{control:s.control,name:"description",render:({field:d,fieldState:m})=>e.jsxs(f,{children:[e.jsx(v,{children:"Charge Description"}),e.jsx(N,{children:e.jsx(w,{placeholder:"Enter default charge description",...d,className:S(m)})}),e.jsx(b,{})]})}),e.jsx(g,{control:s.control,name:"tags",render:({field:d,fieldState:m})=>e.jsxs(f,{children:[e.jsx(v,{children:"Tags"}),e.jsx(N,{children:e.jsx(Dn,{options:Object.values(c).map(({value:x,label:u})=>({label:u,value:x})),onValueChange:d.onChange,defaultValue:d.value,value:d.value,placeholder:"Select Default Tags",variant:"default",disabled:l,className:S(m)})}),e.jsx(b,{})]})})]})]})}function Ot({form:s}){const[n,a]=j.useState(""),[t,r]=j.useState(""),o=()=>{if(n.trim()){const d=s.getValues("phrases");s.setValue("phrases",[...d,n.trim()],{shouldDirty:!0}),a("")}},c=()=>{if(t.trim()){const d=s.getValues("emails");s.setValue("emails",[...d,t.trim()],{shouldDirty:!0}),r("")}},l=d=>{const m=s.getValues("phrases");s.setValue("phrases",m.filter((x,u)=>u!==d),{shouldDirty:!0})},h=d=>{const m=s.getValues("emails");s.setValue("emails",m.filter((x,u)=>u!==d),{shouldDirty:!0})};return e.jsxs("div",{className:"space-y-4",children:[e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:"Auto-matching Configuration"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Configure patterns for automatic matching of bank transactions and documents"}),e.jsx(g,{control:s.control,name:"phrases",render:({field:d,fieldState:m})=>e.jsxs(f,{children:[e.jsx(v,{children:"Phrases"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(w,{placeholder:"Add phrase...",value:n,onChange:x=>a(x.target.value),onKeyDown:x=>{x.key==="Enter"&&(x.preventDefault(),o())},className:S(m)}),e.jsx(T,{type:"button",size:"sm",onClick:o,children:e.jsx(ae,{className:"h-4 w-4"})})]}),e.jsx("div",{className:"flex flex-wrap gap-2",children:d.value?.map((x,u)=>e.jsxs(ie,{variant:"secondary",className:"gap-1",children:[x,e.jsx(T,{variant:"ghost",size:"icon",className:"p-0 size-3",onClick:()=>l(u),children:e.jsx(te,{className:"size-3 cursor-pointer",onClick:()=>l(u)})})]},u))}),e.jsx(b,{})]})}),e.jsx(g,{control:s.control,name:"emails",render:({field:d,fieldState:m})=>e.jsxs(f,{children:[e.jsx(v,{children:"Email Addresses"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(w,{type:"email",placeholder:"Add email...",value:t,onChange:x=>r(x.target.value),onKeyDown:x=>{x.key==="Enter"&&(x.preventDefault(),c())},className:S(m)}),e.jsx(T,{type:"button",size:"sm",onClick:c,children:e.jsx(ae,{className:"h-4 w-4"})})]}),e.jsx("div",{className:"flex flex-wrap gap-2",children:d.value?.map((x,u)=>e.jsxs(ie,{variant:"secondary",className:"gap-1",children:[x,e.jsx(T,{variant:"ghost",size:"icon",className:"p-0 size-3",onClick:()=>h(u),children:e.jsx(te,{className:"size-3 cursor-pointer"})})]},u))}),e.jsx(b,{})]})})]})}function Lt({form:s}){const[n,a]=j.useState(""),t=()=>{if(n.trim()){const c=s.getValues("internalLinks");s.setValue("internalLinks",[...c,n.trim()],{shouldDirty:!0}),a("")}},r=c=>{const l=s.getValues("attachmentTypes");s.setValue("attachmentTypes",l?.includes(c)?l.filter(h=>h!==c):[...l,c],{shouldDirty:!0})},o=c=>{const l=s.getValues("internalLinks");s.setValue("internalLinks",l.filter((h,d)=>d!==c),{shouldDirty:!0})};return e.jsxs("div",{className:"space-y-4",children:[e.jsx("h3",{className:"text-sm font-semibold text-foreground",children:"Gmail Feature Configuration"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Configure Gmail integration settings for document processing"}),e.jsx(g,{control:s.control,name:"attachmentTypes",render:({field:c,fieldState:l})=>e.jsxs(f,{children:[e.jsx(v,{children:"Attachment Types"}),e.jsx("div",{className:S(l)+" rounded-md flex flex-wrap gap-2",children:St.map(h=>e.jsx(ie,{variant:c.value?.includes(h)?"default":"outline",className:"cursor-pointer",onClick:()=>r(h),children:h},h))}),e.jsx(b,{})]})}),e.jsx(g,{control:s.control,name:"internalLinks",render:({field:c,fieldState:l})=>e.jsxs(f,{children:[e.jsx(v,{children:"Internal Links"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(w,{type:"url",placeholder:"Add internal link...",value:n,onChange:h=>a(h.target.value),onKeyDown:h=>{h.key==="Enter"&&(h.preventDefault(),t())}}),e.jsx(T,{type:"button",size:"sm",onClick:t,children:e.jsx(ae,{className:"h-4 w-4"})})]}),e.jsx("div",{className:S(l)+" flex flex-wrap gap-2 rounded-md",children:c.value?.map((h,d)=>e.jsxs(ie,{variant:"secondary",className:"gap-1 max-w-xs truncate",children:[h,e.jsx(T,{variant:"ghost",size:"icon",className:"p-0 size-3",onClick:()=>o(d),children:e.jsx(te,{className:"size-3 cursor-pointer flex-shrink-0"})})]},d))}),e.jsx(b,{})]})}),e.jsx(g,{control:s.control,name:"useMessageBody",render:({field:c,fieldState:l})=>e.jsxs(f,{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"space-y-0.5",children:[e.jsx(v,{children:"Should Use Message Body"}),e.jsx(de,{children:"Extract information from email message body"})]}),e.jsx(N,{children:e.jsx(ce,{checked:c.value,onCheckedChange:c.onChange,className:S(l)})})]})})]})}const Ft=pe({businessName:R().min(1,"Business name is required"),locality:R().min(1,"Locality is required"),localName:R().optional(),govId:R().optional(),address:R().optional(),city:R().optional(),zipCode:R().optional(),localAddress:R().optional(),phone:R().optional(),website:En("Invalid URL").optional().or(Pn("")),generalContacts:me(gs()).optional(),billingEmails:me(gs()).optional()});function ks(s){return!s||s.__typename!=="LtdFinancialEntity"?{}:{businessName:s.name,locality:s.country?.code,localName:s.hebrewName??void 0,govId:s.governmentId??void 0,address:s.address??void 0,city:s.city??void 0,zipCode:s.zipCode??void 0,phone:s.phoneNumber??void 0,website:s.website??void 0,generalContacts:s.email?.split(",").map(n=>n.trim()),billingEmails:s.clientInfo?.emails}}function Mt(s){return{name:s.businessName,country:s.locality,hebrewName:s.localName,governmentId:s.govId,address:s.address,city:s.city,zipCode:s.zipCode,phoneNumber:s.phone,website:s.website,email:s.generalContacts?.join(", ")}}function _t({data:s,refetchBusiness:n}){const a=fe(Bn,s),[t,r]=j.useState(ks(a)),{userContext:o}=j.useContext(us),{updateBusiness:c,fetching:l}=qs(),{updateClient:h,fetching:d}=Fs(),m=Oe({resolver:ts(Ft),defaultValues:t}),{countries:x,fetching:u}=Sn(),[D,A]=j.useState(""),[p,B]=j.useState(""),F=m.watch("locality"),O=m.watch("address"),V=m.watch("city"),z=m.watch("zipCode"),M=m.watch("localAddress");j.useEffect(()=>{O!==t.address&&m.setValue("address",O,{shouldDirty:!0})},[O,t.address,m]),j.useEffect(()=>{V!==t.city&&m.setValue("city",V,{shouldDirty:!0})},[V,t.city,m]),j.useEffect(()=>{z!==t.zipCode&&m.setValue("zipCode",z,{shouldDirty:!0})},[z,t.zipCode,m]),j.useEffect(()=>{M!==t.localAddress&&m.setValue("localAddress",M,{shouldDirty:!0})},[M,t.localAddress,m]);const G=a&&"clientInfo"in a&&!!a.clientInfo,$=F===o?.context.locality,ee=y=>{D.trim()&&(m.setValue("generalContacts",[...y,D.trim()],{shouldDirty:!0}),A(""))},i=(y,k)=>{m.setValue("generalContacts",y.filter((E,L)=>L!==k),{shouldDirty:!0})},C=y=>{p.trim()&&(m.setValue("billingEmails",[...y,p.trim()],{shouldDirty:!0}),B(""))},I=(y,k)=>{m.setValue("billingEmails",y.filter((E,L)=>L!==k),{shouldDirty:!0})},_=async y=>{if(!a||!o?.context.adminBusinessId)return;const k=cs(y,m.formState.dirtyFields);if(!k)return;const E=Mt(k),L=[];Object.values(E).some(Fe=>Fe!=null)&&L.push(c({businessId:a.id,ownerId:o.context.adminBusinessId,fields:E})),G&&k.billingEmails&&L.push(h({businessId:a.id,fields:{emails:k.billingEmails}})),await Promise.all(L),n?.()};return j.useEffect(()=>{if(a){const y=ks(a);r(y),m.reset(y)}},[a,m]),e.jsxs(Y,{children:[e.jsxs(X,{children:[e.jsx(J,{children:"Contact Information"}),e.jsx(Q,{children:"Business contact details and address information"})]}),e.jsx(Le,{...m,children:e.jsxs("form",{onSubmit:m.handleSubmit(_),children:[e.jsx(Z,{children:e.jsxs("div",{className:"grid gap-6 md:grid-cols-2",children:[e.jsx(g,{control:m.control,name:"businessName",render:({field:y,fieldState:k})=>e.jsxs(f,{children:[e.jsx(v,{children:"Business Name"}),e.jsx(N,{children:e.jsx(w,{...y,className:S(k)})}),e.jsx(b,{})]})}),e.jsx(g,{control:m.control,name:"locality",render:({field:y,fieldState:k})=>e.jsxs(f,{children:[e.jsx(v,{children:"Locality / Country"}),e.jsx(ke,{onChange:y.onChange,data:x.map(E=>({value:E.code,label:E.name})),value:y.value,disabled:u,placeholder:"Scroll to see all options",formPart:!0,triggerProps:{className:S(k)}}),e.jsx(b,{})]})}),$&&e.jsx(g,{control:m.control,name:"localName",render:({field:y,fieldState:k})=>e.jsxs(f,{children:[e.jsx(v,{children:"Local Name"}),e.jsx(N,{children:e.jsx(w,{...y,placeholder:"Business name in local language",className:S(k)})}),e.jsx(b,{})]})}),e.jsx(g,{control:m.control,name:"govId",render:({field:y,fieldState:k})=>e.jsxs(f,{children:[e.jsx(v,{children:"Government ID"}),e.jsx(N,{children:e.jsx(w,{...y,placeholder:"Enter Government ID",className:S(k)})}),e.jsx(b,{})]})}),e.jsx(g,{control:m.control,name:"address",render:({field:y,fieldState:k})=>e.jsxs(f,{className:"md:col-span-2",children:[e.jsxs(v,{className:"flex items-center gap-2",children:[e.jsx(Qe,{className:"h-4 w-4"}),"Address"]}),e.jsx(N,{children:e.jsx(js,{...y,rows:3,placeholder:"Enter business address",className:S(k)})}),e.jsx(b,{})]})}),e.jsx(g,{control:m.control,name:"city",render:({field:y,fieldState:k})=>e.jsxs(f,{children:[e.jsx(v,{children:"City"}),e.jsx(N,{children:e.jsx(w,{...y,placeholder:"Enter City",className:S(k)})}),e.jsx(b,{})]})}),e.jsx(g,{control:m.control,name:"zipCode",render:({field:y,fieldState:k})=>e.jsxs(f,{children:[e.jsx(v,{children:"Zip Code"}),e.jsx(N,{children:e.jsx(w,{...y,placeholder:"Enter Zip Code",className:S(k)})}),e.jsx(b,{})]})}),$&&e.jsx(g,{control:m.control,name:"localAddress",render:({field:y,fieldState:k})=>e.jsxs(f,{className:"md:col-span-2",children:[e.jsxs(v,{className:"flex items-center gap-2",children:[e.jsx(Qe,{className:"h-4 w-4"}),"Local Address"]}),e.jsx(N,{children:e.jsx(js,{...y,rows:3,placeholder:"Enter address in local language",className:S(k)})}),e.jsx(b,{})]})}),e.jsx(g,{control:m.control,name:"phone",render:({field:y,fieldState:k})=>e.jsxs(f,{children:[e.jsxs(v,{className:"flex items-center gap-2",children:[e.jsx(Ms,{className:"h-4 w-4"}),"Phone"]}),e.jsx(N,{children:e.jsx(w,{...y,type:"tel",placeholder:"+1 (555) 123-4567",className:S(k)})}),e.jsx(b,{})]})}),e.jsx(g,{control:m.control,name:"website",render:({field:y,fieldState:k})=>e.jsxs(f,{children:[e.jsxs(v,{className:"flex items-center gap-2",children:[e.jsx(Tn,{className:"h-4 w-4"}),"Website"]}),e.jsx(N,{children:e.jsx(w,{...y,type:"url",placeholder:"https://example.com",className:S(k)})}),e.jsx(b,{})]})}),e.jsx(g,{control:m.control,name:"generalContacts",render:({field:y,fieldState:k})=>e.jsxs(f,{className:"md:col-span-2",children:[e.jsxs(v,{className:"flex items-center gap-2",children:[e.jsx(Je,{className:"h-4 w-4"}),"General Contacts"]}),e.jsx(N,{children:e.jsxs("div",{className:"space-y-2",children:[e.jsx("div",{className:S(k)+" flex flex-wrap gap-2 mb-2 rounded-md",children:y.value?.map((E,L)=>e.jsxs(ie,{variant:"secondary",className:"gap-1 pr-1",children:[E,e.jsx("button",{type:"button",onClick:()=>i(y.value??[],L),className:"ml-1 hover:bg-muted rounded-sm p-0.5",children:e.jsx(te,{className:"h-3 w-3"})})]},L))}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(w,{value:D,onChange:E=>A(E.target.value),onKeyDown:E=>{E.key==="Enter"&&(E.preventDefault(),ee(y.value??[]))},placeholder:"Add contact email",type:"email"}),e.jsx(T,{type:"button",variant:"outline",size:"icon",disabled:!D.trim(),onClick:()=>ee(y.value??[]),children:e.jsx(ae,{className:"h-4 w-4"})})]})]})}),e.jsx(b,{})]})}),G&&e.jsx(g,{control:m.control,name:"billingEmails",render:({field:y,fieldState:k})=>e.jsxs(f,{className:"md:col-span-2",children:[e.jsxs(v,{className:"flex items-center gap-2",children:[e.jsx(Je,{className:"h-4 w-4"}),"Billing Emails"]}),e.jsx(N,{children:e.jsxs("div",{className:"space-y-2",children:[e.jsx("div",{className:S(k)+" flex flex-wrap gap-2 mb-2 rounded-md",children:y.value?.map((E,L)=>e.jsxs(ie,{variant:"secondary",className:"gap-1 pr-1",children:[E,e.jsx("button",{type:"button",onClick:()=>I(y.value??[],L),className:"ml-1 hover:bg-muted rounded-sm p-0.5",children:e.jsx(te,{className:"h-3 w-3"})})]},L))}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(w,{value:p,onChange:E=>B(E.target.value),onKeyDown:E=>{E.key==="Enter"&&(E.preventDefault(),C(y.value??[]))},placeholder:"Add billing email",type:"email"}),e.jsx(T,{type:"button",variant:"outline",size:"icon",disabled:!p.trim(),onClick:()=>C(y.value??[]),children:e.jsx(ae,{className:"h-4 w-4"})})]})]})}),e.jsx(b,{})]})})]})}),e.jsx(is,{className:"flex justify-end border-t mt-4 pt-6",children:e.jsxs(T,{type:"submit",disabled:l||d||Object.keys(m.formState.dirtyFields).length===0,children:[e.jsx(hs,{className:"h-4 w-4 mr-2"}),"Save Changes"]})})]})})]})}function Rt({businessId:s}){return e.jsxs(Y,{children:[e.jsx(X,{children:e.jsx("div",{className:"flex items-center justify-between",children:e.jsxs("div",{children:[e.jsx(J,{children:"Documents"}),e.jsx(Q,{children:"Invoices, proformas, receipts, and other accounting documents"})]})})}),e.jsx(Z,{children:e.jsx(On,{businessId:s,linkedDocumentIds:[],limit:1e3})})]})}function zt({businessId:s}){const[{data:n,fetching:a}]=re({query:Ln,variables:{businessId:s}});return a?e.jsx("div",{children:"Loading ledger records..."}):e.jsxs(Y,{children:[e.jsx(X,{className:"flex w-full justify-between items-center",children:e.jsx("div",{className:"flex items-center justify-between",children:e.jsxs("div",{children:[e.jsx(J,{children:"Ledger Records"}),e.jsx(Q,{children:"Complete ledger history for this business"})]})})}),e.jsx(Z,{children:e.jsx("div",{className:"rounded-md border",children:e.jsx(Jn,{ledgerRecordsData:n?.ledgerRecordsByFinancialEntity??[]})})})]})}function Vt({businessId:s}){const[{data:n,fetching:a}]=re({query:Fn,variables:{businessId:s}});return a?e.jsx("div",{children:"Loading transactions..."}):e.jsxs(Y,{children:[e.jsxs(X,{className:"flex w-full justify-between items-center",children:[e.jsx("div",{className:"flex items-center justify-between",children:e.jsxs("div",{children:[e.jsx(J,{children:"Transactions"}),e.jsx(Q,{children:"Complete transaction history for this business"})]})}),e.jsx(va,{rawTransactions:n?.transactionsByFinancialEntity??[]})]}),e.jsx(Z,{children:e.jsx("div",{className:"rounded-md border",children:e.jsx(Ia,{transactionsProps:n?.transactionsByFinancialEntity??[]})})})]})}function $t({data:s,refetchBusiness:n}){const a=fe(Hn,s),[t,r]=Mn(),{setFiltersContext:o}=j.useContext(_n);j.useEffect(()=>{o(null)},[o]);const c=t.get("tab")||"contact",l=m=>{r({tab:m})};if(!a)return e.jsx("div",{children:"Business not found"});const h="clientInfo"in a&&!!a.clientInfo,d="adminInfo"in a&&!!a.adminInfo;return e.jsxs("div",{className:"min-h-screen bg-background",children:[e.jsx(ea,{data:a}),e.jsx("main",{className:"container mx-auto px-4 py-6 md:px-6 lg:px-8 max-w-7xl",children:e.jsxs(Rn,{value:c,onValueChange:l,className:"w-full",children:[e.jsxs(zn,{className:"grid w-full lg:grid-cols-8 sm:grid-cols-4 grid-cols-8 mb-6 h-auto gap-1 bg-muted/50 p-1",children:[e.jsxs(se,{value:"contact",className:"flex items-center gap-2 data-[state=active]:bg-background",children:[e.jsx(ka,{className:"h-4 w-4"}),e.jsx("span",{className:"hidden sm:inline",children:"Contact"})]}),e.jsxs(se,{value:"config",className:"flex items-center gap-2 data-[state=active]:bg-background",children:[e.jsx(_s,{className:"h-4 w-4"}),e.jsx("span",{className:"hidden sm:inline",children:"Config"})]}),e.jsxs(se,{value:"charges",className:"flex items-center gap-2 data-[state=active]:bg-background",children:[e.jsx(De,{className:"h-4 w-4"}),e.jsx("span",{className:"hidden sm:inline",children:"Charges"})]}),e.jsxs(se,{value:"transactions",className:"flex items-center gap-2 data-[state=active]:bg-background",children:[e.jsx(Vn,{className:"h-4 w-4"}),e.jsx("span",{className:"hidden sm:inline",children:"Transactions"})]}),e.jsxs(se,{value:"documents",className:"flex items-center gap-2 data-[state=active]:bg-background",children:[e.jsx($n,{className:"h-4 w-4"}),e.jsx("span",{className:"hidden sm:inline",children:"Documents"})]}),e.jsxs(se,{value:"ledger",className:"flex items-center gap-2 data-[state=active]:bg-background",children:[e.jsx(Ra,{className:"h-4 w-4"}),e.jsx("span",{className:"hidden sm:inline",children:"Ledger"})]}),e.jsxs(se,{value:"balance",className:"flex items-center gap-2 data-[state=active]:bg-background",children:[e.jsx(Ta,{className:"h-4 w-4"}),e.jsx("span",{className:"hidden sm:inline",children:"Balance"})]}),h&&e.jsxs(e.Fragment,{children:[e.jsxs(se,{value:"contracts",className:"flex items-center gap-2 data-[state=active]:bg-background",children:[e.jsx(La,{className:"h-4 w-4"}),e.jsx("span",{className:"hidden sm:inline",children:"Contracts"})]}),e.jsxs(se,{value:"integrations",className:"flex items-center gap-2 data-[state=active]:bg-background",children:[e.jsx(Va,{className:"h-4 w-4"}),e.jsx("span",{className:"hidden sm:inline",children:"Integrations"})]})]}),d&&e.jsxs(e.Fragment,{children:[e.jsxs(se,{value:"accounts",className:"flex items-center gap-2 data-[state=active]:bg-background",children:[e.jsx(Un,{className:"h-4 w-4"}),e.jsx("span",{className:"hidden sm:inline",children:"Accounts"})]}),e.jsxs(se,{value:"admin",className:"flex items-center gap-2 data-[state=active]:bg-background",children:[e.jsx(Ss,{className:"h-4 w-4"}),e.jsx("span",{className:"hidden sm:inline",children:"Admin"})]})]})]}),e.jsx(W,{value:"contact",className:"mt-0",children:e.jsx(_t,{data:a,refetchBusiness:n})}),e.jsx(W,{value:"config",className:"mt-0",children:e.jsx(Bt,{data:a,refetchBusiness:n})}),e.jsx(W,{value:"charges",className:"mt-0",children:e.jsx(rt,{businessId:a.id})}),e.jsx(W,{value:"transactions",className:"mt-0",children:e.jsx(Vt,{businessId:a.id})}),e.jsx(W,{value:"documents",className:"mt-0",children:e.jsx(Rt,{businessId:a.id})}),e.jsx(W,{value:"ledger",className:"mt-0",children:e.jsx(zt,{businessId:a.id})}),e.jsx(W,{value:"balance",className:"mt-0",children:e.jsx(it,{businessId:a.id})}),h&&e.jsxs(e.Fragment,{children:[e.jsx(W,{value:"contracts",className:"mt-0",children:e.jsx(At,{clientId:a.id})}),e.jsx(W,{value:"integrations",className:"mt-0",children:e.jsx(Dt,{data:a})}),e.jsx(W,{value:"charts",className:"mt-0",children:e.jsx(bt,{})})]}),d&&e.jsxs(e.Fragment,{children:[e.jsx(W,{value:"accounts",className:"mt-0",children:e.jsx(tt,{adminId:a.id})}),e.jsx(W,{value:"admin",className:"mt-0",children:e.jsx(Wa,{data:a})})]})]})})]})}const xi=()=>{const{businessId:s}=qn();let n;try{n=Gn()}catch{}const[{data:a,fetching:t},r]=re({query:Wn,pause:!s||!!n,variables:{businessId:s??""}}),o=n||a;return!n&&t&&!o?.business?e.jsx(as,{}):!s||!o?.business?e.jsx("div",{children:"Business not found"}):e.jsx($t,{data:o.business,refetchBusiness:async()=>r()})};export{xi as BusinessScreen};