@zeniai/web-app-ui 5.0.83-qa → 5.0.84-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-CxSksp5X.js +1 -0
- package/dist/assets/AddressScreen-BsDFx8f9.js +9 -0
- package/dist/assets/{AiCfoScreen-DEUFQGrJ.js → AiCfoScreen-BdUmXEVc.js} +1 -1
- package/dist/assets/BillPayApprovalRoutes-CPj12fD4.js +1 -0
- package/dist/assets/{BillPayRoutes-CM8hJk1L.js → BillPayRoutes-UokUnIth.js} +9 -9
- package/dist/assets/BusinessVerificationPageScreen-Cu1EqrOf.js +9 -0
- package/dist/assets/{ChargeCardRoutes-bFbVJcJ3.js → ChargeCardRoutes-CE4ZeDWt.js} +9 -9
- package/dist/assets/{CompanyPassportScreen-2BatYHL7.js → CompanyPassportScreen-BV4MyG7l.js} +1 -1
- package/dist/assets/ConnectionAuthScreen-D6zD7C1V.js +11 -0
- package/dist/assets/CustomerOnboardingAuthScreen-5zFaGEyC.js +1 -0
- package/dist/assets/{CustomerOnboardingRoutes-Qc9BWmGL.js → CustomerOnboardingRoutes-Dfz2-llu.js} +3 -3
- package/dist/assets/DashboardRoutes-DBbyVSZr.js +20 -0
- package/dist/assets/{DefaultTenantHome-Z9AqTWY6.js → DefaultTenantHome-DiDfypo1.js} +1 -1
- package/dist/assets/DomesticWireDetailScreen-xVrYNbII.js +18 -0
- package/dist/assets/DrawerScreen-CfGPVQAS.js +1 -0
- package/dist/assets/EntityDetailRoutes-D0FZ4okq.js +1 -0
- package/dist/assets/{ExpenseAutomationRoutes-CSoEa0_v.js → ExpenseAutomationRoutes-S1bDDjBF.js} +4 -4
- package/dist/assets/FeaturePreviewScreen-BYl4gC2d.js +1 -0
- package/dist/assets/HubSpotOAuthCallbackScreen-B0ptLePN.js +1 -0
- package/dist/assets/{MagicLinkRoutes-Iy5unnpW.js → MagicLinkRoutes-Ugw3OIOt.js} +6 -6
- package/dist/assets/MagicLinkSignInScreen-BmdcomX5.js +12 -0
- package/dist/assets/{MobileAppDrawer-e8XeuLFm.js → MobileAppDrawer-DzR1e2uV.js} +1 -1
- package/dist/assets/NotFoundScreen-D7jhyBo6.js +1 -0
- package/dist/assets/NotificationRoutes-BikmJeNE.js +1 -0
- package/dist/assets/OAuthConsentScreen-CFFXqy5F.js +1 -0
- package/dist/assets/PandLWithForecastRoutes-C_UyuQ8R.js +1 -0
- package/dist/assets/PeopleRoutes-BD51rx7L.js +22 -0
- package/dist/assets/PerformanceRoutes-EuINTPbb.js +1 -0
- package/dist/assets/{Preview-Dk35mkO2.js → Preview-CBdON77x.js} +1 -1
- package/dist/assets/{QBOConnectionScreen-CZ1MGgEp.js → QBOConnectionScreen-Ber2Vu7P.js} +1 -1
- package/dist/assets/ReferralListScreen-DFe3F7FC.js +5 -0
- package/dist/assets/ReimbursementApprovalRoutes-C8yCelDJ.js +1 -0
- package/dist/assets/{ReimbursementApprovalRuleDetailScreen-Dd8W-jsp.js → ReimbursementApprovalRuleDetailScreen-Bb0yhRm2.js} +1 -1
- package/dist/assets/ReimbursementRoutes-BlSI1eiT.js +68 -0
- package/dist/assets/{ReportsRoutes-C8V-XsK0.js → ReportsRoutes-C00QeT_D.js} +1 -1
- package/dist/assets/RewardsRoutes-xj_hxIfA.js +1 -0
- package/dist/assets/ScreenRoutes-B0sYFsPR.js +2 -0
- package/dist/assets/{SettingsRoutes-e_2YajK9.js → SettingsRoutes-uFQNDOCC.js} +7 -7
- package/dist/assets/{SetupPagesScreen-DqRLJPMB.js → SetupPagesScreen-NG-BX2Cs.js} +5 -5
- package/dist/assets/SignInScreen-CDOuiR5t.js +1 -0
- package/dist/assets/SignOutScreen-CS7iDZe7.js +9 -0
- package/dist/assets/{TaskListScreen-A3idk1NZ.js → TaskListScreen-NdCfUdJV.js} +2 -2
- package/dist/assets/TaskRoutes-ixLMdnQk.js +9 -0
- package/dist/assets/TransactionDetailRoutes-D6GBGhEO.js +1 -0
- package/dist/assets/{TransactionDetailScreen-DIB74eML.js → TransactionDetailScreen-BRjuwlbo.js} +2 -2
- package/dist/assets/{TransactionListRoutes-FL8BD3WO.js → TransactionListRoutes-7pDKaOvg.js} +1 -1
- package/dist/assets/TreasuryRoutes-DsmWumi7.js +37 -0
- package/dist/assets/{VendorsRoutes-BpeSS5jb.js → VendorsRoutes-D_LeCbvb.js} +21 -21
- package/dist/assets/WiseConfirmationScreen-BUHV4iEA.js +12 -0
- package/dist/assets/{ZeniAccountRoutes-D5ItrMUC.js → ZeniAccountRoutes-Dt-bE3mA.js} +12 -12
- package/dist/assets/ZeniAccountStatementScreen-CzgqPJRt.js +9 -0
- package/dist/assets/{accountMappingHelper-DN2NK9FA.js → accountMappingHelper-DZfGqaZH.js} +1 -1
- package/dist/assets/{analytics-B134UjSL.js → analytics-B2BEDPCs.js} +1 -1
- package/dist/assets/{analyticsHelper-lTEhuqth.js → analyticsHelper-DtNneJAN.js} +1 -1
- package/dist/assets/{core-B1Jz41nC.js → core-DoFWsAh3.js} +1 -1
- package/dist/assets/{decodeURIComponentSafe-HQbzOYEL.js → decodeURIComponentSafe-DeajK0Ay.js} +1 -1
- package/dist/assets/{dnd-DumzdahX.js → dnd-BcveyY8t.js} +1 -1
- package/dist/assets/{empty-ByyVwI2e.js → empty-CTDyybn0.js} +1 -1
- package/dist/assets/{empty-oTLwTSll.js → empty-QfTzS1iQ.js} +1 -1
- package/dist/assets/{emptyVideoElement-C6Cu7fXI.js → emptyVideoElement-QuH_897V.js} +1 -1
- package/dist/assets/epic-B7M-yw7I.js +2 -0
- package/dist/assets/getLocaleForTenant-B77lQ07b.js +1 -0
- package/dist/assets/{index-DegTeG1R.js → index-4Xo98QFU.js} +1 -1
- package/dist/assets/{index-C8wkuIN5.js → index-BMRrhTMt.js} +1 -1
- package/dist/assets/{index-B90Cr8bv.js → index-BPKEmbll.js} +1 -1
- package/dist/assets/{index-BA1kjk_c.js → index-B_zQQVmD.js} +14091 -14116
- package/dist/assets/{index-jkshGKhR.js → index-CGS6EY1J.js} +2 -2
- package/dist/assets/{index-Ve4RRM-O.js → index-CSPFKsWD.js} +1 -1
- package/dist/assets/{index-C6t5Pm8y.js → index-CyF1r7km.js} +1 -1
- package/dist/assets/{index-DbMluP3a.js → index-D4aHobjN.js} +1 -1
- package/dist/assets/{lexical-DsIUchFW.js → lexical-Bn41B4hZ.js} +1 -1
- package/dist/assets/{liveblocks-Cjqg1XsV.js → liveblocks-C0YDUK6I.js} +1 -1
- package/dist/assets/{lottie-B-v1nIzb.js → lottie-GT0I8BXz.js} +1 -1
- package/dist/assets/{mui-DSSmRxLI.js → mui-D7NGykaU.js} +1 -1
- package/dist/assets/{pathToGoBack-DUiwH7Zn.js → pathToGoBack-BDnP7cAC.js} +1 -1
- package/dist/assets/{pdf-SAu_SEbF.js → pdf-BkkC7i8o.js} +4 -4
- package/dist/assets/{pdf-lib-DFDlNXnV.js → pdf-lib-zi68Ap-S.js} +1 -1
- package/dist/assets/{plaid-H6p_O3yl.js → plaid-BJpo1TK4.js} +1 -1
- package/dist/assets/{pusher-fPmkj0tk.js → pusher-ChH_QGyh.js} +1 -1
- package/dist/assets/{react-OAg8acZB.js → react-CVXPHUlL.js} +1 -1
- package/dist/assets/{react-Db4JNA42.js → react-CYcHY21q.js} +1 -1
- package/dist/assets/{react-CykgLUvo.js → react-DC9LUNFA.js} +1 -1
- package/dist/assets/{react-BNA9zwlm.js → react-DYNQ_QYS.js} +1 -1
- package/dist/assets/{react-CmgKrC8_.js → react-DbIi67kQ.js} +1 -1
- package/dist/assets/{react-B5_vH0ZV.js → react-hkCEeb4O.js} +1 -1
- package/dist/assets/{recharts-DW5j2-RD.js → recharts-Cuk30a9F.js} +1 -1
- package/dist/assets/{routePaths-CRbFlZJW.js → routePaths-jEiEovGM.js} +1 -1
- package/dist/assets/{sentry-DTwqiEdO.js → sentry-D_iKj4jN.js} +1 -1
- package/dist/assets/{url-CFX7crLz.js → url-CCqaghyE.js} +1 -1
- package/dist/assets/{url-CQOi-x1h.js → url-CmxamPcT.js} +1 -1
- package/dist/assets/useAskAiCfoHostNavButtonProps-CrrCW8TF.js +1 -0
- package/dist/assets/{useDeviceId-DOSS9iCb.js → useDeviceId-lfYb9gi-.js} +1 -1
- package/dist/assets/useFetchSuggestedQuestionsWhenReady-RpPSJmI8.js +1 -0
- package/dist/assets/{useInitialThreadRequest-D05iPKhd.js → useInitialThreadRequest-B2YcCNaV.js} +1 -1
- package/dist/assets/{utils-CCEyXo02.js → utils-C2wS7D4E.js} +1 -1
- package/dist/assets/{withTransactionSidePanel-C4l2rQhD.js → withTransactionSidePanel-D2Y7jJCS.js} +3 -3
- package/dist/assets/{zeni-epic-state-CFJ-5drS.js → zeni-epic-state-DxMSPxpM.js} +6 -6
- package/dist/index.html +1 -1
- package/package.json +4 -4
- package/dist/assets/AddressRoutes-CWhsyRK1.js +0 -1
- package/dist/assets/AddressScreen-VrcMQjiD.js +0 -9
- package/dist/assets/BillPayApprovalRoutes-Bto_8DlZ.js +0 -1
- package/dist/assets/BusinessVerificationPageScreen-aX8WAJEu.js +0 -9
- package/dist/assets/ConnectionAuthScreen-B2ntqz66.js +0 -11
- package/dist/assets/CustomerOnboardingAuthScreen-AYY31Mbm.js +0 -1
- package/dist/assets/DashboardRoutes-B2MHI9aq.js +0 -20
- package/dist/assets/DomesticWireDetailScreen-wgKBNuTX.js +0 -18
- package/dist/assets/DrawerScreen-CD89PYIf.js +0 -1
- package/dist/assets/EntityDetailRoutes-DY6s5vdx.js +0 -1
- package/dist/assets/FeaturePreviewScreen-ClFmJj0F.js +0 -1
- package/dist/assets/HubSpotOAuthCallbackScreen-Bv0Dplnr.js +0 -1
- package/dist/assets/MagicLinkSignInScreen-BT8J4zZB.js +0 -12
- package/dist/assets/NotFoundScreen-Bky0x63m.js +0 -1
- package/dist/assets/NotificationRoutes-BebVEMiU.js +0 -1
- package/dist/assets/OAuthConsentScreen-D5F3V9z0.js +0 -1
- package/dist/assets/PandLWithForecastRoutes-B8DWi2uL.js +0 -1
- package/dist/assets/PeopleRoutes-C_Z9cC8z.js +0 -22
- package/dist/assets/PerformanceRoutes-loPr71_u.js +0 -1
- package/dist/assets/ReferralListScreen-CT69aUhD.js +0 -5
- package/dist/assets/ReimbursementApprovalRoutes-cun-DBmT.js +0 -1
- package/dist/assets/ReimbursementRoutes-BlJI16jt.js +0 -68
- package/dist/assets/RewardsRoutes-BHmDW7as.js +0 -1
- package/dist/assets/ScreenRoutes-zKgwm72u.js +0 -2
- package/dist/assets/SignInScreen-Cog1Vtto.js +0 -1
- package/dist/assets/SignOutScreen-ZO39xI3M.js +0 -9
- package/dist/assets/TaskRoutes-NoT_X70G.js +0 -9
- package/dist/assets/TransactionDetailRoutes-CVrjMcax.js +0 -1
- package/dist/assets/TreasuryRoutes-CTNKrHTc.js +0 -37
- package/dist/assets/WiseConfirmationScreen-CXqsKsLQ.js +0 -12
- package/dist/assets/ZeniAccountStatementScreen-CFbM7j61.js +0 -9
- package/dist/assets/epic-BnAvJDb_.js +0 -2
- package/dist/assets/getLocaleForTenant-BgJ-_j4h.js +0 -1
- package/dist/assets/useAskAiCfoHostNavButtonProps-BtmGLJlN.js +0 -1
- package/dist/assets/useFetchSuggestedQuestionsWhenReady-B8aqOZNy.js +0 -1
package/dist/assets/{CustomerOnboardingRoutes-Qc9BWmGL.js → CustomerOnboardingRoutes-Dfz2-llu.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{j as a}from"./liveblocks-
|
|
1
|
+
import{j as a}from"./liveblocks-C0YDUK6I.js";import{t as $e,A as Ce}from"./AddressScreen-BsDFx8f9.js";import ze from"./NotFoundScreen-D7jhyBo6.js";import{a as g}from"./sentry-D_iKj4jN.js";import{j as oe,u as se,h as ie,l as re,g as D,N as E,k as ce,i as Qe,n as Me,o as Q}from"./core-DoFWsAh3.js";import{v as de,d as le,z as B,y as ue,m as qe,S as _,r as V,A as W,e as N,x as ve,g as X,am as Je,Z as Ke,an as ke,j as te,ao as Ze,ap as Ie,o as We,aq as He,ar as Ee,as as Xe}from"./index-B_zQQVmD.js";import{bn as Ye,eQ as ee,fd as et,eW as pe,eU as me,bv as tt,mv as at,f9 as nt,bO as ot,je as ae,jh as we,Jk as st,bT as it,c2 as ge,s1 as fe,rO as rt,JR as Y,s2 as _e,Hc as ct,ki as Ue,JS as Ve,JT as dt,JU as lt,JV as ut,jc as pt,jf as mt,rQ as Be,s0 as gt,bE as Te,cv as ft,se as xe,pQ as ht,pE as yt,ka as St,fC as bt,fB as Ct,fA as kt,JW as It,rI as Et,sf as Tt,si as xt,sl as Ot,sr as At,cU as Pt}from"./zeni-epic-state-DxMSPxpM.js";import{n as he}from"./mui-D7NGykaU.js";import{g as Dt,h as Ft,q as ne}from"./QBOConnectionScreen-Ber2Vu7P.js";import"./recharts-Cuk30a9F.js";import"./analytics-B2BEDPCs.js";import"./plaid-BJpo1TK4.js";import"./dnd-BcveyY8t.js";import"./stripe-DMRn4zHo.js";import"./lottie-GT0I8BXz.js";import"./lexical-Bn41B4hZ.js";import"./pdf-BkkC7i8o.js";import"./utils-C2wS7D4E.js";import"./empty-QfTzS1iQ.js";import"./pdf-lib-zi68Ap-S.js";import"./index-CyF1r7km.js";import"./url-CCqaghyE.js";import"./index-BPKEmbll.js";import"./decodeURIComponentSafe-DeajK0Ay.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]="01a41e00-2ce2-4e4c-9df5-a79fdd821a5a",t._sentryDebugIdIdentifier="sentry-dbid-01a41e00-2ce2-4e4c-9df5-a79fdd821a5a")}catch{}})();const jt=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"}})}}})(Je),vt=()=>{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=Ye(i),{useFeatureGate:m}=ue(),I=qe(),{isFeatureEnabled:T}=m(_.isApAgingFeatureEnabled),{isFeatureEnabled:x}=m(_.isArAgingFeatureEnabled),{isFeatureEnabled:k}=m(_.isDepositAccountsFeatureEnabled),{isFeatureEnabled:h}=m(_.isReferralFeatureEnabled),{isFeatureEnabled:U}=m(_.isExpenseAutomationEnabled),{isFeatureEnabled:C}=m(_.isExpenseAutomationEnabledV2),{isFeatureEnabled:F}=m(_.isDebitCardFeatureEnabled),$=C||U&&f,c=D(l=>ee(l)),{isFeatureEnabled:L}=m(_.isTreasuryEnabled),j=c.company!=null&&et(c.company),R=L&&j,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 v=pe(F,c),A=me(c),P=[],J=b?.resources?.find(l=>l.resource==="/reports/top_expenses")==null,z=b?.resources?.find(l=>l.resource==="/reports/task_card")==null,M=c?.userRole!=null&&tt(c?.userRole),w=b?.resources?.find(l=>l.resource==="/bills")==null&&!M,q=b?.resources?.find(l=>l.resource==="/reimbursements")==null;if(J===!1&&P.push("top_expenses"),z===!1&&P.push("task_card"),w===!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||v||A||(r(!0),s(at(i.userId,G,c.tenantId,!0,!1,P)))},[d,O,v,A,i,c.tenantId,s]),g.useEffect(()=>{(v||A)&&setTimeout(()=>{S(!0)},5e3)},[v,A]),O!=="Completed")return a.jsx(E,{to:"../"});if(O==="Completed"&&p){const l=V(o.state?.pathnameStackToGoBack,o.pathname);if(v)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(W,{analytics:N,onLoad:l=>(K=>K.trackPageLoaded(X.Event.onboardingDashboardActivation))(l)}),a.jsx(jt,{navigate:t,location:o,themeState:u,signedInUser:i,isApAgingFeatureEnabled:T,isArAgingFeatureEnabled:x,shouldFetchZeniAccountsPromoCard:k,shouldFetchRewardsPlanCard:h,isExpenseAutomationEnabledForUser:$,isExpenseAutomationFeatureEnabledV2:C,isTreasuryEnabled:R,loggedInUserRoleMap:n?.loggedInUserRoleMap})]}):a.jsx(ve,{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};
|
|
@@ -16,8 +16,8 @@ import{j as a}from"./liveblocks-Cjqg1XsV.js";import{t as Ke,A as Ce}from"./Addre
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
${t=>t.windowSize!=="small"?"overflow: auto;":""}
|
|
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:
|
|
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(xt(e,n,i))},onUpdatePaymentAccountLoginStatus:(e,n)=>{t(Tt(!1,e,n))},onEstablishConnectionSuccess:()=>{t(Et(s,!0,!1))},handleOnConnectClick:()=>{N.trackOnboardingConnectQBO(),ne.handleClick()},updateQBOPopupState:e=>{t(Y({isQBOPopupOpen:e}))},onCompanyOfficerUpdated:e=>{const n=e.map(i=>{const{officerType:f,userId:m,name:I,email:T,ssn:x,nationalityCountryCode:k,dob:h,phone:U,syncToken:C,selectDocument:F,role:$,ownership:c,isSelectedForVerification:L,userVerificationStatus:j,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:T,ssn:x,nationalityCountryCode:k?.selectedOption!=null?Ee(k.selectedOption):void 0,phone:U,birthday:h!=null?Te(h?.toString()):h,syncToken:C,titleAtCompany:$.selectedOption,ownershipInCompany:c,documentTypeSelectedForVerification:b,isSelectedForVerification:L,userVerificationStatus:j,fileIds:R,additionalDocumentTypesRequestedForVerification:[],additionalSubmittedDocumentsForVerificationFileIds:[],areAdditionalDocumentsRequestedForVerification:!1,areAdditionalDocumentsSubmittedForVerification:!1,isPhoneVerified:O}});t(xe({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:T,companyPhone:x,primaryContactEmail:k,primaryContactName:h,primaryContactUserId:U,primaryContactSyncToken:C,syncToken:F,fileIds:$,typeOfIncorporation:c,stateOfIncorporation:L,incDate:j,companySourceOfFunds:R,companySourceOfFundsDescription:O,companySubIndustry:b,countriesOfOperations:G,purposeOfAccount:v,purposeOfAccountDescription:A,regulatedStatus:P,regulatedStatusDescription:J,transactionVolume:z,transactionVolumeDescription:M,usNexus:w,usNexusTypes:q}=e,l={companyId:s,companyDescription:n,companyIndustry:i.selectedOption,companyIndustryType:f?.selectedOption??"",companyLegalName:m,taxIdOrEIN:I,website:T!=""&&T!=null?ft(T):void 0,phone:x,syncToken:F,fileIds:$,incDate:j!=null?Te(j?.toString()):j,typeOfIncorporation:c?.selectedOption??"",stateOfIncorporation:L?.selectedOption??"",companySourceOfFunds:R?.selectedOption??"",companySourceOfFundsDescription:O,companySubIndustry:b?.selectedOption??"",countriesOfOperations:G?.selectedOptions.map(Z=>Z.length===2?Z:Ee(Z))??[],purposeOfAccount:v?.selectedOption??"",purposeOfAccountDescription:A,regulatedStatus:P??"",regulatedStatusDescription:J,transactionVolume:z?.selectedOption??"",transactionVolumeDescription:M,usNexus:w,usNexusTypes:q?.selectedOptions??[]},K={userId:U,firstName:h.firstName,lastName:h.lastName,email:k,syncToken:C};t(xe({companyDetails:l,primaryContactDetails:K}))},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=$e(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(we(e))},handleConfirmCardSetupIntent:e=>{t(mt(e))},updateCardPaymentModalState:e=>{t(Y({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})}}})(Ze),H=({taxCFOCustomer:t=!1,isOnAddressPage:o=!1,appContent:s})=>{const u=oe(),d=se(),r=ie(),p=Ke(),S=de(),[e,n]=g.useState(!1),[i,f]=g.useState(!1),[m,I]=g.useState(!1),{tenantEmailDomain:T}=re(),x=le(),{useFeatureGate:k}=ue(),{isFeatureEnabled:h}=k(_.isDebitCardFeatureEnabled),U=Qe("/:tenantEmailDomain/onboarding")!==null&&d.search?.includes("code"),C=D(y=>y.onboardingCustomerViewState.fetchState),F=D(y=>y.onboardingCustomerViewState.currentStep),$=D(y=>y.onboardingCustomerViewState.uiState),c=D(y=>ee(y)),L=D(y=>y.userRoleConfigState.fetchState),j=D(y=>y.cardPaymentViewState),R=ke(j.addCardPaymentSourceStatus.fetchState),O=j.addCardPaymentSourceStatus.fetchState,{code:b,realmId:G,state:v}=Dt(d.search),A=c.externalConnections?.accounting[0],P=A?.connectionType,J=A?.connectionName,z=A?.connectionId??"",M=B.getSignedInUser()?.userId??"";g.useEffect(()=>{i||(f(!0),r(ae()))},[i,r]),g.useEffect(()=>{m||(we(["card"]),I(!0))},[m]),g.useEffect(()=>{R==="In-Progress"&&O==="Completed"&&r(ae())},[R,O]),g.useEffect(()=>{Ft(b,G,v,z,M)===!0&&c.externalConnections?.saveConnectionState!=="In-Progress"&&C==="Completed"&&(r(st(c.tenantId,{connection_type:P??"accounting",connection_name:J??"quickbooks_online",authorization_code:b,realm_id:G,connection_id:z,user_id:M},it(window.location.origin+"/onboarding/auth"))),N.trackOnboardingSaveQBOConnection(G,z),u(d.pathname))},[b,G,v,d.pathname,C]),g.useEffect(()=>{ne.isInitiated===!1&&C==="Completed"&&ne.init("/onboarding/auth",c.tenantEmailDomain)},[C]);const w=c.companyId??B.getSignedInUserTenant(T)?.companyId,q=ge(c?.userRole??[]),l=D(y=>fe(y,w));g.useEffect(()=>{e||C!=="Not-Started"||w==null||(n(!0),r(rt(w,!0,!U)))},[e,C,w]),g.useEffect(()=>{c.externalConnections?.saveConnectionState!=="Completed"&&c.externalConnections?.saveConnectionState!=="Error"||!$.isQBOPopupOpen||F!=="qbo_connection"||r(Y({isQBOPopupOpen:!1}))},[c.externalConnections?.saveConnectionState]),g.useEffect(()=>{C==="Completed"&&U&&(r(_e({step:"qbo_connection"})),r(Y({isQBOPopupOpen:!0})))},[U,C]),g.useEffect(()=>{L==="Not-Started"&&r(ct(!0))},[L,r]);const K=ke(l.companyDetailsLocalData?.addressStatus);g.useEffect(()=>{l.companyDetailsLocalData?.registeredAddressStatus?.addressToCreate==null&&l.companyDetailsLocalData?.addressStatus?.addressToCreate!=null&&K==null&&r(Ue({addressType:"company_registered_address",addressToCreate:l.companyDetailsLocalData?.addressStatus?.addressToCreate}))},[l.companyDetailsLocalData?.addressStatus?.addressToCreate,l.companyDetailsLocalData?.registeredAddressStatus?.addressToCreate]);const Z=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(X.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(W,{analytics:N,onLoad:Ne=>Se(Ne)}),a.jsx(Pe,{navigate:u,location:d,companyId:w,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&&x?.loggedInUserRoleMap!=null)return Z===!0?a.jsx(E,{to:"../../onboarding/thankyou"}):a.jsxs(Oe,{children:[a.jsx(W,{analytics:N,onLoad:y=>Se(y)}),a.jsx(Pe,{navigate:u,location:d,companyId:w,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
|
-
`,
|
|
23
|
+
`,je=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"}})}}})(Xe),wt=()=>{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),T=me(i),x=D(h=>h.onboardingCustomerViewState.updateStatus.fetchState),k=i.company?.companyOnboardingInfo.isOnboardingCompleted;return k!==!0||f?x==="Completed"&&k===!0&&f&&S?.loggedInUserRoleMap!=null?a.jsxs(Fe,{children:[a.jsx(W,{analytics:N,onLoad:h=>{h.trackPageLoaded(X.Event.onboardingLandingPage,"Onboarding",Pt(i.productSettings))}}),a.jsx(je,{navigate:t,showUpdatePaymentDetailButton:f,location:s,companyId:m,currentTenant:i,themeState:u,isVisitingFirstTime:e})]}):x==="Completed"&&k===!1&&S?.loggedInUserRoleMap!=null?a.jsxs(Fe,{children:[a.jsx(W,{analytics:N,onLoad:h=>{h.trackPageLoaded(X.Event.onboardingInterimPage)}}),a.jsx(je,{navigate:t,showUpdatePaymentDetailButton:f,location:s,companyId:m,currentTenant:i,themeState:u,isVisitingFirstTime:e})]}):a.jsx(ve,{fetchState:x}):I?a.jsx(E,{to:"../../checking"}):T?a.jsx(E,{to:"../../cards"}):a.jsx(E,{to:"../../dashboard"})};function oa(){return a.jsxs(Me,{children:[a.jsx(Q,{path:"/",element:a.jsx(H,{})}),a.jsx(Q,{path:"/billing/edit",element:a.jsx(H,{taxCFOCustomer:!0})}),a.jsx(Q,{path:"/thankyou",element:a.jsx(wt,{})}),a.jsx(Q,{path:"/activation",element:a.jsx(vt,{})}),a.jsx(Q,{path:"/address/edit/:addressType/:addressId",element:a.jsx(H,{isOnAddressPage:!0,appContent:a.jsx(Ce,{})})}),a.jsx(Q,{path:"/address/new/:addressType",element:a.jsx(H,{isOnAddressPage:!0,appContent:a.jsx(Ce,{})})}),a.jsx(Q,{path:"*",element:a.jsx(ze,{})})]})}export{oa as default};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import{j as l}from"./liveblocks-C0YDUK6I.js";import{l as $,g as S,u as q,h as N,j as Z,k as Q,s as Ka,n as st,o as w}from"./core-DoFWsAh3.js";import{eQ as L,Ka as Ye,bE as Vt,bq as he,Ln as qa,i2 as Za,Lo as wt,Lp as Ha,i5 as rt,Lq as je,Lr as Qa,ia as Wa,Ls as Dt,Lt as Xa,ie as it,Lu as Me,Lv as Ja,cl as lt,Lw as en,Lx as tn,Ku as an,j8 as nn,Ly as on,bn as Ee,Lz as Nt,J_ as ae,bc as zt,jm as $t,mF as Kt,j5 as qt,K0 as ne,J$ as H,f5 as sn,eN as rn,fn as cn,LA as ln,LB as dn,LC as Zt,LD as _e,tT as Ie,tU as Te,uf as fe,u9 as oe,tY as xe,LE as un,LF as mn,LG as pn,LH as Ht,LI as ke,LJ as hn,dE as Ge,qo as Qt,LK as fn,LL as gn,LM as Cn,LN as dt,Jn as ut,jC as ge,un as mt,qw as bn,LO as _n,tV as Ft,qr as me,qn as Wt,LP as ie,LQ as kn,LR as pt,Jl as ht,sv as Xt,LS as Sn,LT as yn,LU as An,LV as ft,sI as vn,LW as En,tX as Ot,su as Jt,LX as ce,LY as In,bv as ea,ur as ta,LZ as Tn,L_ as xn,L$ as wn,M0 as gt,um as Dn,M1 as Fn,tW as Pt,uq as aa,M2 as le,M3 as On,M4 as Pn,M5 as na,jr as oa,mC as sa,jw as ra,mA as ia,mz as ca,my as la,rT as Bn,fd as Rn,cO as Ln,cP as jn,mv as Mn,f9 as Un,mM as Yn,Dv as Bt,M6 as Gn,M7 as Vn,M8 as Nn,M9 as zn,b5 as Ct,f0 as $n,gM as Kn,fE as qn,mG as Zn,i_ as Hn,mD as Qn,mB as Wn,eW as Xn,eU as Jn}from"./zeni-epic-state-DxMSPxpM.js";import{z as R,X as W,r as D,e as E,D as K,aR as eo,A as we,aS as da,g as G,aT as to,d as De,aU as ua,y as Ve,S as j,m as ao,aV as no,aW as oo,T as ma,Z as so,a as pa,a1 as ro,aK as ha,aX as io,aY as co,W as lo,aZ as uo,a_ as mo,an as po,k as ho,U as fo,a$ as go,b0 as ye}from"./index-B_zQQVmD.js";import{n as bt}from"./mui-D7NGykaU.js";import{a as b}from"./sentry-D_iKj4jN.js";import{w as fa}from"./withTransactionSidePanel-D2Y7jJCS.js";import{b as ga,t as Ce,e as se,a as _t,v as Co}from"./routePaths-jEiEovGM.js";import{u as X}from"./useAskAiCfoHostNavButtonProps-CrrCW8TF.js";import{c as Fe,b as bo,u as _o}from"./useFetchSuggestedQuestionsWhenReady-RpPSJmI8.js";import ve from"./NotFoundScreen-D7jhyBo6.js";import{t as Ca}from"./analyticsHelper-DtNneJAN.js";import{C as ko}from"./CompanyPassportScreen-BV4MyG7l.js";import{F as So}from"./FeaturePreviewScreen-BYl4gC2d.js";import{R as yo}from"./ReferralListScreen-DFe3F7FC.js";import"./recharts-Cuk30a9F.js";import"./analytics-B2BEDPCs.js";import"./plaid-BJpo1TK4.js";import"./dnd-BcveyY8t.js";import"./stripe-DMRn4zHo.js";import"./lottie-GT0I8BXz.js";import"./lexical-Bn41B4hZ.js";import"./pdf-BkkC7i8o.js";import"./utils-C2wS7D4E.js";import"./TransactionDetailScreen-BRjuwlbo.js";import"./decodeURIComponentSafe-DeajK0Ay.js";import"./MobileAppDrawer-DzR1e2uV.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]="8bf362e3-8425-45ef-a6f2-41b1fff2e369",e._sentryDebugIdIdentifier="sentry-dbid-8bf362e3-8425-45ef-a6f2-41b1fff2e369")}catch{}})();const Ao=fa(function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{vendorId:o,reportDate:r}=$(),s=R.getSignedInUser(),i=S(I=>I.tenantState.currentTenantId),d=S(I=>L(I)),{tenantEmailDomain:p}=$(),_=q(),g=d?.companyName??"",u={userId:s?.userId??"",sessionId:s?.zeniSessionId??"",tenantId:i??""},c=b.useMemo(()=>({authParams:u,companyName:g,downloadEndPoint:`${W}/agingDetailedReport`,timezone:Ye()}),[]),m=b.useMemo(()=>r!=null?Vt(r):he(),[r]),h=N(),f=Z(),k=S(I=>qa(I,m,o)),y=b.useCallback(()=>{o!=null&&k.fetchState!=="In-Progress"&&k.fetchState!=="Completed"&&h(Za(o,m))},[m]),C=b.useCallback(()=>{f("../../",{relative:"path"})},[]),A=b.useCallback((I,z)=>{h(wt({sortKey:I,sortOrder:z}))},[]),T=b.useCallback(I=>{h(wt({downloadState:I}))},[]),M=b.useCallback(I=>{if(e)e(I.transactionId,I.transactionType);else if(p!=null){const z=ga({id:I.transactionId,type:I.transactionType},p);f(z);const de=D(_.state?.pathnameStackToGoBack,_.pathname);f(z,{state:{pathnameStackToGoBack:de}})}},[p,e]),F=b.useCallback(()=>{k.vendor!=null&&E.trackApAgingDetail("AP Aging",m.format(K.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),k.vendor.id,k.vendor.name)},[k.vendor,m]);return b.useEffect(()=>{y()},[]),b.useEffect(()=>{k.fetchState==="Completed"&&F()},[F,k.fetchState]),l.jsx(eo,{apAgingDetail:k,downloadParams:c,reportDate:m,analytics:E,onTransactionClick:M,onReload:y,onBackClick:C,onColumnSortConfigChanged:A,updateDownloadStateHandler:T,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})}),vo=()=>{const e=N(),a=Z(),t=S(A=>Ha(A)),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=X({mobileExploreReferrer:"AP Aging"});Fe({isDataReady:t.fetchState==="Completed"});const r=R.getSignedInUser(),s=S(A=>A.tenantState.currentTenantId),i=S(A=>L(A)),d=i?.companyName??"",p={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s??""},_=b.useMemo(()=>({authParams:p,companyName:d,downloadEndPoint:`${W}/agingReport`,timezone:Ye()}),[]),g=t.apAgingUIState.selectedDate??he(),u=b.useCallback(()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(rt(g))},[]);b.useEffect(()=>{u()},[]);const c=b.useCallback(()=>{a("../",{relative:"path"})},[]),m=b.useCallback(A=>{e(je({searchString:A}))},[]),h=b.useCallback((A,T)=>{e(je({sortKey:T,sortOrder:A}))},[]),f=b.useCallback(A=>{a(`./${A}/${g.format(K.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)},[g]),k=b.useCallback(A=>{e(je({downloadState:A}))},[]),y=b.useCallback((A,T)=>{},[]),C=b.useCallback((A,T)=>{e(je({selectedDate:A,agingDateSelectionType:T})),e(rt(A))},[]);return l.jsxs(l.Fragment,{children:[t.fetchState==="Completed"?l.jsx(we,{analytics:E,onLoad:A=>A.trackPageLoaded(G.Event.agingReport,"AP Aging")}):null,l.jsx(da,{uiState:t.apAgingUIState,report:t,downloadParams:_,analytics:E,onReloadReport:u,onBackClick:c,onSearchTextChange:m,onSortOrderChange:h,onEntityNameClick:f,updateDownloadStateHandler:k,onSelectedDateChanged:C,onNodeCollapseToggled:y,isAiCfoAccessEnabled:n,onAskAiCfoClick:o})]})},Eo=fa(function({openTransactionPanel:e,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n}){const{customerId:o,reportDate:r}=$(),s=R.getSignedInUser(),i=S(F=>L(F)),{tenantEmailDomain:d}=$(),p=q(),_=i.companyName,g={userId:s?.userId??"",sessionId:s?.zeniSessionId??"",tenantId:i.tenantId},u=b.useMemo(()=>({authParams:g,companyName:_,downloadEndPoint:`${W}/agingDetailedReport`,timezone:Ye()}),[]),c=b.useMemo(()=>r!=null?Vt(r):he(),[r]),m=N(),h=Z(),f=S(F=>Qa(F,c,o)),k=b.useCallback(()=>{o!=null&&f.fetchState!=="In-Progress"&&f.fetchState!=="Completed"&&m(Wa(o,c))},[c]),y=b.useCallback(()=>{h("../../",{relative:"path"})},[]),C=b.useCallback((F,I)=>{m(Dt({sortKey:F,sortOrder:I}))},[]),A=b.useCallback(F=>{m(Dt({downloadState:F}))},[]),T=b.useCallback(F=>{if(e)e(F.transactionId,F.transactionType);else if(d!=null){const I=ga({id:F.transactionId,type:F.transactionType},d);h(I);const z=D(p.state?.pathnameStackToGoBack,p.pathname);h(I,{state:{pathnameStackToGoBack:z}})}},[d,e]),M=b.useCallback(()=>{f.customer!=null&&E.trackArAgingDetail("AR Aging",c.format(K.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat),f.customer.id,f.customer.name)},[f.customer,c]);return b.useEffect(()=>{k()},[]),b.useEffect(()=>{f.fetchState==="Completed"&&M()},[f.fetchState,M]),l.jsx(to,{arAgingDetail:f,downloadParams:u,reportDate:c,analytics:E,onTransactionClick:T,onReload:k,onBackClick:y,onColumnSortConfigChanged:C,updateDownloadStateHandler:A,panelContent:a,sidePanelIsOpen:t,sidePanelIsFullView:n})}),Io=()=>{const e=N(),a=Z(),t=S(C=>Xa(C)),{isAiCfoAccessEnabled:n,onAskAiCfoClick:o}=X({mobileExploreReferrer:"AR Aging"});Fe({isDataReady:t.fetchState==="Completed"});const r=R.getSignedInUser(),s=S(C=>L(C)),i=s.companyName,d={userId:r?.userId??"",sessionId:r?.zeniSessionId??"",tenantId:s.tenantId},p=b.useMemo(()=>({authParams:d,companyName:i,downloadEndPoint:`${W}/agingReport`,timezone:Ye()}),[]),_=t.arAgingUIState.selectedDate??he(),g=b.useCallback(()=>{t.fetchState!=="In-Progress"&&t.fetchState!=="Completed"&&e(it(_))},[]);b.useEffect(()=>{g()},[]);const u=b.useCallback(()=>{a("../",{relative:"path"})},[]),c=b.useCallback(C=>{e(Me({searchString:C}))},[]),m=b.useCallback((C,A)=>{e(Me({sortKey:A,sortOrder:C}))},[]),h=b.useCallback(C=>{a(`./${C}/${_.format(K.getLocalizedStrings().dateFormat.analytics.YYYYDashMMDashDDFormat)}`)},[_]),f=b.useCallback(C=>{e(Me({downloadState:C}))},[]),k=b.useCallback((C,A)=>{e(Me({selectedDate:C,agingDateSelectionType:A})),e(it(C))},[]),y=b.useCallback((C,A)=>{e(Ja({nodeId:C,isCollapsed:A}))},[]);return l.jsxs(l.Fragment,{children:[t.fetchState==="Completed"?l.jsx(we,{analytics:E,onLoad:C=>C.trackPageLoaded(G.Event.agingReport,"AR Aging")}):null,l.jsx(da,{uiState:t.arAgingUIState,report:t,downloadParams:p,analytics:E,onReloadReport:g,onBackClick:u,onSearchTextChange:c,onSortOrderChange:m,onEntityNameClick:h,updateDownloadStateHandler:f,onSelectedDateChanged:k,onNodeCollapseToggled:y,isAiCfoAccessEnabled:n,onAskAiCfoClick:o})]})},ba=(e,a)=>({key:a,title:e.accountName,amount:e.balance?.available,logoUri:e.logo?.toString(),source:e});function _a(e,a){const t=an(a.firstMonthOfFY);return{onItemClick:(n,o)=>{const r=o.accountName===""?o.accountDescription:o.accountName,s=Ce(a.tenantEmailDomain,o.accountId,o.accountType,r,"quarter",t,!1),i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i,referrer:a.referrerType}})},onSetAccountsStatementDate:(n,o)=>{e(nn(n,o))},onPromoCardBtnClick:n=>{if(a.isZeniAccountsAdmin){let o=`../../checking/${n}`;n?E.trackZeniAccountsCashBalancePromoClicked("Move Money"):(E.trackZeniAccountsCashBalancePromoClicked("Sign Up for Free"),o="../../checking/promo");const r=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(o,{state:{pathnameStackToGoBack:r}})}else E.trackZeniAccountsCashBalancePromoClicked("Learn More"),window.open("https://www.zeni.ai/product/business-checking-accounts","_blank")}}}const To=Q(function(e){const a=en(e).accountsInOrder.map((n,o)=>ba(n,o)),t=tn(e);return{sectionTitle:K.getLocalizedStrings().balanceCard.cashBalanceSectionTitle,transactionArray:a,zeniAccountsPromoCardReport:t,fetchState:e.cashBalanceState.fetchState,analytics:E}},_a)(ua),xo=Q(function(e){const a=on(e).accountsInOrder.map((o,r)=>ba(o,r)),t=R.getSignedInUser(),n=Ee(t);return{sectionTitle:K.getLocalizedStrings().balanceCard.cardBalanceSectionTitle,transactionArray:a,isZeniUser:n,fetchState:e.cardBalanceState.fetchState,analytics:E}},_a)(ua);function wo(){const e=Z(),a=q(),{tenantEmailDomain:t}=$(),n=De(),o=S(s=>L(s).company?.companyInfo.firstMonthOfFY??1),r=lt(n?.loggedInUserRoleMap);return S(s=>s.cashBalanceState.fetchState)==="Error"?l.jsx(ve,{}):l.jsx(To,{tenantEmailDomain:t,location:a,referrerType:"Cash Balance",navigate:e,isZeniAccountsAdmin:r,firstMonthOfFY:o})}function Do(){const e=Z(),a=q(),{tenantEmailDomain:t}=$(),n=De(),o=lt(n?.loggedInUserRoleMap),r=S(s=>L(s).company?.companyInfo.firstMonthOfFY??1);return S(s=>s.cardBalanceState.fetchState)==="Error"?l.jsx(ve,{}):l.jsx(xo,{tenantEmailDomain:t,location:a,referrerType:"Card Balance",navigate:e,isZeniAccountsAdmin:o,firstMonthOfFY:r})}const Fo=bt.div`
|
|
2
|
+
display: flex;
|
|
3
|
+
flex: 1 1 auto;
|
|
4
|
+
min-height: 100%;
|
|
5
|
+
flex-direction: column;
|
|
6
|
+
background-color: ${e=>e.theme.colors.grey4};
|
|
7
|
+
`,Oo=bt.div`
|
|
8
|
+
display: flex;
|
|
9
|
+
flex: 1 1 auto;
|
|
10
|
+
flex-direction: column;
|
|
11
|
+
align-items: center;
|
|
12
|
+
background-color: ${e=>e.theme.colors.grey4};
|
|
13
|
+
`;function Po({title:e,reportId:a,entityAutoCompleteView:t,autoCompleteText:n,isAiCfoAccessEnabled:o,onAskAiCfoClick:r}){const s=Z(),i=N(),d=q(),{tenantEmailDomain:p}=$(),_=ao();return l.jsxs(Fo,{children:[l.jsx(no,{source:a==="cash_balance"?"CashBalanceDetailScreen":"CardBalanceDetailScreen",title:e,onBackClick:()=>{s("../")},hideSearchBtn:!0,backgroundColor:_.colors.grey4,searchAutoComplete:{autoCompleteData:{entityAutoCompleteView:t,autoCompleteText:n},autoCompleteActions:{onAutoCompleteInputChange:g=>{g.trim().length>=2?i(ne({searchString:g,searchOrigin:"navbar"})):g.trim().length===0&&i(H("navbar"))},onAutoCompleteEntity:g=>{n!=null&&E?.trackSearch(G.Event.search,Bo(a),g.type,g.name,n);const u=se(g,p),c=D(d.state?.pathnameStackToGoBack,d.pathname);s(u,{state:{pathnameStackToGoBack:c}})}}},rightSideComponent:l.jsx(oo,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r})}),l.jsx(Oo,{children:a==="cash_balance"?l.jsx(wo,{}):l.jsx(Do,{})})]})}function Rt(){const e=q(),a=N(),{useFeatureGate:t}=Ve(),{isFeatureEnabled:n}=t(j.isDepositAccountsFeatureEnabled),o=S(h=>h.cashBalanceState.fetchState),r=S(h=>h.cardBalanceState.fetchState),s=R.getSignedInUser();if(s==null)throw Error("Can't access dashboard detail without signing in...");const i=Nt((h=>{const f=zt(h,"/").split("/");return f[f.length-1]})(e.pathname));let d="Not-Started",p="";const _=K.getLocalizedStrings();switch(i){case"cash_balance":d=o,p=_.reportTitleById.cash_balance;break;case"card_balance":d=r,p=_.reportTitleById.card_balance;break;default:console.error(`${i} is not supported!`)}const{isAiCfoAccessEnabled:g,onAskAiCfoClick:u}=X({mobileExploreReferrer:i==="card_balance"?"Card Balance":"Cash Balance"});Fe({isDataReady:d==="Completed"});const c=S(h=>h.entityAutoCompleteState.autoCompleteText.navbar),m=S(h=>ae(h,"navbar"));return b.useEffect(()=>{d==="Not-Started"&&function(h,f,k){switch(f){case"card_balance":h(qt());break;case"cash_balance":h($t()),k===!0&&h(Kt());break;default:throw new Error(`balance report type ${f} is not yet supported`)}}(a,i,n)},[s,a,d]),l.jsxs(l.Fragment,{children:[d==="Completed"?l.jsx(we,{analytics:E,onLoad:h=>((f,k)=>{switch(k){case"card_balance":f.trackPageLoaded(G.Event.cardBalance);break;case"cash_balance":f.trackPageLoaded(G.Event.cashBalance);break;default:console.error(`Analytics: Not tracking Page Loaded for ${k}!`)}})(h,i)}):null,l.jsx(Po,{title:p,reportId:i,autoCompleteText:c,entityAutoCompleteView:m,isAiCfoAccessEnabled:g,onAskAiCfoClick:u})]})}const Bo=e=>{switch(e){case"cash_balance":return"Cash Balance";case"card_balance":return"Card Balance";default:return"Dashboard"}},Ro=[];function Oe(e){const{mobileExploreReferrer:a}=e,t=N(),n=Z(),o=q(),{tenantEmailDomain:r}=$(),{setIsAiCfoOpen:s,setAiCfoSidePanelQuestionToSubmit:i}=ma(),d=so(),p=lo(d),_=Ka(),g=S(P=>sn(P)),u=g.uiState?.currentChatSessionId,c=g.allSessionsWithOrderedQuestionAnswers??Ro,m=R.getSignedInUser()?.userId,h=pa(),f=bo()&&h&&r!=null,k=ro(),y=_o(!0),C=S(P=>k!=null?rn(P,k):void 0),{useDynamicConfig:A}=Ve(),{configValue:T}=A(ha.aiCfoMessageDynamicConfig),M=b.useMemo(()=>Array.isArray(T.default_message_list)?T.default_message_list:[],[T.default_message_list]),F=b.useMemo(()=>M.slice(0,2),[M]),I=k!=null&&C!=null&&C.fetchState!=="Completed"&&C.fetchState!=="Error"&&(y||C.fetchState==="In-Progress"),z=b.useMemo(()=>{if(k==null||C?.fetchState==="Error")return F;if(I)return[];const P=(C?.suggestedQuestions??[]).map(J=>J.trim()).filter(J=>J.length>0).slice(0,2);return P.length===0?F:P},[F,I,k,C?.fetchState,C?.suggestedQuestions]),de=b.useCallback((P,J)=>{if(m==null||P.trim()==="")return;const Be=io(_.getState());if(p){const ze=D(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:ze,referrer:a,aiCfoInitialQuestion:P,aiCfoShouldSubmit:!Be}})}else{if(Be)return t(cn(P)),void s(!0);i(P),s(!0),co(t,P,"insights_section",u,c,m,J,void 0)}},[c,u,t,p,o.pathname,o.state,a,n,s,i,_,r,m]),be=b.useCallback(()=>{if(p){const P=D(o.state?.pathnameStackToGoBack,o.pathname);n(`/${r}/ai-cfo/explore`,{state:{message:"",origin:"",pathnameStackToGoBack:P,referrer:a}})}else s(!0)},[p,o.pathname,o.state,a,n,s,r]);return b.useMemo(()=>{if(f)return{isSuggestedQuestionsLoading:I,onAskSomethingElseClick:be,onSuggestedQuestionClick:de,suggestedQuestions:z}},[f,I,be,de,z])}const Pe=uo,Lo=Q(function(e){const a=ln(e),t=dn(e),n=Zt(e),{scrollPosition:o,...r}=n,s=K.getLocalizedStrings().reportTitleById.cash_in_cash_out,i=R.getSignedInUser(),d=e.tenantState.currentTenantId,p=L(e),_=p?.companyName??"",g={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:d??""},u=e.entityAutoCompleteState.autoCompleteText.navbar,c=ae(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:_,statementEndPoint:`${W}/statement`,authParams:g},analytics:E,autoCompleteData:{autoCompleteText:u,entityAutoCompleteView:c}}},function(e,a){return{updateDownloadStateHandler:t=>{e(un(t))},onTimeframeSelectionChanged:()=>{},onCOABalancesRangeChanged:(t,n)=>{e(xe(t,n)),e(_e({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(fe("month")),e(oe(a.firstMonthOfFY,t)),e(_e({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ie(a.firstMonthOfFY,t,o,n)),n.length>0&&e(Te(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.isCompareModeOn!==t&&setTimeout(()=>e(_e({resetLeftScroll:!0})),50)},onElementCollapseStateChanged:(t,n)=>{e(_e({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(_e({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(ne({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(H("navbar"))},onAutoCompleteEntity:t=>{const n=se(t,a.tenantEmailDomain),o=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}})(Pe),jo=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r}=X({mobileExploreReferrer:"DashboardCashInCashOut"}),s=Oe({mobileExploreReferrer:"DashboardCashInCashOut"}),i=S(d=>Zt(d)).mode==="compare_mode";return l.jsx(Lo,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:a,location:t,isCompareModeOn:i,navigate:n,insightsSectionAiCfoInfo:s,isAiCfoAccessEnabled:o,onAskAiCfoClick:r})},Mo=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=Ge(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}},Uo=Q(function(e){const a=mn(e),t=pn(e),n=Ht(e),{scrollPosition:o,...r}=n,s=K.getLocalizedStrings().reportTitleById.cash_position,i=R.getSignedInUser(),d=e.tenantState.currentTenantId,p=L(e),_=p?.companyName??"",g={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:d??""},u=e.entityAutoCompleteState.autoCompleteText.navbar,c=ae(e,"navbar");return{selectedRangeReport:a,reportLabels:{reportTitle:s},highlightedRangeReport:t,uiState:r,scrollPosition:o,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:_,statementEndPoint:`${W}/statement`,authParams:g},analytics:E,autoCompleteData:{autoCompleteText:u,entityAutoCompleteView:c}}},function(e,a){return{updateDownloadStateHandler:t=>{e(hn(t))},onTimeframeSelectionChanged:t=>{e(fe(t)),setTimeout(()=>e(ke({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(xe(t,n)),e(ke({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(oe(a.firstMonthOfFY,t)),e(ke({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ie(a.firstMonthOfFY,t,o,n)),n.length>0&&e(Te(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.isCompareModeOn!==t&&setTimeout(()=>e(ke({resetLeftScroll:!0})),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=Mo(n),s=t.accountName===""?t.accountDescription:t.accountName;if(o!=null&&r!=null){const i=Ce(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),d=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:d,referrer:"Cash Position"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(ne({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(H("navbar"))},onAutoCompleteEntity:t=>{const n=se(t,a.tenantEmailDomain),o=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onTableScroll:t=>{e(ke({scrollPosition:t}))},onBackClick:()=>{a.navigate("../")}}})(Pe),Yo=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e,{isAiCfoAccessEnabled:o,onAskAiCfoClick:r}=X({mobileExploreReferrer:"DashboardCashPosition"}),s=Oe({mobileExploreReferrer:"DashboardCashPosition"}),i=S(d=>Ht(d)).mode==="compare_mode";return l.jsx(Uo,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:a,location:t,isCompareModeOn:i,navigate:n,insightsSectionAiCfoInfo:s,isAiCfoAccessEnabled:o,onAskAiCfoClick:r})},V=(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 Je(){return l.jsxs(st,{children:[l.jsx(w,{path:"/",element:l.jsx(ee,{})}),l.jsx(w,{path:"/:forecastId",element:l.jsx(ee,{})}),l.jsx(w,{path:"/:forecastId/*",element:l.jsx(ve,{})})]})}const Go=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=Ge(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}},Vo=Q(function(e){const a=Qt(e),t=fn(e),n=gn(e),o=Cn(e),r=dt(e),{scrollPosition:s,...i}=r,d=t.reportTitle,p=R.getSignedInUser(),_=e.tenantState.currentTenantId,g=L(e),u=g?.companyName??"",c={userId:p?.userId??"",sessionId:p?.zeniSessionId??"",tenantId:_??""},m=e.entityAutoCompleteState.autoCompleteText.navbar,h=ae(e,"navbar"),f=ut(g);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:d},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${W}/statement`,authParams:c},analytics:E,isZeniUser:Ee(p),autoCompleteData:{autoCompleteText:m,entityAutoCompleteView:h},isZeniCOAUsed:f,isAccountingClassesEnabled:ge(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(kn(t))},onTimeframeSelectionChanged:t=>{e(fe(t)),setTimeout(()=>e(ie({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(xe(t,n)),e(ie({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(oe(a.firstMonthOfFY,t)),e(ie({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ie(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Te(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&V(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout(()=>e(ie({resetLeftScroll:!0})),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=Go(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?_t(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):Ce(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),d=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:d,referrer:"Burn Rate"}})}},onElementCollapseStateChanged:(t,n)=>{e(ie({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(ie({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(ne({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(H("navbar"))},onAutoCompleteEntity:t=>{const n=se(t,a.tenantEmailDomain),o=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.selectedForecastId!=null?a.navigate("../../../"):a.navigate("../")},onForecastToggle:(t,n)=>{e(me(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?pe:kt,n)),t==="forecast_mode"?(e(Ft({viewMode:"account_group"})),e(Wt(!1,n?.id)),n!=null&&V(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):V(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(ie({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Burn Rate"),e(Ft({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(_n({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(bn())},onResyncReports:()=>{e(mt("net_burn_or_income_by_classes"))}}})(Pe),No=e=>{const a=N(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=X({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),d=Oe({mobileExploreReferrer:"DashboardNetBurnOrIncome"}),p=S(C=>dt(C)),_=p.isForecastModeOn,g=p.timeframe,u=p.selectedForecast?.id,c=S(C=>pt(C.forecastState,u??"")),m=S(C=>Qt(C)),h=S(C=>ht(C)),f=S(C=>ge(C)),k=p.mode==="compare_mode",y=m.dataAvailable;return b.useEffect(()=>{if(u!=null&&_===!0&&(V(_,r,u,o),c!=null)){const C=c?.forecastPeriod,A=y!=null&&C.endDate.isAfter(y?.endDate)===!0?y:C;a(oe(e.firstMonthOfFY,{startDate:A.endDate.startOf(g),endDate:A?.endDate}))}},[u]),l.jsx(Vo,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,forecastIdFromUrlPath:r,location:n,isAccountingClassesEnabled:f,isCompareModeOn:k,navigate:o,analytics:E,reportsResyncFetchState:h.reportsResyncFetchState,insightsSectionAiCfoInfo:d,isAiCfoAccessEnabled:s,onAskAiCfoClick:i})},zo=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=Ge(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}},$o=Q(function(e){const a=Xt(e),t=Sn(e),n=yn(e),o=An(e),r=ft(e),{scrollPosition:s,...i}=r,d=K.getLocalizedStrings().reportTitleById.operating_expenses,p=R.getSignedInUser(),_=e.tenantState.currentTenantId,g=L(e),u=g?.companyName??"",c={userId:p?.userId??"",sessionId:p?.zeniSessionId??"",tenantId:_??""},m=e.entityAutoCompleteState.autoCompleteText.navbar,h=ae(e,"navbar"),f=ut(g);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:d},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${W}/statement`,authParams:c},analytics:E,isZeniUser:Ee(p),autoCompleteData:{autoCompleteText:m,entityAutoCompleteView:h},isZeniCOAUsed:f,isAccountingClassesEnabled:ge(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(In(t))},onTimeframeSelectionChanged:t=>{e(fe(t)),setTimeout(()=>e(ce({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(xe(t,n)),e(ce({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(oe(a.firstMonthOfFY,t)),e(ce({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ie(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Te(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&V(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout(()=>e(ce({resetLeftScroll:!0})),50)},onAccountBalanceClick:a.hasTransactionAccess!==!0?void 0:(t,n)=>{const{timePeriod:o,timeframe:r}=zo(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?_t(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):Ce(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),d=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:d,referrer:"Operating Expenses"}})}},onElementCollapseStateChanged:(t,n)=>{e(ce({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(ce({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(ne({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(H("navbar"))},onAutoCompleteEntity:t=>{const n=se(t,a.tenantEmailDomain),o=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.selectedForecastId!=null?a.navigate("../../../"):a.navigate("../")},onForecastToggle:(t,n)=>{e(me(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?pe:kt,n)),t=="forecast_mode"?(e(Ot({viewMode:"account_group"})),e(Jt(!1,n?.id)),n!=null&&V(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):V(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(ce({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Operating Expenses"),e(Ot({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(En({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(vn())},onResyncReports:()=>{e(mt("operating_expenses_by_classes"))}}})(Pe),Ko=e=>{const a=N(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=X({mobileExploreReferrer:"DashboardOpEx"}),d=Oe({mobileExploreReferrer:"DashboardOpEx"}),p=S(T=>ft(T)),_=p.isForecastModeOn,g=p.timeframe,u=p.selectedForecast?.id,c=S(T=>pt(T.forecastState,u??"")),m=S(T=>Xt(T)),h=S(T=>ht(T)),f=S(T=>ge(T)),k=p.mode==="compare_mode",y=m.dataAvailable;b.useEffect(()=>{if(u!=null&&_===!0&&(V(_,r,u,o),c!=null)){const T=c?.forecastPeriod,M=y!=null&&T.endDate.isAfter(y?.endDate)===!0?y:T;a(oe(e.firstMonthOfFY,{startDate:M.endDate.startOf(g),endDate:M?.endDate}))}},[u]);const C=De(),A=C?.loggedInUserRole!=null&&ea(C?.loggedInUserRole)!==!0;return l.jsx($o,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,location:n,isAccountingClassesEnabled:f,isCompareModeOn:k,navigate:o,forecastIdFromUrlPath:r,analytics:E,hasTransactionAccess:A,reportsResyncFetchState:h.reportsResyncFetchState,insightsSectionAiCfoInfo:d,isAiCfoAccessEnabled:s,onAskAiCfoClick:i})},qo=e=>{let a,t;switch(e.balanceTimeFrame){case"month":case"quarter":a=e.balanceTimeFrame,t=Ge(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}},Zo=Q(function(e){const a=ta(e),t=Tn(e),n=xn(e),o=wn(e),r=gt(e),{scrollPosition:s,...i}=r,d=K.getLocalizedStrings().reportTitleById.revenue,p=R.getSignedInUser(),_=e.tenantState.currentTenantId,g=L(e),u=g?.companyName??"",c={userId:p?.userId??"",sessionId:p?.zeniSessionId??"",tenantId:_??""},m=e.entityAutoCompleteState.autoCompleteText.navbar,h=ae(e,"navbar"),f=ut(g);return{selectedRangeReport:a,selectedClassesViewRangeReport:n,reportLabels:{reportTitle:d},highlightedRangeReport:t,highlightedClassesViewRangeReport:o,uiState:i,scrollPosition:s,downloadParams:{downloadState:a.downloadState,currentTenantCompanyName:u,statementEndPoint:`${W}/statement`,authParams:c},analytics:E,isZeniUser:Ee(p),autoCompleteData:{autoCompleteText:m,entityAutoCompleteView:h},isZeniCOAUsed:f,isAccountingClassesEnabled:ge(e)}},function(e,a){return{updateDownloadStateHandler:t=>{e(On(t))},onTimeframeSelectionChanged:t=>{e(fe(t)),setTimeout(()=>e(le({resetLeftScroll:!0})),50)},onCOABalancesRangeChanged:(t,n)=>{e(xe(t,n)),e(le({resetLeftScroll:!0}))},onThisPeriodChanged:t=>{e(oe(a.firstMonthOfFY,t)),e(le({resetLeftScroll:!0}))},onAdditionalBalanceSelectionChanged:(t,n,o)=>{e(Ie(a.firstMonthOfFY,t,o,n)),n.length>0&&(e(Te(a.firstMonthOfFY,n.includes("this_period_vs_last_period")?"compare_mode_amount":"compare_mode_percent",o,n)),a.forecastIdFromUrlPath!=null&&t==1&&V(!1,a.forecastIdFromUrlPath,"",a.navigate)),a.isCompareModeOn!==t&&setTimeout(()=>e(le({resetLeftScroll:!0})),50)},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=qo(n);if(o!=null&&r!=null){const s=t.accountName===""?t.accountDescription:t.accountName,i=t.classesViewParentId!=null&&t.classesViewParentId.parentClassId!=null?_t(a.tenantEmailDomain,t.accountId,t.accountType,t.classesViewParentId.parentClassId?.[0],s,r,o):Ce(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),d=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:d,referrer:"Revenues"}})}},onElementCollapseStateChanged:(t,n)=>{e(le({nodeCollapseState:{nodeId:t,isCollapsed:n}}))},onTableScroll:t=>{e(le({scrollPosition:t}))},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(ne({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(H("navbar"))},onAutoCompleteEntity:t=>{const n=se(t,a.tenantEmailDomain),o=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.selectedForecastId!=null?a.navigate("../../../"):a.navigate("../")},onForecastToggle:(t,n)=>{e(me(a.firstMonthOfFY,t==="forecast_mode",t==="forecast_mode"?pe:kt,n)),t==="forecast_mode"?(e(Pt({viewMode:"account_group"})),e(aa(!1,n?.id)),n!=null&&V(!0,a.forecastIdFromUrlPath,n?.id??"",a.navigate)):V(!1,a.forecastIdFromUrlPath,n?.id??"",a.navigate),e(le({resetLeftScroll:!0}))},onUpdateAccountViewMode:t=>{a.analytics?.trackGroupBySwitch(t==="classes"?"Classes":"Accounts","Revenues"),e(Pt({viewMode:t}))},onUpdateClassesToFilterOut:t=>{e(Fn({classesToFilterOut:t}))},onOpenAccountViewMode:()=>{a.isAccountingClassesEnabled&&e(Dn())},onResyncReports:()=>{e(mt("revenue_by_classes"))}}})(Pe),Ho=e=>{const a=N(),{tenantEmailDomain:t,location:n,navigate:o,forecastIdFromUrlPath:r}=e,{isAiCfoAccessEnabled:s,onAskAiCfoClick:i}=X({mobileExploreReferrer:"DashboardRevenue"}),d=Oe({mobileExploreReferrer:"DashboardRevenue"}),p=S(y=>gt(y)),_=p.isForecastModeOn,g=p.timeframe,u=p.selectedForecast?.id,c=S(y=>pt(y.forecastState,u??"")),m=S(y=>ta(y)).dataAvailable,h=p.mode==="compare_mode",f=S(y=>ge(y)),k=S(y=>ht(y));return b.useEffect(()=>{if(u!=null&&_===!0&&(V(_,r,u,o),c!=null)){const y=c?.forecastPeriod,C=m!=null&&y.endDate.isAfter(m?.endDate)===!0?m:y;a(oe(e.firstMonthOfFY,{startDate:C.endDate.startOf(g),endDate:C?.endDate}))}},[u]),l.jsx(Zo,{firstMonthOfFY:e.firstMonthOfFY,tenantEmailDomain:t,selectedForecastId:r,isAccountingClassesEnabled:f,isCompareModeOn:h,location:n,navigate:o,forecastIdFromUrlPath:r,analytics:E,reportsResyncFetchState:k.reportsResyncFetchState,insightsSectionAiCfoInfo:d,isAiCfoAccessEnabled:s,onAskAiCfoClick:i})},Qo=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}},Wo=Q(function(e){const a=Pn(e),t=e.entityAutoCompleteState.autoCompleteText.navbar,n=ae(e,"navbar");return{report:a,analytics:E,autoCompleteData:{autoCompleteText:t,entityAutoCompleteView:n}}},function(e,a){return{onTimeframeSelectionChanged:t=>{E.trackTimeframeSwitch(Ca(t),"Top Expenses"),e(na(t))},onAccountBalanceClick:(t,n)=>{const{timePeriod:o,timeframe:r}=Qo(n),s=t.accountName===""?t.accountDescription:t.accountName;if(o!=null&&r!=null){const i=Ce(a.tenantEmailDomain,t.accountId,t.accountType,s,r,o),d=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(i,{state:{pathnameStackToGoBack:d,referrer:"Top Expenses"}})}},autoCompleteActions:{onAutoCompleteInputChange:t=>{t.trim().length>=2?e(ne({searchString:t,searchOrigin:"navbar"})):t.trim().length===0&&e(H("navbar"))},onAutoCompleteEntity:t=>{const n=se(t,a.tenantEmailDomain),o=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(n,{state:{pathnameStackToGoBack:o}})}},onBackClick:()=>{a.navigate("../")}}})(mo),Xo=e=>{const{tenantEmailDomain:a,location:t,navigate:n}=e;return l.jsx(Wo,{tenantEmailDomain:a,location:t,navigate:n})},Jo=bt.div`
|
|
14
|
+
display: flex;
|
|
15
|
+
flex: 1 1 auto;
|
|
16
|
+
min-height: 100%;
|
|
17
|
+
flex-direction: column;
|
|
18
|
+
background-color: ${e=>e.theme.colors.grey5};
|
|
19
|
+
align-items: center;
|
|
20
|
+
`,pe=3,kt=1;function es({fetchState:e,firstMonthOfFY:a,reportId:t,forecastId:n}){const o=Z(),r=q(),{tenantEmailDomain:s}=$();let i;Fe({isDataReady:!0});const d={firstMonthOfFY:a,tenantEmailDomain:s,location:r,navigate:o,forecastIdFromUrlPath:n,fetchState:e};switch(t){case"operating_expenses":i=l.jsx(Ko,{...d});break;case"revenue":i=l.jsx(Ho,{...d});break;case"net_burn_or_income":i=l.jsx(No,{...d});break;case"cash_position":i=l.jsx(Yo,{...d});break;case"top_expenses":i=l.jsx(Xo,{...d});break;case"cash_in_cash_out":i=l.jsx(jo,{...d});break;default:console.error(`${t} is not supported!`),i=null}return i!=null?l.jsx(Jo,{children:i}):null}function ee(){const e=q(),a=N(),{forecastId:t}=$();let n="Not-Started";const o=S(c=>ft(c).fetchState),r=S(c=>gt(c).fetchState),s=S(c=>dt(c).fetchState),i=S(c=>c.cashPositionState.fetchState),d=S(c=>c.topExState.fetchState),p=S(c=>c.cashInCashOutState.fetchState);if(R.getSignedInUser()==null)throw Error("Can't access dashboard detail without signing in...");const _=S(c=>L(c)),g=_?.company?.companyInfo?.firstMonthOfFY??1,u=Nt((c=>{const m=zt(c,"/").split("/");return t!=null?m[m.length-3]:m[m.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=d;break;case"cash_in_cash_out":n=p;break;default:console.error(`${u} is not supported!`)}return b.useEffect(()=>{n==="Not-Started"&&function(c,m,h,f){switch(m){case"operating_expenses":c(la(!0)),f!=null&&(c(me(h,!0,pe,{id:f,index:0})),c(Jt(!1,f)));break;case"revenue":c(ca(!0)),f!=null&&(c(me(h,!0,pe,{id:f,index:0})),c(aa(!1,f)));break;case"net_burn_or_income":c(ia(!0)),f!=null&&(c(me(h,!0,pe,{id:f,index:0})),c(Wt(!1,f)));break;case"cash_position":c(ra(!0));break;case"top_expenses":c(sa());break;case"cash_in_cash_out":c(oa());break;default:throw new Error(`report type ${m} is not yet supported`)}}(a,u,g,t)},[t]),l.jsxs(l.Fragment,{children:[n==="Completed"?l.jsx(we,{analytics:E,onLoad:c=>((m,h)=>{const f=e.state?.referrer;switch(h){case"operating_expenses":m.trackPageLoaded(G.Event.operatingExpenses,f);break;case"revenue":m.trackPageLoaded(G.Event.revenues,f);break;case"net_burn_or_income":m.trackPageLoaded(G.Event.burnRate,f);break;case"cash_position":m.trackPageLoaded(G.Event.cashPosition,f);break;case"top_expenses":m.trackPageLoaded(G.Event.topExpenses,f);break;case"cash_in_cash_out":m.trackPageLoaded(G.Event.cashInCashOut,f);break;default:console.error(`Analytics: Not tracking Page Loaded for ${h}!`)}})(c,u)}):null,l.jsx(es,{firstMonthOfFY:g,fetchState:n,reportId:u,forecastId:t})]})}var et=typeof navigator<"u"&&navigator.userAgent.toLowerCase().indexOf("firefox")>0;function tt(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 Sa(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 St={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,"-":et?173:189,"=":et?61:187,";":et?59:186,"'":222,"[":219,"]":221,"\\":220},te={"⇧":16,shift:16,"⌥":18,alt:18,option:18,"⌃":17,ctrl:17,control:17,"⌘":91,cmd:91,command:91},ct={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey",shiftKey:16,ctrlKey:17,altKey:18,metaKey:91},B={16:!1,18:!1,17:!1,91:!1},O={},Ue=1;Ue<20;Ue++)St["f".concat(Ue)]=111+Ue;var x=[],Lt=!1,ya="all",jt=[],Ne=function(e){return St[e.toLowerCase()]||te[e.toLowerCase()]||e.toUpperCase().charCodeAt(0)};function Mt(e){ya=e||"all"}function Ae(){return ya||"all"}var at=function(e){var a=e.key,t=e.scope,n=e.method,o=e.splitKey,r=o===void 0?"+":o;Sa(a).forEach(function(s){var i=s.split(r),d=i.length,p=i[d-1],_=p==="*"?"*":Ne(p);if(O[_]){t||(t=Ae());var g=d>1?ka(te,i):[];O[_]=O[_].filter(function(u){return!((!n||u.method===n)&&u.scope===t&&function(c,m){for(var h=c.length>=m.length?c:m,f=c.length>=m.length?m:c,k=!0,y=0;y<h.length;y++)f.indexOf(h[y])===-1&&(k=!1);return k}(u.mods,g))})}})};function Ut(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,B)Object.prototype.hasOwnProperty.call(B,r)&&(!B[r]&&a.mods.indexOf(+r)>-1||B[r]&&a.mods.indexOf(+r)===-1)&&(o=!1);(a.mods.length!==0||B[16]||B[18]||B[17]||B[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 Yt(e,a){var t=O["*"],n=e.keyCode||e.which||e.charCode;if(U.filter.call(this,e)){if(n!==93&&n!==224||(n=91),x.indexOf(n)===-1&&n!==229&&x.push(n),["ctrlKey","altKey","shiftKey","metaKey"].forEach(function(m){var h=ct[m];e[m]&&x.indexOf(h)===-1?x.push(h):!e[m]&&x.indexOf(h)>-1?x.splice(x.indexOf(h),1):m==="metaKey"&&e[m]&&x.length===3&&(e.ctrlKey||e.shiftKey||e.altKey||(x=x.slice(x.indexOf(h))))}),n in B){for(var o in B[n]=!0,te)te[o]===n&&(U[o]=!0);if(!t)return}for(var r in B)Object.prototype.hasOwnProperty.call(B,r)&&(B[r]=e[ct[r]]);e.getModifierState&&(!e.altKey||e.ctrlKey)&&e.getModifierState("AltGraph")&&(x.indexOf(17)===-1&&x.push(17),x.indexOf(18)===-1&&x.push(18),B[17]=!0,B[18]=!0);var s=Ae();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)&&Ut(e,t[i],s,a);if(n in O){for(var d=0;d<O[n].length;d++)if((e.type==="keydown"&&O[n][d].keydown||e.type==="keyup"&&O[n][d].keyup)&&O[n][d].key){for(var p=O[n][d],_=p.splitKey,g=p.key.split(_),u=[],c=0;c<g.length;c++)u.push(Ne(g[c]));u.sort().join("")===x.sort().join("")&&Ut(e,p,s,a)}}}}function U(e,a,t){x=[];var n=Sa(e),o=[],r="all",s=document,i=0,d=!1,p=!0,_="+",g=!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&&(d=a.keyup),a.keydown!==void 0&&(p=a.keydown),a.capture!==void 0&&(g=a.capture),typeof a.splitKey=="string"&&(_=a.splitKey)),typeof a=="string"&&(r=a);i<n.length;i++)o=[],(e=n[i].split(_)).length>1&&(o=ka(te,e)),(e=(e=e[e.length-1])==="*"?"*":Ne(e))in O||(O[e]=[]),O[e].push({keyup:d,keydown:p,scope:r,mods:o,shortcut:n[i],method:t,key:n[i],splitKey:_,element:s});s!==void 0&&!function(u){return jt.indexOf(u)>-1}(s)&&window&&(jt.push(s),tt(s,"keydown",function(u){Yt(u,s)},g),Lt||(Lt=!0,tt(window,"focus",function(){x=[]},g)),tt(s,"keyup",function(u){Yt(u,s),function(c){var m=c.keyCode||c.which||c.charCode,h=x.indexOf(m);if(h>=0&&x.splice(h,1),c.key&&c.key.toLowerCase()==="meta"&&x.splice(0,x.length),m!==93&&m!==224||(m=91),m in B)for(var f in B[m]=!1,te)te[f]===m&&(U[f]=!1)}(u)},g))}var nt={setScope:Mt,getScope:Ae,deleteScope:function(e,a){var t,n;for(var o in e||(e=Ae()),O)if(Object.prototype.hasOwnProperty.call(O,o))for(t=O[o],n=0;n<t.length;)t[n].scope===e?t.splice(n,1):n++;Ae()===e&&Mt(a||"all")},getPressedKeyCodes:function(){return x.slice(0)},isPressed:function(e){return typeof e=="string"&&(e=Ne(e)),x.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(O).forEach(function(t){var n=O[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(O).forEach(function(s){return delete O[s]});else if(Array.isArray(e))e.forEach(function(s){s.key&&at(s)});else if(typeof e=="object")e.key&&at(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=""),at({key:e,scope:o,method:r,splitKey:"+"})}},keyMap:St,modifier:te,modifierMap:ct};for(var ot in nt)Object.prototype.hasOwnProperty.call(nt,ot)&&(U[ot]=nt[ot]);if(typeof window<"u"){var ts=window.hotkeys;U.noConflict=function(e){return e&&window.hotkeys===U&&(window.hotkeys=ts),U},window.hotkeys=U}U.filter=function(){return!0};var Gt=function(e,a){var t=e.target,n=t&&t.tagName;return!!(n&&a&&a.includes(n))};function as(e,a,t,n){t instanceof Array&&(n=t,t=void 0);var o=t||{},r=o.enableOnTags,s=o.filter,i=o.keyup,d=o.keydown,p=o.filterPreventDefault,_=p===void 0||p,g=o.enabled,u=g===void 0||g,c=o.enableOnContentEditable,m=c!==void 0&&c,h=b.useRef(null),f=b.useCallback(function(k,y){var C,A;return s&&!s(k)?!_:!!(Gt(k,["INPUT","TEXTAREA","SELECT"])&&!Gt(k,r)||(C=k.target)!=null&&C.isContentEditable&&!m)||!!(h.current===null||document.activeElement===h.current||(A=h.current)!=null&&A.contains(document.activeElement))&&(a(k,y),!0)},n?[h,r,s].concat(n):[h,r,s]);return b.useEffect(function(){if(u)return i&&d!==!0&&(t.keydown=!1),U(e,t||{},f),function(){return U.unbind(e,f)};U.unbind(e,f)},[f,e,u]),h}U.isPressed;const ns=["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"],os=(e,a,t,n,o)=>({card:{dimension:Ct(t),cardType:n,cardIndex:o,fetchState:a,disableAnimations:!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}),Se=(e,a,t,n,o)=>({card:{dimension:Ct(t),cardType:n,cardIndex:o,fetchState:a,disableAnimations:!1},data:e}),ss=(e,a,t,n)=>Se(void 0,e,ye,a,t),rs=(e,a,t,n,o)=>({card:{dimension:Ct(ye),cardType:a,cardIndex:t,fetchState:e,disableAnimations:!1},data:{funds:n,hasUserSeenVideo:o,videoUrl:"https://www.youtube.com/watch?v=sqvJWKCMZgk"}}),is=Q(function(e,a){const t=ds(a.dashboardReport),n=a.passedCardsOrdered,o=a.dashboardReport.reportsInOrder,{isInterestedInChargeCard:r,cardsCreditLimit:s,cashbackRate:i,treasuryFundDetails:d,hasUserSeenTreasuryVideo:p,treasuryFetchState:_}=a;let g=n.map((u,c)=>{if(u==="reimbursement_promo_card"||u==="bill_pay_promo_card")return ss(t,u,c);if(u==="zeni_promo_card")return Se({isExpressedInterest:r,creditLimit:s,cashbackRate:i,fetchState:"Completed"},a.cardBalanceFetchState,ye,u,c);if(u==="treasury_promo_card")return rs(_,u,c,d,p);if(u==="information_card")return Se(void 0,"Completed",ye,u,c);{const m=o.find(h=>h?.reportId===u);return m?function(h,f,k,y){const C=h.reportId;switch(C){case"card_balance":case"cash_balance":return[os(h,f,k,C,y)];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[Se(h,f,k,C,y)];case"net_burn_or_income_story_card":return[Se(h,f,k,"net_burn_or_income_story_card",y)];default:return console.error(`card type ${C} not yet supported!`),[]}}(m,m.fetchState,ye,c):[]}}).flat();return a.isSummaryCardsFiltered===!0&&(g=g.filter(u=>ns.includes(u.card.cardType)==0).filter(u=>{const c=u.data?.availableNumberOfPeriods;return c!=null?c>0:u.card.cardType!="top_expenses"||u.data==null||function(m){if(m==null||m.length===0)return!0;let h=!0;for(const f of m)if(f.balance.available.amount!==0){h=!1;break}return h}(u.data.topExpenses.accountsOrdered)===!1})),{cardDataArray:g,autoCompleteData:{autoCompleteText:e.entityAutoCompleteState.autoCompleteText.navbar,entityAutoCompleteView:ae(e,"navbar")},analytics:E,isReimbursementEnabled:a.isReimbursementEnabled,isBillPayEnabled:a.isBillPayEnabled}},function(e,a){const t=a.tenantId,n=R.getSignedInUser();return{cardActions:{onCardClick:(o,r,s,i)=>{if(console.warn(`onCardClick at ${o} for the type ${r}`),r==="zeni_promo_card"&&i!=null)E.trackDashboardCardClicked("cards promo",2),E.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&&E.trackDashboardCardClicked("rewards promo",o+1),a.navigate("../../rewards/refer",{state:{referrer:s}})):r==="expense_automation_card"?(E.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,d,p,_){switch(d){case"card_balance":i(qt());break;case"cash_balance":i($t());break;case"operating_expenses":i(la(!0));break;case"revenue":i(ca(!0));break;case"net_burn_or_income":i(ia(!0));break;case"net_burn_or_income_story_card":i(Wn(!0));break;case"cash_position":i(ra(!0));break;case"top_expenses":i(sa());break;case"cash_in_cash_out":i(oa());break;case"insights_dashboard":i(Qn());break;case"bill_pay_card":i(Hn());break;case"reimbursement_card":i(Zn());break;case"company_details":i(qn(p));break;case"task_card":i(Kn());break;case"accounts_payable_aging":_.includes("accounts_payable_aging")===!1&&i(rt(he()));break;case"accounts_receivable_aging":i(it(he()));break;case"zeni_accounts_promo_card":_.includes("zeni_accounts_promo_card")===!1&&i(Kt());break;case"rewards_card":_.includes("rewards_card")===!1&&i($n(!0));break;default:throw new Error(`report type ${d} is not yet supported`)}}(e,r,a.companyId,s)},onTimeframeChange:(o,r)=>{E.trackTimeframeSwitch(Ca(r),ls(o),"Dashboard"),function(s,i,d){switch(i){case"operating_expenses":case"revenue":case"net_burn_or_income":case"cash_position":s(fe(d));break;case"top_expenses":s(na(d));break;default:throw new Error(`report type ${i} doesn't support changeTimeframe`)}}(e,o,r)},onUpdateSelectedInsightIndex:o=>{e(zn(o))},onCategoryClick:(o,r,s)=>{o==="bill-pay"?a.navigate("../bills",{state:{tab:r,subTab:s},relative:"path"}):o==="reimbursement"?a.navigate("../reimbursements",{state:{tab:r,subTab:s},relative:"path"}):o==="uncategorized-account-mapping"?a.navigate("../settings/accounting",{relative:"path"}):o==="show-all-tasks"?a.navigate("../tasks",{relative:"path"}):a.navigate(`../../transactions/${o}`)},onCardBtnClick:(o,r)=>{if(o==="bill_pay_promo_card"){const s="../bills",i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i},relative:"path"})}else if(o==="reimbursement_promo_card"){const s="../reimbursements",i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i},relative:"path"})}else if(o==="zeni_accounts_promo_card")if(a.hasZeniAccountsAdminAccess){let s="../checking/promo";r!=null&&(s=`../checking/${r}`);const i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i},relative:"path"})}else window.open("https://www.zeni.ai/product/business-checking-accounts","_blank");else if(o==="treasury_promo_card")if(a.isUserHasTreasuryAccess){R.saveTreasuryPopupSeen(a.tenantEmailDomain,!0);const s="../treasury",i=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(s,{state:{pathnameStackToGoBack:i},relative:"path"})}else window.open("https://www.zeni.ai/product/treasury","_blank")},onSaveClick:(o,r,s)=>{o==="net_burn_or_income_story_card"&&(E.trackUpdateBurnRateCalculatorSettings(r,s,Vn(s)),e(Nn(t,r,s)))},onVideoPlay:()=>{e(Bt())},onVideoClose:()=>{e(Bt()),e(Gn())}},autoCompleteActions:{onAutoCompleteInputChange:o=>{o.trim().length>=2?e(ne({searchString:o,searchOrigin:"navbar"})):o.trim().length===0&&e(H("navbar"))},onCancelAutoComplete:()=>{e(H("navbar"))},onAutoCompleteEntity:o=>{let r="";r=o.type!=="vendor"||o.detailType!=="bank_merchant"&&o.detailType!=="card_merchant"?se(o,a.tenantEmailDomain):Co(o.zeniId,o.qboId,a.tenantEmailDomain);const s=D(a.location.state?.pathnameStackToGoBack,a.location.pathname);a.navigate(r,{state:{pathnameStackToGoBack:s,referrer:"Search"}})}}}})(go);function cs(){const{isAiCfoOpen:e,setIsAiCfoOpen:a}=ma(),t=Z(),n=N(),o=q(),r=R.getSignedInUser(),{useFeatureGate:s,useDynamicConfig:i}=Ve(),d=Ee(r),[p,_]=b.useState(!1),[g,u]=b.useState(!1),c=pa(),{tenantEmailDomain:m}=$(),{isAiCfoAccessEnabled:h,onAskAiCfoClick:f}=X({mobileExploreReferrer:"Dashboard"}),k=S(v=>v.tenantState.fetchState==="Completed"||v.tenantState.activeTenantFetchState.fetchState==="Completed"?L(v):void 0),y=k??R.getSignedInUserTenant(m),C=y.tenantId,A=y.companyId;b.useEffect(()=>{p===!1&&o.state?.message==="activation"&&(n(Bn(A)),_(!0))},[o.state,p,A,n]),b.useEffect(()=>{c&&!g&&o.state?.message==="open_ai_cfo_drawer"&&(a(!0),u(!0),t(o.pathname,{replace:!0,state:{...o.state,message:void 0}}))},[o.state,g,c,a,t,o.pathname]);const{isFeatureEnabled:T}=s(j.isApAgingFeatureEnabled),{isFeatureEnabled:M}=s(j.isExpenseAutomationEnabled),{isFeatureEnabled:F}=s(j.isExpenseAutomationEnabledV2),I=F||M&&d,{isFeatureEnabled:z}=s(j.isTreasuryEnabled),de=po(I),{isFeatureEnabled:be}=s(j.isArAgingFeatureEnabled),{isFeatureEnabled:P}=s(j.isDepositAccountsFeatureEnabled),{isFeatureEnabled:J}=s(j.isReferralFeatureEnabled),{isFeatureEnabled:Be}=s(j.isChargeCardFeatureEnabled),{isFeatureEnabled:ze}=s(j.isDashboardSidebarChristmasAnimationEnabled),{isFeatureEnabled:Aa}=s(j.isDashboardSidebarNewYearAnimationEnabled),{configValue:yt}=i(ha.zeniCardsConfig),va=yt.charge_card_cashback_rate_per_transaction==null?.0175:yt.charge_card_cashback_rate_per_transaction;if(o.state?.message==="activation"){const v=ho(o.state?.pathnameStackToGoBack);t(o.pathname,{state:{...o.state,message:void 0,pathnameStackToGoBack:v.newStack}})}const[At,Ea]=b.useState(!1),[$e,Ia]=b.useState(!1);as("command+p, Control+p",v=>{Ia(!$e),v.preventDefault()},{enableOnContentEditable:!0,enableOnTags:["INPUT","SELECT","TEXTAREA"]},[$e]);const vt=k?.externalConnections?.accounting[0]?.isValid;if(r==null)throw Error("Can't access dashboard without signing in...");const re=S(v=>L(v)?.excludedResources),Ta=S(v=>v.expenseAutomationViewState.selectedPeriodByTenantId),xa=!!k?.companyReimbursementInfo?.info?.isReimbursementEnabled,wa=!!k?.companyBillPayInfo?.info?.isBillPayEnabled,Da=S(v=>v.treasurySetupViewState.treasuryFundsDetails).fetchStatus.fetchState,Fa=k?.company!=null&&Rn(k.company),Ke=z&&Fa,qe=De(),Oa=lt(qe?.loggedInUserRoleMap),Y=[],Et=re?.resources?.find(v=>v.resource==="/reports/top_expenses")==null,Pa=re?.resources?.find(v=>v.resource==="/reports/task_card")==null,Ze=k?.userRole!=null&&ea(k?.userRole),Ba=re?.resources?.find(v=>v.resource==="/bills")==null&&!Ze,Ra=re?.resources?.find(v=>v.resource==="/reimbursements")==null,La=Ln(qe?.loggedInUserRoleMap),ja=jn(qe?.loggedInUserRoleMap),Ma=k?.company?.companyChargeCardInfo?.chargeCardsCreditAccountLimit??0,Ua=k?.companyChargeCardInfo?.info?.isCompanyInterestedInChargeCard??!1,Ya=S(v=>v.treasurySetupViewState.treasuryFundsDetails).fundsDetails;Et===!1&&Y.push("top_expenses"),Pa===!1&&Y.push("task_card"),Ba===!1&&Y.push("bill_pay_card","bill_pay_promo_card"),T===!1&&Y.push("accounts_payable_aging"),be===!1&&Y.push("accounts_receivable_aging"),(I===!1||Ze)&&Y.push("expense_automation_card"),Ra===!1&&Y.push("reimbursement_card","reimbursement_promo_card"),P===!1&&Y.push("zeni_accounts_promo_card"),J===!1&&Y.push("rewards_card"),Ke===!1&&Y.push("treasury_promo_card");const{areTenantIdsInSync:It}=fo();b.useLayoutEffect(()=>{At&&de===I||vt!==!0||!It||re?.fetchState!=="Completed"&&re?.fetchState!=="Error"||(Ea(!0),n(Mn(r.userId,A,C,!0,!1,Y)))},[At,r,C,n,Et,vt,re?.fetchState,It]);const Ga=S(v=>v.reportUIOptionsState.forecastOnDashboard.isForecastModeOn),Va=S(v=>v.revenueState.uiState.selectedForecast?.id),Na=S(v=>v.cardBalanceState.fetchState),ue=S(v=>Un(v,Y,r,F,M,Ke)),za=ue.fetchState;Fe({isDataReady:!0});const Tt=k?.isTreasuryVideoViewed===!0||ue.isTreasuryVideoClosed===!0;return l.jsxs(l.Fragment,{children:[za==="Completed"?l.jsx(we,{analytics:E,onLoad:v=>{v.trackPageLoaded(G.Event.dashboard),Ke&&!Tt&&v.trackTreasuryPromoView("Dashboard Promo Video")}}):null,l.jsx(is,{maxColumns:e?2:void 0,isAiCfoAccessEnabled:h,onAskAiCfoClick:f,onDragAndDropCard:(v,$a)=>{const xt=function(Re,He,Le){const Qe=Le.indexOf(Re),We=Le.indexOf(He);if(Qe===-1||We===-1||Qe===We)return Le;const Xe=[...Le];return Xe.splice(Qe,1),Xe.splice(We,0,Re),Xe}(v,$a,ue.cardsOrdered);xt.some((Re,He)=>Re!==ue.cardsOrdered[He])&&n(Yn(xt))},dashboardReport:ue,passedCardsOrdered:ue.cardsForDashboardUI,tenantId:C,companyId:A,tenantEmailDomain:m,location:o,navigate:t,isApAgingFeatureEnabled:T,isArAgingFeatureEnabled:be,isBillPayEnabled:wa,isReimbursementEnabled:xa,isSummaryCardsFiltered:$e,isForecastOn:Ga,selectedForecastOnDashboard:Va,isVisitingFirstTime:p,isZeniAccountEnabled:P,isRewardsFeatureEnabled:J,hasZeniAccountsAdminAccess:Oa,isExpenseAutomationEnabledForUser:I&&Ze===!1,selectedPeriod:Ta[C],isChargeCardFeatureEnabled:Be,isUserHasCardsAccess:La,isUserHasTreasuryAccess:ja,cardsCreditLimit:Ma,cashbackRate:va,isInterestedInChargeCard:Ua,cardBalanceFetchState:Na,christmasAnimationEnabled:ze,newYearAnimationEnabled:Aa,treasuryFundDetails:Ya,hasUserSeenTreasuryVideo:Tt,treasuryFetchState:Da})]})}const ls=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"},ds=e=>e.fetchState!=="Error"?e.fetchState:e.reportsInOrder.map(a=>a.fetchState).reduce((a,t)=>a==="In-Progress"||a==="Not-Started"?a:t);function Ms(){const e=De(),a=e?.excludedResources?.find(p=>p.resource==="/reports/top_expenses")==null,{useFeatureGate:t}=Ve(),{isFeatureEnabled:n}=t(j.isApAgingFeatureEnabled),{isFeatureEnabled:o}=t(j.isArAgingFeatureEnabled),r=S(p=>L(p)),{isFeatureEnabled:s}=t(j.isDebitCardFeatureEnabled),i=Xn(s,r),d=Jn(r);return i===!0||d===!0?l.jsx(st,{children:l.jsx(w,{path:"/*",element:l.jsx(So,{})})}):l.jsxs(st,{children:[l.jsx(w,{path:"/",element:l.jsx(cs,{})}),l.jsx(w,{path:"cash_balance/*",element:l.jsx(Rt,{})}),l.jsx(w,{path:"card_balance/*",element:l.jsx(Rt,{})}),l.jsx(w,{path:"operating_expenses/*",element:l.jsx(ee,{})}),l.jsx(w,{path:"operating_expenses/forecast/*",element:l.jsx(Je,{})}),l.jsx(w,{path:"revenue/forecast/*",element:l.jsx(Je,{})}),l.jsx(w,{path:"revenue/*",element:l.jsx(ee,{})}),l.jsx(w,{path:"net_burn_or_income/forecast/*",element:l.jsx(Je,{})}),l.jsx(w,{path:"net_burn_or_income/*",element:l.jsx(ee,{})}),n===!0&&l.jsxs(l.Fragment,{children:[l.jsx(w,{path:"accounts_payable_aging/*",element:l.jsx(vo,{})}),l.jsx(w,{path:"accounts_payable_aging/:vendorId/:reportDate/*",element:l.jsx(Ao,{})})]}),o&&l.jsxs(l.Fragment,{children:[l.jsx(w,{path:"accounts_receivable_aging/:customerId/:reportDate/*",element:l.jsx(Eo,{})}),l.jsx(w,{path:"accounts_receivable_aging/*",element:l.jsx(Io,{})})]}),l.jsx(w,{path:"cash_position/*",element:l.jsx(ee,{})}),l.jsx(w,{path:"top_expenses/*",element:a===!0?l.jsx(ee,{}):l.jsx(ve,{})}),l.jsx(w,{path:"cash_in_cash_out/*",element:l.jsx(ee,{})}),l.jsx(w,{path:"company_details",element:l.jsx(ko,{})}),l.jsx(w,{path:"referrals/*",element:l.jsx(yo,{})}),l.jsx(w,{path:"*",element:l.jsx(ve,{})})]})}export{Ms as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as v}from"./liveblocks-
|
|
1
|
+
import{j as v}from"./liveblocks-C0YDUK6I.js";import{a as u}from"./sentry-D_iKj4jN.js";import{h as y,g as p,k as w,u as A,N as k}from"./core-DoFWsAh3.js";import{IQ as N,eQ as _,fl as R,IR as U,mx as L,IS as z}from"./zeni-epic-state-DxMSPxpM.js";import{u as O,z as f,L as T,t as I,D as $,b as j}from"./index-B_zQQVmD.js";import"./mui-D7NGykaU.js";import{t as Q}from"./getLocaleForTenant-B77lQ07b.js";import"./recharts-Cuk30a9F.js";import"./analytics-B2BEDPCs.js";import"./plaid-BJpo1TK4.js";import"./dnd-BcveyY8t.js";import"./stripe-DMRn4zHo.js";import"./lottie-GT0I8BXz.js";import"./lexical-Bn41B4hZ.js";import"./pdf-BkkC7i8o.js";import"./utils-C2wS7D4E.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]="cfe0b159-02e1-4a39-bea7-ba47bb43fa75",t._sentryDebugIdIdentifier="sentry-dbid-cfe0b159-02e1-4a39-bea7-ba47bb43fa75")}catch{}})();const P=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(),b=new URLSearchParams(r.search);if(o==null||t!=="Completed"&&s!=="Completed")return null;{let m="";const n=h.map(l=>l.tenantEmailDomain),i=r.state?.origin,a=r.state?.queryParams;let c=`../${o.tenantEmailDomain}`,d=null,e=!1,g=null,S=null;const C=E(r.pathname);if(C!=null)c=`../${o.tenantEmailDomain}/${C}`,m="comingFromV2UrlPath",C==="ai-cfo/explore"&&(d=b.get("question")?.replace(/^["']|["']$/g,"")??null,e=b.get("should_submit")==="true");else if(i!=null)if(n.reduce((l,F)=>l||i.split("/").find(D=>D===F)!=null,!1))c=i,i.includes("ai-cfo")&&a!=null&&(g=a.aiCfoRef??null,S=a.aiCfoEmailRefId??null);else{const l=E(i);l!=null?(c=`../${o.tenantEmailDomain}/${l}`,m="comingFromV2UrlPath",l==="ai-cfo/explore"&&a!=null&&(a.aiCfoQuestion!=null&&(d=a.aiCfoQuestion),a.aiCfoShouldSubmit==="true"&&(e=!0))):console.warn("Don't have access to previous path tenant!")}const x=j(c,b);return v.jsx(k,{to:x,replace:!0,state:{...r.state,origin:"",message:m,aiCfoInitialQuestion:d,aiCfoShouldSubmit:e,aiCfoRef:g,aiCfoEmailRefId:S}})}});function oe(){const t=y(),{setLoading:s,clearAllLoading:o}=O(),h=u.useRef(!1),r=u.useRef(!1),b=u.useRef(null),m=p(e=>N(e)),n=p(e=>e.tenantState.fetchState),i=p(e=>e.tenantState.error),a=p(e=>e.tenantState.activeTenantFetchState.fetchState),c=p(e=>_(e)),d=f.getSignedInUser();return u.useLayoutEffect(()=>{const e=f.getActiveTenantForUser()?.tenantId??null;b.current!==e&&(b.current=e,h.current=!1,r.current=!1,s(T.TENANT_FETCHING)),!h.current||a!=="Completed"&&a!=="Error"||(h.current=!1),!r.current||n!=="Completed"&&n!=="Error"||(r.current=!1)},[a,n]),u.useEffect(()=>{const e=f.getActiveTenantForUser()?.tenantId;h.current===!1&&d!=null&&e!=null&&I.shouldFetchActiveTenant(e)&&(h.current=!0,I.markActiveTenantFetchStarted(e),n==="Completed"||a!=="Not-Started"&&a!=="Error"||(s(T.TENANT_FETCHING),t(R(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"&&!U(i))&&t(L(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||($.updateAppLocaleID(Q(c)),o())},[n,a,c]),v.jsx(P,{})}const q=["dashboard/cash-balance","dashboard/card-balance","dashboard/operating-expenses","dashboard/revenue","dashboard/burn-rate","dashboard/cash-position","dashboard/top-expenses","dashboard/cash-in-cash-out","dashboard","reports","forecast","uncategorized-expense","uncategorized-income","missing-receipts","bills","cards/activate","cards","reimbursements","wise","checking","aicfo"],G={"dashboard/cash-balance":"dashboard/cash_balance","dashboard/card-balance":"dashboard/card_balance","dashboard/operating-expenses":"dashboard/operating_expenses","dashboard/revenue":"dashboard/revenue","dashboard/burn-rate":"dashboard/net_burn_or_income","dashboard/cash-position":"dashboard/cash_position","dashboard/top-expenses":"dashboard/top_expenses","dashboard/cash-in-cash-out":"dashboard/cash_in_cash_out",dashboard:"dashboard",reports:"reports",forecast:"forecast","uncategorized-expense":"transactions/uncategorized-expense","uncategorized-income":"transactions/uncategorized-income","missing-receipts":"transactions/missing-receipts",bills:"bills",reimbursements:"reimbursements","cards/activate":"cards/activate",cards:"cards",wise:"bills/wise/callback/link-account",checking:"checking",aicfo:"ai-cfo/explore"};function E(t){for(const s of q)if(t.toLocaleLowerCase().includes(s))return G[s]}export{oe as default};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import{j as l}from"./liveblocks-C0YDUK6I.js";import{j as w,u as C,g as h,k as A,l as B}from"./core-DoFWsAh3.js";import{MT as k,M_ as O,fC as J,fB as Q,fA as W,iz as q,J$ as K,pH as L,eQ as V,Mp as D,ix as T,MU as S,N1 as F,iv as G,iS as j}from"./zeni-epic-state-DxMSPxpM.js";import{bn as X,Z as N,y as R,z as U,m as Z,k as b,S as v,x as _,bo as Y,o as z,bp as ee,r as te}from"./index-B_zQQVmD.js";import{n as H}from"./mui-D7NGykaU.js";import"./sentry-D_iKj4jN.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]="78a1ffe5-fe7c-47d5-961c-f07dd2c7ea2d",e._sentryDebugIdIdentifier="sentry-dbid-78a1ffe5-fe7c-47d5-961c-f07dd2c7ea2d")}catch{}})();const ne=A(null,function(e,t){return{onSaveVendor:n=>{e(q(t.vendorId!==void 0?t.vendorId:void 0,t.billId,void 0,t.isExpressPayPage)),e(K("common")),n!=null&&e(L(n))},onGetOtp:n=>{e(W(n,"BillPayVendor"))},onResendOtp:n=>{e(Q(n,"BillPayVendor"))},onVerifyOtp:(n,a)=>{e(J(n,a,"BillPayVendor"))},onVerifyOtpSuccess:(n,a,o)=>{e(O(n,a,o))}}})(X);function M({vendorId:e,billId:t,isExpressPayPage:n}){const a=w(),o=C(),s=h(r=>k(r,e));return l.jsx(ne,{location:o,navigate:a,vendorId:e,billId:t,vendorViewDetails:s,isExpressPayPage:n??!1})}const ae=H.div`
|
|
2
|
+
display: flex;
|
|
3
|
+
height: 100vh;
|
|
4
|
+
width: 100%;
|
|
5
|
+
flex: 1 1 auto;
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
align-items: center;
|
|
8
|
+
background-color: ${e=>e.theme.colors.grey4};
|
|
9
|
+
`,oe=A(function(e,t){const{vendorId:n,billId:a}=t,o=k(e,n),s=D(e,t.isVendorRecommendationEnabled,t.isZeniAccountsFeatureEnabled,a);return{billId:a,isDisabled:o.bankAccountCreationState.fetchState==="In-Progress"?"readonly":void 0,vendorViewDetails:o,file:s.file,bankAccountContext:t.bankAccountContext}},function(e,t){const{navigate:n,location:a,vendorId:o}=t;return{onFetchBankName:s=>{e(j(s))},onSaveHandler:s=>{e(G(t.bankAccountContext,s,"standard",o))},onCancel:()=>{(()=>{const s=b(a.state?.pathnameStackToGoBack),r=s.poppedPathname??E();n(r,{state:{pathnameStackToGoBack:s.newStack}})})(),e(S())},onACHDetailsUpdated:s=>{const{bankAccountSection:r}=s;e(F({data:r}))},onBackClick:()=>{if(e(T({fetchState:"Not-Started"})),t.bankAccountContext==="express-pay")n("../",{relative:"path"});else{const s=b(t.location.state?.pathnameStackToGoBack),r=s.poppedPathname??E(0);t.navigate(r,{state:{pathnameStackToGoBack:s.newStack}})}e(S())}}})(Y);function fe({vendorIdParam:e,accountContext:t}){const n=w(),a=C(),o=N(),{vendorId:s,billId:r}=B(),i=e??s,{useFeatureGate:d}=R(),c=U.getSignedInUser(),p=h(u=>V(u)),g=Z(),x=b(a.state?.pathnameStackToGoBack),f=t??(x.poppedPathname?.includes("vendor")===!0?"vendor":"billDetail"),m=h(u=>k(u,i)),{isFeatureEnabled:I}=d(v.isVendorRecommendationFeatureEnabled),{isFeatureEnabled:y}=d(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(_,{fetchState:m.editVendorState?.saveStatus.fetchState??"Not-Started",style:{backgroundColor:g.colors.grey5}}):l.jsxs(ae,{windowSize:o,children:[l.jsx(M,{vendorId:i,billId:r}),l.jsx(oe,{location:a,navigate:n,billId:r,vendorId:i,currentTenant:p,bankAccountContext:f,isVendorRecommendationEnabled:I,isZeniAccountsFeatureEnabled:y})]})}const E=(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},de=H.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
|
+
`,re=A(function(e,t){const{vendorId:n,billId:a}=t,o=k(e,n),s=D(e,t.isVendorRecommendationEnabled,t.isZeniAccountsFeatureEnabled,a);return{billId:a,isDisabled:o.bankAccountCreationState.fetchState==="In-Progress"?"readonly":void 0,vendorViewDetails:o,file:s.file,bankAccountContext:t.bankAccountContext}},function(e,t){const{billId:n,navigate:a,location:o,vendorId:s,currentTenant:r}=t,{tenantEmailDomain:i}=r;return{onFetchBankName:d=>{e(j(d))},onSaveHandler:d=>{e(G(t.bankAccountContext,d,"us-domestic",s))},onWireDetailsUpdated:d=>{const{bankAccountSection:c}=d;e(F({data:c}))},onCancel:()=>{(()=>{const d=b(o.state?.pathnameStackToGoBack),c=d.poppedPathname??P();a(c,{state:{pathnameStackToGoBack:d.newStack}})})(),e(S())},onAddressClick:d=>{if(t.bankAccountContext==="express-pay")a("./add-address");else{const c=se(i,d,n),p=te(o.state?.pathnameStackToGoBack,o.pathname);a(c,{state:{pathnameStackToGoBack:p}})}},onBackClick:()=>{if(e(T({fetchState:"Not-Started"})),t.bankAccountContext==="express-pay")a("../",{relative:"path"});else{const d=b(t.location.state?.pathnameStackToGoBack),c=d.poppedPathname??P(0);t.navigate(c,{state:{pathnameStackToGoBack:d.newStack}})}e(S())}}})(ee);function xe({vendorIdParam:e,accountContext:t}){const n=w(),a=C(),o=N(),{vendorId:s,billId:r}=B(),i=e??s,d=U.getSignedInUser(),{useFeatureGate:c}=R(),p=Z(),g=h(u=>V(u)),x=b(a.state?.pathnameStackToGoBack),f=t??(x.poppedPathname?.includes("vendor")===!0?"vendor":"billDetail"),m=h(u=>k(u,i)),{isFeatureEnabled:I}=c(v.isVendorRecommendationFeatureEnabled),{isFeatureEnabled:y}=c(v.isDepositAccountsFeatureEnabled);if(d==null)throw Error("Can't access address page without signing in...");return f==="billDetail"&&m.editVendorState?.saveStatus.fetchState==="In-Progress"?l.jsx(_,{fetchState:m.editVendorState?.saveStatus.fetchState??"Not-Started",style:{backgroundColor:p.colors.grey5,boxShadow:`0px 2px ${z.sp1} ${p.colors.dropShadowNormal}`}}):l.jsxs(de,{windowSize:o,children:[l.jsx(M,{vendorId:i,billId:r}),l.jsx(re,{location:a,navigate:n,billId:r,vendorId:i,currentTenant:g,bankAccountContext:f,isVendorRecommendationEnabled:I,isZeniAccountsFeatureEnabled:y})]})}const P=(e=2)=>{let t="../";for(let n=0;n<e;n++)t=`${t}../`;return t};export{fe as A,xe as D,M 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-C0YDUK6I.js";import{Z as c,F as l,m as f}from"./index-B_zQQVmD.js";import{D as b}from"./mui-D7NGykaU.js";import"./sentry-D_iKj4jN.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]="b5be3e28-c03d-4845-afab-c42c4b43f04b",e._sentryDebugIdIdentifier="sentry-dbid-b5be3e28-c03d-4845-afab-c42c4b43f04b")}catch{}})();const p={drawerLeftMargin:new l(0,0,240)};function m(e){const{isOpen:r,drawerLeftMargin:o,children:t,onClose:a}=e,n=c(),s=o?.valuePx(n)??p.drawerLeftMargin.valuePx(n),d=f();return i.jsx(b,{anchor:"right",open:r,PaperProps:{style:{width:`calc(100% - ${s})`}},slotProps:{backdrop:{style:{backgroundColor:d.colors.black,opacity:.8,cursor:"pointer"}}},onClose:a,children:t})}export{m as D};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as s}from"./liveblocks-C0YDUK6I.js";import{a as d}from"./sentry-D_iKj4jN.js";import{j as B,h as G,u as q,l as K,g as l,N as F,k as O,n as _,o as N}from"./core-DoFWsAh3.js";import{L6 as H,eQ as $,Kv as J,kC as L,H4 as C,Lb as M,J_ as R,jC as W,H5 as S,KA as Y,KB as z,K0 as Q,J$ as V}from"./zeni-epic-state-DxMSPxpM.js";import{aO as U,e as X,k as Z,r as tt}from"./index-B_zQQVmD.js";import"./mui-D7NGykaU.js";import{d as k}from"./decodeURIComponentSafe-DeajK0Ay.js";import{w as et}from"./withTransactionSidePanel-D2Y7jJCS.js";import{e as at,b as nt}from"./routePaths-jEiEovGM.js";import"./recharts-Cuk30a9F.js";import"./analytics-B2BEDPCs.js";import"./plaid-BJpo1TK4.js";import"./dnd-BcveyY8t.js";import"./stripe-DMRn4zHo.js";import"./lottie-GT0I8BXz.js";import"./lexical-Bn41B4hZ.js";import"./pdf-BkkC7i8o.js";import"./utils-C2wS7D4E.js";import"./useAskAiCfoHostNavButtonProps-CrrCW8TF.js";import"./useFetchSuggestedQuestionsWhenReady-RpPSJmI8.js";import"./TransactionDetailScreen-BRjuwlbo.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]="ff8535d6-d554-4068-aaf1-b8ef8f62d631",a._sentryDebugIdIdentifier="sentry-dbid-ff8535d6-d554-4068-aaf1-b8ef8f62d631")}catch{}})();const ot=O(function(a,t){const e=t.entity,o=M(a,t.entity,"EntityDetail");return{selectedEntity:e,autoCompleteData:{autoCompleteText:e.name,entityAutoCompleteView:R(a,"common")},trendWithTransactionsReport:o,analytics:X,isAccountingClassesEnabled:W(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(Q({searchString:e,searchOrigin:"common"})):e.trim().length===0&&a(V("common"))},onAutoCompleteEntity:e=>{const o=at(e,t.tenantEmailDomain);a(Y()),a(z()),t.resetTrendIsFetchedStates(),t.navigate(o,{replace:!0,state:{pathnameStackToGoBack:t.location.state?.pathnameStackToGoBack}})},onCancelAutoComplete:()=>{const e=Z(t.location.state?.pathnameStackToGoBack),o=e.poppedPathname??I();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(C(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=B(),o=G(),c=q(),[m,T]=d.useState(!1),[h,D]=d.useState(!1),{tenantEmailDomain:b,entityIdEncoded:j,entityNameEncoded:x}=K(),r=k(j??""),f=k(x??""),p=rt(r,f),v=[r,f].filter(n=>n!=null),i={name:f,id:r,type:a,zeniId:r,qboId:r},g=l(n=>H(n.customerIncomeState,n.vendorExpenseState,n.trendState,i,"quarter")),w=l(n=>$(n).company?.companyInfo.firstMonthOfFY??1),u=l(n=>J(n.trendWithTransactionsState,i,"EntityDetail"));d.useEffect(()=>{m===!1&&p===!0&&(T(!0),o(L(i)))},[m,p,i]);const E=l(n=>n.trendState.fetchState),P=u?.selectedPeriod?.timePeriod??g,A=function(n,y){return n!=null&&y!=null?{startDate:n.startDate,endDate:y?.endDate}:y}(u?.selectedPeriod?.timePeriod,g);return d.useEffect(()=>{m===!0&&h===!1&&E==="Completed"&&(D(!0),P!=null&&o(C(i,"EntityDetail",{timeframe:u?.selectedPeriod?.timeframe??"quarter",timePeriod:P})))},[m,h,E]),p?s.jsx(ot,{firstMonthOfFY:w,tenantEmailDomain:b,location:c,navigate:e,entity:i,defaultTransactionTimePeriod:A,resetTrendIsFetchedStates:()=>{T(!1),D(!1)},...t}):s.jsx(F,{to:I(v.length)})}),rt=(a,t)=>t!=null&&t.length>0&&a!=null&&a.length>0,I=(a=2)=>{let t="../";for(let e=0;e<a;e++)t=`${t}../`;return t};function xt({entityType:a}){return s.jsx(_,{children:s.jsx(N,{path:"/:entityIdEncoded/:entityNameEncoded/*",element:s.jsx(it,{entityType:a})})})}export{xt as EntityDetailRoutes,xt as default};
|
package/dist/assets/{ExpenseAutomationRoutes-CSoEa0_v.js → ExpenseAutomationRoutes-S1bDDjBF.js}
RENAMED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import{j as C}from"./liveblocks-
|
|
1
|
+
import{j as C}from"./liveblocks-C0YDUK6I.js";import xn from"./NotFoundScreen-D7jhyBo6.js";import{a,b as Tt}from"./sentry-D_iKj4jN.js";import{n as Fe,S as Rn}from"./mui-D7NGykaU.js";import{h as ce,j as wt,u as qe,g as U,k as Dn,l as rt,n as Un,o as ze}from"./core-DoFWsAh3.js";import{eQ as Re,Pq as Fn,mH as Se,fg as Bn,qi as _n,mZ as xt,ni as Rt,Pr as Dt,ns as Mn,Ps as Ut,mS as On,pQ as Vn,e$ as pe,Pt as De,so as Ft,Bz as Bt,Pu as _t,Pv as jn,pv as Je,L7 as dt,L9 as zn,jF as Ln,La as $n,jM as Gn,cW as qn,tr as Ne,n3 as Mt,nx as Ue,Pw as Jn,K0 as ut,J$ as Te,Px as mt,k1 as Nn,Py as Yn,Pz as Kn,PA as Qn,PB as Hn,na as Wn,mX as ie,nA as we,PC as Zn,PD as Xn,PE as ea,nH as ta,jQ as na,jH as aa,PF as oa,jP as ht,Lh as sa,PG as ca,PH as ia,pr as la,p6 as ra,ny as ge,p5 as Le,PI as da,PJ as ua,lk as ma,bq as ha,lf as pt,l1 as pa,PK as ga,gO as gt,fS as Ca,lc as Sa,vk as Ia,PL as fa,o6 as ka,o1 as Ea,o5 as va,nS as ya,PM as ba,f2 as Ot,nl as Pa,n6 as Aa,fh as Ct,nC as Ta,PN as wa,nz as Vt,PO as xa,PP as Ra,PQ as Da,PR as Ua,PS as St,pD as Fa,oY as Ba,J_ as _a,jO as Ma,PT as Oa,G5 as Va,jN as ja,jC as za,f1 as La,ox as jt,oQ as $a,nw as It,nB as Ga,bE as qa,l9 as Ja,l6 as Na,PU as Ya,nR as ft,oO as kt,oM as Ka,oC as Qa,oh as Ha,oP as Wa,PV as Za,PW as Xa,ol as eo,PX as to,ob as no,ok as ao,oi as oo,oT as so}from"./zeni-epic-state-DxMSPxpM.js";import{y as zt,S as Ce,e as z,r as H,U as Lt,cw as co,z as Be,cx as io,aq as xe,cy as lo,aQ as Et,x as $t,cz as ro,an as $e,D as uo,cA as mo,X as ho,cB as po,T as go,cC as Co,cD as So,v as Io,d as fo,aK as ko,b1 as Eo,F as vo,cE as yo}from"./index-B_zQQVmD.js";import{u as Gt}from"./useAskAiCfoHostNavButtonProps-CrrCW8TF.js";import{c as qt}from"./useFetchSuggestedQuestionsWhenReady-RpPSJmI8.js";import{c as vt,C as bo}from"./TransactionDetailScreen-BRjuwlbo.js";import{w as Po}from"./withTransactionSidePanel-D2Y7jJCS.js";import{h as Ao,v as To}from"./routePaths-jEiEovGM.js";import{g as Ge}from"./accountMappingHelper-DZfGqaZH.js";import{D as wo}from"./DrawerScreen-CfGPVQAS.js";import"./recharts-Cuk30a9F.js";import"./analytics-B2BEDPCs.js";import"./plaid-BJpo1TK4.js";import"./dnd-BcveyY8t.js";import"./stripe-DMRn4zHo.js";import"./lottie-GT0I8BXz.js";import"./lexical-Bn41B4hZ.js";import"./pdf-BkkC7i8o.js";import"./utils-C2wS7D4E.js";import"./decodeURIComponentSafe-DeajK0Ay.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},i=new t.Error().stack;i&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[i]="d6437a37-149f-4501-bb90-f1a5e584a508",t._sentryDebugIdIdentifier="sentry-dbid-d6437a37-149f-4501-bb90-f1a5e584a508")}catch{}})();const xo=()=>{const t=ce(),i=wt(),P=qe(),f=U(d=>Re(d)),{useFeatureGate:E}=zt(),{isFeatureEnabled:g}=E(Ce.isRealtimeInsightsFeatureEnabled),u=U(d=>d.expenseAutomationViewState.selectedPeriodByTenantId),o=U(d=>Fn(d,f.tenantId)),{isAiCfoAccessEnabled:v,onAskAiCfoClick:S}=Gt({mobileExploreReferrer:"Month-End Close Overview"}),m=a.useCallback((d,R,K=!1)=>{t(Se({tenantId:R,period:{month:d.month,year:d.year},refreshViewInBackground:K}))},[]),y=a.useCallback(d=>{const R=P.state?.referrer;o.monthEndCloseChecks?.auditSummary!=null&&z.trackMonthCloseAuditPage(d.month,d.year,o.monthEndCloseChecks.reportEmailSentDate!=null?"closed":"in-review",o.monthEndCloseChecks.auditSummary.auditScorePercentage,!1,R??null),t(Bn(f.tenantId,d))},[f.tenantId,o.monthEndCloseChecks?.auditSummary,o.monthEndCloseChecks?.reportEmailSentDate]),r=u[f.tenantId],B=a.useCallback(()=>{const d=P.state?.referrer;o.monthEndCloseChecks?.auditSummary!=null&&z.trackMonthCloseAuditPage(r.month,r.year,o.monthEndCloseChecks.reportEmailSentDate!=null?"closed":"in-review",o.monthEndCloseChecks.auditSummary.auditScorePercentage,!0,d??null),m(r,f.tenantId,!0)},[m,r,f.tenantId,o.monthEndCloseChecks?.auditSummary,o.monthEndCloseChecks?.reportEmailSentDate]),h=H(P.state?.pathnameStackToGoBack,P.pathname),A=a.useCallback(()=>{if(o.monthEndCloseChecks!=null&&r!=null){const d=o.monthEndCloseChecks.monthEndCloseCheckList.find(R=>R.progress<100);if(d!=null)return void i(`./${d.id}/${r.month}-${r.year}`,{state:{pathnameStackToGoBack:h,message:"comingFromOverview"}});i(`./month_end_insights/${r.month}-${r.year}`,{state:{pathnameStackToGoBack:h,message:"comingFromOverview"}})}},[o.monthEndCloseChecks,r]),{areTenantIdsInSync:I}=Lt();return qt({isDataReady:o.fetchState==="Completed"}),a.useEffect(()=>{r!=null&&o.fetchState!=="In-Progress"&&o.fetchState!=="Completed"&&I&&m(r,f.tenantId)},[m,r,o.fetchState,f.tenantId,I]),a.useEffect(()=>{r!=null&&o.monthClosePerformanceTrendFetchStatus.fetchState!=="In-Progress"&&o.monthClosePerformanceTrendFetchStatus.fetchState!=="Completed"&&I&&t(_n(r))},[r,o.monthClosePerformanceTrendFetchStatus.fetchState,I]),a.useEffect(()=>{const d=setInterval(()=>{o.fetchState!=="In-Progress"&&o.fetchState==="Completed"&&B()},3e5);return()=>clearInterval(d)},[o.fetchState]),a.useEffect(()=>{if(o.fetchState==="Completed"&&o.monthEndCloseChecks?.auditSummary!=null){const d=P.state?.referrer;z.trackMonthCloseAuditPage(o.selectedPeriod.month,o.selectedPeriod.year,o.monthEndCloseChecks.reportEmailSentDate!=null?"closed":"in-review",o.monthEndCloseChecks.auditSummary.auditScorePercentage,!1,d??null)}},[o.fetchState,o.selectedPeriod,o.monthEndCloseChecks?.auditSummary,o.monthEndCloseChecks?.reportEmailSentDate]),C.jsx(Ro,{children:C.jsx(co,{monthEndCloseChecksView:o,isRealtimeInsightsFeatureEnabled:g,onMonthEndCheckClick:d=>{i(`./${d}/${r.month}-${r.year}`,{state:{pathnameStackToGoBack:h,message:"comingFromOverview",referrer:"Expense Automation - Overview"}})},onPeriodChange:y,handleReviewButtonClick:A,onBackClick:()=>{i("../../dashboard")},onReload:B,isAiCfoAccessEnabled:v,onAskAiCfoClick:S})})},Ro=Fe.div`
|
|
2
2
|
display: flex;
|
|
3
3
|
height: 100vh;
|
|
4
4
|
width: 100%;
|
|
5
5
|
flex: 1 1 auto;
|
|
6
6
|
flex-direction: column;
|
|
7
7
|
background-color: ${t=>t.theme.colors.grey4};
|
|
8
|
-
`,Do=
|
|
8
|
+
`,Do=Tt.memo(({reconciliation:t,selectedDrawerAccountId:i,onClose:P,onFetchLinkTokenClick:f,onEstablishConnectionClick:E})=>{const g=ce(),u=Be.getSignedInUser(),o=U(e=>Re(e)),v=t.excludedAccountIDs,S=a.useMemo(()=>({userId:u?.userId??"",sessionId:u?.zeniSessionId??"",tenantId:o?.tenantId??""}),[u?.userId,u?.zeniSessionId,o?.tenantId]),{accountReconciliationsByAccountID:m,monthYearPeriod:y,statementUploadChosen:r}=t,B=m[i],h=B?.accountReconEntity.statementMetaData?.statementUploadId,A=(e,n)=>{g(Vn(e,n.split(".")[0]))},I=e=>{h!=null&&g(On({accountId:i,selectedPeriod:y,fileId:e,statementUploadId:h}))},d=()=>{g(Dt({statementUploadChosen:!1}))},R=e=>{g(Mn({accountId:i,selectedPeriod:y,payload:e}))},K=e=>{g(Ut({accountId:i,selectedPeriod:y,localData:{accountSource:e}}))},te=a.useCallback(()=>{g(xt({accountId:i}))},[g,i]),V=a.useCallback(()=>{g(Rt({accountId:i}))},[g,i]),_=v.includes(i)?t.excludedAccountReconciliationByAccountID[i]:void 0;return B!=null?C.jsx(yt,{children:C.jsx(bt,{children:C.jsx(io,{excludeAccountFetch:t.excludeAccountFetchState,accountReconciliation:B,monthYearPeriod:y,onDismissClick:P,plaidConnectionDetails:t.plaidConnectionDetails,onFetchLinkTokenClick:f,onEstablishConnectionClick:E,onEditFileName:A,onDeleteFile:I,onSelectSourceType:K,filesEndPoint:xe.fileMicroServiceBaseUrl,authParams:S,openFilePicker:r,onStatementUploadSuccess:R,onUploadWindowOpenedOnce:d,onExcludeFromReconciliation:te})})}):_!=null?C.jsx(yt,{children:C.jsx(bt,{children:C.jsx(lo,{excludedAccountReconciliation:_,includeAccountFetch:t.includeAccountFetchState,onIncludeIntoReconciliation:V})})}):null}),yt=Fe.div`
|
|
9
9
|
display: flex;
|
|
10
10
|
flex-direction: column;
|
|
11
11
|
height: 100%;
|
|
@@ -18,8 +18,8 @@ import{j as C}from"./liveblocks-Cjqg1XsV.js";import xn from"./NotFoundScreen-Bky
|
|
|
18
18
|
min-width: 0;
|
|
19
19
|
overflow-x: hidden;
|
|
20
20
|
overflow-y: auto;
|
|
21
|
-
`;function Uo({companyId:t,closeCustomerRequestDrawer:i,addCustomerRequest:A,resetCustomerRequest:f}){const E=Be.getSignedInUser();if(E==null)throw Error("Can't access Customer Request page without signing in...");const g=U(u=>jn(u,t,E));return a.useEffect(()=>{f()},[]),C.jsx(C.Fragment,{children:g.fetchState==="In-Progress"||g.companyMonthEndReportTemplatesData.fetchState==="In-Progress"?C.jsx($t,{fetchState:"In-Progress"}):C.jsx(ro,{onCloseClick:i,addCustomerRequest:A,snippets:g.companyMonthEndReportTemplatesData,bulletPoints:g.zeniRequestsData??[]})})}const Fo=t=>t.sections.generalExpense.vendors.length+t.sections.reimbursement.vendors.length,{common:{strings:{hyphen:Bo,comma:At,space:_o}},dateFormat:Qt}=uo.getLocalizedStrings(),Tt=so,Mo=Dn(function(t,i){const{uncategorizedAccounts:A,vendorSearchAutoCompleteData:f,monthEndInsightsCustomerRequestData:E,monthEndInsightsPreviewMode:g,companyId:u,isMissingReceiptsBulkUploadEnabled:o,isTransactionActivityEnabled:v}=i,S=Be.getSignedInUser(),m=t.tenantState.currentTenantId,y={userId:S?.userId??"",sessionId:S?.zeniSessionId??"",tenantId:m??""},r=pe(t),{selectedTransactionCategorizationTab:B}=r;return{expenseAutomationViewSelector:r,bulkUploadSelector:o===!0?r.missingReceipts.bulkUpload:void 0,vendorSearchAutoCompleteData:f,authParams:y,receiptUploadEndpoint:`${xe.accountMicroServiceBaseUrl}`,transactionAttachmentsEndpoint:`${ho}/transaction_attachments`,bulkUploadEndpoint:o===!0?`${xe.communicationAgentMicroServiceBaseUrl}/1.0/receipts/bulk-upload`:void 0,isDisabled:!1,currentTab:B,monthEndInsightsCustomerRequestData:E,monthEndInsightsPreviewMode:g,allThreadsSectionOpen:!1,enableMonthEndInsightsZeniGPTFeature:!1,loggedInUser:S,uncategorizedAccounts:A,companyId:u,isTransactionActivityEnabled:v}},function(t,i){const{themeState:A,isAccountingClassesEnabled:f,isCOTEnabled:E,isUncategorizedExpenseCategoryEnabled:g,isMissingReceiptsBulkUploadEnabled:u,location:o,vendorSearchAutoCompleteData:v,expenseAutomationViewSelector:S,currentTenant:m,uncategorizedAccounts:y,navigate:r,onClickCustomerRequest:B,handleEditClick:h,setActivityLogTransactionId:T}=i,{selectedPeriod:I,currentSelectedView:d,reconciliation:{selectedAccountId:R}}=S,{accountSettingsView:Y}=S.jeSchedules,te=Mt(I),O=Ue(te.start),_=Ue(te.end);return{onZeniLogoClick:()=>{A.toggle()},onUploadReceiptAttachment:e=>{L.trackMissingReceiptAttached(I.month,I.year),t(Ba(e))},onUploadTransactionReceipt:(e,n,s,l,k,p)=>{t(St(e,n,{fetchState:"In-Progress"}));const b=()=>t(St(e,n,{fetchState:"Error"}));po(`${xe.accountMicroServiceBaseUrl}/1.0/transactions/${n}/attachments`,p,n,s,l,k).then(P=>{P!=null?t(Fa(e,P)):b()}).catch(b)},onMissingReceiptsRowClick:(e,n)=>{if(i.openTransactionPanel)return void i.openTransactionPanel(e,n);const s=W(o.state?.pathnameStackToGoBack,o.pathname);r(`../../transaction/${n}/${e}`,{state:{pathnameStackToGoBack:s,message:"expenseAutomation",origin:"missing_receipts"}})},onUploadReceiptComplete:(e,n)=>{t(Ua(e,n)),m!=null&&t(Se({tenantId:m.tenantId,period:n,refreshViewInBackground:!0}))},onUploadReceiptFetchStatus:(e,n,s,l)=>{t(Da(e,{fetchState:n,error:s})),s!=null&&t(gt({messageSection:"missing_receipts_attachment",messageText:"failed",type:"error",showStatusIcon:!0,variables:[{variableName:"__message__",variableValue:l!=null?_o+Bo+l+At:At}]}))},onUpdateJESchedulesUIState:e=>{t(Ra(e))},onUpdateMissingReceiptsUIState:e=>{t(xa(e))},onFetchMissingReceiptsList:()=>{_!=null&&O!=null&&t(Ot({start:O,end:_},{amount:75,currencyCode:"USD",currencySymbol:"$"},!0,!1))},...u===!0?{onBulkUploadFiles:e=>{t(oo(e))},onBulkUploadProgress:e=>{t(ao(e))},onBulkUploadSuccess:e=>{t(no({batchId:e}))},onBulkUploadUploadedFileCount:e=>{t(to(e))},onConfirmBulkUploadMatch:(e,n,s,l,k)=>{t(eo(e,n,s,l,k))},onBulkUploadConfirmMatchAcknowledged:()=>{t(Za())},onSetBulkUploadResultsTab:e=>{t(Xa(e))},onSetBulkUploadCompletedSubTab:e=>{t(Ha(e))},onSetBulkUploadSortConfig:(e,n)=>{t(kt({sortKey:e,sortOrder:n}))},onClearBulkUpload:()=>{t(Wa())},onSearchTransactionsForManualMatch:(e,n)=>{t(Tt(e,n??void 0))},onLoadMoreManualSearch:()=>{const{manualSearch:e}=S.missingReceipts.bulkUpload;e.nextPageToken!=null&&e.searchQuery!==""&&t(Tt(e.searchQuery,e.nextPageToken))},onFetchCompletedTransactions:(e,n)=>{t(Ka(e,n))},onFetchBulkUploadBatches:e=>{t(jt(e))},onFetchMoreBatchDetails:()=>{t(Ya())},onResetBulkUploadSort:()=>{t(kt({sortKey:void 0,sortOrder:void 0}))}}:{},onClearMissingReceiptsTabNavigation:()=>{t(wa())},onSearchTextChanged:e=>{const n=S.currentSelectedView,s=S.selectedTransactionCategorizationTab;n==="transaction_categorization"&&(t(ze({selectedTab:s,uiState:{searchString:e}})),_!=null&&O!=null&&t(ge(s,{start:O,end:_},!0,!1,e,void 0,!0)))},onRefresh:()=>{i.trackExpenseAutomationTabAnalytics(!0),t(Pa(g))},onClose:()=>{d==="reconciliation"&&R!=null&&t(Ct({selectedAccountId:void 0})),r("../")},onBack:()=>{d==="reconciliation"&&R!=null&&t(Ct({selectedAccountId:void 0}))},onSaveReconciliation:e=>{t(Ta(e))},onSaveReconciliationReview:e=>{t(Aa(e))},onUpdateStep:e=>{const{selectedPeriod:n}=S,s=W(o.state?.pathnameStackToGoBack,o.pathname);r(`../${e}/${n.month}-${n.year}`,{state:{pathnameStackToGoBack:s,referrer:S.currentSelectedView}}),t(Vt(e))},handleLogOutClick:()=>{const e=W(o.state?.pathnameStackToGoBack,o.pathname);r("/signout",{replace:!0,state:{pathnameStackToGoBack:e,message:"logout"}})},onJeAccountSettingsChange:e=>{const{vendorsAccountSection:n}=e,{prepaidExpensesAccount:s,fixedAssetsAccount:l,accruedExpensesAccount:k}=n,p=qe(Y.prepaidExpensesAccountList,s.selectedOptions),b=qe(Y.fixedAssetsAccountList,l.selectedOptions),P=qe(Y.accruedExpensesAccountList,k.selectedOptions),M={selectedPrepaidExpensesAccountIds:p.map(w=>w.accountId),selectedFixedAssetsAccountIds:b.map(w=>w.accountId),selectedAccruedExpensesAccountIds:P.map(w=>w.accountId)};t(ba({data:M}))},onSaveJeAccountSettingsClick:()=>{t(ya())},onJESchedulesFormDataChange(e,n){const{jeScheduleID:s,accumulatedDepreciationCategory:l,scheduleClass:k,scheduleExpenseCategory:p,vendor:b}=n,{allAccountList:P,allClassList:M,allDepreciationAccountList:w}=S.jeSchedules,$=v.entityAutoCompleteView.vendor.length>0?v.entityAutoCompleteView.vendor.find(q=>q.id===b?.selectedOption):void 0,Ie={id:$?.zeniId??b?.selectedOption??"",name:$?.name??b?.defaultOptions.find(q=>q.value===b?.selectedOption)?.label??"",logo:$?.logo},fe=p?.selectedOption!=null?P.find(q=>q.qboId===p.selectedOption):void 0,ke=k?.selectedOption!=null?M.find(q=>q.classId===k.selectedOption):void 0,ne=l?.selectedOption!=null?w.find(q=>q.qboId===l.selectedOption):void 0;t(va({scheduledJournalEntryID:e,localData:{jeScheduleID:s,scheduledJournalEntryID:e,updatedCategoryId:fe?.accountId,updatedClassId:ke?.classId,updatedAccumulatedDepreciationCategoryID:ne?.accountId,updatedVendor:{id:Ie.id,name:Ie.name}}}))},ignoreRecommendedJeSchedule(e,n){t(Ea(e,n))},vendorSearchAutoCompleteActions:{onAutoCompleteInputChange:(e,n)=>{e.trim().length>=2?t(ut({searchString:e,entityType:n,searchOrigin:"common"})):e.trim().length===0&&t(Pe("common"))},onCancelAutoComplete:()=>{t(Pe("common"))}},onPostJESchedule(e,n){t(ka({scheduledJournalEntryID:e,jeScheduleTransactionKey:n}))},clearJeScheduleLocalData(){t(fa())},handleJeScheduleClick:(e,n,s)=>{t(Ia({selectedJEScheduleKey:n}));const l=W(o.state?.pathnameStackToGoBack,o.pathname);r(`../../vendors/schedules/${s}/details/${e}`,{state:{pathnameStackToGoBack:l,message:"expenseAutomation",origin:"je_schedules"}})},improveMonthEndInsightsUsingZeniGPTClick:e=>{m!=null&&t(Sa(e,m.companyId,m.tenantId))},onClickCustomerRequest:B,setActivityLogTransactionId:T,onCloseAllThreadsSection:()=>{},onCloseFileAttachmentSnackBar:()=>{t(Ca())},onOpenFileAttachmentSnackBar:()=>{t(gt({messageSection:"cockpit_month_end_email_attachment_upload",messageText:"failed",type:"error",showStatusIcon:!0}))},onRemoveFileAttachment:e=>{t(ga(e))},onUpdateFileAttachment:e=>{t(pa({files:e}))},previewMonthEndReport:(e,n,s,l)=>{m!=null&&t(pt(e,m.companyId,n,!0,s,l,m.tenantId))},saveMonthEndReport:(e,n,s,l)=>{m!=null&&t(pt(e,m.companyId,n,!1,s,l,m.tenantId))},onEditMonthEndInsightsClick:h,sendMonthEndReport:e=>{const n=o.state?.referrer,{selectedPeriod:s,auditSummary:l}=S;m!=null&&l?.auditScorePercentage!=null&&(t(ma(m.companyId,e,m.tenantId)),L.trackInsightsEmailPage(s.month,s.year,!1,"draft",l.auditScorePercentage,ha().format(Qt.analytics.MMMDDCommaYYYYformat),n??null))},onTransactionCategorizationRowClick:(e,n)=>{if(i.openTransactionPanel)return void i.openTransactionPanel(e,n);const s=W(o.state?.pathnameStackToGoBack,o.pathname);r(`../../transaction/${n}/${e}`,{state:{pathnameStackToGoBack:s,message:"expenseAutomation",origin:"transaction_categorization"}})},setLocalDataForCategoryAndClass:(e,n,s,l,k,p,b,P,M,w,$)=>{t(ua(e,n,s,l,y,k,p,b,P,M,w,$,f))},onCancelAutoComplete:()=>{t(Pe("common"))},updateExpenseAutomationReconListScrollPosition:e=>{t(mt({scrollPosition:e}))},onUpdateTab:e=>{i.closeSidePanel?.(),_!=null&&O!=null&&(t(ge(e,{start:O,end:_},!1,!1)),t(da(e)))},onUpdateTransactionCategorizationUIState:(e,n)=>{t(ze({selectedTab:e,uiState:n})),_!=null&&O!=null&&t(ge(e,{start:O,end:_},!1,!1,n.searchString,null,!0))},onUpdateScrollYOffSetTransactionCategorizationUIState:(e,n)=>{t(ze({selectedTab:e,uiState:n}))},onFetchTransactionCategorizationList:(e,n,s,l,k,p,b)=>{_!=null&&O!=null&&t(ge(e,{start:O,end:_},!0,s,n,l,k,p,b))},resetTransactionCategorizationLocalData:(e,n,s,l,k,p,b,P)=>{t(ra(e,n,s,l,P??null,k,p,!1,b))},updateSelectedVendorForTransaction:(e,n,s,l,k)=>{t(ht({selectedTab:e,transactionId:n,lineId:s,selectedTransaction:l,uncategorizedAccounts:y,updatedVendor:k,isAccountingClassesEnabled:f}))},onSaveUpdateTransactionCategorization:(e,n,s)=>{const l=o.state?.referrer;e==="autoCategorized"?L.trackTransactionsAutoCategorisedPage(I.month,I.year,S.transactionView.totalCountByTab.autoCategorized,n.length,!1,l??null):L.trackTransactionsReviewPage(I.month,I.year,S.transactionView.totalCountByTab.review,n.length,!1,l??null),t(la(e,n,s,g))},onUpdateSelectedCheckboxTransactionIds:(e,n)=>{t(ia({selectedTab:e,transactionIds:n}))},onFetchRecommendationsForEntityCategorizationWithCustomer:(e,n,s,l,k,p,b)=>{const{transactionId:P,transaction:M,lineIds:w}=n;p!=null&&t(sa({transactionId:P,customerUpdates:p})),t(ca({selectedTab:l,transactionId:P.id,lineId:w[0],selectedTransaction:M,uncategorizedAccounts:y,updatedCustomer:p,selectedEntity:k,isAccountingClassesEnabled:f,isUncategorizedExpenseCategoryEnabled:b})),k!=null&&t(Ne(k,e,n,s,!0,E,b))},onFetchRecommendationsForEntityCategorization:(e,n,s,l,k,p,b)=>{const{transactionId:P,transaction:M,lineIds:w}=n;p!=null&&(t(na({transactionId:P,vendorUpdates:{name:p.name,id:p.id?p.id:void 0}})),t(aa({vendorId:p.id?p.id:void 0,localData:{vendorName:p.name,vendorId:p.id?p.id:void 0}}))),p?.id?(t(ht({selectedTab:l,transactionId:P.id,lineId:w[0],selectedTransaction:M,uncategorizedAccounts:y,updatedVendor:p,selectedEntity:k,isAccountingClassesEnabled:f,isUncategorizedExpenseCategoryEnabled:b})),k!=null&&t(Ne(k,e,n,s,!0,E,b))):t(oa({selectedTab:l,transactionId:P.id,lineId:w[0]}))},fetchFluxViewOnScroll:(e,n)=>{t(we(e,!0,!1,n,!1,!0))},onFetchFluxViewList:()=>{t(we(I,!0,!1,null,!1,!1))},markAsReview:(e,n,s,l)=>{L.trackFluxAnalysisReviewed(s.month,s.year,l??!1,e),t(ta(n,e,s,l??!1))},onUpdateFluxAnalysisUIState:e=>{t(ea(e))},updateOperatingExpensesIdsForReview:e=>{t(Zn({operatingExpenseIds:e,selectedPeriod:I}))},redirectToVendorDetailPage:e=>{if(i.tenantEmailDomain!=null){const n=Po(e.id,e.qboId,i.tenantEmailDomain),s=W(i.location.state?.pathnameStackToGoBack,i.location.pathname);i.navigate(n,{state:{pathnameStackToGoBack:s,message:"expenseAutomation",referrer:"Vendor List",origin:"flux_analysis"}})}},updateSectionIdsForReview:e=>{t(Xn({sectionId:e,selectedPeriod:I}))},onFetchReimbursementView:(e,n,s)=>{t(we(e,!0,!1,n,!0,s))},onReviewClicked:e=>{t(ie(I,e))},setOpenDrawerClicked:e=>{t(De({selectedDrawerAccountId:e}))},onFetchLinkTokenClick:(e,n)=>{t(Ft("expense_automation_reconcile",e,n))},onEstablishConnectionClick:(e,n)=>{const s=m?.companyId;s!=null&&(t(Bt(e,s,"expense_automation_reconcile",void 0,"link_account_no_microdeposit",n)),t(_t({accountId:n,connectionInProgress:!0})))},onAddStatementClick:e=>{t(De({selectedDrawerAccountId:e})),t(Ut({accountId:e,selectedPeriod:I,localData:{accountSource:"bank_statement"}})),t(Dt({statementUploadChosen:!0}))},onReloadReconciliationListPage:()=>{t(ie(I,void 0,!0,!1))},onUpdateReconcileTabLocalData:e=>{t(Hn({selectedTransactionIds:e}))},onReconTabColumnSortConfigChanged:(e,n)=>{t(Wn({sortKey:e,sortOrder:n}))},onReconReviewTabColumnSortConfigChanged:(e,n)=>{t(Kn({sortKey:e,sortOrder:n}))},onReconTabUpdate:e=>{i.closeSidePanel?.(),t(Yn({selectedTab:e}))},updateReconReviewTabLocalData:(e,n,s)=>{const l=e.vendor?.id;s&&l!=null&&t(Nn(l)),t(Jn({data:e,transactionId:n}))},onReconMatchedTransactionClick:e=>{if(i.openTransactionPanel)return void i.openTransactionPanel(e,Qe("bill"));const n=W(o.state?.pathnameStackToGoBack,o.pathname);r(`../../transaction/bill/${e}`,{state:{pathnameStackToGoBack:n,message:"expenseAutomation",origin:"reconciliation"}})},onReloadPage:()=>{window.location.reload()},onBackClick:()=>{r(-1)},onReconListPageScroll:e=>{t(mt({scrollPosition:e}))},onVendorAutoCompleteInputChange:e=>{e.trim().length>=2?t(ut({searchString:e,searchOrigin:"common"})):e.trim().length===0&&t(Pe("common"))},onReconNodeCollapseToggled:(e,n)=>{t(Qn({nodeId:e,collapsed:n}))},updateSectionCollapseStatus:()=>{},onExcludeAccountFromReconciliation:e=>{t(xt({accountId:e}))},onIncludeAccountIntoReconciliation:e=>{t(Rt({accountId:e}))}}},(t,i,A)=>{const{isMissingReceiptsBulkUploadEnabled:f,...E}=A;return function(g,u,o){return{...g,...u,...o,onUploadTransactionReceipt:(v,S,m,y,r)=>{u.onUploadTransactionReceipt(v,S,m,y,r,g.authParams)}}}(t,i,E)})(mo),Vo=Ao(function(t){const i=t.displayName??t.name??"Component",A=Pt.memo(t),f=E=>{const g=ce(),u=function(){const T=ce(),I=U(d=>pe(d).reconciliation.selectedDrawerAccountId);return{isOpen:I!=null,selectedAccountId:I,openPanel:a.useCallback(d=>{T(De({selectedDrawerAccountId:d}))},[T]),closePanel:a.useCallback(()=>{T(De({selectedDrawerAccountId:void 0}))},[T])}}(),o=U(T=>pe(T).reconciliation),v=U(T=>Re(T)),S=a.useCallback((T,I)=>{g(Ft("expense_automation_reconcile",T,I))},[g]),m=a.useCallback((T,I)=>{const d=v?.companyId;d!=null&&(g(Bt(T,d,"expense_automation_reconcile",void 0,"link_account_no_microdeposit",I)),g(_t({accountId:I,connectionInProgress:!0})))},[g,v?.companyId]),y=a.useMemo(()=>{if(u.isOpen&&u.selectedAccountId!=null)return C.jsx(Do,{reconciliation:o,selectedDrawerAccountId:u.selectedAccountId,onClose:u.closePanel,onFetchLinkTokenClick:S,onEstablishConnectionClick:m})},[u.isOpen,u.selectedAccountId,u.closePanel,o,S,m]),r=a.useMemo(()=>({reconPanelContent:y,reconSidePanelIsOpen:u.isOpen,closeReconSidePanel:u.closePanel}),[y,u.isOpen,u.closePanel]),B=a.useContext(Et),h=a.useMemo(()=>u.isOpen?{closePanel:u.closePanel,selectedItemId:u.selectedAccountId}:B,[u.isOpen,u.closePanel,u.selectedAccountId,B]);return C.jsx(Et.Provider,{value:h,children:C.jsx(A,{...E,...r})})};return f.displayName=`withReconSidePanel(${i})`,f}(({closeSidePanel:t,openTransactionPanel:i,panelContent:A,sidePanelIsFullView:f,sidePanelIsOpen:E,reconPanelContent:g,reconSidePanelIsOpen:u,closeReconSidePanel:o})=>{const{isAiCfoOpen:v,setIsAiCfoOpen:S}=go(),m=Co(),{isOpen:y}=So(),r=wt(),B=Ge(),h=ce(),{isAiCfoAccessEnabled:T,onAskAiCfoClick:I}=qt({mobileExploreReferrer:"Transaction categorization"}),d=a.useCallback(()=>{E===!0&&f!==!0&&t?.()},[t,E,f]),{areTenantIdsInSync:R}=zt(),Y=(()=>{const c=U(G=>pe(G)),j=Ge(),{currentSelectedViewFetchState:J,currentSelectedView:V,selectedPeriod:F}=c,he=$e(V),Z=$e(J.fetchState),be=a.useCallback(G=>{const K=j.state?.referrer;V==="transaction_categorization"&&(c.selectedTransactionCategorizationTab==="review"?L.trackTransactionsReviewPage(F.month,F.year,c.transactionView.totalCountByTab.review,0,G,K??null):L.trackTransactionsAutoCategorisedPage(F.month,F.year,c.transactionView.totalCountByTab.autoCategorized,0,G,K??null)),V==="missing_receipts"&&L.trackMissingReceiptsPage(F.month,F.year,G,c.missingReceipts.transactions.length,K??null),V==="je_schedules"&&L.trackMonthCloseScheduleListPage(F.month,F.year,G,c.jeSchedules.draftSchedules.length,c.jeSchedules.resolveSchedules.length,K??null),V==="flux_analysis"&&L.trackFluxAnalysisPage(F.month,F.year,G,Fo(c.fluxAnalysis),K??null),V==="month_end_insights"&&c.auditSummary?.auditScorePercentage!=null&&L.trackInsightsEmailPage(F.month,F.year,G,"draft",c.auditSummary.auditScorePercentage,null,K??null)},[F,c]);return a.useEffect(()=>{Z===J.fetchState&&V===he||J.fetchState!=="Completed"||be(!1)},[V,J.fetchState,he]),be})(),te=Io(),[O,_]=a.useState(!1),e=U(c=>dt(c)),n=U(c=>Re(c)),[s,l]=a.useState(!1),[k,p]=a.useState(!1),[b,P]=a.useState([]),[M,w]=a.useState(void 0),$=a.useCallback(c=>{c!=null&&(v&&S(!1),m(),d()),w(c)},[d,v,m,S]),Ie=a.useCallback(()=>{m(),w(void 0),d(),I()},[d,I,m]),fe=a.useRef(v);a.useEffect(()=>{v===!0&&fe.current===!1&&(m(),w(void 0),d()),fe.current=v},[d,v,m]);const ke=a.useRef(y);a.useEffect(()=>{y===!0&&ke.current===!1&&(v&&S(!1),w(void 0),E===!0&&f!==!0&&t?.()),ke.current=y},[t,y,v,S,f,E]);const ne=E===!0&&f!==!0,q=a.useRef(ne);a.useEffect(()=>{ne&&!q.current&&(v&&S(!1),m(),w(void 0)),q.current=ne},[v,ne,m,S]);const[Je,Nt]=a.useState(!1),Ye=a.useRef(!1),{selectedTab:Ke}=rt(),{tenantEmailDomain:Jt}=rt(),[_e,We]=a.useState(B.state?.message==="comingFromTransactionDetail"),He=B.state?.message==="comingFromOverview",Yt=fo(),Me=Be.getSignedInUser(),{useDynamicConfig:Kt,useFeatureGate:Ee}=Lt(),{configValue:Wt}=Kt(ko.enableUncategorizedExpenseCategory),H=Wt?.uncategorized_expense_category_enabled===!0,{isFeatureEnabled:Xe}=Ee(Ce.isRealtimeInsightsFeatureEnabled),{isFeatureEnabled:le}=Ee(Ce.isMissingReceiptsBulkUploadEnabled),{isFeatureEnabled:Ze}=Ee(Ce.isTransactionActivityEnabled),{isFeatureEnabled:Ht}=Ee(Ce.isExpenseAutomationCommentingEnabled),Xt=a.useCallback(c=>{const j=Qe(c.view==="reconciliation"?"bill":"expense");i?.(c.entityId,j)},[i]),Zt=U(c=>_a(c,"common")),z=U(c=>pe(c)),{monthEndCloseChecksView:N,currentSelectedView:x,selectedPeriod:D,selectedTransactionCategorizationTab:ae,currentSelectedViewBackgroundRefreshFetchState:en,currentSelectedViewFetchState:X,jeSchedules:Ve,reconciliation:tn}=z;a.useEffect(()=>{x==="transaction_categorization"&&E!==!0||$(void 0)},[x,$,E]);const ve=a.useRef(null);a.useEffect(()=>{ve.current!==null?ve.current!==ae&&(ve.current=ae,x==="transaction_categorization"&&$(void 0)):ve.current=ae},[x,ae,$]);const nn=U(c=>M==null?void 0:Ma(c.transactionState,M)),oe=nn?.qboId,an=U(c=>oe==null?void 0:Va(c,oe));a.useEffect(()=>{oe!=null&&h(Oa(oe))},[h,oe]);const{selectedAccountId:re}=tn,et=$e(Ve.accountSettingsView.saveState.fetchState),on=U(c=>ja(c.accountState,c.accountListState,"accountList")),sn=U(c=>La(c)),de=Ke!=null?za(Ke):x,cn=U(c=>c.entityAutoCompleteState.autoCompleteText.common);if(Gt({isDataReady:X.fetchState==="Completed"}),Me==null)throw Error("Can't access expense automation screen without signing in...");const tt=Mt(D),ue=Ue(tt.start),me=Ue(tt.end);if(ue==null||me==null)throw Error(`Invalid start - ${ue} and end - ${me} period from given ${D}`);const ln=a.useCallback(()=>{l(!1)},[]),rn=a.useCallback(()=>{p(!0)},[]),dn=a.useCallback(c=>{P(c),p(!1)},[]),un=a.useCallback(()=>{P([])},[]),ye=z.missingReceipts.bulkUpload.phase,nt=z.missingReceipts.bulkUpload.currentBatchId;a.useEffect(()=>{le===!0&&x==="missing_receipts"&&ye==="matching"&&nt!=null&&h(jt({cacheOverride:!0}))},[le,x,ye,nt,h]);const at=Me?.userId,mn=D.month,hn=D.year,ot=n?.tenantId;a.useEffect(()=>{x==="missing_receipts"&&le!==!1&&ye==="idle"&&at!=null&&ot!=null&&h($a())},[x,le,ye,at,ot,mn,hn,h]),a.useEffect(()=>{e.newVendorState?.vendorDetailLocalData?.vendorName!=null?_(!0):_(!1)},[e.newVendorState?.vendorDetailLocalData?.vendorName]),a.useEffect(()=>{de!=null&&x!==de&&h(Vt(de))},[de]),a.useEffect(()=>{Je!==!1||X.fetchState!=="Completed"&&X.fetchState!=="Error"||!R||(Nt(!0),h(It(!1,!1,H)))},[Je,X,R,H]),a.useEffect(()=>{!He&&R&&(h(It(!1,!1,H)),h(ie(D,re,!1,!1)))},[D.month,D.year,R,H]);const st=a.useCallback((c=!1,j=!1)=>{const J={start:ue,end:me};switch(x){case"transaction_categorization":h(ge(ae,J,c,!_e,void 0,void 0,j,void 0,H)),We(!1);break;case"flux_analysis":h(we(D,c,j,null));break;case"month_end_insights":if(j===!1){const V=new Date(D.year,D.month,0),F=Ga(V.toDateString()).format(Qt.analytics.YYYYDashMMDashDDFormat);h(Qa(!0,n.companyId,n.tenantId,F)),h(Na(n.companyId,n.tenantId))}break;case"je_schedules":h(qa(J,j));break;case"missing_receipts":h(Ot(J,{amount:75,currencyCode:"USD",currencySymbol:"$"},c,j));break;default:h(ie(D,re,c,j))}},[x,ue,me,n.companyId,n.tenantId,ae,D,re,_e,We,H]);a.useEffect(()=>{x===de&&X.fetchState==="Not-Started"&&R&&st(!0)},[X,ue,me,n.companyId,n.tenantId,R]),a.useEffect(()=>{He||_e||Ye.current||en.fetchState==="In-Progress"||X.fetchState!=="Completed"||(Ye.current=!0,st(!0,!0))},[]),a.useEffect(()=>{N.fetchState!=="In-Progress"&&N.fetchState!=="Completed"&&h(Se({tenantId:n.tenantId,period:D,refreshViewInBackground:!1}))},[N.fetchState,n.tenantId]),a.useEffect(()=>{z.monthEndInsights?.previewMonthEndReportStatus?.fetchState==="Completed"?l(!0):l(!1)},[z.monthEndInsights?.previewMonthEndReportStatus?.fetchState]),a.useEffect(()=>{z.monthEndInsights?.sendMonthEndReportStatus?.fetchState==="Completed"&&R&&(h(Se({tenantId:n.tenantId,period:D,refreshViewInBackground:!0})),h(Ja({companyId:n.companyId})),r("../"))},[z.monthEndInsights?.sendMonthEndReportStatus?.fetchState,n.tenantId,D,n.companyId,R]),a.useEffect(()=>{const c=setInterval(()=>{N.fetchState!=="In-Progress"&&N.fetchState==="Completed"&&h(Se({tenantId:n.tenantId,period:D,refreshViewInBackground:!0}))},3e5);return()=>clearInterval(c)},[N.fetchState,n.tenantId,D,h]),a.useEffect(()=>{const c=setInterval(()=>{x==="reconciliation"&&re==null&&z.reconciliation.fetchStatus.fetchState==="Completed"&&z.reconciliation.refreshStatus.fetchState!=="In-Progress"&&h(ie(D,void 0,!0,!0))},3e5);return()=>clearInterval(c)},[x,h,z.reconciliation.fetchStatus.fetchState,z.reconciliation.refreshStatus.fetchState,ie,re,D]);const pn=vt();a.useEffect(()=>{const c=(N.monthEndCloseChecks?.monthEndCloseCheckList.find(j=>j.id==="month_end_insights")?.isDisabled??!1)&&!Xe;x!=="month_end_insights"||!c&&N.monthEndCloseChecks?.reportEmailSentDate==null||r("../")},[x,N.monthEndCloseChecks]);const gn=u===!0?g:A,Cn=u===!0||E===!0,Sn=u===!0?o:t;a.useEffect(()=>{et==="In-Progress"&&Ve.accountSettingsView.saveState.fetchState==="Completed"&&h(ft())},[et,Ve.accountSettingsView.saveState.fetchState,ft]);const{transactionId:ct,onSaveVendor:In,onSaveSuccess:fn,onCancel:kn,vendorViewDetails:En}=(({expenseAutomationViewSelector:c,closeDrawerHandler:j,currentSelectedView:J})=>{const V=ce();let F,he,Z;const be=vt(),G=c.transactionView;let K=()=>{};const{transactions:vn,selectedTransactionId:se,selectedTransactionLineId:Ae,transactionLocalData:yn}=G;if(J==="transaction_categorization"){const Oe=yn.find(ee=>ee.transactionId===se),Q=vn.find(ee=>ee.id===se),it=Ae!=null?Oe?.transactionReviewLocalData?.lineItemById[Ae]:void 0,lt=it?.account;he=it?.class?.classId,F=["Uncategorized Income","Uncategorized Expense"].includes(lt?.accountName??"")?void 0:lt?.accountId;const An=To(se,Q?.typeOfTransaction);Q!=null&&An&&(Z={id:se,type:Qe(Q.typeOfTransaction)}),K=()=>{if(se!=null&&Ae!=null&&Q!=null){const ee=G.transactionLocalData.find(Te=>Te.transactionId===se)?.transactionReviewLocalData;if(ee!=null&&Q.lines!=null&&Q.lines.length>0){const Te=ee.lineItemById[Ae];let je=ee.selectedEntity;if(Gn(Q)||(je=Te.selectedEntityLine),je!=null){const Tn=je,Pn={transactionId:{id:Q.id,type:Q.type},transaction:Q,lineIds:Q.lines.map(wn=>wn.id)??[]};V(Ne(Tn,Te.amount.amount,Pn,!1,!0,be))}}}}}const bn=U(Oe=>dt(Oe,void 0,F,he));return{transactionId:Z,onSaveVendor:()=>{V(qn(Z,void 0,!1,!0))},onSaveSuccess:K,onCancel:()=>{Z!=null&&V(Ln({transactionId:Z})),V(zn()),V($n()),j()},vendorViewDetails:bn}})({expenseAutomationViewSelector:z,closeDrawerHandler:()=>{_(!1)},currentSelectedView:x});return Yt?.loggedInUserRoleMap==null?N.fetchState==="Error"?C.jsx(Eo,{onGoHome:()=>r("../",{replace:!0}),onReload:()=>window.location.reload()}):C.jsx($t,{fetchState:"In-Progress"}):C.jsxs(C.Fragment,{children:[C.jsx(wo,{isOpen:k,drawerLeftMargin:new vo(0,0,300,650),onClose:()=>{p(!1)},children:C.jsx(Oo,{onClick:c=>c.stopPropagation(),children:C.jsx(Uo,{companyId:n.companyId,closeCustomerRequestDrawer:()=>p(!1),addCustomerRequest:dn,resetCustomerRequest:un})})}),ct!=null&&O&&C.jsx(bo,{isOpen:O,transactionId:ct,onSaveVendor:In,onSaveSuccess:fn,onCancel:kn,vendorViewDetails:En}),C.jsx(Mo,{navigate:r,location:B,themeState:te,vendorSearchAutoCompleteData:{autoCompleteText:cn,entityAutoCompleteView:Zt},expenseAutomationViewSelector:z,isMissingReceiptsBulkUploadEnabled:le,monthEndInsightsPreviewMode:s,monthEndInsightsCustomerRequestData:b,isRealtimeInsightsFeatureEnabled:Xe,isUncategorizedExpenseCategoryEnabled:H,isAccountingClassesEnabled:sn,isCOTEnabled:pn,currentTenant:n,companyId:n.companyId,signedInUser:Me,isTransactionActivityEnabled:Ze,activityLogTransactionId:x==="transaction_categorization"?M:void 0,activityLogPanel:x==="transaction_categorization"&&Ze===!0&&M!=null?C.jsx(yo,{activityLogView:an,qboId:oe,onClose:()=>$(void 0),selectedTransactionId:M},String(M)):null,uncategorizedAccounts:on,onClickCustomerRequest:rn,handleEditClick:ln,tenantEmailDomain:Jt,trackExpenseAutomationTabAnalytics:Y,setActivityLogTransactionId:$,closeSidePanel:Sn,openTransactionPanel:i,sidePanelIsOpen:Cn,sidePanelIsFullView:u!==!0&&f,panelContent:gn,isAiCfoAccessEnabled:T,onAskAiCfoClick:Ie,isExpenseAutomationCommentingEnabled:Ht,onExpenseAutomationCommentingThreadClick:Xt,sidePanelListPercent:u===!0?66:void 0})]})})),Oo=Fe(Rn)`
|
|
21
|
+
`;function Uo({companyId:t,closeCustomerRequestDrawer:i,addCustomerRequest:P,resetCustomerRequest:f}){const E=Be.getSignedInUser();if(E==null)throw Error("Can't access Customer Request page without signing in...");const g=U(u=>jn(u,t,E));return a.useEffect(()=>{f()},[]),C.jsx(C.Fragment,{children:g.fetchState==="In-Progress"||g.companyMonthEndReportTemplatesData.fetchState==="In-Progress"?C.jsx($t,{fetchState:"In-Progress"}):C.jsx(ro,{onCloseClick:i,addCustomerRequest:P,snippets:g.companyMonthEndReportTemplatesData,bulletPoints:g.zeniRequestsData??[]})})}const Fo=t=>t.sections.generalExpense.vendors.length+t.sections.reimbursement.vendors.length,{common:{strings:{hyphen:Bo,comma:Pt,space:_o}},dateFormat:Jt}=uo.getLocalizedStrings(),At=so,Mo=Dn(function(t,i){const{uncategorizedAccounts:P,vendorSearchAutoCompleteData:f,monthEndInsightsCustomerRequestData:E,monthEndInsightsPreviewMode:g,companyId:u,isMissingReceiptsBulkUploadEnabled:o,isTransactionActivityEnabled:v}=i,S=Be.getSignedInUser(),m=t.tenantState.currentTenantId,y={userId:S?.userId??"",sessionId:S?.zeniSessionId??"",tenantId:m??""},r=pe(t),{selectedTransactionCategorizationTab:B}=r;return{expenseAutomationViewSelector:r,bulkUploadSelector:o===!0?r.missingReceipts.bulkUpload:void 0,vendorSearchAutoCompleteData:f,authParams:y,receiptUploadEndpoint:`${xe.accountMicroServiceBaseUrl}`,transactionAttachmentsEndpoint:`${ho}/transaction_attachments`,bulkUploadEndpoint:o===!0?`${xe.communicationAgentMicroServiceBaseUrl}/1.0/receipts/bulk-upload`:void 0,isDisabled:!1,currentTab:B,monthEndInsightsCustomerRequestData:E,monthEndInsightsPreviewMode:g,allThreadsSectionOpen:!1,enableMonthEndInsightsZeniGPTFeature:!1,loggedInUser:S,uncategorizedAccounts:P,companyId:u,isTransactionActivityEnabled:v}},function(t,i){const{themeState:P,isAccountingClassesEnabled:f,isCOTEnabled:E,isUncategorizedExpenseCategoryEnabled:g,isMissingReceiptsBulkUploadEnabled:u,location:o,vendorSearchAutoCompleteData:v,expenseAutomationViewSelector:S,currentTenant:m,uncategorizedAccounts:y,navigate:r,onClickCustomerRequest:B,handleEditClick:h,setActivityLogTransactionId:A}=i,{selectedPeriod:I,currentSelectedView:d,reconciliation:{selectedAccountId:R}}=S,{accountSettingsView:K}=S.jeSchedules,te=Mt(I),V=Ue(te.start),_=Ue(te.end);return{onZeniLogoClick:()=>{P.toggle()},onUploadReceiptAttachment:e=>{z.trackMissingReceiptAttached(I.month,I.year),t(Ba(e))},onUploadTransactionReceipt:(e,n,s,l,k,p)=>{t(St(e,n,{fetchState:"In-Progress"}));const b=()=>t(St(e,n,{fetchState:"Error"}));po(`${xe.accountMicroServiceBaseUrl}/1.0/transactions/${n}/attachments`,p,n,s,l,k).then(T=>{T!=null?t(Fa(e,T)):b()}).catch(b)},onMissingReceiptsRowClick:(e,n)=>{if(i.openTransactionPanel)return void i.openTransactionPanel(e,n);const s=H(o.state?.pathnameStackToGoBack,o.pathname);r(`../../transaction/${n}/${e}`,{state:{pathnameStackToGoBack:s,message:"expenseAutomation",origin:"missing_receipts"}})},onUploadReceiptComplete:(e,n)=>{t(Ua(e,n)),m!=null&&t(Se({tenantId:m.tenantId,period:n,refreshViewInBackground:!0}))},onUploadReceiptFetchStatus:(e,n,s,l)=>{t(Da(e,{fetchState:n,error:s})),s!=null&&t(gt({messageSection:"missing_receipts_attachment",messageText:"failed",type:"error",showStatusIcon:!0,variables:[{variableName:"__message__",variableValue:l!=null?_o+Bo+l+Pt:Pt}]}))},onUpdateJESchedulesUIState:e=>{t(Ra(e))},onUpdateMissingReceiptsUIState:e=>{t(xa(e))},onFetchMissingReceiptsList:()=>{_!=null&&V!=null&&t(Vt({start:V,end:_},{amount:75,currencyCode:"USD",currencySymbol:"$"},!0,!1))},...u===!0?{onBulkUploadFiles:e=>{t(oo(e))},onBulkUploadProgress:e=>{t(ao(e))},onBulkUploadSuccess:e=>{t(no({batchId:e}))},onBulkUploadUploadedFileCount:e=>{t(to(e))},onConfirmBulkUploadMatch:(e,n,s,l,k)=>{t(eo(e,n,s,l,k))},onBulkUploadConfirmMatchAcknowledged:()=>{t(Xa())},onSetBulkUploadResultsTab:e=>{t(Za(e))},onSetBulkUploadCompletedSubTab:e=>{t(Wa(e))},onSetBulkUploadSortConfig:(e,n)=>{t(kt({sortKey:e,sortOrder:n}))},onClearBulkUpload:()=>{t(Ha())},onSearchTransactionsForManualMatch:(e,n)=>{t(At(e,n??void 0))},onLoadMoreManualSearch:()=>{const{manualSearch:e}=S.missingReceipts.bulkUpload;e.nextPageToken!=null&&e.searchQuery!==""&&t(At(e.searchQuery,e.nextPageToken))},onFetchCompletedTransactions:(e,n)=>{t(Qa(e,n))},onFetchBulkUploadBatches:e=>{t(jt(e))},onFetchMoreBatchDetails:()=>{t(Ka())},onResetBulkUploadSort:()=>{t(kt({sortKey:void 0,sortOrder:void 0}))}}:{},onClearMissingReceiptsTabNavigation:()=>{t(wa())},onSearchTextChanged:e=>{const n=S.currentSelectedView,s=S.selectedTransactionCategorizationTab;n==="transaction_categorization"&&(t(Le({selectedTab:s,uiState:{searchString:e}})),_!=null&&V!=null&&t(ge(s,{start:V,end:_},!0,!1,e,void 0,!0)))},onRefresh:()=>{i.trackExpenseAutomationTabAnalytics(!0),t(Ta(g))},onClose:()=>{d==="reconciliation"&&R!=null&&t(Ct({selectedAccountId:void 0})),r("../")},onBack:()=>{d==="reconciliation"&&R!=null&&t(Ct({selectedAccountId:void 0}))},onSaveReconciliation:e=>{t(Aa(e))},onSaveReconciliationReview:e=>{t(Pa(e))},onUpdateStep:e=>{const{selectedPeriod:n}=S,s=H(o.state?.pathnameStackToGoBack,o.pathname);r(`../${e}/${n.month}-${n.year}`,{state:{pathnameStackToGoBack:s,referrer:S.currentSelectedView}}),t(Ot(e))},handleLogOutClick:()=>{const e=H(o.state?.pathnameStackToGoBack,o.pathname);r("/signout",{replace:!0,state:{pathnameStackToGoBack:e,message:"logout"}})},onJeAccountSettingsChange:e=>{const{vendorsAccountSection:n}=e,{prepaidExpensesAccount:s,fixedAssetsAccount:l,accruedExpensesAccount:k}=n,p=Ge(K.prepaidExpensesAccountList,s.selectedOptions),b=Ge(K.fixedAssetsAccountList,l.selectedOptions),T=Ge(K.accruedExpensesAccountList,k.selectedOptions),M={selectedPrepaidExpensesAccountIds:p.map(w=>w.accountId),selectedFixedAssetsAccountIds:b.map(w=>w.accountId),selectedAccruedExpensesAccountIds:T.map(w=>w.accountId)};t(ba({data:M}))},onSaveJeAccountSettingsClick:()=>{t(ya())},onJESchedulesFormDataChange(e,n){const{jeScheduleID:s,accumulatedDepreciationCategory:l,scheduleClass:k,scheduleExpenseCategory:p,vendor:b}=n,{allAccountList:T,allClassList:M,allDepreciationAccountList:w}=S.jeSchedules,$=v.entityAutoCompleteView.vendor.length>0?v.entityAutoCompleteView.vendor.find(G=>G.id===b?.selectedOption):void 0,Ie={id:$?.zeniId??b?.selectedOption??"",name:$?.name??b?.defaultOptions.find(G=>G.value===b?.selectedOption)?.label??"",logo:$?.logo},fe=p?.selectedOption!=null?T.find(G=>G.qboId===p.selectedOption):void 0,ke=k?.selectedOption!=null?M.find(G=>G.classId===k.selectedOption):void 0,ne=l?.selectedOption!=null?w.find(G=>G.qboId===l.selectedOption):void 0;t(va({scheduledJournalEntryID:e,localData:{jeScheduleID:s,scheduledJournalEntryID:e,updatedCategoryId:fe?.accountId,updatedClassId:ke?.classId,updatedAccumulatedDepreciationCategoryID:ne?.accountId,updatedVendor:{id:Ie.id,name:Ie.name}}}))},ignoreRecommendedJeSchedule(e,n){t(Ea(e,n))},vendorSearchAutoCompleteActions:{onAutoCompleteInputChange:(e,n)=>{e.trim().length>=2?t(ut({searchString:e,entityType:n,searchOrigin:"common"})):e.trim().length===0&&t(Te("common"))},onCancelAutoComplete:()=>{t(Te("common"))}},onPostJESchedule(e,n){t(ka({scheduledJournalEntryID:e,jeScheduleTransactionKey:n}))},clearJeScheduleLocalData(){t(fa())},handleJeScheduleClick:(e,n,s)=>{t(Ia({selectedJEScheduleKey:n}));const l=H(o.state?.pathnameStackToGoBack,o.pathname);r(`../../vendors/schedules/${s}/details/${e}`,{state:{pathnameStackToGoBack:l,message:"expenseAutomation",origin:"je_schedules"}})},improveMonthEndInsightsUsingZeniGPTClick:e=>{m!=null&&t(Sa(e,m.companyId,m.tenantId))},onClickCustomerRequest:B,setActivityLogTransactionId:A,onCloseAllThreadsSection:()=>{},onCloseFileAttachmentSnackBar:()=>{t(Ca())},onOpenFileAttachmentSnackBar:()=>{t(gt({messageSection:"cockpit_month_end_email_attachment_upload",messageText:"failed",type:"error",showStatusIcon:!0}))},onRemoveFileAttachment:e=>{t(ga(e))},onUpdateFileAttachment:e=>{t(pa({files:e}))},previewMonthEndReport:(e,n,s,l)=>{m!=null&&t(pt(e,m.companyId,n,!0,s,l,m.tenantId))},saveMonthEndReport:(e,n,s,l)=>{m!=null&&t(pt(e,m.companyId,n,!1,s,l,m.tenantId))},onEditMonthEndInsightsClick:h,sendMonthEndReport:e=>{const n=o.state?.referrer,{selectedPeriod:s,auditSummary:l}=S;m!=null&&l?.auditScorePercentage!=null&&(t(ma(m.companyId,e,m.tenantId)),z.trackInsightsEmailPage(s.month,s.year,!1,"draft",l.auditScorePercentage,ha().format(Jt.analytics.MMMDDCommaYYYYformat),n??null))},onTransactionCategorizationRowClick:(e,n)=>{if(i.openTransactionPanel)return void i.openTransactionPanel(e,n);const s=H(o.state?.pathnameStackToGoBack,o.pathname);r(`../../transaction/${n}/${e}`,{state:{pathnameStackToGoBack:s,message:"expenseAutomation",origin:"transaction_categorization"}})},setLocalDataForCategoryAndClass:(e,n,s,l,k,p,b,T,M,w,$)=>{t(ua(e,n,s,l,y,k,p,b,T,M,w,$,f))},onCancelAutoComplete:()=>{t(Te("common"))},updateExpenseAutomationReconListScrollPosition:e=>{t(mt({scrollPosition:e}))},onUpdateTab:e=>{i.closeSidePanel?.(),_!=null&&V!=null&&(t(ge(e,{start:V,end:_},!1,!1)),t(da(e)))},onUpdateTransactionCategorizationUIState:(e,n)=>{t(Le({selectedTab:e,uiState:n})),_!=null&&V!=null&&t(ge(e,{start:V,end:_},!1,!1,n.searchString,null,!0))},onUpdateScrollYOffSetTransactionCategorizationUIState:(e,n)=>{t(Le({selectedTab:e,uiState:n}))},onFetchTransactionCategorizationList:(e,n,s,l,k,p,b)=>{_!=null&&V!=null&&t(ge(e,{start:V,end:_},!0,s,n,l,k,p,b))},resetTransactionCategorizationLocalData:(e,n,s,l,k,p,b,T)=>{t(ra(e,n,s,l,T??null,k,p,!1,b))},updateSelectedVendorForTransaction:(e,n,s,l,k)=>{t(ht({selectedTab:e,transactionId:n,lineId:s,selectedTransaction:l,uncategorizedAccounts:y,updatedVendor:k,isAccountingClassesEnabled:f}))},onSaveUpdateTransactionCategorization:(e,n,s)=>{const l=o.state?.referrer;e==="autoCategorized"?z.trackTransactionsAutoCategorisedPage(I.month,I.year,S.transactionView.totalCountByTab.autoCategorized,n.length,!1,l??null):z.trackTransactionsReviewPage(I.month,I.year,S.transactionView.totalCountByTab.review,n.length,!1,l??null),t(la(e,n,s,g))},onUpdateSelectedCheckboxTransactionIds:(e,n)=>{t(ia({selectedTab:e,transactionIds:n}))},onFetchRecommendationsForEntityCategorizationWithCustomer:(e,n,s,l,k,p,b)=>{const{transactionId:T,transaction:M,lineIds:w}=n;p!=null&&t(sa({transactionId:T,customerUpdates:p})),t(ca({selectedTab:l,transactionId:T.id,lineId:w[0],selectedTransaction:M,uncategorizedAccounts:y,updatedCustomer:p,selectedEntity:k,isAccountingClassesEnabled:f,isUncategorizedExpenseCategoryEnabled:b})),k!=null&&t(Ne(k,e,n,s,!0,E,b))},onFetchRecommendationsForEntityCategorization:(e,n,s,l,k,p,b)=>{const{transactionId:T,transaction:M,lineIds:w}=n;p!=null&&(t(na({transactionId:T,vendorUpdates:{name:p.name,id:p.id?p.id:void 0}})),t(aa({vendorId:p.id?p.id:void 0,localData:{vendorName:p.name,vendorId:p.id?p.id:void 0}}))),p?.id?(t(ht({selectedTab:l,transactionId:T.id,lineId:w[0],selectedTransaction:M,uncategorizedAccounts:y,updatedVendor:p,selectedEntity:k,isAccountingClassesEnabled:f,isUncategorizedExpenseCategoryEnabled:b})),k!=null&&t(Ne(k,e,n,s,!0,E,b))):t(oa({selectedTab:l,transactionId:T.id,lineId:w[0]}))},fetchFluxViewOnScroll:(e,n)=>{t(we(e,!0,!1,n,!1,!0))},onFetchFluxViewList:()=>{t(we(I,!0,!1,null,!1,!1))},markAsReview:(e,n,s,l)=>{z.trackFluxAnalysisReviewed(s.month,s.year,l??!1,e),t(ta(n,e,s,l??!1))},onUpdateFluxAnalysisUIState:e=>{t(ea(e))},updateOperatingExpensesIdsForReview:e=>{t(Xn({operatingExpenseIds:e,selectedPeriod:I}))},redirectToVendorDetailPage:e=>{if(i.tenantEmailDomain!=null){const n=To(e.id,e.qboId,i.tenantEmailDomain),s=H(i.location.state?.pathnameStackToGoBack,i.location.pathname);i.navigate(n,{state:{pathnameStackToGoBack:s,message:"expenseAutomation",referrer:"Vendor List",origin:"flux_analysis"}})}},updateSectionIdsForReview:e=>{t(Zn({sectionId:e,selectedPeriod:I}))},onFetchReimbursementView:(e,n,s)=>{t(we(e,!0,!1,n,!0,s))},onReviewClicked:e=>{t(ie(I,e))},setOpenDrawerClicked:e=>{t(De({selectedDrawerAccountId:e}))},onFetchLinkTokenClick:(e,n)=>{t(Ft("expense_automation_reconcile",e,n))},onEstablishConnectionClick:(e,n)=>{const s=m?.companyId;s!=null&&(t(Bt(e,s,"expense_automation_reconcile",void 0,"link_account_no_microdeposit",n)),t(_t({accountId:n,connectionInProgress:!0})))},onAddStatementClick:e=>{t(De({selectedDrawerAccountId:e})),t(Ut({accountId:e,selectedPeriod:I,localData:{accountSource:"bank_statement"}})),t(Dt({statementUploadChosen:!0}))},onReloadReconciliationListPage:()=>{t(ie(I,void 0,!0,!1))},onUpdateReconcileTabLocalData:e=>{t(Wn({selectedTransactionIds:e}))},onReconTabColumnSortConfigChanged:(e,n)=>{t(Hn({sortKey:e,sortOrder:n}))},onReconReviewTabColumnSortConfigChanged:(e,n)=>{t(Qn({sortKey:e,sortOrder:n}))},onReconTabUpdate:e=>{i.closeSidePanel?.(),t(Kn({selectedTab:e}))},updateReconReviewTabLocalData:(e,n,s)=>{const l=e.vendor?.id;s&&l!=null&&t(Nn(l)),t(Yn({data:e,transactionId:n}))},onReconMatchedTransactionClick:e=>{if(i.openTransactionPanel)return void i.openTransactionPanel(e,Je("bill"));const n=H(o.state?.pathnameStackToGoBack,o.pathname);r(`../../transaction/bill/${e}`,{state:{pathnameStackToGoBack:n,message:"expenseAutomation",origin:"reconciliation"}})},onReloadPage:()=>{window.location.reload()},onBackClick:()=>{r(-1)},onReconListPageScroll:e=>{t(mt({scrollPosition:e}))},onVendorAutoCompleteInputChange:e=>{e.trim().length>=2?t(ut({searchString:e,searchOrigin:"common"})):e.trim().length===0&&t(Te("common"))},onReconNodeCollapseToggled:(e,n)=>{t(Jn({nodeId:e,collapsed:n}))},updateSectionCollapseStatus:()=>{},onExcludeAccountFromReconciliation:e=>{t(xt({accountId:e}))},onIncludeAccountIntoReconciliation:e=>{t(Rt({accountId:e}))}}},(t,i,P)=>{const{isMissingReceiptsBulkUploadEnabled:f,...E}=P;return function(g,u,o){return{...g,...u,...o,onUploadTransactionReceipt:(v,S,m,y,r)=>{u.onUploadTransactionReceipt(v,S,m,y,r,g.authParams)}}}(t,i,E)})(mo),Oo=Po(function(t){const i=t.displayName??t.name??"Component",P=Tt.memo(t),f=E=>{const g=ce(),u=function(){const A=ce(),I=U(d=>pe(d).reconciliation.selectedDrawerAccountId);return{isOpen:I!=null,selectedAccountId:I,openPanel:a.useCallback(d=>{A(De({selectedDrawerAccountId:d}))},[A]),closePanel:a.useCallback(()=>{A(De({selectedDrawerAccountId:void 0}))},[A])}}(),o=U(A=>pe(A).reconciliation),v=U(A=>Re(A)),S=a.useCallback((A,I)=>{g(Ft("expense_automation_reconcile",A,I))},[g]),m=a.useCallback((A,I)=>{const d=v?.companyId;d!=null&&(g(Bt(A,d,"expense_automation_reconcile",void 0,"link_account_no_microdeposit",I)),g(_t({accountId:I,connectionInProgress:!0})))},[g,v?.companyId]),y=a.useMemo(()=>{if(u.isOpen&&u.selectedAccountId!=null)return C.jsx(Do,{reconciliation:o,selectedDrawerAccountId:u.selectedAccountId,onClose:u.closePanel,onFetchLinkTokenClick:S,onEstablishConnectionClick:m})},[u.isOpen,u.selectedAccountId,u.closePanel,o,S,m]),r=a.useMemo(()=>({reconPanelContent:y,reconSidePanelIsOpen:u.isOpen,closeReconSidePanel:u.closePanel}),[y,u.isOpen,u.closePanel]),B=a.useContext(Et),h=a.useMemo(()=>u.isOpen?{closePanel:u.closePanel,selectedItemId:u.selectedAccountId}:B,[u.isOpen,u.closePanel,u.selectedAccountId,B]);return C.jsx(Et.Provider,{value:h,children:C.jsx(P,{...E,...r})})};return f.displayName=`withReconSidePanel(${i})`,f}(({closeSidePanel:t,openTransactionPanel:i,panelContent:P,sidePanelIsFullView:f,sidePanelIsOpen:E,reconPanelContent:g,reconSidePanelIsOpen:u,closeReconSidePanel:o})=>{const{isAiCfoOpen:v,setIsAiCfoOpen:S}=go(),m=Co(),{isOpen:y}=So(),r=wt(),B=qe(),h=ce(),{isAiCfoAccessEnabled:A,onAskAiCfoClick:I}=Gt({mobileExploreReferrer:"Transaction categorization"}),d=a.useCallback(()=>{E===!0&&f!==!0&&t?.()},[t,E,f]),{areTenantIdsInSync:R}=Lt(),K=(()=>{const c=U(q=>pe(q)),j=qe(),{currentSelectedViewFetchState:Y,currentSelectedView:O,selectedPeriod:F}=c,he=$e(O),X=$e(Y.fetchState),be=a.useCallback(q=>{const Q=j.state?.referrer;O==="transaction_categorization"&&(c.selectedTransactionCategorizationTab==="review"?z.trackTransactionsReviewPage(F.month,F.year,c.transactionView.totalCountByTab.review,0,q,Q??null):z.trackTransactionsAutoCategorisedPage(F.month,F.year,c.transactionView.totalCountByTab.autoCategorized,0,q,Q??null)),O==="missing_receipts"&&z.trackMissingReceiptsPage(F.month,F.year,q,c.missingReceipts.transactions.length,Q??null),O==="je_schedules"&&z.trackMonthCloseScheduleListPage(F.month,F.year,q,c.jeSchedules.draftSchedules.length,c.jeSchedules.resolveSchedules.length,Q??null),O==="flux_analysis"&&z.trackFluxAnalysisPage(F.month,F.year,q,Fo(c.fluxAnalysis),Q??null),O==="month_end_insights"&&c.auditSummary?.auditScorePercentage!=null&&z.trackInsightsEmailPage(F.month,F.year,q,"draft",c.auditSummary.auditScorePercentage,null,Q??null)},[F,c]);return a.useEffect(()=>{X===Y.fetchState&&O===he||Y.fetchState!=="Completed"||be(!1)},[O,Y.fetchState,he]),be})(),te=Io(),[V,_]=a.useState(!1),e=U(c=>dt(c)),n=U(c=>Re(c)),[s,l]=a.useState(!1),[k,p]=a.useState(!1),[b,T]=a.useState([]),[M,w]=a.useState(void 0),$=a.useCallback(c=>{c!=null&&(v&&S(!1),m(),d()),w(c)},[d,v,m,S]),Ie=a.useCallback(()=>{m(),w(void 0),d(),I()},[d,I,m]),fe=a.useRef(v);a.useEffect(()=>{v===!0&&fe.current===!1&&(m(),w(void 0),d()),fe.current=v},[d,v,m]);const ke=a.useRef(y);a.useEffect(()=>{y===!0&&ke.current===!1&&(v&&S(!1),w(void 0),E===!0&&f!==!0&&t?.()),ke.current=y},[t,y,v,S,f,E]);const ne=E===!0&&f!==!0,G=a.useRef(ne);a.useEffect(()=>{ne&&!G.current&&(v&&S(!1),m(),w(void 0)),G.current=ne},[v,ne,m,S]);const[Ye,Nt]=a.useState(!1),Ke=a.useRef(!1),{selectedTab:Qe}=rt(),{tenantEmailDomain:Yt}=rt(),[_e,He]=a.useState(B.state?.message==="comingFromTransactionDetail"),We=B.state?.message==="comingFromOverview",Kt=fo(),Me=Be.getSignedInUser(),{useDynamicConfig:Qt,useFeatureGate:Ee}=zt(),{configValue:Ht}=Qt(ko.enableUncategorizedExpenseCategory),W=Ht?.uncategorized_expense_category_enabled===!0,{isFeatureEnabled:Ze}=Ee(Ce.isRealtimeInsightsFeatureEnabled),{isFeatureEnabled:le}=Ee(Ce.isMissingReceiptsBulkUploadEnabled),{isFeatureEnabled:Xe}=Ee(Ce.isTransactionActivityEnabled),{isFeatureEnabled:Wt}=Ee(Ce.isExpenseAutomationCommentingEnabled),Zt=a.useCallback(c=>{const j=Je(c.view==="reconciliation"?"bill":"expense");i?.(c.entityId,j)},[i]),Xt=U(c=>_a(c,"common")),L=U(c=>pe(c)),{monthEndCloseChecksView:N,currentSelectedView:x,selectedPeriod:D,selectedTransactionCategorizationTab:ae,currentSelectedViewBackgroundRefreshFetchState:en,currentSelectedViewFetchState:Z,jeSchedules:Oe,reconciliation:tn}=L;a.useEffect(()=>{x==="transaction_categorization"&&E!==!0||$(void 0)},[x,$,E]);const ve=a.useRef(null);a.useEffect(()=>{ve.current!==null?ve.current!==ae&&(ve.current=ae,x==="transaction_categorization"&&$(void 0)):ve.current=ae},[x,ae,$]);const nn=U(c=>M==null?void 0:Ma(c.transactionState,M)),oe=nn?.qboId,an=U(c=>oe==null?void 0:Oa(c,oe));a.useEffect(()=>{oe!=null&&h(Va(oe))},[h,oe]);const{selectedAccountId:re}=tn,et=$e(Oe.accountSettingsView.saveState.fetchState),on=U(c=>ja(c.accountState,c.accountListState,"accountList")),sn=U(c=>za(c)),de=Qe!=null?La(Qe):x,cn=U(c=>c.entityAutoCompleteState.autoCompleteText.common);if(qt({isDataReady:Z.fetchState==="Completed"}),Me==null)throw Error("Can't access expense automation screen without signing in...");const tt=Mt(D),ue=Ue(tt.start),me=Ue(tt.end);if(ue==null||me==null)throw Error(`Invalid start - ${ue} and end - ${me} period from given ${D}`);const ln=a.useCallback(()=>{l(!1)},[]),rn=a.useCallback(()=>{p(!0)},[]),dn=a.useCallback(c=>{T(c),p(!1)},[]),un=a.useCallback(()=>{T([])},[]),ye=L.missingReceipts.bulkUpload.phase,nt=L.missingReceipts.bulkUpload.currentBatchId;a.useEffect(()=>{le===!0&&x==="missing_receipts"&&ye==="matching"&&nt!=null&&h(jt({cacheOverride:!0}))},[le,x,ye,nt,h]);const at=Me?.userId,mn=D.month,hn=D.year,ot=n?.tenantId;a.useEffect(()=>{x==="missing_receipts"&&le!==!1&&ye==="idle"&&at!=null&&ot!=null&&h($a())},[x,le,ye,at,ot,mn,hn,h]),a.useEffect(()=>{e.newVendorState?.vendorDetailLocalData?.vendorName!=null?_(!0):_(!1)},[e.newVendorState?.vendorDetailLocalData?.vendorName]),a.useEffect(()=>{de!=null&&x!==de&&h(Ot(de))},[de]),a.useEffect(()=>{Ye!==!1||Z.fetchState!=="Completed"&&Z.fetchState!=="Error"||!R||(Nt(!0),h(It(!1,!1,W)))},[Ye,Z,R,W]),a.useEffect(()=>{!We&&R&&(h(It(!1,!1,W)),h(ie(D,re,!1,!1)))},[D.month,D.year,R,W]);const st=a.useCallback((c=!1,j=!1)=>{const Y={start:ue,end:me};switch(x){case"transaction_categorization":h(ge(ae,Y,c,!_e,void 0,void 0,j,void 0,W)),He(!1);break;case"flux_analysis":h(we(D,c,j,null));break;case"month_end_insights":if(j===!1){const O=new Date(D.year,D.month,0),F=qa(O.toDateString()).format(Jt.analytics.YYYYDashMMDashDDFormat);h(Ja(!0,n.companyId,n.tenantId,F)),h(Na(n.companyId,n.tenantId))}break;case"je_schedules":h(Ga(Y,j));break;case"missing_receipts":h(Vt(Y,{amount:75,currencyCode:"USD",currencySymbol:"$"},c,j));break;default:h(ie(D,re,c,j))}},[x,ue,me,n.companyId,n.tenantId,ae,D,re,_e,He,W]);a.useEffect(()=>{x===de&&Z.fetchState==="Not-Started"&&R&&st(!0)},[Z,ue,me,n.companyId,n.tenantId,R]),a.useEffect(()=>{We||_e||Ke.current||en.fetchState==="In-Progress"||Z.fetchState!=="Completed"||(Ke.current=!0,st(!0,!0))},[]),a.useEffect(()=>{N.fetchState!=="In-Progress"&&N.fetchState!=="Completed"&&h(Se({tenantId:n.tenantId,period:D,refreshViewInBackground:!1}))},[N.fetchState,n.tenantId]),a.useEffect(()=>{L.monthEndInsights?.previewMonthEndReportStatus?.fetchState==="Completed"?l(!0):l(!1)},[L.monthEndInsights?.previewMonthEndReportStatus?.fetchState]),a.useEffect(()=>{L.monthEndInsights?.sendMonthEndReportStatus?.fetchState==="Completed"&&R&&(h(Se({tenantId:n.tenantId,period:D,refreshViewInBackground:!0})),h(Ya({companyId:n.companyId})),r("../"))},[L.monthEndInsights?.sendMonthEndReportStatus?.fetchState,n.tenantId,D,n.companyId,R]),a.useEffect(()=>{const c=setInterval(()=>{N.fetchState!=="In-Progress"&&N.fetchState==="Completed"&&h(Se({tenantId:n.tenantId,period:D,refreshViewInBackground:!0}))},3e5);return()=>clearInterval(c)},[N.fetchState,n.tenantId,D,h]),a.useEffect(()=>{const c=setInterval(()=>{x==="reconciliation"&&re==null&&L.reconciliation.fetchStatus.fetchState==="Completed"&&L.reconciliation.refreshStatus.fetchState!=="In-Progress"&&h(ie(D,void 0,!0,!0))},3e5);return()=>clearInterval(c)},[x,h,L.reconciliation.fetchStatus.fetchState,L.reconciliation.refreshStatus.fetchState,ie,re,D]);const pn=vt();a.useEffect(()=>{const c=(N.monthEndCloseChecks?.monthEndCloseCheckList.find(j=>j.id==="month_end_insights")?.isDisabled??!1)&&!Ze;x!=="month_end_insights"||!c&&N.monthEndCloseChecks?.reportEmailSentDate==null||r("../")},[x,N.monthEndCloseChecks]);const gn=u===!0?g:P,Cn=u===!0||E===!0,Sn=u===!0?o:t;a.useEffect(()=>{et==="In-Progress"&&Oe.accountSettingsView.saveState.fetchState==="Completed"&&h(ft())},[et,Oe.accountSettingsView.saveState.fetchState,ft]);const{transactionId:ct,onSaveVendor:In,onSaveSuccess:fn,onCancel:kn,vendorViewDetails:En}=(({expenseAutomationViewSelector:c,closeDrawerHandler:j,currentSelectedView:Y})=>{const O=ce();let F,he,X;const be=vt(),q=c.transactionView;let Q=()=>{};const{transactions:vn,selectedTransactionId:se,selectedTransactionLineId:Pe,transactionLocalData:yn}=q;if(Y==="transaction_categorization"){const Ve=yn.find(ee=>ee.transactionId===se),J=vn.find(ee=>ee.id===se),it=Pe!=null?Ve?.transactionReviewLocalData?.lineItemById[Pe]:void 0,lt=it?.account;he=it?.class?.classId,F=["Uncategorized Income","Uncategorized Expense"].includes(lt?.accountName??"")?void 0:lt?.accountId;const Pn=Ao(se,J?.typeOfTransaction);J!=null&&Pn&&(X={id:se,type:Je(J.typeOfTransaction)}),Q=()=>{if(se!=null&&Pe!=null&&J!=null){const ee=q.transactionLocalData.find(Ae=>Ae.transactionId===se)?.transactionReviewLocalData;if(ee!=null&&J.lines!=null&&J.lines.length>0){const Ae=ee.lineItemById[Pe];let je=ee.selectedEntity;if(qn(J)||(je=Ae.selectedEntityLine),je!=null){const An=je,Tn={transactionId:{id:J.id,type:J.type},transaction:J,lineIds:J.lines.map(wn=>wn.id)??[]};O(Ne(An,Ae.amount.amount,Tn,!1,!0,be))}}}}}const bn=U(Ve=>dt(Ve,void 0,F,he));return{transactionId:X,onSaveVendor:()=>{O(Gn(X,void 0,!1,!0))},onSaveSuccess:Q,onCancel:()=>{X!=null&&O(zn({transactionId:X})),O(Ln()),O($n()),j()},vendorViewDetails:bn}})({expenseAutomationViewSelector:L,closeDrawerHandler:()=>{_(!1)},currentSelectedView:x});return Kt?.loggedInUserRoleMap==null?N.fetchState==="Error"?C.jsx(Eo,{onGoHome:()=>r("../",{replace:!0}),onReload:()=>window.location.reload()}):C.jsx($t,{fetchState:"In-Progress"}):C.jsxs(C.Fragment,{children:[C.jsx(wo,{isOpen:k,drawerLeftMargin:new vo(0,0,300,650),onClose:()=>{p(!1)},children:C.jsx(Vo,{onClick:c=>c.stopPropagation(),children:C.jsx(Uo,{companyId:n.companyId,closeCustomerRequestDrawer:()=>p(!1),addCustomerRequest:dn,resetCustomerRequest:un})})}),ct!=null&&V&&C.jsx(bo,{isOpen:V,transactionId:ct,onSaveVendor:In,onSaveSuccess:fn,onCancel:kn,vendorViewDetails:En}),C.jsx(Mo,{navigate:r,location:B,themeState:te,vendorSearchAutoCompleteData:{autoCompleteText:cn,entityAutoCompleteView:Xt},expenseAutomationViewSelector:L,isMissingReceiptsBulkUploadEnabled:le,monthEndInsightsPreviewMode:s,monthEndInsightsCustomerRequestData:b,isRealtimeInsightsFeatureEnabled:Ze,isUncategorizedExpenseCategoryEnabled:W,isAccountingClassesEnabled:sn,isCOTEnabled:pn,currentTenant:n,companyId:n.companyId,signedInUser:Me,isTransactionActivityEnabled:Xe,activityLogTransactionId:x==="transaction_categorization"?M:void 0,activityLogPanel:x==="transaction_categorization"&&Xe===!0&&M!=null?C.jsx(yo,{activityLogView:an,qboId:oe,onClose:()=>$(void 0),selectedTransactionId:M},String(M)):null,uncategorizedAccounts:on,onClickCustomerRequest:rn,handleEditClick:ln,tenantEmailDomain:Yt,trackExpenseAutomationTabAnalytics:K,setActivityLogTransactionId:$,closeSidePanel:Sn,openTransactionPanel:i,sidePanelIsOpen:Cn,sidePanelIsFullView:u!==!0&&f,panelContent:gn,isAiCfoAccessEnabled:A,onAskAiCfoClick:Ie,isExpenseAutomationCommentingEnabled:Wt,onExpenseAutomationCommentingThreadClick:Zt,sidePanelListPercent:u===!0?66:void 0})]})})),Vo=Fe(Rn)`
|
|
22
22
|
display: flex;
|
|
23
23
|
min-height: 100%;
|
|
24
24
|
flex-direction: column;
|
|
25
|
-
`;function rs(){return C.jsxs(Un,{children:[C.jsx(
|
|
25
|
+
`;function rs(){return C.jsxs(Un,{children:[C.jsx(ze,{path:"*",element:C.jsx(xo,{})}),C.jsx(ze,{path:"/:selectedTab/:selectedPeriod/*",element:C.jsx(Oo,{})}),C.jsx(ze,{path:"*",element:C.jsx(xn,{})})]})}export{rs as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as s}from"./liveblocks-C0YDUK6I.js";import{a as r}from"./sentry-D_iKj4jN.js";import{Y as i,$ as l,a0 as p,k as m}from"./index-B_zQQVmD.js";import"./mui-D7NGykaU.js";import f from"./NotFoundScreen-D7jhyBo6.js";import{j as u,u as b}from"./core-DoFWsAh3.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]="38164943-7e55-44dc-9548-c9d1b513ec33",e._sentryDebugIdIdentifier="sentry-dbid-38164943-7e55-44dc-9548-c9d1b513ec33")}catch{}})();const D=()=>{const e=u(),t=b(),o=r.useCallback(()=>{window.open("https://www.zeni.ai/demo/request","_blank")},[]),d=r.useCallback(()=>{(()=>{const n=m(t.state?.pathnameStackToGoBack),c=n.poppedPathname??k();e(c,{state:{pathnameStackToGoBack:n.newStack}})})()},[]),a=i(t.pathname);return a!=null?s.jsx(l,{menuItem:p(a),onDemoClick:o,onGoBack:d}):s.jsx(f,{})},k=(e=2)=>{let t="../";for(let o=0;o<e;o++)t=`${t}../`;return t};export{D as F};
|