@zeniai/web-app-ui 5.3.46-qa → 5.3.47-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 (133) hide show
  1. package/dist/assets/{AccountMappingScreen-BT617fFT.js → AccountMappingScreen-Euit4Ttk.js} +2 -2
  2. package/dist/assets/{ActualMatchingMatchDetailScreen-B8f2yDaP.js → ActualMatchingMatchDetailScreen-BBYzjOqh.js} +1 -1
  3. package/dist/assets/AddressRoutes-PvYGzHCA.js +1 -0
  4. package/dist/assets/AddressScreen-DsGvV3N8.js +9 -0
  5. package/dist/assets/{AiCfoScreen-CW5K1JhC.js → AiCfoScreen-DAEPn0_B.js} +1 -1
  6. package/dist/assets/{AppDrawer-D5UtqVeE.js → AppDrawer-D4O6tn5i.js} +1 -1
  7. package/dist/assets/{BillPayApprovalRoutes-DwyJret-.js → BillPayApprovalRoutes-BY4P9AKu.js} +1 -1
  8. package/dist/assets/BillPayRoutes-CWc4tAqm.js +119 -0
  9. package/dist/assets/{BusinessVerificationPageScreen-BL6H7JF-.js → BusinessVerificationPageScreen-CSruI1nV.js} +2 -2
  10. package/dist/assets/CardsAiCfoScreen-COoYscKz.js +14 -0
  11. package/dist/assets/{ChargeCardRoutes-Brg8E0b9.js → ChargeCardRoutes-BU6-pfJv.js} +1 -1
  12. package/dist/assets/CompanyPassportScreen-BxoatMVb.js +1 -0
  13. package/dist/assets/ConnectionAuthScreen-zbcvhPbz.js +11 -0
  14. package/dist/assets/CustomerOnboardingAuthScreen-8IwDeKdF.js +1 -0
  15. package/dist/assets/{CustomerOnboardingRoutes-BffNdH_l.js → CustomerOnboardingRoutes-DV3rYEiJ.js} +3 -3
  16. package/dist/assets/{DashboardRoutes-CdQzvjb3.js → DashboardRoutes-D5hdkebN.js} +1 -1
  17. package/dist/assets/{DefaultTenantHome-Bve2xDaJ.js → DefaultTenantHome-DCPi_wXC.js} +1 -1
  18. package/dist/assets/{DomesticWireDetailScreen-Dj3JCDGh.js → DomesticWireDetailScreen-DgE28aJN.js} +4 -4
  19. package/dist/assets/{DrawerScreen-CxKP-6Rf.js → DrawerScreen-BihZ_PpN.js} +1 -1
  20. package/dist/assets/{EntityDetailRoutes-CRL6OrqO.js → EntityDetailRoutes-BqX-J3vM.js} +1 -1
  21. package/dist/assets/{ExpenseAutomationRoutes-BYSJ88to.js → ExpenseAutomationRoutes-DK-U-YTd.js} +1 -1
  22. package/dist/assets/FeaturePreviewScreen-5SleVFKv.js +1 -0
  23. package/dist/assets/{HubSpotOAuthCallbackScreen-DAHGdPOy.js → HubSpotOAuthCallbackScreen-2RxbRDTZ.js} +1 -1
  24. package/dist/assets/{InboxNotificationsProvider-gj6fT2eX.js → InboxNotificationsProvider-BmF5-_KA.js} +1 -1
  25. package/dist/assets/InvoicingRoutes-D0S6fDxY.js +2 -0
  26. package/dist/assets/{MagicLinkRoutes-CC75kCuL.js → MagicLinkRoutes-C22EnpRm.js} +8 -8
  27. package/dist/assets/MagicLinkSignInScreen-BVf-rLEH.js +12 -0
  28. package/dist/assets/MobileAppDrawer-0YtWXA3B.js +1 -0
  29. package/dist/assets/NotFoundScreen-BkYIKPgh.js +1 -0
  30. package/dist/assets/{NotificationRoutes-njgUFBoj.js → NotificationRoutes-CZQRvVbE.js} +1 -1
  31. package/dist/assets/{OAuthConsentScreen-BCgV9bma.js → OAuthConsentScreen-Q7ZDvc1F.js} +1 -1
  32. package/dist/assets/{PandLWithForecastRoutes-CZ27RjQE.js → PandLWithForecastRoutes-BzO_OgSq.js} +1 -1
  33. package/dist/assets/{PaymentLinkScreen-BrTP8y76.js → PaymentLinkScreen-B8bPleIr.js} +4 -4
  34. package/dist/assets/{PeopleRoutes-CulbMsz3.js → PeopleRoutes-D_nqmuPM.js} +9 -9
  35. package/dist/assets/PerformanceRoutes-BW6dixVF.js +1 -0
  36. package/dist/assets/{Preview-j2_daqeV.js → Preview-DMLQokX_.js} +1 -1
  37. package/dist/assets/{QBOConnectionScreen-CbxnK800.js → QBOConnectionScreen-CWU6DFJl.js} +23 -23
  38. package/dist/assets/{ReimbursementApprovalRoutes-DeN7vJtz.js → ReimbursementApprovalRoutes-DAusugdf.js} +1 -1
  39. package/dist/assets/{ReimbursementApprovalRuleDetailScreen-DTKS2oJ9.js → ReimbursementApprovalRuleDetailScreen-phJuB98f.js} +1 -1
  40. package/dist/assets/{ReimbursementRoutes-_NvdZWfU.js → ReimbursementRoutes-BdJ3oqBf.js} +1 -1
  41. package/dist/assets/{ReportsRoutes-BAGPRsE0.js → ReportsRoutes-CDSCG28G.js} +1 -1
  42. package/dist/assets/RewardsRoutes-CHkOPz1g.js +1 -0
  43. package/dist/assets/{ScheduleDetailsPrepaidExpensesScreen-B5q5sAGy.js → ScheduleDetailsPrepaidExpensesScreen-DnVEpQsK.js} +5 -5
  44. package/dist/assets/{ScreenRoutes-BHHy1uXx.js → ScreenRoutes-BYAPWka6.js} +2 -2
  45. package/dist/assets/{SettingsRoutes-BtUbt9zq.js → SettingsRoutes-BGCz0_nd.js} +3 -3
  46. package/dist/assets/{SetupPagesScreen-D0fdMGb4.js → SetupPagesScreen-DzNRL7Y-.js} +1 -1
  47. package/dist/assets/SignInScreen-BREpWd6T.js +1 -0
  48. package/dist/assets/SignOutScreen-BNCpbut8.js +9 -0
  49. package/dist/assets/TaskListScreen-Br-mxkKM.js +9 -0
  50. package/dist/assets/{TaskRoutes-DpYRDMWP.js → TaskRoutes-CDuiJExM.js} +1 -1
  51. package/dist/assets/TransactionDetailRoutes-CYb-4jKQ.js +1 -0
  52. package/dist/assets/{TransactionDetailScreen-CjwF3ORf.js → TransactionDetailScreen-Bp7IFDK0.js} +2 -2
  53. package/dist/assets/{TransactionListRoutes-2fGCqEq5.js → TransactionListRoutes-B6NIJUWk.js} +1 -1
  54. package/dist/assets/{TreasuryRoutes-CuPpvoic.js → TreasuryRoutes-BvvMozYl.js} +5 -5
  55. package/dist/assets/{VendorsRoutes-B_Yg40bd.js → VendorsRoutes-DsJ_lcDO.js} +1 -1
  56. package/dist/assets/{WiseConfirmationScreen-ChaM_jYJ.js → WiseConfirmationScreen-Bg5_g49N.js} +1 -1
  57. package/dist/assets/{ZeniAccountRoutes-CfMUrMqe.js → ZeniAccountRoutes-C3fDjuMG.js} +7 -7
  58. package/dist/assets/{ZeniAccountStatementScreen-BgdXcTdx.js → ZeniAccountStatementScreen-CbdRQI0p.js} +1 -1
  59. package/dist/assets/{accountMappingHelper-DWzrp9Pr.js → accountMappingHelper-DqBiQF6x.js} +1 -1
  60. package/dist/assets/{analytics-wktvfErl.js → analytics-D6GpUSOP.js} +1 -1
  61. package/dist/assets/{analyticsHelper-DcvdGte-.js → analyticsHelper-CwB3kQvw.js} +1 -1
  62. package/dist/assets/{core-D6EV-11Y.js → core-B5mDy9pu.js} +1 -1
  63. package/dist/assets/{decodeURIComponentSafe-MQV5aj_5.js → decodeURIComponentSafe-DANuhXnG.js} +1 -1
  64. package/dist/assets/{dnd-CkchuQYc.js → dnd-CGWe1ZMP.js} +1 -1
  65. package/dist/assets/{empty-PZV8n_Ql.js → empty-D0y6rZ_X.js} +1 -1
  66. package/dist/assets/{empty-DQLKD1Hp.js → empty-Dj4ZMRNZ.js} +1 -1
  67. package/dist/assets/{emptyVideoElement-CnlqukSR.js → emptyVideoElement-BbYSqu6F.js} +1 -1
  68. package/dist/assets/epic-mSW644GG.js +2 -0
  69. package/dist/assets/{expenseAutomationHelper-DEOPVtcg.js → expenseAutomationHelper-DBDpSggk.js} +1 -1
  70. package/dist/assets/{getLocaleForTenant-C3wVeXiS.js → getLocaleForTenant-DH5Avx3x.js} +1 -1
  71. package/dist/assets/{index-DvW7BRlL.js → index-6nH5LMe4.js} +27459 -27459
  72. package/dist/assets/{index-EnAqWoDC.js → index-6yt3BfRL.js} +1 -1
  73. package/dist/assets/{index-BlnK23AJ.js → index-8s12XWuB.js} +1 -1
  74. package/dist/assets/{index-CBlRXIxp.js → index-BQBXaLiB.js} +1 -1
  75. package/dist/assets/{index-B5kf_qFj.js → index-CI8tXM3D.js} +1 -1
  76. package/dist/assets/{index-CKDPlCKN.js → index-G6Wb7pfX.js} +2 -2
  77. package/dist/assets/{index-qI_nnuux.js → index-fq0DUtem.js} +1 -1
  78. package/dist/assets/{index-8ioAZPP6.js → index-k1-Pd2Ki.js} +1 -1
  79. package/dist/assets/{lexical-C6tQwGBF.js → lexical-DW4lC8Zx.js} +1 -1
  80. package/dist/assets/{liveblocks-DKqwsBQp.js → liveblocks-UOzcPsHa.js} +1 -1
  81. package/dist/assets/{lottie-BwhdO6jl.js → lottie-C5eNvt0I.js} +1 -1
  82. package/dist/assets/{mui-qouWiIWk.js → mui-Do6nLzGb.js} +1 -1
  83. package/dist/assets/{pathToGoBack-DMRqTTJ7.js → pathToGoBack-DP_bGWF-.js} +1 -1
  84. package/dist/assets/{pdf-DcGn_mX8.js → pdf-DjwvAC2g.js} +4 -4
  85. package/dist/assets/{pdf-lib-DndwkHl6.js → pdf-lib-CZXOqgb4.js} +1 -1
  86. package/dist/assets/{plaid-deRHM6gT.js → plaid-0g_vwjSd.js} +1 -1
  87. package/dist/assets/{pusher-BmM2v3Ys.js → pusher-BwlPp2s7.js} +1 -1
  88. package/dist/assets/{react-DZ82GBCj.js → react-Bja4MeVO.js} +1 -1
  89. package/dist/assets/{react-DFunsRdI.js → react-BsXfT48C.js} +1 -1
  90. package/dist/assets/{react-1c5WrJsc.js → react-CU01hiuh.js} +1 -1
  91. package/dist/assets/{react-D6U1M1pt.js → react-Dex3foBA.js} +1 -1
  92. package/dist/assets/{react-DiQLb4cq.js → react-DkYBVdJJ.js} +1 -1
  93. package/dist/assets/{react-QkGRtVkE.js → react-RZilWHYG.js} +1 -1
  94. package/dist/assets/{recharts-C9zWmt1W.js → recharts-uFX1dZS-.js} +1 -1
  95. package/dist/assets/{routePaths-GYFjoelZ.js → routePaths-uBvxqlLY.js} +1 -1
  96. package/dist/assets/{sentry-CxSdF_rC.js → sentry-DHDsO12F.js} +1 -1
  97. package/dist/assets/{stripSplatSuffix-CYVrHv_0.js → stripSplatSuffix-CQQXAy0N.js} +1 -1
  98. package/dist/assets/{url-Ej5v3O6d.js → url-BxiN6LKq.js} +1 -1
  99. package/dist/assets/{url-BSgCM0lM.js → url-CLCy7GPP.js} +1 -1
  100. package/dist/assets/{useActualMatchingMatchDetail-BkDnJbPg.js → useActualMatchingMatchDetail-OCZsPxr6.js} +1 -1
  101. package/dist/assets/{useAiCfoDashboardSuggestedQuestionsChips-D_Ro-9Tt.js → useAiCfoDashboardSuggestedQuestionsChips-D8KJqvT7.js} +1 -1
  102. package/dist/assets/useAskAiCfoHostNavButtonProps-BsP5fVhq.js +1 -0
  103. package/dist/assets/{useChargeCardPusherEvents-1X1JYShz.js → useChargeCardPusherEvents-BnH8_thb.js} +1 -1
  104. package/dist/assets/{useDeviceId-RToKfM0O.js → useDeviceId-Bi38IJl0.js} +1 -1
  105. package/dist/assets/{useEmailConnectResultRefresh-dVylO6qh.js → useEmailConnectResultRefresh-Ba8t-BuL.js} +1 -1
  106. package/dist/assets/{useInitialThreadRequest-BwX5Js6P.js → useInitialThreadRequest-7Q8HJAH2.js} +1 -1
  107. package/dist/assets/useTaskManagerAccess-BG0Fkj9k.js +1 -0
  108. package/dist/assets/{utils-D8aAQJhF.js → utils-BsODCDYR.js} +1 -1
  109. package/dist/assets/{withTransactionSidePanel-CPG02lKM.js → withTransactionSidePanel-DK-Ex27L.js} +2 -2
  110. package/dist/assets/{zeni-epic-state-CZbm731W.js → zeni-epic-state-7eY0g-Bc.js} +6 -6
  111. package/dist/index.html +1 -1
  112. package/package.json +3 -3
  113. package/dist/assets/AddressRoutes-kiur36N3.js +0 -1
  114. package/dist/assets/AddressScreen-5ZLJ7_Lf.js +0 -9
  115. package/dist/assets/BillPayRoutes-DFm7lkFc.js +0 -119
  116. package/dist/assets/CardsAiCfoScreen-C-_PDYQc.js +0 -14
  117. package/dist/assets/CompanyPassportScreen-CEuR94fF.js +0 -1
  118. package/dist/assets/ConnectionAuthScreen-uvgGU2za.js +0 -11
  119. package/dist/assets/CustomerOnboardingAuthScreen-C-d3MNce.js +0 -1
  120. package/dist/assets/FeaturePreviewScreen-LeLfD5pA.js +0 -1
  121. package/dist/assets/InvoicingRoutes-CvkWcLdT.js +0 -2
  122. package/dist/assets/MagicLinkSignInScreen-CWvMyhrQ.js +0 -12
  123. package/dist/assets/MobileAppDrawer-DExJFFmi.js +0 -1
  124. package/dist/assets/NotFoundScreen-sryCVGSu.js +0 -1
  125. package/dist/assets/PerformanceRoutes-BYcI02aB.js +0 -1
  126. package/dist/assets/RewardsRoutes-BUOCW-CT.js +0 -1
  127. package/dist/assets/SignInScreen-5_sPhLr0.js +0 -1
  128. package/dist/assets/SignOutScreen-DrcdcbqC.js +0 -9
  129. package/dist/assets/TaskListScreen-OEgAVE9M.js +0 -9
  130. package/dist/assets/TransactionDetailRoutes-eA90CTkf.js +0 -1
  131. package/dist/assets/epic-CVdAQuh9.js +0 -2
  132. package/dist/assets/useAskAiCfoHostNavButtonProps-DV4bjx-y.js +0 -1
  133. package/dist/assets/useTaskManagerAccess-daSMnBbA.js +0 -1
@@ -1,2 +0,0 @@
1
- import{h3 as S,fI as RT,h4 as A,h5 as y,h6 as v,h7 as ge,fH as ou,h8 as M,h9 as p,ha as po,hb as iu,hc as f,g2 as MT,hd as VT,he as cu,hf as F,hg as du,hh as lu,hi as LT,hj as FT,hk as qT,hl as ua,hm as uu,hn as jT,ho as pu,hp as W,hq as He,hr as le,hs as V,ht as GT,hu as _,hv as yt,hw as zT,hx as mu,hy as KT,hz as q0,hA as HT,hB as yu,hC as mo,hD as on,hE as _u,hF as YT,hG as oe,hH as QT,hI as WT,hJ as ie,hK as ZT,hL as XT,hM as hu,hN as eP,hO as pa,hP as P,hQ as tP,hR as Su,hS as aP,hT as rP,hU as gu,hV as nP,hW as sP,hX as fu,hY as oP,hZ as iP,h_ as vu,h$ as Te,i0 as cP,i1 as Iu,i2 as bu,i3 as dP,i4 as Eu,i5 as Tu,i6 as lP,i7 as Pu,i8 as Au,i9 as yo,ia as uP,ib as _o,ic as cn,id as pP,gh as N,ie as Nu,ig as Ue,ih as z,ii as ho,ij as ma,ik as Ou,il as Q,im as Cu,io as H,ip as mP,iq as dt,ir as xu,is as Uu,it as dn,iu as yP,iv as _P,iw as ku,ix as hP,iy as SP,iz as So,iA as Bu,iB as gP,iC as fP,iD as Du,iE as vP,iF as IP,iG as bP,iH as Ju,iI as EP,iJ as TP,iK as wu,iL as PP,iM as AP,iN as NP,iO as OP,iP as $u,fG as CP,iQ as xP,iR as UP,iS as Ru,gs as kP,iT as j,gr as BP,gp as Mu,iU as DP,iV as Za,iW as ke,iX as JP,iY as Vu,bE as te,iZ as wP,i_ as Lu,i$ as $P,j0 as RP,j1 as MP,j2 as VP,j3 as LP,j4 as FP,j5 as Fu,j6 as qP,j7 as jP,j8 as GP,j9 as qu,ja as zP,jb as KP,jc as ju,jd as HP,je as YP,jf as QP,jg as Gu,jh as WP,ji as ZP,jj as XP,jk as zu,jl as eA,jm as tA,jn as Ku,jo as aA,jp as rA,jq as Hu,jr as Yu,js as nA,jt as Qu,ju as go,jv as sA,jw as Wu,gb as oA,jx as iA,jy as Zu,jz as cA,jA as dA,jB as _t,jC as Xu,jD as ep,jE as et,jF as tp,jG as lA,jH as ap,jI as uA,jJ as pA,jK as mA,jL as rp,jM as yA,jN as rt,jO as ln,jP as np,jQ as _A,jR as hA,jS as SA,jT as gA,jU as sp,jV as fA,jW as vA,jX as op,jY as IA,jZ as un,j_ as bA,j$ as ip,k0 as EA,k1 as cp,k2 as dp,k3 as TA,k4 as PA,k5 as AA,k6 as lp,k7 as fo,k8 as NA,k9 as up,ka as OA,kb as CA,kc as pp,kd as vo,ke as re,kf as mp,kg as xA,kh as yp,ki as UA,kj as _p,kk as kA,kl as hp,km as Io,kn as BA,ko as Sp,kp as DA,kq as JA,kr as gp,ks as wA,kt as $A,ku as fp,kv as RA,kw as MA,kx as pn,ky as vp,kz as bo,kA as xt,kB as VA,kC as Ut,kD as fe,kE as LA,kF as Ip,kG as kt,kH as Bt,kI as FA,kJ as bp,kK as qA,kL as jA,kM as we,kN as Ye,kO as Ep,kP as Dt,kQ as Eo,br as me,kR as GA,kS as ya,kT as mn,kU as zA,kV as Tp,kW as or,kX as KA,kY as lt,kZ as HA,k_ as YA,k$ as Pp,l0 as QA,l1 as WA,l2 as ZA,l3 as XA,l4 as eN,l5 as Ap,l6 as tN,l7 as aN,l8 as rN,l9 as Np,la as nN,lb as sN,lc as oN,ld as Op,le as To,lf as _a,lg as Cp,lh as xp,li as X,lj as iN,lk as Up,ll as Po,lm as cN,ln as kp,lo as dN,lp as yn,lq as lN,lr as Bp,ls as uN,lt as Ao,lu as No,lv as pN,lw as Dp,lx as mN,ly as Oo,lz as yN,lA as Jp,lB as Co,lC as xo,lD as _N,lE as wp,lF as Uo,lG as Jt,lH as hN,lI as wt,lJ as qe,lK as SN,lL as $p,lM as $t,lN as gN,lO as Rp,lP as fN,lQ as ko,lR as Mp,lS as vN,lT as IN,lU as Vp,lV as Bo,lW as Lp,lX as bN,lY as Fp,lZ as ne,l_ as Fe,l$ as ht,m0 as qp,m1 as jp,m2 as EN,m3 as Ce,m4 as _n,m5 as tt,m6 as Xa,m7 as rr,m8 as en,m9 as TN,ma as ha,mb as Ot,mc as PN,cE as Do,md as AN,me as Jo,mf as Gp,mg as NN,mh as ON,mi as hn,mj as ir,mk as Sn,ml as zp,mm as gn,mn as CN,mo as Qe,mp as ut,mq as fn,mr as Rt,ms as xN,mt as UN,mu as kN,mv as BN,mw as j0,mx as pt,my as St,mz as he,mA as Kp,mB as vn,mC as cr,mD as dr,mE as wo,mF as Hp,mG as Sa,mH as je,mI as Yp,mJ as In,gV as Ae,mK as Oe,mL as Qp,mM as rn,mN as $o,mO as ga,mP as bn,mQ as DN,mR as mt,bQ as oo,mS as na,mT as lr,mU as Wp,mV as JN,mW as wN,mX as Zp,mY as $N,mZ as RN,m_ as Ro,m$ as Mo,n0 as Vo,n1 as En,n2 as Lo,n3 as MN,n4 as Xp,n5 as em,n6 as tm,n7 as VN,n8 as Fo,n9 as LN,na as qo,nb as FN,nc as am,nd as jo,ne as rm,nf as qN,ng as nm,nh as sm,ni as jN,nj as GN,nk as zN,nl as KN,nm as om,nn as HN,no as YN,np as QN,nq as im,nr as cm,ns as WN,nt as ZN,nu as dm,nv as lm,nw as XN,nx as um,ny as pm,nz as eO,nA as mm,nB as tO,nC as aO,nD as ym,nE as rO,ca as _m,nF as hm,nG as nO,nH as Sm,nI as gm,nJ as sO,nK as Go,nL as oO,nM as iO,nN as cO,nO as fm,nP as dO,nQ as vm,nR as Tn,nS as zo,nT as lO,nU as Ke,nV as tn,nW as Im,nX as uO,nY as pO,nZ as bm,n_ as mO,n$ as Ko,o0 as Em,o1 as Tm,o2 as yO,o3 as Pm,o4 as _O,o5 as hO,o6 as Am,o7 as Nm,o8 as Ho,o9 as SO,oa as Om,ob as gO,oc as ur,od as Cm,g as ee,gI as pr,oe as mr,of as fa,og as va,oh as yr,oi as Ia,oj as xm,ok as Pn,ol as ba,om as fO,on as Um,oo as km,op as gt,oq as vO,or as IO,os as Bm,ot as bO,ou as Dm,ov as Jm,ow as wm,ox as EO,oy as TO,oz as PO,oA as $m,oB as AO,oC as NO,oD as OO,oE as Rm,oF as CO,oG as Mm,oH as xO,oI as Vm,oJ as tu,oK as ft,oL as Lm,oM as UO,oN as kO,oO as Fm,oP as BO,oQ as qm,oR as DO,oS as Ea,oT as Ge,oU as _r,oV as hr,oW as Sr,oX as gr,oY as fr,oZ as jm,o_ as Yo,o$ as JO,p0 as wO,p1 as Gm,p2 as $O,p3 as RO,p4 as MO,p5 as VO,p6 as LO,p7 as FO,p8 as zm,p9 as qO,pa as Km,pb as Hm,pc as jO,pd as Ym,pe as GO,pf as Qo,pg as zO,ph as KO,pi as HO,pj as YO,pk as An,pl as Ta,pm as De,pn as Nn,po as QO,pp as WO,pq as ZO,pr as XO,ps as Hl,pt as Yl,pu as eC,pv as tC,pw as aC,px as Qm,py as rC,pz as nC,pA as sC,pB as Wm,pC as oC,pD as Zm,pE as iC,pF as Xm,pG as cC,pH as Wo,pI as dC,pJ as lC,pK as uC,pL as ey,pM as pC,pN as mC,pO as yC,pP as ty,pQ as _C,fF as Y,c8 as hC,bq as SC,pR as gC,pS as Pa,pT as On,pU as Cn,pV as xn,pW as Zo,pX as Xo,pY as ei,pZ as ti,p_ as ai,p$ as ri,q0 as nt,q1 as ay,q2 as ry,q3 as ny,q4 as Ie,q5 as Un,q6 as fC,q7 as sy,q8 as vC,q9 as IC,qa as oy,qb as bC,qc as EC,qd as TC,qe as PC,qf as AC,qg as iy,qh as NC,qi as Aa,qj as cy,qk as dy,ql as vr,qm as OC,qn as ly,qo as ni,gP as Mt,qp as CC,qq as Na,qr as kn,qs as uy,qt as xC,qu as py,qv as UC,qw as my,qx as si,qy as oi,qz as Ir,qA as yy,qB as _y,qC as kC,qD as Bn,qE as Je,qF as BC,qG as DC,qH as hy,qI as JC,qJ as Sy,qK as gy,qL as wC,qM as $C,qN as fy,gS as RC,qO as Dn,qP as MC,qQ as vy,qR as Jn,gQ as VC,qS as LC,qT as FC,qU as qC,qV as jC,qW as Iy,qX as GC,qY as ii,bM as wn,qZ as zC,q_ as KC,q$ as by,r0 as HC,r1 as YC,r2 as QC,r3 as WC,r4 as ZC,r5 as vt,r6 as Ey,r7 as Ty,r8 as Py,r9 as Ay,ra as XC,rb as ex,rc as sa,rd as tx,re as ax,rf as ci,rg as rx,rh as nx,ri as sx,rj as Se,rk as br,rl as Er,rm as $n,rn as Vt,ro as di,rp as ox,rq as ix,rr as cx,rs as dx,rt as Ny,ru as lx,rv as ux,rw as Oy,rx as px,ry as Cy,rz as mx,rA as xy,rB as Uy,rC as yx,rD as ky,rE as By,rF as _x,rG as li,rH as hx,rI as Sx,rJ as gx,rK as Ql,gY as $e,rL as Dy,rM as Rn,rN as fx,rO as Jy,rP as ui,rQ as vx,rR as wy,rS as pi,rT as Ix,rU as bx,rV as Ex,rW as $y,rX as Tx,rY as Ry,rZ as mi,r_ as My,r$ as Tr,s0 as We,s1 as Px,s2 as Vy,s3 as Ax,s4 as Ly,s5 as Lt,s6 as Nx,s7 as Fy,s8 as Ox,s9 as yi,sa as Cx,sb as xx,sc as Ux,sd as qy,se as kx,sf as Bx,sg as jy,sh as er,si as Pr,sj as Dx,sk as Jx,sl as sr,sm as It,sn as Gy,so as Ar,sp as wx,sq as zy,sr as $x,ss as Rx,st as Ky,su as Mx,sv as bt,sw as Vx,sx as Hy,sy as Yy,sz as Lx,sA as Fx,sB as qx,sC as Qy,sD as jx,sE as Wy,sF as Gx,sG as zx,sH as Kx,sI as Zy,sJ as Mn,sK as Hx,sL as Yx,sM as Qx,sN as _i,sO as Wx,sP as Xy,sQ as e_,sR as Zx,sS as hi,sT as Xx,sU as eU,sV as tU,sW as aU,sX as rU,sY as nU,sZ as sU,s_ as oU,s$ as iU,t0 as cU,t1 as t_,t2 as dU,t3 as lU,t4 as uU,t5 as a_,t6 as pU,t7 as Ws,t8 as Oa,t9 as Vn,ta as Nr,tb as Ca,tc as mU,td as Si,e9 as yU,te as _U,tf as hU,tg as SU,th as r_,ti as gi,tj as fi,tk as n_,tl as Zs,tm as Xs,tn as xe,to as eo,tp as Or,tq as Ln,tr as s_,ts as o_,tt as i_,tu as Cr,tv as gU,tw as vi,tx as fU,ty as c_,tz as vU,tA as d_,tB as l_,tC as xr,tD as IU,tE as G0,tF as bU,tG as EU,tH as TU,tI as PU,tJ as u_,tK as AU,tL as NU,tM as xa,tN as OU,tO as CU,fp as Ii,tP as xU,tQ as UU,tR as p_,tS as kU,gN as bi,tT as BU,tU as m_,tV as y_,tW as DU,tX as JU,tY as Fn,tZ as __,t_ as h_,t$ as Ei,u0 as qn,u1 as S_,u2 as jn,u3 as wU,u4 as $U,u5 as Ti,u6 as Gn,u7 as Pi,u8 as g_,u9 as zn,ua as RU,ub as MU,uc as VU,ud as LU,ue as f_,uf as v_,ug as Kn,uh as I_,dl as sn,ui as z0,uj as to,uk as K0,ul as H0,um as Y0,un as Q0,e1 as FU,uo as qU,up as b_,uq as E_,ur as Ai,cm as W0,us as Z0,ut as X0,uu as eT,dm as tT,uv as aT,uw as rT,ux as nT,uy as sT,uz as jU,uA as GU,uB as zU,uC as KU,uD as T_,uE as HU,uF as YU,uG as P_,uH as QU,uI as WU,uJ as A_,uK as ZU,uL as XU,uM as N_,uN as ek,uO as tk,uP as O_,uQ as C_,uR as ak,uS as x_,uT as rk,uU as nk,uV as U_,uW as sk,uX as ok,uY as Ni,uZ as ik,u_ as ck,u$ as dk,v0 as Ft,v1 as Hn,v2 as Yn,v3 as lk,v4 as Ur,v5 as au,ba as nn,v6 as uk,v7 as ao,v8 as Et,v9 as pk,va as mk,vb as k_,vc as yk,vd as _k,ve as B_,vf as hk,vg as Sk,vh as D_,vi as gk,vj as J_,vk as w_,vl as fk,vm as Pe,vn as vk,vo as Ik,vp as $_,vq as st,vr as ot,vs as R_,vt as bk,vu as M_,vv as Qn,vw as Wn,vx as Ek,vy as V_,vz as Tk,vA as Pk,vB as Ak,vC as Zn,vD as Nk,vE as L_,vF as Ok,vG as Ua,vH as kr,vI as Ck,vJ as xk,vK as F_,vL as Uk,vM as Xn,vN as Br,vO as Oi,vP as Tt,vQ as kk,vR as Bk,vS as q_,vT as Dk,vU as Jk,vV as j_,vW as wk,vX as $k,vY as es,vZ as G_,v_ as Rk,v$ as Mk,w0 as z_,w1 as oT,w2 as Vk,w3 as K_,w4 as Lk,w5 as Fk,w6 as H_,w7 as qk,w8 as iT,w9 as Y_,wa as cT,wb as jk,wc as Q_,wd as Gk,we as zk,wf as Kk,wg as Hk,wh as Yk,wi as W_,wj as Qk,wk as Wk,wl as Z_,wm as Dr,wn as X_,wo as eh,wp as Zk,wq as Jr,wr as Ci,ws as xi,wt as Xk,wu as eB,wv as th,ww as tB,wx as ah,wy as rh,wz as aB,wA as nh,dU as rB,dT as nB,wB as sB,wC as Ui,wD as oB,wE as iB,wF as cB,wG as dB,wH as lB,dV as uB,wI as sh,wJ as oh,wK as ih,wL as pB,wM as mB,wN as yB,wO as ch,wP as _B,wQ as dh,wR as hB,wS as SB,wT as gB,wU as fB,wV as lh,wW as uh,wX as vB,wY as IB,wZ as bB,w_ as EB,w$ as TB,x0 as ph,x1 as ki,x2 as Bi,x3 as Di,x4 as mh,x5 as PB,x6 as Ji,x7 as yh,x8 as _h,x9 as AB,xa as hh,xb as NB,xc as ts,xd as Sh,xe as OB,xf as CB,xg as xB,xh as gh,xi as UB,cZ as kB,xj as wi,xk as ka,xl as Ba,xm as $i,xn as fh,xo as BB,xp as DB,xq as JB,xr as wr,xs as wB,xt as $B,xu as RB,xv as vh,c_ as Ri,xw as MB,xx as VB,xy as LB,xz as as,xA as Ih,xB as bh,xC as FB,xD as qB,xE as jB,c$ as GB,xF as $r,xG as zB,xH as Eh,xI as KB,xJ as HB,xK as Th,xL as rs,xM as YB,xN as Ph,xO as QB,xP as Ah,xQ as Nh,xR as WB,xS as ZB,xT as Oh,xU as XB,xV as Ch,xW as eD,xX as tD,xY as xh,xZ as aD,x_ as Uh,x$ as rD,y0 as nD,y1 as kh,y2 as sD,y3 as Bh,y4 as oD,y5 as iD,y6 as Mi,y7 as Dh,y8 as cD,y9 as dD,ya as Jh,yb as wh,yc as lD,yd as uD,ye as $h,yf as Rh,yg as pD,yh as Mh,yi as Vh,yj as mD,yk as Lh,yl as yD,ym as Fh,yn as _D,yo as qh,yp as hD,yq as jh,yr as SD,ys as Gh,yt as Vi,yu as gD,yv as zh,yw as fD,yx as Kh,yy as Hh,yz as vD,yA as Yh,yB as ID,yC as bD,yD as Qh,yE as Wh,yF as ED,yG as Zh,yH as Xh,yI as TD,yJ as eS,yK as PD,yL as tS,yM as AD,yN as aS,yO as rS,yP as ND,yQ as nS,yR as OD,yS as sS,yT as oS,yU as iS,yV as cS,yW as CD,yX as xD,yY as Li,yZ as UD,y_ as dS,y$ as kD,z0 as lS,z1 as BD,z2 as uS,z3 as DD,z4 as pS,z5 as mS,z6 as JD,z7 as yS,z8 as Fi,z9 as wD,za as _S,zb as $D,zc as RD,zd as hS,ze as MD,zf as VD,zg as SS,zh as gS,zi as LD,zj as fS,zk as FD,zl as vS,zm as qD,zn as jD,zo as ns,zp as GD,zq as IS,zr as zD,zs as KD,zt as bS,zu as ES,zv as HD,zw as TS,zx as YD,zy as QD,zz as WD,zA as ZD,zB as XD,zC as PS,zD as eJ,zE as tJ,zF as AS,zG as ss,zH as aJ,zI as rJ,zJ as nJ,zK as NS,zL as os,zM as sJ,zN as OS,zO as CS,zP as xS,zQ as US,zR as is,zS as oJ,zT as iJ,zU as cs,zV as cJ,bW as dJ,zW as lJ,zX as uJ,zY as pJ,zZ as kS,z_ as mJ,z$ as qi,A0 as BS,A1 as DS,A2 as yJ,A3 as ji,A4 as Gi,A5 as Rr,A6 as Da,A7 as Ja,A8 as _J,A9 as JS,Aa as qt,Ab as hJ,Ac as wS,Ad as jt,Ae as SJ,Af as $S,Ag as RS,Ah as gJ,Ai as MS,Aj as fJ,Ak as vJ,Al as IJ,Am as VS,An as LS,Ao as bJ,Ap as EJ,Aq as FS,Ar as qS,As as TJ,At as PJ,Au as jS,Av as zi,Aw as Ki,Ax as ds,Ay as GS,Az as Hi,AA as AJ,AB as Yi,AC as Qi,AD as zS,AE as NJ,AF as KS,AG as OJ,AH as HS,AI as CJ,AJ as xJ,AK as YS,AL as UJ,AM as kJ,AN as Wi,AO as QS,AP as BJ,g0 as Pt,AQ as WS,AR as ZS,AS as XS,AT as Zi,AU as DJ,d_ as JJ,di as wJ,AV as $J,dZ as RJ,AW as MJ,AX as VJ,AY as LJ,AZ as eg,A_ as FJ,A$ as qJ,B0 as jJ,B1 as GJ,B2 as zJ,B3 as tg,B4 as KJ,B5 as HJ,B6 as ag,B7 as YJ,B8 as QJ,B9 as rg,Ba as WJ,Bb as ZJ,Bc as ng,Bd as XJ,bc as ew,Be as tw,Bf as sg,Bg as aw,Bh as rw,Bi as og,Bj as nw,Bk as sw,Bl as ig,Bm as ow,Bn as iw,Bo as cg,Bp as Xi,Bq as dg,Br as ls,Bs as lg,Bt as ve,Bu as ug,Bv as cw,Bw as pg,Bx as dw,By as lw,Bz as mg,BA as uw,BB as pw,BC as yg,BD as mw,BE as wa,BF as Re,BG as yw,BH as _w,BI as _g,v as dT,bw as io,BJ as hw,BK as Sw,BL as ec,BM as gw,BN as hg,BO as Sg,BP as gg,BQ as fw,BR as vw,BS as Iw,BT as tc,BU as bw,BV as Ew,BW as Tw,BX as Pw,BY as Aw,BZ as Nw,B_ as fg,B$ as Ow,C0 as Cw,C1 as vg,C2 as xw,C3 as Uw,C4 as Ig,C5 as kw,C6 as Bw,C7 as bg,C8 as Dw,C9 as Jw,Ca as Eg,Cb as Tg,Cc as Pg,Cd as ww,Ce as $a,Cf as Ra,Cg as $w,Ch as Ag,Ci as Mr,Cj as ac,Ck as Rw,Cl as Ng,Cm as Og,Cn as Mw,Co as Cg,Cp as Vw,Cq as Lw,Cr as xg,Cs as Ug,Ct as Gt,Cu as Fw,Cv as kg,Cw as zt,Cx as qw,Cy as Bg,Cz as Dg,CA as jw,CB as Jg,CC as Gw,CD as lT,CE as zw,CF as Kw,CG as Hw,CH as wg,CI as Yw,CJ as Qw,CK as $g,CL as Ww,g3 as Me,CM as rc,CN as Zw,CO as Rg,CP as Xw,CQ as e$,CR as nc,CS as ru,CT as t$,CU as a$,CV as Mg,CW as us,CX as r$,CY as n$,CZ as s$,C_ as o$,C$ as Vg,eC as i$,D0 as c$,D1 as d$,D2 as Lg,D3 as l$,D4 as Fg,D5 as Kt,D6 as u$,D7 as qg,D8 as Ht,D9 as p$,Da as jg,Db as Gg,Dc as zg,Dd as Kg,De as Hg,Df as m$,Dg as Yg,Dh as y$,Di as Qg,Dj as Vr,Dk as Lr,Dl as Wg,Dm as Zg,Dn as Ma,Do as _$,Dp as h$,Dq as S$,Dr as g$,Ds as Xg,Dt as ef,Du as f$,Dv as v$,Dw as sc,Dx as I$,Dy as b$,Dz as E$,DA as tf,DB as T$,DC as af,DD as P$,DE as A$,DF as ps,DG as N$,DH as O$,DI as C$,DJ as x$,DK as U$,DL as rf,DM as k$,DN as nf,DO as B$,DP as D$,DQ as J$,DR as sf,DS as of,DT as w$,DU as $$,DV as R$,DW as M$,DX as V$,DY as L$,DZ as F$,D_ as q$,D$ as j$,E0 as G$,E1 as oc,E2 as cf,E3 as df,E4 as lf,E5 as uf,E6 as pf,E7 as mf,E8 as z$,E9 as K$,Ea as H$,Eb as Y$,Ec as Q$,Ed as W$,Ee as Z$,Ef as X$,Eg as eR,Eh as tR,Ei as aR,Ej as rR,Ek as yf,El as _f,Em as hf,En as Sf,Eo as nR,f0 as sR,eM as oR,Ep as iR,Eq as gf,Er as ff,Es as vf,Et as cR,Eu as Va,Ev as La,Ew as dR,Ex as Yt,Ey as If,Ez as lR,EA as bf,EB as Qt,EC as uR,ED as Ef,EE as pR,EF as Tf,EG as mR,EH as yR,EI as Pf,EJ as oa,EK as uT,EL as pT,EM as _R,EN as ic,EO as Fa,bH as tr,e8 as Af,EP as hR,EQ as SR,ER as gR,ES as ms,ET as fR,EU as vR,EV as IR,EW as cc,EX as bR,EY as Nf,EZ as dc,E_ as Of,E$ as lc,F0 as Cf,F1 as ER,F2 as Fr,F3 as uc,F4 as TR,F5 as PR,F6 as AR,F7 as ys,F8 as _s,F9 as NR,Fa as OR,Fb as CR,Fc as xf,Fd as xR,Fe as hs,Ff as UR,Fg as pc,Fh as kR,Fi as BR,Fj as mc,Fk as Uf,Fl as qr,Fm as yc,Fn as DR,Fo as JR,Fp as jr,Fq as _c,Fr as wR,Fs as $R,Ft as RR,Fu as MR,Fv as VR,Fw as hc,Fx as LR,Fy as FR,Fz as kf,FA as Bf,FB as Sc,FC as qR,FD as Df,FE as jR,FF as GR,FG as Jf,FH as gc,FI as zR,FJ as KR,FK as wf,FL as HR,FM as YR,FN as QR,FO as fc,FP as WR,FQ as $f,FR as ZR,FS as ze,FT as Be,FU as XR,FV as vc,FW as Rf,FX as Mf,FY as eM,FZ as tM,F_ as Vf,F$ as aM,G0 as Lf,G1 as rM,G2 as nM,G3 as sM,G4 as Ff,G5 as oM,G6 as qf,G7 as iM,G8 as cM,G9 as dM,Ga as jf,Gb as lM,Gc as uM,Gd as Gf,Ge as pM,Gf as mM,Gg as zf,gH as Kf,Gh as Hf,Gi as yM,Gj as _M,Gk as Yf,Gl as hM,Gm as Qf,Gn as SM,Go as gM,Gp as Wf,Gq as fM,Gr as vM,Gs as Zf,Gt as IM,Gu as bM,Gv as Xf,Gw as EM,Gx as Ic,Gy as TM,Gz as PM,GA as AM,GB as ev,GC as tv,GD as NM,GE as OM,GF as av,GG as CM,GH as At,GI as xM,GJ as rv,GK as UM,GL as Ss,GM as nv,GN as bc,GO as sv,GP as gs,GQ as kM,GR as Ec,GS as Tc,GT as ov,GU as Gr,GV as fs,GW as Pc,GX as iv,GY as Ze,GZ as Xe,G_ as Ac,G$ as Nc,H0 as cv,H1 as Oc,H2 as BM,H3 as DM,H4 as dv,H5 as JM,H6 as Ve,H7 as qa,H8 as wM,H9 as lv,Ha as $M,Hb as zr,Hc as Cc,Hd as RM,He as xc,Hf as MM,Hg as uv,Hh as VM,Hi as pv,Hj as LM,Hk as mv,Hl as FM,Hm as qM,Hn as yv,Ho as jM,Hp as Uc,Hq as _v,Hr as hv,Hs as kc,Ht as Sv,Hu as gv,Hv as fv,Hw as GM,Hx as vv,cQ as Iv,cP as bv,bI as Ev,Hy as Tv,Hz as Pv,HA as zM,HB as KM,HC as Av,HD as HM,HE as YM,HF as Nv,HG as QM,HH as Ov,HI as it,HJ as Wt,HK as Zt,HL as Cv,HM as WM,HN as xv,HO as vs,HP as ZM,HQ as XM,HR as Bc,HS as Dc,HT as ja,HU as e1,HV as t1,HW as Wl,HX as a1,HY as r1,HZ as Uv,H_ as kv,H$ as Is,I0 as Jc,I1 as wc,I2 as $c,I3 as n1,I4 as Rc,I5 as s1,I6 as Bv,I7 as o1,I8 as Dv,I9 as Mc,Ia as Vc,Ib as Lc,Ic as mT,Id as i1,Ie as yT,If as _T,Ig as c1,Ih as d1,bO as nu,Ii as Jv,Ij as bs,Ik as Fc,Il as qc,Im as l1,In as u1,Io as p1,Ip as wv,Iq as $v,Ir as m1,Is as y1,It as _1,Iu as h1,dR as S1,Iv as g1,Iw as hT,Ix as f1,Iy as ST,cL as v1,Iz as co,IA as I1,IB as b1,IC as E1,ID as T1,IE as P1,IF as A1,IG as jc,IH as N1,II as O1,IJ as C1,dQ as Rv,IK as x1,IL as U1,IM as Gc,IN as k1,IO as B1,IP as Es,IQ as D1,IR as J1,IS as zc,IT as Mv,IU as Vv,IV as w1,IW as Lv,IX as Fv,IY as qv,IZ as $1,I_ as R1,I$ as M1,J0 as jv,J1 as Gv,J2 as V1,J3 as L1,J4 as Kc,J5 as F1,J6 as q1,J7 as j1,J8 as G1,J9 as zv,Ja as z1,Jb as K1,Jc as H1,Jd as Kv,Je as Y1,dn as Q1,Jf as W1,Jg as Hv,Jh as Z1,Ji as X1,Jj as Yv,Jk as eV,Jl as Hc,Jm as tV,Jn as aV,Jo as Qv,Jp as rV,Jq as Yc,Jr as nV,Js as sV,Jt as oV,Ju as Qc,Jv as iV,Jw as Wc,Jx as cV,Jy as Ts,Jz as dV,JA as lV,JB as uV,JC as Zc,JD as pV,JE as mV,JF as yV,JG as _V,JH as hV,JI as Xc,JJ as SV,JK as gV,fY as fV,fZ as vV,JL as IV,fJ as bV,JM as EV,JN as TV,JO as Ps,JP as PV,g1 as Wv,JQ as AV,JR as Zv,JS as NV,JT as Xv,gA as eI,JU as tI,JV as OV,JW as CV,JX as xV,JY as UV,JZ as kV,J_ as ed,J$ as BV,K0 as aI,K1 as Xt,K2 as DV,K3 as rI,K4 as JV,K5 as td,K6 as ct,K7 as ad,K8 as As,K9 as wV,Ka as $V,Kb as rd,g5 as ea,Kc as Kr,Kd as RV,Ke as MV,Kf as nI,Kg as VV,Kh as LV,Ki as FV,Kj as sI,Kk as qV,Kl as nd,Km as jV,Kn as GV,Ko as zV,Kp as sd,Kq as KV,Kr as HV,Ks as od,Kt as oI,Ku as YV,Kv as id,Kw as QV,Kx as cd,Ky as WV,Kz as dd,KA as ZV,KB as ld,KC as XV,KD as ud,KE as eL,KF as pd,KG as tL,KH as md,KI as aL,KJ as yd,KK as Ga,KL as Hr,KM as rL,KN as iI,KO as cI,g4 as nL,KP as _d,KQ as Ns,KR as dI,KS as sL,KT as lI,KU as oL,KV as uI,KW as iL,KX as pI,KY as cL,KZ as hd,K_ as dL,K$ as lL,L0 as mI,L1 as uL,L2 as pL,L3 as yI,L4 as mL,L5 as Sd,L6 as yL,L7 as gd,L8 as _L,L9 as fd,La as vd,Lb as hL,Lc as SL,Ld as _I,Le as gL,Lf as hI,Lg as fL,Lh as vL,Li as IL,Lj as bL,Lk as Os,Ll as EL,Lm as TL,Ln as PL,Lo as Yr,Lp as AL,Lq as NL,Lr as OL,Ls as SI,Lt as CL,Lu as xL,Lv as gI,Lw as UL,Lx as kL,Ly as fI,Lz as vI,LA as II,LB as BL,LC as DL,LD as bI,LE as JL,LF as EI,LG as wL,fO as $L,LH as TI,LI as PI,LJ as RL,LK as Cs,LL as ML,LM as VL,LN as AI,g6 as LL,LO as FL,LP as Id,LQ as qL,LR as jL,LS as GL,LT as NI,b$ as zL,LU as KL,LV as HL,LW as YL,LX as QL,LY as WL,LZ as ZL,L_ as XL,L$ as eF,M0 as tF,M1 as bd,M2 as aF,M3 as Ed,M4 as OI,M5 as rF,M6 as CI,M7 as nF,M8 as sF,M9 as xI,Ma as oF,Mb as iF,Mc as UI,Md as cF,Me as dF,Mf as kI,Mg as lF,Mh as uF,Mi as BI,Mj as pF,Mk as mF,Ml as DI,Mm as yF,Mn as _F,Mo as hF,Mp as SF,Mq as gF,Mr as fF,Ms as JI,Mt as vF,Mu as Td,Mv as wI,Mw as IF,Mx as Pd,My as bF,Mz as za,MA as Ad,MB as Nd,MC as EF,MD as Od,ME as xs,MF as Cd,MG as xd,MH as Ud,MI as $I,MJ as TF,MK as PF,ML as kd,MM as AF,MN as RI,MO as NF,MP as OF,MQ as CF,MR as xF,MS as Bd,MT as UF,MU as Dd,MV as MI,MW as kF,MX as Jd,MY as VI,MZ as BF,M_ as DF,M$ as LI,N0 as JF,N1 as wF,N2 as FI,N3 as $F,N4 as Us,N5 as qI,N6 as wd,N7 as RF,N8 as $d,N9 as MF,Na as jI,Nb as ks,Nc as VF,Nd as LF,Ne as FF,Nf as qF,Ng as Rd,Nh as jF,Ni as GF,Nj as zF,Nk as GI,Nl as KF,Nm as HF,Nn as zI,No as YF,Np as Md,Nq as KI,Nr as HI,Ns as Vd,Nt as YI,Nu as QI,Nv as QF,Nw as WI,Nx as ZI,Ny as WF,Nz as ZF,NA as XI,NB as XF,NC as eq,ND as eb,NE as tq,NF as tb,NG as Ld,NH as ab,NI as aq,NJ as rb,NK as nb,NL as rq,NM as nq,NN as sq,NO as oq,NP as sb,NQ as Bs,NR as iq,NS as cq,NT as Fd,NU as qd,NV as Ka,NW as dq,NX as lq,NY as uq,NZ as ob,N_ as pq,N$ as jd,O0 as Gd,O1 as zd,O2 as Kd,O3 as Hd,O4 as Yd,O5 as mq,O6 as ib,O7 as yq,O8 as cb,O9 as _q,Oa as db,Ob as hq,Oc as Sq,Od as lb,Oe as gq,Of as ub,Og as fq,Oh as pb,Oi as vq,Oj as mb,Ok as yb,Ol as Iq,Om as bq,On as _b,Oo as Eq,Op as Qd,Oq as Tq,Or as Wd,Os as Pq,Ot as Aq,Ou as Zd,Ov as Nq,Ow as Xd,Ox as Oq,Oy as Ds,Oz as ta,OA as Qr,OB as Js,OC as el,OD as Cq,OE as hb,OF as xq,OG as Sb,OH as Uq,OI as tl,OJ as kq,OK as gb,OL as Bq,OM as Dq,ON as fb,OO as Jq,OP as vb,OQ as wq,OR as al,OS as Ib,OT as ws,OU as bb,OV as $q,OW as Eb,OX as Rq,OY as Mq,OZ as Vq,O_ as Tb,O$ as Lq,P0 as rl,P1 as Fq,P2 as nl,P3 as qq,P4 as jq,P5 as Gq,P6 as Pb,P7 as zq,P8 as Ab,P9 as Nb,Pa as Kq,Pb as Ob,Pc as Hq,Pd as Cb,Pe as xb,Pf as Yq,Pg as Ub,Ph as kb,Pi as Qq,Pj as Wq,Pk as Bb,Pl as Zq,Pm as Db,Pn as Jb,Po as Xq,Pp as wb,Pq as ej,Pr as $b,Ps as Rb,Pt as tj,Pu as aj,Pv as Mb,Pw as rj,Px as nj,Py as Vb,Pz as Lb,PA as sj,PB as sl,PC as $s,PD as oj,PE as ij,PF as Zl,PG as cj,PH as dj,PI as ol,PJ as lj,PK as uj,PL as il,PM as pj,PN as Fb,PO as mj,PP as yj,PQ as qb,PR as jb,PS as _j,PT as Gb,PU as hj,PV as Sj,PW as zb,PX as gj,PY as Xl,PZ as lo,P_ as Ct,P$ as ar,Q0 as fj,Q1 as vj,Q2 as cl,Q3 as Kb,bD as uo,Q4 as Ij,Q5 as dl,Q6 as bj,Q7 as Ej,Q8 as Tj,Q9 as Hb,Qa as ll,Qb as Pj,Qc as Ha,Qd as Yb,Qe as Aj,Qf as ul,Qg as pl,Qh as Nj,Qi as Oj,Qj as Cj,Qk as ml,Ql as xj,Qm as Uj,Qn as nr,Qo as kj,Qp as Bj,Qq as Dj,Qr as Qb,Qs as Jj,Qt as wj,Qu as Wb,Qv as Zb,Qw as yl,Qx as $j,Qy as Rj,Qz as Xb,QA as Mj,QB as eE,QC as Vj,QD as _l,QE as tE,QF as Lj,QG as Fj,QH as qj,QI as jj,QJ as aE,QK as hl,QL as Gj,QM as rE,QN as zj,QO as Sl,QP as Kj,QQ as nE,QR as sE,QS as Hj,QT as Yj,QU as Qj,QV as oE,QW as Wj,QX as Zj,QY as Xj,QZ as iE,Q_ as eG,Q$ as cE,R0 as tG,R1 as dE,R2 as aG,R3 as rG,R4 as nG,R5 as lE,R6 as sG,R7 as oG,R8 as iG,R9 as cG,Ra as uE,Rb as dG,Rc as lG,Rd as pE,Re as uG,Rf as pG,Rg as mG,Rh as mE,Ri as Ya,Rj as yE,Rk as gl,Rl as _E,Rm as hE,Rn as Rs,Ro as SE,Rp as yG,Rq as Ms,Rr as _G,Rs as hG,Rt as SG,Ru as gG,Rv as fG,Rw as vG,Rx as IG,Ry as bG,Rz as gE,RA as fE,RB as vE,RC as EG,RD as IE,RE as bE,RF as EE,RG as TG,RH as TE,RI as PE,RJ as AE,RK as PG,RL as NE,RM as OE,RN as CE,RO as AG,RP as xE,RQ as NG,RR as UE,RS as OG,RT as CG,RU as xG,RV as UG,RW as kE,RX as Vs,RY as kG,RZ as BG,R_ as gT,R$ as BE,S0 as DG,S1 as JG,S2 as wG,S3 as $G,S4 as DE,S5 as RG,S6 as MG,S7 as JE,S8 as VG,S9 as LG,Sa as FG,Sb as wE,Sc as qG,Sd as $E,Se as jG,Sf as fl,Sg as GG,Sh as vl,Si as RE,Sj as zG,Sk as ME,Sl as KG,Sm as HG,Sn as YG,So as Il,Sp as QG,Sq as WG,Sr as ZG,Ss as XG,St as ez,Su as tz,Sv as VE,Sw as az,Sx as rz,Sy as LE,Sz as nz,SA as bl,SB as sz,SC as El,SD as Wr,SE as Tl,SF as oz,SG as eu,SH as iz,SI as cz,SJ as FE,SK as qE,SL as dz,SM as Pl,SN as lz,SO as uz,SP as pz,SQ as mz,SR as yz,SS as jE,ST as _z,SU as hz,SV as Al,SW as Sz,SX as gz,SY as Nl,SZ as fz,S_ as vz,S$ as Iz,T0 as GE,T1 as bz,T2 as zE,T3 as Ez,T4 as KE,T5 as Tz,T6 as Ol,T7 as Pz,T8 as Az,T9 as Nz,Ta as Oz,Tb as Cz,Tc as xz,Td as Uz,Te as kz,Tf as Bz,Tg as Dz,Th as Jz,Ti as wz,Tj as $z,Tk as Rz,Tl as Mz,Tm as Vz,Tn as Lz,To as Fz,Tp as qz,Tq as jz,Tr as Gz,Ts as zz,Tt as Kz,Tu as Hz,Tv as Yz,Tw as Qz,Tx as Wz,Ty as Zz,Tz as Xz,TA as eK,TB as tK,TC as aK,TD as rK,TE as nK,TF as sK,TG as oK,TH as iK,TI as cK}from"./zeni-epic-state-CZbm731W.js";import"./sentry-CxSdF_rC.js";import"./core-D6EV-11Y.js";(function(){try{var n=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},i=new n.Error().stack;i&&(n._sentryDebugIds=n._sentryDebugIds||{},n._sentryDebugIds[i]="20a6593a-f8e4-4bfc-aee4-02059a04f1a2",n._sentryDebugIdIdentifier="sentry-dbid-20a6593a-f8e4-4bfc-aee4-02059a04f1a2")}catch{}})();const Cl=(n,i,r,t)=>{const e=[];return n!=null&&Object.keys(n).forEach((a=>{const s=i[a]?.nestedAccountId;s!=null?e.push({accountsViewParentID:{parentAccountId:q0(s),sectionId:r},accountMetadataPayload:i[a].accountMetadataPayload,accountBalancesPayload:n[a],classesViewParentID:t}):console.warn(`Account ${a} in Section ${r} is missing metadata.`)})),e},dK=(n,i,r,t,e)=>{n!=null&&Object.keys(n).forEach((a=>{const s=i[a];if(s!=null){const o=s.nestedAccountId;e.push({accountsViewParentID:{parentAccountId:q0(o),sectionId:r},accountMetadataPayload:s.accountMetadataPayload,accountBalancesPayload:n[a],projectsViewParentID:t})}else console.warn(`Account ${a} in Section ${r} Project ${t.projectId} is missing metadata.`)}))},lK=n=>{typeof window<"u"&&(window.location.href=n)},uK=n=>n.data?.skipped!=null&&n.data.skipped.length>0?n.data.skipped[0].reason:n.data?.error!=null&&n.data.error.length>0?n.data.error:n.status.message.length>0?n.status.message:"",pK=["private","tenant"],fT=n=>{return{macroId:n.macro_id,name:n.name,displayName:n.display_name,description:n.description,semver:n.semver,hasScripts:n.has_scripts===!0,isMine:n.is_mine===!0,isOwnedByTenant:n.is_owned_by_tenant===!0,updatedAt:n.updated_at??null,visibility:(i=n.visibility,pK.find((r=>r===i))??null)};var i},vT=n=>typeof n?.instructions=="string",xl=n=>vT(n)&&n.skill!=null,Ul=n=>({skill:{...fT(n.skill),exampleHints:[]},instructions:n.instructions,instructionsCharCount:n.instructions_char_count??n.instructions.length,artifact:n.artifact??"",artifactTitle:n.artifact_title??""}),mK=n=>({version:n.version,semver:n.semver??null,displayName:n.display_name??null,updatedAt:n.updated_at??null,isActive:n.is_active===!0,isLatest:n.is_latest===!0,instructionsCharCount:n.instructions_char_count??0}),HE=n=>typeof n=="string"&&n.trim()!=="",yK=n=>{if(n==null||typeof n!="object"||Array.isArray(n))return[];const i=Object.values(n).flatMap((r=>HE(r)?[r.trim()]:Array.isArray(r)?r.filter(HE).map((t=>t.trim())):[]));return Array.from(new Set(i))},_K=n=>({...fT(n),exampleHints:yK(n.parameter_hints)}),hK=["claimed","running","succeeded","failed","timeout"],SK=n=>{const i=n;return typeof i?.run_id=="string"&&i.run_id!==""},Qa=n=>n!=null&&n!==""?n:null,gK=n=>{return{runId:n.run_id,attempt:n.attempt??1,isManual:n.is_manual===!0,error:Qa(n.error),finishedAt:Qa(n.finished_at),questionAnswerId:Qa(n.question_answer_id),sessionId:Qa(n.session_id),scheduledFor:Qa(n.scheduled_for),startedAt:Qa(n.started_at),status:(i=n.status,hK.find((r=>r===i))??null)};var i},fK=["daily","weekly","monthly"],vK=["succeeded","failed","timeout"],IK=n=>{const i=n;return typeof i?.schedule_id=="string"&&i.schedule_id!==""&&typeof i.name=="string"},bK=n=>fK.includes(n)?n:null,EK=n=>{return{unreadRuns:n.unread_runs??0,consecutiveFailures:n.consecutive_failures??0,dayOfMonth:n.day_of_month??null,enabled:n.enabled!==!1,hour:n.hour??0,isAdHoc:n.is_ad_hoc===!0,lastRunAt:n.last_run_at??null,lastStatus:(i=n.last_status,vK.includes(i)?i:null),macroId:n.macro_id??"",minute:n.minute??0,name:n.name,nextRunAt:n.next_run_at??null,pinnedVersion:n.pinned_version??null,recurrence:bK(n.recurrence),scheduleId:n.schedule_id,sessionId:n.session_id??null,tzName:n.tz_name??null,weekday:n.weekday??null};var i},TK=(n,i)=>({action:n,audit_rule_group_ids:[i]}),PK=n=>{switch(n){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}},AK=n=>{switch(n){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}},kl=(n,i)=>({bank_account_name:n.bankAccountName,bank_account_number:n.bankAccountNumber,bank_name:n.bankName,bank_routing_number_ach:i==="ach"?n.bankRoutingNumber:"",bank_routing_number_wire_transfer:i==="wire"?n.bankRoutingNumber:"",bank_account_type:n.bankAccountType}),YE=n=>({account_holder_name:n.bankAccountName,bank_swift_code:n.bankSwiftCode,bank_account_iban:n.bankAccountIban,bank_name:n.bankName,pi_type:"swift_code",account_source:""}),NK=n=>({type:n.type,processor_token:n.processor_token,payment_source_type:n.payment_source_type}),OK=n=>({payment_method_types:n}),CK=n=>{switch(n){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}},xK=n=>{switch(n){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}},QE=n=>({vendorName:n.name,vendorCategory:n.accountId,vendorClass:n.classId,vendorOwner:n.ownerId,vendorId:n.id}),Ls=(n,i,r)=>{const{contactState:t}=i,e={},a={},{documentIds:s}=n;s.forEach((d=>{e[d]=xN(i,d)})),s.forEach((d=>{a[d]=UN(i,d)}));const{recommendedAccount:o,recommendedClass:c}=kN(n.recommendations,n.accountId,n.classId);return{vendorName:n.name,bankAccountIds:n.bankAccountIds??[],paymentInstrumentIds:n.paymentInstrumentIds,vendorCategory:n.accountId,vendorClass:n.classId,vendorType:n.vendorType,vendorOwner:n.ownerId,vendorId:n.id,isVendor1099:n.isVendor1099,documentIds:n.documentIds,deleteFileStatusById:e,updateFileStatusById:a,countryCode:n.countryCode,currencyCode:n.vendorCurrencyCode,currencySymbol:n.vendorCurrencySymbol,contacts:r?.contacts!=null?r.contacts.map((d=>BN(d))):j0(t,n.contactIds??[]),recommendations:n.recommendations,fileIdsToBeDeleted:[],recommendedCategory:o,recommendedClass:c,isCategoryUpdateSelected:!1,isClassUpdateSelected:!1,isCategoryRecommendationPrefilled:o?.accountId===n.accountId,isClassRecommendationPrefilled:c?.classId===n.classId}},Bl="agent_insights_subject",WE=(n,i,r)=>{const t={...n,...r,subject:i};return Bl in t&&r?.[Bl]==null&&i!=null&&i!==""&&(t[Bl]=i),t},UK=n=>{switch(n){case"taskName":return"name";case"dueDate":return"due_date";case"createdBy":return"created_by";case"name":return"company_name";default:return n}},kK=n=>n.categories==null?[]:n.categories.map((i=>({field:i.field??"",operator:i.matchingOperator==="equal"?"is":"is_not",values:i.values.map((r=>String(r))),join:i.valuesCombinationOperator==="ALL"?"and":"or"}))),BK=n=>{const i={};if(n.statusCode!=null&&(i.status_code=n.statusCode),n.companyGroupId!=null&&(i.company_group_id=n.companyGroupId),n.taxStatusCode!=null&&(i.tax_status_code=n.taxStatusCode),n.lastReportSentDate!=null&&(i.last_report_sent_date=n.lastReportSentDate.format("YYYY-MM-DD")),n.lastReportSentBusinessDay!=null&&(i.last_report_sent_business_day=n.lastReportSentBusinessDay),n.note!=null&&(i.note=n.note),n.users!=null&&(i.users=n.users.map((r=>({is_zeni:r.isZeni,user_id:r.userId,user_email:null,[`is_${r.role}`]:r.isSelected})))),n.customerSatisfaction!=null&&(n.customerSatisfaction.teamRating!=null||n.customerSatisfaction.customerRating!=null)){const r=n.customerSatisfaction;i.customer_satisfaction={},r.customerSatisfactionId!=null&&(i.customer_satisfaction.customer_satisfaction_id=r.customerSatisfactionId),r.customerRating!=null&&(i.customer_satisfaction.customer_rating_code=r.customerRating,i.customer_satisfaction.customer_note=r.customerNote),r.teamRating!=null&&(i.customer_satisfaction.team_rating_code=r.teamRating,i.customer_satisfaction.team_note=r.teamNote)}return i},DK={Employees:"employees",Customers:"customers","Physical office or facility":"physical_office","Banking relationships":"banking_relationships"};function JK(n){return DK[n]??n}const wK=n=>{const i={company_inc_type:n.typeOfInc,company_inc_state:n.stateOfInc};return n.incDate!=null&&(i.company_inc_date=n.incDate.format("YYYY-MM-DD")),i},$K=n=>({tax_id:n.taxIdOrEIN,duns_id:n.dunsNumber,sic_code:n.sicCode,naics_code:n.naicsCode,taxes_filed_years:n.taxesFiledYears}),RK=(n,i)=>{const r=[];return n.fileId!=null&&r.push(n.fileId),i.fileId!=null&&r.push(i.fileId),{file_ids:r}},Fs=n=>{const i={};return n.email!=null&&(i.email=n.email),n.firstName!=null&&(i.first_name=n.firstName),n.lastName!=null&&(i.last_name=n.lastName),n.phone!=null&&(i.phone=n.phone),n.isCompanyOfficer!=null&&(i.is_company_officer=n.isCompanyOfficer),n.isPrimaryContact!=null&&(i.is_primary_contact=n.isPrimaryContact),i};function Dl(n){const i={};return n.forEach((r=>{const t=r.company_id,e=ee(i,t,void 0);i[t]=[...e??[],r.subscription_id]})),i}function Jl(n){let i;return n.companyAddress!=null&&(i=Object.assign({},i,{company_address:ro(n.companyAddress)})),n.registeredAddress!=null&&(i=Object.assign({},i,{company_registered_address:ro(n.registeredAddress)})),n.companyOfficers.slice(0,tu.length).sort(((r,t)=>r.user.createTime?.isAfter(t.user.createTime)===!0?1:-1)).forEach(((r,t)=>{const e=r.address,a=`officer_${t+1}_address`;e!=null&&(i=Object.assign({},i,{[a]:ro(e)}))})),i}const ro=n=>{const{updateTime:i,createTime:r,addressId:t,...e}=n;return e},ZE=["company_address","company_registered_address",...tu.map((n=>`officer_${n}_address`))];function wl(){return[YO(),N({messageSection:"create_transfer_entry",messageText:"failed",type:"error"})]}function XE(n){return[WO(),ZO(n),N({messageSection:"create_transfer_entry",messageText:"success",type:"success"})]}function e0(n){return Za(0).pipe(y((()=>{const i=[XO()];return n!=null&&i.push(...(function(r){return[Hl(De(r)),Yl(r),eC()]})(n)),_(i)})))}const MK={transferEntryEligible:"transfer_accounts",creditCardOnlyEligible:"credit_card_transfer_accounts"},VK={transferEntryEligible:{is_only_include_transfer_accounts:!0},creditCardOnlyEligible:{is_include_only_credit_card_accounts:!0}};function t0(n){const i=n?.trim();return N(i!=null&&i!==""?{messageSection:"confirm_statement_mapping",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:i}]}:{messageSection:"confirm_statement_mapping",messageText:"failed",type:"error"})}function a0(n){switch(n){case"exclude":return"Excluding Transaction";case"reconcile":return"Reconciling";case"save_reconcile_for_later":return"Saving for Later"}}function r0(n){return n.filter((i=>i.is_checked_transaction===!0)).map((i=>i.transaction_id))}const LK=n=>n.reduce(((i,r)=>{const t={memo:(e=r,e.recommended_action.recommended_transactions[0]?.transaction_memo??e.transaction_memo??""),categoryId:r.recommended_action.recommended_transactions[0]?.account_id??void 0,classId:r.recommended_action.recommended_transactions[0]?.class_id??void 0,vendor:r.recommended_action.recommended_transactions[0]?.merchant_id!=null&&r.recommended_action.recommended_transactions[0]?.merchant_name!=null?{id:r.recommended_action.recommended_transactions[0].merchant_id,name:r.recommended_action.recommended_transactions[0].merchant_name}:void 0};var e;return{...i,[r.transaction_id]:t}}),{}),FK=n=>n.reduce(((i,r)=>{const t={memo:(e=r,e.recommendedAction.recommendedTransactions[0]?.memo??e.memo??""),categoryId:r.recommendedAction.recommendedTransactions[0]?.accountId??void 0,classId:r.recommendedAction.recommendedTransactions[0]?.classId??void 0,vendor:r.recommendedAction.recommendedTransactions[0]?.merchantId!=null&&r.recommendedAction.recommendedTransactions[0]?.merchantName!=null?{id:r.recommendedAction.recommendedTransactions[0].merchantId,name:r.recommendedAction.recommendedTransactions[0].merchantName}:void 0};var e;return{...i,[r.transactionId]:t}}),{});function qK(n,i){return{amount:n.amount.amount,transaction_memo:n.memo,line_description:i.memo,transaction_date:n.transactionDate.format(re),transaction_direction:n.transactionDirection,transaction_id:n.transactionId,vendor_id:i.vendor?.id,vendor_name:i.vendor?.name,account_id:i.categoryId,accounting_class_id:i.classId,currency_code:n.amount.currencyCode}}const jK=(n,i,r,t)=>({account_type:t,amount:n.amount.amount,transaction_memo:r.memo,transaction_date:n.transactionDate.format(re),transaction_direction:n.transactionDirection,transaction_id:n.transactionId,linked_transaction_id:i?.bookTransactionId,linked_transaction_type:"bill",currency_code:n.amount.currencyCode,vendor_id:i?.merchantId,vendor_name:i?.merchantName}),GK=n=>n?.recommendedAction.action==="record_bill_payment"?"recon_transaction_match":"recon_transaction_categorize",n0=(n,i)=>{const{statementMeta:r,statementTransactions:t}=i,e=QC(r,n.statementMeta),a=n.statementTransactions?.deletedIds??[],s=new Set(t.filter((u=>u.statementTransactionId!==""&&!a.includes(u.statementTransactionId))).map((u=>u.statementTransactionId))),o=WC(t,e,s),c=[...new Set([...a,...o])],d=n.statementTransactions?.updated??[];if(c.length===a.length&&c.every((u=>a.includes(u))))return n;const l=new Set(c);return{...n,statementTransactions:{...n.statementTransactions,deletedIds:c,added:n.statementTransactions?.added??[],updated:d.filter((u=>u.statementTransactionId!=null&&!l.has(u.statementTransactionId)))}}};function s0(n,i,r){if(n.length===0)return{count:0,totalAmount:{amount:0,...r}};let t=0,e=sa(0);return n.forEach((a=>{a.transactionDirection===i&&(t+=1,e=e.plus(a.amount.amount))})),{count:t,totalAmount:{amount:parseFloat(e.toFixed(2)),...r}}}const zK=(n,i)=>({action:px(n),flux_analysis_entity_ids:i}),KK="prepaid_expenses",HK="fixed_assets",YK="accrued_expenses";function QK(n){const i=n.total_amount??n.amount;if(typeof i=="number"&&Number.isFinite(i))return i;if(typeof i=="string"&&i!==""){const r=Number(i);if(Number.isFinite(r))return r}return 0}function WK(n,i,r){return n.currency_symbol!=null&&n.currency_symbol!==""?n.currency_symbol:r!=null&&i===r.currencyCode?r.currencySymbol:i}function ZK(n){return{accrualId:n.accrual_id,status:Sx(n.status),reason:n.reason??void 0}}function XK(n){return{accrualId:n.accrual_id,status:gx(n.status),reason:n.reason??void 0}}function o0(n){const i=Ix(n);if(i==null)return[];const r=Je(i),t=Se(r.start),e=Se(r.end);return t==null||e==null?[]:[Ql({start:t,end:e},!0)]}function i0(n){return N({messageSection:"actual_matching_match_and_reverse",messageText:"failed",type:"error",variables:[{variableName:"_count_",variableValue:"0"},{variableName:"_vendor_name_",variableValue:n}]})}function $l(n,i){const r=n.filter((a=>a.status==="undone")).length,t=n.length-r,e=[{variableName:"_count_",variableValue:String(r)},{variableName:"_vendor_name_",variableValue:i}];return n.length>0&&t===0?N({messageSection:"actual_matching_undo_reversal",messageText:"success",type:"success",variables:e}):N(r>0&&t>0?{messageSection:"actual_matching_undo_reversal",messageText:"notification",type:"warning",variables:e}:{messageSection:"actual_matching_undo_reversal",messageText:"failed",type:"error",variables:e})}const no="YYYY-MM",eH=(n,i)=>{const{classListState:r,classState:t}=n,e=sr(t,r).classes.find((s=>s.labels?.includes("balance_sheet")===!0)),a=i.reverseNextMonth?{reverse_next_month:!0,expected_reversal_date:tH(i.serviceMonth).format(re)}:{reverse_next_month:!1};return{vendor_id:i.vendorId,vendor_name:i.vendorName,service_month:i.serviceMonth.format(no),amount:i.amount,memo:i.memo,je_debit_account_id:i.debitAccountId,je_credit_account_id:i.creditAccountId,...i.debitAccountName!=null?{je_debit_account_name:i.debitAccountName}:{},...i.creditAccountName!=null?{je_credit_account_name:i.creditAccountName}:{},...i.debitClassId!=null?{je_debit_accounting_class_id:i.debitClassId}:{},...i.debitClassName!=null?{je_debit_accounting_class_name:i.debitClassName}:{},...e!=null?{je_credit_accounting_class_id:e.classId,je_credit_accounting_class_name:e.className}:{},...a}},tH=n=>n.add(1,"month").startOf("month"),aH=(n,i)=>i!=null?i.amount:n.amount.amount,rH=n=>({scheduled_journal_entry_id:n.scheduledJournalEntryID,je_schedule_id:n.jeScheduleID,...n.updatedVendor?.id!=null&&n.updatedVendor.id!==""?{updated_vendor_id:n.updatedVendor.id}:{},...n.updatedCategoryId!=null?{updated_debit_category_id:n.updatedCategoryId}:{},...n.updatedAccumulatedDepreciationCategoryID!=null?{updated_credit_category_id:n.updatedAccumulatedDepreciationCategoryID}:{},...n.updatedClassId!=null?{updated_debit_class_id:n.updatedClassId}:{}}),nH={missing_third_party_id:"This transaction is missing a QuickBooks reference and cannot be scheduled.",missing_vendor:"This transaction has no vendor and cannot be scheduled. Add a vendor to the transaction first."};function Rl(n){const i=n.expenseAutomationViewState.selectedPeriodByTenantId[Y(n).tenantId];if(i==null)return[];const r=Je(i),t=Se(r.start),e=Se(r.end);return t==null||e==null?[]:[er({start:t,end:e},!0)]}function aa(n,i,r,t){return[rU({accrualId:i,status:t??f("Unexpected Error",r)}),N({messageSection:n,messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:r}]})]}function Ml(n){const i=me().startOf("day"),r=i.subtract(n-1,"day");return{end:i.format(re),start:r.format(re)}}function c0(n,i){return n.length===0?F:_(n).pipe(y((r=>i.getJSON(`${i.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/batches/${r}`).pipe(y((t=>{if(!P(t)||t.data==null||!Zs(t.data.status))return F;const e=[],a=Xs(t.data.files);return a.length>0&&e.push(xe(a,(s=>s.transaction_id))),e.push(Ws(eo(t.data,i.apiEndPoints.fileMicroServiceBaseUrl))),_(e)})),v((t=>(console.error(`Failed to fetch batch details for ${r}:`,f("Unexpected Error","Fetch batch details errored out: "+JSON.stringify(t))),p(G0({batchId:r}))))))),5))}const Wa="review";function sH(n,i){const r={...n};for(const t of Object.keys(i))r[t]={...n[t],...i[t]};return r}const oH=(n,i,r,t,e=!1,a,s)=>{const o=Q0(r,i??s),c=n[o],d={recommendations:t,entityId:i===s?null:i,...r==="vendor"&&s!=null?{vendorName:s}:{}};n[o]=c==null?{entityType:r,isBulkUpdate:e,updatedEntityId:a,...d}:{...c,...d}},IT=(n,i,r)=>{if(i!=null&&r!=null)return{...i,min:r.min,max:r.max,reason:r.reason,type:r.type};if(i!=null){const{min:t,max:e}=H0(n);return{...i,min:t,max:e,reason:"",type:""}}},bT=(n,i,r)=>{if(i!=null&&r!=null)return{...i,min:r.min,max:r.max,reason:r.reason,type:r.type};if(i!=null){const{min:t,max:e}=H0(n);return{...i,min:t,max:e,reason:"",type:""}}},iH=(n,i,r,t)=>n!=null?{entityId:n.qboId??n.id,entityType:n.type,entityName:n.name}:i?.lineEntity!=null?{entityId:i.lineEntity.qboId??i.lineEntity.id,entityType:i.lineEntity.type,entityName:i.lineEntity.name}:t!=null&&t.id&&t.id!=null?{entityId:t.id,entityType:"customer"}:r!=null?{entityId:r.qboId??r.id??r.name,entityType:"vendor",entityName:r.name}:void 0,ET=(n,i)=>{const r=n.lines;if(i===!0&&(sn(n)||n.type==="journal_entry"))return!0;let t=!1;return r?.forEach((e=>{if(e.type==="transaction_with_account_and_class_line"||e.type==="transaction_with_product_or_service_line"||e.type==="journal_entry_transaction_line"){const a=e;(a.isCategoryMiscategorized||a.isClassMiscategorized||z0(n.type)&&n.vendor==null||to(n.type)&&a.vendor==null&&a.customer==null)&&(t=!0)}})),t},cH=(n,i,r)=>{const t={updatesByLineId:{}},e={},a={},s=ET(i,!0),o=((u,m)=>{const h=u.lines;let g=!1;return h?.forEach((I=>{I.type!=="transaction_with_account_and_class_line"&&I.type!=="transaction_with_product_or_service_line"&&I.type!=="journal_entry_transaction_line"||K0(m,I.account.qboId)&&(g=!0)})),g})(i,r);t.memo=n.memo;const c=n.selectedEntity;let d,l;return sn(i)===!0&&c!=null&&c.type==="vendor"&&(t.vendorId=c.qboId),FU(i)===!0&&c!=null&&c.type==="customer"&&(t.customerId=c.qboId),i.lines?.forEach((u=>{if(u.type!=="transaction_with_account_and_class_line"&&u.type!=="transaction_with_product_or_service_line"&&u.type!=="journal_entry_transaction_line"||!(u.id in n.lineItemById))e[u.id]=u;else{const m=n.lineItemById[u.id].selectedEntityLine,h=lH(c,n.lineItemById[u.id],n.vendorUpdates,n.customerUpdates,m),g=n.lineItemById[u.id];e[u.id]={lineDescription:g.lineDescription,class:g.class,account:g.account,project:g.project,recommendation:Y0(g.recommendationsWithCOT)},u.type!=="journal_entry_transaction_line"&&u.platformLineDetailType!=="deposit_line_detail"||(e[u.id]={...e[u.id],vendor:m!=null&&m.type==="vendor"?g.vendor:void 0,customer:m!=null&&m.type==="customer"?g.customer:void 0});let I=!1,E=!1;const b=u;I=g.account?.qboId!==b.account.qboId&&!!g.account?.qboId,E=(g.class?.qboId!=null||b.class?.qboId!=null)&&g.class?.qboId!==b.class?.qboId;const T=IT(g.amount.amount,g.account),O=bT(g.amount.amount,g.class);if(h!=null&&(I===!0||E===!0)){d=I===!0?T:void 0,l=E===!0?O:void 0;const x={account:d,class:l};if(x.class!=null||x.account!=null){const U=h.entityId;dH(a,U,h.entityType,x,!1,void 0,h.entityName)}}}})),t.updatesByLineId=e,{transactionId:i.id,updates:t,entityRelatedUpdates:a,markAsMiscatUpdates:s===!0&&o===!1,anyBulkUpdates:!1}},dH=(n,i,r,t,e=!1,a,s)=>{const o=Q0(r,i),c=n[o],d={recommendations:t,entityId:i===s?null:i,...r==="vendor"&&s!=null?{vendorName:s}:{}};n[o]=c==null?{entityType:r,isBulkUpdate:e,updatedEntityId:a,...d}:{...c,...d}},lH=(n,i,r,t,e)=>n!=null?{entityId:n.qboId??n.id,entityType:n.type,entityName:n.name}:r!=null?{entityId:r.qboId??r.id??r.name,entityType:"vendor",entityName:r.name}:t!=null&&t.id!=null?{entityId:t.id,entityType:"customer"}:i.lineEntity!=null?{entityId:i.lineEntity.qboId??i.lineEntity.id,entityType:i.vendor!=null?"vendor":"customer",entityName:i.lineEntity.name}:i.customer?.id!=null&&e!=null&&e.type==="customer"?{entityId:e.qboId??i.customer.id,entityType:"customer"}:i.vendor?.id!=null&&e!=null&&e.type==="vendor"?{entityId:e.qboId??i.vendor.id,entityType:"vendor",entityName:e.name??i.vendor.name}:void 0,uH=(n,i,r,t,e,a,s)=>{const o=Object.assign({},i);o.memo=n.memo??"";const c={};for(const l in n.updatesByLineId){const u=n.updatesByLineId[l],m=o.lines?.map((h=>{if(h.id===l){const g=Object.assign({},h);g.lineDescription=u.lineDescription??"",u.class!=null&&(g.class=u.class),u.project!=null&&(g.project=u.project),u.account!=null&&(g.account=u.account),u.customer!=null?g.customer=u.customer:g.customer=void 0,u.vendor!=null?u.vendor?.id===u.vendor?.name?g.vendor={id:"",name:u.vendor.name}:g.vendor=u.vendor:g.vendor=void 0,u.recommendation!=null&&(c[h.id]=u.recommendation);const I=t[r],E=I?.find((b=>b.lineId===h.id));return E!=null&&(g.cotViewingFlags={vendor:E.vendor,category:E.category,class:E.class,lineId:E.lineId}),g}return h}));o.lines=m}let d;return o.recommendations=c,d=W0(o)?Z0(o):sn(o)?s!=null&&s.type==="customer"?X0(o,a):eT(o,e):tT(o)?aT(o):rT(o),nT(d,o)},pH=n=>{const i=[];let r;for(r in n){const t=n[r],e={recommendations:sT(t.recommendations),entity_id:t.entityId,entity_type:t.entityType,is_bulk_update:t.isBulkUpdate,updated_entity_id:t.updatedEntityId};t.entityType==="vendor"&&t.vendorName!=null&&(e.vendor_name=t.vendorName),i.push(e)}return i},TT=n=>({user_id:n.user_id,first_name:n.first_name?.trim(),last_name:n.last_name?.trim(),email:""}),PT=n=>{const i={global_merchant_name:n.globalMerchantName,global_merchant_type:n.globalMerchantType??"vendor",logo:{url:n.logo?.toString(),base64:null},reason:n.reason??null,website_url:n.websiteUrl?.toString()??null,third_party_merchant_id:n.thirdPartyMerchantId??null,update_time:n.updateTime!=null?n.updateTime.format("YYYY-MM-DD"):null,create_time:n.createTime!=null?n.createTime.format("YYYY-MM-DD"):null};return n.isActive!=null&&(i.is_active=n.isActive),i},so=(n,i)=>{const r=[];n.map(((e,a)=>{const s=[];e.globalMerchants.forEach(((o,c)=>{const d=au(o);s[c]={...nn(d,["create_time","update_time"])}})),s.length>0&&(r[a]={global_merchants:s})}));const t=[];return i.map(((e,a)=>{const s=[];e.globalMerchants.forEach(((o,c)=>{const d=PT(o);s[c]={...nn(d,["create_time","update_time"])}})),t[a]={global_merchants:s}})),[{global_merchants:[...r[0]?.global_merchants??[],...t[0]?.global_merchants??[]]}]},AT=n=>{const i=[];return n[0]?.global_merchants.forEach((r=>{r.global_merchant_id!=null&&i.push(r)})),i},mH=(n,i)=>{const r={global_merchant_name:n.globalMerchantName,global_merchant_type:n.globalMerchantType,is_active:!0,recommendations:i,website_url:n.globalMerchantWebsiteUrl?.toString()};if(i.length>0&&i[0].global_merchants.length>0&&i[0].global_merchants[0].global_merchant_name===n.globalMerchantName){const t=i[0].global_merchants[0];r.logo=t.logo?.url??null,r.third_party_merchant_id=t.third_party_merchant_id??null}return r},yH=new Set(["time","action"]),d0=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",Ee=n=>{const i=n?.message?.trim()??"";if(i!=="")return[{variableName:"_api-error_",variableValue:i}]},qs=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",Zr=(n,i)=>i.pipe(y((r=>P(r)&&r.data!=null?((t,e)=>[iT(e),Qk(e.id),Wk(t),cT(),oT()])(n,r.data):p(W_({kind:n,error:r.status})))),v((r=>p(W_({kind:n,error:f("Unexpected Error",`Data import ${n} REST API call errored out `+JSON.stringify(r))}))))),Vl=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",ia=n=>n.trim()!==""?n.trim():void 0,NT=n=>n.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,""),l0=(n,i,r,t)=>{const e=n.catalogType==="addon",a=nB(i.pricingModel),s=i.name.trim(),o=ia(i.priceCode)??NT(s),c={currency_code:"USD",free_quantity:Number(i.freeQuantity)||0,is_taxable:i.isTaxable,name:s,price:a?0:i.priceDollars?.amount??0,price_code:o,pricing_model:i.pricingModel,show_description_in_invoices:i.showDescriptionInInvoices,show_description_in_quotes:i.showDescriptionInQuotes},d=ia(i.description);d!=null?c.description=d:r&&(c.description=null);const l=ia(i.invoiceNotes);l!=null?c.invoice_notes=l:r&&(c.invoice_notes=null),i.period.trim()!==""&&(c.period=Number(i.period),c.period_unit=i.periodUnit||"month"),i.trialPeriod.trim()!==""&&(c.trial_period=Number(i.trialPeriod),c.trial_period_unit=i.trialPeriodUnit,c.trial_end_action=i.trialEndAction),i.billingCycles.trim()!==""&&(c.billing_cycles=Number(i.billingCycles)),e&&i.prorationType&&(c.proration_type=i.prorationType),a&&(c.tiers=i.tiers.map((m=>({ending_unit:m.endingUnit.trim()!==""?Number(m.endingUnit):void 0,package_size:m.packageSize.trim()!==""?Number(m.packageSize):void 0,price:m.price?.amount??0,pricing_type:m.pricingType,starting_unit:Number(m.startingUnit)||1}))));const u=((m,h)=>{const g={};m.sku.trim()!==""&&(g.sku=m.sku.trim());const I=h.accountByQboId(m.accountingCode.trim());I!=null&&(g.account=Xa(I));const E=h.classByQboId(m.accountingCategory.trim());return E!=null&&(g.accounting_class=en(E)),Object.keys(g).length>0?g:void 0})(i,t);return u!=null&&(c.accounting_detail=u),c},js=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",_H={archive:"invoicing_discount_archive",delete:"invoicing_discount_delete",unarchive:"invoicing_discount_unarchive"},Ll=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",ra=n=>n.trim()!==""?n.trim():void 0,Gs=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",hH={activate:"invoicing_subscription_activated",cancel:"invoicing_subscription_cancelled",change_term_end:"invoicing_subscription_term_end_changed",pause:"invoicing_subscription_paused",reactivate:"invoicing_subscription_reactivated",remove_scheduled_cancellation:"invoicing_subscription_cancellation_removed",resume:"invoicing_subscription_resumed",set_non_renewing:"invoicing_subscription_non_renewing"},u0=n=>(n??"").trim().toUpperCase(),p0=n=>(n??"").trim().toUpperCase(),m0=(n,i,r,t,e)=>n.postAndGetJSON(`${i}/subscriptions/${encodeURIComponent(r)}/${t}`,{coupon_code:e}).pipe(et((a=>P(a)?{success:!0,payload:a.data??null}:{success:!1,payload:null,status:a.status})),v((a=>p({success:!1,payload:null,status:f("Unexpected Error",`${t} REST API call errored out `+JSON.stringify(a))})))),y0=n=>n.status??f("Unexpected Error","Coupon sync failed without a status"),_0=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",SH={regenerate:"invoicing_invoice_regenerated","send-reminder":"invoicing_invoice_reminder_sent",void:"invoicing_invoice_voided"},Fl=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",ql=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",h0=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",S0=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",gH={cancel:"invoicing_dunning_cancel",resolve:"invoicing_dunning_case_resolved",retry:"invoicing_dunning_retry"},g0=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",Nt=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress";function f0(n){return{connected:n.connected,companyName:n.company_name??void 0,connectionId:n.connection_id??void 0,realmId:n.realm_id??void 0}}const v0=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",fH=(n,i)=>{if(i==null)return[];const r=JJ(n,i),t=wJ(i),e=$J(i),a=RJ(i);if(a&&r)return[];if(r)return[];if(a)return[];if(t)return["bookkeeping","zeni_bill_pay","zeni_reimbursements"];if(e){const s=[];return i.productSettings.isCfoEnabled&&s.push("zeni_cfo"),i.productSettings.isTaxEnabled&&s.push("zeni_tax"),i.productSettings.isPayrollEnabled&&s.push("zeni_payroll"),s}return[]},vH=(n,i,r,t)=>{const{qboRealmId:e,chargebeeId:a,isSubsidiary:s,parentCompanyId:o}=n;e&&e!==t?.qboRealmId?i.qbo_realm_id=e:!e&&t?.qboRealmId!=null&&(i.qbo_realm_id=""),s==null||r!=null&&(r==null||s===r?.company.companyOnboardingInfo.isSubsidiary&&o===r?.company.companyOnboardingInfo.parentCompanyId)||(s===!0?(i.is_subsidiary=!0,i.parent_company_id=o):i.is_subsidiary=!1),a&&a!==t?.chargebeeId&&(i.chargebee_customer_id=a)},I0=(n,i)=>{const r=n?.onboarding_customer_user_ids!=null&&n.onboarding_customer_user_ids.length>0?n.onboarding_customer_user_ids[0]:"";let t="";if(r!=null){const e=i.find((a=>a.user_id===r));if(e!=null){const a=e.first_name?.trim()??"",s=e.last_name?.trim()??"";t=a&&s?`${a} ${s}`:a||s||""}}return t},IH=n=>{return{key:n.key,status:(i=n.status,i==="idle"||i==="starting"||i==="building"||i==="ready"?i:"idle"),startedAt:n.started_at,completedAt:n.completed_at};var i},bH=new Set(["employees","customers","physical_office","banking_relationships"]),EH={Employees:"employees",Customers:"customers","Physical office or facility":"physical_office","Banking relationships":"banking_relationships"};function TH(n){return bH.has(n)?n:EH[n]??n}const b0=(n,i,r,t,e)=>{const{companyDescription:a,companyLegalName:s,companyIndustry:o,companyIndustryType:c,companySubIndustry:d,countriesOfOperations:l,companySourceOfFunds:u,companySourceOfFundsDescription:m,transactionVolume:h,transactionVolumeDescription:g,purposeOfAccount:I,purposeOfAccountDescription:E,regulatedStatus:b,regulatedStatusDescription:T,usNexus:O,usNexusTypes:x,website:U,incDate:k,taxIdOrEIN:C,phone:B,syncToken:J,fileIds:L,typeOfIncorporation:R,stateOfIncorporation:q,sourceOfFunds:$}=n,D={is_ready_for_verification:i,file_ids:L},w=r!=null?Ue(r):void 0,K=t!=null?Ue(t):void 0;return dT(r!=null?io(r):r,t!=null?io(t):t)?D.is_registered_address_same_as_company_address=!0:D.is_registered_address_same_as_company_address=!1,a!=null&&(D.company_description=a),s!=null&&(D.company_legal_name=s),U!=null&&(D.company_url=U.toString()),C!=null&&(D.tax_id=C),k!=null&&(D.company_inc_date=k.format("YYYY-MM-DD")),B!=null&&(D.phone=B),J!=null&&(D.sync_token=J),w!=null&&(D.address=w),K!=null&&(D.registered_address=K),R!=null&&(D.company_inc_type=R),q!=null&&(D.company_inc_state=q),o!=null&&(D.company_industry=o),Object.assign(D,{...c!=null&&{company_industry_type:c},...d!=null&&{company_industry_sub_type:d},...l!=null&&l.length>0&&{company_countries_of_operations:l},...u!=null&&{company_source_of_funds:u},...m!=null&&{company_source_of_funds_desc:m},...h!=null&&{company_transaction_vol_expectations:h},...g!=null&&{company_transaction_vol_expectations_desc:g},...I!=null&&{company_purpose_of_account:I},...E!=null&&{company_purpose_of_account_desc:E},...b!=null&&{company_regulated_states:b==="yes"},...T!=null&&{company_regulated_states_desc:T},...O!=null&&{company_us_nexus:O==="yes"},...x!=null&&x.length>0&&{company_us_nexus_desc:x.map(TH)}}),e==="zeni_treasury"&&$!=null&&(D.source_of_funds=$),D.is_new_company_industry_verified=!0,D},E0=(n,i)=>{const r={first_name:n.firstName,last_name:n.lastName,email:n.email};return i||n.userId==null||(r.user_id=n.userId),n.syncToken!=null&&(r.sync_token=n.syncToken),r},T0=(n,i,r)=>{const{firstName:t,lastName:e,userId:a,email:s,syncToken:o,ssn:c,birthday:d,nationalityCountryCode:l,phone:u,otpChallenge:m,isPhoneVerified:h,titleAtCompany:g,ownershipInCompany:I,documentTypeSelectedForVerification:E,fileIds:b,additionalSubmittedDocumentsForVerificationFileIds:T}=n,O={first_name:t,last_name:e,file_ids:b},x=r!=null?Ue(r):void 0;return a==null?s!=null&&(O.email=s):(a!=null&&(O.user_id=a),o!=null&&(O.sync_token=o)),c!=null&&(O.ssn=c),O.birthday=d?.format("YYYY-MM-DD")??null,u!=null&&(O.phone=u),O.title_at_company=g??"",O.company_ownership=I??null,O.document_type_for_verification=E??"",O.nationality_country_code=l??"",x!=null&&(O.address=x),m!=null&&h===!0&&(O.phone_verification={otp_challenge:m}),i&&(O.are_additional_documents_submitted_for_verification=!0,O.additional_submitted_documents_for_verification_file_ids={social_security_card:T}),O},PH=n=>{switch(n){case"charge_cards":return"charge_cards";case"debit_cards":return"debit_cards";case"charge_cards__debit_cards":return"charge_cards__debit_cards";case"reimbursement":return"reimbursements";case"zeni_accounts":return"deposit_accounts";case"bill_pay":return"bill_pay";case"zeni_treasury":return"treasury_accounts";case"other_connection":return"other_connection";case"billing":return console.warn("Invalid type for setup view"),""}},AH=n=>{const{companyLegalName:i,syncToken:r}=n,t={is_ready_for_verification:!1};return i!=null&&(t.company_legal_name=i),r!=null&&(t.sync_token=r),t},NH=(n,i)=>{const{syncToken:r}=n;return{company:{sync_token:r,subscription_billing_address:Ue(i)}}};function P0(n,i,r,t){const{companyInfo:e,incInfo:a,taxInfo:s,questionaire:o,companyBillPayInfo:c}=n,{companyId:d,companyDescription:l,companyLegalName:u,companyUrl:m,phone:h,syncToken:g,sourceOfFunds:I,companySourceOfFunds:E,companySourceOfFundsDescription:b,countriesOfOperations:T,transactionVolume:O,transactionVolumeDescription:x,purposeOfAccount:U,purposeOfAccountDescription:k,regulatedStatus:C,regulatedStatusDescription:B,usNexus:J,usNexusTypes:L}=e,{usersSelectedForVerification:R}=c,{fileIds:q,companyIncDate:$,companyIncType:D,companyIncState:w,companySubIndustry:K,companyIndustryType:G}=a,{companyIndustry:Z}=o,{taxId:de}=s,ue={companyId:d,companyDescription:l,companyIndustry:Z,companyIndustryType:G,companyLegalName:u,companySubIndustry:K,companySourceOfFunds:E,companySourceOfFundsDescription:b,countriesOfOperations:T,taxIdOrEIN:de,incDate:$,phone:h,website:m,fileIds:q,syncToken:g,typeOfIncorporation:D,sourceOfFunds:I,stateOfIncorporation:w,transactionVolume:O,transactionVolumeDescription:x,purposeOfAccount:U,purposeOfAccountDescription:k,regulatedStatus:C,regulatedStatusDescription:B,usNexus:J,usNexusTypes:L};let ae;if(t!=null){const{firstName:Ne,lastName:pe,email:be,userId:ca,syncToken:da}=t;ae={userId:ca,firstName:Ne,lastName:pe,email:be,syncToken:da}}const ye=i.slice(0,tu.length).sort(((Ne,pe)=>Ne.createTime?.isAfter(pe.createTime)===!0?1:-1));let _e=R?.[0]!=null?ye.findIndex((Ne=>Ne.userId===R[0])):0;_e<0&&(_e=0);const Le=ye.map(((Ne,pe)=>{const{userId:be,firstName:ca,lastName:da,birthday:la,email:UT,nationalityCountryCode:kT,phone:BT,isPhoneVerified:DT,ssn:JT,syncToken:wT}=Ne,at=r.find(($T=>$T.userId===be));return{officerType:`Officer_${pe+1}`,userId:be,firstName:ca,lastName:da,birthday:la,email:UT,nationalityCountryCode:kT,phone:BT,isPhoneVerified:DT,ssn:JT,fileIds:at?.fileIds??[],syncToken:wT,isSelectedForVerification:_e===pe,documentTypeSelectedForVerification:at?.documentTypeSelectedForVerification,titleAtCompany:at?.titleAtCompany,ownershipInCompany:at?.ownershipInCompany,userVerificationStatus:at?.userVerificationStatus,treasuryUserVerificationStatus:at?.treasuryUserVerificationStatus,additionalDocumentTypesRequestedForVerification:at?.additionalDocumentTypesRequestedForVerification??[],additionalSubmittedDocumentsForVerificationFileIds:at?.additionalSubmittedDocumentsForVerificationFileIds??[],areAdditionalDocumentsRequestedForVerification:at?.areAdditionalDocumentsRequestedForVerification??!1,areAdditionalDocumentsSubmittedForVerification:at?.areAdditionalDocumentsSubmittedForVerification??!1}}));return Le.length===0&&Le.push({officerType:"Officer_1",userId:void 0,firstName:"",lastName:"",email:"",nationalityCountryCode:void 0,fileIds:[],isSelectedForVerification:!1,additionalDocumentTypesRequestedForVerification:[],additionalSubmittedDocumentsForVerificationFileIds:[],areAdditionalDocumentsRequestedForVerification:!1,areAdditionalDocumentsSubmittedForVerification:!1}),{companyDetails:ue,officers:Le,primaryContactDetails:ae}}const A0=(n,i)=>{switch(n){case"update_account":return{is_link_update_mode:!0,is_same_day_microdeposits_enabled:!0,payment_account_id:i};case"link_account_no_microdeposit":return{is_link_update_mode:!1,is_same_day_microdeposits_enabled:!1};default:return{is_link_update_mode:!1,is_same_day_microdeposits_enabled:!0}}},zs=(n,i,r)=>{const{is_admin:t,is_bookkeeping_admin:e,is_bookkeeping_user:a,user_id:s,is_invite_accepted:o,is_reimbursements_user:c,is_zeni:d,is_zeni_support_user:l}=i;!o||d&&!r||(l||t||e||a||c?n.push(Gw({userType:"manager",id:s})):n.push(lT({userType:"manager",id:s})))},OH=(n,i)=>({invites:n.map((r=>{const t={};return ru(r.role,i).forEach((e=>{t[`is_${e}`]=!0})),r.email.map((e=>({user_email:e,manager_user_id:r.managerId==null||r.managerId==="no_manager"?void 0:r.managerId,accounting_class_ids:r.departmentId!=null?[r.departmentId]:void 0,...t})))})).flat()}),CH=n=>({users:n.map((i=>{const r=i.role[0];return i.email.map((t=>({is_zeni:!0,user_id:null,user_email:t,[`is_${r}`]:!0})))})).flat()}),xH=(n,i,r,t)=>{const e={},{accountingClassIDs:a,managerUserId:s,userRoles:o}=r.userRole;if(n.departmentId!=null&&n.departmentId!==a[0]&&(e.accounting_class_ids=[n.departmentId]),n.managerId!=null&&n.managerId!==s&&(e.manager_user_id=n.managerId!=="no_manager"?n.managerId:null),n.role!=null){const c=ru(n.role,t),d={};o.forEach((l=>{i&&i$(l)||(d[`is_${l}`]=!1)})),c.forEach((l=>{d[`is_${l}`]=!0})),Object.assign(e,d)}return e},Xr=n=>{if(n==null||n.length===0)return;const i=[];return n.map((r=>{i.push(...m$(r))})),i},N0=(n,i)=>{if(n.length===0)return;const r={};return i.length!==n.length?r[i[0]]=Hg(n[parseInt(i[0])]):n.forEach(((t,e)=>{r[i[e]]=Hg(t)})),r},O0=n=>`${n}s`,UH=(n,i)=>({referrals:n.map((r=>({company:r.companyName,email_ids:r.emailIds,refer_reward_plan_id:i})))}),kH=n=>({vendor_id:n.id,vendor_name:n.name}),BH=({balanceAsOfToday:n,recurringAmount:i})=>n!=null?n.amount:i.amount,DH=(n,i)=>{const{estimatedMonthlyAmount:r,memo:t,selectedAccount:e,selectedClass:a,selectedMonths:s,selectedVendor:o,selectedAccruedExpenseCategory:c,jeScheduleDetails:d,startingBalance:l}=n,u=uT,m=d.length,h=m>0?n.jeScheduleDetails[0].postingDate.format(re):null,g=m>0?n.jeScheduleDetails[m-1].postingDate.format(re):null;return{status:{code:"new",label:"New"},vendor:{vendor_id:o?.id??"",vendor_name:o?.name??""},posting_date:u,currency_code:r?.currencyCode??"USD",currency_symbol:r?.currencySymbol??"$",period:s??0,je_schedule_type:"accrued_expenses",balance:l?.amount??0,other_attributes:{starting_balance:l?.amount??0},start_date:h,end_date:g,je_credit_accounting_class_id:i??"",je_credit_account_id:c??"",je_debit_account_id:e??"",je_debit_accounting_class_id:a??"",memo:t??"",recurring_amount:r?.amount??0,is_deleted:!1}},OT=(n,i,r,t,e)=>{const{vendor:a,currencyCode:s,currencySymbol:o,status:c,startDate:d,recurringAmount:l,endDate:u,balanceAsOfToday:m}=n,{selectedMonths:h,selectedAccount:g,selectedClass:I,memo:E,estimatedMonthlyAmount:b,selectedAccruedExpenseCategory:T,startingBalance:O}=r,x=uT,U=r.jeScheduleDetails.length,k=U>0?r.jeScheduleDetails[0].postingDate.format(re):null,C=U>0?r.jeScheduleDetails[U-1].postingDate.format(re):null,B=a.id,J=i.vendorByID[B],L={status:c,vendor:kH(J),currency_code:s,currency_symbol:o,other_attributes:{starting_balance:O?.amount??0},period:h??null,je_schedule_type:"accrued_expenses",posting_date:x,balance:BH({balanceAsOfToday:m,recurringAmount:l}),start_date:d?.format(re)??k,end_date:u?.format(re)??C,je_credit_accounting_class_id:t??"",je_credit_account_id:T??null,je_debit_account_id:g??null,je_debit_accounting_class_id:I??null,memo:E??"",recurring_amount:b?.amount??0};return e===!0?{...L,is_deleted:!0}:L},su=(n,i)=>n.find((t=>t.labels?.includes(i)===!0))?.classId??"",JH=(n,i)=>{const r={je_schedules:[],scheduled_journal_entries:[]},{classListState:t,classState:e}=n,a=sr(e,t).classes,s=su(a,"balance_sheet");return r.je_schedules=[DH(i,s)],r.scheduled_journal_entries=(o=>{const c=o.jeScheduleDetails,d=o.startingBalance?.amount??0;return c.map(((l,u)=>({status:{code:l.postingStatus,label:l.postingStatus},transaction_memo:l.memo,third_party_id:l.jeLink.thirdPartyTransactionId??null,expected_post_date:l.postingDate.format(re),amount:l.amount.amount,balance:u===0&&d!==0?d:l.runningBalance.amount,scheduled_journal_entry_id:null,actual_post_date:null,is_platform_generated:null,je_schedule_id:null,update_time:null,create_time:null})))})(i),r},C0=(n,i,r,t)=>{const e={je_schedules:[],scheduled_journal_entries:[]},{scheduleAccruedDetailState:a}=n,{selectedJEAccruedLinkRowIndex:s,linkBillExpenseView:o}=a;let c;const d=Ot(n.transactionState,o.linkBillExpenseLocalData.selectedTransaction??"");d!=null&&(c={transaction_id:d.id,transaction_type:d.type});const l=oa(r,n);if(l!=null){const{vendorState:u,classListState:m,classState:h}=n,g=sr(h,m).classes,I=su(g,"balance_sheet"),E=i.jeScheduleDetails;e.je_schedules=[OT(l,u,i,I,t)],e.scheduled_journal_entries=((b,T,O,x,U)=>{const k=T.scheduledJournalEntry;return b.map(((C,B)=>{const J=k[B],L={status:{code:C.postingStatus,label:$H(C.postingStatus)},transaction_memo:C.memo,third_party_id:C.jeLink.thirdPartyTransactionId??null,expected_post_date:C.postingDate.format(re),amount:C.amount.amount,...O===B&&x!=null?{is_bill_linked:!0}:{},...O===B&&x!=null?{reversal_transaction_details:x}:C.jeLink.reversalTransactionDetails!=null?{reversal_transaction_details:pT(C.jeLink.reversalTransactionDetails)}:{},balance:C.runningBalance.amount,scheduled_journal_entry_id:J?.scheduledJournalEntryID!=null?J.scheduledJournalEntryID:null,actual_post_date:J?.actualPostDate!=null?J.actualPostDate.format(re):null,is_platform_generated:J?.isPlatformGenerated!=null?J.isPlatformGenerated:null,je_schedule_id:J?.jeScheduleId!=null?J.jeScheduleId:null,update_time:J?.syncToken!=null?J.syncToken:null,create_time:J?.createTime!=null?J.createTime.format(re):null};return U===!0?{...L,is_deleted:!0}:L}))})(E,l,s,c,t)}return e},wH=(n,i,r,t)=>{const e={je_schedules:[],scheduled_journal_entries:[]},a=oa(r,n);if(a!=null){const{vendorState:s,classListState:o,classState:c}=n,d=sr(c,o).classes,l=su(d,"balance_sheet"),u=i.jeScheduleDetails;e.je_schedules=[OT(a,s,i,l,!1)],e.scheduled_journal_entries=((m,h,g)=>{const I=h.scheduledJournalEntry;return m.map(((E,b)=>{const T=I[b];return{status:{code:g==null&&E.postingStatus==="pending"||g!=null&&g===b?"canceled":E.postingStatus,label:g==null&&E.postingStatus==="pending"||g!=null&&g===b?"Canceled":E.postingStatus},transaction_memo:E.memo,third_party_id:E.jeLink.thirdPartyTransactionId??null,...E.jeLink.reversalTransactionDetails!=null&&{reversal_transaction_details:pT(E.jeLink.reversalTransactionDetails)},expected_post_date:E.postingDate.format(re),amount:E.amount.amount,balance:E.runningBalance.amount,scheduled_journal_entry_id:T?.scheduledJournalEntryID!=null?T.scheduledJournalEntryID:null,actual_post_date:T?.actualPostDate!=null?T.actualPostDate.format(re):null,is_platform_generated:T?.isPlatformGenerated!=null?T.isPlatformGenerated:null,je_schedule_id:T?.jeScheduleId!=null?T.jeScheduleId:null,update_time:T?.syncToken!=null?T.syncToken:null,create_time:T?.createTime!=null?T.createTime.format(re):null}}))})(u,a,t)}return e},$H=n=>n.charAt(0).toUpperCase()+n.substring(1),RH=function(n,i,r){let t=Af(i,n,31);return t.month()!==n&&(t=Af(i,n).endOf("month")),{postingDate:t,postingStatus:"pending"}},MH=(n,i)=>`${n} - ${i.format(hR)} - Acc_${i.format(SR)}`,VH=(n,i,r,t)=>{const e=n.selectedMonths,a=n.selectedDate;if(a==null)return[];const s=[];if(e==null)return[];for(let o=0;o<e;o++){const c=a.add(o,"month"),{postingDate:d,postingStatus:l}=RH(c.month(),c.year());s.push({postingDate:d,amount:tr(i.amount,i.currencyCode,i.currencySymbol),runningBalance:tr(o===0?r.amount??0:0,i.currencyCode,i.currencySymbol),postingStatus:l,memo:MH(t,c),jeLink:{type:"unknown"}})}return s},LH=(n,i)=>{const r=Math.abs(n[i].amount.amount);return n.map(((t,e)=>e===i?{...t,amount:{...t.amount,amount:r}}:t))},FH=(n,i,r,t)=>({type:i!=null?"linked":n==null?r==null?"unknown":"recommended":"qbourl",thirdPartyTransactionId:n,recommendedTransactionID:r,transactionDetailID:i!=null?{id:i,type:"journal_entry"}:void 0,reversalTransactionDetails:t!=null?{id:t.id,type:t.type}:void 0}),qH=n=>n.period!=null&&n.je_debit_account_id!=null&&n.je_debit_accounting_class_id!=null&&n.start_date!=null&&n.posting_date!=null&&n.period!=null&&n.je_credit_account_id!=null,jH=(n,i)=>({company:{sync_token:i,subscription_billing_address:Ue(n)}});function Ks(n){return{frequency_type:n.frequency,preferred_mode:n.preferredMode}}const GH=(n,i,r)=>{const{origin:t,phone:e,otpChallenge:a,birthday:s,address:o,firstName:c,lastName:d}=n,l=i.birthday==null,u=r!=null&&o!=null?!dT(io(r),io(o)):r==null&&o!=null;let m={first_name:c??void 0,last_name:d??void 0,birthday:l&&s!=null?s.format(re):void 0,address:u&&o!=null?Ue(o):void 0};return a!=null&&e!=null&&(m={...m,phone:e,phone_verification:{otp_challenge:a}}),t==="CardUserOnboarding"?{...m,is_card_issue_fulfilment_request:e!=null&&a!=null&&s!=null,address:r!=null?Ue(ro(r)):void 0}:m},jl=n=>({amount:n.amount,autoTransferRuleId:n.auto_transfer_rule_id,createTime:n.create_time!=null?te(n.create_time):void 0,currencyCode:n.currency_code,currencySymbol:n.currency_symbol??"$",destinationBankAccountId:n.destination_bank_account_id,destinationBankAccountMetadata:n.destination_bank_account_metadata?.map((i=>({accountId:i.account_id,accountType:i.account_type,percentage:i.percentage})))??void 0,destinationBankAccountType:n.destination_bank_account_type??void 0,frequency:n.frequency,isActive:n.is_active,isDeleted:n.is_deleted,lastRunTime:n.last_run_time,nextTransferDate:n.next_transfer_date!=null?te(n.next_transfer_date):void 0,ruleType:n.rule_type,sourceBankAccountId:n.source_bank_account_id,sourceBankAccountType:n.source_bank_account_type,updateTime:n.update_time!=null?te(n.update_time):void 0});function x0(n,i,r){return i===!0?{is_active:!1}:r===!0?{is_active:!0}:{...n.amount!=null&&n.ruleType!=="percentage_of_balance"&&{amount:n.amount.amount,currency_code:n.amount.currencyCode},...n.destinationAccount!=null&&{destination_bank_account_id:n.destinationAccount.id,destination_bank_account_type:an(n.destinationAccount.accType)},...n.destinationAccountWithPercentAllocation!=null&&{destination_bank_account_metadata:n.destinationAccountWithPercentAllocation.map((t=>({account_id:t.account.id,account_type:an(t.account.accType),percentage:t.percentage})))},frequency:n.frequency,rule_type:n.ruleType,...n.sourceAccount!=null&&{source_bank_account_id:n.sourceAccount.id,source_bank_account_type:an(n.sourceAccount.accType)},...n.firstTransferDate!=null&&{first_transfer_date:n.firstTransferDate.format("YYYY-MM-DD")}}}const an=n=>{switch(n){case"depositAccount":return"deposit_account";case"paymentAccount":return"payment_account";case"treasuryAccount":return"treasury_account";default:return}};function zH(n){const i=[],r=n.vendor_id;return r&&i.push(na(r,!1)),i}const U0=n=>{let i;if(n.criteria!=null){const{amount:a,vendor:s,department:o}=n.criteria,c=[];if(a?.min!=null&&c.push({field:"amount",type:"gte",value:a.min.amount}),a?.max!=null&&c.push({field:"amount",type:"lte",value:a.max.amount}),s!=null&&s.vendorIds.length>0&&c.push({field:"vendor_id",type:s.operator==="is_not"?"not_in":"in",value:s.vendorIds}),o!=null&&o.departmentIds.length>0&&c.push({field:"accounting_class_id",type:o.operator==="is_not"?"not_in":"in",value:o.departmentIds}),c.length>0){const d=a?.min??a?.max??null;i={conditions:c,criteria_operator:"and",currency_code:d?.currencyCode??"USD",currency_symbol:d?.currencySymbol??"$"}}}const r=n.steps.map((a=>({action:a.action,operator:a.operator,actors:a.actors.filter((s=>s.subType!=="admin")).map((s=>({type:s.type,id:s.userId??null,sub_type:s.subType??null,id_type:s.idType??null,is_implicit_actor:s.isImplicitActor??!1})))}))),t=n.approvalRuleId!=null,e={steps:r,is_applicable_on_pending_approval_entity:n.isApplicableOnPendingApprovalEntity??!0};return i!=null&&(e.criteria=i),n.name!=null&&(e.name=n.name),n.description!=null&&(e.description=n.description),n.separationOfDuties!=null&&(e.is_separation_of_duty_enabled=n.separationOfDuties),t&&(e.approval_rule_id=n.approvalRuleId),e},k0=n=>{const i=n.criteria?.amount,r=i?.min,t=i?.max,e=r?.currencyCode??t?.currencyCode??"USD",a=r?.currencySymbol??t?.currencySymbol??"$",s=n.steps.map((m=>({action:m.action,operator:m.operator,actors:m.actors.filter((h=>h.subType!=="admin")).map((h=>({type:h.type,id:h.userId??null,sub_type:h.subType??null,id_type:h.idType??null,is_implicit_actor:h.isImplicitActor??!1})))}))),o=n.approvalRuleId!=null,c=r?.amount??null,d=t?.amount??null,l=[];c==null&&d==null?console.warn("[approvalRules][V1] toApprovalChangableInfoPayloadV1: rule has no amount bounds; emitting empty criteria array. The V1 backend will reject this save — caller should ensure at least one bound is set on the form."):l.push({type:"range",range_entity:"currency",min:c,max:d,currency_code:e,currency_symbol:a});const u={steps:s,is_applicable_on_pending_approval_entity:n.isApplicableOnPendingApprovalEntity??!0,criteria:l};return o&&(u.approval_rule_id=n.approvalRuleId),u};function Gl(n,i,r){const t=i.billDetailLocalData.isCancelled,e=i.billDetailLocalData.updatesByLineId,a={...e},s=r?.accountId!=null?tt(n.accountState,r.accountId,"account_list"):void 0,o=r?.classId!=null?rr(n.classState,{classId:r.classId,reportId:"class_list"}):void 0,c=r?.vendorCurrencyCode,d=r?.vendorCurrencySymbol,{tenantState:l,companyState:u}=n,{currentTenantId:m}=l,h=m!=null?l.tenantsById?.[m]?.companyId:void 0,g=Ae(u,h??""),I=g?.company.companyBillPayInfo.payNowCutOffTimeByMethod.ach,E=I!=null&&me().isSameOrBefore(I);return Object.keys(a).forEach((b=>{const T=e[b];a[b]={...T,account:s,class:o,...rn}})),Object.keys(a).length===0&&(a[1]={account:s,class:o,amount:{amount:0,currencyCode:c??"USD",currencySymbol:d??"$"},recipientAmount:{amount:0,currencyCode:c??"USD",currencySymbol:d??"$"},id:"1",lineDescription:"",platformLineDetailType:"account_based_expense_line_detail",type:"transaction_with_account_and_class_line",billable:"not_billable",isCategoryMiscategorized:!1,isClassMiscategorized:!1,...rn}),{showVendorGptRecommendationText:!1,vendor:r,isCancelled:t,updatesByLineId:a,whatForSection:{...i.billDetailLocalData.whatForSection,currencyCode:r?.vendorCurrencyCode,recipientCurrencyCode:r?.vendorCurrencyCode},paymentDetailsSection:{...i.billDetailLocalData.paymentDetailsSection,paymentTo:void 0,internationalTransferFeeBearerPaymentMethod:r?.preferredInternationalTransferFeeBearerPaymentMethod,paymentDate:i.billDetailLocalData.paymentDetailsSection?.paymentDate??te(oo(me().toDate(),[0,6],E?0:1).toISOString())},isCollectToAccountInfoFromVendorContact:!1,isRecurring:!1}}const CT=(n,i,r,t,e,a)=>{const s=i;let o=r?.[n]??[];if(o.length===0&&a?.recommendations!=null&&a?.recommendations.length>0&&(o=a?.recommendations),o.length===0)return{...s,...rn};const[c]=o,d=c?.account,l=c?.class;let u,m,h=s?.account,g=s?.class;if(!h?.qboId&&(h=void 0),!g?.classId&&(g=void 0),h==null&&a!=null){const b=t.accounts.find((T=>T.qboId===a.qboId));d!=null?m=d:b!=null?m=b??a.recommendations[0]?.account:a.recommendations[0]?.account!=null&&(m=a.recommendations[0]?.account)}if(g==null&&a!=null){const b=e.classes.find((T=>T.classId===a.classId));l!=null?u=l:b!=null?u=b??a.recommendations[0]?.class:a.recommendations[0]?.class!=null&&(u=a.recommendations[0]?.class)}const I=((b,T)=>T!=null&&!!b.find((O=>O.class?.classId===T.classId)))(o,g),E=((b,T)=>T!=null&&!!b.find((O=>O.account?.qboId===T.qboId)))(o,h);return{...s,recommendedCategory:d,isCategoryFirstTimeAutofilled:!!d?.qboId,isCategoryUpdateSelected:!1,isRetainedCategorySelected:!1,retainedCategory:E?void 0:h,account:h??m,recommendedClass:l,isClassFirstTimeAutofilled:!!l?.classId,isClassUpdateSelected:!1,isRetainedClassSelected:!1,retainedClass:I?void 0:g,class:g??u,isCategoryOrClassUpdated:!1,updateAllCheckbox:!1}},KH=(n,i,r,t,e)=>{const a={currencyCode:r.recipient_currency_code??"",currencySymbol:r.recipient_currency_symbol??""},s={},o=t?.accountId,c=l1(r.lines,r.recommendations),d=r.lines?.[0]?.line_detail;let l=!0,u=!0;r.lines?.forEach((K=>{K.line_detail.account.account_id!==d.account.account_id&&(l=!1),K.line_detail.class.accounting_class_id!==d.class.accounting_class_id&&(u=!1);const G=tt(n.accountState,o??"","account_list"),Z=rr(n.classState,{classId:t?.classId??"",reportId:"class_list"}),de=u1(K,a),{accountListState:ue,accountState:ae,classListState:ye,classState:_e}=n,Le=sr(_e,ye),Ne=mT(ae,ue,"billPayAccountList"),pe=CT(K.line_id,de,c,Ne,Le,t);s[K.line_id]={...pe,account:pe.account?.accountId===""&&G!=null?G:pe.account,class:pe.class?.classId===""&&Z!=null?Z:pe.class}})),r.tax!=null&&r.tax>0&&B0(r.tax,a,"Tax",l,u,s),r.discount!=null&&r.discount>0&&B0(-r.discount,a,"Discount",l,u,s);const m=r.bill_pay_info?.bill_payment_method_type.code,h=r.bill_pay_info?.bill_payment_method_type.sub_code,g=r.bill_pay_info?.international_transfer_fee_bearer_payment_method,{internationalCode:I,internationalSubCode:E}=p1(h!=null?$v(h):void 0,g!=null?wv(g):void 0),{tenantState:b,companyState:T}=n,{currentTenantId:O}=b,x=O!=null?b.tenantsById?.[O]?.companyId:void 0,U=Ae(T,x??""),k=U?.company.companyBillPayInfo.payNowCutOffTimeByMethod.ach,C=k!=null&&me().isSameOrBefore(k),B=r.bill_pay_info?.from_account.account_type!=null?m1(y1(r.bill_pay_info?.from_account.account_type)):void 0,J=U?.company.companyInfo.bookCloseDate,L=r.transaction_date?Wl("draft",te(r.transaction_date),J):void 0,R=r.due_date?r.transaction_date?yT("draft",te(r.due_date),te(r.transaction_date),J):te(r.due_date):void 0,q=m!=null&&h!=null?_1(n.billPayConfigState,h1(ST(m),hT(f1($v(h))),B,I!=null?g1(I):void 0,E!=null?S1(E):void 0)):void 0,$=nu(m??""),D=r.bill_pay_info?.outside_zeni_transaction_payment_mode,w=$?{paymentMode:D!=null?v1(D):void 0,paymentDate:r.bill_pay_info?.payment_date!=null?te(r.bill_pay_info?.payment_date):void 0}:void 0;return{recommendedVendorId:e,showVendorGptRecommendationText:i,lastRecommendedVendorName:e!=null?t?.name:void 0,vendor:t,whatForSection:{invoiceNumber:r.invoice_number,billDueDate:R,memo:r.transaction_memo,invoiceDate:L,isInvoiceDateAutoUpdated:!!r.transaction_date&&J!=null&&te(r.transaction_date).isBefore(J),currencyCode:r.currency_code,recipientCurrencyCode:r.recipient_currency_code},updatesByLineId:s,paymentDetailsSection:{paymentTo:void 0,paymentType:q,paymentDate:r.bill_pay_info?.payment_date!=null?te(r.bill_pay_info?.payment_date):te(oo(me().toDate(),[0,6],C?0:1).toISOString()),withdrawFrom:_T(n,r.bill_pay_info?.from_account.account_id??"",r.bill_pay_info?.from_account.account_type??""),internationalTransferFeeBearerPaymentMethod:r.bill_pay_info?.international_transfer_fee_bearer_payment_method!=null?wv(r.bill_pay_info?.international_transfer_fee_bearer_payment_method):void 0},totalAmount:r.amount!=null?co(r.amount,{currencyCode:r.currency_code??"USD",currencySymbol:r.currency_symbol??"$"}):void 0,recipientTotalAmount:r.recipient_total_amount!=null?co(r.recipient_total_amount,{currencyCode:r.recipient_currency_code??"USD",currencySymbol:r.recipient_currency_symbol??"$"}):void 0,isCancelled:!1,toAccountVendorEmail:r.bill_pay_info?.to_account_vendor_email??void 0,isCollectToAccountInfoFromVendorContact:r.bill_pay_info?.is_collect_to_account_info_from_vendor_contact??!1,isRecurring:r.is_recurring??!1,outsideZeniPaymentLocalData:w}},HH=(n,i,r,t,e)=>{const a={};return Object.keys(n).forEach((s=>{switch(s){case"vendor":r!=null&&(a.tentativeVendorName=r,a.tentativeVendorName=r+(i===!0?" - "+t:""),a.currencyInInvoice=t,a.vendorCurrency=e),a.isVendorWithNewCurrency=i,n[s]&&(a.vendor="vendor");break;case"whatForSection":if(n.whatForSection!=null){const o=[];Object.keys(n.whatForSection).forEach((c=>{switch(c){case"invoiceNumber":n.whatForSection?.invoiceNumber!=null&&o.push("invoiceNumber");break;case"invoiceDate":n.whatForSection?.invoiceDate!=null&&o.push("invoiceDate");break;case"billDueDate":n.whatForSection?.billDueDate!=null&&o.push("billDueDate");break;case"memo":n.whatForSection?.memo!=null&&n.whatForSection?.memo!=""&&o.push("memo")}})),o.length>0&&o.push("currency"),a.whatForSectionFields=o}break;case"updatesByLineId":if(n.updatesByLineId!=null){const o={};Object.keys(n.updatesByLineId).forEach((c=>{const d=[],l=n.updatesByLineId[c];l.recipientAmount?.amount&&d.push("amount"),l.lineDescription!=null&&d.push("lineDescription"),l.account?.accountName!=null&&l.account?.accountName.length>0&&d.push("account"),l.class?.className!=null&&l.class?.className.length>0&&d.push("class"),l.billable&&d.push("billable"),o[c]=d})),a.linesFields=o}break;case"paymentDetailsSection":if(n.paymentDetailsSection!=null){const o=[];Object.keys(n.paymentDetailsSection).forEach((c=>{switch(c){case"paymentType":n.paymentDetailsSection?.paymentType!=null&&o.push("paymentType");break;case"paymentDate":n.paymentDetailsSection?.paymentDate!=null&&o.push("paymentDate");break;case"withdrawFrom":n.paymentDetailsSection?.withdrawFrom!=null&&o.push("withdrawFrom");break;case"paymentTo":n.paymentDetailsSection?.paymentTo!=null&&o.push("paymentTo")}})),a.paymentDetailsSectionFields=o}}})),a},B0=(n,i,r,t,e,a)=>{const s=Object.keys(a).length,o=e&&s>0?a[0].class:I1({accounting_class_id:"",accounting_class_name:""}),c=t&&s>0?a[0].account:b1({account_id:"",account_name:"",labels:[]});a[s]={class:o,account:c,amount:co(n,i),recipientAmount:co(n,i),billable:"not_billable",lineDescription:r,isCategoryMiscategorized:!1,isClassMiscategorized:!1,id:`${s}`,platformLineDetailType:"account_based_expense_line_detail",type:"transaction_with_account_and_class_line",isCategoryUpdateSelected:!1,isCategoryFirstTimeAutofilled:o!=null&&!!o.classId,isRetainedCategorySelected:!1,isClassUpdateSelected:!1,isClassFirstTimeAutofilled:c!=null&&!!c.accountId,isRetainedClassSelected:!1,isCategoryOrClassUpdated:!1,updateAllCheckbox:!1}},D0=(n,i,r,t)=>{if(r!=null){const e=ee(t?.transactionById,r);return i||e?.isRecurring===!0?`${n}/${r}/recurring`:`${n}/${r}`}return i?`${n}/recurring`:`${n}`},xT=n=>{const i=n?.method.split("_")[1],r=n?.method.split("_")[2];return{code:i?ST(i):null,name:i==="outside-zeni"?"Outside Zeni":n?.method.replace(/(_depositAccount|_paymentAccount)/g,"")??"",sub_code:r?A1(hT(r)):null}},YH=n=>nu(n.paymentDetailsSection?.paymentType?.method)?n.outsideZeniPaymentLocalData?.paymentDate?.format("YYYY-MM-DD")??null:n.paymentDetailsSection?.paymentDate?.format("YYYY-MM-DD")??null,J0=(n,i)=>{const r=x1(n.vendorReceiveDate,i);return{instance:n.instance,payment_date:r.format("YYYY-MM-DD"),vendor_receive_date:n.vendorReceiveDate.format("YYYY-MM-DD"),vendor_receive_date_notes:n.vendorReceiveDateNotes}},QH=(n,i)=>n?"bill_pay_marked_as_paid":i==="pending_approval"?"bill_pay_sent_for_approval":"bill_pay_updated",WH=n=>{const i={};return n.supportedAccountTypes!=null&&n.supportedAccountTypes.forEach((r=>{n.supportedDynamicFormByTypes[r.type].forEach((t=>{i[r.type]={...i[r.type],[t.name]:""}}))})),i},ZH=n=>({is_applicant_declaration:!0,form_details:n}),XH=n=>{const i=n.cardHolderUser,r=`${i.firstName??""} ${i.lastName??""}`.trim()||i.email||i.userId;return{id:n.id,isChecked:!1,cardName:n.cardName,last4:n.accountLast4,limitAmount:n.limit?.amount??0,limitCadence:n.creditLimitFrequency?.code,owner:{userId:i.userId,displayName:r,roleLabel:n.cardHolderRoles?.titleAtCompany},utilizationAmount:(n.limit?.amount??0)-(n.available?.amount??0)}},w0=n=>n.cardPolicyState.mccCategoriesFetchState==="Completed",$0=(n,i)=>{const r=(e=>CV(e).cards.filter((a=>{return s=a.status?.code,!(s==="closed"||s==="closed_by_customer");var s})).map(XH))(n),t=n.cardPolicyState.mccCategories;return OV({initialData:i,cardsMasterList:r,mccCategories:t,suggestedAllowMerchants:n.cardPolicyState.suggestedAllowMerchants,suggestedBlockMerchants:n.cardPolicyState.suggestedBlockMerchants,suggestedAllowCategories:n.cardPolicyState.suggestedAllowCategories,suggestedBlockCategories:n.cardPolicyState.suggestedBlockCategories})},R0=n=>LL(n.userState,n.userRoleState,n.userListViewState,"cardHolderCandidate").users.map((i=>i.user)).filter((i=>i!=null)),se=n=>n!=null&&n.value!=null&&n.confidence>=KL,ce=(n,i,r)=>{r!=null&&(typeof r=="string"&&r.trim()===""||(n.values[i]=r,n.autoFilledFieldNames.push(i)))},zl=n=>{const i=te(n);if(i.isValid())return i};function eY(n){switch(n){case"bill_pay_setup":return"Bill Pay";case"reimbursement_setup":return"Reimbursements";case"charge_card_setup":return"Cards";case"treasury_setup":return"Treasury";default:return"Checking"}}const tY=n=>{const i=n.realTimeSteps.map((r=>{const t=r.actors.map((e=>({id:e.userId,is_implicit_actor:e.isImplicitActor,type:e.type,sub_type:e.subType,id_type:e.idType})));return{action:r.action,operator:r.operator,step_position:r.stepPosition,step_creator_id:r.stepCreatorId,actors:t}}));return{entity_approval_id:n.entityApprovalId,entity_type:n.entityType,description:n.description,real_time_steps:i}},aY=(n,i,r,t,e)=>({merchant:t!=null?{id:t.id,name:t.name}:void 0,description:r.transaction_memo,lineDetail:{account:tt(n,t?.accountId??"","account_list"),class:e!=null?rr(i,{classId:e,reportId:"class_list"}):void 0},transactionDate:te(r.transaction_date),amount:r.amount,currencyCode:r.currency_code??"USD",currencySymbol:r.currency_symbol??"$",recommendations:[],isCategoryUpdateSelected:!1,isCategoryFirstTimeAutofilled:!1,isRetainedCategorySelected:!1}),rY=n=>{const i=[],r=n.type==="mileage"?n.mileage:n.outOfPocket;return Object.keys(r).forEach((t=>{switch(t){case"merchant":i.push("merchant");break;case"amount":r.amount!==0&&i.push("amount");break;case"transactionDate":i.push("transactionDate");break;case"description":r.description!==""&&i.push("memo");break;case"lineDetail":r.lineDetail?.account?.accountId!=null&&i.push("account")}})),i},nY=(n,i)=>i!=null&&n.type==="out_of_pocket"&&n.merchant!=null?void 0:i,sY={transaction_type:"reimbursement",reimbursement_provider:"zeni"},oY=n=>{const i={from_account:{account_type:"treasury_account"},to_account:{account_type:"treasury_account"},amount:n.amount.amount,currency_code:n.amount.currencyCode,currency_symbol:n.amount.currencySymbol};return n.fromAccount&&n.fromAccount?.accType!=="treasuryAccount"?i.from_account={account_id:n.fromAccount.id,account_type:Ve(n.fromAccount.accType)??""}:n.toAccount&&n.toAccount?.accType!=="treasuryAccount"&&(i.to_account={account_id:n.toAccount.id,account_type:Ve(n.toAccount.accType)??""}),i},iY=n=>{const i=xT(n.paymentType);return{to_bank_account_id:n.paymentToAccountId,vendor_id:n.vendorId,amount:n.amount.amount,payment_method_type:i.code,payment_method_sub_type:i.sub_code,source_deposit_account_id:n.withdrawFrom?.id,payment_date:n.paymentDate.format("YYYY-MM-DD"),file_id:n.receiptFileId}},M0=(n,i,r=!1)=>{const{subscriptionId:t,subscriptionPlanId:e,subscriptionAddOnIds:a,subscriptionCouponIds:s,shouldProrate:o,applyEndOfTerm:c,invoiceImmediately:d,subscriptionEstmiate:l}=n,u={tenant_id:i,subscription_id:t,subscription_plan_id:e,subscription_coupon_ids:s,subscription_addon_ids:a,invoice_immediately:d,apply_end_of_term:c,should_prorate:o};return r===!1&&(u.estimate_query_hash=l?.estimateQueryHash),u},V0=(n,i,r=!1)=>{const{subscriptionPlanId:t,subscriptionCouponIds:e,subscriptionAddOnIds:a,invoiceImmediately:s,subscriptionEstmiate:o,startDate:c}=n,d={tenant_id:i,subscription_plan_id:t,subscription_coupon_ids:e,subscription_addon_ids:a,invoice_immediately:s};return c!=null&&(d.start_date=c.format("YYYY-MM-DD")),r===!1&&(d.estimate_query_hash=o?.estimateQueryHash),d},cY=(n,i,r)=>{const t={...lY(n)};return i.postAndGetJSON(`${i.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tags`,t).pipe(y((e=>dY(e,r))),v((e=>p(Zl({fetchState:"Error",error:f("Unexpected Error","Create Tag REST API call errored out "+JSON.stringify(e)),tagsId:[]})))))},dY=(n,i)=>P(n)&&n.data!=null&&n.data.tags.length>0?_([tn(n.data.tags),Zl({fetchState:"Completed",tagsId:n.data.tags.map((r=>r.tag_id))}),cj({tagId:n.data.tags[0].tag_id,taskId:i})]):_([Zl({fetchState:"Error",error:n.status,tagsId:[]}),N({messageSection:"create_tag",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:n.status.message}]})]),lY=n=>({name:n});function uY(n){return{cannedResponseId:n.canned_response_id,content:n.content,createTime:te(n.create_time),createdBy:n.created_by,isDeleted:n.is_deleted,name:n.name,updateTime:te(n.update_time)}}const pY=(n,i,r)=>{const t=i.value,e={...yY(t,n)};return r.putAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${n}`,e).pipe(y((a=>mY(a,n))),v((a=>p(Xl({fetchState:"Error",taskId:n,error:f("Unexpected Error","Archive Task REST API call errored out"+JSON.stringify(a))})))))},mY=(n,i)=>{if(P(n)&&n.data!=null&&n.data.tasks.length>0){const r=[Ke(n.data.tasks),lo(i),Ct(),Xl({fetchState:"Completed",taskId:i})];return _(r)}return _([Xl({fetchState:"Error",taskId:i,error:n.status}),N({messageSection:"archive_task",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:n.status.message}]})])},yY=(n,i)=>{const{taskState:r}=n;return{sync_token:ar(r,i)?.syncToken??"",is_archived:!0}},_Y=(n,i)=>({name:n.name,assignees:n.assignee,description:n.description,priority:n.priority,status:n.status,tags:n.tagIds,time_spent:uo(n.timeSpent),group_assignees:n.groupAssignees,parent_task_id:n.parentTaskId,task_group_ids:i,due_date:n.dueDate?.format("YYYY-MM-DD")??null}),hY=(n,i,r)=>{const{taskDetailState:t,taskState:e}=n,a=i!=null?ar(e,i)?.syncToken??"":"",s=(i!=null?t.editTaskStateById[i]:t.newTaskState).taskDetailLocalData;return{name:s.name,assignees:s.assignee,description:s.description,due_date:s.dueDate?.format("YYYY-MM-DD")??null,priority:s.priority,status:s.status,tags:s.tagIds,file_ids:s.fileIds,type:s.type.code,recurring_end_date:s.type.code==="recurring"?s.savedRecurringEndDate?.format(re)??null:null,recurring_frequency:s.type.code==="recurring"?s.recurringFrequency:null,recurring_start_date:s.type.code==="recurring"?s.recurringStartDate?.format(re)??null:null,recurring_days_of_week:s.type.code==="recurring"&&s.recurringFrequency==="semi_weekly"?s.recurringDaysOfWeek??[]:[],sync_token:a,task_group_ids:r,time_spent:uo(s.timeSpent),group_assignees:s.groupAssignees,...i==null?{is_private:s.isPrivate??!1}:{}}},SY=n=>te(n).format(kj),gY=(n,i,r)=>r.postAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${n}/snooze`,{snoozed_until:i}).pipe(y((t=>fY(t,n,i))),v((t=>p(nr({fetchState:"Error",taskId:n,error:f("Unexpected Error","Snooze Task REST API call errored out: "+JSON.stringify(t))}))))),fY=(n,i,r)=>{if(P(n)&&n.data!=null&&n.data.tasks.length>0){const t=[Ke(n.data.tasks),lo(i),Ct(),nr({fetchState:"Completed",taskId:i}),N({messageSection:"snooze_task",messageText:"success",type:"success",variables:[{variableName:"_snoozed_until_",variableValue:SY(r)}]})];return _(t)}return _([nr({fetchState:"Error",taskId:i,error:n.status}),N({messageSection:"snooze_task",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:n.status.message}]})])},vY=(n,i)=>i.deleteAndGetJSON(`${i.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${n}/snooze`).pipe(y((r=>IY(r,n))),v((r=>p(nr({fetchState:"Error",taskId:n,error:f("Unexpected Error","Unsnooze Task REST API call errored out: "+JSON.stringify(r))}))))),IY=(n,i)=>{if(P(n)&&n.data!=null&&n.data.tasks.length>0){const r=[Ke(n.data.tasks),lo(i),Ct(),nr({fetchState:"Completed",taskId:i}),N({messageSection:"unsnooze_task",messageText:"success",type:"success"})];return _(r)}return _([nr({fetchState:"Error",taskId:i,error:n.status}),N({messageSection:"unsnooze_task",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:n.status.message}]})])},bY=n=>{const i={};return n.status!=null&&(i.status=n.status.code),n.priority!=null&&(i.priority=n.priority.code),n.assignees!=null&&(i.assignees=n.assignees),n.groupAssignees!=null&&(i.group_assignees=n.groupAssignees),n.dueDate!=null&&(i.due_date=n.dueDate.format(re)),n.tagIds!=null&&(i.tags=n.tagIds),n.timeSpent!=null&&(i.time_spent=uo(n.timeSpent.replace(/\D/g,""))),n.isArchived!=null&&(i.is_archived=n.isArchived),n.isDeleted!=null&&(i.is_deleted=n.isDeleted),"snoozedUntil"in n&&(i.snoozed_until=n.snoozedUntil!=null?n.snoozedUntil.toISOString():null,i.is_snooze_notification_sent=!1,n.snoozedUntil==null&&(i.snoozed_by=null,i.snoozed_at=null)),i},EY=(n,i)=>{const{tagState:r}=n,t=i.tagIds.map((e=>ee(r.tagByID,e))).filter((e=>e!=null)).map((e=>e.tagId));return{task_id:i.id,name:i.name,assignees:i.assignees,description:i.description,group_assignees:i.groupAssignees,is_archived:i.isArchived,is_deleted:i.isDeleted,snoozed_until:i.snoozedUntil!=null?i.snoozedUntil.toISOString():null,due_date:i.dueDate!=null?i.dueDate.format(re):null,priority:i.priority.code,status:i.status.code,tags:t,type:i.type.code,file_ids:i.fileIds,recurring_end_date:i.recurringEndDate!=null?i.recurringEndDate.format(re):null,recurring_frequency:i.recurringFrequency??null,recurring_start_date:i.recurringStartDate!=null?i.recurringStartDate.format(re):null,task_group_ids:i.taskGroupIds,time_spent:uo(i.timeSpent)}},TY=n=>({transaction_id:n.id}),PY=(n,i,r,t,e,a,s,o,c)=>{const d=Object.assign({},i);if(d.memo=n.memo??"",d.documentId=n.documentId??d.documentId,o!=null&&o.length>0){const m=new Set(o);d.lines=d.lines?.filter((h=>!m.has(h.id)))}const l={};for(const m in n.updatesByLineId){const h=n.updatesByLineId[m],g=d.lines?.map((I=>{if(I.id===m){const E=Object.assign({},I);if(E.lineDescription=h.lineDescription??"",h.amount!=null&&(E.amount=h.amount),h.class!=null&&(E.class=h.class),h.account!=null&&(E.account=h.account),h.project!=null&&(E.project=h.project),h.customer!=null?E.customer=h.customer:E.customer=void 0,h.vendor!=null?E.vendor=h.vendor:E.vendor=void 0,h.postingType!=null){const T=E;T.postingType=h.postingType,h.postingTypeName!=null&&(T.postingTypeName=h.postingTypeName)}h.recommendation!=null&&(l[I.id]=h.recommendation);const b=r?.find((T=>T.lineId===I.id));return b&&(E.cotViewingFlags={vendor:b.vendor,category:b.category,class:b.class,lineId:b.lineId}),E}return I}));d.lines=g}if(c!=null&&c.length>0){const m=c.map(NY);d.lines=[...d.lines??[],...m]}let u;return d.recommendations=l,W0(d)?(u=Z0(d),!t||d.type!=="invoice"&&d.type!=="credit_memo"||n.project==null||(u={...u,accounting_project_id:n.project.projectId,...n.project.accountingProviderProjectId!=null?{accounting_project_integration_id:n.project.accountingProviderProjectId}:{},...n.project.projectName?{accounting_project_name:n.project.projectName}:{}})):u=sn(d)?s!=null&&s.type==="customer"?X0(d,a):eT(d,e):tT(d)?aT(d):rT(d),nT(u,d)},AY=(n,i,r,t)=>{if(!t&&(sn(n)||to(n.type)!=null)){const e=(n.lines??[]).filter((a=>a.type==="transaction_with_account_and_class_line"||a.type==="journal_entry_transaction_line"||a.type==="transaction_with_product_or_service_line"));if(r&&e.some((a=>(a.class?.classId??"")==="")))return[];if(to(n.type)!=null&&e.some((a=>{const s=a;return s.vendor==null&&s.customer==null})))return[]}return(n.lines??[]).filter((e=>{if(e.type!=="transaction_with_account_and_class_line"&&e.type!=="journal_entry_transaction_line"&&e.type!=="transaction_with_product_or_service_line")return!1;const a=e,s=!K0(i,a.account?.qboId),o=!r||(a.class?.classId??"")!=="",c=(a.amount?.amount??0)!==0,d=!(e.type==="journal_entry_transaction_line"||to(n.type)!=null)||a.vendor!=null||a.customer!=null;return s&&o&&c&&d})).map((e=>e.id)).filter(Boolean)},L0={accountDescription:"",accountId:"",accountName:"",labels:[]},NY=n=>n.type==="journal_entry_transaction_line"?{...n,id:"",type:"journal_entry_transaction_line",platformLineDetailType:n.platformLineDetailType??"journal_entry_line_detail",account:n.account??L0,billable:n.billable??"not_billable",isCategoryMiscategorized:!1,isClassMiscategorized:!1,lineTransactionType:n.lineTransactionType??"journal_entry",postingType:n.postingType??"debit",postingTypeName:n.postingTypeName!=null&&n.postingTypeName!==""?n.postingTypeName:(n.postingType??"debit").charAt(0).toUpperCase()+(n.postingType??"debit").slice(1)}:{...n,id:"",type:"transaction_with_account_and_class_line",platformLineDetailType:n.platformLineDetailType??"account_based_expense_line_detail",account:n.account??L0,billable:n.billable??"not_billable",isCategoryMiscategorized:!1,isClassMiscategorized:!1},OY=n=>{const i=[];let r;for(r in n){const t=n[r],e={recommendations:sT(t.recommendations),entity_id:t.entityId,entity_type:t.entityType,is_bulk_update:t.isBulkUpdate,updated_entity_id:t.updatedEntityId};t.entityType==="vendor"&&t.vendorName!=null&&(e.vendor_name=t.vendorName),i.push(e)}return i};function F0(n){let i=te(X(n.start));const r=te(X(n.end));i=i.set("date",1);const t=Math.ceil(r.diff(i,"month",!0)),e=[];if(t>0||t==0){let a=i.clone().set("date",1);for(let s=0;s<t-1;++s){const o=a.daysInMonth(),c={day:1,month:a.month()+1,year:a.year()},d={day:o,month:a.month()+1,year:a.year()};e.push({start:c,end:d}),a=a.add(1,"month")}e.push({start:{day:a.date(),month:a.month()+1,year:a.year()},end:{day:r.date(),month:r.month()+1,year:r.year()}})}else console.error(`Invalid time period ${JSON.stringify(n)}`);return e}const CY=(n,i)=>{const r=[],t={startDate:te(i.data?.report.data_available_start_date),endDate:te(i.data?.report.data_available_end_date)};return r.push(kG(n.zeniId,i.data?.report.expense)),r.push(BG({id:n.id,name:n.name},t,i.data?.report.expense,i.data?.report.insights)),r.push(gT(t)),r},xY=(n,i)=>{const r=[],t={startDate:te(i.data?.report.data_available_start_date),endDate:te(i.data?.report.data_available_end_date)};return r.push(DG(n,t,i.data?.report.income,i.data?.report.insights)),r.push(gT(t)),r},UY=n=>[...n].sort(((i,r)=>(i.create_time!=null?te(i.create_time):me()).isBefore(r.create_time!=null?te(r.create_time):me())?1:-1))?.[0],kY=(n,i)=>{switch(n){case"manager":return{is_manager_candidate:!0};case"cardHolderCandidate":return{is_card_holder_candidate:!0,is_include_cards_count:!0};case"taskManagerCandidate":return{is_task_manager_candidate:!0};case"cardAdmin":return{is_card_admin_candidate:!0};default:return{is_zeni:i}}},BY=n=>{if(n==="vendorsTab")return"vendor_list"},DY=n=>{switch(n){case"updateTo":return"recommended_global_merchant_name";case"status":return"status";case"ytd":return"year_to_date_spend";default:return"vendor_name"}},Hs=n=>n.map((i=>JY(i))),JY=n=>({vendor_id:n.vendor_id,vendor_name:n.vendor_name,logo:n.logo,qbo_id:n.qbo_id,currency_code:n.currency_code,currency_symbol:n.currency_symbol,transaction_attachments:n.transaction_attachments}),Ys=n=>{const i=[];return n.forEach((r=>{r.last_updated_vendor_name_by_user!=null&&i.push(TT(r.last_updated_vendor_name_by_user))})),i},Qs=n=>{const i=[];return n.forEach((r=>{const t=r.recommendations[0]?.global_merchants.filter((e=>e.global_merchant_id!=null));wY(t,i)})),i},wY=(n,i)=>{n.forEach((r=>i.push(r)))},$Y=(n,i,r,t,e,a,s)=>{const o=s?.globalMerchantId!=null?nn(au(s),["create_time","update_time"]):s!=null?nn(PT(s),["create_time","update_time"]):null;return{vendor_name:n,qbo_id:a??null,selected_global_merchant:t===!0?null:o,recommendations:so(i,r),is_employee:t,is_local_contractor:e}},RY=(n,i,r)=>{const t=Array({globalMerchants:ao(i,n.recommendationIds)}),e=Array({globalMerchants:n.recommendedNonExistingGlobalMerchants});let a=eu(i,n.selectedVendorId);e.length>0&&n.selectedVendorId===e[0].globalMerchants[0]?.globalMerchantName&&(a=e[0].globalMerchants[0]);const s=Ce(r,n.selectedVendorId);let o="";if(n.vendorRenamedText!=null)o=n.vendorRenamedText;else if(s!=null)o=s.name;else{const c=eu(i,n.selectedVendorId);o=c!=null?c?.globalMerchantName:e[0]?.globalMerchants[0]?.globalMerchantName??""}return{vendorName:o,selectedGlobalMerchant:a,recommendations:t,nonExistingRecommendations:e}},MY=(n,i,r,t,e)=>({tenant_name:n.tenantName,merchant_type:"vendor",tenant_id:n.tenantId,selected_global_merchant:t!=null?nn(au(t),["create_time","update_time"]):e!=null?lz(e):null,recommendations:i,merchant_name:r}),VY=n=>{const i=[];return n.forEach((r=>{r.last_updated_merchant_name_by_user!=null&&i.push(TT(r.last_updated_merchant_name_by_user))})),i},LY=n=>{let i=[];return n.forEach((r=>{i=[...new Set([...i,...AT(r.recommendations)])]})),i},FY=n=>{switch(n){case"originalVendor":return"original_vendor";case"requestedVendor":return"requested_vendor";case"recommended":return"recommended_global_merchant_name";default:return"tenant_name"}},qY=(n,i)=>({tenant_name:n.tenantName,merchant_type:"vendor",tenant_id:n.tenantId,review_status:"review_rejected",recommendations:i,merchant_name:n.tenantMerchantName}),Kl=n=>N({messageSection:"oauth_consent_approve",messageText:"failed",type:"error",variables:[{variableName:"__reason__",variableValue:n}]}),jY=[(n,i,r)=>n.pipe(S(WM.match),y((t=>{const{companyId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{is_bill_pay_tos_accepted:!0}).pipe(y((a=>{if(P(a)&&a.data!=null){const s=[V({users:a.data.users}),H(a.data.user_roles),Q({payload:a.data.companies,schema:{}}),xv()];return _(s)}return p(vs(a.status),N({messageSection:"bill_pay_accept_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),v((a=>p(vs(f("Unexpected Error","Accept Bill Pay Terms errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(ZM.match),y((t=>{const{companyId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{is_unit_migration_tos_accepted:!0}).pipe(y((a=>{if(P(a)&&a.data!=null){const s=[V({users:a.data.users}),H(a.data.user_roles),Q({payload:a.data.companies,schema:{}}),xv()];return _(s)}return p(vs(a.status),N({messageSection:"bill_pay_accept_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),v((a=>p(vs(f("Unexpected Error","Accept Bill Pay Terms errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(NL.match),y((t=>{const{companyId:e,enableChargeCard:a,chargeCardSetupViewType:s,isEarlyPayEnabled:o,isCompanyInterestedInChargeCard:c}=t.payload;let d;switch(s){case"charge_cards":d={is_charge_cards_tos_accepted:!0,...a&&{is_charge_cards_enabled:!0,...o&&{is_auto_pay_enabled:!0}}};break;case"charge_cards__debit_cards":d={is_charge_cards_tos_accepted:!0,is_debit_cards_tos_accepted:!0,...a&&{is_charge_cards_enabled:!0,is_debit_cards_enabled:!0,...o&&{is_auto_pay_enabled:!0}}};break;case"debit_cards":d={is_debit_cards_tos_accepted:!0,...a&&{is_debit_cards_enabled:!0},...c&&{is_company_interested_in_charge_card:!0}};break;default:d={}}return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,d).pipe(y((l=>{if(M(l)&&l.data!=null){const u=[V({users:l.data.users}),H(l.data.user_roles),Q({payload:l.data.companies,schema:{}}),OL()];return _(u)}return p(SI(l.status),N({messageSection:"charge_card_accept_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]}))})),v((l=>p(SI(f("Unexpected Error","Accept Charge Card Terms errored out"+JSON.stringify(l)))))))}))),(n,i,r)=>n.pipe(S(sq.match),y((t=>{const{userRoleId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user-roles/${e}`,{is_reimbursement_tos_accepted:!0}).pipe(y((a=>{if(P(a)&&a.data!=null){const s=[oq(a.data.user_roles[0]),sb()];return _(s)}return p(Bs(a.status),N({messageSection:"reimbursement_accept_employee_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),v((a=>p(Bs(f("Unexpected Error","Accept Employee Remi Terms errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(oD.match),y((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/config`;return r.putAndGetJSON(t,{is_invoicing_tos_accepted:!0}).pipe(A((e=>P(e)&&e.data!=null?p(Mi(e.data),iD(),Tt()):p(Dh(e.status)))),v((e=>p(Dh(f("Unexpected Error","Accept invoicing terms REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(CP.match),y((t=>{const{userRoleId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user-roles/${e}`,{is_master_tos_accepted:!0}).pipe(y((a=>{if(P(a)&&a.data!=null){const s=[H(a.data.user_roles),xP(a.data.user_roles[0]),UP()];return _(s)}return p(Ru(a.status))})),v((a=>p(Ru(f("Unexpected Error","Accept Master TOS errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(iq.match),y((t=>{const{companyId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{is_reimbursement_tos_accepted:!0}).pipe(y((a=>{if(P(a)&&a.data!=null){const s=[V({users:a.data.users}),H(a.data.user_roles),Q({payload:a.data.companies,schema:{}}),sb()];return _(s)}return p(Bs(a.status),N({messageSection:"reimbursement_accept_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),v((a=>p(Bs(f("Unexpected Error","Accept Remi Terms errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(hq.match),y((t=>{const{companyId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{is_treasury_accounts_tos_accepted:!0}).pipe(y((a=>{if(P(a)&&a.data!=null){const s=[V({users:a.data.users}),H(a.data.user_roles),Q({payload:a.data.companies,schema:{}}),Sq()];return _(s)}return p(lb(a.status),N({messageSection:"treasury_accept_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),v((a=>p(lb(f("Unexpected Error","Accept Treasury Terms errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(jq.match),y((t=>{const{companyId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{is_deposit_accounts_tos_accepted:!0}).pipe(y((a=>{if(P(a)&&a.data!=null){const s=[V({users:a.data.users}),H(a.data.user_roles),Q({payload:a.data.companies,schema:{}}),Gq()];return _(s)}return p(Pb(a.status),N({messageSection:"zeni_account_accept_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),v((a=>p(Pb(f("Unexpected Error","Accept Zeni Account Terms errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(nw.match),y((t=>{const{companyId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{is_onboarding_ai_activation_viewed:!0}).pipe(y((a=>{if(P(a)&&a.data!=null){const s=[Q({payload:a.data.companies,schema:{}}),sw()];return _(s)}return p(ig(a.status))})),v((a=>p(ig(f("Unexpected Error","Acknowledge - Onboarding AI Activation Viewed errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(ow.match),y((t=>{const{companyId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{is_onboarding_ai_finance_team_acknowledged:!0}).pipe(y((a=>{if(P(a)&&a.data!=null){const s=[Q({payload:a.data.companies,schema:{}}),iw()];return _(s)}return p(N({messageSection:"onboarding_customer_view_complete",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}),cg(a.status))})),v((a=>p(cg(f("Unexpected Error","Acknowledge - Onboarding AI Finance Team errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(uN.match),y((t=>{const{type:e,paymentSourceType:a,setupIntentId:s}=t.payload,o={...NK({type:e,processor_token:s,payment_source_type:a})};return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscriptions/payment-sources`,o).pipe(y((c=>P(c)&&c.data?_([Ao({fetchState:"Completed",paymentSources:c.data.payment_sources}),N({messageSection:"add_card_payment_source",messageText:"success",type:"success"}),No()]):_([Ao({fetchState:"Error",error:c.status}),N({messageSection:"add_card_payment_source",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:"Card could not be linked!"}]})]))),v((c=>p(Ao({fetchState:"Error",error:f("Unexpected Error","Add Card Payment Source API call errored out "+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(EB.match),y((t=>{const{amount:e,currencyCode:a,customerId:s,description:o}=t.payload,c=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/customers/${encodeURIComponent(s)}/promotional-credits`,d={amount:e,description:o};return a!=null&&a!==""&&(d.currency_code=a),r.postAndGetJSON(c,d).pipe(y((l=>P(l)&&l.data!=null?[TB(),es({id:s})]:p(ph(l.status)))),v((l=>p(ph(f("Unexpected Error","Add promotional credits REST API call errored out "+JSON.stringify(l)))))))}))),(n,i)=>n.pipe(y((r=>{if(!po.match(r))return F;const t=i.value,e=t.cardPolicyState.policyDocumentExtraction,a=e.extractedRules;if(a==null)return F;const s=(l=>({allowedEntity:{categoryCodes:l.allowedEntity.categoryCodes??[],merchantNames:l.allowedEntity.merchantNames??[]},blockedEntity:{categoryCodes:l.blockedEntity.categoryCodes??[],merchantNames:l.blockedEntity.merchantNames??[]},confidenceScore:l.confidenceScore,policyName:l.policyName,requiredReceiptThreshold:l.requiredReceiptThreshold,transactionLimit:l.transactionLimit}))(a),o=(l=>l.cardPolicyState.vendorSearch.vendors.map((u=>fV(u.name,!1))))(t),c=(l=>l.cardPolicyState.mccCategories.map((u=>vV(IV(u),!1))))(t),d={extracted:s,vendorSearchOptions:o,categorySearchOptions:c};return e.aiCfoAnswerId!=null?p(SV(d)):p(gV(d))}))),(n,i,r)=>n.pipe(S(Tz.match),rt((t=>{const{userId:e,zeniSessionId:a,tenantId:s,clientId:o,redirectUri:c,codeChallenge:d,codeChallengeMethod:l,state:u,responseType:m}=t.payload,h={"zeni-user-id":e,"zeni-tenant-id":s};return a!=null&&(h["zeni-session-id"]=a),r.postJSON(`${r.apiEndPoints.authMicroServiceBaseUrl}/oauth/authorize/approve`,{client_id:o,redirect_uri:c,code_challenge:d,code_challenge_method:l,state:u,response_type:m,tenant_id:s},h).pipe(xa((g=>_(g.json()).pipe(y((I=>{if(!g.ok){const T=I,O=T?.error??T?.message??T?.status?.message??`Authorization failed (${g.status})`;return _([Ol(f(O)),Kl(O)])}const E=I,b=E?.redirect_url??E?.data?.redirect_url;if(b==null||b===""){const T="No redirect URL returned from authorization server";return _([Ol(f(T)),Kl(T)])}return p(Pz({redirectUrl:b}))}))))),v((g=>{const I="OAuth approve request failed: "+(g instanceof Error?g.message:JSON.stringify(g));return _([Ol(f(I)),Kl(I)])})))}))),(n,i,r)=>n.pipe(S(CM.match),y((t=>{const{billId:e,approvalType:a,description:s}=t.payload,o={approval_status:a,is_include_entity_approval:!0,description:s};return r.putAndGetJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions/${e}/approval-status`,o).pipe(y((c=>{if(P(c)&&c.data!=null){const d=c.data.entity_approvals.map((l=>l.entity_approval_id));return _([V({users:c.data.users??[]}),At(c.data?.entity_approvals),xM(e,d),N({messageSection:a==="approved"?"bill_pay_approved":"bill_pay_rejected",messageText:"success",type:"success"})])}return p(rv(e,c.status),N({messageSection:"bill_pay_approved",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}))})),v((c=>p(rv(e,f("Unexpected Error","Approve Or Reject Bill errored out"+JSON.stringify(c)))))))}))),(n,i,r)=>n.pipe(S(XM.match),y((t=>{const{approvalType:e,description:a}=t.payload,{billsBulkActionViewState:s}=i.value,o=(function(c,d,l){const u=c.map((m=>({entity_id:m,request_data:{approval_status:d,is_include_entity_approval:!0,description:l??""}})));return{operation_type:d==="approved"?"approve":"reject",operations:u}})(s.billsSelectedForBulkAction,e,a);return r.putAndGetJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bulk/bills/transactions`,o).pipe(y((c=>{if(M(c)){const d=[],l=c.data?.total_operations_processing??0;return d.push(Bc({billsProcessing:l,refreshTime:c.data?.hard_refresh_after_sec??0})),d.push(Dc(c.data?.operations??[])),l>0&&d.push(N({messageSection:"bill_pay_bulk_submit",messageText:"success",type:"success",variables:[{variableName:"_count_",variableValue:l.toString()},{variableName:"_bill_",variableValue:l>1?"bills":"bill"},{variableName:"_action_",variableValue:e}]})),_(d)}return p(ja(c.status),N({messageSection:"bill_pay_bulk_submit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}))})),v((c=>p(ja(f("Unexpected Error","Bill bulk action REST API call errored out "+JSON.stringify(c)))))))}))),(n,i,r)=>n.pipe(S(JF.match),y((t=>{const{reimbursementId:e,approvalType:a,description:s}=t.payload,o={approval_status:a,is_include_entity_approval:!0,description:s};return r.putAndGetJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/transactions/${e}/approval-status`,o).pipe(y((c=>{if(P(c)&&c.data!=null){const d=c.data.entity_approvals.map((l=>l.entity_approval_id));return _([V({users:c.data.users??[]}),At(c.data?.entity_approvals),wF(e,d),N({messageSection:a==="approved"?"reimbursement_approved":"reimbursement_rejected",messageText:"success",type:"success"})])}return p(FI(e,c.status),N({messageSection:a==="approved"?"reimbursement_approved":"reimbursement_rejected",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}))})),v((c=>p(FI(e,f("Unexpected Error","Approve Or Reject Reimbursement errored out"+JSON.stringify(c)))))))}))),(n,i,r)=>n.pipe(S(cq.match),y((t=>{const{approvalType:e,description:a}=t.payload,{remisBulkActionViewState:s}=i.value,o=(function(c,d,l){const u=c.map((m=>({entity_id:m,request_data:{approval_status:d,is_include_entity_approval:!0,description:l??""}})));return{operation_type:d==="approved"?"approve":"reject",operations:u}})(s.remisSelectedForBulkAction,e,a);return r.putAndGetJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bulk/reimbursements/transactions`,o).pipe(y((c=>{if(M(c)){const d=[],l=c.data?.total_operations_processing??0;return d.push(Fd({remisProcessing:l,refreshTime:c.data?.hard_refresh_after_sec??0})),d.push(qd(c.data?.operations??[])),l>0&&d.push(N({messageSection:"reimbursement_bulk_submit",messageText:"success",type:"success",variables:[{variableName:"_count_",variableValue:l.toString()},{variableName:"_report_",variableValue:l>1?"reports":"report"},{variableName:"_action_",variableValue:e}]})),_(d)}return p(Ka(c.status),N({messageSection:"reimbursement_bulk_submit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}))})),v((c=>p(Ka(f("Unexpected Error","Remi Approve or Reject bulk action REST API call errored out "+JSON.stringify(c)))))))}))),(n,i,r)=>n.pipe(S(iz.match),y((t=>{const{merchantId:e}=t.payload,{globalMerchantState:a,vendorGlobalReviewViewState:s}=i.value,{vendorGlobalByMerchantId:o}=s,c=cz(i.value).vendorGlobalReviewData.find((g=>g.merchant.tenantMerchantId===e)),d=o[e].vendorGlobalReviewViewLocalData,l=d!=null&&d.selectedMerchantId!=null?eu(a,d.selectedMerchantId):void 0;let u,m=l?.globalMerchantName;const h=FE(a,qE(d.tenantId,e));if(m!=null||d.currentSelection!=="recommendedFirst"&&d.currentSelection!=="recommendedSecond"||(d.currentSelection==="recommendedFirst"?(m=c?.recommendations[0].globalMerchantName,u=c?.recommendations[0]):d.currentSelection==="recommendedSecond"&&(m=c?.recommendations[1].globalMerchantName,u=c?.recommendations[1])),d!=null&&m!=null&&h!=null){const g=Array({globalMerchants:ao(a,d.recommendationIds)}),I=Array({globalMerchants:d.recommendedNonExistingGlobalMerchants}),E=so(g,I),b={...MY(h,E,m,l,u)};return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/reviews/global-merchant-list/${e}`,b).pipe(y((T=>{const O=h.tenantMerchantName===m;if(M(T)&&m!=null){const x=O?[{variableName:"_merchant_name_",variableValue:m}]:[{variableName:"_original_merchant_name_",variableValue:h.tenantMerchantName},{variableName:"_approved_merchant_name_",variableValue:m}],U=[dz(e),N({messageSection:O?"approve_original_merchant":"approve_global_merchant",messageText:"success",type:"success",variables:x})];return _(U)}return T.status.code===409?p(Pl({merchantId:e,status:T.status})):p(Pl({merchantId:e,status:T.status}),N({messageSection:O?"approve_original_merchant":"approve_global_merchant",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:T.status.message}]}))})),v((T=>p(Pl({merchantId:e,status:f("Unexpected Error","Approve Vendor Global Review REST API call errored out"+JSON.stringify(T))})))))}return p([])}))),(n,i,r)=>n.pipe(S(lV.match),y((t=>{const e=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/policy-templates/${e}`).pipe(y((a=>{if(M(a)){const s=[uV(e),Zc({fetchState:"Completed",templateId:e})];return _(s)}return p(Zc({fetchState:"Error",error:a.status,templateId:e}))})),v((a=>p(Zc({fetchState:"Error",error:f("Unexpected Error","Archive card-policy REST API call errored out"+JSON.stringify(a)),templateId:e})))))}))),(n,i,r)=>n.pipe(S(gj.match),y((t=>pY(t.payload.taskId,i,r)))),(n,i,r)=>n.pipe(S(y_.match),A((t=>{const{period:e}=t.payload,a=i.value,s=Y(a),o=a.expenseAutomationViewState.selectedPeriodByTenantId[s.tenantId],c=a.expenseAutomationTransactionsViewState.transactionCategorizationView.review.uiState,d=c.pageToken,l=u=>{const m={start_date:X(e.start),end_date:X(e.end),auto_categorized:!1,sort_by:Ii(c.sortKey),sort_order:c.sortOrder==="ascending"?"asc":"desc",page_token:u,page_size:25,search_text:c.searchString,transaction_group:a.expenseAutomationTransactionsViewState.selectedTransactionGroup};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/expense-automation/transactions?query=${encodeURIComponent(JSON.stringify(m))}`)};return l(null).pipe(DU((u=>{if(!P(u)||u.data==null)return F;const m=u.data.next_page_token??null;return m==null||m===d?F:l(m)})),JU(((u,m)=>{if(!P(m)||m.data==null)return{...u,failureStatus:m.status};const h=m.data.next_page_token??null;return{...u,allTransactions:[...u.allTransactions,...m.data.transactions],finalPageToken:h,finalStatus:m.status,totalCount:m.data.total_count}}),{allTransactions:[],failureStatus:null,finalPageToken:null,finalStatus:null,totalCount:0}),y((u=>{if(u.failureStatus!=null||u.finalStatus==null)return p(Fn({selectedPeriod:o,selectedTab:Wa,status:u.failureStatus??f("Unexpected Error","background refetch review tab received error response")}));const m=u.allTransactions.map((g=>g.transaction_id)),h=__(u.allTransactions);return _([xe(u.allTransactions,(g=>g.transaction_id),"merge"),h_({selectedTab:Wa,uiState:{pageToken:u.finalPageToken}}),Ei(Wa,m,o,!1,u.finalPageToken,u.totalCount,h,!0),qn({selectedPeriod:o,selectedTab:Wa,totalCount:u.totalCount}),S_({refreshViewInBackground:!0,selectedTab:Wa,status:u.finalStatus})])})),v((u=>p(Fn({selectedPeriod:o,selectedTab:Wa,status:f("Unexpected Error","background refetch review tab REST API call errored out"+JSON.stringify(u))})))))}))),(n,i,r)=>n.pipe(S(_l.match),A((t=>{const{taskIds:e,updates:a,groupId:s}=t.payload,o=bY(a);s!=null&&(o.task_group_ids=[s]);const c={task_ids:e,updates:o};return r.putAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/bulk-update`,c).pipe(y((d=>{if(P(d)&&d.data!=null){const l=a.isArchived===!0||a.isDeleted===!0||"snoozedUntil"in a;return p(Ke(d.data.tasks),nE({taskIds:e,groupId:s,removeFromList:l}),Ct())}return p(sE({error:d.status}))})),v((d=>p(sE({error:f("Unexpected Error","Bulk update task list REST API call errored out"+JSON.stringify(d))})))))}))),(n,i)=>n.pipe(S((r=>Nr.match(r)||Ca.match(r))),y((r=>{const{batchId:t}=r.payload;return Za(BU).pipe(y((()=>{const e=i.value.expenseAutomationMissingReceiptsViewState.bulkUpload;return e.phase!=="matching"||e.currentBatchId!==t?F:_([m_(t),Or({cacheOverride:!0}),gi()])})),ge(We(n.pipe(S(Vn.match)),n.pipe(S(bi.match),S((e=>e.payload.batchId===t&&e.payload.status==="completed"))),n.pipe(S(Oa.match),S((e=>e.payload.batchId===t))))))}))),n=>n.pipe(S((i=>Nr.match(i)||Ca.match(i))),A((i=>{const{batchId:r}=i.payload;return We(n.pipe(S(Oa.match)),n.pipe(S(Ws.match))).pipe(S((t=>t.payload.batchId===r)),ke(1),y((t=>{const{summary:e}=t.payload;return p(N({messageSection:"receipts_bulk_match",messageText:"success",type:"success",variables:[{variableName:"_matched_",variableValue:String(e.matched)},{variableName:"_total_",variableValue:String(e.total)}]}))})),ge(n.pipe(S(Vn.match))))}))),(n,i,r)=>n.pipe(S(mU.match),A((t=>{const{files:e}=t.payload,a=new FormData;for(const s of e)a.append("files",s,s.name);return r.postFormData(`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/receipts/bulk-upload`,a).pipe(y((s=>{if(P(s)&&s.data!=null){const o=String(s.data.batch_id??"").trim();return o===""?p(Si({error:f("Unexpected Error","Bulk upload succeeded but batch_id was missing or empty.")})):j(p(_U(100)),Za(yU).pipe(y((()=>p(Nr({batchId:o}))))))}return p(Si({error:s.status}))})),v((s=>p(Si({error:f("Unexpected Error","Bulk upload receipts API call errored out: "+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(hP.match),y((t=>{const{tenantId:e,companyId:a}=t.payload,s=`${`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels`}/ai-accountant/cancel-onboarding`;return r.postAndGetJSON(s,{tenant_id:e,company_id:a}).pipe(y((o=>P(o)?_([SP(e),So(),N({messageSection:"common",messageText:"success",type:"success"})]):_([Bu(e,o.status),N({messageSection:"common",messageText:"failed",type:"error"})]))),v((o=>_([Bu(e,f("Unexpected error","AI Accountant cancel onboarding failed: "+JSON.stringify(o))),N({messageSection:"common",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(UM.match),y((t=>{const e={bill_pay_provider:"zeni",is_delete_bill:t.payload.isDeleteBill},{billTransactionState:a}=i.value,s=a.transactionById[t.payload.billId],o=s?.isRecurring??!1,c=s?.recurringBillConfigId;let d=`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions/${t.payload.billId}`;return d=o===!0?`${d}/recurring/cancel-payment`:`${d}/cancel-payment`,r.putAndGetJSON(d,e).pipe(y((l=>{if(t.payload.isDeleteBill===!0&&M(l)){const u=[];return u.push(Ss("Completed",t.payload.billId,t.payload.isDeleteBill)),s!=null&&u.push(nv({billId:t.payload.billId,tab:s.billPayInfo.stage.code})),u.push(bc(Oe(t.payload.billId))),o===!0&&c!=null&&u.push(sv(c)),u.push(N({messageSection:"bill_pay_cancelled_deleted",messageText:"success",type:"success"})),_(u)}return P(l)&&l.data!=null&&l.data.transactions[0]?.transaction_id!=null?p(gs(l.data.transactions[0]),Ss("Completed",t.payload.billId,t.payload.isDeleteBill),N({messageSection:"bill_pay_cancelled",messageText:"success",type:"success"})):p(Ss("Error",t.payload.billId,t.payload.isDeleteBill,l.status),N({messageSection:"bill_pay_cancelled_deleted",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]}))})),v((l=>p(Ss("Error",t.payload.billId,t.payload.isDeleteBill,f("Unexpected Error","Cancel and Delete bill REST API call errored out "+JSON.stringify(l)))))))}))),(n,i,r)=>n.pipe(S($F.match),y((t=>{const e={reimbursement_provider:"zeni",is_delete_reimbursement:t.payload.isDeleteRemi},{reimbursementState:a}=i.value,s=a.reimbursementById[t.payload.reimbursementId];return r.putAndGetJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/transactions/${t.payload.reimbursementId}/cancel-payment`,e).pipe(y((o=>{if(t.payload.isDeleteRemi===!0&&M(o)){const c=[Us("Completed",t.payload.reimbursementId,t.payload.isDeleteRemi)];return s!=null&&c.push(qI({remiId:t.payload.reimbursementId,tab:s.reimbursementInfo.stage.code})),c.push(wd(t.payload.reimbursementId)),c.push(N({messageSection:"reimbursement_cancelled_deleted",messageText:"success",type:"success"})),_(c)}return P(o)&&o.data!=null&&o.data?.transaction?.transaction_id!=null?p(Dd(o.data.transaction),Us("Completed",t.payload.reimbursementId,t.payload.isDeleteRemi),N({messageSection:"reimbursement_cancelled",messageText:"success",type:"success"})):p(Us("Error",t.payload.reimbursementId,t.payload.isDeleteRemi,o.status),N({messageSection:"reimbursement_cancelled",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:o.status.message}]}))})),v((o=>p(Us("Error",t.payload.reimbursementId,t.payload.isDeleteRemi,f("Unexpected Error","Cancel and Delete reimbursement REST API call errored out "+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(e1.match),y((t=>{const{operationType:e,description:a}=t.payload,{billsBulkActionViewState:s}=i.value,o=(function(d,l,u){const m=d.map((h=>({entity_id:h,request_data:{bill_pay_provider:"zeni",description:u}})));return{operation_type:l,operations:m}})(s.billsSelectedForBulkAction,e,a),c=`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bulk/bills/transactions`;return(e==="cancel"?r.putAndGetJSON(c,o):r.deleteAndGetJSON(c,o)).pipe(y((d=>{if(M(d)){const l=[],u=d.data?.total_operations_processing??0;return l.push(Bc({billsProcessing:u,refreshTime:d.data?.hard_refresh_after_sec??0})),l.push(Dc(d.data?.operations??[])),u>0&&l.push(N({messageSection:"bill_pay_bulk_submit",messageText:"success",type:"success",variables:[{variableName:"_count_",variableValue:u.toString()},{variableName:"_bill_",variableValue:u>1?"bills":"bill"},{variableName:"_action_",variableValue:e==="cancel"?"canceled":"deleted"}]})),_(l)}return p(ja(d.status),N({messageSection:"bill_pay_bulk_submit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}))})),v((d=>p(ja(f("Unexpected Error","Bill bulk action REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(dq.match),y((t=>{const{operationType:e,description:a}=t.payload,{remisBulkActionViewState:s}=i.value,o=(function(d,l,u){const m=d.map((h=>({entity_id:h,request_data:{reimbursement_provider:"zeni",description:u}})));return{operation_type:l,operations:m}})(s.remisSelectedForBulkAction,e,a),c=`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bulk/reimbursements/transactions`;return(e==="cancel"?r.putAndGetJSON(c,o):r.deleteAndGetJSON(c,o)).pipe(y((d=>{if(M(d)){const l=[],u=d.data?.total_operations_processing??0;return l.push(Fd({remisProcessing:u,refreshTime:d.data?.hard_refresh_after_sec??0})),l.push(qd(d.data?.operations??[])),u>0&&l.push(N({messageSection:"reimbursement_bulk_submit",messageText:"success",type:"success",variables:[{variableName:"_count_",variableValue:u.toString()},{variableName:"_report_",variableValue:u>1?"reports":"report"},{variableName:"_action_",variableValue:e==="cancel"?"canceled":"deleted"}]})),_(l)}return p(Ka(d.status),N({messageSection:"reimbursement_bulk_submit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}))})),v((d=>p(Ka(f("Unexpected Error","Remi Cancel or Delete bulk action REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(_R.match),y((t=>{const e=i.value,{scheduleAccruedDetailState:a}=e,{rowId:s,scheduleType:o}=t.payload,c=[],d=a.selectedJEAccruedScheduleKey;if(d==null)return _(c);const l=oa(d,e);if(l==null)return _(c);const u=l.jeScheduleId,m=e.scheduleAccruedDetailState.editScheduleStateByDetailId[u],h=m?.selectedVendor?.name??"",g={...wH(e,m,d,s)},I={je_schedule_type:o};return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${u}?query=${encodeURIComponent(JSON.stringify(I))}`,g).pipe(y((E=>{if(P(E)&&E.data!=null){const b=E.data.je_schedules[0].je_schedule_id;return c.push(ua(E.data.je_schedules),Ar(E.data.je_schedules,E.data.scheduled_journal_entries),ic("Completed"),Fa(o,d,b),N({messageSection:"cancel_journal_entry",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:h}]})),_(c)}return c.push(ic("Error",E.status)),c.push(N({messageSection:"cancel_journal_entry",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:E.status.message}]})),_(c)})),v((E=>_([N({messageSection:"cancel_journal_entry",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(E)}]}),ic("Error",f("Unexpected Error",`Cancel Accrual for Schedule Accrued Detail REST API call errored out ${JSON.stringify(E)}`))]))))}))),(n,i,r)=>n.pipe(S(zw.match),y((t=>{const{localData:e,person:a}=i.value.peopleState.personDetails,{userId:s,userRole:o}=a,c=Kw(e[0].role,o.userRoles,s);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${t.payload.companyId}`,{users:c}).pipe(y((d=>{if(P(d)){const l=[];return d.data?.user_roles&&zs(l,d.data?.user_roles[0],!0),p(H(d.data.user_roles),Hw(),N({messageSection:"people_update_person",messageText:"success",type:"success"}),...l)}return p(wg(d.status))})),v((d=>p(wg(f("Unexpected error","Change zeni person roles REST API call errored out"+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(Nq.match),A((()=>{const t=i.value,e=t.checkDepositState.localData,a=Lm(t.fileState,e.fileIds),s=a.filter((d=>d.documentSide==="front"))[0],o=a.filter((d=>d.documentSide==="back"))[0],c={source_of_deposit:e.source,amount:e.amount.amount,currency_code:e.amount.currencyCode,currency_symbol:e.amount.currencySymbol,check_front_file_id:s?.fileId,check_back_file_id:o?.fileId};return r.postAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts/${e.depositTo?.id}/check-deposits`,c).pipe(y((d=>P(d)?p(N({messageSection:"deposit_check",messageText:"success",type:"success"}),Xd({fetchState:"Completed"})):p(Xd({fetchState:"Error",error:d.status})))),v((d=>p(Xd({fetchState:"Error",error:f("Unexpected Error","Check deposit REST API call errored out"+JSON.stringify(d))})))))}))),(n,i,r)=>n.pipe(S(JV.match),A((t=>{const{chargeCardId:e,reason:a}=t.payload,s={reason:a},o=i.value.chargeCardState.chargeCardByID[e].accountLast4;return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}/close`,s).pipe(y((c=>M(c)&&c.data!=null?p(ct(c.data),td({chargeCardId:e,fetchState:"Completed"}),N({messageSection:"close_charge_card",messageText:"success",type:"success",variables:[{variableName:"_masked_card_number_",variableValue:`•••• ${o}`}]})):p(N({messageSection:"close_charge_card",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}),td({chargeCardId:e,fetchState:"Error",error:c.status})))),v((c=>p(N({messageSection:"close_charge_card",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(c)}]}),td({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Close card API call errored out"+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(aL.match),A((t=>{const{cardIds:e,reason:a}=t.payload,s={card_ids:e,reason:a};return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/bulk/close`,s).pipe(y((o=>M(o)&&o.data!=null?p(Ga(o.data),yd({fetchState:"Completed"}),N({messageSection:"close_charge_cards",messageText:"success",type:"success",variables:[{variableName:"_number_of_cards_",variableValue:e.length===1?"1 card":`${e.length} cards`}]})):p(N({messageSection:"close_charge_cards",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:o.status.message}]}),yd({fetchState:"Error",error:o.status})))),v((o=>p(N({messageSection:"close_charge_cards",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(o)}]}),yd({fetchState:"Error",error:f("Unexpected Error","Close cards API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(Ko.match),y((t=>Em(i.value.companyViewState.managementView,t.payload.companyId)!=null?p(Tm(t.payload.companyId,{})):_([])))),(n,i,r)=>n.pipe(S(Tm.match),y((t=>{const e=t.payload.companyId,a=Em(i.value.companyViewState.managementView,e),s=yO(e,i.value.companyViewState.managementView);if(a!=null&&Object.keys(a.data).length>0&&s==null){const o=BK(a.data);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,o).pipe(y((c=>{if(P(c)&&c.data!=null){const d=[];return i.value.companyViewState.managementView.fetchState==="Completed"&&(d.push(Q({payload:c.data.companies,schema:{},isUpdate:!0})),c.data.customer_satisfactions!=null&&d.push(Pm({payload:c.data.customer_satisfactions})),d.push(_O(e)),d.push(Ko(e))),i.value.reviewCompanyViewState.fetchState==="Completed"&&d.push(hO({companies:c.data.companies})),_(d)}{const d=[Am(e,c.status),Ko(e)];return _(d)}})),v((c=>p(Am(e,f("Unexpected error","Company Management save updates errored out"+JSON.stringify(c)))))))}return _([])}))),(n,i,r)=>n.pipe(S(hU.match),rt((t=>{const{batchId:e,attachmentId:a,transactionId:s,transactionType:o,fileName:c}=t.payload;return r.postAndGetJSON(`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/receipts/manual-match`,{attachment_id:a,transaction_id:s,transaction_type:o,file_name:c}).pipe(y((d=>P(d)?_([SU({batchId:e,attachmentId:a,transactionId:s}),N({messageSection:"receipt_match",messageText:"success",type:"success"})]):_([r_({error:d.status}),N({messageSection:"receipt_match",messageText:"failed",type:"error"})]))),v((d=>_([r_({error:f("Unexpected Error","Confirm bulk upload match errored out: "+JSON.stringify(d))}),N({messageSection:"receipt_match",messageText:"failed",type:"error"})]))))}))),n=>n.pipe(S(pN.match),y((i=>{const{setupIntentData:r}=i.payload,{setupIntent:t,error:e}=r;if(t!=null&&e==null){const a={id:t.id,status:t.status,clientSecret:t.client_secret};return _([Dp({fetchState:"Completed",setupIntentData:a})])}return _([Dp({fetchState:"Error",error:e}),N({messageSection:"confirm_card_setup",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:e.message??"Unknown error"}]})])}))),(n,i,r)=>n.pipe(S(bC.match),rt((t=>{const{accountId:e,selectedPeriod:a,statementUploadId:s,accountMappings:o}=t.payload;return r.postAndGetJSON(`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/statements/${s}/confirm-mapping`,{account_mappings:o.map((c=>({ledger_identifier:c.ledgerIdentifier,account_id:c.accountId})))}).pipe(y((c=>{if(P(c)===!0&&c.data!=null)return p(EC({accountId:e,selectedPeriod:a,statementUploads:TC(c.data)}));const d=PC(c)?AC(c):null;return p(iy({accountId:e,selectedPeriod:a,error:c.status,mappingConflict:d}),t0(c.status.message))})),v((c=>p(iy({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Confirm Statement Mapping REST API call errored out "+(c instanceof Error?c.message:String(c)))}),t0()))))}))),(n,i,r)=>n.pipe(S(nJ.match),y((t=>{const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/settings/stripe-connect/setup`,{api_key:a,publishable_key:s,webhook_secret:o}=t.payload,c={api_key:a,publishable_key:s,...o!=null&&o!==""?{webhook_secret:o}:{}};return r.postAndGetJSON(e,c).pipe(A((d=>P(d)&&d.data!=null?p(NS({stripe_connected:d.data.stripe_connected,publishable_key:d.data.publishable_key}),Tt()):p(os(d.status)))),v((d=>p(os(f("Unexpected Error","Stripe connect setup REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(ga.match),y((t=>{const{cacheOverride:e,amount:a,conversionCurrencyCode:s,billId:o}=t.payload,c=i.value;let d=c.editBillDetailViewState.newBillState.billDetailLocalData;if(o!=null){const l=Oe(o);d=c.editBillDetailViewState.editBillStateById[l].billDetailLocalData}if(e===!0){const l={amount:{amount:a.amount,currency_code:a.currencyCode,currency_symbol:a.currencySymbol},home_currency_code:s};return r.postAndGetJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/currencies/conversion`,l).pipe(y((u=>{if(P(u)&&u.data!=null){const m=[],h={amount:u.data.home_currency_conversions.amount,currency_code:u.data.home_currency_conversions.currency_code,currency_symbol:u.data.home_currency_conversions.currency_symbol},g=u.data.home_currency_conversions.exchange_rate;return m.push(kv({billId:o,amountPayload:h,conversionRate:g})),m.push(Is({billId:o,fetchState:"Completed",error:void 0})),_(m)}return p(Is({billId:o,fetchState:"Error",error:u.status}))})),v((u=>p(Is({billId:o,fetchState:"Error",error:f("Unexpected Error","Convert Amount To Home Currency REST API call errored out"+JSON.stringify(u))})))))}{const l=[];return l.push(kv({billId:o,amountPayload:{amount:(d.totalAmountAfterConversion?.amount??0)*(d.paymentDetailsSection?.conversionRate??1),currency_code:d.totalAmountAfterConversion?.currencyCode??"",currency_symbol:d.totalAmountAfterConversion?.currencySymbol??""},conversionRate:d.paymentDetailsSection?.conversionRate??0})),l.push(Is({billId:o,fetchState:"Completed",error:void 0})),_(l)}}))),(n,i,r)=>n.pipe(S(Nu.match),y((t=>{const{addressType:e}=t.payload,a=i.value.addressViewState.newAddressState?.[e];if(a!=null){const s=Ue(a.addressToCreate),o=e.includes("custom_shipping_")?`?query=${encodeURIComponent(JSON.stringify({is_default_namespace_sync_enabled:!0}))}`:"";return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/addresses${o}`,s).pipe(y((c=>{const d=c.data!=null?c.data?.addresses:[];if(P(c)&&d.length>0){const l=[z(d)];return l.push(ho({addressId:d[0].address_id,addressType:e})),_(l)}return p(ma({addressType:e,status:c.status}))})),v((c=>p(ma({addressType:e,status:f("Unexpected Error","Create Address REST API call errored out"+JSON.stringify(c))})))))}return[]}))),(n,i,r)=>n.pipe(S(SM.match),A((()=>{const t=x0(i.value.autotransferRulesState.ruleUpdateLocalData);return r.postAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto`,t).pipe(y((e=>{if(P(e)&&e.data!=null){const a=jl(e.data.auto_transfer_rule),s=[gM({rule:a}),N({messageSection:"auto_transfer_rule_create",messageText:"success",type:"success"})];return _(s)}return _([Wf({fetchState:"Error",error:e.status}),N({messageSection:"auto_transfer_rule_create",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:e.status.message}]})])})),v((e=>p(Wf({fetchState:"Error",error:f("Unexpected Error","Create auto transfer rule REST API call errored out "+JSON.stringify(e))})))))}))),(n,i,r)=>n.pipe(S(jA.match),A((t=>{const{bankAccountViewState:e,expressPayState:a}=i.value,{paymentMethodType:s,bankAccountContext:o,vendorId:c}=t.payload,d=e.createBankAccountDetails.localData;return d!=null?r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/bank-accounts`,kl(d,s)).pipe(y((l=>{const u=[];return P(l)?(u.push(we(l.data?.bank_accounts??[]),Ye({fetchState:"Completed",isInternationalBankAccount:!1})),o!=="vendor"&&o!=="billDetail"&&o!=="express-pay"||(u.push(Ep({bankAccountIds:[l.data?.bank_accounts[0].bank_account_id??""],vendorId:c})),o==="billDetail"&&u.push(Dt(c))),o==="express-pay"&&u.push(Eo({localData:{...a.formLocalData,amount:a.formLocalData?.amount??{amount:0,currencyCode:"USD",currencySymbol:"$"},paymentDate:a.formLocalData?.paymentDate??me(),paymentToAccountId:l.data?.bank_accounts[0].bank_account_id??""}})),l.data?.bank_accounts[0].bank_routing_number_ach!=null&&l.data?.bank_accounts[0].bank_routing_number_ach.length!==0?u.push(N({messageSection:"create_bank_account_ach",messageText:"success",type:"success"})):l.data?.bank_accounts[0].bank_routing_number_wire_transfer!=null&&l.data?.bank_accounts[0].bank_routing_number_wire_transfer.length!==0&&u.push(N({messageSection:"create_bank_account_wire",messageText:"success",type:"success",variables:[{variableName:"_wire-type_",variableValue:"Domestic"}]}))):l.status.code===409?(u.push(we(l.data?.bank_accounts??[]),Ye({fetchState:"Error",error:l.status,isInternationalBankAccount:!1})),u.push(N({messageSection:"create_bank_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]})),o!=="vendor"&&o!=="billDetail"&&o!=="express-pay"||(u.push(Ep({bankAccountIds:[l.data?.bank_accounts[0].bank_account_id??""],vendorId:c})),o==="billDetail"&&u.push(Dt(c)),o==="express-pay"&&u.push(Eo({localData:{...a.formLocalData,amount:a.formLocalData?.amount??{amount:0,currencyCode:"USD",currencySymbol:"$"},paymentDate:a.formLocalData?.paymentDate??me(),paymentToAccountId:l.data?.bank_accounts[0].bank_account_id??""}})))):(u.push(Ye({fetchState:"Error",error:l.status,isInternationalBankAccount:!1})),u.push(N({messageSection:"create_bank_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]}))),_(u)})),v((l=>p(Ye({fetchState:"Error",error:f("Unexpected Error","Bank Account Creation REST API call errored out"+JSON.stringify(l)),isInternationalBankAccount:!1}))))):_([])}))),(n,i,r)=>n.pipe(S(bV.match),y((t=>{const e=EV(t.payload);return r.postAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/policy-templates`,e).pipe(y((a=>{if(M(a)&&a.data!=null){const{templates_created:s,errors:o}=a.data,c=s.map((m=>m.template)),d=c.map((m=>m.template_id)),l=d.length>0?[TV(d)]:[],u=[...c.map((m=>Qc(m))),...l,Ps({fetchState:"Completed",perItemErrors:(o??[]).map(PV),templateIds:d})];return _(u)}return p(Ps({fetchState:"Error",error:a.status}))})),v((a=>p(Ps({fetchState:"Error",error:f("Unexpected Error","Create card-policy templates REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(mN.match),y((t=>{const{paymentsMethod:e}=t.payload,a={...OK(e)};return r.postAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/stripe/cards/setup_intent`,a).pipe(y((s=>{if(P(s)&&s.data){const{client_secret:o}=s.data;return _([Oo({fetchState:"Completed",clientSecret:o})])}return _([Oo({fetchState:"Error",error:s.status}),N({messageSection:"create_card_setup",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:s.status.message}]})])})),v((s=>p(Oo({fetchState:"Error",error:f("Unexpected Error","Create Setup Intent REST API call errored out "+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(Fq.match),A((t=>{const e={account_sub_type:"checking",account_name:t.payload.nickname};return r.postAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts`,e).pipe(y((a=>P(a)?p(Ze(a.data?.deposit_accounts??[]),Zt({data:a.data?.deposit_accounts??[],updateType:"merge"}),N({messageSection:"create_checking_account",messageText:"success",type:"success"}),nl({fetchState:"Completed",accoutnId:a.data?.deposit_accounts[0].deposit_account_id})):p(N({messageSection:"create_checking_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}),nl({fetchState:"Error",accoutnId:void 0,error:a.status})))),v((a=>p(N({messageSection:"create_checking_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(a)}]}),nl({fetchState:"Error",accoutnId:void 0,error:f("Unexpected Error","Create deposit Account REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(Ou.match),y((t=>{if(t.payload.addressType==="company_address"&&i.value.addressViewState.newAddressState?.company_address!=null){const e=t.payload.companyId,a=Ue(i.value.addressViewState.newAddressState?.company_address.addressToCreate);return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}/addresses`,a).pipe(y((s=>{const o=s.data!=null?s.data?.addresses:[];if(P(s)&&o.length>0){const c=s.data,d=[z(o)];return d.push(Q({payload:c?.companies??[],schema:{}})),d.push(ho({addressId:o[0].address_id,addressType:"company_address"})),_(d)}return p(ma({addressType:"company_address",status:s.status}))})),v((s=>p(ma({addressType:"company_address",status:f("Unexpected Error","Create Company Address REST API call errored out"+JSON.stringify(s))})))))}return[]}))),(n,i,r)=>n.pipe(S(Nm.match),y((t=>{const{officers:e}=t.payload,a=e.map((d=>d.officerType)),s=t.payload.companyId,{newAddressState:o}=i.value.addressViewState,c={users:e.map((d=>{const l=Object.assign({},d,{isCompanyOfficer:!0});let u=Fs(l);return u=Object.assign({},u,{is_changes_in_response_only:!1}),u}))};return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${s}/users`,c).pipe(y((d=>{const l=d.data?.users??[];if(P(d)&&l.length>0){const u=[V({users:l}),Q({payload:d.data?.companies??[],schema:{}}),H(d.data?.user_roles??[])],m=e.map((h=>{const g=l.find((I=>I.email===h.email));return{...h,firstName:g?.first_name?.trim()??h.firstName,lastName:g?.last_name?.trim()??h.lastName,phone:g?.phone??"",userId:g?.user_id}}));return u.push(Ho({officers:m})),e.forEach((h=>{const{officerType:g}=h,I=l.find((T=>T.email===h.email)),E=g.toLowerCase().concat("_address");o?.[E]?.addressToCreate!=null&&u.push(dn({addressType:E,companyId:s,userId:I?.user_id}))})),u.push(SO({companyId:s,officerTypes:a})),_(u)}return p(Om({companyId:s,officerTypes:a,status:d.status}))})),v((d=>p(Om({companyId:s,officerTypes:a,status:f("Unexpected error",`Create Company Officers REST API call errored out ${JSON.stringify(d)}`)})))))}))),(n,i,r)=>n.pipe(S(Cu.match),y((t=>{const e=t.payload.addressType,{newAddressState:a}=i.value.addressViewState,s=a?.[e]?.addressToCreate;if(e!=="company_address"&&s!=null){const o=t.payload.companyId,c=t.payload.userId,d={...Ue(s),is_changes_in_response_only:!1};return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${o}/users/${c}/addresses`,d).pipe(y((l=>{const u=l.data!=null?l.data?.addresses:[];if(P(l)&&u.length>0){const m=l.data,h=[z(u)];return h.push(Q({payload:m?.companies??[],schema:{}}),V({users:m?.users??[]}),H(m?.user_roles??[])),h.push(ho({addressId:u[0].address_id,addressType:e})),_(h)}return p(ma({addressType:e,status:l.status}))})),v((l=>p(ma({addressType:e,status:f("Unexpected Error","Create Company User Address REST API call errored out"+JSON.stringify(l))})))))}return[]}))),(n,i,r)=>n.pipe(S(Pk.match),y((()=>{const{draft:t}=i.value.invoicingCreateCreditNoteState,e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/credits`,a=Ak(t);return r.postAndGetJSON(e,a).pipe(y((s=>P(s)&&s.data!=null?[Zn([s.data],"merge"),Nk({creditNoteId:s.data.id}),N({messageSection:"invoicing_credit_note_saved",messageText:"success",type:"success"})]:_([L_(s.status),N({messageSection:"invoicing_credit_note_saved",messageText:"failed",type:"error",variables:Ee(s.status)})]))),v((s=>_([L_(f("Unexpected Error","Create credit note REST API call errored out "+JSON.stringify(s))),N({messageSection:"invoicing_credit_note_saved",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(uk.match),y((t=>{const{context:e,merchantId:a}=t.payload,{newGlobalMerchantData:s,recommendationIds:o,recommendedNonExistingGlobalMerchants:c}=i.value.globalMerchantViewState,d=Array({globalMerchants:ao(i.value.globalMerchantState,o)}),l=Array({globalMerchants:c}),u=so(d,l);if(s!=null){const m={...mH(s,u)};return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/global-merchants`,m).pipe(y((h=>{if(h.data!=null&&P(h)){const{global_merchants:g}=h.data,I=[Et({globalMerchants:g,updateType:"merge"})],E=g[0].global_merchant_id;return e==="vendor_global_review"&&a!=null&&I.push(pk(a,E)),I.push(mk({merchantId:E}),N({messageSection:"create_global_merchant",messageText:"success",type:"success",variables:[{variableName:"_global_merchant_name_",variableValue:g[0].global_merchant_name}]})),_(I)}return p(k_({status:h.status}),N({messageSection:"create_global_merchant",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:h.status.message}]}))})),v((h=>p(k_({status:f("Unexpected Error","Create Global Merchant REST API call errored out"+JSON.stringify(h))})))))}return[]}))),(n,i,r)=>n.pipe(S(GA.match),A((t=>{const{bankAccountViewState:e,vendorViewState:a}=i.value,{bankAccountContext:s,vendorId:o}=t.payload,c=e.createInternationalBankAccountDetails.localData,d=o!=null?a?.editVendorStateById[o]?.vendorDetailLocalData?.countryCode:a.newVendorState.vendorDetailLocalData?.countryCode;return c!=null?r.postAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-instruments`,((l,u)=>({...YE(l),country_code:u??""}))(c,d)).pipe(y((l=>{const u=[];return P(l)?(u.push(ya(l.data?.payment_instruments??[]),Ye({fetchState:"Completed",isInternationalBankAccount:!0})),s!=="vendor"&&s!=="billDetail"&&s!=="express-pay"||(u.push(mn({paymentInstrumentIds:[l.data?.payment_instruments[0].zeni_payment_instrument_id??""],vendorId:o})),s==="billDetail"&&u.push(Dt(o))),u.push(N({messageSection:"create_bank_account_international",messageText:"success",type:"success",variables:[{variableName:"_wire-type_",variableValue:"International"}]}))):l.status.code===409?(u.push(Ye({fetchState:"Error",error:l.status,isInternationalBankAccount:!0})),u.push(N({messageSection:"create_bank_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]})),s!=="vendor"&&s!=="billDetail"&&s!=="express-pay"||(u.push(mn({paymentInstrumentIds:[l.data?.payment_instruments[0].zeni_payment_instrument_id??""],vendorId:o})),s==="billDetail"&&u.push(Dt(o)))):(u.push(Ye({fetchState:"Error",error:l.status,isInternationalBankAccount:!0})),u.push(N({messageSection:"create_bank_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]}))),_(u)})),v((l=>p(Ye({fetchState:"Error",error:f("Unexpected Error","Bank Account Creation REST API call errored out"+JSON.stringify(l)),isInternationalBankAccount:!0}))))):_([])}))),(n,i,r)=>n.pipe(S(Ok.match),y((t=>{const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices`;return r.postAndGetJSON(e,{...t.payload}).pipe(y((a=>P(a)&&a.data!=null?[Ua([a.data],"merge"),z(kr([a.data])),Ck({id:a.data.id,status:a.data.status}),xk({invoiceId:a.data.id}),N({messageSection:"invoicing_invoice_saved",messageText:"success",type:"success"})]:_([F_(a.status),N({messageSection:"invoicing_invoice_saved",messageText:"failed",type:"error",variables:Ee(a.status)})]))),v((a=>_([F_(f("Unexpected Error","Create invoice REST API call errored out "+JSON.stringify(a))),N({messageSection:"invoicing_invoice_saved",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(kk.match),y((t=>{const{customerId:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/customers/${encodeURIComponent(e)}/payment-methods/setup-intent`;return r.postAndGetJSON(a,{}).pipe(A((s=>P(s)&&s.data!=null?p(Bk(s.data)):p(q_(s.status)))),v((s=>p(q_(f("Unexpected Error","Setup intent REST API call errored out "+JSON.stringify(s)))))))}))),(n,i)=>n.pipe(S(gR.match),y((r=>{const t=[],e=r.payload.scheduleType,a=i.value,{scheduleAccruedDetailState:s}=a,o=s.newScheduleState,c=o.selectedVendor,d={scheduleType:e,jeScheduleDetails:VH(o,o?.estimatedMonthlyAmount??{amount:0,currencyCode:"USD",currencySymbol:"$"},o?.startingBalance??{amount:0},c?.name??"")};return t.push(ms({scheduleType:e,selectedJeScheduleDetailId:void 0,localData:d})),_(t)}))),(n,i)=>n.pipe(S(xf.match),y((r=>{const t=[],e=r.payload.scheduleType,a=i.value,{scheduleDetailState:s}=a,o=s.selectedJEScheduleKey;if(o!=null){const c=bt(o,a),d=c.baseTransaction.amount,l=c.vendor.name,u=c.jeScheduleId!=null?s.editScheduleStateByDetailId[e][c.jeScheduleId]:s.newScheduleState[e],m=u.scheduleType==="fixed_assets"?u.assetId:void 0,h={scheduleType:e,jeScheduleDetails:xR(u,d,l,e==="fixed_assets"?{assetId:m}:void 0)};t.push(hs({scheduleType:e,selectedJeScheduleDetailId:c.jeScheduleId,localData:h}))}return _(t)}))),(n,i,r)=>n.pipe(S(Mj.match),A((t=>{const{groupName:e,updateSelectedTasks:a}=t.payload,s=i.value,{localData:o}=s.taskListState,c={name:e};return r.postAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/groups`,c).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[eE(d.data.task_groups[0]),Wb({newTaskGroupId:d.data.task_groups[0].task_group_id}),Vj({newTaskGroup:d.data.task_groups[0]}),N({messageSection:"task_group_creation_success",messageText:"success",type:"success"})];return a===!0&&l.push(_l(o.selectedTaskIds,d.data.task_groups[0].task_group_id,{taskGroupIds:[d.data.task_groups[0].task_group_id]})),_(l)}return p(tE({fetchState:"Error",error:d.status}))})),v((d=>p(tE({fetchState:"Error",error:f("Unexpected Error","Create Task Group REST API call errored out"+JSON.stringify(d))})))))}))),(n,i,r)=>n.pipe(S(Fx.match),y((t=>{const e=i.value,{localData:a}=t.payload,s=crypto.randomUUID(),o={...eH(e,a),request_id:s},c=e.expenseAutomationViewState.selectedPeriodByTenantId[Y(e).tenantId],d=c!=null?Je(c):void 0,l=d!=null?Se(d.start):void 0,u=d!=null?Se(d.end):void 0;return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals`,o).pipe(y((m=>{if(P(m)&&m.data!=null){const h=[Lt([m.data.accrual]),qx(),N({messageSection:"create_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:a.vendorName}]})];return l!=null&&u!=null&&h.push(er({start:l,end:u},!0)),_(h)}return _([Qy({status:m.status}),N({messageSection:"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:m.status.message}]})])})),v((m=>_([N({messageSection:"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(m)}]}),Qy({status:f("Unexpected Error",`Create One Time Accrual REST API call errored out ${JSON.stringify(m)}`)})]))),ge(n.pipe(S($e.match))))}))),(n,i,r)=>n.pipe(S(k1.match),A((t=>{const{internationalWireState:e}=i.value,{bankAccountContext:a,vendorId:s}=t.payload,o=e.createInternationalWireDetails.localData;return o!=null?r.postAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-instruments`,B1(o)).pipe(y((c=>{const d=[];return P(c)&&c.data!=null?(d.push(ya(c.data.payment_instruments??[]),Es({fetchState:"Completed"})),a!=="vendor"&&a!=="billDetail"&&a!=="express-pay"||(d.push(mn({paymentInstrumentIds:[c.data.payment_instruments[0].zeni_payment_instrument_id??""],vendorId:s})),d.push(D1({countryCode:e.createInternationalWireDetails?.localData?.countryCode,currencyCode:e.createInternationalWireDetails?.localData?.currencyCode,vendorId:s})),a==="billDetail"&&d.push(Dt(s))),d.push(N({messageSection:"create_bank_account_international",messageText:"success",type:"success",variables:[{variableName:"_wire-type_",variableValue:"International"}]}))):c.status.code===409?(d.push(Es({fetchState:"Error",error:c.status})),d.push(N({messageSection:"create_bank_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]})),a!=="vendor"&&a!=="billDetail"&&a!=="express-pay"||(d.push(mn({paymentInstrumentIds:[c.data?.payment_instruments[0].zeni_payment_instrument_id??""],vendorId:s})),a==="billDetail"&&d.push(Dt(s)))):(d.push(Es({fetchState:"Error",error:c.status})),d.push(N({messageSection:"create_bank_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}))),_(d)})),v((c=>p(Es({fetchState:"Error",error:f("Unexpected Error","Payment Instrument Creation REST API call errored out"+JSON.stringify(c))}))))):_([])}))),(n,i,r)=>n.pipe(S(kP.match),A((t=>{const{agentId:e,userId:a,questionAnswerId:s,questionId:o,createdAt:c,question:d,files:l,pageContext:u,macroId:m}=t.payload,h={agent_id:e,...u!=null&&{page_context:u}};return r.postAndGetJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/sessions`,h).pipe(y((g=>{if(P(g)&&g.data!=null){const I=g.data,E=I.chat_session_id;return(function(b,T,O=5e3){return new $P((x=>{if(b==null)return console.warn("[createSessionAndSubmitEpic] ⚠️ Pusher not initialized, proceeding without waiting"),x.next({success:!1,error:"Pusher not initialized"}),void x.complete();const U=`private-${T}`,k=b.channel(U);if(k?.subscribed===!0)return x.next({success:!0}),void x.complete();const C=k??b.subscribe(U),B=()=>{C.unbind("pusher:subscription_succeeded",B),C.unbind("pusher:subscription_error",J),x.next({success:!0}),x.complete()},J=()=>{C.unbind("pusher:subscription_succeeded",B),C.unbind("pusher:subscription_error",J),x.error(new Error(`Failed to subscribe to channel ${U}`))};return C.bind("pusher:subscription_succeeded",B),C.bind("pusher:subscription_error",J),C.subscribed===!0&&B(),()=>{C.unbind("pusher:subscription_succeeded",B),C.unbind("pusher:subscription_error",J)}})).pipe(RP(O),MP(),v((x=>{const U=x instanceof Error?x.message:"Subscription timeout or error";return p({success:!1,error:U})})))})(VP,`chat-${E}`).pipe(y((b=>{const T=[];return b.success||T.push(N({messageSection:"ai_cfo_create_session_and_submit",messageText:"notification",type:"warning"})),j(p(...T,Vu({chatSessionId:E,userId:a,createdAt:te(I.created_at)}),wP({agentId:e,sessionId:E})),Za(100).pipe(ke(1),JP()),p(DP(),Mu(E,s,a,o,c,d,l,m),BP({chatSessionId:E,questionAnswerId:s,question:{questionId:o,text:d,createdAt:c},userId:a,attachments:l!=null&&l.length>0?l.map((O=>({filename:O.name,file_size:O.size,mime_type:O.type}))):void 0})))})))}return p(N({messageSection:"ai_cfo_create_session_and_submit",messageText:"failed",type:"error"}),Lu(g.status))})),v((g=>p(Lu(f("Unexpected Error",`Create and Submit Session REST API call errored out: ${JSON.stringify(g)}`))))))}))),(n,i,r)=>n.pipe(S(LP.match),A((t=>{const{agentId:e,contextRefId:a,contextType:s,pageContext:o,userId:c}=t.payload,d={agent_id:e,...a!=null&&{context_ref_id:a},...s!=null&&{context_type:s},...o!=null&&{page_context:o}};return r.postAndGetJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/sessions`,d).pipe(y((l=>P(l)&&l.data!=null?p(Vu({chatSessionId:l.data.chat_session_id,userId:c,createdAt:te(l.data.created_at)}),FP({agentId:e,contextMessage:l.data.context_message,contextStatus:l.data.context_status,sessionId:l.data.chat_session_id})):p(Fu(l.status)))),v((l=>p(Fu(f("Unexpected Error",`Create Session REST API call errored out: ${JSON.stringify(l)}`))))))}))),(n,i,r)=>n.pipe(S(fj.match),y((t=>{const e=i.value,a=ar(e.taskState,t.payload.parentTaskId),s=a?.taskGroupIds??[],o=s[0],c=e.taskListState.fetchState==="Completed",d=_Y(t.payload,s);return r.postAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks`,d).pipe(y((l=>{if(P(l)&&l.data!=null&&l.data.tasks.length>0){const u=l.data.tasks[0].task_id,m=[Ke(l.data.tasks),vj({parentTaskId:t.payload.parentTaskId,subTaskId:u}),cl({fetchState:"Completed",newTaskId:u}),N({messageSection:"create_sub_task",messageText:"success",type:"success"})],h=l.data.tasks[0];return h.parent_task_id!=null&&h.parent_task_id!==""||c!==!0||o==null||m.push(Kb({taskGroupId:o,task:h})),_(m)}return p(cl({fetchState:"Error",error:l.status}),N({messageSection:"create_sub_task",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]}))})),v((l=>p(cl({fetchState:"Error",error:f("Unexpected Error","Create Sub Task REST API call errored out"+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(ij.match),y((function(t){const{tagName:e,taskId:a}=t.payload;return cY(e,r,a)}))),(n,i,r)=>n.pipe(S(Dj.match),A((t=>{const{taskGroupTemplateId:e,taskIds:a}=t.payload,s=i.value.taskGroupViewState.taskGroupsIds,o={group_name:e,is_create_all_tasks_inside_group:a.length===0,task_names:a};return r.postAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/templates`,o).pipe(y((c=>{if(P(c)&&c.data!=null){const d=[Qb(c.data.groups),Ke(c.data.tasks),Jj(),wj({tasks:c.data.tasks})];return s.includes(c.data.groups[0].task_group_id)===!1&&d.push(Wb({newTaskGroupId:c.data.groups[0].task_group_id})),_(d)}{const d=[Zb(c.status)];return _(d)}})),v((c=>{const d=[Zb(f("Unexpected error","Create task from templates REST API call errored out"+JSON.stringify(c)))];return _(d)})))}))),(n,i,r)=>n.pipe(S(HO.match),y((t=>{const{transactionId:e,creditAccountIntegrationId:a,debitAccountIntegrationId:s,memo:o,transactionType:c,sourceTransactionType:d}=t.payload,l={id:e,type:d},u={transaction_type:c,transaction_id:e,to_account_integration_id:a,from_account_integration_id:s,transaction_memo:o??""};return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/transaction-type-update`,u).pipe(y((m=>{if(P(m)&&m.data!=null){const g=m.data?.transaction;return g!=null?(h=g)==null||typeof h.transaction_id!="string"||h.transaction_id===""||typeof h.transaction_type!="string"||h.transaction_type===""?_(wl()):(function(I,E,b,T){const O=An(I),x=(k=O,!((U=b).id===k.id&&U.type===k.type));var U,k;const C=[Ta(De(O),I),Nn({transactionId:O,vendorId:E?.[0]?.vendor_id}),...XE(T)];return x&&C.push(QO(b,O)),j(_(C),e0(x?b:void 0))})(g,m.data?.vendors,l,e):(function(I){return j(_(XE(I)),e0(void 0))})(e)}var h;return _(wl())})),v((()=>_(wl()))))}))),(n,i,r)=>n.pipe(S(zA.match),A((t=>{const{userId:e,reimbursementId:a}=t.payload,{bankAccountViewState:s}=i.value,o=s.createBankAccountDetails.localData;return o!=null?r.postAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/users/${e}/bank-accounts`,kl(o,"ach")).pipe(y((c=>{const d=[];if(P(c)){const l=c.data?.bank_accounts??[];d.push(Tp({bankAccountIds:l.map((u=>u.bank_account_id)),userId:e}),we(l),or({bankAccountId:l?.[0].bank_account_id,shouldOverWriteCurrentBankAccountId:!0,reimbursementId:a}),Ye({fetchState:"Completed"}),N({messageSection:"account_added",messageText:"success",type:"success"}))}else c.status.code,d.push(Ye({fetchState:"Error",error:c.status}));return _(d)})),v((c=>p(Ye({fetchState:"Error",error:f("Unexpected Error","Bank Creation REST API call errored out"+JSON.stringify(c))}))))):_([])}))),(n,i,r)=>n.pipe(S(NC.match),A((t=>{const{accountId:e,selectedPeriod:a,statementUploadId:s}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/statements/${s}`).pipe(y((o=>{if(P(o)){const c=[],d=Aa(e,a);return o.data!=null&&c.push(cy(d,o.data)),c.push(dy({accountId:e,selectedPeriod:a})),p(...c)}return p(vr({accountId:e,selectedPeriod:a,error:o.status}))})),v((o=>p(vr({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Delete Statement File REST API call errored out "+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(fM.match),A((t=>{const{ruleId:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto/${e}`).pipe(y((a=>{if(P(a)){const s=[vM({ruleId:e}),N({messageSection:"auto_transfer_rule_delete",messageText:"success",type:"success"})];return _(s)}return _([Zf({ruleId:e,fetchState:"Error",error:a.status}),N({messageSection:"auto_transfer_rule_delete",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]})])})),v((a=>p(Zf({ruleId:e,fetchState:"Error",error:f("Unexpected Error","Delete auto transfer rule REST API call errored out "+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(KA.match),A((t=>r.deleteAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/bank-accounts/${t.payload.bankAccountId}`).pipe(y((e=>{if(P(e)){const a=[];return a.push(lt({bankAccountId:t.payload.bankAccountId,fetchState:"Completed"})),t.payload.bankAccountContext==="vendor"&&a.push(HA({bankAccountId:t.payload.bankAccountId,vendorId:t.payload.vendorId})),a.push(N({messageSection:"delete_bank_account",messageText:"success",type:"success"})),_(a)}return p(lt({bankAccountId:t.payload.bankAccountId,fetchState:"Error",error:e.status}),N({messageSection:"delete_bank_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:e.status.message}]}))})),v((e=>p(lt({bankAccountId:t.payload.bankAccountId,fetchState:"Error",error:f("Unexpected Error","Bank Deletion REST API call errored out"+JSON.stringify(e))})))))))),(n,i,r)=>n.pipe(S(kM.match),y((t=>{const{billTransactionState:e}=i.value,a=e.transactionById[t.payload.billId],s=a?.isRecurring??!1,o=a?.recurringBillConfigId;let c=`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions/${t.payload.billId}`;return s===!0&&(c=`${c}/recurring`),r.deleteAndGetJSON(`${c}?query=${encodeURIComponent(JSON.stringify({transaction_type:"bill",bill_pay_provider:"zeni"}))}`).pipe(y((d=>{if(M(d)){const l=[];return l.push(Ec("Completed",t.payload.billId)),a!=null&&l.push(nv({billId:t.payload.billId,tab:a.billPayInfo.stage.code})),l.push(bc(Oe(t.payload.billId))),s===!0&&o!=null&&l.push(sv(o)),l.push(N({messageSection:"bill_pay_deleted",messageText:"success",type:"success"})),_(l)}return p(Ec("Error",t.payload.billId,d.status),N({messageSection:"bill_pay_deleted",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}))})),v((d=>p(Ec("Error",t.payload.billId,f("Unexpected Error","Delete bill REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(FM.match),A((t=>{const{approvalRuleId:e,useV3:a}=t.payload,s=a===!0?`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/bill-pay/approval-rules-v2`:`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/bill-pay/approval-rules`;return r.deleteAndGetJSON(s,{approval_rule_id:e}).pipe(y((o=>{if(P(o)&&o.data!=null){const c=o.data.approval_rules.map((l=>l.approval_rule_id)),d=[V({users:o.data.users}),Xe(o.data.approval_rules),N({messageSection:"bill_pay_approval_delete",messageText:"success",type:"success"}),qM(e,c)];return _(d)}return p(N({messageSection:"bill_pay_approval_delete",messageText:"failed",type:"error"}),yv(e,o.status))})),v((o=>p(yv(e,f("Unexpected Error","Delete Bill Pay Approval Rule errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(mj.match),y((t=>{const{cannedResponseId:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/canned-responses/${e}`).pipe(y((a=>P(a)?p(yj({cannedResponseId:e})):p(qb({error:a.status})))),v((a=>p(qb({error:f("Unexpected Error","Delete Canned Response errored: "+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(qP.match),y((t=>{const{chatSessionId:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/sessions/${e}`).pipe(y((a=>M(a)?_([jP({chatSessionId:e}),GP(e),N({messageSection:"ai_cfo_chat_session_deleted",messageText:"success",type:"success"})]):p(qu({chatSessionId:e,error:a.status}),N({messageSection:"ai_cfo_chat_session_deleted",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status?.message??String(a.status)}]})))),v((a=>p(qu({chatSessionId:e,error:f("Unexpected Error","Delete chat session REST API call errored out "+JSON.stringify(a))}),N({messageSection:"ai_cfo_chat_session_deleted",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(a)}]})))))}))),(n,i,r)=>n.pipe(S(OC.match),A((t=>{const{accountId:e,selectedPeriod:a,fileId:s}=t.payload;let o=t.payload.combinedStatementGroupId;if(o===""){const d=i.value.expenseAutomationReconciliationViewState.accountReconciliationRecordsBySelectedPeriod[Ie(a)]?.reconciliationByAccountID[e];o=ly(d)}if(o==="")return p(vr({accountId:e,selectedPeriod:a,error:f("Missing Data","No combined statement group id found for delete")}));const c=`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/2.0/statement-uploads/combined-statement-groups/${o}`;return r.deleteAndGetJSON(c).pipe(y((d=>{if(P(d)===!0){const l=[];return s!=null&&s!==""&&l.push(ni([s])),d.data!=null&&l.push(cy(Aa(e,a),{statement_upload:d.data.statement_upload})),l.push(dy({accountId:e,selectedPeriod:a}),Mt(a,void 0,!0,!0)),p(...l)}return p(vr({accountId:e,selectedPeriod:a,error:d.status}))})),v((d=>p(vr({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Delete Combined Statement REST API call errored out "+(d instanceof Error?d.message:String(d)))})))))}))),(n,i,r)=>n.pipe(S(ZT.match),A((t=>r.deleteAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/connections/${t.payload.connectionId}`,void 0,Object.assign({"zeni-tenant-id":t.payload.tenantId})).pipe(y((e=>{if(M(e))return _([XT(t.payload.tenantId,t.payload.connectionId,t.payload.connectionType)]);const a=e.status??f("Failed to delete connection. Please try again.");return _([hu(t.payload.tenantId,a)])})),v((e=>{const a=e instanceof Error?e.message:"Unexpected error deleting connection.";return _([hu(t.payload.tenantId,f(a))])})))))),(n,i,r)=>n.pipe(S(QU.match),y((t=>{const{fileId:e,tenantId:a}=t.payload;return(a!=null?r.deleteAndGetJSON(`${r.apiEndPoints.fileMicroServiceBaseUrl}/1.0/files/${e}`,void 0,Object.assign({"zeni-tenant-id":a})):r.deleteAndGetJSON(`${r.apiEndPoints.fileMicroServiceBaseUrl}/1.0/files/${e}`)).pipe(y((s=>P(s)?p(ni([e]),WU({fileId:e})):p(A_({fileId:e,status:s.status})))),v((s=>p(A_({fileId:e,status:f("Unexpected Error","Delete File REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(ZU.match),y((t=>{const{fileIds:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.fileMicroServiceBaseUrl}/1.0/files?query=${encodeURIComponent(JSON.stringify({file_ids:e}))}`).pipe(y((a=>P(a)?p(ni(e),XU({fileIds:e})):p(N_({fileIds:e,status:a.status})))),v((a=>p(N_({fileIds:e,status:f("Unexpected Error","Delete File List REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(YA.match),A((t=>r.deleteAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/payment-instruments/${t.payload.bankAccountId}`).pipe(y((e=>{if(P(e)){const a=[];return a.push(lt({bankAccountId:t.payload.bankAccountId,fetchState:"Completed"})),t.payload.bankAccountContext==="vendor"&&a.push(Pp({paymentInstrumentId:t.payload.bankAccountId,vendorId:t.payload.vendorId})),a.push(N({messageSection:"delete_bank_account",messageText:"success",type:"success"})),_(a)}return p(lt({bankAccountId:t.payload.bankAccountId,fetchState:"Error",error:e.status}),N({messageSection:"delete_bank_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:e.status.message}]}))})),v((e=>p(lt({bankAccountId:t.payload.bankAccountId,fetchState:"Error",error:f("Unexpected Error","Bank Deletion REST API call errored out"+JSON.stringify(e))})))))))),(n,i,r)=>n.pipe(S(J1.match),A((t=>r.deleteAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-instruments/${t.payload.paymentInstrumentId}`).pipe(y((e=>{if(P(e)){const a=[];return a.push(zc({paymentInstrumentId:t.payload.paymentInstrumentId,fetchState:"Completed"})),t.payload.bankAccountContext==="vendor"&&a.push(Pp({paymentInstrumentId:t.payload.paymentInstrumentId,vendorId:t.payload.vendorId})),a.push(N({messageSection:"delete_bank_account",messageText:"success",type:"success"})),_(a)}return p(zc({paymentInstrumentId:t.payload.paymentInstrumentId,fetchState:"Error",error:e.status}),N({messageSection:"delete_bank_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:e.status.message}]}))})),v((e=>p(zc({paymentInstrumentId:t.payload.paymentInstrumentId,fetchState:"Error",error:f("Unexpected Error","Payment Instrument Deletion REST API call errored out"+JSON.stringify(e))})))))))),(n,i,r)=>n.pipe(S(Yw.match),y((t=>r.deleteAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user-roles/${t.payload.userRoleId}`).pipe(y((e=>M(e)?p(Qw(t.payload.userId),N({messageSection:"people_delete_person",messageText:"success",type:"success"}),lT({userType:"manager",id:t.payload.userId})):p($g(t.payload.userId)))),v((()=>p($g(t.payload.userId)))))))),(n,i,r)=>n.pipe(S(KF.match),A((t=>{const{approvalRuleId:e,useV3:a}=t.payload,s=a===!0?`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/reimbursements/approval-rules-v2`:`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/reimbursements/approval-rules`;return r.deleteAndGetJSON(s,{approval_rule_id:e}).pipe(y((o=>{if(P(o)&&o.data!=null){const c=o.data.approval_rules.map((l=>l.approval_rule_id)),d=[V({users:o.data.users}),Xe(o.data.approval_rules),N({messageSection:"reimbursement_approval_delete",messageText:"success",type:"success"}),HF(e,c)];return _(d)}return p(N({messageSection:"reimbursement_approval_delete",messageText:"failed",type:"error"}),zI(e,o.status))})),v((o=>p(zI(e,f("Unexpected Error","Delete Reimbursement Approval Rule errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(RF.match),y((t=>{const{reimbursementState:e}=i.value,a=e.reimbursementById[t.payload.reimbursementId];return r.deleteAndGetJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/transactions/${t.payload.reimbursementId}?query=${encodeURIComponent(JSON.stringify(sY))}`).pipe(y((s=>{if(M(s)){const o=[$d("Completed",t.payload.reimbursementId)];return a!=null&&o.push(qI({remiId:t.payload.reimbursementId,tab:a.reimbursementInfo.stage.code})),o.push(wd(t.payload.reimbursementId)),o.push(N({messageSection:"reimbursement_deleted",messageText:"success",type:"success"})),_(o)}return p($d("Error",t.payload.reimbursementId,s.status),N({messageSection:"reimbursement_deleted",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:s.status.message}]}))})),v((s=>p($d("Error",t.payload.reimbursementId,f("Unexpected Error","Delete reimbursement REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(cA.match),y((t=>{const{scheduleId:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/routines/${encodeURIComponent(e)}`).pipe(y((a=>M(a)?p(dA({scheduleId:e})):p(Xu({scheduleId:e,status:a.status}),_t()))),v((a=>p(Xu({scheduleId:e,status:f("Unexpected Error","Delete routine REST API call failed",a instanceof Error?{message:a.message}:void 0)}),_t()))))}))),(n,i,r)=>n.pipe(S(fR.match),y((t=>{const e=i.value,{scheduleAccruedDetailState:a}=e,{scheduleType:s}=t.payload,o=a.selectedJEAccruedScheduleKey,c=[];if(o==null)return _(c);const d=oa(o,e);if(d==null)return _(c);const l=d.jeScheduleId,u=d.vendor.name,m=e.scheduleAccruedDetailState.editScheduleStateByDetailId[l],h={...C0(e,m,o,!0)},g={je_schedule_type:s};return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${l}?query=${encodeURIComponent(JSON.stringify(g))}`,h).pipe(y((I=>P(I)&&I.data!=null?(c.push(vR(o),IR(s,l),cc("Completed"),N({messageSection:"delete_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:u}]})),_(c)):(c.push(cc("Error",I.status)),c.push(N({messageSection:"delete_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:I.status.message}]})),_(c)))),v((I=>_([N({messageSection:"delete_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(I)}]}),cc("Error",f("Unexpected Error",`Delete Accrued Schedule Detail REST API call errored out ${JSON.stringify(I)}`))]))))}))),(n,i,r)=>n.pipe(S(UR.match),y((t=>{const e=i.value,{scheduleDetailState:a}=e,{selectedJeScheduleDetailId:s,scheduleType:o}=t.payload,c=a.selectedJEScheduleKey,d=[];if(c==null)return _(d);const l=bt(c,e),u=l.vendor.name,m=l.jeScheduleId??s;if(m==null)return _(d);const h=e.scheduleDetailState.editScheduleStateByDetailId[o][m],g={...pc(e,h,c,o,!0)},I={je_schedule_type:o};return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${m}?query=${encodeURIComponent(JSON.stringify(I))}`,g).pipe(y((E=>P(E)&&E.data!=null?(d.push(kR(c),BR(o,m),mc("Completed"),N({messageSection:"delete_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:u}]})),_(d)):(d.push(mc("Error",E.status)),d.push(N({messageSection:"delete_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:E.status.message}]})),_(d)))),v((E=>_([N({messageSection:"delete_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(E)}]}),mc("Error",f("Unexpected Error",`Delete Schedule Detail REST API call errored out ${JSON.stringify(E)}`))]))))}))),(n,i,r)=>n.pipe(S(zP.match),y((t=>{const{macroId:e}=t.payload,a=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/skills/${encodeURIComponent(e)}`;return r.deleteAndGetJSON(a).pipe(y((s=>M(s)?p(KP({macroId:e})):p(ju(s.status)))),v((s=>p(ju(f("Unexpected Error","Delete skill REST API call failed",s instanceof Error?{message:s.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(dj.match),y((t=>{const{tagId:e,taskId:a}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tags/${e}`).pipe(y((s=>M(s)&&s.data!=null?_([ol({fetchState:"Completed",tagId:e}),lj(e),uj({tagId:e,taskId:a})]):_([ol({fetchState:"Error",tagId:e,error:s.status}),N({messageSection:"delete_tag",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:s.status.message}]})]))),v((s=>p(ol({fetchState:"Error",tagId:e,error:f("Unexpected Error","Delete tag REST API call errored out "+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(Ij.match),y((t=>{const{taskId:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${e}`).pipe(y((a=>{if(M(a)){const s=[];return e!=null&&s.push(lo(e)),s.push(Ct()),s.push(dl({fetchState:"Completed",taskId:e})),_(s)}return _([dl({fetchState:"Error",taskId:e,error:a.status}),N({messageSection:"delete_task",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]})])})),v((a=>p(dl({fetchState:"Error",taskId:e,error:f("Unexpected Error","Delete Task REST API call errored out "+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(Lj.match),A((t=>{const{taskGroupId:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/groups/${e}`).pipe(y((a=>P(a)&&a.data!=null?p(jj(e),qj({deletedTaskGroupId:e}),Fj({taskGroupId:e}),N({messageSection:"task_group_deletion_success",messageText:"success",type:"success"})):p(aE({fetchState:"Error",error:a.status})))),v((a=>p(aE({fetchState:"Error",error:f("Unexpected Error","Delete Task Group REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(sG.match),A((t=>{const{attachmentFileName:e,transactionId:a}=t.payload,s={transaction_type:a.type,attachment_file_names:[e]};return r.deleteAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/${a.id}/attachments?query=${encodeURIComponent(JSON.stringify(s))}`).pipe(y((o=>{if(P(o)){const c=De(a);return p(cG({thirdPartyTransactionId:a.id,attachmentFileName:e}),iG({id:c,attachmentFileName:e}),oG({transactionId:a,attachmentFileName:e}))}return p(uE({transactionId:a,attachmentFileName:e,status:o.status}))})),v((o=>p(uE({transactionId:a,attachmentFileName:e,status:f("Unexpected Error","Delete Transaction Attachment REST API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(QA.match),A((t=>{const{userId:e,bankAccountId:a,reimbursementId:s}=t.payload,o=i.value.userFinancialAccountState.financialAccountByUserId[e]?.bankAccountIds??[],c=s!=null?i.value.editRemiDetailViewState.editRemiStateById[s].remiDetailLocalData.paymentTo:i.value.editRemiDetailViewState.newRemiState.remiDetailLocalData.paymentTo;return r.deleteAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/users/${e}/bank-accounts/${a}`).pipe(y((d=>{if(P(d)){const l=[];l.push(lt({bankAccountId:t.payload.bankAccountId,fetchState:"Completed"}),WA({userId:e,bankAccountId:a}));const u=o.filter((m=>m!==a));return a===c&&(u.length===1?l.push(or({bankAccountId:u[0],reimbursementId:s,shouldOverWriteCurrentBankAccountId:!0})):l.push(or({reimbursementId:s,shouldOverWriteCurrentBankAccountId:!0}))),_(l)}return p(lt({bankAccountId:t.payload.bankAccountId,fetchState:"Error",error:d.status}))})),v((d=>p(lt({bankAccountId:t.payload.bankAccountId,fetchState:"Error",error:f("Unexpected Error","Bank Deletion REST API call errored out"+JSON.stringify(d))})))))}))),(n,i,r)=>n.pipe(S(fO.match),A((t=>{const{companyId:e}=t.payload,a=ur(i.value.tenantState,e);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{is_accounting_projects_enabled:!1}).pipe(y((s=>{const o=s.data?.companies??[];if(P(s)&&o.length>0){const c=[Q({payload:o,schema:{}})];return a!=null&&c.push(Um({enabled:!1,tenantId:a})),c.push(km()),c.push(N({messageSection:"accounting_projects_enabled_update",messageText:"success",type:"success"})),_(c)}return _([gt({status:s.status}),N({messageSection:"accounting_projects_enabled_update",messageText:"failed",type:"error"})])})),v((s=>p(gt({status:f("Unexpected error",`Update Accounting Projects Enabled errored out - ${s instanceof Error?s.message:JSON.stringify(s)}`)}),N({messageSection:"accounting_projects_enabled_update",messageText:"failed",type:"error"})))))}))),(n,i,r)=>n.pipe(S(sJ.match),y((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/settings/stripe-connect/callback`;return r.deleteAndGetJSON(t).pipe(A((e=>P(e)?p(NS({stripe_connected:!1,publishable_key:""}),Tt()):p(os(e.status)))),v((e=>p(os(f("Unexpected Error","Stripe disconnect REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(gO.match),A((t=>{const{companyId:e,accountId:a}=t.payload,s=ur(i.value.tenantState,e),o={capitalization_onboarding_dismissed_accounts:{[a]:!0}};return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,o).pipe(y((c=>P(c)&&s!=null?_([Cm({tenantId:s,accountId:a})]):_([]))),v((()=>_([]))))}))),Nz,Oz,Cz,(n,i,r)=>n.pipe(S(dG.match),y((t=>{const e=t.payload.attachmentId;return r.getFile(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/transactions/attachments/download/${e}`).pipe(y((a=>p(a!=null?lG({attachmentId:e,data:a}):pE()))),v((a=>(console.error(`REST API call errored out ${a}`),p(pE())))))}))),(n,i)=>n.pipe(S(Hj.match),y((r=>{const{taskIds:t,groupId:e}=r.payload,a=i.value,{groupByKey:s}=a.taskListState.uiState,o=Yj(s,e),c=[nE({taskIds:t,groupId:e,removeFromList:!1}),_l(t,e,o)];return _(c)}))),(n,i,r)=>n.pipe(S(vO.match),A((t=>{const{companyId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounting_provider_project_authorization_status`).pipe(y((a=>P(a)&&a.data!=null?a.data.is_accounting_provider_project_apis_authorized!==!0?_([IO()]):_([Bm(e)]):_([gt({status:a.status}),N({messageSection:"accounting_projects_enabled_update",messageText:"failed",type:"error"})]))),v((a=>p(gt({status:f("Unexpected error",`Accounting provider project authorization status errored out - ${a instanceof Error?a.message:JSON.stringify(a)}`)}),N({messageSection:"accounting_projects_enabled_update",messageText:"failed",type:"error"})))))}))),(n,i,r)=>n.pipe(S(CL.match),y((t=>{const{isAutoPayEnabled:e,companyId:a}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${a}`,{is_auto_pay_enabled:e}).pipe(y((s=>{if(M(s)&&s.data!=null){const o=[V({users:s.data.users}),H(s.data.user_roles),Q({payload:s.data.companies,schema:{}}),xL(),N({messageSection:e?"charge_card_auto_pay_enable":"charge_card_auto_pay_disable",messageText:"success",type:"success"})];return _(o)}return p(gI(s.status),N({messageSection:e?"charge_card_auto_pay_enable":"charge_card_auto_pay_disable",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:s.status.message}]}))})),v((s=>p(gI(f("Unexpected Error","Enable Charge Card Auto Pay errored out"+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(cD.match),y((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/config`;return r.putAndGetJSON(t,{is_invoicing_enabled:!0}).pipe(A((e=>P(e)&&e.data!=null?p(Mi(e.data),dD()):p(Jh(e.status)))),v((e=>p(Jh(f("Unexpected Error","Enable invoicing REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(jL.match),y((t=>{const{companyId:e,setupViewType:a}=t.payload;let s;switch(a){case"reimbursement":s={is_reimbursement_enabled:!0};break;case"charge_cards":s={is_charge_cards_enabled:!0};break;case"debit_cards":s={is_debit_cards_enabled:!0};break;case"charge_cards__debit_cards":s={is_charge_cards_enabled:!0,is_debit_cards_enabled:!0};break;case"zeni_accounts":s={is_deposit_accounts_enabled:!0};break;default:s={is_bill_pay_enabled:!0}}return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,s).pipe(y((o=>{if(P(o)&&o.data!=null){const c=[V({users:o.data.users}),H(o.data.user_roles),Q({payload:o.data.companies,schema:{}}),Re({companyId:o.data.companies[0].company_id}),GL()];return _(c)}return p(NI(o.status))})),v((o=>p(NI(f("Unexpected Error","Enable Setup errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(xw.match),y((t=>{const{publicToken:e,linkTokenType:a}=t.payload,s={public_token:e};return a!=="update_account"&&(s.is_primary_for_onboarding=!0,s.is_primary_for_bill_pay=!0,s.is_primary_for_reimbursements=!0,s.is_primary_for_charge_cards=!0,s.is_primary_for_deposit_accounts=!0),r.postAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/plaid/public-token`,s).pipe(y((o=>{if(P(o)&&o.data!=null){const c=o.data.payment_accounts.map((l=>l.payment_account_id)),d=[W(o.data.accounts,"onboarding"),ve(o.data.payment_accounts),Uw(c,a)];return _(d)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),Ig(o.status,a))})),v((o=>p(Ig(f("Unexpected Error","Establish Onboarding Plaid Connection errored out"+JSON.stringify(o)),a)))))}))),(n,i,r)=>n.pipe(S(yF.match),y((t=>{const{publicToken:e,companyId:a,setupViewType:s,linkTokenType:o,plaidAccountKeyType:c,zeniMappedAccountId:d}=t.payload,l={public_token:e},u={},m=i.value.paymentAccountListState,h=i.value.tenantState.loggedInUser?.userId??"";o!=="link_external_account"&&(s==null&&c!=="expense_automation_reconcile"?l.is_user_account=!0:c==="bill_pay_setup"?l.is_primary_for_bill_pay=!0:c==="reimbursement_setup"?l.is_primary_for_reimbursements=!0:c==="charge_card_setup"?l.is_primary_for_charge_cards=!0:c==="account_setup"?l.is_primary_for_deposit_accounts=!0:c==="billing_setup"?l.is_primary_for_onboarding=!0:c==="expense_automation_reconcile"&&(u.zeni_mapped_account_id=d??""));const g=Object.entries(u).length>0?`?query=${JSON.stringify(u)}`:"";return r.postAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/plaid/public-token${g}`,l).pipe(y((I=>{if(P(I)&&I.data!=null){const E=I.data.payment_accounts[0],b=[ve(I.data.payment_accounts),Wt({data:I.data.payment_accounts,updateType:"merge"}),_F(o,c)];if(c==="bill_pay_detail"&&b.push(hF(E.payment_account_id)),c==="charge_card_payment"){const T=SF(E),O=gF(T,m.paymentAccountBalanceFetchStatus);b.push(fF(O))}if(s!=null&&(s==="billing"&&b.push(vc(s,c,!1)),E.is_primary_for_bill_pay,E.is_primary_for_bill_pay===!0&&b.push(Yr({companyId:a,primaryFundingAccountId:E.payment_account_id,accountType:"paymentAccount",productType:"bill_pay"})),E.is_primary_for_reimbursements===!0&&b.push(Yr({companyId:a,primaryFundingAccountId:E.payment_account_id,accountType:"paymentAccount",productType:"reimbursement"})),E.is_primary_for_charge_cards===!0&&b.push(Yr({companyId:a,primaryFundingAccountId:E.payment_account_id,accountType:"paymentAccount",productType:"charge_cards"})),E.is_primary_for_deposit_accounts===!0&&b.push(Yr({companyId:a,primaryFundingAccountId:E.payment_account_id,accountType:"paymentAccount",productType:"zeni_accounts"}))),I.data.bank_accounts!=null){const T=I.data.bank_accounts.map((O=>O.bank_account_id));b.push(we(I.data.bank_accounts),Tp({bankAccountIds:T,userId:h}))}return s!=null?b.push(W(I.data.accounts,wa(s))):b.push(N({messageSection:"account_added",messageText:"success",type:"success"})),_(b)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),JI(I.status,o,c))})),v((I=>p(JI(f("Unexpected Error","Establish Plaid Connection errored out"+JSON.stringify(I)),o,c)))))}))),(n,i,r)=>n.pipe(S(CC.match),y((t=>{const{accountId:e}=t.payload,a=i.value,s=Y(a),o=a.expenseAutomationViewState.selectedPeriodByTenantId[s.tenantId],c=Na(a,e,o),d={account_id:e,bank_balance:c?.balance?.amount??null,cleared_balance:c?.clearedBalance?.amount??null,variance:c?.variance?.amount??null},l=`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/excluded-accounts`;return r.postAndGetJSON(l,d).pipe(y((u=>{if(P(u)){const m=kn("excluded_account_reconciliation",e),h=kn("account_reconciliation",e);return p(xC({account:u.data?.excluded_account??void 0,selectedPeriod:o}),uy({oldKey:h,newKey:m}),N({messageSection:"account_excluded_from_reconciliation",messageText:"success",type:"success",variables:[{variableName:"_account-name_",variableValue:c?.account.accountName??""}]}))}return p(py({error:u.status}),N({messageSection:"account_excluded_from_reconciliation",messageText:"failed",type:"error"}))})),v((u=>p(py({error:f("Unexpected Error",`Exclude account from reconciliation REST API call errored out ${JSON.stringify(u)}`)}),N({messageSection:"account_excluded_from_reconciliation",messageText:"failed",type:"error"})))))}))),(n,i,r)=>n.pipe(S(UL.match),y((t=>{const{companyId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{is_company_interested_in_charge_card:!0}).pipe(y((a=>{if(M(a)&&a.data!=null){const s=[V({users:a.data.users}),H(a.data.user_roles),Q({payload:a.data.companies,schema:{}}),kL()];return _(s)}return p(fI(a.status),N({messageSection:"charge_card_express_interest",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),v((a=>p(fI(f("Unexpected Error","Express Interest in Charge Card errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(RT.match),A((t=>{const e=(a=>{const s=new FormData;return a.forEach(((o,c)=>{s.append(`attachment_file_${c}`,o);const d=JSON.stringify({file_name:o.name,content_type:o.type,size:o.size});s.append(`attachment_json_${c}`,d)})),s})(t.payload.files);return r.postFormData(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/policy-documents/extract`,e).pipe(y((a=>M(a)&&a.data!=null&&a.data.extracted_rules!=null?p(po(a.data.extracted_rules)):p(iu(a.status)))),v((a=>p(iu(f("Unexpected Error","Extract card-policy document REST API call errored out"+JSON.stringify(a)))))),ge(n.pipe(S(ou.match))))}))),(n,i,r)=>n.pipe(S(Te.match),y((t=>{const{accountListKey:e,fetchFullResponse:a,excludeAccountPayableAccounts:s,excludeAccountReceivableAccounts:o,isLimitedCategoryEnabled:c,filterAccountTypes:d,isIncludeDeleted:l}=t.payload,u=((h,g)=>g.length>0?g:h===!0?["cogs","expenses","other_expense"]:[])(c,d),m={is_bookkeeping_admin:a,is_exclude_account_payable_accounts:s,is_exclude_account_receivable_accounts:o,account_types:u,...l===!0&&{is_include_deleted:!0}};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts?query=${encodeURIComponent(JSON.stringify(m))}`).pipe(y((h=>{if(P(h)){const g=[W(h.data?.accounts??[],"account_list"),cP({accountListKey:e,accountListResponse:h})];return _(g)}return p(Iu({accountListKey:e,status:h.status}))})),v((h=>p(Iu({accountListKey:e,status:f("Unexpected Error","Fetch Accounts REST API call errored out"+JSON.stringify(h))})))))}))),(n,i,r)=>n.pipe(S(Tu.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts?query=${encodeURIComponent(JSON.stringify({is_bookkeeping_admin:!1,is_include_tax_1099_config:!0}))}`).pipe(y((t=>{if(P(t)){const e=[],a=[];return t.data?.accounts.forEach((s=>{a.push(s)})),e.push(W([...a],"account_list_by_type")),e.push(lP({accountPayload:a})),_(e)}return p(Pu({status:t.status}))})),v((t=>p(Pu({status:f("Unexpected Error","Fetch Accounts For Account Type REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(Cy.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts?query=${encodeURIComponent(JSON.stringify({is_bookkeeping_admin:!1,is_include_tax_1099_config:!1}))}`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=[],a=[];return t.data.accounts.forEach((s=>{a.push(s)})),e.push(W([...a],"account_list_by_type")),e.push(mx({accountPayload:a})),_(e)}return p(xy({status:t.status}))})),v((t=>p(xy({status:f("Unexpected Error","Fetch Accounts For Account Type REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(Bf.match),y((t=>{const{scheduleType:e}=t.payload,{scheduleListState:a}=i.value,s=Sc(a,e),o=t.payload.timeframeAndCategory!=null?t.payload.timeframeAndCategory.selectedTimeframe:s.selectedTimeframe,c=t.payload.timeframeAndCategory!=null?t.payload.timeframeAndCategory.selectedCategoryId:s.selectedCategoryId,d=_a(o),l=_s(c,o),u=s.jeScheduleAccruedByListKey[l];if(u!=null&&u.fetchState==="Completed"&&t.payload.cacheOverride===!1)return _([]);const m={start_date:X(d.start),end_date:X(d.end),je_schedule_type:e,sort_by:"transaction_date",sort_order:"desc",filter:t.payload.statusFilter};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules?query=${encodeURIComponent(JSON.stringify(m))}`).pipe(y((h=>{if(P(h)&&h.data!=null){const g=[];return g.push(ua(h.data.je_schedules),Ar(h.data.je_schedules,h.data.scheduled_journal_entries),qR(e,o,c,h.data.je_schedules)),_(g)}return p(Df(e,o,c,h.status))})),v((h=>p(Df(e,o,c,f("Unexpected Error","Accrued Schedule List REST API call errored out"+JSON.stringify(h)))))))}))),xz,(n,i,r)=>n.pipe(S(mP.match),A((t=>{const{addressId:e,cacheOverride:a}=t.payload,s=dt(i.value.addressState,e);return a===!0||s==null?r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/addresses/${e}`).pipe(y((o=>P(o)?p(z(o.data?.addresses??[]),xu(e)):p(Uu({addressId:e,status:o.status})))),v((o=>p(Uu({addressId:e,status:f("Unexpected Error","Fetch Address REST API call errored out"+JSON.stringify(o))}))))):p(xu(e))}))),(n,i,r)=>n.pipe(S(PP.match),A((t=>{const{fromMonth:e,toMonth:a,cacheOverride:s}=t.payload,o=i.value.aggregatedReportViewState.aggregatedReport,c=NP(e,a);if(!(s||o[c]?.fetchState!=="Error"&&o[c]?.fetchState!=="Completed"))return p(AP());const d=`${r.apiEndPoints.agentPerfBaseUrl}/1.0/agent-performance/reports/aggregated?from_month=${e}&to_month=${a}`;return r.getJSON(d).pipe(y((l=>P(l)?p(OP(l.data)):p($u(l.status)))),v((l=>p($u(f("Unexpected error","REST API call errored out"+JSON.stringify(l)))))))}))),(n,i,r)=>n.pipe(S(So.match),A((()=>{const t=`${`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels`}/ai-accountant/customers`;return r.getJSON(t).pipe(y((e=>{if(P(e)){const a=e.data?.customers??[],s=e.data?.users??[];return _([gP(a),V({users:s}),fP(a)])}return p(Du(e.status))})),v((e=>p(Du(f("Unexpected error","AI Accountant customers fetch failed: "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(vP.match),A((t=>{const{tenantId:e,fetchNextPage:a}=t.payload,s=i.value.aiAccountantViewState.customersByTenantId[e],o=a&&s?.jobsPageToken!=null?s.jobsPageToken:null,c=new URLSearchParams({page_size:"50",tenant_id:e});o!=null&&c.set("page_token",o);const d=`${`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels`}/ai-accountant/jobs?${c.toString()}`;return r.getJSON(d).pipe(y((l=>{if(P(l)){const u=l.data?.jobs??[],m=l.data?.users??[],h=l.data?.next_page_token??null;return _([V({users:m}),IP(e,u,a),bP(e,h)])}return p(Ju({tenantId:e,error:l.status}))})),v((l=>p(Ju({tenantId:e,error:f("Unexpected error","AI Accountant jobs fetch failed: "+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(aw.match),y((()=>{const t=`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/ai-agents-activation/status`;return r.getJSON(t).pipe(y((e=>{if(P(e)&&e.data!=null){const s=(e.data.phases??[]).map(IH);return p(rw({phases:s,counts:(a=e.data.counts,{customerCount:a?.customer_count??0,glAccountCount:a?.gl_account_count??0,targetTransactionCount:a?.target_transaction_count??0,transactionCount:a?.transaction_count??0,vendorCount:a?.vendor_count??0})}))}var a;return p(og(e.status))})),v((e=>p(og(f("Unexpected Error","fetchAiAgentsActivationStatus errored out "+JSON.stringify(e)))))))}))),(n,i)=>n.pipe(S(DO.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([Ea(),Ge(),_r(),hr(),Sr(),gr(),fr(),pn(),jo(),jm(),Tn(0,"dueDate","descending",!1),qo()]);{const e=i.value,a=[];return e.companyViewState.managementView.fetchState==="In-Progress"||e.companyViewState.managementView.hasValidState()||a.push(Ea()),e.companyViewState.zeniUsers.fetchState==="In-Progress"||e.companyViewState.zeniUsers.hasValidState()||a.push(Ge()),e.subscriptionViewState.subscriptionListView.fetchState==="In-Progress"||e.subscriptionViewState.subscriptionListView.hasValidState()||a.push(_r()),e.companyViewState.portfolioView.fetchState==="In-Progress"||e.companyViewState.portfolioView.hasValidState()||a.push(hr()),e.onboardingCockpitViewState.fetchState==="In-Progress"||e.onboardingCockpitViewState.hasValidState()||a.push(Sr()),e.onboardingCockpitViewState.qboConnectionPool.fetchState==="In-Progress"||e.onboardingCockpitViewState.qboConnectionPool.hasValidState()||a.push(gr()),e.onboardingCockpitViewState.onboardingCompletedCompanies.fetchState==="In-Progress"||e.onboardingCockpitViewState.onboardingCompletedCompanies.hasValidState()||a.push(fr()),e.reviewCompanyViewState.fetchState!=="In-Progress"&&e.reviewCompanyViewState.hasValidState()===!1&&a.push(pn()),e.companyHealthMetricViewState.fetchState!=="In-Progress"&&e.companyHealthMetricViewState.hasValidState()===!1&&(a.push(jo()),a.push(qo())),e.companyViewState.metaDataView.fetchState!=="In-Progress"&&e.companyViewState.metaDataView.hasValidState()===!1&&a.push(jm()),e.companyTaskManagerViewState.fetchState!=="In-Progress"&&e.companyTaskManagerViewState.hasValidState()===!1&&a.push(Tn(0,"dueDate","descending",!1)),_(a)}}))),(n,i)=>n.pipe(S(sx.match),A((r=>{const{cacheOverride:t,refreshViewInBackground:e,isAccrualEnabled:a}=r.payload,s=i.value,{monthEndCloseChecksState:o}=s,{monthEndCloseChecksByTenantId:c}=o,d=Y(s),l=d.companyId,u=s.expenseAutomationViewState.selectedPeriodByTenantId[d.tenantId],{selectedTransactionCategorizationTab:m}=s.expenseAutomationTransactionsViewState,h=Je(u),g=Se(h.start),I=Se(h.end),E=Ie(u),b=c?.[d.tenantId]?.[E],T=b?.monthEndCloseCheckList.some((O=>O.id==="reconciliation"))??!1;if(g==null||I==null||l==null)throw Error(`Invalid start - ${g} and end - ${I} period from given ${u}`);if(t===!0){const O=[];return O.push(br(m,{start:g,end:I},t,!1,void 0,void 0,e,!1),Er({start:g,end:I},{amount:75,currencyCode:"USD",currencySymbol:"$"},t,e),$n(u,t,e,null),Vt({start:g,end:I},t,a)),T&&O.push(Mt(u,void 0,t,e)),_(O)}{const O=[];s.expenseAutomationMissingReceiptsViewState.fetchState==="In-Progress"||s.expenseAutomationMissingReceiptsViewState.hasValidState()&&s.expenseAutomationMissingReceiptsViewState.transactionIdsBySelectedPeriod[E]!=null||O.push(Er({start:g,end:I},{amount:75,currencyCode:"",currencySymbol:""},t,e)),s.expenseAutomationFluxAnalysisViewState.fetchState==="In-Progress"||s.expenseAutomationFluxAnalysisViewState.hasValidState()&&s.expenseAutomationFluxAnalysisViewState.groupsBySelectedPeriod[E]!=null||O.push($n(u,t,e,null));const x=s.expenseAutomationJESchedulesViewState.uiState.selectedPageTab;if(x==="actual_matching")s.expenseAutomationActualMatchingViewState.matchIdsByPeriod[E]==null&&O.push(Vt({start:g,end:I},t,a));else{const U=di(x,E);s.expenseAutomationJESchedulesViewState.fetchState==="In-Progress"||s.expenseAutomationJESchedulesViewState.hasValidState()&&s.expenseAutomationJESchedulesViewState.jeScheduleTransactionKeysByPeriodAndTab[U]!=null&&s.expenseAutomationJESchedulesViewState.failedJeScheduleTransactionKeysByPeriodAndTab[U]!=null||O.push(Vt({start:g,end:I},t,a))}return s.expenseAutomationReconciliationViewState.fetchState!=="In-Progress"&&s.expenseAutomationReconciliationViewState.accountReconciliationRecordsBySelectedPeriod[E]==null&&T&&O.push(Mt(u,void 0,t,e)),s.expenseAutomationTransactionsViewState.transactionCategorizationView[m].fetchState==="In-Progress"||s.expenseAutomationTransactionsViewState.transactionCategorizationView[m].hasValidState()!==!1&&s.expenseAutomationTransactionsViewState.transactionCategorizationView[m].transactionIdsBySelectedPeriod[E]!=null||O.push(br(m,{start:g,end:I},t,!1,void 0,void 0,e,!1)),_(O)}}))),(n,i)=>n.pipe(S(Ww.match),A((r=>{const{companyId:t,shouldFetchClassList:e}=r.payload,a=[pr(t),Me("manager",!0)];return e&&a.push(ne()),_(a)}))),(n,i,r)=>n.pipe(S(il.match),A((()=>r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tags?query=${encodeURIComponent(JSON.stringify({filter_type:"all"}))}`).pipe(y((t=>P(t)&&t.data!=null?p(tn(t.data.tags),pj({data:t.data.tags})):p(Fb({fetchState:"Error",error:t.status})))),v((t=>p(Fb({fetchState:"Error",error:f("Unexpected Error","Fetch Tag List REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(hl.match),A((()=>r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/groups?query=${encodeURIComponent(JSON.stringify({filter_type:"all"}))}`).pipe(y((t=>P(t)&&t.data!=null?p(Qb(t.data.task_groups),Gj({data:t.data.task_groups})):p(rE({fetchState:"Error",error:t.status})))),v((t=>p(rE({fetchState:"Error",error:f("Unexpected Error","Fetch all task groups REST API call errored out"+JSON.stringify(t))})))))))),Uz,(n,i)=>n.pipe(S(ON.match),y((r=>{const{cacheOverride:t,vendorName:e}=r.payload,a=i.value,s=[];if(t===!0)e!=null&&s.push(ir(e,"vendor")),s.push(hn(e));else if(e!=null){const{fetchState:o,recommendations:c=[]}=Sn(a,e,"vendor");o==="In-Progress"?s.push(hn(e)):o!=="Completed"?(e&&s.push(ir(e,"vendor")),s.push(hn(e))):s.push(zp({recommendations:c,vendorId:void 0}))}return _(s)}))),(n,i,r)=>n.pipe(S(OA.match),A((t=>{const{vendorId:e,reportDate:a}=t.payload,s={vendor_id:e,report_date:a.format("YYYY-MM-DD")};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/accounts_payable_aging_detail?query=${encodeURIComponent(JSON.stringify(s))}`).pipe(y((o=>{if(P(o)&&o.data!=null){const d=[le(o.data.report.vendors),CA(o.data.report,e,a)];return _(d)}const c=[pp(o.status,e,a)];return _(c)})),v((o=>{const c=[pp(f("Unexpected error","ApAging Detail Report REST API call errored out"+JSON.stringify(o)),e,a)];return _(c)})))}))),(n,i,r)=>n.pipe(S(vo.match),A((t=>{const{reportDate:e,cacheOverride:a}=t.payload,s={is_reimbursements_user_allowed:!0,report_date:e.format(re)},o=i.value.apAgingState,c=mp(e);return o.apAgingBalancesByDate[c]!=null&&a===!1?_([]):r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/accounts_payable_aging?query=${encodeURIComponent(JSON.stringify(s))}`).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[le(d.data.report.vendors,"merge"),xA(e,d.data.report)];return _(l)}{const l=[yp(d.status)];return _(l)}})),v((d=>{const l=[yp(f("Unexpected error","ApAging Report REST API call errored out"+JSON.stringify(d)))];return _(l)})))}))),(n,i,r)=>n.pipe(S(UA.match),A((t=>{const{customerId:e,reportDate:a}=t.payload,s={customer_id:e,report_date:a.format("YYYY-MM-DD")};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/accounts_receivable_aging_detail?query=${encodeURIComponent(JSON.stringify(s))}`).pipe(y((o=>{if(P(o)&&o.data!=null){const d=[_p(o.data.report.customers,!0),kA(o.data.report,e,a)];return _(d)}const c=[hp(o.status,e,a)];return _(c)})),v((o=>{const c=[hp(f("Unexpected error","ArAging Detail Report REST API call errored out"+JSON.stringify(o)),e,a)];return _(c)})))}))),(n,i,r)=>n.pipe(S(Io.match),A((t=>{const{reportDate:e,cacheOverride:a}=t.payload,s={report_date:e.format("YYYY-MM-DD")},o=i.value.arAgingState,c=mp(e);return o.arAgingBalancesByDate[c]!=null&&a===!1?_([]):r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/accounts_receivable_aging?query=${encodeURIComponent(JSON.stringify(s))}`).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[_p(d.data.report.customers),BA(e,d.data.report)];return _(l)}{const l=[Sp(d.status)];return _(l)}})),v((d=>{const l=[Sp(f("Unexpected error","ArAging Report REST API call errored out"+JSON.stringify(d)))];return _(l)})))}))),(n,i,r)=>n.pipe(S(DA.match),y((t=>{const{companyId:e,fetchAction:a,reportGroupId:s}=t.payload,o=i.value.companyState.companiesById[e].companyInfo.tenantId;if(o!=null){const c=TK(a,s),{userId:d,sessionId:l}=r,u={"zeni-user-id":d,"zeni-tenant-id":o,"zeni-session-id":l};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/audit?query=${encodeURIComponent(JSON.stringify(c))}`,u).pipe(y((m=>{if(P(m)&&m.data!=null){const h=[JA(e,s,m.data)];return _(h)}{const h=[gp(e,s,m.status)];return _(h)}})),v((m=>{const h=[gp(e,s,f("Unexpected error","Audit Report Group view errored out"+JSON.stringify(m)))];return _(h)})))}return _([])}))),(n,i,r)=>n.pipe(S(wA.match),A((t=>{const{cacheOverride:e}=t.payload,a=i.value,{fetchState:s}=a.auditReportViewState.auditRuleGroupView;return e===!0||s!=="In-Progress"?r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/audit-rule-groups`).pipe(y((o=>{if(P(o)&&o.data!=null){const c=[$A(o.data.audit_rule_groups)];return _(c)}{const c=[fp(o.status)];return _(c)}})),v((o=>{const c=[fp(f("Unexpected error","Audit rule group view errored out"+JSON.stringify(o)))];return _(c)}))):_([])}))),(n,i,r)=>n.pipe(S(IM.match),A((()=>{const t=i.value.autotransferRulesState.ruleUpdateLocalData,e={...t.sourceAccount!=null&&{from_account:{account_id:t.sourceAccount.id,account_type:an(t.sourceAccount.accType)??""}},...t.destinationAccount!=null&&{to_account:{account_id:t.destinationAccount.id,account_type:an(t.destinationAccount.accType)??""}},...t.amount!=null&&{amount:t.amount.amount,currency_code:t.amount.currencyCode,currency_symbol:t.amount.currencySymbol}};return r.postAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts/transfers/review`,e).pipe(y((a=>P(a)&&a.data!=null?p(bM(a.data)):p(Xf(a.status)))),v((a=>p(Xf(f("Unexpected Error","Fetch auto transfer review detail REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(EM.match),y((t=>{const{ruleId:e,cacheOverride:a}=t.payload,s=[],o=i.value,c=ee(o.autotransferRulesState.historyByRuleId,e,void 0);if(a===!0||c==null||c.fetchState!=="In-Progress"){s.push(Ic({ruleId:e,fetchState:"In-Progress"}));const d=r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto/${e}/history`).pipe(y((l=>P(l)&&l.data!=null?p(TM({ruleId:e,historicEventsPayload:l.data.activities})):p(Ic({ruleId:e,fetchState:"Error",error:l.status})))),v((l=>p(Ic({ruleId:e,fetchState:"Error",error:f("Unexpected Error","Fetch auto transfer rule history REST API call errored out "+JSON.stringify(l))})))));return j(_(s),d)}return _(s)}))),(n,i,r)=>n.pipe(S(PM.match),A((t=>{const e=i.value,{cacheOverride:a}=t.payload,{autotransferRulesState:s,depositAccountListState:o,paymentAccountListState:c}=e;return a===!0||s.hasValidState()===!1&&s.fetchState!=="In-Progress"?r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto/list`).pipe(y((d=>{if(P(d)&&d.data!=null){const l=d.data.auto_transfer_rules.map(jl),u=[AM({rules:l})];return o.fetchState!=="In-Progress"&&o.fetchState!=="Completed"&&u.push(Be()),c.fetchState!=="In-Progress"&&c.fetchState!=="Completed"&&u.push(ze()),u.push(ev(!1,!0)),_(u)}return p(tv({fetchState:"Error",error:d.status}))})),v((d=>p(tv({fetchState:"Error",error:f("Unexpected Error","Fetch auto transfer rules REST API call errored out "+JSON.stringify(d))}))))):_([])}))),(n,i)=>n.pipe(S(VA.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([Ut("month",!0),Ut("quarter",!0),Ut("year",!0)]);{const e=[],a=i.value.balanceSheetClassesViewState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(Ut("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(Ut("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push(Ut("year")),_(e)}}))),(n,i)=>n.pipe(S(bo.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([xt("month"),xt("quarter"),xt("year")]);{const e=[],a=i.value.balanceSheetState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(xt("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(xt("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push(xt("year")),_(e)}}))),(n,i,r)=>n.pipe(S(Ut.match),y((t=>{const e={is_full_response:!0,time_series_groups:[PK(t.payload.timeframe)],is_group_by_class:!0,...t.payload.cacheOverride===!0?{is_hard_refresh:!0}:{}};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/balance_sheet?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&P(a)){const s=[],{report:o}=a.data,c=o.currency;return s.push(oe(t.payload.timeframe,fe("cash_and_equivalents"),"balance_sheet_by_classes",o.assets.current_assets.cash_and_equivalents,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,fe("accounts_receivable"),"balance_sheet_by_classes",o.assets.current_assets.accounts_receivable,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,fe("other_current_assets"),"balance_sheet_by_classes",o.assets.current_assets.other_current_assets,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,fe("fixed_assets"),"balance_sheet_by_classes",o.assets.fixed_assets,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,fe("other_assets"),"balance_sheet_by_classes",o.assets.other_assets,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,fe("accounts_payable"),"balance_sheet_by_classes",o.liabilities.current_liabilities.accounts_payable,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,fe("credit_cards"),"balance_sheet_by_classes",o.liabilities.current_liabilities.credit_cards,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,fe("other_current_liabilities"),"balance_sheet_by_classes",o.liabilities.current_liabilities.other_current_liabilities,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,fe("long_term_liabilities"),"balance_sheet_by_classes",o.liabilities.long_term_liabilities,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,fe("equity"),"balance_sheet_by_classes",o.equity,o.classes,o.accounts,c)),s.push(LA({timeframe:t.payload.timeframe,report:a.data})),_(s)}return p(Ip(a.status,t.payload.timeframe))})),v((a=>p(Ip(f("Unexpected Error","Balance Sheet by Class REST API call errored out: "+(a instanceof Error?a.message:JSON.stringify(a))),t.payload.timeframe)))))}))),kz,(n,i,r)=>n.pipe(S(kt.match),y((t=>{const e={is_full_response:!0,time_series_groups:[AK(t.payload.timeframe)],is_group_by_project:!0,...t.payload.cacheOverride===!0?{is_hard_refresh:!0}:{}};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/balance_sheet?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&P(a)){const s=[],{report:o}=a.data,c=o.currency;return s.push(Bt(o.projects)),s.push(ie(t.payload.timeframe,fe("cash_and_equivalents"),"balance_sheet_by_projects",o.assets.current_assets.cash_and_equivalents,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("accounts_receivable"),"balance_sheet_by_projects",o.assets.current_assets.accounts_receivable,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("other_current_assets"),"balance_sheet_by_projects",o.assets.current_assets.other_current_assets,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("fixed_assets"),"balance_sheet_by_projects",o.assets.fixed_assets,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("other_assets"),"balance_sheet_by_projects",o.assets.other_assets,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("accounts_payable"),"balance_sheet_by_projects",o.liabilities.current_liabilities.accounts_payable,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("credit_cards"),"balance_sheet_by_projects",o.liabilities.current_liabilities.credit_cards,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("other_current_liabilities"),"balance_sheet_by_projects",o.liabilities.current_liabilities.other_current_liabilities,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("long_term_liabilities"),"balance_sheet_by_projects",o.liabilities.long_term_liabilities,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("equity"),"balance_sheet_by_projects",o.equity,o.accounts,c)),s.push(FA({timeframe:t.payload.timeframe,report:a.data})),_(s)}return p(bp(a.status,t.payload.timeframe))})),v((a=>p(bp(f("Unexpected Error","Balance Sheet by Project REST API call errored out: "+(a instanceof Error?a.message:JSON.stringify(a))),t.payload.timeframe)))))}))),(n,i)=>n.pipe(S(qA.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([kt("month",!0),kt("quarter",!0),kt("year",!0)]);{const e=[],a=i.value.balanceSheetProjectViewState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(kt("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(kt("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push(kt("year")),_(e)}}))),(n,i,r)=>n.pipe(S(fc.match),A((()=>{const t=`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts?query=${encodeURIComponent(JSON.stringify({is_bookkeeping_admin:!0,is_exclude_account_payable_accounts:!0,is_exclude_account_receivable_accounts:!0,account_types:["bank"]}))}`;return r.getJSON(t).pipe(y((e=>{if(P(e)&&e.data!=null){const a=e.data.accounts.map((o=>o.account_id)),s=[];return s.push(WR({bankAccountIds:a}),W(e.data.accounts,"bill_pay")),p(...s)}return p($f(e.status))})),v((e=>p($f(f("Unexpected error","Fetch Bank Accounts REST API call errored out"+JSON.stringify(e)))))))}))),(n,i)=>n.pipe(S(ZR.match),y((r=>{const{cacheOverride:t}=r.payload,e=[],a=i.value,s=Y(a),o=!!s.companyZeniAccountInfo?.info?.isZeniAccountEnabled;if(t===!0)e.push(fc()),e.push(ze()),o===!0&&e.push(Be());else{const c=a.settingsViewState.bankConnection;c.fetchState!=="Completed"&&c.fetchState!=="In-Progress"&&e.push(fc());const d=a.paymentAccountListState;d.hasValidState()===!1&&d.fetchState!=="In-Progress"&&e.push(ze());const l=a.depositAccountListState;o===!0&&l.hasValidState()===!1&&l.fetchState!=="In-Progress"&&e.push(Be())}return j(_(e))}))),(n,i,r)=>n.pipe(S(ZA.match),A((t=>{const{bankAccountIban:e,cacheOverride:a}=t.payload,s=i.value.bankAccountViewState,o=s.bankCountryNamebyIban[e]?.countryName;if(a===!1&&o)return p(XA(e));{const c={iban:t.payload.bankAccountIban};return r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/institutions?query=${JSON.stringify(c)}`).pipe(y((d=>P(d)?p(eN({bankAccountIban:t.payload.bankAccountIban,institutions:d.data?.institutions??[]})):p(Ap({bankAccountIban:e,status:d.status})))),v((d=>p(Ap({bankAccountIban:e,status:f("Unexpected Error","Get Bank Country Name REST API call errored out"+JSON.stringify(d))})))))}}))),(n,i,r)=>n.pipe(S(tN.match),A((t=>{const{routingNumber:e,cacheOverride:a}=t.payload,s=i.value.bankAccountViewState,o=s.bankNameByRouting[e]?.bankName;if(a===!1&&o)return p(aN(e));{const c={routing_numbers:[t.payload.routingNumber]};return r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/institutions?query=${JSON.stringify(c)}`).pipe(y((d=>P(d)?p(rN({routingNumber:t.payload.routingNumber,institutions:d.data?.institutions??[]})):p(Np({routingNumber:e,status:d.status})))),v((d=>p(Np({routingNumber:e,status:f("Unexpected Error","Get Bank Name By Routing REST API call errored out"+JSON.stringify(d))})))))}}))),(n,i,r)=>n.pipe(S(nN.match),A((t=>{const{swiftCode:e,cacheOverride:a}=t.payload,s=i.value.bankAccountViewState,o=s.bankNameBySwift[e]?.bankName;if(a===!1&&o)return p(sN(e));{const c={swift_code:t.payload.swiftCode};return r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/institutions?query=${JSON.stringify(c)}`).pipe(y((d=>P(d)?p(oN({swiftCode:t.payload.swiftCode,institutions:d.data?.institutions??[]})):p(Op({swiftCode:e,status:d.status})))),v((d=>p(Op({swiftCode:e,status:f("Unexpected Error","Get Bank Name By Swift REST API call errored out"+JSON.stringify(d))})))))}}))),(n,i)=>n.pipe(S(Jc.match),y((r=>{const{billId:t,cacheOverride:e,isShowDeletedBillsEnabled:a,hasZeniAssistAccess:s}=r.payload,o=i.value,c=[];if(e)c.push(Tc(t,a,s,!0)),c.push(wc(t));else{let d=0;const l=Oe(t),u=ee(o.billDetailViewState.billDetailById,l,void 0);(u==null||u?.fetchState!="In-Progress"&&u?.fetchState!="Completed"||u?.vendorId==null)&&(d++,c.push(Tc(t,a,!1))),d==0?c.push($c(t)):c.push(wc(t))}return _(c)}))),(n,i,r)=>n.pipe(S(Tc.match),y((t=>{const{billId:e,isShowDeletedBillsEnabled:a,cacheOverride:s}=t.payload,o=Oe(e),c=[],d=i.value;if(s===!0){const u=ee(d.billDetailViewState.billDetailById,o,void 0);c.push(...(function(m,h){const g=[];return g.push(BM(m)),h!=null&&g.push(bc(Oe(m))),g})(e,u))}const l=ee(d.billDetailViewState.billDetailById,o,void 0);if(s==1||l==null||l.fetchState!=="In-Progress"){c.push(Gr(e,"In-Progress")),c.push(fs(e,"bill_pay",s));const u={transaction_type:"bill",bill_pay_provider:"zeni",is_include_payment_accounts_info:!0,is_include_approval_info:!0,is_include_vendor_info:!0,is_include_deleted:a},m=r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions/${e}?query=${encodeURIComponent(JSON.stringify(u))}`).pipe(y((h=>{if(P(h)&&h.data?.transaction?.transaction_id!=null){const g=h.data.transaction.transaction_id,I=h.data?.vendors?.[0],E=I?.contacts??[],b=pt(h.data?.vendors??[]),T=I?.bank_accounts??[],O=I?.payment_instruments??[],x=I?.account!=null?[I?.account]:[],U=I?.accounting_class!=null?[I?.accounting_class]:[],k=[...zH(h.data.transaction),Pc(h.data.recurring_bill_configs),iv(h.data.recurring_bills),gs(h.data.transaction),ve(h.data.payment_accounts),Ze(h.data.deposit_accounts),W(h.data.accounts??[],"bill_pay"),V({users:h.data.users??[]}),Xe(h.data.approval_rules),At(h.data.entity_approvals),W(x,"account_list"),He("class_list",U),St(E),z(b),we([...T,...h.data.bank_accounts]),ya(O),le(h.data.vendors??[])];if(I==null&&h.data.transaction.candidate_vendor_name!=null&&h.data.transaction.candidate_vendor_name.length>0)k.push(Rt({searchString:h.data?.transaction.candidate_vendor_name})),k.push(ov(e,h.data,void 0));else{k.push(Ac({billId:e,billDetail:h.data})),k.push(Gr(g,"Completed",void 0,I?.vendor_id));const C=h.data?.transaction;C!=null&&C.total_amount!=null&&I!=null&&k.push(Nc(I.vendor_name,I.vendor_id,C.total_amount,C.recipient_total_amount,C.document_id,e)),["failed","cancelled","returned"].includes(C.bill_pay_info.bill_payment_status.code??"")&&t.payload.hasZeniAssistAccess&&k.push(cv(e,!0))}return _(k)}return p(Gr(t.payload.billId,"Error",h.status))})),v((h=>(console.error(`REST API call errored out ${h}`),p(Gr(t.payload.billId,"Error",f("Unexpected Error",`REST API call errored out ${h}`)))))));return j(_(c),m)}return _(c)}))),n=>n.pipe(S(XR.match),A((i=>{const{companyId:r}=i.payload;return _([No(),vc("billing","billing_setup",!1),Rf(r,!1)])}))),(n,i)=>n.pipe(S($M.match),y((r=>{const t=[],e=["draft","pending_approval","scheduled","paid"],a=i.value,{tenantState:s,companyState:o}=a,{currentTenantId:c}=s,d=c!=null?s.tenantsById?.[c]?.companyId:void 0,l=Ae(o,d??""),u=l?.company.companyZeniAccountInfo.isZeniAccountEnabled??!1,{period:m,cacheOverride:h,isShowDeletedBillsEnabled:g,isInternationalWireEnabled:I}=r.payload;if(h===!0)t.push(zr(I)),e.forEach((E=>t.push(Cc(m,E,g))));else{a.billPayConfigState.fetchState!=="Completed"&&a.billPayConfigState.fetchState!=="In-Progress"&&t.push(zr(I));const E=a.depositAccountListState;u&&E.fetchState!=="In-Progress"&&E.fetchState!=="Completed"&&t.push(Be());const b=a.paymentAccountListState;b.fetchState!=="In-Progress"&&b.fetchState!=="Completed"&&t.push(ze()),e.forEach((T=>{const O=RM(m,T),x=ee(a.billListState.byBillListKey,O,void 0);x!=null&&x.hasValidState()!==!1||t.push(Cc(m,T,g))}))}return _(t)}))),(n,i,r)=>n.pipe(S(Cc.match),y((t=>{const{period:e,tab:a,isShowDeletedBillsEnabled:s}=t.payload,o={start_date:X(e.start),end_date:X(e.end),sort_by:"transaction_date",sort_order:"desc",bill_pay_provider:"zeni",transaction_type:"bill",bill_stage_code:a,is_include_pending_approval_transaction_ids_for_user:a==="pending_approval",is_include_approval_info:a==="pending_approval",is_include_deleted:!!s&&a!=="draft"};return r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions?query=${encodeURIComponent(JSON.stringify(o))}`).pipe(y((c=>{if(P(c)&&c.data!=null){const d=[];return d.push(V({users:c.data.users??[]}),Pc(c.data.recurring_bill_configs),xc(c.data.transactions),MM({billList:c.data,tab:a}),At(c.data.entity_approvals??[])),_(d)}return p(uv(e,a,c.status))})),v((c=>p(uv(t.payload.period,t.payload.tab,f("Unexpected Error","fetch bills REST API call errored out"+JSON.stringify(c)))))))}))),(n,i)=>n.pipe(S(jM.match),y((r=>{const{cacheOverride:t,includeUserRoles:e}=r.payload,{billPaySetupApproverViewState:a,classListState:s}=i.value,{approverListState:o}=a,c=ht(i.value),d=[];return t===!0?(d.push(Uc(t,e)),c&&d.push(ne())):(a.hasValidState()===!1&&o.fetchStatus.fetchState!=="In-Progress"&&d.push(Uc(!0,e)),c&&s.hasValidState()===!1&&s.fetchState!=="In-Progress"&&d.push(ne())),j(_(d))}))),(n,i,r)=>n.pipe(S(Uc.match),A((t=>{const{cacheOverride:e,includeUserRoles:a}=t.payload,{billPaySetupApproverViewState:s}=i.value,o=s.approverListState.approverIds;if(e===!0||o.length===0)return r.getJSON(`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/bill-pay/approvers?query={"is_include_user_roles_info":${a}}`).pipe(y((c=>{if(P(c)&&c.data!=null){const d=c.data.users.map((u=>u.user_id)),l=[V({users:c.data.users})];return a===!0&&l.push(H(c.data.user_roles)),l.push(_v(d,c.data.attributes)),_(l)}return p(hv(c.status))})),v((c=>p(hv(f("Unexpected Error","Fetch Approvers List errored out"+JSON.stringify(c)))))));{const{approverListState:c}=s,{approverIds:d,attributes:l}=c;return p(_v(d,l))}}))),(n,i,r)=>n.pipe(S(To.match),y((()=>{const t=_a({startDate:te(xp,"YYYY-MM-DD"),endDate:te(Cp,"YYYY-MM-DD")}),e={start_date:X(t.start),end_date:X(t.end),sort_by:"transaction_date",sort_order:"desc",bill_pay_provider:"zeni",transaction_type:"bill",bill_stages:{pending_approval:["awaiting_approval","awaiting_my_approval"],paid:["all"],scheduled:["all"],draft:["all"]},get_count_only:!0,is_include_approval_info:!0,is_include_pending_approval_transaction_ids_for_user:!0,is_exclude_bills_processed_outside_zeni:!0};return r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bill-pay-card?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>P(a)&&a.data!=null?p(iN({transactionTotals:a.data.transaction_totals,transactionCount:a.data.transaction_count})):p(Up(a.status)))),v((a=>p(Up(f("Unexpected Error","fetch Billpay Dashboard Card REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(zr.match),y((t=>r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bill-pay/config?query=${encodeURIComponent(JSON.stringify({bill_pay_provider:"zeni",transaction_type:"bill",is_include_events:!0,is_include_payment_accounts_info:!0}))}`).pipe(y((e=>{if(P(e)&&e.data!=null){const a=[];return a.push(VM({billPayConfigPayload:e.data,isInternationalWireEnabled:t.payload.isInternationalWireEnabled})),_(a)}return p(pv(e.status))})),v((e=>p(pv(f("Unexpected Error","fetch bill-pay config REST API call errored out"+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(kc.match),A((t=>{const{cacheOverride:e,useV3:a}=t.payload,{billPaySetupApproverViewState:s,approvalRuleState:o,classListState:c}=i.value,d=ht(i.value),l=Sv(o,s.approvalRuleIds),u=d&&(e===!0||c.hasValidState()===!1&&c.fetchState!=="In-Progress");if(e===!0||l.length!==s.approvalRuleIds.length||s.hasValidState()===!1&&s.fetchState!=="In-Progress"){const m=a===!0?`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/bill-pay/approval-rules-v2`:`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/bill-pay/approval-rules`;return r.getJSON(m).pipe(y((h=>{if(P(h)&&h.data!=null){const g=h.data.approval_rules.map((E=>E.approval_rule_id)),I=[V({users:h.data.users}),Xe(h.data.approval_rules),gv(g)];return u&&I.push(ne()),_(I)}return p(fv(h.status))})),v((h=>p(fv(f("Unexpected Error","Fetch Approval view errored out"+JSON.stringify(h)))))))}{const{approvalRuleIds:m}=s,h=[gv(m)];return u&&h.push(ne()),_(h)}}))),(n,i,r)=>n.pipe(S(QM.match),A((t=>{const{companyId:e,cacheOverride:a,refreshViewInBackground:s}=t.payload,{billPaySetupViewState:o,companyState:c,plaidAccountViewState:d}=i.value,l=Ae(c,e)?.company;if(a===!0||s===!0||l==null||o.hasValidState()===!1&&o.fetchState!=="In-Progress")return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}?query={"view":"bill_pay_setup"}`).pipe(y((u=>{if(P(u)&&u.data!=null){const m=u.data.accounts.map((g=>g.account_id)),h=[V({users:u.data.users}),H(u.data.user_roles),Q({payload:u.data.companies,schema:{}}),z(u.data.addresses),he({files:u.data.files}),W(u.data.accounts,"bill_pay"),ve(u.data.payment_accounts),Wt({data:u.data.payment_accounts,updateType:"replace"}),Ze(u.data.deposit_accounts??[]),Zt({data:u.data?.deposit_accounts??[],updateType:"replace"}),Re({companyId:u.data.companies[0].company_id}),it(m,"bill_pay_setup"),Ov()];return _(h)}return p(N({messageSection:"bill_pay_setup",messageText:"failed",type:"error"}),Cv(u.status))})),v((u=>p(Cv(f("Unexpected Error","Fetch Bill Pay Setup view errored out"+JSON.stringify(u)))))));{const{allBankAccountIds:u}=d.spend_management_setup.accountDetails;return p(Re({companyId:e}),it(u,"bill_pay_setup"),Ov())}}))),(n,i,r)=>n.pipe(S(gi.match),y((()=>{const t=i.value.expenseAutomationMissingReceiptsViewState.bulkUpload,{currentBatchId:e}=t;return e==null?p(fi({error:f("Unexpected Error","No current batch ID available")})):n_(t.batchStatusById,t.batchListByPeriod,e)?r.getJSON(`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/batches/${e}`).pipe(y((a=>{if(!P(a)||a.data==null||!Zs(a.data.status))return P(a)&&a.data!=null?F:p(fi({error:a.status}));const s=[],o=Xs(a.data.files);return o.length>0&&s.push(xe(o,(c=>c.transaction_id))),s.push(Oa(eo(a.data,r.apiEndPoints.fileMicroServiceBaseUrl))),s.push(Or({cacheOverride:!0})),_(s)})),v((a=>p(fi({error:f("Unexpected Error","Fetch batch details errored out: "+JSON.stringify(a))}))))):F}))),(n,i,r)=>n.pipe(S(Or.match),A((t=>{const{cacheOverride:e}=t.payload,a=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:s},expenseAutomationMissingReceiptsViewState:{bulkUpload:o}}=a,c=s[Y(a).tenantId],d=Ie(c),l=o.batchListByPeriod[d]??[];if(e!==!0&&l.length>0)return p(Ln({batchList:l,selectedPeriod:c}));const{end:u,start:m}=Ml(s_),h={start_date:m,end_date:u,sort_order:"desc"};return r.getJSON(`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/batches?query=${encodeURIComponent(JSON.stringify(h))}`).pipe(y((g=>P(g)&&g.data!=null?p(Ln({batchList:g.data.batches.map(o_),selectedPeriod:c})):p(i_({error:g.status,selectedPeriod:c})))),v((g=>p(i_({error:f("Unexpected Error","Fetch bulk upload batches errored out: "+JSON.stringify(g)),selectedPeriod:c})))))}))),(n,i,r)=>n.pipe(S(jb.match),A((()=>r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/canned-responses`).pipe(y((t=>P(t)&&t.data!=null?p(_j({cannedResponses:(t.data.canned_responses??[]).map(uY)})):p(Gb({fetchState:"Error",error:t.status})))),v((t=>p(Gb({fetchState:"Error",error:f("Unexpected Error","Fetch Canned Responses errored: "+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(Po.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/card_balance`).pipe(y((t=>P(t)?p(W(t.data?.report.accounts??[],"card_balance"),cN(t.data)):p(kp(t.status)))),v((t=>p(kp(f("Unexpected error","Card Balance REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(nV.match),rt((t=>{const e=t.payload;return r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/policy-templates/${e}`).pipe(y((a=>{if(M(a)&&a.data!=null){const{template:s}=a.data,o=sV(oV(s)),c=[Qc(s),iV(o),Wc({fetchState:"Completed"})];return _(c)}return p(Wc({fetchState:"Error",error:a.status}))})),v((a=>p(Wc({fetchState:"Error",error:f("Unexpected Error","Fetch card-policy detail REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(pV.match),rt((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/policy-templates`).pipe(y((t=>{if(M(t)&&t.data!=null){const e=mV(t.data),a=yV(t.data.stats),s=[_V(e),hV(a),Xc({fetchState:"Completed",templateIds:e.map((o=>o.templateId))})];return _(s)}return p(Xc({fetchState:"Error",error:t.status}))})),v((t=>p(Xc({fetchState:"Error",error:f("Unexpected Error","Fetch card-policy list REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(Wv.match),rt((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/mcc-codes`).pipe(y((t=>M(t)&&t.data!=null?_([AV(t.data)]):p(Zv(t.status)))),v((t=>p(Zv(f("Unexpected Error","Fetch card policy MCC categories REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(MT.match),A((t=>{const e={view:"vendor_list",page_token:null,sort_by:"year_to_date_spend",sort_order:"desc",search_text:a=t.payload.searchString,vendor_name:a};var a;const s=`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors?query=${encodeURIComponent(JSON.stringify(e))}`;return r.getJSON(s).pipe(A((o=>M(o)&&o.data!=null?p(VT(o.data)):p(cu(o.status)))),v((o=>p(cu(f("Unexpected Error","Fetch card policy vendor options REST API call errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(rC.match),A((()=>{const t=`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cockpit/card-tenant-profiles`;return r.getJSON(t).pipe(y((e=>{if(P(e)&&e.data!=null){const a=e.data.rows;return _([nC(a),sC(a)])}return p(Wm(e.status))})),v((e=>p(Wm(f("Unexpected error","REST API call errored out: "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(ed.match),A((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/cashback?query=${encodeURIComponent('{"is_include_cashback_insights":true}')}`).pipe(y((t=>M(t)&&t.data!=null?p(J_([t.data.insights]),BV(t.data)):p(aI(t.status)))),v((t=>p(aI(f("Unexpected Error","Fetch charge card cashback REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(xo.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/cash_balance`).pipe(y((t=>P(t)?p(W(t.data?.report.accounts??[],"cash_balance"),_N(t.data)):p(wp(t.status)))),v((t=>p(wp(f("Unexpected error","Cash Balance REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(hN.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([wt("month",!0),wt("quarter",!0),wt("year",!0)]);{const e=[],a=i.value.cashFlowClassesViewState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(wt("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(wt("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push(wt("year")),_(e)}}))),(n,i)=>n.pipe(S(Uo.match),A((r=>{const{fetchFullReport:t,cacheOverride:e}=r.payload;if(e===!0)return _([Jt("month",t),Jt("quarter",t),Jt("year",t)]);{const a=[],s=i.value.cashFlowState.fetchState;return s.month.fetchState!=="In-Progress"&&s.month.fetchState!=="Completed"&&a.push(Jt("month",t)),s.quarter.fetchState!=="In-Progress"&&s.quarter.fetchState!=="Completed"&&a.push(Jt("quarter",t)),s.year.fetchState!=="In-Progress"&&s.year.fetchState!=="Completed"&&a.push(Jt("year",t)),_(a)}}))),(n,i,r)=>n.pipe(S(wt.match),y((t=>{const e={is_full_response:!0,time_series_groups:[CK(t.payload.timeframe)],is_group_by_class:!0,...t.payload.cacheOverride===!0?{is_hard_refresh:!0}:{}};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/cash_flow?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&P(a)){const s=[],{report:o}=a.data,c=o.currency;return s.push(oe(t.payload.timeframe,qe("adjustments"),"cash_flow_by_classes",o.operating_activities.adjustments,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,qe("investing_activities"),"cash_flow_by_classes",o.investing_activities,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,qe("financing_activities"),"cash_flow_by_classes",o.financing_activities,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,qe("net_income"),"cash_flow_by_classes",o.operating_activities.net_income,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,qe("operating_activities"),"cash_flow_by_classes",o.operating_activities,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,qe("change_in_cash_and_equivalents"),"cash_flow_by_classes",o.change_in_cash_and_equivalents,o.classes,o.accounts,c)),s.push(SN({timeframe:t.payload.timeframe,report:a.data})),_(s)}return p($p(a.status,t.payload.timeframe))})),v((a=>p($p(f("Unexpected Error","Cash Flow by Class REST API call errored out: "+(a instanceof Error?a.message:JSON.stringify(a))),t.payload.timeframe)))))}))),Bz,(n,i,r)=>n.pipe(S($t.match),y((t=>{const e={is_full_response:!0,time_series_groups:[xK(t.payload.timeframe)],is_group_by_project:!0,...t.payload.cacheOverride===!0?{is_hard_refresh:!0}:{}};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/cash_flow?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&P(a)){const s=[],{report:o}=a.data,c=o.currency;return s.push(Bt(o.projects)),s.push(ie(t.payload.timeframe,qe("adjustments"),"cash_flow_by_projects",o.operating_activities.adjustments,o.accounts,c)),s.push(ie(t.payload.timeframe,qe("investing_activities"),"cash_flow_by_projects",o.investing_activities,o.accounts,c)),s.push(ie(t.payload.timeframe,qe("financing_activities"),"cash_flow_by_projects",o.financing_activities,o.accounts,c)),s.push(ie(t.payload.timeframe,qe("net_income"),"cash_flow_by_projects",o.operating_activities.net_income,o.accounts,c)),s.push(ie(t.payload.timeframe,qe("operating_activities"),"cash_flow_by_projects",o.operating_activities,o.accounts,c)),s.push(ie(t.payload.timeframe,qe("change_in_cash_and_equivalents"),"cash_flow_by_projects",o.change_in_cash_and_equivalents,o.accounts,c)),s.push(gN({timeframe:t.payload.timeframe,report:a.data})),_(s)}return p(Rp(a.status,t.payload.timeframe))})),v((a=>p(Rp(f("Unexpected Error","Cash Flow by Project REST API call errored out: "+(a instanceof Error?a.message:JSON.stringify(a))),t.payload.timeframe)))))}))),(n,i)=>n.pipe(S(fN.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([$t("month",!0),$t("quarter",!0),$t("year",!0)]);{const e=[],a=i.value.cashFlowProjectViewState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push($t("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push($t("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push($t("year")),_(e)}}))),(n,i,r)=>n.pipe(S(ko.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/cash_in_cash_out`).pipe(y((t=>P(t)?p(W(t.data?.report.accounts??[],"cash_in_cash_out"),IN(t.data?.report.account_groups??[],"cash_in_cash_out"),vN(t.data),Mp({thisPeriod:i.value.reportUIOptionsState.thisPeriod})):p(Vp(t.status)))),v((t=>p(Vp(f("Unexpected error","CashInCashOut REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(Bo.match),A((t=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/cash_position?query=${encodeURIComponent(`{"is_full_response":${t.payload.fetchFullReport}}`)}`).pipe(y((e=>P(e)?p(W(e.data?.report.accounts??[],"cash_position"),bN(e.data),Lp({thisPeriod:i.value.reportUIOptionsState.thisPeriod})):p(Fp(e.status)))),v((e=>p(Fp(f("Unexpected error","Cash Position REST API call errored out"+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(Xt.match),y((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/config`).pipe(y((t=>{if(M(t)&&t.data!=null){const e=[];return e.push(DV(t.data)),_(e)}return p(rI(t.status))})),v((t=>p(rI(f("Unexpected Error","Fetch charge card config REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(ad.match),A((t=>{const{chargeCardId:e,cacheOverride:a}=t.payload,s=[],o=i.value,c=ee(o.chargeCardDetailState.detailById,e,void 0);if(a===!0||c==null||c.fetchState!=="In-Progress"){const d=a===!0&&c!=null&&c.fetchState!=="Not-Started";s.push(As({chargeCardId:e,isRefreshingViewInBackground:d,fetchState:d?c.fetchState:"In-Progress",error:d?c.error:void 0}));const l={is_include_card_activation_events:!0,is_include_connected_account_info:!0,is_include_card_pin_change_attempt_history:!0},u=r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}?query=${JSON.stringify(l)}`).pipe(y((m=>M(m)&&m.data!=null?p(ct(m.data.card),V({users:m.data.users}),H(m.data.user_roles),z(m.data.addresses),wV(m.data.connected_account),As({chargeCardId:e,isRefreshingViewInBackground:!1,fetchState:"Completed"})):p(As({chargeCardId:e,fetchState:"Error",isRefreshingViewInBackground:!1,error:m.status})))),v((m=>p(As({chargeCardId:e,fetchState:"Error",isRefreshingViewInBackground:!1,error:f("Unexpected Error","Fetch card detail API call errored out"+JSON.stringify(m))})))));return j(_(s),u)}return _(s)}))),(n,i)=>n.pipe(S($V.match),y((r=>{const{chargeCardId:t,cacheOverride:e,doFetchCreditAccounts:a,isCreditCardEnabled:s}=r.payload,o=[],c=i.value,d=c.chargeCardDetailState.detailById[t],l=d!=null?d.transactionList.uiState.pageToken:null,u=d!=null?d.transactionList.uiState.pageTokenType:null;if(e===!0)o.push(ad(t,e)),o.push(rd(t,null,null,!0)),o.push(Xt(!0)),a&&s&&o.push(ea(!0)),a&&s&&o.push(Kr(!0));else{const m=c.chargeCardDetailState.detailById[t];(m==null||m.fetchState!=="In-Progress"&&m.hasValidState()===!1)&&o.push(ad(t,e));const h=m?.transactionList;(h==null||h.fetchState!=="Completed"&&h.fetchState!=="In-Progress")&&o.push(rd(t,l,u));const g=c.chargeCardConfigState;g.fetchState!=="In-Progress"&&g.hasValidState()===!1&&o.push(Xt());const I=c.chargeCardListState;I.creditAccount.fetchState!=="Completed"&&I.creditAccount.fetchState!=="In-Progress"&&a&&s&&o.push(ea()),I.creditAccountRepayment.fetchState!=="Completed"&&I.creditAccountRepayment.fetchState!=="In-Progress"&&a&&s&&o.push(Kr())}return j(_(o))}))),(n,i,r)=>n.pipe(S(Hr.match),A((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards?query=${encodeURIComponent('{"is_include_total_cash_back":true, "is_include_unassigned_credit": true}')}`).pipe(y((t=>{if(M(t)&&t.data!=null){const e=[];return Y(i.value).userRole.includes("charge_card_user")&&e.push(rL({uiState:{sortKey:"cardName"}})),e.push(Ga(t.data.cards),V({users:t.data.users}),H(t.data.user_roles),z(t.data.addresses),iI({chargeCardListPayload:t.data})),_(e)}return p(cI(t.status))})),v((t=>p(cI(f("Unexpected Error","Fetch charge cards list REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(nL.match),y((r=>{const{doFetchCreditAccountsDebitSummaryAndCashback:t,isDebitCardEnabled:e,isCreditCardEnabled:a,cacheOverride:s}=r.payload,o=[],c=i.value,d=c.cashbackDetailState;if(s===!0)t===!0&&(a&&(o.push(ea(!0)),o.push(Kr(!0))),e&&o.push(_d(!0)),o.push(ed(!0))),o.push(Hr(!0)),o.push(Xt(!0)),o.push(Me("cardHolderCandidate",!0)),o.push(Me("cardAdmin",!0)),o.push(ne());else{const l=c.chargeCardListState;t===!0&&a&&l.creditAccount.fetchState!=="Completed"&&l.creditAccount.fetchState!=="In-Progress"&&o.push(ea()),t===!0&&a&&l.creditAccountRepayment.fetchState!=="Completed"&&l.creditAccountRepayment.fetchState!=="In-Progress"&&o.push(Kr()),t&&d.fetchState!=="In-Progress"&&d.hasValidState()===!1&&o.push(ed()),l.fetchState!=="In-Progress"&&l.hasValidState()===!1&&o.push(Hr());const u=c.chargeCardConfigState;u.fetchState!=="In-Progress"&&u.hasValidState()===!1&&o.push(Xt());const m=c.userListViewState.userListByType.cardHolderCandidate;m.fetchState!=="In-Progress"&&m.hasValidState()===!1&&o.push(Me("cardHolderCandidate",!1));const h=c.userListViewState.userListByType.cardAdmin;if(h.fetchState!=="In-Progress"&&h.hasValidState()===!1&&o.push(Me("cardAdmin",!1)),c.classListState.hasValidState()===!1&&c.classListState.fetchState!=="In-Progress"&&o.push(ne()),t&&e&&c.chargeCardListState.debitCardSummaries.fetchState!=="In-Progress"&&c.chargeCardListState.debitCardSummaries.fetchState!=="Completed"&&o.push(_d()),t&&e&&c.issueChargeCardState.depositAccountsFetchState.fetchState!=="In-Progress"&&c.issueChargeCardState.depositAccountsFetchState.fetchState!=="Completed"&&o.push(Ns()),t&&c.chargeCardSetupViewState.fetchState!=="In-Progress"&&c.chargeCardSetupViewState.fetchState!=="Completed"){const g=Y(c);o.push(dI(g.companyId,!0))}}return j(_(o))}))),(n,i,r)=>n.pipe(S(vd.match),A((()=>{const t=encodeURIComponent(JSON.stringify({include_history:!0}));return r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/repayments?query=${t}`).pipe(y((e=>M(e)&&e.data!=null?p(SL(e.data.repayment_history),V({users:e.data.repayment_history.map((a=>a.paid_by_user)).filter((a=>a!=null))}),hL(e.data)):p(_I(e.status)))),v((e=>p(_I(f("Unexpected Error","Fetch charge card payment history REST API call errored out"+JSON.stringify(e)))))))}))),(n,i)=>n.pipe(S(gL.match),y((r=>{const{cacheOverride:t}=r.payload,e=[],a=i.value,s=a.chargeCardPaymentHistoryState;t===!0?e.push(vd(!0)):s.fetchState!=="Completed"&&s.fetchState!=="In-Progress"&&e.push(vd());const o=a.depositAccountListState,c=a.paymentAccountListState;return(o.fetchState!=="Completed"&&o.fetchState!=="In-Progress"||c.fetchState!=="Completed"&&c.fetchState!=="In-Progress")&&e.push(hI()),j(_(e))}))),(n,i)=>n.pipe(S(hI.match),y((()=>{const r=[],t=i.value,e=t.depositAccountListState;e.fetchState!=="In-Progress"&&e.fetchState!=="Completed"&&r.push(Be());const a=t.paymentAccountListState;return a.fetchState!=="In-Progress"&&a.fetchState!=="Completed"&&r.push(ze()),_(r)}))),(n,i,r)=>n.pipe(S(dI.match),A((t=>{const{companyId:e,cacheOverride:a,refreshViewInBackground:s}=t.payload,{chargeCardSetupViewState:o,plaidAccountViewState:c,companyState:d}=i.value,l=Ae(d,e)?.company;if(a===!0||s===!0||l==null||o.hasValidState()===!1&&o.fetchState!=="In-Progress")return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}?query={"view":"charge_cards_setup"}`).pipe(y((u=>{if(M(u)&&u.data!=null){const m=u.data.accounts.map((g=>g.account_id)),h=[V({users:u.data.users}),H(u.data.user_roles),Q({payload:u.data.companies,schema:{}}),z(u.data.addresses),he({files:u.data.files}),W(u.data.accounts,"charge_cards"),ve(u.data.payment_accounts),Wt({data:u.data.payment_accounts,updateType:"replace"}),Ze(u.data.deposit_accounts??[]),Zt({data:u.data?.deposit_accounts??[],updateType:"merge"}),Re({companyId:u.data.companies[0].company_id}),it(m,"charge_card_setup"),vI()];return _(h)}return p(N({messageSection:"charge_card_setup",messageText:"failed",type:"error"}),II(u.status))})),v((u=>p(II(f("Unexpected Error","Fetch Charge Card Setup view errored out"+JSON.stringify(u)))))));{const{allBankAccountIds:u}=c.spend_management_setup.accountDetails;return p(Re({companyId:e}),it(u,"charge_card_setup"),vI())}}))),(n,i,r)=>n.pipe(S(GV.match),A((t=>{const{cardIds:e}=t.payload,a={card_ids:e};return r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/recurring-expenses?query=${encodeURIComponent(JSON.stringify(a))}`).pipe(y((s=>{if(P(s)&&s.data!=null){const o={};return s.data.forEach((c=>{o[c.card_id]=c.expenses.map((d=>zV(d)))})),p(KV({recurringExpensesByChargeCardId:o}),sd({fetchState:"Completed",error:void 0}))}return p(sd({fetchState:"Error",error:s.status}))})),v((s=>p(sd({fetchState:"Error",error:f("Unexpected Error","Fetch Charge Cards Recurring Expenses REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(BL.match),y((t=>{const{creditAccountId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/credit-accounts/${e}/statements`).pipe(y((a=>P(a)?p(DL({data:a.data?.statements??[]})):p(bI({fetchState:"Error",error:a.status})))),v((a=>p(bI({fetchState:"Error",error:f("Unexpected Error","Fetch Credit Card statement REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(RV.match),A((t=>{const{transactionId:e,cardId:a,attachmentIds:s}=t.payload;let o=`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/transactions/${e}/attachments`;return o+=`?query=${encodeURIComponent(JSON.stringify({attachment_ids:s}))}`,r.getJSON(o).pipe(y((d=>M(d)&&d.data!=null?p(MV({transactionId:e,cardId:a,transactionAttachments:d.data.attachments})):p(nI({cardId:a,transactionId:e,status:d.status})))),v((d=>p(nI({cardId:a,transactionId:e,status:f("Unexpected Error","Fetch charge card transaction attachments API call errored out"+JSON.stringify(d))})))))}))),(n,i,r)=>n.pipe(S(rd.match),A((t=>{const{chargeCardId:e,pageToken:a,pageTokenType:s,cacheOverride:o}=t.payload,{uiState:c}=i.value.chargeCardDetailState.detailById[e]?.transactionList??VV.transactionList,d={page_token:a,page_token_type:s,sort_by:c.sortKey==="paymentDate"?"transaction_date":c.sortKey,sort_order:zo(c.sortOrder)};return r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}/transactions?query=${encodeURIComponent(JSON.stringify(d))}`).pipe(y((l=>M(l)&&l.data!=null?p(FV(l.data.transactions),LV({chargeCardId:e,data:l.data,cacheOverride:o})):p(sI({chargeCardId:e,error:l.status})))),v((l=>p(sI({chargeCardId:e,error:f("Unexpected Error","Fetch charge card transactionList API call errored out"+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(qV.match),A((t=>{const{chargeCardId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}/analytics/transaction-statistics`).pipe(y((a=>P(a)&&a.data?p(jV({chargeCardId:e,statistics:a.data}),nd({chargeCardId:e,fetchState:"Completed",error:void 0})):p(nd({chargeCardId:e,fetchState:"Error",error:a.status})))),v((a=>p(nd({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Fetch Charge Card Transaction Statistics REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(HP.match),y((t=>{const{chatSessionId:e,userId:a}=t.payload,s=i.value,o=s.aiCfoViewState.uiState.chatHistoryNextPageToken[e]?.nextPageToken??null,c=new URLSearchParams;return c.append("page_size","20"),c.append("chat_session_id",e),c.append("user_id",a),o!=null&&c.append("page_token",o),r.getJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/history?${c.toString()}`).pipe(y((d=>{if(P(d)&&d.data!=null){const l=d.data.next_page_token==null;return p(QP({chatSessionId:e,history:d.data.messages,isPaginationComplete:l}),YP({chatSessionId:e,nextPageToken:d.data.next_page_token}))}return p(Gu({chatSessionId:e,error:d.status}))})),v((d=>p(Gu({chatSessionId:e,error:f("Unexpected Error","Fetch Chat History REST API call errored out"+JSON.stringify(d))})))))}))),(n,i,r)=>n.pipe(S(WP.match),A((()=>{const t=i.value.aiCfoViewState.uiState.chatSessionsNextPageToken.nextPageToken??null,e=new URLSearchParams;return e.append("page_size","50"),t!=null&&e.append("page_token",t),r.getJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/sessions?${e.toString()}`).pipe(y((a=>{if(P(a)&&a.data!=null){const s=a.data.sessions.filter((o=>!!o.chat_session_summary));return p(XP(s),ZP({sessions:s,nextPageToken:a.data.next_page_token}))}return p(zu(a.status))})),v((a=>p(zu(f("Unexpected Error","Fetch Chat Sessions for User REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(ne.match),Fe(i),A((([t,e])=>{if(!ht(e))return p(qp({status:f("Success",""),data:{accounting_classes:[]}}));const{isIncludeDeleted:a}=t.payload,s=a===!0?`?query=${encodeURIComponent(JSON.stringify({is_include_deleted:!0}))}`:"";return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/classes${s}`).pipe(y((o=>P(o)?p(He("class_list",o.data?.accounting_classes??[]),qp(o)):p(jp(o.status)))),v((o=>p(jp(f("Unexpected Error","Fetch Classes REST API call errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(cO.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels/cockpit-context`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=t.data?.companies??[],a=t.data?.users??[],s=t.data?.user_groups??[],o=e.map((u=>u.company_id)),c=a.map((u=>u.user_id)),d=s.map((u=>u.id)),l=[Q({payload:t.data.companies,schema:{}}),V({users:t.data.users}),fm({userGroups:t.data.user_groups}),dO({companyIds:o,userIds:c,userGroupIds:d})];return _(l)}return p(vm(t.status))})),v((t=>p(vm(f("Unexpected error","Cockpit context fetch errored out"+JSON.stringify(t)))))))))),Dz,(n,i,r)=>n.pipe(S(Rf.match),A((t=>{const{companyId:e,cacheOverride:a}=t.payload,{settingsViewState:s,companyState:o}=i.value,c=Ae(o,e)?.company;return a===!0||c==null||s.billingAddress.fetchState!=="In-Progress"?r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}?query={"view":"subscription_billing_address"}`).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[Q({payload:d.data.companies,schema:{}}),z(d.data.addresses),Mf(),eM("subscription_billing_address")],u=d.data.companies[0].subscription_billing_address_id,m=d.data.addresses.find((h=>h.address_id===u));return m!=null&&l.push(je({addressType:"subscription_billing_address",addressToCreate:tM(m)})),_(l)}return p(N({messageSection:"billing_address_view",messageText:"failed",type:"error"}),Vf(d.status))})),v((d=>p(Vf(f("Unexpected Error","Fetch Billing Address View errored out"+JSON.stringify(d))))))):p(Mf())}))),Jz,(n,i,r)=>n.pipe(S(qo.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/company-health-metrics/config`).pipe(y((t=>P(t)&&t.data!=null?p(FN(t.data.additional_churn_factors)):p(am(t.status)))),v((t=>p(am(f("Unexpected Error","Fetch company health metric config REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(jo.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels/health-monitor`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=[],a=t.data.companies.map((s=>s.company_id));return e.push(Q({payload:t.data.companies,schema:{}})),e.push(rm({payload:t.data.company_health_metrics})),e.push(qN({companyIds:a})),_(e)}return p(nm({error:t.status}))})),v((t=>p(nm({error:f("Unexpected Error","Fetch Company Health Metric View REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(Ea.match),A((t=>{const e={is_full_response:t.payload.fetchFullResponse};return t.payload.companyParentId!=null&&(e.is_include_subsidiaries=!0,e.company_id=t.payload.companyParentId),r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels/management?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(P(a)&&a.data!=null){const s=a.data.companies.map((l=>l.company_id)),o=Dl(a.data.subscriptions),c=Yo(a.data.user_roles,a.data.companies),d=[H(a.data.user_roles),Q({payload:a.data.companies,schema:a.data.schema.company,subset:t.payload.companyParentId!=null,companyIdTenantIdMapping:c}),mr({payload:a.data.subscriptions,schema:a.data.schema.subscription}),fa({payload:a.data.subscription_plans,schema:a.data.schema.subscription_plan}),va({payload:a.data.subscription_addons,schema:a.data.schema.subscription_addon}),Ia({payload:a.data.subscription_summaries,schema:a.data.schema.subscription_summary}),Pm({payload:a.data.customer_satisfactions}),JO({tasks:a.data.tasks})];return t.payload.companyParentId==null&&d.push(Pn("company_management_view",s,o)),t.payload.companyParentId!=null&&(i.value.companyViewState.managementView.fetchState!=="Completed"&&d.push(Pn("company_management_view",s,o,!0)),d.push(wO({payload:a.data.companies,parentCompanyId:t.payload.companyParentId}))),t.payload.fetchFullResponse&&a.data.users!=null&&d.push(V({users:a.data.users})),_(d)}{const s=[ba("company_management_view",[],a.status)];return t.payload.companyParentId!=null&&s.push(Gm()),_(s)}})),v((a=>{const s=[ba("company_management_view",[],f("Unexpected error","Company Management view errored out"+JSON.stringify(a)))];return t.payload.companyParentId!=null&&s.push(Gm()),_(s)})))}))),wz,(n,i,r)=>n.pipe(S(HN.match),A((t=>{const{companyId:e,reportSentDate:a}=t.payload,s=i.value.companyState.companiesById[e].companyInfo.tenantId,o={history:!0,month_year:a.format(YN)};return s!=null?r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}/emails/month-end?query=${encodeURIComponent(JSON.stringify(o))}`,{"zeni-tenant-id":s}).pipe(y((c=>{if(P(c)&&c.data?.history!=null){const d=[QN({companyId:e,reportSentDate:a,data:c.data})];return c.data.history.length>0&&d.push(im({files:c.data.history[0].files})),_(d)}{const d=[cm({companyId:e,reportSentDate:a,error:c.status})];return _(d)}})),v((c=>{const d=[cm({companyId:e,reportSentDate:a,error:f("Unexpected error","Company Month End Report Historic Data errored out"+JSON.stringify(c))})];return _(d)}))):_([])}))),(n,i,r)=>n.pipe(S(WN.match),A((t=>{const{companyId:e}=t.payload,a=i.value.companyState.companiesById[e].companyInfo.tenantId,s={history_dates:!0};return a!=null?r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}/emails/month-end?query=${encodeURIComponent(JSON.stringify(s))}`,{"zeni-tenant-id":a}).pipe(y((o=>{if(P(o)&&o.data!=null){const c=[ZN({companyId:e,data:o.data})];return _(c)}{const c=[dm({companyId:e,error:o.status})];return _(c)}})),v((o=>{const c=[dm({companyId:e,error:f("Unexpected error","Company Month End Report Historic Dates errored out"+JSON.stringify(o))})];return _(c)}))):_([])}))),(n,i,r)=>n.pipe(S(lm.match),A((t=>{const{companyId:e,tenantId:a}=t.payload,s=i.value,o=a??s.companyState.companiesById[e].companyInfo.tenantId,c={email_templates:!0};return o!=null?r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}/emails/month-end?query=${encodeURIComponent(JSON.stringify(c))}`,{"zeni-tenant-id":o}).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[XN({companyId:e,data:d.data})];return _(l)}{const l=[um({companyId:e,error:d.status})];return _(l)}})),v((d=>{const l=[um({companyId:e,error:f("Unexpected error","Company Month End Report Templates errored out"+JSON.stringify(d))})];return _(l)}))):_([])}))),(n,i,r)=>n.pipe(S(pm.match),A((t=>{const{cacheOverride:e,companyId:a,tenantId:s,refreshInsights:o,insightDate:c}=t.payload,d=i.value,l=d.companyMonthEndReportViewState.monthEndReportDataByCompanyId[a].fetchState,u=s??d.companyState.companiesById[a].companyInfo.tenantId;if(u==null||e!==!0&&l==="Completed")return _([]);{const m={insight_date:c??null,...o===!0&&{refresh_insights:o}},h=`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${a}/emails/month-end?query=${encodeURIComponent(JSON.stringify(m))}`;return r.getJSON(h,{"zeni-tenant-id":u}).pipe(y((g=>{if(P(g)&&g.data!=null){const I=[eO(a,g.data),im({files:g.data.files})];return _(I)}{const I=[mm(a,g.status)];return _(I)}})),v((g=>{const I=[mm(a,f("Unexpected error","Company Month End Report View errored out"+JSON.stringify(g)))];return _(I)})))}}))),(n,i,r)=>n.pipe(S(Sr.match),A((t=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels/onboarding?query=${encodeURIComponent(`{"is_full_response":${t.payload.fetchFullResponse}}`)}`).pipe(y((e=>{if(P(e)&&e.data!=null){const a=e.data.companies.map((c=>c.company_id)),s=zi(e.data.tenants,e.data.companies),o=[Ki(e.data.tenants),ds({payload:e.data.companies,schema:e.data.schema.company,onboardingInviteStatus:e.data.onboarding_invite_status,companyIdTenantIdMapping:s}),z(e.data.addresses??[]),GS({payload:e.data.parent_companies??[],schema:{}}),Hi(e.data.tenants),AJ(e.data.is_onboarding_allowed_for_user),Yi({onboardingCustomersInfo:e.data.whitelist_companies})];return e.data.users!=null&&o.push(V({users:e.data.users})),e.data.user_roles!=null&&o.push(H(e.data.user_roles)),o.push(Qi(a)),_(o)}return p(zS([],e.status))})),v((e=>p(zS([],f("Unexpected error","Onboarding Company view errored out"+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(pr.match),A((t=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${t.payload.companyId}?query={"view":"passport"}`).pipe(y((e=>{if(P(e)&&e.data!=null){const a=e.data.companies.map((c=>c.company_id)),s=Dl(e.data.subscriptions),o=[V({users:e.data.users}),H(e.data.user_roles),Q({payload:e.data.companies,schema:e.data.schema.company}),he({files:e.data.files}),z(e.data.addresses),mr({payload:e.data.subscriptions,schema:e.data.schema.subscription}),fa({payload:e.data.subscription_plans,schema:e.data.schema.subscription_plan}),va({payload:e.data.subscription_addons,schema:e.data.schema.subscription_addon}),yr({payload:e.data.subscription_coupons,schema:e.data.schema.subscription_coupon}),Ia({payload:e.data.subscription_summaries,schema:e.data.schema.subscription_summary}),xm({companyId:t.payload.companyId}),Pn("company_passport_view",a,s)];return _(o)}return p(ba("company_passport_view",[],e.status))})),v((e=>p(ba("company_passport_view",[],f("Unexpected error","Company Passport view errored out"+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(hr.match),A((t=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels/portfolio?query=${encodeURIComponent(`{"is_full_response":${t.payload.fetchFullResponse}}`)}`).pipe(y((e=>{if(P(e)&&e.data!=null){const a=e.data.companies.map((c=>c.company_id)),s=Yo(e.data.user_roles,e.data.companies),o=[H(e.data.user_roles),Q({payload:e.data.companies,schema:e.data.schema.company,subset:!1,companyIdTenantIdMapping:s}),$O(e.data.accounting_summaries),Pn("company_portfolio_view",a,{})];return t.payload.fetchFullResponse&&e.data.users!=null&&o.push(V({users:e.data.users})),_(o)}return p(ba("company_portfolio_view",[],e.status))})),v((e=>p(ba("company_portfolio_view",[],f("Unexpected error","Company Portfolio view errored out"+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(Tn.match),A((t=>{const{from:e,searchString:a,sortKey:s,sortOrder:o,filters:c}=t.payload,d={size:100,from:e,global_search:a??"",sort_by:UK(s),sort_order:zo(o),filter_join:c?.categoryCombinationOperator==="AND"?"and":"or",...c?.categories!=null&&c.categories.length>0?{filter_by:kK(c)}:{},task_group_scopes:c?.taskGroupScopes!=null&&c.taskGroupScopes.length>0?c.taskGroupScopes:["internal"]};return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels/tasks-es?query=${encodeURIComponent(JSON.stringify(d))}`).pipe(y((l=>{if(P(l)&&l.data!=null){const u=l.data.aggregations.group_by_company_name.buckets.flatMap((h=>h.tasks)),m=[lO({data:l.data}),Ke(u),tn(u.flatMap((h=>h.tags)))];return _(m)}{const u=[Im(l.status)];return _(u)}})),v((l=>{const u=[Im(f("Unexpected error","Cockpit Task manager errored out"+JSON.stringify(l)))];return _(u)})))}))),(n,i,r)=>n.pipe(S(Cr.match),A((t=>{const e=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:a},expenseAutomationMissingReceiptsViewState:{bulkUpload:s}}=e,o=a[Y(e).tenantId],c=Ie(o),d=t.payload.pageToken==null,{sortKey:l,sortOrder:u,completedSubTab:m}=s,h=gU(c,l,u,m),g=s.completedTransactionsByPeriod[h];if(d&&t.payload.cacheOverride!==!0&&g!=null&&g.transactionIds.length>0)return _([]);const I=Je(o),E={start_date:I.start,end_date:I.end,page_token:t.payload.pageToken??null,page_size:25};l!=null&&(E.sort_by=l),u!=null&&(E.sort_order=u==="ascending"?"asc":"desc"),m!==vi&&(E.match_type=m);const b=encodeURIComponent(JSON.stringify(E));return r.getJSON(`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/receipt-agent/transactions/completed?query=${b}`).pipe(y((T=>{if(P(T)&&T.data!=null){const O=T.data.transactions.map((U=>U.transaction_id)),x=[];return x.push(xe(T.data.transactions,(U=>U.transaction_id))),x.push(fU({isInitialLoad:d,transactionIds:O,nextPageToken:T.data.next_page_token,totalCount:T.data.total_count,selectedPeriod:o,sortKey:l,sortOrder:u,completedSubTab:m})),_(x)}return p(c_({error:T.status,selectedPeriod:o,sortKey:l,sortOrder:u,completedSubTab:m}))})),v((T=>p(c_({error:f("Unexpected Error","Fetch completed transactions errored: "+JSON.stringify(T)),selectedPeriod:o,sortKey:l,sortOrder:u,completedSubTab:m})))))}))),(n,i)=>n.pipe(S(Uk.match),y((r=>{const{cacheOverride:t}=r.payload,e=i.value,a=e.invoicingCustomerListViewState,s=e.invoicingCatalogListViewState,o=e.invoicingSettingsViewState,c=[];return qs({fetchState:a.fetchState,error:a.error},t)&&c.push(Xn({filters:{},keepExistingListItems:!1})),qs({fetchState:s.fetchState,error:s.error},t)&&c.push(Br({filters:{type:"plan"},keepExistingListItems:!1})),qs(s.productFetchState,t)&&c.push(Oi({filters:{type:"addon|charge"},keepExistingListItems:!1})),qs({fetchState:o.fetchState,error:o.error},t)&&c.push(Tt()),_(c)}))),(n,i,r)=>n.pipe(S(ea.match),A((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/credit-accounts`).pipe(y((t=>M(t)&&t.data!=null?p(sL(t.data.credit_accounts)):p(lI(t.status)))),v((t=>p(lI(f("Unexpected Error","Fetch creditAccount REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(Kr.match),A((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/repayments`).pipe(y((t=>M(t)&&t.data!=null?p(oL(t.data)):p(uI(t.status)))),v((t=>p(uI(f("Unexpected Error","Fetch creditAccountRepayment REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(oC.match),A((()=>{const t=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/macros/credit-agent`;return r.getJSON(t).pipe(y((e=>P(e)&&e.data!=null?_([Zm(e.data),iC()]):p(Xm(e.status)))),v((e=>p(Xm(f("Unexpected error","REST API call errored out: "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(wI.match),y((t=>{const{conversionCurrencyCode:e,reimbursementId:a,lineId:s}=t.payload,o=i.value;let c=o.editRemiDetailViewState.newRemiState.remiDetailLocalData;a!=null&&(c=o.editRemiDetailViewState.editRemiStateById[a].remiDetailLocalData);const d=c.updatesByLineId[s].outOfPocket,l={amount:{amount:d.amount??0,currency_code:d.currencyCode,currency_symbol:d.currencySymbol},home_currency_code:e};return r.postAndGetJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/currencies/conversion`,l).pipe(y((u=>{if(P(u)&&u.data!=null){const m=[],h=u.data.home_currency_conversions;return m.push(IF({reimbursementId:a,amountPayload:h,lineId:s})),m.push(Pd({reimbursementId:a,lineId:s,fetchState:"Completed",error:void 0})),_(m)}return p(Pd({reimbursementId:a,lineId:s,fetchState:"Error",error:u.status}))})),v((u=>p(Pd({reimbursementId:a,lineId:s,fetchState:"Error",error:f("Unexpected Error","Fetch Conversion Currency REST API call errored out"+JSON.stringify(u))})))))}))),(n,i)=>n.pipe(S(_C.match),A((r=>{const{userId:t,companyId:e,fetchFullReport:a,cacheOverride:s,excludeResources:o,tenantId:c}=r.payload,d=Y(i.value),l=d.company?.featuresActivationInfo.isReimbursementFeatureEnabled,u=!!d?.userRole&&hC(d.userRole),m=SC(d.userRole),h=i.value.arAgingState.uiState.selectedDate,g=i.value.apAgingState.uiState.selectedDate,I=i.value.expenseAutomationViewState.selectedPeriodByTenantId[c]??gC;if(s===!0){const E=[Pa(t),Po(),xo(),On(a),Cn(a),xn(a),Zo(a),Xo(),Bo(a),ko(),ei(),pr(e),cn(),ti()];return o.includes("accounts_payable_aging")===!1&&E.push(vo(g)),o.includes("accounts_receivable_aging")===!1&&E.push(Io(h)),m||E.push(To()),l===!0&&u&&E.push(ai()),o.includes("rewards_card")===!1&&E.push(ri(!0)),o.includes("expense_automation_card")===!1&&E.push(nt({tenantId:c,period:I,refreshViewInBackground:!1})),_(E)}{const E=i.value,b=[],T=ay(E.revenueState.uiState.selectedForecast?.id,E.revenueState),O=ry(E.opExState.uiState.selectedForecast?.id,E.opExState),x=ny(E.netBurnOrIncomeState.uiState.selectedForecast?.id,E.netBurnOrIncomeState);E.tenantState.fetchState==="In-Progress"||E.tenantState.hasValidState()||b.push(Pa(t)),E.cardBalanceState.fetchState==="In-Progress"||E.cardBalanceState.hasValidState()||b.push(Po()),E.cashBalanceState.fetchState==="In-Progress"||E.cashBalanceState.hasValidState()||b.push(xo()),O.fetchState!=="In-Progress"&&O.fetchState!=="Completed"&&b.push(On(a)),T.fetchState!=="In-Progress"&&T.fetchState!=="Completed"&&b.push(Cn(a)),x.fetchState!=="In-Progress"&&x.fetchState!=="Completed"&&b.push(xn(a)),E.netBurnOrIncomeStoryCardState.fetchState==="In-Progress"||E.netBurnOrIncomeStoryCardState.hasValidState()||b.push(Zo(a)),E.topExState.fetchState==="In-Progress"||o.includes("top_expenses")!==!1||E.topExState.hasValidState()||b.push(Xo()),E.cashPositionState.fetchState==="In-Progress"||E.cashPositionState.hasValidState()||b.push(Bo(a)),E.cashInCashOutState.fetchState==="In-Progress"||E.cashInCashOutState.hasValidState()||b.push(ko()),E.insightsCardState.fetchState==="In-Progress"||E.insightsCardState.hasValidState()||b.push(ei()),E.companyViewState.passportView.fetchState==="In-Progress"||E.companyViewState.passportView.hasValidState()||b.push(pr(e)),E.tasksCardState.fetchState==="In-Progress"||o.includes("task_card")!==!1||E.tasksCardState.hasValidState()||b.push(cn()),E.dashboardLayoutState.fetchState!=="In-Progress"&&E.dashboardLayoutState.fetchState!=="Completed"&&b.push(ti()),E.apAgingState.fetchState!=="In-Progress"&&E.apAgingState.fetchState!=="Completed"&&o.includes("accounts_payable_aging")===!1&&b.push(vo(g)),E.arAgingState.fetchState!=="In-Progress"&&E.arAgingState.fetchState!=="Completed"&&o.includes("accounts_receivable_aging")===!1&&b.push(Io(h)),E.billPayCardState.fetchState==="In-Progress"||E.billPayCardState.hasValidState()||m||b.push(To()),E.reimbursementCardState.fetchState!=="In-Progress"&&!E.reimbursementCardState.hasValidState()&&l===!0&&u&&b.push(ai()),E.referralViewState.rewardsPlanFetchState.fetchState!=="In-Progress"&&E.referralViewState.rewardsPlanFetchState.fetchState!=="Completed"&&o.includes("rewards_card")===!1&&b.push(ri(!0));const U=Ie(I);return E.monthEndCloseChecksViewState.monthEndCloseChecksViewByTenantId[d.tenantId]?.[U]?.fetchState!=="In-Progress"&&E.monthEndCloseChecksViewState.monthEndCloseChecksViewByTenantId[d.tenantId]?.[U]?.fetchState!=="Completed"&&o.includes("expense_automation_card")===!1&&b.push(nt({tenantId:c,period:I,refreshViewInBackground:!1})),_(b)}}))),(n,i,r)=>n.pipe(S(ti.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/webapp-preferences`).pipe(y((t=>{if(P(t)&&t.data){const e=t.data.preferences.card_order;let a=[...e];const s=a.indexOf("treasury_promo_card"),o=a.indexOf("zeni_promo_card");return s!==-1&&o!==-1&&o>s?(a[s]="zeni_promo_card",a[o]="treasury_promo_card",p(Un(a))):s===-1?(a=[...e.slice(0,3),"treasury_promo_card",...e.slice(3)],p(Un(a))):p(fC(a))}{const e=t.status.code===404,a=[sy(t.status)];return e&&a.push(Un(vC)),p(...a)}})),v((t=>p(sy(f("Unexpected Error","User preferences REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(_d.match),A((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/summaries?query={"card_types": ["debit"]}`).pipe(y((t=>M(t)&&t.data!=null?p(iL(t.data.debit_card_summaries)):p(pI(t.status)))),v((t=>p(pI(f("Unexpected Error","Fetch Debit Card Summary REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(Oq.match),y((r=>{const{cacheOverride:t,depositAccountId:e}=r.payload,a=[],s=i.value;if(a.push(Ds(e)),t===!0)a.push(Be()),a.push(ze()),a.push(ta()),a.push(Qr(e)),a.push(Js(e,!0)),a.push(el(e));else{const o=s.depositAccountListState;o.hasValidState()===!1&&o.fetchState!=="In-Progress"&&a.push(Be());const c=s.paymentAccountListState;c.hasValidState()===!1&&c.fetchState!=="In-Progress"&&a.push(ze());const d=s.zeniAccountDetailState.depositAccountDetailById[e];(d==null||d.hasValidState()===!1&&d.fetchState!=="In-Progress")&&a.push(Qr(e));const l=s.depositAccountTransactionListState.byDepositId[e];(l==null||l.fetchState!=="Completed"&&l.fetchState!=="In-Progress")&&a.push(Js(e,!1));const u=s.zeniAccountsConfigState;u.hasValidState()===!1&&u.fetchState!=="In-Progress"&&a.push(ta()),a.push(el(e))}return j(_(a))}))),(n,i,r)=>n.pipe(S(Qr.match),A((t=>{const{depositAccountId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts/${e}?query=${encodeURIComponent('{"is_include_deposit_accounts_summary":true}')}`).pipe(y((a=>P(a)?p(Ze(a.data?.deposit_accounts??[]),Cq({data:a,depositAccountId:e,fetchState:"Completed"})):p(hb({depositAccountId:e,error:a.status})))),v((a=>p(hb({depositAccountId:e,error:f("Unexpected Error","Fetch deposit Account REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(el.match),A((t=>{const{depositAccountId:e}=t.payload,a={start_date:"2022-01-01",end_date:me().format("YYYY-MM-DD")};return r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts/${e}/balances/time-series?query=${encodeURIComponent(JSON.stringify(a))}`).pipe(y((s=>P(s)?p(xq({depositAccountId:e,data:s})):p(Sb({depositAccountId:e,fetchState:"Error",error:s.status})))),v((s=>p(Sb({depositAccountId:e,fetchState:"Error",error:f("Unexpected Error","Fetch deposit account history REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(HV.match),A((t=>{const{depositAccountId:e}=t.payload,a={deposit_account_id:e};return r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts/limits?query=${JSON.stringify(a)}`).pipe(y((s=>P(s)?p(oI(s.data?.deposit_accounts??[]),od({depositAccountId:e,fetchState:"Completed",error:void 0})):p(od({depositAccountId:e,fetchState:"Error",error:s.status})))),v((s=>p(od({depositAccountId:e,fetchState:"Error",error:f("Unexpected Error","Fetch deposit Accounts Limit For Card Detail REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(Be.match),A((()=>r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts?query=${encodeURIComponent('{"is_include_deposit_accounts_summary":true}')}`).pipe(y((t=>{if(P(t)){const e=t.data?.deposit_accounts??[];return p(Ze(e),kq({summaryPayload:t.data?.all_deposit_accounts_summary}),Zt({data:e,updateType:"replace"}))}return p(gb({fetchState:"Error",error:t.status}))})),v((t=>p(gb({fetchState:"Error",error:f("Unexpected Error","Fetch deposit Accounts REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(Ns.match),A((()=>r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts/limits`).pipe(y((t=>P(t)?p(JL(t.data?.deposit_accounts??[]),oI(t.data?.deposit_accounts??[])):p(EI({fetchState:"Error",error:t.status})))),v((t=>p(EI({fetchState:"Error",error:f("Unexpected Error","Fetch deposit Accounts For Cards REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(Js.match),y((t=>{const{depositAccountId:e,cacheOverride:a,count:s}=t.payload,o=i.value,c=ee(o.depositAccountTransactionListState.byDepositId,e,void 0);if(a===!0||c==null||c.fetchState!=="Completed"||c.transactions.length<6&&s==null){let d={start_date:"2022-01-01",end_date:"2030-12-31"};return s!=null&&(d={...d,limit:s}),r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts/${e}/transactions?query=${encodeURIComponent(JSON.stringify(d))}`).pipe(y((l=>P(l)?p(Dq(l.data?.deposit_account.transactions??[]),Bq({transactionList:l.data?.deposit_account.transactions??[],depositName:l.data?.deposit_account.deposit_account_name??"",depositAccountId:e})):p(fb({depositAccountId:e,error:l.status})))),v((l=>p(fb({depositAccountId:e,error:f("Unexpected Error","Fetch deposit Account transactions REST API call errored out"+JSON.stringify(l))})))))}return _([])}))),(n,i,r)=>n.pipe(S(jR.match),y((t=>{const{scheduleType:e,downloadCategories:a,statusFilter:s}=t.payload,o=i.value.scheduleListState;let c;if(e!=="accrued_expenses"&&(c=Sc(o,e)),c==null)return _([]);const d=t.payload.timeframeAndCategory!=null?t.payload.timeframeAndCategory.selectedTimeframe:c.selectedTimeframe,l=t.payload.timeframeAndCategory.selectedCategoryId,u=_a(d),m=_s(l,d),h=c.jeScheduleKeysByListKey[m];if(h!=null&&h.fetchState==="Completed")return _([]);const g={start_date:X(u.start),end_date:X(u.end),je_schedule_type:e,base_txn_account_ids:a,sort_by:"transaction_date",sort_order:"desc",filter:s};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/download?query=${encodeURIComponent(JSON.stringify(g))}`).pipe(y((I=>{if(P(I)&&I.data!=null){const E=[yt(I.data.je_schedules),It(I.data.je_schedules,I.data.scheduled_journal_entries),GR(e,d,l,I.data.je_schedules)];return _(E)}return p(Jf(e,d,l,I.status))})),v((I=>p(Jf(e,d,l,f("Unexpected Error","Schedule Download REST API call errored out"+JSON.stringify(I)))))))}))),(n,i,r)=>n.pipe(S(Nc.match),A((t=>{const{invoiceId:e,recipientTotalAmount:a,vendorName:s,vendorId:o}=t.payload,c=i.value,d=Ce(c.vendorState,o),l={sort_order:"desc",sort_by:"transaction_date",transaction_type:"bill",bill_pay_provider:"zeni",is_include_attachment:!0,limit:3,entity_type:"vendor",entity_name:s,entity_id:d?.qboId??"",recipient_total_amount:a,...!!e&&{document_id:e}};return r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions?query=${encodeURIComponent(JSON.stringify(l))}`).pipe(y((u=>{if(P(u)&&u.data!=null){const m=[];return m.push(xc(u.data.transactions)),m.push(LM({transactions:u.data.transactions,transactionId:t.payload.transactionId})),_(m)}return p(mv({transactionId:t.payload.transactionId,status:u.status}))})),v((u=>p(mv({transactionId:t.payload.transactionId,status:f("Unexpected error","Duplicate Bill Pay Rest API errored out"+JSON.stringify(u))})))))}))),(n,i,r)=>n.pipe(S(Bd.match),A((t=>{const{reimbursementId:e,signedInUserId:a,isManuallyTriggered:s}=t.payload,{editRemiDetailViewState:o,reimbursementState:c}=i.value;let d=[];const l=e!=null?c.reimbursementById[e]?.createdBy:a;s===!0?d=e!=null?Object.values(o.editRemiStateById[e].remiDetailLocalData.updatesByLineId).filter((m=>m!=null)):Object.values(o.newRemiState.remiDetailLocalData.updatesByLineId).filter((m=>m!=null)):e!=null&&(d=(c.reimbursementById[e]?.lines??[]).map((m=>m.type==="mileage"?(h=>({type:h.type,fileId:h.fileId,lineId:h.lineId,homeCurrencyConversions:h.homeCurrencyConversions,mileage:{description:h.description,lineDetail:h.lineDetail,transactionDate:h.transactionDate,amount:h.amount,currencyCode:h.currencyCode,currencySymbol:h.currencySymbol,distanceMileage:h?.distanceMileage},outOfPocket:{recommendations:[],isCategoryFirstTimeAutofilled:!1,isCategoryUpdateSelected:!1,isRetainedCategorySelected:!1}}))(m):(h=>({type:h.type,fileId:h.fileId,lineId:h.lineId,homeCurrencyConversions:h.homeCurrencyConversions,mileage:{},outOfPocket:{merchant:h?.merchant,description:h.description,lineDetail:h.lineDetail,transactionDate:h.transactionDate,amount:h.amount,currencyCode:h.currencyCode,currencySymbol:h.currencySymbol,recommendations:[],isCategoryFirstTimeAutofilled:!1,isCategoryUpdateSelected:!1,isRetainedCategorySelected:!1}}))(m))));const u={reimbursement_provider:"zeni",transaction_type:"reimbursement",created_by_user_id:l,transaction_id:e??null,lines:d.map(VI)};return r.postAndGetJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/transactions/duplicates`,u).pipe(y((m=>{if(P(m)&&m.data!=null){const h=[];return h.push(MF({duplicateLinesPayload:m.data.lines})),_(h)}return p(jI({status:m.status}))})),v((m=>p(jI({status:f("Unexpected error","Duplicate Reimbursement Rest API errored out"+JSON.stringify(m))})))))}))),(n,i)=>n.pipe(S(n1.match),y((r=>{const{cacheOverride:t,billId:e,isShowDeletedBillsEnabled:a,hasZeniAssistAccess:s,isInternationalWireEnabled:o}=r.payload,c=[],d=i.value,{tenantState:l,companyState:u}=d,{currentTenantId:m}=l,h=m!=null?l.tenantsById?.[m]?.companyId:void 0,g=Ae(u,h??""),I=g?.company.companyZeniAccountInfo.isZeniAccountEnabled??!1;if(t)c.push(Te("billPayAccountList",!0,!0,!0)),c.push(ne(!0)),c.push(Qe()),c.push(ut()),c.push(zr(o)),I&&c.push(Be()),c.push(ze()),e!=null?c.push(Jc(e,!0,a,s)):c.push(Rc(!0));else{d.ownerListState.fetchState!=="In-Progress"&&d.ownerListState.hasValidState()===!1&&c.push(ut());const E=d.accountListState.byReportId.billPayAccountList;E.hasValidState()===!1&&E.fetchState!=="In-Progress"&&c.push(Te("billPayAccountList",!0,!0,!0)),d.classListState.fetchState!=="In-Progress"&&c.push(ne(!0)),d.vendorTypeListState.hasValidState()===!1&&d.vendorTypeListState.fetchState!=="In-Progress"&&c.push(Qe());const b=d.billPayConfigState.fetchState;b!=="Completed"&&b!=="In-Progress"&&c.push(zr(o));const T=d.depositAccountListState;I&&T.fetchState!=="In-Progress"&&T.fetchState!=="Completed"&&c.push(Be());const O=d.paymentAccountListState;O.fetchState!=="In-Progress"&&O.fetchState!=="Completed"&&c.push(ze()),e!=null&&c.push(Jc(e,!1,a,s))}return j(_(c))}))),(n,i)=>n.pipe(S(bF.match),y((r=>{const{cacheOverride:t,isLimitedCategoryEnabled:e,reimbursementId:a,isShowDeletedReimbursementEnabled:s}=r.payload,o=[],c=i.value,d=c.tenantState.loggedInUser?.userId??"";if(t)o.push(Te("reimbursementAccountList",!0,!0,!0,e,[],!0)),o.push(ne(!0)),o.push(bd()),o.push(za()),o.push(Ad(d,a)),a!=null&&o.push(Nd(a,!0,s));else{c.accountListState.byReportId.reimbursementAccountList.fetchState!=="In-Progress"&&o.push(Te("reimbursementAccountList",!0,!0,!0,e,[],!0)),c.classListState.fetchState!=="In-Progress"&&o.push(ne(!0));const l=c.merchantListState;l.hasValidState()===!1&&l.fetchState!=="In-Progress"&&o.push(bd());const u=c.reimbursementConfigState.fetchState;u!=="Completed"&&u!=="In-Progress"&&o.push(za());const m=c.userFinancialAccountState.financialAccountByUserId[d];if(m==null||m.hasValidState()===!1&&m.fetchState!=="In-Progress")o.push(Ad(d,a));else if(a==null){const h=EF(c,d);o.push(or({bankAccountId:h,shouldOverWriteCurrentBankAccountId:!1}))}a!=null&&o.push(Nd(a,!1,s))}return j(_(o))}))),(n,i,r)=>n.pipe(S(cv.match),y((t=>{const{billId:e,cacheOverride:a}=t.payload,s=Oe(e),o=i.value,c=ee(o.billDetailViewState.billDetailById,s,void 0);return a==1||c==null||c.zeniAssist.eligibleActionsFetchStatus.fetchState!=="In-Progress"?r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions/${e}/eligible-actions`).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[DM(e,d.data.is_refund_eligible??void 0,d.data.is_retry_eligible.is_ibt_retry_eligible??void 0,d.data.is_retry_eligible.is_obp_retry_eligible??void 0)];return _(l)}return p(dv(t.payload.billId,d.status))})),v((d=>(console.error(`Fetch eligible actions REST API call errored out ${d}`),p(dv(t.payload.billId,f("Unexpected Error",`Fetch eligible actions REST API call errored out ${d}`))))))):_([])}))),$z,(n,i,r)=>n.pipe(S(fs.match),y((t=>{const{entityId:e,entityType:a,cacheOverride:s}=t.payload,o=FL(e,a),c=[],d=i.value,l=ee(d.commonHistoryState.historyById,o,void 0);if(s===!0||l==null||l.fetchState!=="In-Progress"){c.push(Id({entityId:e,entityType:a,fetchState:"In-Progress"}));const u=a==="bill_pay"?"bill":a,m=r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/${u}s/transactions/${e}/history`).pipe(y((h=>P(h)&&h.data!=null?p(qL({entityId:e,entityType:a,historicEventsPayload:h.data.activities,keepTimeInUTC:a==="bill_pay"})):p(Id({entityId:e,entityType:a,fetchState:"Error",error:h.status})))),v((h=>(console.error(`REST API call errored out ${h}`),p(Id({entityId:e,entityType:a,fetchState:"Error",error:f("Unexpected Error",`REST API call errored out ${h}`)}))))));return j(_(c),m)}return _(c)}))),(n,i,r)=>n.pipe(S(y$.match),A((t=>{const{entity:e,amount:a,transactionDetails:s,isBulkFetch:o,isTransactionCategorizationFlow:c,isFetchCOT:d}=t.payload,{expenseAutomationTransactionsViewState:{selectedTransactionCategorizationTab:l}}=i.value,u={amount:a,transaction_id:Yg(s.transactionId.id),transaction_type:s.transaction.type,line_ids:s.lineIds};d===!0&&(u.include_cot=!0);const m={entity_name:e.name,entity_type:e.type},h=e.qboId===e.name?`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/recommendations?query=${encodeURIComponent(JSON.stringify(m))}`:`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/${O0(e.type)}/${e.qboId}/recommendations?query=${encodeURIComponent(JSON.stringify(u))}`;return r.getJSON(h).pipe(y((g=>{if(P(g)&&g.data!=null){const I=[],{transactionId:E,transaction:b,lineIds:T}=s,O=N0(g.data.recommendations,T),x=Xr(g.data.recommendations),U=d===!0&&O!=null?Qg(b,O):zn(b);if(I.push(Vr({entityId:e.id,entityType:e.type,recommendations:x})),o===!0&&I.push(Lr(E,"Completed")),O!=null){const k=ha(i.value.accountState,i.value.accountListState,"accountList");c===!0?I.push(Wg(l,E,U,T,e,a,O,k,ht(i.value))):I.push(Zg(E,U,T,e,a,O,k))}return _(I)}return p(Ma({entityId:e.id,entityType:e.type,status:g.status}))})),v((g=>p(Ma({entityId:e.id,entityType:e.type,status:f("Unexpected Error","Fetch recommendation by Entity QBO Id REST API call errored out"+JSON.stringify(g))})))))}))),(n,i,r)=>n.pipe(S(_$.match),pa((t=>{return e=t.payload.flowType,a=t.payload.transactionDetails.transactionId.id,s=t.payload.transactionDetails.lineIds,`${e}\0${a}\0${[...s].sort(((o,c)=>o.localeCompare(c))).join("\0")}`;var e,a,s}),void 0,(t=>t.pipe(h$((()=>Za(6e4)))))),y((t=>t.pipe(A((e=>{const a=e.payload,{transactionId:s,transaction:o,lineIds:c}=a.transactionDetails,{entity:d,amount:l,isFetchCOT:u}=a,m=a.flowType==="detail"&&a.isBulkFetch===!0,h=(b,T)=>m&&T!=null?p(b,T):p(b),g=a.flowType==="categorization"?S$(a.selectedTab,s,c):g$(s,c),I=((b,T,O,x,U)=>{const k={entity_name:T.name,entity_type:T.type};if(T.qboId===T.name)return`${b}/1.0/recommendations?query=${encodeURIComponent(JSON.stringify(k))}`;const C={amount:O,transaction_id:Yg(x.transactionId.id),transaction_type:x.transaction.type,line_ids:x.lineIds};return U===!0&&(C.include_cot=!0),`${b}/1.0/${B=T.type,`${B}s`}/${T.qboId}/recommendations?query=${encodeURIComponent(JSON.stringify(C))}`;var B})(r.apiEndPoints.accountMicroServiceBaseUrl,d,l,a.transactionDetails,u===!0),E=r.getJSON(I).pipe(y((b=>{if(!P(b)||b.data==null)return h(a.flowType==="categorization"?Xg(a.selectedTab,s,c,b.status):ef(s,c,b.status),m?Lr(s,"Error",b.status):void 0);const T=N0(b.data.recommendations,c);if(T==null)return h(a.flowType==="categorization"?f$(a.selectedTab,s,c):v$(s,c),m?Lr(s,"Completed"):void 0);const O=u===!0?Qg(o,T):zn(o),x=ha(i.value.accountState,i.value.accountListState,"accountList");return a.flowType==="categorization"?p(Wg(a.selectedTab,s,O,c,d,l,T,x,ht(i.value))):h(Zg(s,O,c,d,l,T,x),m?Lr(s,"Completed"):void 0)})),v((b=>{const T="fetchEntityRecommendationsForLineUpdate failed: "+(b instanceof Error?b.message:JSON.stringify(b)),O=f("Unexpected Error",T);return h(a.flowType==="categorization"?Xg(a.selectedTab,s,c,O):ef(s,c,O),m?Lr(s,"Error",O):void 0)})));return j(p(g),E)})))))),Rz,(n,i,r)=>n.pipe(S(Ql.match),A((t=>{const e=i.value,{period:a,refreshViewInBackground:s}=t.payload,o={month:a.start.month,year:a.start.year},c=(function(d){return X(d.start).slice(0,7)})(a);return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/actual-matching?service_month=${encodeURIComponent(c)}`).pipe(y((d=>{if(P(d)&&d.data!=null){const l=d.data.matches,u=[];return l.length>0&&u.push(Dy(l,Rn(e))),u.push(fx({matchIds:l.map((m=>m.match_id)),selectedPeriod:o,refreshViewInBackground:s})),_(u)}return p(Jy({status:d.status,selectedPeriod:o,refreshViewInBackground:s}))})),v((d=>p(Jy({status:f("Unexpected Error","fetch actual matching REST API call errored out"+JSON.stringify(d)),selectedPeriod:o,refreshViewInBackground:s})))),ge(n.pipe(S($e.match))))}))),(n,i,r)=>n.pipe(S(ui.match),y((t=>{const{matchId:e,refreshViewInBackground:a}=t.payload;return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/actual-matching/${encodeURIComponent(e)}`).pipe(y((s=>P(s)&&s.data!=null?_([Dy([s.data],Rn(i.value)),vx({matchId:e,refreshViewInBackground:a})]):_([wy({matchId:e,refreshViewInBackground:a,status:s.status})]))),v((s=>_([wy({matchId:e,refreshViewInBackground:a,status:f("Unexpected Error",`Fetch actual matching match REST API call errored out ${JSON.stringify(s)}`)})]))),ge(n.pipe(S($e.match))))}))),n=>n.pipe(S(pi.match),y((i=>{const{period:r,refreshViewInBackground:t}=i.payload;return p(Ql(r,t))}))),(n,i,r)=>n.pipe(S($n.match),y((t=>{const{expenseAutomationFluxAnalysisViewState:{groupsBySelectedPeriod:e,uiState:a}}=i.value,{monthAndYear:s,cacheOverride:o,pageToken:c,fetchReimbursement:d,keepExistingListItems:l}=t.payload,u=e[Ie(s)],m=d===!0?u?.reimbursement:u?.generalExpense,h=m?.operatingExpenseIds??[],g=m?.fetchStatus?.fetchState??"Not-Started";if(o===!0||m==null||h.length===0||g==="Not-Started"){const I={month_and_year:`${s.month<10?`0${s.month}`:s.month}-${s.year}`,sort_by:ix(a.sortKey),sort_order:zo(a.sortOrder),page_token:c,reimbursement_flag:d};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/month-close/flux-analysis?query=${encodeURIComponent(JSON.stringify(I))}`).pipe(y((E=>{if(P(E)&&E.data!=null){const b=[];return b.push(W(E.data.accounts,"account_list")),b.push(He("class_list",E.data.accounting_class)),b.push(le(E.data.vendors,"merge")),b.push(V({users:E.data.users,updateType:"merge"})),b.push(cx({fetchReimbursement:d,pageMetaData:E.data.page_metadata})),E.data.flux_analysis_entities?.operating_expenses!=null&&b.push(dx({expensesPayload:E.data.flux_analysis_entities?.operating_expenses,totalsPayload:E.data.total_operating_expenses,currency:E.data.currency,selectedPeriod:s,fetchReimbursement:d,keepExistingListItems:l,status:E.data?.status})),_(b)}return p(Ny({fetchReimbursement:d,status:E.status,selectedPeriod:s}))})),v((E=>p(Ny({fetchReimbursement:d,status:f("Unexpected Error",`fetch flux analysis view REST API call errored out: ${JSON.stringify(E)}`),selectedPeriod:s})))))}return _([])}))),(n,i)=>n.pipe(S(Ei.match),y((r=>{const{transactionIds:t,selectedPeriod:e,keepExistingListItems:a,selectedTab:s,pageToken:o,totalCount:c,lineItemsByTransactionIds:d,refreshViewInBackground:l}=r.payload,u=[],{transactionState:m,expenseAutomationTransactionsViewState:h}=i.value,{transactionReviewLocalDataById:g}=h.transactionCategorizationView[s],I=a===!0?{...g}:{};return g_(m,t).forEach((E=>{const b=zn(E),T=RU(b,s,d[E.id]);I[E.id]==null?I[E.id]={...MU,transactionId:E.id,transactionReviewLocalData:{...T,sortedLineItems:E.lines?.map((O=>O.id))??[]}}:I[E.id]={transactionId:E.id,transactionReviewLocalData:{...I[E.id].transactionReviewLocalData,...T,lineItemById:{...sH(I[E.id].transactionReviewLocalData.lineItemById,T.lineItemById)},sortedLineItems:[...new Set(I[E.id].transactionReviewLocalData.sortedLineItems.concat(T.sortedLineItems))],tabSpecificLineItems:VU(I[E.id].transactionReviewLocalData.tabSpecificLineItems,s,T.tabSpecificLineItems)}}})),u.push(LU({selectedTab:s,transactionIds:t,selectedPeriod:e,keepExistingListItems:a,transactionLocalData:I,pageToken:o,totalCount:c,refreshViewInBackground:l})),_(u)}))),(n,i,r)=>n.pipe(S(er.match),y((t=>{const e=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:a}}=e,{period:s,refreshViewInBackground:o}=t.payload,c=a[Y(e).tenantId],d=t.payload.selectedPageTab??e.expenseAutomationJESchedulesViewState.uiState.selectedPageTab,l=d==="schedules",u=Se(te(X(s.start)).subtract(1,"month").endOf("month").format(re)),m=X(l||u==null?s.end:u),h=te(m),g=h.subtract(24,"month").startOf("month").format(re),I=h.subtract(12,"month").startOf("month").format(no),E={base_transaction_end_date:m,end_date:m,accrued_start_date:g,accrued_end_date:m,include_accrued:!0,...l?{base_transaction_start_date:X(s.start),close_period_start_date:X(s.start),one_time_accrual_service_month:te(X(s.start)).format(no),one_time_accrual_statuses:[],filter_failed_je_postings_by_date:!0}:{one_time_accrual_service_month_start:I,one_time_accrual_service_month_end:h.format(no),one_time_accrual_statuses:["posted"],filter_failed_je_postings_by_date:!1}};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/expenses_automation/je_schedules?query=${encodeURIComponent(JSON.stringify(E))}`).pipe(y((b=>{if(P(b)&&b.data!=null){const T=[],O=b.data.accrued_je_schedules?.je_schedules??[],x=b.data.one_time_accruals??[];return T.push(yt([...b.data.je_schedules,...b.data.failed_je_postings.je_schedules]),It([...b.data.failed_je_postings.je_schedules],b.data.failed_je_postings.scheduled_journal_entries),Gy([...b.data.failed_je_postings.je_schedules])),O.length>0&&T.push(ua(O),Ar(O,b.data.accrued_je_schedules?.scheduled_journal_entries)),x.length>0&&T.push(Lt(x)),T.push(wx({jeSchedules:[...b.data.je_schedules],failedJeSchedules:[...b.data.failed_je_postings.je_schedules],accruedJeSchedules:O,oneTimeAccruals:x,selectedPeriod:c,selectedPageTab:d,refreshViewInBackground:o})),_(T)}return p(zy({status:b.status,selectedPeriod:c,selectedPageTab:d}))})),v((b=>p(zy({status:f("Unexpected Error","fetch JE schedules REST API call errored out"+JSON.stringify(b)),selectedPeriod:c,selectedPageTab:d})))),ge(n.pipe(S($e.match))))}))),(n,i)=>n.pipe(S(Vt.match),y((r=>{const t=[],{period:e,refreshViewInBackground:a}=r.payload,s=i.value,{selectedPageTab:o}=s.expenseAutomationJESchedulesViewState.uiState,c=Pr();return s.accountListState.byReportId[c.accountListKey].fetchState==="Not-Started"&&t.push(Te(c.accountListKey,!0,!1,!1,!1,c.allowedAccountList)),o==="actual_matching"?t.push(pi(e,a)):t.push(er(e,a)),s.expenseAutomationJESchedulesViewState.accountSettings.hasLoadedAccountSettings||t.push(By()),j(_(t))}))),(n,i,r)=>n.pipe(S(f_.match),y((t=>{const{expenseAutomationViewState:e,expenseAutomationTransactionsViewState:a}=i.value,{transactionsInReview:s,selectedTab:o}=t.payload,c=s.transactions_update_success,d=s.transactions_update_failed,l=Y(i.value),u=e.selectedPeriodByTenantId[l.tenantId],m=o==="review"?"autoCategorized":"review",h=a.transactionCategorizationView[o],g=a.transactionCategorizationView[m],{uiState:I}=h,E=d.map((T=>T.transaction_id)),b=[];return d.length>0&&c.length===0&&b.push(N(v_(c.length,d.length,0))),c.length>0?r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/expense-automation/mark-as-reviewed`,{transactions_reviewed:c}).pipe(y((T=>{if(P(T)&&T.data!=null){const O=T.data.transactions_reviewed_success,x=T.data.transactions_reviewed_failed,U={},k={};O.forEach((w=>{U[w.transaction_id]=w.line_ids})),x.forEach((w=>{k[w.transaction_id]=w.line_ids}));const C=[...new Set([...Object.keys(U),...Object.keys(k)])],B=C.filter((w=>!(w in k))),J=[],L=[],R={};C.forEach((w=>{const K=U[w]??[],G=k[w]??[],Z=h.transactionReviewLocalDataById[w]?.transactionReviewLocalData.tabSpecificLineItems[o]??[],de=(g.transactionReviewLocalDataById[w]?.transactionReviewLocalData.tabSpecificLineItems[m]??[]).length>0,ue=Z.filter((ae=>{const ye=K.includes(ae),_e=G.includes(ae);return o==="review"?!ye||_e:!ye&&!_e}));ue.length>0?R[w]=ue:(R[w]=[],L.push(w),de||J.push(w))}));const q=[...E],$=I.totalCount[Ie(u)],D=L.length===0?$:$-L.length;if(b.push(Kn(o,C,L,u,"Completed",void 0,R)),J.length>0&&b.push(I_({transactionIds:J})),o==="autoCategorized"&&Object.keys(k).length>0){const w=Je(u),K=Se(w.start),G=Se(w.end);K!=null&&G!=null&&b.push(br("review",{start:K,end:G},!0,!1,void 0,void 0,!0,!1))}return b.push(qn({selectedPeriod:u,selectedTab:o,totalCount:D})),b.push(N(v_(c.length-B.length,q.length,B.length))),l!=null&&b.push(nt({tenantId:l.tenantId,period:u,refreshViewInBackground:!0})),_(b)}return p(Kn(t.payload.selectedTab,[],[],u,"Error",T.status))})),v((T=>p(Kn(t.payload.selectedTab,[],[],u,"Error",f("Unexpected Error",`Transaction mark miscategorized as correct REST API call errored out ${JSON.stringify(T)}`)))))):_(b)}))),(n,i,r)=>n.pipe(S(Er.match),A((t=>{const e=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:a},expenseAutomationMissingReceiptsViewState:{transactionIdsBySelectedPeriod:s,fetchState:o}}=e,{period:c,cacheOverride:d,minimumTransactionAmount:l}=t.payload,u=a[Y(e).tenantId],m=s[Ie(u)]??[];if(d===!0||m.length===0||o==="Not-Started"){const h={start_date:X(c.start),end_date:X(c.end),total_amount_min:l.amount,is_attachment_missing_only:!0,sort_by:"transaction_date",sort_order:"desc"};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions?query=${encodeURIComponent(JSON.stringify(h))}`).pipe(y((g=>{if(P(g)&&g.data!=null){const I=[];return I.push(xe(g.data.transactions,(E=>E.transaction_id))),I.push(vU({transactionsPayload:g.data.transactions,selectedPeriod:u})),_(I)}return p(d_({status:g.status,selectedPeriod:u}))})),v((g=>p(d_({status:f("Unexpected Error","fetch missing receipts REST API call errored out"+JSON.stringify(g)),selectedPeriod:u})))))}return _([])}))),(n,i,r)=>n.pipe(S(Mt.match),y((t=>{const{accountId:e,cacheOverride:a,refreshViewInBackground:s}=t.payload,o=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:c},expenseAutomationReconciliationViewState:{accountReconciliationRecordsBySelectedPeriod:d}}=o,l=c[Y(o).tenantId];let u,m,h;if(e!=null&&(u=Na(o,e,l),m=u?.reconciliationId),h=e!=null?d[Ie(l)].reconciliationByAccountID[e].transactionFetchState.fetchState:o.expenseAutomationReconciliationViewState.fetchState,a===!0||h!=="Completed"){const{start:g,end:I}=Je(l,!0),E={};m==null&&(E.start_date=g.toString(),E.end_date=I.toString(),e!=null&&(E.account_id=e)),a===!0&&e!=null&&(E.is_force_refresh=!0);const b=m!=null?`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/${m}?query=${encodeURIComponent(JSON.stringify(E))}`:`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation?query=${encodeURIComponent(JSON.stringify(E))}`;return r.getJSON(b).pipe(y((T=>{if(P(T)&&T.data!=null){const O=[],x=my(T.data.reconciliation);O.push(W(T.data.accounts,"account_reconciliation"),W(T.data.excluded_accounts??[],"excluded_account_reconciliation"),V({users:T.data.users??[],updateType:"merge"}),he({files:T.data.files??[]}),si(x,"merge"),oi(l,T.data.reconciliation,e==null));const U=LK(T.data.reconciliation[0]?.transactions?.review??[]);if(e!=null){const k=r0(T.data.reconciliation[0].transactions.reconcile);O.push(Ir({selectedTransactionIds:k}),hy(U))}return O.push(JC(l,T.data,s,e)),_(O)}return p(Sy({error:T.status,selectedPeriod:l,refreshViewInBackground:s,accountId:e}))})),v((T=>p(Sy({error:f("Unexpected Error",`fetch reconciliation view REST API call errored out ${JSON.stringify(T)}`),refreshViewInBackground:s,selectedPeriod:l,accountId:e})))))}{const g=[];return e!=null&&g.push(gy()),_(g)}}))),(n,i)=>n.pipe(S(qU.match),y((r=>{const{transactionIds:t,cotTrackingByTransactionId:e,selectedTab:a}=r.payload,s=[],{transactionState:o,expenseAutomationTransactionsViewState:c}=i.value,d=[];return g_(o,t).forEach((l=>{const u=ee(c.transactionCategorizationView[a].transactionReviewLocalDataById,l.id,void 0),m=ha(i.value.accountState,i.value.accountListState,"accountList"),h=u?.transactionReviewLocalData;h!=null&&d.push(cH(h,l,m))})),s.push(b_(a,t,d,e)),_(s)}))),(n,i,r)=>n.pipe(S(jn.match),pa((t=>t.payload.selectedTab)),y((t=>t.pipe(A((e=>{const{expenseAutomationViewState:{selectedPeriodByTenantId:a},expenseAutomationTransactionsViewState:s}=i.value,{period:o,keepExistingListItems:c,selectedTab:d,refreshViewInBackground:l}=e.payload,u=s.transactionCategorizationView[d].uiState,{pageToken:m,sortOrder:h,sortKey:g}=u,I=u.searchString,E=a[Y(i.value).tenantId],b={start_date:X(o.start),end_date:X(o.end),auto_categorized:d==="autoCategorized",sort_by:Ii(g),sort_order:h==="ascending"?"asc":"desc",page_token:m,page_size:25,search_text:u.searchString,search_all_statuses:!1,sub_tab:d==="autoCategorized"?s.selectedTransactionCategorizationCompletedSubTab:vi,transaction_group:s.selectedTransactionGroup};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/expense-automation/transactions?query=${encodeURIComponent(JSON.stringify(b))}`).pipe(y((T=>{if(i.value.expenseAutomationTransactionsViewState.transactionCategorizationView[d].uiState.searchString!==I)return F;if(P(T)&&T.data!=null){const O=[];O.push(xe(T.data.transactions,(k=>k.transaction_id),"merge"));const x=T.data.transactions.map((k=>k.transaction_id)),U=__(T.data.transactions);return O.push(h_({selectedTab:d,uiState:{pageToken:T.data.next_page_token??null}})),O.push(Ei(d,x,E,c,T.data.next_page_token??null,T.data.total_count,U,l)),O.push(qn({selectedPeriod:E,selectedTab:d,totalCount:T.data.total_count})),O.push(wU({selectedPeriod:E,selectedTab:d,parentTotalCount:T.data.parent_tab_total_count??T.data.total_count})),O.push($U({refreshViewInBackground:l,tabs:Ti.filter((k=>d!==k))})),O.push(S_({refreshViewInBackground:l,selectedTab:d,status:T.status})),_(O)}return p(Fn({selectedPeriod:E,selectedTab:d,status:T.status}))})),v((T=>i.value.expenseAutomationTransactionsViewState.transactionCategorizationView[d].uiState.searchString!==I?F:p(Fn({selectedPeriod:E,selectedTab:d,status:f("Unexpected Error","fetch Transaction Categorization REST API call errored out"+JSON.stringify(T))})))))})))))),(n,i)=>n.pipe(S(br.match),y((r=>{const{selectedTab:t,cacheOverride:e,keepExistingListItems:a,pageToken:s,period:o,refreshViewInBackground:c,searchString:d,resetListItems:l}=r.payload,u=[],{expenseAutomationTransactionsViewState:m}=i.value,{fetchState:h,transactionIdsBySelectedPeriod:g,uiState:I}=m.transactionCategorizationView[t],E={month:o.start.month,year:o.start.year},b=g[Ie(E)]??[],T=i.value.accountListState.byReportId.accountList;T.hasValidState()===!1&&T.fetchState==="Not-Started"&&u.push(Te("accountList",!0));const O=i.value.classListState;O.hasValidState()===!1&&O.fetchState==="Not-Started"&&u.push(ne());const x=i.value.projectListState;Gn(i.value)&&x.hasValidState()===!1&&x.fetchState==="Not-Started"&&u.push(Pi());const U=i.value.ownerListState;return U.hasValidState()===!1&&U.fetchState==="Not-Started"&&u.push(ut()),d!==""&&e!==!0&&h!=="Not-Started"&&b.length!==0&&I.searchString===""||u.push(jn(t,o,e,a,d,s,c,l)),d===void 0&&Ti.filter((k=>k!==t)).forEach((k=>{m.transactionCategorizationView[k].fetchState==="Not-Started"&&u.push(jn(k,o,!1,!1,void 0,void 0,!0,void 0))})),d!==void 0&&Ti.filter((k=>k!==t)).forEach((k=>{const C=m.transactionCategorizationView[k].uiState.searchString;d!==C&&u.push(jn(k,o,!0,a,d,void 0,!0,!0))})),_(u)}))),(n,i,r)=>n.pipe(S(b_.match),y((t=>{const{selectedTab:e,transactionIds:a,transactionSaveUpdates:s,cotTrackingByTransactionId:o}=t.payload,{transactionState:c,vendorState:d,expenseAutomationTransactionsViewState:l}=i.value,u=(function(m,h,g,I,E,b,T){const O=[];return E.forEach((x=>{const U=b.find((k=>k.transactionId===x));if(U!=null){const k=(function(C,B,J,L,R,q,$){const D=Ot(B,R),w=ee(L.transactionCategorizationView[C].transactionReviewLocalDataById,R,void 0),K=w?.transactionReviewLocalData?.vendorUpdates,G=w?.transactionReviewLocalData?.customerUpdates,Z=w?.transactionReviewLocalData?.selectedEntity;let de;if(K?.qboId!=null&&Z!=null&&Z.type==="vendor"){const ae=Ce(J,K.qboId)??K;de={id:ae.qboId===ae.name?"":ae.qboId??"",name:ae.name}}let ue;if(Z!=null&&Z.type==="customer"&&(ue=G?.qboId!=null?{id:G.qboId,name:G.name}:{id:Z.id,name:Z.name}),D!=null){const ae=uH(q.updates,D,R,$,de,ue,Z);return{entity_related_updates:pH(q.entityRelatedUpdates),transaction_id:R,transaction:ae,transaction_type:Xy(D.type)}}})(m,h,g,I,x,U,T);k!=null&&O.push(k)}})),O??[]})(e,c,d,l,a,s,o).filter((m=>m!=null));return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/expense-automation/transactions/categorize`,{transactions:u}).pipe(y((m=>{if(P(m)&&m.data!=null){const h=m.data,g=[];return g.push(f_(e,h),Ai(e,"Completed",f("Completed","Transaction categorization updated successfully"))),_(g)}return p(Ai(e,"Error",m.status))})),v((m=>p(Ai(e,"Error",f("Unexpected Error",`REST API call errored out ${JSON.stringify(m)}`))))))}))),(n,i,r)=>n.pipe(S(kE.match),y((t=>{const{vendorId:e,vendorName:a,vendorZeniId:s}=t.payload,o={entity_id:e,entity_type:"vendor",vendor_id:e,vendor_name:a},c=r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/spend_trend?query=${encodeURIComponent(JSON.stringify(o))}`).pipe(y((d=>P(d)?_(CY({id:e,name:a,zeniId:s},d)):p(Vs(t.payload.vendorId,d.status)))),v((d=>p(Vs(t.payload.vendorId,f("Unexpected Error","Spend Trend REST API call errored out"+JSON.stringify(d)))))));return j(c)}))),(n,i)=>n.pipe(S(Jq.match),y((r=>{const{cacheOverride:t}=r.payload,e=i.value,a=[];if(t===!0)a.push(Qe()),a.push(ta()),a.push(Be()),a.push(vb());else{e.vendorTypeListState.hasValidState()===!1&&e.vendorTypeListState.fetchState!=="In-Progress"&&a.push(Qe());const s=e.zeniAccountsConfigState;s.hasValidState()===!1&&s.fetchState!=="In-Progress"&&a.push(ta());const o=e.depositAccountListState;o.fetchState!=="In-Progress"&&o.fetchState!=="Completed"&&a.push(Be()),a.push(vb())}return j(_(a))}))),Mz,(n,i,r)=>n.pipe(S(ek.match),A((t=>{const{fileId:e,tenantId:a}=t.payload;return(a!=null?r.getJSON(`${r.apiEndPoints.fileMicroServiceBaseUrl}/1.0/files/${e}?query=${encodeURIComponent(JSON.stringify({is_dummy_response:!1,download_file:!1}))}`,Object.assign({"zeni-tenant-id":a})):r.getJSON(`${r.apiEndPoints.fileMicroServiceBaseUrl}/1.0/files/${e}?query=${encodeURIComponent(JSON.stringify({is_dummy_response:!1,download_file:!1}))}`)).pipe(y((s=>P(s)?p(he({files:s.data?.files??[]}),tk({fileId:e})):p(O_({status:s.status})))),v((s=>p(O_({status:f("Unexpected Error","Fetch File REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(C_.match),A((t=>{const{fileIds:e,tenantId:a}=t.payload;return(a!=null?r.getJSON(`${r.apiEndPoints.fileMicroServiceBaseUrl}/1.0/files?query=${encodeURIComponent(JSON.stringify({file_ids:e}))}`,Object.assign({"zeni-tenant-id":a})):r.getJSON(`${r.apiEndPoints.fileMicroServiceBaseUrl}/1.0/files?query=${encodeURIComponent(JSON.stringify({file_ids:e}))}`)).pipe(y((s=>P(s)?p(he({files:s.data?.files??[]}),ak({fileIds:e})):p(x_({status:s.status})))),v((s=>p(x_({status:f("Unexpected Error","Fetch File List REST API call errored out"+JSON.stringify(s))})))))}))),(n,i)=>n.pipe(S(ok.match),A((r=>{const{userId:t,fetchSelectedTab:e,fetchFullReport:a,cacheOverride:s}=r.payload,o=i.value;if(s===!0)return p(Pa(t),Ni(),bo(),Uo());{const{tenantState:c,financeStatementState:d}=o,l=[];c.fetchState==="In-Progress"||c.hasValidState()||l.push(Pa(t));const u=ik(void 0,o.profitAndLossState),m=ck(o.balanceSheetState),h=dk(o.cashFlowState);if(e)switch(d.selectedReportId){case"profit_and_loss":case"profit_and_loss_by_classes":u.fetchStateByTimeframe[d.timeframe].fetchState!=="In-Progress"&&u.fetchStateByTimeframe[d.timeframe].fetchState!=="Completed"&&l.push(Ft(d.timeframe));break;case"balance_sheet":m.fetchStateByTimeframe[d.timeframe].fetchState!=="In-Progress"&&m.fetchStateByTimeframe[d.timeframe].fetchState!=="Completed"&&l.push(xt(d.timeframe));break;case"cash_flow":h.fetchStateByTimeframe[d.timeframe].fetchState!=="In-Progress"&&h.fetchStateByTimeframe[d.timeframe].fetchState!=="Completed"&&l.push(Jt(d.timeframe,a))}else u.reducedAllFetchState.fetchState!=="In-Progress"&&u.reducedAllFetchState.fetchState!=="Completed"&&l.push(Ni()),m.reducedAllFetchState.fetchState!=="In-Progress"&&m.reducedAllFetchState.fetchState!=="Completed"&&l.push(bo(a)),h.reducedAllFetchState.fetchState!=="In-Progress"&&h.reducedAllFetchState.fetchState!=="Completed"&&l.push(Uo(a));return _(l)}}))),(n,i,r)=>n.pipe(S(Hn.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/forecasts`).pipe(y((t=>P(t)?p(lk(t.data?.forecasts??[]),Yn(t)):p(Ur(t.status)))),v((t=>p(Ur(f("Unexpected Error","Fetch forecast list call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(hk.match),xa((t=>{const e=i.value.globalMerchantAutoCompleteState.autoCompleteText??"",{globalMerchantType:a}=t.payload,s={search_text:e,entity_type:a};if(e===t.payload.searchString){const{userId:o,sessionId:c}=r,d={"zeni-user-id":o,"zeni-tenant-id":"","zeni-session-id":c};return r.getJSON(`${r.apiEndPoints.searchMicroServiceBaseUrl}/1.0/autocomplete/global_merchant?query=${encodeURIComponent(JSON.stringify(s))}`,d).pipe(xa((l=>{if(P(l)&&l.data!=null){const u=[];return u.push(Et({globalMerchants:l.data.entities,updateType:"merge"})),u.push(Sk(l.data)),_(u)}return p(D_(l.status))})),v((l=>p(D_(f("Unexpected Error","Global Merchant Auto Complete REST API call errored out"+JSON.stringify(l)))))))}return _([])}))),(n,i,r)=>n.pipe(S(yk.match),A((t=>{const{newGlobalMerchantData:e}=i.value.globalMerchantViewState,{source:a,merchantName:s}=t.payload,o=a==="tenant"&&s!=null?s:e?.globalMerchantName;if(o!=null){const c={global_merchant_name:o};return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/recommendations?query=${encodeURIComponent(JSON.stringify(c))}`).pipe(A((d=>{if(P(d)&&d.data!=null){const{recommendations:l}=d.data,u=AT(l),m=[Et({globalMerchants:u}),_k(l)];return l[0]?.global_merchants.length===0&&m.push(N({messageSection:"fetch_global_merchant_no_recommendation",messageText:"success",type:"info",variables:[{variableName:"_global_merchant_name_",variableValue:o}]})),m}return p(B_({status:d.status}))})),v((d=>p(B_({status:f("Unexpected Error","Fetch Global Merchant Recommendation REST API call errored out"+JSON.stringify(d))})))))}return _([])}))),(n,i,r)=>n.pipe(S(BE.match),y((t=>{const{customerId:e,customerName:a}=t.payload,s={entity_id:e,entity_type:"customer",customer_id:e,customer_name:a},o=r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/income_trend?query=${encodeURIComponent(JSON.stringify(s))}`).pipe(y((c=>P(c)?_(xY({id:e,name:a},c)):p(Vs(t.payload.customerId,c.status)))),v((c=>p(Vs(t.payload.customerId,f("Unexpected Error","Income Trend REST API call errored out"+JSON.stringify(c)))))));return j(o)}))),(n,i,r)=>n.pipe(S(ei.match),A((()=>r.getJSON(`${r.apiEndPoints.insightsMicroServiceBaseUrl}/1.0/insights`).pipe(y((t=>P(t)?p(J_(t.data?.insights??[]),gk(t)):p(w_(t.status)))),v((t=>p(w_(f("Unexpected error","Insights Card REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(Mv.match),A((t=>{const{currencyCode:e,amount:a,vendorType:s,cacheOverride:o}=t.payload,c=i.value,d=Vv(e,a,s),l=c.internationalWireState.dynamicFormDetailsbyKey[d];return o===!0||l==null||o===!1&&l.hasValidState()===!1?r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/international-wire/account-requirements?target_currency=${e}&target_amount=${JSON.stringify(a)}&vendor_type=${s}`).pipe(y((u=>P(u)&&u.data!=null?_([w1({internationalWireFormPayload:u.data,currencyCode:e,amount:a,vendorType:s}),Lv(a,s)]):p(Fv({currencyCode:e,amount:a,vendorType:s,error:u.status})))),v((u=>p(Fv({currencyCode:e,amount:a,vendorType:s,error:f("Unexpected Error","Fetch Dynamic form REST API call errored out"+JSON.stringify(u))}))))):_([])}))),(n,i,r)=>n.pipe(S(R1.match),A((t=>r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/international-wire/onboarding-fields?query=${encodeURIComponent(JSON.stringify({region:"US",legal_type:"BUSINESS"}))}`).pipe(y((e=>P(e)&&e.data!=null?_([M1({internationalWireFormPayload:e.data.labels}),jv(t.payload.companyId,e.data.labels)]):p(Gv({error:e.status})))),v((e=>p(Gv({error:f("Unexpected Error","Fetch international verification form REST API call errored out"+JSON.stringify(e))})))))))),(n,i,r)=>n.pipe(S(Ph.match),A((()=>{const{filters:t}=i.value.invoicingInvoiceListState,e=new URLSearchParams;t.search!=null&&t.search.length>0&&e.set("search",t.search),t.customerId!=null&&e.set("customer_id",t.customerId),t.subscriptionId!=null&&e.set("subscription_id",t.subscriptionId),t.dateFrom!=null&&e.set("date_from",t.dateFrom),t.dateTo!=null&&e.set("date_to",t.dateTo);const a=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices/counts`,e);return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?p(QB(s.data)):p(Ah(s.status)))),v((s=>p(Ah(f("Unexpected Error","Fetch invoice counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S($r.match),A((t=>{const{invoiceId:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices/${e}`;return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?[z(kr([s.data])),Ua([s.data],"merge"),zB({invoiceId:s.data.id})]:p(Eh({invoiceId:e,status:s.status})))),v((s=>p(Eh({invoiceId:e,status:f("Unexpected Error","Fetch invoice detail REST API call errored out "+JSON.stringify(s))})))))}))),(n,i)=>n.pipe(S(KB.match),Fe(i),y((([r,t])=>{const{cacheOverride:e=!1,invoiceId:a}=r.payload,s=[],o=t.invoicingInvoiceDetailState.detailById[a];_0({error:o?.error,fetchState:o?.fetchState??"Not-Started"},e)&&s.push($r({invoiceId:a}));const c=t.invoicingConfigViewState;return _0({error:c.error,fetchState:c.fetchState},e)&&s.push(Jr()),s.length>0?_(s):F}))),(n,i,r)=>n.pipe(S(Nh.match),A((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices/kpis`;return r.getJSON(t).pipe(A((e=>P(e)&&e.data!=null?p(WB(ZB(e.data))):p(Oh(e.status)))),v((e=>p(Oh(f("Unexpected Error","Fetch invoice KPIs REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(Ji.match),A((t=>{const{filters:e,cursor:a,keepExistingListItems:s,sort:o}=t.payload,{activeTab:c}=i.value.invoicingInvoiceListState,d=c!=="all"?c:void 0,l=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices`,((u,m,h,g)=>{const I=new URLSearchParams;return m!=null&&m.length>0&&I.set("status",m),u.customerId!=null&&I.set("customer_id",u.customerId),u.subscriptionId!=null&&I.set("subscription_id",u.subscriptionId),u.search!=null&&u.search.length>0&&I.set("search",u.search),u.dateFrom!=null&&I.set("date_from",u.dateFrom),u.dateTo!=null&&I.set("date_to",u.dateTo),I.set("limit",String(st)),h!=null&&I.set("cursor",h),ot(I,g),I})(e,d,a,o));return r.getJSON(l).pipe(A((u=>{if(P(u)){const m=u.data?.items??[];return[Ua(m,"merge"),z(kr(m)),XB({invoices:m,nextCursor:u.data?.next_cursor??null,keepExistingListItems:s})]}return p(Ch(u.status))})),v((u=>p(Ch(f("Unexpected Error","Fetch invoice list REST API call errored out "+JSON.stringify(u)))))))}))),(n,i)=>n.pipe(S(eD.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingInvoiceListState,o=s.invoiceByTab[s.activeTab]??tD(),c=[];return Fl({fetchState:o.fetchState,error:o.error},t)&&c.push(Ji({filters:e,sort:a})),Fl(s.countsFetchState,t)&&c.push(Ph()),Fl(s.kpisFetchState,t)&&c.push(Nh()),j(_(c))}))),(n,i)=>n.pipe(S(xi.match),Fe(i),y((([,r])=>{const t=[],e=r.accountListState.byReportId[mS];(e.hasValidState()&&e.accountIds.length>0)===!1&&e.fetchState!=="In-Progress"&&t.push(Te(mS,!0));const a=r.classListState;return a.hasValidState()===!1&&a.fetchState!=="In-Progress"&&t.push(ne()),t.length>0?_(t):F}))),(n,i,r)=>n.pipe(S(fk.match),A((t=>{const{filters:e,cursor:a,keepExistingListItems:s,sort:o}=t.payload,c=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/audit-log`,((d,l,u)=>{const m=new URLSearchParams,h=(g=>{const I={};return g.search!=null&&g.search.length>0&&(I.search=g.search),g.action!=null&&g.action.length>0&&(I.action=g.action),g.dateFrom!=null&&g.dateFrom.length>0&&(I.date_from=g.dateFrom),g.dateTo!=null&&g.dateTo.length>0&&(I.date_to=g.dateTo),I})(d);return Object.keys(h).length>0&&m.set("filter",JSON.stringify(h)),m.set("limit",String(st)),l!=null&&m.set("cursor",l),u!=null&&yH.has(u.field)&&ot(m,u),m})(e,a,o));return r.getJSON(c).pipe(A((d=>{if(P(d)){const l=(d.data?.items??[]).map(vk);return p(Ik({items:l,nextCursor:d.data?.next_cursor??null,keepExistingListItems:s}))}return p($_(d.status))})),v((d=>p($_(f("Unexpected Error","Fetch audit log REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(xh.match),A((()=>{const{planFilters:t}=i.value.invoicingCatalogListViewState,e=new URLSearchParams;t.search!=null&&t.search.length>0&&e.set("search",t.search);const a=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/catalog/counts`,e);return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?p(aD(s.data)):p(Uh(s.status)))),v((s=>p(Uh(f("Unexpected Error","Fetch catalog counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(Z_.match),A((t=>{const{id:e,kind:a}=t.payload,s=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/catalog/plans/${encodeURIComponent(e)}`;return r.getJSON(s).pipe(A((o=>P(o)&&o.data!=null?[Dr([o.data],"merge"),X_({id:o.data.id,kind:a})]:p(eh({error:o.status,id:e})))),v((o=>p(eh({error:f("Unexpected Error","Fetch catalog item detail REST API call errored out "+JSON.stringify(o)),id:e})))))}))),(n,i)=>n.pipe(S(Zk.match),Fe(i),y((([r,t])=>{const{cacheOverride:e=!1,id:a,kind:s}=r.payload,o=[],c=a!=null?t.editInvoicingCatalogItemDetailViewState.recordStateById[a]:void 0;a!=null&&Vl({error:c?.error,fetchState:c?.fetchState??"Not-Started"},e)&&o.push(Z_({id:a,kind:s}));const d=t.invoicingConfigViewState;Vl({fetchState:d.fetchState,error:d.error},e)&&o.push(Jr());const l=t.invoicingQboViewState;return Vl(l.connectionFetchState,e)&&o.push(Ci()),o.push(xi()),o.length>0?_(o):F}))),(n,i)=>n.pipe(S(rD.match),y((r=>{const{cacheOverride:t,planFilters:e,productFilters:a,planSort:s,productSort:o}=r.payload,c=i.value.invoicingCatalogListViewState,d=[];return ql({fetchState:c.fetchState,error:c.error},t)&&d.push(Br({filters:e,sort:s})),ql(c.productFetchState,t)&&d.push(Oi({filters:a,sort:o})),ql(c.countsFetchState,t)&&d.push(xh()),j(_(d))}))),(n,i,r)=>n.pipe(S(Br.match),A((t=>{const{filters:e,cursor:a,keepExistingListItems:s,sort:o}=t.payload,c=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/catalog/plans`,((d,l,u)=>{const m=new URLSearchParams;return d.status!=null&&d.status.length>0&&m.set("status",d.status),d.type!=null&&d.type.length>0&&m.set("type",d.type),d.search!=null&&d.search.length>0&&m.set("search",d.search),m.set("limit",String(st)),l!=null&&m.set("cursor",l),ot(m,u),m})(e,a,o));return r.getJSON(c).pipe(A((d=>{if(P(d)){const l=d.data?.items??[];return[Dr(l,"merge"),nD({ids:l.map((u=>u.id)),nextCursor:d.data?.next_cursor??null,keepExistingListItems:s})]}return p(kh(d.status))})),v((d=>p(kh(f("Unexpected Error","Fetch catalog plan list REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(Oi.match),A((t=>{const{filters:e,cursor:a,keepExistingListItems:s,sort:o}=t.payload,c=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/catalog/plans`,((d,l,u)=>{const m=new URLSearchParams;return d.type!=null&&d.type.length>0&&m.set("type",d.type),d.status!=null&&d.status.length>0&&m.set("status",d.status),d.search!=null&&d.search.length>0&&m.set("search",d.search),m.set("limit",String(st)),l!=null&&m.set("cursor",l),ot(m,u),m})(e,a,o));return r.getJSON(c).pipe(A((d=>{if(P(d)){const l=d.data?.items??[];return[Dr(l,"merge"),sD({ids:l.map((u=>u.id)),nextCursor:d.data?.next_cursor??null,keepExistingListItems:s})]}return p(Bh(d.status))})),v((d=>p(Bh(f("Unexpected Error","Fetch catalog product list REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(Jr.match),A((t=>{const{isInvoicingTosAccepted:e}=i.value.invoicingConfigViewState;if(!t.payload.cacheOverride&&e!=null)return F;const a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/config`;return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?p(Mi(s.data)):p(wh(s.status)))),v((s=>p(wh(f("Unexpected Error","Fetch invoicing config REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(R_.match),A((()=>{const{filters:t}=i.value.invoicingCouponViewState,e=new URLSearchParams;t.search!=null&&t.search.length>0&&e.set("search",t.search);const a=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/discounts/counts`,e);return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?p(bk(s.data)):p(M_(s.status)))),v((s=>p(M_(f("Unexpected Error","Fetch discount counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(sh.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/discounts/${e}`;return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?[Wn([s.data],"merge"),oh({id:s.data.id})]:p(ih({id:e,status:s.status})))),v((s=>p(ih({id:e,status:f("Unexpected Error","Fetch discount detail REST API call errored out "+JSON.stringify(s))})))))}))),(n,i)=>n.pipe(S(pB.match),Fe(i),y((([r,t])=>{const{cacheOverride:e=!1,id:a}=r.payload,s=[],o=a!=null?t.editInvoicingCouponDetailViewState.recordStateById[a]:void 0;a!=null&&js({error:o?.error,fetchState:o?.fetchState??"Not-Started"},e)&&s.push(sh({id:a}));const c=t.invoicingConfigViewState;js({error:c.error,fetchState:c.fetchState},e)&&s.push(Jr());const d=t.invoicingQboViewState;js(d.connectionFetchState,e)&&s.push(Ci()),s.push(xi());const l=t.invoicingSettingsViewState;return js({error:l.error,fetchState:l.fetchState},e)&&s.push(Tt()),s.length>0?_(s):F}))),(n,i,r)=>n.pipe(S(Qn.match),A((t=>{const{filters:e,cursor:a,keepExistingListItems:s,sort:o}=t.payload,c=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/discounts`,((d,l,u)=>{const m=new URLSearchParams;return d.search!=null&&d.search.length>0&&m.set("search",d.search),m.set("limit",String(st)),l!=null&&m.set("cursor",l),ot(m,u),m})(e,a,o));return r.getJSON(c).pipe(A((d=>{if(P(d)){const l=d.data?.items??[];return[Wn(l,"merge"),Ek({ids:l.map((u=>u.id)),nextCursor:d.data?.next_cursor??null,keepExistingListItems:s})]}return p(V_(d.status))})),v((d=>p(V_(f("Unexpected Error","Fetch discount list REST API call errored out "+JSON.stringify(d)))))))}))),(n,i)=>n.pipe(S(Tk.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingCouponViewState,o=[];return d0({fetchState:s.fetchState,error:s.error},t)&&o.push(Qn({filters:e,sort:a})),d0(s.countsFetchState,t)&&o.push(R_()),j(_(o))}))),(n,i,r)=>n.pipe(S(Rh.match),A((()=>{const{filters:t}=i.value.invoicingCreditNoteListViewState,e=new URLSearchParams;t.search!=null&&t.search.length>0&&e.set("search",t.search),t.customerId!=null&&e.set("customer_id",t.customerId);const a=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/credits/counts`,e);return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?p(pD(s.data)):p(Mh(s.status)))),v((s=>p(Mh(f("Unexpected Error","Fetch credit note counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(lD.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/credits/${e}`;return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?[Zn([s.data],"merge"),uD({id:s.data.id})]:p($h(s.status)))),v((s=>p($h(f("Unexpected Error","Fetch credit note detail REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(Vh.match),A((t=>{const{filters:e,cursor:a,keepExistingListItems:s,sort:o}=t.payload,c=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/credits`,((d,l,u)=>{const m=new URLSearchParams;return d.customerId!=null&&m.set("customer_id",d.customerId),d.search!=null&&d.search.length>0&&m.set("search",d.search),m.set("limit",String(st)),l!=null&&m.set("cursor",l),ot(m,u),m})(e,a,o));return r.getJSON(c).pipe(A((d=>{if(P(d)){const l=d.data?.items??[];return[Zn(l,"merge"),mD({ids:l.map((u=>u.id)),nextCursor:d.data?.next_cursor??null,keepExistingListItems:s})]}return p(Lh(d.status))})),v((d=>p(Lh(f("Unexpected Error","Fetch credit note list REST API call errored out "+JSON.stringify(d)))))))}))),(n,i)=>n.pipe(S(yD.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingCreditNoteListViewState,o=[];return h0({fetchState:s.fetchState,error:s.error},t)&&o.push(Vh({filters:e,sort:a})),h0(s.countsFetchState,t)&&o.push(Rh()),j(_(o))}))),(n,i,r)=>n.pipe(S(Fh.match),A((()=>{const{filters:t}=i.value.invoicingCustomerListViewState,e=new URLSearchParams;t.search!=null&&t.search.length>0&&e.set("search",t.search);const a=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/customers/counts`,e);return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?p(_D(s.data)):p(qh(s.status)))),v((s=>p(qh(f("Unexpected Error","Fetch customer counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(es.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/customers/${e}`;return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?[z(ki([s.data])),Bi([s.data],"merge"),Di({id:s.data.id})]:p(mh({id:e,status:s.status})))),v((s=>p(mh({id:e,status:f("Unexpected Error","Fetch customer detail REST API call errored out "+JSON.stringify(s))})))))}))),(n,i)=>n.pipe(S(PB.match),y((r=>{const{cacheOverride:t,id:e}=r.payload,a=i.value.editInvoicingCustomerDetailViewState.recordStateById[e],s=i.value.invoicingInvoiceListState,o=s.invoiceByTab[s.activeTab],c=i.value.invoicingSettingsViewState,d=[];return Ll({fetchState:a?.fetchState??"Not-Started",error:a?.error},t)&&d.push(es({id:e})),s.filters.customerId===e&&!Ll({fetchState:o?.fetchState??"Not-Started",error:o?.error},t)||d.push(Ji({filters:{customerId:e}})),Ll({fetchState:c.fetchState,error:c.error},t)&&d.push(Tt()),d.push(yh({cacheOverride:t,customerId:e})),j(_(d))}))),(n,i,r)=>n.pipe(S(Xn.match),A((t=>{const{filters:e,cursor:a,keepExistingListItems:s,sort:o}=t.payload,c=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/customers`,((d,l,u)=>{const m=new URLSearchParams;return d.search!=null&&d.search.length>0&&m.set("search",d.search),m.set("limit",String(st)),l!=null&&m.set("cursor",l),ot(m,u),m})(e,a,o));return r.getJSON(c).pipe(A((d=>{if(P(d)){const l=d.data?.items??[];return[Bi(l,"merge"),z(ki(l)),hD({ids:l.map((u=>u.id)),nextCursor:d.data?.next_cursor??null,keepExistingListItems:s})]}return p(jh(d.status))})),v((d=>p(jh(f("Unexpected Error","Fetch customer list REST API call errored out "+JSON.stringify(d)))))))}))),(n,i)=>n.pipe(S(SD.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingCustomerListViewState,o=[];return S0({fetchState:s.fetchState,error:s.error},t)&&o.push(Xn({filters:e,sort:a})),S0(s.countsFetchState,t)&&o.push(Fh()),j(_(o))}))),(n,i,r)=>n.pipe(S(oT.match),A((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/data-import/status`;return r.getJSON(t).pipe(A((e=>P(e)?p(Vk(e.data??[])):p(K_(e.status)))),v((e=>p(K_(f("Unexpected Error","Fetch data import status REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(Wh.match),A((()=>{const{filters:t}=i.value.invoicingDunningCaseListViewState,e=new URLSearchParams;t.search!=null&&t.search.length>0&&e.set("search",t.search);const a=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/dunning/counts`,e);return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?p(ED(s.data)):p(Zh(s.status)))),v((s=>p(Zh(f("Unexpected Error","Fetch dunning case counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(Gh.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/dunning/${e}`;return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?[Vi([s.data],"merge"),gD({id:s.data.id})]:p(zh(s.status)))),v((s=>p(zh(f("Unexpected Error","Fetch dunning case detail REST API call errored out "+JSON.stringify(s)))))))}))),(n,i)=>n.pipe(S(fD.match),Fe(i),y((([r,t])=>{const{cacheOverride:e,id:a}=r.payload,s=t.invoicingDunningCaseDetailViewState,o=[];return s.id===a&&!((c,d)=>d||c.fetchState!=="Completed"&&c.fetchState!=="In-Progress")({error:s.error,fetchState:s.fetchState},e)||o.push(Gh({id:a})),o.push(Kh({id:a,cacheOverride:e})),o.length>0?_(o):F}))),(n,i,r)=>n.pipe(S(Xh.match),A((t=>{const{filters:e,cursor:a,keepExistingListItems:s,sort:o}=t.payload,c=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/dunning`,((d,l,u)=>{const m=new URLSearchParams;return d.search!=null&&d.search.length>0&&m.set("search",d.search),m.set("limit",String(st)),l!=null&&m.set("cursor",l),ot(m,u),m})(e,a,o));return r.getJSON(c).pipe(A((d=>{if(P(d)){const l=d.data?.items??[];return[Vi(l,"merge"),TD({ids:l.map((u=>u.id)),nextCursor:d.data?.next_cursor??null,keepExistingListItems:s})]}return p(eS(d.status))})),v((d=>p(eS(f("Unexpected Error","Fetch dunning case list REST API call errored out "+JSON.stringify(d)))))))}))),(n,i)=>n.pipe(S(PD.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingDunningCaseListViewState,o=[];return g0({fetchState:s.fetchState,error:s.error},t)&&o.push(Xh({filters:e,sort:a})),g0(s.countsFetchState,t)&&o.push(Wh()),j(_(o))}))),(n,i,r)=>n.pipe(S(Hh.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/dunning/${encodeURIComponent(e)}/email-preview`;return r.postAndGetJSON(a,{}).pipe(et((s=>{return P(s)&&s.data!=null?vD({id:e,preview:(o=s.data,{body:o.body,bodyToken:o.body_token,cc:o.cc,renderedHtmlTemplate:o.rendered_html_template,subject:o.subject,subjectToken:o.subject_token,to:o.to})}):Yh({id:e,status:s.status});var o})),v((s=>p(Yh({id:e,status:f("Unexpected Error",`Dunning email preview REST API call errored out: ${s instanceof Error?s.message:String(s)}`)})))))}))),(n,i)=>n.pipe(S(Kh.match),y((r=>{const{cacheOverride:t,id:e}=r.payload,a=i.value.invoicingDunningCaseDetailViewState;return a.id!==e?F:((s,o)=>o||s.fetchState!=="Completed"&&s.fetchState!=="In-Progress")(a.emailPreview,t)?p(Hh({id:e})):F}))),(n,i,r)=>n.pipe(S(Lk.match),A((t=>{const{cursor:e,level:a,moduleId:s,outcome:o,search:c,sessionId:d}=t.payload,l=new URLSearchParams;e!=null&&l.set("cursor",e),s!=null&&l.set("module_id",s),a!=null&&l.set("level",a),o!=null&&l.set("outcome",o),c!=null&&c.trim()!==""&&l.set("search",c.trim());const u=l.toString(),m=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/data-import/${encodeURIComponent(d)}/issues${u===""?"":`?${u}`}`;return r.getJSON(m).pipe(A((h=>P(h)&&h.data!=null?p(Fk({append:e!=null,page:h.data,sessionId:d})):p(H_({error:h.status,sessionId:d})))),v((h=>p(H_({error:f("Unexpected Error","Fetch migration diagnostics REST API call errored out "+JSON.stringify(h)),sessionId:d})))))}))),(n,i,r)=>n.pipe(S(qk.match),A((t=>{const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/data-import/${encodeURIComponent(t.payload)}`;return r.getJSON(e).pipe(A((a=>P(a)&&a.data!=null?p(iT(a.data)):p(Y_(a.status)))),v((a=>p(Y_(f("Unexpected Error","Fetch migration session REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(cT.match),A((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/data-import/sessions`;return r.getJSON(t).pipe(A((e=>P(e)?p(jk(e.data??[])):p(Q_(e.status)))),v((e=>p(Q_(f("Unexpected Error","Fetch migration sessions REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(tS.match),A((()=>{const{period:t}=i.value.invoicingOverviewState;if(t==null)return F;const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return r.getJSON(`${e}/analytics/churn?months=6&year=${t.year}&month=${t.month}`).pipe(A((a=>P(a)&&a.data!=null?p(AD(a.data)):p(aS(a.status)))),v((a=>p(aS(f("Unexpected Error","Fetch overview churn REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(rS.match),A((()=>{const{period:t}=i.value.invoicingOverviewState;if(t==null)return F;const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return r.getJSON(`${e}/analytics/dashboard-summary?year=${t.year}&month=${t.month}`).pipe(A((a=>P(a)&&a.data!=null?p(ND(a.data)):p(nS(a.status)))),v((a=>p(nS(f("Unexpected Error","Fetch overview dashboard summary REST API call errored out "+JSON.stringify(a)))))))}))),(n,i)=>n.pipe(S(OD.match),y((r=>{const{cacheOverride:t}=r.payload,e=i.value,a=e.invoicingOverviewState,s=[];Nt(a.kpisFetchState,t)&&s.push(sS()),Nt(a.revenueFetchState,t)&&s.push(oS()),Nt(a.mrrFetchState,t)&&s.push(iS()),Nt(a.churnFetchState,t)&&s.push(tS()),Nt(a.planRevenueFetchState,t)&&s.push(cS()),Nt(a.summaryFetchState,t)&&s.push(rS()),Nt(CD(e),t)&&s.push(Tt());const o=xD(e);return Nt({fetchState:o.fetchState,error:o.error},t)&&s.push(Li({})),j(_(s))}))),(n,i,r)=>n.pipe(S(sS.match),A((()=>{const{period:t}=i.value.invoicingOverviewState;if(t==null)return F;const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return r.getJSON(`${e}/analytics/kpis?year=${t.year}&month=${t.month}`).pipe(A((a=>P(a)&&a.data!=null?p(UD(a.data)):p(dS(a.status)))),v((a=>p(dS(f("Unexpected Error","Fetch overview KPIs REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(iS.match),A((()=>{const{period:t}=i.value.invoicingOverviewState;if(t==null)return F;const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return r.getJSON(`${e}/analytics/mrr?months=6&year=${t.year}&month=${t.month}`).pipe(A((a=>P(a)&&a.data!=null?p(kD(a.data)):p(lS(a.status)))),v((a=>p(lS(f("Unexpected Error","Fetch overview MRR REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(cS.match),A((()=>{const{period:t}=i.value.invoicingOverviewState;if(t==null)return F;const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return r.getJSON(`${e}/analytics/plan-revenue?year=${t.year}&month=${t.month}`).pipe(A((a=>P(a)&&a.data!=null?p(BD(a.data)):p(uS(a.status)))),v((a=>p(uS(f("Unexpected Error","Fetch overview plan revenue REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(oS.match),A((()=>{const{period:t}=i.value.invoicingOverviewState;if(t==null)return F;const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return r.getJSON(`${e}/analytics/revenue?months=12&year=${t.year}&month=${t.month}`).pipe(A((a=>P(a)&&a.data!=null?p(DD(a.data)):p(pS(a.status)))),v((a=>p(pS(f("Unexpected Error","Fetch overview revenue REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(_h.match),A((t=>{const{customerId:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/customers/${encodeURIComponent(e)}/payment-link/email-preview`;return r.postAndGetJSON(a,{}).pipe(et((s=>{return P(s)&&s.data!=null?AB({customerId:e,preview:(o=s.data,{body:o.body,bodyToken:o.body_token,renderedHtmlTemplate:o.rendered_html_template,subject:o.subject,subjectToken:o.subject_token,to:o.to})}):hh({customerId:e,status:s.status});var o})),v((s=>p(hh({customerId:e,status:f("Unexpected Error",`Payment link email preview REST API call errored out: ${s instanceof Error?s.message:String(s)}`)})))))}))),(n,i)=>n.pipe(S(yh.match),y((r=>{const{cacheOverride:t,customerId:e}=r.payload,{emailPreviewCustomerId:a,emailPreviewFetchState:s}=i.value.editInvoicingCustomerDetailViewState;return a!==e||((o,c)=>c||o.fetchState!=="Completed"&&o.fetchState!=="In-Progress")(s,t)?p(_h({customerId:e})):F}))),(n,i,r)=>n.pipe(S(Dk.match),A((t=>{const{customerId:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/plaid/link-token?customer_id=${encodeURIComponent(e)}`;return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?p(Jk(s.data.link_token)):p(j_(s.status)))),v((s=>p(j_(f("Unexpected Error","Plaid link token REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(Ci.match),A((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/qbo/connection`;return r.getJSON(t).pipe(et((e=>P(e)?JD(f0(e.data??{connected:!1})):yS(e.status))),v((e=>p(yS(f("Unexpected Error","Fetch QBO connection REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(Fi.match),A((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/qbo/sync-health`;return r.getJSON(t).pipe(et((e=>{return P(e)?wD({connection:(a=e.data??{}).connection!=null?f0(a.connection):void 0,countsByStatus:a.counts_by_status??{},failedTasks:(a.failed_tasks??[]).map((s=>({attempts:s.attempts,entityId:s.entity_id,entityType:s.entity_type,taskId:s.task_id,lastError:s.last_error??void 0,updatedAt:s.updated_at??void 0})))}):_S(e.status);var a})),v((e=>p(_S(f("Unexpected Error","Fetch QBO sync health REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(Tt.match),A((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/settings`;return r.getJSON(t).pipe(A((e=>{if(P(e)&&e.data!=null){const a=e.data.address,s=e.data.logo_file;return[...a!=null?[z([a])]:[],...s!=null?[he({files:[s]})]:[],OS(e.data)]}return p(CS(e.status))})),v((e=>p(CS(f("Unexpected Error","Fetch settings REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(gS.match),A((()=>{const{filters:t}=i.value.invoicingSubscriptionListViewState,e=new URLSearchParams;t.search!=null&&t.search.length>0&&e.set("search",t.search),t.customerId!=null&&e.set("customer_id",t.customerId);const a=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/subscriptions/counts`,e);return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?p(LD(s.data)):p(fS(s.status)))),v((s=>p(fS(f("Unexpected Error","Fetch subscription counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(wi.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/subscriptions/${e}`;return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?[z(ka([s.data])),Ba([s.data],"merge"),$i({id:s.data.id})]:p(fh({error:s.status,id:e})))),v((s=>p(fh({error:f("Unexpected Error","Fetch subscription detail REST API call errored out "+JSON.stringify(s)),id:e})))))}))),(n,i)=>n.pipe(S(BB.match),Fe(i),y((([r,t])=>{const{cacheOverride:e=!1,id:a}=r.payload,s=[],o=a!=null?t.editInvoicingSubscriptionDetailViewState.recordStateById[a]:void 0;a!=null&&Gs({error:o?.error,fetchState:o?.fetchState??"Not-Started"},e)&&s.push(wi({id:a}));const c=t.invoicingConfigViewState;Gs({error:c.error,fetchState:c.fetchState},e)&&s.push(Jr());const d=t.invoicingCatalogListViewState;Gs({error:d.error,fetchState:d.fetchState},e)&&s.push(Br({filters:{type:"plan"},keepExistingListItems:!1}));const l=t.invoicingCouponViewState;return Gs({error:l.error,fetchState:l.fetchState},e)&&s.push(Qn({filters:{},keepExistingListItems:!1})),s.length>0?_(s):F}))),n=>n.pipe(S(DB.match),y((i=>{const{subscriptionId:r}=i.payload,t=[Xn({filters:{},keepExistingListItems:!1}),Br({filters:{},keepExistingListItems:!1}),Qn({filters:{},keepExistingListItems:!1})];return r!=null&&t.push(wi({id:r})),j(_(t))}))),(n,i,r)=>n.pipe(S(Li.match),A((t=>{const{filters:e,cursor:a,keepExistingListItems:s,sort:o}=t.payload,c=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/subscriptions`,((d,l,u)=>{const m=new URLSearchParams;return d.customerId!=null&&m.set("customer_id",d.customerId),d.search!=null&&d.search.length>0&&m.set("search",d.search),d.startedFrom!=null&&m.set("started_from",d.startedFrom),d.startedTo!=null&&m.set("started_to",d.startedTo),m.set("limit",String(st)),l!=null&&m.set("cursor",l),ot(m,u),m})(e,a,o));return r.getJSON(c).pipe(A((d=>{if(P(d)){const l=d.data?.items??[];return[Ba(l,"merge"),z(ka(l)),FD({ids:l.map((u=>u.id)),nextCursor:d.data?.next_cursor??null,keepExistingListItems:s})]}return p(vS(d.status))})),v((d=>p(vS(f("Unexpected Error","Fetch subscription list REST API call errored out "+JSON.stringify(d)))))))}))),(n,i)=>n.pipe(S(qD.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingSubscriptionListViewState,o=[];return v0({fetchState:s.fetchState,error:s.error},t)&&o.push(Li({filters:e,sort:a})),v0(s.countsFetchState,t)&&o.push(gS()),j(_(o))}))),(n,i,r)=>n.pipe(S(jD.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/payments/${e}`;return r.getJSON(a).pipe(A((s=>P(s)&&s.data!=null?[ns([s.data],"merge"),GD({id:s.data.id})]:p(IS(s.status)))),v((s=>p(IS(f("Unexpected Error","Fetch payment detail REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(ES.match),A((t=>{const{filters:e,cursor:a,keepExistingListItems:s,sort:o}=t.payload,{activeTab:c}=i.value.invoicingTransactionListViewState,d=c!=="all"?c:void 0,l=Pe(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/payments`,((u,m,h,g)=>{const I=new URLSearchParams;return u.status!=null&&u.status.length>0&&I.set("status",u.status),m!=null&&m.length>0&&I.set("type",m),u.customerId!=null&&I.set("customer_id",u.customerId),u.search!=null&&u.search.length>0&&I.set("search",u.search),I.set("limit",String(st)),h!=null&&I.set("cursor",h),ot(I,g),I})(e,d,a,o));return r.getJSON(l).pipe(A((u=>{if(P(u)){const m=u.data?.items??[];return[ns(m,"merge"),HD({ids:m.map((h=>h.id)),nextCursor:u.data?.next_cursor??null,keepExistingListItems:s})]}return p(TS(u.status))})),v((u=>p(TS(f("Unexpected Error","Fetch payment list REST API call errored out "+JSON.stringify(u)))))))}))),(n,i)=>n.pipe(S(YD.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingTransactionListViewState,o=s.byTab[s.activeTab]??QD(),c=[];return((d,l)=>l||d.fetchState!=="Completed"&&d.fetchState!=="In-Progress")({fetchState:o.fetchState,error:o.error},t)&&c.push(ES({filters:e,sort:a})),j(_(c))}))),(n,i)=>n.pipe(S(wL.match),y((r=>{const{cacheOverride:t,isDebitCardFlagEnabled:e,isCreditCardFlagEnabled:a}=r.payload,s=[],o=i.value;if(t===!0)s.push(Xt()),a&&s.push(ea()),s.push(Me("cardHolderCandidate",!0)),s.push(ne()),s.push(Hr()),e&&s.push(Ns());else{const c=o.chargeCardConfigState;c.fetchState!=="In-Progress"&&c.hasValidState()===!1&&s.push(Xt());const d=o.chargeCardListState;d.creditAccount.fetchState!=="Completed"&&d.creditAccount.fetchState!=="In-Progress"&&a&&s.push(ea());const l=o.userListViewState.userListByType.cardHolderCandidate;l.fetchState!=="In-Progress"&&l.hasValidState()===!1&&s.push(Me("cardHolderCandidate",!1)),o.classListState.hasValidState()===!1&&o.classListState.fetchState!=="In-Progress"&&s.push(ne()),d.fetchState!=="Completed"&&d.fetchState!=="In-Progress"&&s.push(Hr());const u=o.issueChargeCardState.depositAccountsFetchState;e&&u.fetchState!=="Completed"&&u.fetchState!=="In-Progress"&&s.push(Ns())}return j(_(s))}))),(n,i,r)=>n.pipe(S(q1.match),A((t=>{const{routingNumber:e,cacheOverride:a}=t.payload,{bankAccount:s}=i.value.magicLinkViewState,o=s.bankNameByRouting[e]?.bankName;if(a===!1&&o)return p(j1(e));{const c={routing_numbers:[e]},d=`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/institutions?query=${JSON.stringify(c)}`;return r.getJSON(d).pipe(y((l=>P(l)?p(G1({routingNumber:e,institutions:l.data?.institutions??[]})):p(zv({routingNumber:e,status:l.status})))),v((l=>p(zv({routingNumber:e,status:f("Unexpected Error","Get Bank Name By Routing REST API call errored out"+JSON.stringify(l))})))))}}))),(n,i,r)=>n.pipe(S(z1.match),A((t=>{const{swiftCode:e,cacheOverride:a}=t.payload,{bankAccount:s}=i.value.magicLinkViewState,o=s.bankNameBySwift[e]?.bankName;if(a===!1&&o)return p(K1(e));{const c={swift_code:e},d=`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/institutions?query=${JSON.stringify(c)}`;return r.getJSON(d).pipe(y((l=>P(l)?p(H1({swiftCode:t.payload.swiftCode,institutions:l.data?.institutions??[]})):p(Kv({swiftCode:e,status:l.status})))),v((l=>p(Kv({swiftCode:e,status:f("Unexpected Error","Get Bank Name By Swift REST API call errored out"+JSON.stringify(l))})))))}}))),(n,i,r)=>n.pipe(S(Y1.match),y((t=>{const{billId:e}=t.payload;let a=`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions/${e}`;return a+=`?query=${encodeURIComponent(JSON.stringify({transaction_type:"bill",bill_pay_provider:"zeni",view:"vendor"}))}`,r.getJSON(a).pipe(y((s=>{if(P(s)){const o=s.data?.transaction?.attachments?.[0],c=o!=null?Q1(o):void 0;return p(W1({currencySymbol:s.data?.transaction?.currency_symbol??"",amount:s.data?.transaction?.total_amount??0,billAttachment:c}))}return p(Hv({status:s.status}))})),v((s=>p(Hv({status:f("Unexpected Error","Fetch MagicLink Bill REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(Z1.match),A((t=>{const{vendorId:e,tenantEmailDomain:a,token:s}=t.payload,o=`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/namespaces/${a}/vendors/${e}/session`;return r.getJSON(o,{"auth-token":s}).pipe(A((c=>P(c)?p(X1({tenantId:c.data?.tenants[0].tenant_id??"",companyName:c.data?.companies[0].name??"",userId:c.data?.session_info.user_id??"",sessionId:c.data?.session_info.session_id??""})):p(Yv({status:c.status})))),v((c=>p(Yv({status:f("Unexpected Error","Fetch MagicLink Tenant REST API call errored out"+JSON.stringify(c))})))))}))),(n,i)=>n.pipe(S(RO.match),A((r=>{const{cacheOverride:t,fetchFullResponse:e,companyId:a}=r.payload;if(t===!0)return _([Ea(e,a),Ge()]);const s=i.value,o=[];return s.companyViewState.zeniUsers.fetchState==="In-Progress"||s.companyViewState.zeniUsers.hasValidState()||o.push(Ge()),s.companyViewState.managementView.fetchState==="In-Progress"||s.companyViewState.managementView.hasValidState()||o.push(Ea(e,a)),_(o)}))),(n,i,r)=>n.pipe(S(bd.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/merchants?query=${encodeURIComponent(JSON.stringify({is_include_accounting_classes_info:!0,is_include_accounts_info:!0}))}`).pipe(y((t=>P(t)?p(Ed(t.data?.merchants??[]),aF(t),He("class_list",t.data?.accounting_classes??[]),W(t.data?.accounts??[],"account_list")):p(OI(t.status)))),v((t=>p(OI(f("Unexpected Error","Fetch Merchants REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(uJ.match),A((t=>{const{period:e}=t.payload,a={month_and_year:`${String(e.month).padStart(2,"0")}-${e.year}`};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/month-close/performance-trend?query=${encodeURIComponent(JSON.stringify(a))}`).pipe(y((s=>{if(s.data!=null){const o=[pJ({performanceTrend:s.data.performance_trend,period:e})];return _(o)}{const o=[kS({period:e,fetchState:"Error",error:s.status})];return _(o)}})),v((s=>{const o=[kS({period:e,fetchState:"Error",error:f("Unexpected error",`Fetch Month close performance trend REST API call errored out: ${JSON.stringify(s)}`)})];return _(o)})))}))),(n,i,r)=>n.pipe(S(nt.match),A((t=>{const{period:e,tenantId:a,refreshViewInBackground:s}=t.payload,o={month_and_year:`${String(e.month).padStart(2,"0")}-${e.year}`,history_month_and_year_flag:!0};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/month-close/checks?query=${encodeURIComponent(JSON.stringify(o))}`).pipe(y((c=>{if(c.data!=null){const d=[mJ({monthEndCloseChecksPayload:c.data,tenantId:a,period:e}),qi({tenantId:a,period:e,fetchState:"Completed",refreshViewInBackground:s})];return _(d)}{const d=[qi({tenantId:a,period:e,fetchState:"Error",error:c.status,refreshViewInBackground:s})];return _(d)}})),v((c=>{const d=[qi({tenantId:a,period:e,fetchState:"Error",refreshViewInBackground:s,error:f("Unexpected error","Fetch Month end close checks REST API call errored out"+JSON.stringify(c))})];return _(d)})))}))),(n,i,r)=>n.pipe(S(bU.match),rt((()=>{const t=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:e},expenseAutomationMissingReceiptsViewState:{bulkUpload:a}}=t,s=e[Y(t).tenantId];if(s==null)return p(xr());const o=Ie(s),c=a.batchListByPeriod[o]??[],d=new Set(a.failedBatchDetailIds),l=l_(c).filter((m=>a.batchDetailsById[m.batchId]==null&&!d.has(m.batchId))).map((m=>m.batchId));if(l.length===0)return p(xr());const u=l.slice(0,5);return j(c0(u,r),p(xr())).pipe(v((m=>p(EU({error:f("Unexpected Error","Fetch more batch details errored out: "+JSON.stringify(m))})))))}))),(n,i,r)=>n.pipe(S(Ln.match),y((t=>{const e=t.payload.batchList,a=i.value.expenseAutomationMissingReceiptsViewState.bulkUpload,{batchDetailsById:s,batchDetailsRevalidating:o}=a,c=l_(e),d=(o===!0?c:c.filter((l=>s[l.batchId]==null))).map((l=>l.batchId)).slice(0,5);if(d.length===0){const l=a.currentBatchId;return l!=null&&a.phase==="matching"&&a.batchDetailsById[l]==null&&n_(a.batchStatusById,a.batchListByPeriod,l)?p(gi()):p(xr())}return j(p(IU()),c0(d,r),p(xr()))}))),Vz,Lz,(n,i)=>n.pipe(S(JS.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([qt("month"),qt("quarter"),qt("year")]);{const e=[],a=i.value.netBurnOrIncomeClassesViewState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(qt("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(qt("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push(qt("year")),_(e)}}))),(n,i)=>n.pipe(S(xn.match),y((r=>{const{cacheOverride:t,forecastId:e}=r.payload;if(t===!0)return _([Ja("month",e),Ja("quarter",e),Ja("year",e)]);{const a=[],s=_J(i.value.netBurnOrIncomeState,i.value.netBurnOrIncomeState.uiState.isForecastModeOn,e).fetchState;return s.month.fetchState!=="In-Progress"&&s.month.fetchState!=="Completed"&&a.push(Ja("month",e)),s.quarter.fetchState!=="In-Progress"&&s.quarter.fetchState!=="Completed"&&a.push(Ja("quarter",e)),s.year.fetchState!=="In-Progress"&&s.year.fetchState!=="Completed"&&a.push(Ja("year",e)),_(a)}}))),(n,i,r)=>n.pipe(S(qt.match),y((t=>{const e={is_full_response:t.payload.fetchFullReport,time_series_groups:[(a=>{switch(a){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}})(t.payload.timeframe)],is_group_by_class:!0};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/net_burn_or_income?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&P(a)){const s=[];return s.push(oe(t.payload.timeframe,"cogs","net_burn_or_income_by_classes",a.data.report.cogs,a.data.report.classes,a.data.report.accounts,a.data.report.currency)),s.push(oe(t.payload.timeframe,"expenses","net_burn_or_income_by_classes",a.data.report.expenses,a.data.report.classes,a.data.report.accounts,a.data.report.currency)),s.push(oe(t.payload.timeframe,"income","net_burn_or_income_by_classes",a.data.report.income,a.data.report.classes,a.data.report.accounts,a.data.report.currency)),s.push(hJ({timeframe:t.payload.timeframe,report:a.data})),_(s)}return p(wS(a.status,t.payload.timeframe))})),v((a=>p(wS(f("Unexpected Error","P&L REST API call errored out"+JSON.stringify(a)),t.payload.timeframe)))))}))),Fz,(n,i,r)=>n.pipe(S(jt.match),y((t=>{const e={is_full_response:t.payload.fetchFullReport,time_series_groups:[(a=>{switch(a){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}})(t.payload.timeframe)],is_group_by_project:!0};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/net_burn_or_income?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&P(a)){const s=[],o=a.data.report,c=o.currency;return s.push(Bt(o.projects)),s.push(ie(t.payload.timeframe,"cogs","net_burn_or_income_by_projects",o.cogs,o.accounts,c)),s.push(ie(t.payload.timeframe,"expenses","net_burn_or_income_by_projects",o.expenses,o.accounts,c)),s.push(ie(t.payload.timeframe,"income","net_burn_or_income_by_projects",o.income,o.accounts,c)),s.push(SJ({timeframe:t.payload.timeframe,report:a.data})),_(s)}return p($S(a.status,t.payload.timeframe))})),v((a=>p($S(f("Unexpected Error","Net Burn by Projects REST API call errored out"+(a instanceof Error?a.message:String(a))),t.payload.timeframe)))))}))),(n,i)=>n.pipe(S(RS.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([jt("month"),jt("quarter"),jt("year")]);{const e=[],a=i.value.netBurnOrIncomeProjectViewState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(jt("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(jt("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push(jt("year")),_(e)}}))),(n,i,r)=>n.pipe(S(Zo.match),y((t=>{const{fetchFullReport:e}=t.payload,a={is_full_response:e};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/net_burn_or_income_story_card?query=${encodeURIComponent(JSON.stringify(a))}`).pipe(y((s=>{if(P(s)&&s.data!=null){const o=[gJ(s.data)];return _(o)}return p(MS(s.status))})),v((s=>p(MS(f("Unexpected Error","NetBurnOrIncome Story Card REST API call errored out"+JSON.stringify(s)))))))}))),(n,i)=>n.pipe(S(BS.match),y((r=>{const{cacheOverride:t,forecastId:e}=r.payload,a=yJ(i.value),s=ji(i.value.forecastState,i.value.forecastListState,a.dataAvailable),o=Gi(i.value.forecastState,i.value.forecastListState),c=((d,l)=>d!=null&&((u,m)=>{let h=!1;for(let g=0;g<m.length;++g)if(m[g].id===u){h=!0;break}return h})(d,l)?d:l.length>0?l[0].id:void 0)(e,s.forecasts);if(c!=null){const d=[],l=o.forecasts.map((u=>u.id));return d.push(Rr(a.firstMonthOfFY,!0,void 0,{id:c,index:l.indexOf(c)})),t===!0||((u,m)=>{const h=ny(u,m);return h.fetchState!=="Completed"&&h.fetchState!=="In-Progress"})(c,i.value.netBurnOrIncomeState)?d.push(xn(!1,c)):console.log("Required data is already there!! No need to fire any fetch!"),_(d)}if(c==null&&o.fetchState==="Completed"&&o.forecasts.length===0)return _([]);if(c==null&&(o.fetchState==="Completed"||o.fetchState==="Error"||o.forecasts.length>0)){console.warn("Atleast one of the forecast in the list should be valid!");const d=[Da(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"month"),Da(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"year"),Da(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"quarter")];return _([d])}if(c==null&&o.forecasts.length===0)return _([Hn(),DS(t,e)]);{console.warn("Invlid state!!");const d=[Da(f("Unexpected error","Unexpected error"),r.payload.forecastId,"month"),Da(f("Unexpected error","Unexpected error"),r.payload.forecastId,"year"),Da(f("Unexpected error","Unexpected error"),r.payload.forecastId,"quarter")];return _([d])}}))),(n,i,r)=>n.pipe(S(aM.match),A((()=>{const t=i.value,e=t.tenantState.loggedInUser?.userEmail;if(e==null)return _([]);const a=t.notificationPreferencesViewState.saveEpoch,s=t.notificationRegistryState.registryEpoch;return r.getJSON(Lf(r)).pipe(y((o=>{if(P(o)&&o.data!=null){const c=[rM(o.data,e)];return c.push(nM({registry:o.data.task_checklist_registry??void 0,registryEpochAtDispatch:s})),o.data.task_checklist_preferences!=null&&c.push(sM({preferences:o.data.task_checklist_preferences,saveEpochAtDispatch:a})),p(...c)}return p(Ff(o.status))})),v((o=>p(Ff(f("Unexpected error","Fetch Notification Settings REST API call errored out"+JSON.stringify(o)))))))}))),n=>n.pipe(S(oM.match),A((i=>{const{hasMonthEndAccess:r,companyId:t}=i.payload;return _(r?[Me("manager",!0),ne()]:[pr(t)])}))),qz,(n,i,r)=>n.pipe(S(fJ.match),xa((t=>{const{notificationGroup:e,mode:a,status:s,isNewNotificationFetch:o}=t.payload,{stateByTab:c}=i.value.notificationViewState,d=c[LS(e)],l={status:s,notification_group:e,is_paginated:!0,limit:10,mode:a,page_token:o?null:d.uiState.pageToken};return r.getJSON(`${r.apiEndPoints.notificationMicroServiceBaseUrl}/1.0/user-notification?query=${encodeURIComponent(JSON.stringify(l))}`).pipe(y((u=>{if(P(u)&&u.data!=null){const{notifications:m,total_count:h,next_page_token:g}=u.data,I=[];m.forEach((b=>{I.push(...b.data.authors)}));const E=[...new Map(I.map((b=>[b.user_id,b]))).values()];return[V({users:E,updateType:"merge"}),vJ(m,"replace"),IJ(m,h,e,o?null:g)]}return p(VS({status:u.status,notificationGroup:e}))})),v((u=>p(VS({status:f("Unexpected Error","Fetch Notification View API call errored out"+JSON.stringify(u)),notificationGroup:e})))))}))),(n,i,r)=>n.pipe(S(fr.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/whitelist-companies?query=${encodeURIComponent(JSON.stringify({is_onboarding_completed:!0}))}`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=t.data.companies.map((s=>s.company_id)),a=[GS({payload:t.data.companies,schema:{}}),NJ(e)];return _(a)}return p(KS(t.status))})),v((t=>p(KS(f("Unexpected error","Onboarding Company view errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(Xi.match),A((t=>{const{companyId:e,cacheOverride:a,reCalculateCurrentStep:s}=t.payload,{onboardingCustomerViewState:o,companyState:c}=i.value,d=Ae(c,e)?.company;if(a===!0||d==null||o.hasValidState()===!1&&o.fetchState!=="In-Progress")return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}?query={"view":"onboarding_setup"}`).pipe(y((l=>{if(P(l)&&l.data!=null){const u=l.data.payment_accounts.map((g=>g.payment_account_id)),m=l.data.subscription_payment_accounts.map((g=>g.subscription_payment_account_id)),h=[V({users:l.data.users}),H(l.data.user_roles),Q({payload:l.data.companies,schema:{}}),z(l.data.addresses),he({files:l.data.files}),W(l.data.accounts,"onboarding"),ve(l.data.payment_accounts),Jp(l.data.subscription_payment_accounts),lg(u,m),ls({companyId:l.data.companies[0].company_id,reCalculateCurrentStep:s}),dg()];return _(h)}return p(N({messageSection:"onboarding_customer_view",messageText:"failed",type:"error"}),ug(l.status))})),v((l=>p(ug(f("Unexpected Error","Fetch Customer Onboarding view errored out"+JSON.stringify(l)))))));{const{subscriptionPaymentAccountIds:l,paymentAccountDetails:u}=o;return p(lg(u.paymentAccountIds,l),ls({companyId:e,reCalculateCurrentStep:s}),dg())}}))),(n,i)=>n.pipe(S(cw.match),A((r=>{const{companyId:t,cacheOverride:e,reCalculateCurrentStep:a}=r.payload;if(e===!0)return p(Xi(t,e,a),pg());{const s=i.value,o=[];return s.onboardingCustomerViewState.fetchState==="In-Progress"||s.onboardingCustomerViewState.hasValidState()||o.push(Xi(t,e,a)),s.companyConfigState.fetchState==="In-Progress"||s.companyConfigState.hasValidState()||o.push(pg()),_(o)}}))),(n,i)=>n.pipe(S(MO.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([Ge(),Sr(!0),gr(),fr()]);{const e=i.value,a=[];return e.companyViewState.zeniUsers.fetchState==="In-Progress"||e.companyViewState.zeniUsers.hasValidState()||a.push(Ge()),e.onboardingCockpitViewState.fetchState==="In-Progress"||e.onboardingCockpitViewState.hasValidState()||a.push(Sr(!0)),e.onboardingCockpitViewState.qboConnectionPool.fetchState==="In-Progress"||e.onboardingCockpitViewState.qboConnectionPool.hasValidState()||a.push(gr()),e.onboardingCockpitViewState.onboardingCompletedCompanies.fetchState==="In-Progress"||e.onboardingCockpitViewState.onboardingCompletedCompanies.hasValidState()||a.push(fr()),_(a)}}))),(n,i,r)=>n.pipe(S($x.match),y((t=>{const{accrualId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/${e}`).pipe(y((a=>P(a)&&a.data!=null?_([Lt([a.data.accrual]),Rx({accrualId:e})]):_([Ky({accrualId:e,status:a.status})]))),v((a=>_([Ky({accrualId:e,status:f("Unexpected Error",`Fetch one-time accrual REST API call errored out ${JSON.stringify(a)}`)})]))),ge(n.pipe(S($e.match))))}))),(n,i)=>n.pipe(S(Ag.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([Mr("month","",null),Mr("quarter","",null),ac(!0)]);{const e=[],a=i.value.opExByVendorState.reportFetchState,s=i.value.opExByVendorState.summaryFetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(Mr("month","",null)),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(Mr("quarter","",null)),s.fetchState!=="In-Progress"&&s.fetchState!=="Completed"&&e.push(ac()),_(e)}}))),(n,i,r)=>n.pipe(S(Mr.match),y((t=>{const e=i.value.opExByVendorState.uiState,a=e.sortOrder[e.timeframe]==="descending"?"desc":"asc",s=e.pageLimit,o=t.payload.fetchNextPage===!1?null:e.pageToken[t.payload.timeframe],c={sortKey:e.sortKey[e.timeframe],sortOrder:e.sortOrder[e.timeframe],searchString:e.searchString[e.timeframe],fetchNextPage:t.payload.fetchNextPage,pageLimit:s},d={time_series_groups:[(l=>{switch(l){case"month":return"months";case"quarter":return"quarters"}})(t.payload.timeframe)],sort_by:e.sortKey[e.timeframe],sort_order:a,search_text:e.searchString[e.timeframe],page_token:o};return s!=null&&(d.page_limit=s),t.payload.searchText&&(d.search_text=t.payload.searchText,c.searchString=t.payload.searchText),r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/operating_expenses_by_vendor?query=${encodeURIComponent(JSON.stringify(d))}`).pipe(y((l=>{if(l.data!=null&&P(l)){const u=[],m=l.data.report;if(m.status.is_report_generated==null||m.status.is_report_generated===!0){const h=l.data.report.vendors;h!=null&&u.push(le(h,"merge"));const g=m.accounts;g!=null&&u.push(W(g,"operating_expenses_by_vendor",void 0,"merge"));const I=m.accounting_class;I!=null&&u.push(He("operating_expenses_by_vendor",I,void 0,"merge"))}return u.push(Rw(t.payload.timeframe,m,c)),_(u)}return p(Ng(l.status,t.payload.timeframe))})),v((l=>p(Ng(f("Unexpected Error","Opex By Vendor Report for Timeframe REST API call errored out"+JSON.stringify(l)),t.payload.timeframe)))))}))),(n,i,r)=>n.pipe(S(ac.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/operating_expenses_by_vendor_summary?query=${encodeURIComponent(JSON.stringify({is_full_response:!0,accounting_method:"accrual"}))}`).pipe(y((t=>{if(P(t)){const e=[],a=t.data?.report;return a!=null&&(a?.status.is_report_generated!=null&&a?.status.is_report_generated===!1?Og(!1):(e.push(Og(!0)),a?.vendors!=null&&e.push(le(a.vendors,"merge"))),e.push(Mw(a))),_(e)}return p(Cg(t.status))})),v((t=>p(Cg(f("Unexpected error","Fetch OpEx by Vendor Summary REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(Ug.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([Gt("month"),Gt("quarter"),Gt("year")]);{const e=[],a=i.value.opExClassesViewState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(Gt("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(Gt("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push(Gt("year")),_(e)}}))),(n,i)=>n.pipe(S(On.match),A((r=>{const{cacheOverride:t,forecastId:e}=r.payload;if(t===!0)return _([Ra("month",e),Ra("quarter",e),Ra("year",e)]);{const a=[],s=$w(i.value.opExState,i.value.opExState.uiState.isForecastModeOn,e).fetchState;return s.month.fetchState!=="In-Progress"&&s.month.fetchState!=="Completed"&&a.push(Ra("month",e)),s.quarter.fetchState!=="In-Progress"&&s.quarter.fetchState!=="Completed"&&a.push(Ra("quarter",e)),s.year.fetchState!=="In-Progress"&&s.year.fetchState!=="Completed"&&a.push(Ra("year",e)),_(a)}}))),(n,i,r)=>n.pipe(S(Gt.match),y((t=>{const e={is_full_response:t.payload.fetchFullReport,time_series_groups:[(a=>{switch(a){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}})(t.payload.timeframe)],is_group_by_class:!0};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/operating_expenses?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&P(a)){const s=[];return s.push(oe(t.payload.timeframe,"expenses","operating_expenses_by_classes",a.data.report.expenses,a.data.report.classes,a.data.report.accounts,a.data.report.currency)),s.push(Fw({timeframe:t.payload.timeframe,report:a.data})),_(s)}return p(kg(a.status,t.payload.timeframe))})),v((a=>p(kg(f("Unexpected Error","OpEx REST API call errored out"+JSON.stringify(a)),t.payload.timeframe)))))}))),(n,i,r)=>n.pipe(S(zt.match),y((t=>{const e={is_full_response:t.payload.fetchFullReport,time_series_groups:[(a=>{switch(a){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}})(t.payload.timeframe)],is_group_by_project:!0};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/operating_expenses?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&P(a)){const s=[],o=a.data.report,c=o.currency;return s.push(Bt(o.projects)),s.push(ie(t.payload.timeframe,"expenses","operating_expenses_by_projects",o.expenses,o.accounts,c)),s.push(qw({timeframe:t.payload.timeframe,report:a.data})),_(s)}return p(Bg(a.status,t.payload.timeframe))})),v((a=>p(Bg(f("Unexpected Error","OpEx by Projects REST API call errored out"+(a instanceof Error?a.message:String(a))),t.payload.timeframe)))))}))),(n,i)=>n.pipe(S(Dg.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([zt("month"),zt("quarter"),zt("year")]);{const e=[],a=i.value.opExProjectViewState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(zt("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(zt("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push(zt("year")),_(e)}}))),jz,(n,i)=>n.pipe(S(Tg.match),y((r=>{const{cacheOverride:t,forecastId:e}=r.payload,a=ww(i.value),s=ji(i.value.forecastState,i.value.forecastListState,a.dataAvailable),o=Gi(i.value.forecastState,i.value.forecastListState),c=((d,l)=>d!=null&&((u,m)=>{let h=!1;for(let g=0;g<m.length;++g)if(m[g].id===u){h=!0;break}return h})(d,l)?d:l.length>0?l[0].id:void 0)(e,s.forecasts);if(c!=null){const d=[],l=o.forecasts.map((u=>u.id));return d.push(Rr(a.firstMonthOfFY,!0,void 0,{id:c,index:l.indexOf(c)})),t===!0||((u,m)=>{const h=ry(u,m);return h.fetchState!=="Completed"&&h.fetchState!=="In-Progress"})(c,i.value.opExState)?d.push(On(!1,c)):console.log("Required data is already there!! No need to fire any fetch!"),_(d)}if(c==null&&o.fetchState==="Completed"&&o.forecasts.length===0)return _([]);if(c==null&&(o.fetchState==="Completed"||o.fetchState==="Error"||o.forecasts.length>0)){console.warn("Atleast one of the forecast in the list should be valid!");const d=[$a(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"month"),$a(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"year"),$a(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"quarter")];return _([d])}if(c==null&&o.forecasts.length===0)return _([Hn(),Pg(t,e)]);{console.warn("Invlid state!!");const d=[$a(f("Unexpected error","Unexpected error"),r.payload.forecastId,"month"),$a(f("Unexpected error","Unexpected error"),r.payload.forecastId,"year"),$a(f("Unexpected error","Unexpected error"),r.payload.forecastId,"quarter")];return _([d])}}))),(n,i,r)=>n.pipe(S(ut.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/vendor-owners`).pipe(y((t=>{if(P(t)){const e=t.data?.users??[],a=[];return a.push(jw({users:e})),a.push(V({users:e})),_(a)}return p(Jg({fetchState:"Error",error:t.status}))})),v((t=>p(Jg({fetchState:"Error",error:f("Unexpected Error","Fetch owner REST API call errored out"+JSON.stringify(t))})))))))),(n,i)=>n.pipe(S(KO.match),A((r=>{const t=i.value,e=[];return t.companyViewState.parentSubsidiaryView.subsidiaryByParentCompanyId[r.payload.companyParentId]==null&&e.push(Ea(r.payload.fetchFullResponse,r.payload.companyParentId)),t.companyViewState.zeniUsers.fetchState==="In-Progress"||t.companyViewState.zeniUsers.hasValidState()||e.push(Ge()),_(e)}))),(n,i,r)=>n.pipe(S(Ib.match),y((t=>{const{paymentAccountId:e}=t.payload,a=i.value.paymentAccountState,s=tc(a,e);return s?.providerVerificationStatus?.code==="verified"||s?.providerVerificationStatus?.code==="automatically_verified"?r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-accounts/${e}?query=${encodeURIComponent('{"is_include_realtime_balance":true}')}`).pipe(y((o=>P(o)?p(W(o.data?.accounts??[],"zeni_accounts"),ve(o.data?.payment_accounts??[]),ws({paymentAccountId:e,fetchState:"Completed",error:void 0})):p(ws({paymentAccountId:e,fetchState:"Error",error:o.status})))),v((o=>p(ws({paymentAccountId:e,fetchState:"Error",error:f("Unexpected Error","Fetch payment Accounts Balance REST API call errored out"+JSON.stringify(o))}))))):p(ws({paymentAccountId:e,fetchState:"Completed",error:void 0}))}))),(n,i,r)=>n.pipe(S(ze.match),A((()=>r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-accounts`).pipe(y((t=>{if(P(t)&&t.data!=null){const{payment_accounts:e,accounts:a}=t.data;let s=[W(a,"zeni_accounts"),ve(e),Wt({data:e,updateType:"replace"})];return s=s.concat(e.map((o=>Ib(o.payment_account_id)))),j(_(s))}return p(bb({fetchState:"Error",error:t.status}))})),v((t=>p(bb({fetchState:"Error",error:f("Unexpected Error","Fetch payment Accounts REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(No.match),y((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscriptions/payment-sources?query=${encodeURIComponent(JSON.stringify({is_return_only_valid:!0}))}`).pipe(y((t=>{if(P(t)&&t.data){const e=[];return e.push(yN(t.data.payment_sources.cards),Jp(t.data.payment_sources.bank_accounts),Co({fetchState:"Completed",response:t.data})),_(e)}return _([Co({fetchState:"Error",error:t.status}),N({messageSection:"fetch_payment_sources",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:t.status.message}]})])})),v((t=>p(Co({fetchState:"Error",error:f("Unexpected Error","Fetch Payment Sources API call errored out "+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(rc.match),A((()=>{const t=i.value.peopleState.uiState.mode;let e="";return e=t==="zeni_only"?`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user-roles?query=${encodeURIComponent(JSON.stringify({include:t}))}`:`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user-roles`,r.getJSON(e).pipe(y((a=>P(a)?p(H(a.data?.user_roles??[]),V({users:a.data?.users??[]}),Zw(a.data)):p(Rg(a.status)))),v((a=>p(Rg(f("Unexpected error","User Roles REST API call errored out"+JSON.stringify(a)))))))}))),(n,i)=>n.pipe(S(n$.match),A((r=>{const{userId:t,cacheOverride:e}=r.payload;if(e===!0)return _([Pa(t),rc()]);{const a=i.value,s=[];return a.tenantState.fetchState==="In-Progress"||a.tenantState.hasValidState()||s.push(Pa(t)),a.peopleState.fetchState=="In-Progress"||a.peopleState.hasValidState()||s.push(rc()),_(s)}}))),(n,i,r)=>n.pipe(S(Gd.match),A((()=>r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account`).pipe(y((t=>P(t)&&t.data!=null?p(gq(t.data)):p(ub(t.status)))),v((t=>p(ub(f("Unexpected Error","Fetch portfolio allocation REST API call errored out: "+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(VO.match),A((r=>{const{cacheOverride:t,fetchFullResponse:e}=r.payload;if(t===!0)return _([hr(e),Ge()]);const a=i.value,s=[];return a.companyViewState.zeniUsers.fetchState==="In-Progress"||a.companyViewState.zeniUsers.hasValidState()||s.push(Ge()),a.companyViewState.portfolioView.fetchState==="In-Progress"||a.companyViewState.portfolioView.hasValidState()||s.push(hr(e)),_(s)}))),(n,i,r)=>n.pipe(S(na.match),y((t=>{const e=i.value,{entityId:a}=t.payload,s=tV(t.payload.entityId),o=ee(e.previousBillsState.byEntityKey,s,void 0);if(t.payload.cacheOverride===!0||o==null||o.hasValidState()===!1){const c=Ce(e.vendorState,a)?.name??"",d={transaction_type:"bill",bill_pay_provider:"zeni",sort_by:"transaction_date",sort_order:"desc",entity_type:"vendor",entity_id:a,entity_name:c,is_include_attachment:!0,limit:3};return r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions?query=${encodeURIComponent(JSON.stringify(d))}`).pipe(y((l=>{if(P(l)&&l.data!=null){const u=[];return u.push(xc(l.data.transactions)),u.push(aV({entityId:a,billTransactions:l.data.transactions})),_(u)}return p(Qv({entityId:a,fetchState:"Error",error:l.status}))})),v((l=>p(Qv({entityId:a,fetchState:"Error",error:f("Unexpected Error","fetch previous bills REST API call errored out"+JSON.stringify(l))})))))}return _([])}))),(n,i)=>n.pipe(S(Fg.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([Kt("month"),Kt("quarter"),Kt("year")]);{const e=[],a=i.value.profitAndLossClassesViewState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(Kt("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(Kt("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push(Kt("year")),_(e)}}))),(n,i)=>n.pipe(S(Ni.match),A((r=>{const{cacheOverride:t,forecastId:e}=r.payload;if(t===!0)return _([Ft("month",e),Ft("quarter",e),Ft("year",e)]);{const a=[],s=l$(i.value.profitAndLossState,e).fetchState;return s.month.fetchState!=="In-Progress"&&s.month.fetchState!=="Completed"&&a.push(Ft("month",e)),s.quarter.fetchState!=="In-Progress"&&s.quarter.fetchState!=="Completed"&&a.push(Ft("quarter",e)),s.year.fetchState!=="In-Progress"&&s.year.fetchState!=="Completed"&&a.push(Ft("year",e)),_(a)}}))),(n,i,r)=>n.pipe(S(Kt.match),y((t=>{const e={is_full_response:t.payload.fetchFullReport,time_series_groups:[(a=>{switch(a){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}})(t.payload.timeframe)],is_group_by_class:!0};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/profit_and_loss?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&P(a)){const s=[],o=a.data.report,c=o.currency;return s.push(oe(t.payload.timeframe,"cogs","profit_and_loss_by_classes",o.cogs,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,"expenses","profit_and_loss_by_classes",o.expenses,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,"income","profit_and_loss_by_classes",o.income,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,"otherExpenses","profit_and_loss_by_classes",o.other_expenses,o.classes,o.accounts,c)),s.push(oe(t.payload.timeframe,"otherIncome","profit_and_loss_by_classes",o.other_income,o.classes,o.accounts,c)),s.push(u$({timeframe:t.payload.timeframe,report:a.data})),_(s)}return p(qg(a.status,t.payload.timeframe))})),v((a=>p(qg(f("Unexpected Error","P&L REST API call errored out"+JSON.stringify(a)),t.payload.timeframe)))))}))),Gz,(n,i,r)=>n.pipe(S(Ht.match),y((t=>{const e={is_full_response:t.payload.fetchFullReport,time_series_groups:[(a=>{switch(a){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}})(t.payload.timeframe)],is_group_by_project:!0};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/profit_and_loss?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&P(a)){const s=[],o=a.data.report,c=o.currency;return s.push(Bt(o.projects)),s.push(ie(t.payload.timeframe,"cogs","profit_and_loss_by_projects",o.cogs,o.accounts,c)),s.push(ie(t.payload.timeframe,"expenses","profit_and_loss_by_projects",o.expenses,o.accounts,c)),s.push(ie(t.payload.timeframe,"income","profit_and_loss_by_projects",o.income,o.accounts,c)),s.push(ie(t.payload.timeframe,"otherExpenses","profit_and_loss_by_projects",o.other_expenses,o.accounts,c)),s.push(ie(t.payload.timeframe,"otherIncome","profit_and_loss_by_projects",o.other_income,o.accounts,c)),s.push(p$({timeframe:t.payload.timeframe,report:a.data})),_(s)}return p(jg(a.status,t.payload.timeframe))})),v((a=>p(jg(f("Unexpected Error","P&L by Projects REST API call errored out"+JSON.stringify(a)),t.payload.timeframe)))))}))),(n,i)=>n.pipe(S(Gg.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([Ht("month"),Ht("quarter"),Ht("year")]);{const e=[],a=i.value.profitAndLossProjectViewState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(Ht("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(Ht("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push(Ht("year")),_(e)}}))),(n,i,r)=>n.pipe(S(Pi.match),Fe(i),A((([t,e])=>{if(!Gn(e))return p(zg({status:f("Success",""),data:{projects:[]}}));const{isIncludeDeleted:a}=t.payload,s=(o=>`?query=${encodeURIComponent(JSON.stringify({is_deleted:o,sort_by:"accounting_project_name",sort_order:"asc",is_full:!0}))}`)(a);return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/projects${s}`).pipe(y((o=>P(o)?p(Bt(o.data?.projects??[]),zg(o)):p(Kg(o.status)))),v((o=>p(Kg(f("Unexpected Error","Fetch Projects REST API call errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(gr.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/connections-pool`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=t.data;return p(OJ(e))}return p(HS(t.status))})),v((t=>p(HS(f("Unexpected error","QBO Connection Pool errored Out: "+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(sc.match),y((t=>{const{entityId:e,entityType:a}=t.payload;return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/${O0(a)}/${e}/recommendations`).pipe(y((s=>{if(P(s)&&s.data!=null){const o=[],c=Xr(s.data.recommendations);return o.push(Vr({entityId:e,entityType:a,recommendations:c}),gn(e,a)),_(o)}return p(Ma({entityId:e,entityType:a,status:s.status}))})),v((s=>p(Ma({entityId:e,entityType:a,status:f("Unexpected Error","Fetch recommendation by Entity Id REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(ir.match),y((t=>{const{entityName:e,entityType:a}=t.payload;return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/recommendations?query=${encodeURIComponent(`{"entity_type":"${a}", "entity_name": "${e}"}`)}`).pipe(y((s=>{if(P(s)&&s.data!=null){const o=[],c=Xr(s.data.recommendations);return o.push(Vr({entityId:e,entityType:a,recommendations:c}),gn(e,a)),_(o)}return p(Ma({entityId:e,entityType:a,status:s.status}))})),v((s=>p(Ma({entityId:e,entityType:a,status:f("Unexpected Error","Fetch recommendation by Entity Name REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(Uy.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/account-recommendations`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=[];return e.push(yx(t.data)),_(e)}return p(ky({status:t.status}))})),v((t=>p(ky({status:f("Unexpected Error","Fetch account recommendations REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(bu.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/account-recommendations`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=[];return e.push(dP(t.data)),_(e)}return p(Eu({status:t.status}))})),v((t=>p(Eu({status:f("Unexpected Error","Fetch account recommendations REST API call errored out"+JSON.stringify(t))})))))))),(n,i)=>n.pipe(S(Od.match),y((r=>{const{cacheOverride:t,lineId:e,reimbursementId:a,merchantId:s,merchantName:o}=r.payload,c=i.value,d=a!=null?c.reimbursementState.reimbursementById[a]:void 0,l=[];if(t)s?l.push(sc(s,"merchant")):o&&l.push(ir(o,"merchant")),l.push(xs(e,a,s,o));else if(s||o){const{fetchState:u,recommendations:m=[]}=Sn(c,s||o,"merchant");u==="In-Progress"?l.push(xs(e,a,s,o)):u!="Completed"?(l.push(Cd({reimbursementId:a,lineId:e,recommendations:m,reimbursementStageCode:d?.reimbursementInfo.stage.code,shouldAutofill:!0})),s?l.push(sc(s,"merchant")):o&&l.push(ir(o,"merchant")),l.push(xs(e,a,s,o))):l.push(Cd({reimbursementId:a,lineId:e,recommendations:m,reimbursementStageCode:d?.reimbursementInfo.stage.code,shouldAutofill:!0}))}return _(l)}))),(n,i,r)=>n.pipe(S(bR.match),y((t=>{const e=i.value,{selectedJELinkRowIndex:a}=t.payload,{scheduleAccruedDetailState:s,vendorState:o}=e,c=[],{selectedJEAccruedScheduleKey:d}=s;if(d==null||a==null)return _(c);const l=oa(d,e);if(l==null)return _(c);const u=l.scheduledJournalEntry[a],{jeDebit:m}=l,{account:h,accountingClass:g}=m,{amount:I,runningBalance:E,expectedPostDate:b}=u,T=me().endOf("month").format(re),{vendor:O}=l,x=O.id,U=Ce(o,x),k={start_date:b.format(re),end_date:T,amount:I?.amount??0,accrued_balance:E?.amount??0,vendor_id:U?.id??"",account_name:h?.accountName??"",class_name:g?.className??""};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accrued-expenses/transactions/recommendations?query=${encodeURIComponent(JSON.stringify(k))}`).pipe(y((C=>P(C)&&C.data!=null?(c.push(xe(C.data.transactions,(B=>B.transaction_id)),Nf(C.data.transactions,(B=>B.transaction_id)),dc({fetchState:"Completed",error:void 0})),_(c)):_([Nf([],(B=>B.transaction_id)),dc({fetchState:"Error",error:C.status})]))),v((C=>_([dc({fetchState:"Error",error:f("Unexpected Error",`Fetch Bill Expense Recommendation REST API call errored out ${JSON.stringify(C)}`)})]))))}))),(n,i,r)=>n.pipe(S(b$.match),y((t=>{const{cacheOverride:e}=t.payload,a=i.value.referralViewState.fetchState;return e===!0||a==="Not-Started"?r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/company-referrals`).pipe(y((s=>{if(P(s)&&s.data!=null){const o=[E$(s.data)];return _(o)}return p(tf(s.status))})),v((s=>p(tf(f("Unexpected Error","Fetch referrals REST API call errored out"+JSON.stringify(s))))))):[]}))),(n,i,r)=>n.pipe(S(GU.match),A((t=>r.getJSON(`${r.apiEndPoints.notificationMicroServiceBaseUrl}/1.0/feature-interests?feature=${encodeURIComponent(t.payload.feature)}`).pipe(y((e=>{if(P(e)&&e.data!=null){const s=e.data.feature_interests.map(zU);return _([KU(s)])}const a=e.status??f("Failed to fetch registered interests. Please try again.");return _([T_(a)])})),v((e=>{const a=e instanceof Error?e.message:"Unexpected error fetching registered interests.";return _([T_(f(a))])})))))),(n,i,r)=>n.pipe(S(ai.match),y((()=>{const t=_a({startDate:te(xp,"YYYY-MM-DD"),endDate:te(Cp,"YYYY-MM-DD")}),e={start_date:X(t.start),end_date:X(t.end),reimbursement_provider:"zeni",transaction_type:"reimbursement",reimbursement_stages:{pending_approval:["awaiting_approval","awaiting_my_approval"],paid:["all"],scheduled:["all"],draft:["all"]},get_count_only:!0};return r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursement-card?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>P(a)&&a.data!=null?p(k$({transactionTotals:a.data.transaction_totals,transactionCount:a.data.transaction_count})):p(nf(a.status)))),v((a=>p(nf(f("Unexpected Error","fetch Reimbursement Dashboard Card REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(za.match),y((()=>r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/config`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=[];return e.push(BF(t.data)),e.push(DF(t.data.currency_country_map)),_(e)}return p(LI(t.status))})),v((t=>p(LI(f("Unexpected Error","fetch reimbursement config REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(Nd.match),y((r=>{const{reimbursementId:t,cacheOverride:e,isShowDeletedReimbursementEnabled:a}=r.payload,s=i.value,o=[];if(e)o.push(xd(t,!0,a)),o.push(Ud(t));else{const c=ee(s.remiDetailViewState.remiDetailById,t,void 0);c!=null&&c.fetchState==="In-Progress"?o.push(Ud(t)):c==null||c?.fetchState!="In-Progress"&&c?.fetchState!="Completed"?(o.push(xd(t,!1,a)),o.push(Ud(t))):o.push($I(t))}return _(o)}))),(n,i)=>n.pipe(S(YF.match),y((r=>{const{cacheOverride:t,includeUserRoles:e,includeAttributesUserIds:a,lastUpdatedByUserId:s}=r.payload,{remiSetupApproverViewState:o,classListState:c}=i.value,{approverListState:d}=o,l=[];return t===!0?(l.push(Md(t,e,a,s)),l.push(ne())):(o.hasValidState()===!1&&d.fetchStatus.fetchState!=="In-Progress"&&l.push(Md(!0,e,a,s)),c.hasValidState()===!1&&c.fetchState!=="In-Progress"&&l.push(ne())),j(_(l))}))),(n,i,r)=>n.pipe(S(Md.match),A((t=>{const{cacheOverride:e,includeUserRoles:a,includeAttributesUserIds:s,lastUpdatedByUserId:o}=t.payload,{remiSetupApproverViewState:c}=i.value,d=c.approverListState.approverIds;if(e===!0||d.length===0)return r.getJSON(`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/reimbursements/approvers?query={"is_include_user_roles_info":${a},"is_include_attribute_user_ids":${s},"last_updated_by_user_id":"${o}"}`).pipe(y((l=>{if(P(l)&&l.data!=null){const u=l.data.users.map((h=>h.user_id)),m=[V({users:l.data.users})];return a===!0&&m.push(H(l.data.user_roles)),m.push(KI(u,l.data.attributes,l.data.attribute_sub_type_to_user_id_mapping)),_(m)}return p(HI(l.status))})),v((l=>p(HI(f("Unexpected Error","Fetch Approvers List errored out"+JSON.stringify(l)))))));{const{approverListState:l}=c,{approverIds:u,attributes:m}=l;return p(KI(u,m))}}))),(n,i,r)=>n.pipe(S(xd.match),y((t=>{const{reimbursementId:e,cacheOverride:a,isShowDeletedReimbursementEnabled:s}=t.payload,o=[],c=i.value,{remiDetailViewState:d,reimbursementConfigState:l}=c;if(a===!0){const m=ee(d.remiDetailById,e,void 0);o.push(...(function(h,g){const I=[];return I.push(FF(h)),g!=null&&I.push(wd(h)),I})(e,m))}const u=ee(d.remiDetailById,e,void 0);if(a==1||u==null||u.fetchState!=="In-Progress"){o.push(ks(e,"In-Progress")),o.push(fs(e,"reimbursement",a)),l.fetchState!=="In-Progress"&&l.fetchState!=="Completed"&&o.push(za());const m={transaction_type:"reimbursement",reimbursement_provider:"zeni",is_include_approval_info:!0,is_include_deleted:s},h=r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/transactions/${e}?query=${encodeURIComponent(JSON.stringify(m))}`).pipe(y((g=>{if(P(g)&&g.data?.transaction?.transaction_id!=null){const I=g.data.transaction.transaction_id,E=g.data.reimbursee_bank_account,b=[Dd(g.data.transaction),V({users:g.data.users??[]}),Xe(g.data.approval_rules),At(g.data.entity_approvals),VF({reimbursementId:e,remiDetail:g.data}),Ed(g.data.merchants),MI(g.data.merchants),we(E!=null?[E]:[]),ks(I,"Completed")];return g.data.merchants.forEach((T=>{const O=Xr(T.recommendations??[]);O!=null&&T.merchant_id&&b.push(Vr({entityId:T.merchant_id,entityType:"merchant",recommendations:O}))})),b.push(LF()),g.data.transaction?.lines!=null&&g.data.transaction.lines.length>0&&b.push(Bd(g.data.transaction.created_by_user_id,!1,g.data.transaction.transaction_id)),_(b)}return p(ks(t.payload.reimbursementId,"Error",g.status))})),v((g=>(console.error(`REST API call errored out ${g}`),p(ks(t.payload.reimbursementId,"Error",f("Unexpected Error",`REST API call errored out ${g}`)))))));return j(_(o),h)}return _(o)}))),(n,i)=>n.pipe(S(qF.match),y((r=>{const t=[],e=i.value,{period:a,cacheOverride:s,isShowDeletedReimbursementEnabled:o,isIncludeLineItems:c,isRefreshAccountAndAccountingClass:d}=r.payload,l=["draft","pending_approval","scheduled","paid"];return s===!0?(t.push(za()),l.forEach((u=>t.push(Rd(a,u,o,c,d))))):(e.reimbursementConfigState.fetchState!=="Completed"&&e.reimbursementConfigState.fetchState!=="In-Progress"&&t.push(za()),l.forEach((u=>{const m=jF(a,u),h=ee(e.remiListState.byRemiListKey,m,void 0);h!=null&&h.hasValidState()!==!1||t.push(Rd(a,u,o,c,d))}))),_(t)}))),(n,i,r)=>n.pipe(S(Rd.match),y((t=>{const{period:e,tab:a,isShowDeletedReimbursementEnabled:s,isIncludeLineItems:o,isRefreshAccountAndAccountingClass:c}=t.payload,d={start_date:X(e.start),end_date:X(e.end),sort_by:"reimbursement_date",sort_order:"desc",reimbursement_provider:"zeni",reimbursement_stage_code:a,is_include_reimbursee_users_info:!0,is_include_approval_info:a==="pending_approval",is_include_pending_approval_transaction_ids_for_user:a==="pending_approval",transaction_type:"reimbursement",is_include_deleted:!!s&&a!=="draft",is_include_line_items:!!o&&a!=="draft",is_refresh_account_and_accounting_class:c};return r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/transactions?query=${encodeURIComponent(JSON.stringify(d))}`).pipe(y((l=>{if(P(l)&&l.data!=null){const u=[V({users:l.data.users}),GF(l.data.transactions),zF({remiList:l.data,tab:a}),At(l.data.entity_approvals??[])];return _(u)}return p(GI(e,a,l.status))})),v((l=>p(GI(t.payload.period,t.payload.tab,f("Unexpected Error","fetch remi list REST API call errored out"+JSON.stringify(l)))))))}))),(n,i,r)=>n.pipe(S(Vd.match),A((t=>{const{cacheOverride:e,resolveAttributeToUser:a,includeImplicitActors:s,useV3:o}=t.payload,{remiSetupApproverViewState:c,approvalRuleState:d,classListState:l}=i.value,u=ht(i.value),m=Sv(d,c.approvalRuleIds),h=u&&(e===!0||l.hasValidState()===!1&&l.fetchState!=="In-Progress");if(e===!0||m.length!==c.approvalRuleIds.length||c.hasValidState()===!1&&c.fetchState!=="In-Progress"){const g=o===!0?`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/reimbursements/approval-rules-v2`:`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/reimbursements/approval-rules`;return r.getJSON(`${g}?query={"is_include_implicit_actors": ${s}, "is_resolve_attribute_to_user":${a}}`).pipe(y((I=>{if(P(I)&&I.data!=null){const E=I.data.approval_rules.map((T=>T.approval_rule_id)),b=[V({users:I.data.users}),Xe(I.data.approval_rules),YI(E)];return h&&b.push(ne()),_(b)}return p(QI(I.status))})),v((I=>p(QI(f("Unexpected Error","Fetch Approval view errored out"+JSON.stringify(I)))))))}{const{approvalRuleIds:g}=c,I=[YI(g)];return h&&I.push(ne()),_(I)}}))),(n,i,r)=>n.pipe(S(tq.match),A((t=>{const{companyId:e,cacheOverride:a,refreshViewInBackground:s}=t.payload,{remiSetupViewState:o,plaidAccountViewState:c,companyState:d}=i.value,l=Ae(d,e)?.company;if(a===!0||s===!0||l==null||o.hasValidState()===!1&&o.fetchState!=="In-Progress")return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}?query={"view":"reimbursement_setup"}`).pipe(y((u=>{if(P(u)&&u.data!=null){const m=u.data.accounts.map((g=>g.account_id)),h=[V({users:u.data.users}),H(u.data.user_roles),Q({payload:u.data.companies,schema:{}}),z(u.data.addresses),he({files:u.data.files}),W(u.data.accounts,"reimbursement"),ve(u.data.payment_accounts),Wt({data:u.data.payment_accounts,updateType:"replace"}),Ze(u.data.deposit_accounts??[]),Zt({data:u.data?.deposit_accounts??[],updateType:"replace"}),Re({companyId:u.data.companies[0].company_id}),Ld({companyId:u.data.companies[0].company_id}),it(m,"reimbursement_setup"),tb()];return _(h)}return p(N({messageSection:"reimbursement_setup",messageText:"failed",type:"error"}),ab(u.status))})),v((u=>p(ab(f("Unexpected Error","Fetch Remi Setup view errored out"+JSON.stringify(u)))))));{const{allBankAccountIds:u}=c.reimbursement_setup.accountDetails;return p(Re({companyId:e}),it(u,"reimbursement_setup"),tb())}}))),(n,i)=>n.pipe(S(_f.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([Yt("month"),Yt("quarter"),Yt("year")]);{const e=[],a=i.value.revenueClassesViewState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(Yt("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(Yt("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push(Yt("year")),_(e)}}))),(n,i)=>n.pipe(S(Cn.match),A((r=>{const{cacheOverride:t,forecastId:e}=r.payload;if(t===!0)return _([La("month",e),La("quarter",e),La("year",e)]);{const a=[],s=dR(i.value.revenueState,i.value.revenueState.uiState.isForecastModeOn,e).fetchState;return s.month.fetchState!=="In-Progress"&&s.month.fetchState!=="Completed"&&a.push(La("month",e)),s.quarter.fetchState!=="In-Progress"&&s.quarter.fetchState!=="Completed"&&a.push(La("quarter",e)),s.year.fetchState!=="In-Progress"&&s.year.fetchState!=="Completed"&&a.push(La("year",e)),_(a)}}))),(n,i,r)=>n.pipe(S(Yt.match),y((t=>{const e={is_full_response:t.payload.fetchFullReport,time_series_groups:[If(t.payload.timeframe)],is_group_by_class:!0};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/revenue?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&P(a)){const s=[];return s.push(oe(t.payload.timeframe,"cogs","revenue_by_classes",a.data.report.cogs,a.data.report.classes,a.data.report.accounts,a.data.report.currency)),s.push(oe(t.payload.timeframe,"income","revenue_by_classes",a.data.report.income,a.data.report.classes,a.data.report.accounts,a.data.report.currency)),s.push(lR({timeframe:t.payload.timeframe,report:a.data})),_(s)}return p(bf(a.status,t.payload.timeframe))})),v((a=>p(bf(f("Unexpected Error","Revenue REST API call errored out"+JSON.stringify(a)),t.payload.timeframe)))))}))),zz,(n,i,r)=>n.pipe(S(Qt.match),y((t=>{const e={is_full_response:t.payload.fetchFullReport,time_series_groups:[If(t.payload.timeframe)],is_group_by_project:!0};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/revenue?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&P(a)){const s=[],o=a.data.report,c=o.currency;return s.push(Bt(o.projects)),s.push(ie(t.payload.timeframe,"cogs","revenue_by_projects",o.cogs,o.accounts,c)),s.push(ie(t.payload.timeframe,"income","revenue_by_projects",o.income,o.accounts,c)),s.push(uR({timeframe:t.payload.timeframe,report:a.data})),_(s)}return p(Ef(a.status,t.payload.timeframe))})),v((a=>p(Ef(f("Unexpected Error","Revenue by Projects REST API call errored out"+(a instanceof Error?a.message:String(a))),t.payload.timeframe)))))}))),(n,i)=>n.pipe(S(Sf.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return _([Qt("month"),Qt("quarter"),Qt("year")]);{const e=[],a=i.value.revenueProjectViewState.fetchState;return a.month.fetchState!=="In-Progress"&&a.month.fetchState!=="Completed"&&e.push(Qt("month")),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(Qt("quarter")),a.year.fetchState!=="In-Progress"&&a.year.fetchState!=="Completed"&&e.push(Qt("year")),_(e)}}))),(n,i)=>n.pipe(S(ff.match),y((r=>{const{cacheOverride:t,forecastId:e}=r.payload,a=cR(i.value),s=ji(i.value.forecastState,i.value.forecastListState,a.dataAvailable),o=Gi(i.value.forecastState,i.value.forecastListState),c=((d,l)=>d!=null&&((u,m)=>{let h=!1;for(const g of m)if(g.id===u){h=!0;break}return h})(d,l)?d:l.length>0?l[0].id:void 0)(e,s.forecasts);if(c!=null){const d=[],l=o.forecasts.map((u=>u.id));return d.push(Rr(a.firstMonthOfFY,!0,void 0,{id:c,index:l.indexOf(c)})),t===!0||((u,m)=>{const h=ay(u,m);return h.fetchState!=="Completed"&&h.fetchState!=="In-Progress"})(c,i.value.revenueState)?d.push(Cn(!1,c)):console.log("Required data is already there!! No need to fire any fetch!"),_(d)}if(c==null&&o.fetchState==="Completed"&&o.forecasts.length===0)return _([]);if(c==null&&(o.fetchState==="Completed"||o.fetchState==="Error"||o.forecasts.length>0)){console.warn("Atleast one of the forecast in the list should be valid!");const d=[Va(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"month"),Va(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"year"),Va(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"quarter")];return _([d])}if(c==null&&o.forecasts.length===0)return _([Hn(),vf(t,e)]);{console.warn("Invlid state!!");const d=[Va(f("Unexpected error","Unexpected error"),r.payload.forecastId,"month"),Va(f("Unexpected error","Unexpected error"),r.payload.forecastId,"year"),Va(f("Unexpected error","Unexpected error"),r.payload.forecastId,"quarter")];return _([d])}}))),(n,i,r)=>n.pipe(S(pn.match),A((t=>{const{cacheOverride:e,isFromMonthEnd:a}=t.payload,s=i.value,{fetchState:o}=s.reviewCompanyViewState;return e===!0||o!=="In-Progress"?r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels/audit`).pipe(y((c=>{if(P(c)&&c.data!=null){const d=[pR(c.data.companies)];return a===!0&&d.push(N({messageSection:"audit_score_updated",messageText:"success",type:"success"})),_(d)}{const d=[Tf(c.status)];return _(d)}})),v((c=>{const d=[Tf(f("Unexpected error","Cockpit Review errored out"+JSON.stringify(c)))];return _(d)}))):_([])}))),(n,i,r)=>n.pipe(S(Mq.match),A((()=>{const t=i.value.transferDetailState.localData,e={from_account:{account_id:t.transferFrom?.id,account_type:Ve(t.transferFrom?.accType)??""},to_account:{account_id:t.transferTo?.id,account_type:Ve(t.transferTo?.accType)??""},amount:t.amount.amount,currency_code:t.amount.currencyCode,currency_symbol:t.amount.currencySymbol};return r.postAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts/transfers/review`,e).pipe(y((a=>P(a)&&a.data!=null?p(Vq(a.data)):p(Tb(a.status)))),v((a=>p(Tb(f("Unexpected Error","Review Transfer Detail REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(ri.match),y((t=>{const{cacheOverride:e}=t.payload,a=i.value.referralViewState.rewardsPlanFetchState.fetchState;if(e===!0||a==="Not-Started"){const s={is_primary_refer_reward_plan:!0};return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/company-refer-reward-plan?query=${encodeURIComponent(JSON.stringify(s))}`).pipe(y((o=>{if(P(o)&&o.data!=null){const c=[T$(o.data)];return _(c)}return p(af(o.status))})),v((o=>p(af(f("Unexpected Error","Fetch rewards plan REST API call errored out"+JSON.stringify(o)))))))}return[]}))),(n,i,r)=>n.pipe(S(ep.match),A((t=>{const{scheduleId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/routines/${encodeURIComponent(e)}/runs`).pipe(et((a=>{if(!P(a)||a.data==null)return tp(a.status);const{data:s}=a;return lA({runs:(s.runs??[]).filter(SK).map(gK),scheduleId:e,sessionId:s.session_id??null})})),v((a=>p(tp(f("Unexpected Error","Fetch routine runs REST API call failed",a instanceof Error?{message:a.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(_t.match),A((()=>r.getJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/routines`).pipe(y((t=>{if(!P(t)||t.data==null)return p(ap(t.status));const{data:e}=t;return p(uA({routines:(e.routines??[]).filter(IK).map(EK),maxRoutines:e.max_routines??0,routinesEnabled:e.routines_enabled===!0}))})),v((t=>p(ap(f("Unexpected Error","Fetch routines REST API call failed",t instanceof Error?{message:t.message}:void 0))))))))),(n,i,r)=>n.pipe(S(Of.match),y((t=>{const e=[],{scheduleType:a,selectedJeScheduleDetailId:s}=t.payload,{scheduleAccruedDetailState:o}=i.value;if(s!=null){if(o.editScheduleStateByDetailId[s]?.jeScheduleDetails.length>0&&o.selectedJEAccruedScheduleKey!=null)return e.push(Fa(a,o.selectedJEAccruedScheduleKey,s)),e.push(lc()),_(e);const c={je_schedule_type:a};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${s}?query=${encodeURIComponent(JSON.stringify(c))}`).pipe(y((d=>{if(P(d)&&d.data!=null){const l=Cf(d.data.je_schedules[0]);return e.push(ua(d.data.je_schedules),ER({selectedJEScheduleKey:l}),Ar(d.data.je_schedules,d.data.scheduled_journal_entries),Fr("Not-Started"),Fa(a,l,s),lc()),_(e)}return p(uc({error:d.status}))})),v((d=>p(uc({error:f("Unexpected Error","Accrued Schedule Detail REST API call errored out"+JSON.stringify(d))})))))}return o.selectedJEAccruedScheduleKey!=null?(e.push(Fa(a,o.selectedJEAccruedScheduleKey)),e.push(lc())):e.push(uc({error:f("Unexpected Error","Accrued Schedule Detail key is not defined")})),_(e)}))),(n,i)=>n.pipe(S(TR.match),y((r=>{const t=[],e=Pr(),a=i.value.accountListState,s=i.value.classListState;return a.byReportId[e.accountListKey].fetchState==="Not-Started"&&t.push(Te(e.accountListKey,!0,!1,!1,!1,e.allowedAccountList)),s.fetchState==="Not-Started"&&t.push(ne()),r.payload.selectedJeScheduleDetailId!=null&&t.push(Of(r.payload.scheduleType,r.payload.selectedJeScheduleDetailId)),j(_(t))}))),(n,i,r)=>n.pipe(S(Uf.match),y((t=>{const e=[],{scheduleType:a,selectedJeScheduleDetailId:s,cacheOverride:o}=t.payload,{scheduleDetailState:c}=i.value;if(s!=null){if(c.editScheduleStateByDetailId[a][s]?.jeScheduleDetails.length>0&&c.selectedJEScheduleKey!=null&&o!==!0)return e.push(qr(a,c.selectedJEScheduleKey,s)),e.push(yc()),_(e);const d={je_schedule_type:a};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${s}?query=${encodeURIComponent(JSON.stringify(d))}`).pipe(y((l=>{if(P(l)&&l.data!=null){const u=DR(l.data.je_schedules[0].base_transaction);return e.push(yt(l.data.je_schedules),JR({selectedJEScheduleKey:u}),It(l.data.je_schedules,l.data.scheduled_journal_entries),jr("Not-Started"),qr(a,u,s),yc()),l.data.je_schedules[0].status.code==="draft"&&qH(l.data.je_schedules[0])&&e.push(xf({scheduleType:a})),_(e)}return p(_c({error:l.status}))})),v((l=>p(_c({error:f("Unexpected Error","Schedule Detail REST API call errored out"+JSON.stringify(l))})))))}return c.selectedJEScheduleKey!=null?(e.push(qr(a,c.selectedJEScheduleKey)),e.push(yc())):e.push(_c({error:f("Unexpected Error","Schedule Detail key is not defined")})),_(e)}))),(n,i)=>n.pipe(S(wR.match),y((r=>{const t=[],e=Pr(),a=i.value.accountListState,s=i.value.classListState;return a.byReportId[e.accountListKey].fetchState==="Not-Started"&&t.push(Te(e.accountListKey,!0,!1,!1,!1,e.allowedAccountList)),s.fetchState==="Not-Started"&&t.push(ne()),r.payload.selectedJeScheduleDetailId!=null&&t.push(Uf(r.payload.scheduleType,r.payload.selectedJeScheduleDetailId,r.payload.cacheOverride)),j(_(t))}))),(n,i,r)=>n.pipe(S(gc.match),y((t=>{const{scheduleType:e}=t.payload,{scheduleListState:a,accountListState:s}=i.value;let o;if(e!=="accrued_expenses"&&(o=Sc(a,e)),o==null)return _([]);const c=t.payload.timeframeAndCategory!=null?t.payload.timeframeAndCategory.selectedTimeframe:o.selectedTimeframe,d=t.payload.timeframeAndCategory!=null?t.payload.timeframeAndCategory.selectedCategoryId:o.selectedCategoryId,l=_a(c),u=_s(d,c),m=o.jeScheduleKeysByListKey[u];if(m!=null&&m.fetchState==="Completed"&&t.payload.cacheOverride===!1)return _([]);const h=HR(e),g=YR(e),I=g!=null?zR(s,h.accountListKey,g):[];let E=[d];d==="all"&&(E=I);const b={start_date:X(l.start),end_date:X(l.end),je_schedule_type:e,base_txn_account_ids:E,sort_by:"transaction_date",sort_order:"desc",filter:"all"};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules?query=${encodeURIComponent(JSON.stringify(b))}`).pipe(y((T=>{if(P(T)&&T.data!=null){const O=[];return O.push(yt(T.data.je_schedules),It(T.data.je_schedules,T.data.scheduled_journal_entries),KR(e,c,d,T.data.je_schedules)),_(O)}return p(wf(e,c,d,T.status))})),v((T=>p(wf(e,c,d,f("Unexpected Error","Schedule List REST API call errored out"+JSON.stringify(T)))))))}))),n=>n.pipe(S(QR.match),y((()=>{const i=[],r=Pr();return i.push(Te(r.accountListKey,!1,!1,!1,!1,r.allowedAccountList)),_(i)}))),(n,i,r)=>n.pipe(S(eA.match),A((t=>{const{macroId:e}=t.payload,a=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/skills/${encodeURIComponent(e)}`;return r.getJSON(a).pipe(y((s=>P(s)&&xl(s.data)?p(tA({detail:Ul(s.data),macroId:e})):p(Ku({error:s.status,macroId:e})))),v((s=>p(Ku({error:f("Unexpected Error","Fetch skill detail REST API call failed",s instanceof Error?{message:s.message}:void 0),macroId:e})))))}))),(n,i,r)=>n.pipe(S(go.match),A((()=>{const t=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/skills`;return r.getJSON(t).pipe(y((e=>P(e)&&e.data!=null?p(sA({skills:(e.data.skills??[]).map(_K),skillsEnabled:e.data.skills_enabled===!0,canPublish:e.data.can_publish===!0})):p(Wu(e.status)))),v((e=>p(Wu(f("Unexpected Error","Fetch skills REST API call failed",e instanceof Error?{message:e.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(aA.match),A((t=>{const{macroId:e,version:a}=t.payload,s=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/skills/${encodeURIComponent(e)}?version=${encodeURIComponent(String(a))}`;return r.getJSON(s).pipe(y((o=>P(o)&&vT(o.data)?p(rA({macroId:e,version:a,instructions:o.data.instructions})):p(Hu({macroId:e,version:a,error:o.status})))),v((o=>p(Hu({macroId:e,version:a,error:f("Unexpected Error","Fetch skill version body REST API call failed",o instanceof Error?{message:o.message}:void 0)})))))}))),(n,i,r)=>n.pipe(S(Yu.match),A((t=>{const{macroId:e}=t.payload,a=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/skills/${encodeURIComponent(e)}/versions`;return r.getJSON(a).pipe(y((s=>P(s)&&s.data!=null?p(nA({macroId:e,versions:(s.data.versions??[]).map(mK)})):p(Qu({macroId:e,error:s.status})))),v((s=>p(Qu({macroId:e,error:f("Unexpected Error","Fetch skill versions REST API call failed",s instanceof Error?{message:s.message}:void 0)})))))}))),(n,i,r)=>n.pipe(S(Hq.match),A((t=>{const{cacheOverride:e}=t.payload,{subscriptionViewState:a}=i.value,s=a.addOnListState.addOnIds;return e===!0||s.length===0?r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscription-addons`).pipe(y((o=>{if(P(o)&&o.data!=null){const c=o.data.subscription_addons.map((l=>l.subscription_addon_id)),d=[va({payload:o.data.subscription_addons}),Cb({addOnIds:c})];return _(d)}return p(xb({status:o.status}))})),v((o=>p(xb({status:f("Unexpected error","Unable to fetch subscription addOns"+JSON.stringify(o))}))))):p(Cb({addOnIds:s}))}))),(n,i,r)=>n.pipe(S(Yq.match),A((t=>{const{cacheOverride:e}=t.payload,{subscriptionViewState:a}=i.value,s=a.couponListState.couponIds;return e===!0||s.length===0?r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscription-coupons`).pipe(y((o=>{if(P(o)&&o.data!=null){const c=o.data.subscription_coupons.map((l=>l.subscription_coupon_id)),d=[yr({payload:o.data.subscription_coupons}),Ub({couponIds:c})];return _(d)}return p(kb({status:o.status}))})),v((o=>p(kb({status:f("Unexpected error","Unable to fetch subscription coupons"+JSON.stringify(o))}))))):p(Ub({couponIds:s}))}))),(n,i,r)=>n.pipe(S(Qq.match),A((t=>{const{tenantId:e}=t.payload,a=i.value.subscriptionViewState.subscriptionUpdateViewDataByTenantId[e].data;if(a!=null){const{subscriptionPlanId:s,subscriptionAddOnIds:o,subscriptionCouponIds:c,startDate:d,invoiceImmediately:l}=a,u={subscriptionPlanId:s,subscriptionAddOnIds:o,subscriptionCouponIds:c,startDate:d,invoiceImmediately:l};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscription-create-estimate?query=${encodeURIComponent(JSON.stringify(V0(u,e,!0)))}`).pipe(y((m=>{if(P(m)&&m.data!=null){const h=[Wq({tenantId:e,subscriptionEstmiateData:m.data})];return _(h)}return p(Bb({tenantId:e,status:m.status}))})),v((m=>p(Bb({tenantId:e,status:f("Unexpected error","Unable to fetch subscription create estimate"+JSON.stringify(m))})))))}return _([])}))),(n,i,r)=>n.pipe(S(Zq.match),A((t=>{const{companyId:e,cacheOverride:a}=t.payload,{subscriptionViewState:s}=i.value,o=s.subscriptionDetailsByCompanyId[e],c=o!=null?o.subscriptionIds:[];return a===!0||c.length===0?r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscriptions?query=${encodeURIComponent(JSON.stringify({company_id:e}))}`).pipe(y((d=>{if(P(d)&&d.data!=null){const l=d.data.subscriptions.map((m=>m.subscription_id)),u=[mr({payload:d.data.subscriptions,schema:d.data.schema.subscription}),fa({payload:d.data.subscription_plans,schema:d.data.schema.subscription_plan}),yr({payload:d.data.subscription_coupons,schema:d.data.schema.subscription_coupon}),va({payload:d.data.subscription_addons,schema:d.data.schema.subscription_addon}),Ia({payload:d.data.subscription_summaries,schema:d.data.schema.subscription_summary}),Db({companyId:e,subscriptionIds:l})];return _(u)}return p(Jb({companyId:e,status:d.status}))})),v((d=>p(Jb({companyId:e,status:f("Unexpected error","fetch Subscription Details errored out"+JSON.stringify(d))}))))):p(Db({companyId:e,subscriptionIds:c}))}))),(n,i,r)=>n.pipe(S(_r.match),A((t=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels/subscriptions?query=${encodeURIComponent(`{"is_full_response":${t.payload.fetchFullResponse}}`)}`).pipe(y((e=>{if(P(e)&&e.data!=null){const a=e.data.companies.map((d=>d.company_id)),s=(function(d,l){const u=Dl(d),m={};return l.forEach((h=>{m[h]={subscriptionIds:u[h]??[],fetchStatus:{fetchState:"Completed",error:void 0}}})),m})(e.data.subscriptions,a),o=Yo(e.data.user_roles,e.data.companies),c=[H(e.data.user_roles),Q({payload:e.data.companies,schema:e.data.schema.company,subset:!1,companyIdTenantIdMapping:o}),mr({payload:e.data.subscriptions,schema:e.data.schema.subscription}),fa({payload:e.data.subscription_plans,schema:e.data.schema.subscription_plan}),va({payload:e.data.subscription_addons,schema:e.data.schema.subscription_addon}),yr({payload:e.data.subscription_coupons,schema:e.data.schema.subscription_coupon}),Ia({payload:e.data.subscription_summaries,schema:e.data.schema.subscription_summary}),Xq({companyIds:a,subscriptionDetailsByCompanyId:s})];return t.payload.fetchFullResponse===!0&&e.data.users!=null&&c.push(V({users:e.data.users})),_(c)}return p(wb(e.status))})),v((e=>p(wb(f("Unexpected error","fetch Subscription List errored out"+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(ej.match),A((t=>{const{cacheOverride:e}=t.payload,{subscriptionViewState:a}=i.value,s=a.planListState.planIds;return e===!0||s.length===0?r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscription-plans`).pipe(y((o=>{if(P(o)&&o.data!=null){const c=o.data.subscription_plans.map((l=>l.subscription_plan_id)),d=[fa({payload:o.data.subscription_plans}),$b({planIds:c})];return _(d)}return p(Rb({status:o.status}))})),v((o=>p(Rb({status:f("Unexpected error","Unable to fetch subscription plans"+JSON.stringify(o))}))))):p($b({planIds:s}))}))),Kz,(n,i,r)=>n.pipe(S(tj.match),A((t=>{const{tenantId:e}=t.payload,a=i.value.subscriptionViewState.subscriptionUpdateViewDataByTenantId[e].data;if(a!=null){const{subscriptionId:s,subscriptionEstmiate:o,subscriptionPlanId:c,subscriptionAddOnIds:d,subscriptionCouponIds:l,invoiceImmediately:u,applyEndOfTerm:m,shouldProrate:h}=a,g={subscriptionId:s,subscriptionEstmiate:o,subscriptionPlanId:c,subscriptionAddOnIds:d,subscriptionCouponIds:l,invoiceImmediately:u,applyEndOfTerm:m,shouldProrate:h};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscription-update-estimate?query=${encodeURIComponent(JSON.stringify(M0(g,e,!0)))}`).pipe(y((I=>{if(P(I)&&I.data!=null){const E=[aj({tenantId:e,subscriptionEstmiateData:I.data})];return _(E)}return p(Mb({tenantId:e,status:I.status}))})),v((I=>p(Mb({tenantId:e,status:f("Unexpected error","Unable to fetch subscription update estimate"+JSON.stringify(I))})))))}return _([])}))),(n,i)=>n.pipe(S(LO.match),A((r=>{const{cacheOverride:t,fetchFullResponse:e}=r.payload;if(t===!0)return _([_r(e),Ge()]);const a=i.value,s=[];return a.companyViewState.zeniUsers.fetchState==="In-Progress"||a.companyViewState.zeniUsers.hasValidState()||s.push(Ge()),a.subscriptionViewState.subscriptionListView.fetchState==="In-Progress"||a.subscriptionViewState.subscriptionListView.hasValidState()||s.push(_r(e)),_(s)}))),(n,i,r)=>n.pipe(S(bj.match),y((t=>{const{parentTaskId:e}=t.payload,a=JSON.stringify({task_type:"subtasks",parent_task_id:e});return r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks?query=${encodeURIComponent(a)}`).pipe(y((s=>{if(P(s)&&s.data!=null){const{tasks:o}=s.data,c=o.filter((d=>d.parent_task_id===e)).map((d=>d.task_id));return p(Ke(o),Tj({parentTaskId:e,subTaskIds:c}),Ej({parentTaskId:e}))}return p(Hb({parentTaskId:e,fetchState:"Error",error:s.status}))})),v((s=>p(Hb({parentTaskId:e,fetchState:"Error",error:f("Unexpected Error","Fetch Sub Tasks REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(oA.match),y((t=>{const{pageContext:e,noCardCreated:a}=t.payload,s=new URLSearchParams({page_context:e});a===!0&&s.set("no_card_created","true");const o=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/suggested-questions?${s.toString()}`;return r.getJSON(o).pipe(y((c=>P(c)&&c.data!=null?p(iA({pageContext:e,generatedAt:c.data.generated_at,suggestedQuestions:c.data.suggested_questions})):p(Zu({pageContext:e,error:c.status})))),v((c=>p(Zu({pageContext:e,error:f("Unexpected Error","Fetch suggested questions REST API call failed",c instanceof Error?{message:c.message}:void 0)})))))}))),(n,i,r)=>n.pipe(S(ll.match),y((t=>{const{taskId:e,cacheOverride:a}=t.payload,s=[],o=i.value,c=ee(o.taskDetailState.editTaskStateById,e,void 0);if(a===!0&&s.push(Pj(e)),a===!0||c==null||c.fetchTaskStatus.fetchState!=="In-Progress"){s.push(Ha({taskId:e,fetchState:"In-Progress"}));const d=r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${e}`).pipe(y((l=>{if(P(l)&&l.data!=null){const u=[Ke(l.data.tasks),Ha({taskId:e,fetchState:"Completed"}),tn(l.data.tasks.map((h=>h.tags)).flat()),Yb(e)],m=l.data.tasks[0].file_ids;return m.length>0&&u.push(C_(m)),_(u)}{const u=[Ha({taskId:e,fetchState:"Error",error:l.status})];return l.status.message.includes("delete")?u.push(N({messageSection:"fetch_task_detail",messageText:"failed",type:"error",showStatusIcon:!0,variables:[{variableName:"_api-error_",variableValue:"Cannot retrieve deleted task."}]})):u.push(N({messageSection:"fetch_task_detail",messageText:"failed",type:"error",showStatusIcon:!0,variables:[{variableName:"_api-error_",variableValue:l.status.message}]})),_(u)}})),v((l=>(console.error(`REST API call errored out ${l}`),p(Ha({taskId:e,fetchState:"Error",error:f("Unexpected Error","Fetch Task detail REST API call errored out"+JSON.stringify(l))}))))));return j(_(s),d)}return _(s)}))),(n,i)=>n.pipe(S(Aj.match),y((r=>{const{cacheOverride:t,taskId:e}=r.payload,a=[],s=i.value;if(t===!0)a.push(Me("taskManagerCandidate",!0)),a.push(ne()),e!=null&&(a.push(ll(e,!0)),a.push(ul(e,!0)));else{const o=s.userListViewState.userListByType.taskManagerCandidate;o.hasValidState()===!1&&o.fetchState!=="In-Progress"&&a.push(Me("taskManagerCandidate",!1)),s.classListState.hasValidState()===!1&&s.classListState.fetchState!=="In-Progress"&&a.push(ne()),e!=null&&(a.push(ll(e,!1)),a.push(ul(e,!1)))}return j(_(a))}))),(n,i,r)=>n.pipe(S(yl.match),A((()=>r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/templates`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=[$j(t.data),Rj(t.data.templates)];return _(e)}{const e=[Xb(t.status)];return _(e)}})),v((t=>{const e=[Xb(f("Unexpected error","fetch task group templates REST API call errored out"+JSON.stringify(t)))];return _(e)})))))),(n,i,r)=>n.pipe(S(ul.match),y((t=>{const{taskId:e,cacheOverride:a}=t.payload,s=[],o=i.value,c=ee(o.taskDetailState.taskHistoryById,e,void 0);if(a===!0||c==null||c.fetchState!=="In-Progress"){s.push(pl({taskId:e,fetchState:"In-Progress"}));const d=r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${e}/history`).pipe(y((l=>P(l)&&l.data!=null?p(Nj({taskId:e,historicEventsPayload:l.data.activities})):p(pl({taskId:e,fetchState:"Error",error:l.status})))),v((l=>p(pl({taskId:e,fetchState:"Error",error:f("Unexpected Error","Fetch Task history REST API call errored out"+JSON.stringify(l))})))));return j(_(s),d)}return _(s)}))),(n,i,r)=>n.pipe(S(Ct.match),A((()=>r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks?query=${encodeURIComponent('{"task_type": "all"}')}`).pipe(y((t=>{if(P(t)&&t.data!=null){const{tasks:e,deleted:a,archived:s,snoozed:o,completed:c}=t.data,d=[...e,...c??[],...a??[],...s??[],...o??[]];return p(Ke(d),Qj({data:e,completed:c??[],deleted:a??[],archived:s??[],snoozed:o??[]}),tn(d.map((l=>l.tags)).flat()))}return p(oE({fetchState:"Error",error:t.status}))})),v((t=>p(oE({fetchState:"Error",error:f("Unexpected Error","Fetch Task List REST API call errored out"+JSON.stringify(t))})))))))),(n,i)=>n.pipe(S(Wj.match),y((r=>{const{cacheOverride:t,isTaskTemplatesEnabled:e}=r.payload,a=[],s=i.value;if(t===!0)a.push(Ct(),ne(),Me("taskManagerCandidate",!0),il(),hl()),e===!0&&a.push(yl());else{s.taskListState.fetchState!=="In-Progress"&&s.taskListState.hasValidState()===!1&&a.push(Ct()),s.classListState.hasValidState()===!1&&s.classListState.fetchState!=="In-Progress"&&a.push(ne());const o=s.userListViewState.userListByType.taskManagerCandidate;o.hasValidState()===!1&&o.fetchState!=="In-Progress"&&a.push(Me("taskManagerCandidate",!1)),s.tagViewState.hasValidState()===!1&&s.tagViewState.fetchState!=="In-Progress"&&a.push(il()),s.taskGroupViewState.hasValidState()===!1&&s.taskGroupViewState.fetchState!=="In-Progress"&&a.push(hl()),e===!0&&s.taskGroupTemplateViewState.hasValidState()===!1&&s.taskGroupTemplateViewState.fetchState!=="In-Progress"&&a.push(yl())}return j(_(a))}))),(n,i,r)=>n.pipe(S(uO.match),A((()=>{const t=JSON.stringify({is_filter_by_logged_in_user:!0,include_subtasks:!0});return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels/tasks-es-metrics?query=${encodeURIComponent(t)}`).pipe(y((e=>P(e)&&e.data!=null?p(pO(e.data.summary)):p(bm()))),v((()=>p(bm()))))}))),(n,i,r)=>n.pipe(S(cn.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/task_card`).pipe(y((t=>P(t)?p(eG(t.data)):p(cE(t.status)))),v((t=>p(cE(f("Unexpected Error","Tasks card REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(Xo.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/top_expenses`).pipe(y((t=>P(t)?p(W(t.data?.report.accounts??[],"top_expenses"),tG(t.data)):p(dE(t.status)))),v((t=>p(dE(f("Unexpected error","TopEx REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(aG.match),A((t=>{const{qboId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/${e}/activity`).pipe(y((a=>{if(P(a)&&a.data!=null&&a.data.activity!=null){const s=[];return a.data.users!=null&&a.data.users.length>0&&s.push(V({users:a.data.users,updateType:"merge"})),s.push(rG(a.data.activity)),s.push(nG({data:a.data.activity,qboId:e})),_(s)}return p(lE({fetchState:"Error",error:a.status,qboId:e}))})),v((a=>p(lE({qboId:e,fetchState:"Error",error:f("Unexpected Error","fetch transaction activity log REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(hE.match),y((t=>{const{transactionId:e,cacheOverride:a}=t.payload,s=De(e),o=[];if(a===!0){const d=Ot(i.value.transactionState,s);o.push(...(function(l,u){const m=[];return m.push(Yl(l)),u!=null&&(m.push(Hl(De(l))),SE(u).forEach((h=>{m.push(Yl(h)),m.push(Hl(De(h)))}))),m})(e,d))}const c=ee(i.value.transactionDetailState.transactionDetailById,s,void 0);if(a===!0||c==null||c.hasValidState()===!1&&c.fetchState!=="In-Progress"){const d=i.value.accountListState.byReportId.accountList;d.hasValidState()===!1&&d.fetchState!=="In-Progress"&&o.push(Te("accountList"));const l=i.value.classListState;l.hasValidState()===!1&&l.fetchState!=="In-Progress"&&o.push(ne());const u=i.value.projectListState;u.hasValidState()===!1&&u.fetchState!=="In-Progress"&&o.push(Pi()),o.push(Rs(e,"In-Progress"));const m={transaction_type:e.type},h=r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/${e.id}?query=${encodeURIComponent(JSON.stringify(m))}`).pipe(y((g=>{if(P(g)&&g.data?.transaction?.transaction_id!=null){const I=[],E=An(g.data.transaction),b={...g.data,vendors:g.data.vendors?.map((O=>({...O,vendor_id:O.qbo_id??O.vendor_id})))??[]};b.vendors.length>0&&I.push(le(b.vendors,"merge"));const T=De(E);return I.push(Ta(T,b.transaction)),I.push(Nn({transactionId:E,vendorId:b.vendors[0]?.vendor_id})),I.push(Rs(E,"Completed")),I.push(...(function(O,x){const U=[],k=yG(O),C=SE(k).filter((B=>(function(J,L){const R=De(J),q=L.transactionDetailState.transactionDetailById[R];return q!=null&&(q.hasValidState()===!0||q.fetchState==="In-Progress")})(B,x)===!1));return C.forEach((B=>U.push(hE(B,!1)))),C.length===0&&console.log("Phew all linked transactions are fetched or there are no linked transactions.."),U})(b.transaction,i.value)),b.vendors.length>0&&I.push(_n({vendorId:b.vendors[0].vendor_id,localData:QE(dr(b.vendors[0]))})),z0(b.transaction.transaction_type)!=null&&I.push(ut()),_(I)}return p(Rs(t.payload.transactionId,"Error",g.status))})),v((g=>(console.error(`REST API call errored out ${g}`),p(Rs(t.payload.transactionId,"Error",f("Unexpected Error",`REST API call errored out ${g}`)))))));return j(_(o),h)}return _(o)}))),(n,i,r)=>n.pipe(S(vG.match),y((t=>{const e=i.value,a=IG(t.payload.accountId,t.payload.accountType,t.payload.period),s=ee(e.transactionListState.byAccount.transactionListByAccountKey,a,void 0);if(t.payload.cacheOverride===!0||s==null||s.hasValidState()===!1){const o={start_date:X(t.payload.period.start),end_date:X(t.payload.period.end),sort_by:"transaction_date",sort_order:"desc",account_id:t.payload.accountId,account_type:t.payload.accountType,account_name:t.payload.accountName};t.payload.includeSubAccountTransactions===!1&&(o.include_sub_account_transactions=t.payload.includeSubAccountTransactions);const c=yn(t.payload.accountId);return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts/${c}/transactions?query=${encodeURIComponent(JSON.stringify(o))}`).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[];return l.push(xe(d.data.account.transactions,(u=>u.transaction_id))),l.push(bG(d.data)),_(l)}return p(gE(t.payload.accountId,t.payload.accountType,t.payload.period,d.status))})),v((d=>p(gE(t.payload.accountId,t.payload.accountType,t.payload.period,f("Unexpected Error","fetch transaction list REST API call errored out"+JSON.stringify(d)))))))}return _([])}))),(n,i,r)=>n.pipe(S(fE.match),y((t=>{const e=i.value,a=vE(t.payload.accountId,t.payload.accountType,t.payload.classId,t.payload.period),s=ee(e.transactionListState.byClass.transactionListByClassKey,a,void 0);if(t.payload.cacheOverride===!0||s==null||s.hasValidState()===!1){const o={start_date:X(t.payload.period.start),end_date:X(t.payload.period.end),sort_by:"create_time",sort_order:"desc",account_id:t.payload.accountId,account_type:t.payload.accountType,accounting_class_id:t.payload.classId,include_sub_class_transactions:!1},c=yn(t.payload.accountId);return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts/${c}/transactions?query=${encodeURIComponent(JSON.stringify(o))}`).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[];return l.push(xe(d.data.account.transactions,(u=>u.transaction_id))),l.push(EG(d.data)),_(l)}return p(IE(t.payload.accountId,t.payload.accountType,t.payload.classId,t.payload.period,d.status))})),v((d=>p(IE(t.payload.accountId,t.payload.accountType,t.payload.classId,t.payload.period,f("Unexpected Error","fetch transaction list REST API call errored out"+JSON.stringify(d)))))))}return _([])}))),(n,i,r)=>n.pipe(S(bE.match),y((t=>{const e=i.value,a=EE(t.payload.entity,t.payload.period),s=ee(e.transactionListState.byEntity.transactionListByEntityKey,a,void 0);if(t.payload.cacheOverride===!0||s==null||s.hasValidState()===!1){const o={start_date:X(t.payload.period.start),end_date:X(t.payload.period.end),sort_by:"create_time",sort_order:"desc",entity_id:t.payload.entity.id,entity_name:t.payload.entity.name,entity_type:t.payload.entity.type,is_fetch_all_transactions:t.payload.isFetchAllTransactions===!0?t.payload.isFetchAllTransactions:null};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions?query=${encodeURIComponent(JSON.stringify(o))}`).pipe(y((c=>{if(P(c)&&c.data!=null){const d=[];return d.push(xe(c.data.transactions,(l=>l.transaction_id))),d.push(TG(c.data)),_(d)}return p(TE(t.payload.entity,t.payload.period,c.status))})),v((c=>p(TE(t.payload.entity,t.payload.period,f("Unexpected Error","fetch transaction list REST API call errored out"+JSON.stringify(c)))))))}return _([])}))),(n,i,r)=>n.pipe(S(PE.match),y((t=>{const e=i.value,a=AE(t.payload.accountId,t.payload.accountType,t.payload.projectId,t.payload.period),s=ee(e.transactionListState.byProject.transactionListByProjectKey,a,void 0);if(t.payload.cacheOverride===!0||s==null||s.hasValidState()===!1){const o={start_date:X(t.payload.period.start),end_date:X(t.payload.period.end),sort_by:"create_time",sort_order:"desc",account_id:t.payload.accountId,account_type:t.payload.accountType,accounting_project_id:t.payload.projectId},c=yn(t.payload.accountId);return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts/${c}/transactions?query=${encodeURIComponent(JSON.stringify(o))}`).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[];return l.push(xe(d.data.account.transactions,(u=>u.transaction_id))),l.push(PG(d.data)),_(l)}return p(NE(t.payload.accountId,t.payload.accountType,t.payload.projectId,t.payload.period,d.status))})),v((d=>p(NE(t.payload.accountId,t.payload.accountType,t.payload.projectId,t.payload.period,f("Unexpected Error","fetch transaction list REST API call errored out"+JSON.stringify(d)))))))}return _([])}))),(n,i)=>n.pipe(S(JG.match),y((r=>{const{entity:t,screen:e,selectedPeriod:a,fiscalYearStartMonth:s}=r.payload,o=[];return o.push(UE(t,_a(a.timePeriod),!1,s)),o.push(wG(t,e,a)),_(o)}))),(n,i,r)=>n.pipe(S(OE.match),y((t=>{const e=i.value,{transactionCategoryType:a,period:s,cacheOverride:o,minimumTransactionAmount:c}=t.payload,d=CE(a,s),l=ee(e.transactionListState.byType[a].transactionListByCategoryType,d,void 0);if(o===!0||l==null||l.hasValidState()===!1){const u={start_date:X(s.start),end_date:X(s.end),sort_by:"transaction_date",sort_order:"desc"};return a==="missingReceipts"&&(u.is_attachment_missing_only=!0),a!=="miscategorizedExpense"&&a!=="miscategorizedIncome"||(u.type="miscategorized",u.account_type=a==="miscategorizedExpense"?"expenses":"income"),a!=="uncategorizedIncome"&&a!=="uncategorizedExpense"||(u.type="uncategorized",u.account_type=a==="uncategorizedExpense"?"expenses":"income"),c!=null&&(u.total_amount_min=c.amount),r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions?query=${encodeURIComponent(JSON.stringify(u))}`).pipe(y((m=>{if(P(m)&&m.data!=null){const h=[];return h.push(xe(m.data.transactions,(g=>g.transaction_id))),h.push(AG(a,s,m.data.transactions)),_(h)}return p(xE(a,s,m.status))})),v((m=>p(xE(a,s,f("Unexpected Error","fetch transaction list REST API call errored out"+JSON.stringify(m)))))))}return _([])}))),(n,i,r)=>n.pipe(S(tC.match),pa((t=>t.payload.kind)),y((t=>t.pipe(A((e=>{const{kind:a}=e.payload,s=VK[a],o=MK[a],c=`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts?query=${encodeURIComponent(JSON.stringify(s))}`;return r.getJSON(c).pipe(y((d=>{if(P(d)&&d.data!=null){const l=d.data.accounts.map((m=>m.account_id)),u=[W(d.data.accounts,o),aC({accountIds:l,kind:a})];return p(...u)}return p(Qm({kind:a}))})),v((()=>p(Qm({kind:a})))))})))))),(n,i,r)=>n.pipe(S(ev.match),A((t=>{const{cacheOverride:e,fetchOnlySummary:a}=t.payload,s=i.value,o=[];if(e===!0)o.push(jd()),o.push(Gd()),o.push(zd(!0)),o.push(Kd(!0)),o.push(Hd()),o.push(Yd(!0));else if(a!==!0){const c=s.treasuryStatementListState;c.hasValidState()===!1&&c.fetchState!=="In-Progress"&&o.push(zd(!1));const d=s.treasuryTaxLetterListState;d.hasValidState()===!1&&d.fetchState!=="In-Progress"&&o.push(Kd(!1));const l=s.treasuryDetailState;l.hasValidState()===!1&&l.fetchState!=="In-Progress"&&o.push(Hd());const u=l.transactionsState;u.fetchState!=="Completed"&&u.fetchState!=="In-Progress"&&o.push(Yd(!1,5));const m=s.treasurySetupViewState;m.treasuryFundsDetails.fetchStatus.fetchState!=="In-Progress"&&o.push(jd()),m.currentAllocation.fetchStatus.fetchState!=="In-Progress"&&o.push(Gd())}return r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account?query=${encodeURIComponent('{"is_summary":true}')}`).pipe(y((c=>P(c)?j(p(mq({data:c})),_(o)):j(p(ib({error:c.status})),_(o)))),v((c=>j(p(ib({error:f("Unexpected Error","Fetch treasury summary REST API call errored out "+JSON.stringify(c))})),_(o)))))}))),(n,i,r)=>n.pipe(S(jd.match),A((()=>r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury/funds`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=[fq(t.data)];return _(e)}return p(pb({error:t.status}))})),v((t=>p(pb({error:f("Unexpected Error","Fetch treasury funds REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(Hd.match),A((()=>r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account/balance/time-series`).pipe(y((t=>P(t)?p(yq({data:t})):p(cb({fetchState:"Error",error:t.status})))),v((t=>p(cb({fetchState:"Error",error:f("Unexpected Error","Fetch treasury account history REST API call errored out "+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(vq.match),A((t=>{const{companyId:e,cacheOverride:a,refreshViewInBackground:s}=t.payload,{treasurySetupViewState:o,plaidAccountViewState:c,companyState:d}=i.value,l=Ae(d,e)?.company;if(a===!0||s===!0||l==null||o.hasValidState()===!1&&o.fetchState!=="In-Progress")return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}?query={"view":"treasury_accounts_setup"}`).pipe(y((u=>{if(P(u)&&u.data!=null){const m=u.data.accounts?.map((g=>g.account_id)),h=[V({users:u.data.users}),H(u.data.user_roles),Q({payload:u.data.companies,schema:{}}),z(u.data.addresses??[]),he({files:u.data.files??[]}),W(u.data.accounts??[],"zeni_treasury"),ve(u.data.payment_accounts??[]),Wt({data:u.data.payment_accounts??[],updateType:"replace"}),Ze(u.data.deposit_accounts??[]),Zt({data:u.data?.deposit_accounts??[],updateType:"replace"}),Re({companyId:u.data.companies[0].company_id}),it(m,"treasury_setup"),mb()];return _(h)}return p(N({messageSection:"treasury_setup",messageText:"failed",type:"error"}),yb(u.status))})),v((u=>p(yb(f("Unexpected Error","Fetch Treasury Setup view errored out"+JSON.stringify(u)))))));{const{allBankAccountIds:u}=c.spend_management_setup.accountDetails;return p(Re({companyId:e}),it(u,"treasury_setup"),mb())}}))),(n,i,r)=>n.pipe(S(zd.match),y((t=>{const{cacheOverride:e}=t.payload,a=i.value.treasuryStatementListState.fetchState;if(e===!0||a!=="Completed"){const s={statement_type:"monthly_statement"},o=`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account/statements?query=${encodeURIComponent(JSON.stringify(s))}`;return r.getJSON(o).pipe(y((c=>P(c)?p(Eq({data:c.data?.statements??[]})):p(Qd({fetchState:"Error",error:c.status})))),v((c=>p(Qd({fetchState:"Error",error:f("Unexpected Error","Fetch treasury Account statement REST API call errored out "+JSON.stringify(c))})))))}return p(Qd({fetchState:"Completed",error:void 0}))}))),(n,i,r)=>n.pipe(S(Kd.match),y((t=>{const{cacheOverride:e}=t.payload,a=i.value.treasuryTaxLetterListState.fetchState;if(e===!0||a!=="Completed"){const s={statement_type:"tax_statement"},o=`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account/statements?query=${encodeURIComponent(JSON.stringify(s))}`;return r.getJSON(o).pipe(y((c=>P(c)?p(Tq({data:c.data?.statements??[]})):p(Wd({fetchState:"Error",error:c.status})))),v((c=>p(Wd({fetchState:"Error",error:f("Unexpected Error","Fetch treasury tax letter REST API call errored out "+JSON.stringify(c))})))))}return p(Wd({fetchState:"Completed",error:void 0}))}))),(n,i,r)=>n.pipe(S(Yd.match),A((t=>{const{cacheOverride:e}=t.payload,a={start_date:"2022-01-01",end_date:"2030-12-31"};return e===!0?r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account/transactions?query=${encodeURIComponent(JSON.stringify(a))}`).pipe(y((s=>P(s)?p(_q({transactionList:s.data?.transactions??[]})):p(db({error:s.status})))),v((s=>p(db({error:f("Unexpected Error","Fetch treasury transactions REST API call errored out"+JSON.stringify(s))}))))):_([])}))),(n,i)=>n.pipe(S(Mo.match),y((r=>{const{entity:t}=r.payload;return t.type==="customer"?p(BE(t.id,t.name)):t.type==="vendor"?p(kE(t.id,t.name,t.zeniId)):_([])}))),(n,i,r)=>n.pipe(S(Wp.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user/self`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=[wN()];return t.data.users.length>0&&e.push(V({users:t.data.users})),_(e)}return p(Zp(t.status))})),v((t=>p(Zp(f("Unexpected error","Unable to fetch user details"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(Ad.match),A((t=>{const{userId:e,reimbursementId:a}=t.payload;return r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/users/${e}/financial-accounts`).pipe(y((s=>{if(P(s)&&s.data!=null){const o=[],c=UY(s.data.bank_accounts)?.bank_account_id;return o.push(we(s.data.bank_accounts),$G({userFinancialAccount:s.data}),ve(s.data.payment_accounts)),a==null&&o.push(or({bankAccountId:c,shouldOverWriteCurrentBankAccountId:!1})),_(o)}return p(DE({status:s.status,userId:e}))})),v((s=>p(DE({userId:e,status:f("Unexpected Error","Fetch User Financial Account REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(Me.match),y((t=>{const{userType:e,cacheOverride:a}=t.payload,s=i.value,o=s.userListViewState.userListByType[e],c=Y(s),d=RG(c);if(a===!0||a===!1&&o.hasValidState()===!1){let l=`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/users`;const u=kY(e,d);return l+=`?query=${encodeURIComponent(JSON.stringify(u))}`,r.getJSON(l).pipe(y((m=>{if(P(m)){const h=[V({users:m.data?.users??[]}),H(m.data?.user_roles??[]),Yf({userType:e,usersPayload:m.data?.users??[]})];return m.data?.user_groups!=null&&(h.push(fm({userGroups:m.data.user_groups})),e==="taskManagerCandidate"&&h.push(MG({userGroupType:e,userGroupsPayload:m.data.user_groups}))),e==="cardHolderCandidate"&&(h.push(TI(m.data?.cards_count_by_user_id??[])),h.push(PI(m.data?.debit_cards_count_by_deposit_account_id??{})),h.push(z(m.data?.addresses??[]))),j(_(h))}return p(JE({userType:e,status:m.status}))})),v((m=>p(JE({userType:e,status:f("Unexpected error","User REST API call errored out"+JSON.stringify(m))})))))}return _([])}))),(n,i,r)=>n.pipe(S(VG.match),A((t=>{const{cacheOverride:e}=t.payload;return e===!0?r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user-roles/config`).pipe(y((a=>P(a)?_([LG(a),FG({countryListKey:"nationalityCountryList",countryListPayload:a.data?.nationality??[]})]):p(wE(a.status)))),v((a=>p(wE(f("Unexpected Error","Fetch user-roles config REST API call errored out"+JSON.stringify(a))))))):[]}))),(n,i,r)=>n.pipe(S(yo.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/1099-config`).pipe(y((t=>P(t)?p(qG(t)):p($E(t.status)))),v((t=>p($E(f("Unexpected Error","Fetch vendor 1099 types REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(s1.match),y((r=>{const t=[],{vendorId:e,cacheOverride:a}=r.payload,s=i.value;let o=s.editBillDetailViewState.newBillState;if(r.payload.billId!=null){const c=Oe(r.payload.billId);o=s.editBillDetailViewState.editBillStateById[c]}if(e!=null){const c=Ce(s.vendorState,e);c!=null&&a===!1?(c.vendorCurrencyCode==null||$o(c.vendorCurrencyCode)||t.push(ga(!0,{amount:o.billDetailLocalData.totalAmount?.amount??0,currencyCode:c.vendorCurrencyCode??"USD",currencySymbol:c.vendorCurrencySymbol??"$"},"USD",r.payload.billId)),t.push(mt({billDetailLocalData:Gl(s,o,c),billId:r.payload.billId})),t.push(na(c.qboId,!1))):t.push(fn(e),Bv(e,r.payload.billId))}else t.push(mt({billDetailLocalData:Gl(s,o),billId:r.payload.billId}));return _(t)}))),(n,i)=>n.pipe(S(o1.match),y((r=>{const t=[],{invoiceProcessingPayload:e,isVendorRecommendationFeatureEnabled:a,billId:s}=r.payload,o=e.vendors.length>0?e.vendors[0].vendor_name??"":"",c=Mc(i.value);return c.vendors.map((d=>d.name.toLowerCase())).includes(o.toLowerCase())===!0||o.length===0?t.push(Vc(e,a,s)):c.fetchStateBillsTab.fetchState!=="In-Progress"&&t.push(Rt({searchString:o,billId:s}),Dv(e,a,s)),_(t)}))),(n,i)=>n.pipe(S(CN.match),A((r=>{const t=[],e=i.value;if(r.payload.cacheOverride===!0)t.push(Te("accountList",!0)),t.push(ne()),t.push(Qe()),t.push(ut()),r.payload.vendorId!=null?t.push(fn(r.payload.vendorId,!1,r.payload.signal)):t.push(Rt({}));else{const a=i.value.accountListState.byReportId.accountList;a.hasValidState()===!1&&a.fetchState!=="In-Progress"&&t.push(Te("accountList",!0));const s=i.value.classListState;if(s.hasValidState()===!1&&s.fetchState!=="In-Progress"&&t.push(ne()),e.vendorTypeListState.hasValidState()===!1&&e.vendorTypeListState.fetchState!=="In-Progress"&&t.push(Qe()),e.ownerListState.fetchState!=="In-Progress"&&e.ownerListState.hasValidState()===!1&&t.push(ut()),r.payload.vendorId!=null){const o=i.value.vendorViewState.editVendorStateById[r.payload.vendorId].fetchStatus;o.fetchState!=="Completed"&&o.fetchState!=="In-Progress"&&t.push(fn(r.payload.vendorId,!1,r.payload.signal))}else{const o=i.value.vendorListState;(o.fetchStateBillsTab.fetchState!=="Completed"&&o.fetchStateBillsTab.fetchState!=="In-Progress"||o.allVendorIdsBillsTab.length===0)&&t.push(Rt({}))}}return j(_(t))}))),(n,i,r)=>n.pipe(S(fn.match),A((t=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${t.payload.vendorId}`,{},t.payload.signal).pipe(y((e=>{if(P(e)){const a=e.data?.vendors[0],s=a?.contacts??[],o=pt(e.data?.vendors??[]),c=a?.bank_accounts??[],d=a?.payment_instruments??[],l=a?.account!=null?[a?.account]:[],u=a?.accounting_class!=null?[a?.accounting_class]:[],m=[le(e.data?.vendors??[]),W(l,"account_list"),He("class_list",u),St(s),z(o),we(c),ya(d),he({files:a?.documents??[]}),Kp({vendorId:t.payload.vendorId,isCreatable:t.payload.isCreatable}),vn(t.payload.vendorId)];return a!=null&&m.push(cr({vendorId:t.payload.vendorId,localData:Ls(dr(a),i.value,a),isCreatable:t.payload.isCreatable})),m.push(wo("Completed",t.payload.vendorId,void 0,t.payload.isCreatable)),m.push(Hp()),_(m)}return p(wo("Error",t.payload.vendorId,e.status,t.payload.isCreatable))})),v((e=>p(wo("Error",t.payload.vendorId,f("Unexpected Error","Fetch vendor REST API call errored out: "+JSON.stringify(e)),t.payload.isCreatable)))))))),(n,i,r)=>n.pipe(S(ez.match),A((t=>{const{attachmentIds:e,vendorId:a}=t.payload;let s=`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${a}/attachments`;return s+=`?query=${encodeURIComponent(JSON.stringify({attachment_ids:e}))}`,r.getJSON(s).pipe(A((c=>{if(P(c)&&c.data!=null){const d=[];return d.push(tz({vendorId:a,transactionAttachments:c.data.transaction_attachments})),d}return p(VE({status:c.status}))})),v((c=>p(VE({status:f("Unexpected Error","Fetch Vendor First Review View REST API call errored out"+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(az.match),A((t=>{let e=`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors`;const{searchString:a,keepExistingListItems:s,pageToken:o}=t.payload,{uiState:c}=i.value.vendorFirstReviewViewState,d=c.sortOrder==="ascending"?"asc":c.sortOrder==="descending"?"desc":null,l={view:"merchant_review_list",page_token:o,sort_by:DY(c.sortKey),sort_order:d??null,search_text:a??null};return e+=`?query=${encodeURIComponent(JSON.stringify(l))}`,r.getJSON(e).pipe(A((u=>{if(P(u)&&u.data!=null){const m=[];return m.push(le(Hs(u.data.vendors)),V({users:Ys(u.data.vendors),updateType:"merge"}),Et({globalMerchants:Qs(u.data.vendors)}),rz({response:u.data,keepExistingListItems:s})),m}return p(LE({status:u.status}))})),v((u=>p(LE({status:f("Unexpected Error","Fetch Vendor First Review View REST API call errored out"+JSON.stringify(u))})))))}))),(n,i,r)=>n.pipe(S(uz.match),A((t=>{const{keepExistingListItems:e}=t.payload,{uiState:a}=i.value.vendorGlobalReviewViewState,{searchText:s,sortOrder:o,pageToken:c,limit:d}=a,l=o==="ascending"?"asc":o==="descending"?"desc":null,u={page_token:c,sort_by:FY(a.sortKey),sort_order:l,search_text:s,limit:d??null};return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/reviews/global-merchant-list?query=${encodeURIComponent(JSON.stringify(u))}`).pipe(A((m=>{if(P(m)&&m.data!=null){const h=[];return h.push(V({users:VY(m.data.merchants),updateType:"merge"}),pz({tenantMerchants:m.data.merchants}),Et({globalMerchants:LY(m.data.merchants)}),mz({globalMerchantsPayload:m.data.merchants,keepExistingListItems:e}),yz(m.data.query,m.data.total_count)),h}return p(jE({status:m.status}))})),v((m=>p(jE({status:f("Unexpected Error","Fetch Vendor Global Review View REST API call errored out"+JSON.stringify(m))})))))}))),(n,i)=>n.pipe(S(jG.match),A((r=>{const t=i.value,e=[];return r.payload.cacheOverride,t.vendor1099TypeListState.hasValidState()===!1&&t.vendor1099TypeListState.fetchState!=="In-Progress"&&e.push(yo()),e.push(Au()),e.push(fl()),j(_(e))}))),(n,i,r)=>n.pipe(S(GG.match),A((t=>{const e={type_1099:t.payload.type1099,report_id:"vendor_1099"},a=`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendor-1099/download?query=${encodeURIComponent(JSON.stringify(e))}`;return r.getJSON(a).pipe(A((s=>{if(P(s)&&s.data!=null){const o=[];return o.push(vl({response:s.data,downloadState:{fetchState:"Completed",error:void 0}})),o}return p(vl({response:RE.vendorFiling1099DownloadData,downloadState:{fetchState:"Error"}}))})),v((s=>p(vl({response:RE.vendorFiling1099DownloadData,downloadState:{fetchState:"Error",error:{code:500,message:"Fetch vendors 1099 Download REST API call errored out"+JSON.stringify(s)}}})))))}))),(n,i,r)=>n.pipe(S(fl.match),A((()=>{const t=`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/vendor_1099`;return r.getJSON(t).pipe(A((e=>{if(P(e)&&e.data!=null){const a=[];return a.push(...(function(s){const o=[],c=pt(s);return o.push(le(s,"merge"),z(c)),o})(e.data.report.vendors??[]),zG({response:e})),a.push(Qe()),a}return p(ME({status:e.status}))})),v((e=>p(ME({status:f("Unexpected Error","Fetch vendors 1099 list REST API call errored out"+JSON.stringify(e))})))))}))),(n,i,r)=>n.pipe(S(Rt.match),A((t=>{let e=`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors`;const{searchString:a,keepExistingListItems:s,view:o,pageToken:c,billId:d}=t.payload,{uiState:l}=i.value.vendorListState,u={view:BY(o),page_token:c,sort_by:l.sortKey,sort_order:l.sortOrder==="ascending"?"asc":l.sortOrder==="descending"?"desc":void 0,search_text:a,vendor_name:a};return e+=`?query=${encodeURIComponent(JSON.stringify(u))}`,r.getJSON(e).pipe(A((m=>{if(P(m)){const h=[];return m.data?.vendors?.[0]?.vendor_id!=null&&o==null&&h.push(QG({vendorId:m.data?.vendors?.[0].vendor_id,billId:d})),h.push(...(function(g,I){const E=[],b=g.length>0?WG(g):[],T=pt(g),O=g.length>0?En(g):[],x=g.length>0?ZG(g):[],U=g.filter((J=>J.account!=null)).map((J=>J.account)),k=g.filter((J=>J.accounting_class!=null)).map((J=>J.accounting_class)),C=g.filter((J=>J.owner!=null)).map((J=>J.owner)),B=g.length>0?XG(g):[];return E.push(le(g,I==="vendorsTab"?"merge":"replace"),W(U,"account_list"),He("class_list",k),St(b),z(T),we(O),ya(x),he({files:B}),V({users:C,updateType:"merge"})),E})(m.data?.vendors??[],o),Oc({response:m,keepExistingListItems:s,searchString:a??"",view:o})),h}return p(Lc({status:m.status,view:o}))})),v((m=>p(Lc({status:f("Unexpected Error","Fetch vendors list REST API call errored out"+JSON.stringify(m)),view:o})))))}))),(n,i)=>n.pipe(S(RN.match),A((r=>{const{vendorId:t,entity:e,cacheOverride:a}=r.payload,s=[];if(a===!0)s.push(Ro(t,!1),Mo(e),Qe());else{const o=i.value,c=o.vendorViewState.editVendorStateById[t]?.fetchStatus??{fetchState:"Not-Started"};o.vendorTypeListState.hasValidState()===!1&&o.vendorTypeListState.fetchState!=="In-Progress"&&s.push(Qe()),!(c.fetchState==="Completed"||c.fetchState==="In-Progress")&&s.push(Ro(t,!1)),s.push(Mo(e))}return _(s)}))),(n,i)=>n.pipe(S(Ro.match),A((r=>{const t=[],e=i.value;if(r.payload.cacheOverride===!0)t.push(Te("accountList",!0)),t.push(ne()),t.push(Qe()),t.push(ut()),r.payload.vendorId!=null?t.push(Vo(r.payload.vendorId)):t.push(Rt({}));else{const a=i.value.accountListState.byReportId.accountList;a.hasValidState()===!1&&a.fetchState!=="In-Progress"&&t.push(Te("accountList",!0));const s=i.value.classListState;s.hasValidState()===!1&&s.fetchState!=="In-Progress"&&t.push(ne()),e.ownerListState.fetchState!=="In-Progress"&&e.ownerListState.hasValidState()===!1&&t.push(ut());const o=i.value.vendorsTabVendorViewState.vendorStateById[r.payload.vendorId].fetchStatus;o.fetchState!=="Completed"&&o.fetchState!=="In-Progress"&&t.push(Vo(r.payload.vendorId))}return j(_(t))}))),(n,i,r)=>n.pipe(S(Vo.match),A((t=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${t.payload.vendorId}`).pipe(y((e=>{if(P(e)){const a=e.data?.vendors[0],s=a?.contacts??[],o=pt(e.data?.vendors??[]),c=En(e.data?.vendors??[]),d=a?.account!=null?[a?.account]:[],l=a?.accounting_class!=null?[a?.accounting_class]:[],u=[le(e.data?.vendors??[]),W(d,"account_list"),He("class_list",l),St(s),z(o),we(c),he({files:a?.documents??[]}),Lo("Completed",t.payload.vendorId,void 0),MN({vendorId:t.payload.vendorId}),vn(t.payload.vendorId)];return a!=null&&u.push(Xp({vendorId:t.payload.vendorId,localData:em(dr(a),i.value,a)})),_(u)}return p(Lo("Error",t.payload.vendorId,e.status))})),v((e=>p(Lo("Error",t.payload.vendorId,f("Unexpected Error","Fetch vendors tab REST API call errored out"+JSON.stringify(e)))))))))),(n,i)=>n.pipe(S(Sz.match),A((r=>{const{shouldFetchAccruedExpenses:t,shouldFetchFixedAssets:e,shouldFetchOpexByVendor:a,shouldFetchPrepaidExpenses:s,shouldFetchVendorsList:o,shouldFetchFiling1099Vendor:c}=r.payload,d=i.value,l=[],u=gz(d),m=Nl(d,"fixed_assets"),h=Nl(d,"prepaid_expenses"),g=Nl(d,"accrued_expenses"),I=fz(d).fetchState,E=Mc(d,"vendorsTab").fetchState;t===!0&&u==="Completed"&&g!=="In-Progress"&&g!=="Completed"&&l.push(Bf("accrued_expenses",{selectedTimeframe:ys("accrued_expenses"),selectedCategoryId:"all"}));const b=vz(d).fetchState;return e===!0&&u==="Completed"&&m!=="In-Progress"&&m!=="Completed"&&l.push(gc("fixed_assets",{selectedTimeframe:ys("fixed_assets"),selectedCategoryId:"all"})),s===!0&&u==="Completed"&&h!=="In-Progress"&&h!=="Completed"&&l.push(gc("prepaid_expenses",{selectedTimeframe:ys("prepaid_expenses"),selectedCategoryId:"all"})),a&&I!=="In-Progress"&&I!=="Completed"&&l.push(Ag()),o&&E!=="In-Progress"&&E!=="Completed"&&l.push(Rt({searchString:"",keepExistingListItems:!1,view:"vendorsTab"})),c&&b!=="In-Progress"&&b!=="Completed"&&l.push(fl()),_(l)}))),(n,i,r)=>n.pipe(S(Qe.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendor/config`).pipe(y((t=>P(t)?p(Iz(t)):p(GE(t.status)))),v((t=>p(GE(f("Unexpected Error","Fetch vendor types REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(qq.match),y((r=>{const{cacheOverride:t}=r.payload,e=[],a=i.value;if(t===!0)e.push(Be()),e.push(ze()),e.push(ta());else{const s=a.depositAccountListState,o=a.zeniAccountListState;(s.hasValidState()===!1&&s.fetchState!=="In-Progress"||o.summary==null)&&e.push(Be());const c=a.paymentAccountListState;c.hasValidState()===!1&&c.fetchState!=="In-Progress"&&e.push(ze());const d=a.zeniAccountsConfigState;d.hasValidState()===!1&&d.fetchState!=="In-Progress"&&e.push(ta())}return j(_(e))}))),(n,i,r)=>n.pipe(S(ta.match),A((()=>r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/baas/config`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=[z([t.data.mailing_address,t.data.bank_address]),Kq(t.data)];return _(e)}return p(Ob({error:t.status}))})),v((t=>p(Ob({error:f("Unexpected Error","Fetch Zeni Accounts config REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(zq.match),A((t=>{const{companyId:e,cacheOverride:a,refreshViewInBackground:s}=t.payload,{zeniAccountSetupViewState:o,plaidAccountViewState:c,companyState:d}=i.value,l=Ae(d,e)?.company;if(a===!0||s===!0||l==null||o.hasValidState()===!1&&o.fetchState!=="In-Progress")return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}?query={"view":"deposit_accounts_setup"}`).pipe(y((u=>{if(P(u)&&u.data!=null){const m=u.data.accounts?.map((g=>g.account_id)),h=[V({users:u.data.users}),H(u.data.user_roles),Q({payload:u.data.companies,schema:{}}),z(u.data.addresses??[]),he({files:u.data.files??[]}),W(u.data.accounts??[],"zeni_accounts"),ve(u.data.payment_accounts),Wt({data:u.data.payment_accounts,updateType:"replace"}),Ze(u.data.deposit_accounts??[]),Zt({data:u.data?.deposit_accounts??[],updateType:"replace"}),Re({companyId:u.data.companies[0].company_id}),it(m,"account_setup"),Ab()];return _(h)}return p(N({messageSection:"zeni_accounts_setup",messageText:"failed",type:"error"}),Nb(u.status))})),v((u=>p(Nb(f("Unexpected Error","Fetch Zeni Account Setup view errored out"+JSON.stringify(u)))))));{const{allBankAccountIds:u}=c.spend_management_setup.accountDetails;return p(Re({companyId:e}),it(u,"account_setup"),Ab())}}))),(n,i,r)=>n.pipe(S(Ds.match),y((t=>{const{depositAccountId:e}=t.payload,a=e==="zeni-clearing-account"?`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/zeni-clearing-account/statements`:`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts/${e}/statements`;return r.getJSON(a).pipe(y((s=>P(s)?p(bz({depositAccountId:e,data:s.data?.statements??[]})):p(zE({depositAccountId:e,fetchState:"Error",error:s.status})))),v((s=>p(zE({depositAccountId:e,fetchState:"Error",error:f("Unexpected Error","Fetch deposit Account satement REST API call errored out"+JSON.stringify(s))})))))}))),(n,i)=>n.pipe(S(Ez.match),y((r=>{const{cacheOverride:t,depositAccountId:e}=r.payload,a=[],s=i.value;if(t===!0)a.push(Ds(e)),e!==KE&&a.push(Qr(e));else{if(e!==KE){const c=s.zeniAccountDetailState.depositAccountDetailById[e];(c==null||c.hasValidState()===!1&&c.fetchState!=="In-Progress")&&a.push(Qr(e))}const o=s.zeniAccStatementListState.byDepositId[e];(o==null||o.hasValidState()===!1&&o.fetchState!=="In-Progress")&&a.push(Ds(e))}return j(_(a))}))),(n,i,r)=>n.pipe(S(Ge.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/users/zeni-users`).pipe(y((t=>{if(P(t)&&t.data!=null){const e=t.data.users.map((s=>s.user_id)),a=[V({users:t.data.users}),FO(e)];return _(a)}return p(zm(t.status))})),v((t=>p(zm(f("Unexpected error","Unable to fetch zeni users"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(CJ.match),y((t=>{const{companyEmailDomain:e}=t.payload;return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/email-groups?query=${encodeURIComponent(JSON.stringify({company_email_domain:e.toLowerCase()}))}`).pipe(y((a=>{if(P(a)&&a.data!=null){const s=[xJ(a.data)];return _(s)}return p(YS(a.status))})),v((a=>p(YS(f("Unexpected error","Email Group REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(Dw.match),A((t=>{const{linkTokenType:e,paymentAccountId:a}=t.payload;return r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/plaid/link-token?query=${JSON.stringify(A0(e,a))}`).pipe(y((s=>{if(P(s)&&s.data!=null){const o=[Jw(s.data.link_token,s.data.expiration,e)];return _(o)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),Eg(s.status,e))})),v((s=>p(Eg(f("Unexpected Error","Get Onboarding Plaid Link Token errored out"+JSON.stringify(s)),e)))))}))),(n,i,r)=>n.pipe(S(vc.match),A((t=>{const{setupViewType:e,includeBalances:a,plaidAccountKeyType:s}=t.payload;let o={is_include_balances:a,is_primary_for_onboarding:!1,is_primary_for_bill_pay:!0};return e==="billing"&&s==="billing_setup"&&(o={is_primary_for_onboarding:!0}),r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-accounts?query=${encodeURIComponent(JSON.stringify(o))}`).pipe(y((c=>{if(P(c)&&c.data!=null){const d=c.data.payment_accounts.map((u=>u.payment_account_id)),l=[W(c.data.accounts,wa(e)),ve(c.data.payment_accounts),rF(d,s)];return _(l)}return p(CI(c.status,s))})),v((c=>p(CI(f("Unexpected Error","Get Payment Accounts errored out"+JSON.stringify(c)),s)))))}))),(n,i,r)=>n.pipe(S(kw.match),y((t=>{const{linkTokenType:e,paymentAccountId:a,plaidAccountKeyType:s}=t.payload;return r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/plaid/link-token?query=${JSON.stringify(A0(e,a))}`).pipe(y((o=>{if(P(o)&&o.data!=null){const c=[Bw(o.data.link_token,o.data.expiration,e,s)];return _(c)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),bg(o.status,e,s))})),v((o=>p(bg(f("Unexpected Error","Get Plaid Link Token errored out"+JSON.stringify(o)),e,s)))))}))),(n,i,r)=>n.pipe(S(Mx.match),y((t=>{const e=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:a}}=e,{scheduleType:s,jeScheduleTransactionKey:o,reason:c,note:d}=t.payload,l=Y(e),u=a[l.tenantId],m=[],h=bt(o,e),g=((b,T,O)=>{const{vendorState:x}=O,{vendor:U,currencyCode:k,currencySymbol:C,baseTransaction:B,status:J,balanceAsOfToday:L,period:R,startDate:q,endDate:$,jeCredit:D,jeDebit:w}=T,K=U.id,G=x.vendorByID[K];return{scheduled_journal_entries:[],je_schedules:[{status:J,vendor:Jx(G),currency_code:k,currency_symbol:C,period:R??null,je_schedule_type:b,posting_date:null,balance:aH(B,L),start_date:q?.format(re)??null,end_date:$?.format(re)??null,je_credit_accounting_class_id:D?.accountingClass?.classId??null,je_credit_account_id:D?.account?.accountId??null,je_debit_accounting_class_id:w?.accountingClass?.classId??null,je_debit_account_id:w?.account?.accountId??null,other_attributes:{},base_transaction:Dx(B),is_reviewed:!0}]}})(s,h,e),I={...g,je_schedules:g.je_schedules.map(((b,T)=>T===0?{...b,feedback:{reason:c,...d!=null&&d!==""?{note:d}:{}}}:b))},E={je_schedule_type:s};return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/ignore/${h.jeScheduleId}?query=${encodeURIComponent(JSON.stringify(E))}`,I).pipe(y((b=>{if(P(b)&&b.data!=null)return m.push(yt(b.data.je_schedules),It(b.data.je_schedules,b.data.scheduled_journal_entries),Vx(o),Hy(o,u),nt({tenantId:l.tenantId,period:u,refreshViewInBackground:!0}),N({messageSection:"ignore_schedule",messageText:"success",type:"success"})),_(m);{const T=[];return T.push(Yy({status:b.status,jeScheduleTransactionKey:o})),T.push(N({messageSection:"ignore_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:b.status.message}]})),_(T)}})),v((b=>{const T=[];return T.push(Yy({status:f("Unexpected Error","ignore JE schedules REST API call errored out"+JSON.stringify(b)),jeScheduleTransactionKey:o})),T.push(N({messageSection:"ignore_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(b)}]})),_(T)})))}))),(n,i,r)=>n.pipe(S(tO.match),A((t=>{const{companyId:e,tenantId:a}=t.payload,s=i.value.companyState.companiesById[e],o=a??s.companyInfo.tenantId;return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/ai-text-assist/emails/month-end`,{text:t.payload.text},{...!!o&&{"zeni-tenant-id":o}}).pipe(y((c=>{if(c.data?.text!=null){const{text:d}=c.data;return p(aO(d,e))}return p(ym(f("Unexpected error","Ai-text-assist REST API call errored out"+JSON.stringify(c.status)),e))})),v((c=>p(ym(f("Unexpected error","Ai-text-assist REST API call errored out"+JSON.stringify(c)),e)))))}))),(n,i,r)=>n.pipe(S(wC.match),y((t=>{const{accountId:e}=t.payload,a=i.value,s=Y(a),o=a.expenseAutomationViewState.selectedPeriodByTenantId[s.tenantId],c=tt(a.accountState,e,"excluded_account_reconciliation"),d=Je(o,!0),l=JSON.stringify({start_date:d.start,end_date:d.end}),u=`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/excluded-accounts/${e}?query=${encodeURIComponent(l)}`;return r.deleteAndGetJSON(u).pipe(y((m=>{if(P(m)&&m.data!=null){const h=m.data.reconciliation,g=kn("excluded_account_reconciliation",h.account_id),I=kn("account_reconciliation",h.account_id);return p(oi(o,[h]),$C({reconciliation:h,selectedPeriod:o}),uy({oldKey:g,newKey:I}),N({messageSection:"account_included_in_reconciliation",messageText:"success",type:"success",variables:[{variableName:"_account-name_",variableValue:c?.accountName??""}]}))}return p(fy({error:m.status}),N({messageSection:"account_included_in_reconciliation",messageText:"failed",type:"error"}))})),v((m=>p(fy({error:f("Unexpected Error",`Include account in reconciliation REST API call errored out ${JSON.stringify(m)}`)}),N({messageSection:"account_included_in_reconciliation",messageText:"failed",type:"error"})))))}))),(n,i,r,t=lK)=>n.pipe(S(eP.match),pa((e=>e.payload.provider)),y((e=>e.pipe(A((a=>r.postAndGetJSON(`${r.apiEndPoints.authMicroServiceBaseUrl}/1.0/connectors/email/${a.payload.provider}/init`,{redirect_after_url:a.payload.redirectAfterUrl},{"zeni-tenant-id":a.payload.tenantId}).pipe(y((s=>{if(P(s)&&s.data!=null)return t(s.data.authorization_url),_([tP(a.payload.tenantId,a.payload.provider,s.data.authorization_url)]);const o=s.status??f(`Failed to start ${a.payload.provider} connection. Please try again.`);return _([Su(a.payload.tenantId,a.payload.provider,o)])})),v((s=>{const o=s instanceof Error?s.message:`Unexpected error starting ${a.payload.provider} connection.`;return _([Su(a.payload.tenantId,a.payload.provider,f(o))])}))))))))),(n,i)=>n.pipe(S(gy.match),y((()=>{const r=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:t},expenseAutomationReconciliationViewState:{selectedAccountId:e}}=r,a=t[Y(r).tenantId],s=[];if(e!=null){const o=Na(r,e,a),c=o?.transactionsToReconcile?.filter((u=>u.isTransactionChecked)),d=c?.map((u=>u.id))??[];s.push(Ir({selectedTransactionIds:d}));const l=FK(o?.transactionsToReview??[]);s.push(hy(l))}return _(s)}))),n=>n.pipe(S(Au.match),y((()=>{const i=[];return i.push(Tu()),i.push(bu()),i.push(yo()),_(i)}))),n=>n.pipe(S(By.match),y((()=>{const i=[];return i.push(Cy()),i.push(Uy()),_(i)}))),(n,i)=>n.pipe(S(GM.match),y((r=>{const{approvalRuleId:t}=r.payload,e=[];if(t!=null){const a=vv(i.value.approvalRuleState,t);if(a!=null){const s={approvalRuleId:t,steps:a.steps,criteria:{amount:Ev(a.criteria),vendor:bv(a.criteria),department:Iv(a.criteria)},name:a.name,description:a.description,separationOfDuties:a.separationOfDuties};e.push(Tv(),Pv(s))}}else{const a={steps:[],criteria:{}};e.push(Tv(),Pv(a))}return _(e)}))),(n,i)=>n.pipe(S($c.match),y((r=>{const{billId:t}=r.payload,e=i.value,a=Oe(t),s=ee(e.editBillDetailViewState.editBillStateById,a,void 0),o=ee(e.billDetailViewState.billDetailById,a,void 0),c=ee(e.billTransactionState.transactionById,t,void 0),{accountListState:d,accountState:l,classListState:u,classState:m,recurringBillState:h}=e,g=mT(l,d,"billPayAccountList"),I=sr(m,u),E=c?.recommendations;if(o!=null&&c!=null&&(s?.billDetailLocalData.vendor==null||c.lines!=null&&c.lines.length>0&&Object.keys(s?.billDetailLocalData.updatesByLineId??{}).length===0)){let b=i1(e.vendorState,c.vendor?.id??"");if(b==null){const pe=e.editBillDetailViewState.newBillState.suggestedVendorIdFromParsedInvoice;if(pe!=null){const be=Ce(e.vendorState,pe);(be?.matchScore??0)>85&&(b=be)}}const{tenantState:T,companyState:O}=e,{currentTenantId:x}=T,U=x!=null?T.tenantsById?.[x]?.companyId:void 0,k=Ae(O,U??""),C=k?.company.companyInfo.bookCloseDate,B={invoiceNumber:c.documentId,billDueDate:c.dueDate!=null&&c.date!=null?yT(c.billPayInfo.stage.code,c.dueDate,c.date,C):c.dueDate,invoiceDate:Wl(c.billPayInfo.stage.code,c.date,C),memo:c.memo,currencyCode:c.amount.currencyCode,recipientCurrencyCode:c.recipientTotalAmount.currencyCode,isInvoiceDateAutoUpdated:c.billPayInfo.stage.code==="draft"&&c.date!=null&&C!=null&&c.date.isBefore(C)},J={};c.lines?.forEach((pe=>{J[pe.id]={...pe,...CT(pe.id,pe,E,g,I,b)}}));const L=k?.company.companyBillPayInfo.payNowCutOffTimeByMethod.ach,R=L!=null&&me().isSameOrBefore(L),q=c.billPayInfo.paymentDate??te(oo(me().toDate(),[0,6],R?0:1).toISOString()),$={paymentType:c1(e.billPayConfigState,c.billPayInfo.fromAccount.billAccountType,c.billPayInfo.billPaymentMethodType,c.billPayInfo.internationalTransferFeeBearerPaymentMethod),paymentDate:q,withdrawFrom:_T(e,c.billPayInfo.fromAccount.billAccountId??"",c.billPayInfo.fromAccount.billAccountType??"",U),paymentTo:c.billPayInfo.toAccount.billAccountId!=null&&c.billPayInfo.toAccount.billAccountId.length>0?c.billPayInfo.toAccount.billAccountId:void 0,internationalTransferFeeBearerPaymentMethod:c.billPayInfo.internationalTransferFeeBearerPaymentMethod},D=c.amount,w=c.recipientTotalAmount,K=c.billPayInfo.isCancelled,G=c.attachments?.[0],Z=c.candidateVendorName,de=c.billPayInfo.toAccountVendorEmail,ue=c.billPayInfo.isCollectToAccountInfoFromVendorContact,ae=c.isRecurring;let ye,_e;if(ae){const{recurringConfigLocalData:pe,recurringBillInstancesLocalData:be}=d1(h,c);ye=pe,_e=be}const Le=nu(c.billPayInfo.billPaymentMethodType.code)?{paymentMode:c.billPayInfo.outsideZeniTransactionPaymentMode,paymentDate:c.billPayInfo.paymentDate}:void 0,Ne=[mt({billDetailLocalData:{showVendorGptRecommendationText:!1,vendor:b,whatForSection:B,updatesByLineId:J,paymentDetailsSection:$,totalAmount:D,recipientTotalAmount:w,isCancelled:K,file:G,candidateVendorname:Z,toAccountVendorEmail:de,isCollectToAccountInfoFromVendorContact:ue,isRecurring:ae,recurringConfig:ye,recurringBillInstances:_e,outsideZeniPaymentLocalData:Le},billId:t}),Jv({billId:t})];return b?.vendorCurrencyCode!=null&&b.vendorCurrencyCode!=="USD"&&Ne.push(ga(!0,{amount:D.amount,currencyCode:b.vendorCurrencyCode,currencySymbol:b.vendorCurrencySymbol},"USD",t)),_(Ne)}return _([Jv({billId:t})])}))),(n,i)=>n.pipe(S(xV.match),y((r=>{const{userId:t}=r.payload,e=i.value.userState,a=i.value.userRoleState,s=Pt(e,t),o=nc(a,t),c=[];if(s!=null&&o!=null){const d=s.birthday,l=s.phone,u=s?.isPhoneVerified,m=s?.syncToken,h={userId:t,dateOfBirth:d,phone:l,isPhoneVerified:u,syncToken:m};c.push(UV({localData:h}))}return _(c)}))),(n,i)=>n.pipe(S(sm.match),y((r=>{const t=[],{companyId:e}=r.payload,a=i.value,{companyHealthMetricState:s}=a,o=jN(s,e);if(o!=null){const{netPromoterScore:c,externalProductServiceExposure:d,customerSatisfactionScore:l,additionalChurnFactors:u}=o;t.push(GN({companyId:e,updatedLocalData:{netPromoterScore:c,customerSatisfactionScore:l,externalProductServiceExposure:d?.code,additionalChurnFactors:u}}))}return j(_(t))}))),(n,i)=>n.pipe(S(Lv.match),y((r=>{const{amount:t,vendorType:e}=r.payload,a=[],s=i.value,o=s.internationalWireState.createInternationalWireDetails.localData,c=Vv(o?.currencyCode??"",t,e),d=s.internationalWireState.dynamicFormDetailsbyKey[c]??{};if(o!=null){const l={countryCode:o.countryCode,currencyCode:o.currencyCode,accountType:o.accountType,dynamicForm:WH(d),source:o.source};a.push(qv(l))}return _(a)}))),(n,i)=>n.pipe(S(Xw.match),y((r=>{const{userId:t}=r.payload,e=[];if(t){const{userState:a,userRoleState:s,peopleState:o}=i.value,c={userId:t,user:Pt(a,t),userRole:nc(s,t),update:e$(o,t)},d=c.user?.email,{userRoles:l,managerUserId:u,accountingClassIDs:m}=c.userRole,h=Y(i.value),g=ru(l,h.company);e.push(t$({peopleLocalData:[{email:d!=null?[d]:[],role:g,managerId:u,departmentId:m[0]}],person:c}))}return _(e)}))),(n,i)=>n.pipe(S(Gy.match),y((r=>{const t=i.value,e=[],{jeScheduleTransactionKeys:a}=r.payload;return a.forEach((s=>{const o=bt(s,t),c={jeScheduleType:o.jeScheduleType,jeScheduleID:o.jeScheduleId,scheduledJournalEntryID:o.scheduledJournalEntry[0].scheduledJournalEntryID,updatedVendor:void 0,updatedCategoryId:void 0,updatedAccumulatedDepreciationCategoryID:void 0,updatedClassId:void 0};e.push(Lx({localData:c,scheduledJournalEntryID:o.scheduledJournalEntry[0].scheduledJournalEntryID}))})),_(e)}))),(n,i)=>n.pipe(S($1.match),y((r=>{const{billId:t,vendorId:e}=r.payload,a=[],s=i.value,o=s.internationalWireState.createInternationalWireDetails.localData;let c=0;if(t!=null){const d=Oe(t);c=s.editBillDetailViewState.editBillStateById[d]?.billDetailLocalData?.recipientTotalAmount?.amount??0}else c=s.editBillDetailViewState.newBillState.billDetailLocalData?.recipientTotalAmount?.amount??0;if(o==null){const d={countryCode:e!=null?s.vendorViewState.editVendorStateById[e].vendorDetailLocalData?.countryCode:s.vendorViewState.newVendorState.vendorDetailLocalData?.countryCode,currencyCode:e!=null?s.vendorViewState.editVendorStateById[e].vendorDetailLocalData?.currencyCode:s.vendorViewState.newVendorState.vendorDetailLocalData?.currencyCode,dynamicForm:{}};if(d.currencyCode!=null){const l=e!=null?s.vendorViewState.editVendorStateById[e].vendorDetailLocalData?.vendorType:s.vendorViewState.newVendorState.vendorDetailLocalData?.vendorType;a.push(Mv(d.currencyCode,c,l||"international_business",!1))}a.push(qv(d))}return _(a)}))),(n,i)=>n.pipe(S(jv.match),y((r=>{const{companyId:t,internationalWireFormPayload:e}=r.payload,a=[],s=i.value.companyState.companiesById[t].companyBillPayInfo.internationalWireOnboardingDetails,o={};return Object.keys(e).forEach((c=>{const d=s?.[c]?.values;o[c]=d!=null?e[c].type==="enum"?e[c].is_multiple_values_allowed===!1?typeof d[0]=="object"&&"code"in d[0]?d[0].code:"":d.map((l=>typeof l=="object"&&"code"in l?l.code:"")):d[0]:e[c].type==="enum"&&e[c].is_multiple_values_allowed===!0?[]:""})),a.push(V1(o)),_(a)}))),(n,i)=>n.pipe(S(OS.match),y((r=>{const t=i.value,e=t.addressViewState.newAddressState?.[cs]?.addressToCreate,a=r.payload.address?.address_id;if(e!=null||a==null)return F;const s=dt(t.addressState,a);return s!=null?p(je({addressType:cs,addressToCreate:s})):F}))),(n,i)=>n.pipe(S((r=>NB.match(r)||Di.match(r))),y((r=>{const{id:t}=r.payload,e=i.value;if(e.addressViewState.newAddressState?.[ts]?.addressToCreate!=null||t==null)return F;const s=Sh(e.invoicingCustomerState,t),o=s?.billingAddressId!=null?dt(e.addressState,s.billingAddressId):void 0;return o!=null?p(je({addressType:ts,addressToCreate:o})):F}))),(n,i)=>n.pipe(S((r=>JB.match(r)||$i.match(r))),y((r=>{const{id:t}=r.payload,e=i.value;if(e.addressViewState.newAddressState?.[wr]?.addressToCreate!=null||t==null)return F;const s=wB(e.invoicingSubscriptionState,t),o=s?.shippingAddressId!=null?dt(e.addressState,s.shippingAddressId):void 0;return o!=null?p(je({addressType:wr,addressToCreate:o})):F}))),(n,i)=>n.pipe(S(qf.match),y((()=>{const r=i.value.tenantState.loggedInUser?.userId,t=[Sa("user_address")];if(r==null)return t;const e=i.value.userState,a=i.value.userRoleState,s=Pt(e,r),o=nc(a,r),c=o?.addressId!=null?dt(i.value.addressState,o.addressId):void 0;if(c!=null&&t.push(je({addressType:"user_address",addressToCreate:c})),s!=null&&o!=null){const d=s.birthday,l=s.phone,u=s?.isPhoneVerified??!1,m=s?.syncToken,h={dateOfBirth:d,phone:l,isPhoneVerified:u,syncToken:m};t.push(iM({localData:h}))}return _(t)}))),(n,i)=>n.pipe(S(jx.match),y((r=>{const t=[],e=Pr(),{accountListState:a,classListState:s}=i.value;return a.byReportId[e.accountListKey]?.fetchState==="Not-Started"&&t.push(Te(e.accountListKey,!0,!1,!1,!1,e.allowedAccountList)),s.fetchState==="Not-Started"&&t.push(ne()),r.payload.shouldResetEnteredData&&(t.push(Wy({scheduleType:r.payload.scheduleType})),t.push(Gx())),_(t)}))),(n,i)=>n.pipe(S(UJ.match),y((r=>{const{isDebitCardFlagEnabled:t,companyId:e}=r.payload,a=[];if(e!=null){const s=kJ(i.value.onboardingCustomerState,e),o=Wi(i.value.companyState,e),c=o?.company.companyOnboardingInfo.onboardingInfo?.onboardingCustomerUserIds!=null&&o.company.companyOnboardingInfo.onboardingInfo.onboardingCustomerUserIds.length>0?o.company.companyOnboardingInfo.onboardingInfo.onboardingCustomerUserIds[0]:null;if(s!=null&&o!=null){const d=i.value.onboardingCockpitViewState.onboardingTenantIdByCompanyId[e],l=QS(i.value.tenantState,d),u=l?.isEmailGroupCreated?o.company.companyOnboardingInfo.isSubsidiary:void 0,m={companyEmailDomain:o.company.companyInfo.primaryEmailDomain,isOnboardingTenant:!0,userEmailWithPreOnboardSuccess:s.userEmailWithPreOnboardSuccess,companyId:o.company.companyInfo.companyId,languageCode:o.company.companyLocaleInfo.languageCode,countryCode:o.company.companyLocaleInfo.companyIncCountryCode,currencyCode:o.company.companyLocaleInfo.currencyCode,groupId:s.groupId,groupDescription:s.groupDescription,groupName:s.groupName,name:o.company.companyInfo.name,qboRealmId:l?.qboRealmId,chargebeeId:l?.chargebeeId,hubSpotId:l?.hubSpotId,isCustomerCreated:l?.isCustomerCreated,isEmailGroupCreated:l?.isEmailGroupCreated,isOnboardingCompanyDetailsCompleted:o.company.companyOnboardingInfo.isOnboardingCompanyDetailsCompleted,isSubsidiary:u,parentCompanyId:o.company.companyOnboardingInfo.parentCompanyId,tenantId:d,companyLegalName:o.company.companyInfo.companyLegalName,accountingConnectionCreationMode:o.company.companyOnboardingInfo.onboardingInfo?.accountingConnectionCreationMode!=null?BJ(o.company.companyOnboardingInfo.onboardingInfo?.accountingConnectionCreationMode):void 0,selectedProducts:fH(t,l)};if(c!=null){const g=Pt(i.value.userState,c);g!=null&&(m.customerName={firstName:g.firstName,lastName:g.lastName},m.email=g.email)}a.push(WS(),ZS(m),XS(m),Zi());const h=o?.company.managementInfo.companyAddressId!=null?dt(i.value.addressState,o?.company.managementInfo.companyAddressId):void 0;h!=null&&a.push(je({addressType:"company_address",addressToCreate:h}))}else a.push(DJ())}else{const s={companyEmailDomain:"",isOnboardingTenant:!0,userEmailWithPreOnboardSuccess:"",chargebeeId:"",isSubsidiary:void 0,groupId:"",groupName:"",groupDescription:"",name:"",customerName:{firstName:"",lastName:""},companyLegalName:"",email:"",qboRealmId:"",selectedProducts:[]};a.push(WS(),ZS(s),XS(s),Zi())}return _(a)}))),(n,i)=>n.pipe(S(QF.match),y((r=>{const{approvalRuleId:t}=r.payload,e=[];if(t!=null){const a=vv(i.value.approvalRuleState,t);if(a!=null){const s={approvalRuleId:t,steps:a.steps,criteria:{amount:Ev(a.criteria),vendor:bv(a.criteria),department:Iv(a.criteria)},name:a.name,description:a.description,separationOfDuties:a.separationOfDuties};e.push(WI(),ZI(s))}}else{const a={steps:[],criteria:{}};e.push(WI(),ZI(a))}return _(e)}))),(n,i)=>n.pipe(S($I.match),y((r=>{const{reimbursementId:t}=r.payload,e=i.value,a=e.reimbursementState.reimbursementById[t];if(a!=null){const s={reportTitle:a?.reportTitle},o=a.reimbursementInfo.stage.code==="pending_approval",c={};a.lines?.forEach((m=>{if(m.type==="out_of_pocket"){const h=m.merchant?.id,g=h!=null?TF(e.merchantState,h):void 0,{recommendedAccount:I}=PF(g?.recommendations,m.lineDetail.account,m.lineDetail.class);c[m.lineId]={lineId:m.lineId,type:m.type,fileId:m.fileId,homeCurrencyConversions:m.homeCurrencyConversions,outOfPocket:{recommendations:g?.recommendations??[],recommendedAccount:I,isCategoryUpdateSelected:!1,isCategoryFirstTimeAutofilled:!1,isRetainedCategorySelected:!1,merchant:{id:g?.id,name:g?.name??""},amount:m.amount,currencyCode:m.currencyCode,currencySymbol:m.currencySymbol,description:m.description,transactionDate:m.transactionDate,lineDetail:m.lineDetail},mileage:{}},o&&(c[m.lineId]={...c[m.lineId],outOfPocket:{...c[m.lineId].outOfPocket,retainedAccount:I!=null?m.lineDetail.account:void 0,isRetainedCategorySelected:!1}})}else c[m.lineId]={lineId:m.lineId,type:m.type,fileId:m.fileId,homeCurrencyConversions:m.homeCurrencyConversions,mileage:{lineDetail:m.lineDetail,amount:m.amount,currencyCode:m.currencyCode,currencySymbol:m.currencySymbol,description:m.description,transactionDate:m.transactionDate,distanceMileage:m.distanceMileage},outOfPocket:{recommendations:[],isCategoryFirstTimeAutofilled:!1,isRetainedCategorySelected:!1,isCategoryUpdateSelected:!1}}}));const d={};a.lines?.forEach((m=>{d[m.lineId]={fetchState:"Not-Started",error:void 0}}));const l=a.amount,u={whatForSection:s,updatesByLineId:c,totalAmount:l,files:a.attachments,currencyConversionStateByLineId:d,paymentTo:a.reimbursementInfo.toAccount.billAccountId};return p(kd({remiDetailLocalData:u,reimbursementId:t}))}return _([])}))),(n,i)=>n.pipe(S(Fa.match),y((r=>{const t=i.value,{scheduleAccruedDetailState:e}=t,a=[],{selectedJeScheduleDetailId:s,selectedJEScheduleKey:o,scheduleType:c}=r.payload;let d;if(o!=null&&(d=oa(o,t)),s!=null&&d!=null){const l=((u,m)=>{const h=m.map((k=>({postingDate:k.expectedPostDate,amount:tr(k.amount?k.amount.amount:0,k.currencyCode??"USD",k.currencySymbol??"$"),runningBalance:tr(k.runningBalance?k.runningBalance.amount:0,k.currencyCode??"USD",k.currencySymbol??"$"),postingStatus:k.status.code,memo:k.memo,jeLink:FH(k.thirdPartyID,k.transactionID,k.recommendedTransactionID,k.reversalTransactionDetails)}))),{startDate:g,period:I,jeDebit:E,jeCredit:b,memo:T,recurringAmount:O,vendor:x,otherAttributes:U}=u;return{scheduleType:"accrued_expenses",startingBalance:{amount:U.startingBalance?.amount??0,currencyCode:"USD",currencySymbol:"$"},jeScheduleDetails:h,selectedDate:g,selectedMonths:I,selectedAccount:E.account?.accountId,selectedClass:E.accountingClass?.classId,estimatedMonthlyAmount:O,memo:T,selectedVendor:x,selectedAccruedExpenseCategory:b.account?.accountId??""}})(d,d.scheduledJournalEntry);a.push(ms({scheduleType:c,selectedJeScheduleDetailId:s,localData:{...PR,...l}}))}else a.push(ms({scheduleType:c,localData:{...e.newScheduleState},selectedJeScheduleDetailId:void 0}));return _(a)}))),(n,i)=>n.pipe(S(qr.match),y((r=>{const t=i.value,{scheduleDetailState:e}=t,a=[],{selectedJeScheduleDetailId:s,selectedJEScheduleKey:o,scheduleType:c}=r.payload,d=bt(o,t);if(s!=null){const l=d.scheduledJournalEntry,u=c!=="fixed_assets"?$R(c,d,l):RR(d,l);a.push(hs({scheduleType:c,selectedJeScheduleDetailId:s,localData:{...MR[c],...u}}))}else a.push(hs({scheduleType:c,localData:{...e.newScheduleState[c]},selectedJeScheduleDetailId:void 0}));return _(a)}))),(n,i)=>n.pipe(S(rj.match),y((r=>{const{subscriptionId:t,tenantId:e}=r.payload,a=[];if(t!=null){const s=nj(i.value.subscriptionState,t);if(s?.subscription!=null){const{subscriptionPlanId:o,subscriptionAddonIds:c,subscriptionCouponIds:d}=s.subscription;let l=!0,u=!1;const m=!0;s.subscription.status.code==="future"&&(l=!1,u=!0);const h={subscriptionPlanId:o,subscriptionAddOnIds:c,subscriptionCouponIds:d,subscriptionId:t,invoiceImmediately:m,applyEndOfTerm:l,shouldProrate:u};a.push(Vb({tenantId:e}),Lb({tenantId:e,subscriptionData:h}))}}else{const s={subscriptionAddOnIds:[],subscriptionCouponIds:[],invoiceImmediately:!0};a.push(Vb({tenantId:e}),Lb({tenantId:e,subscriptionData:s}))}return _(a)}))),(n,i)=>n.pipe(S(Yb.match),y((r=>{const{taskId:t}=r.payload,e=i.value,a=ee(e.taskState.taskByID,t,void 0);if(a!=null){const s={name:a.name,description:a.description,status:a.status.code,assignee:a.assignees,groupAssignees:a.groupAssignees,dueDate:a.dueDate,priority:a.priority.code,tagIds:a.tagIds,fileIds:a.fileIds,type:a.type,recurringFrequency:a.recurringFrequency,recurringDaysOfWeek:a.recurringDaysOfWeek,recurringEndDateLocalData:{recurringDatePickerOptionsType:"date",recurringEndDate:a.recurringEndDate},savedRecurringEndDate:a.recurringEndDate,recurringStartDate:a.recurringStartDate,timeSpent:a.timeSpent,isPrivate:a.isPrivate,taskGroupId:a.taskGroupIds[0]},o=[Oj({taskDetailLocalData:s,taskId:t}),Ha({taskId:t,fetchState:"Completed"})];return _(o)}return _([Ha({taskId:t,fetchState:"Completed"})])}))),(n,i)=>n.pipe(S(Nn.match),y((r=>{const{transactionId:t,vendorId:e}=r.payload,a=[],s=i.value.transactionState,o=De(t),c=Ot(s,o);if(c!=null){const d=ha(i.value.accountState,i.value.accountListState,"accountList"),l=uG(c,e,d);a.push(pG({transactionId:t})),a.push(mG({transactionId:t,transactionLocalData:l}))}return _(a)}))),(n,i)=>n.pipe(S(vn.match),y((r=>{const{vendorId:t}=r.payload,e=[Sa("vendor_address")];if(t!=null){const a=Ce(i.value.vendorState,t),s=a?.addressId!=null?dt(i.value.addressState,a?.addressId):void 0;s!=null&&e.push(je({addressType:"vendor_address",addressToCreate:s}))}return _(e)}))),(n,i,r)=>n.pipe(S(fL.match),A((t=>{const e=i.value,{companyId:a}=t.payload,{depositAccountState:s,paymentAccountState:o,paymentAccountListState:c,depositAccountListState:d}=e,l=e.chargeCardRepaymentDetailState.localData,u=vL(s,d),m=IL(o,c),h=bL(u.depositAccounts,m.paymentAccounts,c.paymentAccountBalanceFetchStatus).find((I=>I.id===l.transferFrom?.id)),g={funding_account:{account_id:l.transferFrom?.id,account_type:Ve(h?.accType)??""},idempotency_key:l.idempotencyKey,is_auto_pay_enabled:l.isAutoRepayment,amount:l.amount.amount};return h!=null&&l.transferFrom!=null?r.postAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/repayments`,g).pipe(y((I=>{if(P(I)&&I.data!=null){const E=[EL(I.data.card_repayment),TL({cardRepaymentId:I.data.card_repayment.card_repayment_id,zeniCreditAccountId:I.data.card_repayment.zeni_credit_account_id}),PL({amount:tr(I.data.card_repayment.amount,I.data.card_repayment.currency_code,I.data.card_repayment.currency_symbol),date:te(I.data.card_repayment.repayment_date)}),Os({fetchState:"Completed",error:void 0})];return l.transferFrom!=null&&h?.accType!=null&&E.push(Yr({companyId:a,primaryFundingAccountId:l.transferFrom.id,accountType:h.accType,productType:"charge_cards"}),AL({companyId:a,enableAutoPay:l.isAutoRepayment})),_(E)}return p(Os({fetchState:"Error",error:I.status}))})),v((I=>p(Os({fetchState:"Error",error:f("Unexpected Error","Initiate Charge Card Repayment REST API call errored out"+JSON.stringify(I))}))))):p(Os({fetchState:"Error",error:f("Validation Error","Funding account not selected.")}))}))),(n,i)=>n.pipe(S(yf.match),A((r=>{const{reportIdToResync:t}=r.payload,e=[];switch(t){case"profit_and_loss_by_classes":e.push(Fg(!0));break;case"operating_expenses_by_classes":e.push(Ug(!0));break;case"revenue_by_classes":e.push(_f(!0));break;case"net_burn_or_income_by_classes":e.push(JS(!0))}return _(e)}))),(n,i)=>n.pipe(S(hf.match),A((r=>{const{reportIdToResync:t}=r.payload,e=[];switch(t){case"profit_and_loss_by_projects":e.push(Gg(!0));break;case"operating_expenses_by_projects":e.push(Dg(!0));break;case"revenue_by_projects":e.push(Sf(!0));break;case"net_burn_or_income_by_projects":e.push(RS(!0))}return _(e)}))),(n,i,r)=>n.pipe(S(a$.match),A((()=>{const t=i.value.peopleState.personDetails.localData,e=Y(i.value),a=OH(t,e.company);return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/invites`,a).pipe(y((s=>{if(P(s)){const o=[];return s.data?.user_roles&&zs(o,s.data?.user_roles[0],!1),p(H(s.data?.user_roles??[]),V({users:s.data?.users??[]}),Mg(s.data),N({messageSection:a.invites.length>1?"people_invite_multiple_people":"people_invite_people",messageText:"success",type:"success"}),...o)}return p(us(s.status))})),v((s=>p(us(f("Unexpected error","User Roles REST API call errored out"+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(r$.match),A((t=>{const e=i.value.peopleState.personDetails.localData,a=CH(e);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${t.payload.companyId}`,a).pipe(y((s=>{if(P(s)){const o=[];return s.data?.user_roles&&zs(o,s.data?.user_roles[0],!0),p(H(s.data?.user_roles??[]),V({users:s.data?.users??[]}),Mg(s.data),N({messageSection:a.users.length>1?"people_invite_multiple_people":"people_invite_people",messageText:"success",type:"success"}),...o)}return p(us(s.status))})),v((s=>p(us(f("Unexpected error","User Roles REST API call errored out"+JSON.stringify(s)))))))}))),(n,i,r)=>{const t=()=>`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/data-import`,e=n.pipe(S(Gk.match),y((()=>Zr("connect",r.postAndGetJSON(`${t()}/chargebee/connect`,{}))))),a=n.pipe(S(zk.match),y((d=>{const l=new FormData;return d.payload.files.forEach((u=>l.append("files",u,u.name))),Zr("upload",r.postFormData(`${t()}/uploads`,l))}))),s=n.pipe(S(Kk.match),y((d=>Zr("start",r.postAndGetJSON(`${t()}/${encodeURIComponent(d.payload)}/import`,{}))))),o=n.pipe(S(Hk.match),y((d=>Zr("retry",r.postAndGetJSON(`${t()}/${encodeURIComponent(d.payload)}/retry`,{}))))),c=n.pipe(S(Yk.match),y((d=>Zr("rollback",r.postAndGetJSON(`${t()}/${encodeURIComponent(d.payload)}/rollback`,{})))));return We(e,a,s,o,c)},(n,i,r)=>n.pipe(S($L.match),A((()=>{const t=i.value,e=i.value.tenantState.loggedInUser?.userId,a=t.issueChargeCardState.localData.map((s=>s.chargeCardType==="credit_card"?s.creditCard.cardType==="business_physical_credit_card"?{card_holder_user_ids:s.creditCard.physicalCard.userId!=null?[s.creditCard.physicalCard.userId]:[],card_name:s.creditCard.physicalCard.cardName,purchase_limit:s.creditCard.physicalCard.amount?.amount??0,currency_code:s.creditCard.physicalCard.amount?.currencyCode??"USD",purchase_limit_frequency:{code:s.creditCard.physicalCard.frequency},card_type:s.creditCard.cardType,shipping_address_type:s.creditCard.physicalCard.addressType,shipping_address_id:s.creditCard.physicalCard.addressId}:{card_holder_user_ids:s.creditCard.virtualCard.userIds,card_name:s.creditCard.virtualCard.cardName,purchase_limit:s.creditCard.virtualCard.amount?.amount??0,currency_code:s.creditCard.virtualCard.amount?.currencyCode??"USD",purchase_limit_frequency:{code:s.creditCard.virtualCard.frequency},card_type:s.creditCard.cardType}:s.debitCard.cardType==="business_physical_debit_card"?{card_holder_user_ids:s.debitCard.physicalCard.userId!=null?[s.debitCard.physicalCard.userId]:[],card_name:s.debitCard.physicalCard.cardName,purchase_limit:s.debitCard.physicalCard.amount?.amount??0,currency_code:s.debitCard.physicalCard.amount?.currencyCode??"USD",purchase_limit_frequency:{code:s.debitCard.physicalCard.frequency},card_type:s.debitCard.cardType,shipping_address_type:s.debitCard.physicalCard.addressType,shipping_address_id:s.debitCard.physicalCard.addressId,connected_account_id:s.debitCard.physicalCard.connectedAccountId,connected_account_type:"deposit_account"}:{card_holder_user_ids:s.debitCard.virtualCard.userIds,card_name:s.debitCard.virtualCard.cardName,purchase_limit:s.debitCard.virtualCard.amount?.amount??0,currency_code:s.debitCard.virtualCard.amount?.currencyCode??"USD",purchase_limit_frequency:{code:s.debitCard.virtualCard.frequency},connected_account_id:s.debitCard.virtualCard.connectedAccountId,card_type:s.debitCard.cardType,connected_account_type:"deposit_account"}));return r.postAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards`,{cards:a}).pipe(y((s=>{if(M(s)&&s.data!=null){const o=[],c=s.data.cards;o.push(Ga(c),V({users:s.data.users}),H(s.data.user_roles),iI({chargeCardListPayload:s.data,keepExistingListItems:!0}),z(s.data.addresses),TI(s.data?.cards_count_by_user_id??[]),PI(s.data?.debit_cards_count_by_deposit_account_id??{}),RL(c.map((u=>u.card_id))),Cs({fetchState:"Completed"})),c.length!==1||c[0].card_type.code!=="business_virtual_debit_card"&&c[0].card_type.code!=="business_physical_debit_card"||e!==c[0].holder_user_id||o.push(ML(c[0].card_id));const d=c.map((u=>u.holder_user_id)),l=s.data.users.filter((u=>d.includes(u.user_id))).map((u=>u.first_name?.trim()??u.last_name?.trim())).filter((u=>u!=null));if(c.length>0&&l.length===1){const u=c.length>1?"cards":"card";o.push(N({messageSection:"issue_charge_card",messageText:"success",type:"success",variables:[{variableName:"_user-name_",variableValue:l[0]??""},{variableName:"_card_",variableValue:u}]}))}else o.push(N({messageSection:"issue_charge_cards",messageText:"success",type:"success"}));return _(o)}return p(Cs({fetchState:"Error",error:s.status}))})),v((s=>p(Cs({fetchState:"Error",error:f("Unexpected Error","Issue Charge Card REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(WD.match),y((()=>{const{draft:t}=i.value.invoicingIssueCreditNoteState,{invoiceId:e}=t,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices/${encodeURIComponent(e)}/issue-credit-note`,s=ZD(t);return r.postAndGetJSON(a,s).pipe(y((o=>P(o)&&o.data!=null?[Zn([o.data],"merge"),$r({invoiceId:e}),XD({creditNoteId:o.data.id}),N({messageSection:"invoicing_credit_note_saved",messageText:"success",type:"success"})]:_([PS(o.status),N({messageSection:"invoicing_credit_note_saved",messageText:"failed",type:"error",variables:Ee(o.status)})]))),v((o=>_([PS(f("Unexpected Error","Issue credit note REST API call errored out "+JSON.stringify(o))),N({messageSection:"invoicing_credit_note_saved",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(YV.match),A((t=>{const{chargeCardId:e,reason:a,isChargeCardAdmin:s}=t.payload,o={reason:a},c=i.value.chargeCardState.chargeCardByID[e],d=c?.accountLast4??"";return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}/lock`,o).pipe(y((l=>M(l)&&l.data!=null?p(ct(l.data),id({chargeCardId:e,fetchState:"Completed"}),N({messageSection:s?"lock_charge_card":"lock_charge_card_card_user",messageText:"success",type:"success",variables:[{variableName:"_masked_card_number_",variableValue:`•••• ${d}`}]})):p(N({messageSection:s?"lock_charge_card":"lock_charge_card_card_user",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]}),id({chargeCardId:e,fetchState:"Error",error:l.status})))),v((l=>p(N({messageSection:s?"lock_charge_card":"lock_charge_card_card_user",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(l)}]}),id({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Lock card API call errored out"+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(cL.match),A((t=>{const{cardIds:e,reason:a}=t.payload,s={card_ids:e,reason:a};return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/bulk/lock`,s).pipe(y((o=>M(o)&&o.data!=null?p(Ga(o.data),hd({fetchState:"Completed"}),N({messageSection:"lock_charge_cards",messageText:"success",type:"success",variables:[{variableName:"_number_of_cards_",variableValue:e.length===1?"1 card":`${e.length} cards`}]})):p(N({messageSection:"lock_charge_cards",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:o.status.message}]}),hd({fetchState:"Error",error:o.status})))),v((o=>p(N({messageSection:"lock_charge_cards",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(o)}]}),hd({fetchState:"Error",error:f("Unexpected Error","Lock cards API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(VR.match),y((t=>{const e=i.value,{scheduleType:a,jeScheduleKey:s}=t.payload,o=[],c=bt(s,e),d=c.jeScheduleId,l=c.vendor.name,u=d!=null?e.scheduleDetailState.editScheduleStateByDetailId[a][d]:e.scheduleDetailState.newScheduleState[a],m={...pc(e,u,s,a,!1,!0)},h={je_schedule_type:a};return(d!=null?r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${d}?query=${encodeURIComponent(JSON.stringify(h))}`,m):r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules?query=${encodeURIComponent(JSON.stringify(h))}`,m)).pipe(y((g=>P(g)&&g.data!=null?(o.push(It(g.data.je_schedules,g.data.scheduled_journal_entries,"replace"),hc("Completed"),N({messageSection:"mark_as_complete_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:l}]})),_(o)):(o.push(hc("Error",g.status)),o.push(N({messageSection:"mark_as_complete_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:g.status.message}]})),_(o)))),v((g=>_([N({messageSection:"mark_as_complete_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(g)}]}),hc("Error",f("Unexpected Error",`Mark As Complete Schedule Detail REST API call errored out ${JSON.stringify(g)}`))]))))}))),(n,i,r)=>n.pipe(S(mE.match),y((t=>{if(t.payload.isExpenseAutomationEnabled===!0){const e=De(t.payload.transactionId),a=Ot(i.value.transactionState,e),s=(t.payload.lineIds?.length??0)>0?t.payload.lineIds:(a?.lines??[]).map((o=>o.id));return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/expense-automation/mark-as-reviewed`,{transactions_reviewed:[{transaction_id:t.payload.transactionId.id,line_ids:s}]}).pipe(y((o=>{if(P(o)){const c=[];c.push(Ya(t.payload.transactionId,"Completed",void 0));const d=t.payload.transactionId.id;if(!(o.data?.transactions_reviewed_failed??[]).some((l=>l.transaction_id===d))){c.push(yE(e,!1));const{expenseAutomationViewState:l,expenseAutomationTransactionsViewState:u}=i.value,{transactionCategorizationView:m,selectedTransactionCategorizationTab:h}=u,g=Y(i.value)?.tenantId,{selectedPeriodByTenantId:I}=l,E=g!=null?I[g]:void 0,b=(m.autoCategorized.transactionReviewLocalDataById[d]?.transactionReviewLocalData.tabSpecificLineItems?.autoCategorized??[]).length>0,{uiState:T}=m[h],O=h==="review"?[d]:b?[]:[d];if(E!=null&&c.push(Kn(h,[d],O,E,"Completed")),b||c.push(I_({transactionIds:[d]})),O.length>0&&E!=null){const x=T.totalCount[Ie(E)]??0,U=Math.max(0,x-1);c.push(qn({selectedPeriod:E,selectedTab:h,totalCount:U}))}}return c.push(gl({transactionId:t.payload.transactionId,fetchState:"Completed"})),t.payload.transactionSaveUpdates.anyBulkUpdates===!0?c.push(N({messageSection:"transactionDetails_updatingPastTransactions",messageText:"success",type:"success"})):c.push(N({messageSection:"transactionDetails_transactionUpdated",messageText:"success",type:"success"})),_(c)}return p(Ya(t.payload.transactionId,"Error",o.status))})),v((o=>p(Ya(t.payload.transactionId,"Error",f("Unexpected Error",`Transaction mark as reviewed REST API call errored out ${o}`))))))}return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/${t.payload.transactionId.id}/mark-miscategorized-as-correct`,TY(t.payload.transactionId)).pipe(y((e=>{if(M(e)){const a=[];a.push(Ya(t.payload.transactionId,"Completed",void 0));const s=De(t.payload.transactionId);return a.push(yE(s,!1)),a.push(gl({transactionId:t.payload.transactionId,fetchState:"Completed"})),t.payload.transactionSaveUpdates.anyBulkUpdates===!0?a.push(N({messageSection:"transactionDetails_updatingPastTransactions",messageText:"success",type:"success"})):a.push(N({messageSection:"transactionDetails_transactionUpdated",messageText:"success",type:"success"})),_(a)}return p(Ya(t.payload.transactionId,"Error",e.status))})),v((e=>p(Ya(t.payload.transactionId,"Error",f("Unexpected Error",`Transaction mark miscategorized as correct REST API call errored out ${e}`))))))}))),(n,i,r)=>n.pipe(S(bx.match),rt((t=>{const{transactionId:e,transactionIntegrationId:a,transactionType:s,lineIds:o,accrualIds:c,transactionSyncToken:d}=t.payload,l={transaction_id:e,transaction_integration_id:a,transaction_type:s,line_ids:o,transaction_sync_token:d,accrual_ids:c},u=`${s.toLowerCase()}:${a}`,m=(function(h,g){return mi(h.actualMatchingState,g)?.vendorName??""})(i.value,u);return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/match-and-reverse`,l).pipe(y((h=>{if(P(h)&&h.data!=null){const g=h.data.results.map(ZK),I=[Ex({matchId:u,results:g})],E=g.some((O=>$y(O.status))),b=g.length>0&&g.every((O=>$y(O.status)));E&&I.push(...o0(i.value),ui(u,!0));const T=(function(O,x){const U=O.filter((B=>B.status==="reversed")).length,k=O.filter((B=>{return(J=B.status)==="conflict"||J==="claim_lost"||J==="error";var J})).length,C=[{variableName:"_count_",variableValue:String(U)},{variableName:"_vendor_name_",variableValue:x}];return O.length===0||U===0&&k>0?N({messageSection:"actual_matching_match_and_reverse",messageText:"failed",type:"error",variables:C}):U>0&&k===0?N({messageSection:"actual_matching_match_and_reverse",messageText:"success",type:"success",variables:C}):U>0&&k>0?N({messageSection:"actual_matching_match_and_reverse",messageText:"notification",type:"warning",variables:C}):null})(g,m);return T!=null&&I.push(T),b&&I.push(Tx()),_(I)}return p(Ry({status:h.status}),i0(m))})),v((h=>p(Ry({status:f("Unexpected Error","Match and reverse accruals REST API call errored out"+JSON.stringify(h))}),i0(m)))),ge(n.pipe(S($e.match))))}))),(n,i,r)=>n.pipe(S(HU.match),A((t=>r.postAndGetJSON(`${r.apiEndPoints.notificationMicroServiceBaseUrl}/1.0/feature-interests`,{additional_info:t.payload.additionalInfo,email:t.payload.email,feature:t.payload.feature}).pipe(y((e=>{if(P(e)&&e.data!=null)return _([YU(e.data)]);const a=e.status??f("Failed to register interest. Please try again.");return _([P_(a)])})),v((e=>{const a=e instanceof Error?e.message:"Unexpected error registering interest.";return _([P_(f(a))])})))))),(n,i,r)=>We(((t,e,a)=>t.pipe(S(eU.match),y((s=>{const o=e.value,{accrualId:c,amount:d}=s.payload,l=tU(Ly(c),o.jeSchedulesState),u=o.expenseAutomationJESchedulesViewState.oneTimeAccrualLocalDataById[c],m=u?.jeDebitAccountId??l?.jeDebitAccountId,h=u?.jeCreditAccountId??l?.jeCreditAccountId;if(m==null||h==null)return _(aa("save_schedule",c,"This accrual is missing an expense or liability account."));const g=u?.reverseNextMonth??l?.reversalPolicy==="scheduled_date",I=u?.expectedReversalDate??l?.expectedReversalDate,E=u?.jeDebitAccountingClassId??l?.jeDebitAccountingClassId,b=u?.jeDebitAccountingClassName??l?.jeDebitAccountingClassName,T=u?.jeDebitAccountName??l?.jeDebitAccountName,O=u?.jeCreditAccountName??l?.jeCreditAccountName,x=l?.jeCreditAccountingClassId,U=l?.jeCreditAccountingClassName,k={amount:d,memo:u?.memo??l?.memo??"",je_debit_account_id:m,je_credit_account_id:h,...T!=null?{je_debit_account_name:T}:{},...O!=null?{je_credit_account_name:O}:{},...E!=null?{je_debit_accounting_class_id:E}:{},...b!=null?{je_debit_accounting_class_name:b}:{},...x!=null?{je_credit_accounting_class_id:x}:{},...U!=null?{je_credit_accounting_class_name:U}:{},reverse_next_month:g,...g&&I!=null?{expected_reversal_date:I.format(re)}:{}};return a.putAndGetJSON(`${a.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/${c}`,{...k}).pipe(y((C=>P(C)&&C.data!=null?_([Lt([C.data.accrual]),hi({accrualId:c}),aU({accrualId:c}),N({messageSection:"save_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:l?.vendorName??""}]}),...Rl(e.value)]):_(aa("save_schedule",c,C.status.message,C.status)))),v((C=>_(aa("save_schedule",c,`Promote accrual REST API call errored out ${JSON.stringify(C)}`)))),ge(t.pipe(S($e.match))))}))))(n,i,r),((t,e,a)=>t.pipe(S(Xx.match),y((s=>{const{accrualId:o,reason:c,note:d}=s.payload,l={reason:c,...d!=null&&d!==""?{note:d}:{}};return a.putAndGetJSON(`${a.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/${o}/ignore`,{...l}).pipe(y((u=>P(u)&&u.data!=null?_([Lt([u.data.accrual]),hi({accrualId:o}),N({messageSection:"ignore_accrual",messageText:"success",type:"success"}),...Rl(e.value)]):_(aa("ignore_accrual",o,u.status.message,u.status)))),v((u=>_(aa("ignore_accrual",o,`Ignore accrual REST API call errored out ${JSON.stringify(u)}`)))),ge(t.pipe(S($e.match))))}))))(n,i,r),((t,e,a)=>t.pipe(S(Zx.match),y((s=>{const{accrualId:o,reason:c,note:d}=s.payload,l={reason:c,...d!=null&&d!==""?{note:d}:{}};return a.putAndGetJSON(`${a.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/${o}/revert`,{...l}).pipe(y((u=>P(u)&&u.data!=null?_([Lt([u.data.accrual]),hi({accrualId:o}),N({messageSection:"revert_accrual",messageText:"success",type:"success"}),...Rl(e.value)]):_(aa("revert_accrual",o,u.status.message,u.status)))),v((u=>_(aa("revert_accrual",o,`Revert accrual REST API call errored out ${JSON.stringify(u)}`)))),ge(t.pipe(S($e.match))))}))))(n,i,r)),Hz,(n,i)=>n.pipe(S(NG.match),y((r=>{const t=i.value.transactionListState,e=F0(r.payload.period).filter((a=>r.payload.cacheOverride!==!1||(function(s,o,c,d,l){const u=vE(o,c,d,l),m=s.transactionListByClassKey[u];return m!=null&&(m.fetchState==="In-Progress"||m.hasValidState())})(t.byClass,r.payload.accountId,r.payload.accountType,r.payload.classId,a)===!1));if(e.length>12)return console.error("Only maximum 12 parallel fetch are allowed!"),_([]);{const a=e.map((s=>fE(r.payload.accountId,r.payload.accountType,r.payload.classId,s,!0)));return _(a)}}))),(n,i)=>n.pipe(S(UE.match),y((r=>{const t=i.value.transactionListState,e=(function(s,o=1){let c=te(X(s.start));const d=te(X(s.end));c=c.set("date",1);const l=OG(d,o);c.isBefore(l)&&(c=l);const u=Math.ceil(d.diff(c,"month",!0)),m=[];if(u>=0){let h=c.clone().set("date",1);for(let g=0;g<u-1;++g){const I=h.daysInMonth();m.push({start:{day:1,month:h.month()+1,year:h.year()},end:{day:I,month:h.month()+1,year:h.year()}}),h=h.add(1,"month")}m.push({start:{day:h.date(),month:h.month()+1,year:h.year()},end:{day:d.date(),month:d.month()+1,year:d.year()}})}else console.error(`Invalid time period ${JSON.stringify(s)}`);return m})(r.payload.period,r.payload.fiscalYearStartMonth),a=e.filter((s=>r.payload.cacheOverride!==!1||(function(o,c,d){const l=EE(c,d),u=o.transactionListByEntityKey[l];return u!=null&&(u.fetchState==="In-Progress"||u.hasValidState())})(t.byEntity,r.payload.entity,s)===!1));if(a.length>12)return console.error("Only maximum 12 parallel fetch are allowed!"),_([]);{const s=a.map((o=>bE(r.payload.entity,o,!0)));return _(s)}}))),(n,i)=>n.pipe(S(CG.match),y((r=>{const t=i.value.transactionListState,e=F0(r.payload.period).filter((a=>r.payload.cacheOverride!==!1||(function(s,o,c,d,l){const u=AE(o,c,d,l),m=s.transactionListByProjectKey[u];return m!=null&&(m.fetchState==="In-Progress"||m.hasValidState())})(t.byProject,r.payload.accountId,r.payload.accountType,r.payload.projectId,a)===!1));if(e.length>12)return console.error("Only maximum 12 parallel fetch are allowed!"),_([]);{const a=e.map((s=>PE(r.payload.accountId,r.payload.accountType,r.payload.projectId,s,!0)));return _(a)}}))),(n,i)=>n.pipe(S(xG.match),y((r=>{const{transactionCategoryType:t,minimumTransactionAmount:e}=r.payload,a=i.value.transactionListState,s=UG(r.payload.period).filter((o=>r.payload.cacheOverride!==!1||(function(c,d,l){const u=CE(l,d),m=c.transactionListByCategoryType[u];return m!=null&&(m.fetchState==="In-Progress"||m.hasValidState())})(a.byType[t],o,t)===!1));if(s.length>12)return console.error("Only maximum 12 parallel fetch are allowed!"),_([]);{const o=s.map((c=>OE(!0,t,c,e)));return _(o)}}))),(n,i,r)=>n.pipe(S(RC.match),A((t=>{const{accountId:e,selectedPeriod:a,combinedStatementGroupId:s}=t.payload,o=`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/2.0/statement-uploads/combined-statement-groups/${s}`;return r.getJSON(o).pipe(y((c=>P(c)===!0&&c.data!=null?_([Dn({accountId:e,selectedPeriod:a,parsedStatementData:MC(c.data)}),vy({accountId:e,selectedPeriod:a})]):p(Jn({accountId:e,selectedPeriod:a,error:c.status})))),v((c=>p(Jn({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Parse Combined Statement REST API call errored out "+(c instanceof Error?c.message:String(c)))})))))}))),(n,i)=>n.pipe(S(Vc.match),y((r=>{const{invoiceProcessingPayload:t,isVendorRecommendationFeatureEnabled:e,billId:a}=r.payload,s=i.value,o=a!=null?Oe(a):null,c=o!=null?s.editBillDetailViewState.editBillStateById[o]:null,d=c?.showSkipAutofill??s.editBillDetailViewState.newBillState.showSkipAutofill,l=c?.replaceBillData??s.editBillDetailViewState.newBillState.replaceBillData;if(d||l){let u=qc.billDetailLocalData.vendor,m=!1;const h=t.vendors.length>0?t.vendors[0].vendor_name??"":void 0,g=t.bills.length>0?t.bills[0].currency_code:"USD";let I="";const E=Mc(s).vendors;let b,T,O=!1;if(h!=null&&h.length>0&&(u=E.filter((C=>C.name.toLowerCase()===h.toLowerCase()))[0],u==null)){const C=c?.suggestedVendorIdFromParsedInvoice??s.editBillDetailViewState.newBillState.suggestedVendorIdFromParsedInvoice;if(C!=null){T=Ce(s.vendorState,C);const B=T?.matchScore??0;I=T?.vendorCurrencyCode??"USD",e?T?.name.toLowerCase()===h.toLowerCase()?I===g?(u=T,O=!0,b=T?.id):m=!0:(b=T?.id,u=T,O=!0):B>85&&(I===g?(u=T,O=!0):m=!0)}}const x=bs(t.files[0]),U={...KH(s,O,t.bills[0],u,b),file:x},k=HH(U,m,h,g,I);if(u!=null){let C=[];return u.vendorCurrencyCode!=null&&u.vendorCurrencyCode!=="USD"&&C.push(ga(!0,{amount:U.recipientTotalAmount?.amount??0,currencyCode:u.vendorCurrencyCode,currencySymbol:u.vendorCurrencySymbol},"USD")),C=[...C,mt({billDetailLocalData:U,billId:a}),na(u.qboId,!1),Nc(u.name,u.id,U.totalAmount?.amount??0,U.recipientTotalAmount?.amount??0,U.whatForSection?.invoiceNumber),Rc(!1),bn({addBillAutoFields:k,billId:a}),Fc({fetchState:{fetchState:"Completed",error:void 0},billId:a})],_(C)}{const C=[mt({billDetailLocalData:U,billId:a}),Rc(!1),bn({addBillAutoFields:k,billId:a}),Fc({fetchState:{fetchState:"Completed",error:void 0},billId:a})];return b!=null&&T!=null&&C.push(na(T.qboId,!1)),_(C)}}{const u=bs(t.files[0]);return p(mt({billDetailLocalData:{...qc.billDetailLocalData,file:u},billId:a}),bn({addBillAutoFields:qc.addBillAutoFields,billId:a}),Fc({fetchState:{fetchState:"Completed",error:void 0},billId:a}))}}))),(n,i)=>n.pipe(S(AF.match),y((r=>{const{receiptsProcessingPayload:t,lineId:e,reimbursementId:a,shouldOverwrite:s,signedInUserId:o}=r.payload,c=i.value,d=a!=null?c.editRemiDetailViewState.editRemiStateById[a]:c.editRemiDetailViewState.newRemiState,l=Y(c).accountingClassIDs?.[0],u={...d.remiDetailLocalData.updatesByLineId};if(s===!1){let m=e;t.receipts.forEach((g=>{u[m]={...u[m],type:"out_of_pocket",fileId:g.file_id??"",lineId:String(m)},m++}));const h=t.files.map((g=>bs(g)));return p(kd({remiDetailLocalData:{...d.remiDetailLocalData,files:d.remiDetailLocalData.files!=null?[...d.remiDetailLocalData.files,...h]:h,updatesByLineId:u},reimbursementId:a}),RI({reimbursementId:a,fetchState:"Completed"}))}{const m=[],h=[],g={};t.merchants.forEach((x=>{x.merchant_id&&(g[x.merchant_id]=NF(x))}));const I={},E={};let b=e;const T=OF(c.merchantState,c.merchantListState.merchantIds);t.receipts.forEach((x=>{const U=x.merchant_id,k=g[U],C=k?.name;let B;C!=null&&C.length>0&&(B=T.filter((L=>L.name.toLowerCase()===C.toLowerCase()))[0]),u[b]={lineId:String(b),type:"out_of_pocket",fileId:x.file_id??"",homeCurrencyConversions:{amount:x.amount,currencyCode:x.currency_code??"USD",currencySymbol:x.currency_symbol??"$"},outOfPocket:{...aY(c.accountState,c.classState,x,B,l)},mileage:{}},x.currency_code!=="USD"&&h.push(wI("USD",b.toString(),a)),I[b]=rY(u[b]);const J=nY(u[b],C);J!=null&&J!==""&&(E[b]=J),B!=null?m.push(Od(!1,b.toString(),a,B.id,void 0)):m.push(Od(!1,b.toString(),a,void 0,E[b])),b++}));const O=t.files.map((x=>bs(x)));return m.push(kd({remiDetailLocalData:{...d.remiDetailLocalData,files:d.remiDetailLocalData.files!=null?[...d.remiDetailLocalData.files,...O]:O,updatesByLineId:u},reimbursementId:a}),CF({reimbursementId:a,addRemiAutoFields:I}),xF({reimbursementId:a,tentativeMerchantNameByLineId:E}),...h,RI({reimbursementId:a,fetchState:"Completed"})),o!=null&&m.push(Bd(o,!0,a)),_(m)}}))),(n,i,r)=>n.pipe(S(VC.match),A((t=>{const{accountId:e,selectedPeriod:a,statementUploadId:s}=t.payload,o=`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/2.0/statement-uploads/${s}`;return r.getJSON(o).pipe(y((c=>P(c)===!0&&c.data!=null?_([Dn({accountId:e,selectedPeriod:a,parsedStatementData:LC(c.data)}),vy({accountId:e,selectedPeriod:a})]):p(Jn({accountId:e,selectedPeriod:a,error:c.status})))),v((c=>p(Jn({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Parse Statement REST API call errored out "+(c instanceof Error?c.message:String(c)))})))))}))),(n,i,r)=>n.pipe(S(HL.match),y((t=>{const{target:e,companyId:a,fileId:s,documentType:o}=t.payload,c=`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/documents/process/sync`,d={provided_document_type:o,files:[{file_id:s}],processing_priority:10,metadata:{source:"kyc_kyb_autofill"}},l=YL({target:e,fileId:s});return r.postAndGetJSON(c,d).pipe(y((u=>{if(!P(u)||u.data==null)return p(l);const m=u.data.files?.[0]?.extracted_data;if(m==null)return p(l);let h;switch(o){case"certificate_of_incorporation":h=(I=>{const E={values:{},autoFilledFieldNames:[]};if(se(I.company_legal_name)&&ce(E,"companyLegalName",I.company_legal_name.value),se(I.ein)&&ce(E,"taxIdOrEIN",I.ein.value),se(I.phone_number)&&ce(E,"phone",I.phone_number.value),se(I.product_description)&&ce(E,"companyDescription",I.product_description.value),se(I.website))try{ce(E,"website",zL(I.website.value))}catch{}if(se(I.industry)&&ce(E,"companyIndustryType",I.industry.value),se(I.sub_industry)&&ce(E,"companySubIndustry",I.sub_industry.value),se(I.type_of_incorporation)&&ce(E,"typeOfIncorporation",I.type_of_incorporation.value),se(I.date_of_incorporation)){const b=zl(I.date_of_incorporation.value);b!=null&&ce(E,"incDate",b)}return se(I.state_of_incorporation)&&ce(E,"stateOfIncorporation",I.state_of_incorporation.value),se(I.countries_of_operations)&&ce(E,"countriesOfOperations",I.countries_of_operations.value),se(I.source_of_funds)&&ce(E,"sourceOfFunds",I.source_of_funds.value),se(I.transaction_volume_expectations)&&ce(E,"transactionVolume",I.transaction_volume_expectations.value),se(I.purpose_of_account)&&ce(E,"purposeOfAccount",I.purpose_of_account.value),se(I.regulated_status)&&ce(E,"regulatedStatus",I.regulated_status.value),se(I.us_nexus)&&ce(E,"usNexus",I.us_nexus.value),E})(m);break;case"tax_ein":h=(I=>{const E={values:{},autoFilledFieldNames:[]};return se(I.legal_business_name)&&ce(E,"companyLegalName",I.legal_business_name.value),se(I.ein)&&ce(E,"taxIdOrEIN",I.ein.value),E})(m)}if(h.autoFilledFieldNames.length===0)return p(l);const g=e==="setup"?QL({companyId:a,fileId:s,values:h.values,autoFilledFieldNames:h.autoFilledFieldNames}):WL({companyId:a,fileId:s,values:h.values,autoFilledFieldNames:h.autoFilledFieldNames});return p(g)})),v((()=>p(l))))}))),(n,i,r)=>n.pipe(S(ZL.match),y((t=>{const{target:e,companyId:a,officerType:s,fileId:o,documentType:c}=t.payload,d=`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/documents/process/sync`,l={provided_document_type:c,files:[{file_id:o}],processing_priority:10,metadata:{source:"kyc_kyb_autofill"}},u=XL({target:e,fileId:o});return r.postAndGetJSON(d,l).pipe(y((m=>{if(!P(m)||m.data==null)return p(u);const h=m.data.files?.[0]?.extracted_data;if(h==null)return p(u);let g;switch(c){case"passport":g=(E=>{const b={values:{},autoFilledFieldNames:[]};if(se(E.first_name)&&ce(b,"firstName",E.first_name.value),se(E.last_name)&&ce(b,"lastName",E.last_name.value),se(E.date_of_birth)){const T=zl(E.date_of_birth.value);T!=null&&ce(b,"birthday",T)}return se(E.nationality)&&ce(b,"nationalityCountryCode",E.nationality.value),b})(h);break;case"driving_license":g=(E=>{const b={values:{},autoFilledFieldNames:[]};if(se(E.first_name)&&ce(b,"firstName",E.first_name.value),se(E.last_name)&&ce(b,"lastName",E.last_name.value),se(E.date_of_birth)){const k=zl(E.date_of_birth.value);k!=null&&ce(b,"birthday",k)}const T=se(E.address_street)?E.address_street.value.trim():void 0,O=se(E.address_city)?E.address_city.value.trim():void 0,x=se(E.address_state)?E.address_state.value.trim():void 0,U=se(E.address_zip)?E.address_zip.value.trim():void 0;return T==null&&O==null&&x==null&&U==null||(b.address={street:T!=null?[T]:[],city:O??"",state:x??"",postalCode:U??"",country:"USA",countryCode:"US"},b.autoFilledFieldNames.push("officerAddress")),b})(h);break;case"social_security_card":g=(E=>{const b={values:{},autoFilledFieldNames:[]};if(se(E.full_name)){const{firstName:T,lastName:O}=(x=>{const U=x.trim().split(/\s+/);if(U.length===1)return{firstName:U[0],lastName:""};const k=U[U.length-1];return{firstName:U.slice(0,-1).join(" "),lastName:k}})(E.full_name.value);T!==""&&ce(b,"firstName",T),O!==""&&ce(b,"lastName",O)}return b})(h)}if(g.autoFilledFieldNames.length===0)return p(u);const I=[e==="setup"?eF({companyId:a,officerType:s,fileId:o,values:g.values,autoFilledFieldNames:g.autoFilledFieldNames}):tF({companyId:a,officerType:s,fileId:o,values:g.values,autoFilledFieldNames:g.autoFilledFieldNames})];if(g.address!=null){const E=`${s.toLowerCase()}_address`;I.push(je({addressType:E,addressToCreate:g.address}))}return _(I)})),v((()=>p(u))))}))),(n,i,r)=>n.pipe(S(s$.match),y((t=>{const{localData:e,person:a}=i.value.peopleState.personDetails,{userRole:s}=a,{isZeniTenant:o}=t.payload,c=Y(i.value),d=xH(e[0],o,a,c.company);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user-roles/${s.userRoleId}`,d).pipe(y((l=>{if(P(l)&&l.data!=null){const u=[H(l.data?.user_roles??[]),o$(),N({messageSection:"people_update_person",messageText:"success",type:"success"})];return l.data?.user_roles&&zs(u,l.data?.user_roles[0]),_(u)}{const u=[Vg(l.status)];return _(u)}})),v((l=>p(Vg(f("Unexpected error","User Roles save updates errored out"+JSON.stringify(l)))))))}))),(n,i)=>n.pipe(S(po.match),y((r=>{const t=i.value.cardPolicyState.policyDocumentExtraction,e=t.aiCfoAnswerId,a=t.aiCfoChatSessionId,s=t.extractedRules;return e==null||a==null||s==null?F:p(du(e,a,s))}))),(n,i,r)=>n.pipe(S(du.match),A((t=>{const{answerId:e,chatSessionId:a,extractedRules:s}=t.payload,o={extracted_rules:{allowed_entity:{category_codes:s.allowedEntity.categoryCodes,merchant_names:s.allowedEntity.merchantNames},blocked_entity:{category_codes:s.blockedEntity.categoryCodes,merchant_names:s.blockedEntity.merchantNames},confidence_score:s.confidenceScore,policy_name:s.policyName,required_receipt_threshold:s.requiredReceiptThreshold,transaction_limit:s.transactionLimit}};return r.postAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/ai-cfo/policy-recommendation-from-upload`,o).pipe(y((c=>{if(!M(c)||c.data?.wizard_plan?.step_5_review==null)return p(lu(c.status));const d=c.data,l=d.wizard_plan.step_5_review,u={step5Review:{draftPolicies:(l.draft_policies??[]).map(((h,g)=>({id:`draft-${g}`,name:h.name,description:h.description??"",mode:h.mode,allowedEntity:{categoryCodes:h.allowed_entity?.category_codes??[],merchantNames:h.allowed_entity?.merchant_names??[]},blockedEntity:{categoryCodes:h.blocked_entity?.category_codes??[],merchantNames:h.blocked_entity?.merchant_names??[]},applyToCards:h.apply_to_cards??[],requiredReceiptThreshold:h.required_receipt_threshold??0,spendLimits:{transaction:h.spend_limits?.transaction??0}}))),groupingSource:l.grouping_source??"none",prompt:l.prompt??""}},m=d.source!=null?{confidenceScore:d.source.confidence_score,fileName:d.source.file_name,lowConfidenceFields:d.source.low_confidence_fields??[]}:void 0;return p(qT(),FT({answerId:e,chatSessionId:a,wizardPlan:u,source:m}),LT(u,m))})),v((c=>p(lu(f("Unexpected Error","Policy recommendation from upload REST API call errored out"+JSON.stringify(c)))))),ge(n.pipe(S(ou.match))))}))),(n,i,r)=>n.pipe(S((t=>Nr.match(t)||Ca.match(t))),y((t=>{const{batchId:e}=t.payload;let a=!1;const s=Ca.match(t)?5e3:3e4;return Za(s,1e4).pipe(ge(We(n.pipe(S(Vn.match)),n.pipe(S(bi.match),S((o=>o.payload.batchId===e&&o.payload.status==="completed"))),n.pipe(S(Oa.match),S((o=>o.payload.batchId===e))),n.pipe(S(m_.match),S((o=>o.payload.batchId===e))))),A((()=>r.getJSON(`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/batches/${e}`).pipe(y((o=>{if(P(o)&&o.data!=null&&Zs(o.data.status)){const c=[],d=Xs(o.data.files);return d.length>0&&c.push(xe(d,(l=>l.transaction_id))),c.push(Oa(eo(o.data,r.apiEndPoints.fileMicroServiceBaseUrl))),c.push(Or({cacheOverride:!0})),_(c)}return F})),v((()=>a?F:(a=!0,p(N({messageSection:"receipts_upload",messageText:"failed",type:"error"})))))))))}))),(n,i)=>n.pipe(S(Vt.match),y((r=>{const t=i.value,{period:e,isAccrualEnabled:a}=r.payload,{selectedPageTab:s}=t.expenseAutomationJESchedulesViewState.uiState,o=[],c=nU.filter((u=>u!==s&&u!=="actual_matching")),d=Y(t),l=t.expenseAutomationViewState.selectedPeriodByTenantId[d.tenantId];if(l!=null&&c.forEach((u=>{const m=di(u,Ie(l));t.expenseAutomationJESchedulesViewState.jeScheduleTransactionKeysByPeriodAndTab[m]!=null||o.push(er(e,!0,u))})),a===!0&&s!=="actual_matching"){const u=Ie({month:e.start.month,year:e.start.year});t.expenseAutomationActualMatchingViewState.matchIdsByPeriod[u]==null&&o.push(pi(e,!0))}return o.length===0?F:_(o)}))),n=>n.pipe(S(bi.match),S((i=>i.payload.status==="completed")),Tr(300),y((i=>_([Or({cacheOverride:!0}),u_({batchId:i.payload.batchId})])))),Yz,(n,i,r)=>n.pipe(S(eJ.match),y((t=>{const e=i.value.invoicingRecordPaymentState.newPaymentDraft,a=t.payload.invoiceId;if(a!=null&&a!==""){const u=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices/${encodeURIComponent(a)}/record-payment`,m=tJ(e);return r.postAndGetJSON(u,m).pipe(y((h=>P(h)&&h.data!=null?[Ua([h.data],"merge"),$r({invoiceId:a}),AS({invoiceId:a}),N({messageSection:"invoicing_payment_recorded",messageText:"success",type:"success"})]:_([ss(h.status),N({messageSection:"invoicing_payment_recorded",messageText:"failed",type:"error",variables:Ee(h.status)})]))),v((h=>_([ss(f("Unexpected Error","Record payment REST API call errored out "+JSON.stringify(h))),N({messageSection:"invoicing_payment_recorded",messageText:"failed",type:"error"})]))))}const s=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/payments`,o=aJ(e),c=(d=i.value,(l=d.invoicingRecordPaymentState.newPaymentDraft.invoiceToLink).trim()!==""?l.trim():void 0);var d,l;return r.postAndGetJSON(s,{...o}).pipe(y((u=>{if(P(u)&&u.data!=null){const m=[ns([u.data],"merge"),rJ(u.data.id),AS({transactionId:u.data.id})];return c!=null&&m.push($r({invoiceId:c})),m.push(N({messageSection:"invoicing_payment_recorded",messageText:"success",type:"success"})),m}return _([ss(u.status),N({messageSection:"invoicing_payment_recorded",messageText:"failed",type:"error",variables:Ee(u.status)})])})),v((u=>_([ss(f("Unexpected Error","Record payment REST API call errored out "+JSON.stringify(u))),N({messageSection:"invoicing_payment_recorded",messageText:"failed",type:"error"})]))))}))),n=>n.pipe(S((i=>TU.match(i)||PU.match(i))),y((()=>p(Cr(void 0,!0))))),(n,i,r)=>n.pipe(S(u_.match),y((t=>{const{batchId:e}=t.payload,a=Date.now(),s=i.value.expenseAutomationMissingReceiptsViewState.bulkUpload.lastBatchDetailRefreshAtById[e];if(s!=null&&a-s<5e3)return F;const o=r.getJSON(`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/batches/${e}`).pipe(y((c=>{if(!P(c)||c.data==null||!Zs(c.data.status))return F;const d=[],l=Xs(c.data.files);return l.length>0&&d.push(xe(l,(u=>u.transaction_id))),d.push(Ws(eo(c.data,r.apiEndPoints.fileMicroServiceBaseUrl))),_(d)})),v((c=>(console.error(`Failed to refresh batch details for ${e}:`,f("Unexpected Error","Refresh batch details errored out: "+JSON.stringify(c))),p(G0({batchId:e}))))));return j(p(AU({batchId:e,timestamp:a})),o)}))),(n,i)=>n.pipe(S(ox.match),A((()=>{const r=i.value,t=Y(r),e=t.companyId,{selectedTransactionCategorizationTab:a}=r.expenseAutomationTransactionsViewState,{selectedPeriodByTenantId:s,currentSelectedView:o}=r.expenseAutomationViewState,c=s[t.tenantId],{selectedAccountId:d}=r.expenseAutomationReconciliationViewState,l=Je(c),u=Se(l.start),m=Se(l.end);if(u==null||m==null||e==null)throw Error(`Invalid start - ${u} and end - ${m} period from given ${c}`);switch(o){case"missing_receipts":return _([Er({start:u,end:m},{amount:75,currencyCode:"USD",currencySymbol:"$"},!0,!0)]);case"flux_analysis":return _([$n(c,!0,!0,null)]);case"je_schedules":return _([Vt({start:u,end:m},!0)]);case"month_end_insights":return _([pm(!0,e,t.tenantId,l.end,!0),lm(e,t.tenantId)]);case"reconciliation":return _(d!=null?[Mt(c,d,!0,!0)]:[Mt(c,void 0,!0,!0)]);default:return _([br(a,{start:u,end:m},!0,!1,void 0,void 0,!0,void 0)])}}))),(n,i,r)=>n.pipe(S(cM.match),A((()=>{const t=[];return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/settings/refresh-all-entities`).pipe(cp(3e3),y((e=>P(e)&&e.data!=null?(t.push(N({messageSection:"data_refresh_update",messageText:"success",type:"success"}),dM()),_(t)):(t.push(jf()),_(t)))),v((()=>(t.push(jf()),_(t)))))}))),(n,i,r)=>n.pipe(S(Vw.match),A((()=>r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/operating-expenses-by-vendor/refresh`).pipe(y((t=>{if(t.status.code>=200&&t.status.code<300){const e=t.status.last_refresh_success_time!=null?te(t.status.last_refresh_success_time):void 0;return p(Lw({lastRefreshSuccessTime:e}))}return p(xg(t.status))})),v((t=>p(xg(f("Unexpected error","Refresh OpEx by Vendor REST API call errored out: "+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(_z.match),y((t=>{const{merchantId:e}=t.payload,{globalMerchantState:a,vendorGlobalReviewViewState:s}=i.value,{vendorGlobalByMerchantId:o}=s,c=o[e].vendorGlobalReviewViewLocalData,d=FE(a,qE(c.tenantId,e));if(c!=null&&d!=null){const l=Array({globalMerchants:ao(a,c.recommendationIds)}),u=Array({globalMerchants:c.recommendedNonExistingGlobalMerchants}),m=so(l,u),h={...qY(d,m)};return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/reviews/global-merchant-list/${e}`,h).pipe(y((g=>{if(M(g)){const I=[{variableName:"_merchant_name_",variableValue:d.tenantMerchantName}],E=[hz(e),N({messageSection:"reject_global_merchant",messageText:"success",type:"success",variables:I})];return _(E)}return g.status.code===409?p(Al({merchantId:e,status:g.status})):p(Al({merchantId:e,status:g.status}),N({messageSection:"reject_global_merchant",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:g.status.message}]}))})),v((g=>p(Al({merchantId:e,status:f("Unexpected Error","Reject Vendor Global Review REST API call errored out"+JSON.stringify(g))})))))}return p([])}))),(n,i,r)=>n.pipe(S(zM.match),A((t=>{const{approvalRuleIds:e,useV3:a}=t.payload,s=`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/bill-pay/approval-rules-v2/reorder`;return r.putAndGetJSON(s,{rule_ids:e}).pipe(y((o=>{if(P(o)&&o.data!=null){const c=o.data.approval_rules.map((l=>l.approval_rule_id)),d=[Xe(o.data.approval_rules),KM(c),N({messageSection:"bill_pay_approval_reorder",messageText:"success",type:"success"})];return _(d)}{const c=[Av(o.status),N({messageSection:"bill_pay_approval_reorder",messageText:"failed",type:"error"}),kc(!0,!0,a)];return _(c)}})),v((o=>_([Av(f("Unexpected Error","Reorder Bill Pay Approval Rules errored out"+JSON.stringify(o))),N({messageSection:"bill_pay_approval_reorder",messageText:"failed",type:"error"}),kc(!0,!0,a)]))))}))),(n,i,r)=>n.pipe(S(WF.match),A((t=>{const{approvalRuleIds:e,useV3:a}=t.payload,s=`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/reimbursements/approval-rules-v2/reorder`;return r.putAndGetJSON(s,{rule_ids:e}).pipe(y((o=>{if(P(o)&&o.data!=null){const c=o.data.approval_rules.map((l=>l.approval_rule_id)),d=[Xe(o.data.approval_rules),ZF(c),N({messageSection:"reimbursement_approval_reorder",messageText:"success",type:"success"})];return _(d)}return _([XI(o.status),N({messageSection:"reimbursement_approval_reorder",messageText:"failed",type:"error"}),Vd(!0,!1,!1,a)])})),v((o=>_([XI(f("Unexpected Error","Reorder Reimbursement Approval Rules errored out"+JSON.stringify(o))),N({messageSection:"reimbursement_approval_reorder",messageText:"failed",type:"error"}),Vd(!0,!1,!1,a)]))))}))),(n,i,r)=>n.pipe(S(FC.match),A((t=>{const{accountId:e,selectedPeriod:a,statementUploadId:s}=t.payload;return r.postAndGetJSON(`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/statements/${s}/reparse`).pipe(y((o=>{if(P(o)===!0&&o.data!=null){const c=Aa(e,a);return _([qC(c,o.data),jC({accountId:e,selectedPeriod:a})])}return p(Iy({accountId:e,selectedPeriod:a,error:o.status}))})),v((o=>p(Iy({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Reparse Statement REST API call errored out "+(o instanceof Error?o.message:String(o)))})))))}))),(n,i,r)=>n.pipe(S(nR.match),y((t=>{const{reportIdToResync:e}=t.payload,a=sR(e)||oR(e),s=a?"generate-group-by-project-reports":"generate-group-by-class-reports";return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/tasks/${s}`,{is_hard_refresh:!0}).pipe(A((o=>{if(P(o)){const c=[a?hf({reportIdToResync:e}):yf({reportIdToResync:e}),iR({hasNewData:o.status.code===200})];return _(c)}return _([gf({error:o.status}),N({messageSection:"reports_resync",messageText:"failed",type:"error"})])})),v((o=>_([gf({error:f("Unexpected error","Resync API call errored out: "+JSON.stringify(o))}),N({messageSection:"reports_resync",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(dL.match),A((t=>{const{cardId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}/resend-reminder`,{card_issuance_request:!0}).pipe(y((a=>M(a)?p(ct(a.data),lL({cardId:t.payload.cardId}),N({messageSection:"charge_card_resend_invite",messageText:"success",type:"success"})):p(mI(a.status)))),v((a=>p(mI(f("Unexpected Error","Resend Charge Card REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(c$.match),y((t=>r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/invites`,{is_reinvited:!0,user_id:t.payload.userId}).pipe(y((e=>P(e)?p(H([e.data]),d$(t.payload.userId),N({messageSection:"people_invite_people",messageText:"success",type:"success"})):p(Lg(t.payload.userId)))),v((()=>p(Lg(t.payload.userId)))))))),Qz,(n,i,r)=>n.pipe(S(P$.match),A((t=>r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/company-referrals`,{reinvite_to:t.payload.emailId}).pipe(y((e=>M(e)&&e.data!=null?[A$({emailId:t.payload.emailId,timestamp:e.data.last_invite_timestamp}),N({messageSection:"referral_invite_sent",messageText:"success",type:"success"})]:p(ps(e.status)))),v((e=>p(ps(f("Unexpected error","Resend referral REST API call errored out"+JSON.stringify(e)))))))))),Wz,(n,i,r)=>n.pipe(S(EN.match),y((t=>{const e=[];if(t.payload.vendorId!=null){const a=Ce(i.value.vendorState,t.payload.vendorId);a!=null&&e.push(_n({vendorId:t.payload.vendorId,localData:QE(a)}))}else e.push(_n({localData:{},vendorId:void 0}));return _(e)}))),(n,i,r)=>n.pipe(S(Yp.match),y((t=>{const e=[];if(t.payload.vendorId!=null){const a=Ce(i.value.vendorState,t.payload.vendorId);a!=null&&e.push(cr({vendorId:t.payload.vendorId,localData:Ls(a,i.value)}))}else e.push(cr({localData:void 0,vendorId:void 0}));return _(e)}))),(n,i,r)=>n.pipe(S(tm.match),y((t=>{const e=[],a=Ce(i.value.vendorState,t.payload.vendorId);return a!=null&&e.push(Xp({vendorId:t.payload.vendorId,localData:em(a,i.value)})),_(e)}))),(n,i,r)=>n.pipe(S(NU.match),y((()=>{const t=i.value,{expenseAutomationMissingReceiptsViewState:{bulkUpload:e},expenseAutomationViewState:{selectedPeriodByTenantId:a}}=t;if(e.phase!=="idle")return F;if(e.batchListFetchState.fetchState==="In-Progress")return F;const s=t.tenantState.loggedInUser?.userId;if(s==null)return F;const o=a[Y(t).tenantId];if(o==null)return F;const{end:c,start:d}=Ml(s_),l={start_date:d,end_date:c,sort_order:"desc"},u=`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/batches?query=${encodeURIComponent(JSON.stringify(l))}`,m=`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/batches/`,h=Ie(o),g=(e.batchListByPeriod[h]??[]).length>0&&e.batchListFetchState.fetchState==="Completed";return(g?p(null):r.getJSON(u).pipe(v((()=>p(null))))).pipe(y((I=>{const E=g?e.batchListByPeriod[h]??[]:I!=null&&P(I)&&I.data!=null?I.data.batches.map(o_):null;if(E==null)return F;const b=g?null:Ln({batchList:E,selectedPeriod:o}),T=E.filter((x=>{const U=x.status.toLowerCase();return U==="processing"||U==="pending"})),O=_(T).pipe(xa((x=>r.getJSON(`${m}${x.batchId}`).pipe(y((U=>{if(!P(U)||U.data==null)return F;const k=U.data,C=k.user_id;return C==null||C!==s?F:OU(k.status)?p(Ca({batchId:x.batchId,totalFiles:x.totalFiles})):F})),v((()=>F))))),ke(1));return b!=null?j(p(b),O):O})))}))),(n,i,r)=>n.pipe(S(Bm.match),A((t=>{const{companyId:e}=t.payload,a=ur(i.value.tenantState,e);return a==null?_([gt({status:f("Unexpected error","Tenant not found for company")}),N({messageSection:"accounting_projects_enabled_update",messageText:"failed",type:"error"})]):r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounting_provider_project_enablement_status`).pipe(y((s=>P(s)&&s.data!=null?s.data.is_accounting_provider_project_apis_enabled!==!0||s.data.is_accounting_projects_enabled!==!0?_([gt({status:f("Projects not enabled in QBO","Please enable projects in QBO before enabling in the Zeni dashboard!")}),N({messageSection:"accounting_projects_qbo_not_enabled",messageText:"failed",type:"error"})]):_([Um({enabled:!0,tenantId:a}),km(),N({messageSection:"accounting_projects_enabled_update",messageText:"success",type:"success"})]):_([gt({status:s.status}),N({messageSection:"accounting_projects_enabled_update",messageText:"failed",type:"error"})]))),v((s=>p(gt({status:f("Unexpected error",`Accounting provider project enablement status errored out - ${s instanceof Error?s.message:JSON.stringify(s)}`)}),N({messageSection:"accounting_projects_enabled_update",messageText:"failed",type:"error"})))))}))),(n,i,r)=>n.pipe(S(mR.match),y((t=>{const{companyId:e}=t.payload,a=i.value,s=Ae(a.companyState,e),o=s?.company.companyInfo.tenantId,c={company_id:e,type:"direct_debit",payment_source_type:"processor_token"};return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscriptions/payment-sources`,c,Object.assign({"zeni-tenant-id":o})).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[];return l.push(yR({companyId:e,onboardingInfo:d.data.companies[0].onboarding_info})),d.data.companies[0].onboarding_info?.is_zeni_subscriptions_payment_account_linked!==!1?l.push(N({messageSection:"retry_bank_account_connection",messageText:"success",type:"success"})):l.push(N({messageSection:"retry_bank_account_connection",messageText:"failed",type:"error"})),_(l)}return p(Pf({companyId:e,error:d.status}),N({messageSection:"retry_bank_account_connection",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}))})),v((d=>p(Pf({companyId:e,error:f("Unexpected error","Bank account connection errored out"+JSON.stringify(d))}),N({messageSection:"retry_bank_account_connection",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:"Bank account connection errored out"+JSON.stringify(d)}]})))))}))),(n,i,r)=>n.pipe(S(MJ.match),y((t=>{const{companyId:e}=t.payload,a=i.value,s=Wi(a.companyState,e),o=s?.company.companyInfo.tenantId,c={company_id:e,type:"direct_debit",payment_source_type:"processor_token"};return o!=null?r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscriptions/payment-sources`,c,Object.assign({"zeni-tenant-id":o})).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[];return l.push(VJ({companyId:e})),d.data.companies[0].onboarding_info?.is_zeni_subscriptions_payment_account_linked!==!1?l.push(N({messageSection:"retry_bank_account_connection",messageText:"success",type:"success"}),LJ({companyId:e,onboardingInfo:d.data.companies[0].onboarding_info})):l.push(N({messageSection:"retry_bank_account_connection",messageText:"failed",type:"error"})),_(l)}return p(eg({companyId:e,error:d.status}),N({messageSection:"retry_bank_account_connection",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}))})),v((d=>p(eg({companyId:e,error:f("Unexpected error","Bank account connection for onboarding errored out"+JSON.stringify(d))}),N({messageSection:"retry_bank_account_connection",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:"Bank account connection for onboarding errored out"+JSON.stringify(d)}]}))))):_([])}))),(n,i,r)=>n.pipe(S(sU.match),A((t=>{const e=i.value,{expenseAutomationJESchedulesViewState:{jeScheduleLocalDataById:a},expenseAutomationViewState:{selectedPeriodByTenantId:s}}=e,o=Y(e),c=s[o.tenantId],{scheduledJournalEntryID:d,jeScheduleTransactionKey:l}=t.payload,u=a[d];if(u==null)return _([]);const m={...rH(u)};return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/retry_sje_posting`,m).pipe(y((h=>{if(M(h)){const g=[];return g.push(oU({scheduledJournalEntryID:d}),iU(l,c),cU({scheduledJournalEntryID:d}),nt({tenantId:o.tenantId,period:c,refreshViewInBackground:!0}),N({messageSection:"je_posted",messageText:"success",type:"success"})),_(g)}{const g=[];return g.push(t_({status:h.status,scheduledJournalEntryID:d})),g.push(N({messageSection:"je_posted",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:h.status.message}]})),_(g)}})),v((h=>{const g=[];return g.push(t_({status:f("Unexpected Error","retry JE schedule posting REST API call errored out"+JSON.stringify(h)),scheduledJournalEntryID:d})),g.push(N({messageSection:"je_posted",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(h)}]})),_(g)})))}))),(n,i,r)=>n.pipe(S($D.match),y((t=>{const{taskId:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/qbo/sync-tasks/${encodeURIComponent(e)}/retry`;return r.postAndGetJSON(a,{}).pipe(y((s=>P(s)?p(RD({status:s.data?.status??"",taskId:s.data?.task_id??e}),Fi(),N({messageSection:"invoicing_qbo_sync_health_retry",messageText:"success",type:"success"})):_([hS({status:s.status,taskId:e}),N({messageSection:"invoicing_qbo_sync_health_retry",messageText:"failed",type:"error",variables:Ee(s.status)})]))),v((s=>_([hS({status:f("Unexpected Error","Retry QBO sync task REST API call errored out "+JSON.stringify(s)),taskId:e}),N({messageSection:"invoicing_qbo_sync_health_retry",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(JM.match),y((t=>{const{billId:e,actionType:a}=t.payload,{editBillDetailViewState:s}=i.value,o=Oe(e),c=s.editBillStateById[o];let d,l=`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions/${e}`;if(a==="retry"){const u=c.billDetailLocalData.paymentDetailsSection;l=`${l}/payment/retry`,d=c.billDetailLocalData.isCollectToAccountInfoFromVendorContact?{bill_pay_info:{to_account_vendor_email:c.billDetailLocalData.toAccountVendorEmail??null,is_collect_to_account_info_from_vendor_contact:c.billDetailLocalData.isCollectToAccountInfoFromVendorContact}}:{bill_pay_provider:"zeni",bill_pay_info:{payment_date:u?.paymentDate??null,to_account:u?.paymentType?.method.includes("international")===!0?{payment_instrument_id:u?.paymentTo??null}:{account_id:u?.paymentTo??null},from_account:{account_id:u?.withdrawFrom?.id??null,account_type:u?.withdrawFrom?.accType?Ve(qa(u?.withdrawFrom?.accType)):null}}}}else l=`${l}/payment/refund`;return r.putAndGetJSON(l,d).pipe(y((u=>{if(P(u)){const m=[];return u.data!=null&&u.data.transactions[0]?.transaction_id!=null&&m.push(gs(u.data.transactions[0])),m.push(wM(t.payload.billId,t.payload.actionType)),m.push(N({messageSection:t.payload.actionType==="refund"?"bill_pay_refund":"bill_pay_retry",messageText:"success",type:"success"})),_(m)}return p(lv(e,t.payload.actionType,u.status),N({messageSection:"bill_pay_cancelled_deleted",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:u.status.message}]}))})),v((u=>p(lv(t.payload.billId,t.payload.actionType,f("Unexpected Error","Retry Refund bill REST API call errored out "+JSON.stringify(u)))))))}))),(n,i,r)=>n.pipe(S(dU.match),y((t=>{const e=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:a}}=e,{jeScheduleId:s,jeScheduleTransactionKey:o,reason:c,note:d,scheduleType:l}=t.payload,u=Y(e),m=a[u.tenantId],h={je_schedules:[{je_schedule_id:s,feedback:{reason:c,...d!=null&&d!==""?{note:d}:{}}}]};return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${s}/revert`,h).pipe(y((g=>P(g)&&g.data!=null?_([lU({jeScheduleTransactionKey:o}),l==="accrued_expenses"?uU(o):Hy(o,m),nt({tenantId:u.tenantId,period:m,refreshViewInBackground:!0}),N({messageSection:"revert_schedule",messageText:"success",type:"success"})]):_([a_({jeScheduleTransactionKey:o,status:g.status}),N({messageSection:"revert_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:g.status.message}]})]))),v((g=>_([a_({jeScheduleTransactionKey:o,status:f("Unexpected Error",`Revert schedule REST API call errored out ${JSON.stringify(g)}`)}),N({messageSection:"revert_schedule",messageText:"failed",type:"error"})]))),ge(n.pipe(S($e.match))))}))),(n,i,r)=>n.pipe(S(lq.match),y((()=>{const{remisBulkActionViewState:t}=i.value,e={entity_ids:t.remisSelectedForBulkAction};return r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bulk/reimbursements/transactions/validate?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(M(a)){const s=[];return s.push(uq(a.data?.validation_results??[])),_(s)}return p(ob(a.status))})),v((a=>p(ob(f("Unexpected Error","Remi bulk review action REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(lx.match),y((t=>{const{actionType:e,operatingExpenseIds:a,selectedPeriod:s}=t.payload,o={...zK(e,a)},c=Y(i.value);return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/month-close/flux-analysis
2
- `,o).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[];return l.push(W(d.data.accounts,"account_list"),He("class_list",d.data.accounting_class),le(d.data.vendors,"merge"),V({users:d.data.users,updateType:"merge"})),d.data.flux_analysis_entities!=null&&l.push(ux({expensesPayload:d.data.flux_analysis_entities?.operating_expenses??[],currency:d.data.currency,selectedPeriod:s})),c!=null&&l.push(nt({tenantId:c.tenantId,period:s,refreshViewInBackground:!0})),l.push(N({messageSection:e==="review"?"flux_analysis_reviewed":"flux_analysis_unreviewed",messageText:"success",type:"success",variables:[{variableName:"_vendors_count_",variableValue:`${a.length}`},{variableName:"_vendor_",variableValue:a.length===1?"vendor":"vendors"}]})),_(l)}return p(Oy({operatingExpenseIds:a,status:d.status}))})),v((d=>p(Oy({operatingExpenseIds:a,status:f("Unexpected Error","review flux analysis view REST API call errored out"+JSON.stringify(d))})))))}))),(n,i,r)=>n.pipe(S(uL.match),A((t=>{const{cardId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}/cancel-issue-request`).pipe(y((a=>M(a)?p(pL(e),N({messageSection:"charge_card_revoke_invite",messageText:"success",type:"success"})):p(yI(a.status)))),v((a=>p(yI(f("Unexpected Error","Revoke Charge Card REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(mL.match),A((t=>{const{cardIds:e}=t.payload,a={card_ids:e};return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/bulk/cancel-issue-request`,a).pipe(y((s=>M(s)&&s.data!=null?p(Sd({fetchState:"Completed",revokedCardIds:e}),N({messageSection:"revoke_invite_charge_cards",messageText:"success",type:"success",variables:[{variableName:"_number_of_cards_",variableValue:e.length===1?"1 card":`${e.length} cards`}]})):p(N({messageSection:"revoke_invite_charge_cards",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:s.status.message}]}),Sd({fetchState:"Error",error:s.status,revokedCardIds:[]})))),v((s=>p(N({messageSection:"revoke_invite_charge_cards",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(s)}]}),Sd({fetchState:"Error",error:f("Unexpected Error","Revoke invite charge cards API call errored out"+JSON.stringify(s)),revokedCardIds:[]})))))}))),(n,i,r)=>n.pipe(S(Xk.match),y((t=>{const{action:e,id:a}=t.payload,s={action:e},o=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/catalog/plans/${encodeURIComponent(a)}/actions`;return r.postAndGetJSON(o,s).pipe(y((c=>P(c)&&c.data!=null?[Dr([c.data],"merge"),eB({id:a})]:p(th({error:c.status,id:a})))),v((c=>p(th({error:f("Unexpected Error","Catalog plan action REST API call errored out "+JSON.stringify(c)),id:a})))))}))),(n,i,r)=>n.pipe(S(tB.match),y((t=>{const{action:e,id:a,parentItemId:s}=t.payload,o={action:e},c=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/catalog/products/${encodeURIComponent(a)}/actions`,d=s??a;return r.postAndGetJSON(c,o).pipe(y((l=>P(l)&&l.data!=null?[ah([l.data],"merge"),...s!=null?[rh(s,l.data)]:[],aB({id:d})]:p(nh({error:l.status,id:d})))),v((l=>p(nh({error:f("Unexpected Error","Catalog product action REST API call errored out "+JSON.stringify(l)),id:d})))))}))),(n,i,r)=>n.pipe(S(mB.match),y((t=>{const{action:e,id:a}=t.payload,s={action:e},o=_H[e],c=(l,u)=>o==null?[]:[N({messageSection:o,messageText:l,type:l==="success"?"success":"error",variables:Ee(u)})],d=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/discounts/${encodeURIComponent(a)}/actions`;return r.postAndGetJSON(d,s).pipe(y((l=>P(l)&&l.data!=null?[Wn([l.data],"merge"),yB({id:a}),...c("success")]:_([ch({error:l.status,id:a}),...c("failed",l.status)]))),v((l=>_([ch({error:f("Unexpected Error","Discount action REST API call errored out "+JSON.stringify(l)),id:a}),...c("failed")]))))}))),(n,i,r)=>n.pipe(S(ID.match),y((t=>{const{action:e,body:a,id:s}=t.payload,o=gH[e],c=(l,u)=>o==null?[]:[N({messageSection:o,messageText:l,type:l==="success"?"success":"error",variables:Ee(u)})],d=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/dunning/${encodeURIComponent(s)}/${e}`;return r.postAndGetJSON(d,a??{}).pipe(y((l=>P(l)&&l.data!=null?[Vi([l.data],"merge"),bD({id:s}),...c("success")]:_([Qh({error:l.status,id:s}),...c("failed",l.status)]))),v((l=>_([Qh({error:f("Unexpected Error","Dunning action REST API call errored out "+JSON.stringify(l)),id:s}),...c("failed")]))))}))),(n,i,r)=>n.pipe(S((t=>HB.match(t)&&t.payload.action!=="issue-credit-note")),y((t=>{const{action:e,body:a,invoiceId:s}=t.payload,o=SH[e],c=(l,u)=>o==null?[]:[N({messageSection:o,messageText:l,type:l==="success"?"success":"error",variables:Ee(u)})],d=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices/${encodeURIComponent(s)}/${e}`;return r.postAndGetJSON(d,a??{}).pipe(y((l=>P(l)&&l.data!=null?[Ua([l.data],"merge"),z(kr([l.data])),Th({invoiceId:s}),...c("success")]:_([rs({error:l.status,invoiceId:s}),...c("failed",l.status)]))),v((l=>_([rs({error:f("Unexpected Error","Invoice action REST API call errored out "+JSON.stringify(l)),invoiceId:s}),...c("failed")]))))}))),(n,i,r)=>n.pipe(S(zD.match),y((t=>{const{action:e,body:a,id:s}=t.payload,o=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/payments/${encodeURIComponent(s)}/${e}`;return r.postAndGetJSON(o,a??{}).pipe(y((c=>P(c)&&c.data!=null?[ns([c.data],"merge"),KD({id:s})]:p(bS({error:c.status,id:s})))),v((c=>p(bS({error:f("Unexpected Error","Payment action REST API call errored out "+JSON.stringify(c)),id:s})))))}))),(n,i,r)=>n.pipe(S($B.match),y((t=>{const{action:e,body:a,id:s}=t.payload,o={action:e,...a??{}},c=hH[e],d=(u,m)=>c==null?[]:[N({messageSection:c,messageText:u,type:u==="success"?"success":"error",variables:Ee(m)})],l=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/subscriptions/${encodeURIComponent(s)}/actions`;return r.postAndGetJSON(l,o).pipe(y((u=>P(u)&&u.data!=null?[Ba([u.data],"merge"),z(ka([u.data])),RB({id:s}),...d("success")]:_([vh({error:u.status,id:s}),...d("failed",u.status)]))),v((u=>_([vh({error:f("Unexpected Error","Subscription action REST API call errored out "+JSON.stringify(u)),id:s}),...d("failed")]))))}))),(n,i,r)=>n.pipe(S(pA.match),y((t=>{const{scheduleId:e}=t.payload;return r.postAndGetJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/routines/${encodeURIComponent(e)}/run`,{}).pipe(y((a=>M(a)?p(mA(),_t(),ep({scheduleId:e})):p(rp(a.status)))),v((a=>p(rp(f("Unexpected Error","Run routine REST API call failed",a instanceof Error?{message:a.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(uP.match),y((()=>{const t=(e=>{const a=[],s=(o,c,d)=>{const l=a.find((u=>u.account_id===o));if(l){if(c!==""&&l.labels&&!l.labels.includes(c)&&l.labels.push(c),d!=null){const{is_bank_account:u,...m}=d;l.tax_1099_config={...l.tax_1099_config,...m,is_bank_account:l.tax_1099_config?l.tax_1099_config.is_bank_account:u}}}else o!==""&&a.push({account_id:o,labels:c.length===0?[]:[c],tax_1099_config:d})};if(e.selectedIncomeAccountId!=null?s(e.selectedIncomeAccountId,"uncategorized_income",null):e.previousIncomeAccount&&s(e.previousIncomeAccount.accountId,"",null),e.selectedExpenseAccountId!=null?s(e.selectedExpenseAccountId,"uncategorized_expense",null):e.previousExpenseAccount&&s(e.previousExpenseAccount.accountId,"",null),e.selectedBillPayAccountId!=null?s(e.selectedBillPayAccountId,"bank_charges_and_fees",null):e.previousBillPayAccount&&s(e.previousBillPayAccount.accountId,"",null),e.selectedReimbursementsAccountId!=null?s(e.selectedReimbursementsAccountId,"travel_transportation",null):e.previousReimbursementsAccount&&s(e.previousReimbursementsAccount.accountId,"",null),e.selectedPrepaidExpensesAccountIds.length>0?e.selectedPrepaidExpensesAccountIds.forEach((o=>{s(o,"prepaid_expenses",null)})):e.previousPrepaidExpensesAccount.length>0&&e.previousPrepaidExpensesAccount.forEach((o=>{s(o.accountId,"",null)})),e.selectedFixedAssetsAccountIds.length>0?e.selectedFixedAssetsAccountIds.forEach((o=>{s(o,"fixed_assets",null)})):e.previousFixedAssetsAccount.length>0&&e.previousFixedAssetsAccount.forEach((o=>{s(o.accountId,"",null)})),e.selectedAccruedExpensesAccountIds.length>0?e.selectedAccruedExpensesAccountIds.forEach((o=>{s(o,"accrued_expenses",null)})):e.previousAccruedExpensesAccount.length>0&&e.previousAccruedExpensesAccount.forEach((o=>{s(o.accountId,"",null)})),e.selectedBankAccounts1099FilingAccountIds.length>0?(e.selectedBankAccounts1099FilingAccountIds.forEach((o=>{s(o,"",{is_bank_account:!0,is_expense_account:!1,expense_type:null,type_1099:null,box_type:null})})),e.previousBankAccounts1099FilingAccount.filter((o=>!e.selectedBankAccounts1099FilingAccountIds.includes(o.accountId))).map((o=>o.accountId)).forEach((o=>{s(o,"",null)}))):e.previousBankAccounts1099FilingAccount.length>0&&e.previousBankAccounts1099FilingAccount.forEach((o=>{s(o.accountId,"",null)})),e.selectedExpenseAccounts1099FilingAccountIds.length>1){e.selectedExpenseAccounts1099FilingAccountIds.forEach((c=>{s(c.accountId,"",{is_bank_account:e.selectedBankAccounts1099FilingAccountIds.includes(c.accountId),is_expense_account:!0,expense_type:c.expenseType,type_1099:c.type1099,box_type:c.boxType})}));const o=e.selectedExpenseAccounts1099FilingAccountIds.map((c=>c.accountId));e.previousExpenseAccounts1099FilingAccount.filter((c=>!o.includes(c.accountId))).map((c=>c.accountId)).forEach((c=>{s(c,"",null)}))}else if(e.selectedExpenseAccounts1099FilingAccountIds.length===1&&e.selectedExpenseAccounts1099FilingAccountIds[0].accountId!==""){e.selectedExpenseAccounts1099FilingAccountIds.forEach((c=>{s(c.accountId,"",{is_bank_account:e.selectedBankAccounts1099FilingAccountIds.includes(c.accountId),is_expense_account:!0,expense_type:c.expenseType,type_1099:c.type1099,box_type:c.boxType})}));const o=e.selectedExpenseAccounts1099FilingAccountIds.map((c=>c.accountId));e.previousExpenseAccounts1099FilingAccount.filter((c=>!o.includes(c.accountId))).map((c=>c.accountId)).forEach((c=>{s(c,"",null)}))}else e.previousExpenseAccounts1099FilingAccount.length>0&&e.previousExpenseAccounts1099FilingAccount.forEach((o=>{s(o.accountId,"",null)}));return a})(i.value.accountMappingState.data);if(t.length===0){const e=[_o({status:f("No Account Mapping Data to Save")})];return _(e)}return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts`,{accounts:t}).pipe(y((e=>{if(M(e)){const a=[cn(),pP(),N({messageSection:"settings_accounting_accounts_updated",messageText:"success",type:"success"})];return _(a)}{const a=[_o({status:e.status})];return _(a)}})),v((e=>p(_o({status:f("Unexpected error","Save Account Mapping REST API call errored out"+JSON.stringify(e))})))))}))),(n,i,r)=>n.pipe(S(_x.match),y((()=>{const t=(e=>{const a=[],s=(c,d)=>{const l=a.find((u=>u.account_id===c));l?d!==""&&l.labels&&!l.labels.includes(d)&&(l.labels=[...l.labels,d]):c!==""&&a.push({account_id:c,labels:d.length===0?[]:[d],tax_1099_config:null})},o=(c,d,l)=>{c.length>0?c.forEach((u=>{s(u,l)})):d.length>0&&d.forEach((u=>{s(u.accountId,"")}))};return o(e.selectedPrepaidExpensesAccountIds,e.previousPrepaidExpensesAccount,KK),o(e.selectedFixedAssetsAccountIds,e.previousFixedAssetsAccount,HK),o(e.selectedAccruedExpensesAccountIds,e.previousAccruedExpensesAccount,YK),a})(i.value.expenseAutomationJESchedulesViewState.accountSettings.localData);if(t.length===0){const e=[li({status:f("No Account Mapping Data to Save")})];return _(e)}return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts`,{accounts:t}).pipe(y((e=>{if(M(e)){const a=[hx(),N({messageSection:"settings_accounting_accounts_updated",messageText:"success",type:"success"})];return _(a)}{const a=[li({status:e.status})];return _(a)}})),v((e=>p(li({status:f("Unexpected error","Save Account Mapping REST API call errored out"+JSON.stringify(e))})))))}))),(n,i,r)=>n.pipe(S(aP.match),A((t=>r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/connections/${t.payload.connectionId}`,{api_key:t.payload.credentials.api_key,connection_name:t.payload.connectionName,connection_type:t.payload.connectionType,site:t.payload.credentials.site},Object.assign({"zeni-tenant-id":t.payload.tenantId})).pipe(y((e=>{if(P(e))return _([rP(t.payload.tenantId,t.payload.connectionType,e.data)]);const a=e.status??f("Failed to save connection. Please try again.");return _([gu(t.payload.tenantId,a)])})),v((e=>{const a=e instanceof Error?e.message:"Unexpected error saving connection.";return _([gu(t.payload.tenantId,f(a))])})))))),(n,i,r)=>n.pipe(S(P1.match),y((t=>{const e=i.value,{billStageCode:a,billId:s,isForMarkAsPaid:o,isApproverMarkingAsPaid:c}=t.payload,d=Oe(s??""),l=s!=null?e.editBillDetailViewState.editBillStateById[d]:e.editBillDetailViewState.newBillState,u=(function(g,I,E,b,T,O,x,U){const k=T.billId;let C;const B=T.billDetailLocalData.paymentDetailsSection?.withdrawFrom,J=tc(E,B?.id??"")?.zeniAccountId,L=!!T.billDetailLocalData.isRecurring,R={vendor_id:T.billDetailLocalData.vendor?.qboId??"",vendor_name:T.billDetailLocalData.vendor?.name??"",candidate_vendor_name:T.billDetailLocalData.vendor?.qboId!=null?void 0:T.addBillAutoFields.tentativeVendorName??T.billDetailLocalData.candidateVendorname,ocr_parsed_vendor_term:T.addBillAutoFields.tentativeVendorName?T.addBillAutoFields.tentativeVendorName:null,transaction_type:"bill",bill_pay_provider:"zeni",account_id:J!=null?tt(g,J,"bill_pay")?.qboId:"",file_id:T.billDetailLocalData.file?.fileId??"",transaction_date:T.billDetailLocalData.whatForSection?.invoiceDate?.format("YYYY-MM-DD")??me().format("YYYY-MM-DD"),due_date:T.billDetailLocalData.whatForSection?.billDueDate?.format("YYYY-MM-DD")??null,total_amount:T.billDetailLocalData.totalAmount?.amount??0,recipient_total_amount:T.billDetailLocalData.recipientTotalAmount?.amount??0,bill_pay_info:{stage:{code:O},payment_date:YH(T.billDetailLocalData),from_account:{account_id:T.billDetailLocalData.paymentDetailsSection?.withdrawFrom?.id??"",account_type:Ve(T.billDetailLocalData.paymentDetailsSection?.withdrawFrom?.accType)??""},to_account:{...T.billDetailLocalData.paymentDetailsSection?.paymentType?.method.includes("international")===!0?{payment_instrument_id:T.billDetailLocalData.isCollectToAccountInfoFromVendorContact?null:T.billDetailLocalData.paymentDetailsSection?.paymentTo??null}:{account_id:T.billDetailLocalData.isCollectToAccountInfoFromVendorContact?null:T.billDetailLocalData.paymentDetailsSection?.paymentTo??null}},to_account_vendor_email:T.billDetailLocalData.toAccountVendorEmail??null,is_collect_to_account_info_from_vendor_contact:T.billDetailLocalData.isCollectToAccountInfoFromVendorContact,is_cancelled:!1,bill_payment_method_type:xT(T.billDetailLocalData.paymentDetailsSection?.paymentType),international_transfer_fee_bearer_payment_method:T.billDetailLocalData.paymentDetailsSection?.paymentType?.method.includes("international")===!0&&T.billDetailLocalData.vendor?.vendorCurrencyCode==="USD"?T.billDetailLocalData.paymentDetailsSection.internationalTransferFeeBearerPaymentMethod??"swift_our":null,outside_zeni_transaction_payment_mode:T.billDetailLocalData.outsideZeniPaymentLocalData?.paymentMode??null,bill_payment_status:{code:x?"mark_as_paid":null}},document_id:T.billDetailLocalData.whatForSection?.invoiceNumber,transaction_memo:T.billDetailLocalData.whatForSection?.memo,currency_code:T.billDetailLocalData.whatForSection?.currencyCode??"USD",recipient_currency_code:T.billDetailLocalData.whatForSection?.recipientCurrencyCode??"USD",lines:Object.keys(T.billDetailLocalData.updatesByLineId).map((q=>{const $=T.billDetailLocalData.updatesByLineId[q],D=(w=$,{account:T1,class:E1,...w});var w;return N1(D)}))};if(L||(R.vendor_name=T.billDetailLocalData.vendor?.name??""),k!=null?(C=ee(I.transactionById,k,void 0),R.sync_token=C?.syncToken??null,R.update_time=C?.updateTime.format("YYYY-MM-DD")??null,U&&(R.is_outside_zeni_bill_marked_as_paid_by_approver=!0),C?.isRecurring===!0&&!T.billDetailLocalData.isRecurring&&(R.is_recurring=!1)):R.are_approvals_serialized=!0,O==="pending_approval"&&T.billDetailLocalData.paymentDetailsSection?.conversionRate!=null&&(R.exchange_rate=1/T.billDetailLocalData.paymentDetailsSection.conversionRate),T.billDetailLocalData.isRecurring){R.is_recurring=!0;const q=T.billDetailLocalData.recurringConfig,$=T.billDetailLocalData.recurringBillInstances;if(q!=null&&(R.recurring_bill_config=O1(q)),q?.id!=null){const D=ee(b.recurringBillDetailByConfigId,q.id),w=C1(q,D.recurringBillConfig,!0);if(R.is_update_recurring_bill_config=w,R.is_update_future_recurring_bills=q.updateRecurringBills==="all",!w&&q.updateRecurringBills!=="all"||R.recurring_bill_config==null||(R.recurring_bill_config.sync_token=D.recurringBillConfig.syncToken),$!=null){const K=$.filter((G=>!G.readonly)).slice(1).map((G=>J0(G,T.billDetailLocalData.paymentDetailsSection?.paymentType?.maxPeriod?.value??Rv)));R.future_recurring_bill_instances=K,R.recurring_bill_config!=null&&(R.recurring_bill_config.future_total_payment_cycles=K?.length,delete R.recurring_bill_config.total_payment_cycles)}}else R.recurring_bill_instances=$?.map((D=>J0(D,T.billDetailLocalData.paymentDetailsSection?.paymentType?.maxPeriod?.value??Rv)))}return R})(e.accountState,e.billTransactionState,e.paymentAccountState,e.recurringBillState,l,a,o,c),m=l.billDetailLocalData.isRecurring,h=`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions`;return(s!=null?r.putAndGetJSON(D0(h,m,s,e.billTransactionState),u):r.postAndGetJSON(D0(h,m),u)).pipe(y((g=>{if(P(g)&&g.data?.transactions[0]?.transaction_id!=null){const I=[gs(g.data.transactions[0])];return m&&I.push(Pc(g.data.recurring_bill_configs??[]),iv(g.data.recurring_bill_instances??[])),I.push(jc("Completed",t.payload.billId),N({messageSection:QH(o,a),messageText:"success",type:"success"})),_(I)}return p(jc("Error",t.payload.billId,g.status),N({messageSection:"bill_pay_updated",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:g.status.message}]}))})),v((g=>p(jc("Error",t.payload.billId,f("Unexpected Error",`REST API call errored out ${JSON.stringify(g)}`))))))}))),(n,i,r)=>n.pipe(S(HM.match),A((t=>{const{billPaySetupApproverViewState:e}=i.value,a=e.billPaySetupApproverViewUpdateData;if(a!=null&&a.data!=null){const{useV3:s}=t.payload,o=s?U0(a.data):k0(a.data),c=s?`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/bill-pay/approval-rules-v2`:`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/bill-pay/approval-rules`;return r.postAndGetJSON(c,o).pipe(y((d=>{if(P(d)&&d.data!=null){const l=d.data.approval_rules.map((g=>g.approval_rule_id)),u=d.data.affected_entity_ids??[],m=d.data.new_approval_rule?.approval_rule_id,h=[V({users:d.data.users}),Xe(d.data.approval_rules),N({messageSection:`bill_pay_${a.type}`,messageText:"success",type:"success"}),YM(l,u,m)];return _(h)}{const l=[];return d.status.code===400?l.push(N({messageSection:`bill_pay_duplicate_${a.type}`,messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]})):l.push(N({messageSection:`bill_pay_${a.type}`,messageText:"failed",type:"error"})),l.push(Nv(d.status)),_(l)}})),v((d=>p(Nv(f("Unexpected Error","Save Bill Pay Approval View Updates errored out"+JSON.stringify(d)))))))}return _([])}))),(n,i,r)=>n.pipe(S(hj.match),A((t=>{const{name:e,content:a,cannedResponseId:s}=t.payload,o=s!=null,c=o?`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/canned-responses/${s}`:`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/canned-responses`;return(o?r.putAndGetJSON(c,{name:e,content:a}):r.postAndGetJSON(c,{name:e,content:a})).pipe(y((d=>P(d)?p(Sj(),jb()):p(zb({error:d.status})))),v((d=>p(zb({error:f("Unexpected Error","Save Canned Response errored: "+JSON.stringify(d))})))))}))),(n,i)=>n.pipe(S(kV.match),y((()=>{const r=i.value.cardUserOnboardingState.cardUserOnboardingLocalData;return _([Kf("CardUserOnboarding",r?.phone,r?.otpChallenge,r?.dateOfBirth)])}))),(n,i,r)=>n.pipe(S(lM.match),y((t=>{const{companyId:e}=t.payload;let a;const{newAddressState:s}=i.value.addressViewState,o=ft(i.value,e,[]);return o!=null&&s?.subscription_billing_address.addressToCreate!=null?(a=jH(s.subscription_billing_address.addressToCreate,o.company.company.companyInfo.syncToken),r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,a).pipe(y((c=>{if(P(c)&&c.data!=null){const d=[Q({payload:c.data.companies,schema:{}}),z(c.data.addresses)];return d.push(uM()),_(d)}return p(N({messageSection:"billing_address_view",messageText:"failed",type:"error"}),Gf(c.status))})),v((c=>p(Gf(f("Unexpected Error","Save Billing Address Details errored out"+JSON.stringify(c)))))))):_([])}))),(n,i,r)=>n.pipe(S(zN.match),A((t=>{const e=t.payload,{companyHealthMetricViewState:a}=i.value,s=a.companyHealthMetricUpdateStatusById[e],{netPromoterScore:o,externalProductServiceExposure:c,customerSatisfactionScore:d,additionalChurnFactors:l}=s.companyHealthMetricLocalData,u=l.increasingChurnProbability.map((h=>h.code)),m=l.decreasingChurnProbability.map((h=>h.code));return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/company-health-metrics/${e}`,{net_promoter_score:o||null,external_product_service_exposure:c,customer_satisfaction_score:d||null,additional_churn_factors:[...u,...m]}).pipe(y((h=>{if(P(h)&&h.data!=null){const g=[];return g.push(Q({payload:h.data.companies,schema:{}})),g.push(rm({payload:h.data.company_health_metrics})),g.push(sm(e)),g.push(KN({companyId:e})),_(g)}return p(om({companyId:e,error:h.status}))})),v((h=>p(om({companyId:e,error:f("Unexpected Error","Save Company Health Metric By Id REST API call errored out"+JSON.stringify(h))})))))}))),(n,i,r)=>n.pipe(S(rO.match),y((t=>{const{agentInsightEdits:e,companyId:a,recipientEmailList:s,subject:o,isPreview:c,fileId:d,zeniRequestsHtml:l,tenantId:u}=t.payload,m=i.value,h=m.companyState.companiesById[a],g=m.companyState.companiesById[a].companyInfo.name,I=u??h.companyInfo.tenantId,E=_m(me()),b=me(),T=[];if(d!=null&&d!=null){const U=hm(m.fileState,d);U!=null&&T.push({data:U.base64String,id:U.fileId,name:U.fileName})}const O={template_data:WE(m.companyMonthEndReportViewState.monthEndReportDataByCompanyId[a].companyMonthEndReportData.templateData,o,e),recipient_email_list:s,tenant_receiver_email_list:m.companyMonthEndReportViewState.monthEndReportDataByCompanyId[a].companyMonthEndReportData.tenantReceiverEmailList,last_report_sent_business_day:E,last_report_sent_date:b.format(re),...l!==void 0&&{zeni_requests_html:l===""?null:l},files:T},x={is_preview:c};return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${a}/emails/month-end?query=${encodeURIComponent(JSON.stringify(x))}`,O,{"zeni-tenant-id":I}).pipe(y((U=>{if(M(U)&&U.data!=null){const k=[nO(a,c,U.data)];return c||(k.push(Sm({companyId:a,isInDraftMode:!0})),k.push(N({messageSection:"cockpit_month_end_email_save",messageText:"success",type:"success",variables:[{variableName:"_company-name_",variableValue:g}]}))),_(k)}return p(gm(a,"Error",c,U.status))})),v((U=>p(gm(a,"Error",c,f("Unexpected Error","save company month end report REST API call errored out"+JSON.stringify(U)))))))}))),(n,i)=>n.pipe(S(bO.match),y((()=>{const r=i.value,t=[],e=r.companyViewState.passportView;e.primaryContact.localData!=null&&t.push(Dm(e.companyIds[0],e.primaryContact.localData)),Object.values(e.companyOfficerUpdateStatus).forEach((s=>{s.localData!=null&&s.localData.email&&s.localData.userId!=null&&t.push(Jm(e.companyIds[0],s.localData))}));const a=Object.values(e.companyOfficerUpdateStatus).filter((s=>s.localData!=null&&!!s.localData.email&&s.localData?.userId==null)).map((s=>s.localData));return a.length>0&&t.push(Nm(e.companyIds[0],a)),e.companyDetails.localData!=null&&t.push(wm(e.companyIds[0],e.companyDetails.localData)),_(t)}))),(n,i,r)=>n.pipe(S(nP.match),A((t=>r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/connectors/${t.payload.connectionName}/credentials`,t.payload.credentials,{"zeni-tenant-id":t.payload.tenantId}).pipe(y((e=>{if(P(e)&&e.data!=null)return _([sP(t.payload.tenantId,t.payload.connectionType,t.payload.connectionName,e.data)]);const a=e.status??f("Failed to save connection. Please try again.");return _([fu(t.payload.tenantId,t.payload.connectionName,a)])})),v((e=>{const a=e instanceof Error?e.message:"Unexpected error saving connection.";return _([fu(t.payload.tenantId,t.payload.connectionName,f(a))])})))))),(n,i,r)=>n.pipe(S(cC.match),A((t=>{const{instructions:e}=t.payload,a=i.value.creditAgentEntityState.macro;if(a==null)return _([Wo(f("Save failed","Cannot save macro: macro data has not been loaded yet.")),N({messageSection:"credit_agent_save_macro",messageText:"failed",type:"error"})]);const s=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/macros/credit-agent`,o={instructions:e,name:a.name,description:a.description};return r.putAndGetJSON(s,o).pipe(y((c=>P(c)&&c.data!=null?_([Zm(c.data),dC(),N({messageSection:"credit_agent_save_macro",messageText:"success",type:"success"})]):_([Wo(c.status),N({messageSection:"credit_agent_save_macro",messageText:"failed",type:"error"})]))),v((c=>_([Wo(f("Unexpected error","REST API call errored out: "+JSON.stringify(c))),N({messageSection:"credit_agent_save_macro",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(UC.match),y((t=>{const e=i.value,{reconcileAction:a}=t.payload,{expenseAutomationViewState:{selectedPeriodByTenantId:s},expenseAutomationReconciliationViewState:{selectedAccountId:o,reconTabsState:{balances:c}}}=e,d=s[Y(e).tenantId];let l,u;o!=null&&(l=Na(e,o,d),u=l?.reconciliationId);let m={};return l!=null&&(m=(function(h,g,I,E,b,T){const{balance:O,initialClearedBalance:x}=E,{expenseAutomationReconciliationViewState:{selectedAccountId:U,reconTabsState:{reconcile:{localData:{selectedTransactionIds:k}}}}}=h,C=Je(g,!0),B=(function(L,R){const q=[];return R.transactionsToReconcile.map((D=>({...D,isTransactionChecked:L.includes(D.id)}))).forEach((D=>{const w=BC(D);q.push(w)})),q})(k,E),J=(function(L){const R=[];return L.transactionsToReview.forEach((q=>{const $=DC(q);R.push($)})),R})(E);return{action:b.reconcileAction==="save_reconcile_for_later"?"save_for_later":b.reconcileAction,account_type:"bank",bank_balance:O?.amount??0,cleared_balance:I.clearedBalance.amount,variance:I.variance.amount,currency_code:O?.currencyCode,transactions:{reconcile:B,review:J},...x?.amount!=null?{initial_cleared_balance:x.amount}:{},...T==="POST"?{account_id:U,start_date:C.start,end_date:C.end}:{},...b.reconcileAction==="exclude"?{exclude_transaction_ids:[b.excludeTransactionId]}:{}}})(e,d,c,l,t.payload,u!=null?"PUT":"POST")),(u!=null?r.putAndGetJSON(`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/${u}`,m):r.postAndGetJSON(`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation`,m)).pipe(y((h=>{if(P(h)&&h.data!=null){const g=[],I=r0(h.data.reconciliation[0].transactions.reconcile),E=my(h.data.reconciliation);if(g.push(si(E,"merge")),g.push(oi(d,h.data.reconciliation)),g.push(Ir({selectedTransactionIds:I})),t.payload.reconcileAction==="exclude"){if(o!=null){const b=Aa(o,d);g.push(yy(b,t.payload.excludeTransactionId))}g.push(_y({reconcileAction:a,excludeTransactionId:t.payload.excludeTransactionId}))}else t.payload.reconcileAction!=="reconcile"&&t.payload.reconcileAction!=="save_reconcile_for_later"||g.push(_y({reconcileAction:t.payload.reconcileAction}),kC({selectedAccountId:void 0}));return g.push(N({messageSection:t.payload.reconcileAction==="reconcile"?"reconcile":t.payload.reconcileAction==="save_reconcile_for_later"?"save_reconcile_for_later":"exclude_transaction",messageText:"success",type:t.payload.reconcileAction==="reconcile"||t.payload.reconcileAction==="save_reconcile_for_later"?"info":"success",...t.payload.reconcileAction==="reconcile"?{variables:[{variableName:"_reconcile_account_",variableValue:l?.account.accountName??""}]}:{}})),_(g)}{const g=[];return t.payload.reconcileAction==="exclude"?g.push(Bn({fetchStateByAction:{reconcileAction:t.payload.reconcileAction,excludeTransactionId:t.payload.excludeTransactionId},error:h.status})):t.payload.reconcileAction!=="reconcile"&&t.payload.reconcileAction!=="save_reconcile_for_later"||g.push(Bn({fetchStateByAction:{reconcileAction:t.payload.reconcileAction},error:h.status})),g.push(N({messageSection:t.payload.reconcileAction==="reconcile"?"reconcile":t.payload.reconcileAction==="save_reconcile_for_later"?"save_reconcile_for_later":"exclude_transaction",messageText:"failed",type:"error",variables:[{variableName:"_reconcile_account_",variableValue:l?.account.accountName??""}]})),_(g)}})),v((h=>{const g=[];return t.payload.reconcileAction==="exclude"?g.push(Bn({fetchStateByAction:{reconcileAction:t.payload.reconcileAction,excludeTransactionId:t.payload.excludeTransactionId},error:f(`Unexpected Error occured while ${a0(t.payload.reconcileAction)}`,"save REST API call errored out"+JSON.stringify(h))})):t.payload.reconcileAction!=="reconcile"&&t.payload.reconcileAction!=="save_reconcile_for_later"||g.push(Bn({fetchStateByAction:{reconcileAction:t.payload.reconcileAction},error:f(`Unexpected Error occured while ${a0(t.payload.reconcileAction)}`,"save REST API call errored out"+JSON.stringify(h))})),g.push(N({messageSection:t.payload.reconcileAction==="reconcile"?"reconcile":t.payload.reconcileAction==="save_reconcile_for_later"?"save_reconcile_for_later":"exclude_transaction",messageText:"failed",type:"error",variables:[{variableName:"_reconcile_account_",variableValue:l?.account.accountName??""}]})),_(g)})))}))),(n,i,r)=>n.pipe(S(GC.match),y((t=>{const e=i.value,a=e.entityState,{transactionId:s}=t.payload,o=e.expenseAutomationReconciliationViewState.reconTabsState.review.localData[s],c=e.expenseAutomationReconciliationViewState.reconTabsState.reconcile.localData,{expenseAutomationViewState:{selectedPeriodByTenantId:d},expenseAutomationReconciliationViewState:{selectedAccountId:l}}=e,u=d[Y(e).tenantId];let m,h,g;l!=null&&(m=Na(e,l,u),h=m?.reconciliationId,g=m?.transactionsToReview.find((T=>T.transactionId===s)));const I={review_action:g?.recommendedAction.action,reconciliation_id:h??"",ref_account_id:l,ref_account_name:m?.account.accountName,ref_account_type:m?.account.accountType};let E={};if(m!=null&&g!=null&&o!=null)switch(g.recommendedAction.action){case"record_expense":case"record_cc_credit":E=qK(g,o);break;case"record_bill_payment":{const T=g.recommendedAction.recommendedTransactions.find((O=>O.bookTransactionId===o.matchedTransactionId));E=jK(g,T,o,m?.account.accountType);break}case"record_transfer":E=(function(T,O){return{account_id:O.bankAccountId,amount:T.amount.amount,transaction_memo:T.memo,line_description:O.memo,transaction_date:T.transactionDate.format(re),transaction_direction:T.transactionDirection,transaction_id:T.transactionId,currency_code:T.amount.currencyCode}})(g,o);break;case"record_cc_payment":E=(function(T,O,x){return{account_id:x==="credit_card"?O.bankAccountId:O.creditCardId,amount:T.amount.amount,transaction_memo:T.memo,line_description:O.memo,transaction_date:T.transactionDate.format(re),transaction_direction:T.transactionDirection,transaction_id:T.transactionId,currency_code:T.amount.currencyCode}})(g,o,m?.account.accountType);break;case"record_deposit":E=(function(T,O,x){const U=O.customer?.id!=null?KC(x,[O.customer?.id])[0]?.zeniId:void 0;return{amount:T.amount.amount,transaction_memo:T.memo,line_description:O.memo,transaction_date:T.transactionDate.format(re),transaction_direction:T.transactionDirection,transaction_id:T.transactionId,customer_id:U,customer_name:O.customer?.name,account_id:O.categoryId,accounting_class_id:O.classId,currency_code:T.amount.currencyCode}})(g,o,a)}E={...E,is_recommendation_operation_selected:I.review_action===g?.recommendedAction.action};const b=GK(g);return r.postAndGetJSON(`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/review?query=${encodeURIComponent(JSON.stringify(I))}`,E).pipe(y((T=>{if(P(T)&&T.data!=null){const O=[];if(O.push(ii({transactionId:s,fetchState:"Completed"}),si([{allReconciledTransactions:[T.data.reconciliation],currencyPayload:{currency_code:g?.amount.currencyCode??wn.currencyCode,currency_symbol:g?.amount.currencySymbol??wn.currencySymbol}}],"merge")),l!=null){const x=Aa(l,u);O.push(yy(x,s),zC(x,T.data.reconciliation.transaction_id),Ir({selectedTransactionIds:[...c.selectedTransactionIds,T.data.reconciliation.transaction_id]}))}return O.push(N({messageSection:b,messageText:"success",type:"success"})),_(O)}{const O=[];return O.push(ii({transactionId:s,fetchState:"Error",error:T.status}),N({messageSection:b,messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:T.status.message}]})),_(O)}})),v((T=>{const O=[];return O.push(ii({transactionId:s,fetchState:"Error",error:f("Unexpected Error occurred while saving reconciliation review","save reconciliation review REST API call errored out"+JSON.stringify(T))}),N({messageSection:b,messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify("error")}]})),_(O)})))}))),Zz,(n,i,r)=>n.pipe(S((t=>sB.match(t))),y((t=>{const{id:e}=t.payload,a=i.value,s=cB(a),o=a.editInvoicingCatalogItemDetailViewState,c=((u,m,h)=>{const g=ia(u.productCode)??NT(u.name),I={applicable_items:u.itemApplicability==="restricted"?u.applicableItems:[],description:ia(u.description)??"",enabled_for_checkout:!0,enabled_in_portal:!0,is_giftable:!1,is_shippable:!1,item_applicability:u.itemApplicability,metered:!1,name:u.name.trim(),product_code:g,type:u.catalogType,unit:ia(u.unit)??"USD"},E=ia(u.externalId);E!=null&&(I.external_id=E);const b=u.subFamilies.length>0?u.subFamilies:[rB()];return I.sub_families=m?b.map((T=>l0(u,T,!1,h))):b.map((T=>{const O=l0(u,T,!0,h);return O.accounting_detail=O.accounting_detail??null,{...O,id:T.id.trim()}})),I})((e!=null?o.editDraftById[e]:o.newItemDraft)??o.newItemDraft,e==null,s),d=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`,l=e!=null?`${d}/catalog/plans/${encodeURIComponent(e)}`:`${d}/catalog/plans`;return(e!=null?r.putAndGetJSON(l,{...c}):r.postAndGetJSON(l,{...c})).pipe(y((u=>{if(P(u)&&u.data!=null){const m=u.data;return(h=>{const g=h.find((b=>!P(b)||b.data==null));if(g!=null)return _([Ui(g.status),N({messageSection:"invoicing_catalog_item_saved",messageText:"failed",type:"error",variables:Ee(g.status)})]);const I=h.flatMap((b=>b.data!=null?[b.data]:[])),E=[Dr([m],"merge"),...I.length>0?[ah(I,"merge")]:[],...I.map((b=>rh(m.id,b))),oB({itemId:m.id,kind:"plan"})];if(e==null){const b=m.type==="charge"||m.item_type==="charge"?"charge":m.type==="addon"||m.item_type==="addon"?"addon":"plan";E.push(iB({id:m.id,type:b}))}return E.push(N({messageSection:"invoicing_catalog_item_saved",messageText:"success",type:"success"})),E})([])}return _([Ui(u.status),N({messageSection:"invoicing_catalog_item_saved",messageText:"failed",type:"error",variables:Ee(u.status)})])})),v((u=>_([Ui(f("Unexpected Error","Save catalog item REST API call errored out "+JSON.stringify(u))),N({messageSection:"invoicing_catalog_item_saved",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S((t=>_B.match(t)||dh.match(t))),y((t=>{const{id:e}=t.payload,a=dh.match(t)?t.payload.data:(()=>{const c=i.value,d=c.editInvoicingCouponDetailViewState,l=(e!=null?d.editDraftById[e]:d.newCouponDraft)??d.newCouponDraft;return((u,m,h)=>{const g={apply_on:u.applyOn,discount_type:u.discountType,duration_type:u.durationType,name:u.name.trim()};m&&(g.id=u.couponId.trim());const I=u.couponCode.trim();I!==""&&(g.coupon_code=I),u.discountType==="percentage"&&u.discountPercentage.trim()!==""&&(g.discount_percentage=Number(u.discountPercentage)),u.discountType==="fixed_amount"&&(u.discountAmount!=null&&(g.discount_amount=u.discountAmount.amount),g.currency_code="USD"),u.discountType==="offer_quantity"&&u.discountQuantity.trim()!==""&&(g.discount_quantity=Number(u.discountQuantity)),u.durationType==="limited_period"&&(u.period.trim()!==""&&(g.period=Number(u.period)),g.period_unit=u.periodUnit),u.validFrom.trim()!==""&&(g.valid_from=u.validFrom.trim()),u.validTill.trim()!==""&&(g.valid_till=u.validTill.trim()),u.maxRedemptions.trim()!==""&&(g.max_redemptions=Number(u.maxRedemptions));const E=u.invoiceName.trim();E!==""&&(g.invoice_name=E);const b=u.invoiceNotes.trim();b!==""&&(g.invoice_notes=b);const T=u.discountsAccountId.trim(),O=T!==""?h?.(T):void 0;return O!=null&&(g.discounts_account=Xa(O)),g})(e==null?{...l,discountsAccountId:hB(l.discountsAccountId,SB(c)?.qbo?.account_mappings)}:l,e==null,(u=>uh(c,u)))})(),s=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`,o=e!=null?`${s}/discounts/${encodeURIComponent(e)}`:`${s}/discounts`;return(e!=null?r.putAndGetJSON(o,{...a}):r.postAndGetJSON(o,{...a})).pipe(y((c=>{if(P(c)&&c.data!=null){const d=c.data,l=[Wn([d],"merge"),gB({couponId:d.id})];return e==null&&l.push(fB({id:d.id,status:d.status})),l.push(N({messageSection:"invoicing_coupon_saved",messageText:"success",type:"success"})),l}return _([lh(c.status),N({messageSection:"invoicing_coupon_saved",messageText:"failed",type:"error",variables:Ee(c.status)})])})),v((c=>_([lh(f("Unexpected Error","Save coupon REST API call errored out "+JSON.stringify(c))),N({messageSection:"invoicing_coupon_saved",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(OB.match),y((t=>{const{id:e}=t.payload,a=i.value,s=a.editInvoicingCustomerDetailViewState,o=(e!=null?s.editDraftById[e]:s.newCustomerDraft)??s.newCustomerDraft,c=a.addressViewState.newAddressState?.[ts]?.addressToCreate,d=((u,m)=>{const h=ra(u.firstName),g=ra(u.lastName),I=ra(u.company),E=u.netTermDays.trim();return{auto_collection:u.autoCollection?"on":"off",company:I,customer_type:u.customerType,email:ra(u.email),first_name:h,invoice_notes:ra(u.invoiceNotes),last_name:g,notes:u.notes.trim(),phone:ra(u.phone),preferred_currency_code:u.preferredCurrencyCode,taxability:u.taxability,vat_number:ra(u.vatNumber),...E!==""?{net_term_days:Number(E)}:{},...m!=null?{billing_address:Ue(m)}:{}}})(o,c),l=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return(e!=null?r.putAndGetJSON(`${l}/customers/${encodeURIComponent(e)}`,{...d}):r.postAndGetJSON(`${l}/customers`,{...d})).pipe(y((u=>{if(P(u)&&u.data!=null){const m=[Bi([u.data],"merge"),z(ki([u.data])),CB({customerId:u.data.id}),Sa(ts)];return e==null&&m.push(xB({id:u.data.id,status:u.data.status})),m.push(N({messageSection:"invoicing_customer_saved",messageText:"success",type:"success"})),m}return _([gh(u.status),N({messageSection:"invoicing_customer_saved",messageText:"failed",type:"error",variables:Ee(u.status)})])})),v((u=>_([gh(f("Unexpected Error","Save customer REST API call errored out "+JSON.stringify(u))),N({messageSection:"invoicing_customer_saved",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(wk.match),y((t=>{const{customerId:e,data:a}=t.payload,s=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/customers/${encodeURIComponent(e)}/payment-methods`;return r.postAndGetJSON(s,a).pipe(y((o=>P(o)&&o.data!=null?[$k(),es({id:e})]:p(G_(o.status)))),v((o=>p(G_(f("Unexpected Error","Save payment method REST API call errored out "+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(xS.match),y((t=>{const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/settings`,{settings:a,snackbarSection:s}=t.payload,o=(c,d)=>s==null?[]:[N({messageSection:s,messageText:c,type:c==="success"?"success":"error",variables:Ee(d)})];return r.putAndGetJSON(e,{...a}).pipe(A((c=>{if(P(c)&&c.data!=null){const d=c.data.logo_file;return _([...d!=null?[he({files:[d]})]:[],US(c.data),...o("success")])}return _([is(c.status),...o("failed",c.status)])})),v((c=>_([is(f("Unexpected Error","Save settings REST API call errored out "+JSON.stringify(c))),...o("failed")]))))}))),(n,i,r)=>n.pipe(S(LB.match),y((t=>{const{id:e}=t.payload,a=i.value,s=a.editInvoicingSubscriptionDetailViewState,o=(e!=null?s.editDraftById[e]:s.newSubscriptionDraft)??s.newSubscriptionDraft,c=a.addressViewState.newAddressState?.[wr]?.addressToCreate,d=((m,h)=>{const g=[{item_price_code:m.planPriceCode,item_type:"plan",quantity:Ri(m.planQuantity)},...m.addonPriceCodes.map((x=>({item_price_code:x,item_type:"addon",quantity:Ri(m.addonQuantities[x])}))),...m.chargePriceCodes.map((x=>({item_price_code:x,item_type:"charge",quantity:Ri(m.chargeQuantities[x])})))],I=m.setupFee?.amount,E=m.poNumber.trim(),b=m.trialEnd.trim(),T=m.startedAt.trim(),O=MB(m.remainingBillingCycles);return{auto_collection:m.autoCollection?"on":"off",currency_code:m.preferredCurrencyCode,customer_id:m.customerId,started_at:T!==""?T:VB(),subscription_items:g,...I!=null?{setup_fee:I}:{},...E!==""?{po_number:E}:{},...b!==""?{trial_end:b}:{},...O!=null?{remaining_billing_cycles:O}:{},...m.couponId!==""?{coupon_ids:[m.couponId]}:{},...h!=null?{shipping_address:Ue(h)}:{}}})(o,c);e!=null&&delete d.coupon_ids;const l=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`,u=e!=null?a.invoicingSubscriptionState.invoicingSubscriptionByID[e]?.coupons?.[0]?.couponCode??a.invoicingSubscriptionState.invoicingSubscriptionByID[e]?.coupons?.[0]?.couponID??"":"";return(e!=null?r.putAndGetJSON(`${l}/subscriptions/${encodeURIComponent(e)}`,{...d}):r.postAndGetJSON(`${l}/subscriptions`,{...d})).pipe(y((m=>{if(!P(m)||m.data==null)return[as(m.status),N({messageSection:"invoicing_subscription_saved",messageText:"failed",type:"error",variables:Ee(m.status)})];const h=m.data;if(e!=null&&u0(u)!==u0(o.couponId))return[Ba([h],"merge"),z(ka([h])),Ih({subscriptionId:h.id,previousCouponCode:u,nextCouponCode:o.couponId})];const g=[Ba([h],"merge"),z(ka([h])),bh({subscriptionId:h.id}),Sa(wr)];return e==null&&g.push(FB({id:h.id,status:h.status})),g.push(N({messageSection:"invoicing_subscription_saved",messageText:"success",type:"success"})),g})),v((m=>_([as(f("Unexpected Error","Save subscription REST API call errored out "+JSON.stringify(m))),N({messageSection:"invoicing_subscription_saved",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(eV.match),A((t=>{const{bankAccount:e,address:a}=i.value.magicLinkViewState,{paymentMethodType:s,paymentSubConfigCodeType:o,vendorId:c,billId:d,isLocalCurrencyEnabled:l}=t.payload,u=s==="wire"&&o==="international",m=u?e.createInternationalBankAccountDetails.localData:e.createBankAccountDetails.localData,h=u?YE(m):kl(m,s);if(Object.assign(h,{transaction_id:d,transaction_type:"bill"}),s==="wire"&&Object.assign(h,{mailing_address:Ue(a)}),u&&Object.assign(h,{is_local_currency_enabled:l}),m!=null){const g=`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${c}/bank-accounts`;return r.postAndGetJSON(g,h).pipe(y((I=>{const E=[];return M(I)?E.push(Hc({fetchState:"Completed",isInternationalBankAccount:u})):(I.status.code,E.push(Hc({fetchState:"Error",error:I.status,isInternationalBankAccount:u})),E.push(N({messageSection:"create_bank_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:I.status.message}]}))),_(E)})),v((I=>p(Hc({fetchState:"Error",error:f("Unexpected Error","Bank Account Creation REST API call errored out"+JSON.stringify(I)),isInternationalBankAccount:u})))))}return _([])}))),(n,i)=>n.pipe(S(dn.match),y((r=>{const t=r.payload.addressType;switch(t){case"company_address":return p(Ou(t,r.payload.companyId));case"officer_1_address":case"officer_2_address":case"officer_3_address":case"officer_4_address":case"officer_5_address":case"officer_6_address":case"officer_7_address":case"officer_8_address":case"officer_9_address":case"officer_10_address":return r.payload.userId!=null?p(Cu(t,r.payload.companyId,r.payload.userId)):_([]);default:return p(Nu(t))}}))),(n,i,r)=>n.pipe(S(zx.match),y((t=>{const{scheduleType:e}=t.payload,a=i.value,s=a.expenseAutomationJESchedulesViewState.newSchedule.newScheduleState[e],{selectedBaseTransactionId:o}=s,c=o!=null?Kx(a.transactionState,Zy(o)):void 0;if(c==null)return _([Mn({status:f("Unexpected Error","No base transaction selected for this schedule.")}),N({messageSection:"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:"No base transaction selected."}]})]);const d=Hx(c,s,e);if(!d.ok){const b=nH[d.reason];return _([Mn({status:f("Unexpected Error",b)}),N({messageSection:"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:b}]})])}const l=s.selectedVendor?.name??c.vendorName??"",u={je_schedule_type:e},m={...d.payload},h=a.expenseAutomationViewState.selectedPeriodByTenantId[Y(a).tenantId],g=h!=null?Je(h):void 0,I=g!=null?Se(g.start):void 0,E=g!=null?Se(g.end):void 0;return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules?query=${encodeURIComponent(JSON.stringify(u))}`,m).pipe(y((b=>{if(P(b)&&b.data!=null){const T=[yt(b.data.je_schedules),It(b.data.je_schedules,b.data.scheduled_journal_entries),Wy({scheduleType:e}),Yx(),N({messageSection:"create_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:l}]})];return I!=null&&E!=null&&T.push(er({start:I,end:E},!0)),_(T)}return _([Mn({status:b.status}),N({messageSection:"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:b.status.message}]})])})),v((b=>_([N({messageSection:"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(b)}]}),Mn({status:f("Unexpected Error",`Save New Schedule REST API call errored out ${JSON.stringify(b)}`)})]))),ge(n.pipe(S($e.match))))}))),Xz,(n,i,r)=>n.pipe(S(pM.match),A((()=>{const t=Lf(r),{notificationSettings:e,notificationSettingsLocalData:a}=i.value.settingsViewState.notification,s=(function(o,c){const{reminderNotificationSettings:d,monthEndInsightsNotificationSettings:l}=c,{reminders:u,monthEndInsights:m}=o,h={is_missing_receipt_notification_active:null,missing_receipt_notification:null,is_uncategorized_transaction_notification_active:null,uncategorized_transaction_notification:null,is_pending_bill_approval_notification_active:null,pending_bill_approval_notification:null,pending_reimbursement_approval_notification:null,is_pending_reimbursement_approval_notification_active:null,is_month_end_insights_active:l.enabled!=null?m.notify:null,month_end_email_recipient_email_ids:m.recipientEmailIds};return d.missingReceiptNotification!=null&&(h.is_missing_receipt_notification_active=u.missingReceiptNotification.preferredMode.length>0,h.missing_receipt_notification=Ks(u.missingReceiptNotification)),d.uncategorizedTransactionNotification!=null&&(h.is_uncategorized_transaction_notification_active=u.uncategorizedTransactionNotification.preferredMode.length>0,h.uncategorized_transaction_notification=Ks(u.uncategorizedTransactionNotification)),d.pendingBillApprovalNotification!=null&&(h.is_pending_bill_approval_notification_active=u.pendingBillApprovalNotification.preferredMode.length>0,h.pending_bill_approval_notification=Ks(u.pendingBillApprovalNotification)),d.pendingReimbursementApprovalNotification!=null&&(h.is_pending_reimbursement_approval_notification_active=u.pendingReimbursementApprovalNotification.preferredMode.length>0,h.pending_reimbursement_approval_notification=Ks(u.pendingReimbursementApprovalNotification)),h})(a,e);return r.putAndGetJSON(t,s).pipe(y((o=>{if(P(o)&&o.data!=null){const c=[mM({data:o.data}),N({messageSection:"notification_settings_saved",messageText:"success",type:"success"})];return p(...c)}return p(zf(o.status))})),v((o=>p(zf(f("Unexpected error","Save Notification Settings REST API call errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(oP.match),A((t=>r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/connections/${t.payload.connectionId}`,{authorization_code:t.payload.credentials.authorization_code,client_id:t.payload.credentials.client_id,client_secret:t.payload.credentials.client_secret,connection_name:t.payload.connectionName,connection_type:t.payload.connectionType,redirect_uri:t.payload.credentials.redirect_uri},Object.assign({"zeni-tenant-id":t.payload.tenantId})).pipe(y((e=>{if(P(e))return _([iP(t.payload.tenantId,t.payload.connectionType,e.data)]);const a=e.status??f("Failed to save connection. Please try again.");return _([vu(t.payload.tenantId,a)])})),v((e=>{const a=e instanceof Error?e.message:"Unexpected error saving connection.";return _([vu(t.payload.tenantId,f(a))])})))))),(n,i,r)=>n.pipe(S(FJ.match),y((t=>{const{isOnboardingCompleted:e,companyId:a,tenantId:s,isOnboardingTenant:o,userEmailWithPreOnboardSuccess:c,companyEmailDomain:d}=t.payload.onboardingCustomerCompletedStatus,l={company_email_domain:d,is_onboarding_completed:e,user_email_with_pre_onboard_success:c,is_onboarding_tenant:o};return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/whitelist-companies`,l).pipe(y((u=>{if(P(u)&&u.data!=null){const m=[qJ(a),jJ(s),GJ(a),zJ(a)];return _(m)}return p(tg(a,u.status))})),v((u=>p(tg(a,f("Unexpected error","Save Onboarding Customer Complete REST API call errored out"+JSON.stringify(u)))))))}))),(n,i,r)=>n.pipe(S(KJ.match),y((t=>{const{companyId:e,note:a}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{note:a}).pipe(y((s=>{if(P(s)&&s.data!=null){const o=[ds({payload:s.data.companies,schema:{}}),HJ(e)];return _(o)}return p(ag({companyId:e,error:s.status}))})),v((s=>p(ag({companyId:e,error:f("Unexpected error","Save Onboarding Customer Complete REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(WJ.match),y((t=>{const{onboardingCockpitViewState:e}=i.value,{sendInvite:a,skipSnackbarOnSuccess:s}=t.payload,{onboardingCustomerLocalData:o}=e;if(o!=null){let c,d;const{companyId:l,tenantId:u}=o;l&&u&&(c=Wi(i.value.companyState,l??""),d=QS(i.value.tenantState,u??""));const m=((h,g,I,E)=>{const{companyId:b,companyEmailDomain:T,groupId:O,groupName:x,groupDescription:U,isEmailGroupCreated:k,customerName:C,name:B,email:J,accountingConnectionCreationMode:L,hubSpotId:R,selectedProducts:q}=h,$={company_email_domain:T,is_onboarding_tenant:!0,is_send_invite_to_users_with_access_to_onboarding:g,is_send_invite_to_customer:g,user_email_with_pre_onboard_success:J,name:B,customer_first_name:C?.firstName,customer_last_name:C?.lastName,customer_email:J,is_book_keeping_enabled:!1,is_banking_enabled:!1,is_card_enabled:!1,is_spend_management_enabled:!1,is_treasury_enabled:!1,is_other_products_enabled:!1,is_payroll_enabled:!1,is_cfo_enabled:!1,is_tax_enabled:!1};if(q!=null){const D=q.includes("zeni_checking"),w=q.includes("zeni_cards"),K=q.includes("bookkeeping"),G=q.includes("zeni_payroll"),Z=q.includes("zeni_cfo"),de=q.includes("zeni_tax"),ue=G||Z||de;if($.is_other_products_enabled=ue,$.is_payroll_enabled=G,$.is_cfo_enabled=Z,$.is_tax_enabled=de,ue)$.is_book_keeping_enabled=!1,$.is_banking_enabled=!1,$.is_spend_management_enabled=!1,$.is_card_enabled=!1;else{$.is_payroll_enabled=!1,$.is_cfo_enabled=!1,$.is_tax_enabled=!1;const ae=q.includes("zeni_treasury");K?($.is_book_keeping_enabled=!0,$.is_banking_enabled=D,$.is_spend_management_enabled=!0,$.is_card_enabled=w,$.is_treasury_enabled=ae):D&&w?($.is_book_keeping_enabled=!1,$.is_banking_enabled=!0,$.is_spend_management_enabled=!1,$.is_card_enabled=!0,$.is_treasury_enabled=ae):w?($.is_book_keeping_enabled=!1,$.is_banking_enabled=!1,$.is_spend_management_enabled=!1,$.is_card_enabled=!0,$.is_treasury_enabled=!1):D?($.is_book_keeping_enabled=!1,$.is_banking_enabled=!0,$.is_spend_management_enabled=!1,$.is_card_enabled=!1,$.is_treasury_enabled=ae):($.is_book_keeping_enabled=!1,$.is_banking_enabled=!1,$.is_spend_management_enabled=!1,$.is_card_enabled=!1,$.is_treasury_enabled=!1)}}return b&&($.company_id=b),R&&($.hubspot_id=R),L!=null&&($.accounting_connection_created_by=L),O&&k!=1&&($.email_group_id=O,$.email_group_name=x,$.email_group_description=U),vH(h,$,I,E),$})(o,a,c,d);return(m.company_id!=null?r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/whitelist-companies`,m):r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/whitelist-companies`,m)).pipe(y((h=>{if(P(h)&&h.data!=null){const g=h.data.companies.map((b=>b.company_id)),I=zi(h.data.tenants,h.data.companies),E=[Ki(h.data.tenants,!0),ds({payload:h.data.companies,schema:{},onboardingInviteStatus:h.data.onboarding_invite_status,companyIdTenantIdMapping:I}),z(h.data.addresses??[]),Hi(h.data.tenants),Yi({onboardingCustomersInfo:h.data.whitelist_companies}),Qi(g),ZJ({tenants:h.data.tenants,companies:h.data.companies,sendInvite:a,newTenant:m.company_id==null})];if(h.data.users!=null&&E.push(V({users:h.data.users})),h.data.user_roles!=null&&E.push(H(h.data.user_roles)),a===!0){const b=I0(h.data.companies[0].onboarding_info,h.data.users),T=h.data.companies[0].name??"";E.push(N({messageSection:"dashboard_invite_sent",messageText:"success",type:"success",variables:[{variableName:"_user-name_",variableValue:b},{variableName:"_company-name_",variableValue:T}]}))}return a!==!0&&s!==!0&&E.push(N({messageSection:"onboarding_info_saved",messageText:"success",type:"success"})),_(E)}{const g=[ng(h.status),N({messageSection:a===!0?"dashboard_invite_sent":"onboarding_info_saved",messageText:"failed",type:"error"})];return _(g)}})),v((h=>{const g=[ng(f("Unexpected Error","Save Onboarding Customer View Updates errored out"+JSON.stringify(h))),N({messageSection:a===!0?"dashboard_invite_sent":"onboarding_info_saved",messageText:"failed",type:"error"})];return _(g)})))}return _([])}))),(n,i,r)=>n.pipe(S(vF.match),y((t=>{const{entityId:e,entityType:a,realTimeApprovalLocalData:s}=t.payload,{userState:o}=i.value,c=tY(s),d=c.real_time_steps.map((u=>u.step_position)),l=a==="bill_pay"?"bill":a;return r.putAndGetJSON(`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/${l}s/entity-approvals`,c).pipe(y((u=>{if(P(u)&&u.data!=null){const m=[];u.data.entity_approval.steps_approval_status.forEach((I=>{I.step_position!=null&&d.indexOf(I.step_position)>=0&&I.actors.forEach((E=>{m.push(E.id)}))}));const h=m.map((I=>{const E=Pt(o,I);return`${E?.firstName} ${E?.lastName}`})),g=u.data.attribute_users.map((I=>I.user_id));return _([fs(e,a,!0),At([u.data.entity_approval]),V({users:u.data.attribute_users??[]}),N({messageSection:"real_time_approver_added",messageText:"success",type:"success",variables:[{variableName:"_approvers-added_",variableValue:h.join(", ")}]}),Td({entityId:e,entityType:a,approverIds:g,fetchState:"Completed"})])}return p(N({messageSection:"real_time_approver_added",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:u.status.message}]}),Td({entityId:e,entityType:a,fetchState:"Error",approverIds:[],error:f("Unexpected error","resources REST API call errored out"+JSON.stringify(u.status.message))}))})),v((u=>p(N({messageSection:"real_time_approver_added",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:u}]}),Td({entityId:e,entityType:a,fetchState:"Error",approverIds:[],error:f("Unexpected error","resources REST API call errored out"+JSON.stringify(u))})))))}))),(n,i,r)=>n.pipe(S(RA.match),y((t=>{const{companyId:e,auditGroupId:a,auditRuleId:s,reasonToPass:o,reasonStatus:c}=t.payload,d=i.value.companyState.companiesById[e].companyInfo.tenantId,l={reason_to_pass:o,reason_status:c,audit_rule_group_id:a},u={audit_rule_id:s},m=`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/audit/reasons?query=${encodeURIComponent(JSON.stringify(u))}`;return r.putAndGetJSON(m,l,{"zeni-tenant-id":d}).pipe(y((h=>{if(M(h)&&h.data!=null){const g=[MA({companyId:e,auditGroupId:a,auditRuleId:s,reasonResponsePayload:h.data})];return c==="approved"&&g.push(pn(!0,!0)),_(g)}return p(vp(e,a,s,f("Error","Invalid response status: "+h.status)))})),v((h=>p(vp(e,a,s,f("Unexpected Error","Reason for audit rule REST API call failed: "+JSON.stringify(h)))))))}))),(n,i,r)=>n.pipe(S(UF.match),y((t=>{const e=i.value,{remiStageCode:a,reimbursementId:s,isSubmitted:o}=t.payload,c=s!=null?e.editRemiDetailViewState.editRemiStateById[s]:e.editRemiDetailViewState.newRemiState,d=(function(l,u,m,h,g){const I=m.reimbursementId,E=ee(l.reimbursementById,I??"",void 0),b={reimbursement_provider:"zeni",transaction_type:"reimbursement",is_include_approval_info:!0,reimbursee_user_id:E?.reimburseeUserId??u.loggedInUser?.userId,sync_token:E?.syncToken??null,reimbursement_date:me().format("YYYY-MM-DD"),due_date:null,currency_code:m.remiDetailLocalData.totalAmount?.currencyCode,report_title:m.remiDetailLocalData.whatForSection?.reportTitle,is_transaction_submitted:g,total_amount:m.remiDetailLocalData.totalAmount?.amount,reimbursement_info:{stage:{code:h},to_account:m.remiDetailLocalData.paymentTo!=null?{account_id:m.remiDetailLocalData.paymentTo}:void 0},lines:Object.keys(m.remiDetailLocalData.updatesByLineId).map((T=>{const O=m.remiDetailLocalData.updatesByLineId[T];return VI(O)}))};return I==null&&(b.are_approvals_serialized=!0),b})(e.reimbursementState,e.tenantState,c,a,o);return(s!=null?r.putAndGetJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/transactions/${t.payload.reimbursementId}`,d):r.postAndGetJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/transactions`,d)).pipe(y((l=>{if(P(l)&&l.data?.transactions[0]?.transaction_id!=null){const u=[Dd(l.data.transactions[0]),V({users:l.data.users??[]}),Xe(l.data.approval_rules),At(l.data.entity_approvals),Ed(l.data.merchants),MI(l.data.merchants),kF(),Jd("Completed",t.payload.reimbursementId),N({messageSection:a==="pending_approval"?"reimbursement_sent_for_approval":"reimbursement_updated",messageText:"success",type:"success"})];return l.data.merchants.forEach((m=>{const h=Xr(m.recommendations??[]);h!=null&&m.merchant_id&&u.push(Vr({entityId:m.merchant_id,entityType:"merchant",recommendations:h}))})),_(u)}return p(Jd("Error",t.payload.reimbursementId,l.status),N({messageSection:a==="pending_approval"?"reimbursement_sent_for_approval":"reimbursement_updated",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]}))})),v((l=>p(Jd("Error",t.payload.reimbursementId,f("Unexpected Error",`REST API call errored out ${JSON.stringify(l)}`))))))}))),(n,i,r)=>n.pipe(S(XF.match),A((t=>{const{remiSetupApproverViewState:e}=i.value,a=e.remiSetupApproverViewUpdateData;if(a!=null&&a.data!=null){const{useV3:s}=t.payload,o=s?U0(a.data):k0(a.data),c=s?`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/reimbursements/approval-rules-v2`:`${r.apiEndPoints.approvalMicroServiceBaseUrl}/1.0/reimbursements/approval-rules`;return r.postAndGetJSON(c,o).pipe(y((d=>{if(P(d)&&d.data!=null){const l=d.data.approval_rules.map((g=>g.approval_rule_id)),u=d.data.affected_entity_ids??[],m=d.data.new_approval_rule?.approval_rule_id,h=[V({users:d.data.users}),Xe(d.data.approval_rules),N({messageSection:`reimbursement_${a.type}`,messageText:"success",type:"success"}),eq(l,u,m)];return _(h)}{const l=[];return d.status.code===400?l.push(N({messageSection:`reimbursement_duplicate_${a.type}`,messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]})):l.push(N({messageSection:`reimbursement_${a.type}`,messageText:"failed",type:"error"})),l.push(eb(d.status)),_(l)}})),v((d=>p(eb(f("Unexpected Error","Save Reimbursement Approval View Updates errored out"+JSON.stringify(d)))))))}return _([])}))),(n,i,r)=>n.pipe(S(yA.match),rt((t=>{const{draft:e,scheduleId:a}=t.payload,s=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/routines`,o=a!=null&&a!=="",c={name:e.name,recurrence:e.recurrence,hour:e.hour,minute:e.minute??0,tz_name:e.tzName,...e.recurrence==="weekly"&&e.weekday!=null&&{weekday:e.weekday},...e.recurrence==="monthly"&&e.dayOfMonth!=null&&{day_of_month:e.dayOfMonth},...e.enabled!=null&&{enabled:e.enabled},...!o&&e.macroId!=null&&{macro_id:e.macroId},...e.prompt!=null&&{prompt:e.prompt}};return(o?r.putAndGetJSON(`${s}/${encodeURIComponent(a)}`,c):r.postAndGetJSON(s,c)).pipe(y((d=>P(d)?p(np(),_t()):p(ln(d.status)))),v((d=>p(ln(f("Unexpected Error","Save routine REST API call failed",d instanceof Error?{message:d.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(AR.match),y((t=>{const e=i.value,{scheduleAccruedDetailState:a}=e,{scheduleType:s}=t.payload,o=a.selectedJEAccruedScheduleKey,c=[];let d,l,u,m="";if(o!=null){if(u=oa(o,e),u!=null){l=u.jeScheduleId;const g=e.scheduleAccruedDetailState.editScheduleStateByDetailId[l];m=g.selectedVendor?.name??"",d={...C0(e,g,o)}}}else{const g=e.scheduleAccruedDetailState.newScheduleState;m=g.selectedVendor?.name??"",d={...JH(e,g)}}const h={je_schedule_type:s};return(l!=null?r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${l}?query=${encodeURIComponent(JSON.stringify(h))}`,d):r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules?query=${encodeURIComponent(JSON.stringify(h))}`,d)).pipe(y((g=>{if(P(g)&&g.data!=null){const I=g.data.je_schedules[0].je_schedule_id;if(I==null)return c.push(Fr("Error",g.status),N({messageSection:l!=null?"save_schedule":"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:"Schedule returned NULL for ID."}]})),_(c);if(c.push(ua(g.data.je_schedules),Ar(g.data.je_schedules,g.data.scheduled_journal_entries)),l==null){const E=Cf(g.data.je_schedules[0]),b=ys("accrued_expenses"),T=_s("all",b);c.push(NR({scheduleType:"accrued_expenses",key:T,jeScheduleAccruedKey:E}))}return c.push(Fa(s,o,I),Fr("Completed"),OR(),N({messageSection:l!=null?"save_schedule":"create_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:m}]})),_(c)}return c.push(Fr("Error",g.status)),c.push(N({messageSection:l!=null?"save_schedule":"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:g.status.message}]})),_(c)})),v((g=>_([N({messageSection:l!=null?"save_schedule":"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(g)}]}),Fr("Error",f("Unexpected Error",`Save Schedule Accrued Detail REST API call errored out ${JSON.stringify(g)}`))]))))}))),(n,i,r)=>n.pipe(S(LR.match),y((t=>{const e=i.value,{scheduleDetailState:a}=e,{selectedJeScheduleDetailId:s,scheduleType:o,isUpdatingVendorCategoryOrClass:c}=t.payload,d=a.selectedJEScheduleKey,l=[];if(d==null)return _(l);const u=bt(d,e),m=u.vendor.name,h=u.jeScheduleId??s,g=h!=null?e.scheduleDetailState.editScheduleStateByDetailId[o][h]:e.scheduleDetailState.newScheduleState[o],I={...pc(e,g,d,o,void 0,void 0,c)},E={je_schedule_type:o};return(h!=null&&u.status.code!=="marked_as_completed"?r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${h}?query=${encodeURIComponent(JSON.stringify(E))}`,I):r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules?query=${encodeURIComponent(JSON.stringify(E))}`,I)).pipe(y((b=>{if(P(b)&&b.data!=null){const T=b.data.je_schedules[0].je_schedule_id;return T==null?(l.push(jr("Error",b.status),N({messageSection:h!=null?"save_schedule":"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:"Schedule returned NULL for ID."}]})),_(l)):(l.push(yt(b.data.je_schedules),It(b.data.je_schedules,b.data.scheduled_journal_entries),qr(o,d,T),jr("Completed"),N({messageSection:h!=null?"save_schedule":"create_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:m}]})),_(l))}return l.push(jr("Error",b.status)),l.push(N({messageSection:h!=null?"save_schedule":"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:b.status.message}]})),_(l)})),v((b=>_([N({messageSection:h!=null?"save_schedule":"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(b)}]}),jr("Error",f("Unexpected Error",`Save Schedule Detail REST API call errored out ${JSON.stringify(b)}`))]))))}))),(n,i,r)=>n.pipe(S(hA.match),y((t=>{const{draft:e,macroId:a}=t.payload,s=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/skills`,o={name:e.name,instructions:e.instructions,description:e.description,display_name:e.name,...e.visibility!=null&&{visibility:e.visibility}};return(a!=null&&a!==""?r.putAndGetJSON(`${s}/${encodeURIComponent(a)}`,o):r.postAndGetJSON(s,o)).pipe(y((c=>{if(P(c)&&xl(c.data)){const d=c.data,l=d.skill.macro_id,u=[SA({macroId:l,detail:Ul(d)}),go()];return gA(i.value).macroId===l&&u.push(Yu({macroId:l})),p(...u)}return p(sp(c.status))})),v((c=>p(sp(f("Unexpected Error","Save skill REST API call failed",c instanceof Error?{message:c.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(sj.match),y((t=>{const{tenantId:e,subscriptionSummaryId:a,updates:s}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscription-summaries/${a}`,s,{"zeni-tenant-id":e}).pipe(y((o=>{if(P(o)&&o.data!=null){const c=[Ia({payload:[o.data]}),sl({tenantId:e})];return _(c)}return p($s({tenantId:e,status:o.status}))})),v((o=>p($s({tenantId:t.payload.tenantId,status:f("Unexpected error","Connection REST API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(oj.match),y((t=>{const{tenantId:e}=t.payload,a=i.value.subscriptionViewState.subscriptionUpdateViewDataByTenantId[e];if(a!=null&&a.data!=null&&a.data.subscriptionEstmiate!=null){const s=a.type==="subscription_update";let o,c;if(s){const d=a.data,{subscriptionId:l}=d;o=M0(d,e),c=r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscriptions/${l}`,o)}else{const d=a.data;o=V0(d,e),c=r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscriptions`,o)}return c.pipe(y((d=>{if(P(d)&&d.data!=null){const l=d.data.subscriptions[0],u=l.company_id,m=[mr({payload:d.data.subscriptions,schema:d.data.schema.subscription}),fa({payload:d.data.subscription_plans,schema:d.data.schema.subscription_plan}),yr({payload:d.data.subscription_coupons,schema:d.data.schema.subscription_coupon}),va({payload:d.data.subscription_addons,schema:d.data.schema.subscription_addon}),Ia({payload:d.data.subscription_summaries,schema:d.data.schema.subscription_summary})];return s?m.push(sl({tenantId:e,companyId:u})):m.push(sl({tenantId:e,companyId:u,subscriptionId:l.subscription_id})),_(m)}return p($s({tenantId:e,status:d.status}))})),v((d=>p($s({tenantId:e,status:f("Unexpected error",`Unable to ${s?"update":"create"} subscription`+JSON.stringify(d))})))))}return _([])}))),(n,i,r)=>n.pipe(S(Cj.match),y((t=>{const{taskId:e,taskGroupId:a}=t.payload,s=i.value,o=s.taskListState.fetchState==="Completed",c=e!=null?s.taskDetailState.editTaskStateById[e]?.taskDetailLocalData?.taskGroupId:void 0,d=e!=null&&c===null,l=e!=null?ar(s.taskState,e)?.taskGroupIds??[]:[],u=d?[]:c!=null?[c]:e!=null?l:a!=null?[a]:[],m=u[0],h=hY(s,e,u);return(e!=null?r.putAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${e}`,h):r.postAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks`,h)).pipe(y((g=>{if(P(g)&&g.data!=null&&g.data.tasks.length>0){const I=g.data.tasks[0].task_id,E=[Ke(g.data.tasks),ml({fetchState:"Completed",newTaskId:I,taskId:e})],b=g.data.tasks[0],T=b.status?.code==="resolved",O=s.taskListState.currentTab;return o===!0&&d===!1&&m!=null&&(!(O==="live"||O==="completed")||T&&O==="completed"||!T&&O==="live")===!0?E.push(Kb({taskGroupId:m,task:g.data.tasks[0],currentTaskState:e!=null?ar(s.taskState,e):void 0})):o===!0&&d===!0&&e!=null&&ar(s.taskState,e)?.taskGroupIds.forEach((U=>{E.push(xj({taskId:e,taskGroupId:U}))})),_(E)}return p(ml({fetchState:"Error",taskId:e,error:g.status}),N({messageSection:"save_task_detail",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:g.status.message}]}))})),v((g=>p(ml({fetchState:"Error",taskId:e,error:f("Unexpected Error","Save Task REST API call errored out"+JSON.stringify(g))})))))}))),(n,i)=>n.pipe(S(Gp.match),y((r=>{const{transactionId:t,cotTransactionTracking:e,isExpenseAutomationEnabled:a}=r.payload,s=[],o=i.value.transactionDetailState,c=i.value.transactionState,d=Gn(i.value),l=De(t),u=ee(o.transactionDetailById,l,void 0),m=Ot(c,l);if(u!=null&&m!=null){const h=((g,I,E,b=!1)=>{const T={updatesByLineId:{}},O={},x={},U=ET(I,E);T.memo=g.memo,T.documentId=g.documentId,!b||I.type!=="invoice"&&I.type!=="credit_memo"||(T.project=g.project);const k=g.selectedEntity,C=g.updatePreviousTransactionsWithUpdatedVendor===!0?g.vendorUpdates?.qboId:void 0;let B,J,L=!1;const R=new Set(I.lines?.map((D=>D.id))??[]),q=new Set((g.deletedLineIds??[]).filter((D=>R.has(D)))),$=Object.values(g.lineItemById).filter((D=>!R.has(D.id)));return I.lines?.forEach((D=>{if(q.has(D.id))return;const w=g.lineItemById[D.id];if(D.type==="transaction_with_account_and_class_line"||D.type==="transaction_with_product_or_service_line"||D.type==="journal_entry_transaction_line"){if(w==null)return;const K=iH(k,w,g.vendorUpdates,g.customerUpdates);if(O[D.id]={lineDescription:w.lineDescription,amount:w.amount,class:w.class,account:w.account,...I.type!=="invoice"&&I.type!=="credit_memo"?{project:w.project}:{},recommendation:Y0(w.recommendationsWithCOT)},D.type==="journal_entry_transaction_line"||D.platformLineDetailType==="deposit_line_detail"){const be=w.lineEntity;O[D.id]={...O[D.id],customer:be!=null&&be.type==="customer"?w.customer:void 0,vendor:be!=null&&be.type==="vendor"?w.vendor:void 0,...D.type==="journal_entry_transaction_line"?{postingType:w.postingType,postingTypeName:w.postingType!=null?w.postingType.charAt(0).toUpperCase()+w.postingType.slice(1):w.postingTypeName}:{}}}let G=!1,Z=!1;const de=D;G=w.account?.qboId!==de.account.qboId&&!!w.account?.qboId,Z=(w.class?.qboId!=null||de.class?.qboId!=null)&&w.class?.qboId!==de.class?.qboId;const ue=IT(w.amount.amount,w.account),ae=bT(w.amount.amount,w.class),ye=w.recommendedAccount,_e=w.recommendedClass,Le=!!ue&&!!ye&&ue?.qboId===ye?.qboId,Ne=!!ae&&!!_e&&ae?.qboId===_e?.qboId,pe=(w.isRecommendedCategorySelected===!1||w.isRecommendedClassSelected===!1||Le===!1||Ne===!1)&&w.recommendationsWithCOT!=null&&(G||Z);if(L=L||(w.isUpdateAllChecked??!1),K!=null&&(pe===!0||w.isUpdateAllChecked!=null&&w.isUpdateAllChecked===!0||C!==null)){B=G===!0||w.isRetainedCategorySelected===!0?ue:void 0,J=Z===!0||w.isRetainedClassSelected===!0?ae:void 0;const be={account:B,class:J};if(be.class!=null||be.account!=null||C!=null){const ca=g.vendorUpdates?.qboId,da=g.customerUpdates?.qboId;let la=K.entityId;ca!=null&&k?.type==="vendor"?la=g.updatePreviousTransactionsWithUpdatedVendor===!0?la:ca:da!=null&&k?.type==="customer"&&(la=da),oH(x,la,K.entityType,be,w.isUpdateAllChecked,C,K.entityName)}}}else O[D.id]=D})),T.updatesByLineId=O,{updates:T,entityRelatedUpdates:x,markAsMiscatUpdates:U,anyBulkUpdates:L,addedLines:$.length>0?$:void 0,deletedLineIds:q.size>0?[...q]:void 0}})(u.transactionDetailLocalData,m,a,d);return s.push(_E(t,h,a,e)),_(s)}return _(s)}))),(n,i,r)=>n.pipe(S(TN.match),y((t=>{const e=i.value,{expenseAutomationTransactionsViewState:a,accountState:s,accountListState:o}=e,{selectedTransactionCategorizationTab:c,transactionCategorizationView:d}=a,{selectedTransactionId:l,selectedTransactionLineId:u}=d[c],m=ha(s,o,"accountList"),h=e.transactionVendorViewState.newVendorState?.vendorDetailLocalData?.vendorId,g=t.payload.vendorId!=null?e.transactionVendorViewState.editVendorStateById[t.payload.vendorId].vendorDetailLocalData:e.transactionVendorViewState.newVendorState.vendorDetailLocalData,I=t.payload.vendorId!=null?t.payload.vendorId:h,E=((b,T,O)=>{const{vendorState:x,accountState:U,classState:k}=b,C={};if(T!=null&&(C.vendor_name=T.vendorName),O!=null){const B=x.vendorByID[O].syncToken;C.sync_token=B,C.qbo_id=x.vendorByID[O].qboId}else{if(T.vendorCategory!=null){const B=tt(U,T.vendorCategory,"account_list");B!=null&&(C.account=Xa(B))}else C.account=null;if(T.vendorClass!=null){const B=rr(k,{classId:T.vendorClass,reportId:"class_list"});B!=null&&(C.accounting_class=en(B))}else C.accounting_class=null;T.vendorOwner!=null?C.owner_id=T.vendorOwner:C.owner_id=null}return C})(e,g??NN,I);return(I!=null?r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${I}`,E):r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors`,E)).pipe(y((b=>{if(P(b)&&b.data!=null){const T=[le(b.data.vendors??[])];if(T.push(_n({vendorId:b.data.vendors[0].vendor_id,localData:{vendorName:b.data.vendors[0].vendor_name,vendorId:b.data.vendors[0].vendor_id}})),I==null&&t.payload.transactionId!=null&&b.data!=null){if(t.payload.isExpenseAutomationEnabled===!0){if(l!=null&&u!=null){const O=Ot(e.transactionState,l);O!=null&&T.push(PN({selectedTab:c,transactionId:l,lineId:u,selectedTransaction:O,uncategorizedAccounts:m,isAccountingClassesEnabled:ht(e),updatedVendor:{name:b.data.vendors[0].vendor_name,id:b.data.vendors[0].qbo_id,logo:Do(b.data.vendors[0].logo?.url??"")},selectedEntity:{name:b.data.vendors[0].vendor_name,id:b.data.vendors[0].qbo_id,type:"vendor",zeniId:b.data.vendors[0].vendor_id,qboId:b.data.vendors[0].qbo_id,logo:Do(b.data.vendors[0].logo?.url??"")}}))}}else T.push(AN({transactionId:t.payload.transactionId,vendorUpdates:{name:b.data.vendors[0].vendor_name,id:b.data.vendors[0].vendor_id,qboId:b.data.vendors[0].qbo_id},entity:{name:b.data.vendors[0].vendor_name,id:b.data.vendors[0].qbo_id,type:"vendor",zeniId:b.data.vendors[0].vendor_id,qboId:b.data.vendors[0].qbo_id,logo:Do(b.data.vendors[0].logo?.url??"")},resetRecommendations:!0}));T.push(N({messageSection:"create_vendor",messageText:"success",type:"none"}))}return T.push(Jo("Completed",t.payload.vendorId)),t.payload.saveTransaction===!0&&t.payload.transactionId!=null&&T.push(Gp({transactionId:t.payload.transactionId,isExpenseAutomationEnabled:t.payload.isExpenseAutomationEnabled,cotTransactionTracking:[]})),_(T)}{const T=[];return T.push(Jo("Error",t.payload.vendorId,b.status)),b.status.code!==409&&T.push(N({messageSection:I==null?"create_vendor":"update_vendor",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:b.status.message}]})),_(T)}})),v((b=>p(Jo("Error",t.payload.vendorId,f("Unexpected Error",`Save Transaction Vendor REST API call errored out ${JSON.stringify(b)}`))))))}))),(n,i,r)=>n.pipe(S(nz.match),y((()=>{const{vendorFirstReviewViewState:t}=i.value,e=t.vendorLocalData?.vendorDetails,a=(o=>{const c={};return c.qbo_id=o?.qboId,o?.websiteUrl!=null&&(c.website_url=o.websiteUrl.toString()),c})(e),s=t.vendorLocalData?.vendorDetails.id;return s!=null?r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${s}`,a).pipe(y((o=>{if(P(o)&&o.data!=null){const c=[le(o.data.vendors)];return c.push(bl({vendorId:s,fetchState:"Completed"})),_(c)}{const c=[];return o.status.code!==409&&(c.push(bl({vendorId:s,fetchState:"Error"})),c.push(N({messageSection:"update_vendor",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:o.status.message}]}))),_(c)}})),v((o=>p(bl({vendorId:s,fetchState:"Error",error:f("Unexpected Error","Vendor Save on First Review View REST API call errored out "+JSON.stringify(o))}))))):_([])}))),(n,i,r)=>n.pipe(S(Dt.match),y((t=>{const e=i.value,a=e.vendorViewState.newVendorState?.vendorDetailLocalData?.vendorId,s=t.payload.vendorId!=null?e.vendorViewState.editVendorStateById[t.payload.vendorId].vendorDetailLocalData:e.vendorViewState.newVendorState.vendorDetailLocalData,o=t.payload.vendorId??a,c=((C,B,J)=>{const{accountState:L,classState:R,addressViewState:q,vendorState:$}=C,D={};if(B!=null){if(D.vendor_name=B.vendorName,B.vendorCategory!=null){const Z=tt(L,B.vendorCategory,"account_list");Z!=null&&(D.account=Xa(Z))}else D.account=null;if(B.vendorClass!=null){const Z=rr(R,{classId:B.vendorClass,reportId:"class_list"});Z!=null&&(D.accounting_class=en(Z))}else D.accounting_class=null;B.vendorType!=null&&(D.vendor_type=B.vendorType),B.vendorOwner!=null?D.owner_id=B.vendorOwner:D.owner_id=null,B.isVendor1099!=null&&(D.is_vendor_1099=B.isVendor1099),B.documentIds!=null&&(D.document_ids=B.documentIds)}const w=B.contacts??[];if(D.contacts=w.filter((Z=>Z.email.length>0||Z.fullName.length>0)).map((Z=>In(Z))),J!=null){const Z=$.vendorByID[J].syncToken;D.bank_account_ids=[...new Set(B.bankAccountIds)],D.payment_instrument_ids=[...new Set(B.paymentInstrumentIds)],D.sync_token=Z,D.qbo_id=$.vendorByID[J].qboId}else D.bank_account_ids=B.bankAccountIds,D.payment_instrument_ids=B.paymentInstrumentIds;const K=q.newAddressState?.vendor_address?.addressToCreate,G=K!=null?Ue(K):void 0;return G!=null&&(D.address=G),B.countryCode!=null&&(D.country_code=B.countryCode),B.currencyCode!=null&&(D.vendor_currency_code=B.currencyCode),B.currencySymbol!=null&&(D.vendor_currency_symbol=B.currencySymbol),D.is_two_factor_verification_required=!0,D})(e,s??JN,o);let d=e.editBillDetailViewState.newBillState;const{tenantState:l,companyState:u,expressPayState:m}=e,{currentTenantId:h}=l,g=h!=null?l.tenantsById?.[h]?.companyId:void 0,I=Ae(u,g??""),E=I?.company.companyBillPayInfo.payNowCutOffTimeByMethod.ach,b=E!=null&&me().isSameOrBefore(E),T=m.formLocalData;if(t.payload.billId!=null){const C=Oe(t.payload.billId);d=e.editBillDetailViewState.editBillStateById[C]}const O=d.billDetailLocalData.isCancelled,x=d.billDetailLocalData.updatesByLineId,U=o!=null?r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${o}`,c):r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors`,c),k=e.tenantState.loggedInUser?.userId??"";return U.pipe(y((C=>{if(P(C)){const B=C.data?.vendors[0]!=null?dr(C.data?.vendors[0]):void 0,J={...x};if(B!=null){const q=B.accountId!=null?tt(e.accountState,B.accountId,"account_list"):void 0,$=B.classId!=null?Qp(e.classState,{classId:B.classId,reportId:"class_list"}):void 0,D=B.vendorCurrencyCode,w=B.vendorCurrencySymbol;Object.keys(J).forEach((K=>{const G=x[K];J[K]={...G,account:q,class:$,...rn}})),Object.keys(J).length===0&&(J[1]={account:q,class:$,amount:{amount:0,currencyCode:D,currencySymbol:w},recipientAmount:{amount:0,currencyCode:D,currencySymbol:w},id:"1",lineDescription:"",platformLineDetailType:"account_based_expense_line_detail",type:"transaction_with_account_and_class_line",billable:"not_billable",isCategoryMiscategorized:!1,isClassMiscategorized:!1,...rn})}const L=pt(C.data?.vendors??[]),R=[le(C.data?.vendors??[]),St(C.data?.vendors[0].contacts??[]),z(L),we(C.data?.vendors[0].bank_accounts??[]),ya(C.data?.vendors[0].payment_instruments??[])];if(t.payload.view!=="vendorsTab"){B?.vendorCurrencyCode==null||$o(B.vendorCurrencyCode)||R.push(ga(!0,{amount:d.billDetailLocalData.totalAmount?.amount??0,currencyCode:B.vendorCurrencyCode??"USD",currencySymbol:B.vendorCurrencySymbol??"$"},"USD",t.payload.billId));const q=d.billDetailLocalData.showVendorGptRecommendationText,$=d.billDetailLocalData.recommendedVendorId,D=d.billDetailLocalData.vendor?.id,w=d.addBillAutoFields.tentativeVendorName;let K;K=$!=null&&$===B?.id||(D==null||B?.id==null||D===B.id)&&q,w&&w===B?.name&&(K=!0,R.push(bn({addBillAutoFields:{...d.addBillAutoFields,tentativeVendorName:""}})),$==null&&R.push(DN(B?.id))),t.payload.isExpressPayPage!==!0&&(R.push(mt({billDetailLocalData:{showVendorGptRecommendationText:K,vendor:B,isCancelled:O,updatesByLineId:J,whatForSection:{...d.billDetailLocalData.whatForSection,currencyCode:B?.vendorCurrencyCode,recipientCurrencyCode:B?.vendorCurrencyCode},paymentDetailsSection:{...d.billDetailLocalData.paymentDetailsSection,paymentTo:void 0,internationalTransferFeeBearerPaymentMethod:B?.preferredInternationalTransferFeeBearerPaymentMethod,paymentDate:d.billDetailLocalData.paymentDetailsSection?.paymentDate??te(oo(me().toDate(),[0,6],b?0:1).toISOString())},isCollectToAccountInfoFromVendorContact:!1,isRecurring:d.billDetailLocalData.isRecurring},billId:t.payload.billId})),B?.qboId!=null&&R.push(na(B.qboId,!1)))}return t.payload.isExpressPayPage!==!0&&R.push(Yp(t.payload.vendorId)),R.push(lr("Completed",t.payload.vendorId)),t.payload.view==="vendorsTab"&&R.push(N({messageSection:"update_vendor",messageText:"success",type:"success"})),t.payload.isExpressPayPage===!0&&t.payload.vendorId==null&&B!=null&&(R.push(cr({vendorId:B.id,localData:Ls(B,i.value,C.data?.vendors[0])})),R.push(lr("Completed",B.id)),R.push(Eo({localData:{...T,vendorId:B.id,amount:T?.amount??{amount:0,currencyCode:B.vendorCurrencyCode,currencySymbol:B.vendorCurrencySymbol},paymentDate:T?.paymentDate??me()}}))),_(R)}return C.data?.error_code===1001?p(lr("Error",t.payload.vendorId,C.status,!0),Wp({userId:k})):p(lr("Error",t.payload.vendorId,C.status),N({messageSection:"update_vendor",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:C.status.message}]}))})),v((C=>p(lr("Error",t.payload.vendorId,f("Unexpected Error",`REST API call errored out ${JSON.stringify(C)}`))))))}))),(n,i,r)=>n.pipe(S(sz.match),y((t=>{const{vendorFirstReviewViewState:e,globalMerchantState:a,vendorState:s}=i.value,{vendorId:o,markAsEmployee:c,markAsLocalContractor:d}=t.payload,l=e.vendorFirstReviewViewLocalDataById[o].vendorFirstReviewViewLocalData,u=Ce(s,o),{vendorName:m,selectedGlobalMerchant:h,recommendations:g,nonExistingRecommendations:I}=RY(l,a,s),E={...$Y(m,g,I,c,d,u?.qboId,h)};return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${o}?query=${encodeURIComponent(JSON.stringify({view:"merchant_review_list"}))}`,E).pipe(y((b=>{if(P(b)&&b.data!=null){const T=[];return T.push(le(Hs(b.data.vendors??[])),V({users:Ys(b.data.vendors??[]),updateType:"merge"}),Et({globalMerchants:Qs(b.data.vendors??[])})),T.push(El({vendorId:o,vendors:b.data.vendors??[]})),T.push(Wr("Completed",t.payload.vendorId,c,d,b.status,b.data.vendors?.[0].status)),u!=null&&(b.data.vendors?.[0].status.code==="reviewed"?T.push(N({messageSection:"save_vendor_renamed",messageText:"success",type:"success",variables:[{variableName:"_old_vendor_name_",variableValue:u?.name},{variableName:"_updated_vendor_name_",variableValue:m}]})):T.push(N({messageSection:E.is_employee===!0?"save_vendor_marked_as_employee":E.is_local_contractor===!0?"save_vendor_marked_as_local_contractor":"save_vendor_sent_for_review",messageText:"success",type:E.is_employee===!0||E.is_local_contractor===!0?"success":"info",variables:[{variableName:"_vendor_name_",variableValue:u?.name}]}))),_(T)}if(b.status.code===409&&b.data!=null){const T=[];if(T.push(El({vendorId:o,vendors:b.data.vendors??[]})),T.push(Wr("Error",t.payload.vendorId,c,d,b.status)),T.push(le(Hs(b.data.vendors??[])),V({users:Ys(b.data.vendors??[]),updateType:"merge"}),Et({globalMerchants:Qs(b.data.vendors??[])})),b.status.details==null)T.push(Tl({vendorId:t.payload.vendorId,vendorNameSentForReview:m,isVendorMergeError:!0}));else if(b.status.details!=null){let O;g.length>0&&g[0]?.globalMerchants?.[0]!=null?O={...g[0].globalMerchants[0],isReviewed:!1,globalMerchantNameInLowerCase:g[0].globalMerchants[0].globalMerchantName.toLowerCase()}:I.length>0&&I[0]?.globalMerchants?.[0]!=null&&(O={...I[0].globalMerchants[0],isReviewed:!1,globalMerchantNameInLowerCase:I[0].globalMerchants[0].globalMerchantName.toLowerCase()});const x=b.data.vendors?.[0]?.recommendations?.[0]?.global_merchants?.[0]!=null?{...oz(b.data.vendors?.[0]?.recommendations?.[0]?.global_merchants?.[0]),globalMerchantId:b.data.vendors?.[0]?.recommendations?.[0]?.global_merchants?.[0]?.global_merchant_id}:void 0;T.push(Tl({vendorId:t.payload.vendorId,vendorNameSentForReview:m,isVendorMergeError:!1,oldRecommendation:O,newRecommendation:x}))}return _(T)}if(b.status.code===400&&b.status.message.includes("There is already a vendor using that entity name.")){const T=[];return T.push(El({vendorId:o,vendors:b.data&&b.data.vendors?b.data.vendors:[]})),T.push(Wr("Error",t.payload.vendorId,c,d,b.status)),T.push(le(Hs(b.data&&b.data.vendors?b.data.vendors:[])),V({users:Ys(b.data&&b.data.vendors?b.data.vendors:[]),updateType:"merge"}),Et({globalMerchants:Qs(b.data&&b.data.vendors?b.data.vendors:[])})),b.status.details==null&&T.push(Tl({vendorId:t.payload.vendorId,vendorNameSentForReview:m,isVendorMergeError:!0})),_(T)}return p(Wr("Error",t.payload.vendorId,c,d,b.status),N({messageSection:"save_vendor_sent_for_review",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:b.status.message}]}))})),v((b=>p(Wr("Error",t.payload.vendorId,c,d,f("Unexpected Error",`Save Vendor First Review View REST API call errored out ${JSON.stringify(b)}`))))))}))),(n,i,r)=>n.pipe(S(VN.match),y((t=>{const e=i.value,a=e.vendorsTabVendorViewState.vendorStateById[t.payload.vendorId].vendorDetailLocalData,s=t.payload.vendorId,o=((c,d,l)=>{const{accountState:u,classState:m,addressViewState:h,vendorState:g}=c,I={};if(d!=null){if(I.vendor_name=d.vendorName,I.legal_name=d.legalName,d.vendorCategory!=null){const O=tt(u,d.vendorCategory,"account_list");O!=null&&(I.account=Xa(O))}else I.account=null;if(d.vendorClass!=null){const O=rr(m,{classId:d.vendorClass,reportId:"class_list"});O!=null&&(I.accounting_class=en(O))}else I.accounting_class=null;d.vendorOwner!=null?I.owner_id=d.vendorOwner:I.owner_id=null,d.vendorEmail!=null&&(I.email=d.vendorEmail),d.vendorPhone!=null&&(I.phone=d.vendorPhone),d.vendorType!=null&&(I.vendor_type=d.vendorType),d.tin!=null?I.tin={type:d.tin.type,value:d.tin.value}:I.tin=null}const E=d.contacts??[];I.contacts=E.filter((O=>O.email.length>0||O.fullName.length>0||O.phone.length>0)).map((O=>In(O)));const b=h.newAddressState?.vendor_address.addressToCreate,T=b!=null?Ue(b):void 0;if(T!=null&&(I.address=T),l!=null){const O=g.vendorByID[l].syncToken;I.sync_token=O,I.qbo_id=g.vendorByID[l].qboId}return I})(e,a??LN,s);return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${s}`,o).pipe(y((c=>{if(P(c)){const d=pt(c.data?.vendors??[]),l=En(c.data?.vendors??[]),u=[le(c.data?.vendors??[]),St(c.data?.vendors[0].contacts??[]),z(d),we(l)];return u.push(tm(t.payload.vendorId)),u.push(Fo("Completed",t.payload.vendorId)),u.push(N({messageSection:"update_vendor",messageText:"success",type:"success"})),_(u)}return p(Fo("Error",t.payload.vendorId,c.status),N({messageSection:"update_vendor",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}))})),v((c=>p(Fo("Error",t.payload.vendorId,f("Unexpected Error",`Vendors tab save REST API call errored out ${JSON.stringify(c)}`))))))}))),(n,i,r)=>n.pipe(S(lC.match),y((t=>{const{tenantId:e}=t.payload,a=`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/crons/cards/tenant-credit-score`,s=e!=null?{tenant_id:e}:{};return r.postAndGetJSON(a,s).pipe(y((o=>P(o)?_([uC(e),N({messageSection:"credit_agent_schedule_cron",messageText:"success",type:"success"})]):_([ey(e,o.status),N({messageSection:"credit_agent_schedule_cron",messageText:"failed",type:"error"})]))),v((o=>_([ey(e,f("Unexpected error","REST API call errored out: "+JSON.stringify(o))),N({messageSection:"credit_agent_schedule_cron",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>{const t=n.pipe(S(My.match)),e=t.pipe(S((s=>s.payload.pageToken!=null))),a=t.pipe(S((s=>s.payload.pageToken==null)),Tr(Vy));return We(e,a).pipe(A((s=>{const{query:o,pageToken:c}=s.payload,d=c!=null&&c.length>0?Number(c):0,l=encodeURIComponent(o),u=Px;return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals?status=posted&reversal_policy=on_bill_match&search_text=${l}&limit=${u}&offset=${d}`).pipe(y((m=>{if(P(m)&&m.data!=null){const h=m.data.accruals,g=c!=null,I=d+h.length,E=I<(m.data.total??I)?String(I):null,b=Rn(i.value)?.currencyCode??"",T=h.map((k=>Ax(k,b))),O=[],x=i.value.jeSchedulesState.oneTimeAccrualsByKey,U=T.filter((k=>x[Ly(k._id)]==null));return U.length>0&&O.push(Lt(U)),O.push(Nx({append:g,nextPageToken:E,results:T})),_(O)}return p(Fy({error:m.status}))})),v((m=>p(Fy({error:f("Unexpected Error","Search match accruals REST API call errored out"+JSON.stringify(m))})))),ge(n.pipe(S($e.match))))})))},(n,i,r)=>{const t=n.pipe(S(Ox.match),y((c=>{const d=c.payload.matchId;if(d==null||d==="")return _([yi(""),My("")]);const l=mi(i.value.actualMatchingState,d),u=xx(d),m=l?.transactionType!=null&&l.transactionType!==""?l.transactionType:u?.transactionType,h=l?.transactionIntegrationId!=null&&l.transactionIntegrationId!==""?l.transactionIntegrationId:u?.transactionIntegrationId;return _([yi("",void 0,m,h)])}))),e=n.pipe(S(yi.match)),a=e.pipe(S((c=>c.payload.pageToken!=null))),s=e.pipe(S((c=>c.payload.pageToken==null)),Tr(Vy)),o=We(a,s).pipe(A((c=>{const{query:d,pageToken:l,transactionType:u,transactionIntegrationId:m}=c.payload,h={search_text:d,page_size:Cx,...l!=null?{page_token:l}:{},...u!=null&&u!==""?{transaction_type:u}:{},...m!=null&&m!==""?{transaction_integration_id:m}:{}};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/match-transaction-search?query=${encodeURIComponent(JSON.stringify(h))}`).pipe(y((g=>{if(P(g)&&g.data!=null){const{transactions:I,next_page_token:E}=g.data,b=l!=null,T=Rn(i.value),O=I.map((x=>(function(U,k){const C=U.currency_code!=null&&U.currency_code!==""?U.currency_code:k?.currencyCode??"";return{transactionId:U.transaction_id,transactionIntegrationId:U.transaction_integration_id,transactionType:(U.transaction_type||"").toLowerCase(),lineId:U.line_id,vendorId:U.vendor_id??void 0,vendorName:U.vendor_name??"",amount:QK(U),transactionDate:U.transaction_date,accountId:U.account_id??void 0,accountName:U.account_name??void 0,accountDescription:U.account_description??void 0,accountingClassId:U.accounting_class_id??void 0,accountingClassName:U.accounting_class_name??void 0,currencyCode:C,currencySymbol:WK(U,C,k),transactionMemo:U.transaction_memo??void 0,transactionDescription:U.transaction_description??void 0,transactionTypeName:U.transaction_type_name??void 0,syncToken:U.sync_token==null?"":String(U.sync_token)}})(x,T)));return p(Ux({append:b,nextPageToken:E??null,results:O}))}return p(qy({error:g.status}))})),v((g=>p(qy({error:f("Unexpected Error","Search match transactions REST API call errored out"+JSON.stringify(g))})))),ge(n.pipe(S($e.match))))})));return We(t,o)},(n,i,r)=>{const t=n.pipe(S(CU.match)),e=t.pipe(S((o=>o.payload.pageToken!=null))),a=t.pipe(S((o=>o.payload.pageToken==null&&o.payload.query.trim().length<2))),s=t.pipe(S((o=>o.payload.pageToken==null&&o.payload.query.trim().length>=2)),Tr(300));return We(e,a,s).pipe(A((o=>{const{query:c,pageToken:d}=o.payload;if(d==null&&c.trim().length<2)return F;const l=i.value,{expenseAutomationMissingReceiptsViewState:{bulkUpload:{manualSearch:u,sortKey:m,sortOrder:h}}}=l,{end:g,start:I}=Ml(90),E=h??"descending",b={start_date:I,end_date:g,auto_categorized:!1,sort_by:Ii(m??"date"),sort_order:E==="ascending"?"asc":"desc",page_token:d??null,page_size:u.pageSize,search_text:c,sub_tab:vi};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/expense-automation/transactions?query=${encodeURIComponent(JSON.stringify(b))}`).pipe(y((T=>{if(P(T)&&T.data!=null){const{transactions:O,next_page_token:x,total_count:U}=T.data,k=d!=null,C=O.map(xU),B=[xe(O,(J=>J.transaction_id),"merge"),UU({append:k,nextPageToken:x??null,results:C,totalCount:U})];return _(B)}return p(p_({error:T.status}))})),v((T=>p(p_({error:f("Unexpected Error","Search transactions for manual match errored: "+JSON.stringify(T))})))))})))},(n,i,r)=>{const t=n.pipe(S(Qx.match)),e=t.pipe(S((s=>s.payload.query.trim().length<_i))),a=t.pipe(S((s=>s.payload.query.trim().length>=_i)),Tr(300));return We(e,a).pipe(A((s=>{const o=s.payload.query.trim();if(o.length<_i)return F;const c={page_size:20,search_text:o,je_schedule_type:s.payload.scheduleType};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/base_transaction_search?query=${encodeURIComponent(JSON.stringify(c))}`).pipe(y((d=>{if(P(d)&&d.data!=null){const{transactions:l}=d.data,u={};l.forEach((h=>{const{currency_code:g,currency_symbol:I}=h,E=g??"USD",b=u[E];u[E]=b!=null?{currencySymbol:b.currencySymbol,transactions:[...b.transactions,h]}:{currencySymbol:g==null?"$":I,transactions:[h]}}));const m=Object.keys(u).map((h=>{const g=u[h];return mu(g.transactions,h,g.currencySymbol,"merge")}));return m.push(Wx({searchResults:l.map((h=>Zy({id:h.transaction_id,type:Xy(h.transaction_type),lineId:h.line_id})))})),_(m)}return p(e_({status:d.status}))})),v((d=>p(e_({status:f("Unexpected Error","Search transactions for new schedule errored: "+JSON.stringify(d))})))))})))},(n,i)=>n.pipe(y((r=>{if(Cs.match(r)&&r.payload.fetchState==="Completed")return p(VL());if(!(c=>eI.match(c)||fo.match(c))(r))return F;const t=i.value,e=((c,d)=>d.payload.questionAnswerId!=null?d.payload.questionAnswerId:c.aiCfoState.aiCfoByChatSessionId[d.payload.chatSessionId]?.questionAnswers.slice(-1)[0]?.questionAnswerId)(t,r);if(e==null)return F;const a=((c,d,l)=>{const u=tI(c.aiCfoState,d,l),m=u?.responses.answer?.content.visualization;if(m?.type!=="interactive_form")return;const h=m.data;return"formType"in h&&h.formType==="cards_creation"?h.payload:void 0})(t,r.payload.chatSessionId,e);if(a==null)return F;const s=R0(t);if(s.length>0)return p(AI(s,a));const o=i.pipe(et(R0),Xv(((c,d)=>c.length===d.length&&c.every(((l,u)=>l===d[u])))),S((c=>c.length>0)),ke(1),et((c=>AI(c,a))));return t.userListViewState.userListByType.cardHolderCandidate.fetchState==="In-Progress"?o:j(p(Me("cardHolderCandidate",!1)),o)}))),(n,i)=>n.pipe(y((r=>{if((o=>Ps.match(o)&&o.payload.fetchState==="Completed")(r))return p(NV());if(!(o=>eI.match(o)||fo.match(o))(r))return F;const t=i.value,e=((o,c)=>c.payload.questionAnswerId!=null?c.payload.questionAnswerId:o.aiCfoState.aiCfoByChatSessionId[c.payload.chatSessionId]?.questionAnswers.slice(-1)[0]?.questionAnswerId)(t,r);if(e==null)return F;const a=((o,c,d)=>{const l=tI(o.aiCfoState,c,d),u=l?.responses.answer?.content.visualization;if(u?.type!=="interactive_form")return;const m=u.data;return"formType"in m&&m.formType==="card_policy"?m.payload:void 0})(t,r.payload.chatSessionId,e);if(a==null)return F;if(w0(t))return p($0(t,a));const s=i.pipe(et((o=>w0(o))),Xv(),S((o=>o)),ke(1),et((()=>$0(i.value,a))));return t.cardPolicyState.mccCategoriesFetchState==="In-Progress"?s:j(p(Wv()),s)}))),(n,i)=>n.pipe(S(X_.match),Fe(i),y((([r,t])=>{const{id:e}=r.payload,a=dB(t.invoicingPlanState,e);return a==null?F:p(lB({id:e,localData:uB(a)}))}))),(n,i)=>n.pipe(S(oh.match),Fe(i),y((([r,t])=>{const{id:e}=r.payload,a=vB(t.invoicingCouponState,e);return a==null?F:p(IB({id:e,localData:bB(a)}))}))),(n,i)=>n.pipe(S(Di.match),Fe(i),y((([r,t])=>{const{id:e}=r.payload,a=Sh(t.invoicingCustomerState,e);return a==null?F:p(UB({id:e,localData:kB(a)}))}))),(n,i)=>n.pipe(S($i.match),Fe(i),y((([r,t])=>{const{id:e}=r.payload,a=qB(t,e);return a==null?F:p(jB({id:e,localData:GB(a)}))}))),(n,i,r)=>n.pipe(S(sO.match),y((t=>{const{companyId:e,fileId:a,tenantId:s}=t.payload,o=i.value,c=o.companyMonthEndReportViewState.monthEndReportDataByCompanyId[e].companyMonthEndReportData.recipientEmailList,d=o.companyMonthEndReportViewState.monthEndReportDataByCompanyId[e].companyMonthEndReportData.subject,l=o.companyMonthEndReportViewState.monthEndReportDataByCompanyId[e].companyMonthEndReportData.zeniRequestsHtml,u=o.companyState.companiesById[e],m=o.companyState.companiesById[e].companyInfo.name,h=s??u.companyInfo.tenantId,g=_m(me()),I=me(),E=[];if(a!=null&&a!=null){const T=hm(o.fileState,a);T!=null&&E.push({data:T.base64String,id:T.fileId,name:T.fileName})}const b={template_data:WE(o.companyMonthEndReportViewState.monthEndReportDataByCompanyId[e].companyMonthEndReportData.templateData,d),recipient_email_list:c,tenant_receiver_email_list:o.companyMonthEndReportViewState.monthEndReportDataByCompanyId[e].companyMonthEndReportData.tenantReceiverEmailList,last_report_sent_business_day:g,last_report_sent_date:I.format(re),...l!==void 0&&{zeni_requests_html:l===""?null:l},files:E};return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}/emails/month-end`,b,{"zeni-tenant-id":h}).pipe(y((T=>{if(M(T)){const O=[Go(e,"Completed",void 0),oO({companyId:e}),Sm({companyId:e,isInDraftMode:!1}),iO({companyId:e,reportSent:!0}),N({messageSection:"cockpit_month_end_email_sent",messageText:"success",type:"success",variables:[{variableName:"_company-name_",variableValue:m}]})];return _(O)}return p(Go(e,"Error",T.status))})),v((T=>p(Go(e,"Error",f("Unexpected Error","send company month end report REST API call errored out"+JSON.stringify(T)))))))}))),eK,(n,i,r)=>n.pipe(S(Rk.match),y((t=>{const{body:e,customerId:a,email:s,subject:o}=t.payload,c=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/customers/${encodeURIComponent(a)}/payment-link`;return r.postAndGetJSON(c,{email:s,...e!=null&&e!==""?{body:e}:{},...o!=null&&o!==""?{subject:o}:{}}).pipe(A((d=>P(d)&&d.data!=null?p(Mk({email:d.data.email,magicLinkUrl:d.data.magic_link_url})):p(z_(d.status)))),v((d=>p(z_(f("Unexpected Error","Send payment link REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(YJ.match),y((t=>{const{companyId:e}=t.payload,a={is_onboarding_tenant:!0,is_send_invite_to_users_with_access_to_onboarding:!0,is_send_invite_to_customer:!0,company_id:e};return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/whitelist-companies`,a).pipe(y((s=>{if(P(s)&&s.data!=null){const o=s.data.companies.map((m=>m.company_id)),c=zi(s.data.tenants,s.data.companies),d=I0(s.data.companies[0].onboarding_info,s.data.users),l=s.data.companies[0].name??"",u=[];return u.push(Ki(s.data.tenants,!0)),u.push(ds({payload:s.data.companies,schema:{},onboardingInviteStatus:s.data.onboarding_invite_status,companyIdTenantIdMapping:c})),u.push(z(s.data.addresses??[])),u.push(Hi(s.data.tenants)),u.push(Yi({onboardingCustomersInfo:s.data.whitelist_companies})),u.push(Qi(o)),u.push(QJ({companyId:e})),s.data.users!=null&&u.push(V({users:s.data.users})),s.data.user_roles!=null&&u.push(H(s.data.user_roles)),u.push(N({messageSection:"dashboard_invite_sent",messageText:"success",type:"success",variables:[{variableName:"_user-name_",variableValue:d},{variableName:"_company-name_",variableValue:l}]})),_(u)}{const o=[];return o.push(rg({error:s.status,companyId:e})),o.push(N({messageSection:"dashboard_invite_sent",messageText:"failed",type:"error"})),_(o)}})),v((s=>{const o=[];return o.push(rg({error:f("Unexpected Error","Send Onboarding Customer View Invite errored out"+JSON.stringify(s)),companyId:e})),o.push(N({messageSection:"dashboard_invite_sent",messageText:"failed",type:"error"})),_(o)})))}))),tK,(n,i,r)=>n.pipe(S(N$.match),A((()=>{const{referralViewState:t}=i.value,e=t.referralFormLocalData,a=t.rewardsPlan.planId,s={...UH(e,a)};return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/company-referrals`,s).pipe(y((o=>M(o)?[O$(),N({messageSection:"referral_invite_sent",messageText:"success",type:"success"})]:p(ps(o.status)))),v((o=>p(ps(f("Unexpected error","Send referral REST API call errored out"+JSON.stringify(o)))))))}))),aK,(n,i,r)=>n.pipe(S(_A.match),y((t=>{const{enabled:e,scheduleId:a}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/routines/${encodeURIComponent(a)}`,{enabled:e}).pipe(y((s=>P(s)?p(np(),_t()):p(ln(s.status),_t()))),v((s=>p(ln(f("Unexpected Error","Set routine enabled REST API call failed",s instanceof Error?{message:s.message}:void 0)),_t()))))}))),(n,i,r)=>n.pipe(S(fA.match),y((t=>{const{macroId:e,visibility:a}=t.payload,s=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/skills/${encodeURIComponent(e)}/visibility`;return r.putAndGetJSON(s,{visibility:a}).pipe(y((o=>P(o)&&xl(o.data)?p(vA({macroId:e,detail:Ul(o.data)}),go()):p(op(o.status)))),v((o=>p(op(f("Unexpected Error","Set skill visibility REST API call failed",o instanceof Error?{message:o.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(Uj.match),y((t=>gY(t.payload.taskId,t.payload.snoozedUntil,r)))),(n,i,r)=>n.pipe(S(MD.match),A((t=>{const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/qbo/backfill`;return r.postAndGetJSON(e,{start_date:t.payload.startDate}).pipe(y((a=>P(a)?_([VD(),Fi(),N({messageSection:"invoicing_qbo_backfill",messageText:"success",type:"success"})]):_([SS(a.status),N({messageSection:"invoicing_qbo_backfill",messageText:"failed",type:"error",variables:Ee(a.status)})]))),v((a=>_([SS(f("Unexpected Error","Start QBO backfill REST API call errored out "+JSON.stringify(a))),N({messageSection:"invoicing_qbo_backfill",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(dN.match),A((t=>r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts/${yn(t.payload.accountId)}`,{statement_close_day:t.payload.statementCloseDay.toString()}).pipe(y((e=>M(e)?p(lN({accountId:t.payload.accountId,statementCloseDay:t.payload.statementCloseDay,reportId:"card_balance"})):p(Bp(e.status)))),v((e=>p(Bp(f("Unexpected error","Update statement close date REST API call errored out"+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(IA.match),A((t=>{const{chatSessionId:e}=t.payload,a=i.value.aiCfoState.aiCfoByChatSessionId[e];if(a==null)return p(un({chatSessionId:e,error:f("Unexpected Error","Session not found")}));const s=[...a.questionAnswers].reverse().find((d=>d.responses==null||Object.keys(d.responses).length===0||d.responses.answer==null)),o=a.questionAnswers.length<=1;if(!s)return p(un({chatSessionId:e,error:{code:404,message:"No pending question found"}}));const c=s.question.messageId;return r.deleteAndGetJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/messages/${c}`).pipe(y((d=>P(d)&&d.data!=null?p(ip({chatSessionId:e,questionAnswerId:s.questionAnswerId}),bA({chatSessionId:e,question:s.question.questionText,isOnlyQuestionInSession:o})):p(un({chatSessionId:e,error:d.status})))),v((d=>p(un({chatSessionId:e,error:f("Unexpected Error","Stop submit REST API call errored out"+JSON.stringify(d))})))))}))),(n,i)=>n.pipe(S(EA.match),cp(500),A((r=>{const{chatSessionId:t}=r.payload,e=i.value.aiCfoState.aiCfoByChatSessionId[t];if(e==null)return p(dp({chatSessionId:t,error:f("Unexpected Error","Session not found")}));const a=[...e.questionAnswers].reverse().find((o=>o.responses==null||Object.keys(o.responses).length===0||o.responses.answer==null)),s=e.questionAnswers.length<=1;return a?p(ip({chatSessionId:t,questionAnswerId:a.questionAnswerId}),TA({chatSessionId:t,question:a.question.questionText,isOnlyQuestionInSession:s})):p(dp({chatSessionId:t,error:{code:404,message:"No pending question found"}}))}))),(n,i,r)=>n.pipe(S(t1.match),y((()=>{const{billsBulkActionViewState:t,billTransactionState:e}=i.value,a=(o=e,{operation_type:"send_for_approval",operations:(s=t).billsSelectedForBulkAction.map((d=>{let l={entity_id:d};if(s.bulkReviewStateById[d]?.errors?.some((u=>u.code==="ERR_INVOICE_DATE_OUTSIDE_ACCOUNTING_PERIOD"))===!0){const u=o.transactionById[d];u!=null&&(l={...l,request_data:{transaction_date:Wl("draft",u.date,u.bookCloseDate).format("YYYY-MM-DD")}})}return l}))});var s,o;const c=`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bulk/bills/transactions`;return r.putAndGetJSON(c,a).pipe(y((d=>{if(M(d)){const l=[],u=d.data?.total_operations_processing??0;return l.push(Bc({billsProcessing:u,refreshTime:d.data?.hard_refresh_after_sec??0})),l.push(Dc(d.data?.operations??[])),u>0&&l.push(N({messageSection:"bill_pay_bulk_submit",messageText:"success",type:"success",variables:[{variableName:"_count_",variableValue:u.toString()},{variableName:"_bill_",variableValue:u>1?"bills":"bill"},{variableName:"_action_",variableValue:"sent for approval"}]})),_(l)}return p(ja(d.status),N({messageSection:"bill_pay_bulk_submit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}))})),v((d=>p(ja(f("Unexpected Error","Bulk Send For Approval bill REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(pq.match),y((()=>{const{remisBulkActionViewState:t}=i.value,e={operation_type:"send_for_approval",operations:t.remisSelectedForBulkAction.map((s=>({entity_id:s})))},a=`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bulk/reimbursements/transactions`;return r.putAndGetJSON(a,e).pipe(y((s=>{if(M(s)){const o=[],c=s.data?.total_operations_processing??0;return o.push(Fd({remisProcessing:c,refreshTime:s.data?.hard_refresh_after_sec??0})),o.push(qd(s.data?.operations??[])),c>0&&o.push(N({messageSection:"reimbursement_bulk_submit",messageText:"success",type:"success",variables:[{variableName:"_count_",variableValue:c.toString()},{variableName:"_report_",variableValue:c>1?"reports":"report"},{variableName:"_action_",variableValue:"sent for approval"}]})),_(o)}return p(Ka(s.status),N({messageSection:"reimbursement_bulk_submit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:s.status.message}]}))})),v((s=>p(Ka(f("Unexpected Error","Bulk Send For Approval remi REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(wq.match),A((()=>{const{expressPayState:t}=i.value,e=t.formLocalData;return e!=null?r.postAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/transactions/express-pay`,iY(e)).pipe(y((a=>{const s=[];return P(a)&&a.data!=null?(s.push(al({fetchState:"Completed",error:void 0})),s.push(N({messageSection:"express_pay_submit",messageText:"success",type:"success"}))):(s.push(al({fetchState:"Error",error:a.status})),s.push(N({messageSection:"express_pay_submit",messageText:"failed",type:"error"}))),_(s)})),v((a=>p(al({fetchState:"Error",error:f("Unexpected Error","Submit express pay REST API call errored out"+JSON.stringify(a))}))))):_([])}))),(n,i,r)=>n.pipe(S(PA.match),pa((t=>t.payload.chatMessageId)),y((t=>t.pipe(A((e=>{const{chatMessageId:a,chatSessionId:s,feedbackType:o,answerText:c,model:d,questionText:l}=e.payload,u={chat_message_id:a,chat_session_id:s,feedback_type:o,...c!=null&&{answer_text:c},...d!=null&&{model:d},...l!=null&&{question_text:l}};return r.postAndGetJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/feedback`,u).pipe(y((m=>M(m)?p(AA(a)):p(lp(a,m.status)))),v((m=>p(lp(a,f("Feedback REST API call errored out: "+(m instanceof Error?m.message:String(m)),"Unexpected Error"))))))})))))),(n,i,r)=>n.pipe(S(L1.match),A((t=>{const{internationalWireVerificationState:e}=i.value,{companyId:a}=t.payload,s=e.verificationFormLocalData;return s!=null?r.postAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/international-wire/onboarding`,ZH(s)).pipe(y((o=>{const c=[];return P(o)&&o.data!=null?(c.push(Kc({fetchState:"Completed",error:void 0})),c.push(N({messageSection:"business_verification_submit",messageText:"success",type:"success"})),o.data!=null&&c.push(F1({companyId:a,status:o.data?.international_wire_onboarding_status}))):(c.push(Kc({fetchState:"Error",error:o.status})),c.push(N({messageSection:"business_verification_submit",messageText:"failed",type:"error"}))),_(c)})),v((o=>p(Kc({fetchState:"Error",error:f("Unexpected Error","Submit international wire verification REST API call errored out"+JSON.stringify(o))}))))):_([])}))),(n,i,r)=>n.pipe(S(cJ.match),y((()=>{const t=i.value,{brandingDraft:e,settings:a}=t.invoicingSettingsViewState,s=e??dJ(a),o=t.addressViewState.newAddressState?.[cs]?.addressToCreate,c=lJ(s,o),d=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/settings`;return r.putAndGetJSON(d,{...c}).pipe(y((l=>{if(P(l)&&l.data!=null){const u=l.data.address,m=l.data.logo_file;return[...u!=null?[z([u])]:[],...m!=null?[he({files:[m]})]:[],US(l.data),Sa(cs)]}return p(is(l.status))})),v((l=>p(is(f("Unexpected Error","Save branding settings REST API call errored out "+JSON.stringify(l)))))))}))),(n,i)=>n.pipe(S(oJ.match),Fe(i),y((([,r])=>{const{qboDraft:t}=r.invoicingSettingsViewState;return t==null?F:p(xS({settings:{qbo:iJ(t,(e=>uh(r,e)))},snackbarSection:"invoicing_qbo_settings_save"}))}))),(n,i,r)=>n.pipe(S(Mu.match),y((t=>{const{questionAnswerId:e,userId:a,sessionId:s,questionId:o,createdAt:c,question:d,files:l,macroId:u}=t.payload,{aiCfoViewState:m}=i.value,{uiState:h}=m,g=h.agentId;if(g==null||!!d==0)throw new Error("Invalid State");const I=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/agents/${g}`;let E;if(l!=null&&l.length>0){const b=new FormData;b.append("chat_session_id",s),b.append("message",d),u!=null&&b.append("macro_id",u);for(const T of l)b.append("files",T,T.name);E=r.postFormData(I,b)}else E=r.postAndGetJSON(I,{chat_session_id:s,message:d,...u!=null&&{macro_id:u}});return E.pipe(y((b=>{if(P(b)&&b.data!=null){const T=[];return T.push(fo({chatSessionId:s,questionAnswerId:e,question:{questionId:o,text:d,createdAt:c},answerPayload:b.data,userId:a,insertQuestionAnswer:!1}),NA(s)),p(...T)}return p(up({sessionId:s,error:b.status}))})),v((b=>p(up({sessionId:s,error:f("Unexpected Error","Submit question REST API call errored out"+JSON.stringify(b))})))))}))),(n,i,r)=>n.pipe(S(I$.match),y((t=>{const{transactionId:e}=t.payload;return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/${e}/recommendation-feedback`,(a=t.payload,{line_id:a.lineId??null,dimension:a.dimension,recommendation_set_id:a.recommendationSetId??null,top_pick_source:a.topPickSource??null,shown_recommendations:(a.shownRecommendations??[]).map((s=>({source:s.source,rank:s.rank,value:{name:s.value.name,id:s.value.id??null,integration_id:s.value.integrationId??null},confidence:s.confidence??null,reasoning:s.reasoning??null,cot:s.cot??[]}))),selected:{name:a.selected.name,id:a.selected.id??null,integration_id:a.selected.integrationId??null,is_new_entity:a.selected.isNewEntity??!1},matched_source:a.matchedSource??null,matched_rank:a.matchedRank??null,outcome:a.outcome,reason_text:a.reasonText??null,skipped:a.skipped??!1,retracts_feedback_id:a.retractsFeedbackId??null,features:a.features??null})).pipe(y((s=>(M(s)||console.error("submitRecommendationFeedbackEpic: recommendation feedback was not recorded",s.status),F))),v((s=>(console.error("submitRecommendationFeedbackEpic: failed to submit recommendation feedback",s),F))));var a}))),(n,i)=>n.pipe(S(pU.match),S((r=>r.payload.selectedPageTab!=null)),y((r=>{const t=i.value,e=r.payload.selectedPageTab,a=Y(t),s=t.expenseAutomationViewState.selectedPeriodByTenantId[a.tenantId];if(s==null||e==null)return F;const{fetchState:o,refreshStatus:c,jeScheduleTransactionKeysByPeriodAndTab:d}=t.expenseAutomationJESchedulesViewState;if(e!=="actual_matching"&&d[di(e,Ie(s))]!=null&&(o==="In-Progress"||c.fetchState==="In-Progress"))return F;const l=Je(s),u=Se(l.start),m=Se(l.end);return u==null||m==null?F:p(Vt({start:u,end:m},!0))}))),(n,i,r)=>n.pipe(S(Ih.match),y((t=>{const{subscriptionId:e,previousCouponCode:a,nextCouponCode:s}=t.payload,o=p0(a),c=p0(s);if(o===c)return F;const d=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return(o===""?p({success:!0,payload:null}):m0(r,d,e,"remove-coupon",o)).pipe(y((l=>l.success?(c===""?p({success:!0,payload:l.payload}):m0(r,d,e,"apply-coupon",c)).pipe(y((u=>{if(!u.success)return[as(y0(u)),N({messageSection:"invoicing_subscription_saved",messageText:"failed",type:"error"})];const m=u.payload??l.payload,h=[];return m!=null&&h.push(Ba([m],"merge"),z(ka([m]))),h.push(bh({subscriptionId:e}),Sa(wr),N({messageSection:"invoicing_subscription_saved",messageText:"success",type:"success"})),h}))):_([as(y0(l)),N({messageSection:"invoicing_subscription_saved",messageText:"failed",type:"error"})]))))}))),(n,i)=>n.pipe(S((r=>Nr.match(r)||Ca.match(r))),A((r=>{const{batchId:t}=r.payload;return We(n.pipe(S(Oa.match)),n.pipe(S(Ws.match))).pipe(S((e=>e.payload.batchId===t)),ke(1),A((e=>{const{summary:a}=e.payload;if(a.matched<=0)return F;const s=i.value,o=Y(s);if(o==null)return F;const c=s.expenseAutomationViewState.selectedPeriodByTenantId[o.tenantId];if(c==null)return _([Cr(void 0,!0)]);const d=Je(c),l=Se(d.start),u=Se(d.end);return _(l==null||u==null?[Cr(void 0,!0)]:[Er({start:l,end:u},{amount:75,currencyCode:"USD",currencySymbol:"$"},!0,!0),Cr(void 0,!0)])})),ge(n.pipe(S(Vn.match))))}))),(n,i)=>n.pipe(S(Rr.match),A((r=>{const t=[B$({isForecastModeOn:r.payload.isForecastModeOn,selectedForecast:r.payload.selectedForecast,maxNumOfPeriodsToHighlightWithForecast:r.payload.maxNumOfPeriodsToHighlightWithForecast}),D$({isForecastModeOn:r.payload.isForecastModeOn,selectedForecast:r.payload.selectedForecast,maxNumOfPeriodsToHighlightWithForecast:r.payload.maxNumOfPeriodsToHighlightWithForecast}),J$({isForecastModeOn:r.payload.isForecastModeOn,selectedForecast:r.payload.selectedForecast,maxNumOfPeriodsToHighlightWithForecast:r.payload.maxNumOfPeriodsToHighlightWithForecast})];return r.payload.isForecastModeOn&&(t.push(sf(r.payload.firstMonthOfFY,!1,r.payload.maxNumOfPeriodsToHighlightWithForecast,[])),t.push(of(r.payload.firstMonthOfFY,i.value.reportUIOptionsState.compareMode,r.payload.maxNumOfPeriodsToHighlightWithForecast,[])),t.push(w$({viewMode:"account_group"})),t.push($$({viewMode:"account_group"})),t.push(R$({viewMode:"account_group"}))),_(t)}))),(n,i,r)=>n.pipe(S(Lq.match),A((t=>{const e=i.value,{depositAccountId:a}=t.payload,s=e.transferDetailState.localData,o={from_account:{account_id:s.transferFrom?.id,account_type:Ve(s.transferFrom?.accType)??""},to_account:{account_id:s.transferTo?.id,account_type:Ve(s.transferTo?.accType)??""},amount:s.amount.amount,currency_code:s.amount.currencyCode,currency_symbol:s.amount.currencySymbol,payment_method_type:{code:"ach",sub_code:"same-day"}};return r.postAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts-transfers`,o).pipe(y((c=>{if(P(c)){const d=[];return a!=null&&d.push(Js(a,!0,5)),d.push(Be(),rl({fetchState:"Completed"})),_(d)}return p(rl({fetchState:"Error",error:c.status}))})),v((c=>p(rl({fetchState:"Error",error:f("Unexpected Error","Transfer money REST API call errored out"+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(Pq.match),A((()=>{const t=i.value.treasuryTransferMoneyState.localData;return r.postAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account/transactions`,{...oY(t)}).pipe(y((e=>{if(P(e)&&e.data){const a=[Aq({transferTransaction:e.data}),Zd({fetchState:"Completed"}),N({messageSection:"treasury_transfer_money",messageText:"success",type:"success"})];return _(a)}return _([Zd({fetchState:"Error",error:e.status}),N({messageSection:"treasury_transfer_money_failed",messageText:"failed",type:"error"})])})),v((e=>_([Zd({fetchState:"Error",error:f("Unexpected Error","Treasury transfer money REST API call errored out: "+JSON.stringify(e))}),N({messageSection:"treasury_transfer_money_failed",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(EP.match),y((t=>{const{operationType:e,startDate:a,endDate:s}=t.payload,o=i.value.aiAccountantViewState.selectedTenantIdsForJobTrigger,c=`${`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels`}/ai-accountant/jobs`,d=e==="offboard"?{}:{start_date:a,end_date:s};return r.postAndGetJSON(c,{tenant_ids:o,operation_type:e,params:d}).pipe(y((l=>{if(P(l))return _([TP(),So(),N({messageSection:"ai_accountant_trigger_job",messageText:"success",type:"success"})]);{const u=uK(l);return _([wu(l.status),N({messageSection:"ai_accountant_trigger_job",messageText:"failed",type:"error",variables:[{variableName:"__reason__",variableValue:u}]})])}})),v((l=>_([wu(f("Unexpected error","AI Accountant trigger job failed: "+JSON.stringify(l))),N({messageSection:"ai_accountant_trigger_job",messageText:"failed",type:"error",variables:[{variableName:"__reason__",variableValue:"Unexpected error"}]})]))))}))),(n,i)=>n.pipe(S(E_.match),y((r=>{const{pendingReviewLineIds:t,transactionId:e}=r.payload;if(t.length===0)return F;const a=i.value;if(a.expenseAutomationTransactionsViewState.transactionCategorizationView.review.transactionReviewLocalDataById[e.id]!=null)return F;const s=Y(a),o=a.expenseAutomationViewState.selectedPeriodByTenantId[s.tenantId],c=Je(o),d=Se(c.start),l=Se(c.end);return d==null||l==null?F:p(y_({start:d,end:l}))}))),(n,i,r)=>n.pipe(S(kx.match),pa((t=>t.payload.matchId)),y((t=>t.pipe(rt((e=>{const{accrualIds:a,matchId:s}=e.payload,o={accrual_ids:a},c=(function(d,l){return mi(d.actualMatchingState,l)?.vendorName??""})(i.value,s);return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/undo-reversal`,o).pipe(y((d=>{if(P(d)&&d.data!=null){const l=d.data.results.map(XK),u=[Bx(s,l)];return l.some((m=>m.status==="undone"))&&u.push(...o0(i.value),ui(s,!0)),u.push($l(l,c)),_(u)}return p(jy({matchId:s,status:d.status}),$l([],c))})),v((d=>p(jy({matchId:s,status:f("Unexpected Error","Undo reversal accruals REST API call errored out"+JSON.stringify(d))}),$l([],c)))),ge(n.pipe(S($e.match))))})))))),(n,i,r)=>n.pipe(S($q.match),A((t=>{const{accountId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-accounts/${e}`,{is_unlink:!0}).pipe(y((a=>M(a)&&e!=null?p(Rq({accountId:e}),Eb({accountId:e,fetchState:"Completed",error:void 0})):p(Eb({accountId:e,fetchState:"Error",error:a.status}),N({messageSection:"unlink_deposit_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]})))),v((a=>p(N({messageSection:"unlink_deposit_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(a)}]})))))}))),(n,i,r)=>n.pipe(S(QV.match),A((t=>{const{isChargeCardAdmin:e,chargeCardId:a}=t.payload,s=i.value.chargeCardState.chargeCardByID[a],o=s?.accountLast4??"";return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${a}/unlock`).pipe(y((c=>M(c)&&c.data!=null?p(ct(c.data),cd({chargeCardId:a,fetchState:"Completed"}),N({messageSection:e?"unlock_charge_card":"unlock_charge_card_card_user",messageText:"success",type:"success",variables:[{variableName:"_masked_card_number_",variableValue:`•••• ${o}`}]})):p(N({messageSection:e?"unlock_charge_card":"unlock_charge_card_card_user",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}),cd({chargeCardId:a,fetchState:"Error",error:c.status})))),v((c=>p(N({messageSection:e?"unlock_charge_card":"unlock_charge_card_card_user",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(c)}]}),cd({chargeCardId:a,fetchState:"Error",error:f("Unexpected Error","Unlock card API call errored out"+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(yL.match),A((t=>{const{cardIds:e}=t.payload,a={card_ids:e};return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/bulk/unlock`,a).pipe(y((s=>M(s)&&s.data!=null?p(Ga(s.data),gd({fetchState:"Completed"}),N({messageSection:"unlock_charge_cards",messageText:"success",type:"success",variables:[{variableName:"_number_of_cards_",variableValue:e.length===1?"1 card":`${e.length} cards`}]})):p(N({messageSection:"unlock_charge_cards",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:s.status.message}]}),gd({fetchState:"Error",error:s.status})))),v((s=>p(N({messageSection:"unlock_charge_cards",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(s)}]}),gd({fetchState:"Error",error:f("Unexpected Error","Unlock cards API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(Bj.match),y((t=>vY(t.payload.taskId,r)))),(n,i,r)=>n.pipe(S(EO.match),A((t=>{const{companyId:e,enabled:a}=t.payload,s=ur(i.value.tenantState,e);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{is_accounting_classes_enabled:a}).pipe(y((o=>{const c=o.data?.companies??[];if(P(o)&&c.length>0){const d=[Q({payload:c,schema:{}})];return s!=null&&d.push(TO({enabled:a,tenantId:s})),d.push(PO()),d.push(N({messageSection:"accounting_classes_enabled_update",messageText:"success",type:"success"})),_(d)}return _([$m({status:o.status}),N({messageSection:"accounting_classes_enabled_update",messageText:"failed",type:"error"})])})),v((o=>_([$m({status:f("Unexpected error","Update Accounting Classes Enabled errored out"+(o instanceof Error?o.message:JSON.stringify(o)))}),N({messageSection:"accounting_classes_enabled_update",messageText:"failed",type:"error"})]))))}))),n=>n.pipe(S(ua.match),y((i=>{const r=[];if(i.payload.jeAccruedSchedulesTransactionsPayload.length>0){const t=[],e=[],a=[],s=[];i.payload.jeAccruedSchedulesTransactionsPayload.forEach((o=>{t.push(o.vendor),e.push(o.updated_by),uu.forEach((c=>{const d=jT(o,c);d!=null&&a.push(d);const l=pu(o,c);l!=null&&s.push(l)}))})),r.push(W(a,"account_list"),He("class_list",s),le(t,"merge"),V({users:e,updateType:"merge"})),r.push(GT({jeAccruedSchedulesTransactionsPayload:i.payload.jeAccruedSchedulesTransactionsPayload}))}return _(r)}))),(n,i,r)=>n.pipe(S(yP.match),A((t=>{const{addressId:e,addressToUpdate:a}=t.payload,s=Ue(a);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/addresses/${e}`,s).pipe(y((o=>{if(P(o)){const c=o.data?.addresses??[];return p(z(c),_P(e))}return p(ku({addressId:e,status:o.status}))})),v((o=>p(ku({addressId:e,status:f("Unexpected Error","Update Address REST API call errored out"+JSON.stringify(o))})))))}))),(n,i)=>n.pipe(S(CR.match),y((r=>{const t=[],e=i.value,{scheduleAccruedDetailState:a}=e,s=a.selectedJEAccruedScheduleKey,o=r.payload.scheduleType;if(s!=null){const c=r.payload.jeScheduleDetailId,d=LH(c!=null?a.editScheduleStateByDetailId[c].jeScheduleDetails:a.newScheduleState.jeScheduleDetails,r.payload.rowId),l=c!=null?a.editScheduleStateByDetailId[c]:a.newScheduleState;t.push(ms({scheduleType:o,selectedJeScheduleDetailId:c,localData:{...l,jeScheduleDetails:d}}))}return _(t)}))),(n,i)=>n.pipe(S(FR.match),y((r=>{const t=[],e=i.value,{scheduleDetailState:a}=e,s=a.selectedJEScheduleKey,o=r.payload.scheduleType;if(s!=null){const c=bt(s,e),d=r.payload.jeScheduleDetailId,l=c.baseTransaction.amount.amount,u=d!=null?kf(a.editScheduleStateByDetailId[o][d].jeScheduleDetails,a.editScheduleStateByDetailId[o][d].selectedMonths??0,r.payload.rowId,l):kf(a.newScheduleState[o].jeScheduleDetails,a.newScheduleState[o].selectedMonths??0,r.payload.rowId,l),m=d!=null?a.editScheduleStateByDetailId[o][d]:a.newScheduleState[o];t.push(hs({scheduleType:o,selectedJeScheduleDetailId:d,localData:{...m,jeScheduleDetails:u}}))}return _(t)}))),(n,i,r)=>n.pipe(S(NM.match),A((t=>{const{ruleId:e,pauseRule:a,resumeRule:s}=t.payload,o=x0(i.value.autotransferRulesState.ruleUpdateLocalData,a,s);return r.putAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto/${e}`,o).pipe(y((c=>{if(P(c)&&c.data!=null){const d=jl(c.data.auto_transfer_rule),l=Object.keys(o).length===1&&"is_active"in o?o.is_active===!1?"auto_transfer_rule_pause":"auto_transfer_rule_resume":"auto_transfer_rule_update",u=[OM({rule:d}),N({messageSection:l,messageText:"success",type:"success",variables:[{variableName:"__ruleName__",variableValue:d.ruleType==="minimum_balance"?"Maintain a Minimum Balance":d.ruleType==="recurring"?"Make a Recurring Transfer":"Distribute Balance by Percentage"}]})];return _(u)}return _([av({ruleId:e,fetchState:"Error",error:c.status}),N({messageSection:"auto_transfer_rule_update",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]})])})),v((c=>p(av({ruleId:e,fetchState:"Error",error:f("Unexpected Error","Update auto transfer rule REST API call errored out "+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(mw.match),y((t=>{const{companyId:e,officerType:a,setupViewType:s,sendForVerification:o,fromBillListScreen:c,isSubmittingAdditionalDocuments:d}=t.payload,{setupViewState:l}=i.value,u=l.companyDetails.localData,m=l.primaryContactDetails.localData,h=l.companyOfficerUpdateStatus[a].localData;if(u!=null){const g=ft(i.value,e,[]),{newAddressState:I}=i.value.addressViewState,E=I?.company_address?.addressToCreate,b=I?.company_registered_address?.addressToCreate,T=a.toLowerCase().concat("_address"),O=I?.[T]?.addressToCreate,x=m?.userId==null||m?.email!==g?.primaryContact?.user.email,U=b0(u,o,E,b,s),k=m!=null&&m.email?E0(m,x):{},C=h!=null&&h.email?T0(h,d,O):{},B=PH(s);let J={company:U,company_officer:C,primary_contact_user:k};return o===!0&&(J={...J,business_verification_submitted_for_feature:B}),r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,J).pipe(y((L=>{if(P(L)&&L.data!=null){const{users:R}=L.data,q=[V({users:R}),H(L.data.user_roles),Q({payload:L.data.companies,schema:{}}),z(L.data.addresses),he({files:L.data.files}),W(L.data.accounts,wa(s)),ve(L.data.payment_accounts),Re({companyId:L.data.companies[0].company_id})];return o===!1&&h?.officerType!=null&&q.push(yw(h?.officerType)),c!==!0&&s!=="zeni_treasury"&&q.push(N({messageSection:o===!0?"business_verification_submit":"business_verification_save",messageText:"success",type:"success"})),s==="zeni_treasury"&&o===!1&&q.push(N({messageSection:"business_verification_save",messageText:"success",type:"success"})),q.push(_w()),_(q)}return p(N({messageSection:o===!0?"business_verification_submit":"business_verification_save",messageText:"failed",type:"error"}),_g(L.status))})),v((L=>p(_g(f("Unexpected Error","Update Business Verification Details errored out"+JSON.stringify(L)))))))}return _([])}))),(n,i,r)=>n.pipe(S(AO.match),A((t=>{const{companyId:e,accountId:a,threshold:s,dismissOnboardingForAccount:o,allOverrides:c}=t.payload,d=ur(i.value.tenantState,e);let l;c!==void 0?l=c??{}:(l={...d!=null?i.value.tenantState.tenantsById[d]?.capitalizableAccountOverrides:{}},s===null?delete l[a]:l[a]=s);const u={capitalizable_account_overrides:Object.keys(l).length>0?l:null};return o===!0&&(u.capitalization_onboarding_dismissed_accounts={[a]:!0}),r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,u).pipe(y((m=>{if(P(m)){const h=m.data?.companies??[],g=[];return h.length>0&&g.push(Q({payload:h,schema:{}})),d!=null&&(g.push(NO({tenantId:d,accountId:a,threshold:s,allOverrides:c!==void 0?Object.keys(l).length>0?l:null:void 0})),o===!0&&g.push(Cm({tenantId:d,accountId:a}))),g.push(OO()),g.push(N({messageSection:"capitalization_threshold_update",messageText:"success",type:"success"})),_(g)}return _([Rm({status:m.status}),N({messageSection:"capitalization_threshold_update",messageText:"failed",type:"error"})])})),v((m=>_([Rm({status:f("Unexpected error","Update Capitalization Threshold errored out"+(m instanceof Error?m.message:JSON.stringify(m)))}),N({messageSection:"capitalization_threshold_update",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(cV.match),y((t=>{const e=t.payload,a=i.value.cardPolicyDetailState.formDraft;if(a==null)return p(Ts({fetchState:"Error",error:f("Missing form draft",`Cannot update card-policy ${e} — no formDraft is loaded.`)}));const s=dV(a);return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/policy-templates/${e}`,s).pipe(y((o=>{if(M(o)&&o.data!=null){const{template:c}=o.data,d=[Qc(c),Ts({fetchState:"Completed"})];return _(d)}return p(Ts({fetchState:"Error",error:o.status}))})),v((o=>p(Ts({fetchState:"Error",error:f("Unexpected Error","Update card-policy REST API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(pC.match),y((t=>{const{tenantId:e,tenantEmailDomain:a,update:s}=t.payload,o=`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cockpit/card-tenant-profiles`,c={tenant_namespace:a};return s.cardStatus!=null&&(c.card_status=s.cardStatus),s.creditLimit!=null&&(c.credit_limit=s.creditLimit),s.updatedByName!=null&&(c.updated_by_name=s.updatedByName),s.reason!=null&&s.reason.trim()!==""&&(c.reason=s.reason.trim()),r.putAndGetJSON(o,c).pipe(y((d=>P(d)&&d.data!=null&&d.data.profile!=null?_([mC({payload:d.data.profile,tenantId:e}),yC(e),N({messageSection:"credit_agent_update_profile",messageText:"success",type:"success"})]):_([ty(e,d.status),N({messageSection:"credit_agent_update_profile",messageText:"failed",type:"error"})]))),v((d=>_([ty(e,f("Unexpected error","REST API call errored out: "+JSON.stringify(d))),N({messageSection:"credit_agent_update_profile",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(WV.match),A((t=>{const{chargeCardId:e,colorCode:a}=t.payload,s={card_color_code:a};return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}`,s).pipe(y((o=>M(o)&&o.data!=null?p(ct(o.data.card),V({users:o.data.users}),H(o.data.user_roles),dd({chargeCardId:e,fetchState:"Completed"})):p(N({messageSection:"update_charge_card",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:o.status.message}]}),dd({chargeCardId:e,fetchState:"Error",error:o.status})))),v((o=>p(N({messageSection:"update_charge_card",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(o)}]}),dd({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Update card detail API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(ZV.match),A((t=>{const{chargeCardId:e,updatedSpendLimit:a,frequency:s,formattedAmount:o}=t.payload,c={purchase_limit:a.amount,currency_code:a.currencyCode,purchase_limit_frequency:{code:s}};return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}/modify_limit`,c).pipe(y((d=>M(d)&&d.data!=null?p(ct(d.data),ld({chargeCardId:e,fetchState:"Completed"}),N({messageSection:"charge_card_update_limit",messageText:"success",type:"success",variables:[{variableName:"_amount_",variableValue:o}]})):p(N({messageSection:"charge_card_update_limit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}),ld({chargeCardId:e,fetchState:"Error",error:d.status})))),v((d=>p(N({messageSection:"charge_card_update_limit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(d)}]}),ld({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Update card limit API call errored out"+JSON.stringify(d))})))))}))),(n,i,r)=>n.pipe(S(XV.match),A((t=>{const{chargeCardId:e,name:a,isChargeCardAdmin:s}=t.payload,o={card_name:a},c=i.value.chargeCardState.chargeCardByID[e],d=c?.accountLast4??"";return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}/rename`,o).pipe(y((l=>M(l)&&l.data!=null?p(ct(l.data),ud({chargeCardId:e,fetchState:"Completed"}),N({messageSection:s?"update_charge_card_name":"update_charge_card_name_card_user",messageText:"success",type:"success",variables:[{variableName:"_masked_card_number_",variableValue:`•••• ${d}`},{variableName:"_new_card_name_",variableValue:a}]})):p(N({messageSection:s?"update_charge_card_name":"update_charge_card_name_card_user",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]}),ud({chargeCardId:e,fetchState:"Error",error:l.status})))),v((l=>p(N({messageSection:s?"update_charge_card_name":"update_charge_card_name_card_user",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(l)}]}),ud({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Update card name API call errored out"+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(_L.match),A((t=>{const{chargeCardIds:e,updatedSpendLimit:a,frequency:s}=t.payload,o={card_ids:e,limit_details:{purchase_limit:a.amount,currency_code:a.currencyCode,purchase_limit_frequency:{code:s}}};return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/bulk/modify_limit`,o).pipe(y((c=>M(c)&&c.data!=null?p(Ga(c.data),fd({fetchState:"Completed"}),N({messageSection:"charge_cards_update_limit",messageText:"success",type:"success",variables:[{variableName:"_number_of_cards_",variableValue:e.length===1?"1 card":`${e.length} cards`}]})):p(N({messageSection:"charge_cards_update_limit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}),fd({fetchState:"Error",error:c.status})))),v((c=>p(N({messageSection:"charge_cards_update_limit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(c)}]}),fd({fetchState:"Error",error:f("Unexpected Error","Update cards limit API call errored out"+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(ZC.match),A((t=>{const{accountId:e,selectedPeriod:a}=t.payload,s=i.value.expenseAutomationReconciliationViewState.accountReconciliationRecordsBySelectedPeriod[Ie(a)]?.reconciliationByAccountID[e],o=s?.parsedStatementData,c=s?.localData?.statementUpdateLocalDataByUploadId,d=by(o);if(o==null||c==null||d.length===0||d.some((h=>c[h.statementMeta.statementUploadId]==null)))return p(vt({accountId:e,selectedPeriod:a,error:f("Missing Data","No statement update data found for combined accounts")}));const l=ly(s);if(l==="")return p(vt({accountId:e,selectedPeriod:a,error:f("Missing Data","No combined statement group id found for bulk update")}));const u=((h,g)=>{const I=by(g).map((E=>{const b=E.statementMeta.statementUploadId,T=h[b];if(T==null)throw new Error(`Missing statement update local data for upload ${b}`);return{statementUploadId:b,localData:n0(T,E)}}));return HC(I)})(c,o),m=`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/2.0/statement-uploads/combined-statement-groups/${l}`;return r.putAndGetJSON(m,u).pipe(y((h=>{if(P(h)===!0&&h.data!=null)return p(Dn({accountId:e,selectedPeriod:a,parsedStatementData:Ty(h.data)}),Ey({accountId:e,selectedPeriod:a}),Mt(a,void 0,!0,!0));const g=Py(h)?Ay(h):null;return p(vt({accountId:e,selectedPeriod:a,error:h.status,dateConflict:g}))})),v((h=>p(vt({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Update Statement REST API call errored out "+(h instanceof Error?h.message:String(h)))})))))}))),(n,i,r)=>n.pipe(S(wm.match),y((t=>{const{companyDetails:e,companyId:a}=t.payload,s={...(o=e.companyInfo,{name:o.companyName,company_legal_name:o.legalName,phone:o.phone,company_industry:o.industry,company_business_model:o.businessModel,company_url:o.website!=null?o.website.toString():null,meeting_url:o.meetingLink!=null?o.meetingLink.toString():null,is_new_company_industry_verified:!0,...o.companySourceOfFunds!=null&&{company_source_of_funds:o.companySourceOfFunds},...o.companySourceOfFundsDescription!=null&&{company_source_of_funds_desc:o.companySourceOfFundsDescription},...o.countriesOfOperations!=null&&o.countriesOfOperations.length>0&&{company_countries_of_operations:o.countriesOfOperations},...o.transactionVolume!=null&&{company_transaction_vol_expectations:o.transactionVolume},...o.transactionVolumeDescription!=null&&{company_transaction_vol_expectations_desc:o.transactionVolumeDescription},...o.purposeOfAccount!=null&&{company_purpose_of_account:o.purposeOfAccount},...o.purposeOfAccountDescription!=null&&{company_purpose_of_account_desc:o.purposeOfAccountDescription},...o.regulatedStatus!=null&&{company_regulated_states:o.regulatedStatus==="yes"},...o.regulatedStatusDescription!=null&&{company_regulated_states_desc:o.regulatedStatusDescription},...o.usNexus!=null&&{company_us_nexus:o.usNexus==="yes"},...o.usNexusTypes!=null&&o.usNexusTypes.length>0&&{company_us_nexus_desc:o.usNexusTypes.map(JK)}}),...wK(e.incInfo),...$K(e.taxDetails),...RK(e.incInfo,e.taxDetails),...e.companyInfo.companyIndustryType!=null&&{company_industry_type:e.companyInfo.companyIndustryType},...e.companyInfo.companySubIndustry!=null&&{company_industry_sub_type:e.companyInfo.companySubIndustry}};var o;const{newAddressState:c}=i.value.addressViewState,d=c?.company_address?.addressToCreate;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${a}`,s).pipe(y((l=>{const u=l.data?.companies??[];if(P(l)&&u.length>0){const m=[Q({payload:u,schema:{}})];return d!=null&&m.push(dn({addressType:"company_address",companyId:a})),m.push(CO(a)),_(m)}return p(Mm({companyId:a,status:l.status}))})),v((l=>p(Mm({companyId:a,status:f("Unexpected error","Update Company Details errored out"+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(Jm.match),y((t=>{const e=t.payload.officer,a=t.payload.companyId,{userId:s,officerType:o}=e,c=Fs(e),d=o.toLowerCase().concat("_address"),{newAddressState:l}=i.value.addressViewState,u=l?.[d]?.addressToCreate;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/users/${s}`,c).pipe(y((m=>{const h=m.data?.users??[];if(P(m)&&h.length>0){const g=[V({users:h})];return u!=null&&g.push(dn({addressType:d,companyId:a,userId:h[0].user_id})),g.push(xO({companyId:a,officerType:o})),_(g)}return p(Vm({companyId:a,officerType:o,status:m.status}))})),v((m=>p(Vm({companyId:a,officerType:o,status:f("Unexpected error",`Update Company Officer REST API call errored out ${JSON.stringify(m)}`)})))))}))),(n,i)=>n.pipe(S(xm.match),y((r=>{const t=r.payload.companyId,{companyViewState:e,fileState:a}=i.value,s=ee(e.passportView.subscriptionIDsByCompanyID,t,void 0),o=ft(i.value,t,s??[]),c=[];if(o!=null){const d=o.company.company.incInfo.fileIds,l=Lm(a,d),u=UO(o,l);c.push(kO(),Ho(u)),c.push(Fm(ZE));const m=Jl(o);m!=null&&Object.keys(m).forEach((h=>{c.push(je({addressType:h,addressToCreate:m[h]}))}))}return _(c)}))),(n,i,r)=>n.pipe(S(qO.match),y((t=>{const{companyId:e,services:a}=t.payload,{isBookkeepingEnabled:s,isBillPayEnabled:o,isReimbursementEnabled:c}=a,d=Km(i.value,e),l={};return s!=null&&(l.is_book_keeping_enabled=s,l.is_spend_management_enabled=s),o!=null&&(l.is_bill_pay_feature_enabled=o),c!=null&&(l.is_reimbursement_feature_enabled=c),Object.keys(l).length===0?_([Hm({companyId:e})]):r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,l).pipe(y((u=>{if(P(u)){const m=u.data?.companies??[],h=[];return m.length>0&&h.push(Q({payload:m,schema:{},isUpdate:!0})),s!=null&&d!=null&&h.push(jO({tenantId:d,isBookkeepingEnabled:s,isSpendManagementEnabled:s})),h.push(Hm({companyId:e})),h.push(N({messageSection:"product_services_update",messageText:"success",type:"success"})),_(h)}return _([Ym(e,u.status),N({messageSection:"product_services_update",messageText:"failed",type:"error"})])})),v((u=>_([Ym(e,f("Unexpected error","Update Company Product Services errored out: "+(u instanceof Error?u.message:JSON.stringify(u)))),N({messageSection:"product_services_update",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(GO.match),y((t=>{const{companyId:e,qboRealmId:a}=t.payload,s=Km(i.value,e);return s==null?_([Qo(e,f("Unexpected error",`No tenant found for companyId: ${e}`)),N({messageSection:"qbo_realm_id_update",messageText:"failed",type:"error"})]):r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/qbo-realm-id`,{qbo_realm_id:a??null},{"zeni-tenant-id":s}).pipe(y((o=>P(o)?_([zO({companyId:e}),N({messageSection:"qbo_realm_id_update",messageText:"success",type:"success"})]):_([Qo(e,o.status),N({messageSection:"qbo_realm_id_update",messageText:"failed",type:"error"})]))),v((o=>_([Qo(e,f("Unexpected error","Update Company QBO realm id errored out: "+(o instanceof Error?o.message:JSON.stringify(o)))),N({messageSection:"qbo_realm_id_update",messageText:"failed",type:"error"})]))))}))),(n,i)=>n.pipe(S(mO.match),A((r=>{const t=r.payload.filters;if(!(t?.categories==null||t?.categories?.every((a=>a.field!=null&&a.values!=null&&a.values.length>0))))return F;const{uiState:e}=i.value.companyTaskManagerViewState;return p(Tn(0,e.sortKey,e.sortOrder,!1,e.filterText,t))}))),(n,i,r)=>n.pipe(S(Un.match),A((t=>{const e=i.value,a=e.dashboardLayoutState.fetchState==="Error"&&e.dashboardLayoutState.error?.code===404,s={preferences:{card_order:t.payload}};return(a===!0?r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/webapp-preferences`,s):r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/webapp-preferences`,s)).pipe(y((o=>P(o)&&o.data?p(IC(o.data.preferences.card_order)):p(oy(o.status)))),v((o=>p(oy(f("Unexpected Error","User preferences put REST API call errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(eL.match),A((t=>{const{chargeCardId:e,statusCode:a}=t.payload,s={status_code:a,is_card_pin_change_attempted:!0};return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}/pin/events`,s).pipe(y((o=>M(o)&&o.data!=null?p(ct(o.data.card),V({users:o.data.users}),H(o.data.user_roles),pd({chargeCardId:e,fetchState:"Completed"})):p(pd({chargeCardId:e,fetchState:"Error",error:o.status})))),v((o=>p(pd({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Update physical card attempt API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(Uq.match),A((t=>{const{depositAccountId:e,updateType:a,nickname:s}=t.payload,o=a==="closeAccount"?{is_close_account:!0}:{account_name:s};return r.putAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts/${e}`,o).pipe(y((c=>P(c)?p(Ze(c.data?.deposit_accounts??[]),N({messageSection:"update_zeni_account_nickname",messageText:"success",type:"success"}),tl({depositAccountId:e,updateType:a,fetchState:"Completed"})):p(N({messageSection:"update_zeni_account_nickname",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}),tl({depositAccountId:e,updateType:a,fetchState:"Error",error:c.status})))),v((c=>p(N({messageSection:"update_zeni_account_nickname",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(c)}]}),tl({depositAccountId:e,updateType:a,fetchState:"Error",error:f("Unexpected Error","Update deposit Account REST API call errored out"+JSON.stringify(c))})))))}))),(n,i)=>n.pipe(S(Ir.match),y((r=>{const t=i.value,{transactionState:e,expenseAutomationReconciliationViewState:a,expenseAutomationViewState:{selectedPeriodByTenantId:s}}=t,{selectedAccountId:o}=a,c=s[Y(t).tenantId],d=[],{selectedTransactionIds:l}=r.payload;if(o!=null){const u=[],m=Na(t,o,c);if(m==null)return _(d);const h=m.initialClearedBalance??{amount:0,currencyCode:m.currency.currencyCode,currencySymbol:m.currency.currencySymbol},g=m.balance??{amount:0,currencyCode:m.currency.currencyCode,currencySymbol:m.currency.currencySymbol};l.forEach((k=>{const C=XC(e,k);C!=null&&u.push(C)}));const I=m.account.accountType,E=(function(k,C,B){let J=sa(C.amount);const L=B==="credit_card";return k.forEach((R=>{R.transactionDirection==="payment"?J=L?J.plus(sa(R.amount.amount)):J.minus(sa(R.amount.amount)):R.transactionDirection==="deposit"&&(J=L?J.minus(sa(R.amount.amount)):J.plus(sa(R.amount.amount)))})),{amount:parseFloat(J.toFixed(2)),currencyCode:C.currencyCode,currencySymbol:C.currencySymbol}})(u,h,I),{variance:b,variancePercentage:T}=(function(k,C){const B=sa(C.amount).minus(k.amount),J=Math.abs(B.toNumber()),L=C.amount!=0?parseFloat((J/Math.abs(C.amount)*100).toFixed(2)):void 0;return{variance:{amount:J,currencyCode:C.currencyCode,currencySymbol:C.currencySymbol},variancePercentage:L}})(E,g),O={currencyCode:g.currencyCode,currencySymbol:g.currencySymbol},x=s0(u,"deposit",O),U=s0(u,"payment",O);d.push(ex({clearedBalance:E,variance:b,variancePercentage:T,deposits:x,payments:U}))}return _(d)}))),(n,i,r)=>n.pipe(S(rk.match),A((t=>{const{fileId:e,name:a,tenantId:s}=t.payload;return(s!=null?r.putAndGetJSON(`${r.apiEndPoints.fileMicroServiceBaseUrl}/1.0/files/${e}`,{file_name:a},Object.assign({"zeni-tenant-id":s})):r.putAndGetJSON(`${r.apiEndPoints.fileMicroServiceBaseUrl}/1.0/files/${e}`,{file_name:a})).pipe(y((o=>P(o)?p(he({files:o.data?.files??[]}),nk({fileId:e})):p(U_({fileId:e,status:o.status})))),v((o=>p(U_({fileId:e,status:f("Unexpected Error","Update File REST API call errored out"+JSON.stringify(o))})))))}))),(n,i)=>n.pipe(S(sk.match),y((r=>{const{filesPayload:t}=r.payload,e=[];return e.push(he({files:t})),_(e)}))),(n,i,r)=>n.pipe(S(YB.match),y((t=>{const{data:e,invoiceId:a}=t.payload,s=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices/${encodeURIComponent(a)}`;return r.putAndGetJSON(s,e).pipe(y((o=>P(o)&&o.data!=null?[Ua([o.data],"merge"),z(kr([o.data])),Th({invoiceId:a}),N({messageSection:"invoicing_invoice_saved",messageText:"success",type:"success"})]:_([rs({error:o.status,invoiceId:a}),N({messageSection:"invoicing_invoice_saved",messageText:"failed",type:"error",variables:Ee(o.status)})]))),v((o=>_([rs({error:f("Unexpected Error","Invoice update REST API call errored out "+JSON.stringify(o)),invoiceId:a}),N({messageSection:"invoicing_invoice_saved",messageText:"failed",type:"error"})]))))}))),n=>n.pipe(S(yt.match),y((i=>{const r=[];if(i.payload.jeSchedulesTransactionsPayload.length>0){const t=[],e=[],a=[],s=[],o={};i.payload.jeSchedulesTransactionsPayload.forEach((c=>{const{currency_code:d}=c,l=o[d];o[d]=l!=null?{currency:l.currency,transactions:[...l.transactions,c.base_transaction]}:{currency:{currency_code:c.currency_code,currency_symbol:c.currency_symbol},transactions:[c.base_transaction]},t.push(c.vendor),e.push(c.updated_by),uu.forEach((u=>{const m=zT(c,u);m!=null&&a.push(m);const h=pu(c,u);h!=null&&s.push(h)}))})),r.push(W(a,"account_list"),He("class_list",s),le(t,"merge")),Object.keys(o).forEach((c=>{const d=o[c];r.push(mu(d.transactions,d.currency.currency_code,d.currency.currency_symbol))})),r.push(V({users:e,updateType:"merge"})),r.push(KT({jeSchedulesTransactionsPayload:i.payload.jeSchedulesTransactionsPayload}))}return _(r)}))),(n,i,r)=>n.pipe(S(nF.match),y((t=>{const{plaidAccountKeyType:e,accountId:a,depositAccountId:s}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts/${s}`,{zeni_mapped_account_id:a}).pipe(y((o=>{if(P(o)&&o.data!=null){const c=[Ze(o.data?.deposit_accounts??[]),sF(e)];return _(c)}return p(xI(e,o.status))})),v((o=>p(xI(e,f("Unexpected Error","Update Mapped Cash Account errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(aq.match),A((t=>{const{companyId:e}=t.payload,a=ft(i.value,e,[]),{remiSetupViewState:s}=i.value,{mileageDetails:o}=s,c=a?.company.company.configInfo.mileageRateConfig,d=c?.mileageUnitAmount!=null;if(o.localData!=null){const l=o.localData,u={mileage_rate_config:{mileage_unit_amount:l.mileageAmountInDenomination,mileage_unit:l.mileageUnit,mileage_unit_amount_denomination:l.denomination}};return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,u).pipe(y((m=>{if(P(m)&&m.data!=null){const h=[V({users:m.data.users}),H(m.data.user_roles),Q({payload:m.data.companies,schema:{}}),Re({companyId:m.data.companies[0].company_id}),Ld({companyId:m.data.companies[0].company_id}),N({messageSection:d?"reimbursement_update_mileage":"reimbursement_create_mileage",messageText:"success",type:"success"}),rb()];return _(h)}return p(nb(m.status),N({messageSection:d?"reimbursement_update_mileage":"reimbursement_create_mileage",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:m.status.message}]}))})),v((m=>p(nb(f("Unexpected Error","Update Mileage details errored out"+JSON.stringify(m)))))))}return p(rb())}))),(n,i,r)=>n.pipe(S(Kf.match),A((t=>{const e=i.value.tenantState.loggedInUser?.userId;if(e==null)return[];const a=Pt(i.value.userState,e);if(a==null)return[];const s=a.addressId!=null?dt(i.value.addressState,a?.addressId):void 0,o=GH({...t.payload},a,s);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user/self`,o).pipe(y((c=>{if(P(c)&&c.data!=null){const d=Hf(e,c.data.users),l=Hf(yM(e,c.data.user_roles),c.data.users),u=[];switch(t.payload.origin){case"CardUserOnboarding":u.push(_M());break;case"CompleteProfile":u.push(N({messageSection:"complete_profile_done",messageText:"success",type:"success"}))}return u.push(H(c.data.user_roles),V({users:c.data.users})),c.data.addresses!=null&&u.push(z(c.data.addresses)),l&&d!=null&&u.push(Yf({userType:"manager",usersPayload:l})),u.push(qf()),u.push(hM()),p(...u)}return p(Qf(c.status))})),v((c=>p(Qf(f("Unexpected error","Update User Profile REST API call errored out"+JSON.stringify(c)))))))}))),rK,(n,i,r)=>n.pipe(S(bJ.match),A((t=>{const{notificationGroup:e,status:a}=t.payload,{notificationViewState:s}=i.value,{stateByTab:o}=s,{allNotificationsIds:c}=o.tasks,d={mark_all_as_read:a==="read"};return r.putAndGetJSON(`${r.apiEndPoints.notificationMicroServiceBaseUrl}/1.0/user-notification-dashboard?query=${encodeURIComponent(JSON.stringify(d))}`).pipe(A((l=>M(l)?p(N({messageSection:"notification_mark_as_read",messageText:"success",type:"success"}),FS(c,a),EJ(e)):p(qS({status:l.status,notificationGroup:e}),N({messageSection:"notification_mark_as_read",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]})))),v((l=>p(qS({status:f("Unexpected Error","Update All Notifications Status API call errored out"+JSON.stringify(l)),notificationGroup:e})))))}))),(n,i,r)=>n.pipe(S(TJ.match),A((t=>{const{notificationGroup:e,status:a,notificationIds:s,showSnackBarOnSuccess:o}=t.payload,{notificationViewState:c,notificationState:d}=i.value,{stateByTab:l}=c,u=LS(e),m=l[u],{selectedNotificationIds:h}=m,g={notifications:[]};let I=0;return s.length>0?(s.forEach((E=>{g.notifications.push({user_notification_id:E,status:a})})),I=s.length):(h.forEach((E=>{g.notifications.push({user_notification_id:E,status:a})})),u!=="comments"&&h.forEach((E=>{d.notificationById[E]!=null&&d.notificationById[E].status!==a&&(I+=1)}))),r.putAndGetJSON(`${r.apiEndPoints.notificationMicroServiceBaseUrl}/1.0/user-notification`,{notifications:g.notifications}).pipe(A((E=>{if(M(E)){const b=g.notifications.map((O=>O.user_notification_id)),T=[];return o===!0&&T.push(N({messageSection:"notification_mark_as_read",messageText:"success",type:"success"})),T.push(FS(b,a),PJ(e,I)),_(T)}return p(jS({status:E.status,notificationGroup:e}),N({messageSection:"notification_mark_as_read",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:E.status.message}]}))})),v((E=>p(jS({status:f("Unexpected Error","Update Notification Status API call errored out"+JSON.stringify(E)),notificationGroup:e})))))}))),(n,i,r)=>n.pipe(S(dw.match),y((t=>{const{companyId:e,checkOnboardingComplete:a,productSuitePage:s}=t.payload,o={};return s===!1&&a===!1?o.is_onboarding_completed=!0:(a&&(o.should_complete_onboarding=!0),s&&(o.is_user_landed_to_interim_page=!0)),r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,o).pipe(y((c=>{if(P(c)&&c.data!=null){const d=[Q({payload:c.data.companies,schema:{}}),lw()];return _(d)}return p(N({messageSection:"onboarding_customer_view_complete",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}),mg(c.status))})),v((c=>p(mg(f("Unexpected Error","Update - Onboarding Customer View Complete Status errored out"+JSON.stringify(c)))))))}))),(n,i,r)=>n.pipe(S(uw.match),y((t=>{const{companyId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{is_dashboard_loaded:!0}).pipe(y((a=>{if(M(a)){const s=[pw()];return a.data?.companies!=null&&s.unshift(Q({payload:a.data.companies,schema:{}})),_(s)}return p(yg(a.status))})),v((a=>p(yg(f("Unexpected Error","Update - Onboarding Customer View Dashboard Loaded errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(hw.match),y((t=>{const{companyId:e,officerType:a,sendForVerification:s,reCalculateCurrentStep:o=!1,isBillingAddressUpdate:c}=t.payload,{onboardingCustomerViewState:d}=i.value,{companyDetails:l,primaryContactDetails:u,companyOfficerUpdateStatus:m,currentStep:h,currentSubStep:g}=d,I=l.localData,E=u.localData;let b;c===!1&&a!=null&&(b=m[a].localData);const{newAddressState:T}=i.value.addressViewState;let O={};if(I!=null){c===!0&&T?.subscription_billing_address.addressToCreate!=null&&(O=NH(I,T.subscription_billing_address.addressToCreate));const x=ft(i.value,e,[]),U=T?.company_address?.addressToCreate,k=T?.company_registered_address?.addressToCreate,C=a?.toLowerCase().concat("_address"),B=T?.[C]?.addressToCreate,J=E?.userId==null||E?.email!==x?.primaryContact?.user.email,L=b0(I,s,U,k),R=E!=null&&E.email?E0(E,J):{},q=b!=null&&b.email?T0(b,!1,B):{},$=h==="verification"&&g==="company_officer";c===!1&&(O=$?{company:AH(I),company_officer:q}:{company:L,primary_contact_user:R});const D=c===!0?"setup_billing":$?"company_officer":"company_details",w={company_officer:{sendForVerification:"onboarding_customer_identity_verification_submit",save:"onboarding_customer_identity_verification_save"},company_details:{sendForVerification:"onboarding_customer_business_verification_submit",save:"onboarding_customer_business_verification_save"},setup_billing:{save:"billing_address_view",sendForVerification:"billing_address_view"}};let K;return K=c===!0?w[D].save:s===!0?w[D].sendForVerification:w[D].save,r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,O).pipe(y((G=>{if(P(G)&&G.data!=null){const{users:Z}=G.data,de=[V({users:Z}),H(G.data.user_roles),Q({payload:G.data.companies,schema:{}}),z(G.data.addresses),he({files:G.data.files}),W(G.data.accounts,"onboarding"),ve(G.data.payment_accounts)],ue=Y(i.value).externalConnections,ae=ue?.accounting?.some((_e=>_e.connectionName.match(/quickbooks/i)))??!1,{allSteps:ye}=Sw(i.value,e);return h==="setup_billing"&&(ae===!0&&ye.includes("connect_ledger")?de.push(ec({step:"connect_ledger"})):de.push(ec({step:"verification"}))),de.push(ls({companyId:G.data.companies[0].company_id,currentStep:h,reCalculateCurrentStep:o}),N({messageSection:K,messageText:"success",type:"success"}),gw()),_(de)}return p(N({messageSection:K,messageText:"failed",type:"error"}),hg(G.status))})),v((G=>p(hg(f("Unexpected Error","Update Onboarding Customer View Details errored out"+JSON.stringify(G)))))))}return _([])}))),(n,i)=>n.pipe(S(ls.match),y((r=>{const{companyId:t,currentStep:e,reCalculateCurrentStep:a}=r.payload,{companyState:s,companyViewState:o,userState:c,userRoleState:d,onboardingCustomerViewState:l,subscriptionPaymentAccountState:u,paymentAccountState:m,addressState:h}=i.value,{subscriptionPaymentAccountIds:g}=l,I=ee(o.passportView.subscriptionIDsByCompanyID,t,void 0),E=ft(i.value,t,I??[]),b=Ae(s,t)?.company,T=b?.companyOnboardingInfo.subscriptionBillingAddressId;let O;T!=null&&(O=dt(h,T));const x=Sg(c,b?.managementInfo.companyOfficerUserIds??[]),U=b?.managementInfo.primaryContactUserId!=null?Pt(c,b?.managementInfo.primaryContactUserId):void 0,k=gg(d,b?.managementInfo.companyOfficerUserIds??[]),C=[];if(b!=null){const B=(function(ae,ye,_e,Le){return P0(ae,ye,_e,Le)})(b,x,k,U),{companyDetails:J,officers:L,primaryContactDetails:R}=B;let q=J;if(e==="verification"&&l.currentSubStep==="company_officer"&&l.companyDetails.localData!=null){const{companyInfo:ae}=b,{syncToken:ye}=ae;q={...l.companyDetails.localData,syncToken:ye}}let $,D="setup_billing";const{companyOnboardingInfo:w}=b,K=w?.onboardingInfo?.accountingConnectionCreationMode;if(g.length>0){const ae=g[0];$=Iw(u,ae)}const G=Y(i.value),Z=G.externalConnections,de=Z?.accounting[0]?.isValid??!1;if(a===!0){let ae;const{paymentAccountDetails:ye}=l,{paymentAccountIds:_e}=ye;if(_e?.length>0){const Ne=_e[0];ae=tc(m,Ne)}const Le=i.value.cardPaymentViewState;(ae?.providerVerificationStatus?.code?.includes("verified")===!0&&ae?.isLoginRequired===!1||$?.providerVerificationStatus?.code?.includes("verified")===!0||Le.cardPaymentsIds.length>0)&&E?.company.company.companyOnboardingInfo.subscriptionBillingAddressId!=null&&(D="connect_ledger",de&&(w?.onboardingInfo?.onboardingAiActivationInfo?.isOnboardingAiActivationViewed??!1)&&(D="connect_data_source"))}const{allStepsData:ue}=bw(de,G?.productSettings??[],K);if(ue.length>0&&ue.indexOf(D)===-1&&(D=ue[0]),C.push(Ew(),Tw({companyDetails:q,officers:L,primaryContactDetails:R}),Zi()),O!=null&&C.push(je({addressType:"subscription_billing_address",addressToCreate:O})),a===!0&&(C.push(ec({step:D})),D!==l.currentStep)){const ae=D==="verification"?"unlock-stack":"default";C.push(Pw({subStep:ae}))}}if(E!=null){const B=Jl(E);B!=null&&Object.keys(B).forEach((J=>{C.push(je({addressType:J,addressToCreate:B[J]}))}))}return _(C)}))),(n,i,r)=>n.pipe(S(Aw.match),y((t=>{const{isLoginRequired:e,paymentAccountId:a,linkTokenType:s}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-accounts/${a}`,{is_login_required:e}).pipe(y((o=>{if(P(o)&&o.data!=null){const c=o.data.payment_accounts.map((l=>l.payment_account_id)),d=[W(o.data.accounts,"onboarding"),ve(o.data.payment_accounts),Nw(c,s)];return _(d)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),fg(o.status,s))})),v((o=>p(fg(f("Unexpected Error","Update Onboarding Payment Account Login Status failed "+JSON.stringify(o)),s)))))}))),(n,i,r)=>n.pipe(S(Ow.match),y((t=>{const{verificationStatusCode:e,paymentAccountId:a,linkTokenType:s}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-accounts/${a}`,{provider_verification_status_code:e}).pipe(y((o=>{if(P(o)&&o.data!=null){const c=o.data.payment_accounts.map((l=>l.payment_account_id)),d=[W(o.data.accounts,"onboarding"),ve(o.data.payment_accounts),Cw(c,s)];return _(d)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),vg(o.status,s))})),v((o=>p(vg(f("Unexpected Error","Update Onboarding Payment Account Status failed "+JSON.stringify(o)),s)))))}))),(n,i,r)=>n.pipe(S(oF.match),y((t=>{const{accountId:e,paymentAccountId:a,setupViewType:s,plaidAccountKeyType:o}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-accounts/${a}`,{zeni_mapped_account_id:e}).pipe(y((c=>{if(P(c)&&c.data!=null){const d=[W(c.data.accounts,wa(s)),ve(c.data.payment_accounts),iF(o)];return _(d)}return p(UI(c.status,o))})),v((c=>p(UI(f("Unexpected Error","Update Payment Account errored out"+JSON.stringify(c)),o)))))}))),(n,i,r)=>n.pipe(S(cF.match),y((t=>{const{isLoginRequired:e,paymentAccountId:a,setupViewType:s,linkTokenType:o,plaidAccountKeyType:c}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-accounts/${a}`,{is_login_required:e}).pipe(y((d=>{if(P(d)&&d.data!=null){const l=d.data.payment_accounts.map((m=>m.payment_account_id)),u=[W(d.data.accounts,wa(s)),ve(d.data.payment_accounts),dF(l,o,c)];return _(u)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),kI(d.status,o,c))})),v((d=>p(kI(f("Unexpected Error","Update Payment Account Login Status failed "+JSON.stringify(d)),o,c)))))}))),(n,i,r)=>n.pipe(S(lF.match),y((t=>{const{verificationStatusCode:e,paymentAccountId:a,setupViewType:s,linkTokenType:o,plaidAccountKeyType:c}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-accounts/${a}`,{provider_verification_status_code:e}).pipe(y((d=>{if(P(d)&&d.data!=null){const l=[W(d.data.accounts,wa(s)),ve(d.data.payment_accounts),uF(o,c)];return _(l)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),BI(d.status,o,c))})),v((d=>p(BI(f("Unexpected Error","Update Payment Account Status failed "+JSON.stringify(d)),o,c)))))}))),(n,i,r)=>n.pipe(S(tL.match),A((t=>{const{chargeCardId:e,statusCode:a}=t.payload,s={status_code:a,is_card_activation_attempted:!0};return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}`,s).pipe(y((o=>M(o)&&o.data!=null?p(ct(o.data.card),V({users:o.data.users}),H(o.data.user_roles),md({chargeCardId:e,fetchState:"Completed"})):p(md({chargeCardId:e,fetchState:"Error",error:o.status})))),v((o=>p(md({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Update physical card attempt API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(Iq.match),A((t=>{const e=i.value.treasurySetupViewState.fundAllocationLocalData,{isEdit:a}=t.payload,s={allocation_percentages:e.allocation};return(a?r.putAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account`,s):r.postAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account`,s)).pipe(y((o=>{if(P(o)){const c=[bq(o.data||{fund_allocation_percentages:{},custom_corporate_id:null})];return a&&c.push(N({messageSection:"treasury_update_portfolio_allocation",messageText:"success",type:"success"})),_(c)}return p(_b(o.status))})),v((o=>p(_b(f("Unexpected Error",(a?"Update":"Create")+" portfolio allocation REST API call errored out: "+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(Dm.match),y((t=>{let{primaryContact:e}=t.payload;const a=t.payload.companyId,{userId:s,email:o}=e,c=ft(i.value,a,[]),d=s==null||o!==c?.primaryContact?.user.email;let l;return d&&(e=Object.assign({},e,{isPrimaryContact:!0})),d?l={users:[Object.assign({},Fs(e),{is_changes_in_response_only:!1})]}:l=Fs(e),(d?r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${a}/users`,l):r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/users/${s}`,l)).pipe(y((u=>{const m=u.data?.users??[];if(P(u)&&m.length>0){const h=[V({users:m})];return d&&h.push(Q({payload:u.data?.companies??[],schema:{}}),H(u.data?.user_roles??[]),Ho({primaryContact:{...t.payload.primaryContact,firstName:m[0].first_name?.trim()??t.payload.primaryContact.firstName,lastName:m[0].last_name?.trim()??t.payload.primaryContact.lastName,userId:m[0].user_id}})),h.push(BO(a)),_(h)}return p(qm({companyId:a,status:u.status}))})),v((u=>p(qm({companyId:a,status:f("Unexpected error",`${d?"Create":"Update"} Primary Contact REST API call errored out ${JSON.stringify(u)}`)})))))}))),(n,i,r)=>n.pipe(S(pF.match),y((t=>{const{companyId:e,plaidAccountKeyType:a,accountId:s,accountType:o}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,(function(c,d,l){switch(c){case"bill_pay_setup":return{bill_pay_primary_funding_account_id:d,bill_pay_primary_funding_account_type:Ve(qa(l))};case"reimbursement_setup":return{reimbursement_primary_funding_account_id:d,reimbursement_primary_funding_account_type:Ve(qa(l))};case"charge_card_setup":return{charge_cards_primary_funding_account_id:d,charge_cards_primary_funding_account_type:Ve(qa(l))};case"treasury_setup":return{treasury_accounts_primary_funding_account_id:d,treasury_accounts_primary_funding_account_type:Ve(qa(l))};default:return{deposit_accounts_primary_funding_account_id:d,deposit_accounts_primary_funding_account_type:Ve(qa(l))}}})(a,s,o)).pipe(y((c=>{if(P(c)&&c.data!=null){const d=[Q({payload:c.data.companies??[],schema:{}}),mF(a),N({messageSection:"primary_funding_account_updated",messageText:"success",type:"success",variables:[{variableName:"_productType_",variableValue:eY(a)}]})];return _(d)}return p(DI(a,c.status))})),v((c=>p(DI(a,f("Unexpected Error","Update Primary Funding Account errored out"+JSON.stringify(c)))))))}))),(n,i,r)=>n.pipe(S(XJ.match),A((t=>r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/connections-pool`,{connection_type:t.payload.connectionMeta.connection_type,connection_name:t.payload.connectionMeta.connection_name,authorization_code:t.payload.connectionMeta.authorization_code,realm_id:t.payload.connectionMeta.realm_id,user_id:t.payload.connectionMeta.user_id,redirect_uri:ew(t.payload.redirectUri.href,"/")}).pipe(y((e=>{if(P(e)&&e.data!=null){const a=e.data;return p(tw(a))}return p(sg(e.status))})),v((e=>p(sg(f("Unexpected error","QBO Connection Pool Save errored Out: "+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(C$.match),A((()=>r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user/self`,{has_viewed_refer_reward_plan:!0}).pipe(y((t=>M(t)?p(U$(),x$()):p(rf(t.status)))),v((t=>p(rf(f("Unexpected error","Update user refer viewed REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(Ld.match),y((r=>{const{companyId:t}=r.payload,e=Ae(i.value.companyState,t)?.company,a=[];return e!=null&&a.push(rq(),nq((function(s){const{configInfo:o}=s,{mileageRateConfig:c}=o,{mileageUnit:d,mileageUnitAmount:l,mileageCurrencyCode:u,mileageCurrencySymbol:m,description:h,denominationConversions:{denomination:g,denominationSymbol:I,amount:E}}=c;return{mileageDetails:{mileageUnitAmount:l!=null?tr(l,u,m):void 0,mileageUnit:d,mileageCurrencyCode:u,mileageCurrencySymbol:m,denomination:g,denominationSymbol:I,mileageAmountInDenomination:E,description:h}}})(e))),_(a)}))),(n,i)=>n.pipe(S(M$.match),A((r=>{const t=r.payload.selectedCOABalancesRange,e=t.thisPeriod,a=t.orderBy,s=t.numberOfPeriods,o=i.value.reportUIOptionsState.isCompareModeOn===!0?s:1,c=r.payload.highlightedCOABalancesRange==null&&e!=null?{numberOfPeriods:o,orderBy:a,thisPeriod:e}:r.payload.highlightedCOABalancesRange,d=i.value.netBurnOrIncomeState.uiState.selectedCOABalancesRange,l=i.value.opExState.uiState.selectedCOABalancesRange,u=i.value.revenueState.uiState.selectedCOABalancesRange,m=i.value.cashPositionState.uiState.selectedCOABalancesRange,h=i.value.cashInCashOutState.uiState.selectedCOABalancesRange;return p(G$({selectedCOABalancesRange:{thisPeriod:e,orderBy:a,numberOfPeriods:d.numberOfPeriods},highlightedCOABalancesRange:c}),j$({selectedCOABalancesRange:{thisPeriod:e,orderBy:a,numberOfPeriods:l.numberOfPeriods},highlightedCOABalancesRange:c}),q$({selectedCOABalancesRange:{thisPeriod:e,orderBy:a,numberOfPeriods:u.numberOfPeriods},highlightedCOABalancesRange:c}),F$({selectedCOABalancesRange:{thisPeriod:e,orderBy:a,numberOfPeriods:m.numberOfPeriods},highlightedCOABalancesRange:c}),L$({selectedCOABalancesRange:{thisPeriod:e,orderBy:a,numberOfPeriods:h.numberOfPeriods},highlightedCOABalancesRange:c}),V$({thisPeriod:r.payload.highlightedCOABalancesRange!=null?r.payload.highlightedCOABalancesRange.thisPeriod:e,numberOfPeriods:s,orderBy:a}))}))),(n,i)=>n.pipe(S(of.match),A((r=>{const{additionalBalances:t}=r.payload,e=i.value.reportUIOptionsState.isCompareModeOn,a=r.payload.compareMode==="compare_mode_percent"?"this_period_vs_last_period_percent":"this_period_vs_last_period",s=oc(i.value),o=t.filter((d=>d!=="this_period_vs_last_period"&&d!=="this_period_vs_last_period_percent")),c=e?[...o,a]:o;return p(mf({isCompareModeOn:e,additionalBalances:e?[a]:[],maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),pf({isCompareModeOn:e,additionalBalances:e?[a]:[],maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),uf({isCompareModeOn:e,additionalBalances:e?[a]:[],maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),lf({isCompareModeOn:e,additionalBalances:e?[a]:[],maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),df({isCompareModeOn:e,additionalBalances:e?[a]:[],maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),cf({firstMonthOfFY:r.payload.firstMonthOfFY,isCompareModeOn:e,additionalBalances:c,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight,coaBalances:s.balancesInTimeframe}))}))),(n,i)=>n.pipe(S(sf.match),A((r=>{const{additionalBalances:t}=r.payload,e=r.payload.isCompareModeOn?i.value.reportUIOptionsState.compareMode==="compare_mode_percent"?["this_period_vs_last_period_percent"]:["this_period_vs_last_period"]:[],a=oc(i.value),s=[...t.filter((c=>c!=="this_period_vs_last_period"&&c!=="this_period_vs_last_period_percent")),...e],o=[mf({isCompareModeOn:r.payload.isCompareModeOn,additionalBalances:e,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),pf({isCompareModeOn:r.payload.isCompareModeOn,additionalBalances:e,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),uf({isCompareModeOn:r.payload.isCompareModeOn,additionalBalances:e,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),lf({isCompareModeOn:r.payload.isCompareModeOn,additionalBalances:e,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),df({isCompareModeOn:r.payload.isCompareModeOn,additionalBalances:e,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),cf({firstMonthOfFY:r.payload.firstMonthOfFY,isCompareModeOn:r.payload.isCompareModeOn,additionalBalances:s,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight,coaBalances:a.balancesInTimeframe})];return r.payload.isCompareModeOn&&o.push(Rr(r.payload.firstMonthOfFY,!1,r.payload.maxNumOfPeriodsToHighlight)),_(o)}))),(n,i)=>n.pipe(S(z$.match),A((r=>{const t=oc(i.value);return p(W$({thisPeriod:r.payload.thisPeriod}),Q$({thisPeriod:r.payload.thisPeriod}),Y$({thisPeriod:r.payload.thisPeriod}),Lp({thisPeriod:r.payload.thisPeriod}),Mp({thisPeriod:r.payload.thisPeriod}),K$({firstMonthOfFY:r.payload.firstMonthOfFY,thisPeriod:r.payload.thisPeriod,coaBalances:t.balancesInTimeframe,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToSelect??H$.maxNumOfPeriodsToHighlight}))}))),n=>n.pipe(S(Z$.match),A((i=>p(rR(i.payload),aR(i.payload),tR(i.payload),eR(i.payload),X$(i.payload))))),n=>n.pipe(S(HT.match),y((i=>{const r=[],t=i.payload.sectionPayload,e=i.payload.sectionId,a=i.payload.timeframe,s=i.payload.reportId,o=i.payload.accountsMetadataPayload,c=i.payload.accountGroupMetadataPayload,d=i.payload.currencyPayload,l=o.map((m=>yu(m))),u=mo(o);if(t.accounts!=null){const m=t.accounts,h=Cl(m,u,e);h.length>0&&r.push(on(h,d,s,a))}if(t.account_groups!=null){const m=t.account_groups,h=[],g=[];Object.keys(m).forEach((I=>{const E=c.find((b=>I===b.account_group_id));if(E!=null){const b=Object.keys(m[I].accounts),T=_u(b,l);h.push({accountGroupMetadataPayload:E,accountGroupBalances:m[I],nestedAccountIds:T});const O=Cl(m[I].accounts,u,e);g.push(...O)}})),r.push(YT(a,h,d,e,s)),r.push(on(g,d,s,a))}return _(r)}))),n=>n.pipe(S(oe.match),y((i=>{const r=[],t=i.payload.classesMetadataPayload,e=i.payload.sectionPayload,a=i.payload.sectionId,s=i.payload.timeframe,o=i.payload.reportId,c=i.payload.accountsMetadataPayload,d=i.payload.currencyPayload,l=QT(t),u=[],m=[],h=c.map((I=>yu(I))),g=mo(c);return e.classes!=null&&Object.keys(e.classes).forEach((I=>{const E=l[I].nestedClassId,b=l[I].classMetadataPayload,T=e.classes[I],O="accounts"in T?T.accounts:void 0;O!=null&&m.push(...Cl(O,g,a,{parentClassId:E,sectionId:a}));const x=O!=null?_u(Object.keys(O),h):[];b!=null&&u.push({nestedClassId:E,classMetadata:b,classBalances:T,nestedAccountIds:x})})),u.length>0&&r.push(WT(o,s,a,u,d)),m.length>0&&r.push(on(m,d,o,s)),_(r)}))),n=>n.pipe(S(ie.match),y((i=>{const r=[],t=i.payload.sectionPayload,e=i.payload.sectionId,a=i.payload.timeframe,s=i.payload.reportId,o=i.payload.currencyPayload,c=i.payload.accountsMetadataPayload,d=mo(c),l=[];return t.projects!=null&&Object.keys(t.projects).forEach((u=>{const m=t.projects[u],h="accounts"in m?m.accounts:void 0;h!=null&&dK(h,d,e,{projectId:u,sectionId:e},l)})),l.length>0&&r.push(on(l,o,s,a)),_(r)}))),(n,i,r)=>n.pipe(S($N.match),y((t=>{const e=Ce(i.value.vendorState,t.payload),a=[Kp({vendorId:void 0}),vn(t.payload)];return e!=null&&a.push(cr({localData:Ls(e,i.value)})),_(a)}))),(n,i)=>n.pipe(S(Re.match),y((r=>{const{companyId:t}=r.payload,e=ee(i.value.companyViewState.passportView.subscriptionIDsByCompanyID,t,void 0),a=ft(i.value,t,e??[]),s=Ae(i.value.companyState,t)?.company,o=Sg(i.value.userState,s?.managementInfo.companyOfficerUserIds??[]),c=s?.managementInfo.primaryContactUserId!=null?Pt(i.value.userState,s?.managementInfo.primaryContactUserId):void 0,d=gg(i.value.userRoleState,s?.managementInfo.companyOfficerUserIds??[]),l=[];if(s!=null){const u=P0(s,o,d,c);l.push(fw(),vw(u)),l.push(Fm(ZE))}if(a!=null){const u=Jl(a);u!=null&&Object.keys(u).forEach((m=>{l.push(je({addressType:m,addressToCreate:u[m]}))}))}return _(l)}))),(n,i,r)=>n.pipe(S(tx.match),A((t=>{const{accountId:e,selectedPeriod:a,statementUploadId:s}=t.payload,o=i.value.expenseAutomationReconciliationViewState.accountReconciliationRecordsBySelectedPeriod[Ie(a)]?.reconciliationByAccountID[e],c=o?.parsedStatementData,d=o?.localData?.statementUpdateLocalDataByUploadId?.[s];if(c==null||d==null)return p(vt({accountId:e,selectedPeriod:a,error:f("Missing Data","No statement update data found")}));if(d.statementTransactions.updated.some((m=>m.statementTransactionId==null))===!0)return p(vt({accountId:e,selectedPeriod:a,error:f("Invalid Data","One or more edited transactions are missing statement transaction ids")}));const l=((m,h)=>YC(n0(m,h.statementUpload)))(d,c),u=`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/2.0/statement-uploads/${s}`;return r.putAndGetJSON(u,l).pipe(y((m=>{if(P(m)===!0&&m.data!=null)return p(Dn({accountId:e,selectedPeriod:a,parsedStatementData:Ty(m.data)}),Ey({accountId:e,selectedPeriod:a}));const h=Py(m)?Ay(m):null;return p(vt({accountId:e,selectedPeriod:a,error:m.status,dateConflict:h}))})),v((m=>p(vt({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Update Statement REST API call errored out "+(m instanceof Error?m.message:String(m)))})))))}))),(n,i,r)=>n.pipe(S(Zj.match),A((t=>{const e=i.value,{task:a,updates:s}=t.payload,o=a.id,{snoozed_until:c,...d}=((l,u,m)=>{const{taskState:h}=l,g=ee(h.taskByID,u);return EY(l,{...g,...m})})(e,o,s);return r.putAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${o}`,d).pipe(y((l=>P(l)&&l.data!=null?_([Ke(l.data.tasks),Xj()]):p(iE({error:l.status})))),v((l=>p(iE({error:f("Unexpected Error","update task from list view REST API call errored out"+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(zj.match),A((t=>{const{taskGroupId:e,taskGroupName:a}=t.payload,s={name:a};return r.putAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/groups/${e}`,s).pipe(y((o=>{if(P(o)&&o.data!=null){const c=[eE(o.data.task_groups[0]),Sl({fetchState:"Completed"}),Kj({taskGroupId:e,taskGroupName:a}),N({messageSection:"task_group_update_success",messageText:"success",type:"success"})];return _(c)}return p(Sl({fetchState:"Error",error:o.status}))})),v((o=>p(Sl({fetchState:"Error",error:f("Unexpected Error","Update Task Group REST API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(_E.match),y((t=>{const{transactionState:e,vendorState:a,transactionDetailState:s}=i.value,o=Gn(i.value),{cotTransactionTracking:c,transactionId:d,transactionSaveUpdates:l}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/${t.payload.transactionId.id}/categorize`,(function(u,m,h,g,I,E,b){const T=De(g),O=Ot(u,T),x=ee(h.transactionDetailById,T,void 0),U=x?.transactionDetailLocalData.vendorUpdates,k=x?.transactionDetailLocalData.customerUpdates,C=x?.transactionDetailLocalData.selectedEntity;let B;if(U?.qboId!=null&&C!=null&&C.type==="vendor"){const L=Ce(m,U.qboId)??U;L!=null&&(B={id:L.qboId===L.name?"":L.qboId??"",name:L.name})}let J;if(k?.qboId!=null&&C!=null&&C.type==="customer"&&(J={id:k.qboId,name:k.name}),O!=null){const L=PY(I.updates,O,E,b,B,J,C,I.deletedLineIds,I.addedLines);return{entity_related_updates:OY(I.entityRelatedUpdates),transaction_id:g.id,transaction:L}}})(e,a,s,d,l,c,o)).pipe(y((u=>{if(P(u)&&u.data!=null){const m=An(u.data.transaction),h=De(m),g=[];u.data.vendors!=null&&g.push(le(u.data.vendors,"merge")),g.push(Ta(h,u.data.transaction,"replace")),g.push(Nn({transactionId:m,vendorId:u.data.vendors?.[0]?.vendor_id})),g.push(Ms(m,"Completed"));const I=ha(i.value.accountState,i.value.accountListState,"accountList"),E=_G(u.data.transaction),b=ht(i.value),T=AY(E,I,b,t.payload.isExpenseAutomationEnabled);t.payload.transactionSaveUpdates.markAsMiscatUpdates===!0&&T.length>0?g.push(mE(m,t.payload.transactionSaveUpdates,t.payload.isExpenseAutomationEnabled,T)):(g.push(gl({transactionId:t.payload.transactionId,fetchState:"Completed"})),t.payload.transactionSaveUpdates.anyBulkUpdates===!0?g.push(N({messageSection:"transactionDetails_updatingPastTransactions",messageText:"success",type:"success"})):g.push(N({messageSection:"transactionDetails_transactionUpdated",messageText:"success",type:"success"}))),g.push(xe([u.data.transaction],(U=>U.transaction_id),"merge"));const O=zn(E),x=hG(O);return g.push(E_(m,O,x)),_(g)}return SG(u)?p(Ms(t.payload.transactionId,"Error",u.status),gG({transactionId:t.payload.transactionId})):p(Ms(t.payload.transactionId,"Error",u.status))})),v((u=>p(Ms(t.payload.transactionId,"Error",f("Unexpected Error",`REST API call errored out ${u}`))))))}))),(n,i,r)=>n.pipe(S(U1.match),y((t=>{const e=i.value,{emailId:a,vendorId:s,billId:o}=t.payload,c=e.vendorState?.vendorByID?.[s],d=(function(u,m,h){const g={};if(g.vendor_name=m.name,g.account=null,m.accountId!=null){const b=tt(u.accountState,m.accountId,"account_list");b!=null&&(g.account=Xa(b))}if(g.accounting_class=null,m.classId!=null){const b=Qp(u.classState,{classId:m.classId,reportId:"class_list"});b!=null&&(g.accounting_class=en(b))}g.vendor_type=m.vendorType,g.owner_id=m.ownerId??null,g.is_vendor_1099=m.isVendor1099,g.document_ids=m.documentIds,g.bank_account_ids=m.bankAccountIds,g.sync_token=m.syncToken,g.qbo_id=m.qboId,g.country_code=m.countryCode,g.vendor_currency_code=m.vendorCurrencyCode??wn.currencyCode,g.vendor_currency_symbol=m.vendorCurrencySymbol??wn.currencySymbol;const I=j0(u.contactState,m.contactIds);g.contacts=I.map((b=>In(b)));const E=In({fullName:"",email:h,phone:""});return g.contacts?.push(E),g})(e,c,a);let l=e.editBillDetailViewState.newBillState;if(o!=null){const u=Oe(o);l=e.editBillDetailViewState.editBillStateById[u]}return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${s}`,d).pipe(y((u=>{if(P(u)){const m=u.data?.vendors[0]!=null?dr(u.data?.vendors[0]):void 0,h=pt(u.data?.vendors??[]),g=[le(u.data?.vendors??[]),St(u.data?.vendors[0].contacts??[]),z(h),we(u.data?.vendors[0].bank_accounts??[])];return g.push(mt({billDetailLocalData:{...l.billDetailLocalData,vendor:m,paymentDetailsSection:{...l.billDetailLocalData.paymentDetailsSection,paymentTo:void 0},isCollectToAccountInfoFromVendorContact:!0,toAccountVendorEmail:a},billId:o})),g.push(Gc("Completed")),g.push(N({messageSection:"update_vendor",messageText:"success",type:"success"})),_(g)}return p(Gc("Error",u.status),N({messageSection:"update_vendor",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:u.status.message}]}))})),v((u=>p(Gc("Error",f("Unexpected Error",`REST API call errored out ${JSON.stringify(u)}`))))))}))),(n,i,r)=>n.pipe(S(ax.match),y((t=>{const{accountId:e,selectedPeriod:a,payload:s,statementAccountScope:o}=t.payload,{start:c,end:d}=Je(a,!0),l=tt(i.value.accountState,e,"account_reconciliation");if(l==null)return p(ci({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Account not found")}));const u=l.accountType=="credit_card"?"card":"bank",m=i.value.expenseAutomationReconciliationViewState.accountReconciliationRecordsBySelectedPeriod[Ie(a)]?.reconciliationByAccountID[e]?.localData?.statementAccountScope,h=(o??m??"single_account")==="multi_account",g={account_id:e,statement_start_date:c.toString(),statement_end_date:d.toString(),processor_run_id:s.processor_run_id,file_id:s.files[0].file_id,statement_type:u,is_combined_statement:h};return r.postAndGetJSON(`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/statements`,g).pipe(y((I=>{if(P(I)===!0&&I.data!=null){const E=[],b=Aa(e,a);return E.push(rx(b,I.data)),E.push(he({files:[I.data.file]})),E.push(nx({accountId:e,selectedPeriod:a})),_(E)}return p(ci({accountId:e,selectedPeriod:a,error:I.status}))})),v((I=>p(ci({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Upload Account Statement REST API call errored out "+JSON.stringify(I))})))))}))),n=>n.pipe(S(fG.match),A((i=>{const r=An(i.payload.payload),t=De(r);return p(N({messageSection:"receipts_upload",messageText:"success",type:"success"}),Ta(t,i.payload.payload))}))),(n,i)=>n.pipe(S(kU.match),y((r=>{const{transactionPayload:t,updateType:e}=r.payload,a=[],s=Y(i.value),o=i.value.expenseAutomationViewState.selectedPeriodByTenantId;if(a.push(Ta(t.transaction_id,t,e)),s!=null){const c=o[s.tenantId];c!=null&&a.push(nt({tenantId:s.tenantId,period:c,refreshViewInBackground:!0}))}return _(a)}))),(n,i)=>n.pipe(S(jU.match),y((r=>{const{transactionPayload:t,updateType:e}=r.payload,a=[],s=Y(i.value),o=i.value.expenseAutomationViewState.selectedPeriodByTenantId;if(a.push(Ta(t.transaction_id,t,e)),s!=null){const c=o[s.tenantId];c!=null&&a.push(nt({tenantId:s.tenantId,period:c,refreshViewInBackground:!0}))}return _(a)}))),(n,i,r)=>n.pipe(S(a1.match),y((()=>{const{billsBulkActionViewState:t}=i.value,{billsSelectedForBulkAction:e,bulkOperationTypeSelected:a}=t,s={entity_ids:e,validations:[a==="send_for_approval"?"all":"sufficient_funds"]};return r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bulk/bills/transactions/validate?query=${encodeURIComponent(JSON.stringify(s))}`).pipe(y((o=>{if(M(o)){const c=[];return c.push(r1(o.data?.validation_results??[])),_(c)}return p(Uv(o.status))})),v((o=>p(Uv(f("Unexpected Error","Bill bulk review action REST API call errored out "+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(KG.match),y((t=>{const e=i.value,a=e.vendorFiling1099UploadDetailsState,s=t.payload.signal,o=i.value.addressViewState.newAddressState?.vendor_address.addressToCreate,c=t.payload.vendorId,d=HG(e,a.vendor1099DetailsLocalData,c,o);return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${c}`,d,{},s).pipe(y((l=>{if(P(l)&&l.data!=null){const u=pt(l.data.vendors),m=En(l.data.vendors),h=[le(l.data.vendors),St(l.data.vendors[0].contacts??[]),z(u),we(m)];return h.push(YG(t.payload.vendorId)),h.push(Il("Completed")),h.push(N({messageSection:"update_vendor",messageText:"success",type:"success"})),_(h)}return p(Il("Error",l.status),N({messageSection:"update_vendor",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]}))})),v((l=>p(Il("Error",f("Unexpected Error",`Vendors Filing 1099 Upload Details save REST API call errored out ${JSON.stringify(l)}`))))))}))),nK,sK,oK,(n,i)=>n.pipe(S(wc.match),A((r=>{const{billId:t}=r.payload;return n.pipe(S((e=>Ac.match(e))),ke(1),y((()=>p($c(t)))))}))),(n,i)=>n.pipe(S(DS.match),A((r=>{const{cacheOverride:t,forecastId:e}=r.payload;return n.pipe(S((a=>Yn.match(a)||Ur.match(a))),ke(1),y((()=>p(BS(t,e)))))}))),(n,i)=>n.pipe(S(Pg.match),A((r=>{const{cacheOverride:t,forecastId:e}=r.payload;return n.pipe(S((a=>Yn.match(a)||Ur.match(a))),ke(1),y((()=>p(Tg(t,e)))))}))),(n,i)=>n.pipe(S(vf.match),A((r=>{const{cacheOverride:t,forecastId:e}=r.payload;return n.pipe(S((a=>Yn.match(a)||Ur.match(a))),ke(1),y((()=>p(ff(t,e)))))}))),(n,i)=>n.pipe(S(xs.match),xa((r=>{const{reimbursementId:t}=r.payload;return n.pipe(S((e=>gn.match(e))),ke(1),y((e=>{const a=i.value,{entityType:s,entityIdOrName:o}=e.payload;if(s==="merchant"&&o){const c=a.editRemiDetailViewState;let d;d=t!=null?c.editRemiStateById[t]:c.newRemiState;const l=Object.values(d.remiDetailLocalData.updatesByLineId).filter((u=>u.type==="out_of_pocket"&&(u.outOfPocket.merchant?.id===o||u.outOfPocket.merchant?.name===o))).map((u=>u.lineId)).filter((u=>!!u));if(l.length===0){const u=d.tentativeMerchantNameByLineId;Object.keys(u).forEach((m=>{u[m]===o&&l.push(m)}))}if(l.length>0){const{recommendations:u=[]}=Sn(a,o,"merchant"),m=t!=null?a.reimbursementState.reimbursementById[t]:void 0;return _(l.map((h=>Cd({reimbursementId:t,lineId:h,recommendations:u,reimbursementStageCode:m?.reimbursementInfo.stage.code,shouldAutofill:!0}))))}}return _([])})))}))),(n,i)=>n.pipe(S(Bv.match),A((r=>{const{vendorId:t}=r.payload;return n.pipe(S((e=>Hp.match(e))),ke(1),y((()=>{const e=i.value,a=[],s=Ce(e.vendorState,t);let o=e.editBillDetailViewState.newBillState;if(r.payload.billId!=null){const c=Oe(r.payload.billId);o=e.editBillDetailViewState.editBillStateById[c]}return s!=null&&(s.vendorCurrencyCode==null||$o(s.vendorCurrencyCode)||a.push(ga(!0,{amount:o.billDetailLocalData.totalAmount?.amount??0,currencyCode:s.vendorCurrencyCode??"USD",currencySymbol:s.vendorCurrencySymbol??"$"},"USD",r.payload.billId)),a.push(mt({billDetailLocalData:Gl(e,o,s),billId:r.payload.billId})),a.push(na(s.qboId,!1))),_(a)})))}))),(n,i)=>n.pipe(S(Dv.match),A((r=>{const{invoiceProcessingPayload:t,isVendorRecommendationFeatureEnabled:e,billId:a}=r.payload;return n.pipe(S((s=>Oc.match(s)||Lc.match(s))),ke(1),y((()=>p(Vc(t,e,a)))))}))),(n,i)=>n.pipe(S(ov.match),A((r=>{const{billId:t,billDetail:e,vendorId:a}=r.payload;return n.pipe(S((s=>Oc.match(s))),ke(1),y((()=>_([Ac({billId:t,billDetail:e}),Gr(t,"Completed",void 0,a)]))))}))),(n,i)=>n.pipe(S(hn.match),A((r=>{const{vendorName:t}=r.payload;return n.pipe(S((e=>gn.match(e))),ke(1),y((()=>{const e=i.value;if(t!=null){const{recommendations:a=[]}=Sn(e,t,"vendor");return p(zp({recommendations:a,vendorId:void 0}))}return _([])})))}))),(n,i,r)=>n.pipe(S(rV.match),A((t=>{const{code:e,profileId:a,tenantId:s}=t.payload;return r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/wise/callback/link-account?code=${encodeURIComponent(e)}&profileId=${encodeURIComponent(a)}&state=${encodeURIComponent(s)}`).pipe(y((o=>M(o)?p(Yc({fetchState:"Completed"})):p(Yc({fetchState:"Error",error:o.status})))),v((o=>p(Yc({fetchState:"Error",error:f("Unexpected Error","Fetch wiseRedirect REST API call errored out"+JSON.stringify(o))})))))})))],GY=new Set(iK),zY=Az(...jY.filter((n=>!GY.has(n)))),QY=(n,i,r)=>zY(n,i,r).pipe(et(cK),v(((t,e)=>(console.error(t),e))));export{QY as featureRootEpic};