@zeniai/web-app-ui 5.2.1-qa → 5.2.2-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 (126) hide show
  1. package/dist/assets/AddressRoutes-BpuOCrFB.js +1 -0
  2. package/dist/assets/{AddressScreen-nKSLWJuc.js → AddressScreen-CUr-HVcT.js} +2 -2
  3. package/dist/assets/{AiCfoScreen-YMI_Ue0S.js → AiCfoScreen-CQ5-XgG8.js} +1 -1
  4. package/dist/assets/{BillPayApprovalRoutes-CsFX5rjw.js → BillPayApprovalRoutes-D2_kNfaY.js} +1 -1
  5. package/dist/assets/{BillPayRoutes-BHa9CFLd.js → BillPayRoutes-COEOJVsM.js} +17 -17
  6. package/dist/assets/{BusinessVerificationPageScreen-DPcnOTgE.js → BusinessVerificationPageScreen-BwKYUVXz.js} +2 -2
  7. package/dist/assets/{CardsAiCfoScreen-Byi_dC9M.js → CardsAiCfoScreen-HxTonb4Z.js} +1 -1
  8. package/dist/assets/{ChargeCardRoutes-Bt1hyW6W.js → ChargeCardRoutes-Br_JifOo.js} +10 -10
  9. package/dist/assets/CompanyPassportScreen-D5p8YGqx.js +1 -0
  10. package/dist/assets/ConnectionAuthScreen-C7C9oP-O.js +11 -0
  11. package/dist/assets/CustomerOnboardingAuthScreen-DHYr81WM.js +1 -0
  12. package/dist/assets/{CustomerOnboardingRoutes-DG97SmPk.js → CustomerOnboardingRoutes-D7xgi9kE.js} +8 -8
  13. package/dist/assets/{DashboardRoutes-A-E1fxlU.js → DashboardRoutes-CrUjulzU.js} +4 -4
  14. package/dist/assets/{DefaultTenantHome-40mCVCF-.js → DefaultTenantHome-CQVq15dz.js} +1 -1
  15. package/dist/assets/DomesticWireDetailScreen-mk_MQEQb.js +18 -0
  16. package/dist/assets/{DrawerScreen-OM7n56Dx.js → DrawerScreen-BWm1l0_Z.js} +1 -1
  17. package/dist/assets/EntityDetailRoutes-B8mgxcsD.js +1 -0
  18. package/dist/assets/{ExpenseAutomationRoutes-BmkWbc12.js → ExpenseAutomationRoutes-CY3gwyyO.js} +3 -3
  19. package/dist/assets/{FeaturePreviewScreen-CzJwTXfy.js → FeaturePreviewScreen-C0EZ8JBW.js} +1 -1
  20. package/dist/assets/HubSpotOAuthCallbackScreen-BwGxeepQ.js +1 -0
  21. package/dist/assets/{MagicLinkRoutes-C13fH60b.js → MagicLinkRoutes-DQ1ug8CF.js} +2 -2
  22. package/dist/assets/MagicLinkSignInScreen-tDhHVTnP.js +12 -0
  23. package/dist/assets/{MobileAppDrawer-DdLzgZKv.js → MobileAppDrawer-DJ3VpNqR.js} +1 -1
  24. package/dist/assets/NotFoundScreen-CamJ30ZO.js +1 -0
  25. package/dist/assets/{NotificationRoutes-DbrdVTft.js → NotificationRoutes-DK8GwbT3.js} +1 -1
  26. package/dist/assets/{OAuthConsentScreen-HS2eshhY.js → OAuthConsentScreen-Bk2mnH8v.js} +1 -1
  27. package/dist/assets/PandLWithForecastRoutes-BTkp9Nfx.js +1 -0
  28. package/dist/assets/PeopleRoutes-BqJR3HeE.js +22 -0
  29. package/dist/assets/PerformanceRoutes-y59oCr7_.js +1 -0
  30. package/dist/assets/{Preview-R-H_SCJF.js → Preview-ChMTg4zf.js} +1 -1
  31. package/dist/assets/{QBOConnectionScreen-BgrYxdBK.js → QBOConnectionScreen-CmRiNFSq.js} +1 -1
  32. package/dist/assets/ReferralListScreen-joOUNqNx.js +5 -0
  33. package/dist/assets/ReimbursementApprovalRoutes-CFENXyD5.js +1 -0
  34. package/dist/assets/{ReimbursementApprovalRuleDetailScreen-Cx0XJ_uS.js → ReimbursementApprovalRuleDetailScreen-Be3YasZE.js} +1 -1
  35. package/dist/assets/{ReimbursementRoutes-Dkp04D2k.js → ReimbursementRoutes-BcC0c-hC.js} +5 -5
  36. package/dist/assets/{ReportsRoutes-BMTrr5Qa.js → ReportsRoutes-Do7TO9Xv.js} +1 -1
  37. package/dist/assets/RewardsRoutes-CxzqjLpY.js +1 -0
  38. package/dist/assets/{ScreenRoutes-DT-K2cjb.js → ScreenRoutes-Ch7ptvuu.js} +2 -2
  39. package/dist/assets/{SettingsRoutes-C2EyidL4.js → SettingsRoutes-BKO1Pjri.js} +8 -8
  40. package/dist/assets/{SetupPagesScreen-Bu5xPZaM.js → SetupPagesScreen-Dvy2GpFH.js} +5 -5
  41. package/dist/assets/SignInScreen-BZWZX1Q0.js +1 -0
  42. package/dist/assets/SignOutScreen-ej7zxFCM.js +9 -0
  43. package/dist/assets/{TaskListScreen-KWPzBGE2.js → TaskListScreen-CPjplYNX.js} +2 -2
  44. package/dist/assets/TaskRoutes-D6e-kYJP.js +9 -0
  45. package/dist/assets/{TransactionDetailRoutes-RaFXCYib.js → TransactionDetailRoutes-BQtZsJD1.js} +1 -1
  46. package/dist/assets/{TransactionDetailScreen-DgWPeyaq.js → TransactionDetailScreen-B1AYJUjQ.js} +2 -2
  47. package/dist/assets/{TransactionListRoutes-CjUKG5HR.js → TransactionListRoutes-De3qcM42.js} +1 -1
  48. package/dist/assets/{TreasuryRoutes-BKd9Wuop.js → TreasuryRoutes-C1F9Ijug.js} +5 -5
  49. package/dist/assets/{VendorsRoutes-DrkDaPal.js → VendorsRoutes-XJ9cWDA2.js} +21 -21
  50. package/dist/assets/WiseConfirmationScreen-kawXhbh0.js +12 -0
  51. package/dist/assets/{ZeniAccountRoutes-dq70WeFM.js → ZeniAccountRoutes-BXPbqBZ6.js} +9 -9
  52. package/dist/assets/ZeniAccountStatementScreen-DR8Npwal.js +9 -0
  53. package/dist/assets/{accountMappingHelper-D_5QqKtd.js → accountMappingHelper-BXTm4qLL.js} +1 -1
  54. package/dist/assets/{analytics-Dx20Frgp.js → analytics-B1ozuY-_.js} +1 -1
  55. package/dist/assets/analyticsHelper-mm28SP1t.js +1 -0
  56. package/dist/assets/{core-Deu6zgNz.js → core-jHXRcmGr.js} +1 -1
  57. package/dist/assets/{decodeURIComponentSafe-B2B9XdGW.js → decodeURIComponentSafe-C8Ut439h.js} +1 -1
  58. package/dist/assets/{dnd-CQEwIj2b.js → dnd-DXsHzzkY.js} +1 -1
  59. package/dist/assets/{empty-D6OiEgen.js → empty-CT_SeA8A.js} +1 -1
  60. package/dist/assets/{empty-BYHCt1Ql.js → empty-DkofjAEy.js} +1 -1
  61. package/dist/assets/{emptyVideoElement-DT5ERh7k.js → emptyVideoElement-xWUlB5cO.js} +1 -1
  62. package/dist/assets/epic-BU3yGtpS.js +2 -0
  63. package/dist/assets/{getLocaleForTenant-Goc_zo4E.js → getLocaleForTenant-BNQJePqV.js} +1 -1
  64. package/dist/assets/{index-DUGvnB6l.js → index-BaVUy8OL.js} +1 -1
  65. package/dist/assets/{index-x9_ludBd.js → index-BsfTwJVJ.js} +2 -2
  66. package/dist/assets/{index-CCeVfWXG.js → index-CVfL0TVn.js} +1 -1
  67. package/dist/assets/{index-s1I91N3w.js → index-Cz79PJvB.js} +1 -1
  68. package/dist/assets/{index-D1FLsJEr.js → index-D3N1b9aQ.js} +7 -7
  69. package/dist/assets/{index-Bpl8YvUJ.js → index-Dd8kzaST.js} +1 -1
  70. package/dist/assets/{index-DXBKeb53.js → index-bO5KWXDm.js} +1 -1
  71. package/dist/assets/{index-Diht5HAX.js → index-gdhkfqne.js} +1 -1
  72. package/dist/assets/{lexical-C3dsnw0c.js → lexical-BsEGFMKX.js} +1 -1
  73. package/dist/assets/{liveblocks-DJRxBaIV.js → liveblocks-Cl_SAGXq.js} +1 -1
  74. package/dist/assets/{lottie-CqN_xVLe.js → lottie-BvP-9pT9.js} +1 -1
  75. package/dist/assets/{mui-2-6pepya.js → mui-DT0mOTYO.js} +1 -1
  76. package/dist/assets/{pathToGoBack-oWhCBlv_.js → pathToGoBack-DeIlb7In.js} +1 -1
  77. package/dist/assets/{pdf-DoNTLdQS.js → pdf-CgzfzxbY.js} +3 -3
  78. package/dist/assets/{pdf-lib-CQlBYVN1.js → pdf-lib-BFqwhQQP.js} +1 -1
  79. package/dist/assets/{plaid-CAtEruxd.js → plaid-NlhYlsbZ.js} +1 -1
  80. package/dist/assets/{pusher-DVgs2vjL.js → pusher-Q2OMJpwL.js} +1 -1
  81. package/dist/assets/{react-BQK_PZ7X.js → react-3JBqx4v7.js} +1 -1
  82. package/dist/assets/{react-C1v_lzEp.js → react-BXjQIhaM.js} +1 -1
  83. package/dist/assets/{react-B9LU5ksb.js → react-C69jv4Ir.js} +1 -1
  84. package/dist/assets/{react-CuQlv2Xo.js → react-CbTW5azc.js} +1 -1
  85. package/dist/assets/{react-DvM9SJ-E.js → react-CzT5_e98.js} +1 -1
  86. package/dist/assets/{react-CaUElg_H.js → react-DyPd6pWl.js} +1 -1
  87. package/dist/assets/{recharts-DhkBu8Nc.js → recharts-qvF3Dod3.js} +1 -1
  88. package/dist/assets/{routePaths-DnU4nZVO.js → routePaths-m79Ycpnf.js} +1 -1
  89. package/dist/assets/{sentry-CCv9H2LX.js → sentry-4tqT1r6y.js} +1 -1
  90. package/dist/assets/{url-WAroKCYO.js → url-CXugcAfw.js} +1 -1
  91. package/dist/assets/{url-PHEx2VF6.js → url-yIFPVih_.js} +1 -1
  92. package/dist/assets/{useAiCfoDashboardSuggestedQuestionsChips-2UTOy-pu.js → useAiCfoDashboardSuggestedQuestionsChips-BunYETHX.js} +1 -1
  93. package/dist/assets/{useAskAiCfoHostNavButtonProps-BSeuzuMu.js → useAskAiCfoHostNavButtonProps-DNA9YGXg.js} +1 -1
  94. package/dist/assets/useCashManagementBanner-TkTWt3zi.js +1 -0
  95. package/dist/assets/{useChargeCardPusherEvents-BKAhPUAk.js → useChargeCardPusherEvents-CTk-yEyL.js} +1 -1
  96. package/dist/assets/{useDeviceId-BPEf1gm7.js → useDeviceId-DYiky9LJ.js} +1 -1
  97. package/dist/assets/{useEmailConnectResultRefresh-CC7bzNqD.js → useEmailConnectResultRefresh-B9Wz5ZE4.js} +1 -1
  98. package/dist/assets/{useInitialThreadRequest-BLJkGJ7X.js → useInitialThreadRequest-DE7N6h-n.js} +1 -1
  99. package/dist/assets/{utils-Fa4tVlqJ.js → utils-Dc4uXotD.js} +1 -1
  100. package/dist/assets/{withTransactionSidePanel-DGRTBEXL.js → withTransactionSidePanel-C-SPdXRH.js} +2 -2
  101. package/dist/assets/{zeni-epic-state-Bs-2KETC.js → zeni-epic-state-BER7XwD9.js} +5 -5
  102. package/dist/index.html +1 -1
  103. package/package.json +3 -3
  104. package/dist/assets/AddressRoutes-_dq1yzrb.js +0 -1
  105. package/dist/assets/CompanyPassportScreen-iguimt1Z.js +0 -1
  106. package/dist/assets/ConnectionAuthScreen-B_sx8D_y.js +0 -11
  107. package/dist/assets/CustomerOnboardingAuthScreen-DgFgTk04.js +0 -1
  108. package/dist/assets/DomesticWireDetailScreen-DA0L_Ocw.js +0 -18
  109. package/dist/assets/EntityDetailRoutes-B_0KYTwn.js +0 -1
  110. package/dist/assets/HubSpotOAuthCallbackScreen-CmMEpDfA.js +0 -1
  111. package/dist/assets/MagicLinkSignInScreen-9In7ZPw9.js +0 -12
  112. package/dist/assets/NotFoundScreen-L94hFyts.js +0 -1
  113. package/dist/assets/PandLWithForecastRoutes-DRhxh1ur.js +0 -1
  114. package/dist/assets/PeopleRoutes-CZ-1HcmI.js +0 -22
  115. package/dist/assets/PerformanceRoutes-KqN8s96O.js +0 -1
  116. package/dist/assets/ReferralListScreen-BI2I20EQ.js +0 -5
  117. package/dist/assets/ReimbursementApprovalRoutes-BI5htWMH.js +0 -1
  118. package/dist/assets/RewardsRoutes-DDbomjok.js +0 -1
  119. package/dist/assets/SignInScreen-DwCk4nzP.js +0 -1
  120. package/dist/assets/SignOutScreen-D7PeHepA.js +0 -9
  121. package/dist/assets/TaskRoutes-DLfDlpMH.js +0 -9
  122. package/dist/assets/WiseConfirmationScreen-qDF39yp8.js +0 -12
  123. package/dist/assets/ZeniAccountStatementScreen--gvYWrVM.js +0 -9
  124. package/dist/assets/analyticsHelper-Ds6_JcxE.js +0 -1
  125. package/dist/assets/epic-MtyVcf5U.js +0 -2
  126. package/dist/assets/useCashManagementBanner-DGRgaWAY.js +0 -1
@@ -0,0 +1 @@
1
+ import{j as i}from"./liveblocks-Cl_SAGXq.js";import{z as n}from"./index-D3N1b9aQ.js";import{g as d}from"./QBOConnectionScreen-CmRiNFSq.js";import"./sentry-4tqT1r6y.js";import{g as p,N as s}from"./core-jHXRcmGr.js";import"./zeni-epic-state-BER7XwD9.js";import"./recharts-qvF3Dod3.js";import"./mui-DT0mOTYO.js";import"./analytics-B1ozuY-_.js";import"./plaid-NlhYlsbZ.js";import"./dnd-DXsHzzkY.js";import"./stripe-DMRn4zHo.js";import"./lottie-BvP-9pT9.js";import"./lexical-BsEGFMKX.js";import"./pdf-CgzfzxbY.js";import"./utils-Dc4uXotD.js";import"./empty-CT_SeA8A.js";import"./pdf-lib-BFqwhQQP.js";import"./index-CVfL0TVn.js";import"./url-yIFPVih_.js";import"./index-Dd8kzaST.js";import"./decodeURIComponentSafe-C8Ut439h.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},o=new t.Error().stack;o&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[o]="817363c8-7f1d-4590-b58b-cef70b99ca15",t._sentryDebugIdIdentifier="sentry-dbid-817363c8-7f1d-4590-b58b-cef70b99ca15")}catch{}})();const U=()=>{const t=p(),{code:o,realmId:r,state:e}=d(t.search),m=n.getSignedInUser()?.userId??"";if(f(o,r,e,m)===!0){const a=`../../${e}/onboarding?code=${o}&realmId=${r}&state=auth_flow`;return i.jsx(s,{to:a})}return i.jsx(s,{to:"../../"})},f=(t,o,r,e)=>t!=""&&o!=""&&r!=""&&e!=null&&e!="";export{U as default,f as hasValidParams};
@@ -1,8 +1,8 @@
1
- import{j as a}from"./liveblocks-DJRxBaIV.js";import{t as yt,A as Ve}from"./AddressScreen-nKSLWJuc.js";import ht from"./NotFoundScreen-L94hFyts.js";import{a as d}from"./sentry-CCv9H2LX.js";import{h as be,g as Ie,u as ne,i as ke,j as k,N as U,l as St,n as et,o as Ct,p as q}from"./core-Deu6zgNz.js";import{z as L,C as _e,G as H,S as bt,v as K,D as ae,d as R,f as de,aq as It,K as kt,x as tt,I as nt,ar as Ne,j as Se,as as _t,o as Le,at as Re,au as vt,av as $e,aw as Ot,ax as Tt}from"./index-D1FLsJEr.js";import{eX as Y,fE as ve,fC as Oe,bs as Et,fS as xt,bS as wt,o8 as At,tn as Pt,tq as Dt,MX as jt,MY as Ft,k9 as Ce,kc as at,Ms as Bt,bY as Ut,c6 as le,tR as Te,tC as Vt,MZ as ue,tS as ot,Kl as Nt,le as st,M_ as Lt,M$ as Rt,rk as $t,hq as Gt,Mk as ge,hn as Mt,Ml as zt,y2 as Kt,ro as Qt,hf as qt,hi as Ge,N0 as it,N1 as Ht,E5 as Zt,N2 as Xt,E9 as Yt,tt as Jt,N3 as Wt,N4 as en,k7 as tn,ka as nn,u2 as an,tE as rt,tQ as on,bE as Me,cz as sn,u1 as ze,rD as rn,rr as cn,l6 as dn,gh as un,gg as ln,gf as pn,N5 as mn,tw as gn,u3 as fn,u6 as yn,u9 as hn,uf as Sn,cZ as Cn}from"./zeni-epic-state-Bs-2KETC.js";import{n as Ee}from"./mui-2-6pepya.js";import{g as bn,h as In,q as oe}from"./QBOConnectionScreen-BgrYxdBK.js";import{u as kn,a as _n}from"./useEmailConnectResultRefresh-CC7bzNqD.js";import{u as vn}from"./useChargeCardPusherEvents-BKAhPUAk.js";import"./recharts-DhkBu8Nc.js";import"./analytics-Dx20Frgp.js";import"./plaid-CAtEruxd.js";import"./dnd-CQEwIj2b.js";import"./stripe-DMRn4zHo.js";import"./lottie-CqN_xVLe.js";import"./lexical-C3dsnw0c.js";import"./pdf-DoNTLdQS.js";import"./utils-Fa4tVlqJ.js";import"./empty-D6OiEgen.js";import"./pdf-lib-CQlBYVN1.js";import"./index-CCeVfWXG.js";import"./url-PHEx2VF6.js";import"./index-Bpl8YvUJ.js";import"./decodeURIComponentSafe-B2B9XdGW.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},u=new t.Error().stack;u&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[u]="9f9408e1-d049-4122-b16d-a05ef6cbf58a",t._sentryDebugIdIdentifier="sentry-dbid-9f9408e1-d049-4122-b16d-a05ef6cbf58a")}catch{}})();const On=()=>{const t=be(),u=Ie(),i=ne(),[o,l]=d.useState(!1),[c,y]=d.useState(!1),{tenantEmailDomain:S}=ke(),e=L.getSignedInUser(),{useFeatureGate:n}=_e(),{isFeatureEnabled:s}=n(H.isApAgingFeatureEnabled),{isFeatureEnabled:C}=n(H.isArAgingFeatureEnabled),{isFeatureEnabled:_}=n(H.isReferralFeatureEnabled),{isFeatureEnabled:I}=n(H.isExpenseAutomationEnabledV2),{isFeatureEnabled:T}=n(H.isDebitCardFeatureEnabled),r=bt(),f=k(h=>Y(h)),p=k(h=>h.onboardingCustomerViewState.fetchState),v=f.excludedResources,O=f.companyId??L.getSignedInUserTenant(S)?.companyId;if(e==null)throw Error("Can't access onboarding flow without signing in...");const E=ve(T,f),P=Oe(f),m=[],$=v?.resources?.find(h=>h.resource==="/reports/top_expenses")==null,j=v?.resources?.find(h=>h.resource==="/reports/task_card")==null,G=f?.userRole!=null&&Et(f?.userRole),M=v?.resources?.find(h=>h.resource==="/bills")==null&&!G,w=v?.resources?.find(h=>h.resource==="/reimbursements")==null;$===!1&&m.push("top_expenses"),j===!1&&m.push("task_card"),M===!1&&m.push("bill_pay_card","bill_pay_promo_card"),w===!1&&m.push("reimbursement_card","reimbursement_promo_card"),m.push("zeni_accounts_promo_card","treasury_promo_card"),_===!1&&m.push("rewards_card");const F=k(h=>{const D=[];s===!1&&D.push("accounts_payable_aging"),C===!1&&D.push("accounts_receivable_aging"),D.push("zeni_accounts_promo_card","treasury_promo_card"),_===!1&&D.push("rewards_card"),r===!1&&D.push("expense_automation_card");const Z=xt(h,D,e,I,r);return wt(Z.reportsInOrder.map(A=>({fetchState:A.fetchState,error:A.error}))).fetchState});d.useEffect(()=>{p!=="Completed"||o||E||P||(l(!0),i(At(e.userId,O,f.tenantId,!0,!1,m)))},[o,p,E,P,e,f.tenantId,i]);const Q=d.useRef(!1),z=d.useCallback(()=>{const h={pathnameStackToGoBack:K(u.state?.pathnameStackToGoBack,u.pathname),message:"activation"};t(E?"../../checking":P?"../../cards":"../../dashboard",{state:h})},[t,u,E,P]),V=d.useCallback(()=>{Q.current||(Q.current=!0,z())},[z]);return d.useEffect(()=>{const h=setTimeout(()=>y(!0),3e3);return()=>clearTimeout(h)},[]),d.useEffect(()=>{const h=setTimeout(V,6e3);return()=>clearTimeout(h)},[V]),d.useEffect(()=>{E||P||!c||F!=="Completed"&&F!=="Error"||V()},[c,F,E,P,V]),p!=="Completed"?a.jsx(U,{to:"../"}):a.jsxs(a.Fragment,{children:[a.jsx(ae,{analytics:R,onLoad:h=>h.trackPageLoaded(de.Event.onboardingDashboardActivation)}),a.jsx(It,{show:!0,onComplete:V})]})},fe=["reading_books","finance_graph","reconciliation","cfo_foundation"],ye=["llm_fine_tuning","rag_knowledge_graph","personalized_context"],Ke=(t,u)=>{const i=new Map(t.map(o=>[o.key,o]));return u.map(o=>{return l=i.get(o)?.status,l==="starting"||l==="building"?l:"idle";var l})},Qe=(t,u)=>{if(t.length===0)return!1;const i=new Map(t.map(o=>[o.key,o]));return u.every(o=>i.get(o)?.status==="ready")},qe=Ee.div`
1
+ import{j as a}from"./liveblocks-Cl_SAGXq.js";import{t as yt,A as Ve}from"./AddressScreen-CUr-HVcT.js";import ht from"./NotFoundScreen-CamJ30ZO.js";import{a as d}from"./sentry-4tqT1r6y.js";import{h as be,g as Ie,u as ne,i as ke,j as k,N as U,l as St,n as et,o as Ct,p as q}from"./core-jHXRcmGr.js";import{z as R,C as ve,G as H,S as bt,v as K,D as ae,d as N,f as de,aq as It,K as kt,x as tt,I as nt,ar as Le,j as Se,as as vt,o as Re,at as Ne,au as _t,av as Me,aw as Ot,ax as Tt}from"./index-D3N1b9aQ.js";import{eX as X,fE as _e,fC as Oe,bs as xt,fS as Et,bS as wt,o7 as At,tm as Pt,tp as Dt,MV as jt,MW as Ft,k9 as Ce,kc as at,Mq as Bt,bY as Ut,c6 as le,tQ as Te,tB as Vt,MX as ue,tR as ot,Kj as Lt,ld as st,MY as Rt,MZ as Nt,rj as Mt,hq as $t,Mi as ge,hn as Gt,Mj as zt,y1 as Kt,rn as Qt,hf as qt,hi as $e,M_ as it,M$ as Ht,E4 as Zt,N0 as Wt,E8 as Xt,ts as Yt,N1 as Jt,N2 as en,k7 as tn,ka as nn,u1 as an,tD as rt,tP as on,bE as Ge,cz as sn,u0 as ze,rC as rn,rq as cn,l5 as dn,gh as un,gg as ln,gf as pn,N3 as mn,tv as gn,u2 as fn,u5 as yn,u8 as hn,ue as Sn,cZ as Cn}from"./zeni-epic-state-BER7XwD9.js";import{n as xe}from"./mui-DT0mOTYO.js";import{g as bn,h as In,q as oe}from"./QBOConnectionScreen-CmRiNFSq.js";import{u as kn,a as vn}from"./useEmailConnectResultRefresh-B9Wz5ZE4.js";import{u as _n}from"./useChargeCardPusherEvents-CTk-yEyL.js";import"./recharts-qvF3Dod3.js";import"./analytics-B1ozuY-_.js";import"./plaid-NlhYlsbZ.js";import"./dnd-DXsHzzkY.js";import"./stripe-DMRn4zHo.js";import"./lottie-BvP-9pT9.js";import"./lexical-BsEGFMKX.js";import"./pdf-CgzfzxbY.js";import"./utils-Dc4uXotD.js";import"./empty-CT_SeA8A.js";import"./pdf-lib-BFqwhQQP.js";import"./index-CVfL0TVn.js";import"./url-yIFPVih_.js";import"./index-Dd8kzaST.js";import"./decodeURIComponentSafe-C8Ut439h.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},u=new t.Error().stack;u&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[u]="4d4acc2a-668a-45a3-abcd-7dec1632ce19",t._sentryDebugIdIdentifier="sentry-dbid-4d4acc2a-668a-45a3-abcd-7dec1632ce19")}catch{}})();const On=()=>{const t=be(),u=Ie(),i=ne(),[o,l]=d.useState(!1),[c,y]=d.useState(!1),{tenantEmailDomain:S}=ke(),e=R.getSignedInUser(),{useFeatureGate:n}=ve(),{isFeatureEnabled:s}=n(H.isApAgingFeatureEnabled),{isFeatureEnabled:C}=n(H.isArAgingFeatureEnabled),{isFeatureEnabled:v}=n(H.isReferralFeatureEnabled),{isFeatureEnabled:I}=n(H.isExpenseAutomationEnabledV2),{isFeatureEnabled:T}=n(H.isDebitCardFeatureEnabled),r=bt(),f=k(h=>X(h)),p=k(h=>h.onboardingCustomerViewState.fetchState),_=f.excludedResources,O=f.companyId??R.getSignedInUserTenant(S)?.companyId;if(e==null)throw Error("Can't access onboarding flow without signing in...");const x=_e(T,f),P=Oe(f),m=[],M=_?.resources?.find(h=>h.resource==="/reports/top_expenses")==null,j=_?.resources?.find(h=>h.resource==="/reports/task_card")==null,$=f?.userRole!=null&&xt(f?.userRole),G=_?.resources?.find(h=>h.resource==="/bills")==null&&!$,w=_?.resources?.find(h=>h.resource==="/reimbursements")==null;M===!1&&m.push("top_expenses"),j===!1&&m.push("task_card"),G===!1&&m.push("bill_pay_card","bill_pay_promo_card"),w===!1&&m.push("reimbursement_card","reimbursement_promo_card"),m.push("zeni_accounts_promo_card","treasury_promo_card"),v===!1&&m.push("rewards_card");const F=k(h=>{const D=[];s===!1&&D.push("accounts_payable_aging"),C===!1&&D.push("accounts_receivable_aging"),D.push("zeni_accounts_promo_card","treasury_promo_card"),v===!1&&D.push("rewards_card"),r===!1&&D.push("expense_automation_card");const Z=Et(h,D,e,I,r);return wt(Z.reportsInOrder.map(A=>({fetchState:A.fetchState,error:A.error}))).fetchState});d.useEffect(()=>{p!=="Completed"||o||x||P||(l(!0),i(At(e.userId,O,f.tenantId,!0,!1,m)))},[o,p,x,P,e,f.tenantId,i]);const Q=d.useRef(!1),z=d.useCallback(()=>{const h={pathnameStackToGoBack:K(u.state?.pathnameStackToGoBack,u.pathname),message:"activation"};t(x?"../../checking":P?"../../cards":"../../dashboard",{state:h})},[t,u,x,P]),V=d.useCallback(()=>{Q.current||(Q.current=!0,z())},[z]);return d.useEffect(()=>{const h=setTimeout(()=>y(!0),3e3);return()=>clearTimeout(h)},[]),d.useEffect(()=>{const h=setTimeout(V,6e3);return()=>clearTimeout(h)},[V]),d.useEffect(()=>{x||P||!c||F!=="Completed"&&F!=="Error"||V()},[c,F,x,P,V]),p!=="Completed"?a.jsx(U,{to:"../"}):a.jsxs(a.Fragment,{children:[a.jsx(ae,{analytics:N,onLoad:h=>h.trackPageLoaded(de.Event.onboardingDashboardActivation)}),a.jsx(It,{show:!0,onComplete:V})]})},fe=["reading_books","finance_graph","reconciliation","cfo_foundation"],ye=["llm_fine_tuning","rag_knowledge_graph","personalized_context"],Ke=(t,u)=>{const i=new Map(t.map(o=>[o.key,o]));return u.map(o=>{return l=i.get(o)?.status,l==="starting"||l==="building"?l:"idle";var l})},Qe=(t,u)=>{if(t.length===0)return!1;const i=new Map(t.map(o=>[o.key,o]));return u.every(o=>i.get(o)?.status==="ready")},qe=xe.div`
2
2
  display: flex;
3
3
  height: 100vh;
4
4
  background-color: ${t=>t.theme.colors.grey4};
5
- `,He=Ee.div`
5
+ `,He=xe.div`
6
6
  display: flex;
7
7
  flex-direction: column;
8
8
  align-items: center;
@@ -11,20 +11,20 @@ import{j as a}from"./liveblocks-DJRxBaIV.js";import{t as yt,A as Ve}from"./Addre
11
11
 
12
12
  ${t=>t.skipLegacyDrawerOffset?`
13
13
  width: 100%;
14
- padding-left: ${Le.sp0};
14
+ padding-left: ${Re.sp0};
15
15
  `:`
16
- min-width: calc(100% - ${Re}px);
17
- padding-left: ${Re}px;
16
+ min-width: calc(100% - ${Ne}px);
17
+ padding-left: ${Ne}px;
18
18
  `}
19
19
 
20
20
  ${t=>t.theme.breakpoints.down("md")} {
21
21
  width: 100%;
22
- padding-left: ${Le.sp0};
22
+ padding-left: ${Re.sp0};
23
23
  }
24
24
 
25
25
  ${t=>t.windowSize!=="small"?"overflow: auto;":""}
26
- `,Ze=et(function(t,u){const{companyId:i,isAdmin:o,currentTenant:l,isOnAddressPage:c}=u,y=L.getSignedInUser(),S=l.tenantId,e={userId:y?.userId??"",sessionId:y?.zeniSessionId??"",tenantId:S??""},n=Y(t),s=Te(t,i),C=it(t),_=le(l?.userRole??[])&&s.updateStatus.fetchState!=="In-Progress"?void 0:"readonly",I=Ht(t.userRoleConfigState);return{onboardingCustomerView:s,analytics:R,isRefreshingViewInBackground:!1,isDisabled:_,companyTitles:I.companyTitles,connectedAccountProvider:n.company?.featuresActivationInfo.connectedAccountProvider??"",fileProps:{filesEndPoint:vt.fileMicroServiceBaseUrl,authParams:e},signedInUser:L.getSignedInUser(),currentTenant:n,isAdmin:o,isOnAddressPage:c,meetingUrl:"https://meetings.hubspot.com/niharn/zeni-onboarding-overview?embed=true",cardPaymentView:C,isCardPaymentPopupOpen:!1,stripeKey:Se.stripeKey}},function(t,u){const{companyId:i,currentTenant:o,themeState:l,navigate:c,location:y}=u,{tenantEmailDomain:S}=o;return{onFetchLinkTokenClick:(e,n)=>{t(Sn(e,n))},onEstablishConnectionClick:(e,n)=>{t(hn(e,n))},onUpdatePaymentAccountStatus:(e,n,s)=>{t(yn(e,n,s))},onUpdatePaymentAccountLoginStatus:(e,n)=>{t(fn(!1,e,n))},onEstablishConnectionSuccess:()=>{t(gn(i,!0,!1))},handleOnConnectClick:()=>{R.trackOnboardingConnectQBO(),oe.handleClick()},updateQBOPopupState:e=>{t(ue({isQBOPopupOpen:e}))},onCompanyOfficerUpdated:e=>{const n=e.map(s=>{const{officerType:C,userId:_,name:I,email:T,ssn:r,nationalityCountryCode:f,dob:p,phone:v,syncToken:O,selectDocument:E,role:P,ownership:m,isSelectedForVerification:$,userVerificationStatus:j,fileIds:G,isPhoneVerified:M}=s;let w;return E.selectDocumentType==="driverLicense"?w="driving_license":E.selectDocumentType==="passport"?w="passport":E.selectDocumentType==="stateId"?w="id_document":E.selectDocumentType==="ssnCard"&&(w="social_security_card"),{officerType:C,userId:_,firstName:I.firstName,lastName:I.lastName,email:T,ssn:r,nationalityCountryCode:f?.selectedOption!=null?$e(f.selectedOption):void 0,phone:v,birthday:p!=null?Me(p?.toString()):p,syncToken:O,titleAtCompany:P.selectedOption,ownershipInCompany:m,documentTypeSelectedForVerification:w,isSelectedForVerification:$,userVerificationStatus:j,fileIds:G,additionalDocumentTypesRequestedForVerification:[],additionalSubmittedDocumentsForVerificationFileIds:[],areAdditionalDocumentsRequestedForVerification:!1,areAdditionalDocumentsSubmittedForVerification:!1,isPhoneVerified:M}});t(ze({officers:n}))},onGetOtp:(e,n)=>{t(pn(e,"CustomerOnboarding")),n!=null&&t(mn({officerType:n,phone:e}))},onResendOtp:e=>{t(ln(e,"CustomerOnboarding"))},onVerifyOtp:(e,n)=>{t(un(e,n,"CustomerOnboarding"))},updateFilesEntity:e=>{t(dn({files:e}))},onDeleteFile:e=>{t(cn(e))},onEditFileName:(e,n)=>{t(rn(e,n.split(".")[0]))},onCompanyDetailsChanged:e=>{const{companyDescription:n,companyIndustry:s,companyIndustryType:C,companyLegalName:_,companyTaxId:I,companyWebsite:T,companyPhone:r,primaryContactEmail:f,primaryContactName:p,primaryContactUserId:v,primaryContactSyncToken:O,syncToken:E,fileIds:P,typeOfIncorporation:m,stateOfIncorporation:$,incDate:j,companySourceOfFunds:G,companySourceOfFundsDescription:M,companySubIndustry:w,countriesOfOperations:F,purposeOfAccount:Q,purposeOfAccountDescription:z,regulatedStatus:V,regulatedStatusDescription:h,transactionVolume:D,transactionVolumeDescription:Z,usNexus:A,usNexusTypes:se}=e,B={companyId:i,companyDescription:n,companyIndustry:s.selectedOption,companyIndustryType:C?.selectedOption??"",companyLegalName:_,taxIdOrEIN:I,website:T!=""&&T!=null?sn(T):void 0,phone:r,syncToken:E,fileIds:P,incDate:j!=null?Me(j?.toString()):j,typeOfIncorporation:m?.selectedOption??"",stateOfIncorporation:$?.selectedOption??"",companySourceOfFunds:G?.selectedOption??"",companySourceOfFundsDescription:M,companySubIndustry:w?.selectedOption??"",countriesOfOperations:F?.selectedOptions.map(J=>J.length===2?J:$e(J))??[],purposeOfAccount:Q?.selectedOption??"",purposeOfAccountDescription:z,regulatedStatus:V??"",regulatedStatusDescription:h,transactionVolume:D?.selectedOption??"",transactionVolumeDescription:Z,usNexus:A,usNexusTypes:se?.selectedOptions??[]},pe={userId:v,firstName:p.firstName,lastName:p.lastName,email:f,syncToken:O};t(ze({companyDetails:B,primaryContactDetails:pe}))},onAddressClick:(e,n)=>{const s=Ye(S,e,n),C=K(y.state?.pathnameStackToGoBack,y.pathname);c(s,{state:{pathnameStackToGoBack:C}})},onRegisteredAddressClick:(e,n)=>{const s=Ye(S,e,n),C=K(y.state?.pathnameStackToGoBack,y.pathname);c(s,{state:{pathnameStackToGoBack:C}})},onUpdateCustomerView:(e,n,s)=>{t(on(i,!1,n,s,e))},onAddressEditHandler:e=>{if(e!=null){const n=yt(e);t(st({addressType:"subscription_billing_address",addressToCreate:n}))}},onSkipSetupClick:()=>{const e=K(y.state?.pathnameStackToGoBack,y.pathname);t(rt(i,!1,!1)),c("./activation",{state:{pathnameStackToGoBack:e}})},onUpdateStep:e=>{t(ot({step:e}))},onUpdateSubStep:e=>{t(an({subStep:e}))},onZeniLogoClick:()=>{l.toggle()},handleLogOutClick:()=>{const e=K(y.state?.pathnameStackToGoBack,y.pathname);c("/signout",{replace:!0,state:{pathnameStackToGoBack:e,message:"logout"}})},handleCockpitClick:()=>{window.open("/cockpit")},handleReferralsClick:()=>{c(`/${S}/rewards`)},handleCreateCardSetupIntent:e=>{t(at(e))},handleConfirmCardSetupIntent:e=>{t(nn(e))},updateCardPaymentModalState:e=>{t(ue({isCardPaymentPopupOpen:e}))},handleAddCardPaymentSource:(e,n,s)=>{t(tn(e,n,s))},handleFetchPaymentSources:()=>{t(Ce())},resetCardPaymentViewState:()=>{t(en())},handleResetCardPaymentErrorStatuses:()=>{t(Wt())},redirectToProductSuitePage:()=>{const e=K(y.state?.pathnameStackToGoBack,y.pathname);c(`/${S}/onboarding/thankyou`,{state:{pathnameStackToGoBack:e,message:"OnboardingThankyou"},replace:!0})},onAcknowledgeAiFinanceTeam:()=>{i!=null&&t(Jt(i))},onIdentityDocumentUploadedForAutofill:e=>{if(i==null)return;const n=Xt(e.documentType);n!=null&&t(Yt({target:"onboarding",companyId:i,officerType:e.officerType,fileId:e.fileId,documentType:n}))},onCompanyDocumentUploadedForAutofill:e=>{i!=null&&t(Zt({target:"onboarding",companyId:i,fileId:e.fileId,documentType:e.documentType}))}}})(_t),ce=({taxCFOCustomer:t=!1,isOnAddressPage:u=!1,appContent:i})=>{const o=be(),l=Ie(),c=ne(),y=kt(),S=tt(),[e,n]=d.useState(!1),[s,C]=d.useState(!1),[_,I]=d.useState(!1),{tenantEmailDomain:T}=ke(),r=nt(),{useFeatureGate:f}=_e(),{isFeatureEnabled:p}=f(H.isDebitCardFeatureEnabled),v=St("/:tenantEmailDomain/onboarding")!==null&&l.search?.includes("code"),O=k(g=>g.onboardingCustomerViewState.fetchState),E=k(g=>g.onboardingCustomerViewState.currentStep),P=k(g=>g.onboardingCustomerViewState.uiState),m=k(g=>Y(g)),$=k(g=>g.userRoleConfigState.fetchState),j=k(g=>g.cardPaymentViewState),G=Ne(j.addCardPaymentSourceStatus.fetchState),M=j.addCardPaymentSourceStatus.fetchState,{code:w,realmId:F,state:Q}=bn(l.search),z=m.externalConnections?.accounting[0],V=z?.connectionType,h=z?.connectionName,D=z?.connectionId??"",Z=L.getSignedInUser()?.userId??"";d.useEffect(()=>{s||(C(!0),c(Ce()))},[s,c]),d.useEffect(()=>{_||(at(["card"]),I(!0))},[_]),d.useEffect(()=>{G==="In-Progress"&&M==="Completed"&&c(Ce())},[G,M]),d.useEffect(()=>{In(w,F,Q,D,Z)===!0&&m.externalConnections?.saveConnectionState!=="In-Progress"&&O==="Completed"&&(c(Bt(m.tenantId,{connection_type:V??"accounting",connection_name:h??"quickbooks_online",authorization_code:w,realm_id:F,connection_id:D,user_id:Z},Ut(window.location.origin+"/onboarding/auth"))),R.trackOnboardingSaveQBOConnection(F,D),o(l.pathname))},[w,F,Q,l.pathname,O]),d.useEffect(()=>{oe.isInitiated===!1&&O==="Completed"&&oe.init("/onboarding/auth",m.tenantEmailDomain)},[O]);const A=m.companyId??L.getSignedInUserTenant(T)?.companyId,se=le(m?.userRole??[]),B=k(g=>Te(g,A));d.useEffect(()=>{e||O!=="Not-Started"||A==null||(n(!0),c(Vt(A,!0,!v)))},[e,O,A]),d.useEffect(()=>{m.externalConnections?.saveConnectionState!=="Completed"&&m.externalConnections?.saveConnectionState!=="Error"||!P.isQBOPopupOpen||E!=="connect_ledger"||c(ue({isQBOPopupOpen:!1}))},[m.externalConnections?.saveConnectionState]),d.useEffect(()=>{O==="Completed"&&v&&(c(ot({step:"connect_ledger"})),c(ue({isQBOPopupOpen:!0})))},[v,O]),d.useEffect(()=>{$==="Not-Started"&&c(Nt(!0))},[$,c]);const pe=Ne(B.companyDetailsLocalData?.addressStatus);d.useEffect(()=>{B.companyDetailsLocalData?.registeredAddressStatus?.addressToCreate==null&&B.companyDetailsLocalData?.addressStatus?.addressToCreate!=null&&pe==null&&c(st({addressType:"company_registered_address",addressToCreate:B.companyDetailsLocalData?.addressStatus?.addressToCreate}))},[B.companyDetailsLocalData?.addressStatus?.addressToCreate,B.companyDetailsLocalData?.registeredAddressStatus?.addressToCreate]);const J=B.isInterimEmailSent,xe=L.getSignedInUser();if(xe==null)throw Error("Can't access onboarding flow without signing in...");const ct=ve(p,m),dt=Oe(m),we=m.company?.companyOnboardingInfo.isOnboardingCompleted,Ae=g=>g.trackPageLoaded(de.Event.onboardingPage),Pe=m.productSettings.isOtherProductsEnabled,ut=m.productSettings.isTreasuryEnabled,De=Tn({tenantEmailDomain:T??"",signedInUserEmail:xe.userEmail??"",companyId:A}),je=(({companyId:g})=>{const N=ne(),ie=k(x=>x.onboardingCustomerViewState?.aiAgentsActivation),W=k(x=>Y(x).company?.companyOnboardingInfo?.onboardingInfo?.onboardingAiActivationInfo?.isOnboardingAiActivationViewed??!1),me=d.useCallback(()=>{N(Pt())},[N]);d.useEffect(()=>{me()},[me]);const Fe=d.useCallback(()=>{g==null||g===""||W||N(Dt(g))},[g,W,N]),lt=d.useMemo(()=>{if(g==null||g==="")return[];const x=`private-encrypted-${g}`;return[`${x}.ledger-ingestion.counts-updated`,`${x}.ai-agents-activation.phase-changed`]},[g]),pt=d.useCallback((x,ee)=>{if(ee==null||typeof ee!="object")return;const b=ee;if(x!=="ledger-ingestion.counts-updated"){if(x==="ai-agents-activation.phase-changed"){const re=typeof b.phase_key=="string"?b.phase_key:typeof b.key=="string"?b.key:"",X=typeof b.status=="string"?b.status:"idle";if(re==="")return;N(Ft({key:re,status:X==="starting"||X==="building"||X==="ready"?X:"idle",startedAt:typeof b.started_at=="string"?b.started_at:void 0,completedAt:typeof b.completed_at=="string"?b.completed_at:void 0}))}}else N(jt({customerCount:typeof b.customer_count=="number"?b.customer_count:void 0,glAccountCount:typeof b.gl_account_count=="number"?b.gl_account_count:void 0,targetTransactionCount:typeof b.target_transaction_count=="number"?b.target_transaction_count:void 0,transactionCount:typeof b.transaction_count=="number"?b.transaction_count:void 0,vendorCount:typeof b.vendor_count=="number"?b.vendor_count:void 0}))},[N]);return vn({events:lt,onEvent:pt,onSubscribed:me}),d.useMemo(()=>{const x=ie?.phases??[],ee=Ke(x,fe),b=Ke(x,ye),re=Qe(x,fe),X=Qe(x,ye),Be=x.some(ft=>ft.status!=="idle"),te=!W&&!Be,Ue=W&&!Be,mt=Ue?fe.map(()=>"building"):ee,gt=Ue?ye.map(()=>"building"):b;return{ledgerRowStatuses:te?void 0:mt,backgroundRowStatuses:te?void 0:gt,showLedgerReadyInLabel:te?void 0:re,showBackgroundReadyInLabel:te?void 0:X,forceContinueEnabled:!te||void 0,counts:ie?.counts,onContinueClicked:Fe}},[ie?.phases,ie?.counts,W,Fe])})({companyId:A});if(we===!0){if(!Pe)return ut?a.jsx(U,{to:"../../treasury"}):ct?a.jsx(U,{to:"../../checking"}):dt?a.jsx(U,{to:"../../cards"}):a.jsx(U,{to:"../../dashboard"});const g=B.updateStatus.fetchState==="In-Progress";if(Pe&&!g)return t?a.jsxs(qe,{children:[a.jsx(ae,{analytics:R,onLoad:N=>Ae(N)}),a.jsx(Ze,{navigate:o,location:l,companyId:A,currentTenant:m,isAdmin:se,isOnAddressPage:u,themeState:S,googleAPIKey:Se.googleMapsAPIKey,integrationsSectionProps:De,aiAgentsActivationProps:je}),i!=null?a.jsx(He,{windowSize:y,skipLegacyDrawerOffset:u&&m.productSettings.isOtherProductsEnabled!==!0,children:i}):null]}):a.jsx(U,{to:"../../onboarding/thankyou"})}else if(we===!1&&r?.loggedInUserRoleMap!=null)return J===!0?a.jsx(U,{to:"../../onboarding/thankyou"}):a.jsxs(qe,{children:[a.jsx(ae,{analytics:R,onLoad:g=>Ae(g)}),a.jsx(Ze,{navigate:o,location:l,companyId:A,currentTenant:m,isAdmin:se,isOnAddressPage:u,themeState:S,googleAPIKey:Se.googleMapsAPIKey,integrationsSectionProps:De,aiAgentsActivationProps:je}),i!=null?a.jsx(He,{windowSize:y,skipLegacyDrawerOffset:u&&m.productSettings.isOtherProductsEnabled!==!0,children:i}):null]});return null},he="external_integrations",Tn=({tenantEmailDomain:t,signedInUserEmail:u,companyId:i})=>{const o=ne(),{pendingAutoFocusTabId:l}=kn(),{plaidAccounts:c,onAddPlaidAccount:y}=_n({companyId:i}),S=k(r=>r.plaidAccountViewState.external_account.plaidConnectionDetails),e=k(r=>Y(r)),n=k(r=>r.tenantState.fetchState),s=k(r=>Lt(r,i)),C=k(r=>Rt(r,he)),_=d.useMemo(()=>new Set(C.map(r=>r.additionalInfo).filter(r=>r!=null)),[C]),I=e.tenantId,T=le(e.userRole??[]);return d.useEffect(()=>{o($t(he))},[o]),d.useMemo(()=>({isAdmin:T,integrationsView:s,isLoading:n==="In-Progress",notifyMeRegisteredSlugs:_,autoFocusTabId:l??void 0,saveChargeBeeState:s.externalConnections?.saveAPIKeyConnectionState??"Not-Started",saveChargeBeeError:s.externalConnections?.saveAPIKeyConnectionError?.message,saveHubSpotState:s.externalConnections?.saveOAuthConnectionState??"Not-Started",saveHubSpotError:s.externalConnections?.saveOAuthConnectionError?.message,saveConnectorCredentialsStateBySlug:s.externalConnections?.saveConnectorCredentialsStateBySlug??{},saveConnectorCredentialsErrorBySlug:Object.fromEntries(Object.entries(s.externalConnections?.saveConnectorCredentialsErrorBySlug??{}).map(([r,f])=>[r,f?.message])),deleteConnectionState:s.externalConnections?.deleteConnectionState??"Not-Started",deleteConnectionError:s.externalConnections?.deleteConnectionError?.message,onConnectGmail:()=>{o(Ge(I,"gmail",Xe()))},onConnectOutlook:()=>{o(Ge(I,"outlook",Xe()))},onConnectHubSpot:(r,f)=>{const p=s.externalConnections?.revenue?.find(O=>O.connectionName==="hubspot")?.connectionId;if(p==null)return;const v=`${window.location.origin}/oauth/hubspot/callback`;sessionStorage.setItem("hubspot_oauth_pending",JSON.stringify({client_id:r,client_secret:f,connection_id:p,redirect_uri:v,tenant_id:I})),window.location.href=`https://app.hubspot.com/oauth/authorize?client_id=${encodeURIComponent(r)}&scope=${encodeURIComponent("oauth crm.objects.deals.read crm.objects.owners.read")}&redirect_uri=${encodeURIComponent(v)}`},onDisconnect:(r,f)=>{o(qt(I,r,ge(f)))},onNotifyMe:r=>{R.trackIntegrationsNotifyMeClicked("Onboarding",r),o(Qt(he,r,u))},onReconnectQBO:()=>{oe.init("/onboarding/auth",t),oe.handleClick()},onRefreshClick:()=>{s.integrations.refreshQBO.fetchState!=="In-Progress"&&o(Kt())},onSaveChargeBeeCredentials:(r,f)=>{const p=s.externalConnections?.revenue?.find(v=>v.connectionName==="chargebee")?.connectionId;p!=null&&o(Mt(I,p,ge("revenue"),zt("chargebee"),{api_key:r,site:f}))},onSaveConnectorCredentials:r=>{o(Gt(I,ge("payments"),r))},plaidAccounts:c,onAddPlaidAccount:y,plaidConnectionDetails:S}),[T,s,n,_,l,I,u,t,o,c,y,S])};function Xe(){const t=new URL(window.location.href);return t.searchParams.set("onboarding_step","connect_data_source"),t.toString()}function Ye(t,u,i){let o=`/${t}/onboarding/address`;return o=i!=null?o.concat(`/edit/${u}/${encodeURIComponent(i)}`):o.concat(`/new/${u}`),o}const Je=Ee.div`
26
+ `,Ze=et(function(t,u){const{companyId:i,isAdmin:o,currentTenant:l,isOnAddressPage:c}=u,y=R.getSignedInUser(),S=l.tenantId,e={userId:y?.userId??"",sessionId:y?.zeniSessionId??"",tenantId:S??""},n=X(t),s=Te(t,i),C=it(t),v=le(l?.userRole??[])&&s.updateStatus.fetchState!=="In-Progress"?void 0:"readonly",I=Ht(t.userRoleConfigState);return{onboardingCustomerView:s,analytics:N,isRefreshingViewInBackground:!1,isDisabled:v,companyTitles:I.companyTitles,connectedAccountProvider:n.company?.featuresActivationInfo.connectedAccountProvider??"",fileProps:{filesEndPoint:_t.fileMicroServiceBaseUrl,authParams:e},signedInUser:R.getSignedInUser(),currentTenant:n,isAdmin:o,isOnAddressPage:c,meetingUrl:"https://meetings.hubspot.com/niharn/zeni-onboarding-overview?embed=true",cardPaymentView:C,isCardPaymentPopupOpen:!1,stripeKey:Se.stripeKey}},function(t,u){const{companyId:i,currentTenant:o,themeState:l,navigate:c,location:y}=u,{tenantEmailDomain:S}=o;return{onFetchLinkTokenClick:(e,n)=>{t(Sn(e,n))},onEstablishConnectionClick:(e,n)=>{t(hn(e,n))},onUpdatePaymentAccountStatus:(e,n,s)=>{t(yn(e,n,s))},onUpdatePaymentAccountLoginStatus:(e,n)=>{t(fn(!1,e,n))},onEstablishConnectionSuccess:()=>{t(gn(i,!0,!1))},handleOnConnectClick:()=>{N.trackOnboardingConnectQBO(),oe.handleClick()},updateQBOPopupState:e=>{t(ue({isQBOPopupOpen:e}))},onCompanyOfficerUpdated:e=>{const n=e.map(s=>{const{officerType:C,userId:v,name:I,email:T,ssn:r,nationalityCountryCode:f,dob:p,phone:_,syncToken:O,selectDocument:x,role:P,ownership:m,isSelectedForVerification:M,userVerificationStatus:j,fileIds:$,isPhoneVerified:G}=s;let w;return x.selectDocumentType==="driverLicense"?w="driving_license":x.selectDocumentType==="passport"?w="passport":x.selectDocumentType==="stateId"?w="id_document":x.selectDocumentType==="ssnCard"&&(w="social_security_card"),{officerType:C,userId:v,firstName:I.firstName,lastName:I.lastName,email:T,ssn:r,nationalityCountryCode:f?.selectedOption!=null?Me(f.selectedOption):void 0,phone:_,birthday:p!=null?Ge(p?.toString()):p,syncToken:O,titleAtCompany:P.selectedOption,ownershipInCompany:m,documentTypeSelectedForVerification:w,isSelectedForVerification:M,userVerificationStatus:j,fileIds:$,additionalDocumentTypesRequestedForVerification:[],additionalSubmittedDocumentsForVerificationFileIds:[],areAdditionalDocumentsRequestedForVerification:!1,areAdditionalDocumentsSubmittedForVerification:!1,isPhoneVerified:G}});t(ze({officers:n}))},onGetOtp:(e,n)=>{t(pn(e,"CustomerOnboarding")),n!=null&&t(mn({officerType:n,phone:e}))},onResendOtp:e=>{t(ln(e,"CustomerOnboarding"))},onVerifyOtp:(e,n)=>{t(un(e,n,"CustomerOnboarding"))},updateFilesEntity:e=>{t(dn({files:e}))},onDeleteFile:e=>{t(cn(e))},onEditFileName:(e,n)=>{t(rn(e,n.split(".")[0]))},onCompanyDetailsChanged:e=>{const{companyDescription:n,companyIndustry:s,companyIndustryType:C,companyLegalName:v,companyTaxId:I,companyWebsite:T,companyPhone:r,primaryContactEmail:f,primaryContactName:p,primaryContactUserId:_,primaryContactSyncToken:O,syncToken:x,fileIds:P,typeOfIncorporation:m,stateOfIncorporation:M,incDate:j,companySourceOfFunds:$,companySourceOfFundsDescription:G,companySubIndustry:w,countriesOfOperations:F,purposeOfAccount:Q,purposeOfAccountDescription:z,regulatedStatus:V,regulatedStatusDescription:h,transactionVolume:D,transactionVolumeDescription:Z,usNexus:A,usNexusTypes:se}=e,B={companyId:i,companyDescription:n,companyIndustry:s.selectedOption,companyIndustryType:C?.selectedOption??"",companyLegalName:v,taxIdOrEIN:I,website:T!=""&&T!=null?sn(T):void 0,phone:r,syncToken:x,fileIds:P,incDate:j!=null?Ge(j?.toString()):j,typeOfIncorporation:m?.selectedOption??"",stateOfIncorporation:M?.selectedOption??"",companySourceOfFunds:$?.selectedOption??"",companySourceOfFundsDescription:G,companySubIndustry:w?.selectedOption??"",countriesOfOperations:F?.selectedOptions.map(Y=>Y.length===2?Y:Me(Y))??[],purposeOfAccount:Q?.selectedOption??"",purposeOfAccountDescription:z,regulatedStatus:V??"",regulatedStatusDescription:h,transactionVolume:D?.selectedOption??"",transactionVolumeDescription:Z,usNexus:A,usNexusTypes:se?.selectedOptions??[]},pe={userId:_,firstName:p.firstName,lastName:p.lastName,email:f,syncToken:O};t(ze({companyDetails:B,primaryContactDetails:pe}))},onAddressClick:(e,n)=>{const s=Xe(S,e,n),C=K(y.state?.pathnameStackToGoBack,y.pathname);c(s,{state:{pathnameStackToGoBack:C}})},onRegisteredAddressClick:(e,n)=>{const s=Xe(S,e,n),C=K(y.state?.pathnameStackToGoBack,y.pathname);c(s,{state:{pathnameStackToGoBack:C}})},onUpdateCustomerView:(e,n,s)=>{t(on(i,!1,n,s,e))},onAddressEditHandler:e=>{if(e!=null){const n=yt(e);t(st({addressType:"subscription_billing_address",addressToCreate:n}))}},onSkipSetupClick:()=>{const e=K(y.state?.pathnameStackToGoBack,y.pathname);t(rt(i,!1,!1)),c("./activation",{state:{pathnameStackToGoBack:e}})},onUpdateStep:e=>{t(ot({step:e}))},onUpdateSubStep:e=>{t(an({subStep:e}))},onZeniLogoClick:()=>{l.toggle()},handleLogOutClick:()=>{const e=K(y.state?.pathnameStackToGoBack,y.pathname);c("/signout",{replace:!0,state:{pathnameStackToGoBack:e,message:"logout"}})},handleCockpitClick:()=>{window.open("/cockpit")},handleReferralsClick:()=>{c(`/${S}/rewards`)},handleCreateCardSetupIntent:e=>{t(at(e))},handleConfirmCardSetupIntent:e=>{t(nn(e))},updateCardPaymentModalState:e=>{t(ue({isCardPaymentPopupOpen:e}))},handleAddCardPaymentSource:(e,n,s)=>{t(tn(e,n,s))},handleFetchPaymentSources:()=>{t(Ce())},resetCardPaymentViewState:()=>{t(en())},handleResetCardPaymentErrorStatuses:()=>{t(Jt())},redirectToProductSuitePage:()=>{const e=K(y.state?.pathnameStackToGoBack,y.pathname);c(`/${S}/onboarding/thankyou`,{state:{pathnameStackToGoBack:e,message:"OnboardingThankyou"},replace:!0})},onAcknowledgeAiFinanceTeam:()=>{i!=null&&t(Yt(i))},onIdentityDocumentUploadedForAutofill:e=>{if(i==null)return;const n=Wt(e.documentType);n!=null&&t(Xt({target:"onboarding",companyId:i,officerType:e.officerType,fileId:e.fileId,documentType:n}))},onCompanyDocumentUploadedForAutofill:e=>{i!=null&&t(Zt({target:"onboarding",companyId:i,fileId:e.fileId,documentType:e.documentType}))}}})(vt),ce=({taxCFOCustomer:t=!1,isOnAddressPage:u=!1,appContent:i})=>{const o=be(),l=Ie(),c=ne(),y=kt(),S=tt(),[e,n]=d.useState(!1),[s,C]=d.useState(!1),[v,I]=d.useState(!1),{tenantEmailDomain:T}=ke(),r=nt(),{useFeatureGate:f}=ve(),{isFeatureEnabled:p}=f(H.isDebitCardFeatureEnabled),_=St("/:tenantEmailDomain/onboarding")!==null&&l.search?.includes("code"),O=k(g=>g.onboardingCustomerViewState.fetchState),x=k(g=>g.onboardingCustomerViewState.currentStep),P=k(g=>g.onboardingCustomerViewState.uiState),m=k(g=>X(g)),M=k(g=>g.userRoleConfigState.fetchState),j=k(g=>g.cardPaymentViewState),$=Le(j.addCardPaymentSourceStatus.fetchState),G=j.addCardPaymentSourceStatus.fetchState,{code:w,realmId:F,state:Q}=bn(l.search),z=m.externalConnections?.accounting[0],V=z?.connectionType,h=z?.connectionName,D=z?.connectionId??"",Z=R.getSignedInUser()?.userId??"";d.useEffect(()=>{s||(C(!0),c(Ce()))},[s,c]),d.useEffect(()=>{v||(at(["card"]),I(!0))},[v]),d.useEffect(()=>{$==="In-Progress"&&G==="Completed"&&c(Ce())},[$,G]),d.useEffect(()=>{In(w,F,Q,D,Z)===!0&&m.externalConnections?.saveConnectionState!=="In-Progress"&&O==="Completed"&&(c(Bt(m.tenantId,{connection_type:V??"accounting",connection_name:h??"quickbooks_online",authorization_code:w,realm_id:F,connection_id:D,user_id:Z},Ut(window.location.origin+"/onboarding/auth"))),N.trackOnboardingSaveQBOConnection(F,D),o(l.pathname))},[w,F,Q,l.pathname,O]),d.useEffect(()=>{oe.isInitiated===!1&&O==="Completed"&&oe.init("/onboarding/auth",m.tenantEmailDomain)},[O]);const A=m.companyId??R.getSignedInUserTenant(T)?.companyId,se=le(m?.userRole??[]),B=k(g=>Te(g,A));d.useEffect(()=>{e||O!=="Not-Started"||A==null||(n(!0),c(Vt(A,!0,!_)))},[e,O,A]),d.useEffect(()=>{m.externalConnections?.saveConnectionState!=="Completed"&&m.externalConnections?.saveConnectionState!=="Error"||!P.isQBOPopupOpen||x!=="connect_ledger"||c(ue({isQBOPopupOpen:!1}))},[m.externalConnections?.saveConnectionState]),d.useEffect(()=>{O==="Completed"&&_&&(c(ot({step:"connect_ledger"})),c(ue({isQBOPopupOpen:!0})))},[_,O]),d.useEffect(()=>{M==="Not-Started"&&c(Lt(!0))},[M,c]);const pe=Le(B.companyDetailsLocalData?.addressStatus);d.useEffect(()=>{B.companyDetailsLocalData?.registeredAddressStatus?.addressToCreate==null&&B.companyDetailsLocalData?.addressStatus?.addressToCreate!=null&&pe==null&&c(st({addressType:"company_registered_address",addressToCreate:B.companyDetailsLocalData?.addressStatus?.addressToCreate}))},[B.companyDetailsLocalData?.addressStatus?.addressToCreate,B.companyDetailsLocalData?.registeredAddressStatus?.addressToCreate]);const Y=B.isInterimEmailSent,Ee=R.getSignedInUser();if(Ee==null)throw Error("Can't access onboarding flow without signing in...");const ct=_e(p,m),dt=Oe(m),we=m.company?.companyOnboardingInfo.isOnboardingCompleted,Ae=g=>g.trackPageLoaded(de.Event.onboardingPage),Pe=m.productSettings.isOtherProductsEnabled,ut=m.productSettings.isTreasuryEnabled,De=Tn({tenantEmailDomain:T??"",signedInUserEmail:Ee.userEmail??"",companyId:A}),je=(({companyId:g})=>{const L=ne(),ie=k(E=>E.onboardingCustomerViewState?.aiAgentsActivation),J=k(E=>X(E).company?.companyOnboardingInfo?.onboardingInfo?.onboardingAiActivationInfo?.isOnboardingAiActivationViewed??!1),me=d.useCallback(()=>{L(Pt())},[L]);d.useEffect(()=>{me()},[me]);const Fe=d.useCallback(()=>{g==null||g===""||J||L(Dt(g))},[g,J,L]),lt=d.useMemo(()=>{if(g==null||g==="")return[];const E=`private-encrypted-${g}`;return[`${E}.ledger-ingestion.counts-updated`,`${E}.ai-agents-activation.phase-changed`]},[g]),pt=d.useCallback((E,ee)=>{if(ee==null||typeof ee!="object")return;const b=ee;if(E!=="ledger-ingestion.counts-updated"){if(E==="ai-agents-activation.phase-changed"){const re=typeof b.phase_key=="string"?b.phase_key:typeof b.key=="string"?b.key:"",W=typeof b.status=="string"?b.status:"idle";if(re==="")return;L(Ft({key:re,status:W==="starting"||W==="building"||W==="ready"?W:"idle",startedAt:typeof b.started_at=="string"?b.started_at:void 0,completedAt:typeof b.completed_at=="string"?b.completed_at:void 0}))}}else L(jt({customerCount:typeof b.customer_count=="number"?b.customer_count:void 0,glAccountCount:typeof b.gl_account_count=="number"?b.gl_account_count:void 0,targetTransactionCount:typeof b.target_transaction_count=="number"?b.target_transaction_count:void 0,transactionCount:typeof b.transaction_count=="number"?b.transaction_count:void 0,vendorCount:typeof b.vendor_count=="number"?b.vendor_count:void 0}))},[L]);return _n({events:lt,onEvent:pt,onSubscribed:me}),d.useMemo(()=>{const E=ie?.phases??[],ee=Ke(E,fe),b=Ke(E,ye),re=Qe(E,fe),W=Qe(E,ye),Be=E.some(ft=>ft.status!=="idle"),te=!J&&!Be,Ue=J&&!Be,mt=Ue?fe.map(()=>"building"):ee,gt=Ue?ye.map(()=>"building"):b;return{ledgerRowStatuses:te?void 0:mt,backgroundRowStatuses:te?void 0:gt,showLedgerReadyInLabel:te?void 0:re,showBackgroundReadyInLabel:te?void 0:W,forceContinueEnabled:!te||void 0,counts:ie?.counts,onContinueClicked:Fe}},[ie?.phases,ie?.counts,J,Fe])})({companyId:A});if(we===!0){if(!Pe)return ut?a.jsx(U,{to:"../../treasury"}):ct?a.jsx(U,{to:"../../checking"}):dt?a.jsx(U,{to:"../../cards"}):a.jsx(U,{to:"../../dashboard"});const g=B.updateStatus.fetchState==="In-Progress";if(Pe&&!g)return t?a.jsxs(qe,{children:[a.jsx(ae,{analytics:N,onLoad:L=>Ae(L)}),a.jsx(Ze,{navigate:o,location:l,companyId:A,currentTenant:m,isAdmin:se,isOnAddressPage:u,themeState:S,googleAPIKey:Se.googleMapsAPIKey,integrationsSectionProps:De,aiAgentsActivationProps:je}),i!=null?a.jsx(He,{windowSize:y,skipLegacyDrawerOffset:u&&m.productSettings.isOtherProductsEnabled!==!0,children:i}):null]}):a.jsx(U,{to:"../../onboarding/thankyou"})}else if(we===!1&&r?.loggedInUserRoleMap!=null)return Y===!0?a.jsx(U,{to:"../../onboarding/thankyou"}):a.jsxs(qe,{children:[a.jsx(ae,{analytics:N,onLoad:g=>Ae(g)}),a.jsx(Ze,{navigate:o,location:l,companyId:A,currentTenant:m,isAdmin:se,isOnAddressPage:u,themeState:S,googleAPIKey:Se.googleMapsAPIKey,integrationsSectionProps:De,aiAgentsActivationProps:je}),i!=null?a.jsx(He,{windowSize:y,skipLegacyDrawerOffset:u&&m.productSettings.isOtherProductsEnabled!==!0,children:i}):null]});return null},he="external_integrations",Tn=({tenantEmailDomain:t,signedInUserEmail:u,companyId:i})=>{const o=ne(),{pendingAutoFocusTabId:l}=kn(),{plaidAccounts:c,onAddPlaidAccount:y}=vn({companyId:i}),S=k(r=>r.plaidAccountViewState.external_account.plaidConnectionDetails),e=k(r=>X(r)),n=k(r=>r.tenantState.fetchState),s=k(r=>Rt(r,i)),C=k(r=>Nt(r,he)),v=d.useMemo(()=>new Set(C.map(r=>r.additionalInfo).filter(r=>r!=null)),[C]),I=e.tenantId,T=le(e.userRole??[]);return d.useEffect(()=>{o(Mt(he))},[o]),d.useMemo(()=>({isAdmin:T,integrationsView:s,isLoading:n==="In-Progress",notifyMeRegisteredSlugs:v,autoFocusTabId:l??void 0,saveChargeBeeState:s.externalConnections?.saveAPIKeyConnectionState??"Not-Started",saveChargeBeeError:s.externalConnections?.saveAPIKeyConnectionError?.message,saveHubSpotState:s.externalConnections?.saveOAuthConnectionState??"Not-Started",saveHubSpotError:s.externalConnections?.saveOAuthConnectionError?.message,saveConnectorCredentialsStateBySlug:s.externalConnections?.saveConnectorCredentialsStateBySlug??{},saveConnectorCredentialsErrorBySlug:Object.fromEntries(Object.entries(s.externalConnections?.saveConnectorCredentialsErrorBySlug??{}).map(([r,f])=>[r,f?.message])),deleteConnectionState:s.externalConnections?.deleteConnectionState??"Not-Started",deleteConnectionError:s.externalConnections?.deleteConnectionError?.message,onConnectGmail:()=>{o($e(I,"gmail",We()))},onConnectOutlook:()=>{o($e(I,"outlook",We()))},onConnectHubSpot:(r,f)=>{const p=s.externalConnections?.revenue?.find(O=>O.connectionName==="hubspot")?.connectionId;if(p==null)return;const _=`${window.location.origin}/oauth/hubspot/callback`;sessionStorage.setItem("hubspot_oauth_pending",JSON.stringify({client_id:r,client_secret:f,connection_id:p,redirect_uri:_,tenant_id:I})),window.location.href=`https://app.hubspot.com/oauth/authorize?client_id=${encodeURIComponent(r)}&scope=${encodeURIComponent("oauth crm.objects.deals.read crm.objects.owners.read")}&redirect_uri=${encodeURIComponent(_)}`},onDisconnect:(r,f)=>{o(qt(I,r,ge(f)))},onNotifyMe:r=>{N.trackIntegrationsNotifyMeClicked("Onboarding",r),o(Qt(he,r,u))},onReconnectQBO:()=>{oe.init("/onboarding/auth",t),oe.handleClick()},onRefreshClick:()=>{s.integrations.refreshQBO.fetchState!=="In-Progress"&&o(Kt())},onSaveChargeBeeCredentials:(r,f)=>{const p=s.externalConnections?.revenue?.find(_=>_.connectionName==="chargebee")?.connectionId;p!=null&&o(Gt(I,p,ge("revenue"),zt("chargebee"),{api_key:r,site:f}))},onSaveConnectorCredentials:r=>{o($t(I,ge("payments"),r))},plaidAccounts:c,onAddPlaidAccount:y,plaidConnectionDetails:S}),[T,s,n,v,l,I,u,t,o,c,y,S])};function We(){const t=new URL(window.location.href);return t.searchParams.set("onboarding_step","connect_data_source"),t.toString()}function Xe(t,u,i){let o=`/${t}/onboarding/address`;return o=i!=null?o.concat(`/edit/${u}/${encodeURIComponent(i)}`):o.concat(`/new/${u}`),o}const Ye=xe.div`
27
27
  display: flex;
28
28
  height: 100vh;
29
29
  background-color: ${t=>t.theme.colors.grey4};
30
- `,We=et(function(t,u){const{companyId:i,currentTenant:o}=u,l=Te(t,i),c=it(t);return{hasVerifiedBankAccount:(l.paymentAccount?.providerVerificationStatus?.code?.includes("verified")??!1)||(c.bankAccountsList[0]?.providerVerificationStatus?.code?.includes("verified")??!1),isDisabled:le(o?.userRole??[])&&l.updateStatus.fetchState!=="In-Progress"?void 0:"readonly",signedInUser:L.getSignedInUser(),currentTenant:o,meetingUrl:"https://meetings.hubspot.com/niharn/zeni-onboarding-overview?embed=true"}},function(t,u){const{currentTenant:i,themeState:o,navigate:l,location:c}=u,{tenantEmailDomain:y}=i;return{onZeniLogoClick:()=>{o.toggle()},handleLogOutClick:()=>{const S=K(c.state?.pathnameStackToGoBack,c.pathname);l("/signout",{replace:!0,state:{pathnameStackToGoBack:S,message:"logout"}})},handleCockpitClick:()=>{window.open("/cockpit")},handleReferralsClick:()=>{l(`/${y}/rewards`)},handleUpdatePaymentAddressDetailClick:()=>{const S=K(c.state?.pathnameStackToGoBack,c.pathname);l(`/${y}/onboarding/billing/edit`,{state:{pathnameStackToGoBack:S,message:"UpdatePaymentAddressDetail"}})}}})(Tt),En=()=>{const t=be(),u=ne(),i=Ie(),o=tt(),{useFeatureGate:l}=_e(),{isFeatureEnabled:c}=l(H.isDebitCardFeatureEnabled),{tenantEmailDomain:y}=ke(),S=nt(),[e,n]=d.useState(!1);d.useEffect(()=>{e===!1&&i.state?.message==="OnboardingThankyou"&&n(!0)},[i.state]);const s=k(p=>Y(p)),C=s.productSettings.isOtherProductsEnabled;d.useEffect(()=>{u(rt(_,!1,!C))},[]);const _=s.companyId??L.getSignedInUserTenant(y)?.companyId;if(S.loggedInUser==null)throw Error("Can't access onboarding flow without signing in...");const I=ve(c,s),T=Oe(s),r=k(p=>p.onboardingCustomerViewState.updateStatus.fetchState),f=s.company?.companyOnboardingInfo.isOnboardingCompleted;if(f!==!0||C)return r==="Completed"&&f===!0&&C&&S?.loggedInUserRoleMap!=null?a.jsxs(Je,{children:[a.jsx(ae,{analytics:R,onLoad:p=>{p.trackPageLoaded(de.Event.onboardingLandingPage,"Onboarding",Cn(s.productSettings))}}),a.jsx(We,{navigate:t,showUpdatePaymentDetailButton:C,location:i,companyId:_,currentTenant:s,themeState:o,isVisitingFirstTime:e})]}):r==="Completed"&&f===!1&&S?.loggedInUserRoleMap!=null?a.jsxs(Je,{children:[a.jsx(ae,{analytics:R,onLoad:p=>{p.trackPageLoaded(de.Event.onboardingInterimPage)}}),a.jsx(We,{navigate:t,showUpdatePaymentDetailButton:C,location:i,companyId:_,currentTenant:s,themeState:o,isVisitingFirstTime:e})]}):a.jsx(Ot,{});{const p={pathnameStackToGoBack:i.state?.pathnameStackToGoBack,message:"activation"};return I?a.jsx(U,{to:"../../checking",state:p,replace:!0}):T?a.jsx(U,{to:"../../cards",state:p,replace:!0}):a.jsx(U,{to:"../../dashboard",state:p,replace:!0})}};function ea(){return a.jsxs(Ct,{children:[a.jsx(q,{path:"/",element:a.jsx(ce,{})}),a.jsx(q,{path:"/billing/edit",element:a.jsx(ce,{taxCFOCustomer:!0})}),a.jsx(q,{path:"/thankyou",element:a.jsx(En,{})}),a.jsx(q,{path:"/activation",element:a.jsx(On,{})}),a.jsx(q,{path:"/address/edit/:addressType/:addressId",element:a.jsx(ce,{isOnAddressPage:!0,appContent:a.jsx(Ve,{})})}),a.jsx(q,{path:"/address/new/:addressType",element:a.jsx(ce,{isOnAddressPage:!0,appContent:a.jsx(Ve,{})})}),a.jsx(q,{path:"*",element:a.jsx(ht,{})})]})}export{ea as default};
30
+ `,Je=et(function(t,u){const{companyId:i,currentTenant:o}=u,l=Te(t,i),c=it(t);return{hasVerifiedBankAccount:(l.paymentAccount?.providerVerificationStatus?.code?.includes("verified")??!1)||(c.bankAccountsList[0]?.providerVerificationStatus?.code?.includes("verified")??!1),isDisabled:le(o?.userRole??[])&&l.updateStatus.fetchState!=="In-Progress"?void 0:"readonly",signedInUser:R.getSignedInUser(),currentTenant:o,meetingUrl:"https://meetings.hubspot.com/niharn/zeni-onboarding-overview?embed=true"}},function(t,u){const{currentTenant:i,themeState:o,navigate:l,location:c}=u,{tenantEmailDomain:y}=i;return{onZeniLogoClick:()=>{o.toggle()},handleLogOutClick:()=>{const S=K(c.state?.pathnameStackToGoBack,c.pathname);l("/signout",{replace:!0,state:{pathnameStackToGoBack:S,message:"logout"}})},handleCockpitClick:()=>{window.open("/cockpit")},handleReferralsClick:()=>{l(`/${y}/rewards`)},handleUpdatePaymentAddressDetailClick:()=>{const S=K(c.state?.pathnameStackToGoBack,c.pathname);l(`/${y}/onboarding/billing/edit`,{state:{pathnameStackToGoBack:S,message:"UpdatePaymentAddressDetail"}})}}})(Tt),xn=()=>{const t=be(),u=ne(),i=Ie(),o=tt(),{useFeatureGate:l}=ve(),{isFeatureEnabled:c}=l(H.isDebitCardFeatureEnabled),{tenantEmailDomain:y}=ke(),S=nt(),[e,n]=d.useState(!1);d.useEffect(()=>{e===!1&&i.state?.message==="OnboardingThankyou"&&n(!0)},[i.state]);const s=k(p=>X(p)),C=s.productSettings.isOtherProductsEnabled;d.useEffect(()=>{u(rt(v,!1,!C))},[]);const v=s.companyId??R.getSignedInUserTenant(y)?.companyId;if(S.loggedInUser==null)throw Error("Can't access onboarding flow without signing in...");const I=_e(c,s),T=Oe(s),r=k(p=>p.onboardingCustomerViewState.updateStatus.fetchState),f=s.company?.companyOnboardingInfo.isOnboardingCompleted;if(f!==!0||C)return r==="Completed"&&f===!0&&C&&S?.loggedInUserRoleMap!=null?a.jsxs(Ye,{children:[a.jsx(ae,{analytics:N,onLoad:p=>{p.trackPageLoaded(de.Event.onboardingLandingPage,"Onboarding",Cn(s.productSettings))}}),a.jsx(Je,{navigate:t,showUpdatePaymentDetailButton:C,location:i,companyId:v,currentTenant:s,themeState:o,isVisitingFirstTime:e})]}):r==="Completed"&&f===!1&&S?.loggedInUserRoleMap!=null?a.jsxs(Ye,{children:[a.jsx(ae,{analytics:N,onLoad:p=>{p.trackPageLoaded(de.Event.onboardingInterimPage)}}),a.jsx(Je,{navigate:t,showUpdatePaymentDetailButton:C,location:i,companyId:v,currentTenant:s,themeState:o,isVisitingFirstTime:e})]}):a.jsx(Ot,{});{const p={pathnameStackToGoBack:i.state?.pathnameStackToGoBack,message:"activation"};return I?a.jsx(U,{to:"../../checking",state:p,replace:!0}):T?a.jsx(U,{to:"../../cards",state:p,replace:!0}):a.jsx(U,{to:"../../dashboard",state:p,replace:!0})}};function ea(){return a.jsxs(Ct,{children:[a.jsx(q,{path:"/",element:a.jsx(ce,{})}),a.jsx(q,{path:"/billing/edit",element:a.jsx(ce,{taxCFOCustomer:!0})}),a.jsx(q,{path:"/thankyou",element:a.jsx(xn,{})}),a.jsx(q,{path:"/activation",element:a.jsx(On,{})}),a.jsx(q,{path:"/address/edit/:addressType/:addressId",element:a.jsx(ce,{isOnAddressPage:!0,appContent:a.jsx(Ve,{})})}),a.jsx(q,{path:"/address/new/:addressType",element:a.jsx(ce,{isOnAddressPage:!0,appContent:a.jsx(Ve,{})})}),a.jsx(q,{path:"*",element:a.jsx(ht,{})})]})}export{ea as default};
@@ -1,20 +1,20 @@
1
- import{j as d}from"./liveblocks-DJRxBaIV.js";import{i as K,j as k,g as H,u as $,h as W,n as ee,k as ra,o as bt,p as O}from"./core-Deu6zgNz.js";import{eX as L,No as We,bE as ia,bo as xe,OC as wn,i$ as On,OD as Kt,OE as Fn,j2 as Ct,OF as qe,OG as Rn,j7 as Bn,OH as Zt,OI as jn,jb as _t,OJ as Qe,OK as Mn,cp as yt,OL as Un,OM as Ln,NI as Gn,k3 as Vn,ON as Yn,bn as Xe,OO as ca,Nc as ce,bc as la,kh as da,oi as ua,k0 as ma,Ne as le,Nd as J,eW as pa,fs as Nn,g3 as kt,OP as $n,OQ as zn,OR as ha,OS as Oe,vU as Me,vV as Ue,wg as De,wa as de,vZ as Le,OT as Kn,OU as Zn,OV as qn,OW as fa,OX as Fe,OY as Qn,dK as Je,sb as ga,OZ as Hn,O_ as Wn,O$ as Xn,P0 as At,Mu as vt,kx as Pe,wo as It,sj as Jn,P1 as eo,vW as qt,se as Ee,sa as ba,P2 as ge,P3 as to,P4 as Et,Mt as Tt,uj as Ca,P5 as ao,P6 as no,P7 as oo,P8 as xt,uz as so,P9 as ro,vY as Qt,ui as _a,Pa as be,Pb as io,bs as ka,ws as Sa,Pc as co,Pd as lo,Pe as uo,Pf as Dt,wn as mo,Pg as po,vX as Ht,wr as ya,Ph as Ce,Pi as ho,Pj as fo,Pk as Aa,km as va,of as Ia,kr as Ea,od as Ta,oc as xa,ob as Da,tH as go,Pl as bo,cT as Co,cU as _o,o8 as ko,fS as So,op as yo,GF as dt,Gx as Ao,GB as vo,Pm as Io,Pn as Eo,Po as To,b5 as et,fK as xo,hJ as Do,gj as Po,oj as wo,jV as Oo,og as Fo,oe as Ro,fE as Bo,fC as jo}from"./zeni-epic-state-Bs-2KETC.js";import{z as M,a4 as te,v as D,d as T,a as Z,a_ as Mo,a0 as Ge,D as Ve,a$ as Pa,f as Y,b0 as Uo,I as ke,b1 as wa,C as Se,G as B,y as Lo,b2 as Go,b3 as Vo,Z as Oa,K as Fa,c as Ra,$ as Yo,b4 as No,X as $o,aS as Ba,a1 as se,b5 as ja,b6 as Ma,a3 as Ua,b7 as zo,b8 as Ko,S as Zo,ar as qo,p as Qo,_ as Ho,b9 as Wo,ba as Xo,bb as Jo,bc as es,bd as _e}from"./index-D1FLsJEr.js";import{n as Pt}from"./mui-2-6pepya.js";import{a as b}from"./sentry-CCv9H2LX.js";import{w as La}from"./withTransactionSidePanel-DGRTBEXL.js";import{c as Ga,t as we,f as ue,a as wt,v as ts}from"./routePaths-DnU4nZVO.js";import{u as ae}from"./useAskAiCfoHostNavButtonProps-BSeuzuMu.js";import je from"./NotFoundScreen-L94hFyts.js";import{u as Ot}from"./useInitialThreadRequest-BLJkGJ7X.js";import{t as Va}from"./analyticsHelper-Ds6_JcxE.js";import{C as as}from"./CompanyPassportScreen-iguimt1Z.js";import{u as ns}from"./useAiCfoDashboardSuggestedQuestionsChips-2UTOy-pu.js";import{F as os}from"./FeaturePreviewScreen-CzJwTXfy.js";import{R as ss}from"./ReferralListScreen-BI2I20EQ.js";import"./recharts-DhkBu8Nc.js";import"./analytics-Dx20Frgp.js";import"./plaid-CAtEruxd.js";import"./dnd-CQEwIj2b.js";import"./stripe-DMRn4zHo.js";import"./lottie-CqN_xVLe.js";import"./lexical-C3dsnw0c.js";import"./pdf-DoNTLdQS.js";import"./utils-Fa4tVlqJ.js";import"./TransactionDetailScreen-DgWPeyaq.js";import"./decodeURIComponentSafe-B2B9XdGW.js";import"./MobileAppDrawer-DdLzgZKv.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]="3615b7cd-23b9-45c5-8708-3a685f9272a8",e._sentryDebugIdIdentifier="sentry-dbid-3615b7cd-23b9-45c5-8708-3a685f9272a8")}catch{}})();const rs=La(function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{vendorId:o,reportDate:r}=K(),s=M.getSignedInUser(),i=k(I=>I.tenantState.currentTenantId),c=k(I=>L(I)),{tenantEmailDomain:m}=K(),g=H(),C=c?.companyName??"",u={userId:s?.userId??"",sessionId:s?.zeniSessionId??"",tenantId:i??""},l=b.useMemo(()=>({authParams:u,companyName:C,downloadEndPoint:`${te}/agingDetailedReport`,timezone:We()}),[]),h=b.useMemo(()=>r!=null?ia(r):xe(),[r]),p=$(),f=W(),S=k(I=>wn(I,h,o)),E=b.useCallback(()=>{o!=null&&S.fetchState!=="In-Progress"&&S.fetchState!=="Completed"&&p(On(o,h))},[h]),A=b.useCallback(()=>{f("../../",{relative:"path"})},[]),_=b.useCallback((I,U)=>{p(Kt({sortKey:I,sortOrder:U}))},[]),x=b.useCallback(I=>{p(Kt({downloadState:I}))},[]),P=b.useCallback(I=>{if(e)e(I.transactionId,I.transactionType);else if(m!=null){const U=Ga({id:I.transactionId,type:I.transactionType},m);f(U);const ne=D(g.state?.pathnameStackToGoBack,g.pathname);f(U,{state:{pathnameStackToGoBack:ne}})}},[m,e]),y=b.useCallback(()=>{S.vendor!=null&&T.trackApAgingDetail("AP Aging",h.format(Z.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),S.vendor.id,S.vendor.name)},[S.vendor,h]);return b.useEffect(()=>{E()},[]),b.useEffect(()=>{S.fetchState==="Completed"&&y()},[y,S.fetchState]),d.jsx(Mo,{apAgingDetail:S,downloadParams:l,reportDate:h,analytics:T,onTransactionClick:P,onReload:E,onBackClick:A,onColumnSortConfigChanged:_,updateDownloadStateHandler:x,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})}),is=()=>{const e=$(),a=W(),t=k(_=>Fn(_)),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=ae({mobileExploreReferrer:"AP Aging"});Ge({isDataReady:t.fetchState==="Completed"});const r=M.getSignedInUser(),s=k(_=>_.tenantState.currentTenantId),i=k(_=>L(_)),c=i?.companyName??"",m={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s??""},g=b.useMemo(()=>({authParams:m,companyName:c,downloadEndPoint:`${te}/agingReport`,timezone:We()}),[]),C=t.apAgingUIState.selectedDate??xe(),u=b.useCallback(()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(Ct(C))},[]);b.useEffect(()=>{u()},[]);const l=b.useCallback(()=>{a("../",{relative:"path"})},[]),h=b.useCallback(_=>{e(qe({searchString:_}))},[]),p=b.useCallback((_,x)=>{e(qe({sortKey:x,sortOrder:_}))},[]),f=b.useCallback(_=>{a(`./${_}/${C.format(Z.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)},[C]),S=b.useCallback(_=>{e(qe({downloadState:_}))},[]),E=b.useCallback((_,x)=>{},[]),A=b.useCallback((_,x)=>{e(qe({selectedDate:_,agingDateSelectionType:x})),e(Ct(_))},[]);return d.jsxs(d.Fragment,{children:[t.fetchState==="Completed"?d.jsx(Ve,{analytics:T,onLoad:_=>_.trackPageLoaded(Y.Event.agingReport,"AP Aging")}):null,d.jsx(Pa,{uiState:t.apAgingUIState,report:t,downloadParams:g,analytics:T,onReloadReport:u,onBackClick:l,onSearchTextChange:h,onSortOrderChange:p,onEntityNameClick:f,updateDownloadStateHandler:S,onSelectedDateChanged:A,onNodeCollapseToggled:E,isAiCfoAccessEnabled:n,onAskAiCfoClick:o})]})},cs=La(function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{customerId:o,reportDate:r}=K(),s=M.getSignedInUser(),i=k(y=>L(y)),{tenantEmailDomain:c}=K(),m=H(),g=i.companyName,C={userId:s?.userId??"",sessionId:s?.zeniSessionId??"",tenantId:i.tenantId},u=b.useMemo(()=>({authParams:C,companyName:g,downloadEndPoint:`${te}/agingDetailedReport`,timezone:We()}),[]),l=b.useMemo(()=>r!=null?ia(r):xe(),[r]),h=$(),p=W(),f=k(y=>Rn(y,l,o)),S=b.useCallback(()=>{o!=null&&f.fetchState!=="In-Progress"&&f.fetchState!=="Completed"&&h(Bn(o,l))},[l]),E=b.useCallback(()=>{p("../../",{relative:"path"})},[]),A=b.useCallback((y,I)=>{h(Zt({sortKey:y,sortOrder:I}))},[]),_=b.useCallback(y=>{h(Zt({downloadState:y}))},[]),x=b.useCallback(y=>{if(e)e(y.transactionId,y.transactionType);else if(c!=null){const I=Ga({id:y.transactionId,type:y.transactionType},c);p(I);const U=D(m.state?.pathnameStackToGoBack,m.pathname);p(I,{state:{pathnameStackToGoBack:U}})}},[c,e]),P=b.useCallback(()=>{f.customer!=null&&T.trackArAgingDetail("AR Aging",l.format(Z.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),f.customer.id,f.customer.name)},[f.customer,l]);return b.useEffect(()=>{S()},[]),b.useEffect(()=>{f.fetchState==="Completed"&&P()},[f.fetchState,P]),d.jsx(Uo,{arAgingDetail:f,downloadParams:u,reportDate:l,analytics:T,onTransactionClick:x,onReload:S,onBackClick:E,onColumnSortConfigChanged:A,updateDownloadStateHandler:_,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})}),ls=()=>{const e=$(),a=W(),t=k(A=>jn(A)),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=ae({mobileExploreReferrer:"AR Aging"});Ge({isDataReady:t.fetchState==="Completed"});const r=M.getSignedInUser(),s=k(A=>L(A)),i=s.companyName,c={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s.tenantId},m=b.useMemo(()=>({authParams:c,companyName:i,downloadEndPoint:`${te}/agingReport`,timezone:We()}),[]),g=t.arAgingUIState.selectedDate??xe(),C=b.useCallback(()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(_t(g))},[]);b.useEffect(()=>{C()},[]);const u=b.useCallback(()=>{a("../",{relative:"path"})},[]),l=b.useCallback(A=>{e(Qe({searchString:A}))},[]),h=b.useCallback((A,_)=>{e(Qe({sortKey:_,sortOrder:A}))},[]),p=b.useCallback(A=>{a(`./${A}/${g.format(Z.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)},[g]),f=b.useCallback(A=>{e(Qe({downloadState:A}))},[]),S=b.useCallback((A,_)=>{e(Qe({selectedDate:A,agingDateSelectionType:_})),e(_t(A))},[]),E=b.useCallback((A,_)=>{e(Mn({nodeId:A,isCollapsed:_}))},[]);return d.jsxs(d.Fragment,{children:[t.fetchState==="Completed"?d.jsx(Ve,{analytics:T,onLoad:A=>A.trackPageLoaded(Y.Event.agingReport,"AR Aging")}):null,d.jsx(Pa,{uiState:t.arAgingUIState,report:t,downloadParams:m,analytics:T,onReloadReport:C,onBackClick:u,onSearchTextChange:l,onSortOrderChange:h,onEntityNameClick:p,updateDownloadStateHandler:f,onSelectedDateChanged:S,onNodeCollapseToggled:E,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=Gn(a.firstMonthOfFY);return{onItemClick:(n,o)=>{const r=o.accountName===""?o.accountDescription:o.accountName,s=we(a.tenantEmailDomain,o.accountId,o.accountType,r,"quarter",t,!1),i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i,referrer:a.referrerType}})},onSetAccountsStatementDate:(n,o)=>{e(Vn(n,o))},onPromoCardBtnClick:n=>{if(a.isZeniAccountsAdmin){let o=`../../checking/${n}`;n?T.trackZeniAccountsCashBalancePromoClicked("Move Money"):(T.trackZeniAccountsCashBalancePromoClicked("Sign Up for Free"),o="../../checking/promo");const r=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(o,{state:{pathnameStackToGoBack:r}})}else T.trackZeniAccountsCashBalancePromoClicked("Learn More"),window.open("https://www.zeni.ai/product/business-checking-accounts","_blank")}}}const ds=ee(function(e){const a=Un(e).accountsInOrder.map((n,o)=>Ya(n,o)),t=Ln(e);return{sectionTitle:Z.getLocalizedStrings().balanceCard.cashBalanceSectionTitle,transactionArray:a,zeniAccountsPromoCardReport:t,fetchState:e.cashBalanceState.fetchState,analytics:T}},Na)(wa),us=ee(function(e){const a=Yn(e).accountsInOrder.map((o,r)=>Ya(o,r)),t=M.getSignedInUser(),n=Xe(t);return{sectionTitle:Z.getLocalizedStrings().balanceCard.cardBalanceSectionTitle,transactionArray:a,isZeniUser:n,fetchState:e.cardBalanceState.fetchState,analytics:T}},Na)(wa);function ms(){const e=W(),a=H(),{tenantEmailDomain:t}=K(),n=ke(),o=k(s=>L(s).company?.companyInfo.firstMonthOfFY??1),r=yt(n?.loggedInUserRoleMap);return k(s=>s.cashBalanceState.fetchState)==="Error"?d.jsx(je,{}):d.jsx(ds,{tenantEmailDomain:t,location:a,referrerType:"Cash Balance",navigate:e,isZeniAccountsAdmin:r,firstMonthOfFY:o})}function ps(){const e=W(),a=H(),{tenantEmailDomain:t}=K(),n=ke(),o=yt(n?.loggedInUserRoleMap),r=k(s=>L(s).company?.companyInfo.firstMonthOfFY??1);return k(s=>s.cardBalanceState.fetchState)==="Error"?d.jsx(je,{}):d.jsx(us,{tenantEmailDomain:t,location:a,referrerType:"Card Balance",navigate:e,isZeniAccountsAdmin:o,firstMonthOfFY:r})}const hs=Pt.div`
1
+ import{j as d}from"./liveblocks-Cl_SAGXq.js";import{i as K,j as k,g as H,u as $,h as W,n as ee,k as ra,o as bt,p as O}from"./core-jHXRcmGr.js";import{eX as L,Nm as We,bE as ia,bo as xe,OA as Pn,i$ as On,OB as Kt,OC as Fn,j2 as Ct,OD as Ze,OE as Rn,j7 as Bn,OF as qt,OG as jn,jb as _t,OH as Qe,OI as Mn,cp as yt,OJ as Un,OK as Ln,NG as Gn,k3 as Vn,OL as Yn,bn as Xe,OM as ca,Na as ce,bc as la,kh as da,oh as ua,k0 as ma,Nc as le,Nb as J,eW as pa,fs as Nn,g3 as kt,ON as $n,OO as zn,OP as ha,OQ as Oe,vT as Me,vU as Ue,wf as De,w9 as de,vY as Le,OR as Kn,OS as qn,OT as Zn,OU as fa,OV as Fe,OW as Qn,dK as Je,sa as ga,OX as Hn,OY as Wn,OZ as Xn,O_ as vt,Ms as At,kx as we,wn as It,si as Jn,O$ as eo,vV as Zt,sd as Ee,s9 as ba,P0 as ge,P1 as to,P2 as Et,Mr as Tt,ui as Ca,P3 as ao,P4 as no,P5 as oo,P6 as xt,uy as so,P7 as ro,vX as Qt,uh as _a,P8 as be,P9 as io,bs as ka,wr as Sa,Pa as co,Pb as lo,Pc as uo,Pd as Dt,wm as mo,Pe as po,vW as Ht,wq as ya,Pf as Ce,Pg as ho,Ph as fo,Pi as va,km as Aa,oe as Ia,kr as Ea,oc as Ta,ob as xa,oa as Da,tG as go,Pj as bo,cT as Co,cU as _o,o7 as ko,fS as So,oo as yo,GE as dt,Gw as vo,GA as Ao,Pk as Io,Pl as Eo,Pm as To,b5 as et,fK as xo,hJ as Do,gj as wo,oi as Po,jV as Oo,of as Fo,od as Ro,fE as Bo,fC as jo}from"./zeni-epic-state-BER7XwD9.js";import{z as M,a4 as te,v as D,d as T,a as q,a_ as Mo,a0 as Ge,D as Ve,a$ as wa,f as Y,b0 as Uo,I as ke,b1 as Pa,C as Se,G as B,y as Lo,b2 as Go,b3 as Vo,Z as Oa,K as Fa,c as Ra,$ as Yo,b4 as No,X as $o,aS as Ba,a1 as se,b5 as ja,b6 as Ma,a3 as Ua,b7 as zo,b8 as Ko,S as qo,ar as Zo,p as Qo,_ as Ho,b9 as Wo,ba as Xo,bb as Jo,bc as es,bd as _e}from"./index-D3N1b9aQ.js";import{n as wt}from"./mui-DT0mOTYO.js";import{a as b}from"./sentry-4tqT1r6y.js";import{w as La}from"./withTransactionSidePanel-C-SPdXRH.js";import{c as Ga,t as Pe,f as ue,a as Pt,v as ts}from"./routePaths-m79Ycpnf.js";import{u as ae}from"./useAskAiCfoHostNavButtonProps-DNA9YGXg.js";import je from"./NotFoundScreen-CamJ30ZO.js";import{u as Ot}from"./useInitialThreadRequest-DE7N6h-n.js";import{t as Va}from"./analyticsHelper-mm28SP1t.js";import{C as as}from"./CompanyPassportScreen-D5p8YGqx.js";import{u as ns}from"./useAiCfoDashboardSuggestedQuestionsChips-BunYETHX.js";import{F as os}from"./FeaturePreviewScreen-C0EZ8JBW.js";import{R as ss}from"./ReferralListScreen-joOUNqNx.js";import"./recharts-qvF3Dod3.js";import"./analytics-B1ozuY-_.js";import"./plaid-NlhYlsbZ.js";import"./dnd-DXsHzzkY.js";import"./stripe-DMRn4zHo.js";import"./lottie-BvP-9pT9.js";import"./lexical-BsEGFMKX.js";import"./pdf-CgzfzxbY.js";import"./utils-Dc4uXotD.js";import"./TransactionDetailScreen-B1AYJUjQ.js";import"./decodeURIComponentSafe-C8Ut439h.js";import"./MobileAppDrawer-DJ3VpNqR.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]="f50011ef-5fc5-4643-af80-ba991a7ff2c0",e._sentryDebugIdIdentifier="sentry-dbid-f50011ef-5fc5-4643-af80-ba991a7ff2c0")}catch{}})();const rs=La(function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{vendorId:o,reportDate:r}=K(),s=M.getSignedInUser(),i=k(I=>I.tenantState.currentTenantId),c=k(I=>L(I)),{tenantEmailDomain:m}=K(),g=H(),C=c?.companyName??"",u={userId:s?.userId??"",sessionId:s?.zeniSessionId??"",tenantId:i??""},l=b.useMemo(()=>({authParams:u,companyName:C,downloadEndPoint:`${te}/agingDetailedReport`,timezone:We()}),[]),h=b.useMemo(()=>r!=null?ia(r):xe(),[r]),p=$(),f=W(),S=k(I=>Pn(I,h,o)),E=b.useCallback(()=>{o!=null&&S.fetchState!=="In-Progress"&&S.fetchState!=="Completed"&&p(On(o,h))},[h]),v=b.useCallback(()=>{f("../../",{relative:"path"})},[]),_=b.useCallback((I,U)=>{p(Kt({sortKey:I,sortOrder:U}))},[]),x=b.useCallback(I=>{p(Kt({downloadState:I}))},[]),w=b.useCallback(I=>{if(e)e(I.transactionId,I.transactionType);else if(m!=null){const U=Ga({id:I.transactionId,type:I.transactionType},m);f(U);const ne=D(g.state?.pathnameStackToGoBack,g.pathname);f(U,{state:{pathnameStackToGoBack:ne}})}},[m,e]),y=b.useCallback(()=>{S.vendor!=null&&T.trackApAgingDetail("AP Aging",h.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),S.vendor.id,S.vendor.name)},[S.vendor,h]);return b.useEffect(()=>{E()},[]),b.useEffect(()=>{S.fetchState==="Completed"&&y()},[y,S.fetchState]),d.jsx(Mo,{apAgingDetail:S,downloadParams:l,reportDate:h,analytics:T,onTransactionClick:w,onReload:E,onBackClick:v,onColumnSortConfigChanged:_,updateDownloadStateHandler:x,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})}),is=()=>{const e=$(),a=W(),t=k(_=>Fn(_)),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=ae({mobileExploreReferrer:"AP Aging"});Ge({isDataReady:t.fetchState==="Completed"});const r=M.getSignedInUser(),s=k(_=>_.tenantState.currentTenantId),i=k(_=>L(_)),c=i?.companyName??"",m={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s??""},g=b.useMemo(()=>({authParams:m,companyName:c,downloadEndPoint:`${te}/agingReport`,timezone:We()}),[]),C=t.apAgingUIState.selectedDate??xe(),u=b.useCallback(()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(Ct(C))},[]);b.useEffect(()=>{u()},[]);const l=b.useCallback(()=>{a("../",{relative:"path"})},[]),h=b.useCallback(_=>{e(Ze({searchString:_}))},[]),p=b.useCallback((_,x)=>{e(Ze({sortKey:x,sortOrder:_}))},[]),f=b.useCallback(_=>{a(`./${_}/${C.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)},[C]),S=b.useCallback(_=>{e(Ze({downloadState:_}))},[]),E=b.useCallback((_,x)=>{},[]),v=b.useCallback((_,x)=>{e(Ze({selectedDate:_,agingDateSelectionType:x})),e(Ct(_))},[]);return d.jsxs(d.Fragment,{children:[t.fetchState==="Completed"?d.jsx(Ve,{analytics:T,onLoad:_=>_.trackPageLoaded(Y.Event.agingReport,"AP Aging")}):null,d.jsx(wa,{uiState:t.apAgingUIState,report:t,downloadParams:g,analytics:T,onReloadReport:u,onBackClick:l,onSearchTextChange:h,onSortOrderChange:p,onEntityNameClick:f,updateDownloadStateHandler:S,onSelectedDateChanged:v,onNodeCollapseToggled:E,isAiCfoAccessEnabled:n,onAskAiCfoClick:o})]})},cs=La(function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{customerId:o,reportDate:r}=K(),s=M.getSignedInUser(),i=k(y=>L(y)),{tenantEmailDomain:c}=K(),m=H(),g=i.companyName,C={userId:s?.userId??"",sessionId:s?.zeniSessionId??"",tenantId:i.tenantId},u=b.useMemo(()=>({authParams:C,companyName:g,downloadEndPoint:`${te}/agingDetailedReport`,timezone:We()}),[]),l=b.useMemo(()=>r!=null?ia(r):xe(),[r]),h=$(),p=W(),f=k(y=>Rn(y,l,o)),S=b.useCallback(()=>{o!=null&&f.fetchState!=="In-Progress"&&f.fetchState!=="Completed"&&h(Bn(o,l))},[l]),E=b.useCallback(()=>{p("../../",{relative:"path"})},[]),v=b.useCallback((y,I)=>{h(qt({sortKey:y,sortOrder:I}))},[]),_=b.useCallback(y=>{h(qt({downloadState:y}))},[]),x=b.useCallback(y=>{if(e)e(y.transactionId,y.transactionType);else if(c!=null){const I=Ga({id:y.transactionId,type:y.transactionType},c);p(I);const U=D(m.state?.pathnameStackToGoBack,m.pathname);p(I,{state:{pathnameStackToGoBack:U}})}},[c,e]),w=b.useCallback(()=>{f.customer!=null&&T.trackArAgingDetail("AR Aging",l.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),f.customer.id,f.customer.name)},[f.customer,l]);return b.useEffect(()=>{S()},[]),b.useEffect(()=>{f.fetchState==="Completed"&&w()},[f.fetchState,w]),d.jsx(Uo,{arAgingDetail:f,downloadParams:u,reportDate:l,analytics:T,onTransactionClick:x,onReload:S,onBackClick:E,onColumnSortConfigChanged:v,updateDownloadStateHandler:_,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})}),ls=()=>{const e=$(),a=W(),t=k(v=>jn(v)),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=ae({mobileExploreReferrer:"AR Aging"});Ge({isDataReady:t.fetchState==="Completed"});const r=M.getSignedInUser(),s=k(v=>L(v)),i=s.companyName,c={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s.tenantId},m=b.useMemo(()=>({authParams:c,companyName:i,downloadEndPoint:`${te}/agingReport`,timezone:We()}),[]),g=t.arAgingUIState.selectedDate??xe(),C=b.useCallback(()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(_t(g))},[]);b.useEffect(()=>{C()},[]);const u=b.useCallback(()=>{a("../",{relative:"path"})},[]),l=b.useCallback(v=>{e(Qe({searchString:v}))},[]),h=b.useCallback((v,_)=>{e(Qe({sortKey:_,sortOrder:v}))},[]),p=b.useCallback(v=>{a(`./${v}/${g.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)},[g]),f=b.useCallback(v=>{e(Qe({downloadState:v}))},[]),S=b.useCallback((v,_)=>{e(Qe({selectedDate:v,agingDateSelectionType:_})),e(_t(v))},[]),E=b.useCallback((v,_)=>{e(Mn({nodeId:v,isCollapsed:_}))},[]);return d.jsxs(d.Fragment,{children:[t.fetchState==="Completed"?d.jsx(Ve,{analytics:T,onLoad:v=>v.trackPageLoaded(Y.Event.agingReport,"AR Aging")}):null,d.jsx(wa,{uiState:t.arAgingUIState,report:t,downloadParams:m,analytics:T,onReloadReport:C,onBackClick:u,onSearchTextChange:l,onSortOrderChange:h,onEntityNameClick:p,updateDownloadStateHandler:f,onSelectedDateChanged:S,onNodeCollapseToggled:E,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=Gn(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=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i,referrer:a.referrerType}})},onSetAccountsStatementDate:(n,o)=>{e(Vn(n,o))},onPromoCardBtnClick:n=>{if(a.isZeniAccountsAdmin){let o=`../../checking/${n}`;n?T.trackZeniAccountsCashBalancePromoClicked("Move Money"):(T.trackZeniAccountsCashBalancePromoClicked("Sign Up for Free"),o="../../checking/promo");const r=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(o,{state:{pathnameStackToGoBack:r}})}else T.trackZeniAccountsCashBalancePromoClicked("Learn More"),window.open("https://www.zeni.ai/product/business-checking-accounts","_blank")}}}const ds=ee(function(e){const a=Un(e).accountsInOrder.map((n,o)=>Ya(n,o)),t=Ln(e);return{sectionTitle:q.getLocalizedStrings().balanceCard.cashBalanceSectionTitle,transactionArray:a,zeniAccountsPromoCardReport:t,fetchState:e.cashBalanceState.fetchState,analytics:T}},Na)(Pa),us=ee(function(e){const a=Yn(e).accountsInOrder.map((o,r)=>Ya(o,r)),t=M.getSignedInUser(),n=Xe(t);return{sectionTitle:q.getLocalizedStrings().balanceCard.cardBalanceSectionTitle,transactionArray:a,isZeniUser:n,fetchState:e.cardBalanceState.fetchState,analytics:T}},Na)(Pa);function ms(){const e=W(),a=H(),{tenantEmailDomain:t}=K(),n=ke(),o=k(s=>L(s).company?.companyInfo.firstMonthOfFY??1),r=yt(n?.loggedInUserRoleMap);return k(s=>s.cashBalanceState.fetchState)==="Error"?d.jsx(je,{}):d.jsx(ds,{tenantEmailDomain:t,location:a,referrerType:"Cash Balance",navigate:e,isZeniAccountsAdmin:r,firstMonthOfFY:o})}function ps(){const e=W(),a=H(),{tenantEmailDomain:t}=K(),n=ke(),o=yt(n?.loggedInUserRoleMap),r=k(s=>L(s).company?.companyInfo.firstMonthOfFY??1);return k(s=>s.cardBalanceState.fetchState)==="Error"?d.jsx(je,{}):d.jsx(us,{tenantEmailDomain:t,location:a,referrerType:"Card Balance",navigate:e,isZeniAccountsAdmin:o,firstMonthOfFY:r})}const hs=wt.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
- `,fs=Pt.div`
7
+ `,fs=wt.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 gs({title:e,reportId:a,entityAutoCompleteView:t,autoCompleteText:n,isAiCfoAccessEnabled:o,onAskAiCfoClick:r}){const s=W(),i=$(),c=H(),{tenantEmailDomain:m}=K(),g=Lo();return d.jsxs(hs,{children:[d.jsx(Go,{source:a==="cash_balance"?"CashBalanceDetailScreen":"CardBalanceDetailScreen",title:e,onBackClick:()=>{s("../")},hideSearchBtn:!0,backgroundColor:g.colors.grey4,searchAutoComplete:{autoCompleteData:{entityAutoCompleteView:t,autoCompleteText:n},autoCompleteActions:{onAutoCompleteInputChange:C=>{C.trim().length>=2?i(le({searchString:C,searchOrigin:"navbar"})):C.trim().length===0&&i(J("navbar"))},onAutoCompleteEntity:C=>{n!=null&&T?.trackSearch(Y.Event.search,bs(a),C.type,C.name,n);const u=ue(C,m),l=D(c.state?.pathnameStackToGoBack,c.pathname);s(u,{state:{pathnameStackToGoBack:l}})}}},rightSideComponent:d.jsx(Vo,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r})}),d.jsx(fs,{children:a==="cash_balance"?d.jsx(ms,{}):d.jsx(ps,{})})]})}function Wt(){const e=H(),a=$(),{useFeatureGate:t}=Se(),{isFeatureEnabled:n}=t(B.isDepositAccountsFeatureEnabled),o=k(p=>p.cashBalanceState.fetchState),r=k(p=>p.cardBalanceState.fetchState),s=M.getSignedInUser();if(s==null)throw Error("Can't access dashboard detail without signing in...");const i=ca((p=>{const f=la(p,"/").split("/");return f[f.length-1]})(e.pathname));let c="Not-Started",m="";const g=Z.getLocalizedStrings();switch(i){case"cash_balance":c=o,m=g.reportTitleById.cash_balance;break;case"card_balance":c=r,m=g.reportTitleById.card_balance;break;default:console.error(`${i} is not supported!`)}const{isAiCfoAccessEnabled:C,onAskAiCfoClick:u}=ae({mobileExploreReferrer:i==="card_balance"?"Card Balance":"Cash Balance"});Ge({isDataReady:c==="Completed"});const l=k(p=>p.entityAutoCompleteState.autoCompleteText.navbar),h=k(p=>ce(p,"navbar"));return b.useEffect(()=>{c==="Not-Started"&&function(p,f,S){switch(f){case"card_balance":p(ma());break;case"cash_balance":p(da()),S===!0&&p(ua());break;default:throw new Error(`balance report type ${f} is not yet supported`)}}(a,i,n)},[s,a,c]),d.jsxs(d.Fragment,{children:[c==="Completed"?d.jsx(Ve,{analytics:T,onLoad:p=>((f,S)=>{switch(S){case"card_balance":f.trackPageLoaded(Y.Event.cardBalance);break;case"cash_balance":f.trackPageLoaded(Y.Event.cashBalance);break;default:console.error(`Analytics: Not tracking Page Loaded for ${S}!`)}})(p,i)}):null,d.jsx(gs,{title:m,reportId:i,autoCompleteText:l,entityAutoCompleteView:h,isAiCfoAccessEnabled:C,onAskAiCfoClick:u})]})}const bs=e=>{switch(e){case"cash_balance":return"Cash Balance";case"card_balance":return"Card Balance";default:return"Dashboard"}},Cs=[];function Ye(e){const{mobileExploreReferrer:a}=e,t=$(),n=W(),o=H(),{tenantEmailDomain:r}=K(),{setIsAiCfoOpen:s,setAiCfoSidePanelQuestionToSubmit:i}=Oa(),c=Fa(),m=Ua(c),g=ra(),C=k(F=>F.tenantState.fetchState==="Completed"||F.tenantState.activeTenantFetchState.fetchState==="Completed"?L(F):void 0),u=C?.masterTOSInfo?.isMasterTOSAccepted??!1,l=k(F=>pa(F)),h=l.uiState?.currentChatSessionId,p=l.allSessionsWithOrderedQuestionAnswers??Cs,f=M.getSignedInUser()?.userId,S=Ra(),E=Yo()&&S&&r!=null,A=No(),_=$o(!0),x=k(F=>A!=null?Nn(F,A):void 0),{useDynamicConfig:P}=Se(),{configValue:y}=P(Ba.aiCfoMessageDynamicConfig),I=b.useMemo(()=>Array.isArray(y.default_message_list)?y.default_message_list:[],[y.default_message_list]),U=b.useMemo(()=>I.slice(0,2),[I]),ne=A!=null&&x!=null&&x.fetchState!=="Completed"&&x.fetchState!=="Error"&&(_||x.fetchState==="In-Progress"),$e=b.useMemo(()=>{if(A==null||x?.fetchState==="Error")return U;if(ne)return[];const F=(x?.suggestedQuestions??[]).map(oe=>oe.trim()).filter(oe=>oe.length>0).slice(0,2);return F.length===0?U:F},[U,ne,A,x?.fetchState,x?.suggestedQuestions]),me=b.useCallback((F,oe)=>{if(f==null||F.trim()==="")return;if(!u)return void se({location:o,navigate:n,mergeState:{referrer:a}});const Ke=ja(g.getState());if(m){const Ze=D(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:Ze,referrer:a,aiCfoInitialQuestion:F,aiCfoShouldSubmit:!Ke}})}else{if(Ke)return t(kt(F)),void s(!0);i(F),s(!0),Ma(t,F,"insights_section",h,p,f,oe,void 0)}},[p,h,t,u,m,o,a,n,s,i,g,r,f]),ze=b.useCallback(()=>{if(u)if(m){const F=D(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:F,referrer:a}})}else s(!0);else se({location:o,navigate:n,mergeState:{referrer:a}})},[u,m,o,a,n,s,r]);return b.useMemo(()=>{if(E)return{isSuggestedQuestionsLoading:ne,onAskSomethingElseClick:ze,onSuggestedQuestionClick:me,suggestedQuestions:$e}},[E,ne,ze,me,$e])}const Ne=zo,_s=ee(function(e){const a=$n(e),t=zn(e),n=ha(e),{scrollPosition:o,...r}=n,s=Z.getLocalizedStrings().reportTitleById.cash_in_cash_out,i=M.getSignedInUser(),c=e.tenantState.currentTenantId,m=L(e),g=m?.companyName??"",C={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:c??""},u=e.entityAutoCompleteState.autoCompleteText.navbar,l=ce(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:g,statementEndPoint:`${te}/statement`,authParams:C},analytics:T,autoCompleteData:{autoCompleteText:u,entityAutoCompleteView:l}}},function(e,a){return{updateDownloadStateHandler:t=>{e(Kn(t))},onTimeframeSelectionChanged:()=>{},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(Oe({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(De("month")),e(de(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(le({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(J("navbar"))},onAutoCompleteEntity:t=>{const n=ue(t,a.tenantEmailDomain),o=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}})(Ne),ks=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r}=ae({mobileExploreReferrer:"DashboardCashInCashOut"}),s=Ye({mobileExploreReferrer:"DashboardCashInCashOut"}),i=k(c=>ha(c)).mode==="compare_mode";return d.jsx(_s,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:a,location:t,isCompareModeOn:i,navigate:n,insightsSectionAiCfoInfo:s,isAiCfoAccessEnabled:o,onAskAiCfoClick:r})},Ss=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=Je(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=ee(function(e){const a=Zn(e),t=qn(e),n=fa(e),{scrollPosition:o,...r}=n,s=Z.getLocalizedStrings().reportTitleById.cash_position,i=M.getSignedInUser(),c=e.tenantState.currentTenantId,m=L(e),g=m?.companyName??"",C={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:c??""},u=e.entityAutoCompleteState.autoCompleteText.navbar,l=ce(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:g,statementEndPoint:`${te}/statement`,authParams:C},analytics:T,autoCompleteData:{autoCompleteText:u,entityAutoCompleteView:l}}},function(e,a){return{updateDownloadStateHandler:t=>{e(Qn(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(de(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}=Ss(n),s=t.accountName===""?t.accountDescription:t.accountName;if(o!=null&&r!=null){const i=we(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Cash Position"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(le({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(J("navbar"))},onAutoCompleteEntity:t=>{const n=ue(t,a.tenantEmailDomain),o=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onTableScroll:t=>{e(Fe({scrollPosition:t}))},onBackClick:()=>{a.navigate("../")}}})(Ne),As=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r}=ae({mobileExploreReferrer:"DashboardCashPosition"}),s=Ye({mobileExploreReferrer:"DashboardCashPosition"}),i=k(c=>fa(c)).mode==="compare_mode";return d.jsx(ys,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:a,location:t,isCompareModeOn:i,navigate:n,insightsSectionAiCfoInfo:s,isAiCfoAccessEnabled:o,onAskAiCfoClick:r})},N=(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}))};function ut(){return d.jsxs(bt,{children:[d.jsx(O,{path:"/",element:d.jsx(re,{})}),d.jsx(O,{path:"/:forecastId",element:d.jsx(re,{})}),d.jsx(O,{path:"/:forecastId/*",element:d.jsx(je,{})})]})}const vs=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=Je(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=ee(function(e){const a=ga(e),t=Hn(e),n=Wn(e),o=Xn(e),r=At(e),{scrollPosition:s,...i}=r,c=t.reportTitle,m=M.getSignedInUser(),g=e.tenantState.currentTenantId,C=L(e),u=C?.companyName??"",l={userId:m?.userId??"",sessionId:m?.zeniSessionId??"",tenantId:g??""},h=e.entityAutoCompleteState.autoCompleteText.navbar,p=ce(e,"navbar"),f=vt(C);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:c},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${te}/statement`,authParams:l},analytics:T,isZeniUser:Xe(m),autoCompleteData:{autoCompleteText:h,entityAutoCompleteView:p},isZeniCOAUsed:f,isAccountingClassesEnabled:Pe(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(to(t))},onTimeframeSelectionChanged:t=>{e(De(t)),setTimeout(()=>e(ge({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(ge({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(de(a.firstMonthOfFY,t)),e(ge({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&&N(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout(()=>e(ge({resetLeftScroll:!0})),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=vs(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?wt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):we(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Burn Rate"}})}},onElementCollapseStateChanged:(t,n)=>{e(ge({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(ge({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(le({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(J("navbar"))},onAutoCompleteEntity:t=>{const n=ue(t,a.tenantEmailDomain),o=D(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(Ee(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?Te:Ft,n)),t==="forecast_mode"?(e(qt({viewMode:"account_group"})),e(ba(!1,n?.id)),n!=null&&N(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):N(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(ge({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Burn Rate"),e(qt({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(eo({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(Jn())},onResyncReports:()=>{e(It("net_burn_or_income_by_classes"))}}})(Ne),Es=e=>{const a=$(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=ae({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),c=Ye({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),m=k(y=>At(y)),g=m.isForecastModeOn,C=m.timeframe,u=m.selectedForecast?.id,l=k(y=>Et(y.forecastState,u??"")),h=k(y=>ga(y)),p=k(y=>Tt(y)),f=k(y=>Pe(y)),S=m.mode==="compare_mode",E=h.dataAvailable;b.useEffect(()=>{if(u!=null&&g===!0&&(N(g,r,u,o),l!=null)){const y=l?.forecastPeriod,I=E!=null&&y.endDate.isAfter(E?.endDate)===!0?E:y;a(de(e.firstMonthOfFY,{startDate:I.endDate.startOf(C),endDate:I?.endDate}))}},[u]);const A=ke(),{useFeatureGate:_}=Se(),{isFeatureEnabled:x}=_(B.isReportsCommentingEnabled),P=Ot(x?A?.currentTenant?.companyId:void 0,{clearParams:h.fetchState==="Completed"});return d.jsx(Is,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,forecastIdFromUrlPath:r,location:n,isAccountingClassesEnabled:f,isCompareModeOn:S,navigate:o,analytics:T,reportsResyncFetchState:p.reportsResyncFetchState,insightsSectionAiCfoInfo:c,isAiCfoAccessEnabled:s,onAskAiCfoClick:i,initialOpenThreadRequest:P,isReportsCommentingEnabled:x})},Ts=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=Je(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}},xs=ee(function(e){const a=Ca(e),t=ao(e),n=no(e),o=oo(e),r=xt(e),{scrollPosition:s,...i}=r,c=Z.getLocalizedStrings().reportTitleById.operating_expenses,m=M.getSignedInUser(),g=e.tenantState.currentTenantId,C=L(e),u=C?.companyName??"",l={userId:m?.userId??"",sessionId:m?.zeniSessionId??"",tenantId:g??""},h=e.entityAutoCompleteState.autoCompleteText.navbar,p=ce(e,"navbar"),f=vt(C);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:c},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${te}/statement`,authParams:l},analytics:T,isZeniUser:Xe(m),autoCompleteData:{autoCompleteText:h,entityAutoCompleteView:p},isZeniCOAUsed:f,isAccountingClassesEnabled:Pe(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(io(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(de(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&&N(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout(()=>e(be({resetLeftScroll:!0})),50)},onAccountBalanceClick:a.hasTransactionAccess!==!0?void 0:(t,n)=>{const{timePeriod:o,timeframe:r}=Ts(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?wt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):we(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Operating Expenses"}})}},onElementCollapseStateChanged:(t,n)=>{e(be({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(be({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(le({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(J("navbar"))},onAutoCompleteEntity:t=>{const n=ue(t,a.tenantEmailDomain),o=D(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(Ee(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?Te:Ft,n)),t=="forecast_mode"?(e(Qt({viewMode:"account_group"})),e(_a(!1,n?.id)),n!=null&&N(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):N(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(be({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Operating Expenses"),e(Qt({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(ro({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(so())},onResyncReports:()=>{e(It("operating_expenses_by_classes"))}}})(Ne),Ds=e=>{const a=$(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=ae({mobileExploreReferrer:"DashboardOpEx"}),c=Ye({mobileExploreReferrer:"DashboardOpEx"}),m=k(I=>xt(I)),g=m.isForecastModeOn,C=m.timeframe,u=m.selectedForecast?.id,l=k(I=>Et(I.forecastState,u??"")),h=k(I=>Ca(I)),p=k(I=>Tt(I)),f=k(I=>Pe(I)),S=m.mode==="compare_mode",E=h.dataAvailable;b.useEffect(()=>{if(u!=null&&g===!0&&(N(g,r,u,o),l!=null)){const I=l?.forecastPeriod,U=E!=null&&I.endDate.isAfter(E?.endDate)===!0?E:I;a(de(e.firstMonthOfFY,{startDate:U.endDate.startOf(C),endDate:U?.endDate}))}},[u]);const A=ke(),_=A?.loggedInUserRole!=null&&ka(A?.loggedInUserRole)!==!0,{useFeatureGate:x}=Se(),{isFeatureEnabled:P}=x(B.isReportsCommentingEnabled),y=Ot(P?A?.currentTenant?.companyId:void 0,{clearParams:h.fetchState==="Completed"});return d.jsx(xs,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,location:n,isAccountingClassesEnabled:f,isCompareModeOn:S,navigate:o,forecastIdFromUrlPath:r,analytics:T,hasTransactionAccess:_,reportsResyncFetchState:p.reportsResyncFetchState,insightsSectionAiCfoInfo:c,isAiCfoAccessEnabled:s,onAskAiCfoClick:i,initialOpenThreadRequest:y,isReportsCommentingEnabled:P})},Ps=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=Je(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}},ws=ee(function(e){const a=Sa(e),t=co(e),n=lo(e),o=uo(e),r=Dt(e),{scrollPosition:s,...i}=r,c=Z.getLocalizedStrings().reportTitleById.revenue,m=M.getSignedInUser(),g=e.tenantState.currentTenantId,C=L(e),u=C?.companyName??"",l={userId:m?.userId??"",sessionId:m?.zeniSessionId??"",tenantId:g??""},h=e.entityAutoCompleteState.autoCompleteText.navbar,p=ce(e,"navbar"),f=vt(C);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:c},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${te}/statement`,authParams:l},analytics:T,isZeniUser:Xe(m),autoCompleteData:{autoCompleteText:h,entityAutoCompleteView:p},isZeniCOAUsed:f,isAccountingClassesEnabled:Pe(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(ho(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(de(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&&N(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout(()=>e(Ce({resetLeftScroll:!0})),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=Ps(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?wt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):we(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Revenues"}})}},onElementCollapseStateChanged:(t,n)=>{e(Ce({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(Ce({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(le({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(J("navbar"))},onAutoCompleteEntity:t=>{const n=ue(t,a.tenantEmailDomain),o=D(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(Ee(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?Te:Ft,n)),t==="forecast_mode"?(e(Ht({viewMode:"account_group"})),e(ya(!1,n?.id)),n!=null&&N(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):N(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(Ce({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Revenues"),e(Ht({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(po({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(mo())},onResyncReports:()=>{e(It("revenue_by_classes"))}}})(Ne),Os=e=>{const a=$(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=ae({mobileExploreReferrer:"DashboardRevenue"}),c=Ye({mobileExploreReferrer:"DashboardRevenue"}),m=k(y=>Dt(y)),g=m.isForecastModeOn,C=m.timeframe,u=m.selectedForecast?.id,l=k(y=>Et(y.forecastState,u??"")),h=k(y=>Sa(y)),p=h.dataAvailable,f=m.mode==="compare_mode",S=k(y=>Pe(y)),E=k(y=>Tt(y));b.useEffect(()=>{if(u!=null&&g===!0&&(N(g,r,u,o),l!=null)){const y=l?.forecastPeriod,I=p!=null&&y.endDate.isAfter(p?.endDate)===!0?p:y;a(de(e.firstMonthOfFY,{startDate:I.endDate.startOf(C),endDate:I?.endDate}))}},[u]);const A=ke(),{useFeatureGate:_}=Se(),{isFeatureEnabled:x}=_(B.isReportsCommentingEnabled),P=Ot(x?A?.currentTenant?.companyId:void 0,{clearParams:h.fetchState==="Completed"});return d.jsx(ws,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,isAccountingClassesEnabled:S,isCompareModeOn:f,location:n,navigate:o,forecastIdFromUrlPath:r,analytics:T,reportsResyncFetchState:E.reportsResyncFetchState,insightsSectionAiCfoInfo:c,isAiCfoAccessEnabled:s,onAskAiCfoClick:i,initialOpenThreadRequest:P,isReportsCommentingEnabled:x})},Fs=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}},Rs=ee(function(e){const a=fo(e),t=e.entityAutoCompleteState.autoCompleteText.navbar,n=ce(e,"navbar");return{report:a,analytics:T,autoCompleteData:{autoCompleteText:t,entityAutoCompleteView:n}}},function(e,a){return{onTimeframeSelectionChanged:t=>{T.trackTimeframeSwitch(Va(t),"Top Expenses"),e(Aa(t))},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=Fs(n),s=t.accountName===""?t.accountDescription:t.accountName;if(o!=null&&r!=null){const i=we(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Top Expenses"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(le({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(J("navbar"))},onAutoCompleteEntity:t=>{const n=ue(t,a.tenantEmailDomain),o=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}})(Ko),Bs=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e;return d.jsx(Rs,{tenantEmailDomain:a,location:t,navigate:n})},js=Pt.div`
13
+ `;function gs({title:e,reportId:a,entityAutoCompleteView:t,autoCompleteText:n,isAiCfoAccessEnabled:o,onAskAiCfoClick:r}){const s=W(),i=$(),c=H(),{tenantEmailDomain:m}=K(),g=Lo();return d.jsxs(hs,{children:[d.jsx(Go,{source:a==="cash_balance"?"CashBalanceDetailScreen":"CardBalanceDetailScreen",title:e,onBackClick:()=>{s("../")},hideSearchBtn:!0,backgroundColor:g.colors.grey4,searchAutoComplete:{autoCompleteData:{entityAutoCompleteView:t,autoCompleteText:n},autoCompleteActions:{onAutoCompleteInputChange:C=>{C.trim().length>=2?i(le({searchString:C,searchOrigin:"navbar"})):C.trim().length===0&&i(J("navbar"))},onAutoCompleteEntity:C=>{n!=null&&T?.trackSearch(Y.Event.search,bs(a),C.type,C.name,n);const u=ue(C,m),l=D(c.state?.pathnameStackToGoBack,c.pathname);s(u,{state:{pathnameStackToGoBack:l}})}}},rightSideComponent:d.jsx(Vo,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r})}),d.jsx(fs,{children:a==="cash_balance"?d.jsx(ms,{}):d.jsx(ps,{})})]})}function Wt(){const e=H(),a=$(),{useFeatureGate:t}=Se(),{isFeatureEnabled:n}=t(B.isDepositAccountsFeatureEnabled),o=k(p=>p.cashBalanceState.fetchState),r=k(p=>p.cardBalanceState.fetchState),s=M.getSignedInUser();if(s==null)throw Error("Can't access dashboard detail without signing in...");const i=ca((p=>{const f=la(p,"/").split("/");return f[f.length-1]})(e.pathname));let c="Not-Started",m="";const g=q.getLocalizedStrings();switch(i){case"cash_balance":c=o,m=g.reportTitleById.cash_balance;break;case"card_balance":c=r,m=g.reportTitleById.card_balance;break;default:console.error(`${i} is not supported!`)}const{isAiCfoAccessEnabled:C,onAskAiCfoClick:u}=ae({mobileExploreReferrer:i==="card_balance"?"Card Balance":"Cash Balance"});Ge({isDataReady:c==="Completed"});const l=k(p=>p.entityAutoCompleteState.autoCompleteText.navbar),h=k(p=>ce(p,"navbar"));return b.useEffect(()=>{c==="Not-Started"&&function(p,f,S){switch(f){case"card_balance":p(ma());break;case"cash_balance":p(da()),S===!0&&p(ua());break;default:throw new Error(`balance report type ${f} is not yet supported`)}}(a,i,n)},[s,a,c]),d.jsxs(d.Fragment,{children:[c==="Completed"?d.jsx(Ve,{analytics:T,onLoad:p=>((f,S)=>{switch(S){case"card_balance":f.trackPageLoaded(Y.Event.cardBalance);break;case"cash_balance":f.trackPageLoaded(Y.Event.cashBalance);break;default:console.error(`Analytics: Not tracking Page Loaded for ${S}!`)}})(p,i)}):null,d.jsx(gs,{title:m,reportId:i,autoCompleteText:l,entityAutoCompleteView:h,isAiCfoAccessEnabled:C,onAskAiCfoClick:u})]})}const bs=e=>{switch(e){case"cash_balance":return"Cash Balance";case"card_balance":return"Card Balance";default:return"Dashboard"}},Cs=[];function Ye(e){const{mobileExploreReferrer:a}=e,t=$(),n=W(),o=H(),{tenantEmailDomain:r}=K(),{setIsAiCfoOpen:s,setAiCfoSidePanelQuestionToSubmit:i}=Oa(),c=Fa(),m=Ua(c),g=ra(),C=k(F=>F.tenantState.fetchState==="Completed"||F.tenantState.activeTenantFetchState.fetchState==="Completed"?L(F):void 0),u=C?.masterTOSInfo?.isMasterTOSAccepted??!1,l=k(F=>pa(F)),h=l.uiState?.currentChatSessionId,p=l.allSessionsWithOrderedQuestionAnswers??Cs,f=M.getSignedInUser()?.userId,S=Ra(),E=Yo()&&S&&r!=null,v=No(),_=$o(!0),x=k(F=>v!=null?Nn(F,v):void 0),{useDynamicConfig:w}=Se(),{configValue:y}=w(Ba.aiCfoMessageDynamicConfig),I=b.useMemo(()=>Array.isArray(y.default_message_list)?y.default_message_list:[],[y.default_message_list]),U=b.useMemo(()=>I.slice(0,2),[I]),ne=v!=null&&x!=null&&x.fetchState!=="Completed"&&x.fetchState!=="Error"&&(_||x.fetchState==="In-Progress"),$e=b.useMemo(()=>{if(v==null||x?.fetchState==="Error")return U;if(ne)return[];const F=(x?.suggestedQuestions??[]).map(oe=>oe.trim()).filter(oe=>oe.length>0).slice(0,2);return F.length===0?U:F},[U,ne,v,x?.fetchState,x?.suggestedQuestions]),me=b.useCallback((F,oe)=>{if(f==null||F.trim()==="")return;if(!u)return void se({location:o,navigate:n,mergeState:{referrer:a}});const Ke=ja(g.getState());if(m){const qe=D(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:qe,referrer:a,aiCfoInitialQuestion:F,aiCfoShouldSubmit:!Ke}})}else{if(Ke)return t(kt(F)),void s(!0);i(F),s(!0),Ma(t,F,"insights_section",h,p,f,oe,void 0)}},[p,h,t,u,m,o,a,n,s,i,g,r,f]),ze=b.useCallback(()=>{if(u)if(m){const F=D(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:F,referrer:a}})}else s(!0);else se({location:o,navigate:n,mergeState:{referrer:a}})},[u,m,o,a,n,s,r]);return b.useMemo(()=>{if(E)return{isSuggestedQuestionsLoading:ne,onAskSomethingElseClick:ze,onSuggestedQuestionClick:me,suggestedQuestions:$e}},[E,ne,ze,me,$e])}const Ne=zo,_s=ee(function(e){const a=$n(e),t=zn(e),n=ha(e),{scrollPosition:o,...r}=n,s=q.getLocalizedStrings().reportTitleById.cash_in_cash_out,i=M.getSignedInUser(),c=e.tenantState.currentTenantId,m=L(e),g=m?.companyName??"",C={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:c??""},u=e.entityAutoCompleteState.autoCompleteText.navbar,l=ce(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:g,statementEndPoint:`${te}/statement`,authParams:C},analytics:T,autoCompleteData:{autoCompleteText:u,entityAutoCompleteView:l}}},function(e,a){return{updateDownloadStateHandler:t=>{e(Kn(t))},onTimeframeSelectionChanged:()=>{},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(Oe({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(De("month")),e(de(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(le({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(J("navbar"))},onAutoCompleteEntity:t=>{const n=ue(t,a.tenantEmailDomain),o=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}})(Ne),ks=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r}=ae({mobileExploreReferrer:"DashboardCashInCashOut"}),s=Ye({mobileExploreReferrer:"DashboardCashInCashOut"}),i=k(c=>ha(c)).mode==="compare_mode";return d.jsx(_s,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:a,location:t,isCompareModeOn:i,navigate:n,insightsSectionAiCfoInfo:s,isAiCfoAccessEnabled:o,onAskAiCfoClick:r})},Ss=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=Je(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=ee(function(e){const a=qn(e),t=Zn(e),n=fa(e),{scrollPosition:o,...r}=n,s=q.getLocalizedStrings().reportTitleById.cash_position,i=M.getSignedInUser(),c=e.tenantState.currentTenantId,m=L(e),g=m?.companyName??"",C={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:c??""},u=e.entityAutoCompleteState.autoCompleteText.navbar,l=ce(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:g,statementEndPoint:`${te}/statement`,authParams:C},analytics:T,autoCompleteData:{autoCompleteText:u,entityAutoCompleteView:l}}},function(e,a){return{updateDownloadStateHandler:t=>{e(Qn(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(de(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}=Ss(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),c=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Cash Position"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(le({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(J("navbar"))},onAutoCompleteEntity:t=>{const n=ue(t,a.tenantEmailDomain),o=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onTableScroll:t=>{e(Fe({scrollPosition:t}))},onBackClick:()=>{a.navigate("../")}}})(Ne),vs=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r}=ae({mobileExploreReferrer:"DashboardCashPosition"}),s=Ye({mobileExploreReferrer:"DashboardCashPosition"}),i=k(c=>fa(c)).mode==="compare_mode";return d.jsx(ys,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:a,location:t,isCompareModeOn:i,navigate:n,insightsSectionAiCfoInfo:s,isAiCfoAccessEnabled:o,onAskAiCfoClick:r})},N=(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}))};function ut(){return d.jsxs(bt,{children:[d.jsx(O,{path:"/",element:d.jsx(re,{})}),d.jsx(O,{path:"/:forecastId",element:d.jsx(re,{})}),d.jsx(O,{path:"/:forecastId/*",element:d.jsx(je,{})})]})}const As=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=Je(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=ee(function(e){const a=ga(e),t=Hn(e),n=Wn(e),o=Xn(e),r=vt(e),{scrollPosition:s,...i}=r,c=t.reportTitle,m=M.getSignedInUser(),g=e.tenantState.currentTenantId,C=L(e),u=C?.companyName??"",l={userId:m?.userId??"",sessionId:m?.zeniSessionId??"",tenantId:g??""},h=e.entityAutoCompleteState.autoCompleteText.navbar,p=ce(e,"navbar"),f=At(C);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:c},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${te}/statement`,authParams:l},analytics:T,isZeniUser:Xe(m),autoCompleteData:{autoCompleteText:h,entityAutoCompleteView:p},isZeniCOAUsed:f,isAccountingClassesEnabled:we(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(to(t))},onTimeframeSelectionChanged:t=>{e(De(t)),setTimeout(()=>e(ge({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(Le(t,n)),e(ge({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(de(a.firstMonthOfFY,t)),e(ge({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&&N(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout(()=>e(ge({resetLeftScroll:!0})),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=As(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?Pt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Burn Rate"}})}},onElementCollapseStateChanged:(t,n)=>{e(ge({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(ge({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(le({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(J("navbar"))},onAutoCompleteEntity:t=>{const n=ue(t,a.tenantEmailDomain),o=D(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(Ee(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?Te:Ft,n)),t==="forecast_mode"?(e(Zt({viewMode:"account_group"})),e(ba(!1,n?.id)),n!=null&&N(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):N(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(ge({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Burn Rate"),e(Zt({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(eo({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(Jn())},onResyncReports:()=>{e(It("net_burn_or_income_by_classes"))}}})(Ne),Es=e=>{const a=$(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=ae({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),c=Ye({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),m=k(y=>vt(y)),g=m.isForecastModeOn,C=m.timeframe,u=m.selectedForecast?.id,l=k(y=>Et(y.forecastState,u??"")),h=k(y=>ga(y)),p=k(y=>Tt(y)),f=k(y=>we(y)),S=m.mode==="compare_mode",E=h.dataAvailable;b.useEffect(()=>{if(u!=null&&g===!0&&(N(g,r,u,o),l!=null)){const y=l?.forecastPeriod,I=E!=null&&y.endDate.isAfter(E?.endDate)===!0?E:y;a(de(e.firstMonthOfFY,{startDate:I.endDate.startOf(C),endDate:I?.endDate}))}},[u]);const v=ke(),{useFeatureGate:_}=Se(),{isFeatureEnabled:x}=_(B.isReportsCommentingEnabled),w=Ot(x?v?.currentTenant?.companyId:void 0,{clearParams:h.fetchState==="Completed"});return d.jsx(Is,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,forecastIdFromUrlPath:r,location:n,isAccountingClassesEnabled:f,isCompareModeOn:S,navigate:o,analytics:T,reportsResyncFetchState:p.reportsResyncFetchState,insightsSectionAiCfoInfo:c,isAiCfoAccessEnabled:s,onAskAiCfoClick:i,initialOpenThreadRequest:w,isReportsCommentingEnabled:x})},Ts=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=Je(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}},xs=ee(function(e){const a=Ca(e),t=ao(e),n=no(e),o=oo(e),r=xt(e),{scrollPosition:s,...i}=r,c=q.getLocalizedStrings().reportTitleById.operating_expenses,m=M.getSignedInUser(),g=e.tenantState.currentTenantId,C=L(e),u=C?.companyName??"",l={userId:m?.userId??"",sessionId:m?.zeniSessionId??"",tenantId:g??""},h=e.entityAutoCompleteState.autoCompleteText.navbar,p=ce(e,"navbar"),f=At(C);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:c},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${te}/statement`,authParams:l},analytics:T,isZeniUser:Xe(m),autoCompleteData:{autoCompleteText:h,entityAutoCompleteView:p},isZeniCOAUsed:f,isAccountingClassesEnabled:we(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(io(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(de(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&&N(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout(()=>e(be({resetLeftScroll:!0})),50)},onAccountBalanceClick:a.hasTransactionAccess!==!0?void 0:(t,n)=>{const{timePeriod:o,timeframe:r}=Ts(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?Pt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Operating Expenses"}})}},onElementCollapseStateChanged:(t,n)=>{e(be({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(be({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(le({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(J("navbar"))},onAutoCompleteEntity:t=>{const n=ue(t,a.tenantEmailDomain),o=D(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(Ee(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?Te:Ft,n)),t=="forecast_mode"?(e(Qt({viewMode:"account_group"})),e(_a(!1,n?.id)),n!=null&&N(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):N(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(be({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Operating Expenses"),e(Qt({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(ro({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(so())},onResyncReports:()=>{e(It("operating_expenses_by_classes"))}}})(Ne),Ds=e=>{const a=$(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=ae({mobileExploreReferrer:"DashboardOpEx"}),c=Ye({mobileExploreReferrer:"DashboardOpEx"}),m=k(I=>xt(I)),g=m.isForecastModeOn,C=m.timeframe,u=m.selectedForecast?.id,l=k(I=>Et(I.forecastState,u??"")),h=k(I=>Ca(I)),p=k(I=>Tt(I)),f=k(I=>we(I)),S=m.mode==="compare_mode",E=h.dataAvailable;b.useEffect(()=>{if(u!=null&&g===!0&&(N(g,r,u,o),l!=null)){const I=l?.forecastPeriod,U=E!=null&&I.endDate.isAfter(E?.endDate)===!0?E:I;a(de(e.firstMonthOfFY,{startDate:U.endDate.startOf(C),endDate:U?.endDate}))}},[u]);const v=ke(),_=v?.loggedInUserRole!=null&&ka(v?.loggedInUserRole)!==!0,{useFeatureGate:x}=Se(),{isFeatureEnabled:w}=x(B.isReportsCommentingEnabled),y=Ot(w?v?.currentTenant?.companyId:void 0,{clearParams:h.fetchState==="Completed"});return d.jsx(xs,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,location:n,isAccountingClassesEnabled:f,isCompareModeOn:S,navigate:o,forecastIdFromUrlPath:r,analytics:T,hasTransactionAccess:_,reportsResyncFetchState:p.reportsResyncFetchState,insightsSectionAiCfoInfo:c,isAiCfoAccessEnabled:s,onAskAiCfoClick:i,initialOpenThreadRequest:y,isReportsCommentingEnabled:w})},ws=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=Je(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}},Ps=ee(function(e){const a=Sa(e),t=co(e),n=lo(e),o=uo(e),r=Dt(e),{scrollPosition:s,...i}=r,c=q.getLocalizedStrings().reportTitleById.revenue,m=M.getSignedInUser(),g=e.tenantState.currentTenantId,C=L(e),u=C?.companyName??"",l={userId:m?.userId??"",sessionId:m?.zeniSessionId??"",tenantId:g??""},h=e.entityAutoCompleteState.autoCompleteText.navbar,p=ce(e,"navbar"),f=At(C);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:c},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${te}/statement`,authParams:l},analytics:T,isZeniUser:Xe(m),autoCompleteData:{autoCompleteText:h,entityAutoCompleteView:p},isZeniCOAUsed:f,isAccountingClassesEnabled:we(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(ho(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(de(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&&N(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout(()=>e(Ce({resetLeftScroll:!0})),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=ws(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?Pt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):Pe(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Revenues"}})}},onElementCollapseStateChanged:(t,n)=>{e(Ce({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(Ce({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(le({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(J("navbar"))},onAutoCompleteEntity:t=>{const n=ue(t,a.tenantEmailDomain),o=D(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(Ee(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?Te:Ft,n)),t==="forecast_mode"?(e(Ht({viewMode:"account_group"})),e(ya(!1,n?.id)),n!=null&&N(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):N(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(Ce({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Revenues"),e(Ht({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(po({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(mo())},onResyncReports:()=>{e(It("revenue_by_classes"))}}})(Ne),Os=e=>{const a=$(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=ae({mobileExploreReferrer:"DashboardRevenue"}),c=Ye({mobileExploreReferrer:"DashboardRevenue"}),m=k(y=>Dt(y)),g=m.isForecastModeOn,C=m.timeframe,u=m.selectedForecast?.id,l=k(y=>Et(y.forecastState,u??"")),h=k(y=>Sa(y)),p=h.dataAvailable,f=m.mode==="compare_mode",S=k(y=>we(y)),E=k(y=>Tt(y));b.useEffect(()=>{if(u!=null&&g===!0&&(N(g,r,u,o),l!=null)){const y=l?.forecastPeriod,I=p!=null&&y.endDate.isAfter(p?.endDate)===!0?p:y;a(de(e.firstMonthOfFY,{startDate:I.endDate.startOf(C),endDate:I?.endDate}))}},[u]);const v=ke(),{useFeatureGate:_}=Se(),{isFeatureEnabled:x}=_(B.isReportsCommentingEnabled),w=Ot(x?v?.currentTenant?.companyId:void 0,{clearParams:h.fetchState==="Completed"});return d.jsx(Ps,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,isAccountingClassesEnabled:S,isCompareModeOn:f,location:n,navigate:o,forecastIdFromUrlPath:r,analytics:T,reportsResyncFetchState:E.reportsResyncFetchState,insightsSectionAiCfoInfo:c,isAiCfoAccessEnabled:s,onAskAiCfoClick:i,initialOpenThreadRequest:w,isReportsCommentingEnabled:x})},Fs=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}},Rs=ee(function(e){const a=fo(e),t=e.entityAutoCompleteState.autoCompleteText.navbar,n=ce(e,"navbar");return{report:a,analytics:T,autoCompleteData:{autoCompleteText:t,entityAutoCompleteView:n}}},function(e,a){return{onTimeframeSelectionChanged:t=>{T.trackTimeframeSwitch(Va(t),"Top Expenses"),e(va(t))},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=Fs(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),c=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Top Expenses"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(le({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(J("navbar"))},onAutoCompleteEntity:t=>{const n=ue(t,a.tenantEmailDomain),o=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}})(Ko),Bs=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e;return d.jsx(Rs,{tenantEmailDomain:a,location:t,navigate:n})},js=wt.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
- `,Te=3,Ft=1;function Ms({fetchState:e,firstMonthOfFY:a,reportId:t,forecastId:n}){const o=W(),r=H(),{tenantEmailDomain:s}=K();let i;Ge({isDataReady:!0});const c={firstMonthOfFY:a,tenantEmailDomain:s,location:r,navigate:o,forecastIdFromUrlPath:n,fetchState:e};switch(t){case"operating_expenses":i=d.jsx(Ds,{...c});break;case"revenue":i=d.jsx(Os,{...c});break;case"net_burn_or_income":i=d.jsx(Es,{...c});break;case"cash_position":i=d.jsx(As,{...c});break;case"top_expenses":i=d.jsx(Bs,{...c});break;case"cash_in_cash_out":i=d.jsx(ks,{...c});break;default:console.error(`${t} is not supported!`),i=null}return i!=null?d.jsx(js,{children:i}):null}function re(){const e=H(),a=$(),{forecastId:t}=K();let n="Not-Started";const o=k(l=>xt(l).fetchState),r=k(l=>Dt(l).fetchState),s=k(l=>At(l).fetchState),i=k(l=>l.cashPositionState.fetchState),c=k(l=>l.topExState.fetchState),m=k(l=>l.cashInCashOutState.fetchState);if(M.getSignedInUser()==null)throw Error("Can't access dashboard detail without signing in...");const g=k(l=>L(l)),C=g?.company?.companyInfo?.firstMonthOfFY??1,u=ca((l=>{const h=la(l,"/").split("/");return t!=null?h[h.length-3]:h[h.length-1]})(e.pathname));switch(u){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=c;break;case"cash_in_cash_out":n=m;break;default:console.error(`${u} is not supported!`)}return b.useEffect(()=>{n==="Not-Started"&&function(l,h,p,f){switch(h){case"operating_expenses":l(Da(!0)),f!=null&&(l(Ee(p,!0,Te,{id:f,index:0})),l(_a(!1,f)));break;case"revenue":l(xa(!0)),f!=null&&(l(Ee(p,!0,Te,{id:f,index:0})),l(ya(!1,f)));break;case"net_burn_or_income":l(Ta(!0)),f!=null&&(l(Ee(p,!0,Te,{id:f,index:0})),l(ba(!1,f)));break;case"cash_position":l(Ea(!0));break;case"top_expenses":l(Ia());break;case"cash_in_cash_out":l(va());break;default:throw new Error(`report type ${h} is not yet supported`)}}(a,u,C,t)},[t]),d.jsxs(d.Fragment,{children:[n==="Completed"?d.jsx(Ve,{analytics:T,onLoad:l=>((h,p)=>{const f=e.state?.referrer;switch(p){case"operating_expenses":h.trackPageLoaded(Y.Event.operatingExpenses,f);break;case"revenue":h.trackPageLoaded(Y.Event.revenues,f);break;case"net_burn_or_income":h.trackPageLoaded(Y.Event.burnRate,f);break;case"cash_position":h.trackPageLoaded(Y.Event.cashPosition,f);break;case"top_expenses":h.trackPageLoaded(Y.Event.topExpenses,f);break;case"cash_in_cash_out":h.trackPageLoaded(Y.Event.cashInCashOut,f);break;default:console.error(`Analytics: Not tracking Page Loaded for ${p}!`)}})(l,u)}):null,d.jsx(Ms,{firstMonthOfFY:C,fetchState:n,reportId:u,forecastId:t})]})}var mt=typeof navigator<"u"&&navigator.userAgent.toLowerCase().indexOf("firefox")>0;function pt(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 za(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 Rt={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,"-":mt?173:189,"=":mt?61:187,";":mt?59:186,"'":222,"[":219,"]":221,"\\":220},ie={"⇧":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},j={16:!1,18:!1,17:!1,91:!1},R={},He=1;He<20;He++)Rt["f".concat(He)]=111+He;var w=[],Xt=!1,Ka="all",Jt=[],tt=function(e){return Rt[e.toLowerCase()]||ie[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function ea(e){Ka=e||"all"}function Be(){return Ka||"all"}var ht=function(e){var a=e.key,t=e.scope,n=e.method,o=e.splitKey,r=o===void 0?"+":o;za(a).forEach(function(s){var i=s.split(r),c=i.length,m=i[c-1],g=m==="*"?"*":tt(m);if(R[g]){t||(t=Be());var C=c>1?$a(ie,i):[];R[g]=R[g].filter(function(u){return!((!n||u.method===n)&&u.scope===t&&function(l,h){for(var p=l.length>=h.length?l:h,f=l.length>=h.length?h:l,S=!0,E=0;E<p.length;E++)f.indexOf(p[E])===-1&&(S=!1);return S}(u.mods,C))})}})};function ta(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,j)Object.prototype.hasOwnProperty.call(j,r)&&(!j[r]&&a.mods.indexOf(+r)>-1||j[r]&&a.mods.indexOf(+r)===-1)&&(o=!1);(a.mods.length!==0||j[16]||j[18]||j[17]||j[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 aa(e,a){var t=R["*"],n=e.keyCode||e.which||e.charCode;if(G.filter.call(this,e)){if(n!==93&&n!==224||(n=91),w.indexOf(n)===-1&&n!==229&&w.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(h){var p=St[h];e[h]&&w.indexOf(p)===-1?w.push(p):!e[h]&&w.indexOf(p)>-1?w.splice(w.indexOf(p),1):h==="metaKey"&&e[h]&&w.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(w=w.slice(w.indexOf(p))))}),n in j){for(var o in j[n]=!0,ie)ie[o]===n&&(G[o]=!0);if(!t)return}for(var r in j)Object.prototype.hasOwnProperty.call(j,r)&&(j[r]=e[St[r]]);e.getModifierState&&(!e.altKey||e.ctrlKey)&&e.getModifierState("AltGraph")&&(w.indexOf(17)===-1&&w.push(17),w.indexOf(18)===-1&&w.push(18),j[17]=!0,j[18]=!0);var s=Be();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)&&ta(e,t[i],s,a);if(n in R){for(var c=0;c<R[n].length;c++)if((e.type==="keydown"&&R[n][c].keydown||e.type==="keyup"&&R[n][c].keyup)&&R[n][c].key){for(var m=R[n][c],g=m.splitKey,C=m.key.split(g),u=[],l=0;l<C.length;l++)u.push(tt(C[l]));u.sort().join("")===w.sort().join("")&&ta(e,m,s,a)}}}}function G(e,a,t){w=[];var n=za(e),o=[],r="all",s=document,i=0,c=!1,m=!0,g="+",C=!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&&(c=a.keyup),a.keydown!==void 0&&(m=a.keydown),a.capture!==void 0&&(C=a.capture),typeof a.splitKey=="string"&&(g=a.splitKey)),typeof a=="string"&&(r=a);i<n.length;i++)o=[],(e=n[i].split(g)).length>1&&(o=$a(ie,e)),(e=(e=e[e.length-1])==="*"?"*":tt(e))in R||(R[e]=[]),R[e].push({keyup:c,keydown:m,scope:r,mods:o,shortcut:n[i],method:t,key:n[i],splitKey:g,element:s});s!==void 0&&!function(u){return Jt.indexOf(u)>-1}(s)&&window&&(Jt.push(s),pt(s,"keydown",function(u){aa(u,s)},C),Xt||(Xt=!0,pt(window,"focus",function(){w=[]},C)),pt(s,"keyup",function(u){aa(u,s),function(l){var h=l.keyCode||l.which||l.charCode,p=w.indexOf(h);if(p>=0&&w.splice(p,1),l.key&&l.key.toLowerCase()==="meta"&&w.splice(0,w.length),h!==93&&h!==224||(h=91),h in j)for(var f in j[h]=!1,ie)ie[f]===h&&(G[f]=!1)}(u)},C))}var ft={setScope:ea,getScope:Be,deleteScope:function(e,a){var t,n;for(var o in e||(e=Be()),R)if(Object.prototype.hasOwnProperty.call(R,o))for(t=R[o],n=0;n<t.length;)t[n].scope===e?t.splice(n,1):n++;Be()===e&&ea(a||"all")},getPressedKeyCodes:function(){return w.slice(0)},isPressed:function(e){return typeof e=="string"&&(e=tt(e)),w.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(R).forEach(function(t){var n=R[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(R).forEach(function(s){return delete R[s]});else if(Array.isArray(e))e.forEach(function(s){s.key&&ht(s)});else if(typeof e=="object")e.key&&ht(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=""),ht({key:e,scope:o,method:r,splitKey:"+"})}},keyMap:Rt,modifier:ie,modifierMap:St};for(var gt in ft)Object.prototype.hasOwnProperty.call(ft,gt)&&(G[gt]=ft[gt]);if(typeof window<"u"){var Us=window.hotkeys;G.noConflict=function(e){return e&&window.hotkeys===G&&(window.hotkeys=Us),G},window.hotkeys=G}G.filter=function(){return!0};var na=function(e,a){var t=e.target,n=t&&t.tagName;return!!(n&&a&&a.includes(n))};function Ls(e,a,t,n){t instanceof Array&&(n=t,t=void 0);var o=t||{},r=o.enableOnTags,s=o.filter,i=o.keyup,c=o.keydown,m=o.filterPreventDefault,g=m===void 0||m,C=o.enabled,u=C===void 0||C,l=o.enableOnContentEditable,h=l!==void 0&&l,p=b.useRef(null),f=b.useCallback(function(S,E){var A,_;return s&&!s(S)?!g:!!(na(S,["INPUT","TEXTAREA","SELECT"])&&!na(S,r)||(A=S.target)!=null&&A.isContentEditable&&!h)||!!(p.current===null||document.activeElement===p.current||(_=p.current)!=null&&_.contains(document.activeElement))&&(a(S,E),!0)},n?[p,r,s].concat(n):[p,r,s]);return b.useEffect(function(){if(u)return i&&c!==!0&&(t.keydown=!1),G(e,t||{},f),function(){return G.unbind(e,f)};G.unbind(e,f)},[f,e,u]),p}G.isPressed;const Gs=[],oa="dashboard_card",X="ai_cfo_dashboard_card";function sa(e,a){return a?e.some(t=>String(t)===X)?e.slice():[X,...e]:e.filter(t=>String(t)!==X)}const Vs=["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","zeni_accounts_promo_card","rewards_card","treasury_promo_card"],Ys=(e,a,t,n,o)=>({card:{dimension:et(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}),Re=(e,a,t,n,o)=>({card:{dimension:et(t),cardType:n,cardIndex:o,fetchState:a,disableAnimations:!1,spansFullDashboardWidth:!1},data:e}),Ns=(e,a,t,n)=>Re(void 0,e,_e,a,t),$s=(e,a,t,n,o)=>({card:{dimension:et(_e),cardType:a,cardIndex:t,fetchState:e,disableAnimations:!1,spansFullDashboardWidth:!1},data:{funds:n,shouldShowTreasuryPromoIntroVideo:o,videoUrl:"https://www.youtube.com/watch?v=sqvJWKCMZgk"}}),zs=e=>{const a=et(_e);return a.height=_e.height+10,{card:{dimension:a,cardType:X,cardIndex:e,fetchState:"Completed",disableAnimations:!1,spansFullDashboardWidth:!0}}},Ks=ee(function(e,a){const t=Qs(a.dashboardReport),n=a.passedCardsOrdered,o=a.dashboardReport.reportsInOrder,{isInterestedInChargeCard:r,cardsCreditLimit:s,cashbackRate:i,treasuryFundDetails:c,shouldShowTreasuryPromoIntroVideo:m,treasuryFetchState:g}=a;let C=n.map((u,l)=>{if(u==="reimbursement_promo_card"||u==="bill_pay_promo_card")return Ns(t,u,l);if(u==="zeni_promo_card")return Re({isExpressedInterest:r,creditLimit:s,cashbackRate:i,fetchState:"Completed"},a.cardBalanceFetchState,_e,u,l);if(u==="treasury_promo_card")return $s(g,u,l,c,m);if(u==="information_card")return Re(void 0,"Completed",_e,u,l);if(u===X)return zs(l);{const h=o.find(p=>p?.reportId===u);return h?function(p,f,S,E){const A=p.reportId;switch(A){case"card_balance":case"cash_balance":return[Ys(p,f,S,A,E)];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"zeni_accounts_promo_card":case"rewards_card":return[Re(p,f,S,A,E)];case"net_burn_or_income_story_card":return[Re(p,f,S,"net_burn_or_income_story_card",E)];default:return console.error(`card type ${A} not yet supported!`),[]}}(h,h.fetchState,_e,l):[]}}).flat();return a.isSummaryCardsFiltered===!0&&(C=C.filter(u=>Vs.includes(u.card.cardType)==0).filter(u=>{const l=u.data?.availableNumberOfPeriods;return l!=null?l>0:u.card.cardType!="top_expenses"||u.data==null||function(h){if(h==null||h.length===0)return!0;let p=!0;for(const f of h)if(f.balance.available.amount!==0){p=!1;break}return p}(u.data.topExpenses.accountsOrdered)===!1})),{cardDataArray:C,autoCompleteData:{autoCompleteText:e.entityAutoCompleteState.autoCompleteText.navbar,entityAutoCompleteView:ce(e,"navbar")},analytics:T,isReimbursementEnabled:a.isReimbursementEnabled,isBillPayEnabled:a.isBillPayEnabled}},function(e,a){const t=a.tenantId,n=M.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.isZeniAccountEnabled===!1&&s.push("zeni_accounts_promo_card"),a.isRewardsFeatureEnabled===!1&&s.push("rewards_card"),function(i,c,m,g){if(c!==X)switch(c){case"card_balance":i(ma());break;case"cash_balance":i(da());break;case"operating_expenses":i(Da(!0));break;case"revenue":i(xa(!0));break;case"net_burn_or_income":i(Ta(!0));break;case"net_burn_or_income_story_card":i(Ro(!0));break;case"cash_position":i(Ea(!0));break;case"top_expenses":i(Ia());break;case"cash_in_cash_out":i(va());break;case"insights_dashboard":i(Fo());break;case"bill_pay_card":i(Oo());break;case"reimbursement_card":i(wo());break;case"company_details":i(Po(m));break;case"task_card":i(Do());break;case"accounts_payable_aging":g.includes("accounts_payable_aging")===!1&&i(Ct(xe()));break;case"accounts_receivable_aging":i(_t(xe()));break;case"zeni_accounts_promo_card":g.includes("zeni_accounts_promo_card")===!1&&i(ua());break;case"rewards_card":g.includes("rewards_card")===!1&&i(xo(!0));break;default:throw new Error(`report type ${c} is not yet supported`)}}(e,r,a.companyId,s)},onTimeframeChange:(o,r)=>{T.trackTimeframeSwitch(Va(r),qs(o),"Dashboard"),function(s,i,c){switch(i){case"operating_expenses":case"revenue":case"net_burn_or_income":case"cash_position":s(De(c));break;case"top_expenses":s(Aa(c));break;default:throw new Error(`report type ${i} doesn't support changeTimeframe`)}}(e,o,r)},onUpdateSelectedInsightIndex:o=>{e(To(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,r)=>{if(o==="bill_pay_promo_card"){const s="../bills",i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i},relative:"path"})}else if(o==="reimbursement_promo_card"){const s="../reimbursements",i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i},relative:"path"})}else if(o==="zeni_accounts_promo_card")if(a.hasZeniAccountsAdminAccess){let s="../checking/promo";r!=null&&(s=`../checking/${r}`);const i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i},relative:"path"})}else window.open("https://www.zeni.ai/product/business-checking-accounts","_blank");else if(o==="treasury_promo_card")if(a.isUserHasTreasuryAccess){M.saveTreasuryPopupSeen(a.tenantEmailDomain,!0);const s="../treasury",i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i},relative:"path"})}else window.open("https://www.zeni.ai/product/treasury","_blank")},onSaveClick:(o,r,s)=>{o==="net_burn_or_income_story_card"&&(T.trackUpdateBurnRateCalculatorSettings(r,s,Io(s)),e(Eo(t,r,s)))},onVideoPlay:()=>{e(dt())},onRemindMeLaterClick:()=>{e(vo())},onDontShowAgainClick:()=>{e(dt())},onIntroOutsideClick:()=>{a.isTreasuryPromoIntroClosedByOutsideClick===!0&&a.isTreasuryPromoVideoPlayed!==!0?e(dt()):e(Ao())}},autoCompleteActions:{onAutoCompleteInputChange:o=>{o.trim().length>=2?e(le({searchString:o,searchOrigin:"navbar"})):o.trim().length===0&&e(J("navbar"))},onCancelAutoComplete:()=>{e(J("navbar"))},onAutoCompleteEntity:o=>{let r="";r=o.type!=="vendor"||o.detailType!=="bank_merchant"&&o.detailType!=="card_merchant"?ue(o,a.tenantEmailDomain):ts(o.zeniId,o.qboId,a.tenantEmailDomain);const s=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(r,{state:{pathnameStackToGoBack:s,referrer:"Search"}})}}}})(es);function Zs(){const e=ra(),a=Fa(),t=Ua(a),{isAiCfoOpen:n,setIsAiCfoOpen:o,setAiCfoSidePanelQuestionToSubmit:r}=Oa(),s=W(),i=$(),c=H(),m=M.getSignedInUser(),{useFeatureGate:g,useDynamicConfig:C}=Se(),[u,l]=b.useState(!1),[h,p]=b.useState(!1),f=Ra(),{tenantEmailDomain:S}=K(),{isAiCfoAccessEnabled:E,onAskAiCfoClick:A}=ae({mobileExploreReferrer:"Dashboard"}),_=k(v=>v.tenantState.fetchState==="Completed"||v.tenantState.activeTenantFetchState.fetchState==="Completed"?L(v):void 0),x=_??M.getSignedInUserTenant(S),P=_?.masterTOSInfo?.isMasterTOSAccepted??!1,y=x.tenantId,I=x.companyId;b.useEffect(()=>{u===!1&&c.state?.message==="activation"&&(i(go(I)),l(!0))},[c.state,u,I,i]),b.useEffect(()=>{f&&!h&&c.state?.message==="open_ai_cfo_drawer"&&(p(!0),P?(o(!0),s({pathname:c.pathname,search:c.search,hash:c.hash},{replace:!0,state:{...c.state,message:void 0}})):se({location:c,navigate:s,mergeState:{referrer:"Dashboard",message:void 0}}))},[c,h,f,P,o,s]);const{isFeatureEnabled:U}=g(B.isApAgingFeatureEnabled),{isFeatureEnabled:ne}=g(B.isExpenseAutomationEnabled),{isFeatureEnabled:$e}=g(B.isExpenseAutomationEnabledV2),me=Zo(),{isFeatureEnabled:ze}=g(B.isTreasuryEnabled),F=qo(me),{isFeatureEnabled:oe}=g(B.isArAgingFeatureEnabled),{isFeatureEnabled:Ke}=g(B.isDepositAccountsFeatureEnabled),{isFeatureEnabled:Ze}=g(B.isReferralFeatureEnabled),{isFeatureEnabled:Za}=g(B.isChargeCardFeatureEnabled),{isFeatureEnabled:qa}=g(B.isAiCfoFileUploadEnabled),{isFeatureEnabled:Qa}=g(B.isDashboardSidebarChristmasAnimationEnabled),{isFeatureEnabled:Ha}=g(B.isDashboardSidebarNewYearAnimationEnabled),{isFeatureEnabled:Wa}=g(B.aiAuditScorePercentage),{configValue:Bt}=C(Ba.zeniCardsConfig),Xa=Bt.charge_card_cashback_rate_per_transaction==null?.0175:Bt.charge_card_cashback_rate_per_transaction;if(c.state?.message==="activation"){const v=Qo(c.state?.pathnameStackToGoBack);s(c.pathname,{state:{...c.state,message:void 0,pathnameStackToGoBack:v.newStack}})}const[jt,Ja]=b.useState(!1),[at,en]=b.useState(!1);Ls("command+p, Control+p",v=>{en(!at),v.preventDefault()},{enableOnContentEditable:!0,enableOnTags:["INPUT","SELECT","TEXTAREA"]},[at]);const Mt=_?.externalConnections?.accounting[0]?.isValid;if(m==null)throw Error("Can't access dashboard without signing in...");const pe=k(v=>L(v)?.excludedResources),tn=k(v=>v.expenseAutomationViewState.selectedPeriodByTenantId),an=!!_?.companyReimbursementInfo?.info?.isReimbursementEnabled,nn=!!_?.companyBillPayInfo?.info?.isBillPayEnabled,on=k(v=>v.treasurySetupViewState.treasuryFundsDetails).fetchStatus.fetchState,sn=_?.company!=null&&bo(_.company),rn=ze&&sn,nt=ke(),cn=yt(nt?.loggedInUserRoleMap),z=[],Ut=pe?.resources?.find(v=>v.resource==="/reports/top_expenses")==null,ln=pe?.resources?.find(v=>v.resource==="/reports/task_card")==null,ot=_?.userRole!=null&&ka(_?.userRole),dn=pe?.resources?.find(v=>v.resource==="/bills")==null&&!ot,un=pe?.resources?.find(v=>v.resource==="/reimbursements")==null,mn=Co(nt?.loggedInUserRoleMap),pn=_o(nt?.loggedInUserRoleMap),hn=_?.company?.companyChargeCardInfo?.chargeCardsCreditAccountLimit??0,fn=_?.companyChargeCardInfo?.info?.isCompanyInterestedInChargeCard??!1,gn=k(v=>v.treasurySetupViewState.treasuryFundsDetails).fundsDetails;Ut===!1&&z.push("top_expenses"),ln===!1&&z.push("task_card"),dn===!1&&z.push("bill_pay_card","bill_pay_promo_card"),U===!1&&z.push("accounts_payable_aging"),oe===!1&&z.push("accounts_receivable_aging"),(me===!1||ot)&&z.push("expense_automation_card"),un===!1&&z.push("reimbursement_card","reimbursement_promo_card"),z.push("zeni_accounts_promo_card","treasury_promo_card"),Ze===!1&&z.push("rewards_card");const{areTenantIdsInSync:Lt}=Ho();b.useLayoutEffect(()=>{jt&&F===me||Mt!==!0||!Lt||pe?.fetchState!=="Completed"&&pe?.fetchState!=="Error"||(Ja(!0),i(ko(m.userId,I,y,!0,!1,z)))},[jt,m,y,i,Ut,Mt,pe?.fetchState,Lt]);const bn=k(v=>v.reportUIOptionsState.forecastOnDashboard.isForecastModeOn),Cn=k(v=>v.revenueState.uiState.selectedForecast?.id),_n=k(v=>v.cardBalanceState.fetchState),he=k(v=>So(v,z,m,$e,ne)),kn=he.fetchState,Sn=b.useMemo(()=>sa(he.cardsOrdered,E),[he.cardsOrdered,E]),yn=b.useMemo(()=>sa(he.cardsForDashboardUI,E),[he.cardsForDashboardUI,E]);Ge({isDataReady:!0});const{isSuggestedQuestionsLoading:An,suggestedPromptQuestions:vn}=ns(),st=_?.isTreasuryPromoVideoPlayed===!0,Gt=_?.isTreasuryPromoVideoRemindMeLaterClicked===!0,Vt=_?.loginCounterForTreasuryPromoVideo??0,In=_?.isTreasuryPromoIntroClosedByOutsideClick===!0,Yt=k(v=>v.dashboardState.isTreasuryVideoClosed),Nt=b.useMemo(()=>Wo({isTreasuryPromoVideoRemindMeLaterClicked:Gt,isTreasuryPromoVideoPlayed:st,loginCounterForTreasuryPromoVideo:Vt,isTreasuryVideoClosed:Yt}),[Gt,st,Vt,Yt]),$t=k(v=>pa(v)),ye=$t.uiState?.currentChatSessionId,rt=$t.allSessionsWithOrderedQuestionAnswers??Gs,{currentSessionQuestionAnswers:En}=Xo(rt,ye),zt=En.length===0,Tn=b.useCallback((v,q,fe)=>{const Ae=m?.userId;if(Ae==null)return;const V=v.trim();if(V.length===0&&q.length===0)return;if(!P)return void se({location:c,navigate:s,mergeState:{referrer:"Dashboard"}});const Q=ja(e.getState()),ve=()=>{const Ie=D(c.state?.pathnameStackToGoBack,c.pathname);s(`/${S}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:Ie,referrer:"Dashboard",aiCfoInitialQuestion:V,aiCfoShouldSubmit:!Q&&V.length>0,aiCfoInitialSubmissionSource:oa,...typeof fe=="number"?{aiCfoSuggestionIndex:fe}:{}}})};return t?q.length>0?void o(!0):void ve():q.length>0?Q?(i(kt(V)),void o(!0)):(r(V.length>0?V:null),o(!0),void(V.length>0&&Ma(i,V,oa,ye,rt,Ae,fe,q.length>0?q:void 0))):(Q&&i(kt(V)),void ve())},[rt,ye,i,P,t,c,s,r,o,m?.userId,e,S]),xn=b.useCallback(()=>{P?o(!0):se({location:c,navigate:s,mergeState:{referrer:"Dashboard"}})},[P,c,s,o]),Dn=b.useCallback(()=>{if(!P)return void se({location:c,navigate:s,mergeState:{referrer:"Dashboard"}});if(S==null)return;const v=D(c.state?.pathnameStackToGoBack,c.pathname);s(`/${S}/ai-cfo/explore`,{state:{pathnameStackToGoBack:v,referrer:"Dashboard"}})},[P,c,s,S]),Pn=b.useCallback(()=>{if(P)if(t){if(S==null||_==null)return;const v=ye==null||zt?`/${S}/ai-cfo/explore`:`/${S}/ai-cfo/${ye}`,q=c.state?.pathnameStackToGoBack??[],fe=D(q,c.pathname);s(v,{state:{...c.state,pathnameStackToGoBack:fe,[Jo]:!0}})}else se({location:c,navigate:s,mergeState:{referrer:"Dashboard"}});else se({location:c,navigate:s,mergeState:{referrer:"Dashboard"}})},[P,t,c,s,S,_,ye,zt]);return d.jsxs(d.Fragment,{children:[kn==="Completed"?d.jsx(Ve,{analytics:T,onLoad:v=>{v.trackPageLoaded(Y.Event.dashboard),rn&&Nt===!0&&v.trackTreasuryPromoView("Dashboard Promo Video")}}):null,d.jsx(Ks,{maxColumns:n?2:void 0,isAiCfoAccessEnabled:E,onAskAiCfoClick:A,onAiCfoDashboardOpenPanel:xn,onAiCfoDashboardOpenScopePage:Pn,isAiCfoFileUploadEnabled:qa===!0&&t===!1,onAiCfoDashboardPromptSubmit:Tn,onAiCfoDashboardExpandToFullPage:Dn,aiCfoDashboardSuggestedPromptQuestions:vn,aiCfoDashboardSuggestedPromptQuestionsLoading:An,onDragAndDropCard:(v,q)=>{if(v===X||q===X)return;const fe=function(Q,ve,Ie){const it=Ie.indexOf(Q),ct=Ie.indexOf(ve);if(it===-1||ct===-1||it===ct)return Ie;const lt=[...Ie];return lt.splice(it,1),lt.splice(ct,0,Q),lt}(v,q,Sn),Ae=fe.filter(Q=>Q!==X),V=he.cardsOrdered;(Ae.length!==V.length||Ae.some((Q,ve)=>Q!==V[ve]))&&i(yo(Ae))},dashboardReport:he,passedCardsOrdered:yn,tenantId:y,companyId:I,tenantEmailDomain:S,location:c,navigate:s,isApAgingFeatureEnabled:U,isArAgingFeatureEnabled:oe,isBillPayEnabled:nn,isReimbursementEnabled:an,isSummaryCardsFiltered:at,isForecastOn:bn,selectedForecastOnDashboard:Cn,isVisitingFirstTime:u,isZeniAccountEnabled:Ke,isRewardsFeatureEnabled:Ze,hasZeniAccountsAdminAccess:cn,isExpenseAutomationEnabledForUser:me&&ot===!1,selectedPeriod:tn[y],isChargeCardFeatureEnabled:Za,isUserHasCardsAccess:mn,isUserHasTreasuryAccess:pn,cardsCreditLimit:hn,cashbackRate:Xa,isInterestedInChargeCard:fn,cardBalanceFetchState:_n,christmasAnimationEnabled:Qa,newYearAnimationEnabled:Ha,treasuryFundDetails:gn,shouldShowTreasuryPromoIntroVideo:Nt,isTreasuryPromoVideoPlayed:st,isTreasuryPromoIntroClosedByOutsideClick:In,treasuryFetchState:on,aiAuditScorePercentageEnabled:Wa})]})}const qs=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"},Qs=e=>e.fetchState!=="Error"?e.fetchState:e.reportsInOrder.map(a=>a.fetchState).reduce((a,t)=>a==="In-Progress"||a==="Not-Started"?a:t);function vr(){const e=ke(),a=e?.excludedResources?.find(m=>m.resource==="/reports/top_expenses")==null,{useFeatureGate:t}=Se(),{isFeatureEnabled:n}=t(B.isApAgingFeatureEnabled),{isFeatureEnabled:o}=t(B.isArAgingFeatureEnabled),r=k(m=>L(m)),{isFeatureEnabled:s}=t(B.isDebitCardFeatureEnabled),i=Bo(s,r),c=jo(r);return i===!0||c===!0?d.jsx(bt,{children:d.jsx(O,{path:"/*",element:d.jsx(os,{})})}):d.jsxs(bt,{children:[d.jsx(O,{path:"/",element:d.jsx(Zs,{})}),d.jsx(O,{path:"cash_balance/*",element:d.jsx(Wt,{})}),d.jsx(O,{path:"card_balance/*",element:d.jsx(Wt,{})}),d.jsx(O,{path:"operating_expenses/*",element:d.jsx(re,{})}),d.jsx(O,{path:"operating_expenses/forecast/*",element:d.jsx(ut,{})}),d.jsx(O,{path:"revenue/forecast/*",element:d.jsx(ut,{})}),d.jsx(O,{path:"revenue/*",element:d.jsx(re,{})}),d.jsx(O,{path:"net_burn_or_income/forecast/*",element:d.jsx(ut,{})}),d.jsx(O,{path:"net_burn_or_income/*",element:d.jsx(re,{})}),n===!0&&d.jsxs(d.Fragment,{children:[d.jsx(O,{path:"accounts_payable_aging/*",element:d.jsx(is,{})}),d.jsx(O,{path:"accounts_payable_aging/:vendorId/:reportDate/*",element:d.jsx(rs,{})})]}),o&&d.jsxs(d.Fragment,{children:[d.jsx(O,{path:"accounts_receivable_aging/:customerId/:reportDate/*",element:d.jsx(cs,{})}),d.jsx(O,{path:"accounts_receivable_aging/*",element:d.jsx(ls,{})})]}),d.jsx(O,{path:"cash_position/*",element:d.jsx(re,{})}),d.jsx(O,{path:"top_expenses/*",element:a===!0?d.jsx(re,{}):d.jsx(je,{})}),d.jsx(O,{path:"cash_in_cash_out/*",element:d.jsx(re,{})}),d.jsx(O,{path:"company_details",element:d.jsx(as,{})}),d.jsx(O,{path:"referrals/*",element:d.jsx(ss,{})}),d.jsx(O,{path:"*",element:d.jsx(je,{})})]})}export{vr as default};
20
+ `,Te=3,Ft=1;function Ms({fetchState:e,firstMonthOfFY:a,reportId:t,forecastId:n}){const o=W(),r=H(),{tenantEmailDomain:s}=K();let i;Ge({isDataReady:!0});const c={firstMonthOfFY:a,tenantEmailDomain:s,location:r,navigate:o,forecastIdFromUrlPath:n,fetchState:e};switch(t){case"operating_expenses":i=d.jsx(Ds,{...c});break;case"revenue":i=d.jsx(Os,{...c});break;case"net_burn_or_income":i=d.jsx(Es,{...c});break;case"cash_position":i=d.jsx(vs,{...c});break;case"top_expenses":i=d.jsx(Bs,{...c});break;case"cash_in_cash_out":i=d.jsx(ks,{...c});break;default:console.error(`${t} is not supported!`),i=null}return i!=null?d.jsx(js,{children:i}):null}function re(){const e=H(),a=$(),{forecastId:t}=K();let n="Not-Started";const o=k(l=>xt(l).fetchState),r=k(l=>Dt(l).fetchState),s=k(l=>vt(l).fetchState),i=k(l=>l.cashPositionState.fetchState),c=k(l=>l.topExState.fetchState),m=k(l=>l.cashInCashOutState.fetchState);if(M.getSignedInUser()==null)throw Error("Can't access dashboard detail without signing in...");const g=k(l=>L(l)),C=g?.company?.companyInfo?.firstMonthOfFY??1,u=ca((l=>{const h=la(l,"/").split("/");return t!=null?h[h.length-3]:h[h.length-1]})(e.pathname));switch(u){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=c;break;case"cash_in_cash_out":n=m;break;default:console.error(`${u} is not supported!`)}return b.useEffect(()=>{n==="Not-Started"&&function(l,h,p,f){switch(h){case"operating_expenses":l(Da(!0)),f!=null&&(l(Ee(p,!0,Te,{id:f,index:0})),l(_a(!1,f)));break;case"revenue":l(xa(!0)),f!=null&&(l(Ee(p,!0,Te,{id:f,index:0})),l(ya(!1,f)));break;case"net_burn_or_income":l(Ta(!0)),f!=null&&(l(Ee(p,!0,Te,{id:f,index:0})),l(ba(!1,f)));break;case"cash_position":l(Ea(!0));break;case"top_expenses":l(Ia());break;case"cash_in_cash_out":l(Aa());break;default:throw new Error(`report type ${h} is not yet supported`)}}(a,u,C,t)},[t]),d.jsxs(d.Fragment,{children:[n==="Completed"?d.jsx(Ve,{analytics:T,onLoad:l=>((h,p)=>{const f=e.state?.referrer;switch(p){case"operating_expenses":h.trackPageLoaded(Y.Event.operatingExpenses,f);break;case"revenue":h.trackPageLoaded(Y.Event.revenues,f);break;case"net_burn_or_income":h.trackPageLoaded(Y.Event.burnRate,f);break;case"cash_position":h.trackPageLoaded(Y.Event.cashPosition,f);break;case"top_expenses":h.trackPageLoaded(Y.Event.topExpenses,f);break;case"cash_in_cash_out":h.trackPageLoaded(Y.Event.cashInCashOut,f);break;default:console.error(`Analytics: Not tracking Page Loaded for ${p}!`)}})(l,u)}):null,d.jsx(Ms,{firstMonthOfFY:C,fetchState:n,reportId:u,forecastId:t})]})}var mt=typeof navigator<"u"&&navigator.userAgent.toLowerCase().indexOf("firefox")>0;function pt(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 za(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 Rt={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,"-":mt?173:189,"=":mt?61:187,";":mt?59:186,"'":222,"[":219,"]":221,"\\":220},ie={"⇧":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},j={16:!1,18:!1,17:!1,91:!1},R={},He=1;He<20;He++)Rt["f".concat(He)]=111+He;var P=[],Xt=!1,Ka="all",Jt=[],tt=function(e){return Rt[e.toLowerCase()]||ie[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function ea(e){Ka=e||"all"}function Be(){return Ka||"all"}var ht=function(e){var a=e.key,t=e.scope,n=e.method,o=e.splitKey,r=o===void 0?"+":o;za(a).forEach(function(s){var i=s.split(r),c=i.length,m=i[c-1],g=m==="*"?"*":tt(m);if(R[g]){t||(t=Be());var C=c>1?$a(ie,i):[];R[g]=R[g].filter(function(u){return!((!n||u.method===n)&&u.scope===t&&function(l,h){for(var p=l.length>=h.length?l:h,f=l.length>=h.length?h:l,S=!0,E=0;E<p.length;E++)f.indexOf(p[E])===-1&&(S=!1);return S}(u.mods,C))})}})};function ta(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,j)Object.prototype.hasOwnProperty.call(j,r)&&(!j[r]&&a.mods.indexOf(+r)>-1||j[r]&&a.mods.indexOf(+r)===-1)&&(o=!1);(a.mods.length!==0||j[16]||j[18]||j[17]||j[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 aa(e,a){var t=R["*"],n=e.keyCode||e.which||e.charCode;if(G.filter.call(this,e)){if(n!==93&&n!==224||(n=91),P.indexOf(n)===-1&&n!==229&&P.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(h){var p=St[h];e[h]&&P.indexOf(p)===-1?P.push(p):!e[h]&&P.indexOf(p)>-1?P.splice(P.indexOf(p),1):h==="metaKey"&&e[h]&&P.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(P=P.slice(P.indexOf(p))))}),n in j){for(var o in j[n]=!0,ie)ie[o]===n&&(G[o]=!0);if(!t)return}for(var r in j)Object.prototype.hasOwnProperty.call(j,r)&&(j[r]=e[St[r]]);e.getModifierState&&(!e.altKey||e.ctrlKey)&&e.getModifierState("AltGraph")&&(P.indexOf(17)===-1&&P.push(17),P.indexOf(18)===-1&&P.push(18),j[17]=!0,j[18]=!0);var s=Be();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)&&ta(e,t[i],s,a);if(n in R){for(var c=0;c<R[n].length;c++)if((e.type==="keydown"&&R[n][c].keydown||e.type==="keyup"&&R[n][c].keyup)&&R[n][c].key){for(var m=R[n][c],g=m.splitKey,C=m.key.split(g),u=[],l=0;l<C.length;l++)u.push(tt(C[l]));u.sort().join("")===P.sort().join("")&&ta(e,m,s,a)}}}}function G(e,a,t){P=[];var n=za(e),o=[],r="all",s=document,i=0,c=!1,m=!0,g="+",C=!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&&(c=a.keyup),a.keydown!==void 0&&(m=a.keydown),a.capture!==void 0&&(C=a.capture),typeof a.splitKey=="string"&&(g=a.splitKey)),typeof a=="string"&&(r=a);i<n.length;i++)o=[],(e=n[i].split(g)).length>1&&(o=$a(ie,e)),(e=(e=e[e.length-1])==="*"?"*":tt(e))in R||(R[e]=[]),R[e].push({keyup:c,keydown:m,scope:r,mods:o,shortcut:n[i],method:t,key:n[i],splitKey:g,element:s});s!==void 0&&!function(u){return Jt.indexOf(u)>-1}(s)&&window&&(Jt.push(s),pt(s,"keydown",function(u){aa(u,s)},C),Xt||(Xt=!0,pt(window,"focus",function(){P=[]},C)),pt(s,"keyup",function(u){aa(u,s),function(l){var h=l.keyCode||l.which||l.charCode,p=P.indexOf(h);if(p>=0&&P.splice(p,1),l.key&&l.key.toLowerCase()==="meta"&&P.splice(0,P.length),h!==93&&h!==224||(h=91),h in j)for(var f in j[h]=!1,ie)ie[f]===h&&(G[f]=!1)}(u)},C))}var ft={setScope:ea,getScope:Be,deleteScope:function(e,a){var t,n;for(var o in e||(e=Be()),R)if(Object.prototype.hasOwnProperty.call(R,o))for(t=R[o],n=0;n<t.length;)t[n].scope===e?t.splice(n,1):n++;Be()===e&&ea(a||"all")},getPressedKeyCodes:function(){return P.slice(0)},isPressed:function(e){return typeof e=="string"&&(e=tt(e)),P.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(R).forEach(function(t){var n=R[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(R).forEach(function(s){return delete R[s]});else if(Array.isArray(e))e.forEach(function(s){s.key&&ht(s)});else if(typeof e=="object")e.key&&ht(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=""),ht({key:e,scope:o,method:r,splitKey:"+"})}},keyMap:Rt,modifier:ie,modifierMap:St};for(var gt in ft)Object.prototype.hasOwnProperty.call(ft,gt)&&(G[gt]=ft[gt]);if(typeof window<"u"){var Us=window.hotkeys;G.noConflict=function(e){return e&&window.hotkeys===G&&(window.hotkeys=Us),G},window.hotkeys=G}G.filter=function(){return!0};var na=function(e,a){var t=e.target,n=t&&t.tagName;return!!(n&&a&&a.includes(n))};function Ls(e,a,t,n){t instanceof Array&&(n=t,t=void 0);var o=t||{},r=o.enableOnTags,s=o.filter,i=o.keyup,c=o.keydown,m=o.filterPreventDefault,g=m===void 0||m,C=o.enabled,u=C===void 0||C,l=o.enableOnContentEditable,h=l!==void 0&&l,p=b.useRef(null),f=b.useCallback(function(S,E){var v,_;return s&&!s(S)?!g:!!(na(S,["INPUT","TEXTAREA","SELECT"])&&!na(S,r)||(v=S.target)!=null&&v.isContentEditable&&!h)||!!(p.current===null||document.activeElement===p.current||(_=p.current)!=null&&_.contains(document.activeElement))&&(a(S,E),!0)},n?[p,r,s].concat(n):[p,r,s]);return b.useEffect(function(){if(u)return i&&c!==!0&&(t.keydown=!1),G(e,t||{},f),function(){return G.unbind(e,f)};G.unbind(e,f)},[f,e,u]),p}G.isPressed;const Gs=[],oa="dashboard_card",X="ai_cfo_dashboard_card";function sa(e,a){return a?e.some(t=>String(t)===X)?e.slice():[X,...e]:e.filter(t=>String(t)!==X)}const Vs=["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","zeni_accounts_promo_card","rewards_card","treasury_promo_card"],Ys=(e,a,t,n,o)=>({card:{dimension:et(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}),Re=(e,a,t,n,o)=>({card:{dimension:et(t),cardType:n,cardIndex:o,fetchState:a,disableAnimations:!1,spansFullDashboardWidth:!1},data:e}),Ns=(e,a,t,n)=>Re(void 0,e,_e,a,t),$s=(e,a,t,n,o)=>({card:{dimension:et(_e),cardType:a,cardIndex:t,fetchState:e,disableAnimations:!1,spansFullDashboardWidth:!1},data:{funds:n,shouldShowTreasuryPromoIntroVideo:o,videoUrl:"https://www.youtube.com/watch?v=sqvJWKCMZgk"}}),zs=e=>{const a=et(_e);return a.height=_e.height+10,{card:{dimension:a,cardType:X,cardIndex:e,fetchState:"Completed",disableAnimations:!1,spansFullDashboardWidth:!0}}},Ks=ee(function(e,a){const t=Qs(a.dashboardReport),n=a.passedCardsOrdered,o=a.dashboardReport.reportsInOrder,{isInterestedInChargeCard:r,cardsCreditLimit:s,cashbackRate:i,treasuryFundDetails:c,shouldShowTreasuryPromoIntroVideo:m,treasuryFetchState:g}=a;let C=n.map((u,l)=>{if(u==="reimbursement_promo_card"||u==="bill_pay_promo_card")return Ns(t,u,l);if(u==="zeni_promo_card")return Re({isExpressedInterest:r,creditLimit:s,cashbackRate:i,fetchState:"Completed"},a.cardBalanceFetchState,_e,u,l);if(u==="treasury_promo_card")return $s(g,u,l,c,m);if(u==="information_card")return Re(void 0,"Completed",_e,u,l);if(u===X)return zs(l);{const h=o.find(p=>p?.reportId===u);return h?function(p,f,S,E){const v=p.reportId;switch(v){case"card_balance":case"cash_balance":return[Ys(p,f,S,v,E)];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"zeni_accounts_promo_card":case"rewards_card":return[Re(p,f,S,v,E)];case"net_burn_or_income_story_card":return[Re(p,f,S,"net_burn_or_income_story_card",E)];default:return console.error(`card type ${v} not yet supported!`),[]}}(h,h.fetchState,_e,l):[]}}).flat();return a.isSummaryCardsFiltered===!0&&(C=C.filter(u=>Vs.includes(u.card.cardType)==0).filter(u=>{const l=u.data?.availableNumberOfPeriods;return l!=null?l>0:u.card.cardType!="top_expenses"||u.data==null||function(h){if(h==null||h.length===0)return!0;let p=!0;for(const f of h)if(f.balance.available.amount!==0){p=!1;break}return p}(u.data.topExpenses.accountsOrdered)===!1})),{cardDataArray:C,autoCompleteData:{autoCompleteText:e.entityAutoCompleteState.autoCompleteText.navbar,entityAutoCompleteView:ce(e,"navbar")},analytics:T,isReimbursementEnabled:a.isReimbursementEnabled,isBillPayEnabled:a.isBillPayEnabled}},function(e,a){const t=a.tenantId,n=M.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.isZeniAccountEnabled===!1&&s.push("zeni_accounts_promo_card"),a.isRewardsFeatureEnabled===!1&&s.push("rewards_card"),function(i,c,m,g){if(c!==X)switch(c){case"card_balance":i(ma());break;case"cash_balance":i(da());break;case"operating_expenses":i(Da(!0));break;case"revenue":i(xa(!0));break;case"net_burn_or_income":i(Ta(!0));break;case"net_burn_or_income_story_card":i(Ro(!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(Fo());break;case"bill_pay_card":i(Oo());break;case"reimbursement_card":i(Po());break;case"company_details":i(wo(m));break;case"task_card":i(Do());break;case"accounts_payable_aging":g.includes("accounts_payable_aging")===!1&&i(Ct(xe()));break;case"accounts_receivable_aging":i(_t(xe()));break;case"zeni_accounts_promo_card":g.includes("zeni_accounts_promo_card")===!1&&i(ua());break;case"rewards_card":g.includes("rewards_card")===!1&&i(xo(!0));break;default:throw new Error(`report type ${c} is not yet supported`)}}(e,r,a.companyId,s)},onTimeframeChange:(o,r)=>{T.trackTimeframeSwitch(Va(r),Zs(o),"Dashboard"),function(s,i,c){switch(i){case"operating_expenses":case"revenue":case"net_burn_or_income":case"cash_position":s(De(c));break;case"top_expenses":s(va(c));break;default:throw new Error(`report type ${i} doesn't support changeTimeframe`)}}(e,o,r)},onUpdateSelectedInsightIndex:o=>{e(To(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,r)=>{if(o==="bill_pay_promo_card"){const s="../bills",i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i},relative:"path"})}else if(o==="reimbursement_promo_card"){const s="../reimbursements",i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i},relative:"path"})}else if(o==="zeni_accounts_promo_card")if(a.hasZeniAccountsAdminAccess){let s="../checking/promo";r!=null&&(s=`../checking/${r}`);const i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i},relative:"path"})}else window.open("https://www.zeni.ai/product/business-checking-accounts","_blank");else if(o==="treasury_promo_card")if(a.isUserHasTreasuryAccess){M.saveTreasuryPopupSeen(a.tenantEmailDomain,!0);const s="../treasury",i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i},relative:"path"})}else window.open("https://www.zeni.ai/product/treasury","_blank")},onSaveClick:(o,r,s)=>{o==="net_burn_or_income_story_card"&&(T.trackUpdateBurnRateCalculatorSettings(r,s,Io(s)),e(Eo(t,r,s)))},onVideoPlay:()=>{e(dt())},onRemindMeLaterClick:()=>{e(Ao())},onDontShowAgainClick:()=>{e(dt())},onIntroOutsideClick:()=>{a.isTreasuryPromoIntroClosedByOutsideClick===!0&&a.isTreasuryPromoVideoPlayed!==!0?e(dt()):e(vo())}},autoCompleteActions:{onAutoCompleteInputChange:o=>{o.trim().length>=2?e(le({searchString:o,searchOrigin:"navbar"})):o.trim().length===0&&e(J("navbar"))},onCancelAutoComplete:()=>{e(J("navbar"))},onAutoCompleteEntity:o=>{let r="";r=o.type!=="vendor"||o.detailType!=="bank_merchant"&&o.detailType!=="card_merchant"?ue(o,a.tenantEmailDomain):ts(o.zeniId,o.qboId,a.tenantEmailDomain);const s=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(r,{state:{pathnameStackToGoBack:s,referrer:"Search"}})}}}})(es);function qs(){const e=ra(),a=Fa(),t=Ua(a),{isAiCfoOpen:n,setIsAiCfoOpen:o,setAiCfoSidePanelQuestionToSubmit:r}=Oa(),s=W(),i=$(),c=H(),m=M.getSignedInUser(),{useFeatureGate:g,useDynamicConfig:C}=Se(),[u,l]=b.useState(!1),[h,p]=b.useState(!1),f=Ra(),{tenantEmailDomain:S}=K(),{isAiCfoAccessEnabled:E,onAskAiCfoClick:v}=ae({mobileExploreReferrer:"Dashboard"}),_=k(A=>A.tenantState.fetchState==="Completed"||A.tenantState.activeTenantFetchState.fetchState==="Completed"?L(A):void 0),x=_??M.getSignedInUserTenant(S),w=_?.masterTOSInfo?.isMasterTOSAccepted??!1,y=x.tenantId,I=x.companyId;b.useEffect(()=>{u===!1&&c.state?.message==="activation"&&(i(go(I)),l(!0))},[c.state,u,I,i]),b.useEffect(()=>{f&&!h&&c.state?.message==="open_ai_cfo_drawer"&&(p(!0),w?(o(!0),s({pathname:c.pathname,search:c.search,hash:c.hash},{replace:!0,state:{...c.state,message:void 0}})):se({location:c,navigate:s,mergeState:{referrer:"Dashboard",message:void 0}}))},[c,h,f,w,o,s]);const{isFeatureEnabled:U}=g(B.isApAgingFeatureEnabled),{isFeatureEnabled:ne}=g(B.isExpenseAutomationEnabled),{isFeatureEnabled:$e}=g(B.isExpenseAutomationEnabledV2),me=qo(),{isFeatureEnabled:ze}=g(B.isTreasuryEnabled),F=Zo(me),{isFeatureEnabled:oe}=g(B.isArAgingFeatureEnabled),{isFeatureEnabled:Ke}=g(B.isDepositAccountsFeatureEnabled),{isFeatureEnabled:qe}=g(B.isReferralFeatureEnabled),{isFeatureEnabled:qa}=g(B.isChargeCardFeatureEnabled),{isFeatureEnabled:Za}=g(B.isAiCfoFileUploadEnabled),{isFeatureEnabled:Qa}=g(B.isDashboardSidebarChristmasAnimationEnabled),{isFeatureEnabled:Ha}=g(B.isDashboardSidebarNewYearAnimationEnabled),{isFeatureEnabled:Wa}=g(B.aiAuditScorePercentage),{configValue:Bt}=C(Ba.zeniCardsConfig),Xa=Bt.charge_card_cashback_rate_per_transaction==null?.0175:Bt.charge_card_cashback_rate_per_transaction;if(c.state?.message==="activation"){const A=Qo(c.state?.pathnameStackToGoBack);s(c.pathname,{state:{...c.state,message:void 0,pathnameStackToGoBack:A.newStack}})}const[jt,Ja]=b.useState(!1),[at,en]=b.useState(!1);Ls("command+p, Control+p",A=>{en(!at),A.preventDefault()},{enableOnContentEditable:!0,enableOnTags:["INPUT","SELECT","TEXTAREA"]},[at]);const Mt=_?.externalConnections?.accounting[0]?.isValid;if(m==null)throw Error("Can't access dashboard without signing in...");const pe=k(A=>L(A)?.excludedResources),tn=k(A=>A.expenseAutomationViewState.selectedPeriodByTenantId),an=!!_?.companyReimbursementInfo?.info?.isReimbursementEnabled,nn=!!_?.companyBillPayInfo?.info?.isBillPayEnabled,on=k(A=>A.treasurySetupViewState.treasuryFundsDetails).fetchStatus.fetchState,sn=_?.company!=null&&bo(_.company),rn=ze&&sn,nt=ke(),cn=yt(nt?.loggedInUserRoleMap),z=[],Ut=pe?.resources?.find(A=>A.resource==="/reports/top_expenses")==null,ln=pe?.resources?.find(A=>A.resource==="/reports/task_card")==null,ot=_?.userRole!=null&&ka(_?.userRole),dn=pe?.resources?.find(A=>A.resource==="/bills")==null&&!ot,un=pe?.resources?.find(A=>A.resource==="/reimbursements")==null,mn=Co(nt?.loggedInUserRoleMap),pn=_o(nt?.loggedInUserRoleMap),hn=_?.company?.companyChargeCardInfo?.chargeCardsCreditAccountLimit??0,fn=_?.companyChargeCardInfo?.info?.isCompanyInterestedInChargeCard??!1,gn=k(A=>A.treasurySetupViewState.treasuryFundsDetails).fundsDetails;Ut===!1&&z.push("top_expenses"),ln===!1&&z.push("task_card"),dn===!1&&z.push("bill_pay_card","bill_pay_promo_card"),U===!1&&z.push("accounts_payable_aging"),oe===!1&&z.push("accounts_receivable_aging"),(me===!1||ot)&&z.push("expense_automation_card"),un===!1&&z.push("reimbursement_card","reimbursement_promo_card"),z.push("zeni_accounts_promo_card","treasury_promo_card"),qe===!1&&z.push("rewards_card");const{areTenantIdsInSync:Lt}=Ho();b.useLayoutEffect(()=>{jt&&F===me||Mt!==!0||!Lt||pe?.fetchState!=="Completed"&&pe?.fetchState!=="Error"||(Ja(!0),i(ko(m.userId,I,y,!0,!1,z)))},[jt,m,y,i,Ut,Mt,pe?.fetchState,Lt]);const bn=k(A=>A.reportUIOptionsState.forecastOnDashboard.isForecastModeOn),Cn=k(A=>A.revenueState.uiState.selectedForecast?.id),_n=k(A=>A.cardBalanceState.fetchState),he=k(A=>So(A,z,m,$e,ne)),kn=he.fetchState,Sn=b.useMemo(()=>sa(he.cardsOrdered,E),[he.cardsOrdered,E]),yn=b.useMemo(()=>sa(he.cardsForDashboardUI,E),[he.cardsForDashboardUI,E]);Ge({isDataReady:!0});const{isSuggestedQuestionsLoading:vn,suggestedPromptQuestions:An}=ns(),st=_?.isTreasuryPromoVideoPlayed===!0,Gt=_?.isTreasuryPromoVideoRemindMeLaterClicked===!0,Vt=_?.loginCounterForTreasuryPromoVideo??0,In=_?.isTreasuryPromoIntroClosedByOutsideClick===!0,Yt=k(A=>A.dashboardState.isTreasuryVideoClosed),Nt=b.useMemo(()=>Wo({isTreasuryPromoVideoRemindMeLaterClicked:Gt,isTreasuryPromoVideoPlayed:st,loginCounterForTreasuryPromoVideo:Vt,isTreasuryVideoClosed:Yt}),[Gt,st,Vt,Yt]),$t=k(A=>pa(A)),ye=$t.uiState?.currentChatSessionId,rt=$t.allSessionsWithOrderedQuestionAnswers??Gs,{currentSessionQuestionAnswers:En}=Xo(rt,ye),zt=En.length===0,Tn=b.useCallback((A,Z,fe)=>{const ve=m?.userId;if(ve==null)return;const V=A.trim();if(V.length===0&&Z.length===0)return;if(!w)return void se({location:c,navigate:s,mergeState:{referrer:"Dashboard"}});const Q=ja(e.getState()),Ae=()=>{const Ie=D(c.state?.pathnameStackToGoBack,c.pathname);s(`/${S}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:Ie,referrer:"Dashboard",aiCfoInitialQuestion:V,aiCfoShouldSubmit:!Q&&V.length>0,aiCfoInitialSubmissionSource:oa,...typeof fe=="number"?{aiCfoSuggestionIndex:fe}:{}}})};return t?Z.length>0?void o(!0):void Ae():Z.length>0?Q?(i(kt(V)),void o(!0)):(r(V.length>0?V:null),o(!0),void(V.length>0&&Ma(i,V,oa,ye,rt,ve,fe,Z.length>0?Z:void 0))):(Q&&i(kt(V)),void Ae())},[rt,ye,i,w,t,c,s,r,o,m?.userId,e,S]),xn=b.useCallback(()=>{w?o(!0):se({location:c,navigate:s,mergeState:{referrer:"Dashboard"}})},[w,c,s,o]),Dn=b.useCallback(()=>{if(!w)return void se({location:c,navigate:s,mergeState:{referrer:"Dashboard"}});if(S==null)return;const A=D(c.state?.pathnameStackToGoBack,c.pathname);s(`/${S}/ai-cfo/explore`,{state:{pathnameStackToGoBack:A,referrer:"Dashboard"}})},[w,c,s,S]),wn=b.useCallback(()=>{if(w)if(t){if(S==null||_==null)return;const A=ye==null||zt?`/${S}/ai-cfo/explore`:`/${S}/ai-cfo/${ye}`,Z=c.state?.pathnameStackToGoBack??[],fe=D(Z,c.pathname);s(A,{state:{...c.state,pathnameStackToGoBack:fe,[Jo]:!0}})}else se({location:c,navigate:s,mergeState:{referrer:"Dashboard"}});else se({location:c,navigate:s,mergeState:{referrer:"Dashboard"}})},[w,t,c,s,S,_,ye,zt]);return d.jsxs(d.Fragment,{children:[kn==="Completed"?d.jsx(Ve,{analytics:T,onLoad:A=>{A.trackPageLoaded(Y.Event.dashboard),rn&&Nt===!0&&A.trackTreasuryPromoView("Dashboard Promo Video")}}):null,d.jsx(Ks,{maxColumns:n?2:void 0,isAiCfoAccessEnabled:E,onAskAiCfoClick:v,onAiCfoDashboardOpenPanel:xn,onAiCfoDashboardOpenScopePage:wn,isAiCfoFileUploadEnabled:Za===!0&&t===!1,onAiCfoDashboardPromptSubmit:Tn,onAiCfoDashboardExpandToFullPage:Dn,aiCfoDashboardSuggestedPromptQuestions:An,aiCfoDashboardSuggestedPromptQuestionsLoading:vn,onDragAndDropCard:(A,Z)=>{if(A===X||Z===X)return;const fe=function(Q,Ae,Ie){const it=Ie.indexOf(Q),ct=Ie.indexOf(Ae);if(it===-1||ct===-1||it===ct)return Ie;const lt=[...Ie];return lt.splice(it,1),lt.splice(ct,0,Q),lt}(A,Z,Sn),ve=fe.filter(Q=>Q!==X),V=he.cardsOrdered;(ve.length!==V.length||ve.some((Q,Ae)=>Q!==V[Ae]))&&i(yo(ve))},dashboardReport:he,passedCardsOrdered:yn,tenantId:y,companyId:I,tenantEmailDomain:S,location:c,navigate:s,isApAgingFeatureEnabled:U,isArAgingFeatureEnabled:oe,isBillPayEnabled:nn,isReimbursementEnabled:an,isSummaryCardsFiltered:at,isForecastOn:bn,selectedForecastOnDashboard:Cn,isVisitingFirstTime:u,isZeniAccountEnabled:Ke,isRewardsFeatureEnabled:qe,hasZeniAccountsAdminAccess:cn,isExpenseAutomationEnabledForUser:me&&ot===!1,selectedPeriod:tn[y],isChargeCardFeatureEnabled:qa,isUserHasCardsAccess:mn,isUserHasTreasuryAccess:pn,cardsCreditLimit:hn,cashbackRate:Xa,isInterestedInChargeCard:fn,cardBalanceFetchState:_n,christmasAnimationEnabled:Qa,newYearAnimationEnabled:Ha,treasuryFundDetails:gn,shouldShowTreasuryPromoIntroVideo:Nt,isTreasuryPromoVideoPlayed:st,isTreasuryPromoIntroClosedByOutsideClick:In,treasuryFetchState:on,aiAuditScorePercentageEnabled:Wa})]})}const Zs=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"},Qs=e=>e.fetchState!=="Error"?e.fetchState:e.reportsInOrder.map(a=>a.fetchState).reduce((a,t)=>a==="In-Progress"||a==="Not-Started"?a:t);function Ar(){const e=ke(),a=e?.excludedResources?.find(m=>m.resource==="/reports/top_expenses")==null,{useFeatureGate:t}=Se(),{isFeatureEnabled:n}=t(B.isApAgingFeatureEnabled),{isFeatureEnabled:o}=t(B.isArAgingFeatureEnabled),r=k(m=>L(m)),{isFeatureEnabled:s}=t(B.isDebitCardFeatureEnabled),i=Bo(s,r),c=jo(r);return i===!0||c===!0?d.jsx(bt,{children:d.jsx(O,{path:"/*",element:d.jsx(os,{})})}):d.jsxs(bt,{children:[d.jsx(O,{path:"/",element:d.jsx(qs,{})}),d.jsx(O,{path:"cash_balance/*",element:d.jsx(Wt,{})}),d.jsx(O,{path:"card_balance/*",element:d.jsx(Wt,{})}),d.jsx(O,{path:"operating_expenses/*",element:d.jsx(re,{})}),d.jsx(O,{path:"operating_expenses/forecast/*",element:d.jsx(ut,{})}),d.jsx(O,{path:"revenue/forecast/*",element:d.jsx(ut,{})}),d.jsx(O,{path:"revenue/*",element:d.jsx(re,{})}),d.jsx(O,{path:"net_burn_or_income/forecast/*",element:d.jsx(ut,{})}),d.jsx(O,{path:"net_burn_or_income/*",element:d.jsx(re,{})}),n===!0&&d.jsxs(d.Fragment,{children:[d.jsx(O,{path:"accounts_payable_aging/*",element:d.jsx(is,{})}),d.jsx(O,{path:"accounts_payable_aging/:vendorId/:reportDate/*",element:d.jsx(rs,{})})]}),o&&d.jsxs(d.Fragment,{children:[d.jsx(O,{path:"accounts_receivable_aging/:customerId/:reportDate/*",element:d.jsx(cs,{})}),d.jsx(O,{path:"accounts_receivable_aging/*",element:d.jsx(ls,{})})]}),d.jsx(O,{path:"cash_position/*",element:d.jsx(re,{})}),d.jsx(O,{path:"top_expenses/*",element:a===!0?d.jsx(re,{}):d.jsx(je,{})}),d.jsx(O,{path:"cash_in_cash_out/*",element:d.jsx(re,{})}),d.jsx(O,{path:"company_details",element:d.jsx(as,{})}),d.jsx(O,{path:"referrals/*",element:d.jsx(ss,{})}),d.jsx(O,{path:"*",element:d.jsx(je,{})})]})}export{Ar as default};
@@ -1 +1 @@
1
- import{j as v}from"./liveblocks-DJRxBaIV.js";import{a as u}from"./sentry-CCv9H2LX.js";import{u as y,j as b,n as w,g as A,N as L}from"./core-Deu6zgNz.js";import{LY as N,eX as _,g1 as U,LZ as k,oa as R,L_ as z}from"./zeni-epic-state-Bs-2KETC.js";import{u as j,z as f,L as T,t as I,a as O,b as $}from"./index-D1FLsJEr.js";import"./mui-2-6pepya.js";import{t as P}from"./getLocaleForTenant-Goc_zo4E.js";import"./recharts-DhkBu8Nc.js";import"./analytics-Dx20Frgp.js";import"./plaid-CAtEruxd.js";import"./dnd-CQEwIj2b.js";import"./stripe-DMRn4zHo.js";import"./lottie-CqN_xVLe.js";import"./lexical-C3dsnw0c.js";import"./pdf-DoNTLdQS.js";import"./utils-Fa4tVlqJ.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]="4a5f1d80-a175-4ef1-baa2-671038ca4531",t._sentryDebugIdIdentifier="sentry-dbid-4a5f1d80-a175-4ef1-baa2-671038ca4531")}catch{}})();const Q=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 C=E(r.pathname);if(C!=null)c=`../${o.tenantEmailDomain}/${C}`,m="comingFromV2UrlPath",C==="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(L,{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}=j(),h=u.useRef(!1),r=u.useRef(!1),p=u.useRef(null),m=b(e=>N(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(T.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(T.TENANT_FETCHING),t(U(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"&&!k(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||(O.updateAppLocaleID(P(c)),o())},[n,a,c]),v.jsx(Q,{})}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"],G={"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 G[s]}export{oe as default};
1
+ import{j as v}from"./liveblocks-Cl_SAGXq.js";import{a as u}from"./sentry-4tqT1r6y.js";import{u as y,j as b,n as w,g as A,N as L}from"./core-jHXRcmGr.js";import{LW as N,eX as _,g1 as U,LX as k,o9 as R,LY as z}from"./zeni-epic-state-BER7XwD9.js";import{u as j,z as f,L as T,t as I,a as O,b as $}from"./index-D3N1b9aQ.js";import"./mui-DT0mOTYO.js";import{t as P}from"./getLocaleForTenant-BNQJePqV.js";import"./recharts-qvF3Dod3.js";import"./analytics-B1ozuY-_.js";import"./plaid-NlhYlsbZ.js";import"./dnd-DXsHzzkY.js";import"./stripe-DMRn4zHo.js";import"./lottie-BvP-9pT9.js";import"./lexical-BsEGFMKX.js";import"./pdf-CgzfzxbY.js";import"./utils-Dc4uXotD.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]="37c39e24-a608-4dab-85ab-451991349029",t._sentryDebugIdIdentifier="sentry-dbid-37c39e24-a608-4dab-85ab-451991349029")}catch{}})();const Q=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 C=E(r.pathname);if(C!=null)c=`../${o.tenantEmailDomain}/${C}`,m="comingFromV2UrlPath",C==="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(L,{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}=j(),h=u.useRef(!1),r=u.useRef(!1),p=u.useRef(null),m=b(e=>N(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(T.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(T.TENANT_FETCHING),t(U(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"&&!k(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||(O.updateAppLocaleID(P(c)),o())},[n,a,c]),v.jsx(Q,{})}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"],G={"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 G[s]}export{oe as default};