@zeniai/web-app-ui 5.3.30-dev → 5.3.31-dev

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.
Files changed (151) hide show
  1. package/dist/assets/{AccountMappingScreen-DwZgnpO5.js → AccountMappingScreen-UdzIeE_v.js} +2 -2
  2. package/dist/assets/AddressRoutes-CaXv_Hc-.js +1 -0
  3. package/dist/assets/AddressScreen-Dmypz8Cm.js +9 -0
  4. package/dist/assets/AiCfoScreen-DNghBGiO.js +22 -0
  5. package/dist/assets/AppDrawer-kOTtyyGv.js +10 -0
  6. package/dist/assets/{BillPayApprovalRoutes-k9A_OynM.js → BillPayApprovalRoutes--ALQ35-1.js} +1 -1
  7. package/dist/assets/{BillPayRoutes-DqYiVdlx.js → BillPayRoutes-BcTRlRv8.js} +9 -9
  8. package/dist/assets/{BusinessVerificationPageScreen-3R_uxb4s.js → BusinessVerificationPageScreen-DzWgqXwG.js} +2 -2
  9. package/dist/assets/{CardsAiCfoScreen-Bi4DWU-D.js → CardsAiCfoScreen-C_lk15md.js} +2 -2
  10. package/dist/assets/{ChargeCardRoutes-D_J5Jsfo.js → ChargeCardRoutes-BjIdSbvb.js} +1 -1
  11. package/dist/assets/{CompanyPassportScreen-CWgdKqmQ.js → CompanyPassportScreen-BKrZbZ6U.js} +1 -1
  12. package/dist/assets/{ConnectionAuthScreen-I4BlOLSg.js → ConnectionAuthScreen-Dzixugfp.js} +2 -2
  13. package/dist/assets/CustomerOnboardingAuthScreen-D31TaCjo.js +1 -0
  14. package/dist/assets/CustomerOnboardingRoutes-3cZyVkRN.js +30 -0
  15. package/dist/assets/{DashboardRoutes-ZMo0onUW.js → DashboardRoutes-BruAIMYU.js} +4 -4
  16. package/dist/assets/{DefaultTenantHome-BqaVnNI0.js → DefaultTenantHome-BtIFl_77.js} +1 -1
  17. package/dist/assets/DomesticWireDetailScreen-DhMVIfNi.js +18 -0
  18. package/dist/assets/DrawerScreen-CbY0_Vl5.js +1 -0
  19. package/dist/assets/EntityDetailRoutes-DpM6LjT5.js +1 -0
  20. package/dist/assets/ExpenseAutomationRoutes-Dll0r-g6.js +25 -0
  21. package/dist/assets/FeaturePreviewScreen-DRMNz052.js +1 -0
  22. package/dist/assets/HubSpotOAuthCallbackScreen-CaSUfoGO.js +1 -0
  23. package/dist/assets/{InboxNotificationsProvider-BIRPulc1.js → InboxNotificationsProvider-55rQDTXA.js} +1 -1
  24. package/dist/assets/InvoicingRoutes-B8ytNofm.js +2 -0
  25. package/dist/assets/{MagicLinkRoutes-Bnp_x7Nk.js → MagicLinkRoutes-DbYU9yxF.js} +19 -19
  26. package/dist/assets/MagicLinkSignInScreen-DSGkqzLp.js +12 -0
  27. package/dist/assets/{MobileAppDrawer-CcN5sT0f.js → MobileAppDrawer-BAV0ejOs.js} +1 -1
  28. package/dist/assets/NotFoundScreen-ButYFiTG.js +1 -0
  29. package/dist/assets/NotificationRoutes-jy7KSYzl.js +1 -0
  30. package/dist/assets/OAuthConsentScreen-4W57tKq2.js +1 -0
  31. package/dist/assets/PandLWithForecastRoutes-Diz_Rn8O.js +1 -0
  32. package/dist/assets/PaymentLinkScreen-BcSDg2Q0.js +21 -0
  33. package/dist/assets/PeopleRoutes-BsxSMUvq.js +22 -0
  34. package/dist/assets/PerformanceRoutes-DFKVpzlk.js +1 -0
  35. package/dist/assets/{Preview-ByUhhrY0.js → Preview-DNAybQkC.js} +1 -1
  36. package/dist/assets/{QBOConnectionScreen-IBpF64YF.js → QBOConnectionScreen-BmXy-56M.js} +1 -1
  37. package/dist/assets/ReimbursementApprovalRoutes-DW0hPEhv.js +1 -0
  38. package/dist/assets/{ReimbursementApprovalRuleDetailScreen-DetQk8QU.js → ReimbursementApprovalRuleDetailScreen-lyJcYNIg.js} +1 -1
  39. package/dist/assets/{ReimbursementRoutes-C9_awEWz.js → ReimbursementRoutes-BQ18gzav.js} +9 -9
  40. package/dist/assets/ReportsRoutes-iapNY-Ca.js +1 -0
  41. package/dist/assets/RewardsRoutes-CO35jNo-.js +1 -0
  42. package/dist/assets/ScreenRoutes-B2fNAm1R.js +2 -0
  43. package/dist/assets/{SettingsRoutes-BEdYLTM7.js → SettingsRoutes-DU6XdEOY.js} +6 -6
  44. package/dist/assets/{SetupPagesScreen-Sjd63M0p.js → SetupPagesScreen-CPUD_j1y.js} +5 -5
  45. package/dist/assets/SignInScreen-DL2bXt_7.js +1 -0
  46. package/dist/assets/SignOutScreen-DSAHdKNP.js +9 -0
  47. package/dist/assets/{TaskListScreen-DdkR5DtM.js → TaskListScreen-BH2rdLa7.js} +2 -2
  48. package/dist/assets/{TaskRoutes-LOSKO78T.js → TaskRoutes-C-JJtR4s.js} +2 -2
  49. package/dist/assets/TransactionDetailRoutes-CaIXvpDL.js +1 -0
  50. package/dist/assets/TransactionDetailScreen-srWo_3sK.js +5 -0
  51. package/dist/assets/TransactionListRoutes-CpBDr1qT.js +1 -0
  52. package/dist/assets/TreasuryRoutes-Ja8FQwZH.js +37 -0
  53. package/dist/assets/VendorsRoutes-CoiOEvIl.js +112 -0
  54. package/dist/assets/WiseConfirmationScreen-Dj7QUTt6.js +12 -0
  55. package/dist/assets/{ZeniAccountRoutes-BXfvCXHr.js → ZeniAccountRoutes-BjLND6jg.js} +8 -8
  56. package/dist/assets/ZeniAccountStatementScreen-BgOPM6A3.js +9 -0
  57. package/dist/assets/{accountMappingHelper-CU6wucuM.js → accountMappingHelper-CAg2qsF3.js} +1 -1
  58. package/dist/assets/{analytics-BgUj-hR5.js → analytics-CqoRAkB1.js} +1 -1
  59. package/dist/assets/{analyticsHelper-Cypw_xC0.js → analyticsHelper-Cjtujqyf.js} +1 -1
  60. package/dist/assets/{core-CMivCywN.js → core-CiFsHd3i.js} +1 -1
  61. package/dist/assets/{decodeURIComponentSafe-DRefzrWS.js → decodeURIComponentSafe-FYjI-TwW.js} +1 -1
  62. package/dist/assets/{dnd-B8NpvFCU.js → dnd-jcX4BW0a.js} +1 -1
  63. package/dist/assets/{empty-CllNfDt1.js → empty-4iGv0vIv.js} +1 -1
  64. package/dist/assets/{empty-CawgNJEF.js → empty-DSab5moc.js} +1 -1
  65. package/dist/assets/{emptyVideoElement-DBVZ22o5.js → emptyVideoElement-BSwv6rHf.js} +1 -1
  66. package/dist/assets/{epic-Cw47VvOB.js → epic-CjiXGW6W.js} +1 -1
  67. package/dist/assets/{expenseAutomationHelper-BuTA7ucx.js → expenseAutomationHelper-R2jHKv-Z.js} +1 -1
  68. package/dist/assets/getLocaleForTenant-CRduVQsY.js +1 -0
  69. package/dist/assets/{index-DCnLtCHg.js → index-0sENwUb_.js} +1 -1
  70. package/dist/assets/{index-BnHTUbKj.js → index-2FqIUc6q.js} +1 -1
  71. package/dist/assets/{index-CD-EymjZ.js → index-BJOxGHxN.js} +2 -2
  72. package/dist/assets/{index-baDCTZK3.js → index-CVbu1_bp.js} +1 -1
  73. package/dist/assets/{index-Cx55eHdr.js → index-Cz99TrBA.js} +1 -1
  74. package/dist/assets/{index-XoGDegrx.js → index-D6dzsKZ7.js} +1 -1
  75. package/dist/assets/{index-Djuwyi3d.js → index-DGRhh-da.js} +1 -1
  76. package/dist/assets/{index-DlMGj3Af.js → index-juRht-9c.js} +11171 -11173
  77. package/dist/assets/{lexical-Di6ZXkXF.js → lexical-DBiumTDC.js} +1 -1
  78. package/dist/assets/{liveblocks-mJJR3MsR.js → liveblocks-CkQ2CY6T.js} +1 -1
  79. package/dist/assets/{lottie-BTBtSLCO.js → lottie-cUBeCDOE.js} +1 -1
  80. package/dist/assets/{mui-C6XtNCo7.js → mui-FQy08n5j.js} +1 -1
  81. package/dist/assets/{pathToGoBack-DkQc48Fj.js → pathToGoBack-DWIhT07R.js} +1 -1
  82. package/dist/assets/{pdf-DSDpdkmb.js → pdf-C6cPvWx8.js} +3 -3
  83. package/dist/assets/{pdf-lib-BbzL8H1t.js → pdf-lib-C9DR7g8H.js} +1 -1
  84. package/dist/assets/{plaid-l8YRzpBD.js → plaid-Dw5LGskq.js} +1 -1
  85. package/dist/assets/{pusher-B8Hm6DMT.js → pusher-Bs1ItrSl.js} +1 -1
  86. package/dist/assets/{react-BeA4fGXX.js → react-B-yGKA4G.js} +1 -1
  87. package/dist/assets/{react-TfJbQpIh.js → react-BD9-MMqW.js} +1 -1
  88. package/dist/assets/{react-FrhNEOT3.js → react-BK8OyR5e.js} +1 -1
  89. package/dist/assets/{react-CFob_XAv.js → react-BzoedhUW.js} +1 -1
  90. package/dist/assets/{react-hzw_vRmY.js → react-N2ByZQ0u.js} +1 -1
  91. package/dist/assets/{react-CexHjl19.js → react-Rj21KKGh.js} +1 -1
  92. package/dist/assets/{recharts-Co0_Dmc-.js → recharts-CYbL6OhC.js} +1 -1
  93. package/dist/assets/routePaths-DqksJ4i_.js +1 -0
  94. package/dist/assets/{sentry-CItQHKpv.js → sentry-Lj2WEO6K.js} +1 -1
  95. package/dist/assets/{url-MmuF1WQx.js → url-Bk85P8pL.js} +1 -1
  96. package/dist/assets/{url-xQ9KNY2e.js → url-DhKb0GNI.js} +1 -1
  97. package/dist/assets/useAiCfoDashboardSuggestedQuestionsChips-B3XyU0Fo.js +1 -0
  98. package/dist/assets/useAskAiCfoHostNavButtonProps-Dhoa0fnv.js +1 -0
  99. package/dist/assets/useChargeCardPusherEvents-YQlWLN09.js +1 -0
  100. package/dist/assets/{useDeviceId-DJLfe-br.js → useDeviceId-CWOFj37E.js} +1 -1
  101. package/dist/assets/useEmailConnectResultRefresh-DpIv7GW3.js +1 -0
  102. package/dist/assets/useInitialThreadRequest-D-SxLs4P.js +1 -0
  103. package/dist/assets/{useTaskManagerAccess-B7jKkFFv.js → useTaskManagerAccess-BrCmQLIc.js} +1 -1
  104. package/dist/assets/{utils-macSqF2O.js → utils-DsJsAXTJ.js} +1 -1
  105. package/dist/assets/withTransactionSidePanel-BjLmCRfl.js +25 -0
  106. package/dist/assets/{zeni-epic-state-CqKBThJ0.js → zeni-epic-state-BdFiPfcm.js} +5 -5
  107. package/dist/index.html +1 -1
  108. package/package.json +4 -4
  109. package/dist/assets/AddressRoutes-C62kNpv6.js +0 -1
  110. package/dist/assets/AddressScreen-CLiV0mfm.js +0 -9
  111. package/dist/assets/AiCfoScreen-CqZYbNVQ.js +0 -22
  112. package/dist/assets/AppDrawer-BIggl_eh.js +0 -10
  113. package/dist/assets/CustomerOnboardingAuthScreen-B0zqTC0c.js +0 -1
  114. package/dist/assets/CustomerOnboardingRoutes-DD4F_qvN.js +0 -30
  115. package/dist/assets/DomesticWireDetailScreen-DQgaUF67.js +0 -18
  116. package/dist/assets/DrawerScreen-C6V6LURt.js +0 -1
  117. package/dist/assets/EntityDetailRoutes-Dm568mMt.js +0 -1
  118. package/dist/assets/ExpenseAutomationRoutes-B1Pq1A36.js +0 -38
  119. package/dist/assets/FeaturePreviewScreen-B_aYJlol.js +0 -1
  120. package/dist/assets/HubSpotOAuthCallbackScreen-ClpdRb8W.js +0 -1
  121. package/dist/assets/InvoicingRoutes-CBGWefo8.js +0 -2
  122. package/dist/assets/MagicLinkSignInScreen-D-6FJGXy.js +0 -12
  123. package/dist/assets/NotFoundScreen-fxNT7vgC.js +0 -1
  124. package/dist/assets/NotificationRoutes-BJVwBy9d.js +0 -1
  125. package/dist/assets/OAuthConsentScreen-DOVfptZ6.js +0 -1
  126. package/dist/assets/PandLWithForecastRoutes-CGhv0VSW.js +0 -1
  127. package/dist/assets/PaymentLinkScreen-Ci5gr6F7.js +0 -21
  128. package/dist/assets/PeopleRoutes-Bee6xNme.js +0 -22
  129. package/dist/assets/PerformanceRoutes-CD6W5bUU.js +0 -1
  130. package/dist/assets/ReimbursementApprovalRoutes-B5KvxgyI.js +0 -1
  131. package/dist/assets/ReportsRoutes-zo7ew2ho.js +0 -1
  132. package/dist/assets/RewardsRoutes-sTKxe2ug.js +0 -1
  133. package/dist/assets/ScheduleDetailsPrepaidExpensesScreen-CrWn6EEs.js +0 -25
  134. package/dist/assets/ScreenRoutes-DIYlkgqr.js +0 -2
  135. package/dist/assets/SignInScreen-_27hdB-U.js +0 -1
  136. package/dist/assets/SignOutScreen-CDr6KmEf.js +0 -9
  137. package/dist/assets/TransactionDetailRoutes-PwaQuAlN.js +0 -1
  138. package/dist/assets/TransactionDetailScreen-BlnM6_t9.js +0 -5
  139. package/dist/assets/TransactionListRoutes-Bx3VnAdU.js +0 -1
  140. package/dist/assets/TreasuryRoutes-BEdtvJnK.js +0 -37
  141. package/dist/assets/VendorsRoutes-DoXAtF5W.js +0 -88
  142. package/dist/assets/WiseConfirmationScreen-CVwWngtr.js +0 -12
  143. package/dist/assets/ZeniAccountStatementScreen-C3siKg2V.js +0 -9
  144. package/dist/assets/getLocaleForTenant-DCXbCJAu.js +0 -1
  145. package/dist/assets/routePaths-Bpj3i3MK.js +0 -1
  146. package/dist/assets/useAiCfoDashboardSuggestedQuestionsChips-CBJFyF6T.js +0 -1
  147. package/dist/assets/useAskAiCfoHostNavButtonProps-eZEppiJu.js +0 -1
  148. package/dist/assets/useChargeCardPusherEvents-D3l-sj94.js +0 -1
  149. package/dist/assets/useEmailConnectResultRefresh-DlmntN_b.js +0 -1
  150. package/dist/assets/useInitialThreadRequest-DBDsuRGA.js +0 -1
  151. package/dist/assets/withTransactionSidePanel-DMpmT4ot.js +0 -25
@@ -1,20 +1,20 @@
1
- import{j as d}from"./liveblocks-mJJR3MsR.js";import{i as K,j as S,g as Z,u as z,h as J,l as ne,k as oa,n as ft,o as F,N as yn}from"./core-CMivCywN.js";import{fB as L,V6 as Ze,bE as sa,br as Ee,Wt as vn,k6 as An,Wu as Gt,Wv as In,k9 as gt,Ww as qe,Wx as En,ke as Dn,Wy as Yt,Wz as Tn,ki as bt,WA as Qe,WB as xn,WC as wn,Vq as Pn,lk as On,WD as Fn,bn as Je,WE as ra,W4 as ue,bc as ia,ly as ca,lh as la,W6 as me,W5 as ae,fA as da,g6 as jn,gm as Ct,WF as Rn,WG as Bn,WH as ua,WI as Oe,Df as Me,Dg as Ue,DE as De,Dy as pe,Dk as Le,WJ as Mn,b_ as Ve,WK as Un,WL as Ln,WM as ma,WN as Fe,WO as Vn,e8 as et,zs as pa,WP as Gn,WQ as ha,WR as Yn,WS as Nn,WT as $n,WU as _t,U2 as kt,tx as Te,lX as xe,DO as yt,zz as Wn,zG as zn,WV as Xn,WW as Kn,Dh as Nt,WX as qn,zv as Ae,zq as fa,WY as be,WZ as $t,W_ as Qn,W$ as vt,U1 as At,BD as ga,X0 as Hn,X1 as ba,X2 as Zn,X3 as Jn,X4 as eo,X5 as It,BS as to,BZ as ao,X6 as no,X7 as oo,Dj as Wt,X8 as so,BB as Ca,X9 as Ce,Xa as zt,Xb as ro,bq as Sa,DT as _a,Xc as io,Xd as ka,Xe as co,Xf as lo,Xg as uo,Xh as Et,DL as mo,DN as po,Xi as ho,Xj as fo,Di as Xt,Xk as go,DR as ya,Xl as Se,Xm as Kt,Xn as bo,Xo as Co,Xp as va,lM as Aa,pT as Ia,lR as Ea,pR as Da,pQ as Ta,pP as xa,A_ as So,d8 as _o,pM as ko,Tq as yo,q1 as vo,Xq as Ao,Xr as Io,Xs as Eo,b5 as Dt,pX as Do,i9 as To,gF as xo,pW as wo,la as Po,pU as Oo,pS as Fo,dV as jo,dU as Ro}from"./zeni-epic-state-CqKBThJ0.js";import{z as V,av as oe,p as j,h as D,G as q,bb as Bo,as as Ge,a8 as Ye,bc as wa,Q as $,bd as Mo,be as Pa,E as Uo,bf as Lo,bg as Vo,a as Oa,a1 as Fa,d as ja,ar as Go,bh as Yo,ao as No,O as we,bi as Ra,s as ce,bj as Ba,bk as Ma,au as Ua,bl as $o,ai as Ne,J as $e,y as G,bm as Wo,n as zo,g as Xo,a4 as Ko,aq as qo,bn as Qo,bo as Ho,bp as Zo,bq as Ie}from"./index-DlMGj3Af.js";import{n as Tt}from"./mui-C6XtNCo7.js";import{a as b}from"./sentry-CItQHKpv.js";import{w as La}from"./withTransactionSidePanel-DMpmT4ot.js";import{c as Va,t as Pe,f as he,b as xt,a as wt,v as Jo}from"./routePaths-Bpj3i3MK.js";import{u as se}from"./useAskAiCfoHostNavButtonProps-eZEppiJu.js";import Be from"./NotFoundScreen-fxNT7vgC.js";import{u as Pt}from"./useInitialThreadRequest-DBDsuRGA.js";import{t as Ga}from"./analyticsHelper-Cypw_xC0.js";import{C as es}from"./CompanyPassportScreen-CWgdKqmQ.js";import{u as ts}from"./useAiCfoDashboardSuggestedQuestionsChips-CBJFyF6T.js";import{F as as}from"./FeaturePreviewScreen-B_aYJlol.js";import"./recharts-Co0_Dmc-.js";import"./analytics-BgUj-hR5.js";import"./plaid-l8YRzpBD.js";import"./dnd-B8NpvFCU.js";import"./stripe-cKAAJElX.js";import"./lottie-BTBtSLCO.js";import"./lexical-Di6ZXkXF.js";import"./pdf-DSDpdkmb.js";import"./utils-macSqF2O.js";import"./TransactionDetailScreen-BlnM6_t9.js";import"./decodeURIComponentSafe-DRefzrWS.js";import"./expenseAutomationHelper-BuTA7ucx.js";import"./MobileAppDrawer-CcN5sT0f.js";import"./InboxNotificationsProvider-BIRPulc1.js";import"./useTaskManagerAccess-B7jKkFFv.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},a=new e.Error().stack;a&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[a]="87e324bc-b708-44f9-8262-66c3d4435d5a",e._sentryDebugIdIdentifier="sentry-dbid-87e324bc-b708-44f9-8262-66c3d4435d5a")}catch{}})();const ns=La((function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{vendorId:o,reportDate:r}=K(),s=V.getSignedInUser(),i=S((E=>E.tenantState.currentTenantId)),l=S((E=>L(E))),{tenantEmailDomain:m}=K(),p=Z(),h=l?.companyName??"",f={userId:s?.userId??"",sessionId:s?.zeniSessionId??"",tenantId:i??""},c=b.useMemo((()=>({authParams:f,companyName:h,downloadEndPoint:`${oe}/agingDetailedReport`,timezone:Ze()})),[]),u=b.useMemo((()=>r!=null?sa(r):Ee()),[r]),C=z(),g=J(),k=S((E=>vn(E,u,o))),I=b.useCallback((()=>{o!=null&&k.fetchState!=="In-Progress"&&k.fetchState!=="Completed"&&C(An(o,u))}),[u]),v=b.useCallback((()=>{g("../../",{relative:"path"})}),[]),_=b.useCallback(((E,B)=>{C(Gt({sortKey:E,sortOrder:B}))}),[]),T=b.useCallback((E=>{C(Gt({downloadState:E}))}),[]),P=b.useCallback((E=>{if(e)e(E.transactionId,E.transactionType);else if(m!=null){const B=Va({id:E.transactionId,type:E.transactionType},m);g(B);const y=j(p.state?.pathnameStackToGoBack,p.pathname);g(B,{state:{pathnameStackToGoBack:y}})}}),[m,e]),x=b.useCallback((()=>{k.vendor!=null&&D.trackApAgingDetail("AP Aging",u.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),k.vendor.id,k.vendor.name)}),[k.vendor,u]);return b.useEffect((()=>{I()}),[]),b.useEffect((()=>{k.fetchState==="Completed"&&x()}),[x,k.fetchState]),d.jsx(Bo,{apAgingDetail:k,downloadParams:c,reportDate:u,analytics:D,onTransactionClick:P,onReload:I,onBackClick:v,onColumnSortConfigChanged:_,updateDownloadStateHandler:T,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})})),os=()=>{const e=z(),a=J(),t=S((_=>In(_))),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=se({mobileExploreReferrer:"AP Aging"});Ge({isDataReady:t.fetchState==="Completed"});const r=V.getSignedInUser(),s=S((_=>_.tenantState.currentTenantId)),i=S((_=>L(_))),l=i?.companyName??"",m={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s??""},p=b.useMemo((()=>({authParams:m,companyName:l,downloadEndPoint:`${oe}/agingReport`,timezone:Ze()})),[]),h=t.apAgingUIState.selectedDate??Ee(),f=b.useCallback((()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(gt(h))}),[]);b.useEffect((()=>{f()}),[]);const c=b.useCallback((()=>{a("../",{relative:"path"})}),[]),u=b.useCallback((_=>{e(qe({searchString:_}))}),[]),C=b.useCallback(((_,T)=>{e(qe({sortKey:T,sortOrder:_}))}),[]),g=b.useCallback((_=>{a(`./${_}/${h.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)}),[h]),k=b.useCallback((_=>{e(qe({downloadState:_}))}),[]),I=b.useCallback(((_,T)=>{}),[]),v=b.useCallback(((_,T)=>{e(qe({selectedDate:_,agingDateSelectionType:T})),e(gt(_))}),[]);return d.jsxs(d.Fragment,{children:[t.fetchState==="Completed"?d.jsx(Ye,{analytics:D,onLoad:_=>_.trackPageLoaded($.Event.agingReport,"AP Aging")}):null,d.jsx(wa,{uiState:t.apAgingUIState,report:t,downloadParams:p,analytics:D,onReloadReport:f,onBackClick:c,onSearchTextChange:u,onSortOrderChange:C,onEntityNameClick:g,updateDownloadStateHandler:k,onSelectedDateChanged:v,onNodeCollapseToggled:I,isAiCfoAccessEnabled:n,onAskAiCfoClick:o})]})},ss=La((function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{customerId:o,reportDate:r}=K(),s=V.getSignedInUser(),i=S((x=>L(x))),{tenantEmailDomain:l}=K(),m=Z(),p=i.companyName,h={userId:s?.userId??"",sessionId:s?.zeniSessionId??"",tenantId:i.tenantId},f=b.useMemo((()=>({authParams:h,companyName:p,downloadEndPoint:`${oe}/agingDetailedReport`,timezone:Ze()})),[]),c=b.useMemo((()=>r!=null?sa(r):Ee()),[r]),u=z(),C=J(),g=S((x=>En(x,c,o))),k=b.useCallback((()=>{o!=null&&g.fetchState!=="In-Progress"&&g.fetchState!=="Completed"&&u(Dn(o,c))}),[c]),I=b.useCallback((()=>{C("../../",{relative:"path"})}),[]),v=b.useCallback(((x,E)=>{u(Yt({sortKey:x,sortOrder:E}))}),[]),_=b.useCallback((x=>{u(Yt({downloadState:x}))}),[]),T=b.useCallback((x=>{if(e)e(x.transactionId,x.transactionType);else if(l!=null){const E=Va({id:x.transactionId,type:x.transactionType},l);C(E);const B=j(m.state?.pathnameStackToGoBack,m.pathname);C(E,{state:{pathnameStackToGoBack:B}})}}),[l,e]),P=b.useCallback((()=>{g.customer!=null&&D.trackArAgingDetail("AR Aging",c.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),g.customer.id,g.customer.name)}),[g.customer,c]);return b.useEffect((()=>{k()}),[]),b.useEffect((()=>{g.fetchState==="Completed"&&P()}),[g.fetchState,P]),d.jsx(Mo,{arAgingDetail:g,downloadParams:f,reportDate:c,analytics:D,onTransactionClick:T,onReload:k,onBackClick:I,onColumnSortConfigChanged:v,updateDownloadStateHandler:_,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})})),rs=()=>{const e=z(),a=J(),t=S((v=>Tn(v))),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=se({mobileExploreReferrer:"AR Aging"});Ge({isDataReady:t.fetchState==="Completed"});const r=V.getSignedInUser(),s=S((v=>L(v))),i=s.companyName,l={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s.tenantId},m=b.useMemo((()=>({authParams:l,companyName:i,downloadEndPoint:`${oe}/agingReport`,timezone:Ze()})),[]),p=t.arAgingUIState.selectedDate??Ee(),h=b.useCallback((()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(bt(p))}),[]);b.useEffect((()=>{h()}),[]);const f=b.useCallback((()=>{a("../",{relative:"path"})}),[]),c=b.useCallback((v=>{e(Qe({searchString:v}))}),[]),u=b.useCallback(((v,_)=>{e(Qe({sortKey:_,sortOrder:v}))}),[]),C=b.useCallback((v=>{a(`./${v}/${p.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)}),[p]),g=b.useCallback((v=>{e(Qe({downloadState:v}))}),[]),k=b.useCallback(((v,_)=>{e(Qe({selectedDate:v,agingDateSelectionType:_})),e(bt(v))}),[]),I=b.useCallback(((v,_)=>{e(xn({nodeId:v,isCollapsed:_}))}),[]);return d.jsxs(d.Fragment,{children:[t.fetchState==="Completed"?d.jsx(Ye,{analytics:D,onLoad:v=>v.trackPageLoaded($.Event.agingReport,"AR Aging")}):null,d.jsx(wa,{uiState:t.arAgingUIState,report:t,downloadParams:m,analytics:D,onReloadReport:h,onBackClick:f,onSearchTextChange:c,onSortOrderChange:u,onEntityNameClick:C,updateDownloadStateHandler:g,onSelectedDateChanged:k,onNodeCollapseToggled:I,isAiCfoAccessEnabled:n,onAskAiCfoClick:o})]})},Ya=(e,a)=>({key:a,title:e.accountName,amount:e.balance?.available,logoUri:e.logo?.toString(),source:e});function Na(e,a){const t=Pn(a.firstMonthOfFY);return{onItemClick:(n,o)=>{const r=o.accountName===""?o.accountDescription:o.accountName,s=Pe(a.tenantEmailDomain,o.accountId,o.accountType,r,"quarter",t,!1),i=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i,referrer:a.referrerType}})},onSetAccountsStatementDate:(n,o)=>{e(On(n,o))}}}const is=ne((function(e){const a=wn(e).accountsInOrder.map(((t,n)=>Ya(t,n)));return{sectionTitle:q.getLocalizedStrings().balanceCard.cashBalanceSectionTitle,transactionArray:a,fetchState:e.cashBalanceState.fetchState,analytics:D}}),Na)(Pa),cs=ne((function(e){const a=Fn(e).accountsInOrder.map(((o,r)=>Ya(o,r))),t=V.getSignedInUser(),n=Je(t);return{sectionTitle:q.getLocalizedStrings().balanceCard.cardBalanceSectionTitle,transactionArray:a,isZeniUser:n,fetchState:e.cardBalanceState.fetchState,analytics:D}}),Na)(Pa);function ls(){const e=J(),a=Z(),{tenantEmailDomain:t}=K(),n=S((o=>L(o).company?.companyInfo.firstMonthOfFY??1));return S((o=>o.cashBalanceState.fetchState))==="Error"?d.jsx(Be,{}):d.jsx(is,{tenantEmailDomain:t,location:a,referrerType:"Cash Balance",navigate:e,firstMonthOfFY:n})}function ds(){const e=J(),a=Z(),{tenantEmailDomain:t}=K(),n=S((o=>L(o).company?.companyInfo.firstMonthOfFY??1));return S((o=>o.cardBalanceState.fetchState))==="Error"?d.jsx(Be,{}):d.jsx(cs,{tenantEmailDomain:t,location:a,referrerType:"Card Balance",navigate:e,firstMonthOfFY:n})}const us=Tt.div`
1
+ import{j as d}from"./liveblocks-CkQ2CY6T.js";import{i as K,j as _,g as H,u as z,h as J,l as ne,k as oa,n as ft,o as F,N as yn}from"./core-CiFsHd3i.js";import{fB as L,Vc as He,bE as sa,br as Ee,Wp as vn,k6 as An,Wq as Gt,Wr as In,k9 as gt,Ws as qe,Wt as En,ke as Tn,Wu as Yt,Wv as Dn,ki as bt,Ww as Qe,Wx as xn,Wy as wn,Vw as Pn,lk as On,Wz as Fn,bn as Je,WA as ra,V0 as ue,bc as ia,ly as ca,lh as la,V2 as me,V1 as ae,fA as da,g6 as jn,gm as Ct,WB as Rn,WC as Bn,WD as ua,WE as Oe,Df as Me,Dg as Ue,DE as Te,Dy as pe,Dk as Le,WF as Mn,b_ as Ve,WG as Un,WH as Ln,WI as ma,WJ as Fe,WK as Vn,e8 as et,zs as pa,WL as Gn,WM as ha,WN as Yn,WO as Nn,WP as $n,WQ as St,T_ as kt,tx as De,lX as xe,DO as yt,zz as Wn,zG as zn,WR as Xn,WS as Kn,Dh as Nt,WT as qn,zv as Ae,zq as fa,WU as be,WV as $t,WW as Qn,WX as vt,TZ as At,BD as ga,WY as Zn,WZ as ba,W_ as Hn,W$ as Jn,X0 as eo,X1 as It,BS as to,BZ as ao,X2 as no,X3 as oo,Dj as Wt,X4 as so,BB as Ca,X5 as Ce,X6 as zt,X7 as ro,bq as _a,DT as Sa,X8 as io,X9 as ka,Xa as co,Xb as lo,Xc as uo,Xd as Et,DL as mo,DN as po,Xe as ho,Xf as fo,Di as Xt,Xg as go,DR as ya,Xh as _e,Xi as Kt,Xj as bo,Xk as Co,Xl as va,lM as Aa,pT as Ia,lR as Ea,pR as Ta,pQ as Da,pP as xa,A_ as _o,d8 as So,pM as ko,Tn as yo,q1 as vo,Xm as Ao,Xn as Io,Xo as Eo,b5 as Tt,pX as To,i9 as Do,gF as xo,pW as wo,la as Po,pU as Oo,pS as Fo,dV as jo,dU as Ro}from"./zeni-epic-state-BdFiPfcm.js";import{z as V,at as oe,p as j,h as T,G as q,b9 as Bo,aq as Ge,a6 as Ye,ba as wa,N as $,bb as Mo,bc as Pa,E as Uo,bd as Lo,be as Vo,a as Oa,$ as Fa,d as ja,ap as Go,bf as Yo,am as No,O as we,bg as Ra,s as ce,bh as Ba,bi as Ma,as as Ua,bj as $o,ag as Ne,V as $e,y as G,bk as Wo,n as zo,g as Xo,a2 as Ko,ao as qo,bl as Qo,bm as Zo,bn as Ho,bo as Ie}from"./index-juRht-9c.js";import{n as Dt}from"./mui-FQy08n5j.js";import{a as b}from"./sentry-Lj2WEO6K.js";import{w as La}from"./withTransactionSidePanel-BjLmCRfl.js";import{c as Va,t as Pe,f as he,b as xt,a as wt,v as Jo}from"./routePaths-DqksJ4i_.js";import{u as se}from"./useAskAiCfoHostNavButtonProps-Dhoa0fnv.js";import Be from"./NotFoundScreen-ButYFiTG.js";import{u as Pt}from"./useInitialThreadRequest-D-SxLs4P.js";import{t as Ga}from"./analyticsHelper-Cjtujqyf.js";import{C as es}from"./CompanyPassportScreen-BKrZbZ6U.js";import{u as ts}from"./useAiCfoDashboardSuggestedQuestionsChips-B3XyU0Fo.js";import{F as as}from"./FeaturePreviewScreen-DRMNz052.js";import"./recharts-CYbL6OhC.js";import"./analytics-CqoRAkB1.js";import"./plaid-Dw5LGskq.js";import"./dnd-jcX4BW0a.js";import"./stripe-cKAAJElX.js";import"./lottie-cUBeCDOE.js";import"./lexical-DBiumTDC.js";import"./pdf-C6cPvWx8.js";import"./utils-DsJsAXTJ.js";import"./TransactionDetailScreen-srWo_3sK.js";import"./decodeURIComponentSafe-FYjI-TwW.js";import"./expenseAutomationHelper-R2jHKv-Z.js";import"./MobileAppDrawer-BAV0ejOs.js";import"./InboxNotificationsProvider-55rQDTXA.js";import"./useTaskManagerAccess-BrCmQLIc.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},a=new e.Error().stack;a&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[a]="63699135-7221-48d9-aafe-da2eb9b82e65",e._sentryDebugIdIdentifier="sentry-dbid-63699135-7221-48d9-aafe-da2eb9b82e65")}catch{}})();const ns=La((function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{vendorId:o,reportDate:r}=K(),s=V.getSignedInUser(),i=_((E=>E.tenantState.currentTenantId)),l=_((E=>L(E))),{tenantEmailDomain:m}=K(),p=H(),h=l?.companyName??"",f={userId:s?.userId??"",sessionId:s?.zeniSessionId??"",tenantId:i??""},c=b.useMemo((()=>({authParams:f,companyName:h,downloadEndPoint:`${oe}/agingDetailedReport`,timezone:He()})),[]),u=b.useMemo((()=>r!=null?sa(r):Ee()),[r]),C=z(),g=J(),k=_((E=>vn(E,u,o))),I=b.useCallback((()=>{o!=null&&k.fetchState!=="In-Progress"&&k.fetchState!=="Completed"&&C(An(o,u))}),[u]),v=b.useCallback((()=>{g("../../",{relative:"path"})}),[]),S=b.useCallback(((E,B)=>{C(Gt({sortKey:E,sortOrder:B}))}),[]),D=b.useCallback((E=>{C(Gt({downloadState:E}))}),[]),P=b.useCallback((E=>{if(e)e(E.transactionId,E.transactionType);else if(m!=null){const B=Va({id:E.transactionId,type:E.transactionType},m);g(B);const y=j(p.state?.pathnameStackToGoBack,p.pathname);g(B,{state:{pathnameStackToGoBack:y}})}}),[m,e]),x=b.useCallback((()=>{k.vendor!=null&&T.trackApAgingDetail("AP Aging",u.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),k.vendor.id,k.vendor.name)}),[k.vendor,u]);return b.useEffect((()=>{I()}),[]),b.useEffect((()=>{k.fetchState==="Completed"&&x()}),[x,k.fetchState]),d.jsx(Bo,{apAgingDetail:k,downloadParams:c,reportDate:u,analytics:T,onTransactionClick:P,onReload:I,onBackClick:v,onColumnSortConfigChanged:S,updateDownloadStateHandler:D,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})})),os=()=>{const e=z(),a=J(),t=_((S=>In(S))),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=se({mobileExploreReferrer:"AP Aging"});Ge({isDataReady:t.fetchState==="Completed"});const r=V.getSignedInUser(),s=_((S=>S.tenantState.currentTenantId)),i=_((S=>L(S))),l=i?.companyName??"",m={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s??""},p=b.useMemo((()=>({authParams:m,companyName:l,downloadEndPoint:`${oe}/agingReport`,timezone:He()})),[]),h=t.apAgingUIState.selectedDate??Ee(),f=b.useCallback((()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(gt(h))}),[]);b.useEffect((()=>{f()}),[]);const c=b.useCallback((()=>{a("../",{relative:"path"})}),[]),u=b.useCallback((S=>{e(qe({searchString:S}))}),[]),C=b.useCallback(((S,D)=>{e(qe({sortKey:D,sortOrder:S}))}),[]),g=b.useCallback((S=>{a(`./${S}/${h.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)}),[h]),k=b.useCallback((S=>{e(qe({downloadState:S}))}),[]),I=b.useCallback(((S,D)=>{}),[]),v=b.useCallback(((S,D)=>{e(qe({selectedDate:S,agingDateSelectionType:D})),e(gt(S))}),[]);return d.jsxs(d.Fragment,{children:[t.fetchState==="Completed"?d.jsx(Ye,{analytics:T,onLoad:S=>S.trackPageLoaded($.Event.agingReport,"AP Aging")}):null,d.jsx(wa,{uiState:t.apAgingUIState,report:t,downloadParams:p,analytics:T,onReloadReport:f,onBackClick:c,onSearchTextChange:u,onSortOrderChange:C,onEntityNameClick:g,updateDownloadStateHandler:k,onSelectedDateChanged:v,onNodeCollapseToggled:I,isAiCfoAccessEnabled:n,onAskAiCfoClick:o})]})},ss=La((function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{customerId:o,reportDate:r}=K(),s=V.getSignedInUser(),i=_((x=>L(x))),{tenantEmailDomain:l}=K(),m=H(),p=i.companyName,h={userId:s?.userId??"",sessionId:s?.zeniSessionId??"",tenantId:i.tenantId},f=b.useMemo((()=>({authParams:h,companyName:p,downloadEndPoint:`${oe}/agingDetailedReport`,timezone:He()})),[]),c=b.useMemo((()=>r!=null?sa(r):Ee()),[r]),u=z(),C=J(),g=_((x=>En(x,c,o))),k=b.useCallback((()=>{o!=null&&g.fetchState!=="In-Progress"&&g.fetchState!=="Completed"&&u(Tn(o,c))}),[c]),I=b.useCallback((()=>{C("../../",{relative:"path"})}),[]),v=b.useCallback(((x,E)=>{u(Yt({sortKey:x,sortOrder:E}))}),[]),S=b.useCallback((x=>{u(Yt({downloadState:x}))}),[]),D=b.useCallback((x=>{if(e)e(x.transactionId,x.transactionType);else if(l!=null){const E=Va({id:x.transactionId,type:x.transactionType},l);C(E);const B=j(m.state?.pathnameStackToGoBack,m.pathname);C(E,{state:{pathnameStackToGoBack:B}})}}),[l,e]),P=b.useCallback((()=>{g.customer!=null&&T.trackArAgingDetail("AR Aging",c.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),g.customer.id,g.customer.name)}),[g.customer,c]);return b.useEffect((()=>{k()}),[]),b.useEffect((()=>{g.fetchState==="Completed"&&P()}),[g.fetchState,P]),d.jsx(Mo,{arAgingDetail:g,downloadParams:f,reportDate:c,analytics:T,onTransactionClick:D,onReload:k,onBackClick:I,onColumnSortConfigChanged:v,updateDownloadStateHandler:S,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})})),rs=()=>{const e=z(),a=J(),t=_((v=>Dn(v))),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=se({mobileExploreReferrer:"AR Aging"});Ge({isDataReady:t.fetchState==="Completed"});const r=V.getSignedInUser(),s=_((v=>L(v))),i=s.companyName,l={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s.tenantId},m=b.useMemo((()=>({authParams:l,companyName:i,downloadEndPoint:`${oe}/agingReport`,timezone:He()})),[]),p=t.arAgingUIState.selectedDate??Ee(),h=b.useCallback((()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(bt(p))}),[]);b.useEffect((()=>{h()}),[]);const f=b.useCallback((()=>{a("../",{relative:"path"})}),[]),c=b.useCallback((v=>{e(Qe({searchString:v}))}),[]),u=b.useCallback(((v,S)=>{e(Qe({sortKey:S,sortOrder:v}))}),[]),C=b.useCallback((v=>{a(`./${v}/${p.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)}),[p]),g=b.useCallback((v=>{e(Qe({downloadState:v}))}),[]),k=b.useCallback(((v,S)=>{e(Qe({selectedDate:v,agingDateSelectionType:S})),e(bt(v))}),[]),I=b.useCallback(((v,S)=>{e(xn({nodeId:v,isCollapsed:S}))}),[]);return d.jsxs(d.Fragment,{children:[t.fetchState==="Completed"?d.jsx(Ye,{analytics:T,onLoad:v=>v.trackPageLoaded($.Event.agingReport,"AR Aging")}):null,d.jsx(wa,{uiState:t.arAgingUIState,report:t,downloadParams:m,analytics:T,onReloadReport:h,onBackClick:f,onSearchTextChange:c,onSortOrderChange:u,onEntityNameClick:C,updateDownloadStateHandler:g,onSelectedDateChanged:k,onNodeCollapseToggled:I,isAiCfoAccessEnabled:n,onAskAiCfoClick:o})]})},Ya=(e,a)=>({key:a,title:e.accountName,amount:e.balance?.available,logoUri:e.logo?.toString(),source:e});function Na(e,a){const t=Pn(a.firstMonthOfFY);return{onItemClick:(n,o)=>{const r=o.accountName===""?o.accountDescription:o.accountName,s=Pe(a.tenantEmailDomain,o.accountId,o.accountType,r,"quarter",t,!1),i=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i,referrer:a.referrerType}})},onSetAccountsStatementDate:(n,o)=>{e(On(n,o))}}}const is=ne((function(e){const a=wn(e).accountsInOrder.map(((t,n)=>Ya(t,n)));return{sectionTitle:q.getLocalizedStrings().balanceCard.cashBalanceSectionTitle,transactionArray:a,fetchState:e.cashBalanceState.fetchState,analytics:T}}),Na)(Pa),cs=ne((function(e){const a=Fn(e).accountsInOrder.map(((o,r)=>Ya(o,r))),t=V.getSignedInUser(),n=Je(t);return{sectionTitle:q.getLocalizedStrings().balanceCard.cardBalanceSectionTitle,transactionArray:a,isZeniUser:n,fetchState:e.cardBalanceState.fetchState,analytics:T}}),Na)(Pa);function ls(){const e=J(),a=H(),{tenantEmailDomain:t}=K(),n=_((o=>L(o).company?.companyInfo.firstMonthOfFY??1));return _((o=>o.cashBalanceState.fetchState))==="Error"?d.jsx(Be,{}):d.jsx(is,{tenantEmailDomain:t,location:a,referrerType:"Cash Balance",navigate:e,firstMonthOfFY:n})}function ds(){const e=J(),a=H(),{tenantEmailDomain:t}=K(),n=_((o=>L(o).company?.companyInfo.firstMonthOfFY??1));return _((o=>o.cardBalanceState.fetchState))==="Error"?d.jsx(Be,{}):d.jsx(cs,{tenantEmailDomain:t,location:a,referrerType:"Card Balance",navigate:e,firstMonthOfFY:n})}const us=Dt.div`
2
2
  display: flex;
3
3
  flex: 1 1 auto;
4
4
  min-height: 100%;
5
5
  flex-direction: column;
6
6
  background-color: ${e=>e.theme.colors.grey4};
7
- `,ms=Tt.div`
7
+ `,ms=Dt.div`
8
8
  display: flex;
9
9
  flex: 1 1 auto;
10
10
  flex-direction: column;
11
11
  align-items: center;
12
12
  background-color: ${e=>e.theme.colors.grey4};
13
- `;function ps({title:e,reportId:a,entityAutoCompleteView:t,autoCompleteText:n,isAiCfoAccessEnabled:o,onAskAiCfoClick:r}){const s=J(),i=z(),l=Z(),{tenantEmailDomain:m}=K(),p=Uo();return d.jsxs(us,{children:[d.jsx(Lo,{source:a==="cash_balance"?"CashBalanceDetailScreen":"CardBalanceDetailScreen",title:e,onBackClick:()=>{s("../")},hideSearchBtn:!0,backgroundColor:p.colors.grey4,searchAutoComplete:{autoCompleteData:{entityAutoCompleteView:t,autoCompleteText:n},autoCompleteActions:{onAutoCompleteInputChange:h=>{h.trim().length>=2?i(me({searchString:h,searchOrigin:"navbar"})):h.trim().length===0&&i(ae("navbar"))},onAutoCompleteEntity:h=>{n!=null&&D?.trackSearch($.Event.search,hs(a),h.type,h.name,n);const f=he(h,m),c=j(l.state?.pathnameStackToGoBack,l.pathname);s(f,{state:{pathnameStackToGoBack:c}})}}},rightSideComponent:d.jsx(Vo,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r})}),d.jsx(ms,{children:a==="cash_balance"?d.jsx(ls,{}):d.jsx(ds,{})})]})}function qt(){const e=Z(),a=z(),t=S((c=>c.cashBalanceState.fetchState)),n=S((c=>c.cardBalanceState.fetchState)),o=V.getSignedInUser();if(o==null)throw Error("Can't access dashboard detail without signing in...");const r=ra((c=>{const u=ia(c,"/").split("/");return u[u.length-1]})(e.pathname));let s="Not-Started",i="";const l=q.getLocalizedStrings();switch(r){case"cash_balance":s=t,i=l.common.texts.cashBalance;break;case"card_balance":s=n,i=l.reportTitleById.card_balance;break;default:console.error(`${r} is not supported!`)}const{isAiCfoAccessEnabled:m,onAskAiCfoClick:p}=se({mobileExploreReferrer:r==="card_balance"?"Card Balance":"Cash Balance"});Ge({isDataReady:s==="Completed"});const h=S((c=>c.entityAutoCompleteState.autoCompleteText.navbar)),f=S((c=>ue(c,"navbar")));return b.useEffect((()=>{s==="Not-Started"&&(function(c,u){switch(u){case"card_balance":c(la());break;case"cash_balance":c(ca());break;default:throw new Error(`balance report type ${u} is not yet supported`)}})(a,r)}),[o,a,s]),d.jsxs(d.Fragment,{children:[s==="Completed"?d.jsx(Ye,{analytics:D,onLoad:c=>((u,C)=>{switch(C){case"card_balance":u.trackPageLoaded($.Event.cardBalance);break;case"cash_balance":u.trackPageLoaded($.Event.cashBalance);break;default:console.error(`Analytics: Not tracking Page Loaded for ${C}!`)}})(c,r)}):null,d.jsx(ps,{title:i,reportId:r,autoCompleteText:h,entityAutoCompleteView:f,isAiCfoAccessEnabled:m,onAskAiCfoClick:p})]})}const hs=e=>{switch(e){case"cash_balance":return"Cash Balance";case"card_balance":return"Card Balance";default:return"Dashboard"}},fs=[],Qt="insights_section";function We(e){const{mobileExploreReferrer:a}=e,t=z(),n=J(),o=Z(),{tenantEmailDomain:r}=K(),{setIsAiCfoOpen:s,setAiCfoSidePanelQuestionToSubmit:i}=Oa(),l=Fa(),m=Ua(l),p=oa(),h=S((R=>R.tenantState.fetchState==="Completed"||R.tenantState.activeTenantFetchState.fetchState==="Completed"?L(R):void 0)),f=h?.masterTOSInfo?.isMasterTOSAccepted??!1,c=S((R=>da(R))),u=c.uiState?.currentChatSessionId,C=c.allSessionsWithOrderedQuestionAnswers??fs,g=V.getSignedInUser()?.userId,k=ja(),I=Go()&&k&&r!=null,v=Yo(),_=No(!0),T=S((R=>v!=null?jn(R,v):void 0)),{useDynamicConfig:P}=we(),{configValue:x}=P(Ra.aiCfoMessageDynamicConfig),E=b.useMemo((()=>Array.isArray(x.default_message_list)?x.default_message_list:[]),[x.default_message_list]),B=b.useMemo((()=>E.slice(0,2)),[E]),y=v!=null&&T!=null&&T.fetchState!=="Completed"&&T.fetchState!=="Error"&&(_||T.fetchState==="In-Progress"),w=b.useMemo((()=>{if(v==null||T?.fetchState==="Error")return B;if(y)return[];const R=(T?.suggestedQuestions??[]).map((ie=>ie.trim())).filter((ie=>ie.length>0)).slice(0,2);return R.length===0?B:R}),[B,y,v,T?.fetchState,T?.suggestedQuestions]),re=b.useCallback(((R,ie)=>{if(g==null||R.trim()==="")return;if(!f)return void ce({location:o,navigate:n,mergeState:{referrer:a,aiCfoInitialQuestion:R,aiCfoInitialSubmissionSource:Qt,aiCfoSuggestionIndex:ie}});const Ke=Ba(p.getState());if(m){const at=j(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:at,referrer:a,aiCfoInitialQuestion:R,aiCfoShouldSubmit:!Ke}})}else{if(Ke)return t(Ct(R)),void s(!0);i(R),s(!0),Ma(t,R,Qt,u,C,g,ie,void 0)}}),[C,u,t,f,m,o,a,n,s,i,p,r,g]),Xe=b.useCallback((()=>{if(f)if(m){const R=j(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:R,referrer:a}})}else s(!0);else ce({location:o,navigate:n,mergeState:{referrer:a}})}),[f,m,o,a,n,s,r]);return b.useMemo((()=>{if(I)return{isSuggestedQuestionsLoading:y,onAskSomethingElseClick:Xe,onSuggestedQuestionClick:re,suggestedQuestions:w}}),[I,y,Xe,re,w])}const ze=$o,gs=ne((function(e){const a=Rn(e),t=Bn(e),n=ua(e),{scrollPosition:o,...r}=n,s=q.getLocalizedStrings().reportTitleById.cash_in_cash_out,i=V.getSignedInUser(),l=e.tenantState.currentTenantId,m=L(e),p=m?.companyName??"",h={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:l??""},f=e.entityAutoCompleteState.autoCompleteText.navbar,c=ue(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:p,statementEndPoint:`${oe}/statement`,authParams:h},analytics:D,autoCompleteData:{autoCompleteText:f,entityAutoCompleteView:c}}}),(function(e,a){return{updateDownloadStateHandler:t=>{e(Mn(t))},onTimeframeSelectionChanged:()=>{},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(Oe({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(De("month")),e(pe(a.firstMonthOfFY,t)),e(Oe({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Me(a.firstMonthOfFY,t,o,n)),n.length>0&&e(Ue(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.isCompareModeOn!==t&&setTimeout((()=>e(Oe({resetLeftScroll:!0}))),50)},onElementCollapseStateChanged:(t,n)=>{e(Oe({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(Oe({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(me({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ae("navbar"))},onAutoCompleteEntity:t=>{const n=he(t,a.tenantEmailDomain),o=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}}))(ze),bs=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,o=Ne(),{isAiCfoAccessEnabled:r,onAskAiCfoClick:s}=se({mobileExploreReferrer:"DashboardCashInCashOut"}),i=We({mobileExploreReferrer:"DashboardCashInCashOut"}),l=S((m=>ua(m))).mode==="compare_mode";return d.jsx(gs,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:a,location:t,isCompareModeOn:l,navigate:n,insightsSectionAiCfoInfo:i,isAiCfoAccessEnabled:r,onAskAiCfoClick:s,meetingUrl:Ve(o("dashboard_report_filters"))})},Cs=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=et(e);break;case"year":a="quarter",t={startDate:e.endDate.startOf("quarter"),endDate:e.endDate};break;case"free_range":console.error("free_range timeframe is not supported!")}return{timeframe:a,timePeriod:t}},Ss=ne((function(e){const a=Un(e),t=Ln(e),n=ma(e),{scrollPosition:o,...r}=n,s=q.getLocalizedStrings().reportTitleById.cash_position,i=V.getSignedInUser(),l=e.tenantState.currentTenantId,m=L(e),p=m?.companyName??"",h={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:l??""},f=e.entityAutoCompleteState.autoCompleteText.navbar,c=ue(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:p,statementEndPoint:`${oe}/statement`,authParams:h},analytics:D,autoCompleteData:{autoCompleteText:f,entityAutoCompleteView:c}}}),(function(e,a){return{updateDownloadStateHandler:t=>{e(Vn(t))},onTimeframeSelectionChanged:t=>{e(De(t)),setTimeout((()=>e(Fe({resetLeftScroll:!0}))),50)},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(Fe({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(pe(a.firstMonthOfFY,t)),e(Fe({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Me(a.firstMonthOfFY,t,o,n)),n.length>0&&e(Ue(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.isCompareModeOn!==t&&setTimeout((()=>e(Fe({resetLeftScroll:!0}))),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=Cs(n),s=t.accountName===""?t.accountDescription:t.accountName;if(o!=null&&r!=null){const i=Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),l=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:l,referrer:"Cash Position"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(me({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ae("navbar"))},onAutoCompleteEntity:t=>{const n=he(t,a.tenantEmailDomain),o=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onTableScroll:t=>{e(Fe({scrollPosition:t}))},onBackClick:()=>{a.navigate("../")}}}))(ze),_s=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,o=Ne(),{isAiCfoAccessEnabled:r,onAskAiCfoClick:s}=se({mobileExploreReferrer:"DashboardCashPosition"}),i=We({mobileExploreReferrer:"DashboardCashPosition"}),l=S((m=>ma(m))).mode==="compare_mode";return d.jsx(Ss,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:a,location:t,isCompareModeOn:l,navigate:n,insightsSectionAiCfoInfo:i,isAiCfoAccessEnabled:r,onAskAiCfoClick:s,meetingUrl:Ve(o("dashboard_report_filters"))})},W=(e,a,t,n)=>{e===!1?a!=null&&n("../../",{relative:"path"}):a!==t&&(a!=null&&a.length>0?n(`../${t}`,{replace:!0}):n(`./forecast/${t}`,{replace:!0}))},ks=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=et(e);break;case"year":a="quarter",t={startDate:e.endDate.startOf("quarter"),endDate:e.endDate};break;case"free_range":console.error("free_range timeframe is not supported!")}return{timeframe:a,timePeriod:t}},ys=ne((function(e){const a=pa(e),t=Gn(e),n=ha(e),o=Yn(e),r=Nn(e),s=$n(e),i=_t(e),{scrollPosition:l,...m}=i,p=t.reportTitle,h=V.getSignedInUser(),f=e.tenantState.currentTenantId,c=L(e),u=c?.companyName??"",C={userId:h?.userId??"",sessionId:h?.zeniSessionId??"",tenantId:f??""},g=e.entityAutoCompleteState.autoCompleteText.navbar,k=ue(e,"navbar"),I=kt(c);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,selectedProjectViewRangeReport:r,reportLabels:{reportTitle:p},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,highlightedProjectViewRangeReport:s,uiState:m,scrollPosition:l,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${oe}/statement`,authParams:C},analytics:D,isZeniUser:Je(h),autoCompleteData:{autoCompleteText:g,entityAutoCompleteView:k},isZeniCOAUsed:I,isAccountingClassesEnabled:xe(e),isAccountingProjectsEnabled:Te(e)}}),(function(e,a){return{updateDownloadStateHandler:t=>{e(Qn(t))},onTimeframeSelectionChanged:t=>{e(De(t)),setTimeout((()=>e(be({resetLeftScroll:!0}))),50)},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(be({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(pe(a.firstMonthOfFY,t)),e(be({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Me(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Ue(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&W(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout((()=>e(be({resetLeftScroll:!0}))),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=ks(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.projectsViewParentId?.projectId!=null?xt(a.tenantEmailDomain,t.accountId,t.accountType,t.projectsViewParentId.projectId,s,r,o):t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?wt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),l=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:l,referrer:"Burn Rate"}})}},onElementCollapseStateChanged:(t,n)=>{a.accountViewMode!=="project"?e(be({nodeCollapseState:{nodeId:t,isCollapsed:n}})):e($t({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{a.accountViewMode!=="project"?e(be({scrollPosition:t})):e($t({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(me({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ae("navbar"))},onAutoCompleteEntity:t=>{const n=he(t,a.tenantEmailDomain),o=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.selectedForecastId!=null?a.navigate("../../../"):a.navigate("../")},onForecastToggle:(t,n)=>{e(Ae(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?3:1,n)),t==="forecast_mode"?(e(Nt({viewMode:"account_group"})),e(fa(!1,n?.id)),n!=null&&W(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):W(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(be({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":t==="project"?"Projects":"Accounts","Burn Rate"),e(Nt({viewMode:t})),e(qn({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(Kn({classesToFilterOut:t}))},onUpdateProjectsToFilterOut:t=>{e(Xn({projectsToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(Wn()),a.isAccountingProjectsEnabled&&e(zn())},onResyncReports:()=>{e(yt(a.accountViewMode==="project"?"net_burn_or_income_by_projects":"net_burn_or_income_by_classes"))}}}))(ze),vs=e=>{const a=z(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,s=Ne(),{isAiCfoAccessEnabled:i,onAskAiCfoClick:l}=se({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),m=We({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),p=S((y=>_t(y))),h=p.isForecastModeOn,f=p.timeframe,c=p.selectedForecast?.id,u=S((y=>vt(y.forecastState,c??""))),C=S((y=>pa(y))),g=S((y=>At(y))),k=S((y=>xe(y))),I=S((y=>Te(y))),v=S((y=>ha(y).uiState.accountViewMode)),_=p.mode==="compare_mode",T=C.dataAvailable;b.useEffect((()=>{if(c!=null&&h===!0&&(W(h,r,c,o),u!=null)){const y=u?.forecastPeriod,w=T!=null&&y.endDate.isAfter(T?.endDate)===!0?T:y;a(pe(e.firstMonthOfFY,{startDate:w.endDate.startOf(f),endDate:w?.endDate}))}}),[c]);const P=$e(),{useFeatureGate:x}=we(),{isFeatureEnabled:E}=x(G.isReportsCommentingEnabled),B=Pt(E?P?.currentTenant?.companyId:void 0,{clearParams:C.fetchState==="Completed"});return d.jsx(ys,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,forecastIdFromUrlPath:r,location:n,isAccountingClassesEnabled:k,isAccountingProjectsEnabled:I,accountViewMode:v,isCompareModeOn:_,navigate:o,analytics:D,reportsResyncFetchState:g.reportsResyncFetchState,insightsSectionAiCfoInfo:m,isAiCfoAccessEnabled:i,onAskAiCfoClick:l,initialOpenThreadRequest:B,isReportsCommentingEnabled:E,meetingUrl:Ve(s("dashboard_report_filters"))})},As=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=et(e);break;case"year":a="quarter",t={startDate:e.endDate.startOf("quarter"),endDate:e.endDate};break;case"free_range":console.error("free_range timeframe is not supported!")}return{timeframe:a,timePeriod:t}},Is=ne((function(e){const a=ga(e),t=Hn(e),n=ba(e),o=Zn(e),r=Jn(e),s=eo(e),i=It(e),{scrollPosition:l,...m}=i,p=q.getLocalizedStrings().common.texts.operatingExpenses,h=V.getSignedInUser(),f=e.tenantState.currentTenantId,c=L(e),u=c?.companyName??"",C={userId:h?.userId??"",sessionId:h?.zeniSessionId??"",tenantId:f??""},g=e.entityAutoCompleteState.autoCompleteText.navbar,k=ue(e,"navbar"),I=kt(c);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,selectedProjectViewRangeReport:r,reportLabels:{reportTitle:p},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,highlightedProjectViewRangeReport:s,uiState:m,scrollPosition:l,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${oe}/statement`,authParams:C},analytics:D,isZeniUser:Je(h),autoCompleteData:{autoCompleteText:g,entityAutoCompleteView:k},isZeniCOAUsed:I,isAccountingClassesEnabled:xe(e),isAccountingProjectsEnabled:Te(e)}}),(function(e,a){return{updateDownloadStateHandler:t=>{e(ro(t))},onTimeframeSelectionChanged:t=>{e(De(t)),setTimeout((()=>e(Ce({resetLeftScroll:!0}))),50)},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(Ce({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(pe(a.firstMonthOfFY,t)),e(Ce({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Me(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Ue(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&W(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout((()=>e(Ce({resetLeftScroll:!0}))),50)},onAccountBalanceClick:a.hasTransactionAccess!==!0?void 0:(t,n)=>{const{timePeriod:o,timeframe:r}=As(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.projectsViewParentId?.projectId!=null?xt(a.tenantEmailDomain,t.accountId,t.accountType,t.projectsViewParentId.projectId,s,r,o):t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?wt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),l=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:l,referrer:"Operating Expenses"}})}},onElementCollapseStateChanged:(t,n)=>{a.accountViewMode!=="project"?e(Ce({nodeCollapseState:{nodeId:t,isCollapsed:n}})):e(zt({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{a.accountViewMode!=="project"?e(Ce({scrollPosition:t})):e(zt({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(me({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ae("navbar"))},onAutoCompleteEntity:t=>{const n=he(t,a.tenantEmailDomain),o=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.selectedForecastId!=null?a.navigate("../../../"):a.navigate("../")},onForecastToggle:(t,n)=>{e(Ae(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?3:1,n)),t=="forecast_mode"?(e(Wt({viewMode:"account_group"})),e(Ca(!1,n?.id)),n!=null&&W(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):W(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(Ce({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":t==="project"?"Projects":"Accounts","Operating Expenses"),e(Wt({viewMode:t})),e(so({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(oo({classesToFilterOut:t}))},onUpdateProjectsToFilterOut:t=>{e(no({projectsToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(to()),a.isAccountingProjectsEnabled&&e(ao())},onResyncReports:()=>{e(yt(a.accountViewMode==="project"?"operating_expenses_by_projects":"operating_expenses_by_classes"))}}}))(ze),Es=e=>{const a=z(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,s=Ne(),{isAiCfoAccessEnabled:i,onAskAiCfoClick:l}=se({mobileExploreReferrer:"DashboardOpEx"}),m=We({mobileExploreReferrer:"DashboardOpEx"}),p=S((w=>It(w))),h=p.isForecastModeOn,f=p.timeframe,c=p.selectedForecast?.id,u=S((w=>vt(w.forecastState,c??""))),C=S((w=>ga(w))),g=S((w=>At(w))),k=S((w=>xe(w))),I=S((w=>Te(w))),v=S((w=>ba(w).uiState.accountViewMode)),_=p.mode==="compare_mode",T=C.dataAvailable;b.useEffect((()=>{if(c!=null&&h===!0&&(W(h,r,c,o),u!=null)){const w=u?.forecastPeriod,re=T!=null&&w.endDate.isAfter(T?.endDate)===!0?T:w;a(pe(e.firstMonthOfFY,{startDate:re.endDate.startOf(f),endDate:re?.endDate}))}}),[c]);const P=$e(),x=P?.loggedInUserRole!=null&&Sa(P?.loggedInUserRole)!==!0,{useFeatureGate:E}=we(),{isFeatureEnabled:B}=E(G.isReportsCommentingEnabled),y=Pt(B?P?.currentTenant?.companyId:void 0,{clearParams:C.fetchState==="Completed"});return d.jsx(Is,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,location:n,isAccountingClassesEnabled:k,isAccountingProjectsEnabled:I,accountViewMode:v,isCompareModeOn:_,navigate:o,forecastIdFromUrlPath:r,analytics:D,hasTransactionAccess:x,reportsResyncFetchState:g.reportsResyncFetchState,insightsSectionAiCfoInfo:m,isAiCfoAccessEnabled:i,onAskAiCfoClick:l,initialOpenThreadRequest:y,isReportsCommentingEnabled:B,meetingUrl:Ve(s("dashboard_report_filters"))})},Ds=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=et(e);break;case"year":a="quarter",t={startDate:e.endDate.startOf("quarter"),endDate:e.endDate};break;case"free_range":console.error("free_range timeframe is not supported!")}return{timeframe:a,timePeriod:t}},Ts=ne((function(e){const a=_a(e),t=io(e),n=ka(e),o=co(e),r=lo(e),s=uo(e),i=Et(e),{scrollPosition:l,...m}=i,p=q.getLocalizedStrings().common.texts.revenue,h=V.getSignedInUser(),f=e.tenantState.currentTenantId,c=L(e),u=c?.companyName??"",C={userId:h?.userId??"",sessionId:h?.zeniSessionId??"",tenantId:f??""},g=e.entityAutoCompleteState.autoCompleteText.navbar,k=ue(e,"navbar"),I=kt(c);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,selectedProjectViewRangeReport:r,reportLabels:{reportTitle:p},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,highlightedProjectViewRangeReport:s,uiState:m,scrollPosition:l,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${oe}/statement`,authParams:C},analytics:D,isZeniUser:Je(h),autoCompleteData:{autoCompleteText:g,entityAutoCompleteView:k},isZeniCOAUsed:I,isAccountingClassesEnabled:xe(e),isAccountingProjectsEnabled:Te(e)}}),(function(e,a){return{updateDownloadStateHandler:t=>{e(bo(t))},onTimeframeSelectionChanged:t=>{e(De(t)),setTimeout((()=>e(Se({resetLeftScroll:!0}))),50)},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(Se({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(pe(a.firstMonthOfFY,t)),e(Se({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Me(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Ue(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&W(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout((()=>e(Se({resetLeftScroll:!0}))),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=Ds(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.projectsViewParentId?.projectId!=null?xt(a.tenantEmailDomain,t.accountId,t.accountType,t.projectsViewParentId.projectId,s,r,o):t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?wt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),l=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:l,referrer:"Revenues"}})}},onElementCollapseStateChanged:(t,n)=>{a.accountViewMode!=="project"?e(Se({nodeCollapseState:{nodeId:t,isCollapsed:n}})):e(Kt({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{a.accountViewMode!=="project"?e(Se({scrollPosition:t})):e(Kt({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(me({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ae("navbar"))},onAutoCompleteEntity:t=>{const n=he(t,a.tenantEmailDomain),o=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.selectedForecastId!=null?a.navigate("../../../"):a.navigate("../")},onForecastToggle:(t,n)=>{e(Ae(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?3:1,n)),t==="forecast_mode"?(e(Xt({viewMode:"account_group"})),e(ya(!1,n?.id)),n!=null&&W(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):W(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(Se({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":t==="project"?"Projects":"Accounts","Revenues"),e(Xt({viewMode:t})),e(go({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(fo({classesToFilterOut:t}))},onUpdateProjectsToFilterOut:t=>{e(ho({projectsToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(mo()),a.isAccountingProjectsEnabled&&e(po())},onResyncReports:()=>{e(yt(a.accountViewMode==="project"?"revenue_by_projects":"revenue_by_classes"))}}}))(ze),xs=e=>{const a=z(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,s=Ne(),{isAiCfoAccessEnabled:i,onAskAiCfoClick:l}=se({mobileExploreReferrer:"DashboardRevenue"}),m=We({mobileExploreReferrer:"DashboardRevenue"}),p=S((y=>Et(y))),h=p.isForecastModeOn,f=p.timeframe,c=p.selectedForecast?.id,u=S((y=>vt(y.forecastState,c??""))),C=S((y=>_a(y))),g=C.dataAvailable,k=p.mode==="compare_mode",I=S((y=>xe(y))),v=S((y=>Te(y))),_=S((y=>ka(y).uiState.accountViewMode)),T=S((y=>At(y)));b.useEffect((()=>{if(c!=null&&h===!0&&(W(h,r,c,o),u!=null)){const y=u?.forecastPeriod,w=g!=null&&y.endDate.isAfter(g?.endDate)===!0?g:y;a(pe(e.firstMonthOfFY,{startDate:w.endDate.startOf(f),endDate:w?.endDate}))}}),[c]);const P=$e(),{useFeatureGate:x}=we(),{isFeatureEnabled:E}=x(G.isReportsCommentingEnabled),B=Pt(E?P?.currentTenant?.companyId:void 0,{clearParams:C.fetchState==="Completed"});return d.jsx(Ts,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,isAccountingClassesEnabled:I,isAccountingProjectsEnabled:v,accountViewMode:_,isCompareModeOn:k,location:n,navigate:o,forecastIdFromUrlPath:r,analytics:D,reportsResyncFetchState:T.reportsResyncFetchState,insightsSectionAiCfoInfo:m,isAiCfoAccessEnabled:i,onAskAiCfoClick:l,initialOpenThreadRequest:B,isReportsCommentingEnabled:E,meetingUrl:Ve(s("dashboard_report_filters"))})},ws=e=>{let a,t;if(e.endDate!=null)switch(e.timePeriod){case"this_month_to_date":case"last_month":case"this_week_to_date":case"last_week":a="month",t={startDate:e.endDate.startOf("month"),endDate:e.endDate};break;case"last_3_months":case"last_6_months":case"last_12_months":case"this_year_to_date":case"last_year":a="quarter",t={startDate:e.endDate.startOf("quarter"),endDate:e.endDate};break;default:console.error(`this timeperiod ${e.timePeriod} is not supported!`)}return{timeframe:a,timePeriod:t}},Ps=ne((function(e){const a=Co(e),t=e.entityAutoCompleteState.autoCompleteText.navbar,n=ue(e,"navbar");return{report:a,analytics:D,autoCompleteData:{autoCompleteText:t,entityAutoCompleteView:n}}}),(function(e,a){return{onTimeframeSelectionChanged:t=>{D.trackTimeframeSwitch(Ga(t),"Top Expenses"),e(va(t))},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=ws(n),s=t.accountName===""?t.accountDescription:t.accountName;if(o!=null&&r!=null){const i=Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),l=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:l,referrer:"Top Expenses"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(me({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ae("navbar"))},onAutoCompleteEntity:t=>{const n=he(t,a.tenantEmailDomain),o=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}}))(Wo),Os=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e;return d.jsx(Ps,{tenantEmailDomain:a,location:t,navigate:n})},Fs=Tt.div`
13
+ `;function ps({title:e,reportId:a,entityAutoCompleteView:t,autoCompleteText:n,isAiCfoAccessEnabled:o,onAskAiCfoClick:r}){const s=J(),i=z(),l=H(),{tenantEmailDomain:m}=K(),p=Uo();return d.jsxs(us,{children:[d.jsx(Lo,{source:a==="cash_balance"?"CashBalanceDetailScreen":"CardBalanceDetailScreen",title:e,onBackClick:()=>{s("../")},hideSearchBtn:!0,backgroundColor:p.colors.grey4,searchAutoComplete:{autoCompleteData:{entityAutoCompleteView:t,autoCompleteText:n},autoCompleteActions:{onAutoCompleteInputChange:h=>{h.trim().length>=2?i(me({searchString:h,searchOrigin:"navbar"})):h.trim().length===0&&i(ae("navbar"))},onAutoCompleteEntity:h=>{n!=null&&T?.trackSearch($.Event.search,hs(a),h.type,h.name,n);const f=he(h,m),c=j(l.state?.pathnameStackToGoBack,l.pathname);s(f,{state:{pathnameStackToGoBack:c}})}}},rightSideComponent:d.jsx(Vo,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r})}),d.jsx(ms,{children:a==="cash_balance"?d.jsx(ls,{}):d.jsx(ds,{})})]})}function qt(){const e=H(),a=z(),t=_((c=>c.cashBalanceState.fetchState)),n=_((c=>c.cardBalanceState.fetchState)),o=V.getSignedInUser();if(o==null)throw Error("Can't access dashboard detail without signing in...");const r=ra((c=>{const u=ia(c,"/").split("/");return u[u.length-1]})(e.pathname));let s="Not-Started",i="";const l=q.getLocalizedStrings();switch(r){case"cash_balance":s=t,i=l.common.texts.cashBalance;break;case"card_balance":s=n,i=l.reportTitleById.card_balance;break;default:console.error(`${r} is not supported!`)}const{isAiCfoAccessEnabled:m,onAskAiCfoClick:p}=se({mobileExploreReferrer:r==="card_balance"?"Card Balance":"Cash Balance"});Ge({isDataReady:s==="Completed"});const h=_((c=>c.entityAutoCompleteState.autoCompleteText.navbar)),f=_((c=>ue(c,"navbar")));return b.useEffect((()=>{s==="Not-Started"&&(function(c,u){switch(u){case"card_balance":c(la());break;case"cash_balance":c(ca());break;default:throw new Error(`balance report type ${u} is not yet supported`)}})(a,r)}),[o,a,s]),d.jsxs(d.Fragment,{children:[s==="Completed"?d.jsx(Ye,{analytics:T,onLoad:c=>((u,C)=>{switch(C){case"card_balance":u.trackPageLoaded($.Event.cardBalance);break;case"cash_balance":u.trackPageLoaded($.Event.cashBalance);break;default:console.error(`Analytics: Not tracking Page Loaded for ${C}!`)}})(c,r)}):null,d.jsx(ps,{title:i,reportId:r,autoCompleteText:h,entityAutoCompleteView:f,isAiCfoAccessEnabled:m,onAskAiCfoClick:p})]})}const hs=e=>{switch(e){case"cash_balance":return"Cash Balance";case"card_balance":return"Card Balance";default:return"Dashboard"}},fs=[],Qt="insights_section";function We(e){const{mobileExploreReferrer:a}=e,t=z(),n=J(),o=H(),{tenantEmailDomain:r}=K(),{setIsAiCfoOpen:s,setAiCfoSidePanelQuestionToSubmit:i}=Oa(),l=Fa(),m=Ua(l),p=oa(),h=_((R=>R.tenantState.fetchState==="Completed"||R.tenantState.activeTenantFetchState.fetchState==="Completed"?L(R):void 0)),f=h?.masterTOSInfo?.isMasterTOSAccepted??!1,c=_((R=>da(R))),u=c.uiState?.currentChatSessionId,C=c.allSessionsWithOrderedQuestionAnswers??fs,g=V.getSignedInUser()?.userId,k=ja(),I=Go()&&k&&r!=null,v=Yo(),S=No(!0),D=_((R=>v!=null?jn(R,v):void 0)),{useDynamicConfig:P}=we(),{configValue:x}=P(Ra.aiCfoMessageDynamicConfig),E=b.useMemo((()=>Array.isArray(x.default_message_list)?x.default_message_list:[]),[x.default_message_list]),B=b.useMemo((()=>E.slice(0,2)),[E]),y=v!=null&&D!=null&&D.fetchState!=="Completed"&&D.fetchState!=="Error"&&(S||D.fetchState==="In-Progress"),w=b.useMemo((()=>{if(v==null||D?.fetchState==="Error")return B;if(y)return[];const R=(D?.suggestedQuestions??[]).map((ie=>ie.trim())).filter((ie=>ie.length>0)).slice(0,2);return R.length===0?B:R}),[B,y,v,D?.fetchState,D?.suggestedQuestions]),re=b.useCallback(((R,ie)=>{if(g==null||R.trim()==="")return;if(!f)return void ce({location:o,navigate:n,mergeState:{referrer:a,aiCfoInitialQuestion:R,aiCfoInitialSubmissionSource:Qt,aiCfoSuggestionIndex:ie}});const Ke=Ba(p.getState());if(m){const at=j(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:at,referrer:a,aiCfoInitialQuestion:R,aiCfoShouldSubmit:!Ke}})}else{if(Ke)return t(Ct(R)),void s(!0);i(R),s(!0),Ma(t,R,Qt,u,C,g,ie,void 0)}}),[C,u,t,f,m,o,a,n,s,i,p,r,g]),Xe=b.useCallback((()=>{if(f)if(m){const R=j(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:R,referrer:a}})}else s(!0);else ce({location:o,navigate:n,mergeState:{referrer:a}})}),[f,m,o,a,n,s,r]);return b.useMemo((()=>{if(I)return{isSuggestedQuestionsLoading:y,onAskSomethingElseClick:Xe,onSuggestedQuestionClick:re,suggestedQuestions:w}}),[I,y,Xe,re,w])}const ze=$o,gs=ne((function(e){const a=Rn(e),t=Bn(e),n=ua(e),{scrollPosition:o,...r}=n,s=q.getLocalizedStrings().reportTitleById.cash_in_cash_out,i=V.getSignedInUser(),l=e.tenantState.currentTenantId,m=L(e),p=m?.companyName??"",h={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:l??""},f=e.entityAutoCompleteState.autoCompleteText.navbar,c=ue(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:p,statementEndPoint:`${oe}/statement`,authParams:h},analytics:T,autoCompleteData:{autoCompleteText:f,entityAutoCompleteView:c}}}),(function(e,a){return{updateDownloadStateHandler:t=>{e(Mn(t))},onTimeframeSelectionChanged:()=>{},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(Oe({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(Te("month")),e(pe(a.firstMonthOfFY,t)),e(Oe({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Me(a.firstMonthOfFY,t,o,n)),n.length>0&&e(Ue(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.isCompareModeOn!==t&&setTimeout((()=>e(Oe({resetLeftScroll:!0}))),50)},onElementCollapseStateChanged:(t,n)=>{e(Oe({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(Oe({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(me({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ae("navbar"))},onAutoCompleteEntity:t=>{const n=he(t,a.tenantEmailDomain),o=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}}))(ze),bs=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,o=Ne(),{isAiCfoAccessEnabled:r,onAskAiCfoClick:s}=se({mobileExploreReferrer:"DashboardCashInCashOut"}),i=We({mobileExploreReferrer:"DashboardCashInCashOut"}),l=_((m=>ua(m))).mode==="compare_mode";return d.jsx(gs,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:a,location:t,isCompareModeOn:l,navigate:n,insightsSectionAiCfoInfo:i,isAiCfoAccessEnabled:r,onAskAiCfoClick:s,meetingUrl:Ve(o("dashboard_report_filters"))})},Cs=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=et(e);break;case"year":a="quarter",t={startDate:e.endDate.startOf("quarter"),endDate:e.endDate};break;case"free_range":console.error("free_range timeframe is not supported!")}return{timeframe:a,timePeriod:t}},_s=ne((function(e){const a=Un(e),t=Ln(e),n=ma(e),{scrollPosition:o,...r}=n,s=q.getLocalizedStrings().reportTitleById.cash_position,i=V.getSignedInUser(),l=e.tenantState.currentTenantId,m=L(e),p=m?.companyName??"",h={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:l??""},f=e.entityAutoCompleteState.autoCompleteText.navbar,c=ue(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:p,statementEndPoint:`${oe}/statement`,authParams:h},analytics:T,autoCompleteData:{autoCompleteText:f,entityAutoCompleteView:c}}}),(function(e,a){return{updateDownloadStateHandler:t=>{e(Vn(t))},onTimeframeSelectionChanged:t=>{e(Te(t)),setTimeout((()=>e(Fe({resetLeftScroll:!0}))),50)},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(Fe({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(pe(a.firstMonthOfFY,t)),e(Fe({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Me(a.firstMonthOfFY,t,o,n)),n.length>0&&e(Ue(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.isCompareModeOn!==t&&setTimeout((()=>e(Fe({resetLeftScroll:!0}))),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=Cs(n),s=t.accountName===""?t.accountDescription:t.accountName;if(o!=null&&r!=null){const i=Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),l=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:l,referrer:"Cash Position"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(me({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ae("navbar"))},onAutoCompleteEntity:t=>{const n=he(t,a.tenantEmailDomain),o=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onTableScroll:t=>{e(Fe({scrollPosition:t}))},onBackClick:()=>{a.navigate("../")}}}))(ze),Ss=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,o=Ne(),{isAiCfoAccessEnabled:r,onAskAiCfoClick:s}=se({mobileExploreReferrer:"DashboardCashPosition"}),i=We({mobileExploreReferrer:"DashboardCashPosition"}),l=_((m=>ma(m))).mode==="compare_mode";return d.jsx(_s,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:a,location:t,isCompareModeOn:l,navigate:n,insightsSectionAiCfoInfo:i,isAiCfoAccessEnabled:r,onAskAiCfoClick:s,meetingUrl:Ve(o("dashboard_report_filters"))})},W=(e,a,t,n)=>{e===!1?a!=null&&n("../../",{relative:"path"}):a!==t&&(a!=null&&a.length>0?n(`../${t}`,{replace:!0}):n(`./forecast/${t}`,{replace:!0}))},ks=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=et(e);break;case"year":a="quarter",t={startDate:e.endDate.startOf("quarter"),endDate:e.endDate};break;case"free_range":console.error("free_range timeframe is not supported!")}return{timeframe:a,timePeriod:t}},ys=ne((function(e){const a=pa(e),t=Gn(e),n=ha(e),o=Yn(e),r=Nn(e),s=$n(e),i=St(e),{scrollPosition:l,...m}=i,p=t.reportTitle,h=V.getSignedInUser(),f=e.tenantState.currentTenantId,c=L(e),u=c?.companyName??"",C={userId:h?.userId??"",sessionId:h?.zeniSessionId??"",tenantId:f??""},g=e.entityAutoCompleteState.autoCompleteText.navbar,k=ue(e,"navbar"),I=kt(c);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,selectedProjectViewRangeReport:r,reportLabels:{reportTitle:p},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,highlightedProjectViewRangeReport:s,uiState:m,scrollPosition:l,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${oe}/statement`,authParams:C},analytics:T,isZeniUser:Je(h),autoCompleteData:{autoCompleteText:g,entityAutoCompleteView:k},isZeniCOAUsed:I,isAccountingClassesEnabled:xe(e),isAccountingProjectsEnabled:De(e)}}),(function(e,a){return{updateDownloadStateHandler:t=>{e(Qn(t))},onTimeframeSelectionChanged:t=>{e(Te(t)),setTimeout((()=>e(be({resetLeftScroll:!0}))),50)},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(be({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(pe(a.firstMonthOfFY,t)),e(be({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Me(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Ue(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&W(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout((()=>e(be({resetLeftScroll:!0}))),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=ks(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.projectsViewParentId?.projectId!=null?xt(a.tenantEmailDomain,t.accountId,t.accountType,t.projectsViewParentId.projectId,s,r,o):t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?wt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),l=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:l,referrer:"Burn Rate"}})}},onElementCollapseStateChanged:(t,n)=>{a.accountViewMode!=="project"?e(be({nodeCollapseState:{nodeId:t,isCollapsed:n}})):e($t({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{a.accountViewMode!=="project"?e(be({scrollPosition:t})):e($t({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(me({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ae("navbar"))},onAutoCompleteEntity:t=>{const n=he(t,a.tenantEmailDomain),o=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.selectedForecastId!=null?a.navigate("../../../"):a.navigate("../")},onForecastToggle:(t,n)=>{e(Ae(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?3:1,n)),t==="forecast_mode"?(e(Nt({viewMode:"account_group"})),e(fa(!1,n?.id)),n!=null&&W(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):W(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(be({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":t==="project"?"Projects":"Accounts","Burn Rate"),e(Nt({viewMode:t})),e(qn({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(Kn({classesToFilterOut:t}))},onUpdateProjectsToFilterOut:t=>{e(Xn({projectsToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(Wn()),a.isAccountingProjectsEnabled&&e(zn())},onResyncReports:()=>{e(yt(a.accountViewMode==="project"?"net_burn_or_income_by_projects":"net_burn_or_income_by_classes"))}}}))(ze),vs=e=>{const a=z(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,s=Ne(),{isAiCfoAccessEnabled:i,onAskAiCfoClick:l}=se({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),m=We({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),p=_((y=>St(y))),h=p.isForecastModeOn,f=p.timeframe,c=p.selectedForecast?.id,u=_((y=>vt(y.forecastState,c??""))),C=_((y=>pa(y))),g=_((y=>At(y))),k=_((y=>xe(y))),I=_((y=>De(y))),v=_((y=>ha(y).uiState.accountViewMode)),S=p.mode==="compare_mode",D=C.dataAvailable;b.useEffect((()=>{if(c!=null&&h===!0&&(W(h,r,c,o),u!=null)){const y=u?.forecastPeriod,w=D!=null&&y.endDate.isAfter(D?.endDate)===!0?D:y;a(pe(e.firstMonthOfFY,{startDate:w.endDate.startOf(f),endDate:w?.endDate}))}}),[c]);const P=$e(),{useFeatureGate:x}=we(),{isFeatureEnabled:E}=x(G.isReportsCommentingEnabled),B=Pt(E?P?.currentTenant?.companyId:void 0,{clearParams:C.fetchState==="Completed"});return d.jsx(ys,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,forecastIdFromUrlPath:r,location:n,isAccountingClassesEnabled:k,isAccountingProjectsEnabled:I,accountViewMode:v,isCompareModeOn:S,navigate:o,analytics:T,reportsResyncFetchState:g.reportsResyncFetchState,insightsSectionAiCfoInfo:m,isAiCfoAccessEnabled:i,onAskAiCfoClick:l,initialOpenThreadRequest:B,isReportsCommentingEnabled:E,meetingUrl:Ve(s("dashboard_report_filters"))})},As=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=et(e);break;case"year":a="quarter",t={startDate:e.endDate.startOf("quarter"),endDate:e.endDate};break;case"free_range":console.error("free_range timeframe is not supported!")}return{timeframe:a,timePeriod:t}},Is=ne((function(e){const a=ga(e),t=Zn(e),n=ba(e),o=Hn(e),r=Jn(e),s=eo(e),i=It(e),{scrollPosition:l,...m}=i,p=q.getLocalizedStrings().common.texts.operatingExpenses,h=V.getSignedInUser(),f=e.tenantState.currentTenantId,c=L(e),u=c?.companyName??"",C={userId:h?.userId??"",sessionId:h?.zeniSessionId??"",tenantId:f??""},g=e.entityAutoCompleteState.autoCompleteText.navbar,k=ue(e,"navbar"),I=kt(c);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,selectedProjectViewRangeReport:r,reportLabels:{reportTitle:p},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,highlightedProjectViewRangeReport:s,uiState:m,scrollPosition:l,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${oe}/statement`,authParams:C},analytics:T,isZeniUser:Je(h),autoCompleteData:{autoCompleteText:g,entityAutoCompleteView:k},isZeniCOAUsed:I,isAccountingClassesEnabled:xe(e),isAccountingProjectsEnabled:De(e)}}),(function(e,a){return{updateDownloadStateHandler:t=>{e(ro(t))},onTimeframeSelectionChanged:t=>{e(Te(t)),setTimeout((()=>e(Ce({resetLeftScroll:!0}))),50)},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(Ce({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(pe(a.firstMonthOfFY,t)),e(Ce({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Me(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Ue(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&W(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout((()=>e(Ce({resetLeftScroll:!0}))),50)},onAccountBalanceClick:a.hasTransactionAccess!==!0?void 0:(t,n)=>{const{timePeriod:o,timeframe:r}=As(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.projectsViewParentId?.projectId!=null?xt(a.tenantEmailDomain,t.accountId,t.accountType,t.projectsViewParentId.projectId,s,r,o):t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?wt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),l=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:l,referrer:"Operating Expenses"}})}},onElementCollapseStateChanged:(t,n)=>{a.accountViewMode!=="project"?e(Ce({nodeCollapseState:{nodeId:t,isCollapsed:n}})):e(zt({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{a.accountViewMode!=="project"?e(Ce({scrollPosition:t})):e(zt({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(me({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ae("navbar"))},onAutoCompleteEntity:t=>{const n=he(t,a.tenantEmailDomain),o=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.selectedForecastId!=null?a.navigate("../../../"):a.navigate("../")},onForecastToggle:(t,n)=>{e(Ae(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?3:1,n)),t=="forecast_mode"?(e(Wt({viewMode:"account_group"})),e(Ca(!1,n?.id)),n!=null&&W(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):W(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(Ce({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":t==="project"?"Projects":"Accounts","Operating Expenses"),e(Wt({viewMode:t})),e(so({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(oo({classesToFilterOut:t}))},onUpdateProjectsToFilterOut:t=>{e(no({projectsToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(to()),a.isAccountingProjectsEnabled&&e(ao())},onResyncReports:()=>{e(yt(a.accountViewMode==="project"?"operating_expenses_by_projects":"operating_expenses_by_classes"))}}}))(ze),Es=e=>{const a=z(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,s=Ne(),{isAiCfoAccessEnabled:i,onAskAiCfoClick:l}=se({mobileExploreReferrer:"DashboardOpEx"}),m=We({mobileExploreReferrer:"DashboardOpEx"}),p=_((w=>It(w))),h=p.isForecastModeOn,f=p.timeframe,c=p.selectedForecast?.id,u=_((w=>vt(w.forecastState,c??""))),C=_((w=>ga(w))),g=_((w=>At(w))),k=_((w=>xe(w))),I=_((w=>De(w))),v=_((w=>ba(w).uiState.accountViewMode)),S=p.mode==="compare_mode",D=C.dataAvailable;b.useEffect((()=>{if(c!=null&&h===!0&&(W(h,r,c,o),u!=null)){const w=u?.forecastPeriod,re=D!=null&&w.endDate.isAfter(D?.endDate)===!0?D:w;a(pe(e.firstMonthOfFY,{startDate:re.endDate.startOf(f),endDate:re?.endDate}))}}),[c]);const P=$e(),x=P?.loggedInUserRole!=null&&_a(P?.loggedInUserRole)!==!0,{useFeatureGate:E}=we(),{isFeatureEnabled:B}=E(G.isReportsCommentingEnabled),y=Pt(B?P?.currentTenant?.companyId:void 0,{clearParams:C.fetchState==="Completed"});return d.jsx(Is,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,location:n,isAccountingClassesEnabled:k,isAccountingProjectsEnabled:I,accountViewMode:v,isCompareModeOn:S,navigate:o,forecastIdFromUrlPath:r,analytics:T,hasTransactionAccess:x,reportsResyncFetchState:g.reportsResyncFetchState,insightsSectionAiCfoInfo:m,isAiCfoAccessEnabled:i,onAskAiCfoClick:l,initialOpenThreadRequest:y,isReportsCommentingEnabled:B,meetingUrl:Ve(s("dashboard_report_filters"))})},Ts=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=et(e);break;case"year":a="quarter",t={startDate:e.endDate.startOf("quarter"),endDate:e.endDate};break;case"free_range":console.error("free_range timeframe is not supported!")}return{timeframe:a,timePeriod:t}},Ds=ne((function(e){const a=Sa(e),t=io(e),n=ka(e),o=co(e),r=lo(e),s=uo(e),i=Et(e),{scrollPosition:l,...m}=i,p=q.getLocalizedStrings().common.texts.revenue,h=V.getSignedInUser(),f=e.tenantState.currentTenantId,c=L(e),u=c?.companyName??"",C={userId:h?.userId??"",sessionId:h?.zeniSessionId??"",tenantId:f??""},g=e.entityAutoCompleteState.autoCompleteText.navbar,k=ue(e,"navbar"),I=kt(c);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,selectedProjectViewRangeReport:r,reportLabels:{reportTitle:p},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,highlightedProjectViewRangeReport:s,uiState:m,scrollPosition:l,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${oe}/statement`,authParams:C},analytics:T,isZeniUser:Je(h),autoCompleteData:{autoCompleteText:g,entityAutoCompleteView:k},isZeniCOAUsed:I,isAccountingClassesEnabled:xe(e),isAccountingProjectsEnabled:De(e)}}),(function(e,a){return{updateDownloadStateHandler:t=>{e(bo(t))},onTimeframeSelectionChanged:t=>{e(Te(t)),setTimeout((()=>e(_e({resetLeftScroll:!0}))),50)},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(_e({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(pe(a.firstMonthOfFY,t)),e(_e({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Me(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Ue(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&W(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout((()=>e(_e({resetLeftScroll:!0}))),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=Ts(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.projectsViewParentId?.projectId!=null?xt(a.tenantEmailDomain,t.accountId,t.accountType,t.projectsViewParentId.projectId,s,r,o):t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?wt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),l=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:l,referrer:"Revenues"}})}},onElementCollapseStateChanged:(t,n)=>{a.accountViewMode!=="project"?e(_e({nodeCollapseState:{nodeId:t,isCollapsed:n}})):e(Kt({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{a.accountViewMode!=="project"?e(_e({scrollPosition:t})):e(Kt({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(me({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ae("navbar"))},onAutoCompleteEntity:t=>{const n=he(t,a.tenantEmailDomain),o=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.selectedForecastId!=null?a.navigate("../../../"):a.navigate("../")},onForecastToggle:(t,n)=>{e(Ae(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?3:1,n)),t==="forecast_mode"?(e(Xt({viewMode:"account_group"})),e(ya(!1,n?.id)),n!=null&&W(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):W(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(_e({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":t==="project"?"Projects":"Accounts","Revenues"),e(Xt({viewMode:t})),e(go({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(fo({classesToFilterOut:t}))},onUpdateProjectsToFilterOut:t=>{e(ho({projectsToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(mo()),a.isAccountingProjectsEnabled&&e(po())},onResyncReports:()=>{e(yt(a.accountViewMode==="project"?"revenue_by_projects":"revenue_by_classes"))}}}))(ze),xs=e=>{const a=z(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,s=Ne(),{isAiCfoAccessEnabled:i,onAskAiCfoClick:l}=se({mobileExploreReferrer:"DashboardRevenue"}),m=We({mobileExploreReferrer:"DashboardRevenue"}),p=_((y=>Et(y))),h=p.isForecastModeOn,f=p.timeframe,c=p.selectedForecast?.id,u=_((y=>vt(y.forecastState,c??""))),C=_((y=>Sa(y))),g=C.dataAvailable,k=p.mode==="compare_mode",I=_((y=>xe(y))),v=_((y=>De(y))),S=_((y=>ka(y).uiState.accountViewMode)),D=_((y=>At(y)));b.useEffect((()=>{if(c!=null&&h===!0&&(W(h,r,c,o),u!=null)){const y=u?.forecastPeriod,w=g!=null&&y.endDate.isAfter(g?.endDate)===!0?g:y;a(pe(e.firstMonthOfFY,{startDate:w.endDate.startOf(f),endDate:w?.endDate}))}}),[c]);const P=$e(),{useFeatureGate:x}=we(),{isFeatureEnabled:E}=x(G.isReportsCommentingEnabled),B=Pt(E?P?.currentTenant?.companyId:void 0,{clearParams:C.fetchState==="Completed"});return d.jsx(Ds,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,isAccountingClassesEnabled:I,isAccountingProjectsEnabled:v,accountViewMode:S,isCompareModeOn:k,location:n,navigate:o,forecastIdFromUrlPath:r,analytics:T,reportsResyncFetchState:D.reportsResyncFetchState,insightsSectionAiCfoInfo:m,isAiCfoAccessEnabled:i,onAskAiCfoClick:l,initialOpenThreadRequest:B,isReportsCommentingEnabled:E,meetingUrl:Ve(s("dashboard_report_filters"))})},ws=e=>{let a,t;if(e.endDate!=null)switch(e.timePeriod){case"this_month_to_date":case"last_month":case"this_week_to_date":case"last_week":a="month",t={startDate:e.endDate.startOf("month"),endDate:e.endDate};break;case"last_3_months":case"last_6_months":case"last_12_months":case"this_year_to_date":case"last_year":a="quarter",t={startDate:e.endDate.startOf("quarter"),endDate:e.endDate};break;default:console.error(`this timeperiod ${e.timePeriod} is not supported!`)}return{timeframe:a,timePeriod:t}},Ps=ne((function(e){const a=Co(e),t=e.entityAutoCompleteState.autoCompleteText.navbar,n=ue(e,"navbar");return{report:a,analytics:T,autoCompleteData:{autoCompleteText:t,entityAutoCompleteView:n}}}),(function(e,a){return{onTimeframeSelectionChanged:t=>{T.trackTimeframeSwitch(Ga(t),"Top Expenses"),e(va(t))},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=ws(n),s=t.accountName===""?t.accountDescription:t.accountName;if(o!=null&&r!=null){const i=Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),l=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:l,referrer:"Top Expenses"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(me({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ae("navbar"))},onAutoCompleteEntity:t=>{const n=he(t,a.tenantEmailDomain),o=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}}))(Wo),Os=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e;return d.jsx(Ps,{tenantEmailDomain:a,location:t,navigate:n})},Fs=Dt.div`
14
14
  display: flex;
15
15
  flex: 1 1 auto;
16
16
  min-height: 100%;
17
17
  flex-direction: column;
18
18
  background-color: ${e=>e.theme.colors.grey5};
19
19
  align-items: center;
20
- `;function js({fetchState:e,firstMonthOfFY:a,reportId:t,forecastId:n}){const o=J(),r=Z(),{tenantEmailDomain:s}=K();let i;Ge({isDataReady:!0});const l={firstMonthOfFY:a,tenantEmailDomain:s,location:r,navigate:o,forecastIdFromUrlPath:n,fetchState:e};switch(t){case"operating_expenses":i=d.jsx(Es,{...l});break;case"revenue":i=d.jsx(xs,{...l});break;case"net_burn_or_income":i=d.jsx(vs,{...l});break;case"cash_position":i=d.jsx(_s,{...l});break;case"top_expenses":i=d.jsx(Os,{...l});break;case"cash_in_cash_out":i=d.jsx(bs,{...l});break;default:console.error(`${t} is not supported!`),i=null}return i!=null?d.jsx(Fs,{children:i}):null}function le(){const e=Z(),a=z(),{forecastId:t}=K();let n="Not-Started";const o=S((c=>It(c).fetchState)),r=S((c=>Et(c).fetchState)),s=S((c=>_t(c).fetchState)),i=S((c=>c.cashPositionState.fetchState)),l=S((c=>c.topExState.fetchState)),m=S((c=>c.cashInCashOutState.fetchState));if(V.getSignedInUser()==null)throw Error("Can't access dashboard detail without signing in...");const p=S((c=>L(c))),h=p?.company?.companyInfo?.firstMonthOfFY??1,f=ra((c=>{const u=ia(c,"/").split("/");return t!=null?u[u.length-3]:u[u.length-1]})(e.pathname));switch(f){case"operating_expenses":n=o;break;case"revenue":n=r;break;case"net_burn_or_income":n=s;break;case"cash_position":n=i;break;case"top_expenses":n=l;break;case"cash_in_cash_out":n=m;break;default:console.error(`${f} is not supported!`)}return b.useEffect((()=>{n==="Not-Started"&&(function(c,u,C,g){switch(u){case"operating_expenses":c(xa(!0)),g!=null&&(c(Ae(C,!0,3,{id:g,index:0})),c(Ca(!1,g)));break;case"revenue":c(Ta(!0)),g!=null&&(c(Ae(C,!0,3,{id:g,index:0})),c(ya(!1,g)));break;case"net_burn_or_income":c(Da(!0)),g!=null&&(c(Ae(C,!0,3,{id:g,index:0})),c(fa(!1,g)));break;case"cash_position":c(Ea(!0));break;case"top_expenses":c(Ia());break;case"cash_in_cash_out":c(Aa());break;default:throw new Error(`report type ${u} is not yet supported`)}})(a,f,h,t)}),[t]),d.jsxs(d.Fragment,{children:[n==="Completed"?d.jsx(Ye,{analytics:D,onLoad:c=>((u,C)=>{const g=e.state?.referrer;switch(C){case"operating_expenses":u.trackPageLoaded($.Event.operatingExpenses,g);break;case"revenue":u.trackPageLoaded($.Event.revenues,g);break;case"net_burn_or_income":u.trackPageLoaded($.Event.burnRate,g);break;case"cash_position":u.trackPageLoaded($.Event.cashPosition,g);break;case"top_expenses":u.trackPageLoaded($.Event.topExpenses,g);break;case"cash_in_cash_out":u.trackPageLoaded($.Event.cashInCashOut,g);break;default:console.error(`Analytics: Not tracking Page Loaded for ${C}!`)}})(c,f)}):null,d.jsx(js,{firstMonthOfFY:h,fetchState:n,reportId:f,forecastId:t})]})}var ct=typeof navigator<"u"&&navigator.userAgent.toLowerCase().indexOf("firefox")>0;function lt(e,a,t,n){e.addEventListener?e.addEventListener(a,t,n):e.attachEvent&&e.attachEvent("on".concat(a),(function(){t(window.event)}))}function $a(e,a){for(var t=a.slice(0,a.length-1),n=0;n<t.length;n++)t[n]=e[t[n].toLowerCase()];return t}function Wa(e){typeof e!="string"&&(e="");for(var a=(e=e.replace(/\s/g,"")).split(","),t=a.lastIndexOf("");t>=0;)a[t-1]+=",",a.splice(t,1),t=a.lastIndexOf("");return a}for(var Ot={backspace:8,tab:9,clear:12,enter:13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,num_0:96,num_1:97,num_2:98,num_3:99,num_4:100,num_5:101,num_6:102,num_7:103,num_8:104,num_9:105,num_multiply:106,num_add:107,num_enter:108,num_subtract:109,num_decimal:110,num_divide:111,"⇪":20,",":188,".":190,"/":191,"`":192,"-":ct?173:189,"=":ct?61:187,";":ct?59:186,"'":222,"[":219,"]":221,"\\":220},de={"⇧":16,shift:16,"⌥":18,alt:18,option:18,"⌃":17,ctrl:17,control:17,"⌘":91,cmd:91,command:91},St={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey",shiftKey:16,ctrlKey:17,altKey:18,metaKey:91},U={16:!1,18:!1,17:!1,91:!1},M={},He=1;He<20;He++)Ot["f".concat(He)]=111+He;var O=[],Ht=!1,za="all",Zt=[],tt=function(e){return Ot[e.toLowerCase()]||de[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function Jt(e){za=e||"all"}function Re(){return za||"all"}var dt=function(e){var a=e.key,t=e.scope,n=e.method,o=e.splitKey,r=o===void 0?"+":o;Wa(a).forEach((function(s){var i=s.split(r),l=i.length,m=i[l-1],p=m==="*"?"*":tt(m);if(M[p]){t||(t=Re());var h=l>1?$a(de,i):[];M[p]=M[p].filter((function(f){return!((!n||f.method===n)&&f.scope===t&&(function(c,u){for(var C=c.length>=u.length?c:u,g=c.length>=u.length?u:c,k=!0,I=0;I<C.length;I++)g.indexOf(C[I])===-1&&(k=!1);return k})(f.mods,h))}))}}))};function ea(e,a,t,n){var o;if(a.element===n&&(a.scope===t||a.scope==="all")){for(var r in o=a.mods.length>0,U)Object.prototype.hasOwnProperty.call(U,r)&&(!U[r]&&a.mods.indexOf(+r)>-1||U[r]&&a.mods.indexOf(+r)===-1)&&(o=!1);(a.mods.length!==0||U[16]||U[18]||U[17]||U[91])&&!o&&a.shortcut!=="*"||a.method(e,a)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}function ta(e,a){var t=M["*"],n=e.keyCode||e.which||e.charCode;if(N.filter.call(this,e)){if(n!==93&&n!==224||(n=91),O.indexOf(n)===-1&&n!==229&&O.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach((function(u){var C=St[u];e[u]&&O.indexOf(C)===-1?O.push(C):!e[u]&&O.indexOf(C)>-1?O.splice(O.indexOf(C),1):u==="metaKey"&&e[u]&&O.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(O=O.slice(O.indexOf(C))))})),n in U){for(var o in U[n]=!0,de)de[o]===n&&(N[o]=!0);if(!t)return}for(var r in U)Object.prototype.hasOwnProperty.call(U,r)&&(U[r]=e[St[r]]);e.getModifierState&&(!e.altKey||e.ctrlKey)&&e.getModifierState("AltGraph")&&(O.indexOf(17)===-1&&O.push(17),O.indexOf(18)===-1&&O.push(18),U[17]=!0,U[18]=!0);var s=Re();if(t)for(var i=0;i<t.length;i++)t[i].scope===s&&(e.type==="keydown"&&t[i].keydown||e.type==="keyup"&&t[i].keyup)&&ea(e,t[i],s,a);if(n in M){for(var l=0;l<M[n].length;l++)if((e.type==="keydown"&&M[n][l].keydown||e.type==="keyup"&&M[n][l].keyup)&&M[n][l].key){for(var m=M[n][l],p=m.splitKey,h=m.key.split(p),f=[],c=0;c<h.length;c++)f.push(tt(h[c]));f.sort().join("")===O.sort().join("")&&ea(e,m,s,a)}}}}function N(e,a,t){O=[];var n=Wa(e),o=[],r="all",s=document,i=0,l=!1,m=!0,p="+",h=!1;for(t===void 0&&typeof a=="function"&&(t=a),Object.prototype.toString.call(a)==="[object Object]"&&(a.scope&&(r=a.scope),a.element&&(s=a.element),a.keyup&&(l=a.keyup),a.keydown!==void 0&&(m=a.keydown),a.capture!==void 0&&(h=a.capture),typeof a.splitKey=="string"&&(p=a.splitKey)),typeof a=="string"&&(r=a);i<n.length;i++)o=[],(e=n[i].split(p)).length>1&&(o=$a(de,e)),(e=(e=e[e.length-1])==="*"?"*":tt(e))in M||(M[e]=[]),M[e].push({keyup:l,keydown:m,scope:r,mods:o,shortcut:n[i],method:t,key:n[i],splitKey:p,element:s});s!==void 0&&!(function(f){return Zt.indexOf(f)>-1})(s)&&window&&(Zt.push(s),lt(s,"keydown",(function(f){ta(f,s)}),h),Ht||(Ht=!0,lt(window,"focus",(function(){O=[]}),h)),lt(s,"keyup",(function(f){ta(f,s),(function(c){var u=c.keyCode||c.which||c.charCode,C=O.indexOf(u);if(C>=0&&O.splice(C,1),c.key&&c.key.toLowerCase()==="meta"&&O.splice(0,O.length),u!==93&&u!==224||(u=91),u in U)for(var g in U[u]=!1,de)de[g]===u&&(N[g]=!1)})(f)}),h))}var ut={setScope:Jt,getScope:Re,deleteScope:function(e,a){var t,n;for(var o in e||(e=Re()),M)if(Object.prototype.hasOwnProperty.call(M,o))for(t=M[o],n=0;n<t.length;)t[n].scope===e?t.splice(n,1):n++;Re()===e&&Jt(a||"all")},getPressedKeyCodes:function(){return O.slice(0)},isPressed:function(e){return typeof e=="string"&&(e=tt(e)),O.indexOf(e)!==-1},filter:function(e){var a=e.target||e.srcElement,t=a.tagName,n=!0;return!a.isContentEditable&&(t!=="INPUT"&&t!=="TEXTAREA"&&t!=="SELECT"||a.readOnly)||(n=!1),n},trigger:function(e){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(M).forEach((function(t){var n=M[t].find((function(o){return o.scope===a&&o.shortcut===e}));n&&n.method&&n.method()}))},unbind:function(e){if(e===void 0)Object.keys(M).forEach((function(s){return delete M[s]}));else if(Array.isArray(e))e.forEach((function(s){s.key&&dt(s)}));else if(typeof e=="object")e.key&&dt(e);else if(typeof e=="string"){for(var a=arguments.length,t=new Array(a>1?a-1:0),n=1;n<a;n++)t[n-1]=arguments[n];var o=t[0],r=t[1];typeof o=="function"&&(r=o,o=""),dt({key:e,scope:o,method:r,splitKey:"+"})}},keyMap:Ot,modifier:de,modifierMap:St};for(var mt in ut)Object.prototype.hasOwnProperty.call(ut,mt)&&(N[mt]=ut[mt]);if(typeof window<"u"){var Rs=window.hotkeys;N.noConflict=function(e){return e&&window.hotkeys===N&&(window.hotkeys=Rs),N},window.hotkeys=N}N.filter=function(){return!0};var aa=function(e,a){var t=e.target,n=t&&t.tagName;return!!(n&&a&&a.includes(n))};function Bs(e,a,t,n){t instanceof Array&&(n=t,t=void 0);var o=t||{},r=o.enableOnTags,s=o.filter,i=o.keyup,l=o.keydown,m=o.filterPreventDefault,p=m===void 0||m,h=o.enabled,f=h===void 0||h,c=o.enableOnContentEditable,u=c!==void 0&&c,C=b.useRef(null),g=b.useCallback((function(k,I){var v,_;return s&&!s(k)?!p:!!(aa(k,["INPUT","TEXTAREA","SELECT"])&&!aa(k,r)||(v=k.target)!=null&&v.isContentEditable&&!u)||!!(C.current===null||document.activeElement===C.current||(_=C.current)!=null&&_.contains(document.activeElement))&&(a(k,I),!0)}),n?[C,r,s].concat(n):[C,r,s]);return b.useEffect((function(){if(f)return i&&l!==!0&&(t.keydown=!1),N(e,t||{},g),function(){return N.unbind(e,g)};N.unbind(e,g)}),[g,e,f]),C}N.isPressed;const Ms=[],pt="dashboard_card",te="ai_cfo_dashboard_card";function na(e,a){return a?e.some((t=>String(t)===te))?e.slice():[te,...e]:e.filter((t=>String(t)!==te))}const Us=["net_burn_or_income_story_card","cash_balance","task_card","card_balance","zeni_promo_card","insights_dashboard","information_card","company_details","bill_pay_promo_card","bill_pay_card","reimbursement_card","reimbursement_promo_card","rewards_card"],Ls=(e,a,t,n,o)=>({card:{dimension:Dt(t),cardType:n,cardIndex:o,fetchState:a,disableAnimations:!1,spansFullDashboardWidth:!1},data:e.status!=null?{balanceAmount:e.balance?.available,lastUpdatedTime:e.status.lastRefreshSuccessTime,changePercent:e.balance?.change?.percent,changeComparedToDate:e.balance?.change?.since}:void 0}),je=(e,a,t,n,o)=>({card:{dimension:Dt(t),cardType:n,cardIndex:o,fetchState:a,disableAnimations:!1,spansFullDashboardWidth:!1},data:e}),Vs=(e,a,t,n)=>je(void 0,e,Ie,a,t),Gs=e=>{const a=Dt(Ie);return a.height=Ie.height+10,{card:{dimension:a,cardType:te,cardIndex:e,fetchState:"Completed",disableAnimations:!1,spansFullDashboardWidth:!0}}},Ys=ne((function(e,a){const t=Ws(a.dashboardReport),n=a.passedCardsOrdered,o=a.dashboardReport.reportsInOrder,{isInterestedInChargeCard:r,cardsCreditLimit:s,cashbackRate:i}=a;let l=n.map(((m,p)=>{if(m==="reimbursement_promo_card"||m==="bill_pay_promo_card")return Vs(t,m,p);if(m==="zeni_promo_card")return je({isExpressedInterest:r,creditLimit:s,cashbackRate:i,fetchState:"Completed"},a.cardBalanceFetchState,Ie,m,p);if(m==="information_card")return je(void 0,"Completed",Ie,m,p);if(m===te)return Gs(p);{const h=o.find((f=>f?.reportId===m));return h?(function(f,c,u,C){const g=f.reportId;switch(g){case"card_balance":case"cash_balance":return[Ls(f,c,u,g,C)];case"expense_automation_card":case"operating_expenses":case"revenue":case"top_expenses":case"cash_position":case"cash_in_cash_out":case"insights_dashboard":case"company_details":case"task_card":case"bill_pay_card":case"reimbursement_card":case"net_burn_or_income":case"accounts_payable_aging":case"accounts_receivable_aging":case"rewards_card":return[je(f,c,u,g,C)];case"net_burn_or_income_story_card":return[je(f,c,u,"net_burn_or_income_story_card",C)];default:return console.error(`card type ${g} not yet supported!`),[]}})(h,h.fetchState,Ie,p):[]}})).flat();return a.isSummaryCardsFiltered===!0&&(l=l.filter((m=>Us.includes(m.card.cardType)==0)).filter((m=>{const p=m.data?.availableNumberOfPeriods;return p!=null?p>0:m.card.cardType!="top_expenses"||m.data==null||(function(h){if(h==null||h.length===0)return!0;let f=!0;for(const c of h)if(c.balance.available.amount!==0){f=!1;break}return f})(m.data.topExpenses.accountsOrdered)===!1}))),{cardDataArray:l,autoCompleteData:{autoCompleteText:e.entityAutoCompleteState.autoCompleteText.navbar,entityAutoCompleteView:ue(e,"navbar")},analytics:D,isReimbursementEnabled:a.isReimbursementEnabled,isBillPayEnabled:a.isBillPayEnabled}}),(function(e,a){const t=a.tenantId,n=V.getSignedInUser();return{cardActions:{onCardClick:(o,r,s,i)=>{if(console.warn(`onCardClick at ${o} for the type ${r}`),r==="zeni_promo_card"&&i!=null)D.trackDashboardCardClicked("cards promo",2),D.trackZeniCardsPromoCardClicked(a.isChargeCardFeatureEnabled,i,2,`${n?.firstName??""} ${n?.lastName??""}`,a.isChargeCardFeatureEnabled?a.cardsCreditLimit:void 0),i==="Learn More"?window.open("https://www.zeni.ai/product/business-credit-card","_blank"):a.navigate("../cards/promo",{relative:"path"});else if(a.isForecastOn)switch(r){case"net_burn_or_income":case"operating_expenses":case"revenue":a.navigate(`${r}/forecast/${a.selectedForecastOnDashboard}`,{state:{referrer:s}});break;default:a.navigate(`${r}`,{state:{referrer:s}})}else r==="rewards_card"?(n!=null&&D.trackDashboardCardClicked("rewards promo",o+1),a.navigate("../../rewards/refer",{state:{referrer:s}})):r==="expense_automation_card"?(D.trackMonthEndCloseClicked(a.selectedPeriod.month,a.selectedPeriod.year,"Dashboard"),a.navigate("../../month_end_close_checks/review",{state:{referrer:"Dashboard"}})):a.navigate(`${r}`,{state:{referrer:s}})},onReloadData:(o,r)=>{const s=[];a.isApAgingFeatureEnabled===!1&&s.push("accounts_payable_aging"),a.isArAgingFeatureEnabled===!1&&s.push("accounts_receivable_aging"),a.isRewardsFeatureEnabled===!1&&s.push("rewards_card"),(function(i,l,m,p){if(l!==te)switch(l){case"card_balance":i(la());break;case"cash_balance":i(ca());break;case"operating_expenses":i(xa(!0));break;case"revenue":i(Ta(!0));break;case"net_burn_or_income":i(Da(!0));break;case"net_burn_or_income_story_card":i(Fo(!0));break;case"cash_position":i(Ea(!0));break;case"top_expenses":i(Ia());break;case"cash_in_cash_out":i(Aa());break;case"insights_dashboard":i(Oo());break;case"bill_pay_card":i(Po());break;case"reimbursement_card":i(wo());break;case"company_details":i(xo(m));break;case"task_card":i(To());break;case"accounts_payable_aging":p.includes("accounts_payable_aging")===!1&&i(gt(Ee()));break;case"accounts_receivable_aging":i(bt(Ee()));break;case"rewards_card":p.includes("rewards_card")===!1&&i(Do(!0));break;default:throw new Error(`report type ${l} is not yet supported`)}})(e,r,a.companyId,s)},onTimeframeChange:(o,r)=>{D.trackTimeframeSwitch(Ga(r),$s(o),"Dashboard"),(function(s,i,l){switch(i){case"operating_expenses":case"revenue":case"net_burn_or_income":case"cash_position":s(De(l));break;case"top_expenses":s(va(l));break;default:throw new Error(`report type ${i} doesn't support changeTimeframe`)}})(e,o,r)},onUpdateSelectedInsightIndex:o=>{e(Eo(o))},onCategoryClick:(o,r,s)=>{o==="bill-pay"?a.navigate("../bills",{state:{tab:r,subTab:s},relative:"path"}):o==="reimbursement"?a.navigate("../reimbursements",{state:{tab:r,subTab:s},relative:"path"}):o==="uncategorized-account-mapping"?a.navigate("../settings/accounting",{relative:"path"}):o==="show-all-tasks"?a.navigate("../tasks",{relative:"path"}):a.navigate(`../../transactions/${o}`)},onCardBtnClick:o=>{if(o==="bill_pay_promo_card"){const r="../bills",s=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(r,{state:{pathnameStackToGoBack:s},relative:"path"})}else if(o==="reimbursement_promo_card"){const r="../reimbursements",s=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(r,{state:{pathnameStackToGoBack:s},relative:"path"})}},onSaveClick:(o,r,s)=>{o==="net_burn_or_income_story_card"&&(D.trackUpdateBurnRateCalculatorSettings(r,s,Ao(s)),e(Io(t,r,s)))}},autoCompleteActions:{onAutoCompleteInputChange:o=>{o.trim().length>=2?e(me({searchString:o,searchOrigin:"navbar"})):o.trim().length===0&&e(ae("navbar"))},onCancelAutoComplete:()=>{e(ae("navbar"))},onAutoCompleteEntity:o=>{let r="";r=o.type!=="vendor"||o.detailType!=="bank_merchant"&&o.detailType!=="card_merchant"?he(o,a.tenantEmailDomain):Jo(o.zeniId,o.qboId,a.tenantEmailDomain);const s=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(r,{state:{pathnameStackToGoBack:s,referrer:"Search"}})}}}}))(Zo);function Ns(){const e=oa(),a=Fa(),t=Ua(a),{isAiCfoOpen:n,setIsAiCfoOpen:o,setAiCfoSidePanelQuestionToSubmit:r}=Oa(),s=J(),i=z(),l=Z(),m=V.getSignedInUser(),{useFeatureGate:p,useDynamicConfig:h}=we(),[f,c]=b.useState(!1),[u,C]=b.useState(!1),g=ja(),{tenantEmailDomain:k}=K(),{isAiCfoAccessEnabled:I,onAskAiCfoClick:v}=se({mobileExploreReferrer:"Dashboard"}),_=S((A=>A.tenantState.fetchState==="Completed"||A.tenantState.activeTenantFetchState.fetchState==="Completed"?L(A):void 0)),T=_??V.getSignedInUserTenant(k),P=_?.masterTOSInfo?.isMasterTOSAccepted??!1,x=T.tenantId,E=T.companyId;b.useEffect((()=>{f===!1&&l.state?.message==="activation"&&(i(So(E)),c(!0))}),[l.state,f,E,i]),b.useEffect((()=>{g&&!u&&l.state?.message==="open_ai_cfo_drawer"&&(C(!0),P?(o(!0),s({pathname:l.pathname,search:l.search,hash:l.hash},{replace:!0,state:{...l.state,message:void 0}})):ce({location:l,navigate:s,mergeState:{referrer:"Dashboard",message:void 0}}))}),[l,u,g,P,o,s]);const{isFeatureEnabled:B}=p(G.isApAgingFeatureEnabled),y=zo(),w=Xo(y),{isFeatureEnabled:re}=p(G.isArAgingFeatureEnabled),{isFeatureEnabled:Xe}=p(G.isDepositAccountsFeatureEnabled),{isFeatureEnabled:R}=p(G.isReferralFeatureEnabled),{isFeatureEnabled:ie}=p(G.isChargeCardFeatureEnabled),{isFeatureEnabled:Ke}=p(G.isAiCfoFileUploadEnabled),{isFeatureEnabled:at}=p(G.isDashboardSidebarChristmasAnimationEnabled),{isFeatureEnabled:Xa}=p(G.isDashboardSidebarNewYearAnimationEnabled),{isFeatureEnabled:Ka}=p(G.aiAuditScorePercentage),{configValue:Ft}=h(Ra.zeniCardsConfig),qa=Ft.charge_card_cashback_rate_per_transaction==null?.0175:Ft.charge_card_cashback_rate_per_transaction;if(l.state?.message==="activation"){const A=Ko(l.state?.pathnameStackToGoBack);s(l.pathname,{state:{...l.state,message:void 0,pathnameStackToGoBack:A.newStack}})}const[jt,Qa]=b.useState(!1),[nt,Ha]=b.useState(!1);Bs("command+p, Control+p",(A=>{Ha(!nt),A.preventDefault()}),{enableOnContentEditable:!0,enableOnTags:["INPUT","SELECT","TEXTAREA"]},[nt]);const Rt=_?.externalConnections?.accounting[0]?.isValid;if(m==null)throw Error("Can't access dashboard without signing in...");const fe=S((A=>L(A)?.excludedResources)),Za=S((A=>A.expenseAutomationViewState.selectedPeriodByTenantId)),Ja=!!_?.companyReimbursementInfo?.info?.isReimbursementEnabled,en=!!_?.companyBillPayInfo?.info?.isBillPayEnabled,tn=$e(),X=[],Bt=fe?.resources?.find((A=>A.resource==="/reports/top_expenses"))==null,an=fe?.resources?.find((A=>A.resource==="/reports/task_card"))==null,Mt=_?.userRole!=null&&Sa(_?.userRole),nn=fe?.resources?.find((A=>A.resource==="/bills"))==null&&!Mt,on=fe?.resources?.find((A=>A.resource==="/reimbursements"))==null,sn=_o(tn?.loggedInUserRoleMap),rn=_?.company?.companyChargeCardInfo?.chargeCardsCreditAccountLimit??0,cn=_?.companyChargeCardInfo?.info?.isCompanyInterestedInChargeCard??!1;Bt===!1&&X.push("top_expenses"),an===!1&&X.push("task_card"),nn===!1&&X.push("bill_pay_card","bill_pay_promo_card"),B===!1&&X.push("accounts_payable_aging"),re===!1&&X.push("accounts_receivable_aging"),(y===!1||Mt)&&X.push("expense_automation_card"),on===!1&&X.push("reimbursement_card","reimbursement_promo_card"),X.push("zeni_accounts_promo_card","treasury_promo_card"),R===!1&&X.push("rewards_card");const{areTenantIdsInSync:Ut}=qo();b.useLayoutEffect((()=>{jt&&w===y||Rt!==!0||!Ut||fe?.fetchState!=="Completed"&&fe?.fetchState!=="Error"||(Qa(!0),i(ko(m.userId,E,x,!0,!1,X)))}),[jt,m,x,i,Bt,Rt,fe?.fetchState,Ut]);const ln=S((A=>A.reportUIOptionsState.forecastOnDashboard.isForecastModeOn)),dn=S((A=>A.revenueState.uiState.selectedForecast?.id)),un=S((A=>A.cardBalanceState.fetchState)),ge=S((A=>yo(A,X))),mn=ge.fetchState,pn=b.useMemo((()=>na(ge.cardsOrdered,I)),[ge.cardsOrdered,I]),hn=b.useMemo((()=>na(ge.cardsForDashboardUI,I)),[ge.cardsForDashboardUI,I]);Ge({isDataReady:!0});const{isSuggestedQuestionsLoading:fn,suggestedPromptQuestions:gn}=ts(),Lt=S((A=>da(A))),_e=Lt.uiState?.currentChatSessionId,ot=Lt.allSessionsWithOrderedQuestionAnswers??Ms,{currentSessionQuestionAnswers:bn}=Qo(ot,_e),Vt=bn.length===0,Cn=b.useCallback(((A,Q,ee)=>{const ke=m?.userId;if(ke==null)return;const Y=A.trim();if(Y.length===0&&Q.length===0)return;if(!P)return void ce({location:l,navigate:s,mergeState:{referrer:"Dashboard",...Y.length>0?{aiCfoInitialQuestion:Y,aiCfoInitialSubmissionSource:pt,...typeof ee=="number"?{aiCfoSuggestionIndex:ee}:{}}:{}}});const H=Ba(e.getState()),ye=()=>{const ve=j(l.state?.pathnameStackToGoBack,l.pathname);s(`/${k}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:ve,referrer:"Dashboard",aiCfoInitialQuestion:Y,aiCfoShouldSubmit:!H&&Y.length>0,aiCfoInitialSubmissionSource:pt,...typeof ee=="number"?{aiCfoSuggestionIndex:ee}:{}}})};return t?Q.length>0?void o(!0):void ye():Q.length>0?H?(i(Ct(Y)),void o(!0)):(r(Y.length>0?Y:null),o(!0),void(Y.length>0&&Ma(i,Y,pt,_e,ot,ke,ee,Q.length>0?Q:void 0))):(H&&i(Ct(Y)),void ye())}),[ot,_e,i,P,t,l,s,r,o,m?.userId,e,k]),Sn=b.useCallback((()=>{P?o(!0):ce({location:l,navigate:s,mergeState:{referrer:"Dashboard"}})}),[P,l,s,o]),_n=b.useCallback((()=>{if(!P)return void ce({location:l,navigate:s,mergeState:{referrer:"Dashboard"}});if(k==null)return;const A=j(l.state?.pathnameStackToGoBack,l.pathname);s(`/${k}/ai-cfo/explore`,{state:{pathnameStackToGoBack:A,referrer:"Dashboard"}})}),[P,l,s,k]),kn=b.useCallback((()=>{if(P)if(t){if(k==null||_==null)return;const A=_e==null||Vt?`/${k}/ai-cfo/explore`:`/${k}/ai-cfo/${_e}`,Q=l.state?.pathnameStackToGoBack??[],ee=j(Q,l.pathname);s(A,{state:{...l.state,pathnameStackToGoBack:ee,[Ho]:!0}})}else ce({location:l,navigate:s,mergeState:{referrer:"Dashboard"}});else ce({location:l,navigate:s,mergeState:{referrer:"Dashboard"}})}),[P,t,l,s,k,_,_e,Vt]);return d.jsxs(d.Fragment,{children:[mn==="Completed"?d.jsx(Ye,{analytics:D,onLoad:A=>{A.trackPageLoaded($.Event.dashboard)}}):null,d.jsx(Ys,{maxColumns:n?2:void 0,isAiCfoAccessEnabled:I,onAskAiCfoClick:v,onAiCfoDashboardOpenPanel:Sn,onAiCfoDashboardOpenScopePage:kn,isAiCfoFileUploadEnabled:Ke===!0&&t===!1,onAiCfoDashboardPromptSubmit:Cn,onAiCfoDashboardExpandToFullPage:_n,aiCfoDashboardShouldClearPromptOnSubmit:P,aiCfoDashboardSuggestedPromptQuestions:gn,aiCfoDashboardSuggestedPromptQuestionsLoading:fn,onDragAndDropCard:(A,Q)=>{if(A===te||Q===te)return;const ee=(function(H,ye,ve){const st=ve.indexOf(H),rt=ve.indexOf(ye);if(st===-1||rt===-1||st===rt)return ve;const it=[...ve];return it.splice(st,1),it.splice(rt,0,H),it})(A,Q,pn),ke=ee.filter((H=>H!==te)),Y=ge.cardsOrdered;(ke.length!==Y.length||ke.some(((H,ye)=>H!==Y[ye])))&&i(vo(ke))},dashboardReport:ge,passedCardsOrdered:hn,tenantId:x,companyId:E,tenantEmailDomain:k,location:l,navigate:s,isApAgingFeatureEnabled:B,isArAgingFeatureEnabled:re,isBillPayEnabled:en,isReimbursementEnabled:Ja,isSummaryCardsFiltered:nt,isForecastOn:ln,selectedForecastOnDashboard:dn,isVisitingFirstTime:f,isZeniAccountEnabled:Xe,isRewardsFeatureEnabled:R,selectedPeriod:Za[x],isChargeCardFeatureEnabled:ie,isUserHasCardsAccess:sn,cardsCreditLimit:rn,cashbackRate:qa,isInterestedInChargeCard:cn,cardBalanceFetchState:un,christmasAnimationEnabled:at,newYearAnimationEnabled:Xa,aiAuditScorePercentageEnabled:Ka})]})}const $s=e=>{switch(e){case"operating_expenses":return"Operating Expenses";case"revenue":return"Revenues";case"top_expenses":return"Top Expenses";case"net_burn_or_income":return"Burn Rate";case"cash_in_cash_out":return"Cash In, Cash Out";case"cash_position":return"Cash Position"}return"Dashboard"},Ws=e=>e.fetchState!=="Error"?e.fetchState:e.reportsInOrder.map((a=>a.fetchState)).reduce(((a,t)=>a==="In-Progress"||a==="Not-Started"?a:t));function ht(){return d.jsxs(ft,{children:[d.jsx(F,{path:"/",element:d.jsx(le,{})}),d.jsx(F,{path:"/:forecastId",element:d.jsx(le,{})}),d.jsx(F,{path:"/:forecastId/*",element:d.jsx(Be,{})})]})}function yr(){const e=$e(),a=e?.excludedResources?.find((m=>m.resource==="/reports/top_expenses"))==null,{useFeatureGate:t}=we(),{isFeatureEnabled:n}=t(G.isApAgingFeatureEnabled),{isFeatureEnabled:o}=t(G.isArAgingFeatureEnabled),r=S((m=>L(m))),{isFeatureEnabled:s}=t(G.isDebitCardFeatureEnabled),i=jo(s,r),l=Ro(r);return i===!0||l===!0?d.jsx(ft,{children:d.jsx(F,{path:"/*",element:d.jsx(as,{})})}):d.jsxs(ft,{children:[d.jsx(F,{path:"/",element:d.jsx(Ns,{})}),d.jsx(F,{path:"cash_balance/*",element:d.jsx(qt,{})}),d.jsx(F,{path:"card_balance/*",element:d.jsx(qt,{})}),d.jsx(F,{path:"operating_expenses/*",element:d.jsx(le,{})}),d.jsx(F,{path:"operating_expenses/forecast/*",element:d.jsx(ht,{})}),d.jsx(F,{path:"revenue/forecast/*",element:d.jsx(ht,{})}),d.jsx(F,{path:"revenue/*",element:d.jsx(le,{})}),d.jsx(F,{path:"net_burn_or_income/forecast/*",element:d.jsx(ht,{})}),d.jsx(F,{path:"net_burn_or_income/*",element:d.jsx(le,{})}),n===!0&&d.jsxs(d.Fragment,{children:[d.jsx(F,{path:"accounts_payable_aging/*",element:d.jsx(os,{})}),d.jsx(F,{path:"accounts_payable_aging/:vendorId/:reportDate/*",element:d.jsx(ns,{})})]}),o&&d.jsxs(d.Fragment,{children:[d.jsx(F,{path:"accounts_receivable_aging/:customerId/:reportDate/*",element:d.jsx(ss,{})}),d.jsx(F,{path:"accounts_receivable_aging/*",element:d.jsx(rs,{})})]}),d.jsx(F,{path:"cash_position/*",element:d.jsx(le,{})}),d.jsx(F,{path:"top_expenses/*",element:a===!0?d.jsx(le,{}):d.jsx(Be,{})}),d.jsx(F,{path:"cash_in_cash_out/*",element:d.jsx(le,{})}),d.jsx(F,{path:"company_details",element:d.jsx(es,{})}),d.jsx(F,{path:"referrals/*",element:d.jsx(yn,{to:"../../rewards/refer",replace:!0})}),d.jsx(F,{path:"*",element:d.jsx(Be,{})})]})}export{yr as default};
20
+ `;function js({fetchState:e,firstMonthOfFY:a,reportId:t,forecastId:n}){const o=J(),r=H(),{tenantEmailDomain:s}=K();let i;Ge({isDataReady:!0});const l={firstMonthOfFY:a,tenantEmailDomain:s,location:r,navigate:o,forecastIdFromUrlPath:n,fetchState:e};switch(t){case"operating_expenses":i=d.jsx(Es,{...l});break;case"revenue":i=d.jsx(xs,{...l});break;case"net_burn_or_income":i=d.jsx(vs,{...l});break;case"cash_position":i=d.jsx(Ss,{...l});break;case"top_expenses":i=d.jsx(Os,{...l});break;case"cash_in_cash_out":i=d.jsx(bs,{...l});break;default:console.error(`${t} is not supported!`),i=null}return i!=null?d.jsx(Fs,{children:i}):null}function le(){const e=H(),a=z(),{forecastId:t}=K();let n="Not-Started";const o=_((c=>It(c).fetchState)),r=_((c=>Et(c).fetchState)),s=_((c=>St(c).fetchState)),i=_((c=>c.cashPositionState.fetchState)),l=_((c=>c.topExState.fetchState)),m=_((c=>c.cashInCashOutState.fetchState));if(V.getSignedInUser()==null)throw Error("Can't access dashboard detail without signing in...");const p=_((c=>L(c))),h=p?.company?.companyInfo?.firstMonthOfFY??1,f=ra((c=>{const u=ia(c,"/").split("/");return t!=null?u[u.length-3]:u[u.length-1]})(e.pathname));switch(f){case"operating_expenses":n=o;break;case"revenue":n=r;break;case"net_burn_or_income":n=s;break;case"cash_position":n=i;break;case"top_expenses":n=l;break;case"cash_in_cash_out":n=m;break;default:console.error(`${f} is not supported!`)}return b.useEffect((()=>{n==="Not-Started"&&(function(c,u,C,g){switch(u){case"operating_expenses":c(xa(!0)),g!=null&&(c(Ae(C,!0,3,{id:g,index:0})),c(Ca(!1,g)));break;case"revenue":c(Da(!0)),g!=null&&(c(Ae(C,!0,3,{id:g,index:0})),c(ya(!1,g)));break;case"net_burn_or_income":c(Ta(!0)),g!=null&&(c(Ae(C,!0,3,{id:g,index:0})),c(fa(!1,g)));break;case"cash_position":c(Ea(!0));break;case"top_expenses":c(Ia());break;case"cash_in_cash_out":c(Aa());break;default:throw new Error(`report type ${u} is not yet supported`)}})(a,f,h,t)}),[t]),d.jsxs(d.Fragment,{children:[n==="Completed"?d.jsx(Ye,{analytics:T,onLoad:c=>((u,C)=>{const g=e.state?.referrer;switch(C){case"operating_expenses":u.trackPageLoaded($.Event.operatingExpenses,g);break;case"revenue":u.trackPageLoaded($.Event.revenues,g);break;case"net_burn_or_income":u.trackPageLoaded($.Event.burnRate,g);break;case"cash_position":u.trackPageLoaded($.Event.cashPosition,g);break;case"top_expenses":u.trackPageLoaded($.Event.topExpenses,g);break;case"cash_in_cash_out":u.trackPageLoaded($.Event.cashInCashOut,g);break;default:console.error(`Analytics: Not tracking Page Loaded for ${C}!`)}})(c,f)}):null,d.jsx(js,{firstMonthOfFY:h,fetchState:n,reportId:f,forecastId:t})]})}var ct=typeof navigator<"u"&&navigator.userAgent.toLowerCase().indexOf("firefox")>0;function lt(e,a,t,n){e.addEventListener?e.addEventListener(a,t,n):e.attachEvent&&e.attachEvent("on".concat(a),(function(){t(window.event)}))}function $a(e,a){for(var t=a.slice(0,a.length-1),n=0;n<t.length;n++)t[n]=e[t[n].toLowerCase()];return t}function Wa(e){typeof e!="string"&&(e="");for(var a=(e=e.replace(/\s/g,"")).split(","),t=a.lastIndexOf("");t>=0;)a[t-1]+=",",a.splice(t,1),t=a.lastIndexOf("");return a}for(var Ot={backspace:8,tab:9,clear:12,enter:13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,num_0:96,num_1:97,num_2:98,num_3:99,num_4:100,num_5:101,num_6:102,num_7:103,num_8:104,num_9:105,num_multiply:106,num_add:107,num_enter:108,num_subtract:109,num_decimal:110,num_divide:111,"⇪":20,",":188,".":190,"/":191,"`":192,"-":ct?173:189,"=":ct?61:187,";":ct?59:186,"'":222,"[":219,"]":221,"\\":220},de={"⇧":16,shift:16,"⌥":18,alt:18,option:18,"⌃":17,ctrl:17,control:17,"⌘":91,cmd:91,command:91},_t={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey",shiftKey:16,ctrlKey:17,altKey:18,metaKey:91},U={16:!1,18:!1,17:!1,91:!1},M={},Ze=1;Ze<20;Ze++)Ot["f".concat(Ze)]=111+Ze;var O=[],Zt=!1,za="all",Ht=[],tt=function(e){return Ot[e.toLowerCase()]||de[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function Jt(e){za=e||"all"}function Re(){return za||"all"}var dt=function(e){var a=e.key,t=e.scope,n=e.method,o=e.splitKey,r=o===void 0?"+":o;Wa(a).forEach((function(s){var i=s.split(r),l=i.length,m=i[l-1],p=m==="*"?"*":tt(m);if(M[p]){t||(t=Re());var h=l>1?$a(de,i):[];M[p]=M[p].filter((function(f){return!((!n||f.method===n)&&f.scope===t&&(function(c,u){for(var C=c.length>=u.length?c:u,g=c.length>=u.length?u:c,k=!0,I=0;I<C.length;I++)g.indexOf(C[I])===-1&&(k=!1);return k})(f.mods,h))}))}}))};function ea(e,a,t,n){var o;if(a.element===n&&(a.scope===t||a.scope==="all")){for(var r in o=a.mods.length>0,U)Object.prototype.hasOwnProperty.call(U,r)&&(!U[r]&&a.mods.indexOf(+r)>-1||U[r]&&a.mods.indexOf(+r)===-1)&&(o=!1);(a.mods.length!==0||U[16]||U[18]||U[17]||U[91])&&!o&&a.shortcut!=="*"||a.method(e,a)===!1&&(e.preventDefault?e.preventDefault():e.returnValue=!1,e.stopPropagation&&e.stopPropagation(),e.cancelBubble&&(e.cancelBubble=!0))}}function ta(e,a){var t=M["*"],n=e.keyCode||e.which||e.charCode;if(N.filter.call(this,e)){if(n!==93&&n!==224||(n=91),O.indexOf(n)===-1&&n!==229&&O.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach((function(u){var C=_t[u];e[u]&&O.indexOf(C)===-1?O.push(C):!e[u]&&O.indexOf(C)>-1?O.splice(O.indexOf(C),1):u==="metaKey"&&e[u]&&O.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(O=O.slice(O.indexOf(C))))})),n in U){for(var o in U[n]=!0,de)de[o]===n&&(N[o]=!0);if(!t)return}for(var r in U)Object.prototype.hasOwnProperty.call(U,r)&&(U[r]=e[_t[r]]);e.getModifierState&&(!e.altKey||e.ctrlKey)&&e.getModifierState("AltGraph")&&(O.indexOf(17)===-1&&O.push(17),O.indexOf(18)===-1&&O.push(18),U[17]=!0,U[18]=!0);var s=Re();if(t)for(var i=0;i<t.length;i++)t[i].scope===s&&(e.type==="keydown"&&t[i].keydown||e.type==="keyup"&&t[i].keyup)&&ea(e,t[i],s,a);if(n in M){for(var l=0;l<M[n].length;l++)if((e.type==="keydown"&&M[n][l].keydown||e.type==="keyup"&&M[n][l].keyup)&&M[n][l].key){for(var m=M[n][l],p=m.splitKey,h=m.key.split(p),f=[],c=0;c<h.length;c++)f.push(tt(h[c]));f.sort().join("")===O.sort().join("")&&ea(e,m,s,a)}}}}function N(e,a,t){O=[];var n=Wa(e),o=[],r="all",s=document,i=0,l=!1,m=!0,p="+",h=!1;for(t===void 0&&typeof a=="function"&&(t=a),Object.prototype.toString.call(a)==="[object Object]"&&(a.scope&&(r=a.scope),a.element&&(s=a.element),a.keyup&&(l=a.keyup),a.keydown!==void 0&&(m=a.keydown),a.capture!==void 0&&(h=a.capture),typeof a.splitKey=="string"&&(p=a.splitKey)),typeof a=="string"&&(r=a);i<n.length;i++)o=[],(e=n[i].split(p)).length>1&&(o=$a(de,e)),(e=(e=e[e.length-1])==="*"?"*":tt(e))in M||(M[e]=[]),M[e].push({keyup:l,keydown:m,scope:r,mods:o,shortcut:n[i],method:t,key:n[i],splitKey:p,element:s});s!==void 0&&!(function(f){return Ht.indexOf(f)>-1})(s)&&window&&(Ht.push(s),lt(s,"keydown",(function(f){ta(f,s)}),h),Zt||(Zt=!0,lt(window,"focus",(function(){O=[]}),h)),lt(s,"keyup",(function(f){ta(f,s),(function(c){var u=c.keyCode||c.which||c.charCode,C=O.indexOf(u);if(C>=0&&O.splice(C,1),c.key&&c.key.toLowerCase()==="meta"&&O.splice(0,O.length),u!==93&&u!==224||(u=91),u in U)for(var g in U[u]=!1,de)de[g]===u&&(N[g]=!1)})(f)}),h))}var ut={setScope:Jt,getScope:Re,deleteScope:function(e,a){var t,n;for(var o in e||(e=Re()),M)if(Object.prototype.hasOwnProperty.call(M,o))for(t=M[o],n=0;n<t.length;)t[n].scope===e?t.splice(n,1):n++;Re()===e&&Jt(a||"all")},getPressedKeyCodes:function(){return O.slice(0)},isPressed:function(e){return typeof e=="string"&&(e=tt(e)),O.indexOf(e)!==-1},filter:function(e){var a=e.target||e.srcElement,t=a.tagName,n=!0;return!a.isContentEditable&&(t!=="INPUT"&&t!=="TEXTAREA"&&t!=="SELECT"||a.readOnly)||(n=!1),n},trigger:function(e){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(M).forEach((function(t){var n=M[t].find((function(o){return o.scope===a&&o.shortcut===e}));n&&n.method&&n.method()}))},unbind:function(e){if(e===void 0)Object.keys(M).forEach((function(s){return delete M[s]}));else if(Array.isArray(e))e.forEach((function(s){s.key&&dt(s)}));else if(typeof e=="object")e.key&&dt(e);else if(typeof e=="string"){for(var a=arguments.length,t=new Array(a>1?a-1:0),n=1;n<a;n++)t[n-1]=arguments[n];var o=t[0],r=t[1];typeof o=="function"&&(r=o,o=""),dt({key:e,scope:o,method:r,splitKey:"+"})}},keyMap:Ot,modifier:de,modifierMap:_t};for(var mt in ut)Object.prototype.hasOwnProperty.call(ut,mt)&&(N[mt]=ut[mt]);if(typeof window<"u"){var Rs=window.hotkeys;N.noConflict=function(e){return e&&window.hotkeys===N&&(window.hotkeys=Rs),N},window.hotkeys=N}N.filter=function(){return!0};var aa=function(e,a){var t=e.target,n=t&&t.tagName;return!!(n&&a&&a.includes(n))};function Bs(e,a,t,n){t instanceof Array&&(n=t,t=void 0);var o=t||{},r=o.enableOnTags,s=o.filter,i=o.keyup,l=o.keydown,m=o.filterPreventDefault,p=m===void 0||m,h=o.enabled,f=h===void 0||h,c=o.enableOnContentEditable,u=c!==void 0&&c,C=b.useRef(null),g=b.useCallback((function(k,I){var v,S;return s&&!s(k)?!p:!!(aa(k,["INPUT","TEXTAREA","SELECT"])&&!aa(k,r)||(v=k.target)!=null&&v.isContentEditable&&!u)||!!(C.current===null||document.activeElement===C.current||(S=C.current)!=null&&S.contains(document.activeElement))&&(a(k,I),!0)}),n?[C,r,s].concat(n):[C,r,s]);return b.useEffect((function(){if(f)return i&&l!==!0&&(t.keydown=!1),N(e,t||{},g),function(){return N.unbind(e,g)};N.unbind(e,g)}),[g,e,f]),C}N.isPressed;const Ms=[],pt="dashboard_card",te="ai_cfo_dashboard_card";function na(e,a){return a?e.some((t=>String(t)===te))?e.slice():[te,...e]:e.filter((t=>String(t)!==te))}const Us=["net_burn_or_income_story_card","cash_balance","task_card","card_balance","zeni_promo_card","insights_dashboard","information_card","company_details","bill_pay_promo_card","bill_pay_card","reimbursement_card","reimbursement_promo_card","rewards_card"],Ls=(e,a,t,n,o)=>({card:{dimension:Tt(t),cardType:n,cardIndex:o,fetchState:a,disableAnimations:!1,spansFullDashboardWidth:!1},data:e.status!=null?{balanceAmount:e.balance?.available,lastUpdatedTime:e.status.lastRefreshSuccessTime,changePercent:e.balance?.change?.percent,changeComparedToDate:e.balance?.change?.since}:void 0}),je=(e,a,t,n,o)=>({card:{dimension:Tt(t),cardType:n,cardIndex:o,fetchState:a,disableAnimations:!1,spansFullDashboardWidth:!1},data:e}),Vs=(e,a,t,n)=>je(void 0,e,Ie,a,t),Gs=e=>{const a=Tt(Ie);return a.height=Ie.height+10,{card:{dimension:a,cardType:te,cardIndex:e,fetchState:"Completed",disableAnimations:!1,spansFullDashboardWidth:!0}}},Ys=ne((function(e,a){const t=Ws(a.dashboardReport),n=a.passedCardsOrdered,o=a.dashboardReport.reportsInOrder,{isInterestedInChargeCard:r,cardsCreditLimit:s,cashbackRate:i}=a;let l=n.map(((m,p)=>{if(m==="reimbursement_promo_card"||m==="bill_pay_promo_card")return Vs(t,m,p);if(m==="zeni_promo_card")return je({isExpressedInterest:r,creditLimit:s,cashbackRate:i,fetchState:"Completed"},a.cardBalanceFetchState,Ie,m,p);if(m==="information_card")return je(void 0,"Completed",Ie,m,p);if(m===te)return Gs(p);{const h=o.find((f=>f?.reportId===m));return h?(function(f,c,u,C){const g=f.reportId;switch(g){case"card_balance":case"cash_balance":return[Ls(f,c,u,g,C)];case"expense_automation_card":case"operating_expenses":case"revenue":case"top_expenses":case"cash_position":case"cash_in_cash_out":case"insights_dashboard":case"company_details":case"task_card":case"bill_pay_card":case"reimbursement_card":case"net_burn_or_income":case"accounts_payable_aging":case"accounts_receivable_aging":case"rewards_card":return[je(f,c,u,g,C)];case"net_burn_or_income_story_card":return[je(f,c,u,"net_burn_or_income_story_card",C)];default:return console.error(`card type ${g} not yet supported!`),[]}})(h,h.fetchState,Ie,p):[]}})).flat();return a.isSummaryCardsFiltered===!0&&(l=l.filter((m=>Us.includes(m.card.cardType)==0)).filter((m=>{const p=m.data?.availableNumberOfPeriods;return p!=null?p>0:m.card.cardType!="top_expenses"||m.data==null||(function(h){if(h==null||h.length===0)return!0;let f=!0;for(const c of h)if(c.balance.available.amount!==0){f=!1;break}return f})(m.data.topExpenses.accountsOrdered)===!1}))),{cardDataArray:l,autoCompleteData:{autoCompleteText:e.entityAutoCompleteState.autoCompleteText.navbar,entityAutoCompleteView:ue(e,"navbar")},analytics:T,isReimbursementEnabled:a.isReimbursementEnabled,isBillPayEnabled:a.isBillPayEnabled}}),(function(e,a){const t=a.tenantId,n=V.getSignedInUser();return{cardActions:{onCardClick:(o,r,s,i)=>{if(console.warn(`onCardClick at ${o} for the type ${r}`),r==="zeni_promo_card"&&i!=null)T.trackDashboardCardClicked("cards promo",2),T.trackZeniCardsPromoCardClicked(a.isChargeCardFeatureEnabled,i,2,`${n?.firstName??""} ${n?.lastName??""}`,a.isChargeCardFeatureEnabled?a.cardsCreditLimit:void 0),i==="Learn More"?window.open("https://www.zeni.ai/product/business-credit-card","_blank"):a.navigate("../cards/promo",{relative:"path"});else if(a.isForecastOn)switch(r){case"net_burn_or_income":case"operating_expenses":case"revenue":a.navigate(`${r}/forecast/${a.selectedForecastOnDashboard}`,{state:{referrer:s}});break;default:a.navigate(`${r}`,{state:{referrer:s}})}else r==="rewards_card"?(n!=null&&T.trackDashboardCardClicked("rewards promo",o+1),a.navigate("../../rewards/refer",{state:{referrer:s}})):r==="expense_automation_card"?(T.trackMonthEndCloseClicked(a.selectedPeriod.month,a.selectedPeriod.year,"Dashboard"),a.navigate("../../month_end_close_checks/review",{state:{referrer:"Dashboard"}})):a.navigate(`${r}`,{state:{referrer:s}})},onReloadData:(o,r)=>{const s=[];a.isApAgingFeatureEnabled===!1&&s.push("accounts_payable_aging"),a.isArAgingFeatureEnabled===!1&&s.push("accounts_receivable_aging"),a.isRewardsFeatureEnabled===!1&&s.push("rewards_card"),(function(i,l,m,p){if(l!==te)switch(l){case"card_balance":i(la());break;case"cash_balance":i(ca());break;case"operating_expenses":i(xa(!0));break;case"revenue":i(Da(!0));break;case"net_burn_or_income":i(Ta(!0));break;case"net_burn_or_income_story_card":i(Fo(!0));break;case"cash_position":i(Ea(!0));break;case"top_expenses":i(Ia());break;case"cash_in_cash_out":i(Aa());break;case"insights_dashboard":i(Oo());break;case"bill_pay_card":i(Po());break;case"reimbursement_card":i(wo());break;case"company_details":i(xo(m));break;case"task_card":i(Do());break;case"accounts_payable_aging":p.includes("accounts_payable_aging")===!1&&i(gt(Ee()));break;case"accounts_receivable_aging":i(bt(Ee()));break;case"rewards_card":p.includes("rewards_card")===!1&&i(To(!0));break;default:throw new Error(`report type ${l} is not yet supported`)}})(e,r,a.companyId,s)},onTimeframeChange:(o,r)=>{T.trackTimeframeSwitch(Ga(r),$s(o),"Dashboard"),(function(s,i,l){switch(i){case"operating_expenses":case"revenue":case"net_burn_or_income":case"cash_position":s(Te(l));break;case"top_expenses":s(va(l));break;default:throw new Error(`report type ${i} doesn't support changeTimeframe`)}})(e,o,r)},onUpdateSelectedInsightIndex:o=>{e(Eo(o))},onCategoryClick:(o,r,s)=>{o==="bill-pay"?a.navigate("../bills",{state:{tab:r,subTab:s},relative:"path"}):o==="reimbursement"?a.navigate("../reimbursements",{state:{tab:r,subTab:s},relative:"path"}):o==="uncategorized-account-mapping"?a.navigate("../settings/accounting",{relative:"path"}):o==="show-all-tasks"?a.navigate("../tasks",{relative:"path"}):a.navigate(`../../transactions/${o}`)},onCardBtnClick:o=>{if(o==="bill_pay_promo_card"){const r="../bills",s=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(r,{state:{pathnameStackToGoBack:s},relative:"path"})}else if(o==="reimbursement_promo_card"){const r="../reimbursements",s=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(r,{state:{pathnameStackToGoBack:s},relative:"path"})}},onSaveClick:(o,r,s)=>{o==="net_burn_or_income_story_card"&&(T.trackUpdateBurnRateCalculatorSettings(r,s,Ao(s)),e(Io(t,r,s)))}},autoCompleteActions:{onAutoCompleteInputChange:o=>{o.trim().length>=2?e(me({searchString:o,searchOrigin:"navbar"})):o.trim().length===0&&e(ae("navbar"))},onCancelAutoComplete:()=>{e(ae("navbar"))},onAutoCompleteEntity:o=>{let r="";r=o.type!=="vendor"||o.detailType!=="bank_merchant"&&o.detailType!=="card_merchant"?he(o,a.tenantEmailDomain):Jo(o.zeniId,o.qboId,a.tenantEmailDomain);const s=j(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(r,{state:{pathnameStackToGoBack:s,referrer:"Search"}})}}}}))(Ho);function Ns(){const e=oa(),a=Fa(),t=Ua(a),{isAiCfoOpen:n,setIsAiCfoOpen:o,setAiCfoSidePanelQuestionToSubmit:r}=Oa(),s=J(),i=z(),l=H(),m=V.getSignedInUser(),{useFeatureGate:p,useDynamicConfig:h}=we(),[f,c]=b.useState(!1),[u,C]=b.useState(!1),g=ja(),{tenantEmailDomain:k}=K(),{isAiCfoAccessEnabled:I,onAskAiCfoClick:v}=se({mobileExploreReferrer:"Dashboard"}),S=_((A=>A.tenantState.fetchState==="Completed"||A.tenantState.activeTenantFetchState.fetchState==="Completed"?L(A):void 0)),D=S??V.getSignedInUserTenant(k),P=S?.masterTOSInfo?.isMasterTOSAccepted??!1,x=D.tenantId,E=D.companyId;b.useEffect((()=>{f===!1&&l.state?.message==="activation"&&(i(_o(E)),c(!0))}),[l.state,f,E,i]),b.useEffect((()=>{g&&!u&&l.state?.message==="open_ai_cfo_drawer"&&(C(!0),P?(o(!0),s({pathname:l.pathname,search:l.search,hash:l.hash},{replace:!0,state:{...l.state,message:void 0}})):ce({location:l,navigate:s,mergeState:{referrer:"Dashboard",message:void 0}}))}),[l,u,g,P,o,s]);const{isFeatureEnabled:B}=p(G.isApAgingFeatureEnabled),y=zo(),w=Xo(y),{isFeatureEnabled:re}=p(G.isArAgingFeatureEnabled),{isFeatureEnabled:Xe}=p(G.isDepositAccountsFeatureEnabled),{isFeatureEnabled:R}=p(G.isReferralFeatureEnabled),{isFeatureEnabled:ie}=p(G.isChargeCardFeatureEnabled),{isFeatureEnabled:Ke}=p(G.isAiCfoFileUploadEnabled),{isFeatureEnabled:at}=p(G.isDashboardSidebarChristmasAnimationEnabled),{isFeatureEnabled:Xa}=p(G.isDashboardSidebarNewYearAnimationEnabled),{isFeatureEnabled:Ka}=p(G.aiAuditScorePercentage),{configValue:Ft}=h(Ra.zeniCardsConfig),qa=Ft.charge_card_cashback_rate_per_transaction==null?.0175:Ft.charge_card_cashback_rate_per_transaction;if(l.state?.message==="activation"){const A=Ko(l.state?.pathnameStackToGoBack);s(l.pathname,{state:{...l.state,message:void 0,pathnameStackToGoBack:A.newStack}})}const[jt,Qa]=b.useState(!1),[nt,Za]=b.useState(!1);Bs("command+p, Control+p",(A=>{Za(!nt),A.preventDefault()}),{enableOnContentEditable:!0,enableOnTags:["INPUT","SELECT","TEXTAREA"]},[nt]);const Rt=S?.externalConnections?.accounting[0]?.isValid;if(m==null)throw Error("Can't access dashboard without signing in...");const fe=_((A=>L(A)?.excludedResources)),Ha=_((A=>A.expenseAutomationViewState.selectedPeriodByTenantId)),Ja=!!S?.companyReimbursementInfo?.info?.isReimbursementEnabled,en=!!S?.companyBillPayInfo?.info?.isBillPayEnabled,tn=$e(),X=[],Bt=fe?.resources?.find((A=>A.resource==="/reports/top_expenses"))==null,an=fe?.resources?.find((A=>A.resource==="/reports/task_card"))==null,Mt=S?.userRole!=null&&_a(S?.userRole),nn=fe?.resources?.find((A=>A.resource==="/bills"))==null&&!Mt,on=fe?.resources?.find((A=>A.resource==="/reimbursements"))==null,sn=So(tn?.loggedInUserRoleMap),rn=S?.company?.companyChargeCardInfo?.chargeCardsCreditAccountLimit??0,cn=S?.companyChargeCardInfo?.info?.isCompanyInterestedInChargeCard??!1;Bt===!1&&X.push("top_expenses"),an===!1&&X.push("task_card"),nn===!1&&X.push("bill_pay_card","bill_pay_promo_card"),B===!1&&X.push("accounts_payable_aging"),re===!1&&X.push("accounts_receivable_aging"),(y===!1||Mt)&&X.push("expense_automation_card"),on===!1&&X.push("reimbursement_card","reimbursement_promo_card"),X.push("zeni_accounts_promo_card","treasury_promo_card"),R===!1&&X.push("rewards_card");const{areTenantIdsInSync:Ut}=qo();b.useLayoutEffect((()=>{jt&&w===y||Rt!==!0||!Ut||fe?.fetchState!=="Completed"&&fe?.fetchState!=="Error"||(Qa(!0),i(ko(m.userId,E,x,!0,!1,X)))}),[jt,m,x,i,Bt,Rt,fe?.fetchState,Ut]);const ln=_((A=>A.reportUIOptionsState.forecastOnDashboard.isForecastModeOn)),dn=_((A=>A.revenueState.uiState.selectedForecast?.id)),un=_((A=>A.cardBalanceState.fetchState)),ge=_((A=>yo(A,X))),mn=ge.fetchState,pn=b.useMemo((()=>na(ge.cardsOrdered,I)),[ge.cardsOrdered,I]),hn=b.useMemo((()=>na(ge.cardsForDashboardUI,I)),[ge.cardsForDashboardUI,I]);Ge({isDataReady:!0});const{isSuggestedQuestionsLoading:fn,suggestedPromptQuestions:gn}=ts(),Lt=_((A=>da(A))),Se=Lt.uiState?.currentChatSessionId,ot=Lt.allSessionsWithOrderedQuestionAnswers??Ms,{currentSessionQuestionAnswers:bn}=Qo(ot,Se),Vt=bn.length===0,Cn=b.useCallback(((A,Q,ee)=>{const ke=m?.userId;if(ke==null)return;const Y=A.trim();if(Y.length===0&&Q.length===0)return;if(!P)return void ce({location:l,navigate:s,mergeState:{referrer:"Dashboard",...Y.length>0?{aiCfoInitialQuestion:Y,aiCfoInitialSubmissionSource:pt,...typeof ee=="number"?{aiCfoSuggestionIndex:ee}:{}}:{}}});const Z=Ba(e.getState()),ye=()=>{const ve=j(l.state?.pathnameStackToGoBack,l.pathname);s(`/${k}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:ve,referrer:"Dashboard",aiCfoInitialQuestion:Y,aiCfoShouldSubmit:!Z&&Y.length>0,aiCfoInitialSubmissionSource:pt,...typeof ee=="number"?{aiCfoSuggestionIndex:ee}:{}}})};return t?Q.length>0?void o(!0):void ye():Q.length>0?Z?(i(Ct(Y)),void o(!0)):(r(Y.length>0?Y:null),o(!0),void(Y.length>0&&Ma(i,Y,pt,Se,ot,ke,ee,Q.length>0?Q:void 0))):(Z&&i(Ct(Y)),void ye())}),[ot,Se,i,P,t,l,s,r,o,m?.userId,e,k]),_n=b.useCallback((()=>{P?o(!0):ce({location:l,navigate:s,mergeState:{referrer:"Dashboard"}})}),[P,l,s,o]),Sn=b.useCallback((()=>{if(!P)return void ce({location:l,navigate:s,mergeState:{referrer:"Dashboard"}});if(k==null)return;const A=j(l.state?.pathnameStackToGoBack,l.pathname);s(`/${k}/ai-cfo/explore`,{state:{pathnameStackToGoBack:A,referrer:"Dashboard"}})}),[P,l,s,k]),kn=b.useCallback((()=>{if(P)if(t){if(k==null||S==null)return;const A=Se==null||Vt?`/${k}/ai-cfo/explore`:`/${k}/ai-cfo/${Se}`,Q=l.state?.pathnameStackToGoBack??[],ee=j(Q,l.pathname);s(A,{state:{...l.state,pathnameStackToGoBack:ee,[Zo]:!0}})}else ce({location:l,navigate:s,mergeState:{referrer:"Dashboard"}});else ce({location:l,navigate:s,mergeState:{referrer:"Dashboard"}})}),[P,t,l,s,k,S,Se,Vt]);return d.jsxs(d.Fragment,{children:[mn==="Completed"?d.jsx(Ye,{analytics:T,onLoad:A=>{A.trackPageLoaded($.Event.dashboard)}}):null,d.jsx(Ys,{maxColumns:n?2:void 0,isAiCfoAccessEnabled:I,onAskAiCfoClick:v,onAiCfoDashboardOpenPanel:_n,onAiCfoDashboardOpenScopePage:kn,isAiCfoFileUploadEnabled:Ke===!0&&t===!1,onAiCfoDashboardPromptSubmit:Cn,onAiCfoDashboardExpandToFullPage:Sn,aiCfoDashboardShouldClearPromptOnSubmit:P,aiCfoDashboardSuggestedPromptQuestions:gn,aiCfoDashboardSuggestedPromptQuestionsLoading:fn,onDragAndDropCard:(A,Q)=>{if(A===te||Q===te)return;const ee=(function(Z,ye,ve){const st=ve.indexOf(Z),rt=ve.indexOf(ye);if(st===-1||rt===-1||st===rt)return ve;const it=[...ve];return it.splice(st,1),it.splice(rt,0,Z),it})(A,Q,pn),ke=ee.filter((Z=>Z!==te)),Y=ge.cardsOrdered;(ke.length!==Y.length||ke.some(((Z,ye)=>Z!==Y[ye])))&&i(vo(ke))},dashboardReport:ge,passedCardsOrdered:hn,tenantId:x,companyId:E,tenantEmailDomain:k,location:l,navigate:s,isApAgingFeatureEnabled:B,isArAgingFeatureEnabled:re,isBillPayEnabled:en,isReimbursementEnabled:Ja,isSummaryCardsFiltered:nt,isForecastOn:ln,selectedForecastOnDashboard:dn,isVisitingFirstTime:f,isZeniAccountEnabled:Xe,isRewardsFeatureEnabled:R,selectedPeriod:Ha[x],isChargeCardFeatureEnabled:ie,isUserHasCardsAccess:sn,cardsCreditLimit:rn,cashbackRate:qa,isInterestedInChargeCard:cn,cardBalanceFetchState:un,christmasAnimationEnabled:at,newYearAnimationEnabled:Xa,aiAuditScorePercentageEnabled:Ka})]})}const $s=e=>{switch(e){case"operating_expenses":return"Operating Expenses";case"revenue":return"Revenues";case"top_expenses":return"Top Expenses";case"net_burn_or_income":return"Burn Rate";case"cash_in_cash_out":return"Cash In, Cash Out";case"cash_position":return"Cash Position"}return"Dashboard"},Ws=e=>e.fetchState!=="Error"?e.fetchState:e.reportsInOrder.map((a=>a.fetchState)).reduce(((a,t)=>a==="In-Progress"||a==="Not-Started"?a:t));function ht(){return d.jsxs(ft,{children:[d.jsx(F,{path:"/",element:d.jsx(le,{})}),d.jsx(F,{path:"/:forecastId",element:d.jsx(le,{})}),d.jsx(F,{path:"/:forecastId/*",element:d.jsx(Be,{})})]})}function yr(){const e=$e(),a=e?.excludedResources?.find((m=>m.resource==="/reports/top_expenses"))==null,{useFeatureGate:t}=we(),{isFeatureEnabled:n}=t(G.isApAgingFeatureEnabled),{isFeatureEnabled:o}=t(G.isArAgingFeatureEnabled),r=_((m=>L(m))),{isFeatureEnabled:s}=t(G.isDebitCardFeatureEnabled),i=jo(s,r),l=Ro(r);return i===!0||l===!0?d.jsx(ft,{children:d.jsx(F,{path:"/*",element:d.jsx(as,{})})}):d.jsxs(ft,{children:[d.jsx(F,{path:"/",element:d.jsx(Ns,{})}),d.jsx(F,{path:"cash_balance/*",element:d.jsx(qt,{})}),d.jsx(F,{path:"card_balance/*",element:d.jsx(qt,{})}),d.jsx(F,{path:"operating_expenses/*",element:d.jsx(le,{})}),d.jsx(F,{path:"operating_expenses/forecast/*",element:d.jsx(ht,{})}),d.jsx(F,{path:"revenue/forecast/*",element:d.jsx(ht,{})}),d.jsx(F,{path:"revenue/*",element:d.jsx(le,{})}),d.jsx(F,{path:"net_burn_or_income/forecast/*",element:d.jsx(ht,{})}),d.jsx(F,{path:"net_burn_or_income/*",element:d.jsx(le,{})}),n===!0&&d.jsxs(d.Fragment,{children:[d.jsx(F,{path:"accounts_payable_aging/*",element:d.jsx(os,{})}),d.jsx(F,{path:"accounts_payable_aging/:vendorId/:reportDate/*",element:d.jsx(ns,{})})]}),o&&d.jsxs(d.Fragment,{children:[d.jsx(F,{path:"accounts_receivable_aging/:customerId/:reportDate/*",element:d.jsx(ss,{})}),d.jsx(F,{path:"accounts_receivable_aging/*",element:d.jsx(rs,{})})]}),d.jsx(F,{path:"cash_position/*",element:d.jsx(le,{})}),d.jsx(F,{path:"top_expenses/*",element:a===!0?d.jsx(le,{}):d.jsx(Be,{})}),d.jsx(F,{path:"cash_in_cash_out/*",element:d.jsx(le,{})}),d.jsx(F,{path:"company_details",element:d.jsx(es,{})}),d.jsx(F,{path:"referrals/*",element:d.jsx(yn,{to:"../../rewards/refer",replace:!0})}),d.jsx(F,{path:"*",element:d.jsx(Be,{})})]})}export{yr as default};
@@ -1 +1 @@
1
- import{j as v}from"./liveblocks-mJJR3MsR.js";import{a as u}from"./sentry-CItQHKpv.js";import{u as y,j as b,l as w,g as A,N}from"./core-CMivCywN.js";import{T9 as U,fB as _,gh as k,Ta as L,pO as R,Tb as z}from"./zeni-epic-state-CqKBThJ0.js";import{u as O,z as f,L as C,t as I,G as j,b as $}from"./index-DlMGj3Af.js";import"./mui-C6XtNCo7.js";import{t as P}from"./getLocaleForTenant-DCXbCJAu.js";import"./recharts-Co0_Dmc-.js";import"./analytics-BgUj-hR5.js";import"./plaid-l8YRzpBD.js";import"./dnd-B8NpvFCU.js";import"./stripe-cKAAJElX.js";import"./lottie-BTBtSLCO.js";import"./lexical-Di6ZXkXF.js";import"./pdf-DSDpdkmb.js";import"./utils-macSqF2O.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]="9e10973a-e042-40b8-8508-08a07badb79f",t._sentryDebugIdIdentifier="sentry-dbid-9e10973a-e042-40b8-8508-08a07badb79f")}catch{}})();const G=w((function(t){return{fetchState:t.tenantState.fetchState,activeTenantFetchState:t.tenantState.activeTenantFetchState.fetchState,currentTenant:_(t),tenantsInOrder:z(t).tenantsInOrder}}))((function({fetchState:t,activeTenantFetchState:s,currentTenant:o,tenantsInOrder:h}){const r=A(),p=new URLSearchParams(r.search);if(o==null||t!=="Completed"&&s!=="Completed")return null;{let m="";const n=h.map((l=>l.tenantEmailDomain)),i=r.state?.origin,a=r.state?.queryParams;let c=`../${o.tenantEmailDomain}`,d=null,e=!1,g=null,S=null;const T=E(r.pathname);if(T!=null)c=`../${o.tenantEmailDomain}/${T}`,m="comingFromV2UrlPath",T==="ai-cfo/explore"&&(d=p.get("question")?.replace(/^["']|["']$/g,"")??null,e=p.get("should_submit")==="true");else if(i!=null)if(n.reduce(((l,F)=>l||i.split("/").find((D=>D===F))!=null),!1))c=i,i.includes("ai-cfo")&&a!=null&&(g=a.aiCfoRef??null,S=a.aiCfoEmailRefId??null);else{const l=E(i);l!=null?(c=`../${o.tenantEmailDomain}/${l}`,m="comingFromV2UrlPath",l==="ai-cfo/explore"&&a!=null&&(a.aiCfoQuestion!=null&&(d=a.aiCfoQuestion),a.aiCfoShouldSubmit==="true"&&(e=!0))):console.warn("Don't have access to previous path tenant!")}const x=$(c,p);return v.jsx(N,{to:x,replace:!0,state:{...r.state,origin:"",message:m,aiCfoInitialQuestion:d,aiCfoShouldSubmit:e,aiCfoRef:g,aiCfoEmailRefId:S}})}}));function oe(){const t=y(),{setLoading:s,clearAllLoading:o}=O(),h=u.useRef(!1),r=u.useRef(!1),p=u.useRef(null),m=b((e=>U(e))),n=b((e=>e.tenantState.fetchState)),i=b((e=>e.tenantState.error)),a=b((e=>e.tenantState.activeTenantFetchState.fetchState)),c=b((e=>_(e))),d=f.getSignedInUser();return u.useLayoutEffect((()=>{const e=f.getActiveTenantForUser()?.tenantId??null;p.current!==e&&(p.current=e,h.current=!1,r.current=!1,s(C.TENANT_FETCHING)),!h.current||a!=="Completed"&&a!=="Error"||(h.current=!1),!r.current||n!=="Completed"&&n!=="Error"||(r.current=!1)}),[a,n]),u.useEffect((()=>{const e=f.getActiveTenantForUser()?.tenantId;h.current===!1&&d!=null&&e!=null&&I.shouldFetchActiveTenant(e)&&(h.current=!0,I.markActiveTenantFetchStarted(e),n==="Completed"||a!=="Not-Started"&&a!=="Error"||(s(C.TENANT_FETCHING),t(k(d.userId,e))))}),[n,a,d,t]),u.useEffect((()=>{const e=f.getSignedInUser(),g=f.getActiveTenantForUser()?.tenantId,S=g==null||a==="Completed"||a==="Error";r.current===!1&&e!=null&&S&&I.shouldFetchAllTenants()&&(r.current=!0,I.markAllTenantsFetchStarted(),(n==="Not-Started"||n==="Error"&&!L(i))&&t(R(e.userId)))}),[n,a,i,d,t]),u.useEffect((()=>{f.isSignedIn()&&n==="Completed"&&m.tenantsCoreDetailsInOrder.length>0&&(f.saveSignedInUserTenants(m.tenantsCoreDetailsInOrder),o())}),[m.tenantsCoreDetailsInOrder,n]),u.useEffect((()=>{!f.isSignedIn()||n!=="Completed"&&a!=="Completed"||c==null||(j.updateAppLocaleID(P(c)),o())}),[n,a,c]),v.jsx(G,{})}const Q=["dashboard/cash-balance","dashboard/card-balance","dashboard/operating-expenses","dashboard/revenue","dashboard/burn-rate","dashboard/cash-position","dashboard/top-expenses","dashboard/cash-in-cash-out","dashboard","reports","forecast","uncategorized-expense","uncategorized-income","missing-receipts","bills","cards/activate","cards","reimbursements","wise","checking","aicfo"],q={"dashboard/cash-balance":"dashboard/cash_balance","dashboard/card-balance":"dashboard/card_balance","dashboard/operating-expenses":"dashboard/operating_expenses","dashboard/revenue":"dashboard/revenue","dashboard/burn-rate":"dashboard/net_burn_or_income","dashboard/cash-position":"dashboard/cash_position","dashboard/top-expenses":"dashboard/top_expenses","dashboard/cash-in-cash-out":"dashboard/cash_in_cash_out",dashboard:"dashboard",reports:"reports",forecast:"forecast","uncategorized-expense":"transactions/uncategorized-expense","uncategorized-income":"transactions/uncategorized-income","missing-receipts":"transactions/missing-receipts",bills:"bills",reimbursements:"reimbursements","cards/activate":"cards/activate",cards:"cards",wise:"bills/wise/callback/link-account",checking:"checking",aicfo:"ai-cfo/explore"};function E(t){for(const s of Q)if(t.toLocaleLowerCase().includes(s))return q[s]}export{oe as default};
1
+ import{j as v}from"./liveblocks-CkQ2CY6T.js";import{a as u}from"./sentry-Lj2WEO6K.js";import{u as y,j as b,l as w,g as A,N}from"./core-CiFsHd3i.js";import{T9 as U,fB as _,gh as k,Ta as L,pO as R,Tb as z}from"./zeni-epic-state-BdFiPfcm.js";import{u as O,z as f,L as C,t as I,G as j,b as $}from"./index-juRht-9c.js";import"./mui-FQy08n5j.js";import{t as P}from"./getLocaleForTenant-CRduVQsY.js";import"./recharts-CYbL6OhC.js";import"./analytics-CqoRAkB1.js";import"./plaid-Dw5LGskq.js";import"./dnd-jcX4BW0a.js";import"./stripe-cKAAJElX.js";import"./lottie-cUBeCDOE.js";import"./lexical-DBiumTDC.js";import"./pdf-C6cPvWx8.js";import"./utils-DsJsAXTJ.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]="9e10973a-e042-40b8-8508-08a07badb79f",t._sentryDebugIdIdentifier="sentry-dbid-9e10973a-e042-40b8-8508-08a07badb79f")}catch{}})();const G=w((function(t){return{fetchState:t.tenantState.fetchState,activeTenantFetchState:t.tenantState.activeTenantFetchState.fetchState,currentTenant:_(t),tenantsInOrder:z(t).tenantsInOrder}}))((function({fetchState:t,activeTenantFetchState:s,currentTenant:o,tenantsInOrder:h}){const r=A(),p=new URLSearchParams(r.search);if(o==null||t!=="Completed"&&s!=="Completed")return null;{let m="";const n=h.map((l=>l.tenantEmailDomain)),i=r.state?.origin,a=r.state?.queryParams;let c=`../${o.tenantEmailDomain}`,d=null,e=!1,g=null,S=null;const T=E(r.pathname);if(T!=null)c=`../${o.tenantEmailDomain}/${T}`,m="comingFromV2UrlPath",T==="ai-cfo/explore"&&(d=p.get("question")?.replace(/^["']|["']$/g,"")??null,e=p.get("should_submit")==="true");else if(i!=null)if(n.reduce(((l,F)=>l||i.split("/").find((D=>D===F))!=null),!1))c=i,i.includes("ai-cfo")&&a!=null&&(g=a.aiCfoRef??null,S=a.aiCfoEmailRefId??null);else{const l=E(i);l!=null?(c=`../${o.tenantEmailDomain}/${l}`,m="comingFromV2UrlPath",l==="ai-cfo/explore"&&a!=null&&(a.aiCfoQuestion!=null&&(d=a.aiCfoQuestion),a.aiCfoShouldSubmit==="true"&&(e=!0))):console.warn("Don't have access to previous path tenant!")}const x=$(c,p);return v.jsx(N,{to:x,replace:!0,state:{...r.state,origin:"",message:m,aiCfoInitialQuestion:d,aiCfoShouldSubmit:e,aiCfoRef:g,aiCfoEmailRefId:S}})}}));function oe(){const t=y(),{setLoading:s,clearAllLoading:o}=O(),h=u.useRef(!1),r=u.useRef(!1),p=u.useRef(null),m=b((e=>U(e))),n=b((e=>e.tenantState.fetchState)),i=b((e=>e.tenantState.error)),a=b((e=>e.tenantState.activeTenantFetchState.fetchState)),c=b((e=>_(e))),d=f.getSignedInUser();return u.useLayoutEffect((()=>{const e=f.getActiveTenantForUser()?.tenantId??null;p.current!==e&&(p.current=e,h.current=!1,r.current=!1,s(C.TENANT_FETCHING)),!h.current||a!=="Completed"&&a!=="Error"||(h.current=!1),!r.current||n!=="Completed"&&n!=="Error"||(r.current=!1)}),[a,n]),u.useEffect((()=>{const e=f.getActiveTenantForUser()?.tenantId;h.current===!1&&d!=null&&e!=null&&I.shouldFetchActiveTenant(e)&&(h.current=!0,I.markActiveTenantFetchStarted(e),n==="Completed"||a!=="Not-Started"&&a!=="Error"||(s(C.TENANT_FETCHING),t(k(d.userId,e))))}),[n,a,d,t]),u.useEffect((()=>{const e=f.getSignedInUser(),g=f.getActiveTenantForUser()?.tenantId,S=g==null||a==="Completed"||a==="Error";r.current===!1&&e!=null&&S&&I.shouldFetchAllTenants()&&(r.current=!0,I.markAllTenantsFetchStarted(),(n==="Not-Started"||n==="Error"&&!L(i))&&t(R(e.userId)))}),[n,a,i,d,t]),u.useEffect((()=>{f.isSignedIn()&&n==="Completed"&&m.tenantsCoreDetailsInOrder.length>0&&(f.saveSignedInUserTenants(m.tenantsCoreDetailsInOrder),o())}),[m.tenantsCoreDetailsInOrder,n]),u.useEffect((()=>{!f.isSignedIn()||n!=="Completed"&&a!=="Completed"||c==null||(j.updateAppLocaleID(P(c)),o())}),[n,a,c]),v.jsx(G,{})}const Q=["dashboard/cash-balance","dashboard/card-balance","dashboard/operating-expenses","dashboard/revenue","dashboard/burn-rate","dashboard/cash-position","dashboard/top-expenses","dashboard/cash-in-cash-out","dashboard","reports","forecast","uncategorized-expense","uncategorized-income","missing-receipts","bills","cards/activate","cards","reimbursements","wise","checking","aicfo"],q={"dashboard/cash-balance":"dashboard/cash_balance","dashboard/card-balance":"dashboard/card_balance","dashboard/operating-expenses":"dashboard/operating_expenses","dashboard/revenue":"dashboard/revenue","dashboard/burn-rate":"dashboard/net_burn_or_income","dashboard/cash-position":"dashboard/cash_position","dashboard/top-expenses":"dashboard/top_expenses","dashboard/cash-in-cash-out":"dashboard/cash_in_cash_out",dashboard:"dashboard",reports:"reports",forecast:"forecast","uncategorized-expense":"transactions/uncategorized-expense","uncategorized-income":"transactions/uncategorized-income","missing-receipts":"transactions/missing-receipts",bills:"bills",reimbursements:"reimbursements","cards/activate":"cards/activate",cards:"cards",wise:"bills/wise/callback/link-account",checking:"checking",aicfo:"ai-cfo/explore"};function E(t){for(const s of Q)if(t.toLocaleLowerCase().includes(s))return q[s]}export{oe as default};
@@ -0,0 +1,18 @@
1
+ import{j as l}from"./liveblocks-CkQ2CY6T.js";import{h as w,g as C,j as h,l as A,i as P}from"./core-CiFsHd3i.js";import{Y2 as k,Y9 as _,gD as L,gC as J,gB as K,kL as M,V1 as W,u9 as X,fB as V,XB as D,kJ as F,Y3 as S,Yc as T,kH as G,l2 as j}from"./zeni-epic-state-BdFiPfcm.js";import{bK as q,$ as R,O as N,z as U,E as O,a2 as p,y as v,a5 as H,bL as Q,F as Y,bM as ee,p as te}from"./index-juRht-9c.js";import{n as Z}from"./mui-FQy08n5j.js";import"./sentry-Lj2WEO6K.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]="dc4dec97-69c6-497c-9dbc-d80a086958b4",e._sentryDebugIdIdentifier="sentry-dbid-dc4dec97-69c6-497c-9dbc-d80a086958b4")}catch{}})();const ne=A(null,(function(e,t){return{onSaveVendor:n=>{e(M(t.vendorId!==void 0?t.vendorId:void 0,t.billId,void 0,t.isExpressPayPage)),e(W("common")),n!=null&&e(X(n))},onGetOtp:n=>{e(K(n,"BillPayVendor"))},onResendOtp:n=>{e(J(n,"BillPayVendor"))},onVerifyOtp:(n,a)=>{e(L(n,a,"BillPayVendor"))},onVerifyOtpSuccess:(n,a,o)=>{e(_(n,a,o))}}}))(q);function z({vendorId:e,billId:t,isExpressPayPage:n}){const a=w(),o=C(),s=h((d=>k(d,e)));return l.jsx(ne,{location:o,navigate:a,vendorId:e,billId:t,vendorViewDetails:s,isExpressPayPage:n??!1})}const ae=Z.div`
2
+ display: flex;
3
+ height: 100vh;
4
+ width: 100%;
5
+ flex: 1 1 auto;
6
+ flex-direction: column;
7
+ align-items: center;
8
+ background-color: ${e=>e.theme.colors.grey4};
9
+ `,oe=A((function(e,t){const{vendorId:n,billId:a}=t,o=k(e,n),s=D(e,t.isVendorRecommendationEnabled,t.isZeniAccountsFeatureEnabled,a);return{billId:a,isDisabled:o.bankAccountCreationState.fetchState==="In-Progress"?"readonly":void 0,vendorViewDetails:o,file:s.file,bankAccountContext:t.bankAccountContext}}),(function(e,t){const{navigate:n,location:a,vendorId:o}=t;return{onFetchBankName:s=>{e(j(s))},onSaveHandler:s=>{e(G(t.bankAccountContext,s,"standard",o))},onCancel:()=>{(()=>{const s=p(a.state?.pathnameStackToGoBack),d=s.poppedPathname??E();n(d,{state:{pathnameStackToGoBack:s.newStack}})})(),e(S())},onACHDetailsUpdated:s=>{const{bankAccountSection:d}=s;e(T({data:d}))},onBackClick:()=>{if(e(F({fetchState:"Not-Started"})),t.bankAccountContext==="express-pay")n("../",{relative:"path"});else{const s=p(t.location.state?.pathnameStackToGoBack),d=s.poppedPathname??E(0);t.navigate(d,{state:{pathnameStackToGoBack:s.newStack}})}e(S())}}}))(Q);function me({vendorIdParam:e,accountContext:t}){const n=w(),a=C(),o=R(),{vendorId:s,billId:d}=P(),i=e??s,{useFeatureGate:c}=N(),r=U.getSignedInUser(),b=h((u=>V(u))),g=O(),x=p(a.state?.pathnameStackToGoBack),m=t??(x.poppedPathname?.includes("vendor")===!0?"vendor":"billDetail"),f=h((u=>k(u,i))),{isFeatureEnabled:I}=c(v.isVendorRecommendationFeatureEnabled),{isFeatureEnabled:y}=c(v.isDepositAccountsFeatureEnabled);if(r==null)throw Error("Can't access address page without signing in...");return m==="billDetail"&&f.editVendorState?.saveStatus.fetchState==="In-Progress"?l.jsx(H,{fetchState:f.editVendorState?.saveStatus.fetchState??"Not-Started",style:{backgroundColor:g.colors.grey5}}):l.jsxs(ae,{windowSize:o,children:[l.jsx(z,{vendorId:i,billId:d}),l.jsx(oe,{location:a,navigate:n,billId:d,vendorId:i,currentTenant:b,bankAccountContext:m,isVendorRecommendationEnabled:I,isZeniAccountsFeatureEnabled:y})]})}const E=(e=2)=>{let t="../";for(let n=0;n<e;n++)t=`${t}../`;return t},fe=(e,t,n)=>{let a=`/${e}/bill/${encodeURIComponent(t)}`;return n=="draft"&&(a+="/edit"),a},he=e=>`/${e}/bills`,ke=(e,t)=>{let n=`/${e}/bill`;return n=t!=null?n.concat(`/${t}/edit`):n.concat("/new"),n},B=(e,t,n,a)=>{let o=`/${e}/bill`;return o+=n!=null?`/${n}/edit/vendor`:"/new/vendor",o+=a!=null?`/${a}/edit/${t}`:`/create/${t}`,o};function Se(e,t,n){return B(e,"ach",t,n)}function ve(e,t,n){return B(e,"domestic",t,n)}function ge(e,t,n){return B(e,"international",t,n)}const se=(e,t,n)=>{let a=`/${e}/bill/`;return a=n!=null?a.concat(`${encodeURIComponent(n)}/${t}/`):a.concat(`new/${t}/`),a},ce=Z.div`
10
+ display: flex;
11
+ height: 100vh;
12
+ width: 100%;
13
+ flex: 1 1 auto;
14
+ flex-direction: column;
15
+ align-items: center;
16
+ background-color: ${e=>e.theme.colors.grey4};
17
+ box-shadow: ${e=>`0px 2px ${Y.sp1} ${e.theme.colors.dropShadowNormal}`};
18
+ `,de=A((function(e,t){const{vendorId:n,billId:a}=t,o=k(e,n),s=D(e,t.isVendorRecommendationEnabled,t.isZeniAccountsFeatureEnabled,a);return{billId:a,isDisabled:o.bankAccountCreationState.fetchState==="In-Progress"?"readonly":void 0,vendorViewDetails:o,file:s.file,bankAccountContext:t.bankAccountContext}}),(function(e,t){const{billId:n,navigate:a,location:o,vendorId:s,currentTenant:d}=t,{tenantEmailDomain:i}=d;return{onFetchBankName:c=>{e(j(c))},onSaveHandler:c=>{e(G(t.bankAccountContext,c,"us-domestic",s))},onWireDetailsUpdated:c=>{const{bankAccountSection:r}=c;e(T({data:r}))},onCancel:()=>{(()=>{const c=p(o.state?.pathnameStackToGoBack),r=c.poppedPathname??$();a(r,{state:{pathnameStackToGoBack:c.newStack}})})(),e(S())},onAddressClick:c=>{if(t.bankAccountContext==="express-pay")a("./add-address");else{const r=se(i,c,n),b=te(o.state?.pathnameStackToGoBack,o.pathname);a(r,{state:{pathnameStackToGoBack:b}})}},onBackClick:()=>{if(e(F({fetchState:"Not-Started"})),t.bankAccountContext==="express-pay")a("../",{relative:"path"});else{const c=p(t.location.state?.pathnameStackToGoBack),r=c.poppedPathname??$(0);t.navigate(r,{state:{pathnameStackToGoBack:c.newStack}})}e(S())}}}))(ee);function xe({vendorIdParam:e,accountContext:t}){const n=w(),a=C(),o=R(),{vendorId:s,billId:d}=P(),i=e??s,c=U.getSignedInUser(),{useFeatureGate:r}=N(),b=O(),g=h((u=>V(u))),x=p(a.state?.pathnameStackToGoBack),m=t??(x.poppedPathname?.includes("vendor")===!0?"vendor":"billDetail"),f=h((u=>k(u,i))),{isFeatureEnabled:I}=r(v.isVendorRecommendationFeatureEnabled),{isFeatureEnabled:y}=r(v.isDepositAccountsFeatureEnabled);if(c==null)throw Error("Can't access address page without signing in...");return m==="billDetail"&&f.editVendorState?.saveStatus.fetchState==="In-Progress"?l.jsx(H,{fetchState:f.editVendorState?.saveStatus.fetchState??"Not-Started",style:{backgroundColor:b.colors.grey5,boxShadow:`0px 2px ${Y.sp1} ${b.colors.dropShadowNormal}`}}):l.jsxs(ce,{windowSize:o,children:[l.jsx(z,{vendorId:i,billId:d}),l.jsx(de,{location:a,navigate:n,billId:d,vendorId:i,currentTenant:g,bankAccountContext:m,isVendorRecommendationEnabled:I,isZeniAccountsFeatureEnabled:y})]})}const $=(e=2)=>{let t="../";for(let n=0;n<e;n++)t=`${t}../`;return t};export{me as A,xe as D,z as V,fe as a,se as b,ke as c,ve as d,he as g,ge as i,Se as v};
@@ -0,0 +1 @@
1
+ import{j as i}from"./liveblocks-CkQ2CY6T.js";import{$ as l,a9 as c,E as f}from"./index-juRht-9c.js";import{D as p}from"./mui-FQy08n5j.js";import"./sentry-Lj2WEO6K.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},r=new e.Error().stack;r&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[r]="2824c378-4612-492a-96d5-c25aed4d9576",e._sentryDebugIdIdentifier="sentry-dbid-2824c378-4612-492a-96d5-c25aed4d9576")}catch{}})();const u={drawerLeftMargin:new c(0,0,240)};function h(e){const{isOpen:r,drawerLeftMargin:o,children:t,onClose:a}=e,n=l(),s=o?.valuePx(n)??u.drawerLeftMargin.valuePx(n),d=f();return i.jsx(p,{anchor:"right",open:r,PaperProps:{style:{width:`calc(100% - ${s})`}},slotProps:{backdrop:{style:{backgroundColor:d.colors.black,opacity:.8,cursor:"pointer"}}},onClose:a,children:t})}export{h as D};
@@ -0,0 +1 @@
1
+ import{j as s}from"./liveblocks-CkQ2CY6T.js";import{a as d}from"./sentry-Lj2WEO6K.js";import{h as V,u as G,g as A,i as q,j as l,N as F,l as R,n as W,o as N}from"./core-CiFsHd3i.js";import{W5 as _,fB as O,Vx as M,mX as X,Rt as I,Wa as Y,V0 as $,lX as z,Ru as S,VC as H,VD as J,V2 as K,V1 as L}from"./zeni-epic-state-BdFiPfcm.js";import{b6 as Q,h as U,a2 as Z,p as tt}from"./index-juRht-9c.js";import"./mui-FQy08n5j.js";import{d as k}from"./decodeURIComponentSafe-FYjI-TwW.js";import{w as et}from"./withTransactionSidePanel-BjLmCRfl.js";import{f as at,c as nt}from"./routePaths-DqksJ4i_.js";import"./recharts-CYbL6OhC.js";import"./analytics-CqoRAkB1.js";import"./plaid-Dw5LGskq.js";import"./dnd-jcX4BW0a.js";import"./stripe-cKAAJElX.js";import"./lottie-cUBeCDOE.js";import"./lexical-DBiumTDC.js";import"./pdf-C6cPvWx8.js";import"./utils-DsJsAXTJ.js";import"./useAskAiCfoHostNavButtonProps-Dhoa0fnv.js";import"./TransactionDetailScreen-srWo_3sK.js";import"./useInitialThreadRequest-D-SxLs4P.js";import"./expenseAutomationHelper-R2jHKv-Z.js";(function(){try{var a=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new a.Error().stack;t&&(a._sentryDebugIds=a._sentryDebugIds||{},a._sentryDebugIds[t]="d6888d25-15c1-42f6-bae3-fa13497d97e2",a._sentryDebugIdIdentifier="sentry-dbid-d6888d25-15c1-42f6-bae3-fa13497d97e2")}catch{}})();const ot=R((function(a,t){const e=t.entity,o=Y(a,t.entity,"EntityDetail");return{selectedEntity:e,autoCompleteData:{autoCompleteText:e.name,entityAutoCompleteView:$(a,"common")},trendWithTransactionsReport:o,analytics:U,isAccountingClassesEnabled:z(a)}}),(function(a,t){return{onTransactionItemClick:e=>{if(t.openTransactionPanel)return void t.openTransactionPanel(e.id,e.type);const o=`${nt(e,t.tenantEmailDomain)}`,c=tt(t.location.state?.pathnameStackToGoBack,t.location.pathname);t.navigate(o,{state:{pathnameStackToGoBack:c}})},autoCompleteActions:{onAutoCompleteInputChange:e=>{e.trim().length>=2?a(K({searchString:e,searchOrigin:"common"})):e.trim().length===0&&a(L("common"))},onAutoCompleteEntity:e=>{const o=at(e,t.tenantEmailDomain);a(H()),a(J()),t.resetTrendIsFetchedStates(),t.navigate(o,{replace:!0,state:{pathnameStackToGoBack:t.location.state?.pathnameStackToGoBack}})},onCancelAutoComplete:()=>{const e=Z(t.location.state?.pathnameStackToGoBack),o=e.poppedPathname??C();t.navigate(o,{state:{pathnameStackToGoBack:e.newStack}})}},onTrendSelectedPeriodChange:e=>{if(t.closeSidePanel?.(),e==null)t.defaultTransactionTimePeriod!=null&&a(S(t.entity,"EntityDetail",{timeframe:"quarter",timePeriod:t.defaultTransactionTimePeriod}));else{const o=e.currentTimePeriod==null?e.addTimePeriod:{startDate:e.addTimePeriod.startDate,endDate:e.currentTimePeriod.endDate};a(I(t.entity,"EntityDetail",{timeframe:e.timeframe,timePeriod:e.addTimePeriod})),a(S(t.entity,"EntityDetail",{timeframe:e.timeframe,timePeriod:o}))}}}}))(Q),it=et((function({entityType:a,...t}){const e=V(),o=G(),c=A(),[m,h]=d.useState(!1),[T,D]=d.useState(!1),{tenantEmailDomain:b,entityIdEncoded:x,entityNameEncoded:w}=q(),r=k(x??""),p=k(w??""),f=rt(r,p),j=[r,p].filter((n=>n!=null)),i={name:p,id:r,type:a,zeniId:r,qboId:r},g=l((n=>_(n.customerIncomeState,n.vendorExpenseState,n.trendState,i,"quarter"))),v=l((n=>O(n).company?.companyInfo.firstMonthOfFY??1)),u=l((n=>M(n.trendWithTransactionsState,i,"EntityDetail")));d.useEffect((()=>{m===!1&&f===!0&&(h(!0),o(X(i)))}),[m,f,i]);const E=l((n=>n.trendState.fetchState)),P=u?.selectedPeriod?.timePeriod??g,B=(function(n,y){return n!=null&&y!=null?{startDate:n.startDate,endDate:y?.endDate}:y})(u?.selectedPeriod?.timePeriod,g);return d.useEffect((()=>{m===!0&&T===!1&&E==="Completed"&&(D(!0),P!=null&&o(I(i,"EntityDetail",{timeframe:u?.selectedPeriod?.timeframe??"quarter",timePeriod:P})))}),[m,T,E]),f?s.jsx(ot,{firstMonthOfFY:v,tenantEmailDomain:b,location:c,navigate:e,entity:i,defaultTransactionTimePeriod:B,resetTrendIsFetchedStates:()=>{h(!1),D(!1)},...t}):s.jsx(F,{to:C(j.length)})})),rt=(a,t)=>t!=null&&t.length>0&&a!=null&&a.length>0,C=(a=2)=>{let t="../";for(let e=0;e<a;e++)t=`${t}../`;return t};function jt({entityType:a}){return s.jsx(W,{children:s.jsx(N,{path:"/:entityIdEncoded/:entityNameEncoded/*",element:s.jsx(it,{entityType:a})})})}export{jt as EntityDetailRoutes,jt as default};
@@ -0,0 +1,25 @@
1
+ import{j as T}from"./liveblocks-CkQ2CY6T.js";import vn from"./NotFoundScreen-ButYFiTG.js";import{a as n,R as Ia}from"./sentry-Lj2WEO6K.js";import{n as Qe,S as wn}from"./mui-FQy08n5j.js";import{u as Ce,h as ka,g as It,j as D,l as Pn,t as xn,i as Qt,n as Rn,o as rt}from"./core-CiFsHd3i.js";import{fB as De,a0e as Dn,pY as Pe,Tp as Fn,zl as _n,a0f as Un,a0g as Vn,a0h as Bn,a0i as dt,a0j as Ge,gd as St,a0k as Kt,eJ as Mn,fY as On,a0l as Xt,a0m as qe,qP as Ln,uc as jn,gP as zn,gN as $n,a0n as Gn,r0 as qn,r9 as Nn,q7 as Jn,ql as Ta,gM as le,gO as Yn,a0o as Hn,qH as ba,ra as Wn,qi as Qn,qd as Kn,ui as Xn,gL as xe,a0p as Ye,Bv as ya,LO as Ea,a0q as Aa,a0r as Zn,fh as eo,fj as to,sd as gt,W6 as Zt,W8 as ao,l_ as no,W9 as oo,m5 as so,dh as co,CO as Ct,a0s as io,a0t as lo,s3 as ro,s4 as uo,UX as mo,Vc as po,$I as ho,qA as va,rf as He,a0u as So,V2 as ea,V1 as $e,a0v as ta,mm as go,a0w as Co,a0x as fo,a0y as Io,a0z as ko,qv as To,ri as Ne,a0A as bo,a0B as yo,a0C as Eo,rq as Ao,m9 as vo,m0 as wo,a0D as Po,m8 as aa,Wj as xo,a0E as Ro,a0F as Do,tP as Fo,tq as _o,rg as ue,tp as ut,a0G as Uo,a0H as Vo,a0I as Bo,a0J as Mo,nF as Oo,br as Lo,nA as na,nm as jo,a0K as zo,gY as $o,nx as Go,sf as qo,sh as No,EO as Jo,rY as Yo,Vf as Ho,Vg as Wo,Eg as Qo,Ef as Ko,Ew as Xo,a0L as oa,s2 as Zo,fg as ft,s8 as es,a0M as ts,so as as,rS as ns,st as os,rX as ss,rB as cs,a0N as is,Th as wa,qT as ls,qr as rs,qy as sa,rl as ds,a0O as us,a0P as ms,rh as Pa,a0Q as ps,a0R as hs,a0S as Ss,a0T as gs,sx as Cs,a0U as fs,a0V as Is,a0W as ca,t_ as ks,th as Ts,r$ as ia,V0 as bs,a0X as ys,a0Y as Es,m7 as As,a0Z as vs,Qu as ws,m6 as Ps,lX as xs,Tg as Rs,sQ as xa,ta as Ds,re as la,rj as Fs,bE as _s,nu as Us,nr as Vs,a0_ as Bs,rA as ra,t6 as da,t4 as Ms,a0$ as Os,sV as Ls,sA as js,t7 as zs,a10 as $s,a11 as Gs,sG as qs,a12 as Ns,sB as Js,sF as Ys,sD as Hs,td as Ws}from"./zeni-epic-state-BdFiPfcm.js";import{O as We,y as Y,h as G,p as te,ao as Ra,aq as Da,dM as Qs,z as Ke,dN as Ks,dO as Xs,dP as Zs,ac as Re,dQ as ec,dR as ua,b8 as ma,a5 as Fa,dS as tc,g as Je,G as ac,w as nc,dT as oc,at as pa,dU as sc,a as cc,dV as ic,dW as lc,U as rc,V as dc,dX as uc,dY as mc,dZ as pc,b2 as hc,bp as Sc,a9 as gc,b3 as Cc,b4 as fc}from"./index-juRht-9c.js";import{u as _a}from"./useAskAiCfoHostNavButtonProps-Dhoa0fnv.js";import{g as ha,h as Ic,r as kc,b as Tc,c as bc,i as yc,a as Ec,C as Ac}from"./TransactionDetailScreen-srWo_3sK.js";import{w as vc}from"./withTransactionSidePanel-BjLmCRfl.js";import{h as wc,v as Pc,c as xc}from"./routePaths-DqksJ4i_.js";import{a as mt}from"./accountMappingHelper-CAg2qsF3.js";import{D as Rc}from"./DrawerScreen-CbY0_Vl5.js";import"./recharts-CYbL6OhC.js";import"./analytics-CqoRAkB1.js";import"./plaid-Dw5LGskq.js";import"./dnd-jcX4BW0a.js";import"./stripe-cKAAJElX.js";import"./lottie-cUBeCDOE.js";import"./lexical-DBiumTDC.js";import"./pdf-C6cPvWx8.js";import"./utils-DsJsAXTJ.js";import"./decodeURIComponentSafe-FYjI-TwW.js";import"./useInitialThreadRequest-D-SxLs4P.js";import"./expenseAutomationHelper-R2jHKv-Z.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]="3426353f-8a2a-46d6-adad-99a149d23e42",t._sentryDebugIdIdentifier="sentry-dbid-3426353f-8a2a-46d6-adad-99a149d23e42")}catch{}})();const Dc=()=>{const t=Ce(),s=ka(),P=It(),C=D((m=>De(m))),{useFeatureGate:f}=We(),{isFeatureEnabled:r}=f(Y.isRealtimeInsightsFeatureEnabled),{isFeatureEnabled:u}=f(Y.aiAuditScorePercentage),R=D((m=>m.expenseAutomationViewState.selectedPeriodByTenantId)),i=D((m=>Dn(m,C.tenantId))),{isAiCfoAccessEnabled:g,onAskAiCfoClick:b}=_a({mobileExploreReferrer:"Month-End Close Overview"}),w=n.useCallback(((m,M,K=!1)=>{t(Pe({tenantId:M,period:{month:m.month,year:m.year},refreshViewInBackground:K}))}),[]),y=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(Fn(C.tenantId,m))}),[C.tenantId,i.monthEndCloseChecks?.auditSummary,i.monthEndCloseChecks?.reportEmailSentDate]),p=R[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}=Ra();return Da({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(_n(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(Fc,{children:T.jsx(Qs,{monthEndCloseChecksView:i,isRealtimeInsightsFeatureEnabled:r,onMonthEndCheckClick:m=>{s(`./${m}/${p.month}-${p.year}`,{state:{pathnameStackToGoBack:$,message:"comingFromOverview",referrer:"Expense Automation - Overview"}})},onPeriodChange:y,handleReviewButtonClick:I,onBackClick:()=>{s("../../dashboard")},onReload:c,isAiCfoAccessEnabled:g,onAskAiCfoClick:b,aiAuditScorePercentageEnabled:u})})},Fc=Qe.div`
2
+ display: flex;
3
+ height: 100vh;
4
+ width: 100%;
5
+ flex: 1 1 auto;
6
+ flex-direction: column;
7
+ background-color: ${t=>t.theme.colors.grey4};
8
+ `,_c=Ia.memo((({reconciliation:t,selectedDrawerAccountId:s,onClose:P,onFetchLinkTokenClick:C,onEstablishConnectionClick:f})=>{const r=Ce(),{useFeatureGate:u}=We(),{isFeatureEnabled:R}=u(Y.isReconV3Enabled),{isFeatureEnabled:i}=u(Y.isReconciliationCombinedStatementEnabled),g=Ke.getSignedInUser(),b=D((h=>De(h))),w=n.useMemo((()=>({userId:g?.userId??"",sessionId:g?.zeniSessionId??"",tenantId:b?.tenantId??""})),[g?.userId,g?.zeniSessionId,b?.tenantId]),{accountReconciliationsByAccountID:y,excludedAccountIDs:p,monthYearPeriod:c,statementUploadChosen:$}=t,I=y[s],v=n.useMemo((()=>Un(y,s)),[y,s]),m=n.useMemo((()=>Vn(y)),[y]),M=n.useMemo((()=>Bn(y,s)),[y,s]),K=n.useRef(!1),U=n.useCallback((h=>{K.current=h,ua(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((()=>{K.current||r(St({messageSection:"statement_parsing_in_progress",messageText:"success",type:"info",showStatusIcon:!0,variables:[{variableName:"_account_name_",variableValue:Ks(I)}]}))}))}),[r,c,I,s]),e=n.useCallback((()=>{r(dt({accountId:s,selectedPeriod:c,dismissedToBackground:!1}))}),[r,s,c]),a=n.useCallback((h=>{r(Kt({accountId:s,selectedPeriod:c,backgroundCompletedSteps:h}))}),[r,c,s]),l=n.useCallback((()=>{r(Kt({accountId:s,selectedPeriod:c,backgroundCompletedSteps:0})),r(dt({accountId:s,selectedPeriod:c,dismissedToBackground:!1}))}),[r,c,s]);n.useEffect((()=>()=>{ua(null,!1)}),[]);const d=I?.parsedStatementData?.statementUpload?.statementMeta?.statementUploadId??I?.accountReconEntity.statementMetaData?.statementUploadId,S=I?.statementDateConflict?.previousReconciliationInfo?.reconciledByUserId,k=D((h=>S!=null&&S!==""?Mn(On(h.userState,S)):"")),x=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(Xn(h,N.split(".")[0]))},A=(h,N)=>{if(N===!0){const Z=I?.combinedStatementGroupId??I?.parsedStatementData?.statementUpload?.statementMeta?.combinedStatementGroupId??I?.parsedStatementData?.statementUpload?.combinedStatementDetails?.combinedStatementGroupId;if(Z!=null&&Z!=="")return void r(Qn({accountId:s,selectedPeriod:c,combinedStatementGroupId:Z,fileId:h}))}d!=null&&r(Kn({accountId:s,selectedPeriod:c,fileId:h,statementUploadId:d}))},ae=()=>{r(qe({statementUploadChosen:!1}))},X=h=>{r(Wn({accountId:s,selectedPeriod:c,payload:h,statementAccountScope:i===!0?I?.localData?.statementAccountScope??"single_account":"single_account"}))},fe=n.useCallback(((h,N,Z)=>{r(Ln({accountId:h,selectedPeriod:N,statementUploadId:Z}))}),[r]),oe=n.useCallback(((h,N,Z,Te,pe)=>{pe!=null&&pe!==""&&r(jn(pe)),r(Te==null||Te===""?$n({accountId:h,selectedPeriod:N,statementUploadId:Z}):zn({accountId:h,selectedPeriod:N,statementUploadId:Z,combinedStatementGroupId:Te}))}),[r]),Ie=n.useCallback(((h,N)=>{N!==""&&r(Gn({accountId:s,selectedPeriod:c,statementUpdateLocalData:h,statementUploadId:N}))}),[r,s,c]),q=n.useCallback((()=>{d!=null&&r(I?.localData?.statementAccountScope!=="multi_account"?Nn({accountId:s,selectedPeriod:c,statementUploadId:d}):qn({accountId:s,selectedPeriod:c,statementUploadId:d}))}),[r,I?.localData?.statementAccountScope,s,c,d]),W=n.useCallback((h=>{d!=null&&r(Jn({accountId:s,selectedPeriod:c,statementUploadId:d,accountMappings:h}))}),[r,c,s,d]),se=n.useCallback((()=>{r(qe({statementUploadChosen:!0}))}),[r]),H=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(Ta({accountId:s}))}),[r,s]),Xe=n.useCallback((h=>{r(le(c,h,!0)),P()}),[r,c,P]),Ze=n.useCallback((()=>{r(Yn({accountId:s,selectedPeriod:c,statementProcessingFailed:!1})),r(Hn({accountId:s,selectedPeriod:c}))}),[r,s,c]),_e=n.useCallback((()=>{r(ba({accountId:s}))}),[r,s]),ke=p.includes(s)?t.excludedAccountReconciliationByAccountID[s]:void 0;if(ke!=null)return T.jsx(Sa,{children:T.jsx(ga,{$isV3:R===!0,children:T.jsx(Xs,{excludedAccountReconciliation:ke,includeAccountFetch:t.includeAccountFetchState,isReconV3Enabled:R,onDismissClick:P,onIncludeIntoReconciliation:_e})})});if(I!=null){const h=R===!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:H,onSelectStatementAccountScope:Fe,isReconciliationCombinedStatementEnabled:i===!0,ledgerAccounts:v,statementOverrideWarningAccountIds:M,unavailableLedgerAccountIds:m,onConfirmStatementMapping:W,filesEndPoint:Re.fileMicroServiceBaseUrl,authParams:w,openFilePicker:$,onStatementUploadSuccess:X,onUploadWindowOpenedOnce:ae,onExcludeFromReconciliation:me,onRetryParsing:fe,onFetchStatementParseInfo:oe,onReviewClicked:Xe,statementProcessingFailed:I.statementProcessingFailed,statementProcessingDismissedToBackground:I.statementProcessingDismissedToBackground,onDismissStatementProcessingFailed:Ze,onContinueInBackground:O,onClearStatementProcessingDismissedToBackground:e,onResetStatementProcessingProgress:l,onStatementProcessingProgressChange:a,onStatementFlowVisibilityChange:U,onReuploadStatement:se,onStatementFormDataChange:Ie,onStatementConfirmSave:q,reconciledByName:k,onDismissDateConflict:x,onReuploadAfterDateConflict:L,isReconV3Enabled:R}):T.jsx(ec,{excludeAccountFetch:t.excludeAccountFetchState,accountReconciliation:I,monthYearPeriod:c,onDismissClick:P,plaidConnectionDetails:t.plaidConnectionDetails,onFetchLinkTokenClick:C,onEstablishConnectionClick:f,onEditFileName:z,onDeleteFile:A,onSelectSourceType:H,filesEndPoint:Re.fileMicroServiceBaseUrl,authParams:w,openFilePicker:$,onStatementUploadSuccess:X,onUploadWindowOpenedOnce:ae,onExcludeFromReconciliation:me});return T.jsx(Sa,{children:T.jsx(ga,{$isV3:R===!0,children:h})})}return null})),Sa=Qe.div`
9
+ display: flex;
10
+ flex-direction: column;
11
+ height: 100%;
12
+ `,ga=Qe.div`
13
+ flex: 1;
14
+ min-height: 0;
15
+ display: flex;
16
+ flex-direction: column;
17
+ box-sizing: border-box;
18
+ min-width: 0;
19
+ overflow-x: hidden;
20
+ overflow-y: ${t=>t.$isV3===!0?"hidden":"auto"};
21
+ `;function Uc({companyId:t,closeCustomerRequestDrawer:s,addCustomerRequest:P,resetCustomerRequest:C}){const f=Ke.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(Fa,{fetchState:"In-Progress"}):T.jsx(tc,{onCloseClick:s,addCustomerRequest:P,snippets:r.companyMonthEndReportTemplatesData,bulletPoints:r.zeniRequestsData??[]})})}const Vc={schedules:"Review Schedules",existing_schedules:"Existing Schedules"},Bc=()=>{const t=D((b=>xe(b))),s=It(),{currentSelectedViewFetchState:P,currentSelectedView:C,selectedPeriod:f}=t,r=Je(C),u=Je(P.fetchState),R=t.jeSchedules.uiState.selectedPageTab??"schedules",i=Je(R),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(eo(c))p.oneTimeAccrualCount+=1;else switch(to(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),Vc[R],w??null),C==="flux_analysis"&&G.trackFluxAnalysisPage(f.month,f.year,b,Mc(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,R]);return n.useEffect((()=>{(u!==P.fetchState||C!==r||C==="je_schedules"&&i!=null&&R!==i)&&P.fetchState==="Completed"&&g(!1)}),[C,P.fetchState,r,R,i]),g},Mc=t=>t.sections.generalExpense.vendors.length+t.sections.reimbursement.vendors.length,{common:{strings:{hyphen:Oc,comma:Ca,space:Lc}},dateFormat:Ua}=ac.getLocalizedStrings(),fa=Ws,jc=Pn((function(t,s){const{uncategorizedAccounts:P,vendorSearchAutoCompleteData:C,monthEndInsightsCustomerRequestData:f,monthEndInsightsPreviewMode:r,companyId:u,isMissingReceiptsBulkUploadEnabled:R,isTransactionActivityEnabled:i,newScheduleActiveType:g}=s,b=Ke.getSignedInUser(),w=t.tenantState.currentTenantId,y={userId:b?.userId??"",sessionId:b?.zeniSessionId??"",tenantId:w??""},p=xe(t),{selectedTransactionCategorizationTab:c}=p,{searchTransactionsResults:$,searchTransactionsFetchState:I}=io(t),v=g==="prepaid_expenses"?"prepaid_expenses":"fixed_assets",{accountListNestedAccountHierarchy:m,classListNestedAccountHierarchy:M,allDepreciationAccountListNestedAccountHierarchy:K,newScheduleLocalData:U,saveStatus:O}=lo(t,v);return{expenseAutomationViewSelector:p,accountListNestedAccountHierarchy:m,allDepreciationAccountListNestedAccountHierarchy:K,baseTransactionSearchFetchState:I,baseTransactionSearchResults:$,classListNestedAccountHierarchy:M,newScheduleLocalData:U,initialSelectedBaseTransaction:U.selectedBaseTransactionId!=null?ro(t.transactionState,uo(U.selectedBaseTransactionId)):void 0,newAccrualAccountsView:mo(t),newScheduleSaveStatus:O,bulkUploadSelector:R===!0?p.missingReceipts.bulkUpload:void 0,vendorSearchAutoCompleteData:C,authParams:y,receiptUploadEndpoint:`${Re.accountMicroServiceBaseUrl}`,transactionAttachmentsEndpoint:`${pa}/transaction_attachments`,bulkUploadEndpoint:R===!0?`${Re.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:ho(t.tenantState,w),downloadParams:{authParams:y,jeScheduleEndPoint:`${pa}/jeScheduleReports`,timezone:po(),companyName:De(t).companyName}}}),(function(t,s){const{themeState:P,isAccountingClassesEnabled:C,isCOTEnabled:f,isMissingReceiptsBulkUploadEnabled:r,location:u,vendorSearchAutoCompleteData:R,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,K=va(I),U=He(K.start),O=He(K.end);return{onZeniLogoClick:()=>{P.toggle()},onUploadReceiptAttachment:e=>{G.trackMissingReceiptAttached(I.month,I.year),t(Ts(e))},onUploadTransactionReceipt:(e,a,l,d,S,k)=>{t(ca(e,a,{fetchState:"In-Progress"}));const x=()=>t(ca(e,a,{fetchState:"Error"}));sc(`${Re.accountMicroServiceBaseUrl}/1.0/transactions/${a}/attachments`,k,a,l,d,S).then((L=>{L!=null?t(ks(e,L)):x()})).catch(x)},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(Is(e,a)),g!=null&&t(Pe({tenantId:g.tenantId,period:a,refreshViewInBackground:!0}))},onUploadReceiptFetchStatus:(e,a,l,d)=>{t(fs(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?Lc+Oc+d+Ca:Ca}]}))},onUpdateJESchedulesUIState:e=>{e.createdGroupCollapsed!=null?t(hs()):e.pendingGroupCollapsed!=null?t(Ss()):e.selectedJETypeFilter!==void 0?t(gs(e.selectedJETypeFilter)):t(Cs(e))},onUpdateMissingReceiptsUIState:e=>{t(ps(e))},onFetchMissingReceiptsList:()=>{O!=null&&U!=null&&t(Pa({start:U,end:O},{amount:75,currencyCode:"USD",currencySymbol:"$"},!0,!1))},...r===!0?{onBulkUploadFiles:e=>{t(Hs(e))},onBulkUploadProgress:e=>{t(Ys(e))},onBulkUploadSuccess:e=>{t(Js({batchId:e}))},onBulkUploadUploadedFileCount:e=>{t(Ns(e))},onConfirmBulkUploadMatch:(e,a,l,d,S)=>{t(qs(e,a,l,d,S))},onBulkUploadConfirmMatchAcknowledged:()=>{t(Gs())},onSetBulkUploadResultsTab:e=>{t($s(e))},onSetBulkUploadCompletedSubTab:e=>{t(zs(e))},onSetBulkUploadSortConfig:(e,a)=>{t(da({sortKey:e,sortOrder:a}))},onClearBulkUpload:()=>{t(js())},onSearchTransactionsForManualMatch:(e,a)=>{t(fa(e,a??void 0))},onLoadMoreManualSearch:()=>{const{manualSearch:e}=i.missingReceipts.bulkUpload;e.nextPageToken!=null&&e.searchQuery!==""&&t(fa(e.searchQuery,e.nextPageToken))},onFetchCompletedTransactions:(e,a)=>{t(Ls(e,a))},onClearBulkUploadBatchDetailsForScopeChange:()=>{t(Os())},onFetchBulkUploadBatches:e=>{t(xa(e))},onFetchMoreBatchDetails:()=>{t(Ms())},onResetBulkUploadSort:()=>{t(da({sortKey:void 0,sortOrder:void 0}))}}:{},onClearMissingReceiptsTabNavigation:()=>{t(ms())},onSearchTextChanged:e=>{const a=i.currentSelectedView,l=i.selectedTransactionCategorizationTab;a==="transaction_categorization"&&(t(ut({selectedTab:l,uiState:{searchString:e}})),O!=null&&U!=null&&t(ue(l,{start:U,end:O},!0,!1,e,void 0,!1,!0)))},onFiltersChange:e=>{const a=i.selectedTransactionCategorizationTab;t(us({filters:e,selectedTab:a}))},onRefresh:()=>{s.trackExpenseAutomationTabAnalytics(!0),t(ds())},onClose:()=>{v==="reconciliation"&&m!=null&&t(sa({selectedAccountId:void 0})),y("../")},onBack:()=>{v==="reconciliation"&&m!=null&&t(sa({selectedAccountId:void 0}))},onSaveReconciliation:e=>{t(rs(e))},onSaveReconciliationReview:e=>{t(ls(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(wa(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),x=mt(M.fixedAssetsAccountList,d.selectedOptions),L=mt(M.accruedExpensesAccountList,S.selectedOptions),z={selectedPrepaidExpensesAccountIds:k.map((A=>A.accountId)),selectedFixedAssetsAccountIds:x.map((A=>A.accountId)),selectedAccruedExpensesAccountIds:L.map((A=>A.accountId))};t(is({data:z}))},onSaveJeAccountSettingsClick:()=>{t(cs())},onJESchedulesFormDataChange(e,a){const{jeScheduleID:l,accumulatedDepreciationCategory:d,scheduleClass:S,scheduleExpenseCategory:k,vendor:x}=a,{allAccountList:L,allClassList:z,allDepreciationAccountList:A}=i.jeSchedules,ae=R.entityAutoCompleteView.vendor.length>0?R.entityAutoCompleteView.vendor.find((q=>q.id===x?.selectedOption)):void 0,X={id:ae?.zeniId??x?.selectedOption??"",name:ae?.name??x?.defaultOptions.find((q=>q.value===x?.selectedOption))?.label??"",logo:ae?.logo},fe=k?.selectedOption!=null?L.find((q=>q.qboId===k.selectedOption)):void 0,oe=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(ss({scheduledJournalEntryID:e,localData:{jeScheduleID:l,scheduledJournalEntryID:e,updatedCategoryId:fe?.accountId,updatedClassId:oe?.classId,updatedAccumulatedDepreciationCategoryID:Ie?.accountId,updatedVendor:{id:X.id,name:X.name}}}))},onRevertJeSchedule(e,a,l,d,S){t(os(e,a,l,d,S))},ignoreRecommendedJeSchedule(e,a,l,d){t(ns(e,a,l,d))},vendorSearchAutoCompleteActions:{onAutoCompleteInputChange:(e,a)=>{e.trim().length>=2?t(ea({searchString:e,entityType:a,searchOrigin:"common"})):e.trim().length===0&&t($e("common"))},onCancelAutoComplete:()=>{t($e("common"))}},onPostJESchedule(e,a){t(as({scheduledJournalEntryID:e,jeScheduleTransactionKey:a}))},clearJeScheduleLocalData(){t(ts())},onViewTransaction(e){if(s.tenantEmailDomain==null)return;const a=xc(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(es({query:e,scheduleType:b==="prepaid_expenses"?"prepaid_expenses":"fixed_assets"}))},onNewScheduleFormChange(e,a){const l=ft(e)==="prepaid_expenses"?"prepaid_expenses":"fixed_assets";t(oa({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,x=a.selectedAccumulatedDepreciationCategory!=null?S.find((L=>L.qboId===a.selectedAccumulatedDepreciationCategory)):void 0;t(oa({scheduleType:l,localData:{...a,selectedAccount:k?.accountId,selectedAccumulatedDepreciationCategory:x?.accountId}})),t(Zo({scheduleType:l}))},onCreateAccruedSchedule(e){const a="accrued_expenses";t(Ho()),t(Wo()),t(Qo({scheduleType:a,localData:e,selectedJeScheduleDetailId:void 0})),t(Ko({scheduleType:a})),t(Xo(a,void 0))},onCreateOneTimeAccrual(e){t(Yo(e))},handleJeScheduleClick:(e,a,l)=>{(function(S,k){return k!=="accrued_expenses"})(0,l)&&t(Jo({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"?No(e,l,d):qo(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(Go(e,g.companyId,g.tenantId))},onClickCustomerRequest:p,setActivityLogTransactionId:$,onCloseAllThreadsSection:()=>{},onCloseFileAttachmentSnackBar:()=>{t($o())},onOpenFileAttachmentSnackBar:()=>{t(St({messageSection:"cockpit_month_end_email_attachment_upload",messageText:"failed",type:"error",showStatusIcon:!0}))},onRemoveFileAttachment:e=>{t(zo(e))},onUpdateFileAttachment:e=>{t(jo({files:e}))},previewMonthEndReport:(e,a,l,d,S)=>{g!=null&&t(na(e,g.companyId,a,!0,l,d,{agentInsightEdits:S,tenantId:g.tenantId}))},saveMonthEndReport:(e,a,l,d,S)=>{g!=null&&t(na(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(Oo(g.companyId,e,g.tenantId)),G.trackInsightsEmailPage(l.month,l.year,!1,"draft",d.auditScorePercentage,Lo().format(Ua.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 x=te(u.state?.pathnameStackToGoBack,u.pathname);y(`../../transaction/${a}/${e}`,{state:{pathnameStackToGoBack:x,message:"expenseAutomation",origin:"transaction_categorization",searchContext:k}})},setLocalDataForCategoryAndClass:(e,a,l,d,S,k,x,L,z,A,ae,X)=>{t(Mo(e,a,l,d,w,S,k,x,L,z,A,ae,X))},onCancelAutoComplete:()=>{t($e("common"))},updateExpenseAutomationReconListScrollPosition:e=>{t(ta({scrollPosition:e}))},onUpdateTab:e=>{s.closeSidePanel?.(),O!=null&&U!=null&&(t(ue(e,{start:U,end:O},!1,!1)),t(Bo(e)))},onUpdateTransactionCategorizationCompletedSubTab:e=>{s.closeSidePanel?.(),O!=null&&U!=null&&(t(Vo(e)),t(ue("autoCategorized",{start:U,end:O},!1,!1)))},onTransactionGroupChange:e=>{s.closeSidePanel?.(),O!=null&&U!=null&&(t(Uo(e)),t(ue(s.expenseAutomationViewSelector.selectedTransactionCategorizationTab,{start:U,end:O},!1,!1)))},onUpdateTransactionCategorizationUIState:(e,a)=>{t(ut({selectedTab:e,uiState:a})),O!=null&&U!=null&&t(ue(e,{start:U,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&&U!=null&&t(ue(e,{start:U,end:O},!0,l,a,d,S,k))},resetTransactionCategorizationLocalData:(e,a,l,d,S,k,x)=>{t(_o(e,a,l,d,x??null,S,k,!1)),kc(t,a.map(String))},updateSelectedVendorForTransaction:(e,a,l,d,S)=>{t(aa({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(Fo(e,a,l)),Ic(a.map(String))},onUpdateSelectedCheckboxTransactionIds:(e,a)=>{t(Do({selectedTab:e,transactionIds:a}))},onFetchRecommendationsForEntityCategorizationWithCustomer:(e,a,l,d,S,k)=>{const{transactionId:x,transaction:L,lineIds:z}=a;k!=null&&t(xo({transactionId:x,customerUpdates:k})),t(Ro({selectedTab:d,transactionId:x.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:x,transaction:L,lineIds:z}=a;k!=null&&(t(vo({transactionId:x,vendorUpdates:{name:k.name,id:k.id?k.id:void 0}})),t(wo({vendorId:k.id?k.id:void 0,localData:{vendorName:k.name,vendorId:k.id?k.id:void 0}}))),k?.id?(t(aa({selectedTab:d,transactionId:x.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(Po({selectedTab:d,transactionId:x.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(Ao(a,e,l,d??!1))},onUpdateFluxAnalysisUIState:e=>{t(Eo(e))},updateOperatingExpensesIdsForReview:e=>{t(yo({operatingExpenseIds:e,selectedPeriod:I}))},redirectToVendorDetailPage:e=>{if(s.tenantEmailDomain!=null){const a=Pc(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(bo({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(ya("expense_automation_reconcile",e,a))},onEstablishConnectionClick:(e,a)=>{const l=g?.companyId;l!=null&&(t(Ea(e,l,"expense_automation_reconcile",void 0,"link_account_no_microdeposit",a)),t(Aa({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(To({selectedTransactionIds:e}))},onReconTabColumnSortConfigChanged:(e,a)=>{t(ko({sortKey:e,sortOrder:a}))},onReconReviewTabColumnSortConfigChanged:(e,a)=>{t(Io({sortKey:e,sortOrder:a}))},onReconTabUpdate:e=>{s.closeSidePanel?.(),t(fo({selectedTab:e}))},updateReconReviewTabLocalData:(e,a,l)=>{const d=e.vendor?.id;l&&d!=null&&t(go(d)),t(Co({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(ta({scrollPosition:e}))},onVendorAutoCompleteInputChange:e=>{e.trim().length>=2?t(ea({searchString:e,searchOrigin:"common"})):e.trim().length===0&&t($e("common"))},onReconNodeCollapseToggled:(e,a)=>{t(So({nodeId:e,collapsed:a}))},updateSectionCollapseStatus:()=>{},onExcludeAccountFromReconciliation:e=>{t(Ta({accountId:e}))},onIncludeAccountIntoReconciliation:e=>{t(ba({accountId:e}))}}}),((t,s,P)=>{const{isMissingReceiptsBulkUploadEnabled:C,...f}=P;return(function(r,u,R){return{...r,...u,...R,onUploadTransactionReceipt:(i,g,b,w,y)=>{u.onUploadTransactionReceipt(i,g,b,w,y,r.authParams)}}})(t,s,f)}))(nc(oc)),pt="newScheduleMode",ht="newScheduleType",zc=vc((function(t){const s=t.displayName??t.name??"Component",P=Ia.memo(t),C=f=>{const r=Ce(),u=(function(){const v=Ce(),m=D((M=>xe(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])}})(),R=D((v=>xe(v).reconciliation)),i=D((v=>De(v))),g=n.useCallback(((v,m)=>{r(ya("expense_automation_reconcile",v,m))}),[r]),b=n.useCallback(((v,m)=>{const M=i?.companyId;M!=null&&(r(Ea(v,M,"expense_automation_reconcile",void 0,"link_account_no_microdeposit",m)),r(Aa({accountId:m,connectionInProgress:!0})))}),[r,i?.companyId]),w=n.useMemo((()=>{if(u.isOpen&&u.selectedAccountId!=null)return T.jsx(_c,{reconciliation:R,selectedDrawerAccountId:u.selectedAccountId,onClose:u.closePanel,onFetchLinkTokenClick:g,onEstablishConnectionClick:b})}),[u.isOpen,u.selectedAccountId,u.closePanel,R,g,b]),y=n.useMemo((()=>({reconPanelContent:w,reconSidePanelIsOpen:u.isOpen,closeReconSidePanel:u.closePanel})),[w,u.isOpen,u.closePanel]),{useFeatureGate:p}=We(),{isFeatureEnabled:c}=p(Y.isReconV3Enabled),$=n.useContext(ma),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(ma.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:R})=>{const{isAiCfoOpen:i,setIsAiCfoOpen:g}=cc(),b=ic(),{isOpen:w}=lc(),y=ka(),p=It(),c=Ce(),{isAiCfoAccessEnabled:$,onAskAiCfoClick:I}=_a({mobileExploreReferrer:"Transaction categorization"}),v=n.useCallback((()=>{f===!0&&C!==!0&&t?.()}),[t,f,C]),{areTenantIdsInSync:m}=Ra(),M=Bc(),K=rc(),[U,O]=n.useState(!1),[e,a]=xn(),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(ia({scheduleType:B==="prepaid_expenses"?"prepaid_expenses":"fixed_assets",shouldResetEnteredData:j}))}),[c,l]),x=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(ia({scheduleType:ft(o.scheduleType)==="prepaid_expenses"?"prepaid_expenses":"fixed_assets",shouldResetEnteredData:!0}))}),[c,l]),z=D((o=>Zt(o))),A=D((o=>De(o))),[ae,X]=n.useState(!1),[fe,oe]=n.useState(!1),[Ie,q]=n.useState([]),[W,se]=n.useState(null),H=n.useCallback((()=>{se(null)}),[]),Fe=W?.contentType==="activity"?W.detail.transactionId:void 0,me=n.useCallback((o=>{o!=null?(i&&g(!1),b(),v(),se({contentType:"activity",detail:{transactionId:o}})):se((E=>E?.contentType==="activity"?null:E))}),[v,i,b,g]),Xe=n.useCallback((o=>{i&&g(!1),b(),v(),se({contentType:"transfer",detail:o})}),[v,i,b,g]),Ze=n.useCallback((()=>{b(),H(),v(),I()}),[v,H,I,b]),_e=n.useRef(i);n.useEffect((()=>{i===!0&&_e.current===!1&&(b(),H(),v()),_e.current=i}),[v,H,i,b]);const ke=n.useRef(w);n.useEffect((()=>{w===!0&&ke.current===!1&&(i&&g(!1),H(),f===!0&&C!==!0&&t?.()),ke.current=w}),[H,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(),H()),N.current=h}),[H,i,h,b,g]);const[Z,Te]=n.useState(!1),pe=n.useRef(!1),{selectedTab:kt}=Qt(),{tenantEmailDomain:et}=Qt(),[tt,Tt]=n.useState(p.state?.message==="comingFromTransactionDetail"),bt=p.state?.message==="comingFromOverview",Va=dc(),at=Ke.getSignedInUser(),{useFeatureGate:ne}=We(),{isFeatureEnabled:yt}=ne(Y.isRealtimeInsightsFeatureEnabled),{isFeatureEnabled:be}=ne(Y.isMissingReceiptsBulkUploadEnabled),{isFeatureEnabled:nt}=ne(Y.isTransactionActivityEnabled),{isFeatureEnabled:Ba}=ne(Y.isAccrualEnabled),{isFeatureEnabled:Et}=ne(Y.isCreateTransferEntryFromExpenseEnabled),{isFeatureEnabled:Ma}=ne(Y.isExpenseAutomationCommentingEnabled),{isFeatureEnabled:Oa}=ne(Y.isProjectsTransactionsEnabled),{isFeatureEnabled:La}=ne(Y.isReconV3Enabled),ja=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]),za=D((o=>bs(o,"common"))),V=D((o=>xe(o))),{categoryOptions:$a,paymentAccountNames:Ga}=D((o=>ys(o.accountState))),qa=D((o=>Es(o.classState))),{monthEndCloseChecksView:J,currentSelectedView:F,selectedPeriod:_,selectedTransactionCategorizationTab:ot,currentSelectedViewBackgroundRefreshFetchState:Na,currentSelectedViewFetchState:ce,jeSchedules:st,reconciliation:At}=V;Tc(F==="transaction_categorization");const Ja=V.transactionView.saveStatus.fetchState,Ue=V.transactionView.transactions,vt=n.useRef(Ue);vt.current=Ue;const wt=D((o=>o.expenseAutomationTransactionsViewState?.transactionCategorizationView)),Pt=D((o=>o.expenseAutomationTransactionsViewState?.selectedTransactionCategorizationTab)),xt=n.useRef(wt);xt.current=wt;const Rt=n.useRef(Pt);Rt.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?uc(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:Ue.length>0,isFiltered:E>0,resultsCount:Ue.length,searchTerm:o,searchType:"free_text"})}),[F,ce.fetchState,V.transactionView.uiState.searchString,V.transactionView.transactions,Ve]);const ie=bc(Ja,(()=>{const o=[],E=Rt.current,j=xt.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&&R?.()}),[F,At.selectedAccountId]);const Ya=V.transactionView.selectedTransactionCategorizationCompletedSubTab,Ha=V.transactionView.selectedTransactionGroup,Be=`${ot}|${Ya}|${Ha}`,Me=n.useRef(null),Ft=n.useRef(null);n.useEffect((()=>{Me.current!==null?Me.current!==Be&&(Me.current=Be,F==="transaction_categorization"&&H()):Me.current=Be}),[H,F,Be]);const Wa=D((o=>Fe==null?void 0:As(o.transactionState,Fe))),re=Wa?.qboId,_t=D((o=>re==null?void 0:vs(o,re)));n.useEffect((()=>{re!=null&&c(ws(re))}),[c,re]);const{createTransferEntryStatus:Ut,creditCardTransferAccountsList:Vt,transferAccounts:Bt}=V.transactionView,Mt=n.useCallback((o=>yc(c,o)),[c]),Ot=n.useMemo((()=>F!=="transaction_categorization"||W==null?null:W.contentType==="activity"?nt===!0?T.jsx(mc,{activityLogView:_t,qboId:re,onClose:()=>se(null),selectedTransactionId:W.detail.transactionId,isQuickViewCardStyle:!0},String(W.detail.transactionId)):null:W.contentType==="transfer"?T.jsx(pc,{createTransferEntryStatus:Ut,creditCardTransferAccountsList:Vt,transaction:W.detail,transferAccounts:Bt,onClose:()=>se(null),onCreateTransfer:Mt,isQuickViewCardStyle:!0},String(W.detail.transactionId)):null),[F,W,nt,_t,re,Ut,Vt,Bt,Mt]),Qa=Ot!=null,{selectedAccountId:ye}=At,Lt=Je(st.accountSettingsView.saveState.fetchState),Ka=D((o=>Ps(o.accountState,o.accountListState,"accountList"))),Xa=D((o=>xs(o))),Ee=kt!=null?Rs(kt):F,Za=D((o=>o.entityAutoCompleteState.autoCompleteText.common));if(Da({isDataReady:ce.fetchState==="Completed"}),at==null)throw Error("Can't access expense automation screen without signing in...");const jt=va(_),Ae=He(jt.start),ve=He(jt.end);if(Ae==null||ve==null)throw Error(`Invalid start - ${Ae} and end - ${ve} period from given ${_}`);const en=n.useCallback((()=>{X(!1)}),[]),tn=n.useCallback((()=>{oe(!0)}),[]),an=n.useCallback((o=>{q(o),oe(!1)}),[]),nn=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,on=_.month,sn=_.year,Gt=A?.tenantId;n.useEffect((()=>{F==="missing_receipts"&&be!==!1&&Oe==="idle"&&$t!=null&&Gt!=null&&c(Ds())}),[F,be,Oe,$t,Gt,on,sn,c]),n.useEffect((()=>{z.newVendorState?.vendorDetailLocalData?.vendorName!=null?O(!0):O(!1)}),[z.newVendorState?.vendorDetailLocalData?.vendorName]),n.useEffect((()=>{Ee!=null&&F!==Ee&&c(wa(Ee))}),[Ee]),n.useEffect((()=>{Z===!1&&ce.fetchState==="Completed"&&m&&(Te(!0),c(la(!1,!1)))}),[Z,ce,m]),n.useEffect((()=>{const o={month:_.month,year:_.year},E=Ft.current;Ft.current=o,E===null||E.month===o.month&&E.year===o.year||!bt&&m&&(c(la(!1,!1)),c(le(_,ye,!1,!1)))}),[_.month,_.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(_,o,E,null));break;case"month_end_insights":if(E===!1){const B=new Date(_.year,_.month,0),he=_s(B.toDateString()).format(Ua.analytics.YYYYDashMMDashDDFormat);c(Us(!0,A.companyId,A.tenantId,he)),c(Vs(A.companyId,A.tenantId))}break;case"je_schedules":c(Fs(j,E));break;case"missing_receipts":c(Pa(j,{amount:75,currencyCode:"USD",currencySymbol:"$"},o,E));break;default:c(le(_,ye,o,E))}}),[F,Ae,ve,A.companyId,A.tenantId,ot,_,ye,tt,Tt]),cn=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||Na.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:_,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(_,void 0,!1,!1))}),[J.fetchState,m,_.month,_.year,V.reconciliation.fetchStatus.fetchState,c]),n.useEffect((()=>{V.monthEndInsights?.previewMonthEndReportStatus?.fetchState==="Completed"?X(!0):X(!1)}),[V.monthEndInsights?.previewMonthEndReportStatus?.fetchState]),n.useEffect((()=>{V.monthEndInsights?.sendMonthEndReportStatus?.fetchState==="Completed"&&m&&(c(Pe({tenantId:A.tenantId,period:_,refreshViewInBackground:!0})),c(Bs({companyId:A.companyId})),y("../"))}),[V.monthEndInsights?.sendMonthEndReportStatus?.fetchState,A.tenantId,_,A.companyId,m]),n.useEffect((()=>{const o=setInterval((()=>{J.fetchState!=="In-Progress"&&J.fetchState==="Completed"&&c(Pe({tenantId:A.tenantId,period:_,refreshViewInBackground:!0}))}),3e5);return()=>clearInterval(o)}),[J.fetchState,A.tenantId,_,c]),n.useEffect((()=>{const o=setInterval((()=>{F==="reconciliation"&&ye==null&&V.reconciliation.fetchStatus.fetchState==="Completed"&&V.reconciliation.refreshStatus.fetchState!=="In-Progress"&&c(le(_,void 0,!0,!0))}),3e5);return()=>clearInterval(o)}),[F,c,V.reconciliation.fetchStatus.fetchState,V.reconciliation.refreshStatus.fetchState,le,ye,_]);const ln=ha(),{isFeatureEnabled:rn}=ne(Y.isRecommendationFeedbackEnabled),qt=hc(),{onRecommendationSelection:Nt,popup:dn}=Ec({isEnabled:rn}),un=n.useMemo((()=>({...qt,onRecommendationSelection:Nt})),[qt,Nt]);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 mn=u===!0?r:P,pn=u===!0||f===!0,hn=u===!0?R:t;n.useEffect((()=>{Lt==="In-Progress"&&st.accountSettingsView.saveState.fetchState==="Completed"&&c(ra())}),[Lt,st.accountSettingsView.saveState.fetchState,ra]);const{transactionId:Jt,onSaveVendor:Sn,onSaveSuccess:gn,onCancel:Cn,vendorViewDetails:fn}=(({expenseAutomationViewSelector:o,closeDrawerHandler:E,currentSelectedView:j})=>{const B=Ce();let he,Se,Q;const ct=ha(),we=o.transactionView;let Yt=()=>{};const{transactions:In,selectedTransactionId:ge,selectedTransactionLineId:je,transactionLocalData:kn}=we;if(j==="transaction_categorization"){const it=kn.find((de=>de.transactionId===ge)),ee=In.find((de=>de.id===ge)),Ht=je!=null?it?.transactionReviewLocalData?.lineItemById[je]:void 0,Wt=Ht?.account;Se=Ht?.class?.classId,he=["Uncategorized Income","Uncategorized Expense"].includes(Wt?.accountName??"")?void 0:Wt?.accountId;const bn=wc(ge,ee?.typeOfTransaction);ee!=null&&bn&&(Q={id:ge,type:gt(ee.typeOfTransaction)}),Yt=()=>{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(co(ee)||(lt=ze.selectedEntityLine),lt!=null){const yn=lt,En={transactionId:{id:ee.id,type:ee.type},transaction:ee,lineIds:ee.lines.map((An=>An.id))??[]};B(Ct({entity:yn,amount:ze.amount.amount,transactionDetails:En,flowType:"categorization",selectedTab:o.selectedTransactionCategorizationTab,isFetchCOT:ct}))}}}}}const Tn=D((it=>Zt(it,void 0,he,Se)));return{transactionId:Q,onSaveVendor:()=>{B(so(Q,void 0,!1,!0))},onSaveSuccess:Yt,onCancel:()=>{Q!=null&&B(ao({transactionId:Q})),B(no()),B(oo()),E()},vendorViewDetails:Tn}})({expenseAutomationViewSelector:V,closeDrawerHandler:()=>{O(!1)},currentSelectedView:F});return Va?.loggedInUserRoleMap==null?J.fetchState==="Error"?T.jsx(Sc,{onGoHome:()=>y("../",{replace:!0}),onReload:()=>window.location.reload()}):T.jsx(Fa,{fetchState:"In-Progress"}):T.jsxs(T.Fragment,{children:[T.jsx(Rc,{isOpen:fe,drawerLeftMargin:new gc(0,0,300,650),onClose:()=>{oe(!1)},children:T.jsx($c,{onClick:o=>o.stopPropagation(),children:T.jsx(Uc,{companyId:A.companyId,closeCustomerRequestDrawer:()=>oe(!1),addCustomerRequest:an,resetCustomerRequest:nn})})}),Jt!=null&&U&&T.jsx(Ac,{isOpen:U,transactionId:Jt,onSaveVendor:Sn,onSaveSuccess:gn,onCancel:Cn,vendorViewDetails:fn}),T.jsx(Cc,{toolkit:un,children:T.jsx(jc,{events:[],eventCallback:(o,E,j)=>{},navigate:y,location:p,themeState:K,categoryOptions:$a,classesForFilters:qa,accountsForFilters:Ga,vendorSearchAutoCompleteData:{autoCompleteText:Za,entityAutoCompleteView:za},expenseAutomationViewSelector:V,isMissingReceiptsBulkUploadEnabled:be,monthEndInsightsPreviewMode:ae,monthEndInsightsCustomerRequestData:Ie,isRealtimeInsightsFeatureEnabled:yt,isCreateTransferEntryFromExpenseEnabled:Et,isAccountingClassesEnabled:Xa,isProjectsTransactionsEnabled:Oa,isCOTEnabled:ln,currentTenant:A,companyId:A.companyId,signedInUser:at,isTransactionActivityEnabled:nt,isRightPanelOpen:Qa,rightSidePanel:Ot,onOpenTransferRightPanel:Et===!0?Xe:void 0,uncategorizedAccounts:Ka,newScheduleActiveType:d,isAccrualEnabled:Ba,newScheduleSelection:x,onNewScheduleSelectionChange:L,onScheduleTypeChange:k,onNewScheduleSaved:cn,onClickCustomerRequest:tn,handleEditClick:en,tenantEmailDomain:et,trackExpenseAutomationTabAnalytics:M,setActivityLogTransactionId:me,closeSidePanel:hn,openTransactionPanel:s,sidePanelIsOpen:pn,sidePanelIsFullView:u!==!0&&C,panelContent:mn,isAiCfoAccessEnabled:$,onAskAiCfoClick:Ze,isExpenseAutomationCommentingEnabled:Ma,isReconV3Enabled:La,onExpenseAutomationCommentingThreadClick:ja,sidePanelListPercent:u===!0?66:void 0})}),dn,ie.showPopup&&ie.popupType!=null&&T.jsx(fc,{popupType:ie.popupType,currencySymbol:ie.currencySymbol,accountId:ie.popupAccountId??"",accountName:ie.popupAccountName??"",onSubmit:ie.handleSubmit,onDismiss:ie.handleDismiss})]})}))),$c=Qe(wn)`
22
+ display: flex;
23
+ min-height: 100%;
24
+ flex-direction: column;
25
+ `;function hi(){return T.jsxs(Rn,{children:[T.jsx(rt,{path:"*",element:T.jsx(Dc,{})}),T.jsx(rt,{path:"/:selectedTab/:selectedPeriod/*",element:T.jsx(zc,{})}),T.jsx(rt,{path:"*",element:T.jsx(vn,{})})]})}export{hi as default};