@zeniai/web-app-ui 5.0.85-prod → 5.0.86-dev

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/dist/assets/AddressRoutes-CGo30rdJ.js +1 -0
  2. package/dist/assets/{AddressScreen-C1X9W71J.js → AddressScreen-DqNplF9n.js} +2 -2
  3. package/dist/assets/AiCfoScreen-DY2bTh5X.js +22 -0
  4. package/dist/assets/BillPayApprovalRoutes-BcGyYnYz.js +1 -0
  5. package/dist/assets/{BillPayRoutes-REyUIXZc.js → BillPayRoutes-Dksq93Nt.js} +18 -18
  6. package/dist/assets/{BusinessVerificationPageScreen-6S_he82a.js → BusinessVerificationPageScreen-YDSaAbpW.js} +2 -2
  7. package/dist/assets/{ChargeCardRoutes-BzQ9RZyE.js → ChargeCardRoutes-o064oMRW.js} +9 -9
  8. package/dist/assets/CompanyPassportScreen-BLW99zDL.js +1 -0
  9. package/dist/assets/ConnectionAuthScreen-Bd0F-_VJ.js +11 -0
  10. package/dist/assets/CustomerOnboardingAuthScreen-Cb43qCFz.js +1 -0
  11. package/dist/assets/{CustomerOnboardingRoutes-D8glvcbX.js → CustomerOnboardingRoutes-DJIij8xf.js} +4 -4
  12. package/dist/assets/DashboardRoutes-CS6nJI2P.js +20 -0
  13. package/dist/assets/{DefaultTenantHome-DKor79UJ.js → DefaultTenantHome-Bl9eDQpG.js} +1 -1
  14. package/dist/assets/DomesticWireDetailScreen-CQO9Kbrv.js +18 -0
  15. package/dist/assets/DrawerScreen-E9PcStEO.js +1 -0
  16. package/dist/assets/EntityDetailRoutes-zw7M1lwQ.js +1 -0
  17. package/dist/assets/ExpenseAutomationRoutes-BHuRnA1t.js +25 -0
  18. package/dist/assets/FeaturePreviewScreen-DtxT93sy.js +1 -0
  19. package/dist/assets/HubSpotOAuthCallbackScreen-DvdLNXNC.js +1 -0
  20. package/dist/assets/{MagicLinkRoutes-DGjZZywf.js → MagicLinkRoutes-BszO-d0K.js} +21 -21
  21. package/dist/assets/MagicLinkSignInScreen-C_x0l97F.js +12 -0
  22. package/dist/assets/{MobileAppDrawer-e7vFdsZl.js → MobileAppDrawer-D8M7VXe9.js} +1 -1
  23. package/dist/assets/NotFoundScreen-BHqd2QHQ.js +1 -0
  24. package/dist/assets/{NotificationRoutes-iaZ8tHwP.js → NotificationRoutes-BF1vgjUU.js} +1 -1
  25. package/dist/assets/OAuthConsentScreen-BR0rJGBP.js +1 -0
  26. package/dist/assets/PandLWithForecastRoutes-DY76dKM1.js +1 -0
  27. package/dist/assets/PeopleRoutes-BtQrBjKV.js +22 -0
  28. package/dist/assets/PerformanceRoutes-DMpi0fOi.js +1 -0
  29. package/dist/assets/{Preview-CG8KGDxi.js → Preview-C8bsUUOu.js} +1 -1
  30. package/dist/assets/{QBOConnectionScreen-B1ByBjAM.js → QBOConnectionScreen-vJXVqwWm.js} +1 -1
  31. package/dist/assets/{ReferralListScreen-CalwcRRw.js → ReferralListScreen-DMiRiZiL.js} +2 -2
  32. package/dist/assets/ReimbursementApprovalRoutes-CkwYBtEW.js +1 -0
  33. package/dist/assets/{ReimbursementApprovalRuleDetailScreen-BiJ5gYT6.js → ReimbursementApprovalRuleDetailScreen-CmXeAJ2V.js} +1 -1
  34. package/dist/assets/ReimbursementRoutes-C8zQyJK2.js +68 -0
  35. package/dist/assets/ReportsRoutes-BexYmhra.js +1 -0
  36. package/dist/assets/RewardsRoutes-DjXjgRiO.js +1 -0
  37. package/dist/assets/ScreenRoutes-BoNP2LIP.js +2 -0
  38. package/dist/assets/{SettingsRoutes-BY0Jw8iu.js → SettingsRoutes-DNp9Aol7.js} +7 -7
  39. package/dist/assets/{SetupPagesScreen-D2SgzhSy.js → SetupPagesScreen-D1bk7eBP.js} +5 -5
  40. package/dist/assets/SignInScreen-Cgfdytgb.js +1 -0
  41. package/dist/assets/SignOutScreen-kKi84Hfg.js +9 -0
  42. package/dist/assets/TaskListScreen-BVNYZTXx.js +9 -0
  43. package/dist/assets/TaskRoutes-BrThx6o_.js +9 -0
  44. package/dist/assets/TransactionDetailRoutes-6MCXCmqq.js +1 -0
  45. package/dist/assets/TransactionDetailScreen-DWs7y2E7.js +5 -0
  46. package/dist/assets/TransactionListRoutes-Y2-dK5Nn.js +1 -0
  47. package/dist/assets/TreasuryRoutes-DlQvHZ4w.js +37 -0
  48. package/dist/assets/{VendorsRoutes-B3LqHFQe.js → VendorsRoutes-HIQQTQSi.js} +28 -28
  49. package/dist/assets/WiseConfirmationScreen-C646Mco3.js +12 -0
  50. package/dist/assets/{ZeniAccountRoutes-BOuLb5XT.js → ZeniAccountRoutes-Kwn8sr_a.js} +12 -12
  51. package/dist/assets/ZeniAccountStatementScreen-BmEJTL09.js +9 -0
  52. package/dist/assets/{accountMappingHelper-BMO3_Hcn.js → accountMappingHelper-5LvFlOj7.js} +1 -1
  53. package/dist/assets/{analytics-KTpmzBLZ.js → analytics-BE9oUBzD.js} +1 -1
  54. package/dist/assets/{analyticsHelper-BMXAUA8L.js → analyticsHelper-BEEOw1D6.js} +1 -1
  55. package/dist/assets/{core-DSm5EncT.js → core-D1cXuJMi.js} +1 -1
  56. package/dist/assets/{decodeURIComponentSafe-B2XNfwZK.js → decodeURIComponentSafe-Did0aZyt.js} +1 -1
  57. package/dist/assets/{dnd-WfwuNh-I.js → dnd-DbPPTppj.js} +1 -1
  58. package/dist/assets/{empty-D4skTnQ7.js → empty-BHW5kDnt.js} +1 -1
  59. package/dist/assets/{empty-BLM9j6_P.js → empty-CfqAKA3M.js} +1 -1
  60. package/dist/assets/{emptyVideoElement-Cumej5oa.js → emptyVideoElement-BofOruLs.js} +1 -1
  61. package/dist/assets/epic-CUqueK5i.js +2 -0
  62. package/dist/assets/getLocaleForTenant-Dc-_DzRm.js +1 -0
  63. package/dist/assets/{index-BRuJhj8k.js → index-3aBFjHPN.js} +1 -1
  64. package/dist/assets/{index-CFp7xmpI.js → index-B4eiJr7Z.js} +1 -1
  65. package/dist/assets/{index-CJtuHmND.js → index-BSfz3Hzd.js} +1 -1
  66. package/dist/assets/{index-DxfNPg3T.js → index-CRe2wmI_.js} +1 -1
  67. package/dist/assets/{index-CFeaKA_G.js → index-DF3os92T.js} +2 -2
  68. package/dist/assets/{index-DqKAAek5.js → index-DjDfMTxy.js} +1 -1
  69. package/dist/assets/{index-Cu6TX6T-.js → index-Dr8ZNfvJ.js} +15411 -15406
  70. package/dist/assets/{index-D-ASMD0k.js → index-n6IrYjfy.js} +1 -1
  71. package/dist/assets/{lexical-uPMgP-4-.js → lexical-Du70nM1B.js} +1 -1
  72. package/dist/assets/{liveblocks-D5IOuNv9.js → liveblocks-Hyy2O23M.js} +1 -1
  73. package/dist/assets/{lottie-Bw23hVB7.js → lottie-qu8VyEpw.js} +1 -1
  74. package/dist/assets/{mui-aAb3ZK4t.js → mui-B2prtfNk.js} +1 -1
  75. package/dist/assets/{pathToGoBack-CjnK-RPC.js → pathToGoBack-C7gPpVBh.js} +1 -1
  76. package/dist/assets/{pdf-BLq3oklQ.js → pdf-Cvwxd6W6.js} +4 -4
  77. package/dist/assets/{pdf-lib-BW6r_g8A.js → pdf-lib-D1w2Ub95.js} +1 -1
  78. package/dist/assets/{plaid-Bq2q69xW.js → plaid-4w70Yh4I.js} +1 -1
  79. package/dist/assets/{pusher-KRJGbkWv.js → pusher-Bvm9V4qD.js} +1 -1
  80. package/dist/assets/{react-x0L0dyO0.js → react-B4GuIedn.js} +1 -1
  81. package/dist/assets/{react-4vFcWFvy.js → react-BCjBqrrm.js} +1 -1
  82. package/dist/assets/{react-D06hoWUG.js → react-BZq53fCf.js} +1 -1
  83. package/dist/assets/{react-CVr5kbJf.js → react-BfNTrsTo.js} +1 -1
  84. package/dist/assets/{react-BwM_qM5v.js → react-CBBEPwWt.js} +1 -1
  85. package/dist/assets/{react-CZ6W6ySb.js → react-CUSCkthZ.js} +1 -1
  86. package/dist/assets/{recharts-sq8NMPEu.js → recharts-CrZf7bKF.js} +1 -1
  87. package/dist/assets/routePaths-Dx_nnKk7.js +1 -0
  88. package/dist/assets/{sentry-Ctx5hlxQ.js → sentry-BTyPPF0t.js} +1 -1
  89. package/dist/assets/{url-C8YmYc76.js → url-CsQlFR2d.js} +1 -1
  90. package/dist/assets/{url-BdIiWJEz.js → url-Dq7O3gKi.js} +1 -1
  91. package/dist/assets/useAskAiCfoHostNavButtonProps-BxShjiqA.js +1 -0
  92. package/dist/assets/{useDeviceId-M1Q9D8TL.js → useDeviceId-D81NtSvK.js} +1 -1
  93. package/dist/assets/useFetchSuggestedQuestionsWhenReady-DWTRn_Lu.js +1 -0
  94. package/dist/assets/{useInitialThreadRequest-C9HocV07.js → useInitialThreadRequest-WHG7gHcH.js} +1 -1
  95. package/dist/assets/{utils-5dQGsDcn.js → utils-C_-saZ2j.js} +1 -1
  96. package/dist/assets/withTransactionSidePanel-DcRhIgzv.js +21 -0
  97. package/dist/assets/{zeni-epic-state-RX9kBvT9.js → zeni-epic-state-CbUjX_b3.js} +6 -6
  98. package/dist/index.html +1 -1
  99. package/package.json +4 -4
  100. package/dist/assets/AddressRoutes-C_SrcHIw.js +0 -1
  101. package/dist/assets/AiCfoScreen-WhA4JkLd.js +0 -22
  102. package/dist/assets/BillPayApprovalRoutes-CxQX2aBa.js +0 -1
  103. package/dist/assets/CompanyPassportScreen-CUo32gRA.js +0 -1
  104. package/dist/assets/ConnectionAuthScreen-BdePBTwE.js +0 -11
  105. package/dist/assets/CustomerOnboardingAuthScreen-CllFwfVW.js +0 -1
  106. package/dist/assets/DashboardRoutes-C7apISiX.js +0 -20
  107. package/dist/assets/DomesticWireDetailScreen-BjJiJDq1.js +0 -18
  108. package/dist/assets/DrawerScreen-D2pv5LV4.js +0 -1
  109. package/dist/assets/EntityDetailRoutes-DLg9gkZ_.js +0 -1
  110. package/dist/assets/ExpenseAutomationRoutes-D6ucvolb.js +0 -25
  111. package/dist/assets/FeaturePreviewScreen-DW0dk17I.js +0 -1
  112. package/dist/assets/HubSpotOAuthCallbackScreen-Z-Z5PVam.js +0 -1
  113. package/dist/assets/MagicLinkSignInScreen-DXENsbqj.js +0 -12
  114. package/dist/assets/NotFoundScreen-BT06WKNU.js +0 -1
  115. package/dist/assets/OAuthConsentScreen-vGSNLv7Y.js +0 -1
  116. package/dist/assets/PandLWithForecastRoutes-BD5usFzC.js +0 -1
  117. package/dist/assets/PeopleRoutes-BbfuviKv.js +0 -22
  118. package/dist/assets/PerformanceRoutes-CSVKByC4.js +0 -1
  119. package/dist/assets/ReimbursementApprovalRoutes-XiJZ8vd5.js +0 -1
  120. package/dist/assets/ReimbursementRoutes-DZGe7EIH.js +0 -68
  121. package/dist/assets/ReportsRoutes-C_To5MtR.js +0 -1
  122. package/dist/assets/RewardsRoutes-BK1T5N_P.js +0 -1
  123. package/dist/assets/ScreenRoutes-C-POyJhR.js +0 -2
  124. package/dist/assets/SignInScreen-DnG3RNpe.js +0 -1
  125. package/dist/assets/SignOutScreen-CvdI8gEw.js +0 -9
  126. package/dist/assets/TaskListScreen-Dic2Sptj.js +0 -9
  127. package/dist/assets/TaskRoutes-DEZA7NFE.js +0 -9
  128. package/dist/assets/TransactionDetailRoutes-BUTf6YOV.js +0 -1
  129. package/dist/assets/TransactionDetailScreen-DRU44gV_.js +0 -5
  130. package/dist/assets/TransactionListRoutes-CRtqvb4u.js +0 -1
  131. package/dist/assets/TreasuryRoutes-XLugkaXo.js +0 -37
  132. package/dist/assets/WiseConfirmationScreen-BaKWf4dW.js +0 -12
  133. package/dist/assets/ZeniAccountStatementScreen-CsADtZkI.js +0 -9
  134. package/dist/assets/epic-BjxrHn7-.js +0 -2
  135. package/dist/assets/getLocaleForTenant-Dks1F-do.js +0 -1
  136. package/dist/assets/routePaths-CTVn-kRm.js +0 -1
  137. package/dist/assets/useAskAiCfoHostNavButtonProps-Cwg-MURp.js +0 -1
  138. package/dist/assets/useFetchSuggestedQuestionsWhenReady-CmADrtlH.js +0 -1
  139. package/dist/assets/withTransactionSidePanel-gQ2IORZA.js +0 -21
@@ -1,9 +1,9 @@
1
- import{j as s}from"./liveblocks-D5IOuNv9.js";import{j as le,l as ia,h as ue,g as y,u as ge,k as pe,N as ga,q as ut,n as Wt,o as te}from"./core-DSm5EncT.js";import{eQ as ie,bs as Ue,OF as ka,eU as be,eV as ye,eW as Se,fR as $e,cs as Ge,OG as Ze,OH as Ma,t2 as ba,jK as ya,OI as Sa,gO as oa,zw as Je,zy as za,zz as $a,jA as mt,OJ as Ye,zk as Ct,OK as qt,OL as Xt,zn as Da,OM as Qt,N5 as _a,re as pt,zt as Ga,gZ as Jt,ON as ht,OO as Ke,bq as en,OP as an,fC as Pa,fB as wa,A1 as tn,fA as Ta,MN as nn,OQ as ft,cl as gt,cN as rn,N4 as da,AD as sn,OR as tt,Ad as Fa,OS as bt,AE as on,Nw as cn,AF as dn,Bz as ln,so as un,Bt as mn,zO as yt,zH as Cn,OT as pn,fT as hn,zX as St,z$ as It,fS as fn,OU as gn,Ap as At,OV as bn,OW as yn,OX as Sn,zZ as Et,zK as kt,zq as Dt,zT as _t,zR as Pt,zV as In,zx as nt,OY as wt,OZ as va,Aa as Ia,JM as Tt,cO as Za,O_ as An,O$ as En,P0 as kn,P1 as Dn,A7 as Na,Aw as _n,As as Pn,A3 as wn,Au as Tn,Ak as Fn,Am as vn,P2 as Ft,AC as vt,H8 as xn,P3 as Ln,P4 as Bn,P5 as On,P6 as xt,P7 as Un,AZ as Rn,Ac as Lt,A6 as ca,Ab as jn,P8 as Nn,P9 as Vn,zh as Hn,Pa as Bt,Pb as Ot,Pc as Mn,zj as zn,zi as rt,Pd as $n,Pe as Gn,Pf as Zn,JI as Yn,Pg as Ya,Ph as Kn,vU as Ut,ki as Wn,gP as qn,B2 as Xn,Pi as Rt,Pj as Qn,B3 as Jn,Pk as er,df as ar,sY as tr,AU as nr,AO as Oe,bv as rr,bF as sr,cx as or,bG as cr,IU as ir}from"./zeni-epic-state-RX9kBvT9.js";import{z as J,d as je,y as ce,S as Z,x as la,bY as xa,c7 as dr,k as ve,c8 as lr,c9 as ur,Z as ua,aK as Fe,r as fe,bf as Ka,ca as mr,F as ma,j as La,m as Wa,e as X,D as qa,cb as Cr,an as Xa,br as Xe,cc as Va,cd as pr,A as Qa,a3 as hr,ce as fr,aq as jt,X as Ha,U as Nt,g as Vt,cf as gr,cg as br,ch as yr,ci as Sr,cj as Ir,ck as Ar,o as Aa,cl as Er,cm as kr,cn as Ua,v as Dr,co as _r,cp as Pr,cq as wr,cr as Tr,cs as Fr,a6 as vr}from"./index-Cu6TX6T-.js";import{n as _e,D as Ht,S as xr}from"./mui-aAb3ZK4t.js";import{a as i}from"./sentry-Ctx5hlxQ.js";import{g as Ce,a as Ca,b as Mt,c as Ie,d as Ae,e as Re,f as Ne,A as Lr,h as Ja,P as Br,i as et,s as Qe,j as zt,k as Me,l as $t,m as Or,n as Gt,p as Ur,S as st}from"./SetupPagesScreen-D2SgzhSy.js";import Ba from"./NotFoundScreen-BT06WKNU.js";import{M as ze}from"./MobileAppDrawer-e7vFdsZl.js";import{u as Zt}from"./useAskAiCfoHostNavButtonProps-Cwg-MURp.js";import{c as Yt}from"./useFetchSuggestedQuestionsWhenReady-CmADrtlH.js";import{v as ot}from"./utils-5dQGsDcn.js";import{t as Rr}from"./AddressScreen-C1X9W71J.js";import"./recharts-sq8NMPEu.js";import"./analytics-KTpmzBLZ.js";import"./plaid-Bq2q69xW.js";import"./dnd-WfwuNh-I.js";import"./stripe-DMRn4zHo.js";import"./lottie-Bw23hVB7.js";import"./lexical-uPMgP-4-.js";import"./pdf-BLq3oklQ.js";import"./analyticsHelper-BMXAUA8L.js";import"./routePaths-CTVn-kRm.js";import"./BusinessVerificationPageScreen-6S_he82a.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]="dca7affe-f452-48d0-894d-2f74cdefea27",e._sentryDebugIdIdentifier="sentry-dbid-dca7affe-f452-48d0-894d-2f74cdefea27")}catch{}})();function jr(){const e=le(),{cardId:t}=ia(),a=ue(),r=J.getSignedInUser(),n=y(Q=>ie(Q)),C=je(),p=Ue(C?.loggedInUserRoleMap),{useFeatureGate:u}=ce();if(r==null)throw Error("Can't access Add To Wallet Page without signing in...");const[S,o]=i.useState(!1),c=y(Q=>ka(Q).firstViewAfterActivation);if(t==null)throw Error("Empty card id is not valid...");const _=n.userRole.includes("charge_card_user"),{isFeatureEnabled:A}=u(Z.isChargeCardFeatureEnabled),f=!!n.companyChargeCardInfo?.info?.isChargeCardEnabled,{isFeatureEnabled:U}=u(Z.isDebitCardFeatureEnabled),F=be(n),k=ye(n),h=Se(U,n),b=n.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,g=Ie({isDebitCardFeatureEnabled:U,isBankingOnlyTenant:h}),d=Ae({isCardsOnlyTenant:F,isChargeCardFeatureEnabled:A,isBookKeepingTenant:k,isDebitCardProductVisible:g,chargeCardsCreditAccountLimit:b}),D=!!n.companyDebitCardInfo?.info?.isDebitCardEnabled,v=y(Q=>$e(Q,n.companyId)),N=Ge(v.controllers),{creditAccount:B,creditAccountRepayment:w}=y(Q=>Ze(Q)),V=y(Q=>Q.classListState.fetchState),m=!_&&d&&f,l=y(Q=>Ma(Q,t,m,d)),[P,T]=i.useState(!1),H=l.chargeCard,O=H?.cardCreatedByUser?.userId,K=y(Q=>O!=null?ba(Q.userRoleState,O):void 0),I=K?.accountingClassIDs[0],L=y(Q=>I!=null?ya(Q.classState,{classId:I,reportId:"class_list"}):void 0),j=H?.cardHolderUser?.userId,R=y(Q=>j!=null?ba(Q.userRoleState,j):void 0),W=R?.accountingClassIDs[0],E=y(Q=>W!=null?ya(Q.classState,{classId:W,reportId:"class_list"}):void 0),G=H?.type.code==="business_physical_credit_card"||H?.type.code==="business_physical_debit_card",q=H?.type.code==="business_physical_debit_card";i.useEffect(()=>{c&&S===!1&&G&&(o(!0),setTimeout(()=>{a(Sa()),q&&a(oa({messageSection:"set_debit_card_pin",messageText:"success",type:"success",showStatusIcon:!0}))},5e3))},[c,S,G,q]),i.useEffect(()=>{P||l.fetchState==="Completed"||l.fetchState==="In-Progress"||t==null||(T(!0),a(Je(t,m,!1)))},[P,l,t,a]),i.useEffect(()=>{if(l.fetchState==="Completed"&&(G===!1||G&&H?.status?.code!=="active"||H?.cardHolderUserId!==r.userId||c===!1&&S===!1||H?.type.code==="business_physical_debit_card"||H?.type.code==="business_virtual_debit_card")){const Q=Ce(n.tenantEmailDomain,t,r,H,c);e(Q)}},[l.fetchState,c,G]),i.useEffect(()=>{B.fetchState!=="Completed"&&B.fetchState!=="In-Progress"&&d&&f&&p&&a(za()),w.fetchState!=="Completed"&&w.fetchState!=="In-Progress"&&d&&f&&p&&a($a()),V!=="Completed"&&V!=="In-Progress"&&a(mt())},[B.fetchState,w.fetchState,a,d,f,p,V]);const $=()=>{if(r!=null&&t!=null){a(Sa());const Q=Ce(n.tenantEmailDomain,t,r);e(Q)}},x=H?.type.code==="business_physical_debit_card"||H?.type.code==="business_virtual_debit_card",se=Re(d,g,D,f),ae=Ca(d,f,p,B,w),ne=Mt(x,l);return l.fetchState!=="Completed"?s.jsx(la,{fetchState:"In-Progress"}):s.jsxs(s.Fragment,{children:[s.jsx(xa,{showConfetti:c}),s.jsx(dr,{onGotItClick:$,isDebitCard:H?.type.code==="business_physical_debit_card",controllerEmails:N,isChargeCardFeatureEnabled:d,isDebitCardFeatureEnabled:g,isDebitCardSetupEnabled:D,isChargeCardSetupEnabled:f,productInformation:se,creditAccountInformation:ae,debitAccountInformation:ne,chargeCardDetailView:l,creditAccount:B,classListFetchState:V,creditAccountRepayment:w,cardIssuedByRoles:K?.userRoles,cardIssuedByDepartmentName:L?.className,cardHolderRoles:R?.userRoles,cardHolderDepartmentName:E?.className})]})}const Nr=pe(function(e){const t=Ye(e);return{insightsData:t.insight,cashbackByPeriod:t.cashbackByPeriod,uiState:t.uiState,cashbackSummary:t.cashbackSummary}},function(e){return{onColumnSortConfigChanged:(t,a)=>{e(qt({uiState:{sortKey:t,sortOrder:a}}))}}})(ur);function Vr(){const e=le(),t=ue(),a=ge(),r=J.getSignedInUser(),n=y(o=>ie(o)),[C,p]=i.useState(!1),u=y(o=>Ye(o)),S=i.useCallback(()=>{const o=ve(a.state?.pathnameStackToGoBack),c=o.poppedPathname??Hr(n.tenantEmailDomain);e(c,{state:{pathnameStackToGoBack:o.newStack}})},[e,a,n.tenantEmailDomain]);if(i.useEffect(()=>{C||u.fetchState==="Completed"||u.fetchState==="In-Progress"||(p(!0),t(Ct()))},[C,u,t]),r==null)throw Error("Can't access cashback detail page without signing in...");return u.fetchState==="In-Progress"?s.jsx(lr,{onBackClick:S}):u.cashbackSummary.cashbackEarned.amount===0&&u.fetchState==="Completed"?s.jsx(Ba,{}):s.jsx(Nr,{onBackClick:S})}const Hr=e=>`/${e}/cards`,Mr={containerWidth:new ma(100,58)},zr=({appContent:e})=>{const t=ua(),a=ue(),r=le(),{cardId:n}=ia(),C=ge(),{useDynamicConfig:p}=ce(),[u,S]=i.useState(!1),[o,c]=i.useState(!1),[_,A]=i.useState(!1),[f,U]=i.useState(!1),F=J.getSignedInUser();if(F==null)throw Error("Can't access onboarding card page without signing in...");const k=y(E=>ie(E));if(n==null)throw Error("Empty card id is not valid...");const{configValue:h}=p(Fe.zeniCardsConfig),b=h.max_charge_card_activation_attempts_by_card_id,g=y(E=>Xt(E,n)),d=g.chargeCard,D=y(E=>E.chargeCardConfigState.fetchState),{useFeatureGate:v}=ce(),{isFeatureEnabled:N}=v(Z.isChargeCardFeatureEnabled),{isFeatureEnabled:B}=v(Z.isDebitCardFeatureEnabled),w=Se(B,k),V=Ie({isDebitCardFeatureEnabled:B,isBankingOnlyTenant:w}),m=!!k.companyChargeCardInfo?.info?.isChargeCardEnabled,l=k.userRole.includes("charge_card_user"),P=be(k),T=ye(k),H=k.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,O=Ae({isCardsOnlyTenant:P,isChargeCardFeatureEnabled:N,isBookKeepingTenant:T,isDebitCardProductVisible:V,chargeCardsCreditAccountLimit:H}),K=!l&&O&&m;i.useEffect(()=>{u===!1&&D!=="In-Progress"&&D!=="Completed"&&(a(Da()),S(!0)),o===!1&&g.fetchState==="Not-Started"&&(c(!0),a(Je(n,K,O)))},[o,g.fetchState,u,D]);const I=d?.type.code==="business_physical_credit_card"||d?.type.code==="business_physical_debit_card";i.useEffect(()=>{if(g.fetchState==="Completed"){if(_===!1&&(I===!1||I&&d?.status?.code!=="inactive"||d?.cardHolderUserId!==F.userId)){const E=Ce(k.tenantEmailDomain,n,F,d,!0),G=fe(C.state?.pathnameStackToGoBack,C.pathname);r(E,{state:{pathnameStackToGoBack:G}})}else if(_&&g.isRefreshingViewInBackground===!1&&d?.status?.code==="active"){a(Qt({chargeCardId:n}));const E=Ce(k.tenantEmailDomain,n,F,d,!0),G=fe(C.state?.pathnameStackToGoBack,C.pathname);a(_a()),r(E,{state:{pathnameStackToGoBack:G}})}}},[g.fetchState,d?.type.code,_,g.isRefreshingViewInBackground]);const L=J.getZeniOtpTokenForCardHolder(n),j=y(E=>pt(E.userState,F.userId)),R=()=>{d?.status?.code!=="active"&&a(Ga(n,!0))};i.useEffect(()=>{g.updatePhysicalChargeCardAttemptFetchState.fetchState==="Completed"&&d?.cardActivationAttemptHistory.some(E=>E.statusCode==="success")===!0&&_===!1&&(setTimeout(R,3e3),A(!0))},[g.updatePhysicalChargeCardAttemptFetchState.fetchState,d?.cardActivationAttemptHistory]);const W=E=>{U(E)};if(D!=="Completed"||d==null)return s.jsx(la,{fetchState:"In-Progress"});if(d.shippingAddressId==null)throw Error("Can't access shippingAddressId.");if(j?.phone==null)throw Error("Can't access user phone number.");return s.jsxs(Zr,{children:[s.jsx(ze,{isAppContentDrawerOpen:f,handleDrawerToggle:W}),s.jsx($r,{cardId:n,card:d,shippingAddressId:d.shippingAddressId,phone:j.phone,signedInUser:F,isSandboxEnv:Ka(),chargeCardDetailState:g,signedInUserToken:L,navigate:r,currentTenant:k,location:C,maxChargeCardActivationAttempts:b[n]!=null?b[n]:h.default_max_charge_card_activation_attempts!=null?h.default_max_charge_card_activation_attempts:3,chargeCardCashbackRatePerTransaction:h.charge_card_cashback_rate_per_transaction!=null?h.charge_card_cashback_rate_per_transaction:.0175,onClickMenuIcon:()=>{W(!0)}}),e!=null?s.jsx(Gr,{windowSize:t,children:e}):null]})},$r=pe(function(e,{chargeCardDetailState:t,shippingAddressId:a,location:r,cardId:n}){const C=Jt(e.addressState,a);if(C==null)throw Error("Can't access shippingAddress.");const p=ht(e,n),u=t.updateStatus,S=Ke(e,!1,!1,!1);let o=!1;S.fetchState==="Completed"&&S.cards.length<=1&&(o=!0);const c=r.state?.message==="comingFromV2UrlPath";return{showActivatePage:t.chargeCard?.providerCardCreateTime!=null&&t.chargeCard.providerCardCreateTime.add(24,"h").isBefore(en())||c,showMenuIcon:o,shippingAddress:C,vgsVaultId:La.cardVaultId,twoFAView:p,activationWaitStatus:u,isRefreshingViewInBackground:t.isRefreshingViewInBackground}},function(e,t){const{navigate:a,cardId:r,location:n,currentTenant:C,chargeCardDetailState:p}=t,u=p.chargeCard?.cardProviderID,{tenantEmailDomain:S}=C;return{onGetOtp:o=>{u!=null&&e(Ta(o,"ChargeCardHolder",r))},onUpdatePhysicalChargeCardAttempt:o=>{e(tn(r,o))},onResendOtp:o=>{u!=null&&e(wa(o,"ChargeCardHolder",r))},onVerifyOtp:(o,c)=>{u!=null&&e(Pa(o,c,"ChargeCardHolder",r))},onVerifyOtpSuccess:o=>{o!=null&&J.saveZeniOtpTokenForCardHolder(o,r)},onCVVActivateSuccess:()=>{e(an({chargeCardId:r}))},onBackClick:()=>{const o=ve(n.state?.pathnameStackToGoBack),c=o.poppedPathname==null||o.poppedPathname.includes("onboard")===!0?Ne(S):o.poppedPathname;a(c,{state:{pathnameStackToGoBack:o.newStack}})}}})(mr),Gr=_e.div`
1
+ import{j as s}from"./liveblocks-Hyy2O23M.js";import{j as le,l as ia,h as ue,g as y,u as ge,k as pe,N as ga,q as ut,n as Wt,o as te}from"./core-D1cXuJMi.js";import{eQ as ie,bs as Re,P9 as ka,eU as be,eV as ye,eW as Se,fR as $e,cs as ze,Pa as Ye,Pb as Ma,tn as ba,jK as ya,Pc as Sa,gO as oa,zV as Xe,zX as Ga,zY as $a,jA as mt,Pd as Ze,zJ as Ct,Pe as qt,Pf as Jt,zM as Da,Pg as Qt,Ny as _a,rz as pt,zS as za,gZ as Xt,Ph as ht,Pi as Ke,bq as en,Pj as an,fC as Pa,fB as wa,Aq as tn,fA as Ta,Ne as nn,Pk as ft,cl as gt,cN as rn,Nx as da,B0 as sn,Pl as tt,AC as Fa,Pm as bt,B1 as on,NZ as cn,B2 as dn,BY as ln,sJ as un,BS as mn,Ab as yt,A4 as Cn,Pn as pn,fT as hn,Ak as St,Ao as It,fS as fn,Po as gn,AO as At,Pp as bn,Pq as yn,Pr as Sn,Am as Et,A7 as kt,zP as Dt,Ag as _t,Ae as Pt,Ai as In,zW as nt,Ps as wt,Pt as va,Az as Ia,Kd as Tt,cO as Ya,Pu as An,Pv as En,Pw as kn,Px as Dn,Aw as Na,AV as _n,AR as Pn,As as wn,AT as Tn,AJ as Fn,AL as vn,Py as Ft,A$ as vt,HC as xn,Pz as Bn,PA as Ln,PB as Un,PC as xt,PD as Rn,Bm as On,AB as Bt,Av as ca,AA as jn,PE as Nn,PF as Vn,zG as Hn,PG as Lt,PH as Ut,PI as Mn,zI as Gn,zH as rt,PJ as $n,PK as zn,PL as Yn,K9 as Zn,PM as Za,PN as Kn,wh as Rt,ki as Wn,gP as qn,Br as Jn,PO as Ot,PP as Qn,Bs as Xn,PQ as er,df as ar,th as tr,Bh as nr,Bb as Ue,bv as rr,bF as sr,cx as or,bG as cr,Jm as ir}from"./zeni-epic-state-CbUjX_b3.js";import{z as X,c as je,C as ce,A as Y,B as la,bY as xa,c7 as dr,p as ve,c8 as lr,c9 as ur,K as ua,aK as Fe,j as fe,bf as Ka,ca as mr,E as ma,h as Ba,m as Wa,d as J,D as qa,cb as Cr,an as Ja,br as Je,cc as Va,cd as pr,x as Qa,a3 as hr,ce as fr,aq as jt,X as Ha,U as Nt,f as Vt,cf as gr,cg as br,ch as yr,ci as Sr,cj as Ir,ck as Ar,o as Aa,cl as Er,cm as kr,cn as Ra,n as Dr,co as _r,cp as Pr,cq as wr,cr as Tr,cs as Fr,a6 as vr}from"./index-Dr8ZNfvJ.js";import{n as _e,D as Ht,S as xr}from"./mui-B2prtfNk.js";import{a as i}from"./sentry-BTyPPF0t.js";import{g as Ce,a as Ca,b as Mt,c as Ie,d as Ae,e as Oe,f as Ne,A as Br,h as Xa,P as Lr,i as et,s as Qe,j as Gt,k as Me,l as $t,m as Ur,n as zt,p as Rr,S as st}from"./SetupPagesScreen-D1bk7eBP.js";import La from"./NotFoundScreen-BHqd2QHQ.js";import{M as Ge}from"./MobileAppDrawer-D8M7VXe9.js";import{u as Yt}from"./useAskAiCfoHostNavButtonProps-BxShjiqA.js";import{c as Zt}from"./useFetchSuggestedQuestionsWhenReady-DWTRn_Lu.js";import{v as ot}from"./utils-C_-saZ2j.js";import{t as Or}from"./AddressScreen-DqNplF9n.js";import"./recharts-CrZf7bKF.js";import"./analytics-BE9oUBzD.js";import"./plaid-4w70Yh4I.js";import"./dnd-DbPPTppj.js";import"./stripe-DMRn4zHo.js";import"./lottie-qu8VyEpw.js";import"./lexical-Du70nM1B.js";import"./pdf-Cvwxd6W6.js";import"./analyticsHelper-BEEOw1D6.js";import"./routePaths-Dx_nnKk7.js";import"./BusinessVerificationPageScreen-YDSaAbpW.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]="2d2dcdec-b59e-4dba-ad1d-1afe1fad94fb",e._sentryDebugIdIdentifier="sentry-dbid-2d2dcdec-b59e-4dba-ad1d-1afe1fad94fb")}catch{}})();function jr(){const e=le(),{cardId:t}=ia(),a=ue(),r=X.getSignedInUser(),n=y(Q=>ie(Q)),C=je(),p=Re(C?.loggedInUserRoleMap),{useFeatureGate:u}=ce();if(r==null)throw Error("Can't access Add To Wallet Page without signing in...");const[S,o]=i.useState(!1),c=y(Q=>ka(Q).firstViewAfterActivation);if(t==null)throw Error("Empty card id is not valid...");const _=n.userRole.includes("charge_card_user"),{isFeatureEnabled:A}=u(Y.isChargeCardFeatureEnabled),f=!!n.companyChargeCardInfo?.info?.isChargeCardEnabled,{isFeatureEnabled:R}=u(Y.isDebitCardFeatureEnabled),F=be(n),k=ye(n),h=Se(R,n),b=n.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,g=Ie({isDebitCardFeatureEnabled:R,isBankingOnlyTenant:h}),d=Ae({isCardsOnlyTenant:F,isChargeCardFeatureEnabled:A,isBookKeepingTenant:k,isDebitCardProductVisible:g,chargeCardsCreditAccountLimit:b}),D=!!n.companyDebitCardInfo?.info?.isDebitCardEnabled,v=y(Q=>$e(Q,n.companyId)),N=ze(v.controllers),{creditAccount:L,creditAccountRepayment:w}=y(Q=>Ye(Q)),V=y(Q=>Q.classListState.fetchState),m=!_&&d&&f,l=y(Q=>Ma(Q,t,m,d)),[P,T]=i.useState(!1),H=l.chargeCard,U=H?.cardCreatedByUser?.userId,K=y(Q=>U!=null?ba(Q.userRoleState,U):void 0),I=K?.accountingClassIDs[0],B=y(Q=>I!=null?ya(Q.classState,{classId:I,reportId:"class_list"}):void 0),j=H?.cardHolderUser?.userId,O=y(Q=>j!=null?ba(Q.userRoleState,j):void 0),W=O?.accountingClassIDs[0],E=y(Q=>W!=null?ya(Q.classState,{classId:W,reportId:"class_list"}):void 0),z=H?.type.code==="business_physical_credit_card"||H?.type.code==="business_physical_debit_card",q=H?.type.code==="business_physical_debit_card";i.useEffect(()=>{c&&S===!1&&z&&(o(!0),setTimeout(()=>{a(Sa()),q&&a(oa({messageSection:"set_debit_card_pin",messageText:"success",type:"success",showStatusIcon:!0}))},5e3))},[c,S,z,q]),i.useEffect(()=>{P||l.fetchState==="Completed"||l.fetchState==="In-Progress"||t==null||(T(!0),a(Xe(t,m,!1)))},[P,l,t,a]),i.useEffect(()=>{if(l.fetchState==="Completed"&&(z===!1||z&&H?.status?.code!=="active"||H?.cardHolderUserId!==r.userId||c===!1&&S===!1||H?.type.code==="business_physical_debit_card"||H?.type.code==="business_virtual_debit_card")){const Q=Ce(n.tenantEmailDomain,t,r,H,c);e(Q)}},[l.fetchState,c,z]),i.useEffect(()=>{L.fetchState!=="Completed"&&L.fetchState!=="In-Progress"&&d&&f&&p&&a(Ga()),w.fetchState!=="Completed"&&w.fetchState!=="In-Progress"&&d&&f&&p&&a($a()),V!=="Completed"&&V!=="In-Progress"&&a(mt())},[L.fetchState,w.fetchState,a,d,f,p,V]);const $=()=>{if(r!=null&&t!=null){a(Sa());const Q=Ce(n.tenantEmailDomain,t,r);e(Q)}},x=H?.type.code==="business_physical_debit_card"||H?.type.code==="business_virtual_debit_card",se=Oe(d,g,D,f),ae=Ca(d,f,p,L,w),ne=Mt(x,l);return l.fetchState!=="Completed"?s.jsx(la,{fetchState:"In-Progress"}):s.jsxs(s.Fragment,{children:[s.jsx(xa,{showConfetti:c}),s.jsx(dr,{onGotItClick:$,isDebitCard:H?.type.code==="business_physical_debit_card",controllerEmails:N,isChargeCardFeatureEnabled:d,isDebitCardFeatureEnabled:g,isDebitCardSetupEnabled:D,isChargeCardSetupEnabled:f,productInformation:se,creditAccountInformation:ae,debitAccountInformation:ne,chargeCardDetailView:l,creditAccount:L,classListFetchState:V,creditAccountRepayment:w,cardIssuedByRoles:K?.userRoles,cardIssuedByDepartmentName:B?.className,cardHolderRoles:O?.userRoles,cardHolderDepartmentName:E?.className})]})}const Nr=pe(function(e){const t=Ze(e);return{insightsData:t.insight,cashbackByPeriod:t.cashbackByPeriod,uiState:t.uiState,cashbackSummary:t.cashbackSummary}},function(e){return{onColumnSortConfigChanged:(t,a)=>{e(qt({uiState:{sortKey:t,sortOrder:a}}))}}})(ur);function Vr(){const e=le(),t=ue(),a=ge(),r=X.getSignedInUser(),n=y(o=>ie(o)),[C,p]=i.useState(!1),u=y(o=>Ze(o)),S=i.useCallback(()=>{const o=ve(a.state?.pathnameStackToGoBack),c=o.poppedPathname??Hr(n.tenantEmailDomain);e(c,{state:{pathnameStackToGoBack:o.newStack}})},[e,a,n.tenantEmailDomain]);if(i.useEffect(()=>{C||u.fetchState==="Completed"||u.fetchState==="In-Progress"||(p(!0),t(Ct()))},[C,u,t]),r==null)throw Error("Can't access cashback detail page without signing in...");return u.fetchState==="In-Progress"?s.jsx(lr,{onBackClick:S}):u.cashbackSummary.cashbackEarned.amount===0&&u.fetchState==="Completed"?s.jsx(La,{}):s.jsx(Nr,{onBackClick:S})}const Hr=e=>`/${e}/cards`,Mr={containerWidth:new ma(100,58)},Gr=({appContent:e})=>{const t=ua(),a=ue(),r=le(),{cardId:n}=ia(),C=ge(),{useDynamicConfig:p}=ce(),[u,S]=i.useState(!1),[o,c]=i.useState(!1),[_,A]=i.useState(!1),[f,R]=i.useState(!1),F=X.getSignedInUser();if(F==null)throw Error("Can't access onboarding card page without signing in...");const k=y(E=>ie(E));if(n==null)throw Error("Empty card id is not valid...");const{configValue:h}=p(Fe.zeniCardsConfig),b=h.max_charge_card_activation_attempts_by_card_id,g=y(E=>Jt(E,n)),d=g.chargeCard,D=y(E=>E.chargeCardConfigState.fetchState),{useFeatureGate:v}=ce(),{isFeatureEnabled:N}=v(Y.isChargeCardFeatureEnabled),{isFeatureEnabled:L}=v(Y.isDebitCardFeatureEnabled),w=Se(L,k),V=Ie({isDebitCardFeatureEnabled:L,isBankingOnlyTenant:w}),m=!!k.companyChargeCardInfo?.info?.isChargeCardEnabled,l=k.userRole.includes("charge_card_user"),P=be(k),T=ye(k),H=k.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,U=Ae({isCardsOnlyTenant:P,isChargeCardFeatureEnabled:N,isBookKeepingTenant:T,isDebitCardProductVisible:V,chargeCardsCreditAccountLimit:H}),K=!l&&U&&m;i.useEffect(()=>{u===!1&&D!=="In-Progress"&&D!=="Completed"&&(a(Da()),S(!0)),o===!1&&g.fetchState==="Not-Started"&&(c(!0),a(Xe(n,K,U)))},[o,g.fetchState,u,D]);const I=d?.type.code==="business_physical_credit_card"||d?.type.code==="business_physical_debit_card";i.useEffect(()=>{if(g.fetchState==="Completed"){if(_===!1&&(I===!1||I&&d?.status?.code!=="inactive"||d?.cardHolderUserId!==F.userId)){const E=Ce(k.tenantEmailDomain,n,F,d,!0),z=fe(C.state?.pathnameStackToGoBack,C.pathname);r(E,{state:{pathnameStackToGoBack:z}})}else if(_&&g.isRefreshingViewInBackground===!1&&d?.status?.code==="active"){a(Qt({chargeCardId:n}));const E=Ce(k.tenantEmailDomain,n,F,d,!0),z=fe(C.state?.pathnameStackToGoBack,C.pathname);a(_a()),r(E,{state:{pathnameStackToGoBack:z}})}}},[g.fetchState,d?.type.code,_,g.isRefreshingViewInBackground]);const B=X.getZeniOtpTokenForCardHolder(n),j=y(E=>pt(E.userState,F.userId)),O=()=>{d?.status?.code!=="active"&&a(za(n,!0))};i.useEffect(()=>{g.updatePhysicalChargeCardAttemptFetchState.fetchState==="Completed"&&d?.cardActivationAttemptHistory.some(E=>E.statusCode==="success")===!0&&_===!1&&(setTimeout(O,3e3),A(!0))},[g.updatePhysicalChargeCardAttemptFetchState.fetchState,d?.cardActivationAttemptHistory]);const W=E=>{R(E)};if(D!=="Completed"||d==null)return s.jsx(la,{fetchState:"In-Progress"});if(d.shippingAddressId==null)throw Error("Can't access shippingAddressId.");if(j?.phone==null)throw Error("Can't access user phone number.");return s.jsxs(Yr,{children:[s.jsx(Ge,{isAppContentDrawerOpen:f,handleDrawerToggle:W}),s.jsx($r,{cardId:n,card:d,shippingAddressId:d.shippingAddressId,phone:j.phone,signedInUser:F,isSandboxEnv:Ka(),chargeCardDetailState:g,signedInUserToken:B,navigate:r,currentTenant:k,location:C,maxChargeCardActivationAttempts:b[n]!=null?b[n]:h.default_max_charge_card_activation_attempts!=null?h.default_max_charge_card_activation_attempts:3,chargeCardCashbackRatePerTransaction:h.charge_card_cashback_rate_per_transaction!=null?h.charge_card_cashback_rate_per_transaction:.0175,onClickMenuIcon:()=>{W(!0)}}),e!=null?s.jsx(zr,{windowSize:t,children:e}):null]})},$r=pe(function(e,{chargeCardDetailState:t,shippingAddressId:a,location:r,cardId:n}){const C=Xt(e.addressState,a);if(C==null)throw Error("Can't access shippingAddress.");const p=ht(e,n),u=t.updateStatus,S=Ke(e,!1,!1,!1);let o=!1;S.fetchState==="Completed"&&S.cards.length<=1&&(o=!0);const c=r.state?.message==="comingFromV2UrlPath";return{showActivatePage:t.chargeCard?.providerCardCreateTime!=null&&t.chargeCard.providerCardCreateTime.add(24,"h").isBefore(en())||c,showMenuIcon:o,shippingAddress:C,vgsVaultId:Ba.cardVaultId,twoFAView:p,activationWaitStatus:u,isRefreshingViewInBackground:t.isRefreshingViewInBackground}},function(e,t){const{navigate:a,cardId:r,location:n,currentTenant:C,chargeCardDetailState:p}=t,u=p.chargeCard?.cardProviderID,{tenantEmailDomain:S}=C;return{onGetOtp:o=>{u!=null&&e(Ta(o,"ChargeCardHolder",r))},onUpdatePhysicalChargeCardAttempt:o=>{e(tn(r,o))},onResendOtp:o=>{u!=null&&e(wa(o,"ChargeCardHolder",r))},onVerifyOtp:(o,c)=>{u!=null&&e(Pa(o,c,"ChargeCardHolder",r))},onVerifyOtpSuccess:o=>{o!=null&&X.saveZeniOtpTokenForCardHolder(o,r)},onCVVActivateSuccess:()=>{e(an({chargeCardId:r}))},onBackClick:()=>{const o=ve(n.state?.pathnameStackToGoBack),c=o.poppedPathname==null||o.poppedPathname.includes("onboard")===!0?Ne(S):o.poppedPathname;a(c,{state:{pathnameStackToGoBack:o.newStack}})}}})(mr),zr=_e.div`
2
2
  display: flex;
3
3
  flex-direction: column;
4
4
  width: ${e=>`${Mr.containerWidth.value(e.windowSize)}%`};
5
5
  ${e=>e.windowSize!=="small"?"overflow: auto;":""}
6
- `,Zr=_e.div`
6
+ `,Yr=_e.div`
7
7
  display: flex;
8
8
  min-height: 100%;
9
9
  width: 100%;
@@ -11,18 +11,18 @@ import{j as s}from"./liveblocks-D5IOuNv9.js";import{j as le,l as ia,h as ue,g as
11
11
  flex-direction: column;
12
12
  align-items: center;
13
13
  background-color: ${e=>e.theme.colors.grey4};
14
- `,Ea=qa.getLocalizedStrings().dateFormat,Yr={overlayWidth:new ma(100,100,58)},Kr=pe(function(e,t){const a=t.currentTenant?.companyId;return{plaidConnectionDetails:cn(e,a,"zeni_accounts","external_account").plaidConnectionDetails,depositAccountListView:dn(e.depositAccountState,e.depositAccountListState)}},function(e,t){const{navigate:a,currentTenant:r,hasZeniAccountsAdminAccess:n,isZeniAccountsUser:C,isCashbackInfoFetchStateCompleted:p,isCreditCardInfoFetchStateCompleted:u,isDebitCardInfoFetchStateCompleted:S,controllerEmails:o,paymentDetails:c,productInformation:_,cashbackInformation:A,paymentSourceInformation:f,creditAccountInformation:U,debitAccountInformation:F,paymentInitiatedDate:k,sourcePage:h}=t,{tenantEmailDomain:b}=r;return{onBackNavigation:()=>{if(p&&u&&S&&A!=null&&X.trackCardsPayEarlyFormClick(o,_,A,"Back",c.chargeCardRepaymentDetailLocalData.isAutoRepayment,{paymentAmount:c.chargeCardRepaymentDetailLocalData.amount.amount,paymentAccountName:c.chargeCardRepaymentDetailLocalData.transferFrom?.label,paymentAccountType:c.chargeCardRepaymentDetailLocalData.transferFrom?.accType,paymentAccountLastFourDigits:c.chargeCardRepaymentDetailLocalData.transferFrom?.accountLast4,paymentCompleteEta:k?.add(3,"day").format(Ea.visual.MMMDCommaYYYYformat),paymentInitiatedDate:k?.format(Ea.visual.MMMDCommaYYYYformat)},f,U,F),h==="cardPaymentHistory")t.closeDrawerHandler(!0),e(bt());else{const g=Ne(b);a(g)}},onUpdatePaymentAccountStatus:(g,d,D)=>{e(mn(g,d,"bill_pay","bill_pay_detail",D))},onEstablishConnectionSuccess:()=>{e(Fa(r.companyId,!0))},onFetchLinkTokenClick:g=>{e(un("external_account",g))},onEstablishConnectionClick:g=>{e(ln(g,r.companyId,"charge_card_payment","charge_cards"))},onSignUpAccountClick:()=>{n?window.open(`/${b}/checking/promo`,"_blank"):window.open("https://www.zeni.ai/product/business-checking-accounts","_blank")},onMoveMoneyClick:()=>{C?window.open(`/${b}/checking/transfer`):window.open("https://www.zeni.ai/product/business-checking-accounts","_blank")}}})(Cr),at=({isPaymentDrawerOpen:e,closeDrawerHandler:t,pageName:a,creditAccountSpentAmount:r,productInformation:n,sourcePage:C,creditAccountInformation:p,debitAccountInformation:u,cashbackInformation:S,isDebitCardInfoFetchStateCompleted:o,isCreditCardInfoFetchStateCompleted:c,isCashbackInfoFetchStateCompleted:_,paymentInitiatedDate:A,retryRepayment:f})=>{const U=le(),{useDynamicConfig:F}=ce(),{configValue:k}=F(Fe.zeniAccountsConfig),h=nn(k),b=y($=>ft($)),{creditAccount:g}=y($=>Ze($)),d=y($=>ie($)),D=Wa(),v=ua(),N=ue(),B=J.getSignedInUser(),w=je(),[V,m]=i.useState(!1),[l,P]=i.useState(!1),{configValue:T}=F(Fe.zeniCardsConfig),H=T.credit_card_auto_pay_threshold_by_company_id?.[d.companyId]??T.default_credit_card_auto_pay_threshold??Lr,O=gt(w?.loggedInUserRoleMap),K=rn(w?.loggedInUserRoleMap),I=!!d.companyZeniAccountInfo?.info?.isZeniAccountEnabled,L=y($=>da($,d.companyId)),j=L.companyChargeCardInfo?.primaryFundingAccount,R=L.allFundingAccounts.find($=>$.id===j?.accountId),W=y($=>$e($,d.companyId)),E=Ge(W.controllers);i.useEffect(()=>{if(b.fetchState!=="Completed"&&b.fetchState!=="In-Progress"&&N(sn()),b.fetchState==="Completed"&&!l){const $=d.companyChargeCardInfo?.info?.primaryFundingAccount?.accountId,x=b.transferFromAccounts.find(ae=>ae.id===$);let se;if(C==="cardPaymentHistory"&&f){const ae=f.paymentAccountId!=null?b.transferFromAccounts.find(ne=>ne.id===f.paymentAccountId):void 0;se={amount:f.amount,isAutoRepayment:d.companyChargeCardInfo?.info?.isAutoPayEnabled??!1,idempotencyKey:ot(),transferFrom:ae??x}}else se={amount:{amount:g.balance.amount+g.hold.amount,currencyCode:g.balance.currencyCode,currencySymbol:g.balance.currencySymbol},isAutoRepayment:d.companyChargeCardInfo?.info?.isAutoPayEnabled??!1,idempotencyKey:ot(),transferFrom:x};N(tt(se)),P(!0)}},[b.fetchState,l,C,f,b.transferFromAccounts,d.companyChargeCardInfo?.info?.primaryFundingAccount?.accountId,d.companyChargeCardInfo?.info?.isAutoPayEnabled,g.balance.amount,g.balance.currencyCode,g.balance.currencySymbol,g.hold.amount,N]);const G={isZeniCheckingEnabled:d.companyZeniAccountInfo?.info?.isZeniAccountEnabled??!1,isZeniCheckingPaymentSource:R?.accType==="depositAccount",creditCardPaymentSourceAccountName:R?.label,creditCardPaymentSourceAccountType:R?.accType,creditCardPaymentSourceLastFourDigits:R?.accountLast4,creditCardPaymentSourceBalance:R?.accountBalance?.available?.amount??0};if(i.useEffect(()=>{L.fetchState!=="Completed"&&L.fetchState!=="In-Progress"&&N(Fa(d.companyId,!0))},[L.fetchState]),i.useEffect(()=>{b.updateStatus==="Completed"&&S!=null&&_&&c&&o&&X.trackCardsPayEarlyPayNowClick(E,n,S,b.chargeCardRepaymentDetailLocalData.isAutoRepayment,{paymentAmount:b.chargeCardRepaymentDetailLocalData.amount.amount,paymentAccountName:b.chargeCardRepaymentDetailLocalData.transferFrom?.label,paymentAccountType:b.chargeCardRepaymentDetailLocalData.transferFrom?.accType,paymentAccountLastFourDigits:b.chargeCardRepaymentDetailLocalData.transferFrom?.accountLast4,paymentCompleteEta:A?.add(3,"day").format(Ea.visual.MMMDCommaYYYYformat),paymentInitiatedDate:A?.format(Ea.visual.MMMDCommaYYYYformat)},G,p,u)},[b.updateStatus,S,_,c,o,A]),i.useEffect(()=>{b.fetchState==="Completed"&&S!=null&&_&&c&&o&&!V&&e&&l&&S!=null&&(X.trackCardsPayEarlyFormView(E,n,S,a,d.companyChargeCardInfo?.info?.isAutoPayEnabled??!1,g.balance.amount,G,p,u),m(!0))},[b,_,c,o,V,e,l]),B==null)throw Error("Can't access invite people page without signing in...");const q=()=>{t(!0),N(bt())};return s.jsx(s.Fragment,{children:s.jsx(Ht,{onClose:()=>{q()},anchor:"right",transitionDuration:250,open:e,PaperProps:{style:{width:Yr.overlayWidth.valuePercentage(v),boxShadow:"none"}},slotProps:{backdrop:{style:{backgroundColor:D.colors.black,opacity:.75,cursor:"pointer"}}},children:s.jsx(Wr,{onClick:$=>$.stopPropagation(),children:s.jsx(Kr,{closeDrawerHandler:t,navigate:U,paymentDetails:b,creditAccountSpentAmount:r,onTransferClick:()=>{_&&c&&o&&S!=null&&X.trackCardsPayEarlyFormClick(E,n,S,"Pay Now",b.chargeCardRepaymentDetailLocalData.isAutoRepayment,{paymentAmount:b.chargeCardRepaymentDetailLocalData.amount.amount,paymentAccountName:b.chargeCardRepaymentDetailLocalData.transferFrom?.label,paymentAccountType:b.chargeCardRepaymentDetailLocalData.transferFrom?.accType,paymentAccountLastFourDigits:b.chargeCardRepaymentDetailLocalData.transferFrom?.accountLast4,paymentCompleteEta:void 0,paymentInitiatedDate:void 0},G,p,u),N(on({companyId:d.companyId}))},onDismissClick:q,onSaveChangesToLocalStore:$=>{N(tt($))},currentTenant:d,hasZeniAccountsAdminAccess:O,isZeniAccountsUser:K,isZeniAccountSetupEnabled:I,productInformation:n,sourcePage:C,controllerEmails:E,autoPayThreshold:H,paymentSourceInformation:G,creditAccountInformation:p,debitAccountInformation:u,cashbackInformation:S,isCashbackInfoFetchStateCompleted:_,isCreditCardInfoFetchStateCompleted:c,isDebitCardInfoFetchStateCompleted:o,paymentInitiatedDate:A,maxInsuredAmount:h.maxInsuredAmount})})})})},Wr=_e(xr)`
14
+ `,Ea=qa.getLocalizedStrings().dateFormat,Zr={overlayWidth:new ma(100,100,58)},Kr=pe(function(e,t){const a=t.currentTenant?.companyId;return{plaidConnectionDetails:cn(e,a,"zeni_accounts","external_account").plaidConnectionDetails,depositAccountListView:dn(e.depositAccountState,e.depositAccountListState)}},function(e,t){const{navigate:a,currentTenant:r,hasZeniAccountsAdminAccess:n,isZeniAccountsUser:C,isCashbackInfoFetchStateCompleted:p,isCreditCardInfoFetchStateCompleted:u,isDebitCardInfoFetchStateCompleted:S,controllerEmails:o,paymentDetails:c,productInformation:_,cashbackInformation:A,paymentSourceInformation:f,creditAccountInformation:R,debitAccountInformation:F,paymentInitiatedDate:k,sourcePage:h}=t,{tenantEmailDomain:b}=r;return{onBackNavigation:()=>{if(p&&u&&S&&A!=null&&J.trackCardsPayEarlyFormClick(o,_,A,"Back",c.chargeCardRepaymentDetailLocalData.isAutoRepayment,{paymentAmount:c.chargeCardRepaymentDetailLocalData.amount.amount,paymentAccountName:c.chargeCardRepaymentDetailLocalData.transferFrom?.label,paymentAccountType:c.chargeCardRepaymentDetailLocalData.transferFrom?.accType,paymentAccountLastFourDigits:c.chargeCardRepaymentDetailLocalData.transferFrom?.accountLast4,paymentCompleteEta:k?.add(3,"day").format(Ea.visual.MMMDCommaYYYYformat),paymentInitiatedDate:k?.format(Ea.visual.MMMDCommaYYYYformat)},f,R,F),h==="cardPaymentHistory")t.closeDrawerHandler(!0),e(bt());else{const g=Ne(b);a(g)}},onUpdatePaymentAccountStatus:(g,d,D)=>{e(mn(g,d,"bill_pay","bill_pay_detail",D))},onEstablishConnectionSuccess:()=>{e(Fa(r.companyId,!0))},onFetchLinkTokenClick:g=>{e(un("external_account",g))},onEstablishConnectionClick:g=>{e(ln(g,r.companyId,"charge_card_payment","charge_cards"))},onSignUpAccountClick:()=>{n?window.open(`/${b}/checking/promo`,"_blank"):window.open("https://www.zeni.ai/product/business-checking-accounts","_blank")},onMoveMoneyClick:()=>{C?window.open(`/${b}/checking/transfer`):window.open("https://www.zeni.ai/product/business-checking-accounts","_blank")}}})(Cr),at=({isPaymentDrawerOpen:e,closeDrawerHandler:t,pageName:a,creditAccountSpentAmount:r,productInformation:n,sourcePage:C,creditAccountInformation:p,debitAccountInformation:u,cashbackInformation:S,isDebitCardInfoFetchStateCompleted:o,isCreditCardInfoFetchStateCompleted:c,isCashbackInfoFetchStateCompleted:_,paymentInitiatedDate:A,retryRepayment:f})=>{const R=le(),{useDynamicConfig:F}=ce(),{configValue:k}=F(Fe.zeniAccountsConfig),h=nn(k),b=y($=>ft($)),{creditAccount:g}=y($=>Ye($)),d=y($=>ie($)),D=Wa(),v=ua(),N=ue(),L=X.getSignedInUser(),w=je(),[V,m]=i.useState(!1),[l,P]=i.useState(!1),{configValue:T}=F(Fe.zeniCardsConfig),H=T.credit_card_auto_pay_threshold_by_company_id?.[d.companyId]??T.default_credit_card_auto_pay_threshold??Br,U=gt(w?.loggedInUserRoleMap),K=rn(w?.loggedInUserRoleMap),I=!!d.companyZeniAccountInfo?.info?.isZeniAccountEnabled,B=y($=>da($,d.companyId)),j=B.companyChargeCardInfo?.primaryFundingAccount,O=B.allFundingAccounts.find($=>$.id===j?.accountId),W=y($=>$e($,d.companyId)),E=ze(W.controllers);i.useEffect(()=>{if(b.fetchState!=="Completed"&&b.fetchState!=="In-Progress"&&N(sn()),b.fetchState==="Completed"&&!l){const $=d.companyChargeCardInfo?.info?.primaryFundingAccount?.accountId,x=b.transferFromAccounts.find(ae=>ae.id===$);let se;if(C==="cardPaymentHistory"&&f){const ae=f.paymentAccountId!=null?b.transferFromAccounts.find(ne=>ne.id===f.paymentAccountId):void 0;se={amount:f.amount,isAutoRepayment:d.companyChargeCardInfo?.info?.isAutoPayEnabled??!1,idempotencyKey:ot(),transferFrom:ae??x}}else se={amount:{amount:g.balance.amount+g.hold.amount,currencyCode:g.balance.currencyCode,currencySymbol:g.balance.currencySymbol},isAutoRepayment:d.companyChargeCardInfo?.info?.isAutoPayEnabled??!1,idempotencyKey:ot(),transferFrom:x};N(tt(se)),P(!0)}},[b.fetchState,l,C,f,b.transferFromAccounts,d.companyChargeCardInfo?.info?.primaryFundingAccount?.accountId,d.companyChargeCardInfo?.info?.isAutoPayEnabled,g.balance.amount,g.balance.currencyCode,g.balance.currencySymbol,g.hold.amount,N]);const z={isZeniCheckingEnabled:d.companyZeniAccountInfo?.info?.isZeniAccountEnabled??!1,isZeniCheckingPaymentSource:O?.accType==="depositAccount",creditCardPaymentSourceAccountName:O?.label,creditCardPaymentSourceAccountType:O?.accType,creditCardPaymentSourceLastFourDigits:O?.accountLast4,creditCardPaymentSourceBalance:O?.accountBalance?.available?.amount??0};if(i.useEffect(()=>{B.fetchState!=="Completed"&&B.fetchState!=="In-Progress"&&N(Fa(d.companyId,!0))},[B.fetchState]),i.useEffect(()=>{b.updateStatus==="Completed"&&S!=null&&_&&c&&o&&J.trackCardsPayEarlyPayNowClick(E,n,S,b.chargeCardRepaymentDetailLocalData.isAutoRepayment,{paymentAmount:b.chargeCardRepaymentDetailLocalData.amount.amount,paymentAccountName:b.chargeCardRepaymentDetailLocalData.transferFrom?.label,paymentAccountType:b.chargeCardRepaymentDetailLocalData.transferFrom?.accType,paymentAccountLastFourDigits:b.chargeCardRepaymentDetailLocalData.transferFrom?.accountLast4,paymentCompleteEta:A?.add(3,"day").format(Ea.visual.MMMDCommaYYYYformat),paymentInitiatedDate:A?.format(Ea.visual.MMMDCommaYYYYformat)},z,p,u)},[b.updateStatus,S,_,c,o,A]),i.useEffect(()=>{b.fetchState==="Completed"&&S!=null&&_&&c&&o&&!V&&e&&l&&S!=null&&(J.trackCardsPayEarlyFormView(E,n,S,a,d.companyChargeCardInfo?.info?.isAutoPayEnabled??!1,g.balance.amount,z,p,u),m(!0))},[b,_,c,o,V,e,l]),L==null)throw Error("Can't access invite people page without signing in...");const q=()=>{t(!0),N(bt())};return s.jsx(s.Fragment,{children:s.jsx(Ht,{onClose:()=>{q()},anchor:"right",transitionDuration:250,open:e,PaperProps:{style:{width:Zr.overlayWidth.valuePercentage(v),boxShadow:"none"}},slotProps:{backdrop:{style:{backgroundColor:D.colors.black,opacity:.75,cursor:"pointer"}}},children:s.jsx(Wr,{onClick:$=>$.stopPropagation(),children:s.jsx(Kr,{closeDrawerHandler:t,navigate:R,paymentDetails:b,creditAccountSpentAmount:r,onTransferClick:()=>{_&&c&&o&&S!=null&&J.trackCardsPayEarlyFormClick(E,n,S,"Pay Now",b.chargeCardRepaymentDetailLocalData.isAutoRepayment,{paymentAmount:b.chargeCardRepaymentDetailLocalData.amount.amount,paymentAccountName:b.chargeCardRepaymentDetailLocalData.transferFrom?.label,paymentAccountType:b.chargeCardRepaymentDetailLocalData.transferFrom?.accType,paymentAccountLastFourDigits:b.chargeCardRepaymentDetailLocalData.transferFrom?.accountLast4,paymentCompleteEta:void 0,paymentInitiatedDate:void 0},z,p,u),N(on({companyId:d.companyId}))},onDismissClick:q,onSaveChangesToLocalStore:$=>{N(tt($))},currentTenant:d,hasZeniAccountsAdminAccess:U,isZeniAccountsUser:K,isZeniAccountSetupEnabled:I,productInformation:n,sourcePage:C,controllerEmails:E,autoPayThreshold:H,paymentSourceInformation:z,creditAccountInformation:p,debitAccountInformation:u,cashbackInformation:S,isCashbackInfoFetchStateCompleted:_,isCreditCardInfoFetchStateCompleted:c,isDebitCardInfoFetchStateCompleted:o,paymentInitiatedDate:A,maxInsuredAmount:h.maxInsuredAmount})})})})},Wr=_e(xr)`
15
15
  display: flex;
16
16
  min-height: 100%;
17
17
  flex-direction: column;
18
- `,Kt="charge-card-transaction-update",Ra=qa.getLocalizedStrings().dateFormat,qr=pe(function(e,t){const{includeCreditAccountInfo:a,cardId:r,signedInUserToken:n,isChargeCardFeatureEnabled:C}=t,p=J.getSignedInUser(),u=e.tenantState.currentTenantId,S={userId:p?.userId??"",sessionId:p?.zeniSessionId??"",tenantId:u??""},o=Ma(e,r,a,C),c=pn(e,r),_=hn(e);return{chargeCardDetailView:o,chargeCardsRecurringExpensesState:c,vgsVaultId:La.cardVaultId,transactionAttachmentsEndpointToFetch:`${Ha}/card_transaction_attachments`,transactionAttachmentEndpointToDownload:`${Ha}/card_transaction_attachment`,authParams:S,isSnackbarOpen:_.isSnackbarOpen,cardsEndPoint:`${jt.cardMicroServiceBaseUrl}`,signedInUserToken:o.twoFAView.token??n}},function(e,t){const{cardId:a,currentTenant:r,navigate:n,location:C,cardProviderId:p,includeCreditAccountInfo:u,setIsPaymentOpen:S,controllerEmails:o,productInformation:c,cashbackInformation:_,primaryFundingAccountDetails:A,creditAccountInformation:f,debitAccountInformation:U,isChargeCardFeatureEnabled:F}=t,{tenantEmailDomain:k}=r;return{onEventReceived:h=>{h===Kt&&(e(Ga(a,!0)),e(nt(a,null,null,!0)))},onReloadTransactions:()=>{e(Je(a,u,F))},onFetchChargeCardTransactionList:(h,b)=>{e(nt(a,h,b))},onUpdateScrollYOffset:h=>{},onGetOtp:h=>{p!=null&&e(Ta(h,"ChargeCardHolder",a))},onResendOtp:h=>{p!=null&&e(wa(h,"ChargeCardHolder",a))},onVerifyOtp:(h,b)=>{p!=null&&e(Pa(h,b,"ChargeCardHolder",a))},onVerifyOtpSuccess:h=>{h!=null&&J.saveZeniOtpTokenForCardHolder(h,a)},onColorCodeChange:h=>{e(In(a,h))},onLockChargeCard:(h,b)=>{e(Pt(h,a,b))},onUnlockChargeCard:h=>{e(_t(h,a))},onCloseChargeCard:h=>{e(Dt(a,h))},onFetchChargeCardsRecurringExpenses:()=>{e(kt([a]))},updateChargeCardName:(h,b)=>{e(Et(h,a,b))},updateChargeCardTransactionAttachments:(h,b)=>{b!=null&&e(Sn({transactionId:h,data:b}))},updateChargeCardTransactionUploadReceiptsFetchStatus:(h,b,g,d)=>{e(yn({chargeCardId:b,transactionId:h,fetchState:g,error:d}))},updateChargeCardTransactionReceiptsShowTick:(h,b,g)=>{e(bn({chargeCardId:b,transactionId:h,shouldShowTick:g}))},onChargeCardRevokeInviteClick:()=>{e(At(a))},updateChargeCardTransactionIsViewReceiptClicked:(h,b,g)=>{e(gn({chargeCardId:b,transactionId:h,isViewReceiptClicked:g}))},onChargeCardTransactionRowClick:(h,b)=>{const g=fe(C.state?.pathnameStackToGoBack,C.pathname);n(`../../transaction/${h}/${b}`,{state:{pathnameStackToGoBack:g}})},onBackClick:()=>{const h=ve(C.state?.pathnameStackToGoBack),b=Ne(k);n(b,{state:{pathnameStackToGoBack:h.newStack,message:"comingFromCardDetail"}})},removeSnackbar:()=>{e(fn())},onUpdateDebitCardPinAttempt:h=>{e(It(a,h)),h==="success"&&e(oa({messageSection:"update_debit_card_pin_attempt",messageText:"success",type:"success",showStatusIcon:!0}))},onUploadReceiptComplete:(h,b)=>{h?e(oa({messageSection:"charge_card_receipt_upload",messageText:"success",type:"success",showStatusIcon:!0})):b!=null&&e(oa({messageSection:"charge_card_receipt_upload",messageText:"failed",type:"error",showStatusIcon:!0,variables:[{variableName:"_api-error_",variableValue:b.message}]}))},updateSpendLimit(h,b,g,d){e(St(h,b,g.code,d))},shouldOpenCreditCardPaymentDrawer(h){h&&_!=null&&X.trackCardsPayEarlyClick(o,c,_,"Card Detail","Text Button","Pay Now",{isZeniCheckingEnabled:r.company?.companyZeniAccountInfo.isZeniAccountEnabled??!1,isZeniCheckingPaymentSource:A?.accType==="depositAccount",creditCardPaymentSourceAccountName:A?.label,creditCardPaymentSourceAccountType:A?.accType,creditCardPaymentSourceLastFourDigits:A?.accountLast4,creditCardPaymentSourceBalance:A?.accountBalance?.available?.amount??0},f,U),S(h)}}})(hr(fr));function Xr(){const e=le(),t=ue(),a=ge(),{cardId:r}=ia(),[n,C]=i.useState(!1),[p,u]=i.useState(!1),{useDynamicConfig:S}=ce(),o=J.getSignedInUser(),c=y(M=>ie(M)),_=y(M=>ka(M).firstViewAfterActivation),A=y(M=>M.classListState.fetchState),{configValue:f}=S(Fe.documentAiReceiptMaxSizeLimitBytesConfig),{configValue:U}=S(Fe.zeniCardsConfig),F=U.enable_card_controls_for_company_ids,k=U.is_card_controls_enabled_for_all_tenants===!0||Array.isArray(F)&&F.includes(c.companyId),[h,b]=i.useState(!1),[g,d]=i.useState(!1),{useFeatureGate:D}=ce(),{isFeatureEnabled:v}=D(Z.isChargeCardFeatureEnabled),{isFeatureEnabled:N}=D(Z.isDebitCardFeatureEnabled),B=Se(N,c),w=Ie({isDebitCardFeatureEnabled:N,isBankingOnlyTenant:B}),{isFeatureEnabled:V}=D(Z.isEarlyPayFeatureEnabled),{isFeatureEnabled:m}=D(Z.isCardsCommentingEnabled),l=ye(c),P=be(c),T=c.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,H=Ae({isCardsOnlyTenant:P,isChargeCardFeatureEnabled:v,isBookKeepingTenant:l,isDebitCardProductVisible:w,chargeCardsCreditAccountLimit:T}),O=!!c.companyDebitCardInfo?.info?.isDebitCardEnabled,K=!!c.companyChargeCardInfo?.info?.isChargeCardEnabled,I=!c.userRole.includes("charge_card_user")&&H&&K;if(r==null)throw Error("Empty card id is not valid...");const L=y(M=>da(M,c.companyId)),{creditAccount:j,creditAccountRepayment:R}=y(M=>Ze(M)),W=J.getZeniOtpTokenForCardHolder(r),E=y(M=>Ma(M,r,I,H)),{isAiCfoAccessEnabled:G,onAskAiCfoClick:q}=Zt({mobileExploreReferrer:"Card Detail"});Yt({isDataReady:E.fetchState==="Completed"});const $=y(M=>Ye(M)),x=E.chargeCard,se=je(),ae=Ue(se?.loggedInUserRoleMap),ne=x?.type.code==="business_physical_debit_card"||x?.type.code==="business_virtual_debit_card",Q=x?.type.code==="business_physical_debit_card"||x?.type.code==="business_physical_credit_card",re=x?.type.code==="business_virtual_debit_card"||x?.type.code==="business_virtual_credit_card",Ee=x?.type.code==="business_virtual_debit_card",xe=Ca(H,K,ae,j,R),Y=Mt(ne,E),he=Ja(ae,$),ke=Re(H,w,O,K),Le=E.depositAccountLimitFetchState.fetchState!=="Completed"&&E.depositAccountLimitFetchState.fetchState!=="In-Progress",Pe=y(M=>$e(M,c.companyId)),we=Ge(Pe.controllers),ee=y(M=>x?.cardCreatedByUser?.userId!=null?ba(M.userRoleState,x?.cardCreatedByUser?.userId):void 0),pa=y(M=>ee?.accountingClassIDs[0]!=null?ya(M.classState,{classId:ee?.accountingClassIDs[0],reportId:"class_list"}):void 0),oe=y(M=>x?.cardHolderUser?.userId!=null?ba(M.userRoleState,x?.cardHolderUser?.userId):void 0),ea=y(M=>oe?.accountingClassIDs[0]!=null?ya(M.classState,{classId:oe?.accountingClassIDs[0],reportId:"class_list"}):void 0),de=c?.userRole,Be=y(M=>Ke(M,!1,w,v).revokeCardInvite),aa=Xa(Be.saveStatus.fetchState);if(i.useEffect(()=>{if(aa==="In-Progress"&&Be.saveStatus.fetchState==="Completed"){const M=Ne(c.tenantEmailDomain);e(M)}},[aa,Be.saveStatus.fetchState,e,c.tenantEmailDomain]),i.useEffect(()=>{_&&n===!1&&re&&(C(!0),setTimeout(()=>{t(Sa()),Ee&&t(oa({messageSection:"set_debit_card_pin",messageText:"success",type:"success",showStatusIcon:!0}))},5e3))},[_,n,re,Ee]),i.useEffect(()=>{h||E.fetchState==="Completed"||E.fetchState==="In-Progress"||r==null||(b(!0),t(Je(r,I,H,!1)))},[h,E,r,t]),i.useEffect(()=>{!g&&E.fetchState==="Completed"&&E.chargeCard?.connectedAccountId!=null&&ne&&Le&&ae&&(d(!0),t(yt({depositAccountId:E.chargeCard?.connectedAccountId})))},[g,E,t,Le,ae]),i.useEffect(()=>{$.fetchState!=="Completed"&&$.fetchState!=="In-Progress"&&ae&&t(Ct()),A!=="Completed"&&A!=="In-Progress"&&t(mt()),E.transactionStatistics.fetchState!=="Completed"&&E.transactionStatistics.fetchState!=="In-Progress"&&t(Cn({chargeCardId:r})),L.fetchState!=="Completed"&&L.fetchState!=="In-Progress"&&t(Fa(c.companyId,!0))},[$.fetchState,t,ae,A,E.transactionStatistics.fetchState,L.fetchState]),i.useEffect(()=>{if(!(E.fetchState!=="Completed"||H&&j.fetchState!=="Completed"||x==null||E.transactionStatistics.fetchState!=="Completed"||ne&&ae&&E.depositAccountLimitFetchState.fetchState!=="Completed")){const M=x.type.code.includes("physical"),me=M?x.cardActivationAttemptHistory[0]?.timestamp:x.createTime;X.trackCardsCardDetailView(we,ke,{cardId:r,cardName:x.cardName,cardType:x.type.code.includes("credit")?"credit":"debit",cardCategory:M?"physical":"virtual",cardLimit:Xe(x.limit.amount),cardLastFourDigits:x.accountLast4,cardStatus:x.status.code,cardAssignedDate:x.createTime?.format(Ra.analytics.MMMDashDDDashYYYYFormat),cardIssuedDate:x.providerCardCreateTime?.format(Ra.analytics.MMMDashDDDashYYYYFormat),cardActivatedDate:me?.format(Ra.analytics.MMMDashDDDashYYYYFormat),cardLimitFrequency:x.creditLimitFrequency.name,cardSpentAmount:Xe(x.balance.amount),cardAvailableLimit:Xe(x.available.amount),cardUtilizationPercent:x.limit.amount>0?Math.round((x.limit.amount-x.available.amount)/x.limit.amount*100):0,cardUtilizationAmount:Xe(x.limit.amount-x.available.amount),totalNumberOfDeclinedTransactions:E.transactionStatistics.statistics.totalNumberOfDeclinedTransactions,numberOfDeclinedTransactionsCurrentMonth:E.transactionStatistics.statistics.numberOfDeclinedTransactionsCurrentMonth,totalNumberOfPaidTransactions:E.transactionStatistics.statistics.totalNumberOfPaidTransactions,numberOfPaidTransactionsCurrentMonth:E.transactionStatistics.statistics.numberOfPaidTransactionsCurrentMonth,totalNumberOfCanceledTransactions:E.transactionStatistics.statistics.totalNumberOfCanceledTransactions,numberOfCanceledTransactionsCurrentMonth:E.transactionStatistics.statistics.numberOfCanceledTransactionsCurrentMonth,totalNumberOfAuthorizedTransactions:E.transactionStatistics.statistics.totalNumberOfAuthorizedTransactions,numberOfAuthorizedTransactionsCurrentMonth:E.transactionStatistics.statistics.numberOfAuthorizedTransactionsCurrentMonth,totalNumberOfTransactionsWithReceipts:E.transactionStatistics.statistics.totalNumberOfTransactionsWithReceipts,numberOfTransactionsWithReceiptsCurrentMonth:E.transactionStatistics.statistics.numberOfTransactionsWithReceiptsCurrentMonth},{cardIssuedByName:Va(x.cardCreatedByUser,!1),cardIssuedByEmail:x.cardCreatedByUser?.email,cardIssuedByUserId:x.cardCreatedByUser?.userId,cardIssuedByRole:ee?.userRoles,cardIssuedByDepartment:pa?.className},{cardholderName:Va(x.cardHolderUser,!1),cardholderEmail:x.cardHolderUser?.email,cardholderRole:oe?.userRoles,cardholderUserId:x.cardHolderUser?.userId,cardholderDepartment:ea?.className},xe,Y)}},[E.fetchState,E.depositAccountLimitFetchState.fetchState,E.transactionStatistics.fetchState,j.fetchState,ae]),o==null)throw Error("Can't access card detail page without signing in...");const We=c.companyId??J.getSignedInUserTenant(c.tenantEmailDomain)?.companyId,ta={events:We!=null?[`private-encrypted-${We}.${Kt}`]:[],eventCallback:(M,me,Te)=>{Te.onEventReceived(M)}},na=()=>{if(r!=null&&x!=null){const{ownerName:M,cardName:me,utilisation:Te,limit:Ve,frequency:qe,cardColor:z}=ja(x),De=x.cardHolderUserId===o.userId;X.trackCardsDetailPageViewed(r,M,me,Te,Ve,qe,z,De)}};i.useEffect(()=>{if(E.fetchState==="Completed"){const M=E.chargeCard;if(M?.status.code==="inactive"||ne&&M?.isPinSet===!1||Q&&_){const me=Ce(c.tenantEmailDomain,r,o,x,_);e(me)}}},[E.fetchState]);const ra=(M,me)=>{if(r!=null&&x!=null){const{ownerName:Te,cardName:Ve,utilisation:qe,limit:z,frequency:De}=ja(x),He=x.cardHolderUserId===o.userId;X.trackCardsDetailPageClicked(r,Te,Ve,qe,z,De,M,He,me)}},sa=(M,me)=>{if(r!=null&&x!=null){const{ownerName:Te,cardName:Ve,utilisation:qe,limit:z,frequency:De}=ja(x),He=x.cardHolderUserId===o.userId;X.trackCardsVerifyPopUpClick(r,Te,Ve,qe,z,De,M,He,me)}},Oa=j.balance.amount+j.hold.amount,ha=c.companyChargeCardInfo?.info?.primaryFundingAccount,fa=L.allFundingAccounts.find(M=>M.id===ha?.accountId);return r==null||E.fetchState==="Error"?s.jsx(Ba,{}):E.fetchState==="In-Progress"||E.fetchState==="Not-Started"||Be.saveStatus.fetchState==="In-Progress"||ne&&ae&&E.depositAccountLimitFetchState.fetchState!=="Completed"?s.jsx(pr,{}):s.jsxs(s.Fragment,{children:[s.jsx(xa,{showConfetti:_}),E.fetchState==="Completed"?s.jsx(Qa,{analytics:X,onLoad:na}):null,p===!0?s.jsx(at,{closeDrawerHandler:()=>u(!1),isPaymentDrawerOpen:p,pageName:"Card Detail",sourcePage:"cardDetailPage",productInformation:ke,creditAccountInformation:xe,debitAccountInformation:Y,cashbackInformation:he,creditAccountSpentAmount:Oa,isDebitCardInfoFetchStateCompleted:!ne||!ae||E.depositAccountLimitFetchState.fetchState==="Completed",isCreditCardInfoFetchStateCompleted:!H||j.fetchState==="Completed",isCashbackInfoFetchStateCompleted:!ae||$.fetchState==="Completed",paymentInitiatedDate:R.initiatedRepaymentDate}):null,s.jsx(qr,{...ta,hideSorting:!0,onColumnSortConfigChanged:()=>{},onFireVerifyPopOnClickAnalytics:sa,onFireOnClickAnalytics:ra,isSandboxEnv:Ka(),signedInUser:o,location:a,navigate:e,setIsPaymentOpen:u,cardIssuedByRoles:ee?.userRoles,cardIssuedByDepartmentName:pa?.className,cardHolderRoles:oe?.userRoles,cardHolderDepartmentName:ea?.className,loggedInUserRole:de,isChargeCardFeatureEnabled:H,isDebitCardFeatureEnabled:w,isDebitCardSetupEnabled:O,isChargeCardSetupEnabled:K,isCardControlsEnabled:k,isEarlyPayEnabled:V,controllerEmails:we,chargeCardCashbackDetailState:$,productInformation:ke,creditAccountInformation:xe,debitAccountInformation:Y,cashbackInformation:he,classListFetchState:A,primaryFundingAccountDetails:fa,currentTenant:c,cardProviderId:E.chargeCard?.cardProviderID,cardId:r,creditAccount:j,creditAccountRepayment:R,includeCreditAccountInfo:I,signedInUserToken:W,appleWalletLink:"shoebox://",googleWalletLink:"https://www.android.com/payapp/",documentAiReceiptMaxSizeLimit:f.documentAiReceiptMaxSizeLimitBytes!=null?f.documentAiReceiptMaxSizeLimitBytes:9437184,isAiCfoAccessEnabled:G,onAskAiCfoClick:q,isCardsCommentingEnabled:m})]})}const ja=e=>{const t=`${e.cardHolderUser?.firstName.toLowerCase()} ${e.cardHolderUser?.lastName.toLowerCase()}`,a=e.cardName,r=(e.limit.amount??0)-(e.available.amount??0),n=e.limit.amount,C=e.creditLimitFrequency.name;return{ownerName:t,cardName:a,utilisation:r,cardColor:e.cardColorCode??"",frequency:C,limit:n}},Qr=_e.div`
18
+ `,Kt="charge-card-transaction-update",Oa=qa.getLocalizedStrings().dateFormat,qr=pe(function(e,t){const{includeCreditAccountInfo:a,cardId:r,signedInUserToken:n,isChargeCardFeatureEnabled:C}=t,p=X.getSignedInUser(),u=e.tenantState.currentTenantId,S={userId:p?.userId??"",sessionId:p?.zeniSessionId??"",tenantId:u??""},o=Ma(e,r,a,C),c=pn(e,r),_=hn(e);return{chargeCardDetailView:o,chargeCardsRecurringExpensesState:c,vgsVaultId:Ba.cardVaultId,transactionAttachmentsEndpointToFetch:`${Ha}/card_transaction_attachments`,transactionAttachmentEndpointToDownload:`${Ha}/card_transaction_attachment`,authParams:S,isSnackbarOpen:_.isSnackbarOpen,cardsEndPoint:`${jt.cardMicroServiceBaseUrl}`,signedInUserToken:o.twoFAView.token??n}},function(e,t){const{cardId:a,currentTenant:r,navigate:n,location:C,cardProviderId:p,includeCreditAccountInfo:u,setIsPaymentOpen:S,controllerEmails:o,productInformation:c,cashbackInformation:_,primaryFundingAccountDetails:A,creditAccountInformation:f,debitAccountInformation:R,isChargeCardFeatureEnabled:F}=t,{tenantEmailDomain:k}=r;return{onEventReceived:h=>{h===Kt&&(e(za(a,!0)),e(nt(a,null,null,!0)))},onReloadTransactions:()=>{e(Xe(a,u,F))},onFetchChargeCardTransactionList:(h,b)=>{e(nt(a,h,b))},onUpdateScrollYOffset:h=>{},onGetOtp:h=>{p!=null&&e(Ta(h,"ChargeCardHolder",a))},onResendOtp:h=>{p!=null&&e(wa(h,"ChargeCardHolder",a))},onVerifyOtp:(h,b)=>{p!=null&&e(Pa(h,b,"ChargeCardHolder",a))},onVerifyOtpSuccess:h=>{h!=null&&X.saveZeniOtpTokenForCardHolder(h,a)},onColorCodeChange:h=>{e(In(a,h))},onLockChargeCard:(h,b)=>{e(Pt(h,a,b))},onUnlockChargeCard:h=>{e(_t(h,a))},onCloseChargeCard:h=>{e(Dt(a,h))},onFetchChargeCardsRecurringExpenses:()=>{e(kt([a]))},updateChargeCardName:(h,b)=>{e(Et(h,a,b))},updateChargeCardTransactionAttachments:(h,b)=>{b!=null&&e(Sn({transactionId:h,data:b}))},updateChargeCardTransactionUploadReceiptsFetchStatus:(h,b,g,d)=>{e(yn({chargeCardId:b,transactionId:h,fetchState:g,error:d}))},updateChargeCardTransactionReceiptsShowTick:(h,b,g)=>{e(bn({chargeCardId:b,transactionId:h,shouldShowTick:g}))},onChargeCardRevokeInviteClick:()=>{e(At(a))},updateChargeCardTransactionIsViewReceiptClicked:(h,b,g)=>{e(gn({chargeCardId:b,transactionId:h,isViewReceiptClicked:g}))},onChargeCardTransactionRowClick:(h,b)=>{const g=fe(C.state?.pathnameStackToGoBack,C.pathname);n(`../../transaction/${h}/${b}`,{state:{pathnameStackToGoBack:g}})},onBackClick:()=>{const h=ve(C.state?.pathnameStackToGoBack),b=Ne(k);n(b,{state:{pathnameStackToGoBack:h.newStack,message:"comingFromCardDetail"}})},removeSnackbar:()=>{e(fn())},onUpdateDebitCardPinAttempt:h=>{e(It(a,h)),h==="success"&&e(oa({messageSection:"update_debit_card_pin_attempt",messageText:"success",type:"success",showStatusIcon:!0}))},onUploadReceiptComplete:(h,b)=>{h?e(oa({messageSection:"charge_card_receipt_upload",messageText:"success",type:"success",showStatusIcon:!0})):b!=null&&e(oa({messageSection:"charge_card_receipt_upload",messageText:"failed",type:"error",showStatusIcon:!0,variables:[{variableName:"_api-error_",variableValue:b.message}]}))},updateSpendLimit(h,b,g,d){e(St(h,b,g.code,d))},shouldOpenCreditCardPaymentDrawer(h){h&&_!=null&&J.trackCardsPayEarlyClick(o,c,_,"Card Detail","Text Button","Pay Now",{isZeniCheckingEnabled:r.company?.companyZeniAccountInfo.isZeniAccountEnabled??!1,isZeniCheckingPaymentSource:A?.accType==="depositAccount",creditCardPaymentSourceAccountName:A?.label,creditCardPaymentSourceAccountType:A?.accType,creditCardPaymentSourceLastFourDigits:A?.accountLast4,creditCardPaymentSourceBalance:A?.accountBalance?.available?.amount??0},f,R),S(h)}}})(hr(fr));function Jr(){const e=le(),t=ue(),a=ge(),{cardId:r}=ia(),[n,C]=i.useState(!1),[p,u]=i.useState(!1),{useDynamicConfig:S}=ce(),o=X.getSignedInUser(),c=y(M=>ie(M)),_=y(M=>ka(M).firstViewAfterActivation),A=y(M=>M.classListState.fetchState),{configValue:f}=S(Fe.documentAiReceiptMaxSizeLimitBytesConfig),{configValue:R}=S(Fe.zeniCardsConfig),F=R.enable_card_controls_for_company_ids,k=R.is_card_controls_enabled_for_all_tenants===!0||Array.isArray(F)&&F.includes(c.companyId),[h,b]=i.useState(!1),[g,d]=i.useState(!1),{useFeatureGate:D}=ce(),{isFeatureEnabled:v}=D(Y.isChargeCardFeatureEnabled),{isFeatureEnabled:N}=D(Y.isDebitCardFeatureEnabled),L=Se(N,c),w=Ie({isDebitCardFeatureEnabled:N,isBankingOnlyTenant:L}),{isFeatureEnabled:V}=D(Y.isEarlyPayFeatureEnabled),{isFeatureEnabled:m}=D(Y.isCardsCommentingEnabled),l=ye(c),P=be(c),T=c.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,H=Ae({isCardsOnlyTenant:P,isChargeCardFeatureEnabled:v,isBookKeepingTenant:l,isDebitCardProductVisible:w,chargeCardsCreditAccountLimit:T}),U=!!c.companyDebitCardInfo?.info?.isDebitCardEnabled,K=!!c.companyChargeCardInfo?.info?.isChargeCardEnabled,I=!c.userRole.includes("charge_card_user")&&H&&K;if(r==null)throw Error("Empty card id is not valid...");const B=y(M=>da(M,c.companyId)),{creditAccount:j,creditAccountRepayment:O}=y(M=>Ye(M)),W=X.getZeniOtpTokenForCardHolder(r),E=y(M=>Ma(M,r,I,H)),{isAiCfoAccessEnabled:z,onAskAiCfoClick:q}=Yt({mobileExploreReferrer:"Card Detail"});Zt({isDataReady:E.fetchState==="Completed"});const $=y(M=>Ze(M)),x=E.chargeCard,se=je(),ae=Re(se?.loggedInUserRoleMap),ne=x?.type.code==="business_physical_debit_card"||x?.type.code==="business_virtual_debit_card",Q=x?.type.code==="business_physical_debit_card"||x?.type.code==="business_physical_credit_card",re=x?.type.code==="business_virtual_debit_card"||x?.type.code==="business_virtual_credit_card",Ee=x?.type.code==="business_virtual_debit_card",xe=Ca(H,K,ae,j,O),Z=Mt(ne,E),he=Xa(ae,$),ke=Oe(H,w,U,K),Be=E.depositAccountLimitFetchState.fetchState!=="Completed"&&E.depositAccountLimitFetchState.fetchState!=="In-Progress",Pe=y(M=>$e(M,c.companyId)),we=ze(Pe.controllers),ee=y(M=>x?.cardCreatedByUser?.userId!=null?ba(M.userRoleState,x?.cardCreatedByUser?.userId):void 0),pa=y(M=>ee?.accountingClassIDs[0]!=null?ya(M.classState,{classId:ee?.accountingClassIDs[0],reportId:"class_list"}):void 0),oe=y(M=>x?.cardHolderUser?.userId!=null?ba(M.userRoleState,x?.cardHolderUser?.userId):void 0),ea=y(M=>oe?.accountingClassIDs[0]!=null?ya(M.classState,{classId:oe?.accountingClassIDs[0],reportId:"class_list"}):void 0),de=c?.userRole,Le=y(M=>Ke(M,!1,w,v).revokeCardInvite),aa=Ja(Le.saveStatus.fetchState);if(i.useEffect(()=>{if(aa==="In-Progress"&&Le.saveStatus.fetchState==="Completed"){const M=Ne(c.tenantEmailDomain);e(M)}},[aa,Le.saveStatus.fetchState,e,c.tenantEmailDomain]),i.useEffect(()=>{_&&n===!1&&re&&(C(!0),setTimeout(()=>{t(Sa()),Ee&&t(oa({messageSection:"set_debit_card_pin",messageText:"success",type:"success",showStatusIcon:!0}))},5e3))},[_,n,re,Ee]),i.useEffect(()=>{h||E.fetchState==="Completed"||E.fetchState==="In-Progress"||r==null||(b(!0),t(Xe(r,I,H,!1)))},[h,E,r,t]),i.useEffect(()=>{!g&&E.fetchState==="Completed"&&E.chargeCard?.connectedAccountId!=null&&ne&&Be&&ae&&(d(!0),t(yt({depositAccountId:E.chargeCard?.connectedAccountId})))},[g,E,t,Be,ae]),i.useEffect(()=>{$.fetchState!=="Completed"&&$.fetchState!=="In-Progress"&&ae&&t(Ct()),A!=="Completed"&&A!=="In-Progress"&&t(mt()),E.transactionStatistics.fetchState!=="Completed"&&E.transactionStatistics.fetchState!=="In-Progress"&&t(Cn({chargeCardId:r})),B.fetchState!=="Completed"&&B.fetchState!=="In-Progress"&&t(Fa(c.companyId,!0))},[$.fetchState,t,ae,A,E.transactionStatistics.fetchState,B.fetchState]),i.useEffect(()=>{if(!(E.fetchState!=="Completed"||H&&j.fetchState!=="Completed"||x==null||E.transactionStatistics.fetchState!=="Completed"||ne&&ae&&E.depositAccountLimitFetchState.fetchState!=="Completed")){const M=x.type.code.includes("physical"),me=M?x.cardActivationAttemptHistory[0]?.timestamp:x.createTime;J.trackCardsCardDetailView(we,ke,{cardId:r,cardName:x.cardName,cardType:x.type.code.includes("credit")?"credit":"debit",cardCategory:M?"physical":"virtual",cardLimit:Je(x.limit.amount),cardLastFourDigits:x.accountLast4,cardStatus:x.status.code,cardAssignedDate:x.createTime?.format(Oa.analytics.MMMDashDDDashYYYYFormat),cardIssuedDate:x.providerCardCreateTime?.format(Oa.analytics.MMMDashDDDashYYYYFormat),cardActivatedDate:me?.format(Oa.analytics.MMMDashDDDashYYYYFormat),cardLimitFrequency:x.creditLimitFrequency.name,cardSpentAmount:Je(x.balance.amount),cardAvailableLimit:Je(x.available.amount),cardUtilizationPercent:x.limit.amount>0?Math.round((x.limit.amount-x.available.amount)/x.limit.amount*100):0,cardUtilizationAmount:Je(x.limit.amount-x.available.amount),totalNumberOfDeclinedTransactions:E.transactionStatistics.statistics.totalNumberOfDeclinedTransactions,numberOfDeclinedTransactionsCurrentMonth:E.transactionStatistics.statistics.numberOfDeclinedTransactionsCurrentMonth,totalNumberOfPaidTransactions:E.transactionStatistics.statistics.totalNumberOfPaidTransactions,numberOfPaidTransactionsCurrentMonth:E.transactionStatistics.statistics.numberOfPaidTransactionsCurrentMonth,totalNumberOfCanceledTransactions:E.transactionStatistics.statistics.totalNumberOfCanceledTransactions,numberOfCanceledTransactionsCurrentMonth:E.transactionStatistics.statistics.numberOfCanceledTransactionsCurrentMonth,totalNumberOfAuthorizedTransactions:E.transactionStatistics.statistics.totalNumberOfAuthorizedTransactions,numberOfAuthorizedTransactionsCurrentMonth:E.transactionStatistics.statistics.numberOfAuthorizedTransactionsCurrentMonth,totalNumberOfTransactionsWithReceipts:E.transactionStatistics.statistics.totalNumberOfTransactionsWithReceipts,numberOfTransactionsWithReceiptsCurrentMonth:E.transactionStatistics.statistics.numberOfTransactionsWithReceiptsCurrentMonth},{cardIssuedByName:Va(x.cardCreatedByUser,!1),cardIssuedByEmail:x.cardCreatedByUser?.email,cardIssuedByUserId:x.cardCreatedByUser?.userId,cardIssuedByRole:ee?.userRoles,cardIssuedByDepartment:pa?.className},{cardholderName:Va(x.cardHolderUser,!1),cardholderEmail:x.cardHolderUser?.email,cardholderRole:oe?.userRoles,cardholderUserId:x.cardHolderUser?.userId,cardholderDepartment:ea?.className},xe,Z)}},[E.fetchState,E.depositAccountLimitFetchState.fetchState,E.transactionStatistics.fetchState,j.fetchState,ae]),o==null)throw Error("Can't access card detail page without signing in...");const We=c.companyId??X.getSignedInUserTenant(c.tenantEmailDomain)?.companyId,ta={events:We!=null?[`private-encrypted-${We}.${Kt}`]:[],eventCallback:(M,me,Te)=>{Te.onEventReceived(M)}},na=()=>{if(r!=null&&x!=null){const{ownerName:M,cardName:me,utilisation:Te,limit:Ve,frequency:qe,cardColor:G}=ja(x),De=x.cardHolderUserId===o.userId;J.trackCardsDetailPageViewed(r,M,me,Te,Ve,qe,G,De)}};i.useEffect(()=>{if(E.fetchState==="Completed"){const M=E.chargeCard;if(M?.status.code==="inactive"||ne&&M?.isPinSet===!1||Q&&_){const me=Ce(c.tenantEmailDomain,r,o,x,_);e(me)}}},[E.fetchState]);const ra=(M,me)=>{if(r!=null&&x!=null){const{ownerName:Te,cardName:Ve,utilisation:qe,limit:G,frequency:De}=ja(x),He=x.cardHolderUserId===o.userId;J.trackCardsDetailPageClicked(r,Te,Ve,qe,G,De,M,He,me)}},sa=(M,me)=>{if(r!=null&&x!=null){const{ownerName:Te,cardName:Ve,utilisation:qe,limit:G,frequency:De}=ja(x),He=x.cardHolderUserId===o.userId;J.trackCardsVerifyPopUpClick(r,Te,Ve,qe,G,De,M,He,me)}},Ua=j.balance.amount+j.hold.amount,ha=c.companyChargeCardInfo?.info?.primaryFundingAccount,fa=B.allFundingAccounts.find(M=>M.id===ha?.accountId);return r==null||E.fetchState==="Error"?s.jsx(La,{}):E.fetchState==="In-Progress"||E.fetchState==="Not-Started"||Le.saveStatus.fetchState==="In-Progress"||ne&&ae&&E.depositAccountLimitFetchState.fetchState!=="Completed"?s.jsx(pr,{}):s.jsxs(s.Fragment,{children:[s.jsx(xa,{showConfetti:_}),E.fetchState==="Completed"?s.jsx(Qa,{analytics:J,onLoad:na}):null,p===!0?s.jsx(at,{closeDrawerHandler:()=>u(!1),isPaymentDrawerOpen:p,pageName:"Card Detail",sourcePage:"cardDetailPage",productInformation:ke,creditAccountInformation:xe,debitAccountInformation:Z,cashbackInformation:he,creditAccountSpentAmount:Ua,isDebitCardInfoFetchStateCompleted:!ne||!ae||E.depositAccountLimitFetchState.fetchState==="Completed",isCreditCardInfoFetchStateCompleted:!H||j.fetchState==="Completed",isCashbackInfoFetchStateCompleted:!ae||$.fetchState==="Completed",paymentInitiatedDate:O.initiatedRepaymentDate}):null,s.jsx(qr,{...ta,hideSorting:!0,onColumnSortConfigChanged:()=>{},onFireVerifyPopOnClickAnalytics:sa,onFireOnClickAnalytics:ra,isSandboxEnv:Ka(),signedInUser:o,location:a,navigate:e,setIsPaymentOpen:u,cardIssuedByRoles:ee?.userRoles,cardIssuedByDepartmentName:pa?.className,cardHolderRoles:oe?.userRoles,cardHolderDepartmentName:ea?.className,loggedInUserRole:de,isChargeCardFeatureEnabled:H,isDebitCardFeatureEnabled:w,isDebitCardSetupEnabled:U,isChargeCardSetupEnabled:K,isCardControlsEnabled:k,isEarlyPayEnabled:V,controllerEmails:we,chargeCardCashbackDetailState:$,productInformation:ke,creditAccountInformation:xe,debitAccountInformation:Z,cashbackInformation:he,classListFetchState:A,primaryFundingAccountDetails:fa,currentTenant:c,cardProviderId:E.chargeCard?.cardProviderID,cardId:r,creditAccount:j,creditAccountRepayment:O,includeCreditAccountInfo:I,signedInUserToken:W,appleWalletLink:"shoebox://",googleWalletLink:"https://www.android.com/payapp/",documentAiReceiptMaxSizeLimit:f.documentAiReceiptMaxSizeLimitBytes!=null?f.documentAiReceiptMaxSizeLimitBytes:9437184,isAiCfoAccessEnabled:z,onAskAiCfoClick:q,isCardsCommentingEnabled:m})]})}const ja=e=>{const t=`${e.cardHolderUser?.firstName.toLowerCase()} ${e.cardHolderUser?.lastName.toLowerCase()}`,a=e.cardName,r=(e.limit.amount??0)-(e.available.amount??0),n=e.limit.amount,C=e.creditLimitFrequency.name;return{ownerName:t,cardName:a,utilisation:r,cardColor:e.cardColorCode??"",frequency:C,limit:n}},Qr=_e.div`
19
19
  display: flex;
20
20
  width: 100%;
21
21
  flex: 1 1 auto;
22
22
  flex-direction: column;
23
23
  align-items: center;
24
24
  background-color: ${e=>e.theme.colors.grey4};
25
- `,Jr=pe(function(e,t){const a=Ke(e,t.includeCreditAccountDebitSummaryAndCashbackInfo,t.isDebitCardFeatureEnabled&&t.isDebitCardSetupEnabled,t.isChargeCardFeatureEnabled&&t.isChargeCardSetupEnabled);return{chargeCardListView:a,rowActionView:An(e),bulkActionView:En(e),companyLegalName:t.currentTenant.companyName,admins:t.admins,searchText:a.searchText,uiState:a.uiState,signedInUser:t.signedInUser}},function(e,t){const{navigateAndClearBulkSelection:a,currentTenant:r,location:n,signedInUser:C,chargeCardListState:p,includeCreditAccountDebitSummaryAndCashbackInfo:u,isChargeCardFeatureEnabled:S,isCreditCardProductVisibleForExpressInterest:o,isChargeCardSetupEnabled:c,isDebitCardFeatureEnabled:_,isDebitCardSetupEnabled:A,isDebitCardTOSAccepted:f,isChargeCardTOSAccepted:U,controllerEmails:F,depositAccountListWithDebitCardIssued:k,primaryFundingAccountDetails:h,chargeCardSetUpViewFetchState:b,productInformation:g,cashbackInformation:d,creditAccountInformation:D,debitAccountInformation:v,updatePayNowInfoTooltip:N,isUserHasCardsAdminLevelAccess:B}=t,{tenantEmailDomain:w}=r,{cards:V}=p;return{onChargeCardRowClick:(m,l)=>{const P=$t(V,m);let T;P!=null&&((O=>{const K=O.limit.amount-O.available.amount,I=`${O.cardHolderUser?.firstName.toLowerCase()} ${O.cardHolderUser?.lastName.toLowerCase()}`,L=O.cardName,j=O.department?.className??"",R=O.limit.amount,W=O.creditLimitFrequency.name;X.trackCardsListRowClicked(I,L,j,K,R,W,C.userId===O.cardHolderUserId)})(P),Me(_,A,k)&&X.trackCardsCardListRowClick(F,g,"Card Row Item","row_clicked",l+1,{cardOwner:Va(P.cardHolderUser,!1),cardName:P.cardName,cardType:P.type.code.includes("credit")?"credit":"debit",cardStatus:P.status.code,cardUtilizationAmount:Xe(P.limit.amount-P.available.amount),cardUtilizationPercent:P.limit.amount>0?Math.round((P.limit.amount-P.available.amount)/P.limit.amount*100):0,cardLimit:Xe(P.limit.amount)},d,D,v)),T=P?.status.code==="request_on_hold"&&C.userId===P.cardHolderUserId?Gt(w):Ce(w,m,C,P);const H=fe(n.state?.pathnameStackToGoBack,n.pathname);a(T,{state:{pathnameStackToGoBack:H}})},onFetchChargeCardsRecurringExpenses:m=>{e(kt(m))},onFetchDepositAccountLimit:m=>{e(yt({depositAccountId:m}))},onChargeCardResendInviteClick:m=>{e(vn(m))},onChargeCardRevokeInviteClick:m=>{e(At(m))},onLockChargeCardList:(m,l)=>{e(Fn(m,l))},onUnlockChargeCardList:m=>{e(Tn(m))},onCloseChargeCardList:(m,l)=>{e(wn(m,l))},onRevokeChargeCardList:m=>{e(Pn(m))},updateChargeCardListSpendLimit(m,l,P){e(_n(m,l,P.code))},onLockChargeCard:(m,l)=>{e(Pt(B,m,l))},onUnlockChargeCard:m=>{e(_t(B,m))},onCloseChargeCard:(m,l)=>{e(Dt(m,l))},onUpdateSpendLimit(m,l,P,T){e(St(m,l,P.code,T))},updateChargeCardName:(m,l)=>{e(Et(B,m,l))},onClickSetupIcon:()=>{X.trackCardsListPageClicked("settings"),Me(_,A,k)&&d!=null&&X.trackCardsSettingsClick(F,g,d,D,v);const m=Or(w),l=fe(n.state?.pathnameStackToGoBack,n.pathname);a(m,{state:{pathnameStackToGoBack:l}})},onIssueCardClick:()=>{X.trackCardsListPageClicked("new card"),Me(_,A,k)&&d!=null&&X.trackCardsNewCardClick(F,g,d,"New Button","card_creation_initiated","Card List",D,v);const m=es(w),l=fe(n.state?.pathnameStackToGoBack,n.pathname);a(m,{state:{pathnameStackToGoBack:l}})},onColumnSortConfigChanged:(m,l)=>{Me(_,A,k)&&d!=null&&X.trackCardsCardListSortClick(F,g,d,"Sort Icon","sort",m,l==="ascending"?"ASC":"DESC","Cards List",D,v),e(Na({uiState:{sortKey:m,sortOrder:l}}))},onSearchTextChanged:m=>{e(Dn(m))},onReloadCards:()=>{e(Ia(u,_&&A,S&&c,!0))},onLetsGoClick:()=>{a("./onboard")},onBackClick:()=>{a("../../")},onTotalCashbackClick:()=>{Me(_,A,k)&&d!=null&&X.trackCardsCashbackOverviewClick(F,g,d,"Cashback Overview","cashback_details_viewed",D,v),a("./cashback")},onClickStatementsIcon:()=>{Me(_,A,k)&&d!=null&&X.trackCardsStatementsClick(F,g,d,D,v),a("./statements")},onCreateNowClick:m=>{Me(_,A,k)&&d!=null&&X.trackCardsNewCardClick(F,g,d,"Promo Banner","card_creation_initiated","Card List",D,v),a(`./new?cardType=${m}`)},onPromoCardClick:m=>{a(m==="debit"&&_&&!f||m==="credit"&&o&&!U?`../promo?cardPromoType=${m}`:"./setup")},navigateToCreditCardPaymentPage:(m,l)=>{b==="Completed"&&r.company!=null&&d!=null&&X.trackCardsPayEarlyClick(F,g,d,"Card List",m,l,{isZeniCheckingEnabled:r.company.companyZeniAccountInfo.isZeniAccountEnabled,isZeniCheckingPaymentSource:h?.accType==="depositAccount",creditCardPaymentSourceAccountName:h?.label,creditCardPaymentSourceAccountType:h?.accType,creditCardPaymentSourceLastFourDigits:h?.accountLast4,creditCardPaymentSourceBalance:h?.accountBalance?.available?.amount??0},D,v);const P=as(w);a(P)},navigateToCreditCardPaymentHistoryPage:()=>{const m=ts(w),l=fe(n.state?.pathnameStackToGoBack,n.pathname);a(m,{state:{pathnameStackToGoBack:l}})},shouldShowPayNowInfoTooltip:N,onSetRowActionCardId:m=>{e(kn(m))},onSetBulkActionCardIds:m=>{e(wt(m))}}})(gr);function ct({isPaymentDrawerOpen:e}){const t=le(),a=ue(),r=ge(),n=i.useCallback((z,De)=>{a(wt([])),t(z,De)},[a,t]),[C,p]=i.useState(!1),[u,S]=i.useState(J.getPayNowInfoTooltip()??!1),o=z=>{J.savePayNowInfoTooltip(z),S(z)},[c,_]=i.useState(!1),A=J.getSignedInUser(),f=y(z=>ie(z)),[U,F]=i.useState(!1),[k,h]=i.useState(!1),{isAiCfoAccessEnabled:b,onAskAiCfoClick:g}=Zt({mobileExploreReferrer:"Cards"}),d=f.userRole.includes("charge_card_user"),D=!d,v=!!f.companyDebitCardInfo?.info?.isDebitCardEnabled,{useFeatureGate:N,useDynamicConfig:B}=ce(),{isFeatureEnabled:w}=N(Z.isCashbackFeatureEnabled),{isFeatureEnabled:V}=N(Z.isChargeCardFeatureEnabled),{isFeatureEnabled:m}=N(Z.isDebitCardFeatureEnabled),{isFeatureEnabled:l}=N(Z.isEarlyPayFeatureEnabled),{isFeatureEnabled:P}=N(Z.isChargeCardPaymentHistoryFeatureEnabled),{isFeatureEnabled:T}=N(Z.isCardsCommentingEnabled),H=Se(m,f),O=Ie({isDebitCardFeatureEnabled:m,isBankingOnlyTenant:H}),K=be(f),I=ye(f),L=f.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,j=Ae({isCardsOnlyTenant:K,isChargeCardFeatureEnabled:V,isBookKeepingTenant:I,isDebitCardProductVisible:O,chargeCardsCreditAccountLimit:L}),R=zt({isCardsOnlyTenant:K,isChargeCardFeatureEnabled:V,isBookKeepingTenant:I}),{configValue:W}=B(Fe.zeniCardsConfig),E=je(),G=Ue(E?.loggedInUserRoleMap),q=y(z=>$e(z,f.companyId)),$=Ge(q.controllers),x=W.charge_card_cashback_rate_per_transaction!=null?W.charge_card_cashback_rate_per_transaction:.0175,se=W.credit_card_pay_now_threshold_by_company_id?.[f.companyId]??W.default_credit_card_pay_now_threshold??Br,ae=W.is_card_controls_enabled_for_all_tenants===!0||Array.isArray(W.enable_card_controls_for_company_ids)&&W.enable_card_controls_for_company_ids.includes(f.companyId),ne=!!f.companyChargeCardInfo?.info?.isChargeCardTOSAccepted,Q=!!f.companyDebitCardInfo?.info?.isDebitCardTOSAccepted,re=!!f.companyChargeCardInfo?.info?.isChargeCardEnabled,Ee=y(z=>ft(z)),xe=Xa(Ee.updateStatus),Y=y(z=>Ke(z,D,O&&v,j&&re)),he=Y.cards.filter(z=>z.type.code.includes("debit")).map(z=>z.connectedAccountId),ke=[...new Set(he)],Le=y(z=>Ye(z)),Pe=y(z=>va(z,ke)),we=y(z=>da(z,f.companyId)),ee=we.companyChargeCardInfo?.primaryFundingAccount,pa=we.allFundingAccounts.find(z=>z.id===ee?.accountId),oe=Y.fetchState,ea=Y.creditAccount;Yt({isDataReady:oe==="Completed"});const{creditAccountRepayment:de}=y(z=>Ze(z)),Be=y(z=>ka(z).firstViewAfterActivation),{areTenantIdsInSync:aa}=Nt(),We=Ja(G,Le),ta=Ca(j,re,G,ea,de),na=et(O,v,G,Pe,Y.debitCardSummary),ra=Re(j,O,v,re),sa=Y.creditAccount.balance.amount+Y.creditAccount.hold.amount;if(i.useEffect(()=>{oe==="Completed"&&(J.getPayNowInfoTooltip()==null||sa<se*Y.creditAccount.limit.amount/100)&&o(!0)},[oe,se,sa,Y.creditAccount.limit.amount]),i.useEffect(()=>{if(e!=null&&e===!0&&de.initiatedRepayments.amount===0&&de.fetchState==="Completed"||xe==="In-Progress"&&Ee.updateStatus==="Completed")o(!1),p(!0);else if(de.initiatedRepayments.amount>0&&de.fetchState==="Completed"){p(!1),document.body.style.overflow="auto";const z=Ne(f.tenantEmailDomain);n(z)}},[e,de.initiatedRepayments.amount,de.fetchState,xe,Ee.updateStatus,n,f.tenantEmailDomain]),i.useEffect(()=>{!U&&(re||v)&&aa&&(F(!0),a(Ia(D,O&&v,j&&re,!1)))},[U,D,a,aa]),i.useEffect(()=>{Be&&c===!1&&(_(!0),setTimeout(()=>{a(Sa())},5e3))},[Be,c]),i.useEffect(()=>{oe==="Completed"&&d&&Y.cards.length===1&&(Y.cards[0].status.code==="inactive"&&Y.cards[0].type.code==="business_physical_credit_card"?n(`./${Y.cards[0].id}/activate`):Y.cards[0].status.code!=="request_on_hold"&&(r.state?.message==="comingFromCardDetail"?n("../../"):n(`./${Y.cards[0].id}`)))},[oe,d,r.state,n,Y.cards]),i.useEffect(()=>{if(oe==="Completed"&&d){const z=Y.cards.length,De=Y.cards.filter(He=>He.cardHolderUserId===A?.userId).filter(He=>He.status.code==="request_on_hold");De.length>0&&z===De.length&&n("./onboard")}},[oe,Y.cards,d,n,A?.userId]),i.useEffect(()=>{oe!=="Completed"||j&&de.fetchState!=="Completed"||O&&v&&G&&Pe.fetchState!=="Completed"||X.trackCardsCardListView($,ra,We,ta,na)},[oe,ea,de.fetchState,Pe.fetchState,G]),A==null)throw Error("Can't access charge card list page without signing in...");const Oa=y(z=>Tt(z.userState,z.userRoleState,z.userListViewState,"cardAdmin")),ha=Za(E?.loggedInUserRoleMap),fa=z=>{h(z)},M=Y.creditAccount.limit,me=()=>{p(!1),n("..")},Te=f.companyChargeCardInfo?.info!=null&&Qe({cardInfo:f.companyChargeCardInfo.info,isProductVisible:j,isTOSAccepted:ne,isSetupEnabled:re,isUserHasCardsAdminLevelAccess:G,isUserHasCardsAccess:ha}),Ve=f.companyDebitCardInfo?.info!=null&&Qe({cardInfo:f.companyDebitCardInfo.info,isProductVisible:O,isTOSAccepted:Q,isSetupEnabled:v,isUserHasCardsAdminLevelAccess:G,isUserHasCardsAccess:ha});return re||v?s.jsxs(s.Fragment,{children:[oe==="Completed"?s.jsxs(s.Fragment,{children:[s.jsx(Qa,{analytics:X,onLoad:()=>{X.trackPageLoaded(Vt.Event.cardsListPage),(j&&!re||O&&!v)&&X.trackCardsPromoView($,{isCreditCardOffered:j,isDebitCardOffered:O,isDebitCardEnabled:v,isCreditCardEnabled:re},"Banner",O&&!v?"Debit Card":j&&!re?"Credit Card":"","Card List")}}),s.jsx(xa,{showConfetti:Be})]}):null,C===!0?s.jsx(at,{closeDrawerHandler:me,isPaymentDrawerOpen:C,pageName:"Card List",sourcePage:"cardListPage",creditAccountSpentAmount:sa,productInformation:ra,creditAccountInformation:ta,debitAccountInformation:na,cashbackInformation:We,isDebitCardInfoFetchStateCompleted:!(O&&v&&G)||Pe.fetchState==="Completed",isCreditCardInfoFetchStateCompleted:!j||de.fetchState==="Completed",isCashbackInfoFetchStateCompleted:!G||Le.fetchState==="Completed",paymentInitiatedDate:de.initiatedRepaymentDate}):null,s.jsxs(Qr,{children:[s.jsx(ze,{isAppContentDrawerOpen:k,handleDrawerToggle:fa}),s.jsx(Jr,{isCashbackFeatureEnabled:w,isChargeCardFeatureEnabled:j,isDebitCardFeatureEnabled:O,isCreditCardProductVisibleForExpressInterest:R,updatePayNowInfoTooltip:o,showPayNowInfoTooltip:u,creditCardPayNowThreshold:se,signedInUser:A,chargeCardListState:Y,location:r,admins:Oa.users,navigateAndClearBulkSelection:n,currentTenant:f,isCardControlsEnabled:ae,companyChargeCardInfoCreditAccountLimit:f.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,isCompanyInterestedInChargeCard:f.companyChargeCardInfo?.info?.isCompanyInterestedInChargeCard??!1,isUserHasCardsAdminLevelAccess:G,includeCreditAccountDebitSummaryAndCashbackInfo:D,onClickMenuIcon:()=>{fa(!0)},creditLimit:M,isChargeCardSetupEnabled:re,isDebitCardSetupEnabled:v,isEarlyPayEnabled:l,isChargeCardPaymentHistoryFeatureEnabled:P,cashbackRate:x,controllerEmails:$,chargeCardCashbackDetailState:Le,depositAccountListWithDebitCardIssued:Pe,isChargeCardTOSAccepted:ne,isDebitCardTOSAccepted:Q,primaryFundingAccountDetails:pa,chargeCardSetUpViewFetchState:we.fetchState,productInformation:ra,creditAccountInformation:ta,debitAccountInformation:na,cashbackInformation:We,isAiCfoAccessEnabled:b,onAskAiCfoClick:g,isCardsCommentingEnabled:T})]})]}):(ne||Q)&&G===!0?s.jsx(ga,{to:"../setup"}):Te||Ve?s.jsx(ga,{to:"../promo"}):s.jsx(la,{fetchState:oe})}const es=e=>`/${e}/cards/new`,as=e=>`/${e}/cards/payment`,ts=e=>`/${e}/cards/payment-history`,ns=pe(function(e){const t=J.getSignedInUser(),a=ie(e),r=e.tenantState.currentTenantId,n=Ft(e),C={userId:t?.userId??"",sessionId:t?.zeniSessionId??"",tenantId:r??""},p=a?.companyName??"",u=e.chargeCardPaymentHistoryState.downloadUIState.downloadState;return{fetchState:n.fetchState,filters:n.filters,isZeniTenant:xn(a),repaymentList:n.repaymentHistory,searchText:n.searchText,repaymentHistoryUsers:n.repaymentHistoryUsers,sortConfig:{sortKey:n.uiState.sortKey,sortOrder:n.uiState.sortOrder},downloadParams:{authParams:C,companyName:p,spendManagementEndPoint:`${Ha}/spendManagement`,isShowDeletedBillsEnabled:!1,isShowDeletedReimbursementEnabled:!1},downloadState:u}},function(e,t){const{location:a,navigate:r}=t;return{onBackClick:()=>{const n=ve(a.state?.pathnameStackToGoBack),C=n.poppedPathname??"..";r(C,{state:{pathnameStackToGoBack:n.newStack}})},onColumnSortConfigChanged:(n,C)=>{e({type:"chargeCardPaymentHistory/updatePaymentHistoryUIState",payload:{uiState:{sortKey:n,sortOrder:C}}})},onFiltersChange:n=>{e(Bn({filters:n}))},onReloadPayments:()=>{e(vt(!0))},onSearchTextChanged:n=>{e({type:"chargeCardPaymentHistory/updatePaymentHistorySearchText",payload:n})},updateDownloadStateHandler:n=>{e(Ln({uiState:{downloadState:n}}))}}})(br);function rs(){const e=le(),t=ge(),a=ue(),{areTenantIdsInSync:r}=Nt(),{useFeatureGate:n}=ce();if(J.getSignedInUser()==null)throw Error("Can't access payment history page without signing in...");const C=y(q=>ie(q)),p=y(q=>Ft(q)),[u,S]=i.useState(!1),[o,c]=i.useState(!1),[_,A]=i.useState(!1),[f,U]=i.useState(null),F=!C.userRole.includes("charge_card_user"),k=!!C.companyDebitCardInfo?.info?.isDebitCardEnabled,{isFeatureEnabled:h}=n(Z.isChargeCardFeatureEnabled),{isFeatureEnabled:b}=n(Z.isDebitCardFeatureEnabled),g=Se(b,C),d=Ie({isDebitCardFeatureEnabled:b,isBankingOnlyTenant:g}),D=be(C),v=ye(C),N=C.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,B=Ae({isCardsOnlyTenant:D,isChargeCardFeatureEnabled:h,isBookKeepingTenant:v,isDebitCardProductVisible:d,chargeCardsCreditAccountLimit:N}),w=!!C.companyChargeCardInfo?.info?.isChargeCardEnabled,V=je(),m=Ue(V?.loggedInUserRoleMap),l=y(q=>Ke(q,F,d&&k,B&&w)),P=i.useMemo(()=>{const q=l.cards.filter($=>$.type.code.includes("debit"));return[...new Set(q.map($=>$.connectedAccountId))]},[l.cards]),T=y(q=>Ye(q)),H=y(q=>va(q,P)),{creditAccountRepayment:O}=y(q=>Ze(q)),K=i.useMemo(()=>Ja(m,T),[m,T]),I=i.useMemo(()=>Ca(B,w,m,l.creditAccount,O),[B,w,m,l.creditAccount,O]),L=i.useMemo(()=>et(d,k,m,H,l.debitCardSummary),[d,k,m,H,l.debitCardSummary]),j=i.useMemo(()=>Re(B,d,k,w),[B,d,k,w]),R=l.creditAccount.balance.amount+l.creditAccount.hold.amount,W=i.useMemo(()=>f!=null?p.repaymentHistory.find(q=>q.cardRepaymentId===f):void 0,[f,p.repaymentHistory]),E=i.useCallback(q=>{U(q),a(Ia(F,d&&k,B&&w,!1)),A(!0)},[a,F,d,k,B,w]),G=i.useCallback(()=>{A(!1),U(null),document.body.style.overflow="auto"},[]);return i.useEffect(()=>{u||p.fetchState==="Completed"||p.fetchState==="In-Progress"||(S(!0),a(vt()))},[u,a,p.fetchState]),i.useEffect(()=>{!o&&(w||k)&&r&&(c(!0),a(Ia(F,!1,B&&w,!1)))},[o,w,k,r,a,F,B]),s.jsxs(s.Fragment,{children:[_?s.jsx(at,{closeDrawerHandler:G,isPaymentDrawerOpen:_,pageName:"Payment History",sourcePage:"cardPaymentHistory",creditAccountSpentAmount:R,productInformation:j,creditAccountInformation:I,debitAccountInformation:L,cashbackInformation:K,isDebitCardInfoFetchStateCompleted:!(d&&k&&m)||H.fetchState==="Completed",isCreditCardInfoFetchStateCompleted:!B||O.fetchState==="Completed",isCashbackInfoFetchStateCompleted:!m||T.fetchState==="Completed",paymentInitiatedDate:O.initiatedRepaymentDate,retryRepayment:W}):null,s.jsx(ns,{location:t,navigate:e,accountInfoByAccountId:p.accountInfoByAccountId,onRetryPaymentClick:E})]})}const it=_e.div`
25
+ `,Xr=pe(function(e,t){const a=Ke(e,t.includeCreditAccountDebitSummaryAndCashbackInfo,t.isDebitCardFeatureEnabled&&t.isDebitCardSetupEnabled,t.isChargeCardFeatureEnabled&&t.isChargeCardSetupEnabled);return{chargeCardListView:a,rowActionView:An(e),bulkActionView:En(e),companyLegalName:t.currentTenant.companyName,admins:t.admins,searchText:a.searchText,uiState:a.uiState,signedInUser:t.signedInUser}},function(e,t){const{navigateAndClearBulkSelection:a,currentTenant:r,location:n,signedInUser:C,chargeCardListState:p,includeCreditAccountDebitSummaryAndCashbackInfo:u,isChargeCardFeatureEnabled:S,isCreditCardProductVisibleForExpressInterest:o,isChargeCardSetupEnabled:c,isDebitCardFeatureEnabled:_,isDebitCardSetupEnabled:A,isDebitCardTOSAccepted:f,isChargeCardTOSAccepted:R,controllerEmails:F,depositAccountListWithDebitCardIssued:k,primaryFundingAccountDetails:h,chargeCardSetUpViewFetchState:b,productInformation:g,cashbackInformation:d,creditAccountInformation:D,debitAccountInformation:v,updatePayNowInfoTooltip:N,isUserHasCardsAdminLevelAccess:L}=t,{tenantEmailDomain:w}=r,{cards:V}=p;return{onChargeCardRowClick:(m,l)=>{const P=$t(V,m);let T;P!=null&&((U=>{const K=U.limit.amount-U.available.amount,I=`${U.cardHolderUser?.firstName.toLowerCase()} ${U.cardHolderUser?.lastName.toLowerCase()}`,B=U.cardName,j=U.department?.className??"",O=U.limit.amount,W=U.creditLimitFrequency.name;J.trackCardsListRowClicked(I,B,j,K,O,W,C.userId===U.cardHolderUserId)})(P),Me(_,A,k)&&J.trackCardsCardListRowClick(F,g,"Card Row Item","row_clicked",l+1,{cardOwner:Va(P.cardHolderUser,!1),cardName:P.cardName,cardType:P.type.code.includes("credit")?"credit":"debit",cardStatus:P.status.code,cardUtilizationAmount:Je(P.limit.amount-P.available.amount),cardUtilizationPercent:P.limit.amount>0?Math.round((P.limit.amount-P.available.amount)/P.limit.amount*100):0,cardLimit:Je(P.limit.amount)},d,D,v)),T=P?.status.code==="request_on_hold"&&C.userId===P.cardHolderUserId?zt(w):Ce(w,m,C,P);const H=fe(n.state?.pathnameStackToGoBack,n.pathname);a(T,{state:{pathnameStackToGoBack:H}})},onFetchChargeCardsRecurringExpenses:m=>{e(kt(m))},onFetchDepositAccountLimit:m=>{e(yt({depositAccountId:m}))},onChargeCardResendInviteClick:m=>{e(vn(m))},onChargeCardRevokeInviteClick:m=>{e(At(m))},onLockChargeCardList:(m,l)=>{e(Fn(m,l))},onUnlockChargeCardList:m=>{e(Tn(m))},onCloseChargeCardList:(m,l)=>{e(wn(m,l))},onRevokeChargeCardList:m=>{e(Pn(m))},updateChargeCardListSpendLimit(m,l,P){e(_n(m,l,P.code))},onLockChargeCard:(m,l)=>{e(Pt(L,m,l))},onUnlockChargeCard:m=>{e(_t(L,m))},onCloseChargeCard:(m,l)=>{e(Dt(m,l))},onUpdateSpendLimit(m,l,P,T){e(St(m,l,P.code,T))},updateChargeCardName:(m,l)=>{e(Et(L,m,l))},onClickSetupIcon:()=>{J.trackCardsListPageClicked("settings"),Me(_,A,k)&&d!=null&&J.trackCardsSettingsClick(F,g,d,D,v);const m=Ur(w),l=fe(n.state?.pathnameStackToGoBack,n.pathname);a(m,{state:{pathnameStackToGoBack:l}})},onIssueCardClick:()=>{J.trackCardsListPageClicked("new card"),Me(_,A,k)&&d!=null&&J.trackCardsNewCardClick(F,g,d,"New Button","card_creation_initiated","Card List",D,v);const m=es(w),l=fe(n.state?.pathnameStackToGoBack,n.pathname);a(m,{state:{pathnameStackToGoBack:l}})},onColumnSortConfigChanged:(m,l)=>{Me(_,A,k)&&d!=null&&J.trackCardsCardListSortClick(F,g,d,"Sort Icon","sort",m,l==="ascending"?"ASC":"DESC","Cards List",D,v),e(Na({uiState:{sortKey:m,sortOrder:l}}))},onSearchTextChanged:m=>{e(Dn(m))},onReloadCards:()=>{e(Ia(u,_&&A,S&&c,!0))},onLetsGoClick:()=>{a("./onboard")},onBackClick:()=>{a("../../")},onTotalCashbackClick:()=>{Me(_,A,k)&&d!=null&&J.trackCardsCashbackOverviewClick(F,g,d,"Cashback Overview","cashback_details_viewed",D,v),a("./cashback")},onClickStatementsIcon:()=>{Me(_,A,k)&&d!=null&&J.trackCardsStatementsClick(F,g,d,D,v),a("./statements")},onCreateNowClick:m=>{Me(_,A,k)&&d!=null&&J.trackCardsNewCardClick(F,g,d,"Promo Banner","card_creation_initiated","Card List",D,v),a(`./new?cardType=${m}`)},onPromoCardClick:m=>{a(m==="debit"&&_&&!f||m==="credit"&&o&&!R?`../promo?cardPromoType=${m}`:"./setup")},navigateToCreditCardPaymentPage:(m,l)=>{b==="Completed"&&r.company!=null&&d!=null&&J.trackCardsPayEarlyClick(F,g,d,"Card List",m,l,{isZeniCheckingEnabled:r.company.companyZeniAccountInfo.isZeniAccountEnabled,isZeniCheckingPaymentSource:h?.accType==="depositAccount",creditCardPaymentSourceAccountName:h?.label,creditCardPaymentSourceAccountType:h?.accType,creditCardPaymentSourceLastFourDigits:h?.accountLast4,creditCardPaymentSourceBalance:h?.accountBalance?.available?.amount??0},D,v);const P=as(w);a(P)},navigateToCreditCardPaymentHistoryPage:()=>{const m=ts(w),l=fe(n.state?.pathnameStackToGoBack,n.pathname);a(m,{state:{pathnameStackToGoBack:l}})},shouldShowPayNowInfoTooltip:N,onSetRowActionCardId:m=>{e(kn(m))},onSetBulkActionCardIds:m=>{e(wt(m))}}})(gr);function ct({isPaymentDrawerOpen:e}){const t=le(),a=ue(),r=ge(),n=i.useCallback((G,De)=>{a(wt([])),t(G,De)},[a,t]),[C,p]=i.useState(!1),[u,S]=i.useState(X.getPayNowInfoTooltip()??!1),o=G=>{X.savePayNowInfoTooltip(G),S(G)},[c,_]=i.useState(!1),A=X.getSignedInUser(),f=y(G=>ie(G)),[R,F]=i.useState(!1),[k,h]=i.useState(!1),{isAiCfoAccessEnabled:b,onAskAiCfoClick:g}=Yt({mobileExploreReferrer:"Cards"}),d=f.userRole.includes("charge_card_user"),D=!d,v=!!f.companyDebitCardInfo?.info?.isDebitCardEnabled,{useFeatureGate:N,useDynamicConfig:L}=ce(),{isFeatureEnabled:w}=N(Y.isCashbackFeatureEnabled),{isFeatureEnabled:V}=N(Y.isChargeCardFeatureEnabled),{isFeatureEnabled:m}=N(Y.isDebitCardFeatureEnabled),{isFeatureEnabled:l}=N(Y.isEarlyPayFeatureEnabled),{isFeatureEnabled:P}=N(Y.isChargeCardPaymentHistoryFeatureEnabled),{isFeatureEnabled:T}=N(Y.isCardsCommentingEnabled),H=Se(m,f),U=Ie({isDebitCardFeatureEnabled:m,isBankingOnlyTenant:H}),K=be(f),I=ye(f),B=f.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,j=Ae({isCardsOnlyTenant:K,isChargeCardFeatureEnabled:V,isBookKeepingTenant:I,isDebitCardProductVisible:U,chargeCardsCreditAccountLimit:B}),O=Gt({isCardsOnlyTenant:K,isChargeCardFeatureEnabled:V,isBookKeepingTenant:I}),{configValue:W}=L(Fe.zeniCardsConfig),E=je(),z=Re(E?.loggedInUserRoleMap),q=y(G=>$e(G,f.companyId)),$=ze(q.controllers),x=W.charge_card_cashback_rate_per_transaction!=null?W.charge_card_cashback_rate_per_transaction:.0175,se=W.credit_card_pay_now_threshold_by_company_id?.[f.companyId]??W.default_credit_card_pay_now_threshold??Lr,ae=W.is_card_controls_enabled_for_all_tenants===!0||Array.isArray(W.enable_card_controls_for_company_ids)&&W.enable_card_controls_for_company_ids.includes(f.companyId),ne=!!f.companyChargeCardInfo?.info?.isChargeCardTOSAccepted,Q=!!f.companyDebitCardInfo?.info?.isDebitCardTOSAccepted,re=!!f.companyChargeCardInfo?.info?.isChargeCardEnabled,Ee=y(G=>ft(G)),xe=Ja(Ee.updateStatus),Z=y(G=>Ke(G,D,U&&v,j&&re)),he=Z.cards.filter(G=>G.type.code.includes("debit")).map(G=>G.connectedAccountId),ke=[...new Set(he)],Be=y(G=>Ze(G)),Pe=y(G=>va(G,ke)),we=y(G=>da(G,f.companyId)),ee=we.companyChargeCardInfo?.primaryFundingAccount,pa=we.allFundingAccounts.find(G=>G.id===ee?.accountId),oe=Z.fetchState,ea=Z.creditAccount;Zt({isDataReady:oe==="Completed"});const{creditAccountRepayment:de}=y(G=>Ye(G)),Le=y(G=>ka(G).firstViewAfterActivation),{areTenantIdsInSync:aa}=Nt(),We=Xa(z,Be),ta=Ca(j,re,z,ea,de),na=et(U,v,z,Pe,Z.debitCardSummary),ra=Oe(j,U,v,re),sa=Z.creditAccount.balance.amount+Z.creditAccount.hold.amount;if(i.useEffect(()=>{oe==="Completed"&&(X.getPayNowInfoTooltip()==null||sa<se*Z.creditAccount.limit.amount/100)&&o(!0)},[oe,se,sa,Z.creditAccount.limit.amount]),i.useEffect(()=>{if(e!=null&&e===!0&&de.initiatedRepayments.amount===0&&de.fetchState==="Completed"||xe==="In-Progress"&&Ee.updateStatus==="Completed")o(!1),p(!0);else if(de.initiatedRepayments.amount>0&&de.fetchState==="Completed"){p(!1),document.body.style.overflow="auto";const G=Ne(f.tenantEmailDomain);n(G)}},[e,de.initiatedRepayments.amount,de.fetchState,xe,Ee.updateStatus,n,f.tenantEmailDomain]),i.useEffect(()=>{!R&&(re||v)&&aa&&(F(!0),a(Ia(D,U&&v,j&&re,!1)))},[R,D,a,aa]),i.useEffect(()=>{Le&&c===!1&&(_(!0),setTimeout(()=>{a(Sa())},5e3))},[Le,c]),i.useEffect(()=>{oe==="Completed"&&d&&Z.cards.length===1&&(Z.cards[0].status.code==="inactive"&&Z.cards[0].type.code==="business_physical_credit_card"?n(`./${Z.cards[0].id}/activate`):Z.cards[0].status.code!=="request_on_hold"&&(r.state?.message==="comingFromCardDetail"?n("../../"):n(`./${Z.cards[0].id}`)))},[oe,d,r.state,n,Z.cards]),i.useEffect(()=>{if(oe==="Completed"&&d){const G=Z.cards.length,De=Z.cards.filter(He=>He.cardHolderUserId===A?.userId).filter(He=>He.status.code==="request_on_hold");De.length>0&&G===De.length&&n("./onboard")}},[oe,Z.cards,d,n,A?.userId]),i.useEffect(()=>{oe!=="Completed"||j&&de.fetchState!=="Completed"||U&&v&&z&&Pe.fetchState!=="Completed"||J.trackCardsCardListView($,ra,We,ta,na)},[oe,ea,de.fetchState,Pe.fetchState,z]),A==null)throw Error("Can't access charge card list page without signing in...");const Ua=y(G=>Tt(G.userState,G.userRoleState,G.userListViewState,"cardAdmin")),ha=Ya(E?.loggedInUserRoleMap),fa=G=>{h(G)},M=Z.creditAccount.limit,me=()=>{p(!1),n("..")},Te=f.companyChargeCardInfo?.info!=null&&Qe({cardInfo:f.companyChargeCardInfo.info,isProductVisible:j,isTOSAccepted:ne,isSetupEnabled:re,isUserHasCardsAdminLevelAccess:z,isUserHasCardsAccess:ha}),Ve=f.companyDebitCardInfo?.info!=null&&Qe({cardInfo:f.companyDebitCardInfo.info,isProductVisible:U,isTOSAccepted:Q,isSetupEnabled:v,isUserHasCardsAdminLevelAccess:z,isUserHasCardsAccess:ha});return re||v?s.jsxs(s.Fragment,{children:[oe==="Completed"?s.jsxs(s.Fragment,{children:[s.jsx(Qa,{analytics:J,onLoad:()=>{J.trackPageLoaded(Vt.Event.cardsListPage),(j&&!re||U&&!v)&&J.trackCardsPromoView($,{isCreditCardOffered:j,isDebitCardOffered:U,isDebitCardEnabled:v,isCreditCardEnabled:re},"Banner",U&&!v?"Debit Card":j&&!re?"Credit Card":"","Card List")}}),s.jsx(xa,{showConfetti:Le})]}):null,C===!0?s.jsx(at,{closeDrawerHandler:me,isPaymentDrawerOpen:C,pageName:"Card List",sourcePage:"cardListPage",creditAccountSpentAmount:sa,productInformation:ra,creditAccountInformation:ta,debitAccountInformation:na,cashbackInformation:We,isDebitCardInfoFetchStateCompleted:!(U&&v&&z)||Pe.fetchState==="Completed",isCreditCardInfoFetchStateCompleted:!j||de.fetchState==="Completed",isCashbackInfoFetchStateCompleted:!z||Be.fetchState==="Completed",paymentInitiatedDate:de.initiatedRepaymentDate}):null,s.jsxs(Qr,{children:[s.jsx(Ge,{isAppContentDrawerOpen:k,handleDrawerToggle:fa}),s.jsx(Xr,{isCashbackFeatureEnabled:w,isChargeCardFeatureEnabled:j,isDebitCardFeatureEnabled:U,isCreditCardProductVisibleForExpressInterest:O,updatePayNowInfoTooltip:o,showPayNowInfoTooltip:u,creditCardPayNowThreshold:se,signedInUser:A,chargeCardListState:Z,location:r,admins:Ua.users,navigateAndClearBulkSelection:n,currentTenant:f,isCardControlsEnabled:ae,companyChargeCardInfoCreditAccountLimit:f.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,isCompanyInterestedInChargeCard:f.companyChargeCardInfo?.info?.isCompanyInterestedInChargeCard??!1,isUserHasCardsAdminLevelAccess:z,includeCreditAccountDebitSummaryAndCashbackInfo:D,onClickMenuIcon:()=>{fa(!0)},creditLimit:M,isChargeCardSetupEnabled:re,isDebitCardSetupEnabled:v,isEarlyPayEnabled:l,isChargeCardPaymentHistoryFeatureEnabled:P,cashbackRate:x,controllerEmails:$,chargeCardCashbackDetailState:Be,depositAccountListWithDebitCardIssued:Pe,isChargeCardTOSAccepted:ne,isDebitCardTOSAccepted:Q,primaryFundingAccountDetails:pa,chargeCardSetUpViewFetchState:we.fetchState,productInformation:ra,creditAccountInformation:ta,debitAccountInformation:na,cashbackInformation:We,isAiCfoAccessEnabled:b,onAskAiCfoClick:g,isCardsCommentingEnabled:T})]})]}):(ne||Q)&&z===!0?s.jsx(ga,{to:"../setup"}):Te||Ve?s.jsx(ga,{to:"../promo"}):s.jsx(la,{fetchState:oe})}const es=e=>`/${e}/cards/new`,as=e=>`/${e}/cards/payment`,ts=e=>`/${e}/cards/payment-history`,ns=pe(function(e){const t=X.getSignedInUser(),a=ie(e),r=e.tenantState.currentTenantId,n=Ft(e),C={userId:t?.userId??"",sessionId:t?.zeniSessionId??"",tenantId:r??""},p=a?.companyName??"",u=e.chargeCardPaymentHistoryState.downloadUIState.downloadState;return{fetchState:n.fetchState,filters:n.filters,isZeniTenant:xn(a),repaymentList:n.repaymentHistory,searchText:n.searchText,repaymentHistoryUsers:n.repaymentHistoryUsers,sortConfig:{sortKey:n.uiState.sortKey,sortOrder:n.uiState.sortOrder},downloadParams:{authParams:C,companyName:p,spendManagementEndPoint:`${Ha}/spendManagement`,isShowDeletedBillsEnabled:!1,isShowDeletedReimbursementEnabled:!1},downloadState:u}},function(e,t){const{location:a,navigate:r}=t;return{onBackClick:()=>{const n=ve(a.state?.pathnameStackToGoBack),C=n.poppedPathname??"..";r(C,{state:{pathnameStackToGoBack:n.newStack}})},onColumnSortConfigChanged:(n,C)=>{e({type:"chargeCardPaymentHistory/updatePaymentHistoryUIState",payload:{uiState:{sortKey:n,sortOrder:C}}})},onFiltersChange:n=>{e(Ln({filters:n}))},onReloadPayments:()=>{e(vt(!0))},onSearchTextChanged:n=>{e({type:"chargeCardPaymentHistory/updatePaymentHistorySearchText",payload:n})},updateDownloadStateHandler:n=>{e(Bn({uiState:{downloadState:n}}))}}})(br);function rs(){const e=le(),t=ge(),a=ue(),{areTenantIdsInSync:r}=Nt(),{useFeatureGate:n}=ce();if(X.getSignedInUser()==null)throw Error("Can't access payment history page without signing in...");const C=y(q=>ie(q)),p=y(q=>Ft(q)),[u,S]=i.useState(!1),[o,c]=i.useState(!1),[_,A]=i.useState(!1),[f,R]=i.useState(null),F=!C.userRole.includes("charge_card_user"),k=!!C.companyDebitCardInfo?.info?.isDebitCardEnabled,{isFeatureEnabled:h}=n(Y.isChargeCardFeatureEnabled),{isFeatureEnabled:b}=n(Y.isDebitCardFeatureEnabled),g=Se(b,C),d=Ie({isDebitCardFeatureEnabled:b,isBankingOnlyTenant:g}),D=be(C),v=ye(C),N=C.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,L=Ae({isCardsOnlyTenant:D,isChargeCardFeatureEnabled:h,isBookKeepingTenant:v,isDebitCardProductVisible:d,chargeCardsCreditAccountLimit:N}),w=!!C.companyChargeCardInfo?.info?.isChargeCardEnabled,V=je(),m=Re(V?.loggedInUserRoleMap),l=y(q=>Ke(q,F,d&&k,L&&w)),P=i.useMemo(()=>{const q=l.cards.filter($=>$.type.code.includes("debit"));return[...new Set(q.map($=>$.connectedAccountId))]},[l.cards]),T=y(q=>Ze(q)),H=y(q=>va(q,P)),{creditAccountRepayment:U}=y(q=>Ye(q)),K=i.useMemo(()=>Xa(m,T),[m,T]),I=i.useMemo(()=>Ca(L,w,m,l.creditAccount,U),[L,w,m,l.creditAccount,U]),B=i.useMemo(()=>et(d,k,m,H,l.debitCardSummary),[d,k,m,H,l.debitCardSummary]),j=i.useMemo(()=>Oe(L,d,k,w),[L,d,k,w]),O=l.creditAccount.balance.amount+l.creditAccount.hold.amount,W=i.useMemo(()=>f!=null?p.repaymentHistory.find(q=>q.cardRepaymentId===f):void 0,[f,p.repaymentHistory]),E=i.useCallback(q=>{R(q),a(Ia(F,d&&k,L&&w,!1)),A(!0)},[a,F,d,k,L,w]),z=i.useCallback(()=>{A(!1),R(null),document.body.style.overflow="auto"},[]);return i.useEffect(()=>{u||p.fetchState==="Completed"||p.fetchState==="In-Progress"||(S(!0),a(vt()))},[u,a,p.fetchState]),i.useEffect(()=>{!o&&(w||k)&&r&&(c(!0),a(Ia(F,!1,L&&w,!1)))},[o,w,k,r,a,F,L]),s.jsxs(s.Fragment,{children:[_?s.jsx(at,{closeDrawerHandler:z,isPaymentDrawerOpen:_,pageName:"Payment History",sourcePage:"cardPaymentHistory",creditAccountSpentAmount:O,productInformation:j,creditAccountInformation:I,debitAccountInformation:B,cashbackInformation:K,isDebitCardInfoFetchStateCompleted:!(d&&k&&m)||H.fetchState==="Completed",isCreditCardInfoFetchStateCompleted:!L||U.fetchState==="Completed",isCashbackInfoFetchStateCompleted:!m||T.fetchState==="Completed",paymentInitiatedDate:U.initiatedRepaymentDate,retryRepayment:W}):null,s.jsx(ns,{location:t,navigate:e,accountInfoByAccountId:p.accountInfoByAccountId,onRetryPaymentClick:E})]})}const it=_e.div`
26
26
  display: flex;
27
27
  height: 100vh;
28
28
  width: 100%;
@@ -31,7 +31,7 @@ import{j as s}from"./liveblocks-D5IOuNv9.js";import{j as le,l as ia,h as ue,g as
31
31
  overflow: auto;
32
32
  align-items: center;
33
33
  background-color: ${e=>e.theme.colors.grey4};
34
- `,dt=qa.getLocalizedStrings().months;function ss(){const e=le(),t=ue(),a=ge(),{creditAccount:r,creditAccountRepayment:n}=y(I=>Ze(I)),C=`${jt.cardMicroServiceBaseUrl}/1.0/credit-accounts/${r.id}`,[p,u]=i.useState(!1),[S,o]=i.useState(!1),c=y(I=>On(I)),{useFeatureGate:_}=ce(),A=y(I=>ie(I)),{isFeatureEnabled:f}=_(Z.isChargeCardFeatureEnabled),{isFeatureEnabled:U}=_(Z.isDebitCardFeatureEnabled),F=Se(U,A),k=Ie({isDebitCardFeatureEnabled:U,isBankingOnlyTenant:F}),h=be(A),b=ye(A),g=A.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,d=Ae({isCardsOnlyTenant:h,isChargeCardFeatureEnabled:f,isBookKeepingTenant:b,isDebitCardProductVisible:k,chargeCardsCreditAccountLimit:g}),D=!!A.companyDebitCardInfo?.info?.isDebitCardEnabled,v=!!A.companyChargeCardInfo?.info?.isChargeCardEnabled,N=y(I=>$e(I,A.companyId)),B=Ge(N.controllers),w=y(I=>xt(I)),V=w.cards.filter(I=>I.type.code.includes("debit")).map(I=>I.connectedAccountId),m=[...new Set(V)],l=y(I=>va(I,m)),P=y(I=>Un(I));i.useEffect(()=>{S||r.fetchState==="Completed"||r.fetchState==="In-Progress"||(u(!0),t(za()))},[p,t,r.fetchState]),i.useEffect(()=>{S||r.fetchState!=="Completed"||r.id==null||c.fetchState==="Completed"||c.fetchState==="In-Progress"||(o(!0),t(Rn(r.id)))},[S,t,r.fetchState,r.id,c.fetchState]),i.useEffect(()=>{l.fetchState!=="Completed"&&l.fetchState!=="In-Progress"&&k&&D&&t(Lt()),w.fetchState!=="Completed"&&w.fetchState!=="In-Progress"&&t(ca()),P.fetchState!=="Completed"&&P.fetchState!=="In-Progress"&&k&&D&&t(jn()),n.fetchState!=="Completed"&&n.fetchState!=="In-Progress"&&d&&v&&t($a())},[l.fetchState,k,D,w.fetchState,P.fetchState,n.fetchState,d,v]),i.useEffect(()=>{if(c.fetchState==="Completed"&&r.fetchState==="Completed"&&n.fetchState==="Completed"&&w.fetchState==="Completed"&&(!k||!D||l.fetchState==="Completed"&&P.fetchState==="Completed")){let I="",L="";if(c.statements.length>0){const E=c.statements[c.statements.length-1].period,[G,q]=E.split("-"),$=c.statements[0].period,[x,se]=$.split("-");I=`${dt[parseInt(q)-1]} ${G}`,L=`${dt[parseInt(se)-1]} ${x}`}const j=Re(d,k,D,v),R=Ca(d,v,!0,r,n),W=et(k,D,!0,l,P);X.trackCardsCreditCardStatementsView(B,j,{numberOfStatements:c.statements.length,oldestStatementMonthYear:I,latestStatementMonthYear:L},R,W)}},[c.fetchState,r.fetchState,n.fetchState,l.fetchState,w.fetchState,P.fetchState]);const T=()=>{const I=ve(a.state?.pathnameStackToGoBack),L=I.poppedPathname??"..";e(L,{state:{pathnameStackToGoBack:I.newStack}})},H=y(I=>Ye(I)),O=J.getSignedInUser(),K={userId:O?.userId??"",sessionId:O?.zeniSessionId??"",tenantId:A.tenantId??""};if(O==null)throw Error("Can't access address page without signing in...");if(c.fetchState!=="Completed")return s.jsx(it,{children:s.jsx(yr,{onBackClick:T})});{const I=Re(d,k,D,v);return s.jsx(it,{children:s.jsx(Sr,{currentTenantCompanyName:A.companyName,statementListView:c,productInformation:I,onBackClick:T,authParams:K,controllerEmails:B,isChargeCardFeatureEnabled:d,isDebitCardFeatureEnabled:k,isDebitCardSetupEnabled:D,isChargeCardSetupEnabled:v,chargeCardCashbackDetailState:H,creditAccount:r,creditAccountRepayment:n,depositAccountListWithDebitCardIssued:l,debitCardSummary:P,downloadEndPoint:C})})}}const os={containerWidth:new ma(100,58)},cs=({appContent:e})=>{const t=ua(),a=ue(),r=le(),n=ge(),{useDynamicConfig:C}=ce(),[p,u]=i.useState(!1),[S,o]=i.useState(!1),[c,_]=i.useState(!1),[A,f]=i.useState(!1),[U,F]=i.useState(!1),[k,h]=i.useState(!1),b=J.getSignedInUser();if(b==null)throw Error("Can't access onboarding card page without signing in...");const g=y(R=>ie(R)),{configValue:d}=C(Fe.zeniCardsConfig),D=y(R=>Nn(R)),{tenantEmailDomain:v}=g,N=y(R=>R.settingsViewState.profile.fetchState),B=y(R=>R.chargeCardListState.fetchState),w=y(R=>R.settingsViewState.profile.userId),V=y(R=>R.chargeCardConfigState.fetchState);i.useEffect(()=>{p===!1&&N!=="In-Progress"&&N!=="Completed"&&(a(Vn()),u(!0)),S===!1&&V!=="In-Progress"&&V!=="Completed"&&(a(Da()),o(!0)),c===!1&&B==="Not-Started"&&(_(!0),a(ca()))},[p,c,B,S,V]),i.useEffect(()=>{N==="Completed"&&U===!1&&w!=null&&B==="Completed"&&D.cards.length>0&&(a(Hn({userId:w})),a(Bt({cardId:D.cards[D.cards.length-1].id})),F(!0))},[N,U,w,B]),i.useEffect(()=>{if(!A&&D.fetchState==="Completed"&&D.cards.length===0){const R=ve(n.state?.pathnameStackToGoBack),W=R.poppedPathname??Ne(v);r(W,{state:{pathnameStackToGoBack:R.newStack}})}},[D.fetchState,D.cards,A]);const m=y(R=>ka(R)),l=Xa(m.updateStatus.fetchState),P=m.currentDisplayedCardId,{useFeatureGate:T}=ce(),{isFeatureEnabled:H}=T(Z.isChargeCardFeatureEnabled),O=!!g.companyChargeCardInfo?.info?.isChargeCardEnabled,K=!g.userRole.includes("charge_card_user")&&H&&O,I=y(R=>P!=null?Ot(R.chargeCardState,P):null),L=()=>{P!=null&&(a(Je(P,K,!0)),a(ca()),f(!0))};i.useEffect(()=>{if(A&&P!=null&&I!=null&&I.status.code!=="request_on_hold"){const R=Ce(g.tenantEmailDomain,P,b,I),W=fe(n.state?.pathnameStackToGoBack,n.pathname);a(Mn()),I?.type.code==="business_virtual_credit_card"&&a(_a()),r(R,{state:{pathnameStackToGoBack:W},replace:!0})}},[A,I?.status.code]),i.useEffect(()=>{l==="In-Progress"&&m.updateStatus.fetchState==="Completed"&&setTimeout(L,3e3)},[l,m.updateStatus.fetchState]);const j=R=>{h(R)};if(!A&&B!=="Completed"||N!=="Completed"||D.cards.length===0)return s.jsxs(lt,{children:[s.jsx(ze,{isAppContentDrawerOpen:k,handleDrawerToggle:j}),s.jsx(Ir,{})]});if(w==null)throw Error("Can't access my userId.");return s.jsxs(lt,{children:[s.jsx(ze,{isAppContentDrawerOpen:k,handleDrawerToggle:j}),s.jsx(is,{chargeCardListView:D,cardUserOnboardingView:m,navigate:r,currentTenant:g,myUserId:w,location:n,chargeCardCashbackRatePerTransaction:d.charge_card_cashback_rate_per_transaction!=null?d.charge_card_cashback_rate_per_transaction:.0175,onClickMenuIcon:()=>{j(!0)}}),e!=null?s.jsx(ds,{windowSize:t,children:e}):null]})},is=pe(function(e,{currentTenant:t,cardUserOnboardingView:a,chargeCardListView:r,myUserId:n}){const C=Ke(e,!1,!1,!1);let p=!1;return C.fetchState==="Completed"&&C.cards.length<=1&&(p=!0),{cards:r.cards,showMenuIcon:p,companyLegalName:t.companyName,twoFAView:a.twoFAView,cardUserOnboardingLocalData:a.cardUserOnboardingLocalData??{userId:n},isDOBDisabled:a.isDOBPresent,onboardingProgressStatus:a.onboardingProgressStatus}},function(e,t){const{navigate:a,cardUserOnboardingView:r,location:n,currentTenant:C}=t,{tenantEmailDomain:p}=C;return{updateCardUserOnboardingLocalData:u=>{e(rt({localData:u}))},onGetOtp:u=>{if(r.cardUserOnboardingLocalData!=null){const S={...r.cardUserOnboardingLocalData,phone:u};e(rt({localData:S}))}e(Ta(u,"CardUserOnboarding"))},onResendOtp:u=>{e(wa(u,"CardUserOnboarding"))},onVerifyOtp:(u,S)=>{e(Pa(u,S,"CardUserOnboarding"))},onVerifyOtpSuccess:u=>{e(zn()),u!=null&&J.saveZeniOtpToken(u)},setCurrentDisplayedCardId:u=>{e(Bt({cardId:u}))},onBackClick:()=>{const u=ve(n.state?.pathnameStackToGoBack),S=u.poppedPathname??Ne(p);a(S,{state:{pathnameStackToGoBack:u.newStack}})}}})(Ar),ds=_e.div`
34
+ `,dt=qa.getLocalizedStrings().months;function ss(){const e=le(),t=ue(),a=ge(),{creditAccount:r,creditAccountRepayment:n}=y(I=>Ye(I)),C=`${jt.cardMicroServiceBaseUrl}/1.0/credit-accounts/${r.id}`,[p,u]=i.useState(!1),[S,o]=i.useState(!1),c=y(I=>Un(I)),{useFeatureGate:_}=ce(),A=y(I=>ie(I)),{isFeatureEnabled:f}=_(Y.isChargeCardFeatureEnabled),{isFeatureEnabled:R}=_(Y.isDebitCardFeatureEnabled),F=Se(R,A),k=Ie({isDebitCardFeatureEnabled:R,isBankingOnlyTenant:F}),h=be(A),b=ye(A),g=A.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,d=Ae({isCardsOnlyTenant:h,isChargeCardFeatureEnabled:f,isBookKeepingTenant:b,isDebitCardProductVisible:k,chargeCardsCreditAccountLimit:g}),D=!!A.companyDebitCardInfo?.info?.isDebitCardEnabled,v=!!A.companyChargeCardInfo?.info?.isChargeCardEnabled,N=y(I=>$e(I,A.companyId)),L=ze(N.controllers),w=y(I=>xt(I)),V=w.cards.filter(I=>I.type.code.includes("debit")).map(I=>I.connectedAccountId),m=[...new Set(V)],l=y(I=>va(I,m)),P=y(I=>Rn(I));i.useEffect(()=>{S||r.fetchState==="Completed"||r.fetchState==="In-Progress"||(u(!0),t(Ga()))},[p,t,r.fetchState]),i.useEffect(()=>{S||r.fetchState!=="Completed"||r.id==null||c.fetchState==="Completed"||c.fetchState==="In-Progress"||(o(!0),t(On(r.id)))},[S,t,r.fetchState,r.id,c.fetchState]),i.useEffect(()=>{l.fetchState!=="Completed"&&l.fetchState!=="In-Progress"&&k&&D&&t(Bt()),w.fetchState!=="Completed"&&w.fetchState!=="In-Progress"&&t(ca()),P.fetchState!=="Completed"&&P.fetchState!=="In-Progress"&&k&&D&&t(jn()),n.fetchState!=="Completed"&&n.fetchState!=="In-Progress"&&d&&v&&t($a())},[l.fetchState,k,D,w.fetchState,P.fetchState,n.fetchState,d,v]),i.useEffect(()=>{if(c.fetchState==="Completed"&&r.fetchState==="Completed"&&n.fetchState==="Completed"&&w.fetchState==="Completed"&&(!k||!D||l.fetchState==="Completed"&&P.fetchState==="Completed")){let I="",B="";if(c.statements.length>0){const E=c.statements[c.statements.length-1].period,[z,q]=E.split("-"),$=c.statements[0].period,[x,se]=$.split("-");I=`${dt[parseInt(q)-1]} ${z}`,B=`${dt[parseInt(se)-1]} ${x}`}const j=Oe(d,k,D,v),O=Ca(d,v,!0,r,n),W=et(k,D,!0,l,P);J.trackCardsCreditCardStatementsView(L,j,{numberOfStatements:c.statements.length,oldestStatementMonthYear:I,latestStatementMonthYear:B},O,W)}},[c.fetchState,r.fetchState,n.fetchState,l.fetchState,w.fetchState,P.fetchState]);const T=()=>{const I=ve(a.state?.pathnameStackToGoBack),B=I.poppedPathname??"..";e(B,{state:{pathnameStackToGoBack:I.newStack}})},H=y(I=>Ze(I)),U=X.getSignedInUser(),K={userId:U?.userId??"",sessionId:U?.zeniSessionId??"",tenantId:A.tenantId??""};if(U==null)throw Error("Can't access address page without signing in...");if(c.fetchState!=="Completed")return s.jsx(it,{children:s.jsx(yr,{onBackClick:T})});{const I=Oe(d,k,D,v);return s.jsx(it,{children:s.jsx(Sr,{currentTenantCompanyName:A.companyName,statementListView:c,productInformation:I,onBackClick:T,authParams:K,controllerEmails:L,isChargeCardFeatureEnabled:d,isDebitCardFeatureEnabled:k,isDebitCardSetupEnabled:D,isChargeCardSetupEnabled:v,chargeCardCashbackDetailState:H,creditAccount:r,creditAccountRepayment:n,depositAccountListWithDebitCardIssued:l,debitCardSummary:P,downloadEndPoint:C})})}}const os={containerWidth:new ma(100,58)},cs=({appContent:e})=>{const t=ua(),a=ue(),r=le(),n=ge(),{useDynamicConfig:C}=ce(),[p,u]=i.useState(!1),[S,o]=i.useState(!1),[c,_]=i.useState(!1),[A,f]=i.useState(!1),[R,F]=i.useState(!1),[k,h]=i.useState(!1),b=X.getSignedInUser();if(b==null)throw Error("Can't access onboarding card page without signing in...");const g=y(O=>ie(O)),{configValue:d}=C(Fe.zeniCardsConfig),D=y(O=>Nn(O)),{tenantEmailDomain:v}=g,N=y(O=>O.settingsViewState.profile.fetchState),L=y(O=>O.chargeCardListState.fetchState),w=y(O=>O.settingsViewState.profile.userId),V=y(O=>O.chargeCardConfigState.fetchState);i.useEffect(()=>{p===!1&&N!=="In-Progress"&&N!=="Completed"&&(a(Vn()),u(!0)),S===!1&&V!=="In-Progress"&&V!=="Completed"&&(a(Da()),o(!0)),c===!1&&L==="Not-Started"&&(_(!0),a(ca()))},[p,c,L,S,V]),i.useEffect(()=>{N==="Completed"&&R===!1&&w!=null&&L==="Completed"&&D.cards.length>0&&(a(Hn({userId:w})),a(Lt({cardId:D.cards[D.cards.length-1].id})),F(!0))},[N,R,w,L]),i.useEffect(()=>{if(!A&&D.fetchState==="Completed"&&D.cards.length===0){const O=ve(n.state?.pathnameStackToGoBack),W=O.poppedPathname??Ne(v);r(W,{state:{pathnameStackToGoBack:O.newStack}})}},[D.fetchState,D.cards,A]);const m=y(O=>ka(O)),l=Ja(m.updateStatus.fetchState),P=m.currentDisplayedCardId,{useFeatureGate:T}=ce(),{isFeatureEnabled:H}=T(Y.isChargeCardFeatureEnabled),U=!!g.companyChargeCardInfo?.info?.isChargeCardEnabled,K=!g.userRole.includes("charge_card_user")&&H&&U,I=y(O=>P!=null?Ut(O.chargeCardState,P):null),B=()=>{P!=null&&(a(Xe(P,K,!0)),a(ca()),f(!0))};i.useEffect(()=>{if(A&&P!=null&&I!=null&&I.status.code!=="request_on_hold"){const O=Ce(g.tenantEmailDomain,P,b,I),W=fe(n.state?.pathnameStackToGoBack,n.pathname);a(Mn()),I?.type.code==="business_virtual_credit_card"&&a(_a()),r(O,{state:{pathnameStackToGoBack:W},replace:!0})}},[A,I?.status.code]),i.useEffect(()=>{l==="In-Progress"&&m.updateStatus.fetchState==="Completed"&&setTimeout(B,3e3)},[l,m.updateStatus.fetchState]);const j=O=>{h(O)};if(!A&&L!=="Completed"||N!=="Completed"||D.cards.length===0)return s.jsxs(lt,{children:[s.jsx(Ge,{isAppContentDrawerOpen:k,handleDrawerToggle:j}),s.jsx(Ir,{})]});if(w==null)throw Error("Can't access my userId.");return s.jsxs(lt,{children:[s.jsx(Ge,{isAppContentDrawerOpen:k,handleDrawerToggle:j}),s.jsx(is,{chargeCardListView:D,cardUserOnboardingView:m,navigate:r,currentTenant:g,myUserId:w,location:n,chargeCardCashbackRatePerTransaction:d.charge_card_cashback_rate_per_transaction!=null?d.charge_card_cashback_rate_per_transaction:.0175,onClickMenuIcon:()=>{j(!0)}}),e!=null?s.jsx(ds,{windowSize:t,children:e}):null]})},is=pe(function(e,{currentTenant:t,cardUserOnboardingView:a,chargeCardListView:r,myUserId:n}){const C=Ke(e,!1,!1,!1);let p=!1;return C.fetchState==="Completed"&&C.cards.length<=1&&(p=!0),{cards:r.cards,showMenuIcon:p,companyLegalName:t.companyName,twoFAView:a.twoFAView,cardUserOnboardingLocalData:a.cardUserOnboardingLocalData??{userId:n},isDOBDisabled:a.isDOBPresent,onboardingProgressStatus:a.onboardingProgressStatus}},function(e,t){const{navigate:a,cardUserOnboardingView:r,location:n,currentTenant:C}=t,{tenantEmailDomain:p}=C;return{updateCardUserOnboardingLocalData:u=>{e(rt({localData:u}))},onGetOtp:u=>{if(r.cardUserOnboardingLocalData!=null){const S={...r.cardUserOnboardingLocalData,phone:u};e(rt({localData:S}))}e(Ta(u,"CardUserOnboarding"))},onResendOtp:u=>{e(wa(u,"CardUserOnboarding"))},onVerifyOtp:(u,S)=>{e(Pa(u,S,"CardUserOnboarding"))},onVerifyOtpSuccess:u=>{e(Gn()),u!=null&&X.saveZeniOtpToken(u)},setCurrentDisplayedCardId:u=>{e(Lt({cardId:u}))},onBackClick:()=>{const u=ve(n.state?.pathnameStackToGoBack),S=u.poppedPathname??Ne(p);a(S,{state:{pathnameStackToGoBack:u.newStack}})}}})(Ar),ds=_e.div`
35
35
  display: flex;
36
36
  flex-direction: column;
37
37
  width: ${e=>`${os.containerWidth.value(e.windowSize)}%`};
@@ -44,7 +44,7 @@ import{j as s}from"./liveblocks-D5IOuNv9.js";import{j as le,l as ia,h as ue,g as
44
44
  flex-direction: column;
45
45
  align-items: center;
46
46
  background-color: ${e=>e.theme.colors.grey4};
47
- `,ls={containerWidth:new ma(100,58)},us=({appContent:e})=>{const t=ua(),a=ue(),r=le(),{cardId:n}=ia(),C=ge(),{useDynamicConfig:p,useFeatureGate:u}=ce(),[S,o]=i.useState(!1),[c,_]=i.useState(!1),[A,f]=i.useState(!1),[U,F]=i.useState(!1),k=J.getSignedInUser();if(k==null)throw Error("Can't access onboarding card page without signing in...");const h=y(L=>ie(L));if(n==null)throw Error("Empty card id is not valid...");const{configValue:b}=p(Fe.zeniCardsConfig),g=y(L=>$n(L,n)),{isFeatureEnabled:d}=u(Z.isChargeCardFeatureEnabled),{isFeatureEnabled:D}=u(Z.isDebitCardFeatureEnabled),v=Se(D,h),N=Ie({isDebitCardFeatureEnabled:D,isBankingOnlyTenant:v}),B=be(h),w=ye(h),V=h.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,m=Ae({isCardsOnlyTenant:B,isChargeCardFeatureEnabled:d,isBookKeepingTenant:w,isDebitCardProductVisible:N,chargeCardsCreditAccountLimit:V}),l=g.chargeCard,P=y(L=>L.chargeCardConfigState.fetchState);i.useEffect(()=>{S===!1&&P!=="In-Progress"&&P!=="Completed"&&(a(Da()),o(!0)),c===!1&&g.fetchState==="Not-Started"&&(_(!0),a(Je(n,!1,m)))},[c,g.fetchState,S,P]);const T=l?.type.code==="business_physical_debit_card"||l?.type.code==="business_virtual_debit_card";i.useEffect(()=>{if(g.fetchState==="Completed"){if(A===!1&&(T===!1||T&&l.status?.code!=="active"||T&&l.status.code==="active"&&l.isPinSet||l.cardHolderUserId!==k.userId)){const L=Ce(h.tenantEmailDomain,n,k,l,!0),j=fe(C.state?.pathnameStackToGoBack,C.pathname);r(L,{state:{pathnameStackToGoBack:j}})}else if(A&&g.isRefreshingViewInBackground===!1&&l?.isPinSet===!0){a(Gn({chargeCardId:n}));const L=Ce(h.tenantEmailDomain,n,k,l,!0),j=fe(C.state?.pathnameStackToGoBack,C.pathname);a(_a()),r(L,{state:{pathnameStackToGoBack:j}})}}},[g.fetchState,l?.type.code,A,g.isRefreshingViewInBackground]);const H=J.getZeniOtpTokenForCardHolder(n),O=y(L=>pt(L.userState,k.userId)),K=()=>{l?.isPinSet!==!0&&a(Ga(n,!0))};i.useEffect(()=>{g.updateDebitCardPinAttemptFetchState.fetchState==="Completed"&&(setTimeout(K,3e3),f(!0))},[g.updateDebitCardPinAttemptFetchState.fetchState]);const I=L=>{F(L)};if(P!=="Completed"||l==null)return s.jsx(la,{fetchState:"In-Progress"});if(O?.phone==null)throw Error("Can't access user phone number.");return s.jsxs(ps,{children:[s.jsx(ze,{isAppContentDrawerOpen:U,handleDrawerToggle:I}),s.jsx(ms,{cardId:n,card:l,phone:O.phone,signedInUser:k,isSandboxEnv:Ka(),debitCardDetailState:g,signedInUserToken:H,navigate:r,currentTenant:h,location:C,chargeCardCashbackRatePerTransaction:b.charge_card_cashback_rate_per_transaction!=null?b.charge_card_cashback_rate_per_transaction:.0175,onClickMenuIcon:()=>{I(!0)}}),e!=null?s.jsx(Cs,{windowSize:t,children:e}):null]})},ms=pe(function(e,{debitCardDetailState:t,cardId:a}){const r=ht(e,a),n=t.updateStatus,C=Ke(e,!1,!1,!1);let p=!1;return C.fetchState==="Completed"&&C.cards.length<=1&&(p=!0),{showMenuIcon:p,vgsVaultId:La.cardVaultId,twoFAView:r,setPinWaitStatus:n}},function(e,t){const{navigate:a,cardId:r,location:n,currentTenant:C,debitCardDetailState:p}=t,u=p.chargeCard?.cardProviderID,{tenantEmailDomain:S}=C;return{onGetOtp:o=>{u!=null&&e(Ta(o,"ChargeCardHolder",r))},onUpdateDebitCardPinAttempt:o=>{e(It(r,o))},onResendOtp:o=>{u!=null&&e(wa(o,"ChargeCardHolder",r))},onVerifyOtp:(o,c)=>{u!=null&&e(Pa(o,c,"ChargeCardHolder",r))},onVerifyOtpSuccess:o=>{o!=null&&J.saveZeniOtpTokenForCardHolder(o,r)},onSetPinSuccess:()=>{e(Zn({chargeCardId:r}))},onBackClick:()=>{const o=ve(n.state?.pathnameStackToGoBack),c=o.poppedPathname==null||o.poppedPathname.includes("activate")===!0?Ne(S):o.poppedPathname;a(c,{state:{pathnameStackToGoBack:o.newStack}})}}})(Er),Cs=_e.div`
47
+ `,ls={containerWidth:new ma(100,58)},us=({appContent:e})=>{const t=ua(),a=ue(),r=le(),{cardId:n}=ia(),C=ge(),{useDynamicConfig:p,useFeatureGate:u}=ce(),[S,o]=i.useState(!1),[c,_]=i.useState(!1),[A,f]=i.useState(!1),[R,F]=i.useState(!1),k=X.getSignedInUser();if(k==null)throw Error("Can't access onboarding card page without signing in...");const h=y(B=>ie(B));if(n==null)throw Error("Empty card id is not valid...");const{configValue:b}=p(Fe.zeniCardsConfig),g=y(B=>$n(B,n)),{isFeatureEnabled:d}=u(Y.isChargeCardFeatureEnabled),{isFeatureEnabled:D}=u(Y.isDebitCardFeatureEnabled),v=Se(D,h),N=Ie({isDebitCardFeatureEnabled:D,isBankingOnlyTenant:v}),L=be(h),w=ye(h),V=h.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,m=Ae({isCardsOnlyTenant:L,isChargeCardFeatureEnabled:d,isBookKeepingTenant:w,isDebitCardProductVisible:N,chargeCardsCreditAccountLimit:V}),l=g.chargeCard,P=y(B=>B.chargeCardConfigState.fetchState);i.useEffect(()=>{S===!1&&P!=="In-Progress"&&P!=="Completed"&&(a(Da()),o(!0)),c===!1&&g.fetchState==="Not-Started"&&(_(!0),a(Xe(n,!1,m)))},[c,g.fetchState,S,P]);const T=l?.type.code==="business_physical_debit_card"||l?.type.code==="business_virtual_debit_card";i.useEffect(()=>{if(g.fetchState==="Completed"){if(A===!1&&(T===!1||T&&l.status?.code!=="active"||T&&l.status.code==="active"&&l.isPinSet||l.cardHolderUserId!==k.userId)){const B=Ce(h.tenantEmailDomain,n,k,l,!0),j=fe(C.state?.pathnameStackToGoBack,C.pathname);r(B,{state:{pathnameStackToGoBack:j}})}else if(A&&g.isRefreshingViewInBackground===!1&&l?.isPinSet===!0){a(zn({chargeCardId:n}));const B=Ce(h.tenantEmailDomain,n,k,l,!0),j=fe(C.state?.pathnameStackToGoBack,C.pathname);a(_a()),r(B,{state:{pathnameStackToGoBack:j}})}}},[g.fetchState,l?.type.code,A,g.isRefreshingViewInBackground]);const H=X.getZeniOtpTokenForCardHolder(n),U=y(B=>pt(B.userState,k.userId)),K=()=>{l?.isPinSet!==!0&&a(za(n,!0))};i.useEffect(()=>{g.updateDebitCardPinAttemptFetchState.fetchState==="Completed"&&(setTimeout(K,3e3),f(!0))},[g.updateDebitCardPinAttemptFetchState.fetchState]);const I=B=>{F(B)};if(P!=="Completed"||l==null)return s.jsx(la,{fetchState:"In-Progress"});if(U?.phone==null)throw Error("Can't access user phone number.");return s.jsxs(ps,{children:[s.jsx(Ge,{isAppContentDrawerOpen:R,handleDrawerToggle:I}),s.jsx(ms,{cardId:n,card:l,phone:U.phone,signedInUser:k,isSandboxEnv:Ka(),debitCardDetailState:g,signedInUserToken:H,navigate:r,currentTenant:h,location:C,chargeCardCashbackRatePerTransaction:b.charge_card_cashback_rate_per_transaction!=null?b.charge_card_cashback_rate_per_transaction:.0175,onClickMenuIcon:()=>{I(!0)}}),e!=null?s.jsx(Cs,{windowSize:t,children:e}):null]})},ms=pe(function(e,{debitCardDetailState:t,cardId:a}){const r=ht(e,a),n=t.updateStatus,C=Ke(e,!1,!1,!1);let p=!1;return C.fetchState==="Completed"&&C.cards.length<=1&&(p=!0),{showMenuIcon:p,vgsVaultId:Ba.cardVaultId,twoFAView:r,setPinWaitStatus:n}},function(e,t){const{navigate:a,cardId:r,location:n,currentTenant:C,debitCardDetailState:p}=t,u=p.chargeCard?.cardProviderID,{tenantEmailDomain:S}=C;return{onGetOtp:o=>{u!=null&&e(Ta(o,"ChargeCardHolder",r))},onUpdateDebitCardPinAttempt:o=>{e(It(r,o))},onResendOtp:o=>{u!=null&&e(wa(o,"ChargeCardHolder",r))},onVerifyOtp:(o,c)=>{u!=null&&e(Pa(o,c,"ChargeCardHolder",r))},onVerifyOtpSuccess:o=>{o!=null&&X.saveZeniOtpTokenForCardHolder(o,r)},onSetPinSuccess:()=>{e(Yn({chargeCardId:r}))},onBackClick:()=>{const o=ve(n.state?.pathnameStackToGoBack),c=o.poppedPathname==null||o.poppedPathname.includes("activate")===!0?Ne(S):o.poppedPathname;a(c,{state:{pathnameStackToGoBack:o.newStack}})}}})(Er),Cs=_e.div`
48
48
  display: flex;
49
49
  flex-direction: column;
50
50
  width: ${e=>`${ls.containerWidth.value(e.windowSize)}%`};
@@ -59,7 +59,7 @@ import{j as s}from"./liveblocks-D5IOuNv9.js";import{j as le,l as ia,h as ue,g as
59
59
  align-items: center;
60
60
  background-color: ${e=>e.theme.colors.grey4};
61
61
  box-shadow: ${e=>`${Aa.sp0} 2px ${Aa.sp1} ${e.theme.colors.dropShadowNormal}`};
62
- `,hs={overlayWidth:new ma(Ua[12],Ua[12],Ua[9])},fs=pe(function(e,t){const a=Ya(e,!1,!1),r=t.lineId,n=a.customAddress[r],C=a.customAddressStatus[r]??{fetchState:"Not-Started",error:void 0};return{googleAPIKey:t.googleAPIKey,customAddress:n,customAddressStatus:C,lineId:r}},function(e,t){const{newCustomAddressId:a,lineId:r,chargeCardTypeOption:n}=t;return{onSubmitHandler:C=>{a!=null&&e(Ut(`${n==="creditCard"?"credit":"debit"}_custom_shipping_${r}_address`));const p=Rr(C);e(Wn({addressType:`${n==="creditCard"?"credit":"debit"}_custom_shipping_${r}_address`,addressToCreate:p})),e(qn(`${n==="creditCard"?"credit":"debit"}_custom_shipping_${r}_address`))},onDismissClick:()=>{t.onDismissClick(),a!=null&&e(Kn({addressId:a,cardLineId:r,cardType:n==="creditCard"?"business_physical_credit_card":"business_physical_debit_card"}))}}})(kr),gs=({lineId:e,closeDrawerHandler:t,chargeCardTypeOption:a})=>{const r=Wa(),n=ua(),C=()=>{t()},p=y(u=>Yn(`${a==="creditCard"?"credit":"debit"}_custom_shipping_${e}_address`,u))?.newAddressId;return s.jsx(Ht,{anchor:"right",open:e.length>0,PaperProps:{style:{minWidth:hs.overlayWidth.valuePercentage(n),boxShadow:"none",zIndex:8}},slotProps:{backdrop:{style:{opacity:.75,backgroundColor:r.colors.black,cursor:"pointer"}}},onClose:(u,S)=>(S==="backdropClick"||S==="escapeKeyDown")&&C(),children:s.jsx(fs,{googleAPIKey:La.googleMapsAPIKey,onDismissClick:C,lineId:e,chargeCardTypeOption:a,newCustomAddressId:p})})},bs=pe(function(e,t){const{isChargeCardFeatureEnabled:a,isDebitCardFeatureEnabled:r,isIssuePhysicalCardEnabled:n,isIssuePhysicalDebitCardEnabled:C,isChargeCardSetupEnabled:p,isDebitCardSetupEnabled:u}=t,S=Ya(e,a&&p,r&&u);return{companyName:t.companyName,signedInUser:t.signedInUser,issueChargeCards:S,isIssuePhysicalCardEnabled:n,isIssuePhysicalDebitCardEnabled:C,isDebitCardFeatureEnabled:r,isChargeCardFeatureEnabled:a,isChargeCardSetupEnabled:p,isDebitCardSetupEnabled:u,cardHolderCandidates:S.userList.map(o=>o.user).filter(Boolean),allRoles:S.userList.map(o=>o.userRole),allAccountingClasses:S.allAccountingClasses,userList:S.userList}},function(e,t){return{onIssueCardClick:()=>{e(Jn())},onSaveChangesToLocalStore:a=>{e(Qn(a))},onDismissClick:()=>{e(Rt()),t.navigate("../")},resetCustomAddressByLineID:(a,r)=>{e(Ut(`${r==="creditCard"?"credit":"debit"}_custom_shipping_${a}_address`))},openAddAddressDrawerHandler:t.openAddAddressDrawerHandler}})(Pr);function ys(){const e=J.getSignedInUser(),t=le(),a=ue(),r=Dr(),[n]=ut(),C=n.get("cardType"),{useFeatureGate:p}=ce(),{isFeatureEnabled:u}=p(Z.isIssuePhysicalCardEnabled),{isFeatureEnabled:S}=p(Z.isIssuePhysicalDebitCardEnabled),{isFeatureEnabled:o}=p(Z.isDebitCardFeatureEnabled),{isFeatureEnabled:c}=p(Z.isChargeCardFeatureEnabled),_=y(I=>ie(I)),A=Se(o,_),f=Ie({isDebitCardFeatureEnabled:o,isBankingOnlyTenant:A}),U=be(_),F=ye(_),k=_.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,h=Ae({isCardsOnlyTenant:U,isChargeCardFeatureEnabled:c,isBookKeepingTenant:F,isDebitCardProductVisible:f,chargeCardsCreditAccountLimit:k}),[b,g]=i.useState(!1);if(e==null)throw Error("Can't access issue card page without signing in...");i.useEffect(()=>{b||(g(!0),a(Xn(f&&D,h&&d,!1)))},[b,g,a]);const d=!!_.companyChargeCardInfo?.info?.isChargeCardEnabled,D=!!_.companyDebitCardInfo?.info?.isDebitCardEnabled,v=_.companyName,N=y(I=>Ya(I,h&&d,f&&D)),B=N.fetchState,w=N.issueCardStatus.fetchState,V=N.lastSelfIssuedDebitCardId,m=y(I=>V!=null?Ot(I.chargeCardState,V):void 0),[l,P]=i.useState(null),[T,H]=i.useState(null),O=()=>{P(null)},K=(I,L)=>{P(I),H(L)};return i.useEffect(()=>{if(w==="Completed"){if(V!=null&&m?.type.code==="business_virtual_debit_card"){let I;I=m?.status.code==="request_on_hold"&&e.userId===m.cardHolderUserId?Gt(_.tenantEmailDomain):Ce(_.tenantEmailDomain,V,e,m),t(I)}else t("../");a(Rt())}},[w,V]),B==="Completed"?s.jsxs(s.Fragment,{children:[l!==null&&T!==null?s.jsx(gs,{closeDrawerHandler:O,lineId:l,chargeCardTypeOption:T}):null,s.jsx(bs,{companyName:v,signedInUser:e,themeState:r,isIssuePhysicalCardEnabled:u,isIssuePhysicalDebitCardEnabled:S,isDebitCardFeatureEnabled:f,isChargeCardFeatureEnabled:h,isChargeCardSetupEnabled:d,isDebitCardSetupEnabled:D,navigate:t,fetchState:N.fetchState,openAddAddressDrawerHandler:K,defaultCardType:C==="creditCard"||C==="debitCard"?C:void 0})]}):B==="Error"?s.jsx(Ba,{}):s.jsx(_r,{})}const Ss=_e.div`
62
+ `,hs={overlayWidth:new ma(Ra[12],Ra[12],Ra[9])},fs=pe(function(e,t){const a=Za(e,!1,!1),r=t.lineId,n=a.customAddress[r],C=a.customAddressStatus[r]??{fetchState:"Not-Started",error:void 0};return{googleAPIKey:t.googleAPIKey,customAddress:n,customAddressStatus:C,lineId:r}},function(e,t){const{newCustomAddressId:a,lineId:r,chargeCardTypeOption:n}=t;return{onSubmitHandler:C=>{a!=null&&e(Rt(`${n==="creditCard"?"credit":"debit"}_custom_shipping_${r}_address`));const p=Or(C);e(Wn({addressType:`${n==="creditCard"?"credit":"debit"}_custom_shipping_${r}_address`,addressToCreate:p})),e(qn(`${n==="creditCard"?"credit":"debit"}_custom_shipping_${r}_address`))},onDismissClick:()=>{t.onDismissClick(),a!=null&&e(Kn({addressId:a,cardLineId:r,cardType:n==="creditCard"?"business_physical_credit_card":"business_physical_debit_card"}))}}})(kr),gs=({lineId:e,closeDrawerHandler:t,chargeCardTypeOption:a})=>{const r=Wa(),n=ua(),C=()=>{t()},p=y(u=>Zn(`${a==="creditCard"?"credit":"debit"}_custom_shipping_${e}_address`,u))?.newAddressId;return s.jsx(Ht,{anchor:"right",open:e.length>0,PaperProps:{style:{minWidth:hs.overlayWidth.valuePercentage(n),boxShadow:"none",zIndex:8}},slotProps:{backdrop:{style:{opacity:.75,backgroundColor:r.colors.black,cursor:"pointer"}}},onClose:(u,S)=>(S==="backdropClick"||S==="escapeKeyDown")&&C(),children:s.jsx(fs,{googleAPIKey:Ba.googleMapsAPIKey,onDismissClick:C,lineId:e,chargeCardTypeOption:a,newCustomAddressId:p})})},bs=pe(function(e,t){const{isChargeCardFeatureEnabled:a,isDebitCardFeatureEnabled:r,isIssuePhysicalCardEnabled:n,isIssuePhysicalDebitCardEnabled:C,isChargeCardSetupEnabled:p,isDebitCardSetupEnabled:u}=t,S=Za(e,a&&p,r&&u);return{companyName:t.companyName,signedInUser:t.signedInUser,issueChargeCards:S,isIssuePhysicalCardEnabled:n,isIssuePhysicalDebitCardEnabled:C,isDebitCardFeatureEnabled:r,isChargeCardFeatureEnabled:a,isChargeCardSetupEnabled:p,isDebitCardSetupEnabled:u,cardHolderCandidates:S.userList.map(o=>o.user).filter(Boolean),allRoles:S.userList.map(o=>o.userRole),allAccountingClasses:S.allAccountingClasses,userList:S.userList}},function(e,t){return{onIssueCardClick:()=>{e(Xn())},onSaveChangesToLocalStore:a=>{e(Qn(a))},onDismissClick:()=>{e(Ot()),t.navigate("../")},resetCustomAddressByLineID:(a,r)=>{e(Rt(`${r==="creditCard"?"credit":"debit"}_custom_shipping_${a}_address`))},openAddAddressDrawerHandler:t.openAddAddressDrawerHandler}})(Pr);function ys(){const e=X.getSignedInUser(),t=le(),a=ue(),r=Dr(),[n]=ut(),C=n.get("cardType"),{useFeatureGate:p}=ce(),{isFeatureEnabled:u}=p(Y.isIssuePhysicalCardEnabled),{isFeatureEnabled:S}=p(Y.isIssuePhysicalDebitCardEnabled),{isFeatureEnabled:o}=p(Y.isDebitCardFeatureEnabled),{isFeatureEnabled:c}=p(Y.isChargeCardFeatureEnabled),_=y(I=>ie(I)),A=Se(o,_),f=Ie({isDebitCardFeatureEnabled:o,isBankingOnlyTenant:A}),R=be(_),F=ye(_),k=_.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,h=Ae({isCardsOnlyTenant:R,isChargeCardFeatureEnabled:c,isBookKeepingTenant:F,isDebitCardProductVisible:f,chargeCardsCreditAccountLimit:k}),[b,g]=i.useState(!1);if(e==null)throw Error("Can't access issue card page without signing in...");i.useEffect(()=>{b||(g(!0),a(Jn(f&&D,h&&d,!1)))},[b,g,a]);const d=!!_.companyChargeCardInfo?.info?.isChargeCardEnabled,D=!!_.companyDebitCardInfo?.info?.isDebitCardEnabled,v=_.companyName,N=y(I=>Za(I,h&&d,f&&D)),L=N.fetchState,w=N.issueCardStatus.fetchState,V=N.lastSelfIssuedDebitCardId,m=y(I=>V!=null?Ut(I.chargeCardState,V):void 0),[l,P]=i.useState(null),[T,H]=i.useState(null),U=()=>{P(null)},K=(I,B)=>{P(I),H(B)};return i.useEffect(()=>{if(w==="Completed"){if(V!=null&&m?.type.code==="business_virtual_debit_card"){let I;I=m?.status.code==="request_on_hold"&&e.userId===m.cardHolderUserId?zt(_.tenantEmailDomain):Ce(_.tenantEmailDomain,V,e,m),t(I)}else t("../");a(Ot())}},[w,V]),L==="Completed"?s.jsxs(s.Fragment,{children:[l!==null&&T!==null?s.jsx(gs,{closeDrawerHandler:U,lineId:l,chargeCardTypeOption:T}):null,s.jsx(bs,{companyName:v,signedInUser:e,themeState:r,isIssuePhysicalCardEnabled:u,isIssuePhysicalDebitCardEnabled:S,isDebitCardFeatureEnabled:f,isChargeCardFeatureEnabled:h,isChargeCardSetupEnabled:d,isDebitCardSetupEnabled:D,navigate:t,fetchState:N.fetchState,openAddAddressDrawerHandler:K,defaultCardType:C==="creditCard"||C==="debitCard"?C:void 0})]}):L==="Error"?s.jsx(La,{}):s.jsx(_r,{})}const Ss=_e.div`
63
63
  display: flex;
64
64
  height: 100vh;
65
65
  width: 100%;
@@ -68,4 +68,4 @@ import{j as s}from"./liveblocks-D5IOuNv9.js";import{j as le,l as ia,h as ue,g as
68
68
  overflow: auto;
69
69
  align-items: center;
70
70
  background-color: ${e=>e.theme.colors.grey4};
71
- `,Is=pe(function(e,t){const{myPendingActivationChargeCardListState:a}=t;return{myPendingActivationChargeCardListView:a,uiState:a.uiState,signedInUser:t.signedInUser}},function(e,t){const{navigate:a,currentTenant:r,location:n,signedInUser:C,myPendingActivationChargeCardListState:p}=t,{tenantEmailDomain:u}=r,{cards:S}=p;return{onChargeCardRowClick:o=>{const c=$t(S,o),_=Ce(u,o,C,c),A=fe(n.state?.pathnameStackToGoBack,n.pathname);a(_,{state:{pathnameStackToGoBack:A}})},onColumnSortConfigChanged:(o,c)=>{e(Na({uiState:{sortKey:o,sortOrder:c}}))},onReloadCards:()=>{e(ca())},onBackClick:()=>{const o=r.userRole.includes("charge_card_user");e(Na({uiState:{sortKey:o?"cardName":"owner",sortOrder:"ascending"}})),a("../")}}})(wr);function As(){const e=le(),t=ue(),a=ge(),r=Wa(),[n,C]=i.useState(!1),p=y(T=>er(T)),u=y(T=>ie(T)),S=y(T=>$e(T,u.companyId)),o=Ge(S.controllers),{useFeatureGate:c}=ce(),{isFeatureEnabled:_}=c(Z.isChargeCardFeatureEnabled),{isFeatureEnabled:A}=c(Z.isDebitCardFeatureEnabled),f=Se(A,u),U=Ie({isDebitCardFeatureEnabled:A,isBankingOnlyTenant:f}),F=!!u.companyDebitCardInfo?.info?.isDebitCardEnabled,k=!!u.companyChargeCardInfo?.info?.isChargeCardEnabled,h=je(),b=be(u),g=ye(u),d=u.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,D=Ae({isCardsOnlyTenant:b,isChargeCardFeatureEnabled:_,isBookKeepingTenant:g,isDebitCardProductVisible:U,chargeCardsCreditAccountLimit:d}),v=Ue(h?.loggedInUserRoleMap),N=y(T=>Ye(T)),{creditAccount:B,creditAccountRepayment:w}=y(T=>Ze(T)),V=y(T=>xt(T)).cards.filter(T=>T.type.code.includes("debit")).map(T=>T.connectedAccountId),m=[...new Set(V)],l=y(T=>va(T,m));i.useEffect(()=>{n||p.fetchState==="Completed"||p.fetchState==="In-Progress"||(C(!0),t(ca()),t(Da()))},[n,t,p.fetchState]),i.useEffect(()=>{if(p.fetchState==="Completed"&&p.cards.length===1&&P!=null){const T=Ce(u.tenantEmailDomain,p.cards[0].id,P,p.cards[0]);e(T,{state:{message:a.state?.message}})}},[p.fetchState,p.cards]);const P=J.getSignedInUser();if(i.useEffect(()=>{B.fetchState!=="Completed"&&B.fetchState!=="In-Progress"&&D&&k&&v&&t(za()),w.fetchState!=="Completed"&&w.fetchState!=="In-Progress"&&v&&t($a()),l.fetchState!=="Completed"&&l.fetchState!=="In-Progress"&&U&&F&&v&&t(Lt())},[B.fetchState,w.fetchState,t,l.fetchState,U,F,v,D,k]),P==null)throw Error("Can't access address page without signing in...");if(p.fetchState!=="Completed")return s.jsx(la,{fetchState:"In-Progress",style:{backgroundColor:r.colors.grey5}});{const T=Re(D,U,F,k);return s.jsx(Ss,{children:s.jsx(Is,{navigate:e,currentTenant:u,signedInUser:P,productInformation:T,myPendingActivationChargeCardListState:p,isChargeCardFeatureEnabled:D,isDebitCardFeatureEnabled:U,isDebitCardSetupEnabled:F,isChargeCardSetupEnabled:k,chargeCardCashbackDetailState:N,creditAccount:B,creditAccountRepayment:w,depositAccountListWithDebitCardIssued:l,controllerEmails:o,location:a})})}}const Es=pe(function(e,t){const{companyId:a,companyLegalName:r}=t;return{chargeCardSetupView:da(e,a),admins:t.adminList,companyLegalName:r,meetingUrl:"https://meetings.hubspot.com/niharn/demo-zeni-charge-cards?embed=true"}},function(e,t){const{navigate:a,companyId:r,isCompanyBusinessVerificationAndPaymentSetUpDone:n,isDebitCardSetupEnabled:C,isChargeCardSetupEnabled:p,signedInUser:u,location:S,productInformation:o,isEarlyPayEnabled:c,controllerEmails:_,chargeCardsCreditAccountLimit:A}=t;return{onSetupButtonClick:f=>{if(u!=null&&X.trackCardsPromoPageClicked("enable cards"),n)switch(X.trackCardsEnableCardsClick(_,o,"Cards Promo"),f){case"credit":e(Oe(r,!0,"charge_cards",c,!1));break;case"debit":e(Oe(r,!0,"debit_cards",c,!1));break;case"debit_and_credit":e(A===0?Oe(r,!0,"debit_cards",c,!0):Oe(r,!0,"charge_cards__debit_cards",c,!1))}else switch(X.trackCardsSetupCardsClick(_,o,"Cards Promo"),f){case"credit":e(Oe(r,!1,"charge_cards",c,!1));break;case"debit":e(Oe(r,!1,"debit_cards",c,!1));break;case"debit_and_credit":e(A===0?Oe(r,!1,"debit_cards",c,!0):Oe(r,!1,"charge_cards__debit_cards",c,!1))}},onBackClick:()=>{const f=ve(S.state?.pathnameStackToGoBack);let U=f.poppedPathname;U==null&&(U=C||p?"..":"../.."),a(U,{state:{pathnameStackToGoBack:f.newStack}})},onLetsGoClick:()=>{a("./onboard")},onSetupChargeCardSuccess:()=>{n?(e(_a()),a("../",{relative:"path"})):a("../setup",{relative:"path"})},onExpressInterestClick:()=>{e(nr(r))}}})(Fr),ks=()=>{const e=le(),{tenantEmailDomain:t}=ia(),[a]=ut(),r=a.get("cardPromoType"),n=ue(),{useDynamicConfig:C,useFeatureGate:p}=ce(),[u,S]=i.useState(!1),{isFeatureEnabled:o}=p(Z.isDebitCardFeatureEnabled),{isFeatureEnabled:c}=p(Z.isEarlyPayFeatureEnabled),{isFeatureEnabled:_}=p(Z.isChargeCardFeatureEnabled),{configValue:A}=C(Fe.zeniCardsConfig),f=y(ee=>ie(ee)),U=y(ee=>$e(ee,f.companyId)),F=Ge(U.controllers),k=A.charge_card_cashback_rate_per_transaction!=null?A.charge_card_cashback_rate_per_transaction:.0175,h=ge(),b=J.getSignedInUserTenant(t)?.companyId??f.companyId,g=y(ee=>da(ee,b)),d=g.primaryFundingAccount,D=f.companyBillPayInfo?.info,v=be(f),N=ye(f),B=Se(o,f),w=f.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,V=Ie({isDebitCardFeatureEnabled:o,isBankingOnlyTenant:B}),m=Ae({isCardsOnlyTenant:v,isChargeCardFeatureEnabled:_,isBookKeepingTenant:N,isDebitCardProductVisible:V,chargeCardsCreditAccountLimit:w}),l=zt({isCardsOnlyTenant:v,isChargeCardFeatureEnabled:_,isBookKeepingTenant:N}),P=V&&m===!1,T=D?.businessVerificationStatus?.code==="verified"&&(P||d?.accType==="depositAccount"||ar(d?.providerVerificationStatus?.code??"")),H=J.getSignedInUser(),O=!!f.companyZeniAccountInfo?.info?.isZeniAccountEnabled,K=!!f.companyChargeCardInfo?.info?.isChargeCardTOSAccepted,I=!!f.company?.companyChargeCardInfo.isChargeCardEnabled,L=!!f.company?.companyDebitCardInfo.isDebitCardEnabled,j=!!f.companyDebitCardInfo?.info?.isDebitCardTOSAccepted,R=ee=>{S(ee)},W=y(ee=>ee.chargeCardSetupViewState.fetchState);if(H==null)throw Error("Can't access Charge Card promo page without signing in...");const E=je(),G=Ue(E?.loggedInUserRoleMap),q=Za(E?.loggedInUserRoleMap),[$,x]=i.useState(!1),[se,ae]=i.useState(!1),[ne,Q]=i.useState(!1);i.useEffect(()=>{$===!1&&h.state?.message==="activation"&&x(!0)},[h.state]),i.useEffect(()=>{se||W!=="Not-Started"||b==null||(ae(!0),n(Fa(b,!0)))},[se,W,b,n]);const re=f.companyChargeCardInfo?.info!=null&&Qe({cardInfo:f.companyChargeCardInfo.info,isProductVisible:l,isTOSAccepted:K,isSetupEnabled:I,isUserHasCardsAdminLevelAccess:G,isUserHasCardsAccess:q}),Ee=f.companyDebitCardInfo?.info!=null&&Qe({cardInfo:f.companyDebitCardInfo.info,isProductVisible:V,isTOSAccepted:j,isSetupEnabled:L,isUserHasCardsAdminLevelAccess:G,isUserHasCardsAccess:q}),xe=V&&Ee&&l&&w>=0&&re?"debit_and_credit":V&&Ee?"debit":"credit",Y=Ur(r,xe),he=g?.chargeCardTermsDetails?.fetchStatus?.fetchState,ke=i.useRef(null);i.useEffect(()=>{he==="In-Progress"?ke.current=Y:he!=="Error"&&he!=="Not-Started"||(ke.current=null)},[he,Y]);const Le=he!=="In-Progress"&&he!=="Completed"||ke.current==null?Y:ke.current;i.useEffect(()=>{Y==="credit"&&(I||l===!1&&L)||Y==="debit"&&L||Y==="debit_and_credit"&&L&&I?e("../"):(Y==="debit_and_credit"&&K===!0&&j===!0||Y==="credit"&&(K===!0||l===!1&&j===!0)||Y==="debit"&&j===!0)&&G===!0&&e("../setup")},[T,I,L,Y,K,j]),i.useEffect(()=>{ne||(n(tr("cardAdmin")),Q(!0))},[ne]);const Pe=y(ee=>Tt(ee.userState,ee.userRoleState,ee.userListViewState,"cardAdmin")),we=Re(l,V,L,I);return(re||Ee)&&W==="Completed"?s.jsxs(s.Fragment,{children:[s.jsx(Qa,{analytics:X,onLoad:()=>{if(X.trackPageLoaded(Vt.Event.cardsPromoPage),!!l&&!I||!!V&&!L||!!l&&!!V&&!L&&!I){const ee=Ds({isDebitCardSetupEnabled:L,isChargeCardSetupEnabled:I,isCreditCardProductVisibleForExpressInterest:l,isDebitCardProductVisible:V});X.trackCardsPromoView(F,we,"Page",ee,"Promo Page")}}}),s.jsx(xa,{showConfetti:$}),s.jsx(ze,{isAppContentDrawerOpen:u,handleDrawerToggle:R}),s.jsx(Es,{signedInUser:H,location:h,showEnableCardButton:T,isCompanyBusinessVerificationAndPaymentSetUpDone:T,isChargeCardSetupEnabled:I,isDebitCardSetupEnabled:L,companyLegalName:f.companyName,adminList:Pe.users,isCheckingEnabled:O,navigate:e,companyId:b,cardPromoType:Le,controllerEmails:F,productInformation:we,isCreditCardProductVisible:m,isDebitCardFeatureEnabled:o,isEarlyPayEnabled:c,cashbackRate:k,chargeCardsCreditAccountLimit:w,onClickMenuIcon:()=>{R(!0)}})]}):s.jsxs(s.Fragment,{children:[s.jsx(ze,{isAppContentDrawerOpen:u,handleDrawerToggle:R}),s.jsx(Tr,{})]})},Ds=({isDebitCardSetupEnabled:e,isChargeCardSetupEnabled:t,isCreditCardProductVisibleForExpressInterest:a,isDebitCardProductVisible:r})=>a&&r&&!e&&!t?"Credit & Debit Card":a&&!t?"Credit Card":r&&!e?"Debit Card":"";function qs(){const e=ge(),t=y(W=>ie(W)),{useFeatureGate:a}=ce(),{isFeatureEnabled:r}=a(Z.isChargeCardFeatureEnabled),{isFeatureEnabled:n}=a(Z.isDebitCardFeatureEnabled),{isFeatureEnabled:C}=a(Z.isEarlyPayFeatureEnabled),{isFeatureEnabled:p}=a(Z.isChargeCardPaymentHistoryFeatureEnabled),u=Se(n,t),S=Ie({isDebitCardFeatureEnabled:n,isBankingOnlyTenant:u}),o=vr(t,r,n),c=!!t.company?.companyChargeCardInfo.isChargeCardTOSAccepted,_=!!t.company?.companyDebitCardInfo.isDebitCardTOSAccepted,A=!!t.company?.companyChargeCardInfo.isChargeCardEnabled,f=!!t.company?.companyDebitCardInfo.isDebitCardEnabled,U=je(),F=Ue(U?.loggedInUserRoleMap),k=Za(U?.loggedInUserRoleMap),{isFeatureEnabled:h}=a(Z.isCashbackFeatureEnabled),b=t.userRole.includes("charge_card_user"),g=!b,d=!b&&A,D=t?.userRole!=null&&rr(t?.userRole),v=(t?.company==null||t.company.featuresActivationInfo?.isBillPayFeatureEnabled&&!D)&&sr(U?.loggedInUserRoleMap),N=or(U?.loggedInUserRoleMap),B=(t?.company==null||t.company.featuresActivationInfo?.isReimbursementFeatureEnabled&&!D)&&cr(U?.loggedInUserRoleMap),{isFeatureEnabled:w}=a(Z.isDepositAccountsFeatureEnabled),V=w&&!D&&gt(U?.loggedInUserRoleMap),m=A&&!D,l=f&&!D,P=o&&!D&&Ue(U?.loggedInUserRoleMap),T=ir(U?.loggedInUserRoleMap),H=be(t),O=ye(t),K=t.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,I=Ae({isCardsOnlyTenant:H,isChargeCardFeatureEnabled:r,isBookKeepingTenant:O,isDebitCardProductVisible:S,chargeCardsCreditAccountLimit:K}),L=t.companyChargeCardInfo?.info!=null&&Qe({cardInfo:t.companyChargeCardInfo.info,isProductVisible:I,isTOSAccepted:c,isSetupEnabled:A,isUserHasCardsAdminLevelAccess:F,isUserHasCardsAccess:k}),j=t.companyDebitCardInfo?.info!=null&&Qe({cardInfo:t.companyDebitCardInfo.info,isProductVisible:S,isTOSAccepted:_,isSetupEnabled:f,isUserHasCardsAdminLevelAccess:F,isUserHasCardsAccess:k}),R=L||j;return s.jsxs(Wt,{children:[F?s.jsx(te,{path:"setup",element:s.jsx(st,{isBillPayAdminLevelAccess:v,isReimbursementAdminLevelAccess:B,isZeniAccountAdminLevelAccess:V,isChargeCardAdminLevelAccess:P,isUserHasOnlyCardAccess:T,isUserHasOnlyBillPayAccess:N,productType:"charge_cards",type:"setup"})}):null,F?s.jsx(te,{path:"verification",element:s.jsx(st,{isBillPayAdminLevelAccess:v,isUserHasOnlyBillPayAccess:N,isReimbursementAdminLevelAccess:B,isZeniAccountAdminLevelAccess:V,isChargeCardAdminLevelAccess:P,isUserHasOnlyCardAccess:T,productType:"charge_cards",type:"verification"})}):null,s.jsx(te,{path:"promo",element:s.jsx(ks,{})}),m||l?s.jsxs(s.Fragment,{children:[s.jsx(te,{path:"/",element:s.jsx(ct,{isPaymentDrawerOpen:!1})}),P&&C?s.jsx(te,{path:"payment",element:s.jsx(ct,{isPaymentDrawerOpen:!0})}):null,s.jsx(te,{path:"activate",element:s.jsx(As,{})}),s.jsx(te,{path:"onboard",element:s.jsx(cs,{})}),F?s.jsx(te,{path:"new",element:s.jsx(ys,{})}):null,h&&g?s.jsx(te,{path:"cashback",element:s.jsx(Vr,{})}):null,d?s.jsx(te,{path:"statements",element:s.jsx(ss,{})}):null,P&&p&&A?s.jsx(te,{path:"payment-history",element:s.jsx(rs,{})}):null,s.jsx(te,{path:":cardId/activate",element:s.jsx(zr,{})}),s.jsx(te,{path:":cardId/setPin",element:s.jsx(us,{})}),s.jsx(te,{path:":cardId/addToWallet",element:s.jsx(jr,{})}),s.jsx(te,{path:":cardId/*",element:s.jsx(Xr,{})}),s.jsx(te,{path:"*",element:s.jsx(Ba,{})})]}):(c||_)&&F?s.jsx(te,{path:"*",element:s.jsx(ga,{to:"../setup"})}):R?s.jsx(te,{path:"*",element:s.jsx(ga,{to:"../promo",state:e.state})}):s.jsx(te,{path:"*",element:null})]})}export{qs as default};
71
+ `,Is=pe(function(e,t){const{myPendingActivationChargeCardListState:a}=t;return{myPendingActivationChargeCardListView:a,uiState:a.uiState,signedInUser:t.signedInUser}},function(e,t){const{navigate:a,currentTenant:r,location:n,signedInUser:C,myPendingActivationChargeCardListState:p}=t,{tenantEmailDomain:u}=r,{cards:S}=p;return{onChargeCardRowClick:o=>{const c=$t(S,o),_=Ce(u,o,C,c),A=fe(n.state?.pathnameStackToGoBack,n.pathname);a(_,{state:{pathnameStackToGoBack:A}})},onColumnSortConfigChanged:(o,c)=>{e(Na({uiState:{sortKey:o,sortOrder:c}}))},onReloadCards:()=>{e(ca())},onBackClick:()=>{const o=r.userRole.includes("charge_card_user");e(Na({uiState:{sortKey:o?"cardName":"owner",sortOrder:"ascending"}})),a("../")}}})(wr);function As(){const e=le(),t=ue(),a=ge(),r=Wa(),[n,C]=i.useState(!1),p=y(T=>er(T)),u=y(T=>ie(T)),S=y(T=>$e(T,u.companyId)),o=ze(S.controllers),{useFeatureGate:c}=ce(),{isFeatureEnabled:_}=c(Y.isChargeCardFeatureEnabled),{isFeatureEnabled:A}=c(Y.isDebitCardFeatureEnabled),f=Se(A,u),R=Ie({isDebitCardFeatureEnabled:A,isBankingOnlyTenant:f}),F=!!u.companyDebitCardInfo?.info?.isDebitCardEnabled,k=!!u.companyChargeCardInfo?.info?.isChargeCardEnabled,h=je(),b=be(u),g=ye(u),d=u.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,D=Ae({isCardsOnlyTenant:b,isChargeCardFeatureEnabled:_,isBookKeepingTenant:g,isDebitCardProductVisible:R,chargeCardsCreditAccountLimit:d}),v=Re(h?.loggedInUserRoleMap),N=y(T=>Ze(T)),{creditAccount:L,creditAccountRepayment:w}=y(T=>Ye(T)),V=y(T=>xt(T)).cards.filter(T=>T.type.code.includes("debit")).map(T=>T.connectedAccountId),m=[...new Set(V)],l=y(T=>va(T,m));i.useEffect(()=>{n||p.fetchState==="Completed"||p.fetchState==="In-Progress"||(C(!0),t(ca()),t(Da()))},[n,t,p.fetchState]),i.useEffect(()=>{if(p.fetchState==="Completed"&&p.cards.length===1&&P!=null){const T=Ce(u.tenantEmailDomain,p.cards[0].id,P,p.cards[0]);e(T,{state:{message:a.state?.message}})}},[p.fetchState,p.cards]);const P=X.getSignedInUser();if(i.useEffect(()=>{L.fetchState!=="Completed"&&L.fetchState!=="In-Progress"&&D&&k&&v&&t(Ga()),w.fetchState!=="Completed"&&w.fetchState!=="In-Progress"&&v&&t($a()),l.fetchState!=="Completed"&&l.fetchState!=="In-Progress"&&R&&F&&v&&t(Bt())},[L.fetchState,w.fetchState,t,l.fetchState,R,F,v,D,k]),P==null)throw Error("Can't access address page without signing in...");if(p.fetchState!=="Completed")return s.jsx(la,{fetchState:"In-Progress",style:{backgroundColor:r.colors.grey5}});{const T=Oe(D,R,F,k);return s.jsx(Ss,{children:s.jsx(Is,{navigate:e,currentTenant:u,signedInUser:P,productInformation:T,myPendingActivationChargeCardListState:p,isChargeCardFeatureEnabled:D,isDebitCardFeatureEnabled:R,isDebitCardSetupEnabled:F,isChargeCardSetupEnabled:k,chargeCardCashbackDetailState:N,creditAccount:L,creditAccountRepayment:w,depositAccountListWithDebitCardIssued:l,controllerEmails:o,location:a})})}}const Es=pe(function(e,t){const{companyId:a,companyLegalName:r}=t;return{chargeCardSetupView:da(e,a),admins:t.adminList,companyLegalName:r,meetingUrl:"https://meetings.hubspot.com/niharn/demo-zeni-charge-cards?embed=true"}},function(e,t){const{navigate:a,companyId:r,isCompanyBusinessVerificationAndPaymentSetUpDone:n,isDebitCardSetupEnabled:C,isChargeCardSetupEnabled:p,signedInUser:u,location:S,productInformation:o,isEarlyPayEnabled:c,controllerEmails:_,chargeCardsCreditAccountLimit:A}=t;return{onSetupButtonClick:f=>{if(u!=null&&J.trackCardsPromoPageClicked("enable cards"),n)switch(J.trackCardsEnableCardsClick(_,o,"Cards Promo"),f){case"credit":e(Ue(r,!0,"charge_cards",c,!1));break;case"debit":e(Ue(r,!0,"debit_cards",c,!1));break;case"debit_and_credit":e(A===0?Ue(r,!0,"debit_cards",c,!0):Ue(r,!0,"charge_cards__debit_cards",c,!1))}else switch(J.trackCardsSetupCardsClick(_,o,"Cards Promo"),f){case"credit":e(Ue(r,!1,"charge_cards",c,!1));break;case"debit":e(Ue(r,!1,"debit_cards",c,!1));break;case"debit_and_credit":e(A===0?Ue(r,!1,"debit_cards",c,!0):Ue(r,!1,"charge_cards__debit_cards",c,!1))}},onBackClick:()=>{const f=ve(S.state?.pathnameStackToGoBack);let R=f.poppedPathname;R==null&&(R=C||p?"..":"../.."),a(R,{state:{pathnameStackToGoBack:f.newStack}})},onLetsGoClick:()=>{a("./onboard")},onSetupChargeCardSuccess:()=>{n?(e(_a()),a("../",{relative:"path"})):a("../setup",{relative:"path"})},onExpressInterestClick:()=>{e(nr(r))}}})(Fr),ks=()=>{const e=le(),{tenantEmailDomain:t}=ia(),[a]=ut(),r=a.get("cardPromoType"),n=ue(),{useDynamicConfig:C,useFeatureGate:p}=ce(),[u,S]=i.useState(!1),{isFeatureEnabled:o}=p(Y.isDebitCardFeatureEnabled),{isFeatureEnabled:c}=p(Y.isEarlyPayFeatureEnabled),{isFeatureEnabled:_}=p(Y.isChargeCardFeatureEnabled),{configValue:A}=C(Fe.zeniCardsConfig),f=y(ee=>ie(ee)),R=y(ee=>$e(ee,f.companyId)),F=ze(R.controllers),k=A.charge_card_cashback_rate_per_transaction!=null?A.charge_card_cashback_rate_per_transaction:.0175,h=ge(),b=X.getSignedInUserTenant(t)?.companyId??f.companyId,g=y(ee=>da(ee,b)),d=g.primaryFundingAccount,D=f.companyBillPayInfo?.info,v=be(f),N=ye(f),L=Se(o,f),w=f.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,V=Ie({isDebitCardFeatureEnabled:o,isBankingOnlyTenant:L}),m=Ae({isCardsOnlyTenant:v,isChargeCardFeatureEnabled:_,isBookKeepingTenant:N,isDebitCardProductVisible:V,chargeCardsCreditAccountLimit:w}),l=Gt({isCardsOnlyTenant:v,isChargeCardFeatureEnabled:_,isBookKeepingTenant:N}),P=V&&m===!1,T=D?.businessVerificationStatus?.code==="verified"&&(P||d?.accType==="depositAccount"||ar(d?.providerVerificationStatus?.code??"")),H=X.getSignedInUser(),U=!!f.companyZeniAccountInfo?.info?.isZeniAccountEnabled,K=!!f.companyChargeCardInfo?.info?.isChargeCardTOSAccepted,I=!!f.company?.companyChargeCardInfo.isChargeCardEnabled,B=!!f.company?.companyDebitCardInfo.isDebitCardEnabled,j=!!f.companyDebitCardInfo?.info?.isDebitCardTOSAccepted,O=ee=>{S(ee)},W=y(ee=>ee.chargeCardSetupViewState.fetchState);if(H==null)throw Error("Can't access Charge Card promo page without signing in...");const E=je(),z=Re(E?.loggedInUserRoleMap),q=Ya(E?.loggedInUserRoleMap),[$,x]=i.useState(!1),[se,ae]=i.useState(!1),[ne,Q]=i.useState(!1);i.useEffect(()=>{$===!1&&h.state?.message==="activation"&&x(!0)},[h.state]),i.useEffect(()=>{se||W!=="Not-Started"||b==null||(ae(!0),n(Fa(b,!0)))},[se,W,b,n]);const re=f.companyChargeCardInfo?.info!=null&&Qe({cardInfo:f.companyChargeCardInfo.info,isProductVisible:l,isTOSAccepted:K,isSetupEnabled:I,isUserHasCardsAdminLevelAccess:z,isUserHasCardsAccess:q}),Ee=f.companyDebitCardInfo?.info!=null&&Qe({cardInfo:f.companyDebitCardInfo.info,isProductVisible:V,isTOSAccepted:j,isSetupEnabled:B,isUserHasCardsAdminLevelAccess:z,isUserHasCardsAccess:q}),xe=V&&Ee&&l&&w>=0&&re?"debit_and_credit":V&&Ee?"debit":"credit",Z=Rr(r,xe),he=g?.chargeCardTermsDetails?.fetchStatus?.fetchState,ke=i.useRef(null);i.useEffect(()=>{he==="In-Progress"?ke.current=Z:he!=="Error"&&he!=="Not-Started"||(ke.current=null)},[he,Z]);const Be=he!=="In-Progress"&&he!=="Completed"||ke.current==null?Z:ke.current;i.useEffect(()=>{Z==="credit"&&(I||l===!1&&B)||Z==="debit"&&B||Z==="debit_and_credit"&&B&&I?e("../"):(Z==="debit_and_credit"&&K===!0&&j===!0||Z==="credit"&&(K===!0||l===!1&&j===!0)||Z==="debit"&&j===!0)&&z===!0&&e("../setup")},[T,I,B,Z,K,j]),i.useEffect(()=>{ne||(n(tr("cardAdmin")),Q(!0))},[ne]);const Pe=y(ee=>Tt(ee.userState,ee.userRoleState,ee.userListViewState,"cardAdmin")),we=Oe(l,V,B,I);return(re||Ee)&&W==="Completed"?s.jsxs(s.Fragment,{children:[s.jsx(Qa,{analytics:J,onLoad:()=>{if(J.trackPageLoaded(Vt.Event.cardsPromoPage),!!l&&!I||!!V&&!B||!!l&&!!V&&!B&&!I){const ee=Ds({isDebitCardSetupEnabled:B,isChargeCardSetupEnabled:I,isCreditCardProductVisibleForExpressInterest:l,isDebitCardProductVisible:V});J.trackCardsPromoView(F,we,"Page",ee,"Promo Page")}}}),s.jsx(xa,{showConfetti:$}),s.jsx(Ge,{isAppContentDrawerOpen:u,handleDrawerToggle:O}),s.jsx(Es,{signedInUser:H,location:h,showEnableCardButton:T,isCompanyBusinessVerificationAndPaymentSetUpDone:T,isChargeCardSetupEnabled:I,isDebitCardSetupEnabled:B,companyLegalName:f.companyName,adminList:Pe.users,isCheckingEnabled:U,navigate:e,companyId:b,cardPromoType:Be,controllerEmails:F,productInformation:we,isCreditCardProductVisible:m,isDebitCardFeatureEnabled:o,isEarlyPayEnabled:c,cashbackRate:k,chargeCardsCreditAccountLimit:w,onClickMenuIcon:()=>{O(!0)}})]}):s.jsxs(s.Fragment,{children:[s.jsx(Ge,{isAppContentDrawerOpen:u,handleDrawerToggle:O}),s.jsx(Tr,{})]})},Ds=({isDebitCardSetupEnabled:e,isChargeCardSetupEnabled:t,isCreditCardProductVisibleForExpressInterest:a,isDebitCardProductVisible:r})=>a&&r&&!e&&!t?"Credit & Debit Card":a&&!t?"Credit Card":r&&!e?"Debit Card":"";function qs(){const e=ge(),t=y(W=>ie(W)),{useFeatureGate:a}=ce(),{isFeatureEnabled:r}=a(Y.isChargeCardFeatureEnabled),{isFeatureEnabled:n}=a(Y.isDebitCardFeatureEnabled),{isFeatureEnabled:C}=a(Y.isEarlyPayFeatureEnabled),{isFeatureEnabled:p}=a(Y.isChargeCardPaymentHistoryFeatureEnabled),u=Se(n,t),S=Ie({isDebitCardFeatureEnabled:n,isBankingOnlyTenant:u}),o=vr(t,r,n),c=!!t.company?.companyChargeCardInfo.isChargeCardTOSAccepted,_=!!t.company?.companyDebitCardInfo.isDebitCardTOSAccepted,A=!!t.company?.companyChargeCardInfo.isChargeCardEnabled,f=!!t.company?.companyDebitCardInfo.isDebitCardEnabled,R=je(),F=Re(R?.loggedInUserRoleMap),k=Ya(R?.loggedInUserRoleMap),{isFeatureEnabled:h}=a(Y.isCashbackFeatureEnabled),b=t.userRole.includes("charge_card_user"),g=!b,d=!b&&A,D=t?.userRole!=null&&rr(t?.userRole),v=(t?.company==null||t.company.featuresActivationInfo?.isBillPayFeatureEnabled&&!D)&&sr(R?.loggedInUserRoleMap),N=or(R?.loggedInUserRoleMap),L=(t?.company==null||t.company.featuresActivationInfo?.isReimbursementFeatureEnabled&&!D)&&cr(R?.loggedInUserRoleMap),{isFeatureEnabled:w}=a(Y.isDepositAccountsFeatureEnabled),V=w&&!D&&gt(R?.loggedInUserRoleMap),m=A&&!D,l=f&&!D,P=o&&!D&&Re(R?.loggedInUserRoleMap),T=ir(R?.loggedInUserRoleMap),H=be(t),U=ye(t),K=t.companyChargeCardInfo?.info?.chargeCardsCreditAccountLimit??0,I=Ae({isCardsOnlyTenant:H,isChargeCardFeatureEnabled:r,isBookKeepingTenant:U,isDebitCardProductVisible:S,chargeCardsCreditAccountLimit:K}),B=t.companyChargeCardInfo?.info!=null&&Qe({cardInfo:t.companyChargeCardInfo.info,isProductVisible:I,isTOSAccepted:c,isSetupEnabled:A,isUserHasCardsAdminLevelAccess:F,isUserHasCardsAccess:k}),j=t.companyDebitCardInfo?.info!=null&&Qe({cardInfo:t.companyDebitCardInfo.info,isProductVisible:S,isTOSAccepted:_,isSetupEnabled:f,isUserHasCardsAdminLevelAccess:F,isUserHasCardsAccess:k}),O=B||j;return s.jsxs(Wt,{children:[F?s.jsx(te,{path:"setup",element:s.jsx(st,{isBillPayAdminLevelAccess:v,isReimbursementAdminLevelAccess:L,isZeniAccountAdminLevelAccess:V,isChargeCardAdminLevelAccess:P,isUserHasOnlyCardAccess:T,isUserHasOnlyBillPayAccess:N,productType:"charge_cards",type:"setup"})}):null,F?s.jsx(te,{path:"verification",element:s.jsx(st,{isBillPayAdminLevelAccess:v,isUserHasOnlyBillPayAccess:N,isReimbursementAdminLevelAccess:L,isZeniAccountAdminLevelAccess:V,isChargeCardAdminLevelAccess:P,isUserHasOnlyCardAccess:T,productType:"charge_cards",type:"verification"})}):null,s.jsx(te,{path:"promo",element:s.jsx(ks,{})}),m||l?s.jsxs(s.Fragment,{children:[s.jsx(te,{path:"/",element:s.jsx(ct,{isPaymentDrawerOpen:!1})}),P&&C?s.jsx(te,{path:"payment",element:s.jsx(ct,{isPaymentDrawerOpen:!0})}):null,s.jsx(te,{path:"activate",element:s.jsx(As,{})}),s.jsx(te,{path:"onboard",element:s.jsx(cs,{})}),F?s.jsx(te,{path:"new",element:s.jsx(ys,{})}):null,h&&g?s.jsx(te,{path:"cashback",element:s.jsx(Vr,{})}):null,d?s.jsx(te,{path:"statements",element:s.jsx(ss,{})}):null,P&&p&&A?s.jsx(te,{path:"payment-history",element:s.jsx(rs,{})}):null,s.jsx(te,{path:":cardId/activate",element:s.jsx(Gr,{})}),s.jsx(te,{path:":cardId/setPin",element:s.jsx(us,{})}),s.jsx(te,{path:":cardId/addToWallet",element:s.jsx(jr,{})}),s.jsx(te,{path:":cardId/*",element:s.jsx(Jr,{})}),s.jsx(te,{path:"*",element:s.jsx(La,{})})]}):(c||_)&&F?s.jsx(te,{path:"*",element:s.jsx(ga,{to:"../setup"})}):O?s.jsx(te,{path:"*",element:s.jsx(ga,{to:"../promo",state:e.state})}):s.jsx(te,{path:"*",element:null})]})}export{qs as default};
@@ -0,0 +1 @@
1
+ import{j as m}from"./liveblocks-Hyy2O23M.js";import{a as g}from"./sentry-BTyPPF0t.js";import{j as w,h as k,u as x,l as T,g as O,k as E}from"./core-D1cXuJMi.js";import{z as D,b1 as F,x as P,d as V,f as j,ac as C,b2 as A,aq as L,ar as M,j as U}from"./index-Dr8ZNfvJ.js";import{eQ as h,fE as B,s8 as R,fz as _,c2 as z,MD as G,bn as q,q9 as Y,pZ as Z,ka as H,lG as S,ME as Q,bE as $,cv as N,lO as J,lR as K}from"./zeni-epic-state-CbUjX_b3.js";import"./mui-B2prtfNk.js";import{d as W}from"./routePaths-Dx_nnKk7.js";import{M as X}from"./MobileAppDrawer-D8M7VXe9.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]="97044350-ffdd-4a21-90d9-df094427a9c3",a._sentryDebugIdIdentifier="sentry-dbid-97044350-ffdd-4a21-90d9-df094427a9c3")}catch{}})();const ee=E(function(a){const t=_(a),i=D.getSignedInUser(),l=h(a),c=l.tenantId,p={userId:i?.userId??"",sessionId:i?.zeniSessionId??"",tenantId:c??""},f=z(l?.userRole??[])&&t.localData.updateStatus.fetchState!=="In-Progress"?void 0:"readonly",e=G(a.companyConfigState),n=a.countryListState?.byCountryListCode?.nationalityCountryList?.countries??[];return{isCompanyVerified:t.companyView?.company?.company?.companyBillPayInfo?.companyVerificationStatus?.code==="verified",companyPassportView:t,allIndustries:e.companyIndustries??[],allNationalityCountries:n,isDisabled:f,authParams:p,filesEndPoint:`${L.fileMicroServiceBaseUrl}`,isZeniUser:q(i)}},function(a,t){const{companyId:i,currentTenant:l,navigate:c,location:p}=t,{tenantEmailDomain:f}=l;return{onScheduleClick:e=>{let n=e.href;n.includes("http")||(n="https://".concat(n)),window.open(n,"_blank")},onSaveAll:()=>{a(K())},onAddressClick:e=>{const n=W(f,e),o=U(p.state?.pathnameStackToGoBack,p.pathname);c(n,{state:{pathnameStackToGoBack:o}})},onResetClick:()=>{a(J({companyId:i}))},onBackClick:()=>{c("../")},onCompanyDetailsChanged:e=>{const{companyInfo:n,incInfo:o,taxDetails:r,zeniFinanceTeam:d}=e,{website:u}=n,{meetingLink:y}=d,{incDate:s}=o,{taxesFiledYears:b}=r,v={companyInfo:{...n,website:u!=""&&u!=null?N(u):void 0,meetingLink:y!=""&&y!=null?N(y):void 0,industry:n.industry.selectedOption,companyIndustryType:n.companyIndustryType?.selectedOption??void 0,companySubIndustry:n.companySubIndustry?.selectedOption??void 0,businessModel:n.businessModel.selectedOption??"",companySourceOfFunds:n.companySourceOfFunds?.selectedOption,companySourceOfFundsDescription:n.companySourceOfFundsDescription??void 0,countriesOfOperations:n.countriesOfOperations?.selectedOptions?.map(I=>I.length===2?I:M(I))??[],transactionVolume:n.transactionVolume?.selectedOption??void 0,transactionVolumeDescription:n.transactionVolumeDescription??void 0,regulatedStatus:n.regulatedStatus??void 0,regulatedStatusDescription:n.regulatedStatusDescription??void 0,usNexus:n.usNexus??void 0,usNexusTypes:n.usNexusTypes?.selectedOptions??[],purposeOfAccount:n.purposeOfAccount?.selectedOption??void 0,purposeOfAccountDescription:n.purposeOfAccountDescription??void 0},incInfo:{typeOfInc:o.typeOfInc.selectedOption??"",stateOfInc:o.stateOfInc.selectedOption??"",incDate:s!=null?$(s?.toString()):s,fileId:o.fileIds[0]},taxDetails:{taxIdOrEIN:r.taxIdOrEIN,sicCode:r.sicCode,naicsCode:r.naicsCode,dunsNumber:r.dunsNumber,taxesFiledYears:b.selectedOptions.map(I=>parseInt(I)),fileId:r.fileIds[0]}};a(S({companyDetails:v}))},onPrimaryContactDetailsUpdated:e=>{a(S({primaryContact:{userId:e.userId,email:e.email.trim(),firstName:e.name.firstName,lastName:e.name.lastName}}))},onNewCompanyOfficerAdded:e=>{a(S({officers:[{officerType:e.officerType,email:e.email.trim(),phone:e.phone,firstName:e.name.firstName,lastName:e.name.lastName,userId:void 0}]}))},onNewCompanyOfficerRemoved:e=>{a(Q(e))},onCompanyOfficerUpdated:e=>{a(S({officers:[{officerType:e.officerType,email:e.email.trim(),phone:e.phone,firstName:e.name.firstName,lastName:e.name.lastName,userId:e.userId}]}))},updateFilesEntity:e=>{a(H({files:e}))},onDeleteFile:e=>{a(Z(e))},onEditFileName:(e,n)=>{a(Y(e,n.split(".")[0]))}}})(A);function de(){const a=w(),t=k(),i=x(),{tenantEmailDomain:l}=T(),[c,p]=g.useState(!1),[f,e]=g.useState(!1),n=O(s=>s.companyViewState.passportView.fetchState),o=O(s=>s.companyConfigState.fetchState),r=O(s=>h(s)),d=r.companyId??D.getSignedInUserTenant(l)?.companyId;if(D.getSignedInUser()==null)throw Error("Can't access company details page without signing in...");g.useEffect(()=>{c||n!=="Not-Started"||d==null||(p(!0),t(B(d)))},[c,n,d,t]),g.useEffect(()=>{o==="Not-Started"&&t(R())},[o,t]);const u=s=>{e(s)},y=n==="Not-Started"||n==="In-Progress"||o==="Not-Started"||o==="In-Progress";return d!=null&&n==="Error"?m.jsx(F,{onGoHome:()=>a("../",{replace:!0}),onReload:()=>window.location.reload()}):m.jsxs(m.Fragment,{children:[m.jsx(P,{analytics:V,onLoad:s=>s.trackPageLoaded(j.Event.companyPassport,C(i)?"Settings":"Company Passport")}),C(i)?m.jsx(X,{isAppContentDrawerOpen:f,handleDrawerToggle:u}):null,m.jsx(ee,{companyId:d,navigate:a,location:i,isLoading:y,currentTenant:r,isSettings:C(i),onClickMenuIcon:()=>{u(!0)}})]})}export{de as C};
@@ -0,0 +1,11 @@
1
+ import{j as C}from"./liveblocks-Hyy2O23M.js";import{a}from"./sentry-BTyPPF0t.js";import{h as D,u as v,g as u,N as w}from"./core-D1cXuJMi.js";import{Ji as A,eQ as O,fl as U,mS as _,fN as h,fk as j,eR as L,Jp as k}from"./zeni-epic-state-CbUjX_b3.js";import{u as F,z as f,L as g,D as $,o as H}from"./index-Dr8ZNfvJ.js";import{n as R}from"./mui-B2prtfNk.js";import{t as z}from"./getLocaleForTenant-Dc-_DzRm.js";import{g as Q,Q as J}from"./QBOConnectionScreen-vJXVqwWm.js";import"./recharts-CrZf7bKF.js";import"./analytics-BE9oUBzD.js";import"./plaid-4w70Yh4I.js";import"./dnd-DbPPTppj.js";import"./stripe-DMRn4zHo.js";import"./lottie-qu8VyEpw.js";import"./lexical-Du70nM1B.js";import"./pdf-Cvwxd6W6.js";import"./utils-C_-saZ2j.js";import"./empty-CfqAKA3M.js";import"./pdf-lib-D1w2Ub95.js";import"./index-n6IrYjfy.js";import"./url-CsQlFR2d.js";import"./index-3aBFjHPN.js";import"./decodeURIComponentSafe-Did0aZyt.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]="d55d33af-269d-4d24-96da-fe8aad705190",t._sentryDebugIdIdentifier="sentry-dbid-d55d33af-269d-4d24-96da-fe8aad705190")}catch{}})();const P=R.div`
2
+ display: flex;
3
+ flex: 1 1 auto;
4
+ flex-direction: row;
5
+ justify-content: center;
6
+ align-items: center;
7
+ width: 100%;
8
+ height: 100vh;
9
+ background-color: ${t=>t.theme.colors.background};
10
+ box-shadow: ${t=>`0px 2px ${H.sp1} ${t.theme.colors.dropShadowNormal}`};
11
+ `;function pe(){const t=D(),i=v(),{setLoading:d,clearAllLoading:x}=F(),p=a.useRef(!1),c=a.useRef(!1),{code:N,realmId:S,state:T}=Q(i.search),y=N!==""&&S!==""&&T!=="",I=u(l=>A(l)),e=u(l=>O(l)),n=u(l=>l.tenantState.fetchState),r=u(l=>l.tenantState.activeTenantFetchState.fetchState),o=f.getSignedInUser(),m=f.getActiveTenantForUser()?.tenantId,s=e?.externalConnections?.fetchState,E=e?.externalConnections?.saveConnectionState,b=e.externalConnections?.accounting[0]?.isValid;return a.useLayoutEffect(()=>{d(g.CONNECTION_AUTH)},[d]),a.useEffect(()=>{p.current||o==null||m==null||(p.current=!0,n==="Completed"||r!=="Not-Started"&&r!=="Error"||(d(g.TENANT_FETCHING),t(U(o.userId,m))))},[p,n,d]),a.useEffect(()=>{e.tenantId==null&&!c.current&&o!=null&&(c.current=!0,!(m==null||m!=null&&(r==="Completed"||r==="Error"))||n!=="Not-Started"&&n!=="Error"||t(_(o.userId)))},[c,n,r]),a.useEffect(()=>{o==null||e?.tenantId==null||e.externalConnections!=null||n!=="Completed"&&r!=="Completed"||s==="In-Progress"||E!=="Error"||(d(g.CONNECTION_AUTH),t(h(o.userId,e.tenantId)))},[E]),a.useEffect(()=>{n!=="Completed"&&r!=="Completed"||o==null||e?.tenantId==null||(t(j(e.tenantId)),f.saveActiveTenantDomainForUser(e.tenantEmailDomain),L(o?.userId,o?.zeniSessionId,e.tenantId),$.updateAppLocaleID(z(k(e))),e.externalConnections!=null||n!=="Completed"&&r!=="Completed"||s==="In-Progress"||o==null||e==null||t(h(o.userId,e.tenantId)))},[n,r,s]),a.useEffect(()=>{I.tenantsCoreDetailsInOrder.length>0&&n==="Completed"&&f.saveSignedInUserTenants(I.tenantsCoreDetailsInOrder)},[I.tenantsCoreDetailsInOrder.length,n]),a.useEffect(()=>{n!=="Completed"&&n!=="Error"||r!=="Completed"&&r!=="Error"||s!=="Completed"&&s!=="Error"||x()},[n,r,s]),e==null||n!=="Completed"&&r!=="Completed"||s!=="Completed"?null:y||b===!1?C.jsx(P,{children:C.jsx(J,{})}):C.jsx(w,{to:"/",replace:!0})}export{pe as default};
@@ -0,0 +1 @@
1
+ import{j as i}from"./liveblocks-Hyy2O23M.js";import{z as a}from"./index-Dr8ZNfvJ.js";import{g as n}from"./QBOConnectionScreen-vJXVqwWm.js";import"./sentry-BTyPPF0t.js";import{u as p,N as s}from"./core-D1cXuJMi.js";import"./zeni-epic-state-CbUjX_b3.js";import"./recharts-CrZf7bKF.js";import"./mui-B2prtfNk.js";import"./analytics-BE9oUBzD.js";import"./plaid-4w70Yh4I.js";import"./dnd-DbPPTppj.js";import"./stripe-DMRn4zHo.js";import"./lottie-qu8VyEpw.js";import"./lexical-Du70nM1B.js";import"./pdf-Cvwxd6W6.js";import"./utils-C_-saZ2j.js";import"./empty-CfqAKA3M.js";import"./pdf-lib-D1w2Ub95.js";import"./index-n6IrYjfy.js";import"./url-CsQlFR2d.js";import"./index-3aBFjHPN.js";import"./decodeURIComponentSafe-Did0aZyt.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]="8d904e89-6b8e-4c86-980c-585a84d9d789",t._sentryDebugIdIdentifier="sentry-dbid-8d904e89-6b8e-4c86-980c-585a84d9d789")}catch{}})();const U=()=>{const t=p(),{code:o,realmId:r,state:e}=n(t.search),d=a.getSignedInUser()?.userId??"";if(f(o,r,e,d)===!0){const m=`../../${e}/onboarding?code=${o}&realmId=${r}&state=auth_flow`;return i.jsx(s,{to:m})}return i.jsx(s,{to:"../../"})},f=(t,o,r,e)=>t!=""&&o!=""&&r!=""&&e!=null&&e!="";export{U as default,f as hasValidParams};