@zeniai/web-app-ui 5.3.24-qa → 5.3.25-qa
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{AccountMappingScreen-DBBdkCwK.js → AccountMappingScreen-C0aQk3eU.js} +2 -2
- package/dist/assets/AddressRoutes-sfAfU_xp.js +1 -0
- package/dist/assets/{AddressScreen-B2w4_PKl.js → AddressScreen-BD6hfTYm.js} +2 -2
- package/dist/assets/{AiCfoScreen-CqaebBsK.js → AiCfoScreen-BQBOwbGt.js} +1 -1
- package/dist/assets/{AppDrawer-CKB499oT.js → AppDrawer-DhN1iuHe.js} +1 -1
- package/dist/assets/{BillPayApprovalRoutes-CZ1LN8um.js → BillPayApprovalRoutes-D-5hMi6f.js} +1 -1
- package/dist/assets/{BillPayRoutes-CQ68uF6m.js → BillPayRoutes-Bl_cSE9O.js} +10 -10
- package/dist/assets/{BusinessVerificationPageScreen-DcWVPrfh.js → BusinessVerificationPageScreen-C37udtB6.js} +2 -2
- package/dist/assets/{CardsAiCfoScreen-BXy3FrXI.js → CardsAiCfoScreen-DmUDeMY2.js} +1 -1
- package/dist/assets/{ChargeCardRoutes-Dv_9gHLl.js → ChargeCardRoutes-BbRPoXSC.js} +8 -8
- package/dist/assets/CompanyPassportScreen-C02FQ11m.js +1 -0
- package/dist/assets/ConnectionAuthScreen-MC_AsURR.js +11 -0
- package/dist/assets/CustomerOnboardingAuthScreen-96EM2Iem.js +1 -0
- package/dist/assets/{CustomerOnboardingRoutes-CchBXDRW.js → CustomerOnboardingRoutes-C3c9eOtd.js} +2 -2
- package/dist/assets/{DashboardRoutes-CdzeWYFZ.js → DashboardRoutes-C_2UjNDc.js} +1 -1
- package/dist/assets/{DefaultTenantHome-CsHhgUxV.js → DefaultTenantHome-DhIA-Auv.js} +1 -1
- package/dist/assets/{DomesticWireDetailScreen-jQEBeMm8.js → DomesticWireDetailScreen-BQNmPyj8.js} +3 -3
- package/dist/assets/{DrawerScreen-BxvAHfn3.js → DrawerScreen-BRJIwisq.js} +1 -1
- package/dist/assets/{EntityDetailRoutes-A1jj_wD6.js → EntityDetailRoutes-DbfX6l2s.js} +1 -1
- package/dist/assets/{ExpenseAutomationRoutes-BWhl8VPU.js → ExpenseAutomationRoutes-BTeDD1VK.js} +3 -3
- package/dist/assets/FeaturePreviewScreen-o3aGYwm3.js +1 -0
- package/dist/assets/{HubSpotOAuthCallbackScreen-RBVExOv1.js → HubSpotOAuthCallbackScreen-WSu5A4Ct.js} +1 -1
- package/dist/assets/{InboxNotificationsProvider-wKDejaDE.js → InboxNotificationsProvider-DDRknvRh.js} +1 -1
- package/dist/assets/InvoicingRoutes-BC26Hbp1.js +2 -0
- package/dist/assets/{MagicLinkRoutes-DZNt_dSs.js → MagicLinkRoutes-BjW61OFo.js} +9 -9
- package/dist/assets/{MagicLinkSignInScreen-C8VHmxv1.js → MagicLinkSignInScreen-CuZ2N1Pw.js} +1 -1
- package/dist/assets/{MobileAppDrawer-DpejEUKo.js → MobileAppDrawer-Dt611RZ9.js} +1 -1
- package/dist/assets/NotFoundScreen-RGfzDsux.js +1 -0
- package/dist/assets/{NotificationRoutes-DVdA_FNb.js → NotificationRoutes-BrF6wQ3V.js} +1 -1
- package/dist/assets/{OAuthConsentScreen-dMY5nBa0.js → OAuthConsentScreen-BmxCN9Az.js} +1 -1
- package/dist/assets/{PandLWithForecastRoutes-D57GW1cM.js → PandLWithForecastRoutes-CHdKE6AL.js} +1 -1
- package/dist/assets/PaymentLinkScreen-DvX14mnT.js +21 -0
- package/dist/assets/{PeopleRoutes-Dn3ixuya.js → PeopleRoutes-DdiAV2ss.js} +3 -3
- package/dist/assets/{PerformanceRoutes-BvYJFI_Z.js → PerformanceRoutes-DJdm2Hjh.js} +1 -1
- package/dist/assets/{Preview-QWFcM5zJ.js → Preview-CscVzNW8.js} +1 -1
- package/dist/assets/{QBOConnectionScreen-C366HwrW.js → QBOConnectionScreen-Ck8uFfex.js} +22 -22
- package/dist/assets/ReimbursementApprovalRoutes-5mZE12FG.js +1 -0
- package/dist/assets/{ReimbursementApprovalRuleDetailScreen-CsvqRnAa.js → ReimbursementApprovalRuleDetailScreen-BFUt_Xh2.js} +1 -1
- package/dist/assets/{ReimbursementRoutes-CNEWxfxv.js → ReimbursementRoutes-CLw3cjMk.js} +4 -4
- package/dist/assets/{ReportsRoutes-2VOVKXB1.js → ReportsRoutes-CBUKpJzK.js} +1 -1
- package/dist/assets/RewardsRoutes-BBrOnwnJ.js +1 -0
- package/dist/assets/ScreenRoutes-BUG6uyqt.js +2 -0
- package/dist/assets/{SettingsRoutes-DncRJVSz.js → SettingsRoutes-D9auvf6o.js} +1 -1
- package/dist/assets/{SetupPagesScreen-DeEl3avt.js → SetupPagesScreen-C6kDqRGd.js} +5 -5
- package/dist/assets/{SignInScreen-CjKuVPgf.js → SignInScreen-DRDEbF4D.js} +1 -1
- package/dist/assets/SignOutScreen-uoV20vWX.js +9 -0
- package/dist/assets/{TaskListScreen-DxnAUhd5.js → TaskListScreen-Cln-YyNE.js} +2 -2
- package/dist/assets/{TaskRoutes-BFSJCXvT.js → TaskRoutes-CMDSqiu4.js} +2 -2
- package/dist/assets/TransactionDetailRoutes-DMotJtMw.js +1 -0
- package/dist/assets/{TransactionDetailScreen-O2btGOsz.js → TransactionDetailScreen-B38w1Q4M.js} +1 -1
- package/dist/assets/{TransactionListRoutes-C_J1qRL2.js → TransactionListRoutes-CtUzO7h7.js} +1 -1
- package/dist/assets/{TreasuryRoutes--6WRfqbv.js → TreasuryRoutes-CaCxjqBo.js} +1 -1
- package/dist/assets/{VendorsRoutes-1M6iQid4.js → VendorsRoutes-P3oVwEbQ.js} +12 -12
- package/dist/assets/{WiseConfirmationScreen-uEwTTtUw.js → WiseConfirmationScreen-BCBFNvno.js} +1 -1
- package/dist/assets/{ZeniAccountRoutes-DSe57kIf.js → ZeniAccountRoutes-BRGQxOqx.js} +9 -9
- package/dist/assets/{ZeniAccountStatementScreen-wuqmOaNw.js → ZeniAccountStatementScreen-DQaLVOUo.js} +1 -1
- package/dist/assets/{accountMappingHelper-Dxym9iZl.js → accountMappingHelper-L9SkIWKz.js} +1 -1
- package/dist/assets/{analytics-D6lgRN4g.js → analytics-CsbG8awP.js} +1 -1
- package/dist/assets/{analyticsHelper-BAyQ5I4q.js → analyticsHelper-DtAHYi5r.js} +1 -1
- package/dist/assets/{core-dudeiae1.js → core-CGqhbBHO.js} +1 -1
- package/dist/assets/{decodeURIComponentSafe-DdtJweGV.js → decodeURIComponentSafe-6FvQaIqS.js} +1 -1
- package/dist/assets/{dnd-w5RIXJhq.js → dnd-CyZNzT3I.js} +1 -1
- package/dist/assets/{empty-BQ-kH7ke.js → empty-CIUWZs8G.js} +1 -1
- package/dist/assets/{empty-S4_FsbsM.js → empty-EE_1cMfQ.js} +1 -1
- package/dist/assets/{emptyVideoElement-BOMXiLde.js → emptyVideoElement-CPGcaaig.js} +1 -1
- package/dist/assets/{epic-B6GCyFsa.js → epic-Cxd3kHt9.js} +1 -1
- package/dist/assets/{expenseAutomationHelper-CNM6-ogC.js → expenseAutomationHelper-wwug0Eyp.js} +1 -1
- package/dist/assets/{getLocaleForTenant-Cpc4BQ5R.js → getLocaleForTenant-CSGkphtC.js} +1 -1
- package/dist/assets/{index-CTLvjwvC.js → index-BVFow4eV.js} +1 -1
- package/dist/assets/{index-BqrSHrqP.js → index-BcNWzeQF.js} +1 -1
- package/dist/assets/{index-CRLGPEBi.js → index-BswIxmLx.js} +1 -1
- package/dist/assets/{index-DpPNNcCA.js → index-CoKBrrSw.js} +2175 -2175
- package/dist/assets/{index-JYUQRle9.js → index-CpkJ0bAk.js} +1 -1
- package/dist/assets/{index-B2u8Reic.js → index-Dv01hTrY.js} +1 -1
- package/dist/assets/{index-D5TSKAOG.js → index-QncEC5ur.js} +1 -1
- package/dist/assets/{index-DvQ-vYdk.js → index-tzevB3Ch.js} +2 -2
- package/dist/assets/{lexical-C-raBUAt.js → lexical-C5ZCOEAv.js} +1 -1
- package/dist/assets/{liveblocks-BbYAHGiW.js → liveblocks-D83XGo_c.js} +1 -1
- package/dist/assets/{lottie-DNeeuCiH.js → lottie-DeqWxWVC.js} +1 -1
- package/dist/assets/{mui-DOWmAnEx.js → mui-CD71lp6N.js} +1 -1
- package/dist/assets/{pathToGoBack-DijDyQJF.js → pathToGoBack-CoDJzfH-.js} +1 -1
- package/dist/assets/{pdf-DOlTc5K5.js → pdf-D4eEcTTi.js} +4 -4
- package/dist/assets/{pdf-lib-DldClLY6.js → pdf-lib-Bd7L71QV.js} +1 -1
- package/dist/assets/{plaid-DLQRcG8N.js → plaid-C8_LWTII.js} +1 -1
- package/dist/assets/{pusher-BblTL6fP.js → pusher-BsMqYR11.js} +1 -1
- package/dist/assets/{react-CqBqEhXX.js → react-1_9r2O7V.js} +1 -1
- package/dist/assets/{react-fmNHKjFg.js → react-BEE0PagD.js} +1 -1
- package/dist/assets/{react-C91EH6ov.js → react-CNf4SjYR.js} +1 -1
- package/dist/assets/{react-CE2R_Gca.js → react-Dd8IfcKg.js} +1 -1
- package/dist/assets/{react-DNk2CrYB.js → react-DvKEjk5s.js} +1 -1
- package/dist/assets/{react-Dg9ESyCy.js → react-l2dFGOnI.js} +1 -1
- package/dist/assets/{recharts-B1E_Vcxh.js → recharts-2kmMgB1t.js} +1 -1
- package/dist/assets/{routePaths-CKi0kijJ.js → routePaths-DU2fgaW2.js} +1 -1
- package/dist/assets/{sentry-BOojnQyr.js → sentry-BPfEBx2C.js} +1 -1
- package/dist/assets/{url-9L1oZ1DN.js → url-DSofFSVz.js} +1 -1
- package/dist/assets/{url-Csy-z1a3.js → url-WFx5ES50.js} +1 -1
- package/dist/assets/{useAiCfoDashboardSuggestedQuestionsChips-CV2CbS_g.js → useAiCfoDashboardSuggestedQuestionsChips-BBuMQpNs.js} +1 -1
- package/dist/assets/useAskAiCfoHostNavButtonProps-C4V1Wf7u.js +1 -0
- package/dist/assets/{useChargeCardPusherEvents-BMqY0sxt.js → useChargeCardPusherEvents-B1n0Fi92.js} +1 -1
- package/dist/assets/{useDeviceId-DHa0QldK.js → useDeviceId-D_DsCe-9.js} +1 -1
- package/dist/assets/{useEmailConnectResultRefresh-BkDgJaeO.js → useEmailConnectResultRefresh-BxNSbaGA.js} +1 -1
- package/dist/assets/{useInitialThreadRequest-LMcL-Aqa.js → useInitialThreadRequest-CP8MsLNf.js} +1 -1
- package/dist/assets/{useTaskManagerAccess-B8w6mJa8.js → useTaskManagerAccess-Dl-8FUHJ.js} +1 -1
- package/dist/assets/{utils-wJEG-Wcu.js → utils-B6XFkcn3.js} +1 -1
- package/dist/assets/{withTransactionSidePanel-e7n25G5R.js → withTransactionSidePanel-D0UiF_in.js} +1 -1
- package/dist/assets/{zeni-epic-state-Dc6DIqGa.js → zeni-epic-state-DASyz1An.js} +3 -3
- package/dist/index.html +1 -1
- package/package.json +4 -4
- package/dist/assets/AddressRoutes-B_KlQ5l4.js +0 -1
- package/dist/assets/CompanyPassportScreen-CA83T6v2.js +0 -1
- package/dist/assets/ConnectionAuthScreen-D5kWfHq7.js +0 -11
- package/dist/assets/CustomerOnboardingAuthScreen-BE65CVvR.js +0 -1
- package/dist/assets/FeaturePreviewScreen-DJVzHSu6.js +0 -1
- package/dist/assets/InvoicingRoutes-Ct661m9L.js +0 -2
- package/dist/assets/NotFoundScreen-DyEaBoCc.js +0 -1
- package/dist/assets/PaymentLinkScreen-DWgevViD.js +0 -21
- package/dist/assets/ReimbursementApprovalRoutes-bETIIvv3.js +0 -1
- package/dist/assets/RewardsRoutes-D-DDx4kZ.js +0 -1
- package/dist/assets/ScreenRoutes-JdLv48Sy.js +0 -2
- package/dist/assets/SignOutScreen-sRADO8nf.js +0 -9
- package/dist/assets/TransactionDetailRoutes-BMeucnIf.js +0 -1
- package/dist/assets/useAskAiCfoHostNavButtonProps-Dlbp0rlc.js +0 -1
package/dist/assets/{ExpenseAutomationRoutes-BWhl8VPU.js → ExpenseAutomationRoutes-BTeDD1VK.js}
RENAMED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import{j as T}from"./liveblocks-
|
|
1
|
+
import{j as T}from"./liveblocks-D83XGo_c.js";import An from"./NotFoundScreen-RGfzDsux.js";import{a as n,R as ka}from"./sentry-BPfEBx2C.js";import{n as Qe,S as vn}from"./mui-CD71lp6N.js";import{u as Ce,h as Ta,g as It,j as D,l as wn,t as Pn,i as Wt,n as Rn,o as rt}from"./core-CGqhbBHO.js";import{fB as De,$_ as xn,pG as Pe,T9 as Dn,z5 as Fn,$$ as Un,a00 as _n,a01 as Vn,a02 as dt,a03 as Ge,gd as St,a04 as Zt,eJ as Bn,fY as Mn,a05 as Xt,a06 as qe,qy as On,tX as Ln,gP as jn,gN as zn,a07 as $n,qL as Gn,qU as qn,pR as Nn,q4 as ya,gM as le,gO as Jn,a08 as Yn,qq as ba,qV as Hn,q1 as Kn,pY as Qn,u1 as Wn,gL as Re,a09 as Ye,Bf as Ea,Ly as Aa,a0a as va,a0b as Zn,fh as Xn,fj as eo,rY as gt,VS as ea,VU as to,lI as ao,VV as no,lP as oo,dh as so,Cy as Ct,a0c as co,a0d as io,rO as lo,rP as ro,UH as uo,UY as mo,$s as po,qj as wa,q_ as He,a0e as ho,UO as ta,UN as $e,a0f as aa,m4 as So,a0g as go,a0h as Co,a0i as fo,a0j as Io,qe as ko,r1 as Ne,a0k as To,a0l as yo,a0m as bo,r9 as Eo,lT as Ao,lK as vo,a0n as wo,lS as na,W3 as Po,a0o as Ro,a0p as xo,ty as Do,t9 as Fo,q$ as ue,t8 as ut,a0q as Uo,a0r as _o,a0s as Vo,a0t as Bo,nn as Mo,br as Oo,ni as oa,n4 as Lo,a0u as jo,gY as zo,nf as $o,r_ as Go,s0 as qo,Ey as No,rH as Jo,U$ as Yo,V0 as Ho,E0 as Ko,D$ as Qo,Eg as Wo,a0v as sa,rN as Zo,fg as ft,rT as Xo,a0w as es,s7 as ts,rB as as,sc as ns,rG as os,rk as ss,a0x as cs,T1 as Pa,qC as is,qa as ls,qh as ca,r4 as rs,a0y as ds,a0z as us,r0 as Ra,a0A as ms,a0B as ps,a0C as hs,a0D as Ss,sg as gs,a0E as Cs,a0F as fs,a0G as ia,tJ as Is,t0 as ks,rK as la,UM as Ts,a0H as ys,a0I as bs,lR as Es,a0J as As,Qe as vs,lQ as ws,lF as Ps,T0 as Rs,sz as xa,sV as xs,qZ as ra,r2 as Ds,bE as Fs,nc as Us,n9 as _s,a0K as Vs,rj as da,sR as ua,sP as Bs,a0L as Ms,sE as Os,sj as Ls,sS as js,a0M as zs,a0N as $s,sp as Gs,a0O as qs,sk as Ns,so as Js,sm as Ys,sY as Hs}from"./zeni-epic-state-DASyz1An.js";import{I as Ke,d as H,k as G,p as te,ao as Da,aq as Fa,dM as Ks,z as We,dN as Qs,dO as Ws,dP as Zs,ac as xe,dQ as Xs,dR as ma,b8 as pa,a5 as Ua,dS as ec,j as Je,G as tc,w as ac,dT as nc,at as ha,dU as oc,a as sc,dV as cc,dW as ic,c as lc,U as rc,dX as dc,dY as uc,dZ as mc,b2 as pc,bp as hc,a9 as Sc,b3 as gc,b4 as Cc}from"./index-CoKBrrSw.js";import{u as _a}from"./useAskAiCfoHostNavButtonProps-C4V1Wf7u.js";import{g as Sa,h as fc,r as Ic,b as kc,c as Tc,i as yc,a as bc,C as Ec}from"./TransactionDetailScreen-B38w1Q4M.js";import{w as Ac}from"./withTransactionSidePanel-D0UiF_in.js";import{h as vc,v as wc,c as Pc}from"./routePaths-DU2fgaW2.js";import{a as mt}from"./accountMappingHelper-L9SkIWKz.js";import{D as Rc}from"./DrawerScreen-BRJIwisq.js";import"./recharts-2kmMgB1t.js";import"./analytics-CsbG8awP.js";import"./plaid-C8_LWTII.js";import"./dnd-CyZNzT3I.js";import"./stripe-cKAAJElX.js";import"./lottie-DeqWxWVC.js";import"./lexical-C5ZCOEAv.js";import"./pdf-D4eEcTTi.js";import"./utils-B6XFkcn3.js";import"./decodeURIComponentSafe-6FvQaIqS.js";import"./useInitialThreadRequest-CP8MsLNf.js";import"./expenseAutomationHelper-wwug0Eyp.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},s=new t.Error().stack;s&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[s]="9e33b5e4-654a-4232-95d1-ea19b3a66e8c",t._sentryDebugIdIdentifier="sentry-dbid-9e33b5e4-654a-4232-95d1-ea19b3a66e8c")}catch{}})();const xc=()=>{const t=Ce(),s=Ta(),P=It(),C=D((m=>De(m))),{useFeatureGate:f}=Ke(),{isFeatureEnabled:r}=f(H.isRealtimeInsightsFeatureEnabled),{isFeatureEnabled:u}=f(H.aiAuditScorePercentage),x=D((m=>m.expenseAutomationViewState.selectedPeriodByTenantId)),i=D((m=>xn(m,C.tenantId))),{isAiCfoAccessEnabled:g,onAskAiCfoClick:y}=_a({mobileExploreReferrer:"Month-End Close Overview"}),w=n.useCallback(((m,M,W=!1)=>{t(Pe({tenantId:M,period:{month:m.month,year:m.year},refreshViewInBackground:W}))}),[]),b=n.useCallback((m=>{const M=P.state?.referrer;i.monthEndCloseChecks?.auditSummary!=null&&G.trackMonthCloseAuditPage(m.month,m.year,i.monthEndCloseChecks.reportEmailSentDate!=null?"closed":"in-review",i.monthEndCloseChecks.auditSummary.auditScorePercentage,!1,M??null),t(Dn(C.tenantId,m))}),[C.tenantId,i.monthEndCloseChecks?.auditSummary,i.monthEndCloseChecks?.reportEmailSentDate]),p=x[C.tenantId],c=n.useCallback((()=>{const m=P.state?.referrer;i.monthEndCloseChecks?.auditSummary!=null&&G.trackMonthCloseAuditPage(p.month,p.year,i.monthEndCloseChecks.reportEmailSentDate!=null?"closed":"in-review",i.monthEndCloseChecks.auditSummary.auditScorePercentage,!0,m??null),w(p,C.tenantId,!0)}),[w,p,C.tenantId,i.monthEndCloseChecks?.auditSummary,i.monthEndCloseChecks?.reportEmailSentDate]),$=te(P.state?.pathnameStackToGoBack,P.pathname),I=n.useCallback((()=>{if(i.monthEndCloseChecks!=null&&p!=null){const m=i.monthEndCloseChecks.monthEndCloseCheckList.find((M=>M.progress<100));if(m!=null)return void s(`./${m.id}/${p.month}-${p.year}`,{state:{pathnameStackToGoBack:$,message:"comingFromOverview"}});s(`./month_end_insights/${p.month}-${p.year}`,{state:{pathnameStackToGoBack:$,message:"comingFromOverview"}})}}),[i.monthEndCloseChecks,p]),{areTenantIdsInSync:v}=Da();return Fa({isDataReady:i.fetchState==="Completed"}),n.useEffect((()=>{p!=null&&i.fetchState!=="In-Progress"&&i.fetchState!=="Completed"&&v&&w(p,C.tenantId)}),[w,p,i.fetchState,C.tenantId,v]),n.useEffect((()=>{p!=null&&i.monthClosePerformanceTrendFetchStatus.fetchState!=="In-Progress"&&i.monthClosePerformanceTrendFetchStatus.fetchState!=="Completed"&&v&&t(Fn(p))}),[p,i.monthClosePerformanceTrendFetchStatus.fetchState,v]),n.useEffect((()=>{const m=setInterval((()=>{i.fetchState!=="In-Progress"&&i.fetchState==="Completed"&&c()}),3e5);return()=>clearInterval(m)}),[i.fetchState]),n.useEffect((()=>{if(i.fetchState==="Completed"&&i.monthEndCloseChecks?.auditSummary!=null){const m=P.state?.referrer;G.trackMonthCloseAuditPage(i.selectedPeriod.month,i.selectedPeriod.year,i.monthEndCloseChecks.reportEmailSentDate!=null?"closed":"in-review",i.monthEndCloseChecks.auditSummary.auditScorePercentage,!1,m??null)}}),[i.fetchState,i.selectedPeriod,i.monthEndCloseChecks?.auditSummary,i.monthEndCloseChecks?.reportEmailSentDate]),T.jsx(Dc,{children:T.jsx(Ks,{monthEndCloseChecksView:i,isRealtimeInsightsFeatureEnabled:r,onMonthEndCheckClick:m=>{s(`./${m}/${p.month}-${p.year}`,{state:{pathnameStackToGoBack:$,message:"comingFromOverview",referrer:"Expense Automation - Overview"}})},onPeriodChange:b,handleReviewButtonClick:I,onBackClick:()=>{s("../../dashboard")},onReload:c,isAiCfoAccessEnabled:g,onAskAiCfoClick:y,aiAuditScorePercentageEnabled:u})})},Dc=Qe.div`
|
|
2
2
|
display: flex;
|
|
3
3
|
height: 100vh;
|
|
4
4
|
width: 100%;
|
|
5
5
|
flex: 1 1 auto;
|
|
6
6
|
flex-direction: column;
|
|
7
7
|
background-color: ${t=>t.theme.colors.grey4};
|
|
8
|
-
`,Fc=ka.memo((({reconciliation:t,selectedDrawerAccountId:s,onClose:P,onFetchLinkTokenClick:C,onEstablishConnectionClick:f})=>{const r=Ce(),{useFeatureGate:u}=Ke(),{isFeatureEnabled:x}=u(H.isReconV3Enabled),{isFeatureEnabled:i}=u(H.isReconciliationCombinedStatementEnabled),g=We.getSignedInUser(),
|
|
8
|
+
`,Fc=ka.memo((({reconciliation:t,selectedDrawerAccountId:s,onClose:P,onFetchLinkTokenClick:C,onEstablishConnectionClick:f})=>{const r=Ce(),{useFeatureGate:u}=Ke(),{isFeatureEnabled:x}=u(H.isReconV3Enabled),{isFeatureEnabled:i}=u(H.isReconciliationCombinedStatementEnabled),g=We.getSignedInUser(),y=D((h=>De(h))),w=n.useMemo((()=>({userId:g?.userId??"",sessionId:g?.zeniSessionId??"",tenantId:y?.tenantId??""})),[g?.userId,g?.zeniSessionId,y?.tenantId]),{accountReconciliationsByAccountID:b,excludedAccountIDs:p,monthYearPeriod:c,statementUploadChosen:$}=t,I=b[s],v=n.useMemo((()=>Un(b,s)),[b,s]),m=n.useMemo((()=>_n(b)),[b]),M=n.useMemo((()=>Vn(b,s)),[b,s]),W=n.useRef(!1),_=n.useCallback((h=>{W.current=h,ma(s,h)}),[s]),O=n.useCallback((h=>{r(dt({accountId:s,selectedPeriod:c,dismissedToBackground:!0,backgroundCompletedSteps:h.completedSteps,startedAtMs:h.startedAtMs,totalDurationSeconds:h.totalDurationSeconds})),h.accountMappings!=null&&r(Ge({accountId:s,selectedPeriod:c,localData:{combinedStatementAccountMappings:h.accountMappings}})),I!=null&&requestAnimationFrame((()=>{W.current||r(St({messageSection:"statement_parsing_in_progress",messageText:"success",type:"info",showStatusIcon:!0,variables:[{variableName:"_account_name_",variableValue:Qs(I)}]}))}))}),[r,c,I,s]),e=n.useCallback((()=>{r(dt({accountId:s,selectedPeriod:c,dismissedToBackground:!1}))}),[r,s,c]),a=n.useCallback((h=>{r(Zt({accountId:s,selectedPeriod:c,backgroundCompletedSteps:h}))}),[r,c,s]),l=n.useCallback((()=>{r(Zt({accountId:s,selectedPeriod:c,backgroundCompletedSteps:0})),r(dt({accountId:s,selectedPeriod:c,dismissedToBackground:!1}))}),[r,c,s]);n.useEffect((()=>()=>{ma(null,!1)}),[]);const d=I?.parsedStatementData?.statementUpload?.statementMeta?.statementUploadId??I?.accountReconEntity.statementMetaData?.statementUploadId,S=I?.statementDateConflict?.previousReconciliationInfo?.reconciledByUserId,k=D((h=>S!=null&&S!==""?Bn(Mn(h.userState,S)):"")),R=n.useCallback((()=>{r(Xt({accountId:s,selectedPeriod:c}))}),[r,s,c]),L=n.useCallback((()=>{r(Xt({accountId:s,selectedPeriod:c})),r(qe({statementUploadChosen:!0}))}),[r,s,c]),z=(h,N)=>{r(Wn(h,N.split(".")[0]))},A=(h,N)=>{if(N===!0){const X=I?.combinedStatementGroupId??I?.parsedStatementData?.statementUpload?.statementMeta?.combinedStatementGroupId??I?.parsedStatementData?.statementUpload?.combinedStatementDetails?.combinedStatementGroupId;if(X!=null&&X!=="")return void r(Kn({accountId:s,selectedPeriod:c,combinedStatementGroupId:X,fileId:h}))}d!=null&&r(Qn({accountId:s,selectedPeriod:c,fileId:h,statementUploadId:d}))},ae=()=>{r(qe({statementUploadChosen:!1}))},Z=h=>{r(Hn({accountId:s,selectedPeriod:c,payload:h,statementAccountScope:i===!0?I?.localData?.statementAccountScope??"single_account":"single_account"}))},fe=n.useCallback(((h,N,X)=>{r(On({accountId:h,selectedPeriod:N,statementUploadId:X}))}),[r]),ne=n.useCallback(((h,N,X,Te,pe)=>{pe!=null&&pe!==""&&r(Ln(pe)),r(Te==null||Te===""?zn({accountId:h,selectedPeriod:N,statementUploadId:X}):jn({accountId:h,selectedPeriod:N,statementUploadId:X,combinedStatementGroupId:Te}))}),[r]),Ie=n.useCallback(((h,N)=>{N!==""&&r($n({accountId:s,selectedPeriod:c,statementUpdateLocalData:h,statementUploadId:N}))}),[r,s,c]),q=n.useCallback((()=>{d!=null&&r(I?.localData?.statementAccountScope!=="multi_account"?qn({accountId:s,selectedPeriod:c,statementUploadId:d}):Gn({accountId:s,selectedPeriod:c,statementUploadId:d}))}),[r,I?.localData?.statementAccountScope,s,c,d]),K=n.useCallback((h=>{d!=null&&r(Nn({accountId:s,selectedPeriod:c,statementUploadId:d,accountMappings:h}))}),[r,c,s,d]),oe=n.useCallback((()=>{r(qe({statementUploadChosen:!0}))}),[r]),Y=h=>{r(Ge({accountId:s,selectedPeriod:c,localData:{accountSource:h}}))},Fe=h=>{r(Ge({accountId:s,selectedPeriod:c,localData:{statementAccountScope:h}}))},me=n.useCallback((()=>{r(ya({accountId:s}))}),[r,s]),Ze=n.useCallback((h=>{r(le(c,h,!0)),P()}),[r,c,P]),Xe=n.useCallback((()=>{r(Jn({accountId:s,selectedPeriod:c,statementProcessingFailed:!1})),r(Yn({accountId:s,selectedPeriod:c}))}),[r,s,c]),Ue=n.useCallback((()=>{r(ba({accountId:s}))}),[r,s]),ke=p.includes(s)?t.excludedAccountReconciliationByAccountID[s]:void 0;if(ke!=null)return T.jsx(ga,{children:T.jsx(Ca,{$isV3:x===!0,children:T.jsx(Ws,{excludedAccountReconciliation:ke,includeAccountFetch:t.includeAccountFetchState,isReconV3Enabled:x,onDismissClick:P,onIncludeIntoReconciliation:Ue})})});if(I!=null){const h=x===!0?T.jsx(Zs,{excludeAccountFetch:t.excludeAccountFetchState,accountReconciliation:I,monthYearPeriod:c,onDismissClick:P,plaidConnectionDetails:t.plaidConnectionDetails,onFetchLinkTokenClick:C,onEstablishConnectionClick:f,onEditFileName:z,onDeleteFile:A,onSelectSourceType:Y,onSelectStatementAccountScope:Fe,isReconciliationCombinedStatementEnabled:i===!0,ledgerAccounts:v,statementOverrideWarningAccountIds:M,unavailableLedgerAccountIds:m,onConfirmStatementMapping:K,filesEndPoint:xe.fileMicroServiceBaseUrl,authParams:w,openFilePicker:$,onStatementUploadSuccess:Z,onUploadWindowOpenedOnce:ae,onExcludeFromReconciliation:me,onRetryParsing:fe,onFetchStatementParseInfo:ne,onReviewClicked:Ze,statementProcessingFailed:I.statementProcessingFailed,statementProcessingDismissedToBackground:I.statementProcessingDismissedToBackground,onDismissStatementProcessingFailed:Xe,onContinueInBackground:O,onClearStatementProcessingDismissedToBackground:e,onResetStatementProcessingProgress:l,onStatementProcessingProgressChange:a,onStatementFlowVisibilityChange:_,onReuploadStatement:oe,onStatementFormDataChange:Ie,onStatementConfirmSave:q,reconciledByName:k,onDismissDateConflict:R,onReuploadAfterDateConflict:L,isReconV3Enabled:x}):T.jsx(Xs,{excludeAccountFetch:t.excludeAccountFetchState,accountReconciliation:I,monthYearPeriod:c,onDismissClick:P,plaidConnectionDetails:t.plaidConnectionDetails,onFetchLinkTokenClick:C,onEstablishConnectionClick:f,onEditFileName:z,onDeleteFile:A,onSelectSourceType:Y,filesEndPoint:xe.fileMicroServiceBaseUrl,authParams:w,openFilePicker:$,onStatementUploadSuccess:Z,onUploadWindowOpenedOnce:ae,onExcludeFromReconciliation:me});return T.jsx(ga,{children:T.jsx(Ca,{$isV3:x===!0,children:h})})}return null})),ga=Qe.div`
|
|
9
9
|
display: flex;
|
|
10
10
|
flex-direction: column;
|
|
11
11
|
height: 100%;
|
|
@@ -18,7 +18,7 @@ import{j as T}from"./liveblocks-BbYAHGiW.js";import An from"./NotFoundScreen-DyE
|
|
|
18
18
|
min-width: 0;
|
|
19
19
|
overflow-x: hidden;
|
|
20
20
|
overflow-y: ${t=>t.$isV3===!0?"hidden":"auto"};
|
|
21
|
-
`;function Uc({companyId:t,closeCustomerRequestDrawer:s,addCustomerRequest:P,resetCustomerRequest:C}){const f=We.getSignedInUser();if(f==null)throw Error("Can't access Customer Request page without signing in...");const r=D((u=>Zn(u,t,f)));return n.useEffect((()=>{C()}),[]),T.jsx(T.Fragment,{children:r.fetchState==="In-Progress"||r.companyMonthEndReportTemplatesData.fetchState==="In-Progress"?T.jsx(Ua,{fetchState:"In-Progress"}):T.jsx(ec,{onCloseClick:s,addCustomerRequest:P,snippets:r.companyMonthEndReportTemplatesData,bulletPoints:r.zeniRequestsData??[]})})}const _c={schedules:"Review Schedules",existing_schedules:"Existing Schedules"},Vc=()=>{const t=D((b=>Re(b))),s=It(),{currentSelectedViewFetchState:P,currentSelectedView:C,selectedPeriod:f}=t,r=Je(C),u=Je(P.fetchState),x=t.jeSchedules.uiState.selectedPageTab??"schedules",i=Je(x),g=n.useCallback((b=>{const w=s.state?.referrer;C==="transaction_categorization"&&(t.selectedTransactionCategorizationTab==="review"?G.trackTransactionsReviewPage(f.month,f.year,t.transactionView.totalCountByTab.review,0,b,w??null):G.trackTransactionsAutoCategorisedPage(f.month,f.year,t.transactionView.totalCountByTab.autoCategorized,0,b,w??null)),C==="missing_receipts"&&G.trackMissingReceiptsPage(f.month,f.year,b,t.missingReceipts.transactions.length,w??null),C==="je_schedules"&&G.trackMonthCloseScheduleListPage(f.month,f.year,b,t.jeSchedules.pendingReviewSchedules.length,t.jeSchedules.resolveSchedules.length,(y=>{const p={accruedCount:0,fixedAssetsCount:0,oneTimeAccrualCount:0,prepaidCount:0};return y.forEach((c=>{if(Xn(c))p.oneTimeAccrualCount+=1;else switch(eo(c)){case"prepaid_expenses":p.prepaidCount+=1;break;case"fixed_assets":p.fixedAssetsCount+=1;break;case"accrued_expenses":p.accruedCount+=1}})),p})(t.jeSchedules.pendingReviewSchedules),_c[x],w??null),C==="flux_analysis"&&G.trackFluxAnalysisPage(f.month,f.year,b,Bc(t.fluxAnalysis),w??null),C==="month_end_insights"&&t.auditSummary?.auditScorePercentage!=null&&G.trackInsightsEmailPage(f.month,f.year,b,"draft",t.auditSummary.auditScorePercentage,null,w??null)}),[f,t,x]);return n.useEffect((()=>{(u!==P.fetchState||C!==r||C==="je_schedules"&&i!=null&&x!==i)&&P.fetchState==="Completed"&&g(!1)}),[C,P.fetchState,r,x,i]),g},Bc=t=>t.sections.generalExpense.vendors.length+t.sections.reimbursement.vendors.length,{common:{strings:{hyphen:Mc,comma:fa,space:Oc}},dateFormat:Va}=tc.getLocalizedStrings(),Ia=Hs,Lc=wn((function(t,s){const{uncategorizedAccounts:P,vendorSearchAutoCompleteData:C,monthEndInsightsCustomerRequestData:f,monthEndInsightsPreviewMode:r,companyId:u,isMissingReceiptsBulkUploadEnabled:x,isTransactionActivityEnabled:i,newScheduleActiveType:g}=s,b=We.getSignedInUser(),w=t.tenantState.currentTenantId,y={userId:b?.userId??"",sessionId:b?.zeniSessionId??"",tenantId:w??""},p=Re(t),{selectedTransactionCategorizationTab:c}=p,{searchTransactionsResults:$,searchTransactionsFetchState:I}=co(t),v=g==="prepaid_expenses"?"prepaid_expenses":"fixed_assets",{accountListNestedAccountHierarchy:m,classListNestedAccountHierarchy:M,allDepreciationAccountListNestedAccountHierarchy:W,newScheduleLocalData:_,saveStatus:O}=io(t,v);return{expenseAutomationViewSelector:p,accountListNestedAccountHierarchy:m,allDepreciationAccountListNestedAccountHierarchy:W,baseTransactionSearchFetchState:I,baseTransactionSearchResults:$,classListNestedAccountHierarchy:M,newScheduleLocalData:_,initialSelectedBaseTransaction:_.selectedBaseTransactionId!=null?lo(t.transactionState,ro(_.selectedBaseTransactionId)):void 0,newAccrualAccountsView:uo(t),newScheduleSaveStatus:O,bulkUploadSelector:x===!0?p.missingReceipts.bulkUpload:void 0,vendorSearchAutoCompleteData:C,authParams:y,receiptUploadEndpoint:`${xe.accountMicroServiceBaseUrl}`,transactionAttachmentsEndpoint:`${ha}/transaction_attachments`,bulkUploadEndpoint:x===!0?`${xe.communicationAgentMicroServiceBaseUrl}/1.0/receipts/bulk-upload`:void 0,isDisabled:!1,currentTab:c,selectedTransactionGroup:p.transactionView.selectedTransactionGroup,monthEndInsightsCustomerRequestData:f,monthEndInsightsPreviewMode:r,allThreadsSectionOpen:!1,enableMonthEndInsightsZeniGPTFeature:!1,loggedInUser:b,uncategorizedAccounts:P,companyId:u,isTransactionActivityEnabled:i,receiptsEmail:po(t.tenantState,w),downloadParams:{authParams:y,jeScheduleEndPoint:`${ha}/jeScheduleReports`,timezone:mo(),companyName:De(t).companyName}}}),(function(t,s){const{themeState:P,isAccountingClassesEnabled:C,isCOTEnabled:f,isMissingReceiptsBulkUploadEnabled:r,location:u,vendorSearchAutoCompleteData:x,expenseAutomationViewSelector:i,currentTenant:g,newScheduleActiveType:b,uncategorizedAccounts:w,navigate:y,onClickCustomerRequest:p,handleEditClick:c,setActivityLogTransactionId:$}=s,{selectedPeriod:I,currentSelectedView:v,reconciliation:{selectedAccountId:m}}=i,{accountSettingsView:M}=i.jeSchedules,W=wa(I),_=He(W.start),O=He(W.end);return{onZeniLogoClick:()=>{P.toggle()},onUploadReceiptAttachment:e=>{G.trackMissingReceiptAttached(I.month,I.year),t(ks(e))},onUploadTransactionReceipt:(e,a,l,d,S,k)=>{t(ia(e,a,{fetchState:"In-Progress"}));const R=()=>t(ia(e,a,{fetchState:"Error"}));oc(`${xe.accountMicroServiceBaseUrl}/1.0/transactions/${a}/attachments`,k,a,l,d,S).then((L=>{L!=null?t(Is(e,L)):R()})).catch(R)},onMissingReceiptsRowClick:(e,a)=>{if(s.openTransactionPanel)return void s.openTransactionPanel(e,a);const l=te(u.state?.pathnameStackToGoBack,u.pathname);y(`../../transaction/${a}/${e}`,{state:{pathnameStackToGoBack:l,message:"expenseAutomation",origin:"missing_receipts"}})},onUploadReceiptComplete:(e,a)=>{t(fs(e,a)),g!=null&&t(Pe({tenantId:g.tenantId,period:a,refreshViewInBackground:!0}))},onUploadReceiptFetchStatus:(e,a,l,d)=>{t(Cs(e,{fetchState:a,error:l})),l!=null&&t(St({messageSection:"missing_receipts_attachment",messageText:"failed",type:"error",showStatusIcon:!0,variables:[{variableName:"__message__",variableValue:d!=null?Oc+Mc+d+fa:fa}]}))},onUpdateJESchedulesUIState:e=>{e.createdGroupCollapsed!=null?t(ps()):e.pendingGroupCollapsed!=null?t(hs()):e.selectedJETypeFilter!==void 0?t(Ss(e.selectedJETypeFilter)):t(gs(e))},onUpdateMissingReceiptsUIState:e=>{t(ms(e))},onFetchMissingReceiptsList:()=>{O!=null&&_!=null&&t(Ra({start:_,end:O},{amount:75,currencyCode:"USD",currencySymbol:"$"},!0,!1))},...r===!0?{onBulkUploadFiles:e=>{t(Ys(e))},onBulkUploadProgress:e=>{t(Js(e))},onBulkUploadSuccess:e=>{t(Ns({batchId:e}))},onBulkUploadUploadedFileCount:e=>{t(qs(e))},onConfirmBulkUploadMatch:(e,a,l,d,S)=>{t(Gs(e,a,l,d,S))},onBulkUploadConfirmMatchAcknowledged:()=>{t($s())},onSetBulkUploadResultsTab:e=>{t(zs(e))},onSetBulkUploadCompletedSubTab:e=>{t(js(e))},onSetBulkUploadSortConfig:(e,a)=>{t(ua({sortKey:e,sortOrder:a}))},onClearBulkUpload:()=>{t(Ls())},onSearchTransactionsForManualMatch:(e,a)=>{t(Ia(e,a??void 0))},onLoadMoreManualSearch:()=>{const{manualSearch:e}=i.missingReceipts.bulkUpload;e.nextPageToken!=null&&e.searchQuery!==""&&t(Ia(e.searchQuery,e.nextPageToken))},onFetchCompletedTransactions:(e,a)=>{t(Os(e,a))},onClearBulkUploadBatchDetailsForScopeChange:()=>{t(Ms())},onFetchBulkUploadBatches:e=>{t(xa(e))},onFetchMoreBatchDetails:()=>{t(Bs())},onResetBulkUploadSort:()=>{t(ua({sortKey:void 0,sortOrder:void 0}))}}:{},onClearMissingReceiptsTabNavigation:()=>{t(us())},onSearchTextChanged:e=>{const a=i.currentSelectedView,l=i.selectedTransactionCategorizationTab;a==="transaction_categorization"&&(t(ut({selectedTab:l,uiState:{searchString:e}})),O!=null&&_!=null&&t(ue(l,{start:_,end:O},!0,!1,e,void 0,!1,!0)))},onFiltersChange:e=>{const a=i.selectedTransactionCategorizationTab;t(ds({filters:e,selectedTab:a}))},onRefresh:()=>{s.trackExpenseAutomationTabAnalytics(!0),t(rs())},onClose:()=>{v==="reconciliation"&&m!=null&&t(ca({selectedAccountId:void 0})),y("../")},onBack:()=>{v==="reconciliation"&&m!=null&&t(ca({selectedAccountId:void 0}))},onSaveReconciliation:e=>{t(ls(e))},onSaveReconciliationReview:e=>{t(is(e))},onUpdateStep:e=>{const{selectedPeriod:a}=i,l=te(u.state?.pathnameStackToGoBack,u.pathname);y(`../${e}/${a.month}-${a.year}`,{state:{pathnameStackToGoBack:l,referrer:i.currentSelectedView}}),t(Pa(e))},handleLogOutClick:()=>{const e=te(u.state?.pathnameStackToGoBack,u.pathname);y("/signout",{replace:!0,state:{pathnameStackToGoBack:e,message:"logout"}})},onJeAccountSettingsChange:e=>{const{vendorsAccountSection:a}=e,{prepaidExpensesAccount:l,fixedAssetsAccount:d,accruedExpensesAccount:S}=a,k=mt(M.prepaidExpensesAccountList,l.selectedOptions),R=mt(M.fixedAssetsAccountList,d.selectedOptions),L=mt(M.accruedExpensesAccountList,S.selectedOptions),z={selectedPrepaidExpensesAccountIds:k.map((A=>A.accountId)),selectedFixedAssetsAccountIds:R.map((A=>A.accountId)),selectedAccruedExpensesAccountIds:L.map((A=>A.accountId))};t(cs({data:z}))},onSaveJeAccountSettingsClick:()=>{t(ss())},onJESchedulesFormDataChange(e,a){const{jeScheduleID:l,accumulatedDepreciationCategory:d,scheduleClass:S,scheduleExpenseCategory:k,vendor:R}=a,{allAccountList:L,allClassList:z,allDepreciationAccountList:A}=i.jeSchedules,ae=x.entityAutoCompleteView.vendor.length>0?x.entityAutoCompleteView.vendor.find((q=>q.id===R?.selectedOption)):void 0,Z={id:ae?.zeniId??R?.selectedOption??"",name:ae?.name??R?.defaultOptions.find((q=>q.value===R?.selectedOption))?.label??"",logo:ae?.logo},fe=k?.selectedOption!=null?L.find((q=>q.qboId===k.selectedOption)):void 0,ne=S?.selectedOption!=null?z.find((q=>q.classId===S.selectedOption)):void 0,Ie=d?.selectedOption!=null?A.find((q=>q.qboId===d.selectedOption)):void 0;t(os({scheduledJournalEntryID:e,localData:{jeScheduleID:l,scheduledJournalEntryID:e,updatedCategoryId:fe?.accountId,updatedClassId:ne?.classId,updatedAccumulatedDepreciationCategoryID:Ie?.accountId,updatedVendor:{id:Z.id,name:Z.name}}}))},onRevertJeSchedule(e,a,l,d,S){t(ns(e,a,l,d,S))},ignoreRecommendedJeSchedule(e,a,l,d){t(as(e,a,l,d))},vendorSearchAutoCompleteActions:{onAutoCompleteInputChange:(e,a)=>{e.trim().length>=2?t(ta({searchString:e,entityType:a,searchOrigin:"common"})):e.trim().length===0&&t($e("common"))},onCancelAutoComplete:()=>{t($e("common"))}},onPostJESchedule(e,a){t(ts({scheduledJournalEntryID:e,jeScheduleTransactionKey:a}))},clearJeScheduleLocalData(){t(es())},onViewTransaction(e){if(s.tenantEmailDomain==null)return;const a=Pc(e,s.tenantEmailDomain),l=te(s.location.state?.pathnameStackToGoBack,`${s.location.pathname}${s.location.search}`);s.navigate(a,{state:{pathnameStackToGoBack:l,message:"expenseAutomation",origin:"je_schedules"}})},onSearchBaseTransaction(e){t(Xo({query:e,scheduleType:b==="prepaid_expenses"?"prepaid_expenses":"fixed_assets"}))},onNewScheduleFormChange(e,a){const l=ft(e)==="prepaid_expenses"?"prepaid_expenses":"fixed_assets";t(sa({scheduleType:l,localData:a}))},onSaveSchedule(e,a){const l=e==="prepaid_expenses"?"prepaid_expenses":"fixed_assets",{allAccountList:d,allDepreciationAccountList:S}=i.jeSchedules,k=a.selectedAccount!=null?d.find((L=>L.qboId===a.selectedAccount)):void 0,R=a.selectedAccumulatedDepreciationCategory!=null?S.find((L=>L.qboId===a.selectedAccumulatedDepreciationCategory)):void 0;t(sa({scheduleType:l,localData:{...a,selectedAccount:k?.accountId,selectedAccumulatedDepreciationCategory:R?.accountId}})),t(Zo({scheduleType:l}))},onCreateAccruedSchedule(e){const a="accrued_expenses";t(Yo()),t(Ho()),t(Ko({scheduleType:a,localData:e,selectedJeScheduleDetailId:void 0})),t(Qo({scheduleType:a})),t(Wo(a,void 0))},onCreateOneTimeAccrual(e){t(Jo(e))},handleJeScheduleClick:(e,a,l)=>{(function(S,k){return k!=="accrued_expenses"})(0,l)&&t(No({selectedJEScheduleKey:a}));const d=te(u.state?.pathnameStackToGoBack,u.pathname);y(`../../vendors/schedules/${l}/details/${e}`,{state:{pathnameStackToGoBack:d,message:"expenseAutomation",origin:"je_schedules"}})},onOneTimeAccrualFeedback:(e,a,l,d)=>{t(a!=="revert"?qo(e,l,d):Go(e,l,d))},onOneTimeAccrualClick:e=>{const a=te(u.state?.pathnameStackToGoBack,u.pathname);y(`../../vendors/schedules/one_time_accrual/details/${e}`,{state:{pathnameStackToGoBack:a,message:"expenseAutomation",origin:"je_schedules"}})},improveMonthEndInsightsUsingZeniGPTClick:e=>{g!=null&&t($o(e,g.companyId,g.tenantId))},onClickCustomerRequest:p,setActivityLogTransactionId:$,onCloseAllThreadsSection:()=>{},onCloseFileAttachmentSnackBar:()=>{t(zo())},onOpenFileAttachmentSnackBar:()=>{t(St({messageSection:"cockpit_month_end_email_attachment_upload",messageText:"failed",type:"error",showStatusIcon:!0}))},onRemoveFileAttachment:e=>{t(jo(e))},onUpdateFileAttachment:e=>{t(Lo({files:e}))},previewMonthEndReport:(e,a,l,d,S)=>{g!=null&&t(oa(e,g.companyId,a,!0,l,d,{agentInsightEdits:S,tenantId:g.tenantId}))},saveMonthEndReport:(e,a,l,d,S)=>{g!=null&&t(oa(e,g.companyId,a,!1,l,d,{agentInsightEdits:S,tenantId:g.tenantId}))},onEditMonthEndInsightsClick:c,sendMonthEndReport:e=>{const a=u.state?.referrer,{selectedPeriod:l,auditSummary:d}=i;g!=null&&d?.auditScorePercentage!=null&&(t(Mo(g.companyId,e,g.tenantId)),G.trackInsightsEmailPage(l.month,l.year,!1,"draft",d.auditScorePercentage,Oo().format(Va.analytics.MMMDDCommaYYYYformat),a??null))},onTransactionCategorizationRowClick:(e,a)=>{const l=i.transactionView.uiState.searchString??"",d=i.transactionView.transactions,S=d.findIndex((L=>L.id===e)),k=l.length>0?{resultPosition:S>=0?S+1:void 0,resultsCount:d.length,searchTerm:l}:void 0;if(s.openTransactionPanel)return void s.openTransactionPanel(e,a,k);const R=te(u.state?.pathnameStackToGoBack,u.pathname);y(`../../transaction/${a}/${e}`,{state:{pathnameStackToGoBack:R,message:"expenseAutomation",origin:"transaction_categorization",searchContext:k}})},setLocalDataForCategoryAndClass:(e,a,l,d,S,k,R,L,z,A,ae,Z)=>{t(Bo(e,a,l,d,w,S,k,R,L,z,A,ae,Z))},onCancelAutoComplete:()=>{t($e("common"))},updateExpenseAutomationReconListScrollPosition:e=>{t(aa({scrollPosition:e}))},onUpdateTab:e=>{s.closeSidePanel?.(),O!=null&&_!=null&&(t(ue(e,{start:_,end:O},!1,!1)),t(Vo(e)))},onUpdateTransactionCategorizationCompletedSubTab:e=>{s.closeSidePanel?.(),O!=null&&_!=null&&(t(_o(e)),t(ue("autoCategorized",{start:_,end:O},!1,!1)))},onTransactionGroupChange:e=>{s.closeSidePanel?.(),O!=null&&_!=null&&(t(Uo(e)),t(ue(s.expenseAutomationViewSelector.selectedTransactionCategorizationTab,{start:_,end:O},!1,!1)))},onUpdateTransactionCategorizationUIState:(e,a)=>{t(ut({selectedTab:e,uiState:a})),O!=null&&_!=null&&t(ue(e,{start:_,end:O},!1,!1,a.searchString,null,!0))},onUpdateScrollYOffSetTransactionCategorizationUIState:(e,a)=>{t(ut({selectedTab:e,uiState:a}))},onFetchTransactionCategorizationList:(e,a,l,d,S,k)=>{O!=null&&_!=null&&t(ue(e,{start:_,end:O},!0,l,a,d,S,k))},resetTransactionCategorizationLocalData:(e,a,l,d,S,k,R)=>{t(Fo(e,a,l,d,R??null,S,k,!1)),Ic(t,a.map(String))},updateSelectedVendorForTransaction:(e,a,l,d,S)=>{t(na({selectedTab:e,transactionId:a,lineId:l,selectedTransaction:d,uncategorizedAccounts:w,updatedVendor:S,isAccountingClassesEnabled:C}))},onSaveUpdateTransactionCategorization:(e,a,l)=>{const d=u.state?.referrer;e==="autoCategorized"?G.trackTransactionsAutoCategorisedPage(I.month,I.year,i.transactionView.totalCountByTab.autoCategorized,a.length,!1,d??null):G.trackTransactionsReviewPage(I.month,I.year,i.transactionView.totalCountByTab.review,a.length,!1,d??null),t(Do(e,a,l)),fc(a.map(String))},onUpdateSelectedCheckboxTransactionIds:(e,a)=>{t(xo({selectedTab:e,transactionIds:a}))},onFetchRecommendationsForEntityCategorizationWithCustomer:(e,a,l,d,S,k)=>{const{transactionId:R,transaction:L,lineIds:z}=a;k!=null&&t(Po({transactionId:R,customerUpdates:k})),t(Ro({selectedTab:d,transactionId:R.id,lineId:z[0],selectedTransaction:L,uncategorizedAccounts:w,updatedCustomer:k,selectedEntity:S,isAccountingClassesEnabled:C})),S!=null&&t(Ct({entity:S,amount:e,transactionDetails:a,flowType:"categorization",selectedTab:d,isFetchCOT:f}))},onFetchRecommendationsForEntityCategorization:(e,a,l,d,S,k)=>{const{transactionId:R,transaction:L,lineIds:z}=a;k!=null&&(t(Ao({transactionId:R,vendorUpdates:{name:k.name,id:k.id?k.id:void 0}})),t(vo({vendorId:k.id?k.id:void 0,localData:{vendorName:k.name,vendorId:k.id?k.id:void 0}}))),k?.id?(t(na({selectedTab:d,transactionId:R.id,lineId:z[0],selectedTransaction:L,uncategorizedAccounts:w,updatedVendor:k,selectedEntity:S,isAccountingClassesEnabled:C})),S!=null&&t(Ct({entity:S,amount:e,transactionDetails:a,flowType:"categorization",selectedTab:d,isFetchCOT:f}))):t(wo({selectedTab:d,transactionId:R.id,lineId:z[0]}))},fetchFluxViewOnScroll:(e,a)=>{t(Ne(e,!0,!1,a,!1,!0))},onFetchFluxViewList:()=>{t(Ne(I,!0,!1,null,!1,!1))},markAsReview:(e,a,l,d)=>{G.trackFluxAnalysisReviewed(l.month,l.year,d??!1,e),t(Eo(a,e,l,d??!1))},onUpdateFluxAnalysisUIState:e=>{t(yo(e))},updateOperatingExpensesIdsForReview:e=>{t(bo({operatingExpenseIds:e,selectedPeriod:I}))},redirectToVendorDetailPage:e=>{if(s.tenantEmailDomain!=null){const a=wc(e.id,e.qboId,s.tenantEmailDomain),l=te(s.location.state?.pathnameStackToGoBack,s.location.pathname);s.navigate(a,{state:{pathnameStackToGoBack:l,message:"expenseAutomation",referrer:"Vendor List",origin:"flux_analysis"}})}},updateSectionIdsForReview:e=>{t(To({sectionId:e,selectedPeriod:I}))},onFetchReimbursementView:(e,a,l)=>{t(Ne(e,!0,!1,a,!0,l))},onReviewClicked:e=>{t(le(I,e))},setOpenDrawerClicked:e=>{t(Ye({selectedDrawerAccountId:e}))},onFetchLinkTokenClick:(e,a)=>{t(Ea("expense_automation_reconcile",e,a))},onEstablishConnectionClick:(e,a)=>{const l=g?.companyId;l!=null&&(t(Aa(e,l,"expense_automation_reconcile",void 0,"link_account_no_microdeposit",a)),t(va({accountId:a,connectionInProgress:!0})))},onAddStatementClick:e=>{t(Ye({selectedDrawerAccountId:e})),t(Ge({accountId:e,selectedPeriod:I,localData:{accountSource:"bank_statement"}})),t(qe({statementUploadChosen:!0}))},onReloadReconciliationListPage:()=>{t(le(I,void 0,!0,!1))},onUpdateReconcileTabLocalData:e=>{t(ko({selectedTransactionIds:e}))},onReconTabColumnSortConfigChanged:(e,a)=>{t(Io({sortKey:e,sortOrder:a}))},onReconReviewTabColumnSortConfigChanged:(e,a)=>{t(fo({sortKey:e,sortOrder:a}))},onReconTabUpdate:e=>{s.closeSidePanel?.(),t(Co({selectedTab:e}))},updateReconReviewTabLocalData:(e,a,l)=>{const d=e.vendor?.id;l&&d!=null&&t(So(d)),t(go({data:e,transactionId:a}))},onReconMatchedTransactionClick:e=>{if(s.openTransactionPanel)return void s.openTransactionPanel(e,gt("bill"));const a=te(u.state?.pathnameStackToGoBack,u.pathname);y(`../../transaction/bill/${e}`,{state:{pathnameStackToGoBack:a,message:"expenseAutomation",origin:"reconciliation"}})},onReloadPage:()=>{window.location.reload()},onBackClick:()=>{y(-1)},onReconListPageScroll:e=>{t(aa({scrollPosition:e}))},onVendorAutoCompleteInputChange:e=>{e.trim().length>=2?t(ta({searchString:e,searchOrigin:"common"})):e.trim().length===0&&t($e("common"))},onReconNodeCollapseToggled:(e,a)=>{t(ho({nodeId:e,collapsed:a}))},updateSectionCollapseStatus:()=>{},onExcludeAccountFromReconciliation:e=>{t(ba({accountId:e}))},onIncludeAccountIntoReconciliation:e=>{t(ya({accountId:e}))}}}),((t,s,P)=>{const{isMissingReceiptsBulkUploadEnabled:C,...f}=P;return(function(r,u,x){return{...r,...u,...x,onUploadTransactionReceipt:(i,g,b,w,y)=>{u.onUploadTransactionReceipt(i,g,b,w,y,r.authParams)}}})(t,s,f)}))(ac(nc)),pt="newScheduleMode",ht="newScheduleType",jc=Ac((function(t){const s=t.displayName??t.name??"Component",P=ka.memo(t),C=f=>{const r=Ce(),u=(function(){const v=Ce(),m=D((M=>Re(M).reconciliation.selectedDrawerAccountId));return{isOpen:m!=null,selectedAccountId:m,openPanel:n.useCallback((M=>{v(Ye({selectedDrawerAccountId:M}))}),[v]),closePanel:n.useCallback((()=>{v(Ye({selectedDrawerAccountId:void 0}))}),[v])}})(),x=D((v=>Re(v).reconciliation)),i=D((v=>De(v))),g=n.useCallback(((v,m)=>{r(Ea("expense_automation_reconcile",v,m))}),[r]),b=n.useCallback(((v,m)=>{const M=i?.companyId;M!=null&&(r(Aa(v,M,"expense_automation_reconcile",void 0,"link_account_no_microdeposit",m)),r(va({accountId:m,connectionInProgress:!0})))}),[r,i?.companyId]),w=n.useMemo((()=>{if(u.isOpen&&u.selectedAccountId!=null)return T.jsx(Fc,{reconciliation:x,selectedDrawerAccountId:u.selectedAccountId,onClose:u.closePanel,onFetchLinkTokenClick:g,onEstablishConnectionClick:b})}),[u.isOpen,u.selectedAccountId,u.closePanel,x,g,b]),y=n.useMemo((()=>({reconPanelContent:w,reconSidePanelIsOpen:u.isOpen,closeReconSidePanel:u.closePanel})),[w,u.isOpen,u.closePanel]),{useFeatureGate:p}=Ke(),{isFeatureEnabled:c}=p(H.isReconV3Enabled),$=n.useContext(pa),I=n.useMemo((()=>u.isOpen?c===!0?{selectedItemId:u.selectedAccountId}:{closePanel:u.closePanel,selectedItemId:u.selectedAccountId}:$),[u.isOpen,u.closePanel,u.selectedAccountId,$,c]);return T.jsx(pa.Provider,{value:I,children:T.jsx(P,{...f,...y})})};return C.displayName=`withReconSidePanel(${s})`,C})((({closeSidePanel:t,openTransactionPanel:s,panelContent:P,sidePanelIsFullView:C,sidePanelIsOpen:f,reconPanelContent:r,reconSidePanelIsOpen:u,closeReconSidePanel:x})=>{const{isAiCfoOpen:i,setIsAiCfoOpen:g}=sc(),b=cc(),{isOpen:w}=ic(),y=Ta(),p=It(),c=Ce(),{isAiCfoAccessEnabled:$,onAskAiCfoClick:I}=_a({mobileExploreReferrer:"Transaction categorization"}),v=n.useCallback((()=>{f===!0&&C!==!0&&t?.()}),[t,f,C]),{areTenantIdsInSync:m}=Da(),M=Vc(),W=lc(),[_,O]=n.useState(!1),[e,a]=Pn(),l=n.useCallback((o=>{a((E=>{const j=new URLSearchParams(E);return o==null?(j.delete(pt),j.delete(ht),j):(j.set(pt,o.scheduleDetailsMode),j.set(ht,o.scheduleType),j)}),{replace:!0})}),[a]),[d,S]=n.useState(void 0),k=n.useCallback(((o,E,j)=>{const B=ft(o);S(B),l({scheduleDetailsMode:E,scheduleType:o}),c(la({scheduleType:B==="prepaid_expenses"?"prepaid_expenses":"fixed_assets",shouldResetEnteredData:j}))}),[c,l]),R=n.useMemo((()=>{const o=e.get(pt),E=e.get(ht);return o!=null&&E!=null?{scheduleDetailsMode:o,scheduleType:E}:void 0}),[e]),L=n.useCallback((o=>{l(o),o!=null&&c(la({scheduleType:ft(o.scheduleType)==="prepaid_expenses"?"prepaid_expenses":"fixed_assets",shouldResetEnteredData:!0}))}),[c,l]),z=D((o=>ea(o))),A=D((o=>De(o))),[ae,Z]=n.useState(!1),[fe,ne]=n.useState(!1),[Ie,q]=n.useState([]),[K,oe]=n.useState(null),Y=n.useCallback((()=>{oe(null)}),[]),Fe=K?.contentType==="activity"?K.detail.transactionId:void 0,me=n.useCallback((o=>{o!=null?(i&&g(!1),b(),v(),oe({contentType:"activity",detail:{transactionId:o}})):oe((E=>E?.contentType==="activity"?null:E))}),[v,i,b,g]),Ze=n.useCallback((o=>{i&&g(!1),b(),v(),oe({contentType:"transfer",detail:o})}),[v,i,b,g]),Xe=n.useCallback((()=>{b(),Y(),v(),I()}),[v,Y,I,b]),Ue=n.useRef(i);n.useEffect((()=>{i===!0&&Ue.current===!1&&(b(),Y(),v()),Ue.current=i}),[v,Y,i,b]);const ke=n.useRef(w);n.useEffect((()=>{w===!0&&ke.current===!1&&(i&&g(!1),Y(),f===!0&&C!==!0&&t?.()),ke.current=w}),[Y,t,w,i,g,C,f]);const h=f===!0&&C!==!0,N=n.useRef(h);n.useEffect((()=>{h&&!N.current&&(i&&g(!1),b(),Y()),N.current=h}),[Y,i,h,b,g]);const[X,Te]=n.useState(!1),pe=n.useRef(!1),{selectedTab:kt}=Wt(),{tenantEmailDomain:et}=Wt(),[tt,Tt]=n.useState(p.state?.message==="comingFromTransactionDetail"),bt=p.state?.message==="comingFromOverview",Ba=rc(),at=We.getSignedInUser(),{useFeatureGate:se}=Ke(),{isFeatureEnabled:yt}=se(H.isRealtimeInsightsFeatureEnabled),{isFeatureEnabled:be}=se(H.isMissingReceiptsBulkUploadEnabled),{isFeatureEnabled:nt}=se(H.isTransactionActivityEnabled),{isFeatureEnabled:Ma}=se(H.isAccrualEnabled),{isFeatureEnabled:Et}=se(H.isCreateTransferEntryFromExpenseEnabled),{isFeatureEnabled:Oa}=se(H.isExpenseAutomationCommentingEnabled),{isFeatureEnabled:La}=se(H.isProjectsTransactionsEnabled),{isFeatureEnabled:ja}=se(H.isReconV3Enabled),za=n.useCallback((o=>{const E=gt(o.transactionType??(o.view==="reconciliation"?"bill":"expense")),j=te(p.state?.pathnameStackToGoBack,p.pathname),B=new URLSearchParams({view:"full"});o.threadId!=null&&B.set("thread_id",o.threadId),o.entityType!=null&&B.set("entity_type",o.entityType),y(`/${et}/transaction/${encodeURIComponent(E)}/${o.transactionId??o.entityId}?${B.toString()}`,{state:{pathnameStackToGoBack:j,message:"expenseAutomation"}})}),[y,et,p.state,p.pathname]),$a=D((o=>Ts(o,"common"))),V=D((o=>Re(o))),{categoryOptions:Ga,paymentAccountNames:qa}=D((o=>bs(o.accountState))),Na=D((o=>ys(o.classState))),{monthEndCloseChecksView:J,currentSelectedView:F,selectedPeriod:U,selectedTransactionCategorizationTab:ot,currentSelectedViewBackgroundRefreshFetchState:Ja,currentSelectedViewFetchState:ce,jeSchedules:st,reconciliation:At}=V;kc(F==="transaction_categorization");const Ya=V.transactionView.saveStatus.fetchState,_e=V.transactionView.transactions,vt=n.useRef(_e);vt.current=_e;const wt=D((o=>o.expenseAutomationTransactionsViewState?.transactionCategorizationView)),Pt=D((o=>o.expenseAutomationTransactionsViewState?.selectedTransactionCategorizationTab)),Rt=n.useRef(wt);Rt.current=wt;const xt=n.useRef(Pt);xt.current=Pt;const Ve=D((o=>{const E=o.expenseAutomationTransactionsViewState?.selectedTransactionCategorizationTab;return E!=null?o.expenseAutomationTransactionsViewState?.transactionCategorizationView?.[E]?.filters:void 0})),Dt=n.useRef("");n.useEffect((()=>{if(F!=="transaction_categorization")return;const o=V.transactionView.uiState.searchString??"";if(ce.fetchState!=="Completed"||o.length===0||o===Dt.current)return;Dt.current=o;const E=Ve!=null?dc(Ve):0,j=Ve?.categories.filter((B=>B.values.length>0&&String(B.values[0]??"").trim()!=="")).map((B=>`${B.field}:${B.values.join(",")}`))??[];G.trackAiCloseTransactionSearch({filtersApplied:j,hasResults:_e.length>0,isFiltered:E>0,resultsCount:_e.length,searchTerm:o,searchType:"free_text"})}),[F,ce.fetchState,V.transactionView.uiState.searchString,V.transactionView.transactions,Ve]);const ie=Tc(Ya,(()=>{const o=[],E=xt.current,j=Rt.current,B=j!=null&&E!=null?j[E]:void 0;if(B?.transactionReviewLocalDataById!=null)for(const Se of Object.values(B.transactionReviewLocalDataById)){const Q=Se?.transactionReviewLocalData?.lineItemById;if(Q!=null)for(const ct of Object.values(Q)){const we=ct?.account;we?.accountId!=null&&o.push(we.accountId)}}const he=vt.current;for(const Se of he)for(const Q of Se.lines??[])"account"in Q&&Q.account?.accountId!=null&&o.push(Q.account.accountId);return o}));n.useEffect((()=>{F==="transaction_categorization"&&f!==!0||me(void 0)}),[F,me,f]),n.useEffect((()=>{u===!0&&x?.()}),[F,At.selectedAccountId]);const Ha=V.transactionView.selectedTransactionCategorizationCompletedSubTab,Ka=V.transactionView.selectedTransactionGroup,Be=`${ot}|${Ha}|${Ka}`,Me=n.useRef(null),Ft=n.useRef(null);n.useEffect((()=>{Me.current!==null?Me.current!==Be&&(Me.current=Be,F==="transaction_categorization"&&Y()):Me.current=Be}),[Y,F,Be]);const Qa=D((o=>Fe==null?void 0:Es(o.transactionState,Fe))),re=Qa?.qboId,Ut=D((o=>re==null?void 0:As(o,re)));n.useEffect((()=>{re!=null&&c(vs(re))}),[c,re]);const{createTransferEntryStatus:_t,creditCardTransferAccountsList:Vt,transferAccounts:Bt}=V.transactionView,Mt=n.useCallback((o=>bc(c,o)),[c]),Ot=n.useMemo((()=>F!=="transaction_categorization"||K==null?null:K.contentType==="activity"?nt===!0?T.jsx(uc,{activityLogView:Ut,qboId:re,onClose:()=>oe(null),selectedTransactionId:K.detail.transactionId,isQuickViewCardStyle:!0},String(K.detail.transactionId)):null:K.contentType==="transfer"?T.jsx(mc,{createTransferEntryStatus:_t,creditCardTransferAccountsList:Vt,transaction:K.detail,transferAccounts:Bt,onClose:()=>oe(null),onCreateTransfer:Mt,isQuickViewCardStyle:!0},String(K.detail.transactionId)):null),[F,K,nt,Ut,re,_t,Vt,Bt,Mt]),Wa=Ot!=null,{selectedAccountId:ye}=At,Lt=Je(st.accountSettingsView.saveState.fetchState),Za=D((o=>ws(o.accountState,o.accountListState,"accountList"))),Xa=D((o=>Ps(o))),Ee=kt!=null?Rs(kt):F,en=D((o=>o.entityAutoCompleteState.autoCompleteText.common));if(Fa({isDataReady:ce.fetchState==="Completed"}),at==null)throw Error("Can't access expense automation screen without signing in...");const jt=wa(U),Ae=He(jt.start),ve=He(jt.end);if(Ae==null||ve==null)throw Error(`Invalid start - ${Ae} and end - ${ve} period from given ${U}`);const tn=n.useCallback((()=>{Z(!1)}),[]),an=n.useCallback((()=>{ne(!0)}),[]),nn=n.useCallback((o=>{q(o),ne(!1)}),[]),on=n.useCallback((()=>{q([])}),[]),Oe=V.missingReceipts.bulkUpload.phase,zt=V.missingReceipts.bulkUpload.currentBatchId;n.useEffect((()=>{be===!0&&F==="missing_receipts"&&Oe==="matching"&&zt!=null&&c(xa({cacheOverride:!0}))}),[be,F,Oe,zt,c]);const $t=at?.userId,sn=U.month,cn=U.year,Gt=A?.tenantId;n.useEffect((()=>{F==="missing_receipts"&&be!==!1&&Oe==="idle"&&$t!=null&&Gt!=null&&c(xs())}),[F,be,Oe,$t,Gt,sn,cn,c]),n.useEffect((()=>{z.newVendorState?.vendorDetailLocalData?.vendorName!=null?O(!0):O(!1)}),[z.newVendorState?.vendorDetailLocalData?.vendorName]),n.useEffect((()=>{Ee!=null&&F!==Ee&&c(Pa(Ee))}),[Ee]),n.useEffect((()=>{X===!1&&ce.fetchState==="Completed"&&m&&(Te(!0),c(ra(!1,!1)))}),[X,ce,m]),n.useEffect((()=>{const o={month:U.month,year:U.year},E=Ft.current;Ft.current=o,E===null||E.month===o.month&&E.year===o.year||!bt&&m&&(c(ra(!1,!1)),c(le(U,ye,!1,!1)))}),[U.month,U.year,m]);const Le=n.useCallback(((o=!1,E=!1)=>{const j={start:Ae,end:ve};switch(F){case"transaction_categorization":c(ue(ot,j,o,!tt,void 0,void 0,E)),Tt(!1);break;case"flux_analysis":c(Ne(U,o,E,null));break;case"month_end_insights":if(E===!1){const B=new Date(U.year,U.month,0),he=Fs(B.toDateString()).format(Va.analytics.YYYYDashMMDashDDFormat);c(Us(!0,A.companyId,A.tenantId,he)),c(_s(A.companyId,A.tenantId))}break;case"je_schedules":c(Ds(j,E));break;case"missing_receipts":c(Ra(j,{amount:75,currencyCode:"USD",currencySymbol:"$"},o,E));break;default:c(le(U,ye,o,E))}}),[F,Ae,ve,A.companyId,A.tenantId,ot,U,ye,tt,Tt]),ln=n.useCallback((()=>{Le(!0,!0)}),[Le]);n.useEffect((()=>{F===Ee&&ce.fetchState==="Not-Started"&&m&&Le(!0)}),[ce,Ae,ve,A.companyId,A.tenantId,m]),n.useEffect((()=>{bt||tt||pe.current||Ja.fetchState==="In-Progress"||ce.fetchState!=="Completed"||(pe.current=!0,Le(!0,!0))}),[]),n.useEffect((()=>{J.fetchState!=="In-Progress"&&J.fetchState!=="Completed"&&J.fetchState!=="Error"&&A?.tenantId!=null&&c(Pe({tenantId:A.tenantId,period:U,refreshViewInBackground:!1}))}),[J.fetchState,A?.tenantId]),n.useEffect((()=>{J.fetchState!=="Completed"||!m||(J.monthEndCloseChecks?.monthEndCloseCheckList.some((o=>o.id==="reconciliation"))??!1)&&V.reconciliation.fetchStatus.fetchState==="Not-Started"&&c(le(U,void 0,!1,!1))}),[J.fetchState,m,U.month,U.year,V.reconciliation.fetchStatus.fetchState,c]),n.useEffect((()=>{V.monthEndInsights?.previewMonthEndReportStatus?.fetchState==="Completed"?Z(!0):Z(!1)}),[V.monthEndInsights?.previewMonthEndReportStatus?.fetchState]),n.useEffect((()=>{V.monthEndInsights?.sendMonthEndReportStatus?.fetchState==="Completed"&&m&&(c(Pe({tenantId:A.tenantId,period:U,refreshViewInBackground:!0})),c(Vs({companyId:A.companyId})),y("../"))}),[V.monthEndInsights?.sendMonthEndReportStatus?.fetchState,A.tenantId,U,A.companyId,m]),n.useEffect((()=>{const o=setInterval((()=>{J.fetchState!=="In-Progress"&&J.fetchState==="Completed"&&c(Pe({tenantId:A.tenantId,period:U,refreshViewInBackground:!0}))}),3e5);return()=>clearInterval(o)}),[J.fetchState,A.tenantId,U,c]),n.useEffect((()=>{const o=setInterval((()=>{F==="reconciliation"&&ye==null&&V.reconciliation.fetchStatus.fetchState==="Completed"&&V.reconciliation.refreshStatus.fetchState!=="In-Progress"&&c(le(U,void 0,!0,!0))}),3e5);return()=>clearInterval(o)}),[F,c,V.reconciliation.fetchStatus.fetchState,V.reconciliation.refreshStatus.fetchState,le,ye,U]);const qt=Sa(),Nt=pc(),{onRecommendationSelection:Jt,popup:rn}=yc({isEnabled:qt}),dn=n.useMemo((()=>({...Nt,onRecommendationSelection:Jt})),[Nt,Jt]);n.useEffect((()=>{const o=(J.monthEndCloseChecks?.monthEndCloseCheckList.find((E=>E.id==="month_end_insights"))?.isDisabled??!1)&&!yt;F!=="month_end_insights"||!o&&J.monthEndCloseChecks?.reportEmailSentDate==null||y("../")}),[F,J.monthEndCloseChecks]);const un=u===!0?r:P,mn=u===!0||f===!0,pn=u===!0?x:t;n.useEffect((()=>{Lt==="In-Progress"&&st.accountSettingsView.saveState.fetchState==="Completed"&&c(da())}),[Lt,st.accountSettingsView.saveState.fetchState,da]);const{transactionId:Yt,onSaveVendor:hn,onSaveSuccess:Sn,onCancel:gn,vendorViewDetails:Cn}=(({expenseAutomationViewSelector:o,closeDrawerHandler:E,currentSelectedView:j})=>{const B=Ce();let he,Se,Q;const ct=Sa(),we=o.transactionView;let Ht=()=>{};const{transactions:fn,selectedTransactionId:ge,selectedTransactionLineId:je,transactionLocalData:In}=we;if(j==="transaction_categorization"){const it=In.find((de=>de.transactionId===ge)),ee=fn.find((de=>de.id===ge)),Kt=je!=null?it?.transactionReviewLocalData?.lineItemById[je]:void 0,Qt=Kt?.account;Se=Kt?.class?.classId,he=["Uncategorized Income","Uncategorized Expense"].includes(Qt?.accountName??"")?void 0:Qt?.accountId;const Tn=vc(ge,ee?.typeOfTransaction);ee!=null&&Tn&&(Q={id:ge,type:gt(ee.typeOfTransaction)}),Ht=()=>{if(ge!=null&&je!=null&&ee!=null){const de=we.transactionLocalData.find((ze=>ze.transactionId===ge))?.transactionReviewLocalData;if(de!=null&&ee.lines!=null&&ee.lines.length>0){const ze=de.lineItemById[je];let lt=de.selectedEntity;if(so(ee)||(lt=ze.selectedEntityLine),lt!=null){const bn=lt,yn={transactionId:{id:ee.id,type:ee.type},transaction:ee,lineIds:ee.lines.map((En=>En.id))??[]};B(Ct({entity:bn,amount:ze.amount.amount,transactionDetails:yn,flowType:"categorization",selectedTab:o.selectedTransactionCategorizationTab,isFetchCOT:ct}))}}}}}const kn=D((it=>ea(it,void 0,he,Se)));return{transactionId:Q,onSaveVendor:()=>{B(oo(Q,void 0,!1,!0))},onSaveSuccess:Ht,onCancel:()=>{Q!=null&&B(to({transactionId:Q})),B(ao()),B(no()),E()},vendorViewDetails:kn}})({expenseAutomationViewSelector:V,closeDrawerHandler:()=>{O(!1)},currentSelectedView:F});return Ba?.loggedInUserRoleMap==null?J.fetchState==="Error"?T.jsx(hc,{onGoHome:()=>y("../",{replace:!0}),onReload:()=>window.location.reload()}):T.jsx(Ua,{fetchState:"In-Progress"}):T.jsxs(T.Fragment,{children:[T.jsx(Rc,{isOpen:fe,drawerLeftMargin:new Sc(0,0,300,650),onClose:()=>{ne(!1)},children:T.jsx(zc,{onClick:o=>o.stopPropagation(),children:T.jsx(Uc,{companyId:A.companyId,closeCustomerRequestDrawer:()=>ne(!1),addCustomerRequest:nn,resetCustomerRequest:on})})}),Yt!=null&&_&&T.jsx(Ec,{isOpen:_,transactionId:Yt,onSaveVendor:hn,onSaveSuccess:Sn,onCancel:gn,vendorViewDetails:Cn}),T.jsx(gc,{toolkit:dn,children:T.jsx(Lc,{events:[],eventCallback:(o,E,j)=>{},navigate:y,location:p,themeState:W,categoryOptions:Ga,classesForFilters:Na,accountsForFilters:qa,vendorSearchAutoCompleteData:{autoCompleteText:en,entityAutoCompleteView:$a},expenseAutomationViewSelector:V,isMissingReceiptsBulkUploadEnabled:be,monthEndInsightsPreviewMode:ae,monthEndInsightsCustomerRequestData:Ie,isRealtimeInsightsFeatureEnabled:yt,isCreateTransferEntryFromExpenseEnabled:Et,isAccountingClassesEnabled:Xa,isProjectsTransactionsEnabled:La,isCOTEnabled:qt,currentTenant:A,companyId:A.companyId,signedInUser:at,isTransactionActivityEnabled:nt,isRightPanelOpen:Wa,rightSidePanel:Ot,onOpenTransferRightPanel:Et===!0?Ze:void 0,uncategorizedAccounts:Za,newScheduleActiveType:d,isAccrualEnabled:Ma,newScheduleSelection:R,onNewScheduleSelectionChange:L,onScheduleTypeChange:k,onNewScheduleSaved:ln,onClickCustomerRequest:an,handleEditClick:tn,tenantEmailDomain:et,trackExpenseAutomationTabAnalytics:M,setActivityLogTransactionId:me,closeSidePanel:pn,openTransactionPanel:s,sidePanelIsOpen:mn,sidePanelIsFullView:u!==!0&&C,panelContent:un,isAiCfoAccessEnabled:$,onAskAiCfoClick:Xe,isExpenseAutomationCommentingEnabled:Oa,isReconV3Enabled:ja,onExpenseAutomationCommentingThreadClick:za,sidePanelListPercent:u===!0?66:void 0})}),rn,ie.showPopup&&ie.popupType!=null&&T.jsx(Cc,{popupType:ie.popupType,currencySymbol:ie.currencySymbol,accountId:ie.popupAccountId??"",accountName:ie.popupAccountName??"",onSubmit:ie.handleSubmit,onDismiss:ie.handleDismiss})]})}))),zc=Qe(vn)`
|
|
21
|
+
`;function Uc({companyId:t,closeCustomerRequestDrawer:s,addCustomerRequest:P,resetCustomerRequest:C}){const f=We.getSignedInUser();if(f==null)throw Error("Can't access Customer Request page without signing in...");const r=D((u=>Zn(u,t,f)));return n.useEffect((()=>{C()}),[]),T.jsx(T.Fragment,{children:r.fetchState==="In-Progress"||r.companyMonthEndReportTemplatesData.fetchState==="In-Progress"?T.jsx(Ua,{fetchState:"In-Progress"}):T.jsx(ec,{onCloseClick:s,addCustomerRequest:P,snippets:r.companyMonthEndReportTemplatesData,bulletPoints:r.zeniRequestsData??[]})})}const _c={schedules:"Review Schedules",existing_schedules:"Existing Schedules"},Vc=()=>{const t=D((y=>Re(y))),s=It(),{currentSelectedViewFetchState:P,currentSelectedView:C,selectedPeriod:f}=t,r=Je(C),u=Je(P.fetchState),x=t.jeSchedules.uiState.selectedPageTab??"schedules",i=Je(x),g=n.useCallback((y=>{const w=s.state?.referrer;C==="transaction_categorization"&&(t.selectedTransactionCategorizationTab==="review"?G.trackTransactionsReviewPage(f.month,f.year,t.transactionView.totalCountByTab.review,0,y,w??null):G.trackTransactionsAutoCategorisedPage(f.month,f.year,t.transactionView.totalCountByTab.autoCategorized,0,y,w??null)),C==="missing_receipts"&&G.trackMissingReceiptsPage(f.month,f.year,y,t.missingReceipts.transactions.length,w??null),C==="je_schedules"&&G.trackMonthCloseScheduleListPage(f.month,f.year,y,t.jeSchedules.pendingReviewSchedules.length,t.jeSchedules.resolveSchedules.length,(b=>{const p={accruedCount:0,fixedAssetsCount:0,oneTimeAccrualCount:0,prepaidCount:0};return b.forEach((c=>{if(Xn(c))p.oneTimeAccrualCount+=1;else switch(eo(c)){case"prepaid_expenses":p.prepaidCount+=1;break;case"fixed_assets":p.fixedAssetsCount+=1;break;case"accrued_expenses":p.accruedCount+=1}})),p})(t.jeSchedules.pendingReviewSchedules),_c[x],w??null),C==="flux_analysis"&&G.trackFluxAnalysisPage(f.month,f.year,y,Bc(t.fluxAnalysis),w??null),C==="month_end_insights"&&t.auditSummary?.auditScorePercentage!=null&&G.trackInsightsEmailPage(f.month,f.year,y,"draft",t.auditSummary.auditScorePercentage,null,w??null)}),[f,t,x]);return n.useEffect((()=>{(u!==P.fetchState||C!==r||C==="je_schedules"&&i!=null&&x!==i)&&P.fetchState==="Completed"&&g(!1)}),[C,P.fetchState,r,x,i]),g},Bc=t=>t.sections.generalExpense.vendors.length+t.sections.reimbursement.vendors.length,{common:{strings:{hyphen:Mc,comma:fa,space:Oc}},dateFormat:Va}=tc.getLocalizedStrings(),Ia=Hs,Lc=wn((function(t,s){const{uncategorizedAccounts:P,vendorSearchAutoCompleteData:C,monthEndInsightsCustomerRequestData:f,monthEndInsightsPreviewMode:r,companyId:u,isMissingReceiptsBulkUploadEnabled:x,isTransactionActivityEnabled:i,newScheduleActiveType:g}=s,y=We.getSignedInUser(),w=t.tenantState.currentTenantId,b={userId:y?.userId??"",sessionId:y?.zeniSessionId??"",tenantId:w??""},p=Re(t),{selectedTransactionCategorizationTab:c}=p,{searchTransactionsResults:$,searchTransactionsFetchState:I}=co(t),v=g==="prepaid_expenses"?"prepaid_expenses":"fixed_assets",{accountListNestedAccountHierarchy:m,classListNestedAccountHierarchy:M,allDepreciationAccountListNestedAccountHierarchy:W,newScheduleLocalData:_,saveStatus:O}=io(t,v);return{expenseAutomationViewSelector:p,accountListNestedAccountHierarchy:m,allDepreciationAccountListNestedAccountHierarchy:W,baseTransactionSearchFetchState:I,baseTransactionSearchResults:$,classListNestedAccountHierarchy:M,newScheduleLocalData:_,initialSelectedBaseTransaction:_.selectedBaseTransactionId!=null?lo(t.transactionState,ro(_.selectedBaseTransactionId)):void 0,newAccrualAccountsView:uo(t),newScheduleSaveStatus:O,bulkUploadSelector:x===!0?p.missingReceipts.bulkUpload:void 0,vendorSearchAutoCompleteData:C,authParams:b,receiptUploadEndpoint:`${xe.accountMicroServiceBaseUrl}`,transactionAttachmentsEndpoint:`${ha}/transaction_attachments`,bulkUploadEndpoint:x===!0?`${xe.communicationAgentMicroServiceBaseUrl}/1.0/receipts/bulk-upload`:void 0,isDisabled:!1,currentTab:c,selectedTransactionGroup:p.transactionView.selectedTransactionGroup,monthEndInsightsCustomerRequestData:f,monthEndInsightsPreviewMode:r,allThreadsSectionOpen:!1,enableMonthEndInsightsZeniGPTFeature:!1,loggedInUser:y,uncategorizedAccounts:P,companyId:u,isTransactionActivityEnabled:i,receiptsEmail:po(t.tenantState,w),downloadParams:{authParams:b,jeScheduleEndPoint:`${ha}/jeScheduleReports`,timezone:mo(),companyName:De(t).companyName}}}),(function(t,s){const{themeState:P,isAccountingClassesEnabled:C,isCOTEnabled:f,isMissingReceiptsBulkUploadEnabled:r,location:u,vendorSearchAutoCompleteData:x,expenseAutomationViewSelector:i,currentTenant:g,newScheduleActiveType:y,uncategorizedAccounts:w,navigate:b,onClickCustomerRequest:p,handleEditClick:c,setActivityLogTransactionId:$}=s,{selectedPeriod:I,currentSelectedView:v,reconciliation:{selectedAccountId:m}}=i,{accountSettingsView:M}=i.jeSchedules,W=wa(I),_=He(W.start),O=He(W.end);return{onZeniLogoClick:()=>{P.toggle()},onUploadReceiptAttachment:e=>{G.trackMissingReceiptAttached(I.month,I.year),t(ks(e))},onUploadTransactionReceipt:(e,a,l,d,S,k)=>{t(ia(e,a,{fetchState:"In-Progress"}));const R=()=>t(ia(e,a,{fetchState:"Error"}));oc(`${xe.accountMicroServiceBaseUrl}/1.0/transactions/${a}/attachments`,k,a,l,d,S).then((L=>{L!=null?t(Is(e,L)):R()})).catch(R)},onMissingReceiptsRowClick:(e,a)=>{if(s.openTransactionPanel)return void s.openTransactionPanel(e,a);const l=te(u.state?.pathnameStackToGoBack,u.pathname);b(`../../transaction/${a}/${e}`,{state:{pathnameStackToGoBack:l,message:"expenseAutomation",origin:"missing_receipts"}})},onUploadReceiptComplete:(e,a)=>{t(fs(e,a)),g!=null&&t(Pe({tenantId:g.tenantId,period:a,refreshViewInBackground:!0}))},onUploadReceiptFetchStatus:(e,a,l,d)=>{t(Cs(e,{fetchState:a,error:l})),l!=null&&t(St({messageSection:"missing_receipts_attachment",messageText:"failed",type:"error",showStatusIcon:!0,variables:[{variableName:"__message__",variableValue:d!=null?Oc+Mc+d+fa:fa}]}))},onUpdateJESchedulesUIState:e=>{e.createdGroupCollapsed!=null?t(ps()):e.pendingGroupCollapsed!=null?t(hs()):e.selectedJETypeFilter!==void 0?t(Ss(e.selectedJETypeFilter)):t(gs(e))},onUpdateMissingReceiptsUIState:e=>{t(ms(e))},onFetchMissingReceiptsList:()=>{O!=null&&_!=null&&t(Ra({start:_,end:O},{amount:75,currencyCode:"USD",currencySymbol:"$"},!0,!1))},...r===!0?{onBulkUploadFiles:e=>{t(Ys(e))},onBulkUploadProgress:e=>{t(Js(e))},onBulkUploadSuccess:e=>{t(Ns({batchId:e}))},onBulkUploadUploadedFileCount:e=>{t(qs(e))},onConfirmBulkUploadMatch:(e,a,l,d,S)=>{t(Gs(e,a,l,d,S))},onBulkUploadConfirmMatchAcknowledged:()=>{t($s())},onSetBulkUploadResultsTab:e=>{t(zs(e))},onSetBulkUploadCompletedSubTab:e=>{t(js(e))},onSetBulkUploadSortConfig:(e,a)=>{t(ua({sortKey:e,sortOrder:a}))},onClearBulkUpload:()=>{t(Ls())},onSearchTransactionsForManualMatch:(e,a)=>{t(Ia(e,a??void 0))},onLoadMoreManualSearch:()=>{const{manualSearch:e}=i.missingReceipts.bulkUpload;e.nextPageToken!=null&&e.searchQuery!==""&&t(Ia(e.searchQuery,e.nextPageToken))},onFetchCompletedTransactions:(e,a)=>{t(Os(e,a))},onClearBulkUploadBatchDetailsForScopeChange:()=>{t(Ms())},onFetchBulkUploadBatches:e=>{t(xa(e))},onFetchMoreBatchDetails:()=>{t(Bs())},onResetBulkUploadSort:()=>{t(ua({sortKey:void 0,sortOrder:void 0}))}}:{},onClearMissingReceiptsTabNavigation:()=>{t(us())},onSearchTextChanged:e=>{const a=i.currentSelectedView,l=i.selectedTransactionCategorizationTab;a==="transaction_categorization"&&(t(ut({selectedTab:l,uiState:{searchString:e}})),O!=null&&_!=null&&t(ue(l,{start:_,end:O},!0,!1,e,void 0,!1,!0)))},onFiltersChange:e=>{const a=i.selectedTransactionCategorizationTab;t(ds({filters:e,selectedTab:a}))},onRefresh:()=>{s.trackExpenseAutomationTabAnalytics(!0),t(rs())},onClose:()=>{v==="reconciliation"&&m!=null&&t(ca({selectedAccountId:void 0})),b("../")},onBack:()=>{v==="reconciliation"&&m!=null&&t(ca({selectedAccountId:void 0}))},onSaveReconciliation:e=>{t(ls(e))},onSaveReconciliationReview:e=>{t(is(e))},onUpdateStep:e=>{const{selectedPeriod:a}=i,l=te(u.state?.pathnameStackToGoBack,u.pathname);b(`../${e}/${a.month}-${a.year}`,{state:{pathnameStackToGoBack:l,referrer:i.currentSelectedView}}),t(Pa(e))},handleLogOutClick:()=>{const e=te(u.state?.pathnameStackToGoBack,u.pathname);b("/signout",{replace:!0,state:{pathnameStackToGoBack:e,message:"logout"}})},onJeAccountSettingsChange:e=>{const{vendorsAccountSection:a}=e,{prepaidExpensesAccount:l,fixedAssetsAccount:d,accruedExpensesAccount:S}=a,k=mt(M.prepaidExpensesAccountList,l.selectedOptions),R=mt(M.fixedAssetsAccountList,d.selectedOptions),L=mt(M.accruedExpensesAccountList,S.selectedOptions),z={selectedPrepaidExpensesAccountIds:k.map((A=>A.accountId)),selectedFixedAssetsAccountIds:R.map((A=>A.accountId)),selectedAccruedExpensesAccountIds:L.map((A=>A.accountId))};t(cs({data:z}))},onSaveJeAccountSettingsClick:()=>{t(ss())},onJESchedulesFormDataChange(e,a){const{jeScheduleID:l,accumulatedDepreciationCategory:d,scheduleClass:S,scheduleExpenseCategory:k,vendor:R}=a,{allAccountList:L,allClassList:z,allDepreciationAccountList:A}=i.jeSchedules,ae=x.entityAutoCompleteView.vendor.length>0?x.entityAutoCompleteView.vendor.find((q=>q.id===R?.selectedOption)):void 0,Z={id:ae?.zeniId??R?.selectedOption??"",name:ae?.name??R?.defaultOptions.find((q=>q.value===R?.selectedOption))?.label??"",logo:ae?.logo},fe=k?.selectedOption!=null?L.find((q=>q.qboId===k.selectedOption)):void 0,ne=S?.selectedOption!=null?z.find((q=>q.classId===S.selectedOption)):void 0,Ie=d?.selectedOption!=null?A.find((q=>q.qboId===d.selectedOption)):void 0;t(os({scheduledJournalEntryID:e,localData:{jeScheduleID:l,scheduledJournalEntryID:e,updatedCategoryId:fe?.accountId,updatedClassId:ne?.classId,updatedAccumulatedDepreciationCategoryID:Ie?.accountId,updatedVendor:{id:Z.id,name:Z.name}}}))},onRevertJeSchedule(e,a,l,d,S){t(ns(e,a,l,d,S))},ignoreRecommendedJeSchedule(e,a,l,d){t(as(e,a,l,d))},vendorSearchAutoCompleteActions:{onAutoCompleteInputChange:(e,a)=>{e.trim().length>=2?t(ta({searchString:e,entityType:a,searchOrigin:"common"})):e.trim().length===0&&t($e("common"))},onCancelAutoComplete:()=>{t($e("common"))}},onPostJESchedule(e,a){t(ts({scheduledJournalEntryID:e,jeScheduleTransactionKey:a}))},clearJeScheduleLocalData(){t(es())},onViewTransaction(e){if(s.tenantEmailDomain==null)return;const a=Pc(e,s.tenantEmailDomain),l=te(s.location.state?.pathnameStackToGoBack,`${s.location.pathname}${s.location.search}`);s.navigate(a,{state:{pathnameStackToGoBack:l,message:"expenseAutomation",origin:"je_schedules"}})},onSearchBaseTransaction(e){t(Xo({query:e,scheduleType:y==="prepaid_expenses"?"prepaid_expenses":"fixed_assets"}))},onNewScheduleFormChange(e,a){const l=ft(e)==="prepaid_expenses"?"prepaid_expenses":"fixed_assets";t(sa({scheduleType:l,localData:a}))},onSaveSchedule(e,a){const l=e==="prepaid_expenses"?"prepaid_expenses":"fixed_assets",{allAccountList:d,allDepreciationAccountList:S}=i.jeSchedules,k=a.selectedAccount!=null?d.find((L=>L.qboId===a.selectedAccount)):void 0,R=a.selectedAccumulatedDepreciationCategory!=null?S.find((L=>L.qboId===a.selectedAccumulatedDepreciationCategory)):void 0;t(sa({scheduleType:l,localData:{...a,selectedAccount:k?.accountId,selectedAccumulatedDepreciationCategory:R?.accountId}})),t(Zo({scheduleType:l}))},onCreateAccruedSchedule(e){const a="accrued_expenses";t(Yo()),t(Ho()),t(Ko({scheduleType:a,localData:e,selectedJeScheduleDetailId:void 0})),t(Qo({scheduleType:a})),t(Wo(a,void 0))},onCreateOneTimeAccrual(e){t(Jo(e))},handleJeScheduleClick:(e,a,l)=>{(function(S,k){return k!=="accrued_expenses"})(0,l)&&t(No({selectedJEScheduleKey:a}));const d=te(u.state?.pathnameStackToGoBack,u.pathname);b(`../../vendors/schedules/${l}/details/${e}`,{state:{pathnameStackToGoBack:d,message:"expenseAutomation",origin:"je_schedules"}})},onOneTimeAccrualFeedback:(e,a,l,d)=>{t(a!=="revert"?qo(e,l,d):Go(e,l,d))},onOneTimeAccrualClick:e=>{const a=te(u.state?.pathnameStackToGoBack,u.pathname);b(`../../vendors/schedules/one_time_accrual/details/${e}`,{state:{pathnameStackToGoBack:a,message:"expenseAutomation",origin:"je_schedules"}})},improveMonthEndInsightsUsingZeniGPTClick:e=>{g!=null&&t($o(e,g.companyId,g.tenantId))},onClickCustomerRequest:p,setActivityLogTransactionId:$,onCloseAllThreadsSection:()=>{},onCloseFileAttachmentSnackBar:()=>{t(zo())},onOpenFileAttachmentSnackBar:()=>{t(St({messageSection:"cockpit_month_end_email_attachment_upload",messageText:"failed",type:"error",showStatusIcon:!0}))},onRemoveFileAttachment:e=>{t(jo(e))},onUpdateFileAttachment:e=>{t(Lo({files:e}))},previewMonthEndReport:(e,a,l,d,S)=>{g!=null&&t(oa(e,g.companyId,a,!0,l,d,{agentInsightEdits:S,tenantId:g.tenantId}))},saveMonthEndReport:(e,a,l,d,S)=>{g!=null&&t(oa(e,g.companyId,a,!1,l,d,{agentInsightEdits:S,tenantId:g.tenantId}))},onEditMonthEndInsightsClick:c,sendMonthEndReport:e=>{const a=u.state?.referrer,{selectedPeriod:l,auditSummary:d}=i;g!=null&&d?.auditScorePercentage!=null&&(t(Mo(g.companyId,e,g.tenantId)),G.trackInsightsEmailPage(l.month,l.year,!1,"draft",d.auditScorePercentage,Oo().format(Va.analytics.MMMDDCommaYYYYformat),a??null))},onTransactionCategorizationRowClick:(e,a)=>{const l=i.transactionView.uiState.searchString??"",d=i.transactionView.transactions,S=d.findIndex((L=>L.id===e)),k=l.length>0?{resultPosition:S>=0?S+1:void 0,resultsCount:d.length,searchTerm:l}:void 0;if(s.openTransactionPanel)return void s.openTransactionPanel(e,a,k);const R=te(u.state?.pathnameStackToGoBack,u.pathname);b(`../../transaction/${a}/${e}`,{state:{pathnameStackToGoBack:R,message:"expenseAutomation",origin:"transaction_categorization",searchContext:k}})},setLocalDataForCategoryAndClass:(e,a,l,d,S,k,R,L,z,A,ae,Z)=>{t(Bo(e,a,l,d,w,S,k,R,L,z,A,ae,Z))},onCancelAutoComplete:()=>{t($e("common"))},updateExpenseAutomationReconListScrollPosition:e=>{t(aa({scrollPosition:e}))},onUpdateTab:e=>{s.closeSidePanel?.(),O!=null&&_!=null&&(t(ue(e,{start:_,end:O},!1,!1)),t(Vo(e)))},onUpdateTransactionCategorizationCompletedSubTab:e=>{s.closeSidePanel?.(),O!=null&&_!=null&&(t(_o(e)),t(ue("autoCategorized",{start:_,end:O},!1,!1)))},onTransactionGroupChange:e=>{s.closeSidePanel?.(),O!=null&&_!=null&&(t(Uo(e)),t(ue(s.expenseAutomationViewSelector.selectedTransactionCategorizationTab,{start:_,end:O},!1,!1)))},onUpdateTransactionCategorizationUIState:(e,a)=>{t(ut({selectedTab:e,uiState:a})),O!=null&&_!=null&&t(ue(e,{start:_,end:O},!1,!1,a.searchString,null,!0))},onUpdateScrollYOffSetTransactionCategorizationUIState:(e,a)=>{t(ut({selectedTab:e,uiState:a}))},onFetchTransactionCategorizationList:(e,a,l,d,S,k)=>{O!=null&&_!=null&&t(ue(e,{start:_,end:O},!0,l,a,d,S,k))},resetTransactionCategorizationLocalData:(e,a,l,d,S,k,R)=>{t(Fo(e,a,l,d,R??null,S,k,!1)),Ic(t,a.map(String))},updateSelectedVendorForTransaction:(e,a,l,d,S)=>{t(na({selectedTab:e,transactionId:a,lineId:l,selectedTransaction:d,uncategorizedAccounts:w,updatedVendor:S,isAccountingClassesEnabled:C}))},onSaveUpdateTransactionCategorization:(e,a,l)=>{const d=u.state?.referrer;e==="autoCategorized"?G.trackTransactionsAutoCategorisedPage(I.month,I.year,i.transactionView.totalCountByTab.autoCategorized,a.length,!1,d??null):G.trackTransactionsReviewPage(I.month,I.year,i.transactionView.totalCountByTab.review,a.length,!1,d??null),t(Do(e,a,l)),fc(a.map(String))},onUpdateSelectedCheckboxTransactionIds:(e,a)=>{t(xo({selectedTab:e,transactionIds:a}))},onFetchRecommendationsForEntityCategorizationWithCustomer:(e,a,l,d,S,k)=>{const{transactionId:R,transaction:L,lineIds:z}=a;k!=null&&t(Po({transactionId:R,customerUpdates:k})),t(Ro({selectedTab:d,transactionId:R.id,lineId:z[0],selectedTransaction:L,uncategorizedAccounts:w,updatedCustomer:k,selectedEntity:S,isAccountingClassesEnabled:C})),S!=null&&t(Ct({entity:S,amount:e,transactionDetails:a,flowType:"categorization",selectedTab:d,isFetchCOT:f}))},onFetchRecommendationsForEntityCategorization:(e,a,l,d,S,k)=>{const{transactionId:R,transaction:L,lineIds:z}=a;k!=null&&(t(Ao({transactionId:R,vendorUpdates:{name:k.name,id:k.id?k.id:void 0}})),t(vo({vendorId:k.id?k.id:void 0,localData:{vendorName:k.name,vendorId:k.id?k.id:void 0}}))),k?.id?(t(na({selectedTab:d,transactionId:R.id,lineId:z[0],selectedTransaction:L,uncategorizedAccounts:w,updatedVendor:k,selectedEntity:S,isAccountingClassesEnabled:C})),S!=null&&t(Ct({entity:S,amount:e,transactionDetails:a,flowType:"categorization",selectedTab:d,isFetchCOT:f}))):t(wo({selectedTab:d,transactionId:R.id,lineId:z[0]}))},fetchFluxViewOnScroll:(e,a)=>{t(Ne(e,!0,!1,a,!1,!0))},onFetchFluxViewList:()=>{t(Ne(I,!0,!1,null,!1,!1))},markAsReview:(e,a,l,d)=>{G.trackFluxAnalysisReviewed(l.month,l.year,d??!1,e),t(Eo(a,e,l,d??!1))},onUpdateFluxAnalysisUIState:e=>{t(bo(e))},updateOperatingExpensesIdsForReview:e=>{t(yo({operatingExpenseIds:e,selectedPeriod:I}))},redirectToVendorDetailPage:e=>{if(s.tenantEmailDomain!=null){const a=wc(e.id,e.qboId,s.tenantEmailDomain),l=te(s.location.state?.pathnameStackToGoBack,s.location.pathname);s.navigate(a,{state:{pathnameStackToGoBack:l,message:"expenseAutomation",referrer:"Vendor List",origin:"flux_analysis"}})}},updateSectionIdsForReview:e=>{t(To({sectionId:e,selectedPeriod:I}))},onFetchReimbursementView:(e,a,l)=>{t(Ne(e,!0,!1,a,!0,l))},onReviewClicked:e=>{t(le(I,e))},setOpenDrawerClicked:e=>{t(Ye({selectedDrawerAccountId:e}))},onFetchLinkTokenClick:(e,a)=>{t(Ea("expense_automation_reconcile",e,a))},onEstablishConnectionClick:(e,a)=>{const l=g?.companyId;l!=null&&(t(Aa(e,l,"expense_automation_reconcile",void 0,"link_account_no_microdeposit",a)),t(va({accountId:a,connectionInProgress:!0})))},onAddStatementClick:e=>{t(Ye({selectedDrawerAccountId:e})),t(Ge({accountId:e,selectedPeriod:I,localData:{accountSource:"bank_statement"}})),t(qe({statementUploadChosen:!0}))},onReloadReconciliationListPage:()=>{t(le(I,void 0,!0,!1))},onUpdateReconcileTabLocalData:e=>{t(ko({selectedTransactionIds:e}))},onReconTabColumnSortConfigChanged:(e,a)=>{t(Io({sortKey:e,sortOrder:a}))},onReconReviewTabColumnSortConfigChanged:(e,a)=>{t(fo({sortKey:e,sortOrder:a}))},onReconTabUpdate:e=>{s.closeSidePanel?.(),t(Co({selectedTab:e}))},updateReconReviewTabLocalData:(e,a,l)=>{const d=e.vendor?.id;l&&d!=null&&t(So(d)),t(go({data:e,transactionId:a}))},onReconMatchedTransactionClick:e=>{if(s.openTransactionPanel)return void s.openTransactionPanel(e,gt("bill"));const a=te(u.state?.pathnameStackToGoBack,u.pathname);b(`../../transaction/bill/${e}`,{state:{pathnameStackToGoBack:a,message:"expenseAutomation",origin:"reconciliation"}})},onReloadPage:()=>{window.location.reload()},onBackClick:()=>{b(-1)},onReconListPageScroll:e=>{t(aa({scrollPosition:e}))},onVendorAutoCompleteInputChange:e=>{e.trim().length>=2?t(ta({searchString:e,searchOrigin:"common"})):e.trim().length===0&&t($e("common"))},onReconNodeCollapseToggled:(e,a)=>{t(ho({nodeId:e,collapsed:a}))},updateSectionCollapseStatus:()=>{},onExcludeAccountFromReconciliation:e=>{t(ya({accountId:e}))},onIncludeAccountIntoReconciliation:e=>{t(ba({accountId:e}))}}}),((t,s,P)=>{const{isMissingReceiptsBulkUploadEnabled:C,...f}=P;return(function(r,u,x){return{...r,...u,...x,onUploadTransactionReceipt:(i,g,y,w,b)=>{u.onUploadTransactionReceipt(i,g,y,w,b,r.authParams)}}})(t,s,f)}))(ac(nc)),pt="newScheduleMode",ht="newScheduleType",jc=Ac((function(t){const s=t.displayName??t.name??"Component",P=ka.memo(t),C=f=>{const r=Ce(),u=(function(){const v=Ce(),m=D((M=>Re(M).reconciliation.selectedDrawerAccountId));return{isOpen:m!=null,selectedAccountId:m,openPanel:n.useCallback((M=>{v(Ye({selectedDrawerAccountId:M}))}),[v]),closePanel:n.useCallback((()=>{v(Ye({selectedDrawerAccountId:void 0}))}),[v])}})(),x=D((v=>Re(v).reconciliation)),i=D((v=>De(v))),g=n.useCallback(((v,m)=>{r(Ea("expense_automation_reconcile",v,m))}),[r]),y=n.useCallback(((v,m)=>{const M=i?.companyId;M!=null&&(r(Aa(v,M,"expense_automation_reconcile",void 0,"link_account_no_microdeposit",m)),r(va({accountId:m,connectionInProgress:!0})))}),[r,i?.companyId]),w=n.useMemo((()=>{if(u.isOpen&&u.selectedAccountId!=null)return T.jsx(Fc,{reconciliation:x,selectedDrawerAccountId:u.selectedAccountId,onClose:u.closePanel,onFetchLinkTokenClick:g,onEstablishConnectionClick:y})}),[u.isOpen,u.selectedAccountId,u.closePanel,x,g,y]),b=n.useMemo((()=>({reconPanelContent:w,reconSidePanelIsOpen:u.isOpen,closeReconSidePanel:u.closePanel})),[w,u.isOpen,u.closePanel]),{useFeatureGate:p}=Ke(),{isFeatureEnabled:c}=p(H.isReconV3Enabled),$=n.useContext(pa),I=n.useMemo((()=>u.isOpen?c===!0?{selectedItemId:u.selectedAccountId}:{closePanel:u.closePanel,selectedItemId:u.selectedAccountId}:$),[u.isOpen,u.closePanel,u.selectedAccountId,$,c]);return T.jsx(pa.Provider,{value:I,children:T.jsx(P,{...f,...b})})};return C.displayName=`withReconSidePanel(${s})`,C})((({closeSidePanel:t,openTransactionPanel:s,panelContent:P,sidePanelIsFullView:C,sidePanelIsOpen:f,reconPanelContent:r,reconSidePanelIsOpen:u,closeReconSidePanel:x})=>{const{isAiCfoOpen:i,setIsAiCfoOpen:g}=sc(),y=cc(),{isOpen:w}=ic(),b=Ta(),p=It(),c=Ce(),{isAiCfoAccessEnabled:$,onAskAiCfoClick:I}=_a({mobileExploreReferrer:"Transaction categorization"}),v=n.useCallback((()=>{f===!0&&C!==!0&&t?.()}),[t,f,C]),{areTenantIdsInSync:m}=Da(),M=Vc(),W=lc(),[_,O]=n.useState(!1),[e,a]=Pn(),l=n.useCallback((o=>{a((E=>{const j=new URLSearchParams(E);return o==null?(j.delete(pt),j.delete(ht),j):(j.set(pt,o.scheduleDetailsMode),j.set(ht,o.scheduleType),j)}),{replace:!0})}),[a]),[d,S]=n.useState(void 0),k=n.useCallback(((o,E,j)=>{const B=ft(o);S(B),l({scheduleDetailsMode:E,scheduleType:o}),c(la({scheduleType:B==="prepaid_expenses"?"prepaid_expenses":"fixed_assets",shouldResetEnteredData:j}))}),[c,l]),R=n.useMemo((()=>{const o=e.get(pt),E=e.get(ht);return o!=null&&E!=null?{scheduleDetailsMode:o,scheduleType:E}:void 0}),[e]),L=n.useCallback((o=>{l(o),o!=null&&c(la({scheduleType:ft(o.scheduleType)==="prepaid_expenses"?"prepaid_expenses":"fixed_assets",shouldResetEnteredData:!0}))}),[c,l]),z=D((o=>ea(o))),A=D((o=>De(o))),[ae,Z]=n.useState(!1),[fe,ne]=n.useState(!1),[Ie,q]=n.useState([]),[K,oe]=n.useState(null),Y=n.useCallback((()=>{oe(null)}),[]),Fe=K?.contentType==="activity"?K.detail.transactionId:void 0,me=n.useCallback((o=>{o!=null?(i&&g(!1),y(),v(),oe({contentType:"activity",detail:{transactionId:o}})):oe((E=>E?.contentType==="activity"?null:E))}),[v,i,y,g]),Ze=n.useCallback((o=>{i&&g(!1),y(),v(),oe({contentType:"transfer",detail:o})}),[v,i,y,g]),Xe=n.useCallback((()=>{y(),Y(),v(),I()}),[v,Y,I,y]),Ue=n.useRef(i);n.useEffect((()=>{i===!0&&Ue.current===!1&&(y(),Y(),v()),Ue.current=i}),[v,Y,i,y]);const ke=n.useRef(w);n.useEffect((()=>{w===!0&&ke.current===!1&&(i&&g(!1),Y(),f===!0&&C!==!0&&t?.()),ke.current=w}),[Y,t,w,i,g,C,f]);const h=f===!0&&C!==!0,N=n.useRef(h);n.useEffect((()=>{h&&!N.current&&(i&&g(!1),y(),Y()),N.current=h}),[Y,i,h,y,g]);const[X,Te]=n.useState(!1),pe=n.useRef(!1),{selectedTab:kt}=Wt(),{tenantEmailDomain:et}=Wt(),[tt,Tt]=n.useState(p.state?.message==="comingFromTransactionDetail"),yt=p.state?.message==="comingFromOverview",Ba=rc(),at=We.getSignedInUser(),{useFeatureGate:se}=Ke(),{isFeatureEnabled:bt}=se(H.isRealtimeInsightsFeatureEnabled),{isFeatureEnabled:ye}=se(H.isMissingReceiptsBulkUploadEnabled),{isFeatureEnabled:nt}=se(H.isTransactionActivityEnabled),{isFeatureEnabled:Ma}=se(H.isAccrualEnabled),{isFeatureEnabled:Et}=se(H.isCreateTransferEntryFromExpenseEnabled),{isFeatureEnabled:Oa}=se(H.isExpenseAutomationCommentingEnabled),{isFeatureEnabled:La}=se(H.isProjectsTransactionsEnabled),{isFeatureEnabled:ja}=se(H.isReconV3Enabled),za=n.useCallback((o=>{const E=gt(o.transactionType??(o.view==="reconciliation"?"bill":"expense")),j=te(p.state?.pathnameStackToGoBack,p.pathname),B=new URLSearchParams({view:"full"});o.threadId!=null&&B.set("thread_id",o.threadId),o.entityType!=null&&B.set("entity_type",o.entityType),b(`/${et}/transaction/${encodeURIComponent(E)}/${o.transactionId??o.entityId}?${B.toString()}`,{state:{pathnameStackToGoBack:j,message:"expenseAutomation"}})}),[b,et,p.state,p.pathname]),$a=D((o=>Ts(o,"common"))),V=D((o=>Re(o))),{categoryOptions:Ga,paymentAccountNames:qa}=D((o=>ys(o.accountState))),Na=D((o=>bs(o.classState))),{monthEndCloseChecksView:J,currentSelectedView:F,selectedPeriod:U,selectedTransactionCategorizationTab:ot,currentSelectedViewBackgroundRefreshFetchState:Ja,currentSelectedViewFetchState:ce,jeSchedules:st,reconciliation:At}=V;kc(F==="transaction_categorization");const Ya=V.transactionView.saveStatus.fetchState,_e=V.transactionView.transactions,vt=n.useRef(_e);vt.current=_e;const wt=D((o=>o.expenseAutomationTransactionsViewState?.transactionCategorizationView)),Pt=D((o=>o.expenseAutomationTransactionsViewState?.selectedTransactionCategorizationTab)),Rt=n.useRef(wt);Rt.current=wt;const xt=n.useRef(Pt);xt.current=Pt;const Ve=D((o=>{const E=o.expenseAutomationTransactionsViewState?.selectedTransactionCategorizationTab;return E!=null?o.expenseAutomationTransactionsViewState?.transactionCategorizationView?.[E]?.filters:void 0})),Dt=n.useRef("");n.useEffect((()=>{if(F!=="transaction_categorization")return;const o=V.transactionView.uiState.searchString??"";if(ce.fetchState!=="Completed"||o.length===0||o===Dt.current)return;Dt.current=o;const E=Ve!=null?dc(Ve):0,j=Ve?.categories.filter((B=>B.values.length>0&&String(B.values[0]??"").trim()!=="")).map((B=>`${B.field}:${B.values.join(",")}`))??[];G.trackAiCloseTransactionSearch({filtersApplied:j,hasResults:_e.length>0,isFiltered:E>0,resultsCount:_e.length,searchTerm:o,searchType:"free_text"})}),[F,ce.fetchState,V.transactionView.uiState.searchString,V.transactionView.transactions,Ve]);const ie=Tc(Ya,(()=>{const o=[],E=xt.current,j=Rt.current,B=j!=null&&E!=null?j[E]:void 0;if(B?.transactionReviewLocalDataById!=null)for(const Se of Object.values(B.transactionReviewLocalDataById)){const Q=Se?.transactionReviewLocalData?.lineItemById;if(Q!=null)for(const ct of Object.values(Q)){const we=ct?.account;we?.accountId!=null&&o.push(we.accountId)}}const he=vt.current;for(const Se of he)for(const Q of Se.lines??[])"account"in Q&&Q.account?.accountId!=null&&o.push(Q.account.accountId);return o}));n.useEffect((()=>{F==="transaction_categorization"&&f!==!0||me(void 0)}),[F,me,f]),n.useEffect((()=>{u===!0&&x?.()}),[F,At.selectedAccountId]);const Ha=V.transactionView.selectedTransactionCategorizationCompletedSubTab,Ka=V.transactionView.selectedTransactionGroup,Be=`${ot}|${Ha}|${Ka}`,Me=n.useRef(null),Ft=n.useRef(null);n.useEffect((()=>{Me.current!==null?Me.current!==Be&&(Me.current=Be,F==="transaction_categorization"&&Y()):Me.current=Be}),[Y,F,Be]);const Qa=D((o=>Fe==null?void 0:Es(o.transactionState,Fe))),re=Qa?.qboId,Ut=D((o=>re==null?void 0:As(o,re)));n.useEffect((()=>{re!=null&&c(vs(re))}),[c,re]);const{createTransferEntryStatus:_t,creditCardTransferAccountsList:Vt,transferAccounts:Bt}=V.transactionView,Mt=n.useCallback((o=>yc(c,o)),[c]),Ot=n.useMemo((()=>F!=="transaction_categorization"||K==null?null:K.contentType==="activity"?nt===!0?T.jsx(uc,{activityLogView:Ut,qboId:re,onClose:()=>oe(null),selectedTransactionId:K.detail.transactionId,isQuickViewCardStyle:!0},String(K.detail.transactionId)):null:K.contentType==="transfer"?T.jsx(mc,{createTransferEntryStatus:_t,creditCardTransferAccountsList:Vt,transaction:K.detail,transferAccounts:Bt,onClose:()=>oe(null),onCreateTransfer:Mt,isQuickViewCardStyle:!0},String(K.detail.transactionId)):null),[F,K,nt,Ut,re,_t,Vt,Bt,Mt]),Wa=Ot!=null,{selectedAccountId:be}=At,Lt=Je(st.accountSettingsView.saveState.fetchState),Za=D((o=>ws(o.accountState,o.accountListState,"accountList"))),Xa=D((o=>Ps(o))),Ee=kt!=null?Rs(kt):F,en=D((o=>o.entityAutoCompleteState.autoCompleteText.common));if(Fa({isDataReady:ce.fetchState==="Completed"}),at==null)throw Error("Can't access expense automation screen without signing in...");const jt=wa(U),Ae=He(jt.start),ve=He(jt.end);if(Ae==null||ve==null)throw Error(`Invalid start - ${Ae} and end - ${ve} period from given ${U}`);const tn=n.useCallback((()=>{Z(!1)}),[]),an=n.useCallback((()=>{ne(!0)}),[]),nn=n.useCallback((o=>{q(o),ne(!1)}),[]),on=n.useCallback((()=>{q([])}),[]),Oe=V.missingReceipts.bulkUpload.phase,zt=V.missingReceipts.bulkUpload.currentBatchId;n.useEffect((()=>{ye===!0&&F==="missing_receipts"&&Oe==="matching"&&zt!=null&&c(xa({cacheOverride:!0}))}),[ye,F,Oe,zt,c]);const $t=at?.userId,sn=U.month,cn=U.year,Gt=A?.tenantId;n.useEffect((()=>{F==="missing_receipts"&&ye!==!1&&Oe==="idle"&&$t!=null&&Gt!=null&&c(xs())}),[F,ye,Oe,$t,Gt,sn,cn,c]),n.useEffect((()=>{z.newVendorState?.vendorDetailLocalData?.vendorName!=null?O(!0):O(!1)}),[z.newVendorState?.vendorDetailLocalData?.vendorName]),n.useEffect((()=>{Ee!=null&&F!==Ee&&c(Pa(Ee))}),[Ee]),n.useEffect((()=>{X===!1&&ce.fetchState==="Completed"&&m&&(Te(!0),c(ra(!1,!1)))}),[X,ce,m]),n.useEffect((()=>{const o={month:U.month,year:U.year},E=Ft.current;Ft.current=o,E===null||E.month===o.month&&E.year===o.year||!yt&&m&&(c(ra(!1,!1)),c(le(U,be,!1,!1)))}),[U.month,U.year,m]);const Le=n.useCallback(((o=!1,E=!1)=>{const j={start:Ae,end:ve};switch(F){case"transaction_categorization":c(ue(ot,j,o,!tt,void 0,void 0,E)),Tt(!1);break;case"flux_analysis":c(Ne(U,o,E,null));break;case"month_end_insights":if(E===!1){const B=new Date(U.year,U.month,0),he=Fs(B.toDateString()).format(Va.analytics.YYYYDashMMDashDDFormat);c(Us(!0,A.companyId,A.tenantId,he)),c(_s(A.companyId,A.tenantId))}break;case"je_schedules":c(Ds(j,E));break;case"missing_receipts":c(Ra(j,{amount:75,currencyCode:"USD",currencySymbol:"$"},o,E));break;default:c(le(U,be,o,E))}}),[F,Ae,ve,A.companyId,A.tenantId,ot,U,be,tt,Tt]),ln=n.useCallback((()=>{Le(!0,!0)}),[Le]);n.useEffect((()=>{F===Ee&&ce.fetchState==="Not-Started"&&m&&Le(!0)}),[ce,Ae,ve,A.companyId,A.tenantId,m]),n.useEffect((()=>{yt||tt||pe.current||Ja.fetchState==="In-Progress"||ce.fetchState!=="Completed"||(pe.current=!0,Le(!0,!0))}),[]),n.useEffect((()=>{J.fetchState!=="In-Progress"&&J.fetchState!=="Completed"&&J.fetchState!=="Error"&&A?.tenantId!=null&&c(Pe({tenantId:A.tenantId,period:U,refreshViewInBackground:!1}))}),[J.fetchState,A?.tenantId]),n.useEffect((()=>{J.fetchState!=="Completed"||!m||(J.monthEndCloseChecks?.monthEndCloseCheckList.some((o=>o.id==="reconciliation"))??!1)&&V.reconciliation.fetchStatus.fetchState==="Not-Started"&&c(le(U,void 0,!1,!1))}),[J.fetchState,m,U.month,U.year,V.reconciliation.fetchStatus.fetchState,c]),n.useEffect((()=>{V.monthEndInsights?.previewMonthEndReportStatus?.fetchState==="Completed"?Z(!0):Z(!1)}),[V.monthEndInsights?.previewMonthEndReportStatus?.fetchState]),n.useEffect((()=>{V.monthEndInsights?.sendMonthEndReportStatus?.fetchState==="Completed"&&m&&(c(Pe({tenantId:A.tenantId,period:U,refreshViewInBackground:!0})),c(Vs({companyId:A.companyId})),b("../"))}),[V.monthEndInsights?.sendMonthEndReportStatus?.fetchState,A.tenantId,U,A.companyId,m]),n.useEffect((()=>{const o=setInterval((()=>{J.fetchState!=="In-Progress"&&J.fetchState==="Completed"&&c(Pe({tenantId:A.tenantId,period:U,refreshViewInBackground:!0}))}),3e5);return()=>clearInterval(o)}),[J.fetchState,A.tenantId,U,c]),n.useEffect((()=>{const o=setInterval((()=>{F==="reconciliation"&&be==null&&V.reconciliation.fetchStatus.fetchState==="Completed"&&V.reconciliation.refreshStatus.fetchState!=="In-Progress"&&c(le(U,void 0,!0,!0))}),3e5);return()=>clearInterval(o)}),[F,c,V.reconciliation.fetchStatus.fetchState,V.reconciliation.refreshStatus.fetchState,le,be,U]);const qt=Sa(),Nt=pc(),{onRecommendationSelection:Jt,popup:rn}=bc({isEnabled:qt}),dn=n.useMemo((()=>({...Nt,onRecommendationSelection:Jt})),[Nt,Jt]);n.useEffect((()=>{const o=(J.monthEndCloseChecks?.monthEndCloseCheckList.find((E=>E.id==="month_end_insights"))?.isDisabled??!1)&&!bt;F!=="month_end_insights"||!o&&J.monthEndCloseChecks?.reportEmailSentDate==null||b("../")}),[F,J.monthEndCloseChecks]);const un=u===!0?r:P,mn=u===!0||f===!0,pn=u===!0?x:t;n.useEffect((()=>{Lt==="In-Progress"&&st.accountSettingsView.saveState.fetchState==="Completed"&&c(da())}),[Lt,st.accountSettingsView.saveState.fetchState,da]);const{transactionId:Yt,onSaveVendor:hn,onSaveSuccess:Sn,onCancel:gn,vendorViewDetails:Cn}=(({expenseAutomationViewSelector:o,closeDrawerHandler:E,currentSelectedView:j})=>{const B=Ce();let he,Se,Q;const ct=Sa(),we=o.transactionView;let Ht=()=>{};const{transactions:fn,selectedTransactionId:ge,selectedTransactionLineId:je,transactionLocalData:In}=we;if(j==="transaction_categorization"){const it=In.find((de=>de.transactionId===ge)),ee=fn.find((de=>de.id===ge)),Kt=je!=null?it?.transactionReviewLocalData?.lineItemById[je]:void 0,Qt=Kt?.account;Se=Kt?.class?.classId,he=["Uncategorized Income","Uncategorized Expense"].includes(Qt?.accountName??"")?void 0:Qt?.accountId;const Tn=vc(ge,ee?.typeOfTransaction);ee!=null&&Tn&&(Q={id:ge,type:gt(ee.typeOfTransaction)}),Ht=()=>{if(ge!=null&&je!=null&&ee!=null){const de=we.transactionLocalData.find((ze=>ze.transactionId===ge))?.transactionReviewLocalData;if(de!=null&&ee.lines!=null&&ee.lines.length>0){const ze=de.lineItemById[je];let lt=de.selectedEntity;if(so(ee)||(lt=ze.selectedEntityLine),lt!=null){const yn=lt,bn={transactionId:{id:ee.id,type:ee.type},transaction:ee,lineIds:ee.lines.map((En=>En.id))??[]};B(Ct({entity:yn,amount:ze.amount.amount,transactionDetails:bn,flowType:"categorization",selectedTab:o.selectedTransactionCategorizationTab,isFetchCOT:ct}))}}}}}const kn=D((it=>ea(it,void 0,he,Se)));return{transactionId:Q,onSaveVendor:()=>{B(oo(Q,void 0,!1,!0))},onSaveSuccess:Ht,onCancel:()=>{Q!=null&&B(to({transactionId:Q})),B(ao()),B(no()),E()},vendorViewDetails:kn}})({expenseAutomationViewSelector:V,closeDrawerHandler:()=>{O(!1)},currentSelectedView:F});return Ba?.loggedInUserRoleMap==null?J.fetchState==="Error"?T.jsx(hc,{onGoHome:()=>b("../",{replace:!0}),onReload:()=>window.location.reload()}):T.jsx(Ua,{fetchState:"In-Progress"}):T.jsxs(T.Fragment,{children:[T.jsx(Rc,{isOpen:fe,drawerLeftMargin:new Sc(0,0,300,650),onClose:()=>{ne(!1)},children:T.jsx(zc,{onClick:o=>o.stopPropagation(),children:T.jsx(Uc,{companyId:A.companyId,closeCustomerRequestDrawer:()=>ne(!1),addCustomerRequest:nn,resetCustomerRequest:on})})}),Yt!=null&&_&&T.jsx(Ec,{isOpen:_,transactionId:Yt,onSaveVendor:hn,onSaveSuccess:Sn,onCancel:gn,vendorViewDetails:Cn}),T.jsx(gc,{toolkit:dn,children:T.jsx(Lc,{events:[],eventCallback:(o,E,j)=>{},navigate:b,location:p,themeState:W,categoryOptions:Ga,classesForFilters:Na,accountsForFilters:qa,vendorSearchAutoCompleteData:{autoCompleteText:en,entityAutoCompleteView:$a},expenseAutomationViewSelector:V,isMissingReceiptsBulkUploadEnabled:ye,monthEndInsightsPreviewMode:ae,monthEndInsightsCustomerRequestData:Ie,isRealtimeInsightsFeatureEnabled:bt,isCreateTransferEntryFromExpenseEnabled:Et,isAccountingClassesEnabled:Xa,isProjectsTransactionsEnabled:La,isCOTEnabled:qt,currentTenant:A,companyId:A.companyId,signedInUser:at,isTransactionActivityEnabled:nt,isRightPanelOpen:Wa,rightSidePanel:Ot,onOpenTransferRightPanel:Et===!0?Ze:void 0,uncategorizedAccounts:Za,newScheduleActiveType:d,isAccrualEnabled:Ma,newScheduleSelection:R,onNewScheduleSelectionChange:L,onScheduleTypeChange:k,onNewScheduleSaved:ln,onClickCustomerRequest:an,handleEditClick:tn,tenantEmailDomain:et,trackExpenseAutomationTabAnalytics:M,setActivityLogTransactionId:me,closeSidePanel:pn,openTransactionPanel:s,sidePanelIsOpen:mn,sidePanelIsFullView:u!==!0&&C,panelContent:un,isAiCfoAccessEnabled:$,onAskAiCfoClick:Xe,isExpenseAutomationCommentingEnabled:Oa,isReconV3Enabled:ja,onExpenseAutomationCommentingThreadClick:za,sidePanelListPercent:u===!0?66:void 0})}),rn,ie.showPopup&&ie.popupType!=null&&T.jsx(Cc,{popupType:ie.popupType,currencySymbol:ie.currencySymbol,accountId:ie.popupAccountId??"",accountName:ie.popupAccountName??"",onSubmit:ie.handleSubmit,onDismiss:ie.handleDismiss})]})}))),zc=Qe(vn)`
|
|
22
22
|
display: flex;
|
|
23
23
|
min-height: 100%;
|
|
24
24
|
flex-direction: column;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as s}from"./liveblocks-D83XGo_c.js";import{a as r}from"./sentry-BPfEBx2C.js";import{au as i,av as b,r as f,a2 as l}from"./index-CoKBrrSw.js";import"./mui-CD71lp6N.js";import p from"./NotFoundScreen-RGfzDsux.js";import{h as m,g as u}from"./core-CGqhbBHO.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3e0b62bd-24c2-4dc7-beeb-ffec556cb516",e._sentryDebugIdIdentifier="sentry-dbid-3e0b62bd-24c2-4dc7-beeb-ffec556cb516")}catch{}})();const _=()=>{const e=m(),t=u(),a=r.useCallback((()=>{window.open("https://www.zeni.ai/demo/request","_blank")}),[]),c=r.useCallback((()=>{(()=>{const n=l(t.state?.pathnameStackToGoBack),d=n.poppedPathname??k();e(d,{state:{pathnameStackToGoBack:n.newStack}})})()}),[]),o=i(t.pathname);return o!=null?s.jsx(b,{menuItem:f(o),onDemoClick:a,onGoBack:c}):s.jsx(p,{})},k=(e=2)=>{let t="../";for(let a=0;a<e;a++)t=`${t}../`;return t};export{_ as F};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as r}from"./sentry-
|
|
1
|
+
import{a as r}from"./sentry-BPfEBx2C.js";import{u as l,h as f,g as m}from"./core-CGqhbBHO.js";import{hV as p,Tv as g,Tw as _}from"./zeni-epic-state-DASyz1An.js";import{u as b,L as h,z as y}from"./index-CoKBrrSw.js";import"./liveblocks-D83XGo_c.js";import"./recharts-2kmMgB1t.js";import"./mui-CD71lp6N.js";import"./analytics-CsbG8awP.js";import"./plaid-C8_LWTII.js";import"./dnd-CyZNzT3I.js";import"./stripe-cKAAJElX.js";import"./lottie-DeqWxWVC.js";import"./lexical-C5ZCOEAv.js";import"./pdf-D4eEcTTi.js";import"./utils-B6XFkcn3.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new e.Error().stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c4d32c4d-de76-41fa-b7d5-e5b16e46ad70",e._sentryDebugIdIdentifier="sentry-dbid-c4d32c4d-de76-41fa-b7d5-e5b16e46ad70")}catch{}})();function j(){const e=l(),n=f(),o=m(),{setLoading:i,clearAllLoading:u}=b(),s=r.useRef(!1);return r.useLayoutEffect((()=>{i(h.CONNECTION_AUTH)}),[i]),r.useEffect((()=>{if(s.current)return;s.current=!0;const a=new URLSearchParams(o.search).get("code"),d=sessionStorage.getItem("hubspot_oauth_pending");if(sessionStorage.removeItem("hubspot_oauth_pending"),a!=null&&d!=null){const t=JSON.parse(d);e(p(t.tenant_id,t.connection_id,g("revenue"),_("hubspot"),{authorization_code:a,client_id:t.client_id,client_secret:t.client_secret,redirect_uri:t.redirect_uri}))}u();const c=y.getActiveTenantForUser();n(c?.tenantEmailDomain!=null?`/${c.tenantEmailDomain}/settings/integrations`:"/",{replace:!0})}),[]),null}export{j as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{m as s}from"./liveblocks-
|
|
1
|
+
import{m as s}from"./liveblocks-D83XGo_c.js";import{j as r}from"./core-CGqhbBHO.js";import{fB as d}from"./zeni-epic-state-DASyz1An.js";import"./sentry-BPfEBx2C.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},o=new e.Error().stack;o&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[o]="a8de6012-72c4-4a84-96b4-0e4c3e78103c",e._sentryDebugIdIdentifier="sentry-dbid-a8de6012-72c4-4a84-96b4-0e4c3e78103c")}catch{}})();const h=()=>r((e=>d(e))).tenantId==null?{inboxNotifications:[],isLoading:!1,isFetchingMore:!1,hasFetchedAll:!0,fetchMore:()=>null}:(()=>{const{inboxNotifications:e,isLoading:o,isFetchingMore:i,hasFetchedAll:t,fetchMore:n}=s();return{inboxNotifications:e,isLoading:o,isFetchingMore:i,hasFetchedAll:t,fetchMore:n}})();export{h as u};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{j as s}from"./liveblocks-D83XGo_c.js";import{a as r}from"./sentry-BPfEBx2C.js";import{u as P,h as L,i as w,j as E,t as z,l as T,s as H,g as W,N as B,n as ie,o as y}from"./core-CGqhbBHO.js";import{a6 as ln,k as p,ao as F,S as m,c9 as dn,ca as un,cb as gn,cc as mn,cd as vn,ce as pn,cf as fn,cg as Sn,ch as hn,ci as Cn,cj as In,ck as En,cl as kn,cm as yn,p as J,cn as xn,co as bn,ac as se,cp as jn,cq as Dn,z as he,cr as Pn,cs as Ln,ct as An,cu as $n,cv as wn,cw as Fn,cx as Rn,cy as Tn,U as On,ag as ft,cz as _n,cA as Mn,cB as Nn,cC as Un,cD as Bn,cE as Vn,cF as Hn,cG as Zn,cH as qn,t as Ye,j as St,cI as Yn,cJ as Kn,cK as Qn,cL as Gn,cM as zn,cN as Wn,cO as Jn}from"./index-CoKBrrSw.js";import"./mui-CD71lp6N.js";import{A as Y}from"./AddressScreen-BD6hfTYm.js";import N from"./NotFoundScreen-RGfzDsux.js";import{YI as Xn,YJ as ei,uv as Ke,YK as De,YL as K,vz as Qe,vG as ti,vL as ht,YM as Pe,YN as Ct,vD as It,YO as Le,vB as Et,yg as ni,vC as ii,YP as Q,uY as ce,vv as oi,x7 as Ge,uX as Ce,YQ as ai,YR as kt,vS as si,YS as G,vZ as ci,YT as ri,YU as yt,YV as xt,y2 as li,YW as ue,YX as ze,YY as bt,uV as di,YZ as ui,uP as gi,Y_ as mi,xk as vi,Y$ as jt,xt as We,Z0 as pi,xq as fi,Z1 as Ae,gd as Si,Z2 as te,Z3 as ne,wc as hi,v1 as Je,Z4 as $e,v6 as Dt,v4 as Ci,u_ as Ii,w5 as Ei,v8 as ki,we as yi,Z5 as Ie,wm as Pt,wk as Ee,F6 as we,xz as Xe,Z6 as xi,uW as Fe,Z7 as Re,vh as ke,ve as ye,vr as Lt,vq as Te,vb as bi,vk as At,vt as oe,fB as Oe,Uv as $t,uZ as _e,vo as ji,vp as Di,vn as Pi,Z8 as Li,vV as et,v_ as Ai,vW as wt,Z9 as Ft,uJ as tt,Za as $i,uF as Rt,Zb as wi,xF as Fi,xJ as Z,xE as Ri,wN as Me,Zc as Ti,Zd as Tt,xS as nt,Ze as Oi,xP as _i,Zf as Ot,wQ as Mi,wR as V,wU as Ni,Zg as _t,x2 as ve,Zh as Ui,wd as Mt,T3 as Nt,Zi as Bi,xc as Vi,Zj as Ut,Zk as Hi,Zl as Zi,Zm as qi,yH as Yi,Zn as Ki,Zo as Bt,xZ as Vt,Zp as Ht,yF as pe,Zq as Qi,yC as Gi,Zr as zi,Zs as Wi,Zt as Ji,Zu as Xi,Zv as eo,Zw as it,Zx as to,yL as no,Zy as Ne,ww as ot,Zz as Ue,ZA as re,wG as Zt,wB as qt,wz as xe,ZB as io,wr as oo,y3 as Yt,yu as at,yp as ao,ZC as so,y4 as co,ZD as ro,yv as lo,yz as uo,ZE as go,ZF as Kt,c7 as mo,m6 as vo,m7 as po,ZG as st,vA as le,gh as fo,tX as So,md as ho,ym as Qt,yX as Co,yj as Gt,u1 as Io,yU as ct,tR as Eo,yR as rt,hP as ko,Tv as lt,Tw as yo,Fi as zt,hH as xo,ZH as bo,Uk as jo,ZI as Do,z1 as fe,z2 as Po,ZJ as Lo,ZK as Wt,y_ as Ao,ZL as $o,ZM as wo,xg as Fo,ZN as Ro}from"./zeni-epic-state-DASyz1An.js";import{M as To}from"./MobileAppDrawer-Dt611RZ9.js";import{q as de}from"./QBOConnectionScreen-Ck8uFfex.js";import"./recharts-2kmMgB1t.js";import"./analytics-CsbG8awP.js";import"./plaid-C8_LWTII.js";import"./dnd-CyZNzT3I.js";import"./stripe-cKAAJElX.js";import"./lottie-DeqWxWVC.js";import"./lexical-C5ZCOEAv.js";import"./pdf-D4eEcTTi.js";import"./utils-B6XFkcn3.js";import"./InboxNotificationsProvider-DDRknvRh.js";import"./useTaskManagerAccess-Dl-8FUHJ.js";import"./empty-CIUWZs8G.js";import"./pdf-lib-Bd7L71QV.js";import"./index-QncEC5ur.js";import"./url-DSofFSVz.js";import"./index-BcNWzeQF.js";import"./decodeURIComponentSafe-6FvQaIqS.js";(function(){try{var n=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new n.Error().stack;e&&(n._sentryDebugIds=n._sentryDebugIds||{},n._sentryDebugIds[e]="07c54213-dc12-4ee7-a3a6-443f2d2a41bb",n._sentryDebugIdIdentifier="sentry-dbid-07c54213-dc12-4ee7-a3a6-443f2d2a41bb")}catch{}})();const $=({event:n,isReady:e=!0})=>e?s.jsx(ln,{analytics:p,onLoad:t=>t.trackPageLoaded(n)}):null;function U(...n){return n.some((e=>e==="Error"))}function Oo(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),[o,a]=r.useState(""),[c,d]=r.useState(""),[l,v]=r.useState(null),u=r.useMemo((()=>l!=null?{dir:l.direction,field:l.columnKey}:void 0),[l]),{fetchState:g,hasMore:f,items:S,nextCursor:I,auditLogEntityRouteOptions:j,auditLogListSortFieldOptions:k}=E(Xn),x=r.useMemo((()=>({search:c.trim()!==""?c.trim():void 0})),[c]),b=`/${t??""}/invoicing`,C=r.useCallback(((O,R)=>{const M=ei(b,O,R,j);M!=null&&(p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{entity:O,entityId:R,fromScreen:"audit_log"}),e(M))}),[j,e,b]);r.useEffect((()=>{const O=setTimeout((()=>d(o)),300);return()=>clearTimeout(O)}),[o]),r.useEffect((()=>{i&&n(Ke({filters:x,keepExistingListItems:!1,sort:u}))}),[i,x,u,n]);const D=g==="Not-Started"||g==="In-Progress"&&S.length===0,h=g==="In-Progress"&&S.length>0,_=g==="Completed";return U(g)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingAuditLogPage,isReady:_}),s.jsx(dn,{auditLogEntityRouteOptions:j,auditLogListSortFieldOptions:k,entries:S,hasMore:f,isLoading:D,isLoadingMore:h,searchValue:o,sortState:l,onEntityLinkClick:C,onLoadMore:()=>{f&&I!=null&&n(Ke({cursor:I,filters:x,keepExistingListItems:!0,sort:u}))},onSearchChange:a,onSortChange:v})]})}const _o=new Set(["plan"]),Jt=[],Mo=Ct((n=>n.length>0?n:Jt),mn),No=Ct((n=>n.length>0?n:Jt),gn),Uo=T((function(n,e){const{view:t}=e;return{groupedAccountOptions:Mo(t.qboAccountHierarchy),groupedClassOptions:No(t.qboClassHierarchy),catalogItemLifecycleActionOptions:t.catalogItemLifecycleActionOptions,catalogProductLifecycleActionOptions:t.catalogProductLifecycleActionOptions,tierTypeOptionsByPricingModel:t.catalogTierTypeOptionsByPricingModel,periodUnitOptions:t.periodUnitOptions,trialEndActionOptions:t.trialEndActionOptions,trialUnitOptions:t.trialUnitOptions,typeOptions:t.typeOptions,isLoading:e.isLoading,isRunningLifecycleAction:t.actionState.fetchState==="In-Progress",isSaving:t.fetchState==="In-Progress",itemId:e.itemId,localData:t.localData,plan:t.plan}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,{itemId:i}=e;return{onBack:()=>e.navigate(`${t}/catalog`),onLifecycleAction:i!==""?o=>{i!==""&&n(It({action:o,id:i}))}:void 0,onEditChange:o=>{i!==""&&n(Pe({id:i,localData:o}))},onSaveEdit:()=>{p.trackInvoicingActionClick(m.Event.invoicingCatalogItemEdited,{itemId:i}),n(ht({id:i}))},onSubFamilyLifecycleAction:(o,a)=>{i!==""&&n(ti({action:a,id:o,parentItemId:i}))}}}))(un);function Bo(){const n=P(),e=L(),{item_id:t,tenantEmailDomain:i}=w(),[o]=z(),{areTenantIdsInSync:a}=F(),c=(d=o.get("kind"))!=null&&_o.has(d)?d:"plan";var d;const l=E((k=>De(k,t))),{pageFetchState:v,plan:u}=l,g=v.fetchState;r.useEffect((()=>(n(K()),()=>{n(K())})),[n]),r.useEffect((()=>{a&&n(Qe({id:t,kind:c}))}),[a,t,c,n]);const[f,S]=r.useState(0);r.useEffect((()=>{l.fetchState==="Completed"&&(n(K()),n(Qe({cacheOverride:!0,id:t,kind:c})),S((k=>k+1)))}),[l.fetchState,n,t,c]);const I=u==null&&(g==="Not-Started"||g==="In-Progress"),j=g==="Completed";return U(g)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingCatalogItemDetailPage,isReady:j}),s.jsx(Uo,{navigate:e,tenantEmailDomain:i,itemId:t??"",kind:c,isLoading:I,view:l},f)]})}function Be(n={}){const{enabled:e=!0,fetchSyncHealth:t=!1,loadAccountingPickers:i=!1,reuseCached:o=!1}=n,a=P(),{areTenantIdsInSync:c}=F(),d=E(Le),l=d.connection?.connected===!0,v=d.connectionFetchState.fetchState;return r.useEffect((()=>{e&&c&&(o&&v!=="Not-Started"||a(Et()),t&&a(ni()))}),[c,a,e,t,o]),r.useEffect((()=>{e&&c&&l&&i&&a(ii())}),[c,a,e,l,i]),{isQboConnected:l,qboView:d}}function Ve(n,e=!1){const t=P(),i=E((c=>Q(c).productNextCursor!=null)),o=E((c=>Q(c).productNextCursor)),a=E((c=>Q(c).productFetchState.fetchState));r.useEffect((()=>{n&&(e&&a!=="Not-Started"||t(ce({filters:{type:"addon|charge"},keepExistingListItems:!1})))}),[n,t,e]),r.useEffect((()=>{n&&a!=="In-Progress"&&i&&o!=null&&t(ce({cursor:o,filters:{type:"addon|charge"},keepExistingListItems:!0}))}),[n,t,a,i,o])}const Vo=new Set(["addon","charge","plan"]),Ho=new Set(["plan"]),Zo=T((function(n,e){const t=De(n,e.itemId);return{fieldHelp:t.fieldHelp,isQboPickerDataLoading:t.isQboPickerDataLoading,qboClassHierarchy:t.qboClassHierarchy,qboAccountHierarchy:t.qboAccountHierarchy,applicabilityValues:t.applicabilityValues,periodUnitOptions:t.periodUnitOptions,trialEndActionOptions:t.trialEndActionOptions,trialUnitOptions:t.trialUnitOptions,typeOptions:t.typeOptions,applicableItemOptions:t.applicableItemOptions,defaultType:e.isEdit?void 0:e.defaultType,errorMessage:t.fetchState==="Error"?t.error?.message??"Failed to save catalog item.":void 0,isSubmitting:t.fetchState==="In-Progress",localData:t.localData,mode:t.mode,pricingModelValues:t.pricingModelValues,prorationValues:t.prorationValues,tierTypeOptionsByPricingModel:t.catalogTierTypeOptionsByPricingModel,tierTypeValues:t.tierTypeValues}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,i=e.isEdit?"edit":"create",{itemId:o}=e,a=o!=null?`${t}/catalog/${encodeURIComponent(o)}`:`${t}/catalog`;return{onBack:()=>e.navigate(a),onCancel:()=>{p.trackInvoicingActionClick(m.Event.invoicingCatalogItemFormCancelled),n(K()),e.navigate(`${t}/catalog`)},onChange:c=>{n(Pe({id:o,localData:c}))},onSubmit:()=>{p.trackInvoicingActionClick(m.Event.invoicingCatalogItemSaved,{mode:i}),n(ht({id:o}))}}}))(vn);function qo(){const n=P(),e=L(),{item_id:t,tenantEmailDomain:i}=w(),[o]=z(),{areTenantIdsInSync:a}=F(),c=t!=null,d=o.get("type"),l=d!=null&&Vo.has(d)?d:void 0,v=(u=o.get("kind"))!=null&&Ho.has(u)?u:"plan";var u;const g=E((f=>De(f,t)));return Ve(a,!0),Be({loadAccountingPickers:!0,reuseCached:!0}),r.useEffect((()=>{a&&t!=null&&n(oi({id:t,kind:v}))}),[a,t,v,n]),r.useEffect((()=>{c||l==null||g.localData.catalogType===l||n(Pe({localData:{...g.localData,catalogType:l}}))}),[c,l,g.localData?.catalogType,n]),r.useEffect((()=>{if(g.fetchState==="Completed"){const f=g.savedItemId??t,S=f!=null?`/${i}/invoicing/catalog/${encodeURIComponent(f)}`:`/${i}/invoicing/catalog`;e(S),n(K())}}),[g.fetchState,g.savedItemId,t,n,e,i]),s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingCatalogItemFormPage}),s.jsx(Zo,{navigate:e,tenantEmailDomain:i,defaultType:l,isEdit:c,itemId:t})]})}const Yo={addons:"addon",all:"item",charges:"charge",plans:"plan"},Ko=T((function(n,e){const t=Q(n),i=e.activeTab==="plans",o=e.activeTab==="all",a=i?t.plans:o?[...t.plans,...t.products]:t.products,c=i||o&&t.fetchState==="In-Progress"?t.fetchState:t.productFetchState.fetchState;return{catalogItemLifecycleActionOptions:t.catalogItemLifecycleActionOptions,counts:t.count,countsLoading:t.countsFetchState.fetchState==="Not-Started"||t.countsFetchState.fetchState==="In-Progress",hasMore:i?t.planNextCursor!=null:o&&t.planNextCursor!=null||t.productNextCursor!=null,isLoading:c==="Not-Started"||c==="In-Progress"&&a.length===0,isLoadingMore:c==="In-Progress"&&a.length>0,plans:t.plans,productColumns:t.productColumns,products:t.products}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,i=e.activeTab==="plans",o=e.activeTab==="all",a=i?e.planNextCursor:e.productNextCursor;return{activeTab:e.activeTab,searchValue:e.searchValue,sortState:e.sortState,onSearchChange:e.onSearchChange,onSortChange:e.onSortChange,onTabChange:e.onTabChange,onImportCsv:()=>{p.trackInvoicingActionClick(m.Event.invoicingImportCsvClicked,{entity:"catalog"}),e.navigate(`${t}/data_import`)},onAddItem:()=>{const c=Yo[e.activeTab];p.trackInvoicingActionClick(m.Event.invoicingAddCatalogItemClicked,{itemType:c}),e.navigate(`${t}/catalog/new?type=${c}`)},onItemClick:(c,d)=>{p.trackInvoicingActionClick(m.Event.invoicingCatalogItemRowClicked,{itemId:d}),e.navigate(`${t}/catalog/${encodeURIComponent(d)}`)},onCatalogItemLifecycleAction:(c,d)=>{n(It({action:ai(d),id:c}))},onLoadMore:()=>{if(o)return e.planNextCursor!=null&&n(Ce({cursor:e.planNextCursor,filters:e.planFilters,keepExistingListItems:!0,sort:e.sort})),void(e.productNextCursor!=null&&n(ce({cursor:e.productNextCursor,filters:e.productFilters,keepExistingListItems:!0,sort:e.sort})));a!=null&&n(i?Ce({cursor:a,filters:e.planFilters,keepExistingListItems:!0,sort:e.sort}):ce({cursor:a,filters:e.productFilters,keepExistingListItems:!0,sort:e.sort}))}}}))(pn);function Qo(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),[o,a]=r.useState(""),[c,d]=r.useState("plans"),[l,v]=r.useState(""),[u,g]=r.useState(null),f=r.useMemo((()=>u!=null?{dir:u.direction,field:u.columnKey}:void 0),[u]),S=l.trim()!==""?l.trim():void 0,I=r.useMemo((()=>({search:S,type:"plan"})),[S]),j=r.useMemo((()=>({search:S,type:"addon|charge"})),[S]),k=E((O=>Q(O))),x=k.planFilters.search,b=k.planSort,C=k.planNextCursor,D=k.productNextCursor,h=k.fetchState==="Completed",_=k.runningActionId??null;return r.useEffect((()=>{const O=setTimeout((()=>v(o)),300);return()=>clearTimeout(O)}),[o]),r.useEffect((()=>{i&&n(Ge({cacheOverride:!1,planFilters:I,productFilters:j,planSort:f,productSort:f}))}),[i,n,I,j,f]),r.useEffect((()=>{i&&(S!==x||f?.field!==b?.field||f?.dir!==b?.dir)&&n(Ge({cacheOverride:!0,planFilters:I,productFilters:j,planSort:f,productSort:f}))}),[x,b,i,n,I,j,S,f]),U(k.fetchState)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingCatalogPage,isReady:h}),s.jsx(Ko,{navigate:e,tenantEmailDomain:t,activeTab:c,searchValue:o,sortState:u,planFilters:I,productFilters:j,sort:f,planNextCursor:C,productNextCursor:D,runningCatalogItemActionId:_,onSearchChange:a,onTabChange:d,onSortChange:g})]})}const Go=T((function(n,e){const t=kt(n,e.couponId);return{fieldHelp:t.fieldHelp,applyOnOptions:t.applyOnOptions,discountTypeOptions:t.discountTypeOptions,durationTypeOptions:t.durationTypeOptions,errorMessage:t.fetchState==="Error"?t.error?.message??"Failed to save coupon.":void 0,isSubmitting:t.fetchState==="In-Progress",localData:t.localData,mode:t.mode,periodUnitOptions:t.periodUnitOptions}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,{couponId:i}=e,o=i!=null?"edit":"create",a=i!=null?`${t}/discounts/${encodeURIComponent(i)}`:`${t}/discounts`;return{onBack:()=>e.navigate(a),onCancel:()=>{p.trackInvoicingActionClick(m.Event.invoicingCouponFormCancelled),n(G()),e.navigate(`${t}/discounts`)},onChange:c=>{n(ri({id:i,localData:c}))},onSubmit:()=>{p.trackInvoicingActionClick(m.Event.invoicingCouponSaved,{mode:o}),n(ci({id:i}))}}}))(fn);function zo(){const n=P(),e=L(),{coupon_id:t,tenantEmailDomain:i}=w(),{areTenantIdsInSync:o}=F(),{fetchState:a,savedCouponId:c}=E((d=>kt(d,t)));return r.useEffect((()=>{o&&t!=null&&n(si({id:t}))}),[o,t,n]),r.useEffect((()=>{if(a==="Completed"){const d=c??t,l=d!=null?`/${i}/invoicing/discounts/${encodeURIComponent(d)}`:`/${i}/invoicing/discounts`;e(l),n(G())}}),[a,c,t,n,e,i]),s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingCouponFormPage}),s.jsx(Go,{couponId:t,navigate:e,tenantEmailDomain:i})]})}const Wo=T((function(n){const e=yt(n);return{fieldHelp:e.fieldHelp,customers:e.customers,planNames:e.planNames,errorMessage:e.fetchState==="Error"?e.error?.message??"Failed to create invoice. Please try again.":void 0,isSubmitting:e.fetchState==="In-Progress",localData:e.localData,settings:e.settings}}),(function(n){return{dispatch:n}}),(function(n,{dispatch:e},t){const i=`/${t.tenantEmailDomain}/invoicing`;return{...n,onCancel:()=>{p.trackInvoicingActionClick(m.Event.invoicingCreateInvoiceCancelled),t.navigate(`${i}/invoices`)},onChange:o=>{e(bt(o))},onSubmit:()=>{const o=ui(n.localData);p.trackInvoicingActionClick(m.Event.invoicingInvoiceCreated,{customerId:o.customer_id,lineItemCount:o.line_items?.length}),e(gi(o))}}}))(hn);function Jo(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),[i]=z(),{areTenantIdsInSync:o}=F(),a=i.get("customerId"),c=E((C=>yt(C))),d=c.fetchState,l=c.localData,v=c.savedInvoiceId,u=E(xt),g=E((C=>li(C))),f=E(ue),S=g.fetchState==="Not-Started"||g.fetchState==="In-Progress"&&u==null,I=f.fetchState==="Not-Started"||f.fetchState==="In-Progress"&&f.customers.length===0,j=S||I,k=g.fetchState==="Completed"&&f.fetchState==="Completed";r.useEffect((()=>(n(ze()),()=>{n(ze())})),[n]);const x=r.useRef(!1);r.useEffect((()=>{x.current||a==null||a===""||l.customerId!==""||(x.current=!0,n(bt({...l,customerId:a})))}),[a,l,n]),r.useEffect((()=>{o&&n(di({cacheOverride:!1}))}),[o,n]);const b=r.useRef(d);return r.useEffect((()=>{const C=b.current;if(b.current=d,C!=="Completed"&&d==="Completed"){const D=v!=null?`/${t}/invoicing/invoices/${encodeURIComponent(v)}`:`/${t}/invoicing/invoices`;e(D)}}),[d,v,e,t]),s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingCreateInvoicePage,isReady:k}),j?s.jsx(Sn,{}):s.jsx(Wo,{navigate:e,tenantEmailDomain:t})]})}const Xo=T((function(n,e){const{detailView:t}=e;return{fieldHelp:e.detailView.fieldHelp,creditNote:t.creditNote,creditNoteId:e.creditNoteId,isLoading:t.fetchState==="Not-Started"||t.fetchState==="In-Progress"}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`;return{onBack:()=>e.navigate(`${t}/credits`),onCustomerClick:i=>{p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{customerId:i,fromScreen:"credit_detail",toScreen:"customer"}),e.navigate(`${t}/customers/${encodeURIComponent(i)}`)},onInvoiceClick:i=>{p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{fromScreen:"credit_detail",invoiceId:i,toScreen:"invoice"}),e.navigate(`${t}/invoices/${encodeURIComponent(i)}`)},onSubscriptionClick:i=>{p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{fromScreen:"credit_detail",subscriptionId:i,toScreen:"subscription"}),e.navigate(`${t}/subscriptions/${encodeURIComponent(i)}`)}}}))(Cn);function ea(){const n=P(),e=L(),{credit_note_id:t,tenantEmailDomain:i}=w(),{areTenantIdsInSync:o}=F(),a=E((d=>mi(d,t??""))),c=a.fetchState==="Completed";return r.useEffect((()=>{o&&t!=null&&n(vi({id:t}))}),[o,t,n]),U(a.fetchState)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingCreditDetailPage,isReady:c}),s.jsx(Xo,{navigate:e,tenantEmailDomain:i,creditNoteId:t??"",detailView:a})]})}const ta=T((function(n){const e=jt(n),{fetchState:t}=e;return{columns:e.columns,counts:e.count,countsLoading:e.countsFetchState.fetchState==="Not-Started"||e.countsFetchState.fetchState==="In-Progress",creditNotes:e.creditNotes,hasMore:e.nextCursor!=null,isLoading:t==="Not-Started"||t==="In-Progress"&&e.creditNotes.length===0,isLoadingMore:t==="In-Progress"&&e.creditNotes.length>0,tabIds:e.tabIds}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`;return{activeStatus:e.activeStatus,searchValue:e.searchValue,sortState:e.sortState,onSearchChange:e.onSearchChange,onSortChange:e.onSortChange,onStatusChange:e.onStatusChange,onImportCsv:()=>{p.trackInvoicingActionClick(m.Event.invoicingImportCsvClicked,{entity:"credits"}),e.navigate(`${t}/data_import`)},onCreditNoteClick:i=>{p.trackInvoicingActionClick(m.Event.invoicingCreditNoteRowClicked,{creditNoteId:i}),e.navigate(`${t}/credits/${encodeURIComponent(i)}`)},onLoadMore:()=>{e.nextCursor!=null&&n(fi({cursor:e.nextCursor,filters:e.filters,keepExistingListItems:!0,sort:e.sort}))}}}))(In);function na(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),[o,a]=r.useState(""),[c,d]=r.useState(""),[l,v]=r.useState(null),u=r.useMemo((()=>l!=null?{dir:l.direction,field:l.columnKey}:void 0),[l]),g=r.useMemo((()=>({search:c.trim()!==""?c.trim():void 0})),[c]),{activeStatus:f,appliedSearch:S,appliedSort:I,nextCursor:j,creditNoteListFetchState:k}=E((b=>{const C=jt(b);return{activeStatus:C.activeTab,appliedSearch:C.filters.search,appliedSort:C.sort,nextCursor:C.nextCursor,creditNoteListFetchState:C.fetchState}}),H),x=k==="Completed";return r.useEffect((()=>{const b=setTimeout((()=>d(o)),300);return()=>clearTimeout(b)}),[o]),r.useEffect((()=>{i&&n(We({cacheOverride:!1}))}),[i,n]),r.useEffect((()=>{i&&(g.search!==S||u?.field!==I?.field||u?.dir!==I?.dir)&&n(We({cacheOverride:!0,filters:g,sort:u}))}),[i,n,g,u,S,I]),U(k)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingCreditsListPage,isReady:x}),s.jsx(ta,{navigate:e,tenantEmailDomain:t,activeStatus:f,searchValue:o,sortState:l,filters:g,sort:u,nextCursor:j,onSearchChange:a,onStatusChange:b=>n(pi(b)),onSortChange:v})]})}const Xt=(n,e,t)=>{const i=`/${n}/invoicing/customers/`;return t!=null?`${i}${encodeURIComponent(t)}/${e}/`:`${i}new/${e}/`},ia=T((function(n,e){const{editView:t,hasLoadedRecord:i}=e;return{fieldHelp:t.fieldHelp,billingAddressLabel:t.billingAddressLabel,customerTypeOptions:t.customerTypeOptions,netTermDayOptions:t.netTermDayOptions,taxabilityOptions:t.taxabilityOptions,customer:t.record.invoicingCustomer,invoices:t.record.invoices.slice(0,5),isLoading:!i&&(t.pageFetchState.fetchState==="Not-Started"||t.pageFetchState.fetchState==="In-Progress"),hasPaymentLinkEmailPreviewFailed:t.emailPreviewFetchState.fetchState==="Error",isPaymentLinkEmailPreviewLoading:t.emailPreviewFetchState.fetchState==="In-Progress",isSaving:t.fetchState==="In-Progress",paymentLinkEmailPreview:t.emailPreview,isSendingPaymentLink:t.record.sendLinkState.fetchState==="In-Progress",localData:t.localData,paymentMethods:t.record.paymentMethods,sendPaymentLinkErrorMessage:t.record.sendLinkState.fetchState==="Error"?t.record.sendLinkState.error?.message??"Failed to send payment link.":void 0,sentPaymentLinkEmail:t.record.sendLinkState.fetchState==="Completed"?t.record.sentPaymentLinkEmail:void 0,sentPaymentLinkMagicUrl:t.record.sendLinkState.fetchState==="Completed"?t.record.sentPaymentLinkMagicUrl:void 0,stripeConnected:t.record.stripeConnected}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,{customerId:i}=e;return{onBack:()=>e.navigate(`${t}/customers`),onChange:o=>{n(Ie({id:i,localData:o}))},onCreateInvoice:()=>e.navigate(`${t}/invoices/create`),onInvoiceClick:o=>{p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{fromScreen:"customer_detail",invoiceId:o,toScreen:"invoice"}),e.navigate(`${t}/invoices/${encodeURIComponent(o)}`)},onCreatePromotionalCredits:()=>e.onCreatePromotionalCredits(),onNewSubscription:()=>e.navigate(`${t}/subscriptions/new`),onOpenAddress:()=>{const o=Xt(e.tenantEmailDomain??"",Ee,i),a=J(e.location.state?.pathnameStackToGoBack,e.location.pathname);e.navigate(o,{state:{pathnameStackToGoBack:a}})},onOpenPaymentSettings:()=>e.navigate(`${t}/settings/payment-destination`),onSaveEdit:o=>{p.trackInvoicingActionClick(m.Event.invoicingCustomerEdited,{customerId:i}),n(Ie({id:i,localData:o})),n(Pt({id:i}))},onFetchPaymentLinkEmailPreview:o=>n(yi({cacheOverride:o,customerId:i})),onSendPaymentLink:(o,a,c)=>n(ki({body:c,customerId:i,email:o,subject:a})),onSubscriptionClick:o=>{p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{fromScreen:"customer_detail",subscriptionId:o,toScreen:"subscription"}),e.navigate(`${t}/subscriptions/${encodeURIComponent(o)}`)}}}))(yn);function oa(){const n=P(),e=L(),t=W(),{customer_id:i,tenantEmailDomain:o}=w(),{areTenantIdsInSync:a}=F(),c=E((M=>Ae(M,i))),d=c.pageFetchState.fetchState,l=d==="Completed",[v,u]=r.useState(!1),[g,f]=r.useState(!1),[S,I]=r.useState(void 0);r.useEffect((()=>{i!=null&&c.record.fetchState==="Completed"&&I(i)}),[i,c.record.fetchState]);const j=S===i,{plaidTokenFetchState:k,promotionalCreditSubmitState:x}=c,{paymentMethodSaveState:b,setupIntentFetchState:C,stripeConnected:D}=c.record,h=r.useRef(c.record.sendLinkState.fetchState);r.useEffect((()=>{const M=c.record.sendLinkState.fetchState;h.current!=="Error"&&M==="Error"&&n(Si({messageSection:"common",messageText:"failed",showStatusIcon:!0,type:"error"})),h.current=M}),[n,c.record.sendLinkState.fetchState]);const _=C.fetchState==="Error"?C.error?.message??"Failed to start card setup.":b.fetchState==="Error"?b.error?.message??"Failed to save payment method.":k.fetchState==="Error"?k.error?.message??"Failed to connect bank account.":void 0;r.useEffect((()=>(n(te()),n(ne()),()=>{n(te()),n(ne())})),[n]),r.useEffect((()=>{t.state?.openPromotionalCreditsDialog===!0&&(f(!0),e(t.pathname,{replace:!0,state:null}))}),[t.pathname,t.state,e]),r.useEffect((()=>{a&&i!=null&&n(hi({id:i}))}),[a,i,n]),r.useEffect((()=>{a&&i!=null&&D&&n(Je({customerId:i}))}),[a,i,n,D]);const[O,R]=r.useState(0);return r.useEffect((()=>{c.fetchState==="Completed"&&(n($e()),i!=null&&n(Dt({id:i})),R((M=>M+1)))}),[c.fetchState,n,i]),U(d)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingCustomerDetailPage,isReady:l}),s.jsx(ia,{customerId:i??"",editView:c,hasLoadedRecord:j,location:t,navigate:e,tenantEmailDomain:o,onAddPaymentMethod:()=>{n(te()),i!=null&&D&&n(Je({customerId:i})),u(!0)},onCreatePromotionalCredits:()=>{n(ne()),f(!0)}},O),s.jsx(En,{errorMessage:_,isCreatingSetupIntent:C.fetchState==="In-Progress",isSaving:b.fetchState==="In-Progress",open:v,plaidLinkToken:c.record.plaidLinkToken,saveSucceeded:b.fetchState==="Completed",setupIntent:c.record.setupIntent,stripeConnected:D,onChooseCard:()=>{i!=null&&n(Ii({customerId:i}))},onClose:()=>{u(!1),n(te())},onSavePaymentMethod:M=>{i!=null&&n(Ci({customerId:i,data:M}))}}),s.jsx(kn,{currentBalance:c.record.invoicingCustomer?.promotionalCredits,currencyCode:c.record.invoicingCustomer?.preferredCurrencyCode,errorMessage:x.fetchState==="Error"?x.error?.message??"Failed to add promotional credits.":void 0,isSubmitting:x.fetchState==="In-Progress",open:g,submitSucceeded:x.fetchState==="Completed",onClose:()=>{f(!1),n(ne())},onSubmit:({amount:M,description:ee})=>{i!=null&&n(Ei({amount:M,customerId:i,currencyCode:c.record.invoicingCustomer?.preferredCurrencyCode,description:ee}))}})]})}const aa=T((function(n,e){const t=Ae(n,e.customerId);return{fieldHelp:t.fieldHelp,billingAddressLabel:t.billingAddressLabel,customerTypeOptions:t.customerTypeOptions,netTermDayOptions:t.netTermDayOptions,taxabilityOptions:t.taxabilityOptions,errorMessage:t.fetchState==="Error"?t.error?.message??"Failed to save customer.":void 0,isSubmitting:t.fetchState==="In-Progress",localData:t.localData,mode:t.mode}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,{customerId:i}=e,o=i!=null?"edit":"create",a=i!=null?`${t}/customers/${encodeURIComponent(i)}`:`${t}/customers`;return{onBack:()=>e.navigate(a),onCancel:()=>{p.trackInvoicingActionClick(m.Event.invoicingCustomerFormCancelled),n($e()),n(we(Ee)),e.navigate(`${t}/customers`)},onChange:c=>{n(Ie({id:i,localData:c}))},onOpenAddress:()=>{const c=Xt(e.tenantEmailDomain??"",Ee,i),d=J(e.location.state?.pathnameStackToGoBack,e.location.pathname);e.navigate(c,{state:{pathnameStackToGoBack:d}})},onSubmit:()=>{p.trackInvoicingActionClick(m.Event.invoicingCustomerSaved,{mode:o}),n(Pt({id:i}))}}}))(xn);function sa(){const n=P(),e=L(),t=W(),{customer_id:i,tenantEmailDomain:o}=w(),{areTenantIdsInSync:a}=F(),{fetchState:c,savedCustomerId:d}=E((l=>Ae(l,i)));return r.useEffect((()=>{a&&i!=null&&n(Dt({id:i}))}),[a,i,n]),r.useEffect((()=>{if(c==="Completed"){const l=d??i,v=l!=null?`/${o}/invoicing/customers/${encodeURIComponent(l)}`:`/${o}/invoicing/customers`;e(v),n($e())}}),[c,d,i,n,e,o]),s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingCustomerFormPage}),s.jsx(aa,{customerId:i,location:t,navigate:e,tenantEmailDomain:o})]})}const ca=T((function(n){const e=ue(n),{fetchState:t}=e;return{addressesById:n.addressState.addressesById,columns:e.columns,counts:e.count,countsLoading:e.countsFetchState.fetchState==="Not-Started"||e.countsFetchState.fetchState==="In-Progress",customers:e.customers,hasMore:e.nextCursor!=null,isLoading:t==="Not-Started"||t==="In-Progress"&&e.customers.length===0,isLoadingMore:t==="In-Progress"&&e.customers.length>0,tabIds:e.tabIds}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`;return{activeStatus:e.activeStatus,searchValue:e.searchValue,sortState:e.sortState,onSearchChange:e.onSearchChange,onStatusChange:e.onStatusChange,onSortChange:e.onSortChange,onAddCustomer:()=>{p.trackInvoicingActionClick(m.Event.invoicingAddCustomerClicked),e.navigate(`${t}/customers/new`)},onCustomerClick:i=>{p.trackInvoicingActionClick(m.Event.invoicingCustomerRowClicked,{customerId:i}),e.navigate(`${t}/customers/${encodeURIComponent(i)}`)},onImportCsv:()=>{p.trackInvoicingActionClick(m.Event.invoicingImportCsvClicked,{entity:"customers"}),e.navigate(`${t}/data_import`)},onRowAction:(i,o)=>{switch(o){case"createInvoice":e.navigate(`${t}/invoices/create?customerId=${encodeURIComponent(i)}`);break;case"newSubscription":e.navigate(`${t}/subscriptions/new?customerId=${encodeURIComponent(i)}`);break;case"createPromotionalCredits":e.navigate(`${t}/customers/${encodeURIComponent(i)}`,{state:{openPromotionalCreditsDialog:!0}})}},onLoadMore:()=>{e.nextCursor!=null&&n(Fe({cursor:e.nextCursor,filters:e.filters,keepExistingListItems:!0,sort:e.sort}))}}}))(bn);function ra(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),[o,a]=r.useState(""),[c,d]=r.useState(""),[l,v]=r.useState(null),u=r.useMemo((()=>l!=null?{dir:l.direction,field:l.columnKey}:void 0),[l]),g=r.useMemo((()=>({search:c.trim()!==""?c.trim():void 0})),[c]),{activeStatus:f,appliedSearch:S,appliedSort:I,nextCursor:j,customerListFetchState:k}=E((b=>{const C=ue(b);return{activeStatus:C.activeTab,appliedSearch:C.filters.search,appliedSort:C.sort,nextCursor:C.nextCursor,customerListFetchState:C.fetchState}}),H),x=k==="Completed";return r.useEffect((()=>{const b=setTimeout((()=>d(o)),300);return()=>clearTimeout(b)}),[o]),r.useEffect((()=>{i&&n(Xe({cacheOverride:!1}))}),[i,n]),r.useEffect((()=>{i&&(g.search!==S||u?.field!==I?.field||u?.dir!==I?.dir)&&n(Xe({cacheOverride:!0,filters:g,sort:u}))}),[i,n,g,u,S,I]),U(k)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingCustomersListPage,isReady:x}),s.jsx(ca,{navigate:e,tenantEmailDomain:t,activeStatus:f,searchValue:o,sortState:l,filters:g,sort:u,nextCursor:j,onSearchChange:a,onStatusChange:b=>n(xi(b)),onSortChange:v})]})}const be=(n,e)=>e==null?void 0:n.sessionDetail[e]??n.sessions.find((t=>t.id===e)),la=T((function(n,e){const{filters:t,sessionId:i,view:o}=e,a=i==null?void 0:o.diagnosticsBySession[i],c=a?.fetch.fetchState??"Not-Started";return{diagnostics:a?.items??[],errorMessage:c==="Error"?a?.fetch.error?.message:void 0,expired:a?.expired??!1,filters:t,hasMore:a?.nextCursor!=null,isLoading:c==="Not-Started"||c==="In-Progress",isLoadingMore:c==="In-Progress"&&(a?.items.length??0)>0,session:be(o,i)}}),(function(n,e){const{downloadUrl:t,filters:i,navigate:o,sessionId:a,tenantEmailDomain:c,view:d}=e,l=a==null?void 0:d.diagnosticsBySession[a],v=be(d,a),u=d.actionStateByKind.retry?.fetchState==="In-Progress",g=d.actionStateByKind.rollback?.fetchState==="In-Progress",f=v?.status==="done"&&v.rollback_available_until!=null&&new Date(v.rollback_available_until).getTime()>Date.now()&&!g;return{onBack:()=>o(`/${c}/invoicing/data_import`),onDownloadCsv:()=>{t!=null&&window.open(t,"_blank","noopener")},onFiltersChange:e.onFiltersChange,onLoadMore:()=>{a!=null&&l?.nextCursor!=null&&n(ye({...i,cursor:l.nextCursor,sessionId:a}))},onRetry:v?.status!=="failed"||u?void 0:()=>{a!=null&&n(Te(a))},onRollback:f?()=>{a!=null&&n(Lt(a))}:void 0}}))(jn);function da(){const n=P(),e=L(),{sessionId:t,tenantEmailDomain:i}=w(),{areTenantIdsInSync:o}=F(),[a,c]=r.useState({}),d=E(Re),l=be(d,t),v=t==null?void 0:d.diagnosticsBySession[t];r.useEffect((()=>{o&&t!=null&&n(ke(t))}),[o,n,t]),r.useEffect((()=>{if(!o||t==null)return;const S=setTimeout((()=>{n(ye({...a,sessionId:t}))}),300);return()=>clearTimeout(S)}),[o,n,a,t]);const u=l?.status==="scanning"||l?.status==="importing";r.useEffect((()=>{if(!o||t==null||!u)return;const S=setInterval((()=>{n(ke(t)),n(ye({...a,sessionId:t}))}),3e3);return()=>clearInterval(S)}),[o,n,a,u,t]);const g=r.useMemo((()=>{if(t==null)return;const S=new URLSearchParams;a.moduleId!=null&&S.set("module_id",a.moduleId),a.level!=null&&S.set("level",a.level),a.outcome!=null&&S.set("outcome",a.outcome),a.search!=null&&a.search.trim()!==""&&S.set("search",a.search.trim());const I=S.toString();return`${se?.invoicingMicroServiceBaseUrl??""}/1.0/data-import/${encodeURIComponent(t)}/issues.csv${I===""?"":`?${I}`}`}),[a,t]),f=v?.fetch.fetchState??"Not-Started";return U(f)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingDataImportHubPage,isReady:l!=null&&f!=="Not-Started"}),s.jsx(la,{downloadUrl:g,filters:a,navigate:e,sessionId:t,tenantEmailDomain:i,view:d,onFiltersChange:c})]})}const en=n=>`invoicing_active_migration:${n}`,ae=(n,e)=>{if(n!=null&&n!=="")try{const t=en(n);e==null?sessionStorage.removeItem(t):sessionStorage.setItem(t,e)}catch{}},ua=T((function(n,e){const{sessions:t,sessionsFetch:i,statusFetch:o,statusRows:a}=e.view;return{isLoading:!(o.fetchState!=="Not-Started"&&o.fetchState!=="In-Progress"||a.length!==0||i.fetchState!=="Not-Started"&&i.fetchState!=="In-Progress"),sessions:t,statusRows:a}}),(function(n,e){const{navigate:t,tenantEmailDomain:i}=e,o=a=>{const c=a??null;n(oe(c)),ae(i,c),t(`/${i}/invoicing/data_import/migrate`)};return{onContinueSession:a=>{p.trackInvoicingActionClick(m.Event.invoicingImportSessionAction,{action:"continue",sessionId:a}),o(a)},onNewImport:()=>{p.trackInvoicingActionClick(m.Event.invoicingNewImportClicked),o()},onRetrySession:a=>{p.trackInvoicingActionClick(m.Event.invoicingImportSessionAction,{action:"retry",sessionId:a}),n(Te(a)),o(a)},onRollbackSession:a=>{p.trackInvoicingActionClick(m.Event.invoicingImportSessionAction,{action:"rollback",sessionId:a}),n(Lt(a))},onViewSession:a=>{p.trackInvoicingActionClick(m.Event.invoicingImportSessionAction,{action:"view_details",sessionId:a}),t(`/${i}/invoicing/data_import/${encodeURIComponent(a)}`)}}}))(Dn);function ga(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),o=E(Re);r.useEffect((()=>{i&&(n(bi()),n(At()))}),[i,n]);const a=o.statusFetch.fetchState==="Completed"&&o.sessionsFetch.fetchState==="Completed";return s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingDataImportHubPage,isReady:a}),s.jsx(ua,{navigate:e,tenantEmailDomain:t,view:o})]})}const ma=T((function(n,e){const{activeId:t,integrationsView:i,settings:o,view:a}=e,{actionStateByKind:c,sessionDetail:d,sessions:l}=a,v=i.externalConnections?.revenue?.find((g=>g.connectionName==="chargebee")),u=t!=null?d[t]:void 0;return{chargebeeConnected:o?.chargebee_connected===!0||(v?.isValid??!1),chargebeeConnectorAvailable:v!=null,chargebeeSite:o?.chargebee_site,connectError:c.connect?.error?.message,connecting:c.connect?.fetchState==="In-Progress",retrying:c.retry?.fetchState==="In-Progress",session:u??l.find((g=>g.id===t)),starting:c.start?.fetchState==="In-Progress",uploading:c.upload?.fetchState==="In-Progress"}}),(function(n,e){const{activeId:t,navigate:i,tenantEmailDomain:o}=e;return{onBack:e.onBack,onDownloadTemplates:()=>{p.trackInvoicingActionClick(m.Event.invoicingImportTemplatesDownloaded);const a=se?.invoicingMicroServiceBaseUrl,c=a!=null&&a.length>0?a:"";window.open(`${c}/1.0/data-import/templates`,"_blank","noopener")},onFetchFromChargebee:()=>{p.trackInvoicingActionClick(m.Event.invoicingChargebeeConnectClicked),n(Pi())},onGoToIntegrations:()=>{i(`/${o}/invoicing/settings`)},onGoToOverview:()=>i(`/${o}/invoicing/overview`),onRetry:()=>{t!=null&&n(Te(t))},onSaveLater:()=>{p.trackInvoicingActionClick(m.Event.invoicingImportSavedForLater),e.onBack()},onStartImport:()=>{p.trackInvoicingActionClick(m.Event.invoicingImportStarted),t!=null&&n(Di(t))},onUpload:a=>{p.trackInvoicingActionClick(m.Event.invoicingImportFileUploaded),n(ji({files:a}))},onViewDetails:t==null?void 0:()=>i(`/${o}/invoicing/data_import/${encodeURIComponent(t)}`)}}))(Pn);function va(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),o=E(xt),a=E(Oe).companyId??he.getSignedInUserTenant(t??"")?.companyId,c=E((S=>$t(S,a))),d=E(Re),{activeMigrationSessionId:l}=d,v=l??void 0,u=v!=null?d.sessionDetail[v]??d.sessions.find((S=>S.id===v)):void 0;r.useEffect((()=>{i&&(n(_e()),n(At()))}),[i,n]),r.useEffect((()=>{if(l!=null)return;const S=(I=>{if(I==null||I==="")return null;try{return sessionStorage.getItem(en(I))}catch{return null}})(t);S!=null&&n(oe(S))}),[l,n,t]),r.useEffect((()=>{ae(t,l)}),[l,t]);const g=u?.status,f=g==="scanning"||g==="importing";return r.useEffect((()=>{if(!i||v==null||!f)return;const S=setInterval((()=>{n(ke(v))}),3e3);return()=>clearInterval(S)}),[i,v,f,n]),r.useEffect((()=>{g==="done"&&(n(oe(null)),ae(t,null))}),[n,g,t]),s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingDataImportMigratePage}),s.jsx(ma,{activeId:v,integrationsView:c,navigate:e,settings:o,tenantEmailDomain:t,view:d,onBack:()=>{n(oe(null)),ae(t,null),e(`/${t}/invoicing/data_import`)}})]})}const pa=T((function(n,e){const{editView:t}=e;return{fieldHelp:t.fieldHelp,coupon:t.coupon,discountLifecycleActionOptions:e.discountLifecycleActionOptions,isLoading:!e.hasLoadedRecord&&(t.pageFetchState.fetchState==="Not-Started"||t.pageFetchState.fetchState==="In-Progress"),isRunningLifecycleAction:e.isRunningLifecycleAction,isSaving:t.fetchState==="In-Progress"}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,{couponId:i}=e;return{onBack:()=>e.navigate(`${t}/discounts`),onLifecycleAction:o=>{n(wt({action:o,id:i}))},onSaveEdit:o=>{p.trackInvoicingActionClick(m.Event.invoicingCouponEdited,{couponId:i}),n(Ai({data:o,id:i}))}}}))(Ln);function fa(){const n=P(),e=L(),{coupon_id:t,tenantEmailDomain:i}=w(),{areTenantIdsInSync:o}=F(),a=E((I=>Li(I,t))),c=a.actionState.fetchState==="In-Progress",d=a.pageFetchState.fetchState,l=d==="Completed",[v,u]=r.useState(void 0);r.useEffect((()=>{t!=null&&l&&u(t)}),[t,l]);const g=v===t;r.useEffect((()=>(n(G()),()=>{n(G())})),[n]),r.useEffect((()=>{o&&n(et({id:t}))}),[o,t,n]);const[f,S]=r.useState(0);return r.useEffect((()=>{a.fetchState==="Completed"&&(n(G()),n(et({cacheOverride:!0,id:t})),S((I=>I+1)))}),[a.fetchState,n,t]),U(d)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingDiscountDetailPage,isReady:l}),s.jsx(pa,{hasLoadedRecord:g,couponId:t??"",discountLifecycleActionOptions:a.discountLifecycleActionOptions,editView:a,isRunningLifecycleAction:c,navigate:e,tenantEmailDomain:i},f)]})}const Sa=T((function(n){const e=Ft(n),{fetchState:t}=e;return{columns:e.columns,counts:e.count,discountLifecycleActionOptions:e.discountLifecycleActionOptions,countsLoading:e.countsFetchState.fetchState==="Not-Started"||e.countsFetchState.fetchState==="In-Progress",coupons:e.coupons,hasMore:e.nextCursor!=null,isLoading:t==="Not-Started"||t==="In-Progress"&&e.coupons.length===0,isLoadingMore:t==="In-Progress"&&e.coupons.length>0,tabIds:e.tabIds}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`;return{activeStatus:e.activeStatus,searchValue:e.searchValue,sortState:e.sortState,onSearchChange:e.onSearchChange,onStatusChange:e.onStatusChange,onSortChange:e.onSortChange,onCouponClick:i=>{p.trackInvoicingActionClick(m.Event.invoicingDiscountRowClicked,{couponId:i}),e.navigate(`${t}/discounts/${encodeURIComponent(i)}`)},onCreateCoupon:()=>{p.trackInvoicingActionClick(m.Event.invoicingCreateCouponClicked),e.navigate(`${t}/discounts/new`)},onImportCsv:()=>{p.trackInvoicingActionClick(m.Event.invoicingImportCsvClicked,{entity:"discounts"}),e.navigate(`${t}/data_import`)},onDiscountLifecycleAction:(i,o)=>{n(wt({action:o,id:i}))},onLoadMore:()=>{e.nextCursor!=null&&n(Rt({cursor:e.nextCursor,filters:e.filters,keepExistingListItems:!0,sort:e.sort}))}}}))(An);function ha(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),[o,a]=r.useState(""),[c,d]=r.useState(""),[l,v]=r.useState(null),u=r.useMemo((()=>l!=null?{dir:l.direction,field:l.columnKey}:void 0),[l]),g=r.useMemo((()=>({search:c.trim()!==""?c.trim():void 0})),[c]),{activeStatus:f,appliedSearch:S,appliedSort:I,nextCursor:j,couponListFetchState:k,runningDiscountActionId:x}=E((C=>{const D=Ft(C);return{activeStatus:D.activeTab,appliedSearch:D.filters.search,appliedSort:D.sort,nextCursor:D.nextCursor,couponListFetchState:D.fetchState,runningDiscountActionId:D.runningActionId??null}}),H),b=k==="Completed";return r.useEffect((()=>{const C=setTimeout((()=>d(o)),300);return()=>clearTimeout(C)}),[o]),r.useEffect((()=>{i&&n(tt({cacheOverride:!1}))}),[i,n]),r.useEffect((()=>{i&&(g.search!==S||u?.field!==I?.field||u?.dir!==I?.dir)&&n(tt({cacheOverride:!0,filters:g,sort:u}))}),[i,n,g,u,S,I]),U(k)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingDiscountsListPage,isReady:b}),s.jsx(Sa,{navigate:e,tenantEmailDomain:t,activeStatus:f,searchValue:o,sortState:l,filters:g,sort:u,nextCursor:j,runningDiscountActionId:x,onSearchChange:a,onStatusChange:C=>n($i(C)),onSortChange:v})]})}const Ca=T((function(n,e){const{readView:t}=e;return{fieldHelp:e.readView.fieldHelp,caseId:e.caseId,dunningAttempts:e.dunningAttempts,dunningCase:t.dunningCase,isLoading:t.fetchState==="Not-Started"||t.fetchState==="In-Progress",isRunningAction:t.actionState.fetchState==="In-Progress"}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,{caseId:i}=e,o=i!=="";return{onBack:()=>e.navigate(`${t}/dunning`),onInvoiceClick:a=>{p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{caseId:i,fromScreen:"dunning_detail",invoiceId:a,toScreen:"invoice"}),e.navigate(`${t}/invoices/${encodeURIComponent(a)}`)},onCancel:o?()=>n(Z({action:"cancel",id:i})):void 0,onResolve:o?()=>{p.trackInvoicingActionClick(m.Event.invoicingDunningAction,{action:"resolve",caseId:i}),n(Z({action:"resolve",id:i}))}:void 0,onResume:o?()=>{p.trackInvoicingActionClick(m.Event.invoicingDunningAction,{action:"resume",caseId:i}),n(Z({action:"resume",id:i}))}:void 0,onRetry:o?()=>{p.trackInvoicingActionClick(m.Event.invoicingDunningAction,{action:"retry",caseId:i}),n(Z({action:"retry",id:i}))}:void 0}}))(wn);function Ia(){const n=P(),e=L(),{case_id:t,tenantEmailDomain:i}=w(),{areTenantIdsInSync:o}=F(),a=E((h=>wi(h,t??""))),c=a.fetchState==="Completed",d=a.dunningCase?.invoiceID,[l,v]=r.useState("idle"),[u,g]=r.useState(!1),[f,S]=r.useState(),[I,j]=r.useState(!1),k=r.useCallback((()=>{v("idle"),g(!1),S(void 0),j(!1)}),[]),x=r.useCallback((()=>{if(t==null)return;n(Fi({id:t})),v("idle"),g(!1);const h=a.emailPreview.preview;S(h==null?void 0:{body:h.body,cc:h.cc,subject:h.subject,to:h.to}),j(!0)}),[t,n,a.emailPreview.preview]),b=r.useCallback((h=>{t!=null&&l!=="pending"&&(g(!1),v("pending"),p.trackInvoicingActionClick(m.Event.invoicingDunningAction,{action:"send-email",caseId:t}),n(Z({action:"send-email",body:h,id:t})))}),[t,n,l]),C=r.useMemo((()=>a.emailPreview.preview==null?void 0:{bodyToken:a.emailPreview.preview.bodyToken,renderedHtmlTemplate:a.emailPreview.preview.renderedHtmlTemplate,subjectToken:a.emailPreview.preview.subjectToken}),[a.emailPreview.preview]);r.useEffect((()=>{o&&t!=null&&n(Ri({id:t}))}),[o,t,n]),r.useEffect((()=>{o&&d!=null&&n(Me({invoiceId:d}))}),[o,d,n]),r.useEffect((()=>{v("idle"),g(!1),S(void 0),j(!1)}),[t]),r.useEffect((()=>{o||(v("idle"),g(!1),S(void 0),j(!1))}),[o]),r.useEffect((()=>{I&&f==null&&a.emailPreview.preview!=null&&S({body:a.emailPreview.preview.body,cc:a.emailPreview.preview.cc,subject:a.emailPreview.preview.subject,to:a.emailPreview.preview.to})}),[a.emailPreview.preview,f,I]),r.useEffect((()=>{l==="pending"&&(a.actionState.fetchState!=="In-Progress"?u&&a.actionState.fetchState==="Completed"?(t!=null&&n(Ti({id:t})),k()):u&&a.actionState.fetchState==="Error"&&v("failed"):g(!0))}),[t,k,n,l,u,a.actionState.fetchState]);const D=d!=null&&a.linkedInvoice?.id===d?a.linkedInvoice.dunningAttempts:void 0;return U(a.fetchState)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingDunningDetailPage,isReady:c}),s.jsx(Ca,{navigate:e,tenantEmailDomain:i,caseId:t??"",readView:a,dunningAttempts:D,onSendEmail:x}),s.jsx($n,{initialDraft:f,isPreviewLoading:a.emailPreview.fetchState==="Not-Started"||a.emailPreview.fetchState==="In-Progress",isSending:l==="pending",onClose:k,onSend:b,open:I,preview:C,previewErrorMessage:a.emailPreview.fetchState==="Error"?a.emailPreview.error?.message:void 0,sendErrorMessage:l==="failed"?a.actionState.error?.message:void 0})]})}const Ea=T((function(n){const e=Tt(n),{fetchState:t}=e;return{columns:e.columns,counts:e.count,countsLoading:e.countsFetchState.fetchState==="Not-Started"||e.countsFetchState.fetchState==="In-Progress",dunningCases:e.dunningCases,hasMore:e.nextCursor!=null,isLoading:t==="Not-Started"||t==="In-Progress"&&e.dunningCases.length===0,isLoadingMore:t==="In-Progress"&&e.dunningCases.length>0,tabIds:e.tabIds}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`;return{activeStatus:e.activeStatus,searchValue:e.searchValue,sortState:e.sortState,onSearchChange:e.onSearchChange,onSortChange:e.onSortChange,onStatusChange:e.onStatusChange,onImportCsv:()=>e.navigate(`${t}/data_import`),onDunningCaseClick:i=>{p.trackInvoicingActionClick(m.Event.invoicingDunningCaseRowClicked,{caseId:i}),e.navigate(`${t}/dunning/${encodeURIComponent(i)}`)},onRowAction:(i,o)=>{o!=="retry"&&o!=="resume"&&o!=="resolve"&&o!=="cancel"||n(Z({action:o,id:i}))},onLoadMore:()=>{e.nextCursor!=null&&n(_i({cursor:e.nextCursor,filters:e.filters,keepExistingListItems:!0,sort:e.sort}))}}}))(Fn);function ka(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),[o,a]=r.useState(""),[c,d]=r.useState(""),[l,v]=r.useState(null),u=r.useMemo((()=>l!=null?{dir:l.direction,field:l.columnKey}:void 0),[l]),g=r.useMemo((()=>({search:c.trim()!==""?c.trim():void 0})),[c]),{activeStatus:f,appliedSearch:S,appliedSort:I,nextCursor:j,dunningCaseListFetchState:k}=E((b=>{const C=Tt(b);return{activeStatus:C.activeTab,appliedSearch:C.filters.search,appliedSort:C.sort,nextCursor:C.nextCursor,dunningCaseListFetchState:C.fetchState}}),H),x=k==="Completed";return r.useEffect((()=>{const b=setTimeout((()=>d(o)),300);return()=>clearTimeout(b)}),[o]),r.useEffect((()=>{i&&n(nt({cacheOverride:!1}))}),[i,n]),r.useEffect((()=>{i&&(g.search!==S||u?.field!==I?.field||u?.dir!==I?.dir)&&n(nt({cacheOverride:!0,filters:g,sort:u}))}),[i,n,g,u,S,I]),U(k)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingDunningListPage,isReady:x}),s.jsx(Ea,{navigate:e,tenantEmailDomain:t,activeStatus:f,searchValue:o,sortState:l,filters:g,sort:u,nextCursor:j,onSearchChange:a,onStatusChange:b=>n(Oi(b)),onSortChange:v})]})}const ya=T((function(n,e){const{view:t}=e;return{fieldHelp:e.view.fieldHelp,billingAddress:t.billingAddress,invoice:t.invoice,invoiceId:e.invoiceId,shippingAddress:t.shippingAddress,isLoading:!e.hasLoadedRecord&&(t.pageFetchState.fetchState==="Not-Started"||t.pageFetchState.fetchState==="In-Progress"),isSaving:t.actionState.fetchState==="In-Progress",isVoiding:t.actionState.fetchState==="In-Progress"}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,{invoiceId:i}=e;return{onBack:()=>e.navigate(`${t}/invoices`),onCustomerClick:o=>{p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{customerId:o,fromScreen:"invoice_detail",toScreen:"customer"}),e.navigate(`${t}/customers/${encodeURIComponent(o)}`)},onIssueCreditNote:()=>{p.trackInvoicingActionClick(m.Event.invoicingCreditNoteIssued,{invoiceId:i}),e.navigate(`${t}/invoices/${encodeURIComponent(i)}/issue-credit-note`)},onRecordPayment:()=>{p.trackInvoicingActionClick(m.Event.invoicingRecordPaymentClicked,{fromScreen:"invoice_detail",invoiceId:i}),e.navigate(`${t}/invoices/${encodeURIComponent(i)}/record-payment`)},onRegenerate:()=>{p.trackInvoicingActionClick(m.Event.invoicingInvoiceRegenerated,{invoiceId:i}),n(V({action:"regenerate",invoiceId:i}))},onSaveEdit:o=>{p.trackInvoicingActionClick(m.Event.invoicingInvoiceEdited,{invoiceId:i}),n(Ni({data:{due_date:o.due_date!==""?o.due_date:void 0,notes:o.notes.trim()!==""?o.notes.split(`
|
|
2
|
+
`).map((a=>a.trim())).filter((a=>a!=="")).map((a=>({note:a}))):void 0,po_number:o.po_number!==""?o.po_number:null},invoiceId:i}))},onSendReminder:()=>{p.trackInvoicingActionClick(m.Event.invoicingInvoiceReminderSent,{invoiceId:i}),n(V({action:"send-reminder",invoiceId:i}))},onSubscriptionClick:o=>{p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{fromScreen:"invoice_detail",subscriptionId:o,toScreen:"subscription"}),e.navigate(`${t}/subscriptions/${encodeURIComponent(o)}`)},onVoid:o=>{p.trackInvoicingActionClick(m.Event.invoicingInvoiceVoided,{invoiceId:i}),n(V({action:"void",invoiceId:i,body:o}))}}}))(Rn);function xa(){const n=P(),e=L(),{invoice_id:t,tenantEmailDomain:i}=w(),{areTenantIdsInSync:o}=F(),a=E((g=>Ot(g,t??""))),c=a.pageFetchState.fetchState,d=c==="Completed",[l,v]=r.useState(void 0);r.useEffect((()=>{t!=null&&d&&v(t)}),[t,d]);const u=l===t;return r.useEffect((()=>{o&&t!=null&&n(Mi({invoiceId:t}))}),[o,t,n]),U(c)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingInvoiceDetailPage,isReady:d}),s.jsx(ya,{invoiceId:t??"",hasLoadedRecord:u,navigate:e,tenantEmailDomain:i,view:a})]})}const ba=T((function(n){const e=_t(n),{fetchState:t}=e;return{counts:e.counts,countsLoading:e.countsFetchState.fetchState==="Not-Started"||e.countsFetchState.fetchState==="In-Progress",hasMore:e.nextCursor!=null,invoices:e.invoices,statusOptions:e.statusOptions,isLoading:t==="Not-Started"||t==="In-Progress"&&e.invoices.length===0,isLoadingMore:t==="In-Progress"&&e.invoices.length>0,kpis:e.kpis,kpisLoading:e.kpisFetchState.fetchState==="Not-Started"||e.kpisFetchState.fetchState==="In-Progress"&&e.kpis==null,tabIds:e.tabIds}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`;return{activeStatus:e.activeStatus,searchValue:e.searchValue,sortState:e.sortState,onSearchChange:e.onSearchChange,onSortChange:e.onSortChange,onStatusChange:e.onStatusChange,onCreateInvoice:()=>{p.trackInvoicingActionClick(m.Event.invoicingCreateInvoiceClicked),e.navigate(`${t}/invoices/create`)},onImportCsv:()=>{p.trackInvoicingActionClick(m.Event.invoicingImportCsvClicked,{entity:"invoices"}),e.navigate(`${t}/data_import`)},onInvoiceClick:i=>{p.trackInvoicingActionClick(m.Event.invoicingInvoiceRowClicked,{invoiceId:i}),e.navigate(`${t}/invoices/${encodeURIComponent(i)}`)},onRowAction:(i,o)=>{switch(o){case"recordPayment":e.navigate(`${t}/invoices/${encodeURIComponent(i)}/record-payment`);break;case"issueCreditNote":e.navigate(`${t}/invoices/${encodeURIComponent(i)}/issue-credit-note`);break;case"sendReminder":n(V({action:"send-reminder",invoiceId:i}));break;case"regenerate":n(V({action:"regenerate",invoiceId:i}));break;case"void":n(V({action:"void",invoiceId:i}))}},onVoidInvoice:(i,o)=>{p.trackInvoicingActionClick(m.Event.invoicingInvoiceVoided,{invoiceId:i}),n(V({action:"void",invoiceId:i,body:o}))},onLoadMore:()=>{e.nextCursor!=null&&n(Mt({cursor:e.nextCursor,filters:e.filters,keepExistingListItems:!0,sort:e.sort}))}}}))(Tn);function ja(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),[o,a]=r.useState(""),[c,d]=r.useState(""),[l,v]=r.useState(null),u=r.useMemo((()=>l!=null?{dir:l.direction,field:l.columnKey}:void 0),[l]),g=r.useMemo((()=>({search:c.trim()!==""?c.trim():void 0})),[c]),{activeStatus:f,appliedSearch:S,appliedSort:I,nextCursor:j,invoiceListFetchState:k,voidingInvoiceId:x}=E((C=>{const D=_t(C);return{activeStatus:D.activeTab,appliedSearch:D.filters.search,appliedSort:C.invoicingInvoiceListState.sort,nextCursor:D.nextCursor,invoiceListFetchState:D.fetchState,voidingInvoiceId:D.runningActionId}}),H),b=k==="Completed";return r.useEffect((()=>{const C=setTimeout((()=>d(o)),300);return()=>clearTimeout(C)}),[o]),r.useEffect((()=>{i&&n(ve({cacheOverride:!1}))}),[i,n]),r.useEffect((()=>{i&&(g.search!==S||u?.field!==I?.field||u?.dir!==I?.dir)&&n(ve({cacheOverride:!0,filters:g,sort:u}))}),[i,n,g,u,S,I]),U(k)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingInvoicesListPage,isReady:b}),s.jsx(ba,{navigate:e,tenantEmailDomain:t,activeStatus:f,searchValue:o,sortState:l,filters:g,sort:u,nextCursor:j,voidingInvoiceId:x,onSearchChange:a,onStatusChange:C=>{n(Ui(C)),n(ve({cacheOverride:!1,filters:g,sort:u}))},onSortChange:v})]})}function dt(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),i=On(),o=ft(),[a,c]=r.useState(!1),{acceptTermsState:d,status:l}=E(Nt),v=Bi(i?.loggedInUserRoleMap),u=`/${t}/invoicing`,g=f=>{c(f)};return l==="completed"?s.jsx(B,{to:`${u}/overview`,replace:!0}):l==="settings"&&v?s.jsx(B,{to:`${u}/settings`,replace:!0}):s.jsxs(s.Fragment,{children:[s.jsx(To,{isAppContentDrawerOpen:a,handleDrawerToggle:g}),s.jsx(_n,{analytics:p,isAccepting:d.fetchState==="In-Progress",isReadOnlyUser:!v,meetingUrl:o("invoicing_promo"),onAcceptClick:()=>{n(Vi())},onBackClick:()=>{e(`/${t}`)},onClickMenuIcon:()=>{g(!0)}})]})}const Da=T((function(n,e){const t=Ut(n,e.invoiceId),{invoice:i,localData:o,reasonCodeOptions:a,submitState:c,typeOptions:d}=t;return{fieldHelp:t.fieldHelp,amountDue:i?.amountDue,currencyCode:i?.currencyCode??"USD",customerName:i?.customerName??"",errorMessage:c.fetchState==="Error"?c.error?.message??"Failed to issue credit note. Please try again.":void 0,invoiceNumber:i?.invoiceNumber??e.invoiceId,isSubmitting:c.fetchState==="In-Progress",localData:o,reasonCodeOptions:a,typeOptions:d}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing/invoices/${encodeURIComponent(e.invoiceId)}`,i=()=>e.navigate(t);return{onBack:i,onCancel:i,onChange:o=>{n(Ki({localData:o}))},onSubmit:()=>{p.trackInvoicingActionClick(m.Event.invoicingCreditNoteIssued,{invoiceId:e.invoiceId}),n(Yi())}}}))(Mn);function Pa(){const n=P(),e=L(),{invoice_id:t,tenantEmailDomain:i}=w(),{areTenantIdsInSync:o}=F(),{fetchState:a,invoice:c,isPageReady:d,issuedCreditNoteId:l,submitState:v}=E((S=>Ut(S,t??""))),u=`/${i}/invoicing`,g=r.useRef(null);r.useEffect((()=>{n(Hi()),g.current=null}),[n,t]),r.useEffect((()=>{o&&t!=null&&n(Me({invoiceId:t}))}),[o,n,t]),r.useEffect((()=>{c!=null&&t!=null&&a==="Completed"&&g.current!==t&&(g.current=t,n(Zi({localData:qi(c)})))}),[n,a,c,t]);const f=r.useRef(v.fetchState);return r.useEffect((()=>{const S=f.current;f.current=v.fetchState,S!=="Completed"&&v.fetchState==="Completed"&&l!=null&&e(`${u}/credits/${encodeURIComponent(l)}`)}),[l,e,v.fetchState,u]),s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingInvoiceDetailPage,isReady:d}),s.jsx(Da,{invoiceId:t??"",navigate:e,tenantEmailDomain:i})]})}const La=T((function(n){return{invoicingOverview:Bt(n)}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`;return{onRefresh:()=>{n(Vt(e.selectedPeriod,!0))},onSubscriptionClick:i=>{p.trackInvoicingActionClick(m.Event.invoicingSubscriptionTileClicked,{subscriptionId:i}),e.navigate(`${t}/subscriptions/${i}`)},onViewInvoices:()=>{p.trackInvoicingActionClick(m.Event.invoicingViewInvoicesClicked),e.navigate(`${t}/invoices`)},onViewPayments:()=>{p.trackInvoicingActionClick(m.Event.invoicingViewPaymentsClicked),e.navigate(`${t}/payments`)}}}))(Nn);function Aa(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),[o]=r.useState((()=>{const c=new Date;return{month:c.getMonth()+1,year:c.getFullYear()}})),a=E((c=>Bt(c).fetchState))==="Completed";return r.useEffect((()=>{i&&n(Vt(o))}),[i,n,o]),s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingOverviewPage,isReady:a}),s.jsx(La,{navigate:e,selectedPeriod:o,tenantEmailDomain:t})]})}const $a=T((function(n){const e=Ht(n),{fetchState:t}=e;return{columns:e.columns,hasMore:e.nextCursor!=null,isLoading:t==="Not-Started"||t==="In-Progress"&&e.transactions.length===0,isLoadingMore:t==="In-Progress"&&e.transactions.length>0,tabIds:e.tabIds,transactions:e.transactions}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`;return{activeType:e.activeType,searchValue:e.searchValue,sortState:e.sortState,onSearchChange:e.onSearchChange,onSortChange:e.onSortChange,onTypeChange:e.onTypeChange,onViewTransactionCustomer:e.onViewTransactionCustomer,onViewTransactionInvoice:e.onViewTransactionInvoice,onImportCsv:()=>{p.trackInvoicingActionClick(m.Event.invoicingImportCsvClicked,{entity:"payments"}),e.navigate(`${t}/data_import`)},onTransactionClick:i=>{p.trackInvoicingActionClick(m.Event.invoicingPaymentRowClicked,{transactionId:i}),e.navigate(`${t}/payments/${encodeURIComponent(i)}`)},onLoadMore:()=>{e.nextCursor!=null&&n(Gi({cursor:e.nextCursor,filters:e.filters,keepExistingListItems:!0,sort:e.sort}))}}}))(Un);function wa(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),[o,a]=r.useState(""),[c,d]=r.useState(""),[l,v]=r.useState(null),u=r.useMemo((()=>l!=null?{dir:l.direction,field:l.columnKey}:void 0),[l]),g=r.useMemo((()=>({search:c.trim()!==""?c.trim():void 0})),[c]),{activeType:f,appliedSearch:S,appliedSort:I,nextCursor:j,transactionListFetchState:k,transactions:x}=E((_=>{const O=Ht(_);return{activeType:O.activeTab,appliedSearch:O.filters.search,appliedSort:O.sort,nextCursor:O.nextCursor,transactionListFetchState:O.fetchState,transactions:O.transactions}}),H),b=k==="Completed",C=`/${t}/invoicing`,D=r.useCallback((_=>{const O=x.find((M=>M.id===_)),R=O?.linkedInvoices?.[0]?.invoiceID??O?.invoiceID;R!=null&&(p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{fromScreen:"payments_list",invoiceId:R,toScreen:"invoice"}),e(`${C}/invoices/${encodeURIComponent(R)}`))}),[e,C,x]),h=r.useCallback((_=>{const O=x.find((R=>R.id===_))?.customerID;O!=null&&(p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{customerId:O,fromScreen:"payments_list",toScreen:"customer"}),e(`${C}/customers/${encodeURIComponent(O)}`))}),[e,C,x]);return r.useEffect((()=>{const _=setTimeout((()=>d(o)),300);return()=>clearTimeout(_)}),[o]),r.useEffect((()=>{i&&n(pe({cacheOverride:!1}))}),[i,n]),r.useEffect((()=>{i&&(g.search!==S||u?.field!==I?.field||u?.dir!==I?.dir)&&n(pe({cacheOverride:!0,filters:g,sort:u}))}),[i,n,g,u,S,I]),U(k)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingPaymentsListPage,isReady:b}),s.jsx($a,{navigate:e,tenantEmailDomain:t,activeType:f,searchValue:o,sortState:l,filters:g,sort:u,nextCursor:j,onSearchChange:a,onTypeChange:_=>{n(Qi(_)),n(pe({cacheOverride:!1,filters:g,sort:u}))},onSortChange:v,onViewTransactionCustomer:h,onViewTransactionInvoice:D})]})}const Fa=n=>{const e=[n.firstName,n.lastName].filter((t=>t!=null&&t.trim()!=="")).join(" ").trim();return(n.company!=null&&n.company.trim()!==""?n.company.trim():"")||e||(n.email!=null&&n.email.trim()!==""?n.email.trim():"")||n.id},ut=(n,e)=>new Intl.NumberFormat("en-US",{currency:e,style:"currency"}).format(n);function gt(){const n=P(),e=L(),{invoice_id:t,tenantEmailDomain:i}=w(),{areTenantIdsInSync:o}=F(),a=t!=null&&t!=="",c=E(ue),d=E((h=>zi(h))),l=E(Wi),v=E((h=>Ot(h,t??""))),u=v.invoice,g=`/${i}/invoicing`,f=r.useRef(null),S=r.useRef("");r.useEffect((()=>{n(Ji()),f.current=null,S.current=""}),[n,t]),r.useEffect((()=>{o&&n(a&&t!=null?Me({invoiceId:t}):Fe({filters:{},keepExistingListItems:!1}))}),[o,n,t,a]),r.useEffect((()=>{a&&u!=null&&t!=null&&v.fetchState==="Completed"&&f.current!==t&&(f.current=t,n(Xi({contextInvoiceId:t,localData:eo(u)})))}),[n,u,t,v.fetchState,a]),r.useEffect((()=>{if(a)return;const h=d.localData.customerId;h!==""&&h!==S.current&&(S.current=h,n(Mt({filters:{customerId:h},keepExistingListItems:!1})),d.localData.invoiceToLink!==""&&n(it({localData:{...d.localData,customerId:h,invoiceToLink:""}})))}),[n,d.localData,a]);const I=r.useRef(l.fetchState);r.useEffect((()=>{const h=I.current;if(I.current=l.fetchState,h!=="Completed"&&l.fetchState==="Completed"){if(l.recordedInvoiceId!=null)return void e(`${g}/invoices/${encodeURIComponent(l.recordedInvoiceId)}`);e(`${g}/payments`)}}),[e,l.fetchState,l.recordedInvoiceId,g]);const j=r.useMemo((()=>c.customers.map((h=>({id:h.id,name:Fa(h)})))),[c.customers]),k=E((h=>to(h,d.localData.customerId))),x=r.useMemo((()=>k.map((h=>({amountDue:ut(h.amountDue,"USD"),amountDueValue:h.amountDue,id:h.id,label:h.invoiceNumber})))),[k]),b=r.useMemo((()=>{if(!a||u==null)return;const h=u.currencyCode??"USD",_=u.amountDue?.amount??0;return{amountDue:ut(_,h),amountDueValue:_,currencyCode:h,customerName:u.customerName??u.customerID,invoiceId:u.id,invoiceNumber:u.invoiceNumber??u.id}}),[u,a]),C=a?`${g}/invoices/${encodeURIComponent(t??"")}`:`${g}/payments`,D=!a||v.fetchState==="Completed"&&d.localData.invoiceToLink!=="";return s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingRecordPaymentPage,isReady:D}),s.jsx(Bn,{customers:j,fieldHelp:d.fieldHelp,errorMessage:l.fetchState==="Error"?l.error?.message??"Failed to record payment. Please try again.":void 0,gatewayOptions:d.gatewayOptions,invoiceContext:b,invoiceOptions:x,isSubmitting:l.fetchState==="In-Progress",localData:d.localData,mode:a?"invoice":"customer",paymentMethodOptions:d.paymentMethodOptions,onBack:()=>{e(C)},onCancel:()=>{p.trackInvoicingActionClick(m.Event.invoicingRecordPaymentCancelled),e(C)},onChange:h=>{n(it({localData:h}))},onSubmit:()=>{p.trackInvoicingActionClick(m.Event.invoicingPaymentRecorded,{customerId:d.localData.customerId,invoiceId:a?t:d.localData.invoiceToLink,paymentMethod:d.localData.paymentMethod}),n(no(a?t??void 0:void 0))}})]})}const tn=(n,e,t)=>{const i=`/${n}/invoicing/subscriptions/`;return t!=null?`${i}${encodeURIComponent(t)}/${e}/`:`${i}new/${e}/`},Ra=(n,e)=>{if(n==null)return;const t=new Intl.NumberFormat("en-US",{currency:n.currencyCode??"USD",maximumFractionDigits:0,style:"currency"}).format(n.amount);return e!=null?`${t}/${e}`:t},nn=(n,e,t)=>{const i=[n,Ra(e,t)].filter((o=>o!=null&&o!=="")).join(" · ");return i!==""?i:void 0},mt=n=>n.priceCode!=null&&n.priceCode.trim()!=="",Ta=n=>({billingCycles:n.billingCycles,billingPeriod:n.period,billingPeriodUnit:n.periodUnit,label:n.name??n.id,subtitle:nn(n.productCode,n.price,n.periodUnit),value:n.priceCode}),Oa=n=>({label:n.name??n.couponCode??n.id,value:n.couponCode??n.id}),_a=T((function(n,e){const{editView:t}=e,i=t.subscription,o=i?.status,a=o!=null&&e.commercialEditAllowedFromStatuses.includes(o);return{cancelReasonCodeOptions:t.cancelReasonCodeOptions,fieldHelp:t.fieldHelp,addons:t.products.filter((c=>c.itemType==="addon")).filter(mt).map((c=>({label:c.name??c.id,subtitle:nn(c.productCode,c.price,c.periodUnit),value:c.priceCode}))),canEditCommercial:a,coupons:t.coupons.map(Oa),isLoading:!e.hasLoadedRecord&&(t.pageFetchState.fetchState==="Not-Started"||t.pageFetchState.fetchState==="In-Progress"),isRunningAction:t.actionState.fetchState==="In-Progress",isSaving:t.fetchState==="In-Progress",lifecycleActionOptions:e.lifecycleActionOptions,localData:t.localData,plans:t.plans.filter(mt).map(Ta),shippingAddressLabel:t.shippingAddressLabel,subscription:i}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,{subscriptionId:i}=e,o=i!=="",a=(c,d)=>{p.trackInvoicingActionClick(m.Event.invoicingSubscriptionLifecycleAction,{action:c,subscriptionId:i}),n(qt({action:c,id:i,body:d}))};return{onBack:()=>e.navigate(`${t}/subscriptions`),onChange:c=>{n(re({id:i,localData:c}))},onChangeTermEnd:o?c=>{const d=c?.trim()??"";d!==""&&a("change_term_end",{term_ends_at:d})}:void 0,onCustomerClick:c=>{p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{customerId:c,fromScreen:"subscription_detail",toScreen:"customer"}),window.open(`${t}/customers/${encodeURIComponent(c)}`,"_blank","noopener,noreferrer")},onOpenAddress:()=>{const c=tn(e.tenantEmailDomain??"",xe,i),d=J(e.location.state?.pathnameStackToGoBack,e.location.pathname);e.navigate(c,{state:{pathnameStackToGoBack:d}})},onViewInvoices:()=>e.navigate(`${t}/invoices`),onSaveEdit:c=>{p.trackInvoicingActionClick(m.Event.invoicingSubscriptionEdited,{subscriptionId:i}),n(re({id:i,localData:c})),n(Zt({id:i}))},onCancelSubscription:o?c=>{a("cancel",{cancel_reason_code:c.cancelReasonCode,end_of_term:!1,...c.cancelReason!=null&&c.cancelReason.trim()!==""?{cancel_reason:c.cancelReason.trim()}:{}})}:void 0,onLifecycleAction:o?(c,d)=>{c!=="pause"?a(c):a(c,d!=null&&d.trim()!==""?{resume_date:d.trim()}:void 0)}:void 0}}))(Vn);function Ma(){const n=P(),e=L(),t=W(),{subscription_id:i,tenantEmailDomain:o}=w(),{areTenantIdsInSync:a}=F(),c=E((x=>Ne(x,i))),{subscriptionCommercialEditAllowedFromStatuses:d,subscriptionLifecycleActionOptions:l,subscriptionMetadataEditAllowedFromStatuses:v}=c,u=c.pageFetchState.fetchState,g=u==="Completed",[f,S]=r.useState(void 0);r.useEffect((()=>{i!=null&&g&&S(i)}),[i,g]);const I=f===i;Ve(a),r.useEffect((()=>{a&&i!=null&&n(ot({id:i}))}),[a,i,n]);const[j,k]=r.useState(0);return r.useEffect((()=>{c.fetchState==="Completed"&&(n(Ue()),n(ot({cacheOverride:!0,id:i})),k((x=>x+1)))}),[c.fetchState,n,i]),U(u)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingSubscriptionDetailPage,isReady:g}),s.jsx(_a,{hasLoadedRecord:I,commercialEditAllowedFromStatuses:d,editView:c,lifecycleActionOptions:l,location:t,metadataEditAllowedFromStatuses:v,navigate:e,subscriptionId:i??"",tenantEmailDomain:o},j)]})}const Na=n=>{const e=[n.firstName,n.lastName].filter((t=>t!=null&&t.trim()!=="")).join(" ").trim();return(n.company!=null&&n.company.trim()!==""?n.company.trim():"")||e||(n.email!=null&&n.email.trim()!==""?n.email.trim():"")||n.id},Ua=(n,e)=>{if(n==null)return;const t=new Intl.NumberFormat("en-US",{currency:n.currencyCode??"USD",maximumFractionDigits:0,style:"currency"}).format(n.amount);return e!=null?`${t}/${e}`:t},je=(n,e,t)=>{const i=[n,Ua(e,t)].filter((o=>o!=null&&o!=="")).join(" · ");return i!==""?i:void 0},Ba=n=>({label:Na(n),value:n.id}),Se=n=>n.priceCode!=null&&n.priceCode.trim()!=="",Va=n=>({billingCycles:n.billingCycles,billingPeriod:n.period,billingPeriodUnit:n.periodUnit,label:n.name??n.id,subtitle:je(n.productCode,n.price,n.periodUnit),trialPeriod:n.trialPeriod,trialPeriodUnit:n.trialPeriodUnit,value:n.priceCode}),Ha=n=>({label:n.name??n.couponCode??n.id,value:n.couponCode??n.id}),Za=T((function(n,e){const t=Ne(n,e.subscriptionId);return{fieldHelp:t.fieldHelp,addons:t.products.filter((i=>i.itemType==="addon")).filter(Se).map((i=>({label:i.name??i.id,subtitle:je(i.productCode,i.price,i.periodUnit),value:i.priceCode}))),charges:t.products.filter((i=>i.itemType==="charge")).filter(Se).map((i=>({label:i.name??i.id,subtitle:je(i.productCode,i.price,void 0),value:i.priceCode}))),coupons:t.coupons.map(Ha),customers:t.customers.map(Ba),errorMessage:t.fetchState==="Error"?t.error?.message??"Failed to save subscription.":void 0,isSubmitting:t.fetchState==="In-Progress",localData:t.localData,mode:t.mode,plans:t.plans.filter(Se).map(Va),shippingAddressLabel:t.shippingAddressLabel}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,{subscriptionId:i}=e,o=i!=null?"edit":"create";return{onCancel:()=>{p.trackInvoicingActionClick(m.Event.invoicingSubscriptionFormCancelled),n(Ue()),n(we(xe)),i==null?e.navigate(`${t}/subscriptions`):e.navigate(`${t}/subscriptions/${encodeURIComponent(i)}`)},onChange:a=>{n(re({id:i,localData:a}))},onOpenAddress:()=>{const a=tn(e.tenantEmailDomain??"",xe,i),c=J(e.location.state?.pathnameStackToGoBack,e.location.pathname);e.navigate(a,{state:{pathnameStackToGoBack:c}})},onSubmit:()=>{p.trackInvoicingActionClick(m.Event.invoicingSubscriptionSaved,{mode:o}),n(Zt({id:i}))}}}))(Hn);function qa(){const n=P(),e=L(),t=W(),{subscription_id:i,tenantEmailDomain:o}=w(),[a]=z(),{areTenantIdsInSync:c}=F(),d=a.get("customerId"),{fetchState:l,savedSubscriptionId:v}=E((f=>io(f,i))),u=E((f=>Ne(f,i).localData));Ve(c),r.useEffect((()=>{c&&(n(Fe({filters:{},keepExistingListItems:!1})),n(Ce({filters:{type:"plan"},keepExistingListItems:!1})),n(Rt({filters:{},keepExistingListItems:!1})),i!=null&&n(oo({id:i})))}),[c,i,n]);const g=r.useRef(!1);return r.useEffect((()=>{g.current||i!=null||d==null||d===""||u.customerId!==""||(g.current=!0,n(re({id:i,localData:{...u,customerId:d}})))}),[d,i,u,n]),r.useEffect((()=>{if(l==="Completed"){const f=v??i,S=f!=null?`/${o}/invoicing/subscriptions/${encodeURIComponent(f)}`:`/${o}/invoicing/subscriptions`;e(S),n(Ue())}}),[l,v,i,n,e,o]),s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingSubscriptionFormPage}),s.jsx(Za,{location:t,navigate:e,subscriptionId:i,tenantEmailDomain:o})]})}const Ya=T((function(n){const e=Yt(n),{fetchState:t}=e;return{columns:e.columns,counts:e.count,countsLoading:e.countsFetchState.fetchState==="Not-Started"||e.countsFetchState.fetchState==="In-Progress",hasMore:e.nextCursor!=null,isLoading:t==="Not-Started"||t==="In-Progress"&&e.subscriptions.length===0,isLoadingMore:t==="In-Progress"&&e.subscriptions.length>0,cancelReasonCodeOptions:e.cancelReasonCodeOptions,lifecycleActionOptions:e.subscriptionLifecycleActionOptions,subscriptions:e.subscriptions,tabIds:e.tabIds}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,i=(o,a,c)=>{p.trackInvoicingActionClick(m.Event.invoicingSubscriptionLifecycleAction,{action:a,subscriptionId:o}),n(qt({action:a,id:o,body:c}))};return{activeStatus:e.activeStatus,searchValue:e.searchValue,sortState:e.sortState,onSearchChange:e.onSearchChange,onSortChange:e.onSortChange,onStatusChange:e.onStatusChange,onAddSubscription:()=>{p.trackInvoicingActionClick(m.Event.invoicingAddSubscriptionClicked),e.navigate(`${t}/subscriptions/new`)},onImportCsv:()=>{p.trackInvoicingActionClick(m.Event.invoicingImportCsvClicked,{entity:"subscriptions"}),e.navigate(`${t}/data_import`)},onChangeTermEnd:(o,a)=>{const c=a?.trim()??"";c!==""&&i(o,"change_term_end",{term_ends_at:c})},onSubscriptionAction:(o,a,c)=>{a!=="pause"?i(o,a):i(o,a,c!=null&&c.trim()!==""?{resume_date:c.trim()}:void 0)},onCancelSubscription:(o,a)=>{i(o,"cancel",{cancel_reason_code:a.cancelReasonCode,end_of_term:!1,...a.cancelReason!=null&&a.cancelReason.trim()!==""?{cancel_reason:a.cancelReason.trim()}:{}})},onSubscriptionClick:o=>{p.trackInvoicingActionClick(m.Event.invoicingSubscriptionRowClicked,{subscriptionId:o}),e.navigate(`${t}/subscriptions/${encodeURIComponent(o)}`)},onViewSubscriptionInvoices:()=>{e.navigate(`${t}/invoices`)},onLoadMore:()=>{e.nextCursor!=null&&n(co({cursor:e.nextCursor,filters:e.filters,keepExistingListItems:!0,sort:e.sort}))}}}))(Zn);function Ka(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),[o,a]=r.useState(""),[c,d]=r.useState(""),[l,v]=r.useState(null),u=r.useMemo((()=>l!=null?{dir:l.direction,field:l.columnKey}:void 0),[l]),g=r.useMemo((()=>({search:c.trim()!==""?c.trim():void 0})),[c]),{activeStatus:f,appliedSearch:S,appliedSort:I,nextCursor:j,subscriptionListFetchState:k,runningActionSubscriptionId:x}=E((D=>{const h=Yt(D);return{activeStatus:h.activeTab,appliedSearch:h.filters.search,appliedSort:h.sort,nextCursor:h.nextCursor,subscriptionListFetchState:h.fetchState,runningActionSubscriptionId:h.runningActionId??null}}),H),b=k==="Completed";r.useEffect((()=>{const D=setTimeout((()=>d(o)),300);return()=>clearTimeout(D)}),[o]),r.useEffect((()=>{i&&n(at({cacheOverride:!1}))}),[i,n]),r.useEffect((()=>{i&&(g.search!==S||u?.field!==I?.field||u?.dir!==I?.dir)&&n(at({cacheOverride:!0,filters:g,sort:u}))}),[i,n,g,u,S,I]);const C=r.useRef(x);return r.useEffect((()=>{const D=C.current!=null&&x==null;C.current=x,D&&i&&n(ao())}),[x,i,n]),U(k)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingSubscriptionsListPage,isReady:b}),s.jsx(Ya,{navigate:e,tenantEmailDomain:t,activeStatus:f,searchValue:o,sortState:l,filters:g,sort:u,nextCursor:j,runningActionSubscriptionId:x,onSearchChange:a,onStatusChange:D=>n(so(D)),onSortChange:v})]})}const Qa=T((function(n,e){const{readView:t}=e;return{isLoading:t.fetchState==="Not-Started"||t.fetchState==="In-Progress",isRunningAction:t.actionState.fetchState==="In-Progress",transaction:t.transaction,transactionId:e.transactionId}}),(function(n,e){const t=`/${e.tenantEmailDomain}/invoicing`,{transactionId:i}=e;return{onBack:()=>e.navigate(`${t}/payments`),onCustomerClick:o=>{p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{customerId:o,fromScreen:"transaction_detail",toScreen:"customer"}),e.navigate(`${t}/customers/${encodeURIComponent(o)}`)},onInvoiceClick:o=>{p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{fromScreen:"transaction_detail",invoiceId:o,toScreen:"invoice"}),e.navigate(`${t}/invoices/${encodeURIComponent(o)}`)},onSubscriptionClick:o=>{p.trackInvoicingActionClick(m.Event.invoicingEntityLinkClicked,{fromScreen:"transaction_detail",subscriptionId:o,toScreen:"subscription"}),e.navigate(`${t}/subscriptions/${encodeURIComponent(o)}`)},onCapture:i!==""?()=>{p.trackInvoicingActionClick(m.Event.invoicingTransactionCaptured,{transactionId:i}),n(uo({action:"capture",id:i}))}:void 0}}))(qn);function Ga(){const n=P(),e=L(),{tenantEmailDomain:t,transaction_id:i}=w(),{areTenantIdsInSync:o}=F(),a=E((d=>ro(d,i??""))),c=a.fetchState==="Completed";return r.useEffect((()=>{o&&i!=null&&n(lo({id:i}))}),[o,i,n]),U(a.fetchState)?s.jsx(N,{}):s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingTransactionDetailPage,isReady:c}),s.jsx(Qa,{navigate:e,tenantEmailDomain:t,transactionId:i??"",readView:a})]})}const za={branding:"invoicing_branding_save",dunning:"invoicing_dunning_settings_save",quickbooks:"invoicing_qbo_settings_save"};function X(n){const e=P(),{areTenantIdsInSync:t}=F(),{tenantEmailDomain:i}=w(),{fetchState:o,fieldHelp:a,saveState:c,settings:d,stripeConnectState:l}=E(go),{configError:v,configFetchState:u,dunningScheduleActionOptions:g,qboAccountMappingKindOptions:f,qboCustomerMatchingOptions:S,qboSyncStatusOptions:I}=E(Kt),j=E(Le);Be({enabled:n==="quickbooks",fetchSyncHealth:!0,loadAccountingPickers:!0});const k=E(Oe),x=n==="dunning"||n==="quickbooks",b=k.companyId??he.getSignedInUserTenant(i??"")?.companyId,C=E((A=>$t(A,b))),D=mo(k.userRole??[]),h=k.tenantId??"",_=he.getSignedInUser(),O={userId:_?.userId??"",sessionId:_?.zeniSessionId??"",tenantId:h},R=d?.logo_file_id,M=E((A=>R!=null&&R!==""?A.fileState.fileByFileId[R]:void 0)),ee=E((A=>R!=null&&R!==""?vo(A,R):void 0)),He=E((A=>R!=null&&R!==""?po(A,R):void 0)),on=R!=null&&R!==""&&ee!=null?{[R]:ee}:{},an=R!=null&&R!==""&&He!=null?{[R]:He}:{};r.useEffect((()=>(e(st()),()=>{e(st())})),[e]),r.useEffect((()=>{t&&(o!=="Not-Started"&&o!=="Error"||e(_e()))}),[t,e,o]),r.useEffect((()=>{t&&x&&u==="Not-Started"&&e(le())}),[t,e,u,x]),r.useEffect((()=>{if(!t)return;const A=_?.userId;A!=null&&A!==""&&h!==""&&Ye.shouldFetchActiveTenant(h)&&(Ye.markActiveTenantFetchStarted(h),e(fo(A,h,_?.zeniSessionId)))}),[t,e,_?.userId,_?.zeniSessionId,h]),r.useEffect((()=>{t&&R!=null&&R!==""&&h!==""&&M==null&&e(So(R,h))}),[t,e,M,R,h]);const sn=g.length>0||f.length>0,cn=o==="Not-Started"||o==="In-Progress"&&d==null||x&&!sn&&(u==="Not-Started"||u==="In-Progress"),rn=o==="Completed"&&(!x||u==="Completed"),Ze=C.externalConnections?.revenue?.find((A=>A.connectionName==="chargebee"))?.connectionId,ge=se?.invoicingMicroServiceBaseUrl,qe=ge!=null&&ge.length>0?`${ge}/1.0/webhooks/stripe`:"",me={deleteConnectionError:C.externalConnections?.deleteConnectionError?.message,deleteConnectionState:C.externalConnections?.deleteConnectionState??"Not-Started",integrationsView:C,isAdmin:D,isStripeBusy:l.fetchState==="In-Progress",onConnectStripe:A=>e(rt(A)),onDisconnect:(A,q)=>{h!==""&&e(xo(h,A,lt(q)))},onDisconnectStripe:()=>e(ct()),onReconnectQBO:()=>{const A=k.tenantEmailDomain??i??"";de.init("/connection/auth",A),de.handleClick()},onRefreshQBO:()=>{C.integrations.refreshQBO.fetchState!=="In-Progress"&&e(zt())},onSaveChargeBeeCredentials:(A,q)=>{Ze!=null&&h!==""&&e(ko(h,Ze,lt("revenue"),yo("chargebee"),{api_key:A,site:q}))},saveChargeBeeError:C.externalConnections?.saveAPIKeyConnectionError?.message,saveChargeBeeState:C.externalConnections?.saveAPIKeyConnectionState??"Not-Started",settings:d,stripeError:l.fetchState==="Error"?l.error?.message??"Failed to connect Stripe. Check your keys and try again.":void 0,stripeWebhookUrl:qe};return{authParams:O,deleteFileStatusById:on,fieldHelp:a,dunningScheduleActionOptions:g,filesEndPoint:se?.fileMicroServiceBaseUrl??"",integrationsSectionProps:me,isInvoicingPageReady:rn,isLoading:cn,isSaving:c.fetchState==="In-Progress",isStripeBusy:l.fetchState==="In-Progress",logoFile:M,qboAccountMappingKindOptions:f,qboCustomerMatchingOptions:S,qboSyncStatusOptions:I,qboView:j,saveErrorMessage:c.fetchState==="Error"?c.error?.message??"Failed to save settings.":x&&u==="Error"?v?.message??"Failed to load invoicing configuration.":void 0,settings:d,stripeError:l.fetchState==="Error"?l.error?.message??"Failed to connect Stripe. Check your keys and try again.":void 0,stripeWebhookUrl:qe,updateFileStatusById:an,onConnectStripe:A=>e(rt(A)),onDeleteFile:A=>e(Eo(A)),onDisconnectStripe:()=>e(ct()),onEditFileName:(A,q)=>e(Io(A,q)),onReconnectQBO:me.onReconnectQBO,onRefreshQBO:me.onRefreshQBO,onRetryQboSyncTask:A=>e(Gt(A)),onSave:A=>{p.trackInvoicingActionClick(m.Event.invoicingSettingsSaved,{tab:n??"hub"}),e(Co({settings:A,snackbarSection:za[n??""]}))},onStartQboBackfill:A=>e(Qt(A)),updateFilesEntity:A=>{p.trackInvoicingActionClick(m.Event.invoicingLogoUploaded),e(ho({files:A}))}}}function vt({appContent:n}){const e=L(),t=W(),i=P(),{tenantEmailDomain:o}=w(),a=X("branding"),c=E((v=>bo(v))),d=E((v=>jo(fe,v)?.addressToCreate));r.useEffect((()=>{c.saveState.fetchState==="Completed"&&(i(Do()),i(we(fe)))}),[c.saveState.fetchState,i]);const l=St(c.saveState.fetchState);return r.useEffect((()=>{l==="In-Progress"&&c.saveState.fetchState==="Completed"&&e("..")}),[l,c.saveState.fetchState,e]),s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingSettingsPage,isReady:a.isInvoicingPageReady}),s.jsx(Yn,{address:d,fieldHelp:c.fieldHelp,addressLabel:c.addressLabel,appContent:n,authParams:a.authParams,dateFormatOptions:c.dateFormatOptions,deleteFileStatusById:a.deleteFileStatusById,filesEndPoint:a.filesEndPoint,isLoading:a.isLoading,isSaving:a.isSaving,localData:c.localData,saveErrorMessage:a.saveErrorMessage,settings:a.settings,updateFileStatusById:a.updateFileStatusById,onBackClick:()=>e(".."),onChange:v=>{i(Lo({localData:v}))},onDeleteFile:a.onDeleteFile,onEditFileName:a.onEditFileName,onOpenAddress:()=>{const v=`/${o}/invoicing/settings/branding/${fe}/`,u=J(t.state?.pathnameStackToGoBack,t.pathname);e(v,{state:{pathnameStackToGoBack:u}})},onSubmit:()=>i(Po()),updateFilesEntity:a.updateFilesEntity})]})}function Wa(){const n=L(),e=X("dunning");return s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingSettingsPage,isReady:e.isInvoicingPageReady}),s.jsx(Kn,{dunningScheduleActionOptions:e.dunningScheduleActionOptions,isLoading:e.isLoading,isSaving:e.isSaving,saveErrorMessage:e.saveErrorMessage,settings:e.settings,onBackClick:()=>n(".."),onSave:e.onSave})]})}function Ja(){const n=L(),e=X("integrations");return s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingSettingsPage,isReady:e.isInvoicingPageReady}),s.jsx(Qn,{integrationsSectionProps:{...e.integrationsSectionProps,onConfigureQBO:()=>n("../quickbooks"),onOpenPaymentDestination:()=>n("../payment-destination")},isLoading:e.isLoading,onBackClick:()=>n("..")})]})}function Xa(){const n=L(),e=X("payment-destination");return s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingSettingsPage,isReady:e.isInvoicingPageReady}),s.jsx(Gn,{fieldHelp:e.fieldHelp,isLoading:e.isLoading,isStripeBusy:e.isStripeBusy,saveErrorMessage:e.saveErrorMessage,settings:e.settings,stripeError:e.stripeError,stripeWebhookUrl:e.stripeWebhookUrl,onBackClick:()=>n(".."),onConnectStripe:e.onConnectStripe})]})}const es=T((function(n){const e=Wt(n);return{accountMappingKindOptions:e.accountMappingKindOptions,fieldHelp:e.fieldHelp,accounts:e.accounts,connection:e.connection,customerMatchingOptions:e.customerMatchingOptions,isBackfilling:e.backfillState.fetchState==="In-Progress",isLoading:e.isLoading,isSaving:e.saveState.fetchState==="In-Progress",isSyncEnabledSaved:e.isSyncEnabledSaved,localData:e.localData,nestedAccountHierarchy:e.nestedAccountHierarchy,retryFetchStateByTaskId:e.retryFetchStateByTaskId,saveErrorMessage:e.saveState.fetchState==="Error"?e.saveState.error?.message:void 0,syncHealth:e.syncHealth,syncStatusOptions:e.syncStatusOptions}}),(function(n){return{onChange:e=>{n(wo({localData:e}))},onReset:()=>{n($o())},onRetryTask:e=>{n(Gt(e))},onSave:()=>{p.trackInvoicingActionClick(m.Event.invoicingSettingsSaved,{tab:"quickbooks"}),n(Ao())},onStartBackfill:e=>{n(Qt(e))}}}))(zn);function ts(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),i=E(Oe),{configFetchState:o,settingsFetchState:a}=E(Wt);return r.useEffect((()=>{a!=="Not-Started"&&a!=="Error"||n(_e())}),[n,a]),r.useEffect((()=>{o==="Not-Started"&&n(le())}),[o,n]),Be({fetchSyncHealth:!0,loadAccountingPickers:!0}),s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingSettingsPage}),s.jsx(es,{onBackClick:()=>e(".."),onReconnect:()=>{de.init("/connection/auth",i.tenantEmailDomain??t??""),de.handleClick()},onRefresh:()=>n(zt())})]})}const ns={"payment-destination":"payment-destination",general:"branding",integrations:null,dunning:"dunning"};function is(){const n=ft(),e=P(),t=L(),[i,o]=z(),a=X(),{canEnableInvoicing:c,isEnablingInvoicing:d,isInvoicingEnabled:l,isQboConfigured:v,isStripeConnected:u}=E(Kt),g=i.get("tab");return r.useEffect((()=>{if(g==null)return;const f=ns[g];o({},{replace:!0}),f!=null&&t(f,{replace:!0})}),[g,t,o]),s.jsxs(s.Fragment,{children:[s.jsx($,{event:m.Event.invoicingSettingsPage,isReady:a.isInvoicingPageReady}),s.jsx(Wn,{analytics:p,integrationsSectionProps:{...a.integrationsSectionProps,onConfigureQBO:()=>t("quickbooks"),onOpenPaymentDestination:()=>t("payment-destination")},isEnablingInvoicing:d,isLoading:a.isLoading,meetingUrl:n("invoicing_settings"),settings:a.settings,onBrandingClick:()=>t("branding"),onDunningClick:()=>t("dunning"),canEnableInvoicing:c,isQboConfigured:v,isStripePaymentsReady:u,onEnableInvoicingClick:l?void 0:()=>{e(Fo())}})]})}function pt(){return s.jsxs(ie,{children:[s.jsx(y,{index:!0,element:s.jsx(is,{})}),s.jsx(y,{path:"payment-destination",element:s.jsx(Xa,{})}),s.jsx(y,{path:"branding",element:s.jsx(vt,{})}),s.jsx(y,{path:"branding/:addressType",element:s.jsx(vt,{appContent:s.jsx(Y,{isSubPage:!0,hideAddressBackButton:!0})})}),s.jsx(y,{path:"integrations",element:s.jsx(Ja,{})}),s.jsx(y,{path:"dunning",element:s.jsx(Wa,{})}),s.jsx(y,{path:"quickbooks",element:s.jsx(ts,{})}),s.jsx(y,{path:"*",element:s.jsx(B,{to:"..",replace:!0})})]})}function $s(){const n=P(),e=L(),{tenantEmailDomain:t}=w(),{areTenantIdsInSync:i}=F(),{enableState:o,fetchState:a,status:c}=E(Nt),d=St(o.fetchState),l=`/${t}/invoicing`,v=r.useRef(!1),u=E((g=>Le(g).connectionFetchState.fetchState));return r.useEffect((()=>{i&&(a!=="Not-Started"?a!=="Error"||v.current||(v.current=!0,n(le({cacheOverride:!1}))):n(le({cacheOverride:!1})))}),[i,n,a]),r.useEffect((()=>{i&&u==="Not-Started"&&n(Et())}),[i,n,u]),r.useEffect((()=>{d==="In-Progress"&&o.fetchState==="Completed"&&(e(`${l}/catalog`),n(Ro()))}),[d,o.fetchState,l,n,e]),c==null&&a!=="Error"?s.jsx(Jn,{}):c==="not_started"?s.jsxs(ie,{children:[s.jsx(y,{path:"promo",element:s.jsx(dt,{})}),s.jsx(y,{path:"*",element:s.jsx(B,{to:`${l}/promo`,replace:!0})})]}):c==="settings"?s.jsxs(ie,{children:[s.jsx(y,{path:"promo",element:s.jsx(dt,{})}),s.jsx(y,{path:"settings/*",element:s.jsx(pt,{})}),s.jsx(y,{path:"*",element:s.jsx(B,{to:`${l}/settings`,replace:!0})})]}):s.jsxs(ie,{children:[s.jsx(y,{path:"/",element:s.jsx(B,{to:"overview",replace:!0})}),s.jsx(y,{path:"overview",element:s.jsx(Aa,{})}),s.jsx(y,{path:"promo",element:s.jsx(B,{to:`${l}/overview`,replace:!0})}),s.jsx(y,{path:"customers",element:s.jsx(ra,{})}),s.jsx(y,{path:"customers/new",element:s.jsx(sa,{})}),s.jsx(y,{path:"customers/new/:addressType",element:s.jsx(Y,{})}),s.jsx(y,{path:"customers/:customer_id",element:s.jsx(oa,{})}),s.jsx(y,{path:"customers/:customer_id/:addressType",element:s.jsx(Y,{})}),s.jsx(y,{path:"subscriptions",element:s.jsx(Ka,{})}),s.jsx(y,{path:"subscriptions/new",element:s.jsx(qa,{})}),s.jsx(y,{path:"subscriptions/new/:addressType",element:s.jsx(Y,{})}),s.jsx(y,{path:"subscriptions/:subscription_id",element:s.jsx(Ma,{})}),s.jsx(y,{path:"subscriptions/:subscription_id/:addressType",element:s.jsx(Y,{})}),s.jsx(y,{path:"invoices",element:s.jsx(ja,{})}),s.jsx(y,{path:"invoices/create",element:s.jsx(Jo,{})}),s.jsx(y,{path:"invoices/:invoice_id",element:s.jsx(xa,{})}),s.jsx(y,{path:"invoices/:invoice_id/record-payment",element:s.jsx(gt,{})}),s.jsx(y,{path:"invoices/:invoice_id/issue-credit-note",element:s.jsx(Pa,{})}),s.jsx(y,{path:"payments",element:s.jsx(wa,{})}),s.jsx(y,{path:"payments/record",element:s.jsx(gt,{})}),s.jsx(y,{path:"payments/:transaction_id",element:s.jsx(Ga,{})}),s.jsx(y,{path:"credits",element:s.jsx(na,{})}),s.jsx(y,{path:"credits/:credit_note_id",element:s.jsx(ea,{})}),s.jsx(y,{path:"discounts",element:s.jsx(ha,{})}),s.jsx(y,{path:"discounts/new",element:s.jsx(zo,{})}),s.jsx(y,{path:"discounts/:coupon_id",element:s.jsx(fa,{})}),s.jsx(y,{path:"dunning",element:s.jsx(ka,{})}),s.jsx(y,{path:"dunning/:case_id",element:s.jsx(Ia,{})}),s.jsx(y,{path:"catalog",element:s.jsx(Qo,{})}),s.jsx(y,{path:"catalog/new",element:s.jsx(qo,{})}),s.jsx(y,{path:"catalog/:item_id",element:s.jsx(Bo,{})}),s.jsx(y,{path:"settings/*",element:s.jsx(pt,{})}),s.jsx(y,{path:"audit_log",element:s.jsx(Oo,{})}),s.jsx(y,{path:"data_import",element:s.jsx(ga,{})}),s.jsx(y,{path:"data_import/migrate",element:s.jsx(va,{})}),s.jsx(y,{path:"data_import/:sessionId",element:s.jsx(da,{})}),s.jsx(y,{path:"*",element:s.jsx(N,{})})]})}export{$s as default};
|