@zeniai/web-app-ui 5.1.52-qa → 5.1.53-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.
- package/dist/assets/AddressRoutes-Ct2UHIee.js +1 -0
- package/dist/assets/AddressScreen-DzlfvttE.js +9 -0
- package/dist/assets/{AiCfoScreen-CRoxnDRU.js → AiCfoScreen-D83FklRr.js} +5 -5
- package/dist/assets/{BillPayApprovalRoutes-BWlPp4gg.js → BillPayApprovalRoutes-Dh8a42Hh.js} +1 -1
- package/dist/assets/{BillPayRoutes-BcERL4gz.js → BillPayRoutes-C6_AK3AV.js} +1 -1
- package/dist/assets/{BusinessVerificationPageScreen-DWX7ySZI.js → BusinessVerificationPageScreen-6o8gENq-.js} +2 -2
- package/dist/assets/{CardsAiCfoScreen-DEKa5Xew.js → CardsAiCfoScreen-D5tWDH0n.js} +1 -1
- package/dist/assets/{ChargeCardRoutes-FSWFOO49.js → ChargeCardRoutes-2ad2KSI-.js} +10 -10
- package/dist/assets/CompanyPassportScreen-DBpHUeez.js +1 -0
- package/dist/assets/{ConnectionAuthScreen-DDK9ow_u.js → ConnectionAuthScreen-BDQnLY2-.js} +1 -1
- package/dist/assets/CustomerOnboardingAuthScreen-Yzg3cHZm.js +1 -0
- package/dist/assets/{CustomerOnboardingRoutes-BdqZkh_s.js → CustomerOnboardingRoutes-Cd6aEpRT.js} +5 -5
- package/dist/assets/{DashboardRoutes-BGmqy8sI.js → DashboardRoutes-BqteLe-_.js} +3 -3
- package/dist/assets/{DefaultTenantHome-dUxiOroS.js → DefaultTenantHome-BmKNJTAE.js} +1 -1
- package/dist/assets/DomesticWireDetailScreen-ByI1UAeb.js +18 -0
- package/dist/assets/DrawerScreen-CVn6NI6C.js +1 -0
- package/dist/assets/{EntityDetailRoutes-VUYCsTyx.js → EntityDetailRoutes-CJCW4lau.js} +1 -1
- package/dist/assets/{ExpenseAutomationRoutes-Baf_deUk.js → ExpenseAutomationRoutes-Bw8DwzWR.js} +3 -3
- package/dist/assets/FeaturePreviewScreen-D7L8dftQ.js +1 -0
- package/dist/assets/{HubSpotOAuthCallbackScreen-DLXvcbO1.js → HubSpotOAuthCallbackScreen-BhR_n_gC.js} +1 -1
- package/dist/assets/MagicLinkRoutes-GquONAuy.js +72 -0
- package/dist/assets/MagicLinkSignInScreen-D99xSkpp.js +12 -0
- package/dist/assets/{MobileAppDrawer-BzOopfIc.js → MobileAppDrawer-CzOm0Sxs.js} +1 -1
- package/dist/assets/NotFoundScreen-D51sUkWb.js +1 -0
- package/dist/assets/{NotificationRoutes-BfWTxi_L.js → NotificationRoutes-Bk-3HBBq.js} +1 -1
- package/dist/assets/OAuthConsentScreen-CnnMYT9D.js +1 -0
- package/dist/assets/PandLWithForecastRoutes-Cmu8H8NO.js +1 -0
- package/dist/assets/{PeopleRoutes-Cd2xa-tF.js → PeopleRoutes-BW2q_Dmg.js} +4 -4
- package/dist/assets/PerformanceRoutes-B6NZ0t5W.js +1 -0
- package/dist/assets/{Preview-BBgrn4cd.js → Preview-L8h-Ibqx.js} +1 -1
- package/dist/assets/{QBOConnectionScreen-DiXbUmxS.js → QBOConnectionScreen-BTT5tOv0.js} +1 -1
- package/dist/assets/{ReferralListScreen-BFHfgY0C.js → ReferralListScreen-xE93Ck03.js} +2 -2
- package/dist/assets/{ReimbursementApprovalRoutes-BYBFJrYx.js → ReimbursementApprovalRoutes-D2Kon39b.js} +1 -1
- package/dist/assets/{ReimbursementApprovalRuleDetailScreen-DiIBy_Kn.js → ReimbursementApprovalRuleDetailScreen-CEzdk50o.js} +1 -1
- package/dist/assets/{ReimbursementRoutes-Byj4p7dn.js → ReimbursementRoutes-BJgLWv6y.js} +4 -4
- package/dist/assets/{ReportsRoutes-urJtOHDo.js → ReportsRoutes-ImAHwLCG.js} +1 -1
- package/dist/assets/RewardsRoutes-BQc5zm_c.js +1 -0
- package/dist/assets/{ScreenRoutes-DgHGyuTa.js → ScreenRoutes-BSFeQNd5.js} +2 -2
- package/dist/assets/{SettingsRoutes-B9XEOz3c.js → SettingsRoutes-CAmtpUik.js} +1 -1
- package/dist/assets/{SetupPagesScreen-DiqU6iZv.js → SetupPagesScreen-BEBa0Bcm.js} +4 -4
- package/dist/assets/SignInScreen-CoLktDu5.js +1 -0
- package/dist/assets/{SignOutScreen-BcKxVgCr.js → SignOutScreen-DR8PJ_Dr.js} +1 -1
- package/dist/assets/{TaskListScreen-CIIrTWF0.js → TaskListScreen-B0DRrcBn.js} +2 -2
- package/dist/assets/{TaskRoutes-C3BwKdkV.js → TaskRoutes-46kHJnwt.js} +2 -2
- package/dist/assets/{TransactionDetailRoutes-L60jmvh4.js → TransactionDetailRoutes-B7idB5XF.js} +1 -1
- package/dist/assets/{TransactionDetailScreen-BHKf3UvG.js → TransactionDetailScreen-DhBRM2u-.js} +2 -2
- package/dist/assets/{TransactionListRoutes-B8V8eaVr.js → TransactionListRoutes-Bmu0vt6n.js} +1 -1
- package/dist/assets/{TreasuryRoutes-BIv9NJIQ.js → TreasuryRoutes-BqzqJLAw.js} +5 -5
- package/dist/assets/{VendorsRoutes-CInyDoSC.js → VendorsRoutes-DnOFtiAo.js} +1 -1
- package/dist/assets/WiseConfirmationScreen-f5jOSttP.js +12 -0
- package/dist/assets/{ZeniAccountRoutes-CbhJXy_a.js → ZeniAccountRoutes-Bl_KyIZU.js} +13 -13
- package/dist/assets/ZeniAccountStatementScreen-BhYmNPRG.js +9 -0
- package/dist/assets/{accountMappingHelper-DoYWzqd9.js → accountMappingHelper-BwC4ZXQT.js} +1 -1
- package/dist/assets/{analytics-DVTbnjlr.js → analytics-BpWjaxbv.js} +1 -1
- package/dist/assets/{analyticsHelper-CfMFPPIh.js → analyticsHelper-B5EDEZrW.js} +1 -1
- package/dist/assets/{core-k_c8SCBE.js → core-Cj3sxYL7.js} +1 -1
- package/dist/assets/{decodeURIComponentSafe-ClSfwHJC.js → decodeURIComponentSafe-CyYkfiHv.js} +1 -1
- package/dist/assets/{dnd-CKEs-Nbe.js → dnd-WLAr-qfO.js} +1 -1
- package/dist/assets/{empty-rBU__xZH.js → empty-DFc-bsca.js} +1 -1
- package/dist/assets/{empty-CaaFsHZq.js → empty-rEpgHEWF.js} +1 -1
- package/dist/assets/{emptyVideoElement-BiPjnR5F.js → emptyVideoElement-ClAxGPrQ.js} +1 -1
- package/dist/assets/{epic-BY3t4hzo.js → epic-B2EfNSKx.js} +1 -1
- package/dist/assets/getLocaleForTenant-DI_-EIej.js +1 -0
- package/dist/assets/{index-C9JBC9EP.js → index-2KyAy7Zy.js} +1 -1
- package/dist/assets/{index-B0M_M2si.js → index-B5wYRZoC.js} +1 -1
- package/dist/assets/{index-B4wUHn-k.js → index-BHgTWK3A.js} +1752 -1762
- package/dist/assets/{index-D7n4W-6R.js → index-BW1XqAyr.js} +1 -1
- package/dist/assets/{index-CrxfuqRy.js → index-BftEKN_-.js} +2 -2
- package/dist/assets/{index-CBl-jehm.js → index-BhXRaXnd.js} +1 -1
- package/dist/assets/{index-_Ds-L3qG.js → index-DUBqop-_.js} +1 -1
- package/dist/assets/{index-CAPOi0Fj.js → index-e7I5m4bW.js} +1 -1
- package/dist/assets/{lexical-k-PQZXkn.js → lexical--OluaPRa.js} +1 -1
- package/dist/assets/{liveblocks-D3ESVZyk.js → liveblocks-DmbDY3sa.js} +1 -1
- package/dist/assets/{lottie-BYni7Ovk.js → lottie-W8sR2m8i.js} +1 -1
- package/dist/assets/{mui-UJrLjp1k.js → mui-1V4hRqCa.js} +1 -1
- package/dist/assets/{pathToGoBack-D0Z5Ycmy.js → pathToGoBack-PTW4YbNu.js} +1 -1
- package/dist/assets/{pdf-CaeTpLUv.js → pdf-aJCOHARS.js} +3 -3
- package/dist/assets/{pdf-lib-Cgly_u4z.js → pdf-lib-ovfXHDuI.js} +1 -1
- package/dist/assets/{plaid-B1j5PXHV.js → plaid-JtkXopjw.js} +1 -1
- package/dist/assets/{pusher-IzmLENf0.js → pusher-CHPQmkEo.js} +1 -1
- package/dist/assets/{react-RV2byy3l.js → react-6mQxD1Me.js} +1 -1
- package/dist/assets/{react-BPazXlgj.js → react-BdMLdzsp.js} +1 -1
- package/dist/assets/{react-BhDdWL-M.js → react-CA6ko42q.js} +1 -1
- package/dist/assets/{react-Cbn9UGi3.js → react-CU-y_lik.js} +1 -1
- package/dist/assets/{react-iNsCZPRe.js → react-Ch-GNhUs.js} +1 -1
- package/dist/assets/{react-D9CNJCXY.js → react-GL1Pyhji.js} +1 -1
- package/dist/assets/{recharts-Q-kkTNuO.js → recharts-mFhBBFnU.js} +1 -1
- package/dist/assets/{routePaths-ooqctjvV.js → routePaths-CKR4MRfB.js} +1 -1
- package/dist/assets/{sentry-B_92GPgU.js → sentry--Yi43Gx7.js} +1 -1
- package/dist/assets/{url-CGw_V4gG.js → url-10vNaoth.js} +1 -1
- package/dist/assets/{url-DLQKrj-e.js → url-C6HCkI0M.js} +1 -1
- package/dist/assets/{useAiCfoDashboardSuggestedQuestionsChips-Cx3WWldL.js → useAiCfoDashboardSuggestedQuestionsChips-C8eUPCD2.js} +1 -1
- package/dist/assets/useAskAiCfoHostNavButtonProps-DvB8uvB7.js +1 -0
- package/dist/assets/useCashManagementBanner-WDwkWALo.js +1 -0
- package/dist/assets/{useDeviceId-BE1s-3Wf.js → useDeviceId-n-Ow0WdN.js} +1 -1
- package/dist/assets/{useInitialThreadRequest-C_cJhQDA.js → useInitialThreadRequest-ITLu-S1Q.js} +1 -1
- package/dist/assets/{utils-Mjhh9T8E.js → utils-Bt5dYICv.js} +1 -1
- package/dist/assets/{withTransactionSidePanel-3cc8um6s.js → withTransactionSidePanel-txS5Vf1E.js} +2 -2
- package/dist/assets/{zeni-epic-state-C3zBO1No.js → zeni-epic-state-BG_x9wwl.js} +5 -5
- package/dist/index.html +1 -1
- package/package.json +3 -3
- package/dist/assets/AddressRoutes-odXkPzQ0.js +0 -1
- package/dist/assets/AddressScreen-BJ-IOcKb.js +0 -9
- package/dist/assets/CompanyPassportScreen-CrpUoXvt.js +0 -1
- package/dist/assets/CustomerOnboardingAuthScreen-CDJwl_XS.js +0 -1
- package/dist/assets/DomesticWireDetailScreen-BA2EKhEI.js +0 -18
- package/dist/assets/DrawerScreen-BSfM66hM.js +0 -1
- package/dist/assets/FeaturePreviewScreen-DoKDdD4M.js +0 -1
- package/dist/assets/MagicLinkRoutes-NK00hAHs.js +0 -72
- package/dist/assets/MagicLinkSignInScreen-DnxlEFNW.js +0 -12
- package/dist/assets/NotFoundScreen-6vyCFr5S.js +0 -1
- package/dist/assets/OAuthConsentScreen-DKtWI-tp.js +0 -1
- package/dist/assets/PandLWithForecastRoutes-DgT8jx_6.js +0 -1
- package/dist/assets/PerformanceRoutes-xYB_POFo.js +0 -1
- package/dist/assets/RewardsRoutes-CHiDiriW.js +0 -1
- package/dist/assets/SignInScreen-DqVi8QMM.js +0 -1
- package/dist/assets/WiseConfirmationScreen-DmiV73IN.js +0 -12
- package/dist/assets/ZeniAccountStatementScreen-BuDvio8F.js +0 -9
- package/dist/assets/getLocaleForTenant-CTwYyvWj.js +0 -1
- package/dist/assets/useAskAiCfoHostNavButtonProps-BJGg886y.js +0 -1
- package/dist/assets/useCashManagementBanner-Cjm3Ayi5.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as i}from"./liveblocks-DmbDY3sa.js";import{z as n}from"./index-BHgTWK3A.js";import{g as d}from"./QBOConnectionScreen-BTT5tOv0.js";import"./sentry--Yi43Gx7.js";import{g as p,N as s}from"./core-Cj3sxYL7.js";import"./zeni-epic-state-BG_x9wwl.js";import"./recharts-mFhBBFnU.js";import"./mui-1V4hRqCa.js";import"./analytics-BpWjaxbv.js";import"./plaid-JtkXopjw.js";import"./dnd-WLAr-qfO.js";import"./stripe-DMRn4zHo.js";import"./lottie-W8sR2m8i.js";import"./lexical--OluaPRa.js";import"./pdf-aJCOHARS.js";import"./utils-Bt5dYICv.js";import"./empty-DFc-bsca.js";import"./pdf-lib-ovfXHDuI.js";import"./index-B5wYRZoC.js";import"./url-10vNaoth.js";import"./index-BW1XqAyr.js";import"./decodeURIComponentSafe-CyYkfiHv.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};
|
package/dist/assets/{CustomerOnboardingRoutes-BdqZkh_s.js → CustomerOnboardingRoutes-Cd6aEpRT.js}
RENAMED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import{j as a}from"./liveblocks-
|
|
1
|
+
import{j as a}from"./liveblocks-DmbDY3sa.js";import{t as Me,A as Ce}from"./AddressScreen-DzlfvttE.js";import $e from"./NotFoundScreen-D51sUkWb.js";import{a as g}from"./sentry--Yi43Gx7.js";import{h as oe,g as se,u as ie,i as re,j as D,N as E,n as ce,l as ze,o as qe,p as z}from"./core-Cj3sxYL7.js";import{w as de,j as le,z as B,F as ue,m as Qe,x as _,r as V,A as Y,c as N,B as je,e as J,ap as Ke,K as Ze,aq as ke,h as te,ar as We,as as Ie,o as Ye,at as He,au as Ee,av as Je}from"./index-BHgTWK3A.js";import{bn as Xe,eW as ee,fw as et,fe as pe,fc as me,bt as tt,o3 as at,fs as nt,bS as ot,k4 as ae,k7 as ve,M0 as st,bY as it,c7 as ge,tD as fe,to as rt,Mv as X,tE as _e,JV as ct,l8 as Ue,Mw as Ve,Mx as dt,My as lt,Mz as ut,k2 as pt,k5 as mt,tq as Be,tC as gt,bE as xe,cz as ft,tQ as Te,ry as ht,rm as yt,l0 as St,gg as bt,gf as Ct,ge as kt,MA as It,ti as Et,tR as xt,tU as Tt,tX as Ot,u1 as At,cY as Pt}from"./zeni-epic-state-BG_x9wwl.js";import{n as he}from"./mui-1V4hRqCa.js";import{g as Dt,h as Ft,q as ne}from"./QBOConnectionScreen-BTT5tOv0.js";import"./recharts-mFhBBFnU.js";import"./analytics-BpWjaxbv.js";import"./plaid-JtkXopjw.js";import"./dnd-WLAr-qfO.js";import"./stripe-DMRn4zHo.js";import"./lottie-W8sR2m8i.js";import"./lexical--OluaPRa.js";import"./pdf-aJCOHARS.js";import"./utils-Bt5dYICv.js";import"./empty-DFc-bsca.js";import"./pdf-lib-ovfXHDuI.js";import"./index-B5wYRZoC.js";import"./url-10vNaoth.js";import"./index-BW1XqAyr.js";import"./decodeURIComponentSafe-CyYkfiHv.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]="7cb240fb-6184-4a32-8440-df5e21f1df48",t._sentryDebugIdIdentifier="sentry-dbid-7cb240fb-6184-4a32-8440-df5e21f1df48")}catch{}})();const wt=ce(function(t,o){const s=[];o.isApAgingFeatureEnabled===!1&&s.push("accounts_payable_aging"),o.isArAgingFeatureEnabled===!1&&s.push("accounts_receivable_aging"),o.shouldFetchZeniAccountsPromoCard===!1&&s.push("zeni_accounts_promo_card"),o.shouldFetchRewardsPlanCard===!1&&s.push("rewards_card"),o.isExpenseAutomationEnabledForUser===!1&&s.push("expense_automation_card");const u=nt(t,s,o.signedInUser,o.isExpenseAutomationFeatureEnabledV2,o.isExpenseAutomationEnabledForUser,o.isTreasuryEnabled);return{dashboardFetchState:ot(u.reportsInOrder.map(d=>({fetchState:d.fetchState,error:d.error}))).fetchState}},function(t,o){const{themeState:s,navigate:u,location:d}=o;return{onZeniLogoClick:()=>{s.toggle()},onDashboardFetchDone:()=>{const r=V(d.state?.pathnameStackToGoBack,d.pathname);u("../../dashboard",{state:{pathnameStackToGoBack:r,message:"activation"}})}}})(Ke),jt=()=>{const t=oe(),o=se(),s=ie(),u=de(),[d,r]=g.useState(!1),[p,S]=g.useState(!1),{tenantEmailDomain:e}=re(),n=le(),i=B.getSignedInUser(),f=Xe(i),{useFeatureGate:m}=ue(),I=Qe(),{isFeatureEnabled:x}=m(_.isApAgingFeatureEnabled),{isFeatureEnabled:T}=m(_.isArAgingFeatureEnabled),{isFeatureEnabled:k}=m(_.isDepositAccountsFeatureEnabled),{isFeatureEnabled:h}=m(_.isReferralFeatureEnabled),{isFeatureEnabled:U}=m(_.isExpenseAutomationEnabled),{isFeatureEnabled:C}=m(_.isExpenseAutomationEnabledV2),{isFeatureEnabled:F}=m(_.isDebitCardFeatureEnabled),M=C||U&&f,c=D(l=>ee(l)),{isFeatureEnabled:L}=m(_.isTreasuryEnabled),w=c.company!=null&&et(c.company),R=L&&w,O=D(l=>l.onboardingCustomerViewState.fetchState),b=c.excludedResources,G=c.companyId??B.getSignedInUserTenant(e)?.companyId;if(i==null)throw Error("Can't access onboarding flow without signing in...");const j=pe(F,c),A=me(c),P=[],K=b?.resources?.find(l=>l.resource==="/reports/top_expenses")==null,$=b?.resources?.find(l=>l.resource==="/reports/task_card")==null,q=c?.userRole!=null&&tt(c?.userRole),v=b?.resources?.find(l=>l.resource==="/bills")==null&&!q,Q=b?.resources?.find(l=>l.resource==="/reimbursements")==null;if(K===!1&&P.push("top_expenses"),$===!1&&P.push("task_card"),v===!1&&P.push("bill_pay_card","bill_pay_promo_card"),Q===!1&&P.push("reimbursement_card","reimbursement_promo_card"),k===!1&&P.push("zeni_accounts_promo_card"),h===!1&&P.push("rewards_card"),g.useEffect(()=>{O!=="Completed"||d||j||A||(r(!0),s(at(i.userId,G,c.tenantId,!0,!1,P)))},[d,O,j,A,i,c.tenantId,s]),g.useEffect(()=>{(j||A)&&setTimeout(()=>{S(!0)},5e3)},[j,A]),O!=="Completed")return a.jsx(E,{to:"../"});if(O==="Completed"&&p){const l=V(o.state?.pathnameStackToGoBack,o.pathname);if(j)return a.jsx(E,{to:"../../checking",state:{...o.state,pathnameStackToGoBack:l,message:"activation"}});if(A)return a.jsx(E,{to:"../../cards",state:{...o.state,pathnameStackToGoBack:l,message:"activation"}})}return n?.loggedInUserRoleMap!=null?a.jsxs(a.Fragment,{children:[a.jsx(Y,{analytics:N,onLoad:l=>(Z=>Z.trackPageLoaded(J.Event.onboardingDashboardActivation))(l)}),a.jsx(wt,{navigate:t,location:o,themeState:u,signedInUser:i,isApAgingFeatureEnabled:x,isArAgingFeatureEnabled:T,shouldFetchZeniAccountsPromoCard:k,shouldFetchRewardsPlanCard:h,isExpenseAutomationEnabledForUser:M,isExpenseAutomationFeatureEnabledV2:C,isTreasuryEnabled:R,loggedInUserRoleMap:n?.loggedInUserRoleMap})]}):a.jsx(je,{fetchState:"In-Progress",style:{backgroundColor:I.colors.grey5}})},Oe=he.div`
|
|
2
2
|
display: flex;
|
|
3
3
|
height: 100vh;
|
|
4
4
|
background-color: ${t=>t.theme.colors.grey4};
|
|
5
|
-
`,
|
|
5
|
+
`,Ae=he.div`
|
|
6
6
|
display: flex;
|
|
7
7
|
flex-direction: column;
|
|
8
8
|
align-items: center;
|
|
@@ -12,12 +12,12 @@ import{j as a}from"./liveblocks-D3ESVZyk.js";import{t as Me,A as Ce}from"./Addre
|
|
|
12
12
|
|
|
13
13
|
${t=>t.theme.breakpoints.down("md")} {
|
|
14
14
|
width: 100%;
|
|
15
|
-
padding-left: ${
|
|
15
|
+
padding-left: ${Ye.sp0};
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
${t=>t.windowSize!=="small"?"overflow: auto;":""}
|
|
19
|
-
`,
|
|
19
|
+
`,Pe=ce(function(t,o){const{companyId:s,isAdmin:u,currentTenant:d,isOnAddressPage:r}=o,p=B.getSignedInUser(),S=d.tenantId,e={userId:p?.userId??"",sessionId:p?.zeniSessionId??"",tenantId:S??""},n=ee(t),i=fe(t,s),f=Ve(t),m=ge(d?.userRole??[])&&i.updateStatus.fetchState!=="In-Progress"?void 0:"readonly",I=dt(t.userRoleConfigState);return{onboardingCustomerView:i,analytics:N,isRefreshingViewInBackground:!1,isDisabled:m,companyTitles:I.companyTitles,connectedAccountProvider:n.company?.featuresActivationInfo.connectedAccountProvider??"",fileProps:{filesEndPoint:He.fileMicroServiceBaseUrl,authParams:e},signedInUser:B.getSignedInUser(),currentTenant:d,isAdmin:u,isOnAddressPage:r,meetingUrl:"https://meetings.hubspot.com/niharn/zeni-onboarding-overview?embed=true",cardPaymentView:f,isCardPaymentPopupOpen:!1,stripeKey:te.stripeKey}},function(t,o){const{companyId:s,currentTenant:u,themeState:d,navigate:r,location:p}=o,{tenantEmailDomain:S}=u;return{onFetchLinkTokenClick:(e,n)=>{t(At(e,n))},onEstablishConnectionClick:(e,n)=>{t(Ot(e,n))},onUpdatePaymentAccountStatus:(e,n,i)=>{t(Tt(e,n,i))},onUpdatePaymentAccountLoginStatus:(e,n)=>{t(xt(!1,e,n))},onEstablishConnectionSuccess:()=>{t(Et(s,!0,!1))},handleOnConnectClick:()=>{N.trackOnboardingConnectQBO(),ne.handleClick()},updateQBOPopupState:e=>{t(X({isQBOPopupOpen:e}))},onCompanyOfficerUpdated:e=>{const n=e.map(i=>{const{officerType:f,userId:m,name:I,email:x,ssn:T,nationalityCountryCode:k,dob:h,phone:U,syncToken:C,selectDocument:F,role:M,ownership:c,isSelectedForVerification:L,userVerificationStatus:w,fileIds:R,isPhoneVerified:O}=i;let b;return F.selectDocumentType==="driverLicense"?b="driving_license":F.selectDocumentType==="passport"?b="passport":F.selectDocumentType==="stateId"?b="id_document":F.selectDocumentType==="ssnCard"&&(b="social_security_card"),{officerType:f,userId:m,firstName:I.firstName,lastName:I.lastName,email:x,ssn:T,nationalityCountryCode:k?.selectedOption!=null?Ee(k.selectedOption):void 0,phone:U,birthday:h!=null?xe(h?.toString()):h,syncToken:C,titleAtCompany:M.selectedOption,ownershipInCompany:c,documentTypeSelectedForVerification:b,isSelectedForVerification:L,userVerificationStatus:w,fileIds:R,additionalDocumentTypesRequestedForVerification:[],additionalSubmittedDocumentsForVerificationFileIds:[],areAdditionalDocumentsRequestedForVerification:!1,areAdditionalDocumentsSubmittedForVerification:!1,isPhoneVerified:O}});t(Te({officers:n}))},onGetOtp:(e,n)=>{t(kt(e,"CustomerOnboarding")),n!=null&&t(It({officerType:n,phone:e}))},onResendOtp:e=>{t(Ct(e,"CustomerOnboarding"))},onVerifyOtp:(e,n)=>{t(bt(e,n,"CustomerOnboarding"))},updateFilesEntity:e=>{t(St({files:e}))},onDeleteFile:e=>{t(yt(e))},onEditFileName:(e,n)=>{t(ht(e,n.split(".")[0]))},onCompanyDetailsChanged:e=>{const{companyDescription:n,companyIndustry:i,companyIndustryType:f,companyLegalName:m,companyTaxId:I,companyWebsite:x,companyPhone:T,primaryContactEmail:k,primaryContactName:h,primaryContactUserId:U,primaryContactSyncToken:C,syncToken:F,fileIds:M,typeOfIncorporation:c,stateOfIncorporation:L,incDate:w,companySourceOfFunds:R,companySourceOfFundsDescription:O,companySubIndustry:b,countriesOfOperations:G,purposeOfAccount:j,purposeOfAccountDescription:A,regulatedStatus:P,regulatedStatusDescription:K,transactionVolume:$,transactionVolumeDescription:q,usNexus:v,usNexusTypes:Q}=e,l={companyId:s,companyDescription:n,companyIndustry:i.selectedOption,companyIndustryType:f?.selectedOption??"",companyLegalName:m,taxIdOrEIN:I,website:x!=""&&x!=null?ft(x):void 0,phone:T,syncToken:F,fileIds:M,incDate:w!=null?xe(w?.toString()):w,typeOfIncorporation:c?.selectedOption??"",stateOfIncorporation:L?.selectedOption??"",companySourceOfFunds:R?.selectedOption??"",companySourceOfFundsDescription:O,companySubIndustry:b?.selectedOption??"",countriesOfOperations:G?.selectedOptions.map(W=>W.length===2?W:Ee(W))??[],purposeOfAccount:j?.selectedOption??"",purposeOfAccountDescription:A,regulatedStatus:P??"",regulatedStatusDescription:K,transactionVolume:$?.selectedOption??"",transactionVolumeDescription:q,usNexus:v,usNexusTypes:Q?.selectedOptions??[]},Z={userId:U,firstName:h.firstName,lastName:h.lastName,email:k,syncToken:C};t(Te({companyDetails:l,primaryContactDetails:Z}))},onAddressClick:(e,n)=>{const i=De(S,e,n),f=V(p.state?.pathnameStackToGoBack,p.pathname);r(i,{state:{pathnameStackToGoBack:f}})},onRegisteredAddressClick:(e,n)=>{const i=De(S,e,n),f=V(p.state?.pathnameStackToGoBack,p.pathname);r(i,{state:{pathnameStackToGoBack:f}})},onUpdateCustomerView:(e,n,i)=>{t(gt(s,!1,n,i,e))},onAddressEditHandler:e=>{if(e!=null){const n=Me(e);t(Ue({addressType:"subscription_billing_address",addressToCreate:n}))}},onSkipSetupClick:()=>{const e=V(p.state?.pathnameStackToGoBack,p.pathname);t(Be(s,!1,!1)),r("./activation",{state:{pathnameStackToGoBack:e}})},onUpdateStep:e=>{t(_e({step:e}))},onZeniLogoClick:()=>{d.toggle()},handleLogOutClick:()=>{const e=V(p.state?.pathnameStackToGoBack,p.pathname);r("/signout",{replace:!0,state:{pathnameStackToGoBack:e,message:"logout"}})},handleCockpitClick:()=>{window.open("/cockpit")},handleCreateCardSetupIntent:e=>{t(ve(e))},handleConfirmCardSetupIntent:e=>{t(mt(e))},updateCardPaymentModalState:e=>{t(X({isCardPaymentPopupOpen:e}))},handleAddCardPaymentSource:(e,n,i)=>{t(pt(e,n,i))},handleFetchPaymentSources:()=>{t(ae())},resetCardPaymentViewState:()=>{t(ut())},handleResetCardPaymentErrorStatuses:()=>{t(lt())},redirectToProductSuitePage:()=>{const e=V(p.state?.pathnameStackToGoBack,p.pathname);r(`/${S}/onboarding/thankyou`,{state:{pathnameStackToGoBack:e,message:"OnboardingThankyou"},replace:!0})}}})(We),H=({taxCFOCustomer:t=!1,isOnAddressPage:o=!1,appContent:s})=>{const u=oe(),d=se(),r=ie(),p=Ze(),S=de(),[e,n]=g.useState(!1),[i,f]=g.useState(!1),[m,I]=g.useState(!1),{tenantEmailDomain:x}=re(),T=le(),{useFeatureGate:k}=ue(),{isFeatureEnabled:h}=k(_.isDebitCardFeatureEnabled),U=ze("/:tenantEmailDomain/onboarding")!==null&&d.search?.includes("code"),C=D(y=>y.onboardingCustomerViewState.fetchState),F=D(y=>y.onboardingCustomerViewState.currentStep),M=D(y=>y.onboardingCustomerViewState.uiState),c=D(y=>ee(y)),L=D(y=>y.userRoleConfigState.fetchState),w=D(y=>y.cardPaymentViewState),R=ke(w.addCardPaymentSourceStatus.fetchState),O=w.addCardPaymentSourceStatus.fetchState,{code:b,realmId:G,state:j}=Dt(d.search),A=c.externalConnections?.accounting[0],P=A?.connectionType,K=A?.connectionName,$=A?.connectionId??"",q=B.getSignedInUser()?.userId??"";g.useEffect(()=>{i||(f(!0),r(ae()))},[i,r]),g.useEffect(()=>{m||(ve(["card"]),I(!0))},[m]),g.useEffect(()=>{R==="In-Progress"&&O==="Completed"&&r(ae())},[R,O]),g.useEffect(()=>{Ft(b,G,j,$,q)===!0&&c.externalConnections?.saveConnectionState!=="In-Progress"&&C==="Completed"&&(r(st(c.tenantId,{connection_type:P??"accounting",connection_name:K??"quickbooks_online",authorization_code:b,realm_id:G,connection_id:$,user_id:q},it(window.location.origin+"/onboarding/auth"))),N.trackOnboardingSaveQBOConnection(G,$),u(d.pathname))},[b,G,j,d.pathname,C]),g.useEffect(()=>{ne.isInitiated===!1&&C==="Completed"&&ne.init("/onboarding/auth",c.tenantEmailDomain)},[C]);const v=c.companyId??B.getSignedInUserTenant(x)?.companyId,Q=ge(c?.userRole??[]),l=D(y=>fe(y,v));g.useEffect(()=>{e||C!=="Not-Started"||v==null||(n(!0),r(rt(v,!0,!U)))},[e,C,v]),g.useEffect(()=>{c.externalConnections?.saveConnectionState!=="Completed"&&c.externalConnections?.saveConnectionState!=="Error"||!M.isQBOPopupOpen||F!=="qbo_connection"||r(X({isQBOPopupOpen:!1}))},[c.externalConnections?.saveConnectionState]),g.useEffect(()=>{C==="Completed"&&U&&(r(_e({step:"qbo_connection"})),r(X({isQBOPopupOpen:!0})))},[U,C]),g.useEffect(()=>{L==="Not-Started"&&r(ct(!0))},[L,r]);const Z=ke(l.companyDetailsLocalData?.addressStatus);g.useEffect(()=>{l.companyDetailsLocalData?.registeredAddressStatus?.addressToCreate==null&&l.companyDetailsLocalData?.addressStatus?.addressToCreate!=null&&Z==null&&r(Ue({addressType:"company_registered_address",addressToCreate:l.companyDetailsLocalData?.addressStatus?.addressToCreate}))},[l.companyDetailsLocalData?.addressStatus?.addressToCreate,l.companyDetailsLocalData?.registeredAddressStatus?.addressToCreate]);const W=l.isInterimEmailSent;if(B.getSignedInUser()==null)throw Error("Can't access onboarding flow without signing in...");const Le=pe(h,c),Re=me(c),ye=c.company?.companyOnboardingInfo.isOnboardingCompleted,Se=y=>y.trackPageLoaded(J.Event.onboardingPage),be=c.productSettings.isOtherProductsEnabled,Ge=c.productSettings.isTreasuryEnabled;if(ye===!0){if(!be)return Ge?a.jsx(E,{to:"../../treasury"}):Le?a.jsx(E,{to:"../../checking"}):Re?a.jsx(E,{to:"../../cards"}):a.jsx(E,{to:"../../dashboard"});const y=l.updateStatus.fetchState==="In-Progress";if(be&&!y)return t?a.jsxs(Oe,{children:[a.jsx(Y,{analytics:N,onLoad:Ne=>Se(Ne)}),a.jsx(Pe,{navigate:u,location:d,companyId:v,currentTenant:c,isAdmin:Q,isOnAddressPage:o,themeState:S,googleAPIKey:te.googleMapsAPIKey}),s!=null?a.jsx(Ae,{windowSize:p,children:s}):null]}):a.jsx(E,{to:"../../onboarding/thankyou"})}else if(ye===!1&&T?.loggedInUserRoleMap!=null)return W===!0?a.jsx(E,{to:"../../onboarding/thankyou"}):a.jsxs(Oe,{children:[a.jsx(Y,{analytics:N,onLoad:y=>Se(y)}),a.jsx(Pe,{navigate:u,location:d,companyId:v,currentTenant:c,isAdmin:Q,isOnAddressPage:o,themeState:S,googleAPIKey:te.googleMapsAPIKey}),s!=null?a.jsx(Ae,{windowSize:p,children:s}):null]});return null};function De(t,o,s){let u=`/${t}/onboarding/address`;return u=s!=null?u.concat(`/edit/${o}/${encodeURIComponent(s)}`):u.concat(`/new/${o}`),u}const Fe=he.div`
|
|
20
20
|
display: flex;
|
|
21
21
|
height: 100vh;
|
|
22
22
|
background-color: ${t=>t.theme.colors.grey4};
|
|
23
|
-
`,we=ce(function(t,o){const{companyId:s,currentTenant:u}=o,d=
|
|
23
|
+
`,we=ce(function(t,o){const{companyId:s,currentTenant:u}=o,d=fe(t,s),r=Ve(t);return{hasVerifiedBankAccount:(d.paymentAccount?.providerVerificationStatus?.code?.includes("verified")??!1)||(r.bankAccountsList[0]?.providerVerificationStatus?.code?.includes("verified")??!1),isDisabled:ge(u?.userRole??[])&&d.updateStatus.fetchState!=="In-Progress"?void 0:"readonly",signedInUser:B.getSignedInUser(),currentTenant:u,meetingUrl:"https://meetings.hubspot.com/niharn/zeni-onboarding-overview?embed=true"}},function(t,o){const{currentTenant:s,themeState:u,navigate:d,location:r}=o,{tenantEmailDomain:p}=s;return{onZeniLogoClick:()=>{u.toggle()},handleLogOutClick:()=>{const S=V(r.state?.pathnameStackToGoBack,r.pathname);d("/signout",{replace:!0,state:{pathnameStackToGoBack:S,message:"logout"}})},handleCockpitClick:()=>{window.open("/cockpit")},handleUpdatePaymentAddressDetailClick:()=>{const S=V(r.state?.pathnameStackToGoBack,r.pathname);d(`/${p}/onboarding/billing/edit`,{state:{pathnameStackToGoBack:S,message:"UpdatePaymentAddressDetail"}})}}})(Je),vt=()=>{const t=oe(),o=ie(),s=se(),u=de(),{useFeatureGate:d}=ue(),{isFeatureEnabled:r}=d(_.isDebitCardFeatureEnabled),{tenantEmailDomain:p}=re(),S=le(),[e,n]=g.useState(!1);g.useEffect(()=>{e===!1&&s.state?.message==="OnboardingThankyou"&&n(!0)},[s.state]);const i=D(h=>ee(h)),f=i.productSettings.isOtherProductsEnabled;g.useEffect(()=>{o(Be(m,!1,!f))},[]);const m=i.companyId??B.getSignedInUserTenant(p)?.companyId;if(S.loggedInUser==null)throw Error("Can't access onboarding flow without signing in...");const I=pe(r,i),x=me(i),T=D(h=>h.onboardingCustomerViewState.updateStatus.fetchState),k=i.company?.companyOnboardingInfo.isOnboardingCompleted;return k!==!0||f?T==="Completed"&&k===!0&&f&&S?.loggedInUserRoleMap!=null?a.jsxs(Fe,{children:[a.jsx(Y,{analytics:N,onLoad:h=>{h.trackPageLoaded(J.Event.onboardingLandingPage,"Onboarding",Pt(i.productSettings))}}),a.jsx(we,{navigate:t,showUpdatePaymentDetailButton:f,location:s,companyId:m,currentTenant:i,themeState:u,isVisitingFirstTime:e})]}):T==="Completed"&&k===!1&&S?.loggedInUserRoleMap!=null?a.jsxs(Fe,{children:[a.jsx(Y,{analytics:N,onLoad:h=>{h.trackPageLoaded(J.Event.onboardingInterimPage)}}),a.jsx(we,{navigate:t,showUpdatePaymentDetailButton:f,location:s,companyId:m,currentTenant:i,themeState:u,isVisitingFirstTime:e})]}):a.jsx(je,{fetchState:T}):I?a.jsx(E,{to:"../../checking"}):x?a.jsx(E,{to:"../../cards"}):a.jsx(E,{to:"../../dashboard"})};function oa(){return a.jsxs(qe,{children:[a.jsx(z,{path:"/",element:a.jsx(H,{})}),a.jsx(z,{path:"/billing/edit",element:a.jsx(H,{taxCFOCustomer:!0})}),a.jsx(z,{path:"/thankyou",element:a.jsx(vt,{})}),a.jsx(z,{path:"/activation",element:a.jsx(jt,{})}),a.jsx(z,{path:"/address/edit/:addressType/:addressId",element:a.jsx(H,{isOnAddressPage:!0,appContent:a.jsx(Ce,{})})}),a.jsx(z,{path:"/address/new/:addressType",element:a.jsx(H,{isOnAddressPage:!0,appContent:a.jsx(Ce,{})})}),a.jsx(z,{path:"*",element:a.jsx($e,{})})]})}export{oa as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{j as d}from"./liveblocks-D3ESVZyk.js";import{i as K,j as S,g as H,u as z,h as W,n as te,k as ca,o as Ct,p as w}from"./core-k_c8SCBE.js";import{eW as U,MQ as Xe,bE as la,bq as Oe,O2 as Pn,iW as Fn,O3 as Zt,O4 as Rn,iZ as kt,O5 as Qe,O6 as Bn,j2 as jn,O7 as Qt,O8 as Mn,j6 as St,O9 as He,Oa as Ln,cp as At,Ob as Un,Oc as Gn,N8 as Vn,j_ as Yn,Od as Nn,bn as Ge,Oe as da,ME as ie,bc as ua,kc as ma,od as pa,jX as ha,MG as ce,MF as ee,eV as fa,f2 as $n,fG as _t,Of as zn,Og as Kn,Oh as ga,Oi as Be,vC as Ve,vD as Ye,v_ as xe,vU as le,vH as Ne,Oj as qn,Ok as Zn,Ol as Qn,Om as ba,On as je,Oo as Hn,dJ as Je,s6 as Ca,Op as Wn,Oq as Xn,Or as Jn,Os as vt,M2 as Et,ks as De,w6 as It,se as eo,Ot as to,vE as Ht,s9 as Ie,s5 as ka,Ou as ge,Ov as ao,Ow as Tt,M1 as Ot,u5 as Sa,Ox as no,Oy as oo,Oz as so,OA as xt,ui as ro,OB as io,vG as Wt,u4 as _a,OC as be,OD as co,bt as ya,wa as Aa,OE as lo,OF as uo,OG as mo,OH as Dt,w5 as po,OI as ho,vF as Xt,w9 as va,OJ as Ce,OK as fo,OL as go,OM as Ea,kh as Ia,oa as Ta,km as Oa,o8 as xa,o7 as Da,o6 as wa,tt as bo,fw as Co,cS as ko,cT as So,o3 as _o,fs as yo,ok as Ao,Ge as ut,G6 as vo,Ga as Eo,ON as Io,OO as To,OP as Oo,b5 as et,fk as xo,hE as Do,gi as wo,oe as Po,jQ as Fo,ob as Ro,o9 as Bo,fe as jo,fc as Mo}from"./zeni-epic-state-C3zBO1No.js";import{z as M,a2 as ae,n as x,c as O,D as q,aV as Lo,_ as $e,r as ze,aW as Pa,e as N,aX as Uo,j as Se,aY as Fa,N as _e,x as R,m as Go,aZ as Vo,a_ as Yo,V as Ra,h as Ba,a as ja,Z as No,a$ as $o,T as zo,aN as Ma,$ as oe,b0 as La,b1 as Ua,a1 as Ga,b2 as Ko,b3 as qo,aq as Zo,p as Qo,X as Ho,b4 as Wo,b5 as Xo,b6 as Jo,b7 as es,b8 as ke}from"./index-B4wUHn-k.js";import{n as wt}from"./mui-UJrLjp1k.js";import{a as b}from"./sentry-B_92GPgU.js";import{w as Va}from"./withTransactionSidePanel-3cc8um6s.js";import{c as Ya,t as we,f as de,a as Pt,v as ts}from"./routePaths-ooqctjvV.js";import{u as ne}from"./useAskAiCfoHostNavButtonProps-BJGg886y.js";import Ue from"./NotFoundScreen-6vyCFr5S.js";import{u as Ft}from"./useInitialThreadRequest-C_cJhQDA.js";import{t as Na}from"./analyticsHelper-CfMFPPIh.js";import{C as as}from"./CompanyPassportScreen-CrpUoXvt.js";import{u as ns}from"./useAiCfoDashboardSuggestedQuestionsChips-Cx3WWldL.js";import{F as os}from"./FeaturePreviewScreen-DoKDdD4M.js";import{R as ss}from"./ReferralListScreen-BFHfgY0C.js";import"./recharts-Q-kkTNuO.js";import"./analytics-DVTbnjlr.js";import"./plaid-B1j5PXHV.js";import"./dnd-CKEs-Nbe.js";import"./stripe-DMRn4zHo.js";import"./lottie-BYni7Ovk.js";import"./lexical-k-PQZXkn.js";import"./pdf-CaeTpLUv.js";import"./utils-Mjhh9T8E.js";import"./TransactionDetailScreen-BHKf3UvG.js";import"./decodeURIComponentSafe-ClSfwHJC.js";import"./MobileAppDrawer-BzOopfIc.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]="ad641902-1d95-4cc4-a252-b9f8f99fa19c",e._sentryDebugIdIdentifier="sentry-dbid-ad641902-1d95-4cc4-a252-b9f8f99fa19c")}catch{}})();const rs=Va(function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{vendorId:o,reportDate:r}=K(),s=M.getSignedInUser(),i=S(A=>A.tenantState.currentTenantId),c=S(A=>U(A)),{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:`${ae}/agingDetailedReport`,timezone:Xe()}),[]),h=b.useMemo(()=>r!=null?la(r):Oe(),[r]),p=z(),f=W(),v=S(A=>Pn(A,h,o)),E=b.useCallback(()=>{o!=null&&v.fetchState!=="In-Progress"&&v.fetchState!=="Completed"&&p(Fn(o,h))},[h]),_=b.useCallback(()=>{f("../../",{relative:"path"})},[]),T=b.useCallback((A,B)=>{p(Zt({sortKey:A,sortOrder:B}))},[]),I=b.useCallback(A=>{p(Zt({downloadState:A}))},[]),L=b.useCallback(A=>{if(e)e(A.transactionId,A.transactionType);else if(m!=null){const B=Ya({id:A.transactionId,type:A.transactionType},m);f(B);const X=x(g.state?.pathnameStackToGoBack,g.pathname);f(B,{state:{pathnameStackToGoBack:X}})}},[m,e]),k=b.useCallback(()=>{v.vendor!=null&&O.trackApAgingDetail("AP Aging",h.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),v.vendor.id,v.vendor.name)},[v.vendor,h]);return b.useEffect(()=>{E()},[]),b.useEffect(()=>{v.fetchState==="Completed"&&k()},[k,v.fetchState]),d.jsx(Lo,{apAgingDetail:v,downloadParams:l,reportDate:h,analytics:O,onTransactionClick:L,onReload:E,onBackClick:_,onColumnSortConfigChanged:T,updateDownloadStateHandler:I,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})}),is=()=>{const e=z(),a=W(),t=S(T=>Rn(T)),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=ne({mobileExploreReferrer:"AP Aging"});$e({isDataReady:t.fetchState==="Completed"});const r=M.getSignedInUser(),s=S(T=>T.tenantState.currentTenantId),i=S(T=>U(T)),c=i?.companyName??"",m={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s??""},g=b.useMemo(()=>({authParams:m,companyName:c,downloadEndPoint:`${ae}/agingReport`,timezone:Xe()}),[]),C=t.apAgingUIState.selectedDate??Oe(),u=b.useCallback(()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(kt(C))},[]);b.useEffect(()=>{u()},[]);const l=b.useCallback(()=>{a("../",{relative:"path"})},[]),h=b.useCallback(T=>{e(Qe({searchString:T}))},[]),p=b.useCallback((T,I)=>{e(Qe({sortKey:I,sortOrder:T}))},[]),f=b.useCallback(T=>{a(`./${T}/${C.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)},[C]),v=b.useCallback(T=>{e(Qe({downloadState:T}))},[]),E=b.useCallback((T,I)=>{},[]),_=b.useCallback((T,I)=>{e(Qe({selectedDate:T,agingDateSelectionType:I})),e(kt(T))},[]);return d.jsxs(d.Fragment,{children:[t.fetchState==="Completed"?d.jsx(ze,{analytics:O,onLoad:T=>T.trackPageLoaded(N.Event.agingReport,"AP Aging")}):null,d.jsx(Pa,{uiState:t.apAgingUIState,report:t,downloadParams:g,analytics:O,onReloadReport:u,onBackClick:l,onSearchTextChange:h,onSortOrderChange:p,onEntityNameClick:f,updateDownloadStateHandler:v,onSelectedDateChanged:_,onNodeCollapseToggled:E,isAiCfoAccessEnabled:n,onAskAiCfoClick:o})]})},cs=Va(function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{customerId:o,reportDate:r}=K(),s=M.getSignedInUser(),i=S(k=>U(k)),{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:`${ae}/agingDetailedReport`,timezone:Xe()}),[]),l=b.useMemo(()=>r!=null?la(r):Oe(),[r]),h=z(),p=W(),f=S(k=>Bn(k,l,o)),v=b.useCallback(()=>{o!=null&&f.fetchState!=="In-Progress"&&f.fetchState!=="Completed"&&h(jn(o,l))},[l]),E=b.useCallback(()=>{p("../../",{relative:"path"})},[]),_=b.useCallback((k,A)=>{h(Qt({sortKey:k,sortOrder:A}))},[]),T=b.useCallback(k=>{h(Qt({downloadState:k}))},[]),I=b.useCallback(k=>{if(e)e(k.transactionId,k.transactionType);else if(c!=null){const A=Ya({id:k.transactionId,type:k.transactionType},c);p(A);const B=x(m.state?.pathnameStackToGoBack,m.pathname);p(A,{state:{pathnameStackToGoBack:B}})}},[c,e]),L=b.useCallback(()=>{f.customer!=null&&O.trackArAgingDetail("AR Aging",l.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),f.customer.id,f.customer.name)},[f.customer,l]);return b.useEffect(()=>{v()},[]),b.useEffect(()=>{f.fetchState==="Completed"&&L()},[f.fetchState,L]),d.jsx(Uo,{arAgingDetail:f,downloadParams:u,reportDate:l,analytics:O,onTransactionClick:I,onReload:v,onBackClick:E,onColumnSortConfigChanged:_,updateDownloadStateHandler:T,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})}),ls=()=>{const e=z(),a=W(),t=S(_=>Mn(_)),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=ne({mobileExploreReferrer:"AR Aging"});$e({isDataReady:t.fetchState==="Completed"});const r=M.getSignedInUser(),s=S(_=>U(_)),i=s.companyName,c={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s.tenantId},m=b.useMemo(()=>({authParams:c,companyName:i,downloadEndPoint:`${ae}/agingReport`,timezone:Xe()}),[]),g=t.arAgingUIState.selectedDate??Oe(),C=b.useCallback(()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(St(g))},[]);b.useEffect(()=>{C()},[]);const u=b.useCallback(()=>{a("../",{relative:"path"})},[]),l=b.useCallback(_=>{e(He({searchString:_}))},[]),h=b.useCallback((_,T)=>{e(He({sortKey:T,sortOrder:_}))},[]),p=b.useCallback(_=>{a(`./${_}/${g.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)},[g]),f=b.useCallback(_=>{e(He({downloadState:_}))},[]),v=b.useCallback((_,T)=>{e(He({selectedDate:_,agingDateSelectionType:T})),e(St(_))},[]),E=b.useCallback((_,T)=>{e(Ln({nodeId:_,isCollapsed:T}))},[]);return d.jsxs(d.Fragment,{children:[t.fetchState==="Completed"?d.jsx(ze,{analytics:O,onLoad:_=>_.trackPageLoaded(N.Event.agingReport,"AR Aging")}):null,d.jsx(Pa,{uiState:t.arAgingUIState,report:t,downloadParams:m,analytics:O,onReloadReport:C,onBackClick:u,onSearchTextChange:l,onSortOrderChange:h,onEntityNameClick:p,updateDownloadStateHandler:f,onSelectedDateChanged:v,onNodeCollapseToggled:E,isAiCfoAccessEnabled:n,onAskAiCfoClick:o})]})},$a=(e,a)=>({key:a,title:e.accountName,amount:e.balance?.available,logoUri:e.logo?.toString(),source:e});function za(e,a){const t=Vn(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=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i,referrer:a.referrerType}})},onSetAccountsStatementDate:(n,o)=>{e(Yn(n,o))},onPromoCardBtnClick:n=>{if(a.isZeniAccountsAdmin){let o=`../../checking/${n}`;n?O.trackZeniAccountsCashBalancePromoClicked("Move Money"):(O.trackZeniAccountsCashBalancePromoClicked("Sign Up for Free"),o="../../checking/promo");const r=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(o,{state:{pathnameStackToGoBack:r}})}else O.trackZeniAccountsCashBalancePromoClicked("Learn More"),window.open("https://www.zeni.ai/product/business-checking-accounts","_blank")}}}const ds=te(function(e){const a=Un(e).accountsInOrder.map((n,o)=>$a(n,o)),t=Gn(e);return{sectionTitle:q.getLocalizedStrings().balanceCard.cashBalanceSectionTitle,transactionArray:a,zeniAccountsPromoCardReport:t,fetchState:e.cashBalanceState.fetchState,analytics:O}},za)(Fa),us=te(function(e){const a=Nn(e).accountsInOrder.map((o,r)=>$a(o,r)),t=M.getSignedInUser(),n=Ge(t);return{sectionTitle:q.getLocalizedStrings().balanceCard.cardBalanceSectionTitle,transactionArray:a,isZeniUser:n,fetchState:e.cardBalanceState.fetchState,analytics:O}},za)(Fa);function ms(){const e=W(),a=H(),{tenantEmailDomain:t}=K(),n=Se(),o=S(s=>U(s).company?.companyInfo.firstMonthOfFY??1),r=At(n?.loggedInUserRoleMap);return S(s=>s.cashBalanceState.fetchState)==="Error"?d.jsx(Ue,{}):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=Se(),o=At(n?.loggedInUserRoleMap),r=S(s=>U(s).company?.companyInfo.firstMonthOfFY??1);return S(s=>s.cardBalanceState.fetchState)==="Error"?d.jsx(Ue,{}):d.jsx(us,{tenantEmailDomain:t,location:a,referrerType:"Card Balance",navigate:e,isZeniAccountsAdmin:o,firstMonthOfFY:r})}const hs=wt.div`
|
|
1
|
+
import{j as d}from"./liveblocks-DmbDY3sa.js";import{i as K,j as S,g as H,u as z,h as W,n as te,k as ca,o as Ct,p as w}from"./core-Cj3sxYL7.js";import{eW as U,MQ as Xe,bE as la,bq as Oe,O2 as Pn,iW as Fn,O3 as Zt,O4 as Rn,iZ as kt,O5 as Qe,O6 as Bn,j2 as jn,O7 as Qt,O8 as Mn,j6 as St,O9 as He,Oa as Ln,cp as vt,Ob as Un,Oc as Gn,N8 as Vn,j_ as Yn,Od as Nn,bn as Ge,Oe as da,ME as ie,bc as ua,kc as ma,od as pa,jX as ha,MG as ce,MF as ee,eV as fa,f2 as $n,fG as _t,Of as zn,Og as Kn,Oh as ga,Oi as Be,vC as Ve,vD as Ye,v_ as xe,vU as le,vH as Ne,Oj as qn,Ok as Zn,Ol as Qn,Om as ba,On as je,Oo as Hn,dJ as Je,s6 as Ca,Op as Wn,Oq as Xn,Or as Jn,Os as At,M2 as Et,ks as De,w6 as It,se as eo,Ot as to,vE as Ht,s9 as Ie,s5 as ka,Ou as ge,Ov as ao,Ow as Tt,M1 as Ot,u5 as Sa,Ox as no,Oy as oo,Oz as so,OA as xt,ui as ro,OB as io,vG as Wt,u4 as _a,OC as be,OD as co,bt as ya,wa as va,OE as lo,OF as uo,OG as mo,OH as Dt,w5 as po,OI as ho,vF as Xt,w9 as Aa,OJ as Ce,OK as fo,OL as go,OM as Ea,kh as Ia,oa as Ta,km as Oa,o8 as xa,o7 as Da,o6 as wa,tt as bo,fw as Co,cS as ko,cT as So,o3 as _o,fs as yo,ok as vo,Ge as ut,G6 as Ao,Ga as Eo,ON as Io,OO as To,OP as Oo,b5 as et,fk as xo,hE as Do,gi as wo,oe as Po,jQ as Fo,ob as Ro,o9 as Bo,fe as jo,fc as Mo}from"./zeni-epic-state-BG_x9wwl.js";import{z as M,a2 as ae,r as x,c as O,D as q,aV as Lo,_ as $e,A as ze,aW as Pa,e as N,aX as Uo,j as Se,aY as Fa,F as _e,x as R,m as Go,aZ as Vo,a_ as Yo,W as Ra,K as Ba,a as ja,Z as No,a$ as $o,U as zo,aN as Ma,$ as oe,b0 as La,b1 as Ua,a1 as Ga,b2 as Ko,b3 as qo,aq as Zo,n as Qo,X as Ho,b4 as Wo,b5 as Xo,b6 as Jo,b7 as es,b8 as ke}from"./index-BHgTWK3A.js";import{n as wt}from"./mui-1V4hRqCa.js";import{a as b}from"./sentry--Yi43Gx7.js";import{w as Va}from"./withTransactionSidePanel-txS5Vf1E.js";import{c as Ya,t as we,f as de,a as Pt,v as ts}from"./routePaths-CKR4MRfB.js";import{u as ne}from"./useAskAiCfoHostNavButtonProps-DvB8uvB7.js";import Ue from"./NotFoundScreen-D51sUkWb.js";import{u as Ft}from"./useInitialThreadRequest-ITLu-S1Q.js";import{t as Na}from"./analyticsHelper-B5EDEZrW.js";import{C as as}from"./CompanyPassportScreen-DBpHUeez.js";import{u as ns}from"./useAiCfoDashboardSuggestedQuestionsChips-C8eUPCD2.js";import{F as os}from"./FeaturePreviewScreen-D7L8dftQ.js";import{R as ss}from"./ReferralListScreen-xE93Ck03.js";import"./recharts-mFhBBFnU.js";import"./analytics-BpWjaxbv.js";import"./plaid-JtkXopjw.js";import"./dnd-WLAr-qfO.js";import"./stripe-DMRn4zHo.js";import"./lottie-W8sR2m8i.js";import"./lexical--OluaPRa.js";import"./pdf-aJCOHARS.js";import"./utils-Bt5dYICv.js";import"./TransactionDetailScreen-DhBRM2u-.js";import"./decodeURIComponentSafe-CyYkfiHv.js";import"./MobileAppDrawer-CzOm0Sxs.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]="87ff0c11-efbc-4216-a884-3624bd6e2ef9",e._sentryDebugIdIdentifier="sentry-dbid-87ff0c11-efbc-4216-a884-3624bd6e2ef9")}catch{}})();const rs=Va(function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{vendorId:o,reportDate:r}=K(),s=M.getSignedInUser(),i=S(v=>v.tenantState.currentTenantId),c=S(v=>U(v)),{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:`${ae}/agingDetailedReport`,timezone:Xe()}),[]),h=b.useMemo(()=>r!=null?la(r):Oe(),[r]),p=z(),f=W(),A=S(v=>Pn(v,h,o)),E=b.useCallback(()=>{o!=null&&A.fetchState!=="In-Progress"&&A.fetchState!=="Completed"&&p(Fn(o,h))},[h]),_=b.useCallback(()=>{f("../../",{relative:"path"})},[]),T=b.useCallback((v,B)=>{p(Zt({sortKey:v,sortOrder:B}))},[]),I=b.useCallback(v=>{p(Zt({downloadState:v}))},[]),L=b.useCallback(v=>{if(e)e(v.transactionId,v.transactionType);else if(m!=null){const B=Ya({id:v.transactionId,type:v.transactionType},m);f(B);const X=x(g.state?.pathnameStackToGoBack,g.pathname);f(B,{state:{pathnameStackToGoBack:X}})}},[m,e]),k=b.useCallback(()=>{A.vendor!=null&&O.trackApAgingDetail("AP Aging",h.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),A.vendor.id,A.vendor.name)},[A.vendor,h]);return b.useEffect(()=>{E()},[]),b.useEffect(()=>{A.fetchState==="Completed"&&k()},[k,A.fetchState]),d.jsx(Lo,{apAgingDetail:A,downloadParams:l,reportDate:h,analytics:O,onTransactionClick:L,onReload:E,onBackClick:_,onColumnSortConfigChanged:T,updateDownloadStateHandler:I,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})}),is=()=>{const e=z(),a=W(),t=S(T=>Rn(T)),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=ne({mobileExploreReferrer:"AP Aging"});$e({isDataReady:t.fetchState==="Completed"});const r=M.getSignedInUser(),s=S(T=>T.tenantState.currentTenantId),i=S(T=>U(T)),c=i?.companyName??"",m={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s??""},g=b.useMemo(()=>({authParams:m,companyName:c,downloadEndPoint:`${ae}/agingReport`,timezone:Xe()}),[]),C=t.apAgingUIState.selectedDate??Oe(),u=b.useCallback(()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(kt(C))},[]);b.useEffect(()=>{u()},[]);const l=b.useCallback(()=>{a("../",{relative:"path"})},[]),h=b.useCallback(T=>{e(Qe({searchString:T}))},[]),p=b.useCallback((T,I)=>{e(Qe({sortKey:I,sortOrder:T}))},[]),f=b.useCallback(T=>{a(`./${T}/${C.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)},[C]),A=b.useCallback(T=>{e(Qe({downloadState:T}))},[]),E=b.useCallback((T,I)=>{},[]),_=b.useCallback((T,I)=>{e(Qe({selectedDate:T,agingDateSelectionType:I})),e(kt(T))},[]);return d.jsxs(d.Fragment,{children:[t.fetchState==="Completed"?d.jsx(ze,{analytics:O,onLoad:T=>T.trackPageLoaded(N.Event.agingReport,"AP Aging")}):null,d.jsx(Pa,{uiState:t.apAgingUIState,report:t,downloadParams:g,analytics:O,onReloadReport:u,onBackClick:l,onSearchTextChange:h,onSortOrderChange:p,onEntityNameClick:f,updateDownloadStateHandler:A,onSelectedDateChanged:_,onNodeCollapseToggled:E,isAiCfoAccessEnabled:n,onAskAiCfoClick:o})]})},cs=Va(function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{customerId:o,reportDate:r}=K(),s=M.getSignedInUser(),i=S(k=>U(k)),{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:`${ae}/agingDetailedReport`,timezone:Xe()}),[]),l=b.useMemo(()=>r!=null?la(r):Oe(),[r]),h=z(),p=W(),f=S(k=>Bn(k,l,o)),A=b.useCallback(()=>{o!=null&&f.fetchState!=="In-Progress"&&f.fetchState!=="Completed"&&h(jn(o,l))},[l]),E=b.useCallback(()=>{p("../../",{relative:"path"})},[]),_=b.useCallback((k,v)=>{h(Qt({sortKey:k,sortOrder:v}))},[]),T=b.useCallback(k=>{h(Qt({downloadState:k}))},[]),I=b.useCallback(k=>{if(e)e(k.transactionId,k.transactionType);else if(c!=null){const v=Ya({id:k.transactionId,type:k.transactionType},c);p(v);const B=x(m.state?.pathnameStackToGoBack,m.pathname);p(v,{state:{pathnameStackToGoBack:B}})}},[c,e]),L=b.useCallback(()=>{f.customer!=null&&O.trackArAgingDetail("AR Aging",l.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),f.customer.id,f.customer.name)},[f.customer,l]);return b.useEffect(()=>{A()},[]),b.useEffect(()=>{f.fetchState==="Completed"&&L()},[f.fetchState,L]),d.jsx(Uo,{arAgingDetail:f,downloadParams:u,reportDate:l,analytics:O,onTransactionClick:I,onReload:A,onBackClick:E,onColumnSortConfigChanged:_,updateDownloadStateHandler:T,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})}),ls=()=>{const e=z(),a=W(),t=S(_=>Mn(_)),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=ne({mobileExploreReferrer:"AR Aging"});$e({isDataReady:t.fetchState==="Completed"});const r=M.getSignedInUser(),s=S(_=>U(_)),i=s.companyName,c={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s.tenantId},m=b.useMemo(()=>({authParams:c,companyName:i,downloadEndPoint:`${ae}/agingReport`,timezone:Xe()}),[]),g=t.arAgingUIState.selectedDate??Oe(),C=b.useCallback(()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(St(g))},[]);b.useEffect(()=>{C()},[]);const u=b.useCallback(()=>{a("../",{relative:"path"})},[]),l=b.useCallback(_=>{e(He({searchString:_}))},[]),h=b.useCallback((_,T)=>{e(He({sortKey:T,sortOrder:_}))},[]),p=b.useCallback(_=>{a(`./${_}/${g.format(q.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)},[g]),f=b.useCallback(_=>{e(He({downloadState:_}))},[]),A=b.useCallback((_,T)=>{e(He({selectedDate:_,agingDateSelectionType:T})),e(St(_))},[]),E=b.useCallback((_,T)=>{e(Ln({nodeId:_,isCollapsed:T}))},[]);return d.jsxs(d.Fragment,{children:[t.fetchState==="Completed"?d.jsx(ze,{analytics:O,onLoad:_=>_.trackPageLoaded(N.Event.agingReport,"AR Aging")}):null,d.jsx(Pa,{uiState:t.arAgingUIState,report:t,downloadParams:m,analytics:O,onReloadReport:C,onBackClick:u,onSearchTextChange:l,onSortOrderChange:h,onEntityNameClick:p,updateDownloadStateHandler:f,onSelectedDateChanged:A,onNodeCollapseToggled:E,isAiCfoAccessEnabled:n,onAskAiCfoClick:o})]})},$a=(e,a)=>({key:a,title:e.accountName,amount:e.balance?.available,logoUri:e.logo?.toString(),source:e});function za(e,a){const t=Vn(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=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i,referrer:a.referrerType}})},onSetAccountsStatementDate:(n,o)=>{e(Yn(n,o))},onPromoCardBtnClick:n=>{if(a.isZeniAccountsAdmin){let o=`../../checking/${n}`;n?O.trackZeniAccountsCashBalancePromoClicked("Move Money"):(O.trackZeniAccountsCashBalancePromoClicked("Sign Up for Free"),o="../../checking/promo");const r=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(o,{state:{pathnameStackToGoBack:r}})}else O.trackZeniAccountsCashBalancePromoClicked("Learn More"),window.open("https://www.zeni.ai/product/business-checking-accounts","_blank")}}}const ds=te(function(e){const a=Un(e).accountsInOrder.map((n,o)=>$a(n,o)),t=Gn(e);return{sectionTitle:q.getLocalizedStrings().balanceCard.cashBalanceSectionTitle,transactionArray:a,zeniAccountsPromoCardReport:t,fetchState:e.cashBalanceState.fetchState,analytics:O}},za)(Fa),us=te(function(e){const a=Nn(e).accountsInOrder.map((o,r)=>$a(o,r)),t=M.getSignedInUser(),n=Ge(t);return{sectionTitle:q.getLocalizedStrings().balanceCard.cardBalanceSectionTitle,transactionArray:a,isZeniUser:n,fetchState:e.cardBalanceState.fetchState,analytics:O}},za)(Fa);function ms(){const e=W(),a=H(),{tenantEmailDomain:t}=K(),n=Se(),o=S(s=>U(s).company?.companyInfo.firstMonthOfFY??1),r=vt(n?.loggedInUserRoleMap);return S(s=>s.cashBalanceState.fetchState)==="Error"?d.jsx(Ue,{}):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=Se(),o=vt(n?.loggedInUserRoleMap),r=S(s=>U(s).company?.companyInfo.firstMonthOfFY??1);return S(s=>s.cardBalanceState.fetchState)==="Error"?d.jsx(Ue,{}):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%;
|
|
@@ -10,11 +10,11 @@ import{j as d}from"./liveblocks-D3ESVZyk.js";import{i as K,j as S,g as H,u as z,
|
|
|
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=z(),c=H(),{tenantEmailDomain:m}=K(),g=Go();return d.jsxs(hs,{children:[d.jsx(Vo,{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(ce({searchString:C,searchOrigin:"navbar"})):C.trim().length===0&&i(ee("navbar"))},onAutoCompleteEntity:C=>{n!=null&&O?.trackSearch(N.Event.search,bs(a),C.type,C.name,n);const u=de(C,m),l=x(c.state?.pathnameStackToGoBack,c.pathname);s(u,{state:{pathnameStackToGoBack:l}})}}},rightSideComponent:d.jsx(Yo,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r})}),d.jsx(fs,{children:a==="cash_balance"?d.jsx(ms,{}):d.jsx(ps,{})})]})}function Jt(){const e=H(),a=z(),{useFeatureGate:t}=_e(),{isFeatureEnabled:n}=t(R.isDepositAccountsFeatureEnabled),o=S(p=>p.cashBalanceState.fetchState),r=S(p=>p.cardBalanceState.fetchState),s=M.getSignedInUser();if(s==null)throw Error("Can't access dashboard detail without signing in...");const i=da((p=>{const f=ua(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}=ne({mobileExploreReferrer:i==="card_balance"?"Card Balance":"Cash Balance"});$e({isDataReady:c==="Completed"});const l=S(p=>p.entityAutoCompleteState.autoCompleteText.navbar),h=S(p=>ie(p,"navbar"));return b.useEffect(()=>{c==="Not-Started"&&function(p,f,v){switch(f){case"card_balance":p(ha());break;case"cash_balance":p(ma()),v===!0&&p(pa());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(ze,{analytics:O,onLoad:p=>((f,v)=>{switch(v){case"card_balance":f.trackPageLoaded(N.Event.cardBalance);break;case"cash_balance":f.trackPageLoaded(N.Event.cashBalance);break;default:console.error(`Analytics: Not tracking Page Loaded for ${v}!`)}})(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 Ke(e){const{mobileExploreReferrer:a}=e,t=z(),n=W(),o=H(),{tenantEmailDomain:r}=K(),{setIsAiCfoOpen:s,setAiCfoSidePanelQuestionToSubmit:i}=Ra(),c=Ba(),m=Ga(c),g=ca(),C=S(P=>P.tenantState.fetchState==="Completed"||P.tenantState.activeTenantFetchState.fetchState==="Completed"?U(P):void 0),u=C?.masterTOSInfo?.isMasterTOSAccepted??!1,l=S(P=>fa(P)),h=l.uiState?.currentChatSessionId,p=l.allSessionsWithOrderedQuestionAnswers??Cs,f=M.getSignedInUser()?.userId,v=ja(),E=No()&&v&&r!=null,_=$o(),T=zo(!0),I=S(P=>_!=null?$n(P,_):void 0),{useDynamicConfig:L}=_e(),{configValue:k}=L(Ma.aiCfoMessageDynamicConfig),A=b.useMemo(()=>Array.isArray(k.default_message_list)?k.default_message_list:[],[k.default_message_list]),B=b.useMemo(()=>A.slice(0,2),[A]),X=_!=null&&I!=null&&I.fetchState!=="Completed"&&I.fetchState!=="Error"&&(T||I.fetchState==="In-Progress"),Pe=b.useMemo(()=>{if(_==null||I?.fetchState==="Error")return B;if(X)return[];const P=(I?.suggestedQuestions??[]).map(me=>me.trim()).filter(me=>me.length>0).slice(0,2);return P.length===0?B:P},[B,X,_,I?.fetchState,I?.suggestedQuestions]),Fe=b.useCallback((P,me)=>{if(f==null||P.trim()==="")return;if(!u)return void oe({location:o,navigate:n,mergeState:{referrer:a}});const Re=La(g.getState());if(m){const Ze=x(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:Ze,referrer:a,aiCfoInitialQuestion:P,aiCfoShouldSubmit:!Re}})}else{if(Re)return t(_t(P)),void s(!0);i(P),s(!0),Ua(t,P,"insights_section",h,p,f,me,void 0)}},[p,h,t,u,m,o,a,n,s,i,g,r,f]),ue=b.useCallback(()=>{if(u)if(m){const P=x(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:P,referrer:a}})}else s(!0);else oe({location:o,navigate:n,mergeState:{referrer:a}})},[u,m,o,a,n,s,r]);return b.useMemo(()=>{if(E)return{isSuggestedQuestionsLoading:X,onAskSomethingElseClick:ue,onSuggestedQuestionClick:Fe,suggestedQuestions:Pe}},[E,X,ue,Fe,Pe])}const qe=Ko,ks=te(function(e){const a=zn(e),t=Kn(e),n=ga(e),{scrollPosition:o,...r}=n,s=q.getLocalizedStrings().reportTitleById.cash_in_cash_out,i=M.getSignedInUser(),c=e.tenantState.currentTenantId,m=U(e),g=m?.companyName??"",C={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:c??""},u=e.entityAutoCompleteState.autoCompleteText.navbar,l=ie(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:g,statementEndPoint:`${ae}/statement`,authParams:C},analytics:O,autoCompleteData:{autoCompleteText:u,entityAutoCompleteView:l}}},function(e,a){return{updateDownloadStateHandler:t=>{e(qn(t))},onTimeframeSelectionChanged:()=>{},onCOABalancesRangeChanged:(t,n)=>{e(Ne(t,n)),e(Be({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(xe("month")),e(le(a.firstMonthOfFY,t)),e(Be({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ve(a.firstMonthOfFY,t,o,n)),n.length>0&&e(Ye(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.isCompareModeOn!==t&&setTimeout(()=>e(Be({resetLeftScroll:!0})),50)},onElementCollapseStateChanged:(t,n)=>{e(Be({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(Be({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(ce({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ee("navbar"))},onAutoCompleteEntity:t=>{const n=de(t,a.tenantEmailDomain),o=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}})(qe),Ss=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r}=ne({mobileExploreReferrer:"DashboardCashInCashOut"}),s=Ke({mobileExploreReferrer:"DashboardCashInCashOut"}),i=S(c=>ga(c)).mode==="compare_mode";return d.jsx(ks,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:a,location:t,isCompareModeOn:i,navigate:n,insightsSectionAiCfoInfo:s,isAiCfoAccessEnabled:o,onAskAiCfoClick:r})},_s=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=te(function(e){const a=Zn(e),t=Qn(e),n=ba(e),{scrollPosition:o,...r}=n,s=q.getLocalizedStrings().reportTitleById.cash_position,i=M.getSignedInUser(),c=e.tenantState.currentTenantId,m=U(e),g=m?.companyName??"",C={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:c??""},u=e.entityAutoCompleteState.autoCompleteText.navbar,l=ie(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:g,statementEndPoint:`${ae}/statement`,authParams:C},analytics:O,autoCompleteData:{autoCompleteText:u,entityAutoCompleteView:l}}},function(e,a){return{updateDownloadStateHandler:t=>{e(Hn(t))},onTimeframeSelectionChanged:t=>{e(xe(t)),setTimeout(()=>e(je({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(Ne(t,n)),e(je({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(le(a.firstMonthOfFY,t)),e(je({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ve(a.firstMonthOfFY,t,o,n)),n.length>0&&e(Ye(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.isCompareModeOn!==t&&setTimeout(()=>e(je({resetLeftScroll:!0})),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=_s(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=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Cash Position"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(ce({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ee("navbar"))},onAutoCompleteEntity:t=>{const n=de(t,a.tenantEmailDomain),o=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onTableScroll:t=>{e(je({scrollPosition:t}))},onBackClick:()=>{a.navigate("../")}}})(qe),As=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r}=ne({mobileExploreReferrer:"DashboardCashPosition"}),s=Ke({mobileExploreReferrer:"DashboardCashPosition"}),i=S(c=>ba(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})},$=(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 mt(){return d.jsxs(Ct,{children:[d.jsx(w,{path:"/",element:d.jsx(se,{})}),d.jsx(w,{path:"/:forecastId",element:d.jsx(se,{})}),d.jsx(w,{path:"/:forecastId/*",element:d.jsx(Ue,{})})]})}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}},Es=te(function(e){const a=Ca(e),t=Wn(e),n=Xn(e),o=Jn(e),r=vt(e),{scrollPosition:s,...i}=r,c=t.reportTitle,m=M.getSignedInUser(),g=e.tenantState.currentTenantId,C=U(e),u=C?.companyName??"",l={userId:m?.userId??"",sessionId:m?.zeniSessionId??"",tenantId:g??""},h=e.entityAutoCompleteState.autoCompleteText.navbar,p=ie(e,"navbar"),f=Et(C);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:c},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${ae}/statement`,authParams:l},analytics:O,isZeniUser:Ge(m),autoCompleteData:{autoCompleteText:h,entityAutoCompleteView:p},isZeniCOAUsed:f,isAccountingClassesEnabled:De(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(ao(t))},onTimeframeSelectionChanged:t=>{e(xe(t)),setTimeout(()=>e(ge({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(Ne(t,n)),e(ge({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(le(a.firstMonthOfFY,t)),e(ge({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ve(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Ye(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&$(!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?Pt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):we(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=x(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(ce({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ee("navbar"))},onAutoCompleteEntity:t=>{const n=de(t,a.tenantEmailDomain),o=x(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(Ie(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?Te:Rt,n)),t==="forecast_mode"?(e(Ht({viewMode:"account_group"})),e(ka(!1,n?.id)),n!=null&&$(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):$(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(ge({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Burn Rate"),e(Ht({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(to({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(eo())},onResyncReports:()=>{e(It("net_burn_or_income_by_classes"))}}})(qe),Is=e=>{const a=z(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=ne({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),c=Ke({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),m=S(k=>vt(k)),g=m.isForecastModeOn,C=m.timeframe,u=m.selectedForecast?.id,l=S(k=>Tt(k.forecastState,u??"")),h=S(k=>Ca(k)),p=S(k=>Ot(k)),f=S(k=>De(k)),v=m.mode==="compare_mode",E=h.dataAvailable;b.useEffect(()=>{if(u!=null&&g===!0&&($(g,r,u,o),l!=null)){const k=l?.forecastPeriod,A=E!=null&&k.endDate.isAfter(E?.endDate)===!0?E:k;a(le(e.firstMonthOfFY,{startDate:A.endDate.startOf(C),endDate:A?.endDate}))}},[u]);const _=Se(),{useFeatureGate:T}=_e(),{isFeatureEnabled:I}=T(R.isReportsCommentingEnabled),L=Ft(I?_?.currentTenant?.companyId:void 0,{clearParams:h.fetchState==="Completed"});return d.jsx(Es,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,forecastIdFromUrlPath:r,location:n,isAccountingClassesEnabled:f,isCompareModeOn:v,navigate:o,analytics:O,reportsResyncFetchState:p.reportsResyncFetchState,insightsSectionAiCfoInfo:c,isAiCfoAccessEnabled:s,onAskAiCfoClick:i,initialOpenThreadRequest:L,isReportsCommentingEnabled:I})},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}},Os=te(function(e){const a=Sa(e),t=no(e),n=oo(e),o=so(e),r=xt(e),{scrollPosition:s,...i}=r,c=q.getLocalizedStrings().reportTitleById.operating_expenses,m=M.getSignedInUser(),g=e.tenantState.currentTenantId,C=U(e),u=C?.companyName??"",l={userId:m?.userId??"",sessionId:m?.zeniSessionId??"",tenantId:g??""},h=e.entityAutoCompleteState.autoCompleteText.navbar,p=ie(e,"navbar"),f=Et(C);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:c},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${ae}/statement`,authParams:l},analytics:O,isZeniUser:Ge(m),autoCompleteData:{autoCompleteText:h,entityAutoCompleteView:p},isZeniCOAUsed:f,isAccountingClassesEnabled:De(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(co(t))},onTimeframeSelectionChanged:t=>{e(xe(t)),setTimeout(()=>e(be({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(Ne(t,n)),e(be({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(le(a.firstMonthOfFY,t)),e(be({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ve(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Ye(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&$(!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):we(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=x(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(ce({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ee("navbar"))},onAutoCompleteEntity:t=>{const n=de(t,a.tenantEmailDomain),o=x(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(Ie(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?Te:Rt,n)),t=="forecast_mode"?(e(Wt({viewMode:"account_group"})),e(_a(!1,n?.id)),n!=null&&$(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):$(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(be({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Operating Expenses"),e(Wt({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(io({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(ro())},onResyncReports:()=>{e(It("operating_expenses_by_classes"))}}})(qe),xs=e=>{const a=z(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=ne({mobileExploreReferrer:"DashboardOpEx"}),c=Ke({mobileExploreReferrer:"DashboardOpEx"}),m=S(A=>xt(A)),g=m.isForecastModeOn,C=m.timeframe,u=m.selectedForecast?.id,l=S(A=>Tt(A.forecastState,u??"")),h=S(A=>Sa(A)),p=S(A=>Ot(A)),f=S(A=>De(A)),v=m.mode==="compare_mode",E=h.dataAvailable;b.useEffect(()=>{if(u!=null&&g===!0&&($(g,r,u,o),l!=null)){const A=l?.forecastPeriod,B=E!=null&&A.endDate.isAfter(E?.endDate)===!0?E:A;a(le(e.firstMonthOfFY,{startDate:B.endDate.startOf(C),endDate:B?.endDate}))}},[u]);const _=Se(),T=_?.loggedInUserRole!=null&&ya(_?.loggedInUserRole)!==!0,{useFeatureGate:I}=_e(),{isFeatureEnabled:L}=I(R.isReportsCommentingEnabled),k=Ft(L?_?.currentTenant?.companyId:void 0,{clearParams:h.fetchState==="Completed"});return d.jsx(Os,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,location:n,isAccountingClassesEnabled:f,isCompareModeOn:v,navigate:o,forecastIdFromUrlPath:r,analytics:O,hasTransactionAccess:T,reportsResyncFetchState:p.reportsResyncFetchState,insightsSectionAiCfoInfo:c,isAiCfoAccessEnabled:s,onAskAiCfoClick:i,initialOpenThreadRequest:k,isReportsCommentingEnabled:L})},Ds=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=te(function(e){const a=Aa(e),t=lo(e),n=uo(e),o=mo(e),r=Dt(e),{scrollPosition:s,...i}=r,c=q.getLocalizedStrings().reportTitleById.revenue,m=M.getSignedInUser(),g=e.tenantState.currentTenantId,C=U(e),u=C?.companyName??"",l={userId:m?.userId??"",sessionId:m?.zeniSessionId??"",tenantId:g??""},h=e.entityAutoCompleteState.autoCompleteText.navbar,p=ie(e,"navbar"),f=Et(C);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:c},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${ae}/statement`,authParams:l},analytics:O,isZeniUser:Ge(m),autoCompleteData:{autoCompleteText:h,entityAutoCompleteView:p},isZeniCOAUsed:f,isAccountingClassesEnabled:De(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(fo(t))},onTimeframeSelectionChanged:t=>{e(xe(t)),setTimeout(()=>e(Ce({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(Ne(t,n)),e(Ce({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(le(a.firstMonthOfFY,t)),e(Ce({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ve(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Ye(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&$(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout(()=>e(Ce({resetLeftScroll:!0})),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=Ds(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?Pt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):we(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=x(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(ce({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ee("navbar"))},onAutoCompleteEntity:t=>{const n=de(t,a.tenantEmailDomain),o=x(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(Ie(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?Te:Rt,n)),t==="forecast_mode"?(e(Xt({viewMode:"account_group"})),e(va(!1,n?.id)),n!=null&&$(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):$(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(Ce({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Revenues"),e(Xt({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(ho({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(po())},onResyncReports:()=>{e(It("revenue_by_classes"))}}})(qe),Ps=e=>{const a=z(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=ne({mobileExploreReferrer:"DashboardRevenue"}),c=Ke({mobileExploreReferrer:"DashboardRevenue"}),m=S(k=>Dt(k)),g=m.isForecastModeOn,C=m.timeframe,u=m.selectedForecast?.id,l=S(k=>Tt(k.forecastState,u??"")),h=S(k=>Aa(k)),p=h.dataAvailable,f=m.mode==="compare_mode",v=S(k=>De(k)),E=S(k=>Ot(k));b.useEffect(()=>{if(u!=null&&g===!0&&($(g,r,u,o),l!=null)){const k=l?.forecastPeriod,A=p!=null&&k.endDate.isAfter(p?.endDate)===!0?p:k;a(le(e.firstMonthOfFY,{startDate:A.endDate.startOf(C),endDate:A?.endDate}))}},[u]);const _=Se(),{useFeatureGate:T}=_e(),{isFeatureEnabled:I}=T(R.isReportsCommentingEnabled),L=Ft(I?_?.currentTenant?.companyId:void 0,{clearParams:h.fetchState==="Completed"});return d.jsx(ws,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,isAccountingClassesEnabled:v,isCompareModeOn:f,location:n,navigate:o,forecastIdFromUrlPath:r,analytics:O,reportsResyncFetchState:E.reportsResyncFetchState,insightsSectionAiCfoInfo:c,isAiCfoAccessEnabled:s,onAskAiCfoClick:i,initialOpenThreadRequest:L,isReportsCommentingEnabled:I})},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=te(function(e){const a=go(e),t=e.entityAutoCompleteState.autoCompleteText.navbar,n=ie(e,"navbar");return{report:a,analytics:O,autoCompleteData:{autoCompleteText:t,entityAutoCompleteView:n}}},function(e,a){return{onTimeframeSelectionChanged:t=>{O.trackTimeframeSwitch(Na(t),"Top Expenses"),e(Ea(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=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Top Expenses"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(ce({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ee("navbar"))},onAutoCompleteEntity:t=>{const n=de(t,a.tenantEmailDomain),o=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}})(qo),Bs=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e;return d.jsx(Rs,{tenantEmailDomain:a,location:t,navigate:n})},js=wt.div`
|
|
13
|
+
`;function gs({title:e,reportId:a,entityAutoCompleteView:t,autoCompleteText:n,isAiCfoAccessEnabled:o,onAskAiCfoClick:r}){const s=W(),i=z(),c=H(),{tenantEmailDomain:m}=K(),g=Go();return d.jsxs(hs,{children:[d.jsx(Vo,{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(ce({searchString:C,searchOrigin:"navbar"})):C.trim().length===0&&i(ee("navbar"))},onAutoCompleteEntity:C=>{n!=null&&O?.trackSearch(N.Event.search,bs(a),C.type,C.name,n);const u=de(C,m),l=x(c.state?.pathnameStackToGoBack,c.pathname);s(u,{state:{pathnameStackToGoBack:l}})}}},rightSideComponent:d.jsx(Yo,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r})}),d.jsx(fs,{children:a==="cash_balance"?d.jsx(ms,{}):d.jsx(ps,{})})]})}function Jt(){const e=H(),a=z(),{useFeatureGate:t}=_e(),{isFeatureEnabled:n}=t(R.isDepositAccountsFeatureEnabled),o=S(p=>p.cashBalanceState.fetchState),r=S(p=>p.cardBalanceState.fetchState),s=M.getSignedInUser();if(s==null)throw Error("Can't access dashboard detail without signing in...");const i=da((p=>{const f=ua(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}=ne({mobileExploreReferrer:i==="card_balance"?"Card Balance":"Cash Balance"});$e({isDataReady:c==="Completed"});const l=S(p=>p.entityAutoCompleteState.autoCompleteText.navbar),h=S(p=>ie(p,"navbar"));return b.useEffect(()=>{c==="Not-Started"&&function(p,f,A){switch(f){case"card_balance":p(ha());break;case"cash_balance":p(ma()),A===!0&&p(pa());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(ze,{analytics:O,onLoad:p=>((f,A)=>{switch(A){case"card_balance":f.trackPageLoaded(N.Event.cardBalance);break;case"cash_balance":f.trackPageLoaded(N.Event.cashBalance);break;default:console.error(`Analytics: Not tracking Page Loaded for ${A}!`)}})(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 Ke(e){const{mobileExploreReferrer:a}=e,t=z(),n=W(),o=H(),{tenantEmailDomain:r}=K(),{setIsAiCfoOpen:s,setAiCfoSidePanelQuestionToSubmit:i}=Ra(),c=Ba(),m=Ga(c),g=ca(),C=S(P=>P.tenantState.fetchState==="Completed"||P.tenantState.activeTenantFetchState.fetchState==="Completed"?U(P):void 0),u=C?.masterTOSInfo?.isMasterTOSAccepted??!1,l=S(P=>fa(P)),h=l.uiState?.currentChatSessionId,p=l.allSessionsWithOrderedQuestionAnswers??Cs,f=M.getSignedInUser()?.userId,A=ja(),E=No()&&A&&r!=null,_=$o(),T=zo(!0),I=S(P=>_!=null?$n(P,_):void 0),{useDynamicConfig:L}=_e(),{configValue:k}=L(Ma.aiCfoMessageDynamicConfig),v=b.useMemo(()=>Array.isArray(k.default_message_list)?k.default_message_list:[],[k.default_message_list]),B=b.useMemo(()=>v.slice(0,2),[v]),X=_!=null&&I!=null&&I.fetchState!=="Completed"&&I.fetchState!=="Error"&&(T||I.fetchState==="In-Progress"),Pe=b.useMemo(()=>{if(_==null||I?.fetchState==="Error")return B;if(X)return[];const P=(I?.suggestedQuestions??[]).map(me=>me.trim()).filter(me=>me.length>0).slice(0,2);return P.length===0?B:P},[B,X,_,I?.fetchState,I?.suggestedQuestions]),Fe=b.useCallback((P,me)=>{if(f==null||P.trim()==="")return;if(!u)return void oe({location:o,navigate:n,mergeState:{referrer:a}});const Re=La(g.getState());if(m){const Ze=x(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:Ze,referrer:a,aiCfoInitialQuestion:P,aiCfoShouldSubmit:!Re}})}else{if(Re)return t(_t(P)),void s(!0);i(P),s(!0),Ua(t,P,"insights_section",h,p,f,me,void 0)}},[p,h,t,u,m,o,a,n,s,i,g,r,f]),ue=b.useCallback(()=>{if(u)if(m){const P=x(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:P,referrer:a}})}else s(!0);else oe({location:o,navigate:n,mergeState:{referrer:a}})},[u,m,o,a,n,s,r]);return b.useMemo(()=>{if(E)return{isSuggestedQuestionsLoading:X,onAskSomethingElseClick:ue,onSuggestedQuestionClick:Fe,suggestedQuestions:Pe}},[E,X,ue,Fe,Pe])}const qe=Ko,ks=te(function(e){const a=zn(e),t=Kn(e),n=ga(e),{scrollPosition:o,...r}=n,s=q.getLocalizedStrings().reportTitleById.cash_in_cash_out,i=M.getSignedInUser(),c=e.tenantState.currentTenantId,m=U(e),g=m?.companyName??"",C={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:c??""},u=e.entityAutoCompleteState.autoCompleteText.navbar,l=ie(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:g,statementEndPoint:`${ae}/statement`,authParams:C},analytics:O,autoCompleteData:{autoCompleteText:u,entityAutoCompleteView:l}}},function(e,a){return{updateDownloadStateHandler:t=>{e(qn(t))},onTimeframeSelectionChanged:()=>{},onCOABalancesRangeChanged:(t,n)=>{e(Ne(t,n)),e(Be({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(xe("month")),e(le(a.firstMonthOfFY,t)),e(Be({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ve(a.firstMonthOfFY,t,o,n)),n.length>0&&e(Ye(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.isCompareModeOn!==t&&setTimeout(()=>e(Be({resetLeftScroll:!0})),50)},onElementCollapseStateChanged:(t,n)=>{e(Be({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(Be({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(ce({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ee("navbar"))},onAutoCompleteEntity:t=>{const n=de(t,a.tenantEmailDomain),o=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}})(qe),Ss=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r}=ne({mobileExploreReferrer:"DashboardCashInCashOut"}),s=Ke({mobileExploreReferrer:"DashboardCashInCashOut"}),i=S(c=>ga(c)).mode==="compare_mode";return d.jsx(ks,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:a,location:t,isCompareModeOn:i,navigate:n,insightsSectionAiCfoInfo:s,isAiCfoAccessEnabled:o,onAskAiCfoClick:r})},_s=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=te(function(e){const a=Zn(e),t=Qn(e),n=ba(e),{scrollPosition:o,...r}=n,s=q.getLocalizedStrings().reportTitleById.cash_position,i=M.getSignedInUser(),c=e.tenantState.currentTenantId,m=U(e),g=m?.companyName??"",C={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:c??""},u=e.entityAutoCompleteState.autoCompleteText.navbar,l=ie(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:g,statementEndPoint:`${ae}/statement`,authParams:C},analytics:O,autoCompleteData:{autoCompleteText:u,entityAutoCompleteView:l}}},function(e,a){return{updateDownloadStateHandler:t=>{e(Hn(t))},onTimeframeSelectionChanged:t=>{e(xe(t)),setTimeout(()=>e(je({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(Ne(t,n)),e(je({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(le(a.firstMonthOfFY,t)),e(je({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ve(a.firstMonthOfFY,t,o,n)),n.length>0&&e(Ye(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.isCompareModeOn!==t&&setTimeout(()=>e(je({resetLeftScroll:!0})),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=_s(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=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Cash Position"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(ce({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ee("navbar"))},onAutoCompleteEntity:t=>{const n=de(t,a.tenantEmailDomain),o=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onTableScroll:t=>{e(je({scrollPosition:t}))},onBackClick:()=>{a.navigate("../")}}})(qe),vs=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r}=ne({mobileExploreReferrer:"DashboardCashPosition"}),s=Ke({mobileExploreReferrer:"DashboardCashPosition"}),i=S(c=>ba(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})},$=(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 mt(){return d.jsxs(Ct,{children:[d.jsx(w,{path:"/",element:d.jsx(se,{})}),d.jsx(w,{path:"/:forecastId",element:d.jsx(se,{})}),d.jsx(w,{path:"/:forecastId/*",element:d.jsx(Ue,{})})]})}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}},Es=te(function(e){const a=Ca(e),t=Wn(e),n=Xn(e),o=Jn(e),r=At(e),{scrollPosition:s,...i}=r,c=t.reportTitle,m=M.getSignedInUser(),g=e.tenantState.currentTenantId,C=U(e),u=C?.companyName??"",l={userId:m?.userId??"",sessionId:m?.zeniSessionId??"",tenantId:g??""},h=e.entityAutoCompleteState.autoCompleteText.navbar,p=ie(e,"navbar"),f=Et(C);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:c},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${ae}/statement`,authParams:l},analytics:O,isZeniUser:Ge(m),autoCompleteData:{autoCompleteText:h,entityAutoCompleteView:p},isZeniCOAUsed:f,isAccountingClassesEnabled:De(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(ao(t))},onTimeframeSelectionChanged:t=>{e(xe(t)),setTimeout(()=>e(ge({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(Ne(t,n)),e(ge({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(le(a.firstMonthOfFY,t)),e(ge({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ve(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Ye(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&$(!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):we(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=x(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(ce({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ee("navbar"))},onAutoCompleteEntity:t=>{const n=de(t,a.tenantEmailDomain),o=x(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(Ie(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?Te:Rt,n)),t==="forecast_mode"?(e(Ht({viewMode:"account_group"})),e(ka(!1,n?.id)),n!=null&&$(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):$(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(ge({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Burn Rate"),e(Ht({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(to({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(eo())},onResyncReports:()=>{e(It("net_burn_or_income_by_classes"))}}})(qe),Is=e=>{const a=z(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=ne({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),c=Ke({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),m=S(k=>At(k)),g=m.isForecastModeOn,C=m.timeframe,u=m.selectedForecast?.id,l=S(k=>Tt(k.forecastState,u??"")),h=S(k=>Ca(k)),p=S(k=>Ot(k)),f=S(k=>De(k)),A=m.mode==="compare_mode",E=h.dataAvailable;b.useEffect(()=>{if(u!=null&&g===!0&&($(g,r,u,o),l!=null)){const k=l?.forecastPeriod,v=E!=null&&k.endDate.isAfter(E?.endDate)===!0?E:k;a(le(e.firstMonthOfFY,{startDate:v.endDate.startOf(C),endDate:v?.endDate}))}},[u]);const _=Se(),{useFeatureGate:T}=_e(),{isFeatureEnabled:I}=T(R.isReportsCommentingEnabled),L=Ft(I?_?.currentTenant?.companyId:void 0,{clearParams:h.fetchState==="Completed"});return d.jsx(Es,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,forecastIdFromUrlPath:r,location:n,isAccountingClassesEnabled:f,isCompareModeOn:A,navigate:o,analytics:O,reportsResyncFetchState:p.reportsResyncFetchState,insightsSectionAiCfoInfo:c,isAiCfoAccessEnabled:s,onAskAiCfoClick:i,initialOpenThreadRequest:L,isReportsCommentingEnabled:I})},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}},Os=te(function(e){const a=Sa(e),t=no(e),n=oo(e),o=so(e),r=xt(e),{scrollPosition:s,...i}=r,c=q.getLocalizedStrings().reportTitleById.operating_expenses,m=M.getSignedInUser(),g=e.tenantState.currentTenantId,C=U(e),u=C?.companyName??"",l={userId:m?.userId??"",sessionId:m?.zeniSessionId??"",tenantId:g??""},h=e.entityAutoCompleteState.autoCompleteText.navbar,p=ie(e,"navbar"),f=Et(C);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:c},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${ae}/statement`,authParams:l},analytics:O,isZeniUser:Ge(m),autoCompleteData:{autoCompleteText:h,entityAutoCompleteView:p},isZeniCOAUsed:f,isAccountingClassesEnabled:De(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(co(t))},onTimeframeSelectionChanged:t=>{e(xe(t)),setTimeout(()=>e(be({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(Ne(t,n)),e(be({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(le(a.firstMonthOfFY,t)),e(be({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ve(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Ye(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&$(!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):we(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=x(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(ce({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ee("navbar"))},onAutoCompleteEntity:t=>{const n=de(t,a.tenantEmailDomain),o=x(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(Ie(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?Te:Rt,n)),t=="forecast_mode"?(e(Wt({viewMode:"account_group"})),e(_a(!1,n?.id)),n!=null&&$(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):$(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(be({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Operating Expenses"),e(Wt({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(io({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(ro())},onResyncReports:()=>{e(It("operating_expenses_by_classes"))}}})(qe),xs=e=>{const a=z(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=ne({mobileExploreReferrer:"DashboardOpEx"}),c=Ke({mobileExploreReferrer:"DashboardOpEx"}),m=S(v=>xt(v)),g=m.isForecastModeOn,C=m.timeframe,u=m.selectedForecast?.id,l=S(v=>Tt(v.forecastState,u??"")),h=S(v=>Sa(v)),p=S(v=>Ot(v)),f=S(v=>De(v)),A=m.mode==="compare_mode",E=h.dataAvailable;b.useEffect(()=>{if(u!=null&&g===!0&&($(g,r,u,o),l!=null)){const v=l?.forecastPeriod,B=E!=null&&v.endDate.isAfter(E?.endDate)===!0?E:v;a(le(e.firstMonthOfFY,{startDate:B.endDate.startOf(C),endDate:B?.endDate}))}},[u]);const _=Se(),T=_?.loggedInUserRole!=null&&ya(_?.loggedInUserRole)!==!0,{useFeatureGate:I}=_e(),{isFeatureEnabled:L}=I(R.isReportsCommentingEnabled),k=Ft(L?_?.currentTenant?.companyId:void 0,{clearParams:h.fetchState==="Completed"});return d.jsx(Os,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,location:n,isAccountingClassesEnabled:f,isCompareModeOn:A,navigate:o,forecastIdFromUrlPath:r,analytics:O,hasTransactionAccess:T,reportsResyncFetchState:p.reportsResyncFetchState,insightsSectionAiCfoInfo:c,isAiCfoAccessEnabled:s,onAskAiCfoClick:i,initialOpenThreadRequest:k,isReportsCommentingEnabled:L})},Ds=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=te(function(e){const a=va(e),t=lo(e),n=uo(e),o=mo(e),r=Dt(e),{scrollPosition:s,...i}=r,c=q.getLocalizedStrings().reportTitleById.revenue,m=M.getSignedInUser(),g=e.tenantState.currentTenantId,C=U(e),u=C?.companyName??"",l={userId:m?.userId??"",sessionId:m?.zeniSessionId??"",tenantId:g??""},h=e.entityAutoCompleteState.autoCompleteText.navbar,p=ie(e,"navbar"),f=Et(C);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:c},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${ae}/statement`,authParams:l},analytics:O,isZeniUser:Ge(m),autoCompleteData:{autoCompleteText:h,entityAutoCompleteView:p},isZeniCOAUsed:f,isAccountingClassesEnabled:De(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(fo(t))},onTimeframeSelectionChanged:t=>{e(xe(t)),setTimeout(()=>e(Ce({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(Ne(t,n)),e(Ce({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(le(a.firstMonthOfFY,t)),e(Ce({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ve(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Ye(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&$(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout(()=>e(Ce({resetLeftScroll:!0})),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=Ds(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?Pt(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):we(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),c=x(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(ce({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ee("navbar"))},onAutoCompleteEntity:t=>{const n=de(t,a.tenantEmailDomain),o=x(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(Ie(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?Te:Rt,n)),t==="forecast_mode"?(e(Xt({viewMode:"account_group"})),e(Aa(!1,n?.id)),n!=null&&$(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):$(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(Ce({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Revenues"),e(Xt({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(ho({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(po())},onResyncReports:()=>{e(It("revenue_by_classes"))}}})(qe),Ps=e=>{const a=z(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=ne({mobileExploreReferrer:"DashboardRevenue"}),c=Ke({mobileExploreReferrer:"DashboardRevenue"}),m=S(k=>Dt(k)),g=m.isForecastModeOn,C=m.timeframe,u=m.selectedForecast?.id,l=S(k=>Tt(k.forecastState,u??"")),h=S(k=>va(k)),p=h.dataAvailable,f=m.mode==="compare_mode",A=S(k=>De(k)),E=S(k=>Ot(k));b.useEffect(()=>{if(u!=null&&g===!0&&($(g,r,u,o),l!=null)){const k=l?.forecastPeriod,v=p!=null&&k.endDate.isAfter(p?.endDate)===!0?p:k;a(le(e.firstMonthOfFY,{startDate:v.endDate.startOf(C),endDate:v?.endDate}))}},[u]);const _=Se(),{useFeatureGate:T}=_e(),{isFeatureEnabled:I}=T(R.isReportsCommentingEnabled),L=Ft(I?_?.currentTenant?.companyId:void 0,{clearParams:h.fetchState==="Completed"});return d.jsx(ws,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,isAccountingClassesEnabled:A,isCompareModeOn:f,location:n,navigate:o,forecastIdFromUrlPath:r,analytics:O,reportsResyncFetchState:E.reportsResyncFetchState,insightsSectionAiCfoInfo:c,isAiCfoAccessEnabled:s,onAskAiCfoClick:i,initialOpenThreadRequest:L,isReportsCommentingEnabled:I})},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=te(function(e){const a=go(e),t=e.entityAutoCompleteState.autoCompleteText.navbar,n=ie(e,"navbar");return{report:a,analytics:O,autoCompleteData:{autoCompleteText:t,entityAutoCompleteView:n}}},function(e,a){return{onTimeframeSelectionChanged:t=>{O.trackTimeframeSwitch(Na(t),"Top Expenses"),e(Ea(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=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:c,referrer:"Top Expenses"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(ce({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(ee("navbar"))},onAutoCompleteEntity:t=>{const n=de(t,a.tenantEmailDomain),o=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}})(qo),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,Rt=1;function Ms({fetchState:e,firstMonthOfFY:a,reportId:t,forecastId:n}){const o=W(),r=H(),{tenantEmailDomain:s}=K();let i;$e({isDataReady:!0});const c={firstMonthOfFY:a,tenantEmailDomain:s,location:r,navigate:o,forecastIdFromUrlPath:n,fetchState:e};switch(t){case"operating_expenses":i=d.jsx(xs,{...c});break;case"revenue":i=d.jsx(Ps,{...c});break;case"net_burn_or_income":i=d.jsx(Is,{...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(Ss,{...c});break;default:console.error(`${t} is not supported!`),i=null}return i!=null?d.jsx(js,{children:i}):null}function se(){const e=H(),a=z(),{forecastId:t}=K();let n="Not-Started";const o=S(l=>xt(l).fetchState),r=S(l=>Dt(l).fetchState),s=S(l=>vt(l).fetchState),i=S(l=>l.cashPositionState.fetchState),c=S(l=>l.topExState.fetchState),m=S(l=>l.cashInCashOutState.fetchState);if(M.getSignedInUser()==null)throw Error("Can't access dashboard detail without signing in...");const g=S(l=>U(l)),C=g?.company?.companyInfo?.firstMonthOfFY??1,u=da((l=>{const h=ua(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(wa(!0)),f!=null&&(l(Ie(p,!0,Te,{id:f,index:0})),l(_a(!1,f)));break;case"revenue":l(Da(!0)),f!=null&&(l(Ie(p,!0,Te,{id:f,index:0})),l(va(!1,f)));break;case"net_burn_or_income":l(xa(!0)),f!=null&&(l(Ie(p,!0,Te,{id:f,index:0})),l(ka(!1,f)));break;case"cash_position":l(Oa(!0));break;case"top_expenses":l(Ta());break;case"cash_in_cash_out":l(Ia());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(ze,{analytics:O,onLoad:l=>((h,p)=>{const f=e.state?.referrer;switch(p){case"operating_expenses":h.trackPageLoaded(N.Event.operatingExpenses,f);break;case"revenue":h.trackPageLoaded(N.Event.revenues,f);break;case"net_burn_or_income":h.trackPageLoaded(N.Event.burnRate,f);break;case"cash_position":h.trackPageLoaded(N.Event.cashPosition,f);break;case"top_expenses":h.trackPageLoaded(N.Event.topExpenses,f);break;case"cash_in_cash_out":h.trackPageLoaded(N.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 pt=typeof navigator<"u"&&navigator.userAgent.toLowerCase().indexOf("firefox")>0;function ht(e,a,t,n){e.addEventListener?e.addEventListener(a,t,n):e.attachEvent&&e.attachEvent("on".concat(a),function(){t(window.event)})}function Ka(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 qa(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 Bt={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,"-":pt?173:189,"=":pt?61:187,";":pt?59:186,"'":222,"[":219,"]":221,"\\":220},re={"⇧":16,shift:16,"⌥":18,alt:18,option:18,"⌃":17,ctrl:17,control:17,"⌘":91,cmd:91,command:91},yt={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},F={},We=1;We<20;We++)Bt["f".concat(We)]=111+We;var D=[],ea=!1,Za="all",ta=[],tt=function(e){return Bt[e.toLowerCase()]||re[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function aa(e){Za=e||"all"}function Le(){return Za||"all"}var ft=function(e){var a=e.key,t=e.scope,n=e.method,o=e.splitKey,r=o===void 0?"+":o;qa(a).forEach(function(s){var i=s.split(r),c=i.length,m=i[c-1],g=m==="*"?"*":tt(m);if(F[g]){t||(t=Le());var C=c>1?Ka(re,i):[];F[g]=F[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,v=!0,E=0;E<p.length;E++)f.indexOf(p[E])===-1&&(v=!1);return v}(u.mods,C))})}})};function na(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 oa(e,a){var t=F["*"],n=e.keyCode||e.which||e.charCode;if(G.filter.call(this,e)){if(n!==93&&n!==224||(n=91),D.indexOf(n)===-1&&n!==229&&D.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(h){var p=yt[h];e[h]&&D.indexOf(p)===-1?D.push(p):!e[h]&&D.indexOf(p)>-1?D.splice(D.indexOf(p),1):h==="metaKey"&&e[h]&&D.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(D=D.slice(D.indexOf(p))))}),n in j){for(var o in j[n]=!0,re)re[o]===n&&(G[o]=!0);if(!t)return}for(var r in j)Object.prototype.hasOwnProperty.call(j,r)&&(j[r]=e[yt[r]]);e.getModifierState&&(!e.altKey||e.ctrlKey)&&e.getModifierState("AltGraph")&&(D.indexOf(17)===-1&&D.push(17),D.indexOf(18)===-1&&D.push(18),j[17]=!0,j[18]=!0);var s=Le();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)&&na(e,t[i],s,a);if(n in F){for(var c=0;c<F[n].length;c++)if((e.type==="keydown"&&F[n][c].keydown||e.type==="keyup"&&F[n][c].keyup)&&F[n][c].key){for(var m=F[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("")===D.sort().join("")&&na(e,m,s,a)}}}}function G(e,a,t){D=[];var n=qa(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=Ka(re,e)),(e=(e=e[e.length-1])==="*"?"*":tt(e))in F||(F[e]=[]),F[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 ta.indexOf(u)>-1}(s)&&window&&(ta.push(s),ht(s,"keydown",function(u){oa(u,s)},C),ea||(ea=!0,ht(window,"focus",function(){D=[]},C)),ht(s,"keyup",function(u){oa(u,s),function(l){var h=l.keyCode||l.which||l.charCode,p=D.indexOf(h);if(p>=0&&D.splice(p,1),l.key&&l.key.toLowerCase()==="meta"&&D.splice(0,D.length),h!==93&&h!==224||(h=91),h in j)for(var f in j[h]=!1,re)re[f]===h&&(G[f]=!1)}(u)},C))}var gt={setScope:aa,getScope:Le,deleteScope:function(e,a){var t,n;for(var o in e||(e=Le()),F)if(Object.prototype.hasOwnProperty.call(F,o))for(t=F[o],n=0;n<t.length;)t[n].scope===e?t.splice(n,1):n++;Le()===e&&aa(a||"all")},getPressedKeyCodes:function(){return D.slice(0)},isPressed:function(e){return typeof e=="string"&&(e=tt(e)),D.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(F).forEach(function(t){var n=F[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(F).forEach(function(s){return delete F[s]});else if(Array.isArray(e))e.forEach(function(s){s.key&&ft(s)});else if(typeof e=="object")e.key&&ft(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=""),ft({key:e,scope:o,method:r,splitKey:"+"})}},keyMap:Bt,modifier:re,modifierMap:yt};for(var bt in gt)Object.prototype.hasOwnProperty.call(gt,bt)&&(G[bt]=gt[bt]);if(typeof window<"u"){var Ls=window.hotkeys;G.noConflict=function(e){return e&&window.hotkeys===G&&(window.hotkeys=Ls),G},window.hotkeys=G}G.filter=function(){return!0};var sa=function(e,a){var t=e.target,n=t&&t.tagName;return!!(n&&a&&a.includes(n))};function Us(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(v,E){var _,T;return s&&!s(v)?!g:!!(sa(v,["INPUT","TEXTAREA","SELECT"])&&!sa(v,r)||(_=v.target)!=null&&_.isContentEditable&&!h)||!!(p.current===null||document.activeElement===p.current||(T=p.current)!=null&&T.contains(document.activeElement))&&(a(v,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=[],ra="dashboard_card",J="ai_cfo_dashboard_card";function ia(e,a){return a?e.some(t=>String(t)===J)?e.slice():[J,...e]:e.filter(t=>String(t)!==J)}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}),Me=(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)=>Me(void 0,e,ke,a,t),$s=(e,a,t,n,o)=>({card:{dimension:et(ke),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(ke);return a.height=ke.height+10,{card:{dimension:a,cardType:J,cardIndex:e,fetchState:"Completed",disableAnimations:!1,spansFullDashboardWidth:!0}}},Ks=te(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 Me({isExpressedInterest:r,creditLimit:s,cashbackRate:i,fetchState:"Completed"},a.cardBalanceFetchState,ke,u,l);if(u==="treasury_promo_card")return $s(g,u,l,c,m);if(u==="information_card")return Me(void 0,"Completed",ke,u,l);if(u===J)return zs(l);{const h=o.find(p=>p?.reportId===u);return h?function(p,f,v,E){const _=p.reportId;switch(_){case"card_balance":case"cash_balance":return[Ys(p,f,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[Me(p,f,v,_,E)];case"net_burn_or_income_story_card":return[Me(p,f,v,"net_burn_or_income_story_card",E)];default:return console.error(`card type ${_} not yet supported!`),[]}}(h,h.fetchState,ke,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:ie(e,"navbar")},analytics:O,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)O.trackDashboardCardClicked("cards promo",2),O.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&&O.trackDashboardCardClicked("rewards promo",o+1),a.navigate("../../rewards/refer",{state:{referrer:s}})):r==="expense_automation_card"?(O.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!==J)switch(c){case"card_balance":i(ha());break;case"cash_balance":i(ma());break;case"operating_expenses":i(wa(!0));break;case"revenue":i(Da(!0));break;case"net_burn_or_income":i(xa(!0));break;case"net_burn_or_income_story_card":i(Bo(!0));break;case"cash_position":i(Oa(!0));break;case"top_expenses":i(Ta());break;case"cash_in_cash_out":i(Ia());break;case"insights_dashboard":i(Ro());break;case"bill_pay_card":i(Fo());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(kt(Oe()));break;case"accounts_receivable_aging":i(St(Oe()));break;case"zeni_accounts_promo_card":g.includes("zeni_accounts_promo_card")===!1&&i(pa());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)=>{O.trackTimeframeSwitch(Na(r),Zs(o),"Dashboard"),function(s,i,c){switch(i){case"operating_expenses":case"revenue":case"net_burn_or_income":case"cash_position":s(xe(c));break;case"top_expenses":s(Ea(c));break;default:throw new Error(`report type ${i} doesn't support changeTimeframe`)}}(e,o,r)},onUpdateSelectedInsightIndex:o=>{e(Oo(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=x(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=x(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=x(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=x(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"&&(O.trackUpdateBurnRateCalculatorSettings(r,s,Io(s)),e(To(t,r,s)))},onVideoPlay:()=>{e(ut())},onRemindMeLaterClick:()=>{e(Eo())},onDontShowAgainClick:()=>{e(ut())},onIntroOutsideClick:()=>{a.isTreasuryPromoIntroClosedByOutsideClick===!0&&a.isTreasuryPromoVideoPlayed!==!0?e(ut()):e(vo())}},autoCompleteActions:{onAutoCompleteInputChange:o=>{o.trim().length>=2?e(ce({searchString:o,searchOrigin:"navbar"})):o.trim().length===0&&e(ee("navbar"))},onCancelAutoComplete:()=>{e(ee("navbar"))},onAutoCompleteEntity:o=>{let r="";r=o.type!=="vendor"||o.detailType!=="bank_merchant"&&o.detailType!=="card_merchant"?de(o,a.tenantEmailDomain):ts(o.zeniId,o.qboId,a.tenantEmailDomain);const s=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(r,{state:{pathnameStackToGoBack:s,referrer:"Search"}})}}}})(es);function qs(){const e=ca(),a=Ba(),t=Ga(a),{isAiCfoOpen:n,setIsAiCfoOpen:o,setAiCfoSidePanelQuestionToSubmit:r}=Ra(),s=W(),i=z(),c=H(),m=M.getSignedInUser(),{useFeatureGate:g,useDynamicConfig:C}=_e(),u=Ge(m),[l,h]=b.useState(!1),[p,f]=b.useState(!1),v=ja(),{tenantEmailDomain:E}=K(),{isAiCfoAccessEnabled:_,onAskAiCfoClick:T}=ne({mobileExploreReferrer:"Dashboard"}),I=S(y=>y.tenantState.fetchState==="Completed"||y.tenantState.activeTenantFetchState.fetchState==="Completed"?U(y):void 0),L=I??M.getSignedInUserTenant(E),k=I?.masterTOSInfo?.isMasterTOSAccepted??!1,A=L.tenantId,B=L.companyId;b.useEffect(()=>{l===!1&&c.state?.message==="activation"&&(i(bo(B)),h(!0))},[c.state,l,B,i]),b.useEffect(()=>{v&&!p&&c.state?.message==="open_ai_cfo_drawer"&&(f(!0),k?(o(!0),s({pathname:c.pathname,search:c.search,hash:c.hash},{replace:!0,state:{...c.state,message:void 0}})):oe({location:c,navigate:s,mergeState:{referrer:"Dashboard",message:void 0}}))},[c,p,v,k,o,s]);const{isFeatureEnabled:X}=g(R.isApAgingFeatureEnabled),{isFeatureEnabled:Pe}=g(R.isExpenseAutomationEnabled),{isFeatureEnabled:Fe}=g(R.isExpenseAutomationEnabledV2),ue=Fe||Pe&&u,{isFeatureEnabled:P}=g(R.isTreasuryEnabled),me=Zo(ue),{isFeatureEnabled:Re}=g(R.isArAgingFeatureEnabled),{isFeatureEnabled:Ze}=g(R.isDepositAccountsFeatureEnabled),{isFeatureEnabled:jt}=g(R.isReferralFeatureEnabled),{isFeatureEnabled:Qa}=g(R.isChargeCardFeatureEnabled),{isFeatureEnabled:Ha}=g(R.isAiCfoFileUploadEnabled),{isFeatureEnabled:Wa}=g(R.isDashboardSidebarChristmasAnimationEnabled),{isFeatureEnabled:Xa}=g(R.isDashboardSidebarNewYearAnimationEnabled),{isFeatureEnabled:Ja}=g(R.aiAuditScorePercentage),{configValue:Mt}=C(Ma.zeniCardsConfig),en=Mt.charge_card_cashback_rate_per_transaction==null?.0175:Mt.charge_card_cashback_rate_per_transaction;if(c.state?.message==="activation"){const y=Qo(c.state?.pathnameStackToGoBack);s(c.pathname,{state:{...c.state,message:void 0,pathnameStackToGoBack:y.newStack}})}const[Lt,tn]=b.useState(!1),[at,an]=b.useState(!1);Us("command+p, Control+p",y=>{an(!at),y.preventDefault()},{enableOnContentEditable:!0,enableOnTags:["INPUT","SELECT","TEXTAREA"]},[at]);const Ut=I?.externalConnections?.accounting[0]?.isValid;if(m==null)throw Error("Can't access dashboard without signing in...");const pe=S(y=>U(y)?.excludedResources),nn=S(y=>y.expenseAutomationViewState.selectedPeriodByTenantId),on=!!I?.companyReimbursementInfo?.info?.isReimbursementEnabled,sn=!!I?.companyBillPayInfo?.info?.isBillPayEnabled,rn=S(y=>y.treasurySetupViewState.treasuryFundsDetails).fetchStatus.fetchState,cn=I?.company!=null&&Co(I.company),nt=P&&cn,ot=Se(),ln=At(ot?.loggedInUserRoleMap),V=[],Gt=pe?.resources?.find(y=>y.resource==="/reports/top_expenses")==null,dn=pe?.resources?.find(y=>y.resource==="/reports/task_card")==null,st=I?.userRole!=null&&ya(I?.userRole),un=pe?.resources?.find(y=>y.resource==="/bills")==null&&!st,mn=pe?.resources?.find(y=>y.resource==="/reimbursements")==null,pn=ko(ot?.loggedInUserRoleMap),hn=So(ot?.loggedInUserRoleMap),fn=I?.company?.companyChargeCardInfo?.chargeCardsCreditAccountLimit??0,gn=I?.companyChargeCardInfo?.info?.isCompanyInterestedInChargeCard??!1,bn=S(y=>y.treasurySetupViewState.treasuryFundsDetails).fundsDetails;Gt===!1&&V.push("top_expenses"),dn===!1&&V.push("task_card"),un===!1&&V.push("bill_pay_card","bill_pay_promo_card"),X===!1&&V.push("accounts_payable_aging"),Re===!1&&V.push("accounts_receivable_aging"),(ue===!1||st)&&V.push("expense_automation_card"),mn===!1&&V.push("reimbursement_card","reimbursement_promo_card"),Ze===!1&&V.push("zeni_accounts_promo_card"),jt===!1&&V.push("rewards_card"),nt===!1&&V.push("treasury_promo_card");const{areTenantIdsInSync:Vt}=Ho();b.useLayoutEffect(()=>{Lt&&me===ue||Ut!==!0||!Vt||pe?.fetchState!=="Completed"&&pe?.fetchState!=="Error"||(tn(!0),i(_o(m.userId,B,A,!0,!1,V)))},[Lt,m,A,i,Gt,Ut,pe?.fetchState,Vt]);const Cn=S(y=>y.reportUIOptionsState.forecastOnDashboard.isForecastModeOn),kn=S(y=>y.revenueState.uiState.selectedForecast?.id),Sn=S(y=>y.cardBalanceState.fetchState),he=S(y=>yo(y,V,m,Fe,Pe,nt)),_n=he.fetchState,yn=b.useMemo(()=>ia(he.cardsOrdered,_),[he.cardsOrdered,_]),An=b.useMemo(()=>ia(he.cardsForDashboardUI,_),[he.cardsForDashboardUI,_]);$e({isDataReady:!0});const{isSuggestedQuestionsLoading:vn,suggestedPromptQuestions:En}=ns(),rt=I?.isTreasuryPromoVideoPlayed===!0,Yt=I?.isTreasuryPromoVideoRemindMeLaterClicked===!0,Nt=I?.loginCounterForTreasuryPromoVideo??0,In=I?.isTreasuryPromoIntroClosedByOutsideClick===!0,$t=S(y=>y.dashboardState.isTreasuryVideoClosed),zt=b.useMemo(()=>Wo({isTreasuryPromoVideoRemindMeLaterClicked:Yt,isTreasuryPromoVideoPlayed:rt,loginCounterForTreasuryPromoVideo:Nt,isTreasuryVideoClosed:$t}),[Yt,rt,Nt,$t]),Kt=S(y=>fa(y)),ye=Kt.uiState?.currentChatSessionId,it=Kt.allSessionsWithOrderedQuestionAnswers??Gs,{currentSessionQuestionAnswers:Tn}=Xo(it,ye),qt=Tn.length===0,On=b.useCallback((y,Z,fe)=>{const Ae=m?.userId;if(Ae==null)return;const Y=y.trim();if(Y.length===0&&Z.length===0)return;if(!k)return void oe({location:c,navigate:s,mergeState:{referrer:"Dashboard"}});const Q=La(e.getState()),ve=()=>{const Ee=x(c.state?.pathnameStackToGoBack,c.pathname);s(`/${E}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:Ee,referrer:"Dashboard",aiCfoInitialQuestion:Y,aiCfoShouldSubmit:!Q&&Y.length>0,aiCfoInitialSubmissionSource:ra,...typeof fe=="number"?{aiCfoSuggestionIndex:fe}:{}}})};return t?Z.length>0?void o(!0):void ve():Z.length>0?Q?(i(_t(Y)),void o(!0)):(r(Y.length>0?Y:null),o(!0),void(Y.length>0&&Ua(i,Y,ra,ye,it,Ae,fe,Z.length>0?Z:void 0))):(Q&&i(_t(Y)),void ve())},[it,ye,i,k,t,c,s,r,o,m?.userId,e,E]),xn=b.useCallback(()=>{k?o(!0):oe({location:c,navigate:s,mergeState:{referrer:"Dashboard"}})},[k,c,s,o]),Dn=b.useCallback(()=>{if(!k)return void oe({location:c,navigate:s,mergeState:{referrer:"Dashboard"}});if(E==null)return;const y=x(c.state?.pathnameStackToGoBack,c.pathname);s(`/${E}/ai-cfo/explore`,{state:{pathnameStackToGoBack:y,referrer:"Dashboard"}})},[k,c,s,E]),wn=b.useCallback(()=>{if(k)if(t){if(E==null||I==null)return;const y=ye==null||qt?`/${E}/ai-cfo/explore`:`/${E}/ai-cfo/${ye}`,Z=c.state?.pathnameStackToGoBack??[],fe=x(Z,c.pathname);s(y,{state:{...c.state,pathnameStackToGoBack:fe,[Jo]:!0}})}else oe({location:c,navigate:s,mergeState:{referrer:"Dashboard"}});else oe({location:c,navigate:s,mergeState:{referrer:"Dashboard"}})},[k,t,c,s,E,I,ye,qt]);return d.jsxs(d.Fragment,{children:[_n==="Completed"?d.jsx(ze,{analytics:O,onLoad:y=>{y.trackPageLoaded(N.Event.dashboard),nt&&zt===!0&&y.trackTreasuryPromoView("Dashboard Promo Video")}}):null,d.jsx(Ks,{maxColumns:n?2:void 0,isAiCfoAccessEnabled:_,onAskAiCfoClick:T,onAiCfoDashboardOpenPanel:xn,onAiCfoDashboardOpenScopePage:wn,isAiCfoFileUploadEnabled:Ha===!0&&t===!1,onAiCfoDashboardPromptSubmit:On,onAiCfoDashboardExpandToFullPage:Dn,aiCfoDashboardSuggestedPromptQuestions:En,aiCfoDashboardSuggestedPromptQuestionsLoading:vn,onDragAndDropCard:(y,Z)=>{if(y===J||Z===J)return;const fe=function(Q,ve,Ee){const ct=Ee.indexOf(Q),lt=Ee.indexOf(ve);if(ct===-1||lt===-1||ct===lt)return Ee;const dt=[...Ee];return dt.splice(ct,1),dt.splice(lt,0,Q),dt}(y,Z,yn),Ae=fe.filter(Q=>Q!==J),Y=he.cardsOrdered;(Ae.length!==Y.length||Ae.some((Q,ve)=>Q!==Y[ve]))&&i(Ao(Ae))},dashboardReport:he,passedCardsOrdered:An,tenantId:A,companyId:B,tenantEmailDomain:E,location:c,navigate:s,isApAgingFeatureEnabled:X,isArAgingFeatureEnabled:Re,isBillPayEnabled:sn,isReimbursementEnabled:on,isSummaryCardsFiltered:at,isForecastOn:Cn,selectedForecastOnDashboard:kn,isVisitingFirstTime:l,isZeniAccountEnabled:Ze,isRewardsFeatureEnabled:jt,hasZeniAccountsAdminAccess:ln,isExpenseAutomationEnabledForUser:ue&&st===!1,selectedPeriod:nn[A],isChargeCardFeatureEnabled:Qa,isUserHasCardsAccess:pn,isUserHasTreasuryAccess:hn,cardsCreditLimit:fn,cashbackRate:en,isInterestedInChargeCard:gn,cardBalanceFetchState:Sn,christmasAnimationEnabled:Wa,newYearAnimationEnabled:Xa,treasuryFundDetails:bn,shouldShowTreasuryPromoIntroVideo:zt,isTreasuryPromoVideoPlayed:rt,isTreasuryPromoIntroClosedByOutsideClick:In,treasuryFetchState:rn,aiAuditScorePercentageEnabled:Ja})]})}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 vr(){const e=Se(),a=e?.excludedResources?.find(m=>m.resource==="/reports/top_expenses")==null,{useFeatureGate:t}=_e(),{isFeatureEnabled:n}=t(R.isApAgingFeatureEnabled),{isFeatureEnabled:o}=t(R.isArAgingFeatureEnabled),r=S(m=>U(m)),{isFeatureEnabled:s}=t(R.isDebitCardFeatureEnabled),i=jo(s,r),c=Mo(r);return i===!0||c===!0?d.jsx(Ct,{children:d.jsx(w,{path:"/*",element:d.jsx(os,{})})}):d.jsxs(Ct,{children:[d.jsx(w,{path:"/",element:d.jsx(qs,{})}),d.jsx(w,{path:"cash_balance/*",element:d.jsx(Jt,{})}),d.jsx(w,{path:"card_balance/*",element:d.jsx(Jt,{})}),d.jsx(w,{path:"operating_expenses/*",element:d.jsx(se,{})}),d.jsx(w,{path:"operating_expenses/forecast/*",element:d.jsx(mt,{})}),d.jsx(w,{path:"revenue/forecast/*",element:d.jsx(mt,{})}),d.jsx(w,{path:"revenue/*",element:d.jsx(se,{})}),d.jsx(w,{path:"net_burn_or_income/forecast/*",element:d.jsx(mt,{})}),d.jsx(w,{path:"net_burn_or_income/*",element:d.jsx(se,{})}),n===!0&&d.jsxs(d.Fragment,{children:[d.jsx(w,{path:"accounts_payable_aging/*",element:d.jsx(is,{})}),d.jsx(w,{path:"accounts_payable_aging/:vendorId/:reportDate/*",element:d.jsx(rs,{})})]}),o&&d.jsxs(d.Fragment,{children:[d.jsx(w,{path:"accounts_receivable_aging/:customerId/:reportDate/*",element:d.jsx(cs,{})}),d.jsx(w,{path:"accounts_receivable_aging/*",element:d.jsx(ls,{})})]}),d.jsx(w,{path:"cash_position/*",element:d.jsx(se,{})}),d.jsx(w,{path:"top_expenses/*",element:a===!0?d.jsx(se,{}):d.jsx(Ue,{})}),d.jsx(w,{path:"cash_in_cash_out/*",element:d.jsx(se,{})}),d.jsx(w,{path:"company_details",element:d.jsx(as,{})}),d.jsx(w,{path:"referrals/*",element:d.jsx(ss,{})}),d.jsx(w,{path:"*",element:d.jsx(Ue,{})})]})}export{vr as default};
|
|
20
|
+
`,Te=3,Rt=1;function Ms({fetchState:e,firstMonthOfFY:a,reportId:t,forecastId:n}){const o=W(),r=H(),{tenantEmailDomain:s}=K();let i;$e({isDataReady:!0});const c={firstMonthOfFY:a,tenantEmailDomain:s,location:r,navigate:o,forecastIdFromUrlPath:n,fetchState:e};switch(t){case"operating_expenses":i=d.jsx(xs,{...c});break;case"revenue":i=d.jsx(Ps,{...c});break;case"net_burn_or_income":i=d.jsx(Is,{...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(Ss,{...c});break;default:console.error(`${t} is not supported!`),i=null}return i!=null?d.jsx(js,{children:i}):null}function se(){const e=H(),a=z(),{forecastId:t}=K();let n="Not-Started";const o=S(l=>xt(l).fetchState),r=S(l=>Dt(l).fetchState),s=S(l=>At(l).fetchState),i=S(l=>l.cashPositionState.fetchState),c=S(l=>l.topExState.fetchState),m=S(l=>l.cashInCashOutState.fetchState);if(M.getSignedInUser()==null)throw Error("Can't access dashboard detail without signing in...");const g=S(l=>U(l)),C=g?.company?.companyInfo?.firstMonthOfFY??1,u=da((l=>{const h=ua(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(wa(!0)),f!=null&&(l(Ie(p,!0,Te,{id:f,index:0})),l(_a(!1,f)));break;case"revenue":l(Da(!0)),f!=null&&(l(Ie(p,!0,Te,{id:f,index:0})),l(Aa(!1,f)));break;case"net_burn_or_income":l(xa(!0)),f!=null&&(l(Ie(p,!0,Te,{id:f,index:0})),l(ka(!1,f)));break;case"cash_position":l(Oa(!0));break;case"top_expenses":l(Ta());break;case"cash_in_cash_out":l(Ia());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(ze,{analytics:O,onLoad:l=>((h,p)=>{const f=e.state?.referrer;switch(p){case"operating_expenses":h.trackPageLoaded(N.Event.operatingExpenses,f);break;case"revenue":h.trackPageLoaded(N.Event.revenues,f);break;case"net_burn_or_income":h.trackPageLoaded(N.Event.burnRate,f);break;case"cash_position":h.trackPageLoaded(N.Event.cashPosition,f);break;case"top_expenses":h.trackPageLoaded(N.Event.topExpenses,f);break;case"cash_in_cash_out":h.trackPageLoaded(N.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 pt=typeof navigator<"u"&&navigator.userAgent.toLowerCase().indexOf("firefox")>0;function ht(e,a,t,n){e.addEventListener?e.addEventListener(a,t,n):e.attachEvent&&e.attachEvent("on".concat(a),function(){t(window.event)})}function Ka(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 qa(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 Bt={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,"-":pt?173:189,"=":pt?61:187,";":pt?59:186,"'":222,"[":219,"]":221,"\\":220},re={"⇧":16,shift:16,"⌥":18,alt:18,option:18,"⌃":17,ctrl:17,control:17,"⌘":91,cmd:91,command:91},yt={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},F={},We=1;We<20;We++)Bt["f".concat(We)]=111+We;var D=[],ea=!1,Za="all",ta=[],tt=function(e){return Bt[e.toLowerCase()]||re[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function aa(e){Za=e||"all"}function Le(){return Za||"all"}var ft=function(e){var a=e.key,t=e.scope,n=e.method,o=e.splitKey,r=o===void 0?"+":o;qa(a).forEach(function(s){var i=s.split(r),c=i.length,m=i[c-1],g=m==="*"?"*":tt(m);if(F[g]){t||(t=Le());var C=c>1?Ka(re,i):[];F[g]=F[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,A=!0,E=0;E<p.length;E++)f.indexOf(p[E])===-1&&(A=!1);return A}(u.mods,C))})}})};function na(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 oa(e,a){var t=F["*"],n=e.keyCode||e.which||e.charCode;if(G.filter.call(this,e)){if(n!==93&&n!==224||(n=91),D.indexOf(n)===-1&&n!==229&&D.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(h){var p=yt[h];e[h]&&D.indexOf(p)===-1?D.push(p):!e[h]&&D.indexOf(p)>-1?D.splice(D.indexOf(p),1):h==="metaKey"&&e[h]&&D.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(D=D.slice(D.indexOf(p))))}),n in j){for(var o in j[n]=!0,re)re[o]===n&&(G[o]=!0);if(!t)return}for(var r in j)Object.prototype.hasOwnProperty.call(j,r)&&(j[r]=e[yt[r]]);e.getModifierState&&(!e.altKey||e.ctrlKey)&&e.getModifierState("AltGraph")&&(D.indexOf(17)===-1&&D.push(17),D.indexOf(18)===-1&&D.push(18),j[17]=!0,j[18]=!0);var s=Le();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)&&na(e,t[i],s,a);if(n in F){for(var c=0;c<F[n].length;c++)if((e.type==="keydown"&&F[n][c].keydown||e.type==="keyup"&&F[n][c].keyup)&&F[n][c].key){for(var m=F[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("")===D.sort().join("")&&na(e,m,s,a)}}}}function G(e,a,t){D=[];var n=qa(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=Ka(re,e)),(e=(e=e[e.length-1])==="*"?"*":tt(e))in F||(F[e]=[]),F[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 ta.indexOf(u)>-1}(s)&&window&&(ta.push(s),ht(s,"keydown",function(u){oa(u,s)},C),ea||(ea=!0,ht(window,"focus",function(){D=[]},C)),ht(s,"keyup",function(u){oa(u,s),function(l){var h=l.keyCode||l.which||l.charCode,p=D.indexOf(h);if(p>=0&&D.splice(p,1),l.key&&l.key.toLowerCase()==="meta"&&D.splice(0,D.length),h!==93&&h!==224||(h=91),h in j)for(var f in j[h]=!1,re)re[f]===h&&(G[f]=!1)}(u)},C))}var gt={setScope:aa,getScope:Le,deleteScope:function(e,a){var t,n;for(var o in e||(e=Le()),F)if(Object.prototype.hasOwnProperty.call(F,o))for(t=F[o],n=0;n<t.length;)t[n].scope===e?t.splice(n,1):n++;Le()===e&&aa(a||"all")},getPressedKeyCodes:function(){return D.slice(0)},isPressed:function(e){return typeof e=="string"&&(e=tt(e)),D.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(F).forEach(function(t){var n=F[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(F).forEach(function(s){return delete F[s]});else if(Array.isArray(e))e.forEach(function(s){s.key&&ft(s)});else if(typeof e=="object")e.key&&ft(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=""),ft({key:e,scope:o,method:r,splitKey:"+"})}},keyMap:Bt,modifier:re,modifierMap:yt};for(var bt in gt)Object.prototype.hasOwnProperty.call(gt,bt)&&(G[bt]=gt[bt]);if(typeof window<"u"){var Ls=window.hotkeys;G.noConflict=function(e){return e&&window.hotkeys===G&&(window.hotkeys=Ls),G},window.hotkeys=G}G.filter=function(){return!0};var sa=function(e,a){var t=e.target,n=t&&t.tagName;return!!(n&&a&&a.includes(n))};function Us(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(A,E){var _,T;return s&&!s(A)?!g:!!(sa(A,["INPUT","TEXTAREA","SELECT"])&&!sa(A,r)||(_=A.target)!=null&&_.isContentEditable&&!h)||!!(p.current===null||document.activeElement===p.current||(T=p.current)!=null&&T.contains(document.activeElement))&&(a(A,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=[],ra="dashboard_card",J="ai_cfo_dashboard_card";function ia(e,a){return a?e.some(t=>String(t)===J)?e.slice():[J,...e]:e.filter(t=>String(t)!==J)}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}),Me=(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)=>Me(void 0,e,ke,a,t),$s=(e,a,t,n,o)=>({card:{dimension:et(ke),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(ke);return a.height=ke.height+10,{card:{dimension:a,cardType:J,cardIndex:e,fetchState:"Completed",disableAnimations:!1,spansFullDashboardWidth:!0}}},Ks=te(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 Me({isExpressedInterest:r,creditLimit:s,cashbackRate:i,fetchState:"Completed"},a.cardBalanceFetchState,ke,u,l);if(u==="treasury_promo_card")return $s(g,u,l,c,m);if(u==="information_card")return Me(void 0,"Completed",ke,u,l);if(u===J)return zs(l);{const h=o.find(p=>p?.reportId===u);return h?function(p,f,A,E){const _=p.reportId;switch(_){case"card_balance":case"cash_balance":return[Ys(p,f,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[Me(p,f,A,_,E)];case"net_burn_or_income_story_card":return[Me(p,f,A,"net_burn_or_income_story_card",E)];default:return console.error(`card type ${_} not yet supported!`),[]}}(h,h.fetchState,ke,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:ie(e,"navbar")},analytics:O,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)O.trackDashboardCardClicked("cards promo",2),O.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&&O.trackDashboardCardClicked("rewards promo",o+1),a.navigate("../../rewards/refer",{state:{referrer:s}})):r==="expense_automation_card"?(O.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!==J)switch(c){case"card_balance":i(ha());break;case"cash_balance":i(ma());break;case"operating_expenses":i(wa(!0));break;case"revenue":i(Da(!0));break;case"net_burn_or_income":i(xa(!0));break;case"net_burn_or_income_story_card":i(Bo(!0));break;case"cash_position":i(Oa(!0));break;case"top_expenses":i(Ta());break;case"cash_in_cash_out":i(Ia());break;case"insights_dashboard":i(Ro());break;case"bill_pay_card":i(Fo());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(kt(Oe()));break;case"accounts_receivable_aging":i(St(Oe()));break;case"zeni_accounts_promo_card":g.includes("zeni_accounts_promo_card")===!1&&i(pa());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)=>{O.trackTimeframeSwitch(Na(r),Zs(o),"Dashboard"),function(s,i,c){switch(i){case"operating_expenses":case"revenue":case"net_burn_or_income":case"cash_position":s(xe(c));break;case"top_expenses":s(Ea(c));break;default:throw new Error(`report type ${i} doesn't support changeTimeframe`)}}(e,o,r)},onUpdateSelectedInsightIndex:o=>{e(Oo(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=x(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=x(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=x(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=x(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"&&(O.trackUpdateBurnRateCalculatorSettings(r,s,Io(s)),e(To(t,r,s)))},onVideoPlay:()=>{e(ut())},onRemindMeLaterClick:()=>{e(Eo())},onDontShowAgainClick:()=>{e(ut())},onIntroOutsideClick:()=>{a.isTreasuryPromoIntroClosedByOutsideClick===!0&&a.isTreasuryPromoVideoPlayed!==!0?e(ut()):e(Ao())}},autoCompleteActions:{onAutoCompleteInputChange:o=>{o.trim().length>=2?e(ce({searchString:o,searchOrigin:"navbar"})):o.trim().length===0&&e(ee("navbar"))},onCancelAutoComplete:()=>{e(ee("navbar"))},onAutoCompleteEntity:o=>{let r="";r=o.type!=="vendor"||o.detailType!=="bank_merchant"&&o.detailType!=="card_merchant"?de(o,a.tenantEmailDomain):ts(o.zeniId,o.qboId,a.tenantEmailDomain);const s=x(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(r,{state:{pathnameStackToGoBack:s,referrer:"Search"}})}}}})(es);function qs(){const e=ca(),a=Ba(),t=Ga(a),{isAiCfoOpen:n,setIsAiCfoOpen:o,setAiCfoSidePanelQuestionToSubmit:r}=Ra(),s=W(),i=z(),c=H(),m=M.getSignedInUser(),{useFeatureGate:g,useDynamicConfig:C}=_e(),u=Ge(m),[l,h]=b.useState(!1),[p,f]=b.useState(!1),A=ja(),{tenantEmailDomain:E}=K(),{isAiCfoAccessEnabled:_,onAskAiCfoClick:T}=ne({mobileExploreReferrer:"Dashboard"}),I=S(y=>y.tenantState.fetchState==="Completed"||y.tenantState.activeTenantFetchState.fetchState==="Completed"?U(y):void 0),L=I??M.getSignedInUserTenant(E),k=I?.masterTOSInfo?.isMasterTOSAccepted??!1,v=L.tenantId,B=L.companyId;b.useEffect(()=>{l===!1&&c.state?.message==="activation"&&(i(bo(B)),h(!0))},[c.state,l,B,i]),b.useEffect(()=>{A&&!p&&c.state?.message==="open_ai_cfo_drawer"&&(f(!0),k?(o(!0),s({pathname:c.pathname,search:c.search,hash:c.hash},{replace:!0,state:{...c.state,message:void 0}})):oe({location:c,navigate:s,mergeState:{referrer:"Dashboard",message:void 0}}))},[c,p,A,k,o,s]);const{isFeatureEnabled:X}=g(R.isApAgingFeatureEnabled),{isFeatureEnabled:Pe}=g(R.isExpenseAutomationEnabled),{isFeatureEnabled:Fe}=g(R.isExpenseAutomationEnabledV2),ue=Fe||Pe&&u,{isFeatureEnabled:P}=g(R.isTreasuryEnabled),me=Zo(ue),{isFeatureEnabled:Re}=g(R.isArAgingFeatureEnabled),{isFeatureEnabled:Ze}=g(R.isDepositAccountsFeatureEnabled),{isFeatureEnabled:jt}=g(R.isReferralFeatureEnabled),{isFeatureEnabled:Qa}=g(R.isChargeCardFeatureEnabled),{isFeatureEnabled:Ha}=g(R.isAiCfoFileUploadEnabled),{isFeatureEnabled:Wa}=g(R.isDashboardSidebarChristmasAnimationEnabled),{isFeatureEnabled:Xa}=g(R.isDashboardSidebarNewYearAnimationEnabled),{isFeatureEnabled:Ja}=g(R.aiAuditScorePercentage),{configValue:Mt}=C(Ma.zeniCardsConfig),en=Mt.charge_card_cashback_rate_per_transaction==null?.0175:Mt.charge_card_cashback_rate_per_transaction;if(c.state?.message==="activation"){const y=Qo(c.state?.pathnameStackToGoBack);s(c.pathname,{state:{...c.state,message:void 0,pathnameStackToGoBack:y.newStack}})}const[Lt,tn]=b.useState(!1),[at,an]=b.useState(!1);Us("command+p, Control+p",y=>{an(!at),y.preventDefault()},{enableOnContentEditable:!0,enableOnTags:["INPUT","SELECT","TEXTAREA"]},[at]);const Ut=I?.externalConnections?.accounting[0]?.isValid;if(m==null)throw Error("Can't access dashboard without signing in...");const pe=S(y=>U(y)?.excludedResources),nn=S(y=>y.expenseAutomationViewState.selectedPeriodByTenantId),on=!!I?.companyReimbursementInfo?.info?.isReimbursementEnabled,sn=!!I?.companyBillPayInfo?.info?.isBillPayEnabled,rn=S(y=>y.treasurySetupViewState.treasuryFundsDetails).fetchStatus.fetchState,cn=I?.company!=null&&Co(I.company),nt=P&&cn,ot=Se(),ln=vt(ot?.loggedInUserRoleMap),V=[],Gt=pe?.resources?.find(y=>y.resource==="/reports/top_expenses")==null,dn=pe?.resources?.find(y=>y.resource==="/reports/task_card")==null,st=I?.userRole!=null&&ya(I?.userRole),un=pe?.resources?.find(y=>y.resource==="/bills")==null&&!st,mn=pe?.resources?.find(y=>y.resource==="/reimbursements")==null,pn=ko(ot?.loggedInUserRoleMap),hn=So(ot?.loggedInUserRoleMap),fn=I?.company?.companyChargeCardInfo?.chargeCardsCreditAccountLimit??0,gn=I?.companyChargeCardInfo?.info?.isCompanyInterestedInChargeCard??!1,bn=S(y=>y.treasurySetupViewState.treasuryFundsDetails).fundsDetails;Gt===!1&&V.push("top_expenses"),dn===!1&&V.push("task_card"),un===!1&&V.push("bill_pay_card","bill_pay_promo_card"),X===!1&&V.push("accounts_payable_aging"),Re===!1&&V.push("accounts_receivable_aging"),(ue===!1||st)&&V.push("expense_automation_card"),mn===!1&&V.push("reimbursement_card","reimbursement_promo_card"),Ze===!1&&V.push("zeni_accounts_promo_card"),jt===!1&&V.push("rewards_card"),nt===!1&&V.push("treasury_promo_card");const{areTenantIdsInSync:Vt}=Ho();b.useLayoutEffect(()=>{Lt&&me===ue||Ut!==!0||!Vt||pe?.fetchState!=="Completed"&&pe?.fetchState!=="Error"||(tn(!0),i(_o(m.userId,B,v,!0,!1,V)))},[Lt,m,v,i,Gt,Ut,pe?.fetchState,Vt]);const Cn=S(y=>y.reportUIOptionsState.forecastOnDashboard.isForecastModeOn),kn=S(y=>y.revenueState.uiState.selectedForecast?.id),Sn=S(y=>y.cardBalanceState.fetchState),he=S(y=>yo(y,V,m,Fe,Pe,nt)),_n=he.fetchState,yn=b.useMemo(()=>ia(he.cardsOrdered,_),[he.cardsOrdered,_]),vn=b.useMemo(()=>ia(he.cardsForDashboardUI,_),[he.cardsForDashboardUI,_]);$e({isDataReady:!0});const{isSuggestedQuestionsLoading:An,suggestedPromptQuestions:En}=ns(),rt=I?.isTreasuryPromoVideoPlayed===!0,Yt=I?.isTreasuryPromoVideoRemindMeLaterClicked===!0,Nt=I?.loginCounterForTreasuryPromoVideo??0,In=I?.isTreasuryPromoIntroClosedByOutsideClick===!0,$t=S(y=>y.dashboardState.isTreasuryVideoClosed),zt=b.useMemo(()=>Wo({isTreasuryPromoVideoRemindMeLaterClicked:Yt,isTreasuryPromoVideoPlayed:rt,loginCounterForTreasuryPromoVideo:Nt,isTreasuryVideoClosed:$t}),[Yt,rt,Nt,$t]),Kt=S(y=>fa(y)),ye=Kt.uiState?.currentChatSessionId,it=Kt.allSessionsWithOrderedQuestionAnswers??Gs,{currentSessionQuestionAnswers:Tn}=Xo(it,ye),qt=Tn.length===0,On=b.useCallback((y,Z,fe)=>{const ve=m?.userId;if(ve==null)return;const Y=y.trim();if(Y.length===0&&Z.length===0)return;if(!k)return void oe({location:c,navigate:s,mergeState:{referrer:"Dashboard"}});const Q=La(e.getState()),Ae=()=>{const Ee=x(c.state?.pathnameStackToGoBack,c.pathname);s(`/${E}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:Ee,referrer:"Dashboard",aiCfoInitialQuestion:Y,aiCfoShouldSubmit:!Q&&Y.length>0,aiCfoInitialSubmissionSource:ra,...typeof fe=="number"?{aiCfoSuggestionIndex:fe}:{}}})};return t?Z.length>0?void o(!0):void Ae():Z.length>0?Q?(i(_t(Y)),void o(!0)):(r(Y.length>0?Y:null),o(!0),void(Y.length>0&&Ua(i,Y,ra,ye,it,ve,fe,Z.length>0?Z:void 0))):(Q&&i(_t(Y)),void Ae())},[it,ye,i,k,t,c,s,r,o,m?.userId,e,E]),xn=b.useCallback(()=>{k?o(!0):oe({location:c,navigate:s,mergeState:{referrer:"Dashboard"}})},[k,c,s,o]),Dn=b.useCallback(()=>{if(!k)return void oe({location:c,navigate:s,mergeState:{referrer:"Dashboard"}});if(E==null)return;const y=x(c.state?.pathnameStackToGoBack,c.pathname);s(`/${E}/ai-cfo/explore`,{state:{pathnameStackToGoBack:y,referrer:"Dashboard"}})},[k,c,s,E]),wn=b.useCallback(()=>{if(k)if(t){if(E==null||I==null)return;const y=ye==null||qt?`/${E}/ai-cfo/explore`:`/${E}/ai-cfo/${ye}`,Z=c.state?.pathnameStackToGoBack??[],fe=x(Z,c.pathname);s(y,{state:{...c.state,pathnameStackToGoBack:fe,[Jo]:!0}})}else oe({location:c,navigate:s,mergeState:{referrer:"Dashboard"}});else oe({location:c,navigate:s,mergeState:{referrer:"Dashboard"}})},[k,t,c,s,E,I,ye,qt]);return d.jsxs(d.Fragment,{children:[_n==="Completed"?d.jsx(ze,{analytics:O,onLoad:y=>{y.trackPageLoaded(N.Event.dashboard),nt&&zt===!0&&y.trackTreasuryPromoView("Dashboard Promo Video")}}):null,d.jsx(Ks,{maxColumns:n?2:void 0,isAiCfoAccessEnabled:_,onAskAiCfoClick:T,onAiCfoDashboardOpenPanel:xn,onAiCfoDashboardOpenScopePage:wn,isAiCfoFileUploadEnabled:Ha===!0&&t===!1,onAiCfoDashboardPromptSubmit:On,onAiCfoDashboardExpandToFullPage:Dn,aiCfoDashboardSuggestedPromptQuestions:En,aiCfoDashboardSuggestedPromptQuestionsLoading:An,onDragAndDropCard:(y,Z)=>{if(y===J||Z===J)return;const fe=function(Q,Ae,Ee){const ct=Ee.indexOf(Q),lt=Ee.indexOf(Ae);if(ct===-1||lt===-1||ct===lt)return Ee;const dt=[...Ee];return dt.splice(ct,1),dt.splice(lt,0,Q),dt}(y,Z,yn),ve=fe.filter(Q=>Q!==J),Y=he.cardsOrdered;(ve.length!==Y.length||ve.some((Q,Ae)=>Q!==Y[Ae]))&&i(vo(ve))},dashboardReport:he,passedCardsOrdered:vn,tenantId:v,companyId:B,tenantEmailDomain:E,location:c,navigate:s,isApAgingFeatureEnabled:X,isArAgingFeatureEnabled:Re,isBillPayEnabled:sn,isReimbursementEnabled:on,isSummaryCardsFiltered:at,isForecastOn:Cn,selectedForecastOnDashboard:kn,isVisitingFirstTime:l,isZeniAccountEnabled:Ze,isRewardsFeatureEnabled:jt,hasZeniAccountsAdminAccess:ln,isExpenseAutomationEnabledForUser:ue&&st===!1,selectedPeriod:nn[v],isChargeCardFeatureEnabled:Qa,isUserHasCardsAccess:pn,isUserHasTreasuryAccess:hn,cardsCreditLimit:fn,cashbackRate:en,isInterestedInChargeCard:gn,cardBalanceFetchState:Sn,christmasAnimationEnabled:Wa,newYearAnimationEnabled:Xa,treasuryFundDetails:bn,shouldShowTreasuryPromoIntroVideo:zt,isTreasuryPromoVideoPlayed:rt,isTreasuryPromoIntroClosedByOutsideClick:In,treasuryFetchState:rn,aiAuditScorePercentageEnabled:Ja})]})}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=Se(),a=e?.excludedResources?.find(m=>m.resource==="/reports/top_expenses")==null,{useFeatureGate:t}=_e(),{isFeatureEnabled:n}=t(R.isApAgingFeatureEnabled),{isFeatureEnabled:o}=t(R.isArAgingFeatureEnabled),r=S(m=>U(m)),{isFeatureEnabled:s}=t(R.isDebitCardFeatureEnabled),i=jo(s,r),c=Mo(r);return i===!0||c===!0?d.jsx(Ct,{children:d.jsx(w,{path:"/*",element:d.jsx(os,{})})}):d.jsxs(Ct,{children:[d.jsx(w,{path:"/",element:d.jsx(qs,{})}),d.jsx(w,{path:"cash_balance/*",element:d.jsx(Jt,{})}),d.jsx(w,{path:"card_balance/*",element:d.jsx(Jt,{})}),d.jsx(w,{path:"operating_expenses/*",element:d.jsx(se,{})}),d.jsx(w,{path:"operating_expenses/forecast/*",element:d.jsx(mt,{})}),d.jsx(w,{path:"revenue/forecast/*",element:d.jsx(mt,{})}),d.jsx(w,{path:"revenue/*",element:d.jsx(se,{})}),d.jsx(w,{path:"net_burn_or_income/forecast/*",element:d.jsx(mt,{})}),d.jsx(w,{path:"net_burn_or_income/*",element:d.jsx(se,{})}),n===!0&&d.jsxs(d.Fragment,{children:[d.jsx(w,{path:"accounts_payable_aging/*",element:d.jsx(is,{})}),d.jsx(w,{path:"accounts_payable_aging/:vendorId/:reportDate/*",element:d.jsx(rs,{})})]}),o&&d.jsxs(d.Fragment,{children:[d.jsx(w,{path:"accounts_receivable_aging/:customerId/:reportDate/*",element:d.jsx(cs,{})}),d.jsx(w,{path:"accounts_receivable_aging/*",element:d.jsx(ls,{})})]}),d.jsx(w,{path:"cash_position/*",element:d.jsx(se,{})}),d.jsx(w,{path:"top_expenses/*",element:a===!0?d.jsx(se,{}):d.jsx(Ue,{})}),d.jsx(w,{path:"cash_in_cash_out/*",element:d.jsx(se,{})}),d.jsx(w,{path:"company_details",element:d.jsx(as,{})}),d.jsx(w,{path:"referrals/*",element:d.jsx(ss,{})}),d.jsx(w,{path:"*",element:d.jsx(Ue,{})})]})}export{Ar as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as v}from"./liveblocks-
|
|
1
|
+
import{j as v}from"./liveblocks-DmbDY3sa.js";import{a as u}from"./sentry--Yi43Gx7.js";import{u as y,j as b,n as w,g as A,N as L}from"./core-Cj3sxYL7.js";import{Lw as N,eW as _,fE as U,Lx as k,o5 as R,Ly as z}from"./zeni-epic-state-BG_x9wwl.js";import{u as j,z as f,L as E,t as I,D as O,b as $}from"./index-BHgTWK3A.js";import"./mui-1V4hRqCa.js";import{t as P}from"./getLocaleForTenant-DI_-EIej.js";import"./recharts-mFhBBFnU.js";import"./analytics-BpWjaxbv.js";import"./plaid-JtkXopjw.js";import"./dnd-WLAr-qfO.js";import"./stripe-DMRn4zHo.js";import"./lottie-W8sR2m8i.js";import"./lexical--OluaPRa.js";import"./pdf-aJCOHARS.js";import"./utils-Bt5dYICv.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]="a9170a69-e734-456e-a827-61972c723514",t._sentryDebugIdIdentifier="sentry-dbid-a9170a69-e734-456e-a827-61972c723514")}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=T(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=T(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(E.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(E.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 T(t){for(const s of q)if(t.toLocaleLowerCase().includes(s))return G[s]}export{oe as default};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import{j as l}from"./liveblocks-DmbDY3sa.js";import{h as w,g as C,j as h,n as P,i as B}from"./core-Cj3sxYL7.js";import{Px as k,PE as W,gg as K,gf as M,ge as q,jp as J,MF as L,rp as Q,eW as V,P3 as D,jn as F,Py as S,PH as T,jl as j,jI as G}from"./zeni-epic-state-BG_x9wwl.js";import{bw as X,K as R,F as N,z as U,m as H,n as p,x as v,B as O,bx as Y,o as Z,by as ee,r as te}from"./index-BHgTWK3A.js";import{n as z}from"./mui-1V4hRqCa.js";import"./sentry--Yi43Gx7.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b914f539-1a14-4276-b677-3517329f9c58",e._sentryDebugIdIdentifier="sentry-dbid-b914f539-1a14-4276-b677-3517329f9c58")}catch{}})();const ne=P(null,function(e,t){return{onSaveVendor:n=>{e(J(t.vendorId!==void 0?t.vendorId:void 0,t.billId,void 0,t.isExpressPayPage)),e(L("common")),n!=null&&e(Q(n))},onGetOtp:n=>{e(q(n,"BillPayVendor"))},onResendOtp:n=>{e(M(n,"BillPayVendor"))},onVerifyOtp:(n,a)=>{e(K(n,a,"BillPayVendor"))},onVerifyOtpSuccess:(n,a,o)=>{e(W(n,a,o))}}})(X);function _({vendorId:e,billId:t,isExpressPayPage:n}){const a=w(),o=C(),s=h(i=>k(i,e));return l.jsx(ne,{location:o,navigate:a,vendorId:e,billId:t,vendorViewDetails:s,isExpressPayPage:n??!1})}const ae=z.div`
|
|
2
|
+
display: flex;
|
|
3
|
+
height: 100vh;
|
|
4
|
+
width: 100%;
|
|
5
|
+
flex: 1 1 auto;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
align-items: center;
|
|
8
|
+
background-color: ${e=>e.theme.colors.grey4};
|
|
9
|
+
`,oe=P(function(e,t){const{vendorId:n,billId:a}=t,o=k(e,n),s=D(e,t.isVendorRecommendationEnabled,t.isZeniAccountsFeatureEnabled,a);return{billId:a,isDisabled:o.bankAccountCreationState.fetchState==="In-Progress"?"readonly":void 0,vendorViewDetails:o,file:s.file,bankAccountContext:t.bankAccountContext}},function(e,t){const{navigate:n,location:a,vendorId:o}=t;return{onFetchBankName:s=>{e(G(s))},onSaveHandler:s=>{e(j(t.bankAccountContext,s,"standard",o))},onCancel:()=>{(()=>{const s=p(a.state?.pathnameStackToGoBack),i=s.poppedPathname??A();n(i,{state:{pathnameStackToGoBack:s.newStack}})})(),e(S())},onACHDetailsUpdated:s=>{const{bankAccountSection:i}=s;e(T({data:i}))},onBackClick:()=>{if(e(F({fetchState:"Not-Started"})),t.bankAccountContext==="express-pay")n("../",{relative:"path"});else{const s=p(t.location.state?.pathnameStackToGoBack),i=s.poppedPathname??A(0);t.navigate(i,{state:{pathnameStackToGoBack:s.newStack}})}e(S())}}})(Y);function fe({vendorIdParam:e,accountContext:t}){const n=w(),a=C(),o=R(),{vendorId:s,billId:i}=B(),d=e??s,{useFeatureGate:r}=N(),c=U.getSignedInUser(),b=h(u=>V(u)),g=H(),x=p(a.state?.pathnameStackToGoBack),f=t??(x.poppedPathname?.includes("vendor")===!0?"vendor":"billDetail"),m=h(u=>k(u,d)),{isFeatureEnabled:I}=r(v.isVendorRecommendationFeatureEnabled),{isFeatureEnabled:y}=r(v.isDepositAccountsFeatureEnabled);if(c==null)throw Error("Can't access address page without signing in...");return f==="billDetail"&&m.editVendorState?.saveStatus.fetchState==="In-Progress"?l.jsx(O,{fetchState:m.editVendorState?.saveStatus.fetchState??"Not-Started",style:{backgroundColor:g.colors.grey5}}):l.jsxs(ae,{windowSize:o,children:[l.jsx(_,{vendorId:d,billId:i}),l.jsx(oe,{location:a,navigate:n,billId:i,vendorId:d,currentTenant:b,bankAccountContext:f,isVendorRecommendationEnabled:I,isZeniAccountsFeatureEnabled:y})]})}const A=(e=2)=>{let t="../";for(let n=0;n<e;n++)t=`${t}../`;return t},me=(e,t,n)=>{let a=`/${e}/bill/${encodeURIComponent(t)}`;return n=="draft"&&(a+="/edit"),a},he=e=>`/${e}/bills`,ke=(e,t)=>{let n=`/${e}/bill`;return n=t!=null?n.concat(`/${t}/edit`):n.concat("/new"),n},$=(e,t,n,a)=>{let o=`/${e}/bill`;return o+=n!=null?`/${n}/edit/vendor`:"/new/vendor",o+=a!=null?`/${a}/edit/${t}`:`/create/${t}`,o};function Se(e,t,n){return $(e,"ach",t,n)}function ve(e,t,n){return $(e,"domestic",t,n)}function ge(e,t,n){return $(e,"international",t,n)}const se=(e,t,n)=>{let a=`/${e}/bill/`;return a=n!=null?a.concat(`${encodeURIComponent(n)}/${t}/`):a.concat(`new/${t}/`),a},re=z.div`
|
|
10
|
+
display: flex;
|
|
11
|
+
height: 100vh;
|
|
12
|
+
width: 100%;
|
|
13
|
+
flex: 1 1 auto;
|
|
14
|
+
flex-direction: column;
|
|
15
|
+
align-items: center;
|
|
16
|
+
background-color: ${e=>e.theme.colors.grey4};
|
|
17
|
+
box-shadow: ${e=>`0px 2px ${Z.sp1} ${e.theme.colors.dropShadowNormal}`};
|
|
18
|
+
`,ie=P(function(e,t){const{vendorId:n,billId:a}=t,o=k(e,n),s=D(e,t.isVendorRecommendationEnabled,t.isZeniAccountsFeatureEnabled,a);return{billId:a,isDisabled:o.bankAccountCreationState.fetchState==="In-Progress"?"readonly":void 0,vendorViewDetails:o,file:s.file,bankAccountContext:t.bankAccountContext}},function(e,t){const{billId:n,navigate:a,location:o,vendorId:s,currentTenant:i}=t,{tenantEmailDomain:d}=i;return{onFetchBankName:r=>{e(G(r))},onSaveHandler:r=>{e(j(t.bankAccountContext,r,"us-domestic",s))},onWireDetailsUpdated:r=>{const{bankAccountSection:c}=r;e(T({data:c}))},onCancel:()=>{(()=>{const r=p(o.state?.pathnameStackToGoBack),c=r.poppedPathname??E();a(c,{state:{pathnameStackToGoBack:r.newStack}})})(),e(S())},onAddressClick:r=>{if(t.bankAccountContext==="express-pay")a("./add-address");else{const c=se(d,r,n),b=te(o.state?.pathnameStackToGoBack,o.pathname);a(c,{state:{pathnameStackToGoBack:b}})}},onBackClick:()=>{if(e(F({fetchState:"Not-Started"})),t.bankAccountContext==="express-pay")a("../",{relative:"path"});else{const r=p(t.location.state?.pathnameStackToGoBack),c=r.poppedPathname??E(0);t.navigate(c,{state:{pathnameStackToGoBack:r.newStack}})}e(S())}}})(ee);function xe({vendorIdParam:e,accountContext:t}){const n=w(),a=C(),o=R(),{vendorId:s,billId:i}=B(),d=e??s,r=U.getSignedInUser(),{useFeatureGate:c}=N(),b=H(),g=h(u=>V(u)),x=p(a.state?.pathnameStackToGoBack),f=t??(x.poppedPathname?.includes("vendor")===!0?"vendor":"billDetail"),m=h(u=>k(u,d)),{isFeatureEnabled:I}=c(v.isVendorRecommendationFeatureEnabled),{isFeatureEnabled:y}=c(v.isDepositAccountsFeatureEnabled);if(r==null)throw Error("Can't access address page without signing in...");return f==="billDetail"&&m.editVendorState?.saveStatus.fetchState==="In-Progress"?l.jsx(O,{fetchState:m.editVendorState?.saveStatus.fetchState??"Not-Started",style:{backgroundColor:b.colors.grey5,boxShadow:`0px 2px ${Z.sp1} ${b.colors.dropShadowNormal}`}}):l.jsxs(re,{windowSize:o,children:[l.jsx(_,{vendorId:d,billId:i}),l.jsx(ie,{location:a,navigate:n,billId:i,vendorId:d,currentTenant:g,bankAccountContext:f,isVendorRecommendationEnabled:I,isZeniAccountsFeatureEnabled:y})]})}const E=(e=2)=>{let t="../";for(let n=0;n<e;n++)t=`${t}../`;return t};export{fe as A,xe as D,_ as V,me as a,se as b,ke as c,ve as d,he as g,ge as i,Se as v};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as i}from"./liveblocks-DmbDY3sa.js";import{K as c,E as l,m as f}from"./index-BHgTWK3A.js";import{D as b}from"./mui-1V4hRqCa.js";import"./sentry--Yi43Gx7.js";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},r=new e.Error().stack;r&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[r]="b4f83c93-6b8c-4125-b836-c9db747f101c",e._sentryDebugIdIdentifier="sentry-dbid-b4f83c93-6b8c-4125-b836-c9db747f101c")}catch{}})();const p={drawerLeftMargin:new l(0,0,240)};function m(e){const{isOpen:r,drawerLeftMargin:o,children:t,onClose:s}=e,n=c(),a=o?.valuePx(n)??p.drawerLeftMargin.valuePx(n),d=f();return i.jsx(b,{anchor:"right",open:r,PaperProps:{style:{width:`calc(100% - ${a})`}},slotProps:{backdrop:{style:{backgroundColor:d.colors.black,opacity:.8,cursor:"pointer"}}},onClose:s,children:t})}export{m as D};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as s}from"./liveblocks-
|
|
1
|
+
import{j as s}from"./liveblocks-DmbDY3sa.js";import{a as d}from"./sentry--Yi43Gx7.js";import{h as A,u as B,g as G,i as q,j as l,N as F,n as M,o as O,p as W}from"./core-Cj3sxYL7.js";import{NN as _,eW as J,N9 as R,ls as Y,JO as I,NS as $,ME as z,ks as V,JP as S,Ne as H,Nf as K,MG as L,MF as Q}from"./zeni-epic-state-BG_x9wwl.js";import{aS as U,c as X,n as Z,r as tt}from"./index-BHgTWK3A.js";import"./mui-1V4hRqCa.js";import{d as k}from"./decodeURIComponentSafe-CyYkfiHv.js";import{w as et}from"./withTransactionSidePanel-txS5Vf1E.js";import{f as at,c as nt}from"./routePaths-CKR4MRfB.js";import"./recharts-mFhBBFnU.js";import"./analytics-BpWjaxbv.js";import"./plaid-JtkXopjw.js";import"./dnd-WLAr-qfO.js";import"./stripe-DMRn4zHo.js";import"./lottie-W8sR2m8i.js";import"./lexical--OluaPRa.js";import"./pdf-aJCOHARS.js";import"./utils-Bt5dYICv.js";import"./useAskAiCfoHostNavButtonProps-DvB8uvB7.js";import"./TransactionDetailScreen-DhBRM2u-.js";(function(){try{var a=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new a.Error().stack;t&&(a._sentryDebugIds=a._sentryDebugIds||{},a._sentryDebugIds[t]="7964169a-7582-4441-9f28-59eed62b021d",a._sentryDebugIdIdentifier="sentry-dbid-7964169a-7582-4441-9f28-59eed62b021d")}catch{}})();const ot=M(function(a,t){const e=t.entity,o=$(a,t.entity,"EntityDetail");return{selectedEntity:e,autoCompleteData:{autoCompleteText:e.name,entityAutoCompleteView:z(a,"common")},trendWithTransactionsReport:o,analytics:X,isAccountingClassesEnabled:V(a)}},function(a,t){return{onTransactionItemClick:e=>{if(t.openTransactionPanel)return void t.openTransactionPanel(e.id,e.type);const o=`${nt(e,t.tenantEmailDomain)}`,c=tt(t.location.state?.pathnameStackToGoBack,t.location.pathname);t.navigate(o,{state:{pathnameStackToGoBack:c}})},autoCompleteActions:{onAutoCompleteInputChange:e=>{e.trim().length>=2?a(L({searchString:e,searchOrigin:"common"})):e.trim().length===0&&a(Q("common"))},onAutoCompleteEntity:e=>{const o=at(e,t.tenantEmailDomain);a(H()),a(K()),t.resetTrendIsFetchedStates(),t.navigate(o,{replace:!0,state:{pathnameStackToGoBack:t.location.state?.pathnameStackToGoBack}})},onCancelAutoComplete:()=>{const e=Z(t.location.state?.pathnameStackToGoBack),o=e.poppedPathname??b();t.navigate(o,{state:{pathnameStackToGoBack:e.newStack}})}},onTrendSelectedPeriodChange:e=>{if(t.closeSidePanel?.(),e==null)t.defaultTransactionTimePeriod!=null&&a(S(t.entity,"EntityDetail",{timeframe:"quarter",timePeriod:t.defaultTransactionTimePeriod}));else{const o=e.currentTimePeriod==null?e.addTimePeriod:{startDate:e.addTimePeriod.startDate,endDate:e.currentTimePeriod.endDate};a(I(t.entity,"EntityDetail",{timeframe:e.timeframe,timePeriod:e.addTimePeriod})),a(S(t.entity,"EntityDetail",{timeframe:e.timeframe,timePeriod:o}))}}}})(U),it=et(function({entityType:a,...t}){const e=A(),o=B(),c=G(),[m,T]=d.useState(!1),[h,D]=d.useState(!1),{tenantEmailDomain:C,entityIdEncoded:x,entityNameEncoded:N}=q(),r=k(x??""),p=k(N??""),u=rt(r,p),j=[r,p].filter(n=>n!=null),i={name:p,id:r,type:a,zeniId:r,qboId:r},g=l(n=>_(n.customerIncomeState,n.vendorExpenseState,n.trendState,i,"quarter")),v=l(n=>J(n).company?.companyInfo.firstMonthOfFY??1),f=l(n=>R(n.trendWithTransactionsState,i,"EntityDetail"));d.useEffect(()=>{m===!1&&u===!0&&(T(!0),o(Y(i)))},[m,u,i]);const E=l(n=>n.trendState.fetchState),P=f?.selectedPeriod?.timePeriod??g,w=function(n,y){return n!=null&&y!=null?{startDate:n.startDate,endDate:y?.endDate}:y}(f?.selectedPeriod?.timePeriod,g);return d.useEffect(()=>{m===!0&&h===!1&&E==="Completed"&&(D(!0),P!=null&&o(I(i,"EntityDetail",{timeframe:f?.selectedPeriod?.timeframe??"quarter",timePeriod:P})))},[m,h,E]),u?s.jsx(ot,{firstMonthOfFY:v,tenantEmailDomain:C,location:c,navigate:e,entity:i,defaultTransactionTimePeriod:w,resetTrendIsFetchedStates:()=>{T(!1),D(!1)},...t}):s.jsx(F,{to:b(j.length)})}),rt=(a,t)=>t!=null&&t.length>0&&a!=null&&a.length>0,b=(a=2)=>{let t="../";for(let e=0;e<a;e++)t=`${t}../`;return t};function xt({entityType:a}){return s.jsx(O,{children:s.jsx(W,{path:"/:entityIdEncoded/:entityNameEncoded/*",element:s.jsx(it,{entityType:a})})})}export{xt as EntityDetailRoutes,xt as default};
|