@zeniai/web-app-ui 5.4.12-dev → 5.4.13-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 (169) hide show
  1. package/dist/assets/{AccountMappingScreen-CtnQtVOI.js → AccountMappingScreen-BRzigj9b.js} +2 -2
  2. package/dist/assets/ActualMatchingMatchDetailScreen-BAnhij0b.js +1 -0
  3. package/dist/assets/AddressRoutes-CENGCuuf.js +1 -0
  4. package/dist/assets/{AddressScreen-CiPLLpNX.js → AddressScreen-B1WKzTxJ.js} +2 -2
  5. package/dist/assets/AiCfoScreen-C-9SCmEd.js +22 -0
  6. package/dist/assets/{AppDrawer-Bxmzf_KR.js → AppDrawer-BMUNiLoq.js} +1 -1
  7. package/dist/assets/{BillPayApprovalRoutes-Bhwrq5tr.js → BillPayApprovalRoutes-DKLoOuwS.js} +1 -1
  8. package/dist/assets/{BillPayRoutes-CQCAwPWX.js → BillPayRoutes-VPiZq7wX.js} +8 -8
  9. package/dist/assets/{BusinessVerificationPageScreen-71JxUYXB.js → BusinessVerificationPageScreen-BBfkNXWr.js} +2 -2
  10. package/dist/assets/CardsAiCfoScreen-DvGNnU6w.js +14 -0
  11. package/dist/assets/{ChargeCardRoutes-CvC_JvPH.js → ChargeCardRoutes-CulF2JvM.js} +9 -9
  12. package/dist/assets/CompanyPassportScreen-CO0hs3h5.js +1 -0
  13. package/dist/assets/ConnectionAuthScreen-BEy82Ssf.js +11 -0
  14. package/dist/assets/CustomerOnboardingAuthScreen-BMc4DHei.js +1 -0
  15. package/dist/assets/{CustomerOnboardingRoutes-BMrjyYZ8.js → CustomerOnboardingRoutes-rnOyKIiB.js} +3 -3
  16. package/dist/assets/{DashboardRoutes-DYfRGtw5.js → DashboardRoutes-Cu8fYKAV.js} +4 -4
  17. package/dist/assets/{DefaultTenantHome-DmRqFqlc.js → DefaultTenantHome-CVMojLIT.js} +1 -1
  18. package/dist/assets/DomesticWireDetailScreen-DvqNzOqw.js +18 -0
  19. package/dist/assets/DrawerScreen-DcCH_0uM.js +1 -0
  20. package/dist/assets/EntityDetailRoutes-CU_8Y8KV.js +1 -0
  21. package/dist/assets/{ExpenseAutomationRoutes-Bks-mNnn.js → ExpenseAutomationRoutes-BDWC6-9s.js} +6 -6
  22. package/dist/assets/FeaturePreviewScreen-BNMkwdyk.js +1 -0
  23. package/dist/assets/HubSpotOAuthCallbackScreen-BCwidLV1.js +1 -0
  24. package/dist/assets/InboxNotificationsProvider-dYyDAGLI.js +1 -0
  25. package/dist/assets/InvoicingRoutes-92Lk9pMJ.js +3 -0
  26. package/dist/assets/{MagicLinkRoutes-BQns5k2S.js → MagicLinkRoutes-qLj928yC.js} +9 -9
  27. package/dist/assets/MagicLinkSignInScreen-B5rANZEW.js +12 -0
  28. package/dist/assets/MobileAppDrawer-DfwkluKE.js +1 -0
  29. package/dist/assets/NotFoundScreen-QNLsV8PR.js +1 -0
  30. package/dist/assets/NotificationRoutes-ByCMeGhn.js +1 -0
  31. package/dist/assets/OAuthConsentScreen-DvZbWzs6.js +1 -0
  32. package/dist/assets/PandLWithForecastRoutes-CddU1LvP.js +1 -0
  33. package/dist/assets/{PaymentLinkScreen-BADSNyXp.js → PaymentLinkScreen-DJv-jPN7.js} +2 -2
  34. package/dist/assets/PeopleRoutes-seHwQw6o.js +22 -0
  35. package/dist/assets/PerformanceRoutes-DNmhsmNx.js +1 -0
  36. package/dist/assets/{Preview-DGZHmpgt.js → Preview-DYy1N-vn.js} +1 -1
  37. package/dist/assets/QBOConnectionScreen-BnjbZJvL.js +100 -0
  38. package/dist/assets/{ReimbursementApprovalRoutes-CsG7QtOs.js → ReimbursementApprovalRoutes-DUvLzvwu.js} +1 -1
  39. package/dist/assets/ReimbursementApprovalRuleDetailScreen-BliFeglB.js +1 -0
  40. package/dist/assets/ReimbursementRoutes-uqQhXzD_.js +68 -0
  41. package/dist/assets/ReportsRoutes-Ty52_HTE.js +1 -0
  42. package/dist/assets/RewardsRoutes-DLgsJCTB.js +1 -0
  43. package/dist/assets/{ScheduleDetailsPrepaidExpensesScreen-v3zw3e0R.js → ScheduleDetailsPrepaidExpensesScreen-DW_6SN7k.js} +5 -5
  44. package/dist/assets/ScreenRoutes-DJPFTJup.js +2 -0
  45. package/dist/assets/{SettingsRoutes-CwW3Kcyz.js → SettingsRoutes-DucmuzJP.js} +6 -6
  46. package/dist/assets/{SetupPagesScreen-DPnnq4jj.js → SetupPagesScreen-DK6Wiu69.js} +5 -5
  47. package/dist/assets/SignInScreen-DaPgU2Nl.js +1 -0
  48. package/dist/assets/SignOutScreen-B59RCl56.js +9 -0
  49. package/dist/assets/TaskListScreen-Cvt-fENk.js +9 -0
  50. package/dist/assets/TaskRoutes-D2FIt6Mv.js +9 -0
  51. package/dist/assets/TransactionDetailRoutes-tbHHbIBD.js +1 -0
  52. package/dist/assets/TransactionDetailScreen-Ch0LCj8G.js +5 -0
  53. package/dist/assets/{TransactionListRoutes-aYhnWH8H.js → TransactionListRoutes-C3bzQYFS.js} +1 -1
  54. package/dist/assets/TreasuryRoutes-DDeLTUpi.js +37 -0
  55. package/dist/assets/{VendorsRoutes-QudM99vQ.js → VendorsRoutes-DJp9Lw7q.js} +11 -11
  56. package/dist/assets/WiseConfirmationScreen-CLvpbPdm.js +12 -0
  57. package/dist/assets/{ZeniAccountRoutes-DeSodvmm.js → ZeniAccountRoutes-DaY0WnU3.js} +11 -11
  58. package/dist/assets/ZeniAccountStatementScreen-iiLi8G_s.js +9 -0
  59. package/dist/assets/{accountMappingHelper-7kGWRPlV.js → accountMappingHelper-Bhr6esKF.js} +1 -1
  60. package/dist/assets/{analytics-BfKlFVdJ.js → analytics-DQKmqYV4.js} +4 -4
  61. package/dist/assets/{analyticsHelper-Cn2rORl_.js → analyticsHelper-BwgoMQXe.js} +1 -1
  62. package/dist/assets/{core-BWRpGVdr.js → core--MkqccHv.js} +1 -1
  63. package/dist/assets/{decodeURIComponentSafe-DN9u1X8y.js → decodeURIComponentSafe-BEyzjo_o.js} +1 -1
  64. package/dist/assets/{dnd-wLfPcqQ_.js → dnd-CP4whtxN.js} +1 -1
  65. package/dist/assets/{empty-CKwCpajm.js → empty-BNS5Y1pB.js} +1 -1
  66. package/dist/assets/{empty-BxjviaN4.js → empty-ClM8DHuA.js} +1 -1
  67. package/dist/assets/{emptyVideoElement-BURd-WPn.js → emptyVideoElement-fa_uGl7-.js} +1 -1
  68. package/dist/assets/epic-D_XIiCBV.js +2 -0
  69. package/dist/assets/expenseAutomationHelper-Dgshk1zd.js +1 -0
  70. package/dist/assets/getLocaleForTenant-GT2HpY4t.js +1 -0
  71. package/dist/assets/{index-9pdMsp-M.js → index-B3QEycF9.js} +14277 -14277
  72. package/dist/assets/{index-DwbDgvVM.js → index-BF_3R8uL.js} +1 -1
  73. package/dist/assets/{index-DYK9WSJX.js → index-BeoiOG5z.js} +1 -1
  74. package/dist/assets/{index-BtcZVjM1.js → index-CgMPBz0t.js} +1 -1
  75. package/dist/assets/{index-CcNUb4uI.js → index-D6eGMXVa.js} +2 -2
  76. package/dist/assets/index-eDdhdaqL.js +1 -0
  77. package/dist/assets/{index-D6O1UsWW.js → index-unoqrRj0.js} +1 -1
  78. package/dist/assets/index-yOyvZ3iU.js +1 -0
  79. package/dist/assets/{lexical-ljfsYSTd.js → lexical-BSiUIp1H.js} +1 -1
  80. package/dist/assets/liveblocks-DxRiM6VH.js +59 -0
  81. package/dist/assets/{lottie-ByqRhfis.js → lottie-ixiiUTSF.js} +1 -1
  82. package/dist/assets/{mui-BmHHlwSU.js → mui-kCJnrqYM.js} +1 -1
  83. package/dist/assets/{pathToGoBack-Dr_s0YFt.js → pathToGoBack-bat7ZlX9.js} +1 -1
  84. package/dist/assets/{pdf-C42gprG9.js → pdf-CRxQY5HT.js} +5 -5
  85. package/dist/assets/{pdf-lib-D4o6Nk27.js → pdf-lib-CHqQ3Ry3.js} +1 -1
  86. package/dist/assets/{plaid-CNV6JDhi.js → plaid-D94Y0H1P.js} +1 -1
  87. package/dist/assets/{pusher-DvjXiGU0.js → pusher-D0JY_FIf.js} +1 -1
  88. package/dist/assets/{react-DJxNpxcE.js → react-BBat2v6H.js} +1 -1
  89. package/dist/assets/{react-CdlDO5TG.js → react-BMVWGyVG.js} +1 -1
  90. package/dist/assets/{react-s5yBxYCg.js → react-Bv8sZiPk.js} +1 -1
  91. package/dist/assets/{react-CFwPpD-1.js → react-CiS3ccRD.js} +1 -1
  92. package/dist/assets/{react-Ct2ZzE_U.js → react-DTdBaAd3.js} +1 -1
  93. package/dist/assets/{react-CFX1RFZH.js → react-ltAkcaDC.js} +1 -1
  94. package/dist/assets/{recharts-BXLxGQ-T.js → recharts-EjKi4hbc.js} +1 -1
  95. package/dist/assets/{reportTimeframe-tJTkNTvP.js → reportTimeframe-DQT7aPWx.js} +1 -1
  96. package/dist/assets/{routePaths--TXDBUUo.js → routePaths-33YxbFc-.js} +1 -1
  97. package/dist/assets/{sentry-bpmZUW7k.js → sentry-B-dIf5xz.js} +1 -1
  98. package/dist/assets/{stripSplatSuffix-Bizh1-Tx.js → stripSplatSuffix-xBjFkZSJ.js} +1 -1
  99. package/dist/assets/{url-Cc_9bwX-.js → url-Bs4Dq0vG.js} +1 -1
  100. package/dist/assets/{url-8ONn8gmN.js → url-hbMZAh9y.js} +1 -1
  101. package/dist/assets/useActualMatchingMatchDetail-CAIVsCJG.js +1 -0
  102. package/dist/assets/useAiCfoDashboardSuggestedQuestionsChips-BTEnEWTt.js +1 -0
  103. package/dist/assets/useAskAiCfoHostNavButtonProps-BZFKDw3z.js +1 -0
  104. package/dist/assets/useChargeCardPusherEvents-DG1lA66n.js +1 -0
  105. package/dist/assets/{useDeviceId-3o80RPjJ.js → useDeviceId-8baAH1vH.js} +1 -1
  106. package/dist/assets/useEmailConnectResultRefresh-BEw2d8Jv.js +1 -0
  107. package/dist/assets/useEnsureVendorListLoaded-IzkQpfDE.js +1 -0
  108. package/dist/assets/useInitialThreadRequest-D8OFP51H.js +1 -0
  109. package/dist/assets/useTaskManagerAccess-ULuU1uGf.js +1 -0
  110. package/dist/assets/useTaskManagerPusherEvents-WPqjoQIF.js +1 -0
  111. package/dist/assets/utils-BPWa_pEs.js +36 -0
  112. package/dist/assets/withTransactionSidePanel-RKi7LGHx.js +25 -0
  113. package/dist/assets/{zeni-epic-state-BlWDBO75.js → zeni-epic-state-Dg1W8Zu5.js} +4 -4
  114. package/dist/index.html +1 -1
  115. package/package.json +4 -4
  116. package/dist/assets/ActualMatchingMatchDetailScreen-COb45lJn.js +0 -1
  117. package/dist/assets/AddressRoutes-CXRpuLt0.js +0 -1
  118. package/dist/assets/AiCfoScreen-DPuJRDN-.js +0 -22
  119. package/dist/assets/CardsAiCfoScreen-Dze-_SQs.js +0 -14
  120. package/dist/assets/CompanyPassportScreen-dRN2jnGn.js +0 -1
  121. package/dist/assets/ConnectionAuthScreen-CrQ3LZFB.js +0 -11
  122. package/dist/assets/CustomerOnboardingAuthScreen-BUiUC1A4.js +0 -1
  123. package/dist/assets/DomesticWireDetailScreen-YfGiQgSo.js +0 -18
  124. package/dist/assets/DrawerScreen-DH40ycW6.js +0 -1
  125. package/dist/assets/EntityDetailRoutes-BgqO6DqU.js +0 -1
  126. package/dist/assets/FeaturePreviewScreen-B9UACzAC.js +0 -1
  127. package/dist/assets/HubSpotOAuthCallbackScreen-BjEMURaY.js +0 -1
  128. package/dist/assets/InboxNotificationsProvider-Cd4NxEtR.js +0 -1
  129. package/dist/assets/InvoicingRoutes-UHPes0q9.js +0 -3
  130. package/dist/assets/MagicLinkSignInScreen-IXnuvHt3.js +0 -12
  131. package/dist/assets/MobileAppDrawer-rCVKr3J3.js +0 -1
  132. package/dist/assets/NotFoundScreen-C94S-cmy.js +0 -1
  133. package/dist/assets/NotificationRoutes-h53g4kBO.js +0 -1
  134. package/dist/assets/OAuthConsentScreen-35XPz7Vp.js +0 -1
  135. package/dist/assets/PandLWithForecastRoutes-OnVWoGgX.js +0 -1
  136. package/dist/assets/PeopleRoutes-CnmV1pW5.js +0 -22
  137. package/dist/assets/PerformanceRoutes-MYTxvcMA.js +0 -1
  138. package/dist/assets/QBOConnectionScreen-C1Kn9y8q.js +0 -101
  139. package/dist/assets/ReimbursementApprovalRuleDetailScreen-BzhkgPjS.js +0 -1
  140. package/dist/assets/ReimbursementRoutes-BcjYsUHB.js +0 -68
  141. package/dist/assets/ReportsRoutes-Bcm2EvxJ.js +0 -1
  142. package/dist/assets/RewardsRoutes-Do7moyFI.js +0 -1
  143. package/dist/assets/ScreenRoutes-vTLuTGuW.js +0 -2
  144. package/dist/assets/SignInScreen-ColMnPgQ.js +0 -1
  145. package/dist/assets/SignOutScreen-DILD5ueP.js +0 -9
  146. package/dist/assets/TaskListScreen-aizYXFWj.js +0 -9
  147. package/dist/assets/TaskRoutes-CWWa57kf.js +0 -9
  148. package/dist/assets/TransactionDetailRoutes-DWXM95sG.js +0 -1
  149. package/dist/assets/TransactionDetailScreen-CNMo1Iyr.js +0 -5
  150. package/dist/assets/TreasuryRoutes-DnAsQTrn.js +0 -37
  151. package/dist/assets/WiseConfirmationScreen-CkFHmO99.js +0 -12
  152. package/dist/assets/ZeniAccountStatementScreen-DKVtRt3N.js +0 -9
  153. package/dist/assets/epic-Nc2-Ka61.js +0 -2
  154. package/dist/assets/expenseAutomationHelper-Dr99xbt1.js +0 -1
  155. package/dist/assets/getLocaleForTenant-BNAJG7gN.js +0 -1
  156. package/dist/assets/index-BXpurrfG.js +0 -1
  157. package/dist/assets/index-mJCZBkgN.js +0 -1
  158. package/dist/assets/liveblocks-V5YQZeeY.js +0 -59
  159. package/dist/assets/useActualMatchingMatchDetail-Mft821vz.js +0 -1
  160. package/dist/assets/useAiCfoDashboardSuggestedQuestionsChips-3ayut61P.js +0 -1
  161. package/dist/assets/useAskAiCfoHostNavButtonProps-E2UGdnp9.js +0 -1
  162. package/dist/assets/useChargeCardPusherEvents-DVeqwUB9.js +0 -1
  163. package/dist/assets/useEmailConnectResultRefresh-F8OBO8EU.js +0 -1
  164. package/dist/assets/useEnsureVendorListLoaded-CKZrwkQQ.js +0 -1
  165. package/dist/assets/useInitialThreadRequest-Df-inltN.js +0 -1
  166. package/dist/assets/useTaskManagerAccess-Bq9TDvwr.js +0 -1
  167. package/dist/assets/useTaskManagerPusherEvents-Ctn5L7kn.js +0 -1
  168. package/dist/assets/utils-CXFQdt3d.js +0 -36
  169. package/dist/assets/withTransactionSidePanel-DOV8YzFf.js +0 -25
@@ -1,2 +0,0 @@
1
- import{h3 as S,fH as DP,h4 as A,h5 as y,h6 as I,h7 as _e,fG as Bu,h8 as V,h9 as p,ha as Co,hb as Du,hc as f,g1 as JP,hd as wP,he as Ju,hf as $,hg as wu,hh as $u,hi as $P,hj as RP,hk as MP,hl as fa,hm as Ru,hn as VP,ho as Mu,hp as X,hq as We,hr as ue,hs as F,ht as LP,hu as h,hv as mt,hw as FP,hx as Vu,hy as qP,hz as JT,hA as jP,hB as Lu,hC as xo,hD as Pn,hE as Fu,hF as GP,hG as ie,hH as zP,hI as KP,hJ as ce,hK as YP,hL as HP,hM as qu,hN as QP,hO as Me,hP as T,hQ as WP,hR as ju,hS as ZP,hT as XP,hU as Gu,hV as eN,hW as tN,hX as zu,hY as aN,hZ as rN,h_ as Ku,h$ as Ae,i0 as nN,i1 as Yu,i2 as Hu,i3 as sN,i4 as Qu,i5 as Wu,i6 as oN,i7 as Zu,i8 as Xu,i9 as Uo,ia as iN,ib as ko,ic as Nn,id as cN,gg as N,ie as ep,ig as Je,ih as G,ii as Bo,ij as va,ik as tp,il as H,im as ap,io as K,ip as dN,iq as st,ir as rp,is as np,it as An,iu as lN,iv as uN,iw as sp,ix as pN,iy as mN,iz as Do,iA as op,iB as yN,iC as _N,iD as ip,iE as hN,iF as SN,iG as gN,iH as cp,iI as fN,iJ as vN,iK as dp,iL as IN,iM as bN,iN as EN,iO as TN,iP as lp,fF as PN,iQ as NN,iR as AN,iS as up,gr as ON,iT as j,gq as CN,go as pp,iU as xN,iV as cr,iW as Oe,iX as UN,iY as mp,bC as Z,iZ as kN,i_ as yp,i$ as BN,j0 as DN,j1 as JN,j2 as wN,j3 as $N,j4 as RN,j5 as _p,j6 as MN,j7 as VN,j8 as LN,j9 as hp,ja as FN,jb as qN,jc as gt,jd as Sp,je as jN,jf as GN,jg as gp,jh as zN,ji as KN,jj as YN,jk as fp,jl as HN,jm as QN,jn as WN,jo as vp,jp as Ip,jq as Ee,jr as bp,js as ZN,jt as Ep,ju as XN,jv as eA,jw as tA,jx as Tp,jy as aA,jz as rA,jA as Pp,jB as Np,jC as nA,jD as Ap,jE as Jo,jF as sA,jG as Op,ga as oA,jH as iA,jI as Cp,jJ as cA,jK as dA,jL as xp,jM as lA,jN as je,jO as On,jP as Up,jQ as uA,jR as pA,jS as mA,jT as kp,jU as yA,jV as _A,jW as hA,jX as Bp,jY as SA,jZ as Cn,j_ as gA,j$ as Dp,k0 as fA,k1 as Jp,k2 as wp,k3 as vA,k4 as IA,k5 as bA,k6 as $p,k7 as wo,k8 as EA,k9 as Rp,ka as TA,kb as PA,kc as Mp,kd as $o,ke as re,kf as Vp,kg as NA,kh as Lp,ki as AA,kj as Fp,kk as OA,kl as qp,km as Ro,kn as CA,ko as jp,kp as xA,kq as UA,kr as Gp,ks as kA,kt as BA,ku as zp,kv as DA,kw as JA,kx as xn,ky as Kp,kz as Mo,kA as xt,kB as wA,kC as Ut,kD as fe,kE as $A,kF as Yp,kG as kt,kH as Bt,kI as RA,kJ as Hp,kK as MA,kL as VA,kM as Ve,kN as Ze,kO as Qp,kP as Dt,kQ as Vo,bn as ye,kR as LA,kS as Ia,kT as Un,kU as FA,kV as Wp,kW as _r,kX as qA,kY as yt,kZ as jA,k_ as GA,k$ as Zp,l0 as zA,l1 as KA,l2 as YA,l3 as HA,l4 as QA,l5 as Xp,l6 as WA,l7 as ZA,l8 as XA,l9 as em,la as eO,lb as tO,lc as aO,ld as tm,le as Lo,lf as ba,lg as am,lh as rm,li as te,lj as rO,lk as nm,ll as Fo,lm as nO,ln as sm,lo as sO,lp as kn,lq as oO,lr as om,ls as iO,lt as qo,lu as jo,lv as cO,lw as im,lx as dO,ly as Go,lz as lO,lA as cm,lB as zo,lC as Ko,lD as uO,lE as dm,lF as Yo,lG as Jt,lH as pO,lI as wt,lJ as Ke,lK as mO,lL as lm,lM as $t,lN as yO,lO as um,lP as _O,lQ as Ho,lR as pm,lS as hO,lT as SO,lU as mm,lV as Qo,lW as ym,lX as gO,lY as _m,lZ as se,l_ as Ge,l$ as ot,m0 as hm,m1 as Sm,m2 as fO,m3 as xe,m4 as Bn,m5 as rt,m6 as dr,m7 as ya,m8 as vn,m9 as vO,ma as Ea,mb as Ot,mc as IO,cC as Wo,md as bO,me as Zo,mf as gm,mg as EO,mh as TO,mi as Dn,mj as Ta,mk as Pa,ml as fm,mm as hr,mn as PO,mo as Xe,mp as _t,mq as Jn,mr as Rt,ms as NO,mt as AO,mu as OO,mv as CO,mw as wT,mx as ht,my as ft,mz as Se,mA as vm,mB as wn,mC as Sr,mD as gr,mE as Xo,mF as Im,mG as Na,mH as Ye,mI as bm,mJ as $n,gV as Ue,mK as Ie,mL as Em,mM as bn,mN as ei,mO as Aa,mP as Rn,mQ as xO,mR as St,bO as bo,mS as ia,mT as fr,mU as Tm,mV as UO,mW as kO,mX as Pm,mY as BO,mZ as DO,m_ as ti,m$ as ai,n0 as ri,n1 as Mn,n2 as ni,n3 as JO,n4 as Nm,n5 as Am,n6 as Om,n7 as wO,n8 as si,n9 as $O,na as oi,nb as RO,nc as Cm,nd as ii,ne as xm,nf as MO,ng as Um,nh as km,ni as VO,nj as LO,nk as FO,nl as qO,nm as Bm,nn as jO,no as GO,np as zO,nq as Dm,nr as Jm,ns as KO,nt as YO,nu as wm,nv as $m,nw as HO,nx as Rm,ny as Mm,nz as QO,nA as Vm,nB as WO,nC as ZO,nD as Lm,nE as XO,c8 as Fm,nF as qm,nG as eC,nH as jm,nI as Gm,nJ as tC,nK as ci,nL as aC,nM as rC,nN as nC,nO as zm,nP as sC,nQ as Km,nR as Vn,nS as di,nT as oC,nU as ze,nV as mr,nW as Ym,nX as iC,nY as cC,nZ as Hm,n_ as dC,n$ as li,o0 as Qm,o1 as Wm,o2 as lC,o3 as Zm,o4 as uC,o5 as pC,o6 as Xm,o7 as ey,o8 as ui,o9 as mC,oa as ty,ob as yC,oc as Oa,od as ay,g as Y,gH as vr,oe as Ir,of as Ca,og as xa,oh as br,oi as Ua,oj as ry,ok as Ln,ol as ka,om as _C,on as ny,oo as sy,op as vt,oq as hC,or as SC,os as oy,ot as gC,ou as iy,ov as cy,ow as dy,ox as fC,oy as vC,oz as IC,oA as ly,oB as bC,oC as EC,oD as TC,oE as uy,oF as PC,oG as NC,oH as AC,oI as py,oJ as OC,oK as my,oL as CC,oM as yy,oN as Ou,oO as It,oP as _y,oQ as xC,oR as UC,oS as hy,oT as kC,oU as Sy,oV as BC,oW as Ba,oX as He,oY as Er,oZ as Tr,o_ as Pr,o$ as Nr,p0 as Ar,p1 as gy,p2 as pi,p3 as DC,p4 as JC,p5 as fy,p6 as wC,p7 as $C,p8 as RC,p9 as MC,pa as VC,pb as LC,pc as vy,pd as FC,pe as Iy,pf as by,pg as qC,ph as Ey,pi as jC,pj as mi,pk as GC,pl as zC,pm as KC,pn as YC,po as Or,pp as Mt,pq as Be,pr as Cr,ps as HC,pt as QC,pu as WC,pv as ZC,pw as _u,px as hu,py as XC,pz as ex,pA as tx,pB as Ty,pC as ax,pD as rx,pE as nx,pF as Py,pG as sx,pH as Ny,pI as ox,pJ as Ay,pK as ix,pL as yi,pM as cx,pN as dx,pO as lx,pP as Oy,pQ as ux,pR as px,pS as mx,pT as Cy,pU as yx,fE as Q,c6 as _x,bm as hx,pV as Sx,pW as Da,pX as Fn,pY as qn,pZ as jn,p_ as _i,p$ as hi,q0 as Si,q1 as gi,q2 as fi,q3 as vi,q4 as it,q5 as xy,q6 as Uy,q7 as ky,q8 as be,q9 as Gn,qa as gx,qb as By,qc as fx,qd as vx,qe as Dy,qf as Ix,qg as bx,qh as Ex,qi as Tx,qj as Px,qk as Jy,ql as Nx,qm as Ja,qn as wy,qo as $y,qp as xr,qq as Ax,qr as Ry,qs as Ii,gP as Vt,qt as Ox,qu as wa,qv as zn,qw as My,qx as Cx,qy as Vy,qz as xx,qA as Ly,qB as bi,qC as Ei,qD as Ur,qE as Fy,qF as qy,qG as Ux,qH as Kn,qI as Re,qJ as kx,qK as Bx,qL as jy,qM as Dx,qN as Gy,qO as zy,qP as Jx,qQ as wx,qR as Ky,gS as $x,qS as Yn,qT as Rx,qU as Yy,qV as Hn,gQ as Mx,qW as Vx,qX as Lx,qY as Fx,qZ as qx,q_ as Hy,q$ as jx,r0 as Ti,bK as Qn,r1 as Gx,r2 as zx,r3 as Qy,r4 as Kx,r5 as Yx,r6 as Hx,r7 as Qx,r8 as Wx,r9 as bt,ra as Wy,rb as Zy,rc as Xy,rd as e_,re as Zx,rf as Xx,rg as ca,rh as eU,ri as tU,rj as Pi,rk as aU,rl as rU,rm as nU,rn as ge,ro as kr,rp as Br,rq as Wn,rr as Lt,rs as Ni,rt as sU,ru as oU,rv as iU,rw as cU,rx as t_,ry as dU,rz as lU,rA as a_,rB as uU,rC as r_,rD as pU,rE as n_,rF as s_,rG as mU,rH as o_,rI as i_,rJ as yU,rK as Ai,rL as _U,rM as hU,rN as SU,rO as Su,gY as ke,rP as c_,rQ as Zn,rR as gU,rS as d_,rT as Oi,rU as fU,rV as l_,rW as u_,rX as Ci,rY as vU,rZ as IU,r_ as bU,r$ as p_,s0 as xi,s1 as EU,s2 as TU,s3 as m_,s4 as PU,s5 as y_,s6 as __,s7 as Dr,s8 as et,s9 as NU,sa as h_,sb as AU,sc as S_,sd as Ft,se as OU,sf as g_,sg as CU,sh as f_,si as xU,sj as UU,sk as v_,sl as kU,sm as BU,sn as I_,so as b_,sp as E_,sq as Et,sr as T_,ss as DU,st as lr,su as Jr,sv as JU,sw as wU,sx as _a,sy as wr,sz as $U,sA as P_,sB as RU,sC as MU,sD as N_,sE as VU,sF as qt,sG as LU,sH as A_,sI as O_,sJ as FU,sK as qU,sL as jU,sM as C_,sN as GU,sO as x_,sP as zU,sQ as KU,sR as YU,sS as U_,sT as Xn,sU as HU,sV as QU,sW as WU,sX as Ui,sY as ZU,sZ as k_,s_ as B_,s$ as XU,t0 as ki,t1 as ek,t2 as tk,t3 as ak,t4 as rk,t5 as nk,t6 as sk,t7 as ok,t8 as ik,t9 as ck,ta as dk,tb as lk,tc as D_,td as uk,te as pk,tf as mk,tg as J_,th as yk,ti as mo,tj as $a,tk as es,tl as $r,tm as Ra,tn as _k,to as Bi,e7 as hk,tp as Sk,tq as gk,tr as fk,ts as w_,tt as Di,tu as Ji,tv as $_,tw as yo,tx as _o,ty as De,tz as ho,tA as Rr,tB as ts,tC as R_,tD as M_,tE as V_,tF as Mr,tG as vk,tH as L_,tI as Ik,tJ as F_,tK as bk,tL as q_,tM as j_,tN as Vr,tO as Ek,tP as $T,tQ as Tk,tR as Pk,tS as Nk,tT as Ak,tU as G_,tV as Ok,tW as Ck,tX as Ma,tY as xk,tZ as Uk,fo as wi,t_ as kk,t$ as Bk,u0 as z_,u1 as Dk,gN as $i,u2 as Jk,u3 as K_,u4 as Y_,u5 as wk,u6 as $k,u7 as as,u8 as H_,u9 as Q_,ua as Ri,ub as rs,uc as W_,ud as ns,ue as Z_,uf as Rk,ug as Mi,uh as ss,ui as Vi,uj as X_,uk as os,ul as Mk,um as Vk,un as Lk,uo as Fk,up as eh,uq as th,ur as is,us as ah,dj as Tn,ut as RT,uu as So,uv as MT,uw as VT,ux as LT,uy as FT,d$ as qk,uz as jk,uA as rh,uB as nh,uC as Li,ck as qT,uD as jT,uE as GT,uF as zT,dk as KT,uG as YT,uH as HT,uI as QT,uJ as WT,uK as Gk,uL as zk,uM as Kk,uN as Yk,uO as sh,uP as Hk,uQ as Qk,uR as oh,uS as Wk,uT as Zk,uU as ih,uV as Xk,uW as eB,uX as ch,uY as tB,uZ as aB,u_ as dh,u$ as gu,v0 as rB,v1 as lh,v2 as nB,v3 as sB,v4 as uh,v5 as oB,v6 as iB,v7 as Fi,v8 as cB,v9 as dB,va as lB,vb as jt,vc as cs,vd as ds,ve as uB,vf as Lr,vg as Cu,b6 as En,vh as pB,vi as go,vj as Tt,vk as mB,vl as yB,vm as ph,vn as _B,vo as hB,vp as mh,vq as SB,vr as gB,vs as yh,vt as fB,vu as _h,vv as hh,vw as vB,vx as Ce,vy as IB,vz as bB,vA as Sh,vB as ct,vC as dt,vD as gh,vE as EB,vF as fh,vG as Fr,vH as qr,vI as vh,vJ as ls,vK as TB,vL as Ih,vM as jr,vN as PB,vO as Gr,vP as zr,vQ as Gt,vR as NB,vS as AB,vT as us,vU as OB,vV as bh,vW as CB,vX as Va,vY as Kr,vZ as xB,v_ as Eh,v$ as Th,w0 as UB,w1 as Ph,w2 as kB,w3 as Yr,w4 as Hr,w5 as qi,w6 as La,w7 as ps,w8 as lt,w9 as BB,wa as DB,wb as Nh,wc as JB,wd as wB,we as Ah,wf as $B,wg as RB,wh as Qr,wi as Oh,wj as MB,wk as VB,wl as Ch,wm as ZT,wn as LB,wo as xh,wp as FB,wq as qB,wr as Uh,ws as jB,wt as XT,wu as kh,wv as eP,ww as GB,wx as Bh,wy as zB,wz as KB,wA as YB,wB as HB,wC as QB,wD as Dh,wE as WB,wF as ZB,wG as Jh,wH as Wr,wI as wh,wJ as $h,wK as ji,wL as Zr,wM as Gi,wN as zi,wO as XB,wP as eD,wQ as Rh,wR as tD,wS as Mh,wT as aD,wU as Vh,dT as rD,dS as nD,wV as sD,wW as oD,wX as Ki,wY as iD,wZ as cD,w_ as dD,w$ as lD,x0 as uD,dU as pD,x1 as Lh,x2 as Fh,x3 as qh,x4 as Yi,x5 as mD,x6 as yD,x7 as jh,x8 as _D,x9 as Gh,xa as hD,xb as SD,xc as gD,xd as fD,xe as zh,xf as Kh,xg as vD,xh as ID,xi as bD,xj as ED,xk as TD,xl as Yh,xm as Hi,xn as Qi,xo as ms,xp as Hh,xq as ys,xr as Wi,xs as Qh,xt as Wh,xu as PD,xv as Zh,xw as ND,xx as Xr,xy as Xh,xz as Zi,xA as AD,xB as OD,xC as CD,xD,xE as eS,xF as UD,cX as kD,xG as _s,xH as Fa,xI as qa,xJ as en,xK as tS,xL as aS,xM as BD,xN as DD,xO as JD,bF as la,cY as wD,xP as $D,xQ as ur,xR as RD,xS as MD,xT as hs,xU as rS,xV as nS,xW as VD,xX as LD,xY as FD,xZ as qD,x_ as sS,x$ as Xi,y0 as jD,y1 as GD,y2 as zD,y3 as KD,y4 as YD,y5 as oS,y6 as HD,y7 as QD,cZ as WD,y8 as tn,y9 as ZD,ya as iS,yb as XD,yc as eJ,yd as cS,ye as Ss,yf as tJ,yg as dS,yh as aJ,yi as lS,yj as uS,yk as rJ,yl as nJ,ym as pS,yn as sJ,yo as mS,yp as oJ,yq as iJ,yr as yS,ys as cJ,yt as _S,yu as dJ,yv as lJ,yw as hS,yx as uJ,yy as SS,yz as pJ,yA as mJ,yB as ec,yC as gS,yD as yJ,yE as _J,yF as fS,yG as vS,yH as hJ,yI as SJ,yJ as IS,yK as bS,yL as gJ,yM as ES,yN as tc,yO as fJ,yP as TS,yQ as vJ,yR as PS,yS as IJ,yT as NS,yU as AS,yV as bJ,yW as OS,yX as EJ,yY as CS,yZ as ac,y_ as TJ,y$ as xS,z0 as PJ,z1 as US,z2 as rc,z3 as kS,z4 as NJ,z5 as BS,z6 as AJ,z7 as OJ,z8 as DS,z9 as JS,za as CJ,zb as wS,zc as nc,zd as xJ,ze as $S,zf as UJ,zg as RS,zh as kJ,zi as MS,zj as VS,zk as BJ,zl as LS,zm as DJ,zn as FS,zo as qS,zp as jS,zq as GS,zr as gs,zs as JJ,zt as zS,zu as wJ,zv as KS,zw as $J,zx as YS,zy as RJ,zz as HS,zA as QS,zB as MJ,zC as WS,zD as sc,zE as VJ,zF as ZS,zG as LJ,zH as FJ,zI as XS,zJ as qJ,zK as jJ,zL as eg,zM as tg,zN as GJ,zO as ag,zP as zJ,zQ as rg,zR as KJ,zS as YJ,zT as fs,zU as HJ,zV as ng,zW as QJ,zX as WJ,zY as sg,zZ as og,z_ as ZJ,z$ as ig,A0 as XJ,A1 as ew,A2 as tw,A3 as aw,A4 as rw,A5 as cg,A6 as nw,A7 as sw,A8 as dg,A9 as vs,Aa as ow,Ab as iw,Ac as cw,Ad as lg,Ae as Is,Af as dw,Ag as ug,Ah as pg,Ai as mg,Aj as yg,Ak as bs,Al as lw,Am as uw,An as Es,Ao as pw,bU as mw,Ap as yw,Aq as _w,Ar as hw,As as _g,At as Sw,Au as oc,Av as hg,Aw as Sg,Ax as gw,Ay as ic,Az as cc,AA as an,AB as ja,AC as Ga,AD as fw,AE as gg,AF as zt,AG as vw,AH as fg,AI as Kt,AJ as Iw,AK as vg,AL as Ig,AM as bw,AN as bg,AO as Ew,AP as Tw,AQ as Pw,AR as Eg,AS as Tg,AT as Nw,AU as Aw,AV as Pg,AW as Ng,AX as Ow,AY as Cw,AZ as Ag,A_ as dc,A$ as lc,B0 as Ts,B1 as Og,B2 as uc,B3 as xw,B4 as pc,B5 as mc,B6 as Cg,B7 as Uw,B8 as xg,B9 as kw,Ba as Ug,Bb as Bw,Bc as Dw,Bd as kg,Be as Jw,Bf as ww,Bg as yc,Bh as Bg,Bi as $w,f$ as Pt,Bj as Dg,Bk as Jg,Bl as wg,Bm as _c,Bn as Rw,dZ as Mw,dg as Vw,Bo as Lw,dY as Fw,Bp as qw,Bq as jw,Br as Gw,Bs as $g,Bt as zw,Bu as Kw,Bv as Yw,Bw as Hw,Bx as Qw,By as Rg,Bz as Ww,BA as Zw,BB as Mg,BC as Xw,BD as e$,BE as Vg,BF as t$,BG as a$,BH as Lg,BI as r$,b8 as n$,BJ as s$,BK as Fg,BL as o$,BM as i$,BN as qg,BO as c$,BP as d$,BQ as jg,BR as l$,BS as u$,BT as Gg,BU as hc,BV as zg,BW as Ps,BX as Kg,BY as ve,BZ as Yg,B_ as p$,B$ as Hg,C0 as m$,C1 as y$,C2 as Qg,C3 as _$,C4 as h$,C5 as Wg,C6 as S$,C7 as za,C8 as Le,C9 as g$,Ca as f$,Cb as Zg,v as Po,bt as Eo,Cc as v$,Cd as I$,Ce as Sc,Cf as b$,Cg as Xg,Ch as ef,Ci as tf,Cj as E$,Ck as T$,Cl as P$,Cm as gc,Cn as N$,Co as A$,Cp as O$,Cq as C$,Cr as x$,Cs as U$,Ct as af,Cu as k$,Cv as B$,Cw as rf,Cx as D$,Cy as J$,Cz as nf,CA as w$,CB as $$,CC as sf,CD as R$,CE as M$,CF as of,CG as cf,CH as df,CI as V$,CJ as Ka,CK as Ya,CL as L$,CM as lf,CN as rn,CO as fc,CP as F$,CQ as uf,CR as pf,CS as q$,CT as mf,CU as j$,CV as G$,CW as yf,CX as _f,CY as Yt,CZ as z$,C_ as hf,C$ as Ht,D0 as K$,D1 as Sf,D2 as gf,D3 as Y$,D4 as ff,D5 as H$,D6 as tP,D7 as Q$,D8 as W$,D9 as Z$,Da as vf,Db as X$,Dc as eR,Dd as If,De as tR,g2 as Fe,Df as vc,Dg as aR,Dh as bf,Di as rR,Dj as nR,Dk as Ic,Dl as xu,Dm as sR,Dn as oR,Do as Ef,Dp as Ns,Dq as iR,Dr as cR,Ds as dR,Dt as lR,Du as Tf,eA as uR,Dv as pR,Dw as mR,Dx as Pf,Dy as yR,Dz as Nf,DA as Qt,DB as _R,DC as Af,DD as Wt,DE as hR,DF as Of,DG as Cf,DH as xf,DI as Uf,DJ as kf,DK as aP,DL as Bf,DM as SR,DN as Df,DO as nn,DP as sn,DQ as Jf,DR as wf,DS as Ha,DT as gR,DU as fR,DV as vR,DW as IR,DX as $f,DY as Rf,DZ as bR,D_ as ER,D$ as As,E0 as TR,E1 as PR,E2 as Mf,E3 as NR,E4 as AR,E5 as Vf,E6 as OR,E7 as Lf,E8 as CR,E9 as xR,Ea as Ff,Eb as UR,Ec as qf,Ed as kR,Ee as BR,Ef as Os,Eg as DR,Eh as JR,Ei as wR,Ej as $R,Ek as RR,El as jf,Em as MR,En as Gf,Eo as VR,Ep as LR,Eq as FR,Er as zf,Es as Kf,Et as qR,Eu as jR,Ev as GR,Ew as zR,Ex as KR,Ey as YR,Ez as HR,EA as QR,EB as WR,EC as ZR,ED as bc,EE as Yf,EF as Hf,EG as Qf,EH as Wf,EI as Zf,EJ as Xf,EK as ev,EL as XR,EM as e1,EN as t1,EO as a1,EP as r1,EQ as n1,ER as s1,ES as o1,ET as i1,EU as c1,EV as d1,EW as l1,EX as tv,EY as av,EZ as rv,E_ as nv,E$ as u1,e_ as p1,eM as m1,F0 as y1,F1 as sv,F2 as ov,F3 as iv,F4 as _1,F5 as Qa,F6 as Wa,F7 as h1,F8 as Zt,F9 as cv,Fa as S1,Fb as dv,Fc as Xt,Fd as g1,Fe as lv,Ff as f1,Fg as uv,Fh as v1,Fi as I1,Fj as pv,Fk as da,Fl as rP,Fm as nP,Fn as b1,Fo as Ec,Fp as Za,e6 as mv,Fq as E1,Fr as T1,Fs as P1,Ft as Cs,Fu as N1,Fv as A1,Fw as O1,Fx as Tc,Fy as C1,Fz as yv,FA as Pc,FB as _v,FC as Nc,FD as hv,FE as x1,FF as on,FG as Ac,FH as U1,FI as k1,FJ as B1,FK as xs,FL as Us,FM as D1,FN as J1,FO as w1,FP as Sv,FQ as $1,FR as ks,FS as R1,FT as Oc,FU as M1,FV as V1,FW as Cc,FX as gv,FY as cn,FZ as xc,F_ as L1,F$ as F1,G0 as dn,G1 as Uc,G2 as q1,G3 as j1,G4 as G1,G5 as z1,G6 as K1,G7 as kc,G8 as Y1,G9 as H1,Ga as fv,Gb as vv,Gc as Bc,Gd as Q1,Ge as Iv,Gf as W1,Gg as Z1,Gh as bv,Gi as Dc,Gj as X1,Gk as eM,Gl as Ev,Gm as tM,Gn as aM,Go as rM,Gp as Jc,Gq as nM,Gr as Tv,Gs as sM,Gt as Qe,Gu as $e,Gv as oM,Gw as wc,Gx as Pv,Gy as Nv,Gz as iM,GA as Av,GB as cM,GC as Ov,GD as dM,GE as lM,GF as uM,GG as Cv,GH as pM,GI as xv,GJ as mM,GK as yM,GL as _M,GM as Uv,GN as hM,GO as SM,GP as kv,GQ as gM,GR as fM,GS as Bv,gG as Dv,GT as Jv,GU as vM,GV as IM,GW as wv,GX as bM,GY as $v,GZ as EM,G_ as TM,G$ as Rv,H0 as PM,H1 as NM,H2 as Mv,H3 as AM,H4 as OM,H5 as Vv,H6 as CM,H7 as $c,H8 as xM,H9 as UM,Ha as kM,Hb as Lv,Hc as Fv,Hd as BM,He as DM,Hf as qv,Hg as JM,Hh as Nt,Hi as wM,Hj as jv,Hk as $M,Hl as Bs,Hm as Gv,Hn as Rc,Ho as zv,Hp as Ds,Hq as RM,Hr as Mc,Hs as Vc,Ht as Kv,Hu as Xa,Hv as Js,Hw as Lc,Hx as Yv,Hy as tt,Hz as at,HA as ln,HB as Fc,HC as Hv,HD as qc,HE as MM,HF as fu,HG as vu,HH as VM,HI as LM,HJ as FM,HK as Qv,HL as qM,HM as qe,HN as er,HO as jM,HP as Wv,HQ as GM,HR as un,HS as jc,HT as zM,HU as Gc,HV as KM,HW as Zv,HX as YM,HY as Xv,HZ as HM,H_ as eI,H$ as QM,I0 as WM,I1 as tI,I2 as ZM,I3 as zc,I4 as aI,I5 as rI,I6 as Kc,I7 as nI,I8 as sI,I9 as oI,Ia as XM,Ib as iI,cO as cI,cN as dI,bG as lI,Ic as uI,Id as pI,Ie as eV,If as tV,Ig as mI,Ih as aV,Ii as rV,Ij as yI,Ik as nV,Il as _I,Im as ut,In as ea,Io as ta,Ip as hI,Iq as sV,Ir as SI,Is as ws,It as oV,Iu as iV,Iv as Yc,Iw as Hc,Ix as tr,Iy as cV,Iz as dV,IA as Iu,IB as lV,IC as uV,ID as gI,IE as Qc,IF as bu,IG as sP,IH as oP,II as iP,IJ as pV,IK as mV,bM as Uu,IL as fI,IM as yV,IN as vI,IO as $s,IP as Wc,IQ as Zc,IR as _V,IS as Xc,IT as hV,IU as II,IV as SV,IW as bI,IX as ed,IY as td,IZ as ad,I_ as Rs,I$ as rd,J0 as nd,J1 as gV,J2 as fV,J3 as vV,J4 as EI,J5 as TI,J6 as IV,J7 as bV,J8 as EV,J9 as TV,dQ as PV,Ja as NV,Jb as cP,Jc as AV,Jd as dP,cJ as OV,Je as To,Jf as CV,Jg as xV,Jh as UV,Ji as kV,Jj as BV,Jk as DV,Jl as sd,Jm as JV,Jn as wV,Jo as $V,dP as PI,Jp as RV,Jq as MV,Jr as od,Js as VV,Jt as LV,Ju as Ms,Jv as FV,Jw as qV,Jx as id,Jy as NI,Jz as AI,JA as jV,JB as OI,JC as CI,JD as xI,JE as GV,JF as zV,JG as KV,JH as UI,JI as kI,JJ as YV,JK as HV,JL as cd,JM as QV,JN as WV,JO as ZV,JP as XV,JQ as BI,JR as eL,JS as tL,JT as aL,JU as DI,JV as rL,dl as nL,JW as sL,JX as JI,JY as oL,JZ as iL,J_ as wI,J$ as cL,K0 as dd,K1 as dL,K2 as lL,K3 as $I,K4 as uL,K5 as ld,K6 as pL,K7 as mL,K8 as yL,K9 as ud,Ka as _L,Kb as pd,Kc as hL,Kd as Vs,Ke as SL,Kf as gL,Kg as fL,Kh as md,Ki as vL,Kj as IL,Kk as bL,Kl as EL,Km as TL,Kn as yd,Ko as PL,Kp as NL,fX as AL,fY as OL,Kq as CL,fI as xL,Kr as UL,Ks as kL,Kt as Ls,Ku as BL,g0 as RI,Kv as DL,Kw as MI,Kx as JL,Ky as VI,gz as LI,Kz as FI,KA as wL,KB as $L,KC as RL,KD as ML,KE as VL,KF as _d,KG as LL,KH as qI,KI as aa,KJ as FL,KK as jI,KL as qL,KM as hd,KN as pt,KO as Sd,KP as Fs,KQ as jL,KR as GL,KS as gd,g4 as ra,KT as pn,KU as zL,KV as KL,KW as GI,KX as YL,KY as HL,KZ as QL,K_ as zI,K$ as WL,L0 as fd,L1 as ZL,L2 as XL,L3 as eF,L4 as vd,L5 as tF,L6 as aF,L7 as Id,L8 as KI,L9 as rF,La as bd,Lb as nF,Lc as Ed,Ld as sF,Le as Td,Lf as oF,Lg as Pd,Lh as iF,Li as Nd,Lj as cF,Lk as Ad,Ll as dF,Lm as Od,Ln as lF,Lo as Cd,Lp as ar,Lq as mn,Lr as uF,Ls as YI,Lt as HI,g3 as pF,Lu as xd,Lv as qs,Lw as QI,Lx as mF,Ly as WI,Lz as yF,LA as ZI,LB as _F,LC as XI,LD as hF,LE as Ud,LF as SF,LG as gF,LH as eb,LI as fF,LJ as vF,LK as tb,LL as IF,LM as kd,LN as bF,LO as Bd,LP as EF,LQ as Dd,LR as Jd,LS as TF,LT as PF,LU as ab,LV as NF,LW as rb,LX as AF,LY as OF,LZ as CF,L_ as xF,L$ as js,M0 as UF,M1 as kF,M2 as BF,M3 as yn,M4 as DF,M5 as JF,M6 as wF,M7 as nb,M8 as $F,M9 as RF,Ma as sb,Mb as MF,Mc as VF,Md as ob,Me as ib,Mf as cb,Mg as LF,Mh as FF,Mi as db,Mj as qF,Mk as lb,Ml as jF,fN as GF,Mm as ub,Mn as pb,Mo as zF,Mp as Gs,Mq as KF,Mr as YF,Ms as mb,g5 as HF,Mt as QF,Mu as wd,Mv as WF,Mw as ZF,Mx as XF,My as yb,bZ as eq,Mz as tq,MA as aq,MB as rq,MC as nq,MD as sq,ME as oq,MF as iq,MG as cq,MH as dq,MI as lq,MJ as uq,MK as _b,ML as $d,MM as pq,MN as Rd,MO as hb,MP as mq,MQ as Sb,MR as yq,MS as _q,MT as gb,MU as hq,MV as Sq,MW as fb,MX as gq,MY as fq,MZ as vb,M_ as vq,M$ as Iq,N0 as Ib,N1 as bq,N2 as Eq,N3 as bb,N4 as Tq,N5 as Pq,N6 as Nq,N7 as Aq,N8 as Oq,N9 as Cq,Na as Eb,Nb as xq,Nc as Md,Nd as Tb,Ne as Uq,Nf as Vd,Ng as kq,Nh as rr,Ni as Ld,Nj as Fd,Nk as Bq,Nl as qd,Nm as zs,Nn as jd,No as Gd,Np as zd,Nq as Pb,Nr as Dq,Ns as Jq,Nt as Kd,Nu as wq,Nv as Nb,Nw as $q,Nx as Rq,Ny as Mq,Nz as Vq,NA as Yd,NB as Lq,NC as Hd,ND as Ab,NE as Fq,NF as Qd,NG as Ob,NH as qq,NI as jq,NJ as Cb,NK as Gq,NL as zq,NM as xb,NN as Kq,NO as Ks,NP as Ub,NQ as Wd,NR as Yq,NS as Zd,NT as Hq,NU as kb,NV as Ys,NW as Qq,NX as Wq,NY as Zq,NZ as Xq,N_ as Xd,N$ as ej,O0 as tj,O1 as aj,O2 as Bb,O3 as rj,O4 as nj,O5 as Db,O6 as sj,O7 as el,O8 as Jb,O9 as wb,Oa as tl,Ob as $b,Oc as Rb,Od as oj,Oe as Mb,Of as Vb,Og as ij,Oh as cj,Oi as Lb,Oj as dj,Ok as lj,Ol as Fb,Om as uj,On as qb,Oo as al,Op as jb,Oq as pj,Or as Gb,Os as zb,Ot as mj,Ou as yj,Ov as _j,Ow as hj,Ox as Kb,Oy as Hs,Oz as Sj,OA as gj,OB as rl,OC as nl,OD as nr,OE as fj,OF as vj,OG as Ij,OH as Yb,OI as bj,OJ as sl,OK as ol,OL as il,OM as cl,ON as dl,OO as ll,OP as Ej,OQ as Hb,OR as Tj,OS as Qb,OT as Pj,OU as Wb,OV as Nj,OW as Aj,OX as Zb,OY as Oj,OZ as Xb,O_ as Cj,O$ as e0,P0 as xj,P1 as t0,P2 as a0,P3 as Uj,P4 as kj,P5 as r0,P6 as Bj,P7 as ul,P8 as Dj,P9 as pl,Pa as Jj,Pb as wj,Pc as ml,Pd as $j,Pe as yl,Pf as Rj,Pg as Qs,Ph as na,Pi as _n,Pj as Ws,Pk as _l,Pl as Mj,Pm as n0,Pn as Vj,Po as s0,Pp as Lj,Pq as hl,Pr as Fj,Ps as o0,Pt as qj,Pu as jj,Pv as i0,Pw as Gj,Px as c0,Py as zj,Pz as Sl,PA as d0,PB as Zs,PC as l0,PD as Kj,PE as u0,PF as Yj,PG as Hj,PH as Qj,PI as p0,PJ as Wj,PK as gl,PL as Zj,PM as fl,PN as Xj,PO as eG,PP as tG,PQ as m0,PR as aG,PS as y0,PT as _0,PU as rG,PV as h0,PW as nG,PX as S0,PY as g0,PZ as sG,P_ as f0,P$ as v0,Q0 as oG,Q1 as iG,Q2 as I0,Q3 as cG,Q4 as b0,Q5 as E0,Q6 as dG,Q7 as T0,Q8 as lG,Q9 as P0,Qa as N0,Qb as uG,Qc as pG,Qd as A0,Qe as mG,Qf as yG,Qg as O0,Qh as C0,Qi as _G,Qj as vl,Qk as Xs,Ql as hG,Qm as SG,Qn as Eu,Qo as gG,Qp as fG,Qq as Il,Qr as vG,Qs as IG,Qt as bl,Qu as bG,Qv as x0,Qw as EG,Qx as TG,Qy as U0,Qz as k0,QA as PG,QB as B0,QC as NG,QD as AG,QE as D0,QF as OG,QG as Tu,QH as No,QI as Ct,QJ as ua,QK as CG,QL as xG,QM as El,QN as J0,bB as Ao,QO as UG,QP as Tl,QQ as kG,QR as BG,QS as DG,QT as w0,QU as eo,QV as JG,QW as Pl,QX as pr,QY as wG,QZ as lP,Q_ as $G,Q$ as to,R0 as Nl,R1 as RG,R2 as MG,R3 as Al,R4 as VG,R5 as LG,R6 as yr,R7 as FG,R8 as qG,R9 as jG,Ra as $0,Rb as GG,Rc as zG,Rd as R0,Re as M0,Rf as Ol,Rg as KG,Rh as YG,Ri as V0,Rj as HG,Rk as L0,Rl as QG,Rm as Cl,Rn as F0,Ro as WG,Rp as ZG,Rq as XG,Rr as ez,Rs as q0,Rt as xl,Ru as tz,Rv as j0,Rw as az,Rx as Ul,Ry as rz,Rz as G0,RA as z0,RB as nz,RC as sz,RD as oz,RE as K0,gM as iz,RF as cz,RG as dz,RH as Y0,RI as lz,RJ as H0,RK as uz,RL as Q0,RM as pz,RN as mz,RO as yz,RP as W0,RQ as _z,RR as hz,RS as Sz,RT as gz,RU as fz,RV as vz,RW as kl,RX as Iz,RY as bz,RZ as Z0,R_ as Ez,R$ as Tz,S0 as Pz,S1 as Nz,S2 as Az,S3 as Oz,S4 as X0,S5 as Cz,S6 as xz,S7 as eE,S8 as Uz,S9 as kz,Sa as Bz,Sb as tE,Sc as sr,Sd as aE,Se as Bl,Sf as rE,Sg as nE,Sh as ao,Si as sE,Sj as Dz,Sk as ro,Sl as Jz,Sm as wz,Sn as $z,So as Rz,Sp as Mz,Sq as Vz,Sr as Lz,Ss as Fz,St as oE,Su as iE,Sv as cE,Sw as qz,Sx as dE,Sy as lE,Sz as uE,SA as jz,SB as pE,SC as mE,SD as yE,SE as Gz,SF as _E,SG as hE,SH as SE,SI as zz,SJ as gE,SK as Kz,SL as fE,SM as Yz,SN as Hz,SO as Qz,SP as Wz,SQ as vE,SR as no,SS as Zz,ST as Xz,SU as uP,SV as IE,SW as eK,SX as tK,SY as aK,SZ as rK,S_ as bE,S$ as nK,T0 as EE,T1 as sK,T2 as TE,T3 as oK,T4 as iK,T5 as cK,T6 as PE,T7 as dK,T8 as NE,T9 as lK,Ta as Dl,Tb as uK,Tc as Jl,Td as AE,Te as pK,Tf as OE,Tg as mK,Th as yK,Ti as _K,Tj as wl,Tk as hK,Tl as SK,Tm as gK,Tn as fK,To as vK,Tp as IK,Tq as CE,Tr as bK,Ts as EK,Tt as xE,Tu as TK,Tv as $l,Tw as PK,Tx as Rl,Ty as hn,Tz as Ml,TA as NK,TB as Pu,TC as AK,TD as OK,TE as UE,TF as kE,TG as CK,TH as Vl,TI as xK,TJ as UK,TK as kK,TL as BK,TM as DK,TN as BE,TO as JK,TP as wK,TQ as Ll,TR as $K,TS as RK,TT as Fl,TU as MK,TV as VK,TW as LK,TX as DE,TY as FK,TZ as JE,T_ as qK,T$ as wE,U0 as jK,U1 as ql,U2 as GK,U3 as zK,U4 as KK,U5 as YK,U6 as HK,U7 as QK,U8 as WK,U9 as ZK,Ua as XK,Ub as eY,Uc as tY,Ud as aY,Ue as rY,Uf as nY,Ug as sY,Uh as oY,Ui as iY,Uj as cY,Uk as dY,Ul as lY,Um as uY,Un as pY,Uo as mY,Up as yY,Uq as _Y,Ur as hY,Us as SY,Ut as gY,Uu as fY,Uv as vY,Uw as IY,Ux as bY,Uy as EY,Uz as TY,UA as PY,UB as NY,UC as AY,UD as OY}from"./zeni-epic-state-BlWDBO75.js";import"./sentry-bpmZUW7k.js";import"./core-BWRpGVdr.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]="77924183-c110-47d7-942c-d0f733f27c4b",n._sentryDebugIdIdentifier="sentry-dbid-77924183-c110-47d7-942c-d0f733f27c4b")}catch{}})();const jl=(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:JT(s),sectionId:r},accountMetadataPayload:i[a].accountMetadataPayload,accountBalancesPayload:n[a],classesViewParentID:t}):console.warn(`Account ${a} in Section ${r} is missing metadata.`)})),e},CY=(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:JT(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.`)}))},xY=n=>{typeof window<"u"&&(window.location.href=n)},UY=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:"",kY=["claimed","running","succeeded","failed","timeout"],BY=n=>{const i=n;return typeof i?.run_id=="string"&&i.run_id!==""},or=n=>n!=null&&n!==""?n:null,DY=n=>{return{runId:n.run_id,attempt:n.attempt??1,isManual:n.is_manual===!0,error:or(n.error),finishedAt:or(n.finished_at),questionAnswerId:or(n.question_answer_id),sessionId:or(n.session_id),scheduledFor:or(n.scheduled_for),startedAt:or(n.started_at),status:(i=n.status,kY.find((r=>r===i))??null)};var i},JY=["daily","weekly","monthly"],wY=["succeeded","failed","timeout"],$Y=n=>{const i=n;return typeof i?.schedule_id=="string"&&i.schedule_id!==""&&typeof i.name=="string"},RY=n=>JY.includes(n)?n:null,MY=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,wY.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:RY(n.recurrence),scheduleId:n.schedule_id,sessionId:n.session_id??null,tzName:n.tz_name??null,weekday:n.weekday??null};var i},VY=["private","tenant"],pP=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,VY.find((r=>r===i))??null)};var i},mP=n=>typeof n?.instructions=="string",Gl=n=>mP(n)&&n.skill!=null,zl=n=>({skill:{...pP(n.skill),exampleHints:[]},instructions:n.instructions,instructionsCharCount:n.instructions_char_count??n.instructions.length,artifact:n.artifact??"",artifactTitle:n.artifact_title??""}),LY=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}),$E=n=>typeof n=="string"&&n.trim()!=="",FY=n=>{if(n==null||typeof n!="object"||Array.isArray(n))return[];const i=Object.values(n).flatMap((r=>$E(r)?[r.trim()]:Array.isArray(r)?r.filter($E).map((t=>t.trim())):[]));return Array.from(new Set(i))},qY=n=>({...pP(n),exampleHints:FY(n.parameter_hints)}),jY=(n,i)=>({action:n,audit_rule_group_ids:[i]}),GY=n=>{switch(n){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}},zY=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}),RE=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:""}),KY=n=>({type:n.type,processor_token:n.processor_token,payment_source_type:n.payment_source_type}),YY=n=>({payment_method_types:n}),HY=n=>{switch(n){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}},QY=n=>{switch(n){case"month":return"months";case"quarter":return"quarters";case"year":return"years"}},ME=n=>({vendorName:n.name,vendorCategory:n.accountId,vendorClass:n.classId,vendorOwner:n.ownerId,vendorId:n.id}),so=(n,i,r)=>{const{contactState:t}=i,e={},a={},{documentIds:s}=n;s.forEach((d=>{e[d]=NO(i,d)})),s.forEach((d=>{a[d]=AO(i,d)}));const{recommendedAccount:o,recommendedClass:c}=OO(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=>CO(d))):wT(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}},Yl="agent_insights_subject",VE=(n,i,r)=>{const t={...n,...r,subject:i};return Yl in t&&r?.[Yl]==null&&i!=null&&i!==""&&(t[Yl]=i),t},WY=n=>(n?.categories??[]).some((i=>i.field==="tag")),ZY=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}},XY={creationDate:"create_time",dueDate:"due_date",tag:"tags"},eH=new Set(["create_time","due_date"]),tH=/^\d{4}-\d{2}-\d{2}$/,aH=(n,i)=>n.categories==null?[]:n.categories.flatMap((r=>{const t=r.field??"",e=XY[t]??t,a=eH.has(e);if(a&&r.values.length!==2)return[];const s=r.values.map(((o,c)=>{if(a)return((u,m)=>{if(typeof u=="string"&&tH.test(u))return m==="start"?`${u}T00:00:00.000Z`:`${u}T23:59:59.999Z`;const _=typeof u=="string"?Z(u):u;if(!(v=>v!=null&&typeof v.isValid=="function"&&typeof v.format=="function")(_)||!_.isValid())return"";const g=_.format("YYYY-MM-DD");return m==="start"?`${g}T00:00:00.000Z`:`${g}T23:59:59.999Z`})(o,c===0?"start":"end");const d=String(o);if(e!=="tags")return d;const l=i[d];return l==null&&console.debug(`[taskManager] unresolved tagId "${d}" sent to ES verbatim; expect no matches`),l??d}));return a&&s.some((o=>o===""))||a&&r.matchingOperator!=="equal"?[]:[{field:e,operator:a?"between":r.matchingOperator==="equal"?"is":"is_not",values:s,join:r.valuesCombinationOperator==="ALL"?"and":"or"}]})),rH=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},nH={Employees:"employees",Customers:"customers","Physical office or facility":"physical_office","Banking relationships":"banking_relationships"};function sH(n){return nH[n]??n}const oH=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},iH=n=>({tax_id:n.taxIdOrEIN,duns_id:n.dunsNumber,sic_code:n.sicCode,naics_code:n.naicsCode,taxes_filed_years:n.taxesFiledYears}),cH=(n,i)=>{const r=[];return n.fileId!=null&&r.push(n.fileId),i.fileId!=null&&r.push(i.fileId),{file_ids:r}},oo=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 Hl(n){const i={};return n.forEach((r=>{const t=r.company_id,e=Y(i,t,void 0);i[t]=[...e??[],r.subscription_id]})),i}function Ql(n){let i;return n.companyAddress!=null&&(i=Object.assign({},i,{company_address:fo(n.companyAddress)})),n.registeredAddress!=null&&(i=Object.assign({},i,{company_registered_address:fo(n.registeredAddress)})),n.companyOfficers.slice(0,Ou.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]:fo(e)}))})),i}const fo=n=>{const{updateTime:i,createTime:r,addressId:t,...e}=n;return e},LE=["company_address","company_registered_address",...Ou.map((n=>`officer_${n}_address`))];function Wl(){return[YC(),N({messageSection:"create_transfer_entry",messageText:"failed",type:"error"})]}function FE(n){return[QC(),WC(n),N({messageSection:"create_transfer_entry",messageText:"success",type:"success"})]}function qE(n){return cr(0).pipe(y((()=>{const i=[ZC()];return n!=null&&i.push(...(function(r){return[_u(Be(r)),hu(r),XC()]})(n)),h(i)})))}const dH={transferEntryEligible:"transfer_accounts",creditCardOnlyEligible:"credit_card_transfer_accounts"},lH={transferEntryEligible:{is_only_include_transfer_accounts:!0},creditCardOnlyEligible:{is_include_only_credit_card_accounts:!0}};function jE(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 GE(n){switch(n){case"exclude":return"Excluding Transaction";case"reconcile":return"Reconciling";case"save_reconcile_for_later":return"Saving for Later"}}function zE(n){return n.filter((i=>i.is_checked_transaction===!0)).map((i=>i.transaction_id))}const uH=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}}),{}),pH=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 mH(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 yH=(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}),_H=n=>n?.recommendedAction.action==="record_bill_payment"?"recon_transaction_match":"recon_transaction_categorize",KE=(n,i)=>{const{statementMeta:r,statementTransactions:t}=i,e=Hx(r,n.statementMeta),a=n.statementTransactions?.deletedIds??[],s=new Set(t.filter((u=>u.statementTransactionId!==""&&!a.includes(u.statementTransactionId))).map((u=>u.statementTransactionId))),o=Qx(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 YE(n,i,r){if(n.length===0)return{count:0,totalAmount:{amount:0,...r}};let t=0,e=ca(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 hH=(n,i)=>({action:uU(n),flux_analysis_entity_ids:i}),SH="prepaid_expenses",gH="fixed_assets",fH="accrued_expenses";function vH(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 IH(n,i,r){return n.currency_symbol!=null&&n.currency_symbol!==""?n.currency_symbol:r!=null&&i===r.currencyCode?r.currencySymbol:i}function bH(n){return{accrualId:n.accrual_id,status:hU(n.status),reason:n.reason??void 0}}function EH(n){return{accrualId:n.accrual_id,status:SU(n.status),reason:n.reason??void 0}}function Zl(n){const i=vU(n);if(i==null)return[];const r=Re(i),t=ge(r.start),e=ge(r.end);return t==null||e==null?[]:[Su({start:t,end:e},!0)]}function Xl(n,i){return N({messageSection:"actual_matching_ignore_suggestion",messageText:i?"success":"failed",type:i?"success":"error",variables:[{variableName:"_vendor_name_",variableValue:n}]})}function HE(n){return N({messageSection:"actual_matching_match_and_reverse",messageText:"failed",type:"error",variables:[{variableName:"_count_",variableValue:"0"},{variableName:"_vendor_name_",variableValue:n}]})}function eu(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 vo="YYYY-MM",TH=(n,i)=>{const{classListState:r,classState:t}=n,e=_a(t,r).classes.find((s=>s.labels?.includes("balance_sheet")===!0)),a=i.reverseNextMonth?{reverse_next_month:!0,expected_reversal_date:PH(i.serviceMonth).format(re)}:{reverse_next_month:!1};return{vendor_id:i.vendorId,vendor_name:i.vendorName,service_month:i.serviceMonth.format(vo),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}},PH=n=>n.add(1,"month").startOf("month"),NH=(n,i)=>i!=null?i.amount:n.amount.amount,AH=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}:{}}),OH={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 tu(n){const i=n.expenseAutomationViewState.selectedPeriodByTenantId[Q(n).tenantId];if(i==null)return[];const r=Re(i),t=ge(r.start),e=ge(r.end);return t==null||e==null?[]:[lr({start:t,end:e},!0)]}function sa(n,i,r,t){return[nk({accrualId:i,status:t??f("Unexpected Error",r)}),N({messageSection:n,messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:r}]})]}function au(n){const i=ye().startOf("day"),r=i.subtract(n-1,"day");return{end:i.format(re),start:r.format(re)}}function QE(n,i){return n.length===0?$:h(n).pipe(y((r=>i.getJSON(`${i.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/batches/${r}`).pipe(y((t=>{if(!T(t)||t.data==null||!yo(t.data.status))return $;const e=[],a=_o(t.data.files);return a.length>0&&e.push(De(a,(s=>s.transaction_id))),e.push(mo(ho(t.data,i.apiEndPoints.fileMicroServiceBaseUrl))),h(e)})),I((t=>(console.error(`Failed to fetch batch details for ${r}:`,f("Unexpected Error","Fetch batch details errored out: "+JSON.stringify(t))),p($T({batchId:r}))))))),5))}const ir="review";function CH(n,i){const r={...n};for(const t of Object.keys(i))r[t]={...n[t],...i[t]};return r}const xH=(n,i,r,t,e=!1,a,s)=>{const o=FT(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}},yP=(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}=VT(n);return{...i,min:t,max:e,reason:"",type:""}}},_P=(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}=VT(n);return{...i,min:t,max:e,reason:"",type:""}}},UH=(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,hP=(n,i)=>{const r=n.lines;if(i===!0&&(Tn(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||RT(n.type)&&n.vendor==null||So(n.type)&&a.vendor==null&&a.customer==null)&&(t=!0)}})),t},kH=(n,i,r)=>{const t={updatesByLineId:{}},e={},a={},s=hP(i,!0),o=((u,m)=>{const _=u.lines;let g=!1;return _?.forEach((v=>{v.type!=="transaction_with_account_and_class_line"&&v.type!=="transaction_with_product_or_service_line"&&v.type!=="journal_entry_transaction_line"||MT(m,v.account.qboId)&&(g=!0)})),g})(i,r);t.memo=n.memo;const c=n.selectedEntity;let d,l;return Tn(i)===!0&&c!=null&&c.type==="vendor"&&(t.vendorId=c.qboId),qk(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,_=DH(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:LT(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 v=!1,b=!1;const E=u;v=g.account?.qboId!==E.account.qboId&&!!g.account?.qboId,b=(g.class?.qboId!=null||E.class?.qboId!=null)&&g.class?.qboId!==E.class?.qboId;const P=yP(g.amount.amount,g.account),O=_P(g.amount.amount,g.class);if(_!=null&&(v===!0||b===!0)){d=v===!0?P:void 0,l=b===!0?O:void 0;const x={account:d,class:l};if(x.class!=null||x.account!=null){const U=_.entityId;BH(a,U,_.entityType,x,!1,void 0,_.entityName)}}}})),t.updatesByLineId=e,{transactionId:i.id,updates:t,entityRelatedUpdates:a,markAsMiscatUpdates:s===!0&&o===!1,anyBulkUpdates:!1}},BH=(n,i,r,t,e=!1,a,s)=>{const o=FT(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}},DH=(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,JH=(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((_=>{if(_.id===l){const g=Object.assign({},_);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[_.id]=u.recommendation);const v=t[r],b=v?.find((E=>E.lineId===_.id));return b!=null&&(g.cotViewingFlags={vendor:b.vendor,category:b.category,class:b.class,lineId:b.lineId}),g}return _}));o.lines=m}let d;return o.recommendations=c,d=qT(o)?jT(o):Tn(o)?s!=null&&s.type==="customer"?GT(o,a):zT(o,e):KT(o)?YT(o):HT(o),QT(d,o)},wH=n=>{const i=[];let r;for(r in n){const t=n[r],e={recommendations:WT(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},SP=n=>({user_id:n.user_id,first_name:n.first_name?.trim(),last_name:n.last_name?.trim(),email:""}),gP=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},Io=(n,i)=>{const r=[];n.map(((e,a)=>{const s=[];e.globalMerchants.forEach(((o,c)=>{const d=Cu(o);s[c]={...En(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=gP(o);s[c]={...En(d,["create_time","update_time"])}})),t[a]={global_merchants:s}})),[{global_merchants:[...r[0]?.global_merchants??[],...t[0]?.global_merchants??[]]}]},fP=n=>{const i=[];return n[0]?.global_merchants.forEach((r=>{r.global_merchant_id!=null&&i.push(r)})),i},$H=(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},RH=new Set(["time","action"]),Ne=n=>{const i=n?.message?.trim()??"";if(i!=="")return[{variableName:"_api-error_",variableValue:i}]},WE=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",ZE={type:"plan"},XE={type:"addon|charge"},Sn=(n,i)=>i.pipe(y((r=>T(r)&&r.data!=null?((t,e)=>[XT(e),WB(e.id),ZB(t),eP(),ZT()])(n,r.data):p(Dh({kind:n,error:r.status})))),I((r=>p(Dh({kind:n,error:f("Unexpected Error",`Data import ${n} REST API call errored out `+JSON.stringify(r))}))))),ru=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",pa=n=>n.trim()!==""?n.trim():void 0,vP=n=>n.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,""),nu=(n,i,r,t)=>{const e=n.catalogType==="addon",a=nD(i.pricingModel),s=i.name.trim(),o=pa(i.priceCode)??vP(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=pa(i.description);d!=null?c.description=d:r&&(c.description=null);const l=pa(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,_)=>{const g={};m.sku.trim()!==""&&(g.sku=m.sku.trim());const v=_.accountByQboId(m.accountingCode.trim());v!=null&&(g.account=dr(v));const b=_.classByQboId(m.accountingCategory.trim());return b!=null&&(g.accounting_class=vn(b)),Object.keys(g).length>0?g:void 0})(i,t);return u!=null&&(c.accounting_detail=u),c},io=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",MH={archive:"invoicing_discount_archive",delete:"invoicing_discount_delete",unarchive:"invoicing_discount_unarchive"},su=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",oa=n=>n.trim()!==""?n.trim():void 0,ou=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",ma=n=>n!=null&&n!==""?Z(n):void 0,VH=n=>n.entity_type==="item_level_coupon",LH=n=>n.entity_type==="document_level_coupon"||n.entity_type==="item_level_coupon",FH=(n,i)=>{if(n.discount_amount<=0)return;const r=i.filter(VH),t=n.id!=null?r.filter((a=>a.line_item_id===n.id)):[];if(t.length>0)return[...new Set(t.map((a=>a.description)))].join(", ");const e=[...new Set(r.map((a=>a.description)))];return e.length===1?e[0]:void 0},qH=n=>{const i=new Map;return n.filter(LH).forEach((r=>{const t=r.entity_id!=null&&r.entity_id!==""?r.entity_id:r.description,e=`${r.entity_type}:${t}`,a=i.get(e);i.set(e,{amount:Math.round(100*((a?.amount??0)+r.amount))/100,description:r.description})})),[...i.values()]},iu=(n,i)=>n==null?void 0:{amountDue:i(n.amount_due),couponDiscountTotal:i(n.coupon_discount_total),coupons:qH(n.discounts??[]).map((r=>({amount:i(r.amount),description:r.description}))),creditsApplied:i(n.credits_applied),dueDate:ma(n.due_date),grossSubTotal:i(n.gross_sub_total),invoiceDate:ma(n.invoice_date),lineItems:n.line_items.map((r=>({amount:i(r.amount),dateFrom:ma(r.date_from),dateTo:ma(r.date_to),description:r.description,discountAmount:i(r.discount_amount),discountLabel:FH(r,n.discounts??[]),grossAmount:i(r.gross_amount??r.amount),quantity:r.quantity,taxAmount:r.tax_amount!=null?i(r.tax_amount):void 0,unitAmount:i(r.unit_amount)}))),promotionalCreditsApplied:i(n.promotional_credits_applied),subTotal:i(n.sub_total),tax:n.tax!=null?i(n.tax):void 0,total:i(n.total)},jH=n=>{const i=e=>la(e,n.currency_code,n.currency_symbol),r=n.subscription_estimate,t=n.proration_estimate;return{invoice:iu(n.invoice_estimate,i),nextInvoice:iu(n.next_invoice_estimate,i),proration:t!=null?{documentType:t.document_type,invoice:iu(t.invoice_estimate,i),net:i(t.net)}:void 0,reason:n.reason,term:r!=null?{becomesNonRenewing:r.becomes_non_renewing_after_this_term===!0,currentTermEnd:ma(r.current_term_end),currentTermStart:ma(r.current_term_start),nextBillingAt:ma(r.next_billing_at)}:void 0,willBeInvoiced:n.will_be_invoiced}},eT=n=>(n??"").trim().toUpperCase(),tT=(n,i)=>eT(n)!==eT(i),aT=(n,i)=>{const r=n.editInvoicingSubscriptionDetailViewState,t=(i!=null?r.editDraftById[i]?.localData:r.newSubscriptionDraft)??r.newSubscriptionDraft,e=n.addressViewState.newAddressState?.[ur]?.addressToCreate,a=((o,c,d=new Set)=>{const l=(E,P)=>d.has(E)?1:wD(P),u=[{item_price_code:o.planPriceCode,item_type:"plan",quantity:l(o.planPriceCode,o.planQuantity)},...o.addonPriceCodes.map((E=>({item_price_code:E,item_type:"addon",quantity:l(E,o.addonQuantities[E])}))),...o.chargePriceCodes.map((E=>({item_price_code:E,item_type:"charge",quantity:l(E,o.chargeQuantities[E])})))],m=o.setupFee?.amount,_=o.poNumber.trim(),g=o.trialEnd.trim(),v=o.startedAt.trim(),b=DD(o.remainingBillingCycles);return{auto_collection:o.autoCollection?"on":"off",currency_code:o.preferredCurrencyCode,customer_id:o.customerId,started_at:v!==""?v:JD(),subscription_items:u,...m!=null?{setup_fee:m}:{},..._!==""?{po_number:_}:{},...g!==""?{trial_end:g}:{},...b!=null?{remaining_billing_cycles:b}:{},...o.couponId!==""?{coupon_ids:[o.couponId]}:{},...c!=null?{shipping_address:Je(c)}:{}}})(t,e,new Set(RD(Object.values(n.invoicingCatalogState.itemByID)).filter((o=>!MD(o.pricingModel))).flatMap((o=>o.priceCode??[]))));i!=null&&delete a.coupon_ids;const s=i!=null?n.invoicingSubscriptionState.invoicingSubscriptionByID[i]?.coupons?.[0]:void 0;return{data:a,localData:t,previousCouponCode:s?.couponCode??s?.couponID??""}},GH={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"},rT=n=>(n??"").trim().toUpperCase(),nT=(n,i,r,t,e)=>n.postAndGetJSON(`${i}/subscriptions/${encodeURIComponent(r)}/${t}`,{coupon_code:e}).pipe(Ee((a=>T(a)?{success:!0,payload:a.data??null}:{success:!1,payload:null,status:a.status})),I((a=>p({success:!1,payload:null,status:f("Unexpected Error",`${t} REST API call errored out `+JSON.stringify(a))})))),sT=n=>n.status??f("Unexpected Error","Coupon sync failed without a status"),oT=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",zH={regenerate:"invoicing_invoice_regenerated","send-reminder":"invoicing_invoice_reminder_sent",void:"invoicing_invoice_voided"},cu=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",du=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",iT=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",KH={cancel:"invoicing_dunning_cancel",resolve:"invoicing_dunning_case_resolved",retry:"invoicing_dunning_retry"},cT=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress",At=(n,i)=>i||n.fetchState!=="Completed"&&n.fetchState!=="In-Progress";function dT(n){return{connected:n.connected,companyName:n.company_name??void 0,connectionId:n.connection_id??void 0,realmId:n.realm_id??void 0}}const YH=(n,i)=>{if(i==null)return[];const r=Mw(n,i),t=Vw(i),e=Lw(i),a=Fw(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[]},HH=(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)},lT=(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},QH=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},WH=new Set(["employees","customers","physical_office","banking_relationships"]),ZH={Employees:"employees",Customers:"customers","Physical office or facility":"physical_office","Banking relationships":"banking_relationships"};function XH(n){return WH.has(n)?n:ZH[n]??n}const uT=(n,i,r,t,e)=>{const{companyDescription:a,companyLegalName:s,companyIndustry:o,companyIndustryType:c,companySubIndustry:d,countriesOfOperations:l,companySourceOfFunds:u,companySourceOfFundsDescription:m,transactionVolume:_,transactionVolumeDescription:g,purposeOfAccount:v,purposeOfAccountDescription:b,regulatedStatus:E,regulatedStatusDescription:P,usNexus:O,usNexusTypes:x,website:U,incDate:k,taxIdOrEIN:C,phone:B,syncToken:J,fileIds:L,typeOfIncorporation:M,stateOfIncorporation:q,sourceOfFunds:R}=n,D={is_ready_for_verification:i,file_ids:L},w=r!=null?Je(r):void 0,z=t!=null?Je(t):void 0;return Po(r!=null?Eo(r):r,t!=null?Eo(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),z!=null&&(D.registered_address=z),M!=null&&(D.company_inc_type=M),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},..._!=null&&{company_transaction_vol_expectations:_},...g!=null&&{company_transaction_vol_expectations_desc:g},...v!=null&&{company_purpose_of_account:v},...b!=null&&{company_purpose_of_account_desc:b},...E!=null&&{company_regulated_states:E==="yes"},...P!=null&&{company_regulated_states_desc:P},...O!=null&&{company_us_nexus:O==="yes"},...x!=null&&x.length>0&&{company_us_nexus_desc:x.map(XH)}}),e==="zeni_treasury"&&R!=null&&(D.source_of_funds=R),D.is_new_company_industry_verified=!0,D},pT=(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},mT=(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:_,titleAtCompany:g,ownershipInCompany:v,documentTypeSelectedForVerification:b,fileIds:E,additionalSubmittedDocumentsForVerificationFileIds:P}=n,O={first_name:t,last_name:e,file_ids:E},x=r!=null?Je(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=v??null,O.document_type_for_verification=b??"",O.nationality_country_code=l??"",x!=null&&(O.address=x),m!=null&&_===!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:P}),O},eQ=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"),""}},tQ=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},aQ=(n,i)=>{const r=n.companyIndustryType!==i?.companyIndustryType;return{company_business_model:n.companyBusinessModel,company_industry_type:n.companyIndustryType,...r&&i?.companySubIndustry!=null&&{company_industry_sub_type:null}}},rQ=(n,i,r)=>{const{syncToken:t}=n;return{company:{sync_token:t,...i!=null&&{subscription_billing_address:Je(i)},...r}}};function yT(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:_,syncToken:g,sourceOfFunds:v,companySourceOfFunds:b,companySourceOfFundsDescription:E,countriesOfOperations:P,transactionVolume:O,transactionVolumeDescription:x,purposeOfAccount:U,purposeOfAccountDescription:k,regulatedStatus:C,regulatedStatusDescription:B,usNexus:J,usNexusTypes:L}=e,{usersSelectedForVerification:M}=c,{fileIds:q,companyIncDate:R,companyIncType:D,companyIncState:w,companySubIndustry:z,companyIndustryType:ee}=a,{companyIndustry:W}=o,{taxId:pe}=s,ne={companyId:d,companyDescription:l,companyIndustry:W,companyIndustryType:ee,companyLegalName:u,companySubIndustry:z,companySourceOfFunds:b,companySourceOfFundsDescription:E,countriesOfOperations:P,taxIdOrEIN:pe,incDate:R,phone:_,website:m,fileIds:q,syncToken:g,typeOfIncorporation:D,sourceOfFunds:v,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:Te,lastName:le,email:Pe,userId:ha,syncToken:Sa}=t;ae={userId:ha,firstName:Te,lastName:le,email:Pe,syncToken:Sa}}const me=i.slice(0,Ou.length).sort(((Te,le)=>Te.createTime?.isAfter(le.createTime)===!0?1:-1));let he=M?.[0]!=null?me.findIndex((Te=>Te.userId===M[0])):0;he<0&&(he=0);const we=me.map(((Te,le)=>{const{userId:Pe,firstName:ha,lastName:Sa,birthday:ga,email:AP,nationalityCountryCode:OP,phone:CP,isPhoneVerified:xP,ssn:UP,syncToken:kP}=Te,nt=r.find((BP=>BP.userId===Pe));return{officerType:`Officer_${le+1}`,userId:Pe,firstName:ha,lastName:Sa,birthday:ga,email:AP,nationalityCountryCode:OP,phone:CP,isPhoneVerified:xP,ssn:UP,fileIds:nt?.fileIds??[],syncToken:kP,isSelectedForVerification:he===le,documentTypeSelectedForVerification:nt?.documentTypeSelectedForVerification,titleAtCompany:nt?.titleAtCompany,ownershipInCompany:nt?.ownershipInCompany,userVerificationStatus:nt?.userVerificationStatus,treasuryUserVerificationStatus:nt?.treasuryUserVerificationStatus,additionalDocumentTypesRequestedForVerification:nt?.additionalDocumentTypesRequestedForVerification??[],additionalSubmittedDocumentsForVerificationFileIds:nt?.additionalSubmittedDocumentsForVerificationFileIds??[],areAdditionalDocumentsRequestedForVerification:nt?.areAdditionalDocumentsRequestedForVerification??!1,areAdditionalDocumentsSubmittedForVerification:nt?.areAdditionalDocumentsSubmittedForVerification??!1}}));return we.length===0&&we.push({officerType:"Officer_1",userId:void 0,firstName:"",lastName:"",email:"",nationalityCountryCode:void 0,fileIds:[],isSelectedForVerification:!1,additionalDocumentTypesRequestedForVerification:[],additionalSubmittedDocumentsForVerificationFileIds:[],areAdditionalDocumentsRequestedForVerification:!1,areAdditionalDocumentsSubmittedForVerification:!1}),{companyDetails:ne,officers:we,primaryContactDetails:ae}}const _T=(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}}},co=(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(H$({userType:"manager",id:s})):n.push(tP({userType:"manager",id:s})))},nQ=(n,i)=>({invites:n.map((r=>{const t={};return xu(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()}),sQ=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()}),oQ=(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=xu(n.role,t),d={};o.forEach((l=>{i&&uR(l)||(d[`is_${l}`]=!1)})),c.forEach((l=>{d[`is_${l}`]=!0})),Object.assign(e,d)}return e},gn=n=>{if(n==null||n.length===0)return;const i=[];return n.map((r=>{i.push(...aP(r))})),i},hT=(n,i)=>{if(n.length===0)return;const r={};return i.length!==n.length?r[i[0]]=kf(n[parseInt(i[0])]):n.forEach(((t,e)=>{r[i[e]]=kf(t)})),r},ST=n=>`${n}s`,iQ=(n,i)=>({referrals:n.map((r=>({company:r.companyName,email_ids:r.emailIds,refer_reward_plan_id:i})))}),cQ=n=>({vendor_id:n.id,vendor_name:n.name}),dQ=({balanceAsOfToday:n,recurringAmount:i})=>n!=null?n.amount:i.amount,lQ=(n,i)=>{const{estimatedMonthlyAmount:r,memo:t,selectedAccount:e,selectedClass:a,selectedMonths:s,selectedVendor:o,selectedAccruedExpenseCategory:c,jeScheduleDetails:d,startingBalance:l}=n,u=rP,m=d.length,_=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:_,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}},IP=(n,i,r,t,e)=>{const{vendor:a,currencyCode:s,currencySymbol:o,status:c,startDate:d,recurringAmount:l,endDate:u,balanceAsOfToday:m}=n,{selectedMonths:_,selectedAccount:g,selectedClass:v,memo:b,estimatedMonthlyAmount:E,selectedAccruedExpenseCategory:P,startingBalance:O}=r,x=rP,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:cQ(J),currency_code:s,currency_symbol:o,other_attributes:{starting_balance:O?.amount??0},period:_??null,je_schedule_type:"accrued_expenses",posting_date:x,balance:dQ({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:P??null,je_debit_account_id:g??null,je_debit_accounting_class_id:v??null,memo:b??"",recurring_amount:E?.amount??0};return e===!0?{...L,is_deleted:!0}:L},ku=(n,i)=>n.find((t=>t.labels?.includes(i)===!0))?.classId??"",uQ=(n,i)=>{const r={je_schedules:[],scheduled_journal_entries:[]},{classListState:t,classState:e}=n,a=_a(e,t).classes,s=ku(a,"balance_sheet");return r.je_schedules=[lQ(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},gT=(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=da(r,n);if(l!=null){const{vendorState:u,classListState:m,classState:_}=n,g=_a(_,m).classes,v=ku(g,"balance_sheet"),b=i.jeScheduleDetails;e.je_schedules=[IP(l,u,i,v,t)],e.scheduled_journal_entries=((E,P,O,x,U)=>{const k=P.scheduledJournalEntry;return E.map(((C,B)=>{const J=k[B],L={status:{code:C.postingStatus,label:mQ(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:nP(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}))})(b,l,s,c,t)}return e},pQ=(n,i,r,t)=>{const e={je_schedules:[],scheduled_journal_entries:[]},a=da(r,n);if(a!=null){const{vendorState:s,classListState:o,classState:c}=n,d=_a(c,o).classes,l=ku(d,"balance_sheet"),u=i.jeScheduleDetails;e.je_schedules=[IP(a,s,i,l,!1)],e.scheduled_journal_entries=((m,_,g)=>{const v=_.scheduledJournalEntry;return m.map(((b,E)=>{const P=v[E];return{status:{code:g==null&&b.postingStatus==="pending"||g!=null&&g===E?"canceled":b.postingStatus,label:g==null&&b.postingStatus==="pending"||g!=null&&g===E?"Canceled":b.postingStatus},transaction_memo:b.memo,third_party_id:b.jeLink.thirdPartyTransactionId??null,...b.jeLink.reversalTransactionDetails!=null&&{reversal_transaction_details:nP(b.jeLink.reversalTransactionDetails)},expected_post_date:b.postingDate.format(re),amount:b.amount.amount,balance:b.runningBalance.amount,scheduled_journal_entry_id:P?.scheduledJournalEntryID!=null?P.scheduledJournalEntryID:null,actual_post_date:P?.actualPostDate!=null?P.actualPostDate.format(re):null,is_platform_generated:P?.isPlatformGenerated!=null?P.isPlatformGenerated:null,je_schedule_id:P?.jeScheduleId!=null?P.jeScheduleId:null,update_time:P?.syncToken!=null?P.syncToken:null,create_time:P?.createTime!=null?P.createTime.format(re):null}}))})(u,a,t)}return e},mQ=n=>n.charAt(0).toUpperCase()+n.substring(1),yQ=function(n,i,r){let t=mv(i,n,31);return t.month()!==n&&(t=mv(i,n).endOf("month")),{postingDate:t,postingStatus:"pending"}},_Q=(n,i)=>`${n} - ${i.format(E1)} - Acc_${i.format(T1)}`,hQ=(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}=yQ(c.month(),c.year());s.push({postingDate:d,amount:la(i.amount,i.currencyCode,i.currencySymbol),runningBalance:la(o===0?r.amount??0:0,i.currencyCode,i.currencySymbol),postingStatus:l,memo:_Q(t,c),jeLink:{type:"unknown"}})}return s},SQ=(n,i)=>{const r=Math.abs(n[i].amount.amount);return n.map(((t,e)=>e===i?{...t,amount:{...t.amount,amount:r}}:t))},gQ=(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}),fQ=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,vQ=(n,i)=>({company:{sync_token:i,subscription_billing_address:Je(n)}});function fn(n){return{frequency_type:n.frequency,preferred_mode:n.preferredMode}}const IQ=(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?!Po(Eo(r),Eo(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?Je(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?Je(fo(r)):void 0}:m},lu=n=>({amount:n.amount,autoTransferRuleId:n.auto_transfer_rule_id,createTime:n.create_time!=null?Z(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?Z(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?Z(n.update_time):void 0});function fT(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:In(n.destinationAccount.accType)},...n.destinationAccountWithPercentAllocation!=null&&{destination_bank_account_metadata:n.destinationAccountWithPercentAllocation.map((t=>({account_id:t.account.id,account_type:In(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:In(n.sourceAccount.accType)},...n.firstTransferDate!=null&&{first_transfer_date:n.firstTransferDate.format("YYYY-MM-DD")}}}const In=n=>{switch(n){case"depositAccount":return"deposit_account";case"paymentAccount":return"payment_account";case"treasuryAccount":return"treasury_account";default:return}};function bQ(n){const i=[],r=n.vendor_id;return r&&i.push(ia(r,!1)),i}function vT(n,i,r,t=!1){const e=bP(n,i),a=e?.lines?.map((s=>s.id))??[];return e==null||(function(s,o){return s.billPayInfo.stage.code!=="pending_approval"||s.isDeleted===!0||!s.vendor?.id||o===!1&&Object.keys(s.recommendations??{}).length>0})(e,t)?p(fu(i)):r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions/${i}/recommendations`).pipe(y((s=>{if(!T(s)||s.data==null)return p(vu(i,s.status));const o=[],c=s.data.recommendations??[];c.length!==a.length&&console.warn(`Bill ${i}: ${c.length} recommendation entries for ${a.length} lines. They are paired by position, so this bill may be scored incorrectly.`);const d={};return a.forEach(((l,u)=>{const m=c[u];m!=null&&(d[l]=aP(m))})),o.push(VM(i,d)),o.push(fu(i,!0)),h(o)})),I((s=>p(vu(i,f("Unexpected Error",`Fetch bill recommendations REST API call errored out ${s}`))))))}function bP(n,i){return Y(n.billTransactionState.transactionById,i,void 0)}const IT=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},bT=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((_=>_.subType!=="admin")).map((_=>({type:_.type,id:_.userId??null,sub_type:_.subType??null,id_type:_.idType??null,is_implicit_actor:_.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},Nu=(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,...bn};const[c]=o,d=c?.account,l=c?.class;let u,m,_=s?.account,g=s?.class;if(!_?.qboId&&(_=void 0),!g?.classId&&(g=void 0),_==null&&a!=null){const E=t.accounts.find((P=>P.qboId===a.qboId));d!=null?m=d:E!=null?m=E??a.recommendations[0]?.account:a.recommendations[0]?.account!=null&&(m=a.recommendations[0]?.account)}if(g==null&&a!=null){const E=e.classes.find((P=>P.classId===a.classId));l!=null?u=l:E!=null?u=E??a.recommendations[0]?.class:a.recommendations[0]?.class!=null&&(u=a.recommendations[0]?.class)}const v=((E,P)=>P!=null&&!!E.find((O=>O.class?.classId===P.classId)))(o,g),b=((E,P)=>P!=null&&!!E.find((O=>O.account?.qboId===P.qboId)))(o,_);return{...s,recommendedCategory:d,isCategoryFirstTimeAutofilled:!!d?.qboId,isCategoryUpdateSelected:!1,isRetainedCategorySelected:!1,retainedCategory:b?void 0:_,account:_??m,recommendedClass:l,isClassFirstTimeAutofilled:!!l?.classId,isClassUpdateSelected:!1,isRetainedClassSelected:!1,retainedClass:v?void 0:g,class:g??u,isCategoryOrClassUpdated:!1,updateAllCheckbox:!1}};function uu(n,i,r){const t=i.billDetailLocalData.isCancelled,e=i.billDetailLocalData.updatesByLineId,a={...e},s=r?.accountId!=null?rt(n.accountState,r.accountId,"account_list"):void 0,o=r?.classId!=null?ya(n.classState,{classId:r.classId,reportId:"class_list"}):void 0,c=r?.vendorCurrencyCode,d=r?.vendorCurrencySymbol,{tenantState:l,companyState:u}=n,{currentTenantId:m}=l,_=m!=null?l.tenantsById?.[m]?.companyId:void 0,g=Ue(u,_??""),v=g?.company.companyBillPayInfo.payNowCutOffTimeByMethod.ach,b=v!=null&&ye().isSameOrBefore(v);return Object.keys(a).forEach((E=>{const P=e[E];a[E]={...P,account:s,class:o,...bn}})),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,...bn}),{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??Z(bo(ye().toDate(),[0,6],b?0:1).toISOString())},isCollectToAccountInfoFromVendorContact:!1,isRecurring:!1}}const EQ=(n,i,r,t,e)=>{const a={currencyCode:r.recipient_currency_code??"",currencySymbol:r.recipient_currency_symbol??""},s={},o=t?.accountId,c=gV(r.lines,r.recommendations),d=r.lines?.[0]?.line_detail;let l=!0,u=!0;r.lines?.forEach((z=>{z.line_detail.account.account_id!==d.account.account_id&&(l=!1),z.line_detail.class.accounting_class_id!==d.class.accounting_class_id&&(u=!1);const ee=rt(n.accountState,o??"","account_list"),W=ya(n.classState,{classId:t?.classId??"",reportId:"class_list"}),pe=fV(z,a),{accountListState:ne,accountState:ae,classListState:me,classState:he}=n,we=_a(he,me),Te=bu(ae,ne,"billPayAccountList"),le=Nu(z.line_id,pe,c,Te,we,t);s[z.line_id]={...le,account:le.account?.accountId===""&&ee!=null?ee:le.account,class:le.class?.classId===""&&W!=null?W:le.class}})),r.tax!=null&&r.tax>0&&ET(r.tax,a,"Tax",l,u,s),r.discount!=null&&r.discount>0&&ET(-r.discount,a,"Discount",l,u,s);const m=r.bill_pay_info?.bill_payment_method_type.code,_=r.bill_pay_info?.bill_payment_method_type.sub_code,g=r.bill_pay_info?.international_transfer_fee_bearer_payment_method,{internationalCode:v,internationalSubCode:b}=vV(_!=null?TI(_):void 0,g!=null?EI(g):void 0),{tenantState:E,companyState:P}=n,{currentTenantId:O}=E,x=O!=null?E.tenantsById?.[O]?.companyId:void 0,U=Ue(P,x??""),k=U?.company.companyBillPayInfo.payNowCutOffTimeByMethod.ach,C=k!=null&&ye().isSameOrBefore(k),B=r.bill_pay_info?.from_account.account_type!=null?IV(bV(r.bill_pay_info?.from_account.account_type)):void 0,J=U?.company.companyInfo.bookCloseDate,L=r.transaction_date?Iu("draft",Z(r.transaction_date),J):void 0,M=r.due_date?r.transaction_date?oP("draft",Z(r.due_date),Z(r.transaction_date),J):Z(r.due_date):void 0,q=m!=null&&_!=null?EV(n.billPayConfigState,TV(dP(m),cP(AV(TI(_))),B,v!=null?NV(v):void 0,b!=null?PV(b):void 0)):void 0,R=Uu(m??""),D=r.bill_pay_info?.outside_zeni_transaction_payment_mode,w=R?{paymentMode:D!=null?OV(D):void 0,paymentDate:r.bill_pay_info?.payment_date!=null?Z(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:M,memo:r.transaction_memo,invoiceDate:L,isInvoiceDateAutoUpdated:!!r.transaction_date&&J!=null&&Z(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?Z(r.bill_pay_info?.payment_date):Z(bo(ye().toDate(),[0,6],C?0:1).toISOString()),withdrawFrom:iP(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?EI(r.bill_pay_info?.international_transfer_fee_bearer_payment_method):void 0},totalAmount:r.amount!=null?To(r.amount,{currencyCode:r.currency_code??"USD",currencySymbol:r.currency_symbol??"$"}):void 0,recipientTotalAmount:r.recipient_total_amount!=null?To(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}},TQ=(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},ET=(n,i,r,t,e,a)=>{const s=Object.keys(a).length,o=e&&s>0?a[0].class:CV({accounting_class_id:"",accounting_class_name:""}),c=t&&s>0?a[0].account:xV({account_id:"",account_name:"",labels:[]});a[s]={class:o,account:c,amount:To(n,i),recipientAmount:To(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}},TT=(n,i,r,t)=>{if(r!=null){const e=Y(t?.transactionById,r);return i||e?.isRecurring===!0?`${n}/${r}/recurring`:`${n}/${r}`}return i?`${n}/recurring`:`${n}`},EP=n=>{const i=n?.method.split("_")[1],r=n?.method.split("_")[2];return{code:i?dP(i):null,name:i==="outside-zeni"?"Outside Zeni":n?.method.replace(/(_depositAccount|_paymentAccount)/g,"")??"",sub_code:r?DV(cP(r)):null}},PQ=n=>Uu(n.paymentDetailsSection?.paymentType?.method)?n.outsideZeniPaymentLocalData?.paymentDate?.format("YYYY-MM-DD")??null:n.paymentDetailsSection?.paymentDate?.format("YYYY-MM-DD")??null,PT=(n,i)=>{const r=RV(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}},NQ=(n,i)=>n?"bill_pay_marked_as_paid":i==="pending_approval"?"bill_pay_sent_for_approval":"bill_pay_updated",AQ=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},OQ=n=>({is_applicant_declaration:!0,form_details:n}),CQ=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)}},NT=n=>n.cardPolicyState.mccCategoriesFetchState==="Completed",AT=(n,i)=>{const r=(e=>$L(e).cards.filter((a=>{return s=a.status?.code,!(s==="closed"||s==="closed_by_customer");var s})).map(CQ))(n),t=n.cardPolicyState.mccCategories;return wL({initialData:i,cardsMasterList:r,mccCategories:t,suggestedAllowMerchants:n.cardPolicyState.suggestedAllowMerchants,suggestedBlockMerchants:n.cardPolicyState.suggestedBlockMerchants,suggestedAllowCategories:n.cardPolicyState.suggestedAllowCategories,suggestedBlockCategories:n.cardPolicyState.suggestedBlockCategories})},OT=n=>HF(n.userState,n.userRoleState,n.userListViewState,"cardHolderCandidate").users.map((i=>i.user)).filter((i=>i!=null)),oe=n=>n!=null&&n.value!=null&&n.confidence>=tq,de=(n,i,r)=>{r!=null&&(typeof r=="string"&&r.trim()===""||(n.values[i]=r,n.autoFilledFieldNames.push(i)))},pu=n=>{const i=Z(n);if(i.isValid())return i};function xQ(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 UQ=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}},kQ=(n,i,r,t,e)=>({merchant:t!=null?{id:t.id,name:t.name}:void 0,description:r.transaction_memo,lineDetail:{account:rt(n,t?.accountId??"","account_list"),class:e!=null?ya(i,{classId:e,reportId:"class_list"}):void 0},transactionDate:Z(r.transaction_date),amount:r.amount,currencyCode:r.currency_code??"USD",currencySymbol:r.currency_symbol??"$",recommendations:[],isCategoryUpdateSelected:!1,isCategoryFirstTimeAutofilled:!1,isRetainedCategorySelected:!1}),BQ=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},DQ=(n,i)=>i!=null&&n.type==="out_of_pocket"&&n.merchant!=null?void 0:i,JQ={transaction_type:"reimbursement",reimbursement_provider:"zeni"},wQ=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:qe(n.fromAccount.accType)??""}:n.toAccount&&n.toAccount?.accType!=="treasuryAccount"&&(i.to_account={account_id:n.toAccount.id,account_type:qe(n.toAccount.accType)??""}),i},$Q=n=>{const i=EP(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}},CT=(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},xT=(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},RQ=(n,i,r)=>{const t={...VQ(n)};return i.postAndGetJSON(`${i.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tags`,t).pipe(y((e=>MQ(e,r))),I((e=>p(Eu({fetchState:"Error",error:f("Unexpected Error","Create Tag REST API call errored out "+JSON.stringify(e)),tagsId:[]})))))},MQ=(n,i)=>T(n)&&n.data!=null&&n.data.tags.length>0?h([mr(n.data.tags),Eu({fetchState:"Completed",tagsId:n.data.tags.map((r=>r.tag_id))}),gG({tagId:n.data.tags[0].tag_id,taskId:i})]):h([Eu({fetchState:"Error",error:n.status,tagsId:[]}),N({messageSection:"create_tag",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:n.status.message}]})]),VQ=n=>({name:n});function LQ(n){return{cannedResponseId:n.canned_response_id,content:n.content,createTime:Z(n.create_time),createdBy:n.created_by,isDeleted:n.is_deleted,name:n.name,updateTime:Z(n.update_time)}}const FQ=(n,i,r)=>{const t=i.value,e={...jQ(t,n)};return r.putAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${n}`,e).pipe(y((a=>qQ(a,n))),I((a=>p(Tu({fetchState:"Error",taskId:n,error:f("Unexpected Error","Archive Task REST API call errored out"+JSON.stringify(a))})))))},qQ=(n,i)=>{if(T(n)&&n.data!=null&&n.data.tasks.length>0){const r=[ze(n.data.tasks),No(i),Ct(),Tu({fetchState:"Completed",taskId:i})];return h(r)}return h([Tu({fetchState:"Error",taskId:i,error:n.status}),N({messageSection:"archive_task",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:n.status.message}]})])},jQ=(n,i)=>{const{taskState:r}=n;return{sync_token:ua(r,i)?.syncToken??"",is_archived:!0}},GQ=(n,i)=>({name:n.name,assignees:n.assignee,description:n.description,priority:n.priority,status:n.status,tags:n.tagIds,time_spent:Ao(n.timeSpent),group_assignees:n.groupAssignees,parent_task_id:n.parentTaskId,task_group_ids:i,due_date:n.dueDate?.format("YYYY-MM-DD")??null}),Au=n=>({name:n.name,description:n.description,status:n.status.code,assignee:n.assignees,groupAssignees:n.groupAssignees,dueDate:n.dueDate,priority:n.priority.code,tagIds:n.tagIds,fileIds:n.fileIds,type:n.type,recurringFrequency:n.recurringFrequency,recurringDaysOfWeek:n.recurringDaysOfWeek,recurringEndDateLocalData:{recurringDatePickerOptionsType:"date",recurringEndDate:n.recurringEndDate},savedRecurringEndDate:n.recurringEndDate,savedRecurringTasksCount:void 0,recurringStartDate:n.recurringStartDate,timeSpent:n.timeSpent,isPrivate:n.isPrivate,taskGroupId:n.taskGroupIds[0]}),zQ=(n,i,r)=>{const t={...r};return Object.keys({...n,...r}).forEach((e=>{Po(n[e],i[e])||Object.assign(t,{[e]:n[e]})})),t},mu=n=>n?.fetchTaskStatus.fetchState==="Completed",TP=(n,i)=>`${n.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${i}`,PP=(n,i)=>[pr({taskId:n,fetchState:"Error",error:i}),N({messageSection:"fetch_task_detail",messageText:"failed",type:"error",showStatusIcon:!0,variables:[{variableName:"_api-error_",variableValue:i.message.includes("delete")?"Cannot retrieve deleted task.":i.message}]})],UT=(n,i)=>n.taskDetailState.editTaskStateById[i]?.saveStatus.fetchState==="In-Progress",KQ=(n,i,r)=>UT(i.value,n)?$:r.getJSON(TP(r,n)).pipe(y((t=>{if(!T(t)||t.data==null)return h(PP(n,t.status));const e=i.value,a=t.data.tasks.find((l=>l.task_id===n)),s=ua(e.taskState,n),o=e.taskDetailState.editTaskStateById[n];if(a==null||s==null||o==null||UT(e,n)||((l,u)=>{const m=Date.parse(l??""),_=Date.parse(u);return!Number.isNaN(m)&&!Number.isNaN(_)&&m<_})(a.sync_token,s.syncToken))return $;const c=wG(a,s),d=[ze(t.data.tasks),mr(t.data.tasks.map((l=>l.tags)).flat()),lP({taskId:n,taskDetailLocalData:zQ(o.taskDetailLocalData,Au(s),Au(c))})];return c.fileIds.length>0&&!Po(c.fileIds,s.fileIds)&&d.push(gu(c.fileIds)),h(d)})),I((t=>(console.error(`Task detail refresh errored out ${t}`),$)))),YQ=(n,i,r)=>{const{taskDetailState:t,taskState:e}=n,a=i!=null?ua(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??ye()).format(re):null,recurring_days_of_week:s.type.code==="recurring"&&s.recurringFrequency==="semi_weekly"?s.recurringDaysOfWeek??[]:[],sync_token:a,task_group_ids:r,time_spent:Ao(s.timeSpent),group_assignees:s.groupAssignees,...i==null?{is_private:s.isPrivate??!1}:{}}},HQ=n=>Z(n).format(FG),QQ=(n,i,r)=>r.postAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${n}/snooze`,{snoozed_until:i}).pipe(y((t=>WQ(t,n,i))),I((t=>p(yr({fetchState:"Error",taskId:n,error:f("Unexpected Error","Snooze Task REST API call errored out: "+JSON.stringify(t))}))))),WQ=(n,i,r)=>{if(T(n)&&n.data!=null&&n.data.tasks.length>0){const t=[ze(n.data.tasks),No(i),Ct(),yr({fetchState:"Completed",taskId:i}),N({messageSection:"snooze_task",messageText:"success",type:"success",variables:[{variableName:"_snoozed_until_",variableValue:HQ(r)}]})];return h(t)}return h([yr({fetchState:"Error",taskId:i,error:n.status}),N({messageSection:"snooze_task",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:n.status.message}]})])},ZQ=(n,i)=>i.deleteAndGetJSON(`${i.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${n}/snooze`).pipe(y((r=>XQ(r,n))),I((r=>p(yr({fetchState:"Error",taskId:n,error:f("Unexpected Error","Unsnooze Task REST API call errored out: "+JSON.stringify(r))}))))),XQ=(n,i)=>{if(T(n)&&n.data!=null&&n.data.tasks.length>0){const r=[ze(n.data.tasks),No(i),Ct(),yr({fetchState:"Completed",taskId:i}),N({messageSection:"unsnooze_task",messageText:"success",type:"success"})];return h(r)}return h([yr({fetchState:"Error",taskId:i,error:n.status}),N({messageSection:"unsnooze_task",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:n.status.message}]})])},eW=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=Ao(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},tW=(n,i)=>{const{tagState:r}=n,t=i.tagIds.map((e=>Y(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:Ao(i.timeSpent)}},aW=n=>{if(n!=null)return{line1:n.line1,city:n.city,state:n.state,postal_code:n.postalCode,country:n.country}};class Oo extends Error{}const kT=(n,i)=>{if(i==null)return;const r=hz(n.accountState,i)?.qboId;if(r==null||r==="")throw new Oo("The selected transfer account could not be found in QuickBooks.");return r},rW=(n,i)=>{if(i==null)return;const r=ya(n.classState,{classId:i,reportId:"class_list"})?.qboId;if(r==null||r==="")throw new Oo("The selected class could not be found in QuickBooks.");return r},NP=n=>{if(n==null||n.qboId===""||n.qboId===n.name)throw new Oo("The selected vendor is not synced to QuickBooks yet.");return n.qboId},nW=(n,i)=>i==null?void 0:NP(xe(n.vendorState,i)),sW=(n,i)=>i==null?void 0:NP(sP(n.vendorState,i)),oW=(n,i)=>{const{transactionType:r}=i,t={transaction_type:r,transaction_date:i.transactionDate?.format(re)??"",transaction_memo:i.transactionMemo};if(r==="transfer")return{...t,from_account_id:kT(n,i.fromAccountId),to_account_id:kT(n,i.toAccountId),total_amount:i.totalAmount?.amount??0};const e=i.lines.map((s=>((o,c,d)=>{const l={};c.accountQboId!=null&&(l.account={qbo_id:c.accountQboId,account_name:c.accountName});const u=rW(o,c.classId);if(l.class=u!=null?{qbo_id:u}:{},c.projectId!=null&&(l.project=Sz(gz(o.projectState,c.projectId)??{projectId:c.projectId,projectName:""})),d==="journal_entry"){l.posting_type=c.postingType;const m=sW(o,c.vendorQboId);m!=null&&(l.vendor={qbo_id:m})}return{amount:c.amount?.amount??0,line_description:c.lineDescription,line_detail_type:d==="journal_entry"?"journal_entry_line_detail":"account_based_expense_line_detail",line_detail:l}})(n,s,r)));if(r==="journal_entry")return{...t,lines:e};const a={...t,payment_type:i.paymentType,qbo_account_id:i.qboAccountId,vendor_id:nW(n,i.vendorId),lines:e};return r==="check"?{...a,document_number:i.documentNumber,print_status:i.printStatus,remit_to_address:aW(i.remitToAddress)}:r==="credit_card_credit"?{...a,transaction_type:"expense",is_credit:!0,document_number:i.documentNumber}:a},iW=n=>({transaction_id:n.id}),cW=(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((_=>!m.has(_.id)))}const l={};for(const m in n.updatesByLineId){const _=n.updatesByLineId[m],g=d.lines?.map((v=>{if(v.id===m){const b=Object.assign({},v);if(b.lineDescription=_.lineDescription??"",_.amount!=null&&(b.amount=_.amount),_.class!=null&&(b.class=_.class),_.account!=null&&(b.account=_.account),_.project!=null&&(b.project=_.project),_.customer!=null?b.customer=_.customer:b.customer=void 0,_.vendor!=null?b.vendor=_.vendor:b.vendor=void 0,_.postingType!=null){const P=b;P.postingType=_.postingType,_.postingTypeName!=null&&(P.postingTypeName=_.postingTypeName)}_.recommendation!=null&&(l[v.id]=_.recommendation);const E=r?.find((P=>P.lineId===v.id));return E&&(b.cotViewingFlags={vendor:E.vendor,category:E.category,class:E.class,lineId:E.lineId}),b}return v}));d.lines=g}if(c!=null&&c.length>0){const m=c.map(lW);d.lines=[...d.lines??[],...m]}let u;return d.recommendations=l,qT(d)?(u=jT(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=Tn(d)?s!=null&&s.type==="customer"?GT(d,a):zT(d,e):KT(d)?YT(d):HT(d),QT(u,d)},dW=(n,i,r,t)=>{if(!t&&(Tn(n)||So(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(So(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=!MT(i,a.account?.qboId),o=!r||(a.class?.classId??"")!=="",c=(a.amount?.amount??0)!==0,d=!(e.type==="journal_entry_transaction_line"||So(n.type)!=null)||a.vendor!=null||a.customer!=null;return s&&o&&c&&d})).map((e=>e.id)).filter(Boolean)},BT={accountDescription:"",accountId:"",accountName:"",labels:[]},lW=n=>n.type==="journal_entry_transaction_line"?{...n,id:"",type:"journal_entry_transaction_line",platformLineDetailType:n.platformLineDetailType??"journal_entry_line_detail",account:n.account??BT,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??BT,billable:n.billable??"not_billable",isCategoryMiscategorized:!1,isClassMiscategorized:!1},uW=n=>{const i=[];let r;for(r in n){const t=n[r],e={recommendations:WT(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 DT(n){let i=Z(te(n.start));const r=Z(te(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 pW=(n,i)=>{const r=[],t={startDate:Z(i.data?.report.data_available_start_date),endDate:Z(i.data?.report.data_available_end_date)};return r.push(Zz(n.zeniId,i.data?.report.expense)),r.push(Xz({id:n.id,name:n.name},t,i.data?.report.expense,i.data?.report.insights)),r.push(uP(t)),r},mW=(n,i)=>{const r=[],t={startDate:Z(i.data?.report.data_available_start_date),endDate:Z(i.data?.report.data_available_end_date)};return r.push(eK(n,t,i.data?.report.income,i.data?.report.insights)),r.push(uP(t)),r},yW=n=>[...n].sort(((i,r)=>(i.create_time!=null?Z(i.create_time):ye()).isBefore(r.create_time!=null?Z(r.create_time):ye())?1:-1))?.[0],_W=(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}}},hW=n=>{if(n==="vendorsTab")return"vendor_list"},SW=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"}},lo=n=>n.map((i=>gW(i))),gW=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}),uo=n=>{const i=[];return n.forEach((r=>{r.last_updated_vendor_name_by_user!=null&&i.push(SP(r.last_updated_vendor_name_by_user))})),i},po=n=>{const i=[];return n.forEach((r=>{const t=r.recommendations[0]?.global_merchants.filter((e=>e.global_merchant_id!=null));fW(t,i)})),i},fW=(n,i)=>{n.forEach((r=>i.push(r)))},vW=(n,i,r,t,e,a,s)=>{const o=s?.globalMerchantId!=null?En(Cu(s),["create_time","update_time"]):s!=null?En(gP(s),["create_time","update_time"]):null;return{vendor_name:n,qbo_id:a??null,selected_global_merchant:t===!0?null:o,recommendations:Io(i,r),is_employee:t,is_local_contractor:e}},IW=(n,i,r)=>{const t=Array({globalMerchants:go(i,n.recommendationIds)}),e=Array({globalMerchants:n.recommendedNonExistingGlobalMerchants});let a=Pu(i,n.selectedVendorId);e.length>0&&n.selectedVendorId===e[0].globalMerchants[0]?.globalMerchantName&&(a=e[0].globalMerchants[0]);const s=xe(r,n.selectedVendorId);let o="";if(n.vendorRenamedText!=null)o=n.vendorRenamedText;else if(s!=null)o=s.name;else{const c=Pu(i,n.selectedVendorId);o=c!=null?c?.globalMerchantName:e[0]?.globalMerchants[0]?.globalMerchantName??""}return{vendorName:o,selectedGlobalMerchant:a,recommendations:t,nonExistingRecommendations:e}},bW=(n,i,r,t,e)=>({tenant_name:n.tenantName,merchant_type:"vendor",tenant_id:n.tenantId,selected_global_merchant:t!=null?En(Cu(t),["create_time","update_time"]):e!=null?xK(e):null,recommendations:i,merchant_name:r}),EW=n=>{const i=[];return n.forEach((r=>{r.last_updated_merchant_name_by_user!=null&&i.push(SP(r.last_updated_merchant_name_by_user))})),i},TW=n=>{let i=[];return n.forEach((r=>{i=[...new Set([...i,...fP(r.recommendations)])]})),i},PW=n=>{switch(n){case"originalVendor":return"original_vendor";case"requestedVendor":return"requested_vendor";case"recommended":return"recommended_global_merchant_name";default:return"tenant_name"}},NW=(n,i)=>({tenant_name:n.tenantName,merchant_type:"vendor",tenant_id:n.tenantId,review_status:"review_rejected",recommendations:i,merchant_name:n.tenantMerchantName}),yu=n=>N({messageSection:"oauth_consent_approve",messageText:"failed",type:"error",variables:[{variableName:"__reason__",variableValue:n}]}),AW=[(n,i,r)=>n.pipe(S(sV.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(T(a)&&a.data!=null){const s=[F({users:a.data.users}),K(a.data.user_roles),H({payload:a.data.companies,schema:{}}),SI()];return h(s)}return p(ws(a.status),N({messageSection:"bill_pay_accept_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),I((a=>p(ws(f("Unexpected Error","Accept Bill Pay Terms errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(oV.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(T(a)&&a.data!=null){const s=[F({users:a.data.users}),K(a.data.user_roles),H({payload:a.data.companies,schema:{}}),SI()];return h(s)}return p(ws(a.status),N({messageSection:"bill_pay_accept_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),I((a=>p(ws(f("Unexpected Error","Accept Bill Pay Terms errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(JF.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(V(l)&&l.data!=null){const u=[F({users:l.data.users}),K(l.data.user_roles),H({payload:l.data.companies,schema:{}}),wF()];return h(u)}return p(nb(l.status),N({messageSection:"charge_card_accept_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]}))})),I((l=>p(nb(f("Unexpected Error","Accept Charge Card Terms errored out"+JSON.stringify(l)))))))}))),(n,i,r)=>n.pipe(S(_j.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(T(a)&&a.data!=null){const s=[hj(a.data.user_roles[0]),Kb()];return h(s)}return p(Hs(a.status),N({messageSection:"reimbursement_accept_employee_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),I((a=>p(Hs(f("Unexpected Error","Accept Employee Remi Terms errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(pJ.match),y((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/config`;return r.putAndGetJSON(t,{is_invoicing_tos_accepted:!0}).pipe(A((e=>T(e)&&e.data!=null?p(ec(e.data),mJ(),lt()):p(gS(e.status)))),I((e=>p(gS(f("Unexpected Error","Accept invoicing terms REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(PN.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(T(a)&&a.data!=null){const s=[K(a.data.user_roles),NN(a.data.user_roles[0]),AN()];return h(s)}return p(up(a.status))})),I((a=>p(up(f("Unexpected Error","Accept Master TOS errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(Sj.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(T(a)&&a.data!=null){const s=[F({users:a.data.users}),K(a.data.user_roles),H({payload:a.data.companies,schema:{}}),Kb()];return h(s)}return p(Hs(a.status),N({messageSection:"reimbursement_accept_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),I((a=>p(Hs(f("Unexpected Error","Accept Remi Terms errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(Nj.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(T(a)&&a.data!=null){const s=[F({users:a.data.users}),K(a.data.user_roles),H({payload:a.data.companies,schema:{}}),Aj()];return h(s)}return p(Zb(a.status),N({messageSection:"treasury_accept_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),I((a=>p(Zb(f("Unexpected Error","Accept Treasury Terms errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(eG.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(T(a)&&a.data!=null){const s=[F({users:a.data.users}),K(a.data.user_roles),H({payload:a.data.companies,schema:{}}),tG()];return h(s)}return p(m0(a.status),N({messageSection:"zeni_account_accept_term",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),I((a=>p(m0(f("Unexpected Error","Accept Zeni Account Terms errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(c$.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(T(a)&&a.data!=null){const s=[H({payload:a.data.companies,schema:{}}),d$()];return h(s)}return p(jg(a.status))})),I((a=>p(jg(f("Unexpected Error","Acknowledge - Onboarding AI Activation Viewed errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(l$.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(T(a)&&a.data!=null){const s=[H({payload:a.data.companies,schema:{}}),u$()];return h(s)}return p(N({messageSection:"onboarding_customer_view_complete",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}),Gg(a.status))})),I((a=>p(Gg(f("Unexpected Error","Acknowledge - Onboarding AI Finance Team errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(iO.match),y((t=>{const{type:e,paymentSourceType:a,setupIntentId:s}=t.payload,o={...KY({type:e,processor_token:s,payment_source_type:a})};return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscriptions/payment-sources`,o).pipe(y((c=>T(c)&&c.data?h([qo({fetchState:"Completed",paymentSources:c.data.payment_sources}),N({messageSection:"add_card_payment_source",messageText:"success",type:"success"}),jo()]):h([qo({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!"}]})]))),I((c=>p(qo({fetchState:"Error",error:f("Unexpected Error","Add Card Payment Source API call errored out "+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(ED.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=>T(l)&&l.data!=null?[TD(),Qr({id:s})]:p(Yh(l.status)))),I((l=>p(Yh(f("Unexpected Error","Add promotional credits REST API call errored out "+JSON.stringify(l)))))))}))),(n,i)=>n.pipe(S(fu.match),S((r=>r.payload.didWriteRecommendations)),y((r=>{const{billId:t}=r.payload,e=i.value,a=Ie(t),s=Y(e.editBillDetailViewState.editBillStateById,a,void 0),o=Y(e.billTransactionState.transactionById,t,void 0),c=o?.recommendations;if(s==null||o==null||o.lines==null||c==null||Object.keys(c).length===0)return $;const d=s.billDetailLocalData;if(d.vendor?.qboId!==o.vendor?.id)return $;const l=bu(e.accountState,e.accountListState,"billPayAccountList"),u=_a(e.classState,e.classListState),m={};return o.lines.forEach((_=>{const g=d.updatesByLineId[_.id];if(g?.isCategoryOrClassUpdated)return;const v=g==null||(function(b){return"account"in b})(_)===!1?_:{...g,account:_.account,class:_.class};m[_.id]=Nu(_.id,v,c,l,u,d.vendor)})),Object.keys(m).length===0?$:p(yV(t,m))}))),(n,i)=>n.pipe(y((r=>{if(!Co.match(r))return $;const t=i.value,e=t.cardPolicyState.policyDocumentExtraction,a=e.extractedRules;if(a==null)return $;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=>AL(u.name,!1))))(t),c=(l=>l.cardPolicyState.mccCategories.map((u=>OL(CL(u),!1))))(t),d={extracted:s,vendorSearchOptions:o,categorySearchOptions:c};return e.aiCfoAnswerId!=null?p(PL(d)):p(NL(d))}))),(n,i,r)=>n.pipe(S(jK.match),je((t=>{const{userId:e,zeniSessionId:a,tenantId:s,clientId:o,redirectUri:c,codeChallenge:d,codeChallengeMethod:l,state:u,responseType:m}=t.payload,_={"zeni-user-id":e,"zeni-tenant-id":s};return a!=null&&(_["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},_).pipe(Ma((g=>h(g.json()).pipe(y((v=>{if(!g.ok){const P=v,O=P?.error??P?.message??P?.status?.message??`Authorization failed (${g.status})`;return h([ql(f(O)),yu(O)])}const b=v,E=b?.redirect_url??b?.data?.redirect_url;if(E==null||E===""){const P="No redirect URL returned from authorization server";return h([ql(f(P)),yu(P)])}return p(GK({redirectUrl:E}))}))))),I((g=>{const v="OAuth approve request failed: "+(g instanceof Error?g.message:JSON.stringify(g));return h([ql(f(v)),yu(v)])})))}))),(n,i,r)=>n.pipe(S(JM.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(T(c)&&c.data!=null){const d=c.data.entity_approvals.map((l=>l.entity_approval_id));return h([F({users:c.data.users??[]}),Nt(c.data?.entity_approvals),wM(e,d),N({messageSection:a==="approved"?"bill_pay_approved":"bill_pay_rejected",messageText:"success",type:"success"})])}return p(jv(e,c.status),N({messageSection:"bill_pay_approved",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}))})),I((c=>p(jv(e,f("Unexpected Error","Approve Or Reject Bill errored out"+JSON.stringify(c)))))))}))),(n,i,r)=>n.pipe(S(iV.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(V(c)){const d=[],l=c.data?.total_operations_processing??0;return d.push(Yc({billsProcessing:l,refreshTime:c.data?.hard_refresh_after_sec??0})),d.push(Hc(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}]})),h(d)}return p(tr(c.status),N({messageSection:"bill_pay_bulk_submit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}))})),I((c=>p(tr(f("Unexpected Error","Bill bulk action REST API call errored out "+JSON.stringify(c)))))))}))),(n,i,r)=>n.pipe(S(Gq.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(T(c)&&c.data!=null){const d=c.data.entity_approvals.map((l=>l.entity_approval_id));return h([F({users:c.data.users??[]}),Nt(c.data?.entity_approvals),zq(e,d),N({messageSection:a==="approved"?"reimbursement_approved":"reimbursement_rejected",messageText:"success",type:"success"})])}return p(xb(e,c.status),N({messageSection:a==="approved"?"reimbursement_approved":"reimbursement_rejected",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}))})),I((c=>p(xb(e,f("Unexpected Error","Approve Or Reject Reimbursement errored out"+JSON.stringify(c)))))))}))),(n,i,r)=>n.pipe(S(gj.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(V(c)){const d=[],l=c.data?.total_operations_processing??0;return d.push(rl({remisProcessing:l,refreshTime:c.data?.hard_refresh_after_sec??0})),d.push(nl(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}]})),h(d)}return p(nr(c.status),N({messageSection:"reimbursement_bulk_submit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}))})),I((c=>p(nr(f("Unexpected Error","Remi Approve or Reject bulk action REST API call errored out "+JSON.stringify(c)))))))}))),(n,i,r)=>n.pipe(S(AK.match),y((t=>{const{merchantId:e}=t.payload,{globalMerchantState:a,vendorGlobalReviewViewState:s}=i.value,{vendorGlobalByMerchantId:o}=s,c=OK(i.value).vendorGlobalReviewData.find((g=>g.merchant.tenantMerchantId===e)),d=o[e].vendorGlobalReviewViewLocalData,l=d!=null&&d.selectedMerchantId!=null?Pu(a,d.selectedMerchantId):void 0;let u,m=l?.globalMerchantName;const _=UE(a,kE(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&&_!=null){const g=Array({globalMerchants:go(a,d.recommendationIds)}),v=Array({globalMerchants:d.recommendedNonExistingGlobalMerchants}),b=Io(g,v),E={...bW(_,b,m,l,u)};return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/reviews/global-merchant-list/${e}`,E).pipe(y((P=>{const O=_.tenantMerchantName===m;if(V(P)&&m!=null){const x=O?[{variableName:"_merchant_name_",variableValue:m}]:[{variableName:"_original_merchant_name_",variableValue:_.tenantMerchantName},{variableName:"_approved_merchant_name_",variableValue:m}],U=[CK(e),N({messageSection:O?"approve_original_merchant":"approve_global_merchant",messageText:"success",type:"success",variables:x})];return h(U)}return P.status.code===409?p(Vl({merchantId:e,status:P.status})):p(Vl({merchantId:e,status:P.status}),N({messageSection:O?"approve_original_merchant":"approve_global_merchant",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:P.status.message}]}))})),I((P=>p(Vl({merchantId:e,status:f("Unexpected Error","Approve Vendor Global Review REST API call errored out"+JSON.stringify(P))})))))}return p([])}))),(n,i,r)=>n.pipe(S(gL.match),y((t=>{const e=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/policy-templates/${e}`).pipe(y((a=>{if(V(a)){const s=[fL(e),md({fetchState:"Completed",templateId:e})];return h(s)}return p(md({fetchState:"Error",error:a.status,templateId:e}))})),I((a=>p(md({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(OG.match),y((t=>FQ(t.payload.taskId,i,r)))),(n,i,r)=>n.pipe(S(Y_.match),A((t=>{const{period:e}=t.payload,a=i.value,s=Q(a),o=a.expenseAutomationViewState.selectedPeriodByTenantId[s.tenantId],c=a.expenseAutomationTransactionsViewState.transactionCategorizationView.review.uiState,d=c.pageToken,l=u=>{const m={start_date:te(e.start),end_date:te(e.end),auto_categorized:!1,sort_by:wi(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(wk((u=>{if(!T(u)||u.data==null)return $;const m=u.data.next_page_token??null;return m==null||m===d?$:l(m)})),$k(((u,m)=>{if(!T(m)||m.data==null)return{...u,failureStatus:m.status};const _=m.data.next_page_token??null;return{...u,allTransactions:[...u.allTransactions,...m.data.transactions],finalPageToken:_,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(as({selectedPeriod:o,selectedTab:ir,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 h([De(u.allTransactions,(g=>g.transaction_id),"merge"),Q_({selectedTab:ir,uiState:{pageToken:u.finalPageToken}}),Ri(ir,m,o,!1,u.finalPageToken,u.totalCount,_,!0),rs({selectedPeriod:o,selectedTab:ir,totalCount:u.totalCount}),W_({refreshViewInBackground:!0,selectedTab:ir,status:u.finalStatus})])})),I((u=>p(as({selectedPeriod:o,selectedTab:ir,status:f("Unexpected Error","background refetch review tab REST API call errored out"+JSON.stringify(u))})))))}))),(n,i,r)=>n.pipe(S(Cl.match),A((t=>{const{taskIds:e,updates:a,groupId:s}=t.payload,o=eW(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(T(d)&&d.data!=null){const l=a.isArchived===!0||a.isDeleted===!0||"snoozedUntil"in a;return p(ze(d.data.tasks),G0({taskIds:e,groupId:s,removeFromList:l}),Ct())}return p(z0({error:d.status}))})),I((d=>p(z0({error:f("Unexpected Error","Bulk update task list REST API call errored out"+JSON.stringify(d))})))))}))),(n,i)=>n.pipe(S((r=>$r.match(r)||Ra.match(r))),y((r=>{const{batchId:t}=r.payload;return cr(Jk).pipe(y((()=>{const e=i.value.expenseAutomationMissingReceiptsViewState.bulkUpload;return e.phase!=="matching"||e.currentBatchId!==t?$:h([K_(t),Rr({cacheOverride:!0}),Di()])})),_e(et(n.pipe(S(es.match)),n.pipe(S($i.match),S((e=>e.payload.batchId===t&&e.payload.status==="completed"))),n.pipe(S($a.match),S((e=>e.payload.batchId===t))))))}))),n=>n.pipe(S((i=>$r.match(i)||Ra.match(i))),A((i=>{const{batchId:r}=i.payload;return et(n.pipe(S($a.match)),n.pipe(S(mo.match))).pipe(S((t=>t.payload.batchId===r)),Oe(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)}]}))})),_e(n.pipe(S(es.match))))}))),(n,i,r)=>n.pipe(S(_k.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(T(s)&&s.data!=null){const o=String(s.data.batch_id??"").trim();return o===""?p(Bi({error:f("Unexpected Error","Bulk upload succeeded but batch_id was missing or empty.")})):j(p(Sk(100)),cr(hk).pipe(y((()=>p($r({batchId:o}))))))}return p(Bi({error:s.status}))})),I((s=>p(Bi({error:f("Unexpected Error","Bulk upload receipts API call errored out: "+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(pN.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=>T(o)?h([mN(e),Do(),N({messageSection:"common",messageText:"success",type:"success"})]):h([op(e,o.status),N({messageSection:"common",messageText:"failed",type:"error"})]))),I((o=>h([op(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($M.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&&V(l)){const u=[];return u.push(Bs("Completed",t.payload.billId,t.payload.isDeleteBill)),s!=null&&u.push(Gv({billId:t.payload.billId,tab:s.billPayInfo.stage.code})),u.push(Rc(Ie(t.payload.billId))),o===!0&&c!=null&&u.push(zv(c)),u.push(N({messageSection:"bill_pay_cancelled_deleted",messageText:"success",type:"success"})),h(u)}return T(l)&&l.data!=null&&l.data.transactions[0]?.transaction_id!=null?p(Ds(l.data.transactions[0]),Bs("Completed",t.payload.billId,t.payload.isDeleteBill),N({messageSection:"bill_pay_cancelled",messageText:"success",type:"success"})):p(Bs("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}]}))})),I((l=>p(Bs("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(Kq.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&&V(o)){const c=[Ks("Completed",t.payload.reimbursementId,t.payload.isDeleteRemi)];return s!=null&&c.push(Ub({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"})),h(c)}return T(o)&&o.data!=null&&o.data?.transaction?.transaction_id!=null?p(Hd(o.data.transaction),Ks("Completed",t.payload.reimbursementId,t.payload.isDeleteRemi),N({messageSection:"reimbursement_cancelled",messageText:"success",type:"success"})):p(Ks("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}]}))})),I((o=>p(Ks("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(cV.match),y((t=>{const{operationType:e,description:a}=t.payload,{billsBulkActionViewState:s}=i.value,o=(function(d,l,u){const m=d.map((_=>({entity_id:_,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(V(d)){const l=[],u=d.data?.total_operations_processing??0;return l.push(Yc({billsProcessing:u,refreshTime:d.data?.hard_refresh_after_sec??0})),l.push(Hc(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"}]})),h(l)}return p(tr(d.status),N({messageSection:"bill_pay_bulk_submit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}))})),I((d=>p(tr(f("Unexpected Error","Bill bulk action REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(fj.match),y((t=>{const{operationType:e,description:a}=t.payload,{remisBulkActionViewState:s}=i.value,o=(function(d,l,u){const m=d.map((_=>({entity_id:_,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(V(d)){const l=[],u=d.data?.total_operations_processing??0;return l.push(rl({remisProcessing:u,refreshTime:d.data?.hard_refresh_after_sec??0})),l.push(nl(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"}]})),h(l)}return p(nr(d.status),N({messageSection:"reimbursement_bulk_submit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}))})),I((d=>p(nr(f("Unexpected Error","Remi Cancel or Delete bulk action REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(b1.match),y((t=>{const e=i.value,{scheduleAccruedDetailState:a}=e,{rowId:s,scheduleType:o}=t.payload,c=[],d=a.selectedJEAccruedScheduleKey;if(d==null)return h(c);const l=da(d,e);if(l==null)return h(c);const u=l.jeScheduleId,m=e.scheduleAccruedDetailState.editScheduleStateByDetailId[u],_=m?.selectedVendor?.name??"",g={...pQ(e,m,d,s)},v={je_schedule_type:o};return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${u}?query=${encodeURIComponent(JSON.stringify(v))}`,g).pipe(y((b=>{if(T(b)&&b.data!=null){const E=b.data.je_schedules[0].je_schedule_id;return c.push(fa(b.data.je_schedules),wr(b.data.je_schedules,b.data.scheduled_journal_entries),Ec("Completed"),Za(o,d,E),N({messageSection:"cancel_journal_entry",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:_}]})),h(c)}return c.push(Ec("Error",b.status)),c.push(N({messageSection:"cancel_journal_entry",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:b.status.message}]})),h(c)})),I((b=>h([N({messageSection:"cancel_journal_entry",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(b)}]}),Ec("Error",f("Unexpected Error",`Cancel Accrual for Schedule Accrued Detail REST API call errored out ${JSON.stringify(b)}`))]))))}))),(n,i,r)=>n.pipe(S(Q$.match),y((t=>{const{localData:e,person:a}=i.value.peopleState.personDetails,{userId:s,userRole:o}=a,c=W$(e[0].role,o.userRoles,s);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${t.payload.companyId}`,{users:c}).pipe(y((d=>{if(T(d)){const l=[];return d.data?.user_roles&&co(l,d.data?.user_roles[0],!0),p(K(d.data.user_roles),Z$(),N({messageSection:"people_update_person",messageText:"success",type:"success"}),...l)}return p(vf(d.status))})),I((d=>p(vf(f("Unexpected error","Change zeni person roles REST API call errored out"+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S($j.match),A((()=>{const t=i.value,e=t.checkDepositState.localData,a=_y(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=>T(d)?p(N({messageSection:"deposit_check",messageText:"success",type:"success"}),yl({fetchState:"Completed"})):p(yl({fetchState:"Error",error:d.status})))),I((d=>p(yl({fetchState:"Error",error:f("Unexpected Error","Check deposit REST API call errored out"+JSON.stringify(d))})))))}))),(n,i,r)=>n.pipe(S(qL.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=>V(c)&&c.data!=null?p(pt(c.data),hd({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}]}),hd({chargeCardId:e,fetchState:"Error",error:c.status})))),I((c=>p(N({messageSection:"close_charge_card",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(c)}]}),hd({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Close card API call errored out"+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(lF.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=>V(o)&&o.data!=null?p(ar(o.data),Cd({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}]}),Cd({fetchState:"Error",error:o.status})))),I((o=>p(N({messageSection:"close_charge_cards",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(o)}]}),Cd({fetchState:"Error",error:f("Unexpected Error","Close cards API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(li.match),y((t=>Qm(i.value.companyViewState.managementView,t.payload.companyId)!=null?p(Wm(t.payload.companyId,{})):h([])))),(n,i,r)=>n.pipe(S(Wm.match),y((t=>{const e=t.payload.companyId,a=Qm(i.value.companyViewState.managementView,e),s=lC(e,i.value.companyViewState.managementView);if(a!=null&&Object.keys(a.data).length>0&&s==null){const o=rH(a.data);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,o).pipe(y((c=>{if(T(c)&&c.data!=null){const d=[];return i.value.companyViewState.managementView.fetchState==="Completed"&&(d.push(H({payload:c.data.companies,schema:{},isUpdate:!0})),c.data.customer_satisfactions!=null&&d.push(Zm({payload:c.data.customer_satisfactions})),d.push(uC(e)),d.push(li(e))),i.value.reviewCompanyViewState.fetchState==="Completed"&&d.push(pC({companies:c.data.companies})),h(d)}{const d=[Xm(e,c.status),li(e)];return h(d)}})),I((c=>p(Xm(e,f("Unexpected error","Company Management save updates errored out"+JSON.stringify(c)))))))}return h([])}))),(n,i,r)=>n.pipe(S(gk.match),je((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=>T(d)?h([fk({batchId:e,attachmentId:a,transactionId:s}),N({messageSection:"receipt_match",messageText:"success",type:"success"})]):h([w_({error:d.status}),N({messageSection:"receipt_match",messageText:"failed",type:"error"})]))),I((d=>h([w_({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(cO.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 h([im({fetchState:"Completed",setupIntentData:a})])}return h([im({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(Ix.match),je((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(T(c)===!0&&c.data!=null)return p(bx({accountId:e,selectedPeriod:a,statementUploads:Ex(c.data)}));const d=Tx(c)?Px(c):null;return p(Jy({accountId:e,selectedPeriod:a,error:c.status,mappingConflict:d}),jE(c.status.message))})),I((c=>p(Jy({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Confirm Statement Mapping REST API call errored out "+(c instanceof Error?c.message:String(c)))}),jE()))))}))),(n,i,r)=>n.pipe(S(cw.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=>T(d)&&d.data!=null?p(lg({stripe_connected:d.data.stripe_connected,publishable_key:d.data.publishable_key}),lt()):p(Is(d.status)))),I((d=>p(Is(f("Unexpected Error","Stripe connect setup REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(Aa.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=Ie(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(T(u)&&u.data!=null){const m=[],_={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(vI({billId:o,amountPayload:_,conversionRate:g})),m.push($s({billId:o,fetchState:"Completed",error:void 0})),h(m)}return p($s({billId:o,fetchState:"Error",error:u.status}))})),I((u=>p($s({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(vI({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($s({billId:o,fetchState:"Completed",error:void 0})),h(l)}}))),(n,i,r)=>n.pipe(S(ep.match),y((t=>{const{addressType:e}=t.payload,a=i.value.addressViewState.newAddressState?.[e];if(a!=null){const s=Je(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(T(c)&&d.length>0){const l=[G(d)];return l.push(Bo({addressId:d[0].address_id,addressType:e})),h(l)}return p(va({addressType:e,status:c.status}))})),I((c=>p(va({addressType:e,status:f("Unexpected Error","Create Address REST API call errored out"+JSON.stringify(c))})))))}return[]}))),(n,i,r)=>n.pipe(S(EM.match),A((()=>{const t=fT(i.value.autotransferRulesState.ruleUpdateLocalData);return r.postAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto`,t).pipe(y((e=>{if(T(e)&&e.data!=null){const a=lu(e.data.auto_transfer_rule),s=[TM({rule:a}),N({messageSection:"auto_transfer_rule_create",messageText:"success",type:"success"})];return h(s)}return h([Rv({fetchState:"Error",error:e.status}),N({messageSection:"auto_transfer_rule_create",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:e.status.message}]})])})),I((e=>p(Rv({fetchState:"Error",error:f("Unexpected Error","Create auto transfer rule REST API call errored out "+JSON.stringify(e))})))))}))),(n,i,r)=>n.pipe(S(VA.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 T(l)?(u.push(Ve(l.data?.bank_accounts??[]),Ze({fetchState:"Completed",isInternationalBankAccount:!1})),o!=="vendor"&&o!=="billDetail"&&o!=="express-pay"||(u.push(Qp({bankAccountIds:[l.data?.bank_accounts[0].bank_account_id??""],vendorId:c})),o==="billDetail"&&u.push(Dt(c))),o==="express-pay"&&u.push(Vo({localData:{...a.formLocalData,amount:a.formLocalData?.amount??{amount:0,currencyCode:"USD",currencySymbol:"$"},paymentDate:a.formLocalData?.paymentDate??ye(),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(Ve(l.data?.bank_accounts??[]),Ze({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(Qp({bankAccountIds:[l.data?.bank_accounts[0].bank_account_id??""],vendorId:c})),o==="billDetail"&&u.push(Dt(c)),o==="express-pay"&&u.push(Vo({localData:{...a.formLocalData,amount:a.formLocalData?.amount??{amount:0,currencyCode:"USD",currencySymbol:"$"},paymentDate:a.formLocalData?.paymentDate??ye(),paymentToAccountId:l.data?.bank_accounts[0].bank_account_id??""}})))):(u.push(Ze({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}]}))),h(u)})),I((l=>p(Ze({fetchState:"Error",error:f("Unexpected Error","Bank Account Creation REST API call errored out"+JSON.stringify(l)),isInternationalBankAccount:!1}))))):h([])}))),(n,i,r)=>n.pipe(S(xL.match),y((t=>{const e=UL(t.payload);return r.postAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/policy-templates`,e).pipe(y((a=>{if(V(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?[kL(d)]:[],u=[...c.map((m=>ud(m))),...l,Ls({fetchState:"Completed",perItemErrors:(o??[]).map(BL),templateIds:d})];return h(u)}return p(Ls({fetchState:"Error",error:a.status}))})),I((a=>p(Ls({fetchState:"Error",error:f("Unexpected Error","Create card-policy templates REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(dO.match),y((t=>{const{paymentsMethod:e}=t.payload,a={...YY(e)};return r.postAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/stripe/cards/setup_intent`,a).pipe(y((s=>{if(T(s)&&s.data){const{client_secret:o}=s.data;return h([Go({fetchState:"Completed",clientSecret:o})])}return h([Go({fetchState:"Error",error:s.status}),N({messageSection:"create_card_setup",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:s.status.message}]})])})),I((s=>p(Go({fetchState:"Error",error:f("Unexpected Error","Create Setup Intent REST API call errored out "+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(Zj.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=>T(a)?p(tt(a.data?.deposit_accounts??[]),ta({data:a.data?.deposit_accounts??[],updateType:"merge"}),N({messageSection:"create_checking_account",messageText:"success",type:"success"}),fl({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}]}),fl({fetchState:"Error",accoutnId:void 0,error:a.status})))),I((a=>p(N({messageSection:"create_checking_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(a)}]}),fl({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(tp.match),y((t=>{if(t.payload.addressType==="company_address"&&i.value.addressViewState.newAddressState?.company_address!=null){const e=t.payload.companyId,a=Je(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(T(s)&&o.length>0){const c=s.data,d=[G(o)];return d.push(H({payload:c?.companies??[],schema:{}})),d.push(Bo({addressId:o[0].address_id,addressType:"company_address"})),h(d)}return p(va({addressType:"company_address",status:s.status}))})),I((s=>p(va({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(ey.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=oo(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(T(d)&&l.length>0){const u=[F({users:l}),H({payload:d.data?.companies??[],schema:{}}),K(d.data?.user_roles??[])],m=e.map((_=>{const g=l.find((v=>v.email===_.email));return{..._,firstName:g?.first_name?.trim()??_.firstName,lastName:g?.last_name?.trim()??_.lastName,phone:g?.phone??"",userId:g?.user_id}}));return u.push(ui({officers:m})),e.forEach((_=>{const{officerType:g}=_,v=l.find((P=>P.email===_.email)),b=g.toLowerCase().concat("_address");o?.[b]?.addressToCreate!=null&&u.push(An({addressType:b,companyId:s,userId:v?.user_id}))})),u.push(mC({companyId:s,officerTypes:a})),h(u)}return p(ty({companyId:s,officerTypes:a,status:d.status}))})),I((d=>p(ty({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(ap.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={...Je(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(T(l)&&u.length>0){const m=l.data,_=[G(u)];return _.push(H({payload:m?.companies??[],schema:{}}),F({users:m?.users??[]}),K(m?.user_roles??[])),_.push(Bo({addressId:u[0].address_id,addressType:e})),h(_)}return p(va({addressType:e,status:l.status}))})),I((l=>p(va({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(NB.match),y((()=>{const{draft:t}=i.value.invoicingCreateCreditNoteState,e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/credits`,a=AB(t);return r.postAndGetJSON(e,a).pipe(y((s=>T(s)&&s.data!=null?[us([s.data],"merge"),OB({creditNoteId:s.data.id}),N({messageSection:"invoicing_credit_note_saved",messageText:"success",type:"success"})]:h([bh(s.status),N({messageSection:"invoicing_credit_note_saved",messageText:"failed",type:"error",variables:Ne(s.status)})]))),I((s=>h([bh(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(pB.match),y((t=>{const{context:e,merchantId:a}=t.payload,{newGlobalMerchantData:s,recommendationIds:o,recommendedNonExistingGlobalMerchants:c}=i.value.globalMerchantViewState,d=Array({globalMerchants:go(i.value.globalMerchantState,o)}),l=Array({globalMerchants:c}),u=Io(d,l);if(s!=null){const m={...$H(s,u)};return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/global-merchants`,m).pipe(y((_=>{if(_.data!=null&&T(_)){const{global_merchants:g}=_.data,v=[Tt({globalMerchants:g,updateType:"merge"})],b=g[0].global_merchant_id;return e==="vendor_global_review"&&a!=null&&v.push(mB(a,b)),v.push(yB({merchantId:b}),N({messageSection:"create_global_merchant",messageText:"success",type:"success",variables:[{variableName:"_global_merchant_name_",variableValue:g[0].global_merchant_name}]})),h(v)}return p(ph({status:_.status}),N({messageSection:"create_global_merchant",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:_.status.message}]}))})),I((_=>p(ph({status:f("Unexpected Error","Create Global Merchant REST API call errored out"+JSON.stringify(_))})))))}return[]}))),(n,i,r)=>n.pipe(S(LA.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)=>({...RE(l),country_code:u??""}))(c,d)).pipe(y((l=>{const u=[];return T(l)?(u.push(Ia(l.data?.payment_instruments??[]),Ze({fetchState:"Completed",isInternationalBankAccount:!0})),s!=="vendor"&&s!=="billDetail"&&s!=="express-pay"||(u.push(Un({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(Ze({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(Un({paymentInstrumentIds:[l.data?.payment_instruments[0].zeni_payment_instrument_id??""],vendorId:o})),s==="billDetail"&&u.push(Dt(o)))):(u.push(Ze({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}]}))),h(u)})),I((l=>p(Ze({fetchState:"Error",error:f("Unexpected Error","Bank Account Creation REST API call errored out"+JSON.stringify(l)),isInternationalBankAccount:!0}))))):h([])}))),(n,i,r)=>n.pipe(S(CB.match),y((t=>{const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices`;return r.postAndGetJSON(e,{...t.payload}).pipe(y((a=>T(a)&&a.data!=null?[Va([a.data],"merge"),G(Kr([a.data])),xB({id:a.data.id,status:a.data.status}),Eh({id:a.data.customer_id}),Th({customerId:a.data.customer_id}),UB({invoiceId:a.data.id}),N({messageSection:"invoicing_invoice_saved",messageText:"success",type:"success"})]:h([Ph(a.status),N({messageSection:"invoicing_invoice_saved",messageText:"failed",type:"error",variables:Ne(a.status)})]))),I((a=>h([Ph(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(BB.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=>T(s)&&s.data!=null?p(DB(s.data)):p(Nh(s.status)))),I((s=>p(Nh(f("Unexpected Error","Setup intent REST API call errored out "+JSON.stringify(s)))))))}))),(n,i)=>n.pipe(S(P1.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:hQ(o,o?.estimatedMonthlyAmount??{amount:0,currencyCode:"USD",currencySymbol:"$"},o?.startingBalance??{amount:0},c?.name??"")};return t.push(Cs({scheduleType:e,selectedJeScheduleDetailId:void 0,localData:d})),h(t)}))),(n,i)=>n.pipe(S(Sv.match),y((r=>{const t=[],e=r.payload.scheduleType,a=i.value,{scheduleDetailState:s}=a,o=s.selectedJEScheduleKey;if(o!=null){const c=qt(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,_={scheduleType:e,jeScheduleDetails:$1(u,d,l,e==="fixed_assets"?{assetId:m}:void 0)};t.push(ks({scheduleType:e,selectedJeScheduleDetailId:c.jeScheduleId,localData:_}))}return h(t)}))),(n,i,r)=>n.pipe(S(HG.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(T(d)&&d.data!=null){const l=[L0(d.data.task_groups[0]),R0({newTaskGroupId:d.data.task_groups[0].task_group_id}),QG({newTaskGroup:d.data.task_groups[0]}),N({messageSection:"task_group_creation_success",messageText:"success",type:"success"})];return a===!0&&l.push(Cl(o.selectedTaskIds,d.data.task_groups[0].task_group_id,{taskGroupIds:[d.data.task_groups[0].task_group_id]})),h(l)}return p(F0({fetchState:"Error",error:d.status}))})),I((d=>p(F0({fetchState:"Error",error:f("Unexpected Error","Create Task Group REST API call errored out"+JSON.stringify(d))})))))}))),(n,i,r)=>n.pipe(S(qU.match),y((t=>{const e=i.value,{localData:a}=t.payload,s=crypto.randomUUID(),o={...TH(e,a),request_id:s},c=e.expenseAutomationViewState.selectedPeriodByTenantId[Q(e).tenantId],d=c!=null?Re(c):void 0,l=d!=null?ge(d.start):void 0,u=d!=null?ge(d.end):void 0;return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals`,o).pipe(y((m=>{if(T(m)&&m.data!=null){const _=[Ft([m.data.accrual]),jU(),N({messageSection:"create_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:a.vendorName}]})];return l!=null&&u!=null&&_.push(lr({start:l,end:u},!0)),h(_)}return h([C_({status:m.status}),N({messageSection:"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:m.status.message}]})])})),I((m=>h([N({messageSection:"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(m)}]}),C_({status:f("Unexpected Error",`Create One Time Accrual REST API call errored out ${JSON.stringify(m)}`)})]))),_e(n.pipe(S(ke.match))))}))),(n,i,r)=>n.pipe(S(VV.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`,LV(o)).pipe(y((c=>{const d=[];return T(c)&&c.data!=null?(d.push(Ia(c.data.payment_instruments??[]),Ms({fetchState:"Completed"})),a!=="vendor"&&a!=="billDetail"&&a!=="express-pay"||(d.push(Un({paymentInstrumentIds:[c.data.payment_instruments[0].zeni_payment_instrument_id??""],vendorId:s})),d.push(FV({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(Ms({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(Un({paymentInstrumentIds:[c.data?.payment_instruments[0].zeni_payment_instrument_id??""],vendorId:s})),a==="billDetail"&&d.push(Dt(s)))):(d.push(Ms({fetchState:"Error",error:c.status})),d.push(N({messageSection:"create_bank_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}))),h(d)})),I((c=>p(Ms({fetchState:"Error",error:f("Unexpected Error","Payment Instrument Creation REST API call errored out"+JSON.stringify(c))}))))):h([])}))),(n,i,r)=>n.pipe(S(ON.match),A((t=>{const{agentId:e,userId:a,questionAnswerId:s,questionId:o,createdAt:c,question:d,files:l,pageContext:u,macroId:m}=t.payload,_={agent_id:e,...u!=null&&{page_context:u}};return r.postAndGetJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/sessions`,_).pipe(y((g=>{if(T(g)&&g.data!=null){const v=g.data,b=v.chat_session_id;return(function(E,P,O=5e3){return new BN((x=>{if(E==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-${P}`,k=E.channel(U);if(k?.subscribed===!0)return x.next({success:!0}),void x.complete();const C=k??E.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(DN(O),JN(),I((x=>{const U=x instanceof Error?x.message:"Subscription timeout or error";return p({success:!1,error:U})})))})(wN,`chat-${b}`).pipe(y((E=>{const P=[];return E.success||P.push(N({messageSection:"ai_cfo_create_session_and_submit",messageText:"notification",type:"warning"})),j(p(...P,mp({chatSessionId:b,userId:a,createdAt:Z(v.created_at)}),kN({agentId:e,sessionId:b})),cr(100).pipe(Oe(1),UN()),p(xN(),pp(b,s,a,o,c,d,l,m),CN({chatSessionId:b,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"}),yp(g.status))})),I((g=>p(yp(f("Unexpected Error",`Create and Submit Session REST API call errored out: ${JSON.stringify(g)}`))))))}))),(n,i,r)=>n.pipe(S($N.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=>T(l)&&l.data!=null?p(mp({chatSessionId:l.data.chat_session_id,userId:c,createdAt:Z(l.data.created_at)}),RN({agentId:e,contextMessage:l.data.context_message,contextStatus:l.data.context_status,sessionId:l.data.chat_session_id})):p(_p(l.status)))),I((l=>p(_p(f("Unexpected Error",`Create Session REST API call errored out: ${JSON.stringify(l)}`))))))}))),(n,i,r)=>n.pipe(S(CG.match),y((t=>{const e=i.value,a=ua(e.taskState,t.payload.parentTaskId),s=a?.taskGroupIds??[],o=s[0],c=e.taskListState.fetchState==="Completed",d=GQ(t.payload,s);return r.postAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks`,d).pipe(y((l=>{if(T(l)&&l.data!=null&&l.data.tasks.length>0){const u=l.data.tasks[0].task_id,m=[ze(l.data.tasks),xG({parentTaskId:t.payload.parentTaskId,subTaskId:u}),El({fetchState:"Completed",newTaskId:u}),N({messageSection:"create_sub_task",messageText:"success",type:"success"})],_=l.data.tasks[0];return _.parent_task_id!=null&&_.parent_task_id!==""||c!==!0||o==null||m.push(J0({taskGroupId:o,task:_})),h(m)}return p(El({fetchState:"Error",error:l.status}),N({messageSection:"create_sub_task",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]}))})),I((l=>p(El({fetchState:"Error",error:f("Unexpected Error","Create Sub Task REST API call errored out"+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(SG.match),y((function(t){const{tagName:e,taskId:a}=t.payload;return RQ(e,r,a)}))),(n,i,r)=>n.pipe(S(jG.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(T(c)&&c.data!=null){const d=[$0(c.data.groups),ze(c.data.tasks),GG(),zG({tasks:c.data.tasks})];return s.includes(c.data.groups[0].task_group_id)===!1&&d.push(R0({newTaskGroupId:c.data.groups[0].task_group_id})),h(d)}{const d=[M0(c.status)];return h(d)}})),I((c=>{const d=[M0(f("Unexpected error","Create task from templates REST API call errored out"+JSON.stringify(c)))];return h(d)})))}))),n=>n.pipe(S(_z.match),S((i=>i.payload.failedAttachmentFileNames.length>0)),Ee((i=>N({messageSection:"missing_receipts_attachment",messageText:"failed",type:"error",showStatusIcon:!0,variables:[{variableName:"__message__",variableValue:` - ${i.payload.failedAttachmentFileNames.join(", ")},`}]})))),(n,i,r)=>n.pipe(S(fz.match),je((t=>{const{transactionType:e}=t.payload,a=i.value,s=a.transactionDetailState.createTransactionsState.newTransactionState[e];return vz((()=>r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/manage`,oW(a,s)))).pipe(y((o=>{const c=T(o)?o.data?.transactions[0]:void 0;if(c==null){const l=T(o)?f("Unexpected Error","Transaction was created but returned no details."):o.status;return h([kl("Error",void 0,l),N({messageSection:"create_transaction",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.message}]})])}const d=Or(c);return h([Mt(Be(d),c),kl("Completed",d),Cr({transactionId:d,vendorId:c.vendor_id??void 0}),N({messageSection:"create_transaction",messageText:"success",type:"success"})])})),I((o=>{const c=o instanceof Oo?o.message:JSON.stringify(o);return h([kl("Error",void 0,f("Unexpected Error",`Create Transaction REST API call errored out ${c}`)),N({messageSection:"create_transaction",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c}]})])})))}))),(n,i,r)=>n.pipe(S(KC.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(T(m)&&m.data!=null){const g=m.data?.transaction;return g!=null?(_=g)==null||typeof _.transaction_id!="string"||_.transaction_id===""||typeof _.transaction_type!="string"||_.transaction_type===""?h(Wl()):(function(v,b,E,P){const O=Or(v),x=(k=O,!((U=E).id===k.id&&U.type===k.type));var U,k;const C=[Mt(Be(O),v),Cr({transactionId:O,vendorId:b?.[0]?.vendor_id}),...FE(P)];return x&&C.push(HC(E,O)),j(h(C),qE(x?E:void 0))})(g,m.data?.vendors,l,e):(function(v){return j(h(FE(v)),qE(void 0))})(e)}var _;return h(Wl())})),I((()=>h(Wl()))))}))),(n,i,r)=>n.pipe(S(FA.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(T(c)){const l=c.data?.bank_accounts??[];d.push(Wp({bankAccountIds:l.map((u=>u.bank_account_id)),userId:e}),Ve(l),_r({bankAccountId:l?.[0].bank_account_id,shouldOverWriteCurrentBankAccountId:!0,reimbursementId:a}),Ze({fetchState:"Completed"}),N({messageSection:"account_added",messageText:"success",type:"success"}))}else c.status.code,d.push(Ze({fetchState:"Error",error:c.status}));return h(d)})),I((c=>p(Ze({fetchState:"Error",error:f("Unexpected Error","Bank Creation REST API call errored out"+JSON.stringify(c))}))))):h([])}))),(n,i,r)=>n.pipe(S(Nx.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(T(o)){const c=[],d=Ja(e,a);return o.data!=null&&c.push(wy(d,o.data)),c.push($y({accountId:e,selectedPeriod:a})),p(...c)}return p(xr({accountId:e,selectedPeriod:a,error:o.status}))})),I((o=>p(xr({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(PM.match),A((t=>{const{ruleId:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto/${e}`).pipe(y((a=>{if(T(a)){const s=[NM({ruleId:e}),N({messageSection:"auto_transfer_rule_delete",messageText:"success",type:"success"})];return h(s)}return h([Mv({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}]})])})),I((a=>p(Mv({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(qA.match),A((t=>r.deleteAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/bank-accounts/${t.payload.bankAccountId}`).pipe(y((e=>{if(T(e)){const a=[];return a.push(yt({bankAccountId:t.payload.bankAccountId,fetchState:"Completed"})),t.payload.bankAccountContext==="vendor"&&a.push(jA({bankAccountId:t.payload.bankAccountId,vendorId:t.payload.vendorId})),a.push(N({messageSection:"delete_bank_account",messageText:"success",type:"success"})),h(a)}return p(yt({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}]}))})),I((e=>p(yt({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(RM.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(V(d)){const l=[];return l.push(Mc("Completed",t.payload.billId)),a!=null&&l.push(Gv({billId:t.payload.billId,tab:a.billPayInfo.stage.code})),l.push(Rc(Ie(t.payload.billId))),s===!0&&o!=null&&l.push(zv(o)),l.push(N({messageSection:"bill_pay_deleted",messageText:"success",type:"success"})),h(l)}return p(Mc("Error",t.payload.billId,d.status),N({messageSection:"bill_pay_deleted",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}))})),I((d=>p(Mc("Error",t.payload.billId,f("Unexpected Error","Delete bill REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(QM.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(T(o)&&o.data!=null){const c=o.data.approval_rules.map((l=>l.approval_rule_id)),d=[F({users:o.data.users}),at(o.data.approval_rules),N({messageSection:"bill_pay_approval_delete",messageText:"success",type:"success"}),WM(e,c)];return h(d)}return p(N({messageSection:"bill_pay_approval_delete",messageText:"failed",type:"error"}),tI(e,o.status))})),I((o=>p(tI(e,f("Unexpected Error","Delete Bill Pay Approval Rule errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(EG.match),y((t=>{const{cannedResponseId:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/canned-responses/${e}`).pipe(y((a=>T(a)?p(TG({cannedResponseId:e})):p(U0({error:a.status})))),I((a=>p(U0({error:f("Unexpected Error","Delete Canned Response errored: "+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(MN.match),y((t=>{const{chatSessionId:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/sessions/${e}`).pipe(y((a=>V(a)?h([VN({chatSessionId:e}),LN(e),N({messageSection:"ai_cfo_chat_session_deleted",messageText:"success",type:"success"})]):p(hp({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)}]})))),I((a=>p(hp({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(Ax.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[be(a)]?.reconciliationByAccountID[e];o=Ry(d)}if(o==="")return p(xr({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(T(d)===!0){const l=[];return s!=null&&s!==""&&l.push(Ii([s])),d.data!=null&&l.push(wy(Ja(e,a),{statement_upload:d.data.statement_upload})),l.push($y({accountId:e,selectedPeriod:a}),Vt(a,void 0,!0,!0)),p(...l)}return p(xr({accountId:e,selectedPeriod:a,error:d.status}))})),I((d=>p(xr({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(YP.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(V(e))return h([HP(t.payload.tenantId,t.payload.connectionId,t.payload.connectionType)]);const a=e.status??f("Failed to delete connection. Please try again.");return h([qu(t.payload.tenantId,a)])})),I((e=>{const a=e instanceof Error?e.message:"Unexpected error deleting connection.";return h([qu(t.payload.tenantId,f(a))])})))))),(n,i,r)=>n.pipe(S(Wk.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=>T(s)?p(Ii([e]),Zk({fileId:e})):p(ih({fileId:e,status:s.status})))),I((s=>p(ih({fileId:e,status:f("Unexpected Error","Delete File REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(Xk.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=>T(a)?p(Ii(e),eB({fileIds:e})):p(ch({fileIds:e,status:a.status})))),I((a=>p(ch({fileIds:e,status:f("Unexpected Error","Delete File List REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(GA.match),A((t=>r.deleteAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/payment-instruments/${t.payload.bankAccountId}`).pipe(y((e=>{if(T(e)){const a=[];return a.push(yt({bankAccountId:t.payload.bankAccountId,fetchState:"Completed"})),t.payload.bankAccountContext==="vendor"&&a.push(Zp({paymentInstrumentId:t.payload.bankAccountId,vendorId:t.payload.vendorId})),a.push(N({messageSection:"delete_bank_account",messageText:"success",type:"success"})),h(a)}return p(yt({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}]}))})),I((e=>p(yt({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(qV.match),A((t=>r.deleteAndGetJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-instruments/${t.payload.paymentInstrumentId}`).pipe(y((e=>{if(T(e)){const a=[];return a.push(id({paymentInstrumentId:t.payload.paymentInstrumentId,fetchState:"Completed"})),t.payload.bankAccountContext==="vendor"&&a.push(Zp({paymentInstrumentId:t.payload.paymentInstrumentId,vendorId:t.payload.vendorId})),a.push(N({messageSection:"delete_bank_account",messageText:"success",type:"success"})),h(a)}return p(id({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}]}))})),I((e=>p(id({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(X$.match),y((t=>r.deleteAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user-roles/${t.payload.userRoleId}`).pipe(y((e=>V(e)?p(eR(t.payload.userId),N({messageSection:"people_delete_person",messageText:"success",type:"success"}),tP({userType:"manager",id:t.payload.userId})):p(If(t.payload.userId)))),I((()=>p(If(t.payload.userId)))))))),(n,i,r)=>n.pipe(S(rj.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(T(o)&&o.data!=null){const c=o.data.approval_rules.map((l=>l.approval_rule_id)),d=[F({users:o.data.users}),at(o.data.approval_rules),N({messageSection:"reimbursement_approval_delete",messageText:"success",type:"success"}),nj(e,c)];return h(d)}return p(N({messageSection:"reimbursement_approval_delete",messageText:"failed",type:"error"}),Db(e,o.status))})),I((o=>p(Db(e,f("Unexpected Error","Delete Reimbursement Approval Rule errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(Yq.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(JQ))}`).pipe(y((s=>{if(V(s)){const o=[Zd("Completed",t.payload.reimbursementId)];return a!=null&&o.push(Ub({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"})),h(o)}return p(Zd("Error",t.payload.reimbursementId,s.status),N({messageSection:"reimbursement_deleted",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:s.status.message}]}))})),I((s=>p(Zd("Error",t.payload.reimbursementId,f("Unexpected Error","Delete reimbursement REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(FN.match),y((t=>{const{scheduleId:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/routines/${encodeURIComponent(e)}`).pipe(y((a=>V(a)?p(qN({scheduleId:e})):p(Sp({scheduleId:e,status:a.status}),gt()))),I((a=>p(Sp({scheduleId:e,status:f("Unexpected Error","Delete routine REST API call failed",a instanceof Error?{message:a.message}:void 0)}),gt()))))}))),(n,i,r)=>n.pipe(S(N1.match),y((t=>{const e=i.value,{scheduleAccruedDetailState:a}=e,{scheduleType:s}=t.payload,o=a.selectedJEAccruedScheduleKey,c=[];if(o==null)return h(c);const d=da(o,e);if(d==null)return h(c);const l=d.jeScheduleId,u=d.vendor.name,m=e.scheduleAccruedDetailState.editScheduleStateByDetailId[l],_={...gT(e,m,o,!0)},g={je_schedule_type:s};return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${l}?query=${encodeURIComponent(JSON.stringify(g))}`,_).pipe(y((v=>T(v)&&v.data!=null?(c.push(A1(o),O1(s,l),Tc("Completed"),N({messageSection:"delete_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:u}]})),h(c)):(c.push(Tc("Error",v.status)),c.push(N({messageSection:"delete_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:v.status.message}]})),h(c)))),I((v=>h([N({messageSection:"delete_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(v)}]}),Tc("Error",f("Unexpected Error",`Delete Accrued Schedule Detail REST API call errored out ${JSON.stringify(v)}`))]))))}))),(n,i,r)=>n.pipe(S(R1.match),y((t=>{const e=i.value,{scheduleDetailState:a}=e,{selectedJeScheduleDetailId:s,scheduleType:o}=t.payload,c=a.selectedJEScheduleKey,d=[];if(c==null)return h(d);const l=qt(c,e),u=l.vendor.name,m=l.jeScheduleId??s;if(m==null)return h(d);const _=e.scheduleDetailState.editScheduleStateByDetailId[o][m],g={...Oc(e,_,c,o,!0)},v={je_schedule_type:o};return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${m}?query=${encodeURIComponent(JSON.stringify(v))}`,g).pipe(y((b=>T(b)&&b.data!=null?(d.push(M1(c),V1(o,m),Cc("Completed"),N({messageSection:"delete_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:u}]})),h(d)):(d.push(Cc("Error",b.status)),d.push(N({messageSection:"delete_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:b.status.message}]})),h(d)))),I((b=>h([N({messageSection:"delete_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(b)}]}),Cc("Error",f("Unexpected Error",`Delete Schedule Detail REST API call errored out ${JSON.stringify(b)}`))]))))}))),(n,i,r)=>n.pipe(S(jN.match),y((t=>{const{macroId:e}=t.payload,a=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/skills/${encodeURIComponent(e)}`;return r.deleteAndGetJSON(a).pipe(y((s=>V(s)?p(GN({macroId:e})):p(gp(s.status)))),I((s=>p(gp(f("Unexpected Error","Delete skill REST API call failed",s instanceof Error?{message:s.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(fG.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=>V(s)&&s.data!=null?h([Il({fetchState:"Completed",tagId:e}),vG(e),IG({tagId:e,taskId:a})]):h([Il({fetchState:"Error",tagId:e,error:s.status}),N({messageSection:"delete_tag",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:s.status.message}]})]))),I((s=>p(Il({fetchState:"Error",tagId:e,error:f("Unexpected Error","Delete tag REST API call errored out "+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(UG.match),y((t=>{const{taskId:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${e}`).pipe(y((a=>{if(V(a)){const s=[];return e!=null&&s.push(No(e)),s.push(Ct()),s.push(Tl({fetchState:"Completed",taskId:e})),h(s)}return h([Tl({fetchState:"Error",taskId:e,error:a.status}),N({messageSection:"delete_task",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]})])})),I((a=>p(Tl({fetchState:"Error",taskId:e,error:f("Unexpected Error","Delete Task REST API call errored out "+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(WG.match),A((t=>{const{taskGroupId:e}=t.payload;return r.deleteAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/groups/${e}`).pipe(y((a=>T(a)&&a.data!=null?p(ez(e),XG({deletedTaskGroupId:e}),ZG({taskGroupId:e}),N({messageSection:"task_group_deletion_success",messageText:"success",type:"success"})):p(q0({fetchState:"Error",error:a.status})))),I((a=>p(q0({fetchState:"Error",error:f("Unexpected Error","Delete Task Group REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(Pz.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(T(o)){const c=Be(a);return p(Oz({thirdPartyTransactionId:a.id,attachmentFileName:e}),Az({id:c,attachmentFileName:e}),Nz({transactionId:a,attachmentFileName:e}))}return p(X0({transactionId:a,attachmentFileName:e,status:o.status}))})),I((o=>p(X0({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(zA.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(T(d)){const l=[];l.push(yt({bankAccountId:t.payload.bankAccountId,fetchState:"Completed"}),KA({userId:e,bankAccountId:a}));const u=o.filter((m=>m!==a));return a===c&&(u.length===1?l.push(_r({bankAccountId:u[0],reimbursementId:s,shouldOverWriteCurrentBankAccountId:!0})):l.push(_r({reimbursementId:s,shouldOverWriteCurrentBankAccountId:!0}))),h(l)}return p(yt({bankAccountId:t.payload.bankAccountId,fetchState:"Error",error:d.status}))})),I((d=>p(yt({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(_C.match),A((t=>{const{companyId:e}=t.payload,a=Oa(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(T(s)&&o.length>0){const c=[H({payload:o,schema:{}})];return a!=null&&c.push(ny({enabled:!1,tenantId:a})),c.push(sy()),c.push(N({messageSection:"accounting_projects_enabled_update",messageText:"success",type:"success"})),h(c)}return h([vt({status:s.status}),N({messageSection:"accounting_projects_enabled_update",messageText:"failed",type:"error"})])})),I((s=>p(vt({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(dw.match),y((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/settings/stripe-connect/callback`;return r.deleteAndGetJSON(t).pipe(A((e=>T(e)?p(lg({stripe_connected:!1,publishable_key:""}),lt()):p(Is(e.status)))),I((e=>p(Is(f("Unexpected Error","Stripe disconnect REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(yC.match),A((t=>{const{companyId:e,accountId:a}=t.payload,s=Oa(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=>T(c)&&s!=null?h([ay({tenantId:s,accountId:a})]):h([]))),I((()=>h([]))))}))),KK,YK,HK,(n,i,r)=>n.pipe(S(Cz.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?xz({attachmentId:e,data:a}):eE()))),I((a=>(console.error(`REST API call errored out ${a}`),p(eE())))))}))),(n,i)=>n.pipe(S(nz.match),y((r=>{const{taskIds:t,groupId:e}=r.payload,a=i.value,{groupByKey:s}=a.taskListState.uiState,o=sz(s,e),c=[G0({taskIds:t,groupId:e,removeFromList:!1}),Cl(t,e,o)];return h(c)}))),(n,i,r)=>n.pipe(S(hC.match),A((t=>{const{companyId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounting_provider_project_authorization_status`).pipe(y((a=>T(a)&&a.data!=null?a.data.is_accounting_provider_project_apis_authorized!==!0?h([SC()]):h([oy(e)]):h([vt({status:a.status}),N({messageSection:"accounting_projects_enabled_update",messageText:"failed",type:"error"})]))),I((a=>p(vt({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($F.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(V(s)&&s.data!=null){const o=[F({users:s.data.users}),K(s.data.user_roles),H({payload:s.data.companies,schema:{}}),RF(),N({messageSection:e?"charge_card_auto_pay_enable":"charge_card_auto_pay_disable",messageText:"success",type:"success"})];return h(o)}return p(sb(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}]}))})),I((s=>p(sb(f("Unexpected Error","Enable Charge Card Auto Pay errored out"+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(yJ.match),y((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/config`;return r.putAndGetJSON(t,{is_invoicing_enabled:!0}).pipe(A((e=>T(e)&&e.data!=null?p(ec(e.data),_J()):p(fS(e.status)))),I((e=>p(fS(f("Unexpected Error","Enable invoicing REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(ZF.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(T(o)&&o.data!=null){const c=[F({users:o.data.users}),K(o.data.user_roles),H({payload:o.data.companies,schema:{}}),Le({companyId:o.data.companies[0].company_id}),XF()];return h(c)}return p(yb(o.status))})),I((o=>p(yb(f("Unexpected Error","Enable Setup errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(D$.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(T(o)&&o.data!=null){const c=o.data.payment_accounts.map((l=>l.payment_account_id)),d=[X(o.data.accounts,"onboarding"),ve(o.data.payment_accounts),J$(c,a)];return h(d)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),nf(o.status,a))})),I((o=>p(nf(f("Unexpected Error","Establish Onboarding Plaid Connection errored out"+JSON.stringify(o)),a)))))}))),(n,i,r)=>n.pipe(S(Tq.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,_=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((v=>{if(T(v)&&v.data!=null){const b=v.data.payment_accounts[0],E=[ve(v.data.payment_accounts),ea({data:v.data.payment_accounts,updateType:"merge"}),Pq(o,c)];if(c==="bill_pay_detail"&&E.push(Nq(b.payment_account_id)),c==="charge_card_payment"){const P=Aq(b),O=Oq(P,m.paymentAccountBalanceFetchStatus);E.push(Cq(O))}if(s!=null&&(s==="billing"&&E.push(wc(s,c,!1)),b.is_primary_for_bill_pay,b.is_primary_for_bill_pay===!0&&E.push(yn({companyId:a,primaryFundingAccountId:b.payment_account_id,accountType:"paymentAccount",productType:"bill_pay"})),b.is_primary_for_reimbursements===!0&&E.push(yn({companyId:a,primaryFundingAccountId:b.payment_account_id,accountType:"paymentAccount",productType:"reimbursement"})),b.is_primary_for_charge_cards===!0&&E.push(yn({companyId:a,primaryFundingAccountId:b.payment_account_id,accountType:"paymentAccount",productType:"charge_cards"})),b.is_primary_for_deposit_accounts===!0&&E.push(yn({companyId:a,primaryFundingAccountId:b.payment_account_id,accountType:"paymentAccount",productType:"zeni_accounts"}))),v.data.bank_accounts!=null){const P=v.data.bank_accounts.map((O=>O.bank_account_id));E.push(Ve(v.data.bank_accounts),Wp({bankAccountIds:P,userId:_}))}return s!=null?E.push(X(v.data.accounts,za(s))):E.push(N({messageSection:"account_added",messageText:"success",type:"success"})),h(E)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),Eb(v.status,o,c))})),I((v=>p(Eb(f("Unexpected Error","Establish Plaid Connection errored out"+JSON.stringify(v)),o,c)))))}))),(n,i,r)=>n.pipe(S(Ox.match),y((t=>{const{accountId:e}=t.payload,a=i.value,s=Q(a),o=a.expenseAutomationViewState.selectedPeriodByTenantId[s.tenantId],c=wa(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(T(u)){const m=zn("excluded_account_reconciliation",e),_=zn("account_reconciliation",e);return p(Cx({account:u.data?.excluded_account??void 0,selectedPeriod:o}),My({oldKey:_,newKey:m}),N({messageSection:"account_excluded_from_reconciliation",messageText:"success",type:"success",variables:[{variableName:"_account-name_",variableValue:c?.account.accountName??""}]}))}return p(Vy({error:u.status}),N({messageSection:"account_excluded_from_reconciliation",messageText:"failed",type:"error"}))})),I((u=>p(Vy({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(MF.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(V(a)&&a.data!=null){const s=[F({users:a.data.users}),K(a.data.user_roles),H({payload:a.data.companies,schema:{}}),VF()];return h(s)}return p(ob(a.status),N({messageSection:"charge_card_express_interest",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]}))})),I((a=>p(ob(f("Unexpected Error","Express Interest in Charge Card errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(DP.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=>V(a)&&a.data!=null&&a.data.extracted_rules!=null?p(Co(a.data.extracted_rules)):p(Du(a.status)))),I((a=>p(Du(f("Unexpected Error","Extract card-policy document REST API call errored out"+JSON.stringify(a)))))),_e(n.pipe(S(Bu.match))))}))),(n,i,r)=>n.pipe(S(Ae.match),y((t=>{const{accountListKey:e,fetchFullResponse:a,excludeAccountPayableAccounts:s,excludeAccountReceivableAccounts:o,isLimitedCategoryEnabled:c,filterAccountTypes:d,isIncludeDeleted:l}=t.payload,u=((_,g)=>g.length>0?g:_===!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((_=>{if(T(_)){const g=[X(_.data?.accounts??[],"account_list"),nN({accountListKey:e,accountListResponse:_})];return h(g)}return p(Yu({accountListKey:e,status:_.status}))})),I((_=>p(Yu({accountListKey:e,status:f("Unexpected Error","Fetch Accounts REST API call errored out"+JSON.stringify(_))})))))}))),(n,i,r)=>n.pipe(S(Wu.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(T(t)){const e=[],a=[];return t.data?.accounts.forEach((s=>{a.push(s)})),e.push(X([...a],"account_list_by_type")),e.push(oN({accountPayload:a})),h(e)}return p(Zu({status:t.status}))})),I((t=>p(Zu({status:f("Unexpected Error","Fetch Accounts For Account Type REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(r_.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(T(t)&&t.data!=null){const e=[],a=[];return t.data.accounts.forEach((s=>{a.push(s)})),e.push(X([...a],"account_list_by_type")),e.push(pU({accountPayload:a})),h(e)}return p(n_({status:t.status}))})),I((t=>p(n_({status:f("Unexpected Error","Fetch Accounts For Account Type REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(vv.match),y((t=>{const{scheduleType:e}=t.payload,{scheduleListState:a}=i.value,s=Bc(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=ba(o),l=Us(c,o),u=s.jeScheduleAccruedByListKey[l];if(u!=null&&u.fetchState==="Completed"&&t.payload.cacheOverride===!1)return h([]);const m={start_date:te(d.start),end_date:te(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((_=>{if(T(_)&&_.data!=null){const g=[];return g.push(fa(_.data.je_schedules),wr(_.data.je_schedules,_.data.scheduled_journal_entries),Q1(e,o,c,_.data.je_schedules)),h(g)}return p(Iv(e,o,c,_.status))})),I((_=>p(Iv(e,o,c,f("Unexpected Error","Accrued Schedule List REST API call errored out"+JSON.stringify(_)))))))}))),QK,(n,i,r)=>n.pipe(S(dN.match),A((t=>{const{addressId:e,cacheOverride:a}=t.payload,s=st(i.value.addressState,e);return a===!0||s==null?r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/addresses/${e}`).pipe(y((o=>T(o)?p(G(o.data?.addresses??[]),rp(e)):p(np({addressId:e,status:o.status})))),I((o=>p(np({addressId:e,status:f("Unexpected Error","Fetch Address REST API call errored out"+JSON.stringify(o))}))))):p(rp(e))}))),(n,i,r)=>n.pipe(S(IN.match),A((t=>{const{fromMonth:e,toMonth:a,cacheOverride:s}=t.payload,o=i.value.aggregatedReportViewState.aggregatedReport,c=EN(e,a);if(!(s||o[c]?.fetchState!=="Error"&&o[c]?.fetchState!=="Completed"))return p(bN());const d=`${r.apiEndPoints.agentPerfBaseUrl}/1.0/agent-performance/reports/aggregated?from_month=${e}&to_month=${a}`;return r.getJSON(d).pipe(y((l=>T(l)?p(TN(l.data)):p(lp(l.status)))),I((l=>p(lp(f("Unexpected error","REST API call errored out"+JSON.stringify(l)))))))}))),(n,i,r)=>n.pipe(S(Do.match),A((()=>{const t=`${`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels`}/ai-accountant/customers`;return r.getJSON(t).pipe(y((e=>{if(T(e)){const a=e.data?.customers??[],s=e.data?.users??[];return h([yN(a),F({users:s}),_N(a)])}return p(ip(e.status))})),I((e=>p(ip(f("Unexpected error","AI Accountant customers fetch failed: "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(hN.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(T(l)){const u=l.data?.jobs??[],m=l.data?.users??[],_=l.data?.next_page_token??null;return h([F({users:m}),SN(e,u,a),gN(e,_)])}return p(cp({tenantId:e,error:l.status}))})),I((l=>p(cp({tenantId:e,error:f("Unexpected error","AI Accountant jobs fetch failed: "+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(o$.match),y((()=>{const t=`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/ai-agents-activation/status`;return r.getJSON(t).pipe(y((e=>{if(T(e)&&e.data!=null){const s=(e.data.phases??[]).map(QH);return p(i$({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(qg(e.status))})),I((e=>p(qg(f("Unexpected Error","fetchAiAgentsActivationStatus errored out "+JSON.stringify(e)))))))}))),(n,i)=>n.pipe(S(BC.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([Ba(),He(),Er(),Tr(),Pr(),Nr(),Ar(),xn(),ii(),gy(),Vn(0,"dueDate","descending",!1),oi()]);{const e=i.value,a=[];return e.companyViewState.managementView.fetchState==="In-Progress"||e.companyViewState.managementView.hasValidState()||a.push(Ba()),e.companyViewState.zeniUsers.fetchState==="In-Progress"||e.companyViewState.zeniUsers.hasValidState()||a.push(He()),e.subscriptionViewState.subscriptionListView.fetchState==="In-Progress"||e.subscriptionViewState.subscriptionListView.hasValidState()||a.push(Er()),e.companyViewState.portfolioView.fetchState==="In-Progress"||e.companyViewState.portfolioView.hasValidState()||a.push(Tr()),e.onboardingCockpitViewState.fetchState==="In-Progress"||e.onboardingCockpitViewState.hasValidState()||a.push(Pr()),e.onboardingCockpitViewState.qboConnectionPool.fetchState==="In-Progress"||e.onboardingCockpitViewState.qboConnectionPool.hasValidState()||a.push(Nr()),e.onboardingCockpitViewState.onboardingCompletedCompanies.fetchState==="In-Progress"||e.onboardingCockpitViewState.onboardingCompletedCompanies.hasValidState()||a.push(Ar()),e.reviewCompanyViewState.fetchState!=="In-Progress"&&e.reviewCompanyViewState.hasValidState()===!1&&a.push(xn()),e.companyHealthMetricViewState.fetchState!=="In-Progress"&&e.companyHealthMetricViewState.hasValidState()===!1&&(a.push(ii()),a.push(oi())),e.companyViewState.metaDataView.fetchState!=="In-Progress"&&e.companyViewState.metaDataView.hasValidState()===!1&&a.push(gy()),e.companyTaskManagerViewState.fetchState!=="In-Progress"&&e.companyTaskManagerViewState.hasValidState()===!1&&a.push(Vn(0,"dueDate","descending",!1)),h(a)}}))),(n,i)=>n.pipe(S(nU.match),A((r=>{const{cacheOverride:t,refreshViewInBackground:e,isAccrualEnabled:a}=r.payload,s=i.value,{monthEndCloseChecksState:o}=s,{monthEndCloseChecksByTenantId:c}=o,d=Q(s),l=d.companyId,u=s.expenseAutomationViewState.selectedPeriodByTenantId[d.tenantId],{selectedTransactionCategorizationTab:m}=s.expenseAutomationTransactionsViewState,_=Re(u),g=ge(_.start),v=ge(_.end),b=be(u),E=c?.[d.tenantId]?.[b],P=E?.monthEndCloseCheckList.some((O=>O.id==="reconciliation"))??!1;if(g==null||v==null||l==null)throw Error(`Invalid start - ${g} and end - ${v} period from given ${u}`);if(t===!0){const O=[];return O.push(kr(m,{start:g,end:v},t,!1,void 0,void 0,e,!1),Br({start:g,end:v},{amount:75,currencyCode:"USD",currencySymbol:"$"},t,e),Wn(u,t,e,null),Lt({start:g,end:v},t,a)),P&&O.push(Vt(u,void 0,t,e)),h(O)}{const O=[];s.expenseAutomationMissingReceiptsViewState.fetchState==="In-Progress"||s.expenseAutomationMissingReceiptsViewState.hasValidState()&&s.expenseAutomationMissingReceiptsViewState.transactionIdsBySelectedPeriod[b]!=null||O.push(Br({start:g,end:v},{amount:75,currencyCode:"",currencySymbol:""},t,e)),s.expenseAutomationFluxAnalysisViewState.fetchState==="In-Progress"||s.expenseAutomationFluxAnalysisViewState.hasValidState()&&s.expenseAutomationFluxAnalysisViewState.groupsBySelectedPeriod[b]!=null||O.push(Wn(u,t,e,null));const x=s.expenseAutomationJESchedulesViewState.uiState.selectedPageTab;if(x==="actual_matching")s.expenseAutomationActualMatchingViewState.matchIdsByPeriod[b]==null&&O.push(Lt({start:g,end:v},t,a));else{const U=Ni(x,b);s.expenseAutomationJESchedulesViewState.fetchState==="In-Progress"||s.expenseAutomationJESchedulesViewState.hasValidState()&&s.expenseAutomationJESchedulesViewState.jeScheduleTransactionKeysByPeriodAndTab[U]!=null&&s.expenseAutomationJESchedulesViewState.failedJeScheduleTransactionKeysByPeriodAndTab[U]!=null||O.push(Lt({start:g,end:v},t,a))}return s.expenseAutomationReconciliationViewState.fetchState!=="In-Progress"&&s.expenseAutomationReconciliationViewState.accountReconciliationRecordsBySelectedPeriod[b]==null&&P&&O.push(Vt(u,void 0,t,e)),s.expenseAutomationTransactionsViewState.transactionCategorizationView[m].fetchState==="In-Progress"||s.expenseAutomationTransactionsViewState.transactionCategorizationView[m].hasValidState()!==!1&&s.expenseAutomationTransactionsViewState.transactionCategorizationView[m].transactionIdsBySelectedPeriod[b]!=null||O.push(kr(m,{start:g,end:v},t,!1,void 0,void 0,e,!1)),h(O)}}))),(n,i)=>n.pipe(S(tR.match),A((r=>{const{companyId:t,shouldFetchClassList:e}=r.payload,a=[vr(t),Fe("manager",!0)];return e&&a.push(se()),h(a)}))),(n,i,r)=>n.pipe(S(bl.match),A((()=>r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tags?query=${encodeURIComponent(JSON.stringify({filter_type:"all"}))}`).pipe(y((t=>T(t)&&t.data!=null?p(mr(t.data.tags),bG({data:t.data.tags})):p(x0({fetchState:"Error",error:t.status})))),I((t=>p(x0({fetchState:"Error",error:f("Unexpected Error","Fetch Tag List REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(xl.match),A((()=>r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/groups?query=${encodeURIComponent(JSON.stringify({filter_type:"all"}))}`).pipe(y((t=>T(t)&&t.data!=null?p($0(t.data.task_groups),tz({data:t.data.task_groups})):p(j0({fetchState:"Error",error:t.status})))),I((t=>p(j0({fetchState:"Error",error:f("Unexpected Error","Fetch all task groups REST API call errored out"+JSON.stringify(t))})))))))),WK,(n,i)=>n.pipe(S(TO.match),y((r=>{const{cacheOverride:t,vendorName:e}=r.payload,a=i.value,s=[];if(t===!0)e!=null&&s.push(Ta(e,"vendor")),s.push(Dn(e));else if(e!=null){const{fetchState:o,recommendations:c=[]}=Pa(a,e,"vendor");o==="In-Progress"?s.push(Dn(e)):o!=="Completed"?(e&&s.push(Ta(e,"vendor")),s.push(Dn(e))):s.push(fm({recommendations:c,vendorId:void 0}))}return h(s)}))),(n,i,r)=>n.pipe(S(TA.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(T(o)&&o.data!=null){const d=[ue(o.data.report.vendors),PA(o.data.report,e,a)];return h(d)}const c=[Mp(o.status,e,a)];return h(c)})),I((o=>{const c=[Mp(f("Unexpected error","ApAging Detail Report REST API call errored out"+JSON.stringify(o)),e,a)];return h(c)})))}))),(n,i,r)=>n.pipe(S($o.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=Vp(e);return o.apAgingBalancesByDate[c]!=null&&a===!1?h([]):r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/accounts_payable_aging?query=${encodeURIComponent(JSON.stringify(s))}`).pipe(y((d=>{if(T(d)&&d.data!=null){const l=[ue(d.data.report.vendors,"merge"),NA(e,d.data.report)];return h(l)}{const l=[Lp(d.status)];return h(l)}})),I((d=>{const l=[Lp(f("Unexpected error","ApAging Report REST API call errored out"+JSON.stringify(d)))];return h(l)})))}))),(n,i,r)=>n.pipe(S(AA.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(T(o)&&o.data!=null){const d=[Fp(o.data.report.customers,!0),OA(o.data.report,e,a)];return h(d)}const c=[qp(o.status,e,a)];return h(c)})),I((o=>{const c=[qp(f("Unexpected error","ArAging Detail Report REST API call errored out"+JSON.stringify(o)),e,a)];return h(c)})))}))),(n,i,r)=>n.pipe(S(Ro.match),A((t=>{const{reportDate:e,cacheOverride:a}=t.payload,s={report_date:e.format("YYYY-MM-DD")},o=i.value.arAgingState,c=Vp(e);return o.arAgingBalancesByDate[c]!=null&&a===!1?h([]):r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/accounts_receivable_aging?query=${encodeURIComponent(JSON.stringify(s))}`).pipe(y((d=>{if(T(d)&&d.data!=null){const l=[Fp(d.data.report.customers),CA(e,d.data.report)];return h(l)}{const l=[jp(d.status)];return h(l)}})),I((d=>{const l=[jp(f("Unexpected error","ArAging Report REST API call errored out"+JSON.stringify(d)))];return h(l)})))}))),(n,i,r)=>n.pipe(S(xA.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=jY(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(T(m)&&m.data!=null){const _=[UA(e,s,m.data)];return h(_)}{const _=[Gp(e,s,m.status)];return h(_)}})),I((m=>{const _=[Gp(e,s,f("Unexpected error","Audit Report Group view errored out"+JSON.stringify(m)))];return h(_)})))}return h([])}))),(n,i,r)=>n.pipe(S(kA.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(T(o)&&o.data!=null){const c=[BA(o.data.audit_rule_groups)];return h(c)}{const c=[zp(o.status)];return h(c)}})),I((o=>{const c=[zp(f("Unexpected error","Audit rule group view errored out"+JSON.stringify(o)))];return h(c)}))):h([])}))),(n,i,r)=>n.pipe(S(AM.match),A((()=>{const t=i.value.autotransferRulesState.ruleUpdateLocalData,e={...t.sourceAccount!=null&&{from_account:{account_id:t.sourceAccount.id,account_type:In(t.sourceAccount.accType)??""}},...t.destinationAccount!=null&&{to_account:{account_id:t.destinationAccount.id,account_type:In(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=>T(a)&&a.data!=null?p(OM(a.data)):p(Vv(a.status)))),I((a=>p(Vv(f("Unexpected Error","Fetch auto transfer review detail REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(CM.match),y((t=>{const{ruleId:e,cacheOverride:a}=t.payload,s=[],o=i.value,c=Y(o.autotransferRulesState.historyByRuleId,e,void 0);if(a===!0||c==null||c.fetchState!=="In-Progress"){s.push($c({ruleId:e,fetchState:"In-Progress"}));const d=r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto/${e}/history`).pipe(y((l=>T(l)&&l.data!=null?p(xM({ruleId:e,historicEventsPayload:l.data.activities})):p($c({ruleId:e,fetchState:"Error",error:l.status})))),I((l=>p($c({ruleId:e,fetchState:"Error",error:f("Unexpected Error","Fetch auto transfer rule history REST API call errored out "+JSON.stringify(l))})))));return j(h(s),d)}return h(s)}))),(n,i,r)=>n.pipe(S(UM.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(T(d)&&d.data!=null){const l=d.data.auto_transfer_rules.map(lu),u=[kM({rules:l})];return o.fetchState!=="In-Progress"&&o.fetchState!=="Completed"&&u.push($e()),c.fetchState!=="In-Progress"&&c.fetchState!=="Completed"&&u.push(Qe()),u.push(Lv(!1,!0)),h(u)}return p(Fv({fetchState:"Error",error:d.status}))})),I((d=>p(Fv({fetchState:"Error",error:f("Unexpected Error","Fetch auto transfer rules REST API call errored out "+JSON.stringify(d))}))))):h([])}))),(n,i)=>n.pipe(S(wA.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([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")),h(e)}}))),(n,i)=>n.pipe(S(Mo.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([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")),h(e)}}))),(n,i,r)=>n.pipe(S(Ut.match),y((t=>{const e={is_full_response:!0,time_series_groups:[GY(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&&T(a)){const s=[],{report:o}=a.data,c=o.currency;return s.push(ie(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(ie(t.payload.timeframe,fe("accounts_receivable"),"balance_sheet_by_classes",o.assets.current_assets.accounts_receivable,o.classes,o.accounts,c)),s.push(ie(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(ie(t.payload.timeframe,fe("fixed_assets"),"balance_sheet_by_classes",o.assets.fixed_assets,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("other_assets"),"balance_sheet_by_classes",o.assets.other_assets,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("accounts_payable"),"balance_sheet_by_classes",o.liabilities.current_liabilities.accounts_payable,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("credit_cards"),"balance_sheet_by_classes",o.liabilities.current_liabilities.credit_cards,o.classes,o.accounts,c)),s.push(ie(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(ie(t.payload.timeframe,fe("long_term_liabilities"),"balance_sheet_by_classes",o.liabilities.long_term_liabilities,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,fe("equity"),"balance_sheet_by_classes",o.equity,o.classes,o.accounts,c)),s.push($A({timeframe:t.payload.timeframe,report:a.data})),h(s)}return p(Yp(a.status,t.payload.timeframe))})),I((a=>p(Yp(f("Unexpected Error","Balance Sheet by Class REST API call errored out: "+(a instanceof Error?a.message:JSON.stringify(a))),t.payload.timeframe)))))}))),ZK,(n,i,r)=>n.pipe(S(kt.match),y((t=>{const e={is_full_response:!0,time_series_groups:[zY(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&&T(a)){const s=[],{report:o}=a.data,c=o.currency;return s.push(Bt(o.projects)),s.push(ce(t.payload.timeframe,fe("cash_and_equivalents"),"balance_sheet_by_projects",o.assets.current_assets.cash_and_equivalents,o.accounts,c)),s.push(ce(t.payload.timeframe,fe("accounts_receivable"),"balance_sheet_by_projects",o.assets.current_assets.accounts_receivable,o.accounts,c)),s.push(ce(t.payload.timeframe,fe("other_current_assets"),"balance_sheet_by_projects",o.assets.current_assets.other_current_assets,o.accounts,c)),s.push(ce(t.payload.timeframe,fe("fixed_assets"),"balance_sheet_by_projects",o.assets.fixed_assets,o.accounts,c)),s.push(ce(t.payload.timeframe,fe("other_assets"),"balance_sheet_by_projects",o.assets.other_assets,o.accounts,c)),s.push(ce(t.payload.timeframe,fe("accounts_payable"),"balance_sheet_by_projects",o.liabilities.current_liabilities.accounts_payable,o.accounts,c)),s.push(ce(t.payload.timeframe,fe("credit_cards"),"balance_sheet_by_projects",o.liabilities.current_liabilities.credit_cards,o.accounts,c)),s.push(ce(t.payload.timeframe,fe("other_current_liabilities"),"balance_sheet_by_projects",o.liabilities.current_liabilities.other_current_liabilities,o.accounts,c)),s.push(ce(t.payload.timeframe,fe("long_term_liabilities"),"balance_sheet_by_projects",o.liabilities.long_term_liabilities,o.accounts,c)),s.push(ce(t.payload.timeframe,fe("equity"),"balance_sheet_by_projects",o.equity,o.accounts,c)),s.push(RA({timeframe:t.payload.timeframe,report:a.data})),h(s)}return p(Hp(a.status,t.payload.timeframe))})),I((a=>p(Hp(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(MA.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([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")),h(e)}}))),(n,i,r)=>n.pipe(S(Jc.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(T(e)&&e.data!=null){const a=e.data.accounts.map((o=>o.account_id)),s=[];return s.push(nM({bankAccountIds:a}),X(e.data.accounts,"bill_pay")),p(...s)}return p(Tv(e.status))})),I((e=>p(Tv(f("Unexpected error","Fetch Bank Accounts REST API call errored out"+JSON.stringify(e)))))))}))),(n,i)=>n.pipe(S(sM.match),y((r=>{const{cacheOverride:t}=r.payload,e=[],a=i.value,s=Q(a),o=!!s.companyZeniAccountInfo?.info?.isZeniAccountEnabled;if(t===!0)e.push(Jc()),e.push(Qe()),o===!0&&e.push($e());else{const c=a.settingsViewState.bankConnection;c.fetchState!=="Completed"&&c.fetchState!=="In-Progress"&&e.push(Jc());const d=a.paymentAccountListState;d.hasValidState()===!1&&d.fetchState!=="In-Progress"&&e.push(Qe());const l=a.depositAccountListState;o===!0&&l.hasValidState()===!1&&l.fetchState!=="In-Progress"&&e.push($e())}return j(h(e))}))),(n,i,r)=>n.pipe(S(YA.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(HA(e));{const c={iban:t.payload.bankAccountIban};return r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/institutions?query=${JSON.stringify(c)}`).pipe(y((d=>T(d)?p(QA({bankAccountIban:t.payload.bankAccountIban,institutions:d.data?.institutions??[]})):p(Xp({bankAccountIban:e,status:d.status})))),I((d=>p(Xp({bankAccountIban:e,status:f("Unexpected Error","Get Bank Country Name REST API call errored out"+JSON.stringify(d))})))))}}))),(n,i,r)=>n.pipe(S(WA.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(ZA(e));{const c={routing_numbers:[t.payload.routingNumber]};return r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/institutions?query=${JSON.stringify(c)}`).pipe(y((d=>T(d)?p(XA({routingNumber:t.payload.routingNumber,institutions:d.data?.institutions??[]})):p(em({routingNumber:e,status:d.status})))),I((d=>p(em({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(eO.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(tO(e));{const c={swift_code:t.payload.swiftCode};return r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/institutions?query=${JSON.stringify(c)}`).pipe(y((d=>T(d)?p(aO({swiftCode:t.payload.swiftCode,institutions:d.data?.institutions??[]})):p(tm({swiftCode:e,status:d.status})))),I((d=>p(tm({swiftCode:e,status:f("Unexpected Error","Get Bank Name By Swift REST API call errored out"+JSON.stringify(d))})))))}}))),(n,i)=>n.pipe(S(Wc.match),y((r=>{const{billId:t,cacheOverride:e,isShowDeletedBillsEnabled:a,hasZeniAssistAccess:s}=r.payload,o=i.value,c=[];if(e)c.push(Vc(t,a,s,!0)),c.push(Zc(t));else{let d=0;const l=Ie(t),u=Y(o.billDetailViewState.billDetailById,l,void 0);(u==null||u?.fetchState!="In-Progress"&&u?.fetchState!="Completed"||u?.vendorId==null)&&(d++,c.push(Vc(t,a,!1))),d==0?c.push(Qc(t)):c.push(Zc(t))}return h(c)}))),(n,i,r)=>n.pipe(S(Vc.match),y((t=>{const{billId:e,isShowDeletedBillsEnabled:a,cacheOverride:s}=t.payload,o=Ie(e),c=[],d=i.value;if(s===!0){const u=Y(d.billDetailViewState.billDetailById,o,void 0);c.push(...(function(m,_){const g=[];return g.push(MM(m)),_!=null&&g.push(Rc(Ie(m))),g})(e,u))}const l=Y(d.billDetailViewState.billDetailById,o,void 0);if(s==1||l==null||l.fetchState!=="In-Progress"){c.push(Xa(e,"In-Progress")),c.push(Js(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((_=>{if(T(_)&&_.data?.transaction?.transaction_id!=null){const g=_.data.transaction.transaction_id,v=_.data?.vendors?.[0],b=v?.contacts??[],E=ht(_.data?.vendors??[]),P=v?.bank_accounts??[],O=v?.payment_instruments??[],x=v?.account!=null?[v?.account]:[],U=v?.accounting_class!=null?[v?.accounting_class]:[],k=[...bQ(_.data.transaction),Lc(_.data.recurring_bill_configs),Yv(_.data.recurring_bills),Ds(_.data.transaction),ve(_.data.payment_accounts),tt(_.data.deposit_accounts),X(_.data.accounts??[],"bill_pay"),F({users:_.data.users??[]}),at(_.data.approval_rules),Nt(_.data.entity_approvals),X(x,"account_list"),We("class_list",U),ft(b),G(E),Ve([...P,..._.data.bank_accounts]),Ia(O),ue(_.data.vendors??[])];if(v==null&&_.data.transaction.candidate_vendor_name!=null&&_.data.transaction.candidate_vendor_name.length>0)k.push(Rt({searchString:_.data?.transaction.candidate_vendor_name})),k.push(Kv(e,_.data,void 0));else{k.push(ln({billId:e,billDetail:_.data})),k.push(Xa(g,"Completed",void 0,v?.vendor_id));const C=_.data?.transaction;C!=null&&C.total_amount!=null&&v!=null&&k.push(Fc(v.vendor_name,v.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(Hv(e,!0))}return h(k)}return p(Xa(t.payload.billId,"Error",_.status))})),I((_=>(console.error(`REST API call errored out ${_}`),p(Xa(t.payload.billId,"Error",f("Unexpected Error",`REST API call errored out ${_}`)))))));return j(h(c),m)}return h(c)}))),n=>n.pipe(S(oM.match),A((i=>{const{companyId:r}=i.payload;return h([jo(),wc("billing","billing_setup",!1),Pv(r,!1)])}))),(n,i)=>n.pipe(S(GM.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=Ue(o,d??""),u=l?.company.companyZeniAccountInfo.isZeniAccountEnabled??!1,{period:m,cacheOverride:_,isShowDeletedBillsEnabled:g,isInternationalWireEnabled:v}=r.payload;if(_===!0)t.push(un(v)),e.forEach((b=>t.push(jc(m,b,g))));else{a.billPayConfigState.fetchState!=="Completed"&&a.billPayConfigState.fetchState!=="In-Progress"&&t.push(un(v));const b=a.depositAccountListState;u&&b.fetchState!=="In-Progress"&&b.fetchState!=="Completed"&&t.push($e());const E=a.paymentAccountListState;E.fetchState!=="In-Progress"&&E.fetchState!=="Completed"&&t.push(Qe()),e.forEach((P=>{const O=zM(m,P),x=Y(a.billListState.byBillListKey,O,void 0);x!=null&&x.hasValidState()!==!1||t.push(jc(m,P,g))}))}return h(t)}))),(n,i,r)=>n.pipe(S(jc.match),y((t=>{const{period:e,tab:a,isShowDeletedBillsEnabled:s}=t.payload,o={start_date:te(e.start),end_date:te(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(T(c)&&c.data!=null){const d=[];return d.push(F({users:c.data.users??[]}),Lc(c.data.recurring_bill_configs),Gc(c.data.transactions),KM({billList:c.data,tab:a}),Nt(c.data.entity_approvals??[])),h(d)}return p(Zv(e,a,c.status))})),I((c=>p(Zv(t.payload.period,t.payload.tab,f("Unexpected Error","fetch bills REST API call errored out"+JSON.stringify(c)))))))}))),(n,i)=>n.pipe(S(ZM.match),y((r=>{const{cacheOverride:t,includeUserRoles:e}=r.payload,{billPaySetupApproverViewState:a,classListState:s}=i.value,{approverListState:o}=a,c=ot(i.value),d=[];return t===!0?(d.push(zc(t,e)),c&&d.push(se())):(a.hasValidState()===!1&&o.fetchStatus.fetchState!=="In-Progress"&&d.push(zc(!0,e)),c&&s.hasValidState()===!1&&s.fetchState!=="In-Progress"&&d.push(se())),j(h(d))}))),(n,i,r)=>n.pipe(S(zc.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(T(c)&&c.data!=null){const d=c.data.users.map((u=>u.user_id)),l=[F({users:c.data.users})];return a===!0&&l.push(K(c.data.user_roles)),l.push(aI(d,c.data.attributes)),h(l)}return p(rI(c.status))})),I((c=>p(rI(f("Unexpected Error","Fetch Approvers List errored out"+JSON.stringify(c)))))));{const{approverListState:c}=s,{approverIds:d,attributes:l}=c;return p(aI(d,l))}}))),(n,i,r)=>n.pipe(S(Lo.match),y((()=>{const t=ba({startDate:Z(rm,"YYYY-MM-DD"),endDate:Z(am,"YYYY-MM-DD")}),e={start_date:te(t.start),end_date:te(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=>T(a)&&a.data!=null?p(rO({transactionTotals:a.data.transaction_totals,transactionCount:a.data.transaction_count})):p(nm(a.status)))),I((a=>p(nm(f("Unexpected Error","fetch Billpay Dashboard Card REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(un.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(T(e)&&e.data!=null){const a=[];return a.push(YM({billPayConfigPayload:e.data,isInternationalWireEnabled:t.payload.isInternationalWireEnabled})),h(a)}return p(Xv(e.status))})),I((e=>p(Xv(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=ot(i.value),l=nI(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((_=>{if(T(_)&&_.data!=null){const g=_.data.approval_rules.map((b=>b.approval_rule_id)),v=[F({users:_.data.users}),at(_.data.approval_rules),sI(g)];return u&&v.push(se()),h(v)}return p(oI(_.status))})),I((_=>p(oI(f("Unexpected Error","Fetch Approval view errored out"+JSON.stringify(_)))))))}{const{approvalRuleIds:m}=s,_=[sI(m)];return u&&_.push(se()),h(_)}}))),(n,i,r)=>n.pipe(S(nV.match),A((t=>{const{companyId:e,cacheOverride:a,refreshViewInBackground:s}=t.payload,{billPaySetupViewState:o,companyState:c,plaidAccountViewState:d}=i.value,l=Ue(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(T(u)&&u.data!=null){const m=u.data.accounts.map((g=>g.account_id)),_=[F({users:u.data.users}),K(u.data.user_roles),H({payload:u.data.companies,schema:{}}),G(u.data.addresses),Se({files:u.data.files}),X(u.data.accounts,"bill_pay"),ve(u.data.payment_accounts),ea({data:u.data.payment_accounts,updateType:"replace"}),tt(u.data.deposit_accounts??[]),ta({data:u.data?.deposit_accounts??[],updateType:"replace"}),Le({companyId:u.data.companies[0].company_id}),ut(m,"bill_pay_setup"),_I()];return h(_)}return p(N({messageSection:"bill_pay_setup",messageText:"failed",type:"error"}),hI(u.status))})),I((u=>p(hI(f("Unexpected Error","Fetch Bill Pay Setup view errored out"+JSON.stringify(u)))))));{const{allBankAccountIds:u}=d.spend_management_setup.accountDetails;return p(Le({companyId:e}),ut(u,"bill_pay_setup"),_I())}}))),(n,i,r)=>n.pipe(S(LM.match),S((t=>t.payload.cacheOverride===!0||(function(e,a){return Y(e.billDetailViewState.billDetailById,Ie(a),void 0)?.recommendationsFetchStatus.fetchState==="Completed"})(i.value,t.payload.billId)===!1)),Me((t=>t.payload.billId)),y((t=>t.pipe(je((e=>{const{billId:a,cacheOverride:s}=e.payload;return(function(o,c){return Y(o.billDetailViewState.billDetailById,Ie(c),void 0)?.fetchState==="Completed"&&bP(o,c)!=null})(i.value,a)?vT(i.value,a,r,s):n.pipe(S((o=>(ln.match(o)||Xa.match(o)&&o.payload.fetchState==="Error")&&o.payload.billId===a)),Oe(1)).pipe(y((o=>ln.match(o)?vT(i.value,a,r,s):p(vu(a,o.payload.error??f("Unexpected Error","Bill detail fetch failed before recommendations could be requested"))))))})))))),(n,i,r)=>n.pipe(S(Di.match),y((()=>{const t=i.value.expenseAutomationMissingReceiptsViewState.bulkUpload,{currentBatchId:e}=t;return e==null?p(Ji({error:f("Unexpected Error","No current batch ID available")})):$_(t.batchStatusById,t.batchListByPeriod,e)?r.getJSON(`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/batches/${e}`).pipe(y((a=>{if(!T(a)||a.data==null||!yo(a.data.status))return T(a)&&a.data!=null?$:p(Ji({error:a.status}));const s=[],o=_o(a.data.files);return o.length>0&&s.push(De(o,(c=>c.transaction_id))),s.push($a(ho(a.data,r.apiEndPoints.fileMicroServiceBaseUrl))),s.push(Rr({cacheOverride:!0})),h(s)})),I((a=>p(Ji({error:f("Unexpected Error","Fetch batch details errored out: "+JSON.stringify(a))}))))):$}))),(n,i,r)=>n.pipe(S(Rr.match),A((t=>{const{cacheOverride:e}=t.payload,a=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:s},expenseAutomationMissingReceiptsViewState:{bulkUpload:o}}=a,c=s[Q(a).tenantId],d=be(c),l=o.batchListByPeriod[d]??[];if(e!==!0&&l.length>0)return p(ts({batchList:l,selectedPeriod:c}));const{end:u,start:m}=au(R_),_={start_date:m,end_date:u,sort_order:"desc"};return r.getJSON(`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/batches?query=${encodeURIComponent(JSON.stringify(_))}`).pipe(y((g=>T(g)&&g.data!=null?p(ts({batchList:g.data.batches.map(M_),selectedPeriod:c})):p(V_({error:g.status,selectedPeriod:c})))),I((g=>p(V_({error:f("Unexpected Error","Fetch bulk upload batches errored out: "+JSON.stringify(g)),selectedPeriod:c})))))}))),(n,i,r)=>n.pipe(S(k0.match),A((()=>r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/canned-responses`).pipe(y((t=>T(t)&&t.data!=null?p(PG({cannedResponses:(t.data.canned_responses??[]).map(LQ)})):p(B0({fetchState:"Error",error:t.status})))),I((t=>p(B0({fetchState:"Error",error:f("Unexpected Error","Fetch Canned Responses errored: "+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(Fo.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/card_balance`).pipe(y((t=>T(t)?p(X(t.data?.report.accounts??[],"card_balance"),nO(t.data)):p(sm(t.status)))),I((t=>p(sm(f("Unexpected error","Card Balance REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(pL.match),je((t=>{const e=t.payload;return r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/policy-templates/${e}`).pipe(y((a=>{if(V(a)&&a.data!=null){const{template:s}=a.data,o=mL(yL(s)),c=[ud(s),_L(o),pd({fetchState:"Completed"})];return h(c)}return p(pd({fetchState:"Error",error:a.status}))})),I((a=>p(pd({fetchState:"Error",error:f("Unexpected Error","Fetch card-policy detail REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(vL.match),je((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/policy-templates`).pipe(y((t=>{if(V(t)&&t.data!=null){const e=IL(t.data),a=bL(t.data.stats),s=[EL(e),TL(a),yd({fetchState:"Completed",templateIds:e.map((o=>o.templateId))})];return h(s)}return p(yd({fetchState:"Error",error:t.status}))})),I((t=>p(yd({fetchState:"Error",error:f("Unexpected Error","Fetch card-policy list REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(RI.match),je((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/mcc-codes`).pipe(y((t=>V(t)&&t.data!=null?h([DL(t.data)]):p(MI(t.status)))),I((t=>p(MI(f("Unexpected Error","Fetch card policy MCC categories REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(JP.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=>V(o)&&o.data!=null?p(wP(o.data)):p(Ju(o.status)))),I((o=>p(Ju(f("Unexpected Error","Fetch card policy vendor options REST API call errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(ax.match),A((()=>{const t=`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cockpit/card-tenant-profiles`;return r.getJSON(t).pipe(y((e=>{if(T(e)&&e.data!=null){const a=e.data.rows;return h([rx(a),nx(a)])}return p(Py(e.status))})),I((e=>p(Py(f("Unexpected error","REST API call errored out: "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(_d.match),A((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/cashback?query=${encodeURIComponent('{"is_include_cashback_insights":true}')}`).pipe(y((t=>V(t)&&t.data!=null?p(_h([t.data.insights]),LL(t.data)):p(qI(t.status)))),I((t=>p(qI(f("Unexpected Error","Fetch charge card cashback REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(Ko.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/cash_balance`).pipe(y((t=>T(t)?p(X(t.data?.report.accounts??[],"cash_balance"),uO(t.data)):p(dm(t.status)))),I((t=>p(dm(f("Unexpected error","Cash Balance REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(pO.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([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")),h(e)}}))),(n,i)=>n.pipe(S(Yo.match),A((r=>{const{fetchFullReport:t,cacheOverride:e}=r.payload;if(e===!0)return h([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)),h(a)}}))),(n,i,r)=>n.pipe(S(wt.match),y((t=>{const e={is_full_response:!0,time_series_groups:[HY(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&&T(a)){const s=[],{report:o}=a.data,c=o.currency;return s.push(ie(t.payload.timeframe,Ke("adjustments"),"cash_flow_by_classes",o.operating_activities.adjustments,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,Ke("investing_activities"),"cash_flow_by_classes",o.investing_activities,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,Ke("financing_activities"),"cash_flow_by_classes",o.financing_activities,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,Ke("net_income"),"cash_flow_by_classes",o.operating_activities.net_income,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,Ke("operating_activities"),"cash_flow_by_classes",o.operating_activities,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,Ke("change_in_cash_and_equivalents"),"cash_flow_by_classes",o.change_in_cash_and_equivalents,o.classes,o.accounts,c)),s.push(mO({timeframe:t.payload.timeframe,report:a.data})),h(s)}return p(lm(a.status,t.payload.timeframe))})),I((a=>p(lm(f("Unexpected Error","Cash Flow by Class REST API call errored out: "+(a instanceof Error?a.message:JSON.stringify(a))),t.payload.timeframe)))))}))),XK,(n,i,r)=>n.pipe(S($t.match),y((t=>{const e={is_full_response:!0,time_series_groups:[QY(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&&T(a)){const s=[],{report:o}=a.data,c=o.currency;return s.push(Bt(o.projects)),s.push(ce(t.payload.timeframe,Ke("adjustments"),"cash_flow_by_projects",o.operating_activities.adjustments,o.accounts,c)),s.push(ce(t.payload.timeframe,Ke("investing_activities"),"cash_flow_by_projects",o.investing_activities,o.accounts,c)),s.push(ce(t.payload.timeframe,Ke("financing_activities"),"cash_flow_by_projects",o.financing_activities,o.accounts,c)),s.push(ce(t.payload.timeframe,Ke("net_income"),"cash_flow_by_projects",o.operating_activities.net_income,o.accounts,c)),s.push(ce(t.payload.timeframe,Ke("operating_activities"),"cash_flow_by_projects",o.operating_activities,o.accounts,c)),s.push(ce(t.payload.timeframe,Ke("change_in_cash_and_equivalents"),"cash_flow_by_projects",o.change_in_cash_and_equivalents,o.accounts,c)),s.push(yO({timeframe:t.payload.timeframe,report:a.data})),h(s)}return p(um(a.status,t.payload.timeframe))})),I((a=>p(um(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(_O.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([$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")),h(e)}}))),(n,i,r)=>n.pipe(S(Ho.match),A((t=>{const{startDate:e,endDate:a}=t.payload,s=e!=null&&a!=null,o=`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/cash_in_cash_out${s?`?query=${encodeURIComponent(JSON.stringify({custom_end_date:a,custom_start_date:e}))}`:""}`;return r.getJSON(o).pipe(y((c=>T(c)?p(X(c.data?.report.accounts??[],"cash_in_cash_out"),SO(c.data?.report.account_groups??[],"cash_in_cash_out"),hO(c.data,s),pm({thisPeriod:i.value.reportUIOptionsState.thisPeriod})):p(mm(c.status,s)))),I((c=>p(mm(f("Unexpected error","CashInCashOut REST API call errored out"+JSON.stringify(c)),s)))))}))),(n,i,r)=>n.pipe(S(Qo.match),A((t=>{const e={is_full_response:t.payload.fetchFullReport},a=t.payload.startDate!=null&&t.payload.endDate!=null;return a&&(e.custom_start_date=t.payload.startDate,e.custom_end_date=t.payload.endDate),r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/cash_position?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((s=>T(s)?p(X(s.data?.report.accounts??[],"cash_position"),gO(s.data,a),ym({thisPeriod:i.value.reportUIOptionsState.thisPeriod})):p(_m(s.status,a)))),I((s=>p(_m(f("Unexpected error","Cash Position REST API call errored out"+JSON.stringify(s)),a)))))}))),(n,i,r)=>n.pipe(S(aa.match),y((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/config`).pipe(y((t=>{if(V(t)&&t.data!=null){const e=[];return e.push(FL(t.data)),h(e)}return p(jI(t.status))})),I((t=>p(jI(f("Unexpected Error","Fetch charge card config REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(Sd.match),A((t=>{const{chargeCardId:e,cacheOverride:a}=t.payload,s=[],o=i.value,c=Y(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(Fs({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=>V(m)&&m.data!=null?p(pt(m.data.card),F({users:m.data.users}),K(m.data.user_roles),G(m.data.addresses),jL(m.data.connected_account),Fs({chargeCardId:e,isRefreshingViewInBackground:!1,fetchState:"Completed"})):p(Fs({chargeCardId:e,fetchState:"Error",isRefreshingViewInBackground:!1,error:m.status})))),I((m=>p(Fs({chargeCardId:e,fetchState:"Error",isRefreshingViewInBackground:!1,error:f("Unexpected Error","Fetch card detail API call errored out"+JSON.stringify(m))})))));return j(h(s),u)}return h(s)}))),(n,i)=>n.pipe(S(GL.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(Sd(t,e)),o.push(gd(t,null,null,!0)),o.push(aa(!0)),a&&s&&o.push(ra(!0)),a&&s&&o.push(pn(!0));else{const m=c.chargeCardDetailState.detailById[t];(m==null||m.fetchState!=="In-Progress"&&m.hasValidState()===!1)&&o.push(Sd(t,e));const _=m?.transactionList;(_==null||_.fetchState!=="Completed"&&_.fetchState!=="In-Progress")&&o.push(gd(t,l,u));const g=c.chargeCardConfigState;g.fetchState!=="In-Progress"&&g.hasValidState()===!1&&o.push(aa());const v=c.chargeCardListState;v.creditAccount.fetchState!=="Completed"&&v.creditAccount.fetchState!=="In-Progress"&&a&&s&&o.push(ra()),v.creditAccountRepayment.fetchState!=="Completed"&&v.creditAccountRepayment.fetchState!=="In-Progress"&&a&&s&&o.push(pn())}return j(h(o))}))),(n,i,r)=>n.pipe(S(mn.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(V(t)&&t.data!=null){const e=[];return Q(i.value).userRole.includes("charge_card_user")&&e.push(uF({uiState:{sortKey:"cardName"}})),e.push(ar(t.data.cards),F({users:t.data.users}),K(t.data.user_roles),G(t.data.addresses),YI({chargeCardListPayload:t.data})),h(e)}return p(HI(t.status))})),I((t=>p(HI(f("Unexpected Error","Fetch charge cards list REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(pF.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(ra(!0)),o.push(pn(!0))),e&&o.push(xd(!0)),o.push(_d(!0))),o.push(mn(!0)),o.push(aa(!0)),o.push(Fe("cardHolderCandidate",!0)),o.push(Fe("cardAdmin",!0)),o.push(se());else{const l=c.chargeCardListState;t===!0&&a&&l.creditAccount.fetchState!=="Completed"&&l.creditAccount.fetchState!=="In-Progress"&&o.push(ra()),t===!0&&a&&l.creditAccountRepayment.fetchState!=="Completed"&&l.creditAccountRepayment.fetchState!=="In-Progress"&&o.push(pn()),t&&d.fetchState!=="In-Progress"&&d.hasValidState()===!1&&o.push(_d()),l.fetchState!=="In-Progress"&&l.hasValidState()===!1&&o.push(mn());const u=c.chargeCardConfigState;u.fetchState!=="In-Progress"&&u.hasValidState()===!1&&o.push(aa());const m=c.userListViewState.userListByType.cardHolderCandidate;m.fetchState!=="In-Progress"&&m.hasValidState()===!1&&o.push(Fe("cardHolderCandidate",!1));const _=c.userListViewState.userListByType.cardAdmin;if(_.fetchState!=="In-Progress"&&_.hasValidState()===!1&&o.push(Fe("cardAdmin",!1)),c.classListState.hasValidState()===!1&&c.classListState.fetchState!=="In-Progress"&&o.push(se()),t&&e&&c.chargeCardListState.debitCardSummaries.fetchState!=="In-Progress"&&c.chargeCardListState.debitCardSummaries.fetchState!=="Completed"&&o.push(xd()),t&&e&&c.issueChargeCardState.depositAccountsFetchState.fetchState!=="In-Progress"&&c.issueChargeCardState.depositAccountsFetchState.fetchState!=="Completed"&&o.push(qs()),t&&c.chargeCardSetupViewState.fetchState!=="In-Progress"&&c.chargeCardSetupViewState.fetchState!=="Completed"){const g=Q(c);o.push(QI(g.companyId,!0))}}return j(h(o))}))),(n,i,r)=>n.pipe(S(Jd.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=>V(e)&&e.data!=null?p(PF(e.data.repayment_history),F({users:e.data.repayment_history.map((a=>a.paid_by_user)).filter((a=>a!=null))}),TF(e.data)):p(ab(e.status)))),I((e=>p(ab(f("Unexpected Error","Fetch charge card payment history REST API call errored out"+JSON.stringify(e)))))))}))),(n,i)=>n.pipe(S(NF.match),y((r=>{const{cacheOverride:t}=r.payload,e=[],a=i.value,s=a.chargeCardPaymentHistoryState;t===!0?e.push(Jd(!0)):s.fetchState!=="Completed"&&s.fetchState!=="In-Progress"&&e.push(Jd());const o=a.depositAccountListState,c=a.paymentAccountListState;return(o.fetchState!=="Completed"&&o.fetchState!=="In-Progress"||c.fetchState!=="Completed"&&c.fetchState!=="In-Progress")&&e.push(rb()),j(h(e))}))),(n,i)=>n.pipe(S(rb.match),y((()=>{const r=[],t=i.value,e=t.depositAccountListState;e.fetchState!=="In-Progress"&&e.fetchState!=="Completed"&&r.push($e());const a=t.paymentAccountListState;return a.fetchState!=="In-Progress"&&a.fetchState!=="Completed"&&r.push(Qe()),h(r)}))),(n,i,r)=>n.pipe(S(QI.match),A((t=>{const{companyId:e,cacheOverride:a,refreshViewInBackground:s}=t.payload,{chargeCardSetupViewState:o,plaidAccountViewState:c,companyState:d}=i.value,l=Ue(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(V(u)&&u.data!=null){const m=u.data.accounts.map((g=>g.account_id)),_=[F({users:u.data.users}),K(u.data.user_roles),H({payload:u.data.companies,schema:{}}),G(u.data.addresses),Se({files:u.data.files}),X(u.data.accounts,"charge_cards"),ve(u.data.payment_accounts),ea({data:u.data.payment_accounts,updateType:"replace"}),tt(u.data.deposit_accounts??[]),ta({data:u.data?.deposit_accounts??[],updateType:"merge"}),Le({companyId:u.data.companies[0].company_id}),ut(m,"charge_card_setup"),ib()];return h(_)}return p(N({messageSection:"charge_card_setup",messageText:"failed",type:"error"}),cb(u.status))})),I((u=>p(cb(f("Unexpected Error","Fetch Charge Card Setup view errored out"+JSON.stringify(u)))))));{const{allBankAccountIds:u}=c.spend_management_setup.accountDetails;return p(Le({companyId:e}),ut(u,"charge_card_setup"),ib())}}))),(n,i,r)=>n.pipe(S(XL.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(T(s)&&s.data!=null){const o={};return s.data.forEach((c=>{o[c.card_id]=c.expenses.map((d=>eF(d)))})),p(tF({recurringExpensesByChargeCardId:o}),vd({fetchState:"Completed",error:void 0}))}return p(vd({fetchState:"Error",error:s.status}))})),I((s=>p(vd({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(LF.match),y((t=>{const{creditAccountId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/credit-accounts/${e}/statements`).pipe(y((a=>T(a)?p(FF({data:a.data?.statements??[]})):p(db({fetchState:"Error",error:a.status})))),I((a=>p(db({fetchState:"Error",error:f("Unexpected Error","Fetch Credit Card statement REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(zL.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=>V(d)&&d.data!=null?p(KL({transactionId:e,cardId:a,transactionAttachments:d.data.attachments})):p(GI({cardId:a,transactionId:e,status:d.status})))),I((d=>p(GI({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(gd.match),A((t=>{const{chargeCardId:e,pageToken:a,pageTokenType:s,cacheOverride:o}=t.payload,{uiState:c}=i.value.chargeCardDetailState.detailById[e]?.transactionList??YL.transactionList,d={page_token:a,page_token_type:s,sort_by:c.sortKey==="paymentDate"?"transaction_date":c.sortKey,sort_order:di(c.sortOrder)};return r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}/transactions?query=${encodeURIComponent(JSON.stringify(d))}`).pipe(y((l=>V(l)&&l.data!=null?p(QL(l.data.transactions),HL({chargeCardId:e,data:l.data,cacheOverride:o})):p(zI({chargeCardId:e,error:l.status})))),I((l=>p(zI({chargeCardId:e,error:f("Unexpected Error","Fetch charge card transactionList API call errored out"+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(WL.match),A((t=>{const{chargeCardId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}/analytics/transaction-statistics`).pipe(y((a=>T(a)&&a.data?p(ZL({chargeCardId:e,statistics:a.data}),fd({chargeCardId:e,fetchState:"Completed",error:void 0})):p(fd({chargeCardId:e,fetchState:"Error",error:a.status})))),I((a=>p(fd({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(zN.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(T(d)&&d.data!=null){const l=d.data.next_page_token==null;return p(YN({chatSessionId:e,history:d.data.messages,isPaginationComplete:l}),KN({chatSessionId:e,nextPageToken:d.data.next_page_token}))}return p(fp({chatSessionId:e,error:d.status}))})),I((d=>p(fp({chatSessionId:e,error:f("Unexpected Error","Fetch Chat History REST API call errored out"+JSON.stringify(d))})))))}))),(n,i,r)=>n.pipe(S(HN.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(T(a)&&a.data!=null){const s=a.data.sessions.filter((o=>!!o.chat_session_summary));return p(WN(s),QN({sessions:s,nextPageToken:a.data.next_page_token}))}return p(vp(a.status))})),I((a=>p(vp(f("Unexpected Error","Fetch Chat Sessions for User REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(se.match),Ge(i),A((([t,e])=>{if(!ot(e))return p(hm({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=>T(o)?p(We("class_list",o.data?.accounting_classes??[]),hm(o)):p(Sm(o.status)))),I((o=>p(Sm(f("Unexpected Error","Fetch Classes REST API call errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(nC.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels/cockpit-context`).pipe(y((t=>{if(T(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=[H({payload:t.data.companies,schema:{}}),F({users:t.data.users}),zm({userGroups:t.data.user_groups}),sC({companyIds:o,userIds:c,userGroupIds:d})];return h(l)}return p(Km(t.status))})),I((t=>p(Km(f("Unexpected error","Cockpit context fetch errored out"+JSON.stringify(t)))))))))),eY,(n,i,r)=>n.pipe(S(Pv.match),A((t=>{const{companyId:e,cacheOverride:a}=t.payload,{settingsViewState:s,companyState:o}=i.value,c=Ue(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(T(d)&&d.data!=null){const l=[H({payload:d.data.companies,schema:{}}),G(d.data.addresses),Nv(),Zi("subscription_billing_address")],u=d.data.companies[0].subscription_billing_address_id,m=d.data.addresses.find((_=>_.address_id===u));return m!=null&&l.push(Ye({addressType:"subscription_billing_address",addressToCreate:iM(m)})),h(l)}return p(N({messageSection:"billing_address_view",messageText:"failed",type:"error"}),Av(d.status))})),I((d=>p(Av(f("Unexpected Error","Fetch Billing Address View errored out"+JSON.stringify(d))))))):p(Nv())}))),tY,(n,i,r)=>n.pipe(S(oi.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/company-health-metrics/config`).pipe(y((t=>T(t)&&t.data!=null?p(RO(t.data.additional_churn_factors)):p(Cm(t.status)))),I((t=>p(Cm(f("Unexpected Error","Fetch company health metric config REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(ii.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels/health-monitor`).pipe(y((t=>{if(T(t)&&t.data!=null){const e=[],a=t.data.companies.map((s=>s.company_id));return e.push(H({payload:t.data.companies,schema:{}})),e.push(xm({payload:t.data.company_health_metrics})),e.push(MO({companyIds:a})),h(e)}return p(Um({error:t.status}))})),I((t=>p(Um({error:f("Unexpected Error","Fetch Company Health Metric View REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(Ba.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(T(a)&&a.data!=null){const s=a.data.companies.map((l=>l.company_id)),o=Hl(a.data.subscriptions),c=pi(a.data.user_roles,a.data.companies),d=[K(a.data.user_roles),H({payload:a.data.companies,schema:a.data.schema.company,subset:t.payload.companyParentId!=null,companyIdTenantIdMapping:c}),Ir({payload:a.data.subscriptions,schema:a.data.schema.subscription}),Ca({payload:a.data.subscription_plans,schema:a.data.schema.subscription_plan}),xa({payload:a.data.subscription_addons,schema:a.data.schema.subscription_addon}),Ua({payload:a.data.subscription_summaries,schema:a.data.schema.subscription_summary}),Zm({payload:a.data.customer_satisfactions}),DC({tasks:a.data.tasks})];return t.payload.companyParentId==null&&d.push(Ln("company_management_view",s,o)),t.payload.companyParentId!=null&&(i.value.companyViewState.managementView.fetchState!=="Completed"&&d.push(Ln("company_management_view",s,o,!0)),d.push(JC({payload:a.data.companies,parentCompanyId:t.payload.companyParentId}))),t.payload.fetchFullResponse&&a.data.users!=null&&d.push(F({users:a.data.users})),h(d)}{const s=[ka("company_management_view",[],a.status)];return t.payload.companyParentId!=null&&s.push(fy()),h(s)}})),I((a=>{const s=[ka("company_management_view",[],f("Unexpected error","Company Management view errored out"+JSON.stringify(a)))];return t.payload.companyParentId!=null&&s.push(fy()),h(s)})))}))),aY,(n,i,r)=>n.pipe(S(jO.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(GO)};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(T(c)&&c.data?.history!=null){const d=[zO({companyId:e,reportSentDate:a,data:c.data})];return c.data.history.length>0&&d.push(Dm({files:c.data.history[0].files})),h(d)}{const d=[Jm({companyId:e,reportSentDate:a,error:c.status})];return h(d)}})),I((c=>{const d=[Jm({companyId:e,reportSentDate:a,error:f("Unexpected error","Company Month End Report Historic Data errored out"+JSON.stringify(c))})];return h(d)}))):h([])}))),(n,i,r)=>n.pipe(S(KO.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(T(o)&&o.data!=null){const c=[YO({companyId:e,data:o.data})];return h(c)}{const c=[wm({companyId:e,error:o.status})];return h(c)}})),I((o=>{const c=[wm({companyId:e,error:f("Unexpected error","Company Month End Report Historic Dates errored out"+JSON.stringify(o))})];return h(c)}))):h([])}))),(n,i,r)=>n.pipe(S($m.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(T(d)&&d.data!=null){const l=[HO({companyId:e,data:d.data})];return h(l)}{const l=[Rm({companyId:e,error:d.status})];return h(l)}})),I((d=>{const l=[Rm({companyId:e,error:f("Unexpected error","Company Month End Report Templates errored out"+JSON.stringify(d))})];return h(l)}))):h([])}))),(n,i,r)=>n.pipe(S(Mm.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 h([]);{const m={insight_date:c??null,...o===!0&&{refresh_insights:o}},_=`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${a}/emails/month-end?query=${encodeURIComponent(JSON.stringify(m))}`;return r.getJSON(_,{"zeni-tenant-id":u}).pipe(y((g=>{if(T(g)&&g.data!=null){const v=[QO(a,g.data),Dm({files:g.data.files})];return h(v)}{const v=[Vm(a,g.status)];return h(v)}})),I((g=>{const v=[Vm(a,f("Unexpected error","Company Month End Report View errored out"+JSON.stringify(g)))];return h(v)})))}}))),(n,i,r)=>n.pipe(S(Pr.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(T(e)&&e.data!=null){const a=e.data.companies.map((c=>c.company_id)),s=dc(e.data.tenants,e.data.companies),o=[lc(e.data.tenants),Ts({payload:e.data.companies,schema:e.data.schema.company,onboardingInviteStatus:e.data.onboarding_invite_status,companyIdTenantIdMapping:s}),G(e.data.addresses??[]),Og({payload:e.data.parent_companies??[],schema:{}}),uc(e.data.tenants),xw(e.data.is_onboarding_allowed_for_user),pc({onboardingCustomersInfo:e.data.whitelist_companies})];return e.data.users!=null&&o.push(F({users:e.data.users})),e.data.user_roles!=null&&o.push(K(e.data.user_roles)),o.push(mc(a)),h(o)}return p(Cg([],e.status))})),I((e=>p(Cg([],f("Unexpected error","Onboarding Company view errored out"+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(vr.match),A((t=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${t.payload.companyId}?query={"view":"passport"}`).pipe(y((e=>{if(T(e)&&e.data!=null){const a=e.data.companies.map((c=>c.company_id)),s=Hl(e.data.subscriptions),o=[F({users:e.data.users}),K(e.data.user_roles),H({payload:e.data.companies,schema:e.data.schema.company}),Se({files:e.data.files}),G(e.data.addresses),Ir({payload:e.data.subscriptions,schema:e.data.schema.subscription}),Ca({payload:e.data.subscription_plans,schema:e.data.schema.subscription_plan}),xa({payload:e.data.subscription_addons,schema:e.data.schema.subscription_addon}),br({payload:e.data.subscription_coupons,schema:e.data.schema.subscription_coupon}),Ua({payload:e.data.subscription_summaries,schema:e.data.schema.subscription_summary}),ry({companyId:t.payload.companyId}),Ln("company_passport_view",a,s)];return h(o)}return p(ka("company_passport_view",[],e.status))})),I((e=>p(ka("company_passport_view",[],f("Unexpected error","Company Passport view errored out"+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(Tr.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(T(e)&&e.data!=null){const a=e.data.companies.map((c=>c.company_id)),s=pi(e.data.user_roles,e.data.companies),o=[K(e.data.user_roles),H({payload:e.data.companies,schema:e.data.schema.company,subset:!1,companyIdTenantIdMapping:s}),wC(e.data.accounting_summaries),Ln("company_portfolio_view",a,{})];return t.payload.fetchFullResponse&&e.data.users!=null&&o.push(F({users:e.data.users})),h(o)}return p(ka("company_portfolio_view",[],e.status))})),I((e=>p(ka("company_portfolio_view",[],f("Unexpected error","Company Portfolio view errored out"+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(Vn.match),A((t=>{const{from:e,searchString:a,sortKey:s,sortOrder:o,filters:c}=t.payload,d={size:100,from:e,global_search:a??"",is_filter_by_logged_in_user:!1,sort_by:ZY(s),sort_order:di(o),filter_join:c?.categoryCombinationOperator==="AND"?"and":"or",...c?.categories!=null&&c.categories.length>0?{filter_by:aH(c,WY(c)?(l=i.value,Object.entries(l.tagState.tagByID).reduce(((u,[m,_])=>{const g=_?.name;return g!=null&&g!==""&&(u[m]=g),u}),{})):{})}:{},task_group_scopes:c?.taskGroupScopes!=null&&c.taskGroupScopes.length>0?c.taskGroupScopes:["internal"]};var l;return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels/tasks-es?query=${encodeURIComponent(JSON.stringify(d))}`).pipe(y((u=>{if(T(u)&&u.data!=null){const m=u.data.aggregations.group_by_company_name.buckets.flatMap((g=>g.tasks)),_=[oC({data:u.data}),ze(m),mr(m.flatMap((g=>g.tags)))];return h(_)}{const m=[Ym(u.status)];return h(m)}})),I((u=>{const m=[Ym(f("Unexpected error","Cockpit Task manager errored out"+JSON.stringify(u)))];return h(m)})))}))),(n,i,r)=>n.pipe(S(Mr.match),A((t=>{const e=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:a},expenseAutomationMissingReceiptsViewState:{bulkUpload:s}}=e,o=a[Q(e).tenantId],c=be(o),d=t.payload.pageToken==null,{sortKey:l,sortOrder:u,completedSubTab:m}=s,_=vk(c,l,u,m),g=s.completedTransactionsByPeriod[_];if(d&&t.payload.cacheOverride!==!0&&g!=null&&g.transactionIds.length>0)return h([]);const v=Re(o),b={start_date:v.start,end_date:v.end,page_token:t.payload.pageToken??null,page_size:25};l!=null&&(b.sort_by=l),u!=null&&(b.sort_order=u==="ascending"?"asc":"desc"),m!==L_&&(b.match_type=m);const E=encodeURIComponent(JSON.stringify(b));return r.getJSON(`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/receipt-agent/transactions/completed?query=${E}`).pipe(y((P=>{if(T(P)&&P.data!=null){const O=P.data.transactions.map((U=>U.transaction_id)),x=[];return x.push(De(P.data.transactions,(U=>U.transaction_id))),x.push(Ik({isInitialLoad:d,transactionIds:O,nextPageToken:P.data.next_page_token,totalCount:P.data.total_count,selectedPeriod:o,sortKey:l,sortOrder:u,completedSubTab:m})),h(x)}return p(F_({error:P.status,selectedPeriod:o,sortKey:l,sortOrder:u,completedSubTab:m}))})),I((P=>p(F_({error:f("Unexpected Error","Fetch completed transactions errored: "+JSON.stringify(P)),selectedPeriod:o,sortKey:l,sortOrder:u,completedSubTab:m})))))}))),(n,i)=>n.pipe(S(kB.match),y((r=>{const{cacheOverride:t}=r.payload,e=i.value,a=Gt(e.invoicingCustomerListViewState.byTab,Yr),s=e.invoicingCatalogListViewState,o=e.invoicingSettingsViewState,c=[];return WE({fetchState:a.fetchState,error:a.error},t)&&c.push(Hr({filters:{},keepExistingListItems:!1,tabId:Yr})),qi({fetchState:s.fetchState,filters:s.planFilters,nextCursor:s.planNextCursor,sort:s.planSort},ZE,t)&&c.push(La({fetchAll:!0,filters:ZE,keepExistingListItems:!1})),qi({fetchState:s.productFetchState.fetchState,filters:s.productFilters,nextCursor:s.productNextCursor,sort:s.productSort},XE,t)&&c.push(ps({fetchAll:!0,filters:XE,keepExistingListItems:!1})),WE({fetchState:o.fetchState,error:o.error},t)&&c.push(lt()),h(c)}))),(n,i,r)=>n.pipe(S(ra.match),A((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/credit-accounts`).pipe(y((t=>V(t)&&t.data!=null?p(mF(t.data.credit_accounts)):p(WI(t.status)))),I((t=>p(WI(f("Unexpected Error","Fetch creditAccount REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(pn.match),A((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/repayments`).pipe(y((t=>V(t)&&t.data!=null?p(yF(t.data)):p(ZI(t.status)))),I((t=>p(ZI(f("Unexpected Error","Fetch creditAccountRepayment REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(sx.match),A((()=>{const t=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/macros/credit-agent`;return r.getJSON(t).pipe(y((e=>T(e)&&e.data!=null?h([Ny(e.data),ox()]):p(Ay(e.status)))),I((e=>p(Ay(f("Unexpected error","REST API call errored out: "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(Tb.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(T(u)&&u.data!=null){const m=[],_=u.data.home_currency_conversions;return m.push(Uq({reimbursementId:a,amountPayload:_,lineId:s})),m.push(Vd({reimbursementId:a,lineId:s,fetchState:"Completed",error:void 0})),h(m)}return p(Vd({reimbursementId:a,lineId:s,fetchState:"Error",error:u.status}))})),I((u=>p(Vd({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(yx.match),A((r=>{const{userId:t,companyId:e,fetchFullReport:a,cacheOverride:s,excludeResources:o,tenantId:c}=r.payload,d=Q(i.value),l=d.company?.featuresActivationInfo.isReimbursementFeatureEnabled,u=!!d?.userRole&&_x(d.userRole),m=hx(d.userRole),_=i.value.arAgingState.uiState.selectedDate,g=i.value.apAgingState.uiState.selectedDate,v=i.value.expenseAutomationViewState.selectedPeriodByTenantId[c]??Sx;if(s===!0){const b=[Da(t),Fo(),Ko(),Fn(a),qn(a),jn(a),_i(a),hi(),Qo(a),Ho(),Si(),vr(e),Nn(),gi()];return o.includes("accounts_payable_aging")===!1&&b.push($o(g)),o.includes("accounts_receivable_aging")===!1&&b.push(Ro(_)),m||b.push(Lo()),l===!0&&u&&b.push(fi()),o.includes("rewards_card")===!1&&b.push(vi(!0)),o.includes("expense_automation_card")===!1&&b.push(it({tenantId:c,period:v,refreshViewInBackground:!1})),h(b)}{const b=i.value,E=[],P=xy(b.revenueState.uiState.selectedForecast?.id,b.revenueState),O=Uy(b.opExState.uiState.selectedForecast?.id,b.opExState),x=ky(b.netBurnOrIncomeState.uiState.selectedForecast?.id,b.netBurnOrIncomeState);b.tenantState.fetchState==="In-Progress"||b.tenantState.hasValidState()||E.push(Da(t)),b.cardBalanceState.fetchState==="In-Progress"||b.cardBalanceState.hasValidState()||E.push(Fo()),b.cashBalanceState.fetchState==="In-Progress"||b.cashBalanceState.hasValidState()||E.push(Ko()),O.fetchState!=="In-Progress"&&O.fetchState!=="Completed"&&E.push(Fn(a)),P.fetchState!=="In-Progress"&&P.fetchState!=="Completed"&&E.push(qn(a)),x.fetchState!=="In-Progress"&&x.fetchState!=="Completed"&&E.push(jn(a)),b.netBurnOrIncomeStoryCardState.fetchState==="In-Progress"||b.netBurnOrIncomeStoryCardState.hasValidState()||E.push(_i(a)),b.topExState.fetchState==="In-Progress"||o.includes("top_expenses")!==!1||b.topExState.hasValidState()||E.push(hi()),b.cashPositionState.fetchState==="In-Progress"||b.cashPositionState.hasValidState()||E.push(Qo(a)),b.cashInCashOutState.fetchState==="In-Progress"||b.cashInCashOutState.hasValidState()||E.push(Ho()),b.insightsCardState.fetchState==="In-Progress"||b.insightsCardState.hasValidState()||E.push(Si()),b.companyViewState.passportView.fetchState==="In-Progress"||b.companyViewState.passportView.hasValidState()||E.push(vr(e)),b.tasksCardState.fetchState==="In-Progress"||o.includes("task_card")!==!1||b.tasksCardState.hasValidState()||E.push(Nn()),b.dashboardLayoutState.fetchState!=="In-Progress"&&b.dashboardLayoutState.fetchState!=="Completed"&&E.push(gi()),b.apAgingState.fetchState!=="In-Progress"&&b.apAgingState.fetchState!=="Completed"&&o.includes("accounts_payable_aging")===!1&&E.push($o(g)),b.arAgingState.fetchState!=="In-Progress"&&b.arAgingState.fetchState!=="Completed"&&o.includes("accounts_receivable_aging")===!1&&E.push(Ro(_)),b.billPayCardState.fetchState==="In-Progress"||b.billPayCardState.hasValidState()||m||E.push(Lo()),b.reimbursementCardState.fetchState!=="In-Progress"&&!b.reimbursementCardState.hasValidState()&&l===!0&&u&&E.push(fi()),b.referralViewState.rewardsPlanFetchState.fetchState!=="In-Progress"&&b.referralViewState.rewardsPlanFetchState.fetchState!=="Completed"&&o.includes("rewards_card")===!1&&E.push(vi(!0));const U=be(v);return b.monthEndCloseChecksViewState.monthEndCloseChecksViewByTenantId[d.tenantId]?.[U]?.fetchState!=="In-Progress"&&b.monthEndCloseChecksViewState.monthEndCloseChecksViewByTenantId[d.tenantId]?.[U]?.fetchState!=="Completed"&&o.includes("expense_automation_card")===!1&&E.push(it({tenantId:c,period:v,refreshViewInBackground:!1})),h(E)}}))),(n,i,r)=>n.pipe(S(gi.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/webapp-preferences`).pipe(y((t=>{if(T(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(Gn(a))):s===-1?(a=[...e.slice(0,3),"treasury_promo_card",...e.slice(3)],p(Gn(a))):p(gx(a))}{const e=t.status.code===404,a=[By(t.status)];return e&&a.push(Gn(fx)),p(...a)}})),I((t=>p(By(f("Unexpected Error","User preferences REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(xd.match),A((()=>r.getJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/summaries?query={"card_types": ["debit"]}`).pipe(y((t=>V(t)&&t.data!=null?p(_F(t.data.debit_card_summaries)):p(XI(t.status)))),I((t=>p(XI(f("Unexpected Error","Fetch Debit Card Summary REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(Rj.match),y((r=>{const{cacheOverride:t,depositAccountId:e}=r.payload,a=[],s=i.value;if(a.push(Qs(e)),t===!0)a.push($e()),a.push(Qe()),a.push(na()),a.push(_n(e)),a.push(Ws(e,!0)),a.push(_l(e));else{const o=s.depositAccountListState;o.hasValidState()===!1&&o.fetchState!=="In-Progress"&&a.push($e());const c=s.paymentAccountListState;c.hasValidState()===!1&&c.fetchState!=="In-Progress"&&a.push(Qe());const d=s.zeniAccountDetailState.depositAccountDetailById[e];(d==null||d.hasValidState()===!1&&d.fetchState!=="In-Progress")&&a.push(_n(e));const l=s.depositAccountTransactionListState.byDepositId[e];(l==null||l.fetchState!=="Completed"&&l.fetchState!=="In-Progress")&&a.push(Ws(e,!1));const u=s.zeniAccountsConfigState;u.hasValidState()===!1&&u.fetchState!=="In-Progress"&&a.push(na()),a.push(_l(e))}return j(h(a))}))),(n,i,r)=>n.pipe(S(_n.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=>T(a)?p(tt(a.data?.deposit_accounts??[]),Mj({data:a,depositAccountId:e,fetchState:"Completed"})):p(n0({depositAccountId:e,error:a.status})))),I((a=>p(n0({depositAccountId:e,error:f("Unexpected Error","Fetch deposit Account REST API call errored out"+JSON.stringify(a))})))))}))),(n,i,r)=>n.pipe(S(_l.match),A((t=>{const{depositAccountId:e}=t.payload,a={start_date:"2022-01-01",end_date:ye().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=>T(s)?p(Vj({depositAccountId:e,data:s})):p(s0({depositAccountId:e,fetchState:"Error",error:s.status})))),I((s=>p(s0({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(aF.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=>T(s)?p(KI(s.data?.deposit_accounts??[]),Id({depositAccountId:e,fetchState:"Completed",error:void 0})):p(Id({depositAccountId:e,fetchState:"Error",error:s.status})))),I((s=>p(Id({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($e.match),A((()=>r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts?query=${encodeURIComponent('{"is_include_deposit_accounts_summary":true}')}`).pipe(y((t=>{if(T(t)){const e=t.data?.deposit_accounts??[];return p(tt(e),Fj({summaryPayload:t.data?.all_deposit_accounts_summary}),ta({data:e,updateType:"replace"}))}return p(o0({fetchState:"Error",error:t.status}))})),I((t=>p(o0({fetchState:"Error",error:f("Unexpected Error","Fetch deposit Accounts REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(qs.match),A((()=>r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/deposit-accounts/limits`).pipe(y((t=>T(t)?p(qF(t.data?.deposit_accounts??[]),KI(t.data?.deposit_accounts??[])):p(lb({fetchState:"Error",error:t.status})))),I((t=>p(lb({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(Ws.match),y((t=>{const{depositAccountId:e,cacheOverride:a,count:s}=t.payload,o=i.value,c=Y(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=>T(l)?p(jj(l.data?.deposit_account.transactions??[]),qj({transactionList:l.data?.deposit_account.transactions??[],depositName:l.data?.deposit_account.deposit_account_name??"",depositAccountId:e})):p(i0({depositAccountId:e,error:l.status})))),I((l=>p(i0({depositAccountId:e,error:f("Unexpected Error","Fetch deposit Account transactions REST API call errored out"+JSON.stringify(l))})))))}return h([])}))),(n,i,r)=>n.pipe(S(W1.match),y((t=>{const{scheduleType:e,downloadCategories:a,statusFilter:s}=t.payload,o=i.value.scheduleListState;let c;if(e!=="accrued_expenses"&&(c=Bc(o,e)),c==null)return h([]);const d=t.payload.timeframeAndCategory!=null?t.payload.timeframeAndCategory.selectedTimeframe:c.selectedTimeframe,l=t.payload.timeframeAndCategory.selectedCategoryId,u=ba(d),m=Us(l,d),_=c.jeScheduleKeysByListKey[m];if(_!=null&&_.fetchState==="Completed")return h([]);const g={start_date:te(u.start),end_date:te(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((v=>{if(T(v)&&v.data!=null){const b=[mt(v.data.je_schedules),Et(v.data.je_schedules,v.data.scheduled_journal_entries),Z1(e,d,l,v.data.je_schedules)];return h(b)}return p(bv(e,d,l,v.status))})),I((v=>p(bv(e,d,l,f("Unexpected Error","Schedule Download REST API call errored out"+JSON.stringify(v)))))))}))),(n,i,r)=>n.pipe(S(Fc.match),A((t=>{const{invoiceId:e,recipientTotalAmount:a,vendorName:s,vendorId:o}=t.payload,c=i.value,d=xe(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(T(u)&&u.data!=null){const m=[];return m.push(Gc(u.data.transactions)),m.push(HM({transactions:u.data.transactions,transactionId:t.payload.transactionId})),h(m)}return p(eI({transactionId:t.payload.transactionId,status:u.status}))})),I((u=>p(eI({transactionId:t.payload.transactionId,status:f("Unexpected error","Duplicate Bill Pay Rest API errored out"+JSON.stringify(u))})))))}))),(n,i,r)=>n.pipe(S(Yd.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"?(_=>({type:_.type,fileId:_.fileId,lineId:_.lineId,homeCurrencyConversions:_.homeCurrencyConversions,mileage:{description:_.description,lineDetail:_.lineDetail,transactionDate:_.transactionDate,amount:_.amount,currencyCode:_.currencyCode,currencySymbol:_.currencySymbol,distanceMileage:_?.distanceMileage},outOfPocket:{recommendations:[],isCategoryFirstTimeAutofilled:!1,isCategoryUpdateSelected:!1,isRetainedCategorySelected:!1}}))(m):(_=>({type:_.type,fileId:_.fileId,lineId:_.lineId,homeCurrencyConversions:_.homeCurrencyConversions,mileage:{},outOfPocket:{merchant:_?.merchant,description:_.description,lineDetail:_.lineDetail,transactionDate:_.transactionDate,amount:_.amount,currencyCode:_.currencyCode,currencySymbol:_.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(Ob)};return r.postAndGetJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/transactions/duplicates`,u).pipe(y((m=>{if(T(m)&&m.data!=null){const _=[];return _.push(Hq({duplicateLinesPayload:m.data.lines})),h(_)}return p(kb({status:m.status}))})),I((m=>p(kb({status:f("Unexpected error","Duplicate Reimbursement Rest API errored out"+JSON.stringify(m))})))))}))),(n,i)=>n.pipe(S(_V.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,_=m!=null?l.tenantsById?.[m]?.companyId:void 0,g=Ue(u,_??""),v=g?.company.companyZeniAccountInfo.isZeniAccountEnabled??!1;if(t)c.push(Ae("billPayAccountList",!0,!0,!0)),c.push(se(!0)),c.push(Xe()),c.push(_t()),c.push(un(o)),v&&c.push($e()),c.push(Qe()),e!=null?c.push(Wc(e,!0,a,s)):c.push(Xc(!0));else{d.ownerListState.fetchState!=="In-Progress"&&d.ownerListState.hasValidState()===!1&&c.push(_t());const b=d.accountListState.byReportId.billPayAccountList;b.hasValidState()===!1&&b.fetchState!=="In-Progress"&&c.push(Ae("billPayAccountList",!0,!0,!0)),d.classListState.fetchState!=="In-Progress"&&c.push(se(!0)),d.vendorTypeListState.hasValidState()===!1&&d.vendorTypeListState.fetchState!=="In-Progress"&&c.push(Xe());const E=d.billPayConfigState.fetchState;E!=="Completed"&&E!=="In-Progress"&&c.push(un(o));const P=d.depositAccountListState;v&&P.fetchState!=="In-Progress"&&P.fetchState!=="Completed"&&c.push($e());const O=d.paymentAccountListState;O.fetchState!=="In-Progress"&&O.fetchState!=="Completed"&&c.push(Qe()),e!=null&&c.push(Wc(e,!1,a,s))}return j(h(c))}))),(n,i)=>n.pipe(S(kq.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(Ae("reimbursementAccountList",!0,!0,!0,e,[],!0)),o.push(se(!0)),o.push($d()),o.push(rr()),o.push(Ld(d,a)),a!=null&&o.push(Fd(a,!0,s));else{c.accountListState.byReportId.reimbursementAccountList.fetchState!=="In-Progress"&&o.push(Ae("reimbursementAccountList",!0,!0,!0,e,[],!0)),c.classListState.fetchState!=="In-Progress"&&o.push(se(!0));const l=c.merchantListState;l.hasValidState()===!1&&l.fetchState!=="In-Progress"&&o.push($d());const u=c.reimbursementConfigState.fetchState;u!=="Completed"&&u!=="In-Progress"&&o.push(rr());const m=c.userFinancialAccountState.financialAccountByUserId[d];if(m==null||m.hasValidState()===!1&&m.fetchState!=="In-Progress")o.push(Ld(d,a));else if(a==null){const _=Bq(c,d);o.push(_r({bankAccountId:_,shouldOverWriteCurrentBankAccountId:!1}))}a!=null&&o.push(Fd(a,!1,s))}return j(h(o))}))),(n,i,r)=>n.pipe(S(Hv.match),y((t=>{const{billId:e,cacheOverride:a}=t.payload,s=Ie(e),o=i.value,c=Y(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(T(d)&&d.data!=null){const l=[FM(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 h(l)}return p(Qv(t.payload.billId,d.status))})),I((d=>(console.error(`Fetch eligible actions REST API call errored out ${d}`),p(Qv(t.payload.billId,f("Unexpected Error",`Fetch eligible actions REST API call errored out ${d}`))))))):h([])}))),rY,(n,i,r)=>n.pipe(S(Js.match),y((t=>{const{entityId:e,entityType:a,cacheOverride:s}=t.payload,o=QF(e,a),c=[],d=i.value,l=Y(d.commonHistoryState.historyById,o,void 0);if(s===!0||l==null||l.fetchState!=="In-Progress"){c.push(wd({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((_=>T(_)&&_.data!=null?p(WF({entityId:e,entityType:a,historicEventsPayload:_.data.activities,keepTimeInUTC:a==="bill_pay"})):p(wd({entityId:e,entityType:a,fetchState:"Error",error:_.status})))),I((_=>(console.error(`REST API call errored out ${_}`),p(wd({entityId:e,entityType:a,fetchState:"Error",error:f("Unexpected Error",`REST API call errored out ${_}`)}))))));return j(h(c),m)}return h(c)}))),(n,i,r)=>n.pipe(S(SR.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:Bf(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},_=e.qboId===e.name?`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/recommendations?query=${encodeURIComponent(JSON.stringify(m))}`:`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/${ST(e.type)}/${e.qboId}/recommendations?query=${encodeURIComponent(JSON.stringify(u))}`;return r.getJSON(_).pipe(y((g=>{if(T(g)&&g.data!=null){const v=[],{transactionId:b,transaction:E,lineIds:P}=s,O=hT(g.data.recommendations,P),x=gn(g.data.recommendations),U=d===!0&&O!=null?Df(E,O):os(E);if(v.push(nn({entityId:e.id,entityType:e.type,recommendations:x})),o===!0&&v.push(sn(b,"Completed")),O!=null){const k=Ea(i.value.accountState,i.value.accountListState,"accountList");c===!0?v.push(Jf(l,b,U,P,e,a,O,k,ot(i.value))):v.push(wf(b,U,P,e,a,O,k))}return h(v)}return p(Ha({entityId:e.id,entityType:e.type,status:g.status}))})),I((g=>p(Ha({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(gR.match),Me((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(fR((()=>cr(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,_=(E,P)=>m&&P!=null?p(E,P):p(E),g=a.flowType==="categorization"?vR(a.selectedTab,s,c):IR(s,c),v=((E,P,O,x,U)=>{const k={entity_name:P.name,entity_type:P.type};if(P.qboId===P.name)return`${E}/1.0/recommendations?query=${encodeURIComponent(JSON.stringify(k))}`;const C={amount:O,transaction_id:Bf(x.transactionId.id),transaction_type:x.transaction.type,line_ids:x.lineIds};return U===!0&&(C.include_cot=!0),`${E}/1.0/${B=P.type,`${B}s`}/${P.qboId}/recommendations?query=${encodeURIComponent(JSON.stringify(C))}`;var B})(r.apiEndPoints.accountMicroServiceBaseUrl,d,l,a.transactionDetails,u===!0),b=r.getJSON(v).pipe(y((E=>{if(!T(E)||E.data==null)return _(a.flowType==="categorization"?$f(a.selectedTab,s,c,E.status):Rf(s,c,E.status),m?sn(s,"Error",E.status):void 0);const P=hT(E.data.recommendations,c);if(P==null)return _(a.flowType==="categorization"?bR(a.selectedTab,s,c):ER(s,c),m?sn(s,"Completed"):void 0);const O=u===!0?Df(o,P):os(o),x=Ea(i.value.accountState,i.value.accountListState,"accountList");return a.flowType==="categorization"?p(Jf(a.selectedTab,s,O,c,d,l,P,x,ot(i.value))):_(wf(s,O,c,d,l,P,x),m?sn(s,"Completed"):void 0)})),I((E=>{const P="fetchEntityRecommendationsForLineUpdate failed: "+(E instanceof Error?E.message:JSON.stringify(E)),O=f("Unexpected Error",P);return _(a.flowType==="categorization"?$f(a.selectedTab,s,c,O):Rf(s,c,O),m?sn(s,"Error",O):void 0)})));return j(p(g),b)})))))),nY,(n,i,r)=>n.pipe(S(Su.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 te(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(T(d)&&d.data!=null){const l=d.data.matches,u=[];return l.length>0&&u.push(c_(l,Zn(e))),u.push(gU({matchIds:l.map((m=>m.match_id)),selectedPeriod:o,refreshViewInBackground:s})),h(u)}return p(d_({status:d.status,selectedPeriod:o,refreshViewInBackground:s}))})),I((d=>p(d_({status:f("Unexpected Error","fetch actual matching REST API call errored out"+JSON.stringify(d)),selectedPeriod:o,refreshViewInBackground:s})))),_e(n.pipe(S(ke.match))))}))),(n,i,r)=>n.pipe(S(Oi.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=>T(s)&&s.data!=null?h([c_([s.data],Zn(i.value)),fU({matchId:e,refreshViewInBackground:a})]):h([l_({matchId:e,refreshViewInBackground:a,status:s.status})]))),I((s=>h([l_({matchId:e,refreshViewInBackground:a,status:f("Unexpected Error",`Fetch actual matching match REST API call errored out ${JSON.stringify(s)}`)})]))),_e(n.pipe(S((s=>ke.match(s)||u_.match(s)&&s.payload.matchId===e)))))}))),n=>n.pipe(S(Ci.match),y((i=>{const{period:r,refreshViewInBackground:t}=i.payload;return p(Su(r,t))}))),(n,i,r)=>n.pipe(S(b_.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/expenses_automation/failed_je_postings`).pipe(A((t=>{if(!T(t)||t.data==null)return p(E_(t.status));const{je_schedules:e,scheduled_journal_entries:a}=t.data.failed_je_postings;return h([mt(e),Et(e,a),T_(e),DU(e,a)])})),I((t=>p(E_(f("Unexpected Error","fetch failed JE postings REST API call errored out"+JSON.stringify(t)))))),_e(n.pipe(S(ke.match))))))),(n,i,r)=>n.pipe(S(Wn.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[be(s)],m=d===!0?u?.reimbursement:u?.generalExpense,_=m?.operatingExpenseIds??[],g=m?.fetchStatus?.fetchState??"Not-Started";if(o===!0||m==null||_.length===0||g==="Not-Started"){const v={month_and_year:`${s.month<10?`0${s.month}`:s.month}-${s.year}`,sort_by:oU(a.sortKey),sort_order:di(a.sortOrder),page_token:c,reimbursement_flag:d};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/month-close/flux-analysis?query=${encodeURIComponent(JSON.stringify(v))}`).pipe(y((b=>{if(T(b)&&b.data!=null){const E=[];return E.push(X(b.data.accounts,"account_list")),E.push(We("class_list",b.data.accounting_class)),E.push(ue(b.data.vendors,"merge")),E.push(F({users:b.data.users,updateType:"merge"})),E.push(iU({fetchReimbursement:d,pageMetaData:b.data.page_metadata})),b.data.flux_analysis_entities?.operating_expenses!=null&&E.push(cU({expensesPayload:b.data.flux_analysis_entities?.operating_expenses,totalsPayload:b.data.total_operating_expenses,currency:b.data.currency,selectedPeriod:s,fetchReimbursement:d,keepExistingListItems:l,status:b.data?.status})),h(E)}return p(t_({fetchReimbursement:d,status:b.status,selectedPeriod:s}))})),I((b=>p(t_({fetchReimbursement:d,status:f("Unexpected Error",`fetch flux analysis view REST API call errored out: ${JSON.stringify(b)}`),selectedPeriod:s})))))}return h([])}))),(n,i)=>n.pipe(S(Ri.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:_}=i.value,{transactionReviewLocalDataById:g}=_.transactionCategorizationView[s],v=a===!0?{...g}:{};return X_(m,t).forEach((b=>{const E=os(b),P=Mk(E,s,d[b.id]);v[b.id]==null?v[b.id]={...Vk,transactionId:b.id,transactionReviewLocalData:{...P,sortedLineItems:b.lines?.map((O=>O.id))??[]}}:v[b.id]={transactionId:b.id,transactionReviewLocalData:{...v[b.id].transactionReviewLocalData,...P,lineItemById:{...CH(v[b.id].transactionReviewLocalData.lineItemById,P.lineItemById)},sortedLineItems:[...new Set(v[b.id].transactionReviewLocalData.sortedLineItems.concat(P.sortedLineItems))],tabSpecificLineItems:Lk(v[b.id].transactionReviewLocalData.tabSpecificLineItems,s,P.tabSpecificLineItems)}}})),u.push(Fk({selectedTab:s,transactionIds:t,selectedPeriod:e,keepExistingListItems:a,transactionLocalData:v,pageToken:o,totalCount:c,refreshViewInBackground:l})),h(u)}))),(n,i,r)=>n.pipe(S(lr.match),y((t=>{const e=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:a}}=e,{period:s,refreshViewInBackground:o}=t.payload,c=a[Q(e).tenantId],d=t.payload.selectedPageTab??e.expenseAutomationJESchedulesViewState.uiState.selectedPageTab,l=d==="schedules",u=ge(Z(te(s.start)).subtract(1,"month").endOf("month").format(re)),m=te(l||u==null?s.end:u),_=Z(m),g=_.subtract(24,"month").startOf("month").format(re),v=_.subtract(12,"month").startOf("month").format(vo),b={base_transaction_end_date:m,end_date:m,accrued_start_date:g,accrued_end_date:m,include_accrued:!0,...l?{base_transaction_start_date:te(s.start),close_period_start_date:te(s.start),one_time_accrual_service_month:Z(te(s.start)).format(vo),one_time_accrual_statuses:[],filter_failed_je_postings_by_date:!0}:{one_time_accrual_service_month_start:v,one_time_accrual_service_month_end:_.format(vo),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(b))}`).pipe(y((E=>{if(T(E)&&E.data!=null){const P=[],O=E.data.accrued_je_schedules?.je_schedules??[],x=E.data.one_time_accruals??[];return P.push(mt([...E.data.je_schedules])),O.length>0&&P.push(fa(O),wr(O,E.data.accrued_je_schedules?.scheduled_journal_entries)),x.length>0&&P.push(Ft(x)),P.push($U({jeSchedules:[...E.data.je_schedules],failedJeSchedules:[],accruedJeSchedules:O,oneTimeAccruals:x,selectedPeriod:c,selectedPageTab:d,refreshViewInBackground:o})),h(P)}return p(P_({status:E.status,selectedPeriod:c,selectedPageTab:d}))})),I((E=>p(P_({status:f("Unexpected Error","fetch JE schedules REST API call errored out"+JSON.stringify(E)),selectedPeriod:c,selectedPageTab:d})))),_e(n.pipe(S(ke.match))))}))),(n,i)=>n.pipe(S(Lt.match),y((r=>{const t=[],{period:e,refreshViewInBackground:a}=r.payload,s=i.value,{selectedPageTab:o}=s.expenseAutomationJESchedulesViewState.uiState,c=Jr();s.accountListState.byReportId[c.accountListKey].fetchState==="Not-Started"&&t.push(Ae(c.accountListKey,!0,!1,!1,!1,c.allowedAccountList)),o==="actual_matching"?t.push(Ci(e,a)):t.push(lr(e,a));const{fetchState:d}=s.expenseAutomationJESchedulesViewState.failedJePostings.fetchState,l=a===!0;return(d==="Not-Started"||d==="Error"||l)&&t.push(b_(l)),s.expenseAutomationJESchedulesViewState.accountSettings.hasLoadedAccountSettings||t.push(i_()),j(h(t))}))),(n,i,r)=>n.pipe(S(eh.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=Q(i.value),u=e.selectedPeriodByTenantId[l.tenantId],m=o==="review"?"autoCategorized":"review",_=a.transactionCategorizationView[o],g=a.transactionCategorizationView[m],{uiState:v}=_,b=d.map((P=>P.transaction_id)),E=[];return d.length>0&&c.length===0&&E.push(N(th(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((P=>{if(T(P)&&P.data!=null){const O=P.data.transactions_reviewed_success,x=P.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=[],M={};C.forEach((w=>{const z=U[w]??[],ee=k[w]??[],W=_.transactionReviewLocalDataById[w]?.transactionReviewLocalData.tabSpecificLineItems[o]??[],pe=(g.transactionReviewLocalDataById[w]?.transactionReviewLocalData.tabSpecificLineItems[m]??[]).length>0,ne=W.filter((ae=>{const me=z.includes(ae),he=ee.includes(ae);return o==="review"?!me||he:!me&&!he}));ne.length>0?M[w]=ne:(M[w]=[],L.push(w),pe||J.push(w))}));const q=[...b],R=v.totalCount[be(u)],D=L.length===0?R:R-L.length;if(E.push(is(o,C,L,u,"Completed",void 0,M)),J.length>0&&E.push(ah({transactionIds:J})),o==="autoCategorized"&&Object.keys(k).length>0){const w=Re(u),z=ge(w.start),ee=ge(w.end);z!=null&&ee!=null&&E.push(kr("review",{start:z,end:ee},!0,!1,void 0,void 0,!0,!1))}return E.push(rs({selectedPeriod:u,selectedTab:o,totalCount:D})),E.push(N(th(c.length-B.length,q.length,B.length))),l!=null&&E.push(it({tenantId:l.tenantId,period:u,refreshViewInBackground:!0})),h(E)}return p(is(t.payload.selectedTab,[],[],u,"Error",P.status))})),I((P=>p(is(t.payload.selectedTab,[],[],u,"Error",f("Unexpected Error",`Transaction mark miscategorized as correct REST API call errored out ${JSON.stringify(P)}`)))))):h(E)}))),(n,i,r)=>n.pipe(S(Br.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[Q(e).tenantId],m=s[be(u)]??[];if(d===!0||m.length===0||o==="Not-Started"){const _={start_date:te(c.start),end_date:te(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(_))}`).pipe(y((g=>{if(T(g)&&g.data!=null){const v=[];return v.push(De(g.data.transactions,(b=>b.transaction_id))),v.push(bk({transactionsPayload:g.data.transactions,selectedPeriod:u})),h(v)}return p(q_({status:g.status,selectedPeriod:u}))})),I((g=>p(q_({status:f("Unexpected Error","fetch missing receipts REST API call errored out"+JSON.stringify(g)),selectedPeriod:u})))))}return h([])}))),(n,i,r)=>n.pipe(S(Vt.match),y((t=>{const{accountId:e,cacheOverride:a,refreshViewInBackground:s}=t.payload,o=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:c},expenseAutomationReconciliationViewState:{accountReconciliationRecordsBySelectedPeriod:d}}=o,l=c[Q(o).tenantId];let u,m,_;if(e!=null&&(u=wa(o,e,l),m=u?.reconciliationId),_=e!=null?d[be(l)]?.reconciliationByAccountID[e]?.transactionFetchState.fetchState:o.expenseAutomationReconciliationViewState.fetchState,a===!0||_!=="Completed"){const{start:g,end:v}=Re(l,!0),b={};m==null&&(b.start_date=g.toString(),b.end_date=v.toString(),e!=null&&(b.account_id=e)),a===!0&&e!=null&&(b.is_force_refresh=!0);const E=m!=null?`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/${m}?query=${encodeURIComponent(JSON.stringify(b))}`:`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation?query=${encodeURIComponent(JSON.stringify(b))}`;return r.getJSON(E).pipe(y((P=>{if(T(P)&&P.data!=null){const O=[],x=Ly(P.data.reconciliation);O.push(X(P.data.accounts,"account_reconciliation"),X(P.data.excluded_accounts??[],"excluded_account_reconciliation"),F({users:P.data.users??[],updateType:"merge"}),Se({files:P.data.files??[]}),bi(x,"merge"),Ei(l,P.data.reconciliation,e==null));const U=uH(P.data.reconciliation[0]?.transactions?.review??[]);if(e!=null){const k=zE(P.data.reconciliation[0].transactions.reconcile);O.push(Ur({selectedTransactionIds:k}),jy(U))}return O.push(Dx(l,P.data,s,e)),h(O)}return p(Gy({error:P.status,selectedPeriod:l,refreshViewInBackground:s,accountId:e}))})),I((P=>p(Gy({error:f("Unexpected Error",`fetch reconciliation view REST API call errored out ${JSON.stringify(P)}`),refreshViewInBackground:s,selectedPeriod:l,accountId:e})))))}{const g=[];return e!=null&&g.push(zy()),h(g)}}))),(n,i)=>n.pipe(S(jk.match),y((r=>{const{transactionIds:t,cotTrackingByTransactionId:e,selectedTab:a}=r.payload,s=[],{transactionState:o,expenseAutomationTransactionsViewState:c}=i.value,d=[];return X_(o,t).forEach((l=>{const u=Y(c.transactionCategorizationView[a].transactionReviewLocalDataById,l.id,void 0),m=Ea(i.value.accountState,i.value.accountListState,"accountList"),_=u?.transactionReviewLocalData;_!=null&&d.push(kH(_,l,m))})),s.push(rh(a,t,d,e)),h(s)}))),(n,i,r)=>n.pipe(S(ns.match),Me((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:_,sortKey:g}=u,v=u.searchString,b=a[Q(i.value).tenantId],E={start_date:te(o.start),end_date:te(o.end),auto_categorized:d==="autoCategorized",sort_by:wi(g),sort_order:_==="ascending"?"asc":"desc",page_token:m,page_size:25,search_text:u.searchString,search_all_statuses:!1,sub_tab:s.selectedTransactionCategorizationCompletedSubTab,transaction_group:s.selectedTransactionGroup};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/expense-automation/transactions?query=${encodeURIComponent(JSON.stringify(E))}`).pipe(y((P=>{if(i.value.expenseAutomationTransactionsViewState.transactionCategorizationView[d].uiState.searchString!==v)return $;if(T(P)&&P.data!=null){const O=[];O.push(De(P.data.transactions,(C=>C.transaction_id),"merge"));const x=P.data.transactions.map((C=>C.transaction_id)),U=H_(P.data.transactions);O.push(Q_({selectedTab:d,uiState:{pageToken:P.data.next_page_token??null}})),O.push(Ri(d,x,b,c,P.data.next_page_token??null,P.data.total_count,U,l)),O.push(rs({selectedPeriod:b,selectedTab:d,totalCount:P.data.total_count})),O.push(Z_({selectedPeriod:b,selectedTab:d,parentTotalCount:P.data.parent_tab_total_count??P.data.total_count}));const k=P.data.other_tab_total_count;return k!=null&&O.push(Z_({selectedPeriod:b,selectedTab:d==="review"?"autoCategorized":"review",parentTotalCount:k})),O.push(Rk({refreshViewInBackground:l,tabs:Mi.filter((C=>d!==C))})),O.push(W_({refreshViewInBackground:l,selectedTab:d,status:P.status})),h(O)}return p(as({selectedPeriod:b,selectedTab:d,status:P.status}))})),I((P=>i.value.expenseAutomationTransactionsViewState.transactionCategorizationView[d].uiState.searchString!==v?$:p(as({selectedPeriod:b,selectedTab:d,status:f("Unexpected Error","fetch Transaction Categorization REST API call errored out"+JSON.stringify(P))})))))})))))),(n,i)=>n.pipe(S(kr.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:_,transactionIdsBySelectedPeriod:g,uiState:v}=m.transactionCategorizationView[t],b={month:o.start.month,year:o.start.year},E=g[be(b)]??[],P=i.value.accountListState.byReportId.accountList;P.hasValidState()===!1&&P.fetchState==="Not-Started"&&u.push(Ae("accountList",!0));const O=i.value.classListState;O.hasValidState()===!1&&O.fetchState==="Not-Started"&&u.push(se());const x=i.value.projectListState;ss(i.value)&&x.hasValidState()===!1&&x.fetchState==="Not-Started"&&u.push(Vi());const U=i.value.ownerListState;return U.hasValidState()===!1&&U.fetchState==="Not-Started"&&u.push(_t()),d!==""&&e!==!0&&_!=="Not-Started"&&E.length!==0&&v.searchString===""||u.push(ns(t,o,e,a,d,s,c,l)),d===void 0&&Mi.filter((k=>k!==t)).forEach((k=>{m.transactionCategorizationView[k].fetchState==="Not-Started"&&u.push(ns(k,o,!1,!1,void 0,void 0,!0,void 0))})),d!==void 0&&Mi.filter((k=>k!==t)).forEach((k=>{const C=m.transactionCategorizationView[k].uiState.searchString;d!==C&&u.push(ns(k,o,!0,a,d,void 0,!0,!0))})),h(u)}))),(n,i,r)=>n.pipe(S(rh.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,_,g,v,b,E,P){const O=[];return b.forEach((x=>{const U=E.find((k=>k.transactionId===x));if(U!=null){const k=(function(C,B,J,L,M,q,R){const D=Ot(B,M),w=Y(L.transactionCategorizationView[C].transactionReviewLocalDataById,M,void 0),z=w?.transactionReviewLocalData?.vendorUpdates,ee=w?.transactionReviewLocalData?.customerUpdates,W=w?.transactionReviewLocalData?.selectedEntity;let pe;if(z?.qboId!=null&&W!=null&&W.type==="vendor"){const ae=xe(J,z.qboId)??z;pe={id:ae.qboId===ae.name?"":ae.qboId??"",name:ae.name}}let ne;if(W!=null&&W.type==="customer"&&(ne=ee?.qboId!=null?{id:ee.qboId,name:ee.name}:{id:W.id,name:W.name}),D!=null){const ae=JH(q.updates,D,M,R,pe,ne,W);return{entity_related_updates:wH(q.entityRelatedUpdates),transaction_id:M,transaction:ae,transaction_type:k_(D.type)}}})(m,_,g,v,x,U,P);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(T(m)&&m.data!=null){const _=m.data,g=[];return g.push(eh(e,_),Li(e,"Completed",f("Completed","Transaction categorization updated successfully"))),h(g)}return p(Li(e,"Error",m.status))})),I((m=>p(Li(e,"Error",f("Unexpected Error",`REST API call errored out ${JSON.stringify(m)}`))))))}))),(n,i,r)=>n.pipe(S(vE.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=>T(d)?h(pW({id:e,name:a,zeniId:s},d)):p(no(t.payload.vendorId,d.status)))),I((d=>p(no(t.payload.vendorId,f("Unexpected Error","Spend Trend REST API call errored out"+JSON.stringify(d)))))));return j(c)}))),(n,i)=>n.pipe(S(Gj.match),y((r=>{const{cacheOverride:t}=r.payload,e=i.value,a=[];if(t===!0)a.push(Xe()),a.push(na()),a.push($e()),a.push(c0());else{e.vendorTypeListState.hasValidState()===!1&&e.vendorTypeListState.fetchState!=="In-Progress"&&a.push(Xe());const s=e.zeniAccountsConfigState;s.hasValidState()===!1&&s.fetchState!=="In-Progress"&&a.push(na());const o=e.depositAccountListState;o.fetchState!=="In-Progress"&&o.fetchState!=="Completed"&&a.push($e()),a.push(c0())}return j(h(a))}))),sY,(n,i,r)=>n.pipe(S(tB.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=>T(s)?p(Se({files:s.data?.files??[]}),aB({fileId:e})):p(dh({status:s.status})))),I((s=>p(dh({status:f("Unexpected Error","Fetch File REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(gu.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=>T(s)?p(Se({files:s.data?.files??[]}),rB({fileIds:e})):p(lh({status:s.status})))),I((s=>p(lh({status:f("Unexpected Error","Fetch File List REST API call errored out"+JSON.stringify(s))})))))}))),(n,i)=>n.pipe(S(iB.match),A((r=>{const{userId:t,fetchSelectedTab:e,fetchFullReport:a,cacheOverride:s}=r.payload,o=i.value;if(s===!0)return p(Da(t),Fi(),Mo(),Yo());{const{tenantState:c,financeStatementState:d}=o,l=[];c.fetchState==="In-Progress"||c.hasValidState()||l.push(Da(t));const u=cB(void 0,o.profitAndLossState),m=dB(o.balanceSheetState),_=lB(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(jt(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":_.fetchStateByTimeframe[d.timeframe].fetchState!=="In-Progress"&&_.fetchStateByTimeframe[d.timeframe].fetchState!=="Completed"&&l.push(Jt(d.timeframe,a))}else u.reducedAllFetchState.fetchState!=="In-Progress"&&u.reducedAllFetchState.fetchState!=="Completed"&&l.push(Fi()),m.reducedAllFetchState.fetchState!=="In-Progress"&&m.reducedAllFetchState.fetchState!=="Completed"&&l.push(Mo(a)),_.reducedAllFetchState.fetchState!=="In-Progress"&&_.reducedAllFetchState.fetchState!=="Completed"&&l.push(Yo(a));return h(l)}}))),(n,i,r)=>n.pipe(S(cs.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/forecasts`).pipe(y((t=>T(t)?p(uB(t.data?.forecasts??[]),ds(t)):p(Lr(t.status)))),I((t=>p(Lr(f("Unexpected Error","Fetch forecast list call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(SB.match),Ma((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(Ma((l=>{if(T(l)&&l.data!=null){const u=[];return u.push(Tt({globalMerchants:l.data.entities,updateType:"merge"})),u.push(gB(l.data)),h(u)}return p(yh(l.status))})),I((l=>p(yh(f("Unexpected Error","Global Merchant Auto Complete REST API call errored out"+JSON.stringify(l)))))))}return h([])}))),(n,i,r)=>n.pipe(S(_B.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(T(d)&&d.data!=null){const{recommendations:l}=d.data,u=fP(l),m=[Tt({globalMerchants:u}),hB(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(mh({status:d.status}))})),I((d=>p(mh({status:f("Unexpected Error","Fetch Global Merchant Recommendation REST API call errored out"+JSON.stringify(d))})))))}return h([])}))),(n,i,r)=>n.pipe(S(IE.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=>T(c)?h(mW({id:e,name:a},c)):p(no(t.payload.customerId,c.status)))),I((c=>p(no(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(Si.match),A((()=>r.getJSON(`${r.apiEndPoints.insightsMicroServiceBaseUrl}/1.0/insights`).pipe(y((t=>T(t)?p(_h(t.data?.insights??[]),fB(t)):p(hh(t.status)))),I((t=>p(hh(f("Unexpected error","Insights Card REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(NI.match),A((t=>{const{currencyCode:e,amount:a,vendorType:s,cacheOverride:o}=t.payload,c=i.value,d=AI(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=>T(u)&&u.data!=null?h([jV({internationalWireFormPayload:u.data,currencyCode:e,amount:a,vendorType:s}),OI(a,s)]):p(CI({currencyCode:e,amount:a,vendorType:s,error:u.status})))),I((u=>p(CI({currencyCode:e,amount:a,vendorType:s,error:f("Unexpected Error","Fetch Dynamic form REST API call errored out"+JSON.stringify(u))}))))):h([])}))),(n,i,r)=>n.pipe(S(zV.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=>T(e)&&e.data!=null?h([KV({internationalWireFormPayload:e.data.labels}),UI(t.payload.companyId,e.data.labels)]):p(kI({error:e.status})))),I((e=>p(kI({error:f("Unexpected Error","Fetch international verification form REST API call errored out"+JSON.stringify(e))})))))))),(n,i,r)=>n.pipe(S(dS.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=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices/counts`,e);return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?p(aJ(s.data)):p(lS(s.status)))),I((s=>p(lS(f("Unexpected Error","Fetch invoice counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(tn.match),A((t=>{const{invoiceId:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices/${e}`;return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?[G(Kr([s.data])),Va([s.data],"merge"),ZD({invoiceId:s.data.id})]:p(iS({invoiceId:e,status:s.status})))),I((s=>p(iS({invoiceId:e,status:f("Unexpected Error","Fetch invoice detail REST API call errored out "+JSON.stringify(s))})))))}))),(n,i)=>n.pipe(S(XD.match),Ge(i),y((([r,t])=>{const{cacheOverride:e=!1,invoiceId:a}=r.payload,s=[],o=t.invoicingInvoiceDetailState.detailById[a];oT({error:o?.error,fetchState:o?.fetchState??"Not-Started"},e)&&s.push(tn({invoiceId:a}));const c=t.invoicingConfigViewState;return oT({error:c.error,fetchState:c.fetchState},e)&&s.push(Zr()),s.length>0?h(s):$}))),(n,i,r)=>n.pipe(S(uS.match),A((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices/kpis`;return r.getJSON(t).pipe(A((e=>T(e)&&e.data!=null?p(rJ(nJ(e.data))):p(pS(e.status)))),I((e=>p(pS(f("Unexpected Error","Fetch invoice KPIs REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(Wi.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=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices`,((u,m,_,g)=>{const v=new URLSearchParams;return m!=null&&m.length>0&&v.set("status",m),u.customerId!=null&&v.set("customer_id",u.customerId),u.subscriptionId!=null&&v.set("subscription_id",u.subscriptionId),u.search!=null&&u.search.length>0&&v.set("search",u.search),u.dateFrom!=null&&v.set("date_from",u.dateFrom),u.dateTo!=null&&v.set("date_to",u.dateTo),v.set("limit",String(ct)),_!=null&&v.set("cursor",_),dt(v,g),v})(e,d,a,o));return r.getJSON(l).pipe(A((u=>{if(T(u)){const m=u.data?.items??[];return[Va(m,"merge"),G(Kr(m)),sJ({invoices:m,nextCursor:u.data?.next_cursor??null,keepExistingListItems:s})]}return p(mS(u.status))})),I((u=>p(mS(f("Unexpected Error","Fetch invoice list REST API call errored out "+JSON.stringify(u)))))))}))),(n,i)=>n.pipe(S(oJ.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingInvoiceListState,o=s.invoiceByTab[s.activeTab]??iJ(),c=[];return cu({fetchState:o.fetchState,error:o.error},t)&&c.push(Wi({filters:e,sort:a})),cu(s.countsFetchState,t)&&c.push(dS()),cu(s.kpisFetchState,t)&&c.push(uS()),j(h(c))}))),(n,i)=>n.pipe(S(zi.match),Ge(i),y((([,r])=>{const t=[],e=r.accountListState.byReportId[QS];(e.hasValidState()&&e.accountIds.length>0)===!1&&e.fetchState!=="In-Progress"&&t.push(Ae(QS,!0));const a=r.classListState;return a.hasValidState()===!1&&a.fetchState!=="In-Progress"&&t.push(se()),t.length>0?h(t):$}))),(n,i,r)=>n.pipe(S(vB.match),A((t=>{const{filters:e,cursor:a,keepExistingListItems:s,sort:o}=t.payload,c=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/audit-log`,((d,l,u)=>{const m=new URLSearchParams,_=(g=>{const v={};return g.search!=null&&g.search.length>0&&(v.search=g.search),g.action!=null&&g.action.length>0&&(v.action=g.action),g.dateFrom!=null&&g.dateFrom.length>0&&(v.date_from=g.dateFrom),g.dateTo!=null&&g.dateTo.length>0&&(v.date_to=g.dateTo),v})(d);return Object.keys(_).length>0&&m.set("filter",JSON.stringify(_)),m.set("limit",String(ct)),l!=null&&m.set("cursor",l),u!=null&&RH.has(u.field)&&dt(m,u),m})(e,a,o));return r.getJSON(c).pipe(A((d=>{if(T(d)){const l=(d.data?.items??[]).map(IB);return p(bB({items:l,nextCursor:d.data?.next_cursor??null,keepExistingListItems:s}))}return p(Sh(d.status))})),I((d=>p(Sh(f("Unexpected Error","Fetch audit log REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(yS.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=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/catalog/counts`,e);return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?p(cJ(s.data)):p(_S(s.status)))),I((s=>p(_S(f("Unexpected Error","Fetch catalog counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(Jh.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=>T(o)&&o.data!=null?[Wr([o.data],"merge"),wh({id:o.data.id,kind:a})]:p($h({error:o.status,id:e})))),I((o=>p($h({error:f("Unexpected Error","Fetch catalog item detail REST API call errored out "+JSON.stringify(o)),id:e})))))}))),(n,i)=>n.pipe(S(ji.match),Ge(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&&ru({error:c?.error,fetchState:c?.fetchState??"Not-Started"},e)&&o.push(Jh({id:a,kind:s}));const d=t.invoicingConfigViewState;ru({fetchState:d.fetchState,error:d.error},e)&&o.push(Zr());const l=t.invoicingQboViewState;return ru(l.connectionFetchState,e)&&o.push(Gi()),o.push(zi()),o.length>0?h(o):$}))),(n,i)=>n.pipe(S(dJ.match),y((r=>{const{cacheOverride:t,planFilters:e,productFilters:a,planSort:s,productSort:o}=r.payload,c=i.value.invoicingCatalogListViewState,d=[];return du({fetchState:c.fetchState,error:c.error},t)&&d.push(La({filters:e,sort:s})),du(c.productFetchState,t)&&d.push(ps({filters:a,sort:o})),du(c.countsFetchState,t)&&d.push(yS()),j(h(d))}))),(n,i,r)=>n.pipe(S(La.match),A((t=>{const{filters:e,cursor:a,fetchAll:s,keepExistingListItems:o,sort:c}=t.payload,d=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/catalog/plans`,((l,u,m)=>{const _=new URLSearchParams;return l.status!=null&&l.status.length>0&&_.set("status",l.status),l.type!=null&&l.type.length>0&&_.set("type",l.type),l.search!=null&&l.search.length>0&&_.set("search",l.search),_.set("limit",String(ct)),u!=null&&_.set("cursor",u),dt(_,m),_})(e,a,c));return r.getJSON(d).pipe(A((l=>{if(T(l)){const u=l.data?.items??[],m=l.data?.next_cursor??null,_=[Wr(u,"merge"),lJ({ids:u.map((g=>g.id)),nextCursor:m,keepExistingListItems:o})];return s&&m!=null&&m!==a&&_.push(La({cursor:m,fetchAll:s,filters:e,keepExistingListItems:!0,sort:c})),_}return p(hS(l.status))})),I((l=>p(hS(f("Unexpected Error","Fetch catalog plan list REST API call errored out "+JSON.stringify(l)))))))}))),(n,i,r)=>n.pipe(S(ps.match),A((t=>{const{filters:e,cursor:a,fetchAll:s,keepExistingListItems:o,sort:c}=t.payload,d=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/catalog/plans`,((l,u,m)=>{const _=new URLSearchParams;return l.type!=null&&l.type.length>0&&_.set("type",l.type),l.status!=null&&l.status.length>0&&_.set("status",l.status),l.search!=null&&l.search.length>0&&_.set("search",l.search),_.set("limit",String(ct)),u!=null&&_.set("cursor",u),dt(_,m),_})(e,a,c));return r.getJSON(d).pipe(A((l=>{if(T(l)){const u=l.data?.items??[],m=l.data?.next_cursor??null,_=[Wr(u,"merge"),uJ({ids:u.map((g=>g.id)),nextCursor:m,keepExistingListItems:o})];return s&&m!=null&&m!==a&&_.push(ps({cursor:m,fetchAll:s,filters:e,keepExistingListItems:!0,sort:c})),_}return p(SS(l.status))})),I((l=>p(SS(f("Unexpected Error","Fetch catalog product list REST API call errored out "+JSON.stringify(l)))))))}))),(n,i,r)=>n.pipe(S(Zr.match),A((t=>{const{isInvoicingTosAccepted:e}=i.value.invoicingConfigViewState;if(!t.payload.cacheOverride&&e!=null)return $;const a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/config`;return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?p(ec(s.data)):p(vS(s.status)))),I((s=>p(vS(f("Unexpected Error","Fetch invoicing config REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(gh.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=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/discounts/counts`,e);return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?p(EB(s.data)):p(fh(s.status)))),I((s=>p(fh(f("Unexpected Error","Fetch discount counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(Lh.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/discounts/${e}`;return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?[ls([s.data],"merge"),Fh({id:s.data.id})]:p(qh({id:e,status:s.status})))),I((s=>p(qh({id:e,status:f("Unexpected Error","Fetch discount detail REST API call errored out "+JSON.stringify(s))})))))}))),(n,i)=>n.pipe(S(Yi.match),Ge(i),y((([r,t])=>{const{cacheOverride:e=!1,id:a}=r.payload,s=[],o=a!=null?t.editInvoicingCouponDetailViewState.recordStateById[a]:void 0;a!=null&&io({error:o?.error,fetchState:o?.fetchState??"Not-Started"},e)&&s.push(Lh({id:a}));const c=t.invoicingConfigViewState;io({error:c.error,fetchState:c.fetchState},e)&&s.push(Zr());const d=t.invoicingQboViewState;io(d.connectionFetchState,e)&&s.push(Gi()),s.push(zi());const l=t.invoicingSettingsViewState;return io({error:l.error,fetchState:l.fetchState},e)&&s.push(lt()),s.length>0?h(s):$}))),(n,i,r)=>n.pipe(S(Fr.match),Ee((t=>({action:t,tabId:qr(i.value.invoicingCouponViewState.activeTab,t.payload.tabId,vh)}))),Me((({tabId:t})=>t)),y((t=>t.pipe(A((({action:e,tabId:a})=>{const{filters:s,cursor:o,keepExistingListItems:c,sort:d}=e.payload,l=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/discounts`,((u,m,_,g)=>{const v=new URLSearchParams;return g!=null&&v.set("status",g),u.search!=null&&u.search.length>0&&v.set("search",u.search),v.set("limit",String(ct)),m!=null&&v.set("cursor",m),dt(v,_),v})(s,o,d,jr(a)));return r.getJSON(l).pipe(A((u=>{if(T(u)){const m=u.data?.items??[];return[ls(m,"merge"),TB({ids:m.map((_=>_.id)),nextCursor:u.data?.next_cursor??null,keepExistingListItems:c,tabId:a})]}return p(Ih({status:u.status,tabId:a}))})),I((u=>p(Ih({status:f("Unexpected Error","Fetch discount list REST API call errored out "+JSON.stringify(u)),tabId:a})))))})))))),(n,i)=>n.pipe(S(PB.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingCouponViewState,o=[],c=Gr(s.activeTab,vh),d=zr(Gt(s.byTab,c),t);return d.kind==="firstPage"?o.push(Fr({filters:e,sort:a,tabId:c})):d.kind==="nextPage"&&o.push(Fr({cursor:d.cursor,filters:e,keepExistingListItems:!0,sort:a,tabId:c})),((l,u)=>u||l.fetchState!=="Completed"&&l.fetchState!=="In-Progress")(s.countsFetchState,t)&&o.push(gh()),j(h(o))}))),(n,i,r)=>n.pipe(S(bS.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=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/credits/counts`,e);return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?p(gJ(s.data)):p(ES(s.status)))),I((s=>p(ES(f("Unexpected Error","Fetch credit note counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(hJ.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/credits/${e}`;return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?[us([s.data],"merge"),SJ({id:s.data.id})]:p(IS(s.status)))),I((s=>p(IS(f("Unexpected Error","Fetch credit note detail REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(tc.match),Ee((t=>({action:t,tabId:qr(i.value.invoicingCreditNoteListViewState.activeTab,t.payload.tabId)}))),Me((({tabId:t})=>t)),y((t=>t.pipe(A((({action:e,tabId:a})=>{const{filters:s,cursor:o,keepExistingListItems:c,sort:d}=e.payload,l=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/credits`,((u,m,_,g)=>{const v=new URLSearchParams;return g!=null&&v.set("status",g),u.customerId!=null&&v.set("customer_id",u.customerId),u.search!=null&&u.search.length>0&&v.set("search",u.search),v.set("limit",String(ct)),m!=null&&v.set("cursor",m),dt(v,_),v})(s,o,d,jr(a)));return r.getJSON(l).pipe(A((u=>{if(T(u)){const m=u.data?.items??[];return[us(m,"merge"),fJ({ids:m.map((_=>_.id)),nextCursor:u.data?.next_cursor??null,keepExistingListItems:c,tabId:a})]}return p(TS({status:u.status,tabId:a}))})),I((u=>p(TS({status:f("Unexpected Error","Fetch credit note list REST API call errored out "+JSON.stringify(u)),tabId:a})))))})))))),(n,i)=>n.pipe(S(vJ.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingCreditNoteListViewState,o=[],c=Gr(s.activeTab),d=zr(Gt(s.byTab,c),t);return d.kind==="firstPage"?o.push(tc({filters:e,sort:a,tabId:c})):d.kind==="nextPage"&&o.push(tc({cursor:d.cursor,filters:e,keepExistingListItems:!0,sort:a,tabId:c})),((l,u)=>u||l.fetchState!=="Completed"&&l.fetchState!=="In-Progress")(s.countsFetchState,t)&&o.push(bS()),j(h(o))}))),(n,i,r)=>n.pipe(S(PS.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=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/customers/counts`,e);return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?p(IJ(s.data)):p(NS(s.status)))),I((s=>p(NS(f("Unexpected Error","Fetch customer counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(Qr.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/customers/${e}`;return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?[G(Hi([s.data])),Qi([s.data],"merge"),ms({id:s.data.id})]:p(Hh({id:e,status:s.status})))),I((s=>p(Hh({id:e,status:f("Unexpected Error","Fetch customer detail REST API call errored out "+JSON.stringify(s))})))))}))),(n,i)=>n.pipe(S(ys.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 su({fetchState:a?.fetchState??"Not-Started",error:a?.error},t)&&d.push(Qr({id:e})),s.filters.customerId===e&&!su({fetchState:o?.fetchState??"Not-Started",error:o?.error},t)||d.push(Wi({filters:{customerId:e}})),su({fetchState:c.fetchState,error:c.error},t)&&d.push(lt()),d.push(Qh({cacheOverride:t,customerId:e})),j(h(d))}))),(n,i,r)=>n.pipe(S(Hr.match),Ee((t=>({action:t,tabId:qr(i.value.invoicingCustomerListViewState.activeTab,t.payload.tabId,AS)}))),Me((({tabId:t})=>t)),y((t=>t.pipe(A((({action:e,tabId:a})=>{const{filters:s,cursor:o,keepExistingListItems:c,sort:d}=e.payload,l=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/customers`,((u,m,_,g)=>{const v=new URLSearchParams;return g!=null&&v.set("status",g),u.search!=null&&u.search.length>0&&v.set("search",u.search),v.set("limit",String(ct)),m!=null&&v.set("cursor",m),dt(v,_),v})(s,o,d,jr(a)));return r.getJSON(l).pipe(A((u=>{if(T(u)){const m=u.data?.items??[];return[Qi(m,"merge"),G(Hi(m)),bJ({ids:m.map((_=>_.id)),nextCursor:u.data?.next_cursor??null,keepExistingListItems:c,tabId:a})]}return p(OS({status:u.status,tabId:a}))})),I((u=>p(OS({status:f("Unexpected Error","Fetch customer list REST API call errored out "+JSON.stringify(u)),tabId:a})))))})))))),(n,i)=>n.pipe(S(EJ.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingCustomerListViewState,o=[],c=Gr(s.activeTab,AS),d=zr(Gt(s.byTab,c),t);return d.kind==="firstPage"?o.push(Hr({filters:e,sort:a,tabId:c})):d.kind==="nextPage"&&o.push(Hr({cursor:d.cursor,filters:e,keepExistingListItems:!0,sort:a,tabId:c})),((l,u)=>u||l.fetchState!=="Completed"&&l.fetchState!=="In-Progress")(s.countsFetchState,t)&&o.push(PS()),j(h(o))}))),(n,i,r)=>n.pipe(S(ZT.match),A((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/data-import/status`;return r.getJSON(t).pipe(A((e=>T(e)?p(LB(e.data??[])):p(xh(e.status)))),I((e=>p(xh(f("Unexpected Error","Fetch data import status REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(JS.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=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/dunning/counts`,e);return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?p(CJ(s.data)):p(wS(s.status)))),I((s=>p(wS(f("Unexpected Error","Fetch dunning case counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(CS.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/dunning/${e}`;return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?[ac([s.data],"merge"),TJ({id:s.data.id})]:p(xS(s.status)))),I((s=>p(xS(f("Unexpected Error","Fetch dunning case detail REST API call errored out "+JSON.stringify(s)))))))}))),(n,i)=>n.pipe(S(PJ.match),Ge(i),y((([r,t])=>{const{cacheOverride:e,id:a}=r.payload,s=t.invoicingDunningCaseDetailViewState,o=[];return s.id===a&&!iT({error:s.error,fetchState:s.fetchState},e)||o.push(CS({id:a})),o.push(US({id:a,cacheOverride:e})),iT(rc(t),!1)&&o.push(lt()),o.length>0?h(o):$}))),(n,i,r)=>n.pipe(S(nc.match),Ee((t=>({action:t,tabId:qr(i.value.invoicingDunningCaseListViewState.activeTab,t.payload.tabId)}))),Me((({tabId:t})=>t)),y((t=>t.pipe(A((({action:e,tabId:a})=>{const{filters:s,cursor:o,keepExistingListItems:c,sort:d}=e.payload,l=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/dunning`,((u,m,_,g)=>{const v=new URLSearchParams;return g!=null&&v.set("status",g),u.search!=null&&u.search.length>0&&v.set("search",u.search),v.set("limit",String(ct)),m!=null&&v.set("cursor",m),dt(v,_),v})(s,o,d,jr(a)));return r.getJSON(l).pipe(A((u=>{if(T(u)){const m=u.data?.items??[];return[ac(m,"merge"),xJ({ids:m.map((_=>_.id)),nextCursor:u.data?.next_cursor??null,keepExistingListItems:c,tabId:a})]}return p($S({status:u.status,tabId:a}))})),I((u=>p($S({status:f("Unexpected Error","Fetch dunning case list REST API call errored out "+JSON.stringify(u)),tabId:a})))))})))))),(n,i)=>n.pipe(S(UJ.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingDunningCaseListViewState,o=[],c=Gr(s.activeTab),d=zr(Gt(s.byTab,c),t);return d.kind==="firstPage"?o.push(nc({filters:e,sort:a,tabId:c})):d.kind==="nextPage"&&o.push(nc({cursor:d.cursor,filters:e,keepExistingListItems:!0,sort:a,tabId:c})),cT(s.countsFetchState,t)&&o.push(JS()),cT(rc(i.value),!1)&&o.push(lt()),j(h(o))}))),(n,i,r)=>n.pipe(S(kS.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/dunning/${encodeURIComponent(e)}/email-preview`;return r.postAndGetJSON(a,{}).pipe(Ee((s=>{return T(s)&&s.data!=null?NJ({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})}):BS({id:e,status:s.status});var o})),I((s=>p(BS({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(US.match),y((r=>{const{cacheOverride:t,id:e}=r.payload,a=i.value.invoicingDunningCaseDetailViewState;return a.id!==e?$:((s,o)=>o||s.fetchState!=="Completed"&&s.fetchState!=="In-Progress")(a.emailPreview,t)?p(kS({id:e})):$}))),(n,i,r)=>n.pipe(S(FB.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((_=>T(_)&&_.data!=null?p(qB({append:e!=null,page:_.data,sessionId:d})):p(Uh({error:_.status,sessionId:d})))),I((_=>p(Uh({error:f("Unexpected Error","Fetch migration diagnostics REST API call errored out "+JSON.stringify(_)),sessionId:d})))))}))),(n,i,r)=>n.pipe(S(jB.match),A((t=>{const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/data-import/${encodeURIComponent(t.payload)}`;return r.getJSON(e).pipe(A((a=>T(a)&&a.data!=null?p(XT(a.data)):p(kh(a.status)))),I((a=>p(kh(f("Unexpected Error","Fetch migration session REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(eP.match),A((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/data-import/sessions`;return r.getJSON(t).pipe(A((e=>T(e)?p(GB(e.data??[])):p(Bh(e.status)))),I((e=>p(Bh(f("Unexpected Error","Fetch migration sessions REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(RS.match),A((()=>{const{period:t}=i.value.invoicingOverviewState;if(t==null)return $;const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return r.getJSON(`${e}/analytics/churn?months=6&year=${t.year}&month=${t.month}`).pipe(A((a=>T(a)&&a.data!=null?p(kJ(a.data)):p(MS(a.status)))),I((a=>p(MS(f("Unexpected Error","Fetch overview churn REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(VS.match),A((()=>{const{period:t}=i.value.invoicingOverviewState;if(t==null)return $;const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return r.getJSON(`${e}/analytics/dashboard-summary?year=${t.year}&month=${t.month}`).pipe(A((a=>T(a)&&a.data!=null?p(BJ(a.data)):p(LS(a.status)))),I((a=>p(LS(f("Unexpected Error","Fetch overview dashboard summary REST API call errored out "+JSON.stringify(a)))))))}))),(n,i)=>n.pipe(S(DJ.match),y((r=>{const{cacheOverride:t}=r.payload,e=i.value,a=e.invoicingOverviewState,s=[];At(a.kpisFetchState,t)&&s.push(FS()),At(a.revenueFetchState,t)&&s.push(qS()),At(a.mrrFetchState,t)&&s.push(jS()),At(a.churnFetchState,t)&&s.push(RS()),At(a.planRevenueFetchState,t)&&s.push(GS()),At(a.summaryFetchState,t)&&s.push(VS()),At(rc(e),t)&&s.push(lt());const o=Gt(e.invoicingSubscriptionListViewState.byTab,Yr);return At(o,t)&&s.push(gs({tabId:Yr})),j(h(s))}))),(n,i,r)=>n.pipe(S(FS.match),A((()=>{const{period:t}=i.value.invoicingOverviewState;if(t==null)return $;const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return r.getJSON(`${e}/analytics/kpis?year=${t.year}&month=${t.month}`).pipe(A((a=>T(a)&&a.data!=null?p(JJ(a.data)):p(zS(a.status)))),I((a=>p(zS(f("Unexpected Error","Fetch overview KPIs REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(jS.match),A((()=>{const{period:t}=i.value.invoicingOverviewState;if(t==null)return $;const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return r.getJSON(`${e}/analytics/mrr?months=6&year=${t.year}&month=${t.month}`).pipe(A((a=>T(a)&&a.data!=null?p(wJ(a.data)):p(KS(a.status)))),I((a=>p(KS(f("Unexpected Error","Fetch overview MRR REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(GS.match),A((()=>{const{period:t}=i.value.invoicingOverviewState;if(t==null)return $;const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return r.getJSON(`${e}/analytics/plan-revenue?year=${t.year}&month=${t.month}`).pipe(A((a=>T(a)&&a.data!=null?p($J(a.data)):p(YS(a.status)))),I((a=>p(YS(f("Unexpected Error","Fetch overview plan revenue REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(qS.match),A((()=>{const{period:t}=i.value.invoicingOverviewState;if(t==null)return $;const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return r.getJSON(`${e}/analytics/revenue?months=12&year=${t.year}&month=${t.month}`).pipe(A((a=>T(a)&&a.data!=null?p(RJ(a.data)):p(HS(a.status)))),I((a=>p(HS(f("Unexpected Error","Fetch overview revenue REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(Wh.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(Ee((s=>{return T(s)&&s.data!=null?PD({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})}):Zh({customerId:e,status:s.status});var o})),I((s=>p(Zh({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(Qh.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(Wh({customerId:e})):$}))),(n,i,r)=>n.pipe(S(JB.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=>T(s)&&s.data!=null?p(wB(s.data.link_token)):p(Ah(s.status)))),I((s=>p(Ah(f("Unexpected Error","Plaid link token REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(Gi.match),A((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/qbo/connection`;return r.getJSON(t).pipe(Ee((e=>T(e)?MJ(dT(e.data??{connected:!1})):WS(e.status))),I((e=>p(WS(f("Unexpected Error","Fetch QBO connection REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(sc.match),A((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/qbo/sync-health`;return r.getJSON(t).pipe(Ee((e=>{return T(e)?VJ({connection:(a=e.data??{}).connection!=null?dT(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})))}):ZS(e.status);var a})),I((e=>p(ZS(f("Unexpected Error","Fetch QBO sync health REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(lt.match),A((()=>{const t=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/settings`;return r.getJSON(t).pipe(A((e=>{if(T(e)&&e.data!=null){const a=e.data.address,s=e.data.logo_file;return[...a!=null?[G([a])]:[],...s!=null?[Se({files:[s]})]:[],ug(e.data)]}return p(pg(e.status))})),I((e=>p(pg(f("Unexpected Error","Fetch settings REST API call errored out "+JSON.stringify(e)))))))}))),(n,i,r)=>n.pipe(S(tg.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=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/subscriptions/counts`,e);return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?p(GJ(s.data)):p(ag(s.status)))),I((s=>p(ag(f("Unexpected Error","Fetch subscription counts REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(_s.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/subscriptions/${e}`;return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?[G(Fa([s.data])),qa([s.data],"merge"),en({id:s.data.id})]:p(tS({error:s.status,id:e})))),I((s=>p(tS({error:f("Unexpected Error","Fetch subscription detail REST API call errored out "+JSON.stringify(s)),id:e})))))}))),(n,i)=>n.pipe(S(aS.match),Ge(i),y((([r,t])=>{const{cacheOverride:e=!1,id:a}=r.payload,s=[],o=a!=null?t.editInvoicingSubscriptionDetailViewState.recordStateById[a]:void 0;a!=null&&ou({error:o?.error,fetchState:o?.fetchState??"Not-Started"},e)&&s.push(_s({id:a}));const c=t.invoicingConfigViewState;ou({error:c.error,fetchState:c.fetchState},e)&&s.push(Zr());const d=t.invoicingCatalogListViewState;return qi({fetchState:d.fetchState,filters:d.planFilters,nextCursor:d.planNextCursor,sort:d.planSort},{type:"plan"},e)&&s.push(La({fetchAll:!0,filters:{type:"plan"},keepExistingListItems:!1})),ou(BD(t),e)&&s.push(Fr({filters:{},keepExistingListItems:!1,tabId:Yr})),s.length>0?h(s):$}))),(n,i,r)=>n.pipe(S(LD.match),A((t=>{const{id:e}=t.payload,{data:a,localData:s,previousCouponCode:o}=aT(i.value,e),c=s.couponId,d=FD(i.value.invoicingCouponState,c),l=e!=null&&tT(o,c)?{...a,coupons:c!==""?[{applied_count:0,apply_till:null,coupon_code:c,coupon_id:d?.id??c}]:[]}:a,u=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/subscriptions`,m=e!=null?`${u}/${encodeURIComponent(e)}/estimate`:`${u}/estimate`;return r.postAndGetJSON(m,l).pipe(Ee((_=>T(_)&&_.data!=null?qD({estimate:jH(_.data),id:e}):sS({id:e,status:_.status}))),I((_=>p(sS({id:e,status:f("Unexpected Error","Subscription estimate REST API call errored out "+JSON.stringify(_))})))))}))),n=>n.pipe(S(Xi.match),y((i=>{const{subscriptionId:r}=i.payload,t=[Hr({filters:{},keepExistingListItems:!1}),La({fetchAll:!0,filters:{type:"plan"},keepExistingListItems:!1}),Fr({filters:{},keepExistingListItems:!1})];return r!=null&&t.push(_s({id:r})),j(h(t))}))),(n,i,r)=>n.pipe(S(gs.match),Ee((t=>({action:t,tabId:qr(i.value.invoicingSubscriptionListViewState.activeTab,t.payload.tabId)}))),Me((({tabId:t})=>t)),y((t=>t.pipe(A((({action:e,tabId:a})=>{const{filters:s,cursor:o,keepExistingListItems:c,sort:d}=e.payload,l=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/subscriptions`,((u,m,_,g)=>{const v=new URLSearchParams;return g!=null&&v.set("status",g),u.customerId!=null&&v.set("customer_id",u.customerId),u.search!=null&&u.search.length>0&&v.set("search",u.search),u.startedFrom!=null&&v.set("started_from",u.startedFrom),u.startedTo!=null&&v.set("started_to",u.startedTo),v.set("limit",String(ct)),m!=null&&v.set("cursor",m),dt(v,_),v})(s,o,d,jr(a)));return r.getJSON(l).pipe(A((u=>{if(T(u)){const m=u.data?.items??[];return[qa(m,"merge"),G(Fa(m)),zJ({ids:m.map((_=>_.id)),nextCursor:u.data?.next_cursor??null,keepExistingListItems:c,tabId:a})]}return p(rg({status:u.status,tabId:a}))})),I((u=>p(rg({status:f("Unexpected Error","Fetch subscription list REST API call errored out "+JSON.stringify(u)),tabId:a})))))})))))),(n,i)=>n.pipe(S(KJ.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingSubscriptionListViewState,o=[],c=Gr(s.activeTab),d=zr(Gt(s.byTab,c),t);return d.kind==="firstPage"?o.push(gs({filters:e,sort:a,tabId:c})):d.kind==="nextPage"&&o.push(gs({cursor:d.cursor,filters:e,keepExistingListItems:!0,sort:a,tabId:c})),((l,u)=>u||l.fetchState!=="Completed"&&l.fetchState!=="In-Progress")(s.countsFetchState,t)&&o.push(tg()),j(h(o))}))),(n,i,r)=>n.pipe(S(YJ.match),A((t=>{const{id:e}=t.payload,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/payments/${e}`;return r.getJSON(a).pipe(A((s=>T(s)&&s.data!=null?[fs([s.data],"merge"),HJ({id:s.data.id})]:p(ng(s.status)))),I((s=>p(ng(f("Unexpected Error","Fetch payment detail REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(og.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=Ce(`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/payments`,((u,m,_,g)=>{const v=new URLSearchParams;return u.status!=null&&u.status.length>0&&v.set("status",u.status),m!=null&&m.length>0&&v.set("type",m),u.customerId!=null&&v.set("customer_id",u.customerId),u.search!=null&&u.search.length>0&&v.set("search",u.search),v.set("limit",String(ct)),_!=null&&v.set("cursor",_),dt(v,g),v})(e,d,a,o));return r.getJSON(l).pipe(A((u=>{if(T(u)){const m=u.data?.items??[];return[fs(m,"merge"),ZJ({ids:m.map((_=>_.id)),nextCursor:u.data?.next_cursor??null,keepExistingListItems:s})]}return p(ig(u.status))})),I((u=>p(ig(f("Unexpected Error","Fetch payment list REST API call errored out "+JSON.stringify(u)))))))}))),(n,i)=>n.pipe(S(XJ.match),y((r=>{const{cacheOverride:t,filters:e,sort:a}=r.payload,s=i.value.invoicingTransactionListViewState,o=s.byTab[s.activeTab]??ew(),c=[];return((d,l)=>l||d.fetchState!=="Completed"&&d.fetchState!=="In-Progress")({fetchState:o.fetchState,error:o.error},t)&&c.push(og({filters:e,sort:a})),j(h(c))}))),(n,i)=>n.pipe(S(jF.match),y((r=>{const{cacheOverride:t,isDebitCardFlagEnabled:e,isCreditCardFlagEnabled:a}=r.payload,s=[],o=i.value;if(t===!0)s.push(aa()),a&&s.push(ra()),s.push(Fe("cardHolderCandidate",!0)),s.push(se()),s.push(mn()),e&&s.push(qs());else{const c=o.chargeCardConfigState;c.fetchState!=="In-Progress"&&c.hasValidState()===!1&&s.push(aa());const d=o.chargeCardListState;d.creditAccount.fetchState!=="Completed"&&d.creditAccount.fetchState!=="In-Progress"&&a&&s.push(ra());const l=o.userListViewState.userListByType.cardHolderCandidate;l.fetchState!=="In-Progress"&&l.hasValidState()===!1&&s.push(Fe("cardHolderCandidate",!1)),o.classListState.hasValidState()===!1&&o.classListState.fetchState!=="In-Progress"&&s.push(se()),d.fetchState!=="Completed"&&d.fetchState!=="In-Progress"&&s.push(mn());const u=o.issueChargeCardState.depositAccountsFetchState;e&&u.fetchState!=="Completed"&&u.fetchState!=="In-Progress"&&s.push(qs())}return j(h(s))}))),(n,i,r)=>n.pipe(S(WV.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(ZV(e));{const c={routing_numbers:[e]},d=`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/institutions?query=${JSON.stringify(c)}`;return r.getJSON(d).pipe(y((l=>T(l)?p(XV({routingNumber:e,institutions:l.data?.institutions??[]})):p(BI({routingNumber:e,status:l.status})))),I((l=>p(BI({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(eL.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(tL(e));{const c={swift_code:e},d=`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/institutions?query=${JSON.stringify(c)}`;return r.getJSON(d).pipe(y((l=>T(l)?p(aL({swiftCode:t.payload.swiftCode,institutions:l.data?.institutions??[]})):p(DI({swiftCode:e,status:l.status})))),I((l=>p(DI({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(rL.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(T(s)){const o=s.data?.transaction?.attachments?.[0],c=o!=null?nL(o):void 0;return p(sL({currencySymbol:s.data?.transaction?.currency_symbol??"",amount:s.data?.transaction?.total_amount??0,billAttachment:c}))}return p(JI({status:s.status}))})),I((s=>p(JI({status:f("Unexpected Error","Fetch MagicLink Bill REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(oL.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=>T(c)?p(iL({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(wI({status:c.status})))),I((c=>p(wI({status:f("Unexpected Error","Fetch MagicLink Tenant REST API call errored out"+JSON.stringify(c))})))))}))),(n,i)=>n.pipe(S($C.match),A((r=>{const{cacheOverride:t,fetchFullResponse:e,companyId:a}=r.payload;if(t===!0)return h([Ba(e,a),He()]);const s=i.value,o=[];return s.companyViewState.zeniUsers.fetchState==="In-Progress"||s.companyViewState.zeniUsers.hasValidState()||o.push(He()),s.companyViewState.managementView.fetchState==="In-Progress"||s.companyViewState.managementView.hasValidState()||o.push(Ba(e,a)),h(o)}))),(n,i,r)=>n.pipe(S($d.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=>T(t)?p(Rd(t.data?.merchants??[]),pq(t),We("class_list",t.data?.accounting_classes??[]),X(t.data?.accounts??[],"account_list")):p(hb(t.status)))),I((t=>p(hb(f("Unexpected Error","Fetch Merchants REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(_w.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=[hw({performanceTrend:s.data.performance_trend,period:e})];return h(o)}{const o=[_g({period:e,fetchState:"Error",error:s.status})];return h(o)}})),I((s=>{const o=[_g({period:e,fetchState:"Error",error:f("Unexpected error",`Fetch Month close performance trend REST API call errored out: ${JSON.stringify(s)}`)})];return h(o)})))}))),(n,i,r)=>n.pipe(S(it.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=[Sw({monthEndCloseChecksPayload:c.data,tenantId:a,period:e}),oc({tenantId:a,period:e,fetchState:"Completed",refreshViewInBackground:s})];return h(d)}{const d=[oc({tenantId:a,period:e,fetchState:"Error",error:c.status,refreshViewInBackground:s})];return h(d)}})),I((c=>{const d=[oc({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 h(d)})))}))),(n,i,r)=>n.pipe(S(Tk.match),je((()=>{const t=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:e},expenseAutomationMissingReceiptsViewState:{bulkUpload:a}}=t,s=e[Q(t).tenantId];if(s==null)return p(Vr());const o=be(s),c=a.batchListByPeriod[o]??[],d=new Set(a.failedBatchDetailIds),l=j_(c).filter((m=>a.batchDetailsById[m.batchId]==null&&!d.has(m.batchId))).map((m=>m.batchId));if(l.length===0)return p(Vr());const u=l.slice(0,5);return j(QE(u,r),p(Vr())).pipe(I((m=>p(Pk({error:f("Unexpected Error","Fetch more batch details errored out: "+JSON.stringify(m))})))))}))),(n,i,r)=>n.pipe(S(ts.match),y((t=>{const e=t.payload.batchList,a=i.value.expenseAutomationMissingReceiptsViewState.bulkUpload,{batchDetailsById:s,batchDetailsRevalidating:o}=a,c=j_(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&&$_(a.batchStatusById,a.batchListByPeriod,l)?p(Di()):p(Vr())}return j(p(Ek()),QE(d,r),p(Vr()))}))),oY,iY,(n,i)=>n.pipe(S(gg.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([zt("month"),zt("quarter"),zt("year")]);{const e=[],a=i.value.netBurnOrIncomeClassesViewState.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")),h(e)}}))),(n,i)=>n.pipe(S(jn.match),y((r=>{const{cacheOverride:t,endDate:e,forecastId:a,startDate:s}=r.payload;if(t===!0)return h([Ga("month",a,!0,!1,s,e),Ga("quarter",a,!0,!1,s,e),Ga("year",a,!0,!1,s,e)]);{const o=[],c=fw(i.value.netBurnOrIncomeState,i.value.netBurnOrIncomeState.uiState.isForecastModeOn,a).fetchState;return c.month.fetchState!=="In-Progress"&&c.month.fetchState!=="Completed"&&o.push(Ga("month",a,!0,!1,s,e)),c.quarter.fetchState!=="In-Progress"&&c.quarter.fetchState!=="Completed"&&o.push(Ga("quarter",a,!0,!1,s,e)),c.year.fetchState!=="In-Progress"&&c.year.fetchState!=="Completed"&&o.push(Ga("year",a,!0,!1,s,e)),h(o)}}))),(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_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&&T(a)){const s=[];return s.push(ie(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(ie(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(ie(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(vw({timeframe:t.payload.timeframe,report:a.data})),h(s)}return p(fg(a.status,t.payload.timeframe))})),I((a=>p(fg(f("Unexpected Error","P&L REST API call errored out"+JSON.stringify(a)),t.payload.timeframe)))))}))),cY,(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_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&&T(a)){const s=[],o=a.data.report,c=o.currency;return s.push(Bt(o.projects)),s.push(ce(t.payload.timeframe,"cogs","net_burn_or_income_by_projects",o.cogs,o.accounts,c)),s.push(ce(t.payload.timeframe,"expenses","net_burn_or_income_by_projects",o.expenses,o.accounts,c)),s.push(ce(t.payload.timeframe,"income","net_burn_or_income_by_projects",o.income,o.accounts,c)),s.push(Iw({timeframe:t.payload.timeframe,report:a.data})),h(s)}return p(vg(a.status,t.payload.timeframe))})),I((a=>p(vg(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(Ig.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([Kt("month"),Kt("quarter"),Kt("year")]);{const e=[],a=i.value.netBurnOrIncomeProjectViewState.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")),h(e)}}))),(n,i,r)=>n.pipe(S(_i.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(T(s)&&s.data!=null){const o=[bw(s.data)];return h(o)}return p(bg(s.status))})),I((s=>p(bg(f("Unexpected Error","NetBurnOrIncome Story Card REST API call errored out"+JSON.stringify(s)))))))}))),(n,i)=>n.pipe(S(hg.match),y((r=>{const{cacheOverride:t,forecastId:e}=r.payload,a=gw(i.value),s=ic(i.value.forecastState,i.value.forecastListState,a.dataAvailable),o=cc(i.value.forecastState,i.value.forecastListState),c=((d,l)=>d!=null&&((u,m)=>{let _=!1;for(let g=0;g<m.length;++g)if(m[g].id===u){_=!0;break}return _})(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(an(a.firstMonthOfFY,!0,void 0,{id:c,index:l.indexOf(c)})),t===!0||((u,m)=>{const _=ky(u,m);return _.fetchState!=="Completed"&&_.fetchState!=="In-Progress"})(c,i.value.netBurnOrIncomeState)?d.push(jn(!1,c)):console.log("Required data is already there!! No need to fire any fetch!"),h(d)}if(c==null&&o.fetchState==="Completed"&&o.forecasts.length===0)return h([]);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=[ja(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"month"),ja(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"year"),ja(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"quarter")];return h([d])}if(c==null&&o.forecasts.length===0)return h([cs(),Sg(t,e)]);{console.warn("Invlid state!!");const d=[ja(f("Unexpected error","Unexpected error"),r.payload.forecastId,"month"),ja(f("Unexpected error","Unexpected error"),r.payload.forecastId,"year"),ja(f("Unexpected error","Unexpected error"),r.payload.forecastId,"quarter")];return h([d])}}))),(n,i,r)=>n.pipe(S(cM.match),A((()=>{const t=i.value,e=t.tenantState.loggedInUser?.userEmail;if(e==null)return h([]);const a=t.notificationPreferencesViewState.saveEpoch,s=t.notificationRegistryState.registryEpoch;return r.getJSON(Ov(r)).pipe(y((o=>{if(T(o)&&o.data!=null){const c=[dM(o.data,e)];return c.push(lM({registry:o.data.task_checklist_registry??void 0,registryEpochAtDispatch:s})),o.data.task_checklist_preferences!=null&&c.push(uM({preferences:o.data.task_checklist_preferences,saveEpochAtDispatch:a})),p(...c)}return p(Cv(o.status))})),I((o=>p(Cv(f("Unexpected error","Fetch Notification Settings REST API call errored out"+JSON.stringify(o)))))))}))),n=>n.pipe(S(pM.match),A((i=>{const{hasMonthEndAccess:r,companyId:t}=i.payload;return h(r?[Fe("manager",!0),se()]:[vr(t)])}))),dY,(n,i,r)=>n.pipe(S(Ew.match),Ma((t=>{const{notificationGroup:e,mode:a,status:s,isNewNotificationFetch:o}=t.payload,{stateByTab:c}=i.value.notificationViewState,d=c[Tg(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(T(u)&&u.data!=null){const{notifications:m,total_count:_,next_page_token:g}=u.data,v=[];m.forEach((E=>{v.push(...E.data.authors)}));const b=[...new Map(v.map((E=>[E.user_id,E]))).values()];return[F({users:b,updateType:"merge"}),Tw(m,"replace"),Pw(m,_,e,o?null:g)]}return p(Eg({status:u.status,notificationGroup:e}))})),I((u=>p(Eg({status:f("Unexpected Error","Fetch Notification View API call errored out"+JSON.stringify(u)),notificationGroup:e})))))}))),(n,i,r)=>n.pipe(S(Ar.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/whitelist-companies?query=${encodeURIComponent(JSON.stringify({is_onboarding_completed:!0}))}`).pipe(y((t=>{if(T(t)&&t.data!=null){const e=t.data.companies.map((s=>s.company_id)),a=[Og({payload:t.data.companies,schema:{}}),Uw(e)];return h(a)}return p(xg(t.status))})),I((t=>p(xg(f("Unexpected error","Onboarding Company view errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(hc.match),A((t=>{const{companyId:e,cacheOverride:a,reCalculateCurrentStep:s}=t.payload,{onboardingCustomerViewState:o,companyState:c}=i.value,d=Ue(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(T(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)),_=[F({users:l.data.users}),K(l.data.user_roles),H({payload:l.data.companies,schema:{}}),G(l.data.addresses),Se({files:l.data.files}),X(l.data.accounts,"onboarding"),ve(l.data.payment_accounts),cm(l.data.subscription_payment_accounts),Kg(u,m),Ps({companyId:l.data.companies[0].company_id,reCalculateCurrentStep:s}),zg()];return h(_)}return p(N({messageSection:"onboarding_customer_view",messageText:"failed",type:"error"}),Yg(l.status))})),I((l=>p(Yg(f("Unexpected Error","Fetch Customer Onboarding view errored out"+JSON.stringify(l)))))));{const{subscriptionPaymentAccountIds:l,paymentAccountDetails:u}=o;return p(Kg(u.paymentAccountIds,l),Ps({companyId:e,reCalculateCurrentStep:s}),zg())}}))),(n,i)=>n.pipe(S(p$.match),A((r=>{const{companyId:t,cacheOverride:e,reCalculateCurrentStep:a}=r.payload;if(e===!0)return p(hc(t,e,a),Hg());{const s=i.value,o=[];return s.onboardingCustomerViewState.fetchState==="In-Progress"||s.onboardingCustomerViewState.hasValidState()||o.push(hc(t,e,a)),s.companyConfigState.fetchState==="In-Progress"||s.companyConfigState.hasValidState()||o.push(Hg()),h(o)}}))),(n,i)=>n.pipe(S(RC.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([He(),Pr(!0),Nr(),Ar()]);{const e=i.value,a=[];return e.companyViewState.zeniUsers.fetchState==="In-Progress"||e.companyViewState.zeniUsers.hasValidState()||a.push(He()),e.onboardingCockpitViewState.fetchState==="In-Progress"||e.onboardingCockpitViewState.hasValidState()||a.push(Pr(!0)),e.onboardingCockpitViewState.qboConnectionPool.fetchState==="In-Progress"||e.onboardingCockpitViewState.qboConnectionPool.hasValidState()||a.push(Nr()),e.onboardingCockpitViewState.onboardingCompletedCompanies.fetchState==="In-Progress"||e.onboardingCockpitViewState.onboardingCompletedCompanies.hasValidState()||a.push(Ar()),h(a)}}))),(n,i,r)=>n.pipe(S(RU.match),y((t=>{const{accrualId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/${e}`).pipe(y((a=>T(a)&&a.data!=null?h([Ft([a.data.accrual]),MU({accrualId:e})]):h([N_({accrualId:e,status:a.status})]))),I((a=>h([N_({accrualId:e,status:f("Unexpected Error",`Fetch one-time accrual REST API call errored out ${JSON.stringify(a)}`)})]))),_e(n.pipe(S(ke.match))))}))),(n,i)=>n.pipe(S(lf.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([rn("month","",null),rn("quarter","",null),fc(!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(rn("month","",null)),a.quarter.fetchState!=="In-Progress"&&a.quarter.fetchState!=="Completed"&&e.push(rn("quarter","",null)),s.fetchState!=="In-Progress"&&s.fetchState!=="Completed"&&e.push(fc()),h(e)}}))),(n,i,r)=>n.pipe(S(rn.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&&T(l)){const u=[],m=l.data.report;if(m.status.is_report_generated==null||m.status.is_report_generated===!0){const _=l.data.report.vendors;_!=null&&u.push(ue(_,"merge"));const g=m.accounts;g!=null&&u.push(X(g,"operating_expenses_by_vendor",void 0,"merge"));const v=m.accounting_class;v!=null&&u.push(We("operating_expenses_by_vendor",v,void 0,"merge"))}return u.push(F$(t.payload.timeframe,m,c)),h(u)}return p(uf(l.status,t.payload.timeframe))})),I((l=>p(uf(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(fc.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(T(t)){const e=[],a=t.data?.report;return a!=null&&(a?.status.is_report_generated!=null&&a?.status.is_report_generated===!1?pf(!1):(e.push(pf(!0)),a?.vendors!=null&&e.push(ue(a.vendors,"merge"))),e.push(q$(a))),h(e)}return p(mf(t.status))})),I((t=>p(mf(f("Unexpected error","Fetch OpEx by Vendor Summary REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(_f.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([Yt("month"),Yt("quarter"),Yt("year")]);{const e=[],a=i.value.opExClassesViewState.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")),h(e)}}))),(n,i)=>n.pipe(S(Fn.match),A((r=>{const{cacheOverride:t,endDate:e,forecastId:a,startDate:s}=r.payload;if(t===!0)return h([Ya("month",a,!0,!1,s,e),Ya("quarter",a,!0,!1,s,e),Ya("year",a,!0,!1,s,e)]);{const o=[],c=L$(i.value.opExState,i.value.opExState.uiState.isForecastModeOn,a).fetchState;return c.month.fetchState!=="In-Progress"&&c.month.fetchState!=="Completed"&&o.push(Ya("month",a,!0,!1,s,e)),c.quarter.fetchState!=="In-Progress"&&c.quarter.fetchState!=="Completed"&&o.push(Ya("quarter",a,!0,!1,s,e)),c.year.fetchState!=="In-Progress"&&c.year.fetchState!=="Completed"&&o.push(Ya("year",a,!0,!1,s,e)),h(o)}}))),(n,i,r)=>n.pipe(S(Yt.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&&T(a)){const s=[];return s.push(ie(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(z$({timeframe:t.payload.timeframe,report:a.data})),h(s)}return p(hf(a.status,t.payload.timeframe))})),I((a=>p(hf(f("Unexpected Error","OpEx REST API call errored out"+JSON.stringify(a)),t.payload.timeframe)))))}))),(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/operating_expenses?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&T(a)){const s=[],o=a.data.report,c=o.currency;return s.push(Bt(o.projects)),s.push(ce(t.payload.timeframe,"expenses","operating_expenses_by_projects",o.expenses,o.accounts,c)),s.push(K$({timeframe:t.payload.timeframe,report:a.data})),h(s)}return p(Sf(a.status,t.payload.timeframe))})),I((a=>p(Sf(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(gf.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([Ht("month"),Ht("quarter"),Ht("year")]);{const e=[],a=i.value.opExProjectViewState.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")),h(e)}}))),lY,(n,i)=>n.pipe(S(cf.match),y((r=>{const{cacheOverride:t,forecastId:e}=r.payload,a=V$(i.value),s=ic(i.value.forecastState,i.value.forecastListState,a.dataAvailable),o=cc(i.value.forecastState,i.value.forecastListState),c=((d,l)=>d!=null&&((u,m)=>{let _=!1;for(let g=0;g<m.length;++g)if(m[g].id===u){_=!0;break}return _})(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(an(a.firstMonthOfFY,!0,void 0,{id:c,index:l.indexOf(c)})),t===!0||((u,m)=>{const _=Uy(u,m);return _.fetchState!=="Completed"&&_.fetchState!=="In-Progress"})(c,i.value.opExState)?d.push(Fn(!1,c)):console.log("Required data is already there!! No need to fire any fetch!"),h(d)}if(c==null&&o.fetchState==="Completed"&&o.forecasts.length===0)return h([]);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=[Ka(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"month"),Ka(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"year"),Ka(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"quarter")];return h([d])}if(c==null&&o.forecasts.length===0)return h([cs(),df(t,e)]);{console.warn("Invlid state!!");const d=[Ka(f("Unexpected error","Unexpected error"),r.payload.forecastId,"month"),Ka(f("Unexpected error","Unexpected error"),r.payload.forecastId,"year"),Ka(f("Unexpected error","Unexpected error"),r.payload.forecastId,"quarter")];return h([d])}}))),(n,i,r)=>n.pipe(S(_t.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/vendor-owners`).pipe(y((t=>{if(T(t)){const e=t.data?.users??[],a=[];return a.push(Y$({users:e})),a.push(F({users:e})),h(a)}return p(ff({fetchState:"Error",error:t.status}))})),I((t=>p(ff({fetchState:"Error",error:f("Unexpected Error","Fetch owner REST API call errored out"+JSON.stringify(t))})))))))),(n,i)=>n.pipe(S(zC.match),A((r=>{const t=i.value,e=[];return t.companyViewState.parentSubsidiaryView.subsidiaryByParentCompanyId[r.payload.companyParentId]==null&&e.push(Ba(r.payload.fetchFullResponse,r.payload.companyParentId)),t.companyViewState.zeniUsers.fetchState==="In-Progress"||t.companyViewState.zeniUsers.hasValidState()||e.push(He()),h(e)}))),(n,i,r)=>n.pipe(S(d0.match),y((t=>{const{paymentAccountId:e}=t.payload,a=i.value.paymentAccountState,s=gc(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=>T(o)?p(X(o.data?.accounts??[],"zeni_accounts"),ve(o.data?.payment_accounts??[]),Zs({paymentAccountId:e,fetchState:"Completed",error:void 0})):p(Zs({paymentAccountId:e,fetchState:"Error",error:o.status})))),I((o=>p(Zs({paymentAccountId:e,fetchState:"Error",error:f("Unexpected Error","Fetch payment Accounts Balance REST API call errored out"+JSON.stringify(o))}))))):p(Zs({paymentAccountId:e,fetchState:"Completed",error:void 0}))}))),(n,i,r)=>n.pipe(S(Qe.match),A((()=>r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-accounts`).pipe(y((t=>{if(T(t)&&t.data!=null){const{payment_accounts:e,accounts:a}=t.data;let s=[X(a,"zeni_accounts"),ve(e),ea({data:e,updateType:"replace"})];return s=s.concat(e.map((o=>d0(o.payment_account_id)))),j(h(s))}return p(l0({fetchState:"Error",error:t.status}))})),I((t=>p(l0({fetchState:"Error",error:f("Unexpected Error","Fetch payment Accounts REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(jo.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(T(t)&&t.data){const e=[];return e.push(lO(t.data.payment_sources.cards),cm(t.data.payment_sources.bank_accounts),zo({fetchState:"Completed",response:t.data})),h(e)}return h([zo({fetchState:"Error",error:t.status}),N({messageSection:"fetch_payment_sources",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:t.status.message}]})])})),I((t=>p(zo({fetchState:"Error",error:f("Unexpected Error","Fetch Payment Sources API call errored out "+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(vc.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=>T(a)?p(K(a.data?.user_roles??[]),F({users:a.data?.users??[]}),aR(a.data)):p(bf(a.status)))),I((a=>p(bf(f("Unexpected error","User Roles REST API call errored out"+JSON.stringify(a)))))))}))),(n,i)=>n.pipe(S(cR.match),A((r=>{const{userId:t,cacheOverride:e}=r.payload;if(e===!0)return h([Da(t),vc()]);{const a=i.value,s=[];return a.tenantState.fetchState==="In-Progress"||a.tenantState.hasValidState()||s.push(Da(t)),a.peopleState.fetchState=="In-Progress"||a.peopleState.hasValidState()||s.push(vc()),h(s)}}))),(n,i,r)=>n.pipe(S(ol.match),A((()=>r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account`).pipe(y((t=>T(t)&&t.data!=null?p(Oj(t.data)):p(Xb(t.status)))),I((t=>p(Xb(f("Unexpected Error","Fetch portfolio allocation REST API call errored out: "+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(MC.match),A((r=>{const{cacheOverride:t,fetchFullResponse:e}=r.payload;if(t===!0)return h([Tr(e),He()]);const a=i.value,s=[];return a.companyViewState.zeniUsers.fetchState==="In-Progress"||a.companyViewState.zeniUsers.hasValidState()||s.push(He()),a.companyViewState.portfolioView.fetchState==="In-Progress"||a.companyViewState.portfolioView.hasValidState()||s.push(Tr(e)),h(s)}))),(n,i,r)=>n.pipe(S(ia.match),y((t=>{const e=i.value,{entityId:a}=t.payload,s=dL(t.payload.entityId),o=Y(e.previousBillsState.byEntityKey,s,void 0);if(t.payload.cacheOverride===!0||o==null||o.hasValidState()===!1){const c=xe(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(T(l)&&l.data!=null){const u=[];return u.push(Gc(l.data.transactions)),u.push(lL({entityId:a,billTransactions:l.data.transactions})),h(u)}return p($I({entityId:a,fetchState:"Error",error:l.status}))})),I((l=>p($I({entityId:a,fetchState:"Error",error:f("Unexpected Error","fetch previous bills REST API call errored out"+JSON.stringify(l))})))))}return h([])}))),(n,i)=>n.pipe(S(Nf.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([Qt("month"),Qt("quarter"),Qt("year")]);{const e=[],a=i.value.profitAndLossClassesViewState.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")),h(e)}}))),(n,i)=>n.pipe(S(Fi.match),A((r=>{const{cacheOverride:t,forecastId:e}=r.payload;if(t===!0)return h([jt("month",e),jt("quarter",e),jt("year",e)]);{const a=[],s=yR(i.value.profitAndLossState,e).fetchState;return s.month.fetchState!=="In-Progress"&&s.month.fetchState!=="Completed"&&a.push(jt("month",e)),s.quarter.fetchState!=="In-Progress"&&s.quarter.fetchState!=="Completed"&&a.push(jt("quarter",e)),s.year.fetchState!=="In-Progress"&&s.year.fetchState!=="Completed"&&a.push(jt("year",e)),h(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/profit_and_loss?query=${encodeURIComponent(JSON.stringify(e))}`).pipe(y((a=>{if(a.data!=null&&T(a)){const s=[],o=a.data.report,c=o.currency;return s.push(ie(t.payload.timeframe,"cogs","profit_and_loss_by_classes",o.cogs,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,"expenses","profit_and_loss_by_classes",o.expenses,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,"income","profit_and_loss_by_classes",o.income,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,"otherExpenses","profit_and_loss_by_classes",o.other_expenses,o.classes,o.accounts,c)),s.push(ie(t.payload.timeframe,"otherIncome","profit_and_loss_by_classes",o.other_income,o.classes,o.accounts,c)),s.push(_R({timeframe:t.payload.timeframe,report:a.data})),h(s)}return p(Af(a.status,t.payload.timeframe))})),I((a=>p(Af(f("Unexpected Error","P&L REST API call errored out"+JSON.stringify(a)),t.payload.timeframe)))))}))),uY,(n,i,r)=>n.pipe(S(Wt.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&&T(a)){const s=[],o=a.data.report,c=o.currency;return s.push(Bt(o.projects)),s.push(ce(t.payload.timeframe,"cogs","profit_and_loss_by_projects",o.cogs,o.accounts,c)),s.push(ce(t.payload.timeframe,"expenses","profit_and_loss_by_projects",o.expenses,o.accounts,c)),s.push(ce(t.payload.timeframe,"income","profit_and_loss_by_projects",o.income,o.accounts,c)),s.push(ce(t.payload.timeframe,"otherExpenses","profit_and_loss_by_projects",o.other_expenses,o.accounts,c)),s.push(ce(t.payload.timeframe,"otherIncome","profit_and_loss_by_projects",o.other_income,o.accounts,c)),s.push(hR({timeframe:t.payload.timeframe,report:a.data})),h(s)}return p(Of(a.status,t.payload.timeframe))})),I((a=>p(Of(f("Unexpected Error","P&L by Projects REST API call errored out"+JSON.stringify(a)),t.payload.timeframe)))))}))),(n,i)=>n.pipe(S(Cf.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([Wt("month"),Wt("quarter"),Wt("year")]);{const e=[],a=i.value.profitAndLossProjectViewState.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")),h(e)}}))),(n,i,r)=>n.pipe(S(Vi.match),Ge(i),A((([t,e])=>{if(!ss(e))return p(xf({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=>T(o)?p(Bt(o.data?.projects??[]),xf(o)):p(Uf(o.status)))),I((o=>p(Uf(f("Unexpected Error","Fetch Projects REST API call errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(Nr.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/connections-pool`).pipe(y((t=>{if(T(t)&&t.data!=null){const e=t.data;return p(kw(e))}return p(Ug(t.status))})),I((t=>p(Ug(f("Unexpected error","QBO Connection Pool errored Out: "+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(As.match),y((t=>{const{entityId:e,entityType:a}=t.payload;return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/${ST(a)}/${e}/recommendations`).pipe(y((s=>{if(T(s)&&s.data!=null){const o=[],c=gn(s.data.recommendations);return o.push(nn({entityId:e,entityType:a,recommendations:c}),hr(e,a)),h(o)}return p(Ha({entityId:e,entityType:a,status:s.status}))})),I((s=>p(Ha({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(Ta.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(T(s)&&s.data!=null){const o=[],c=gn(s.data.recommendations);return o.push(nn({entityId:e,entityType:a,recommendations:c}),hr(e,a)),h(o)}return p(Ha({entityId:e,entityType:a,status:s.status}))})),I((s=>p(Ha({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(s_.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/account-recommendations`).pipe(y((t=>{if(T(t)&&t.data!=null){const e=[];return e.push(mU(t.data)),h(e)}return p(o_({status:t.status}))})),I((t=>p(o_({status:f("Unexpected Error","Fetch account recommendations REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(Hu.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/account-recommendations`).pipe(y((t=>{if(T(t)&&t.data!=null){const e=[];return e.push(sN(t.data)),h(e)}return p(Qu({status:t.status}))})),I((t=>p(Qu({status:f("Unexpected Error","Fetch account recommendations REST API call errored out"+JSON.stringify(t))})))))))),(n,i)=>n.pipe(S(qd.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(As(s,"merchant")):o&&l.push(Ta(o,"merchant")),l.push(zs(e,a,s,o));else if(s||o){const{fetchState:u,recommendations:m=[]}=Pa(c,s||o,"merchant");u==="In-Progress"?l.push(zs(e,a,s,o)):u!="Completed"?(l.push(jd({reimbursementId:a,lineId:e,recommendations:m,reimbursementStageCode:d?.reimbursementInfo.stage.code,shouldAutofill:!0})),s?l.push(As(s,"merchant")):o&&l.push(Ta(o,"merchant")),l.push(zs(e,a,s,o))):l.push(jd({reimbursementId:a,lineId:e,recommendations:m,reimbursementStageCode:d?.reimbursementInfo.stage.code,shouldAutofill:!0}))}return h(l)}))),(n,i,r)=>n.pipe(S(C1.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 h(c);const l=da(d,e);if(l==null)return h(c);const u=l.scheduledJournalEntry[a],{jeDebit:m}=l,{account:_,accountingClass:g}=m,{amount:v,runningBalance:b,expectedPostDate:E}=u,P=ye().endOf("month").format(re),{vendor:O}=l,x=O.id,U=xe(o,x),k={start_date:E.format(re),end_date:P,amount:v?.amount??0,accrued_balance:b?.amount??0,vendor_id:U?.id??"",account_name:_?.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=>T(C)&&C.data!=null?(c.push(De(C.data.transactions,(B=>B.transaction_id)),yv(C.data.transactions,(B=>B.transaction_id)),Pc({fetchState:"Completed",error:void 0})),h(c)):h([yv([],(B=>B.transaction_id)),Pc({fetchState:"Error",error:C.status})]))),I((C=>h([Pc({fetchState:"Error",error:f("Unexpected Error",`Fetch Bill Expense Recommendation REST API call errored out ${JSON.stringify(C)}`)})]))))}))),(n,i,r)=>n.pipe(S(NR.match),A((t=>{const{reconciliationId:e,cacheOverride:a}=t.payload,s=AR(i.value.reconciliationReportState,e);return a===!0||s==null?r.getJSON(`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/2.0/reconciliation/${e}/report`).pipe(y((o=>T(o)===!0&&o.data!=null?p(OR(o.data),Vf(e)):p(Lf({reconciliationId:e,status:o.status})))),I((o=>p(Lf({reconciliationId:e,status:f("Unexpected Error","Fetch Reconciliation Report REST API call errored out"+JSON.stringify(o))}))))):p(Vf(e))}))),(n,i,r)=>n.pipe(S(CR.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(T(s)&&s.data!=null){const o=[xR(s.data)];return h(o)}return p(Ff(s.status))})),I((s=>p(Ff(f("Unexpected Error","Fetch referrals REST API call errored out"+JSON.stringify(s))))))):[]}))),(n,i,r)=>n.pipe(S(zk.match),A((t=>r.getJSON(`${r.apiEndPoints.notificationMicroServiceBaseUrl}/1.0/feature-interests?feature=${encodeURIComponent(t.payload.feature)}`).pipe(y((e=>{if(T(e)&&e.data!=null){const s=e.data.feature_interests.map(Kk);return h([Yk(s)])}const a=e.status??f("Failed to fetch registered interests. Please try again.");return h([sh(a)])})),I((e=>{const a=e instanceof Error?e.message:"Unexpected error fetching registered interests.";return h([sh(f(a))])})))))),(n,i,r)=>n.pipe(S(fi.match),y((()=>{const t=ba({startDate:Z(rm,"YYYY-MM-DD"),endDate:Z(am,"YYYY-MM-DD")}),e={start_date:te(t.start),end_date:te(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=>T(a)&&a.data!=null?p(MR({transactionTotals:a.data.transaction_totals,transactionCount:a.data.transaction_count})):p(Gf(a.status)))),I((a=>p(Gf(f("Unexpected Error","fetch Reimbursement Dashboard Card REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(rr.match),y((()=>r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/config`).pipe(y((t=>{if(T(t)&&t.data!=null){const e=[];return e.push(qq(t.data)),e.push(jq(t.data.currency_country_map)),h(e)}return p(Cb(t.status))})),I((t=>p(Cb(f("Unexpected Error","fetch reimbursement config REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(Fd.match),y((r=>{const{reimbursementId:t,cacheOverride:e,isShowDeletedReimbursementEnabled:a}=r.payload,s=i.value,o=[];if(e)o.push(Gd(t,!0,a)),o.push(zd(t));else{const c=Y(s.remiDetailViewState.remiDetailById,t,void 0);c!=null&&c.fetchState==="In-Progress"?o.push(zd(t)):c==null||c?.fetchState!="In-Progress"&&c?.fetchState!="Completed"?(o.push(Gd(t,!1,a)),o.push(zd(t))):o.push(Pb(t))}return h(o)}))),(n,i)=>n.pipe(S(sj.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(el(t,e,a,s)),l.push(se())):(o.hasValidState()===!1&&d.fetchStatus.fetchState!=="In-Progress"&&l.push(el(!0,e,a,s)),c.hasValidState()===!1&&c.fetchState!=="In-Progress"&&l.push(se())),j(h(l))}))),(n,i,r)=>n.pipe(S(el.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(T(l)&&l.data!=null){const u=l.data.users.map((_=>_.user_id)),m=[F({users:l.data.users})];return a===!0&&m.push(K(l.data.user_roles)),m.push(Jb(u,l.data.attributes,l.data.attribute_sub_type_to_user_id_mapping)),h(m)}return p(wb(l.status))})),I((l=>p(wb(f("Unexpected Error","Fetch Approvers List errored out"+JSON.stringify(l)))))));{const{approverListState:l}=c,{approverIds:u,attributes:m}=l;return p(Jb(u,m))}}))),(n,i,r)=>n.pipe(S(Gd.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=Y(d.remiDetailById,e,void 0);o.push(...(function(_,g){const v=[];return v.push(Zq(_)),g!=null&&v.push(Wd(_)),v})(e,m))}const u=Y(d.remiDetailById,e,void 0);if(a==1||u==null||u.fetchState!=="In-Progress"){o.push(Ys(e,"In-Progress")),o.push(Js(e,"reimbursement",a)),l.fetchState!=="In-Progress"&&l.fetchState!=="Completed"&&o.push(rr());const m={transaction_type:"reimbursement",reimbursement_provider:"zeni",is_include_approval_info:!0,is_include_deleted:s},_=r.getJSON(`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/reimbursements/transactions/${e}?query=${encodeURIComponent(JSON.stringify(m))}`).pipe(y((g=>{if(T(g)&&g.data?.transaction?.transaction_id!=null){const v=g.data.transaction.transaction_id,b=g.data.reimbursee_bank_account,E=[Hd(g.data.transaction),F({users:g.data.users??[]}),at(g.data.approval_rules),Nt(g.data.entity_approvals),Qq({reimbursementId:e,remiDetail:g.data}),Rd(g.data.merchants),Ab(g.data.merchants),Ve(b!=null?[b]:[]),Ys(v,"Completed")];return g.data.merchants.forEach((P=>{const O=gn(P.recommendations??[]);O!=null&&P.merchant_id&&E.push(nn({entityId:P.merchant_id,entityType:"merchant",recommendations:O}))})),E.push(Wq()),g.data.transaction?.lines!=null&&g.data.transaction.lines.length>0&&E.push(Yd(g.data.transaction.created_by_user_id,!1,g.data.transaction.transaction_id)),h(E)}return p(Ys(t.payload.reimbursementId,"Error",g.status))})),I((g=>(console.error(`REST API call errored out ${g}`),p(Ys(t.payload.reimbursementId,"Error",f("Unexpected Error",`REST API call errored out ${g}`)))))));return j(h(o),_)}return h(o)}))),(n,i)=>n.pipe(S(Xq.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(rr()),l.forEach((u=>t.push(Xd(a,u,o,c,d))))):(e.reimbursementConfigState.fetchState!=="Completed"&&e.reimbursementConfigState.fetchState!=="In-Progress"&&t.push(rr()),l.forEach((u=>{const m=ej(a,u),_=Y(e.remiListState.byRemiListKey,m,void 0);_!=null&&_.hasValidState()!==!1||t.push(Xd(a,u,o,c,d))}))),h(t)}))),(n,i,r)=>n.pipe(S(Xd.match),y((t=>{const{period:e,tab:a,isShowDeletedReimbursementEnabled:s,isIncludeLineItems:o,isRefreshAccountAndAccountingClass:c}=t.payload,d={start_date:te(e.start),end_date:te(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(T(l)&&l.data!=null){const u=[F({users:l.data.users}),tj(l.data.transactions),aj({remiList:l.data,tab:a}),Nt(l.data.entity_approvals??[])];return h(u)}return p(Bb(e,a,l.status))})),I((l=>p(Bb(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(tl.match),A((t=>{const{cacheOverride:e,resolveAttributeToUser:a,includeImplicitActors:s,useV3:o}=t.payload,{remiSetupApproverViewState:c,approvalRuleState:d,classListState:l}=i.value,u=ot(i.value),m=nI(d,c.approvalRuleIds),_=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((v=>{if(T(v)&&v.data!=null){const b=v.data.approval_rules.map((P=>P.approval_rule_id)),E=[F({users:v.data.users}),at(v.data.approval_rules),$b(b)];return _&&E.push(se()),h(E)}return p(Rb(v.status))})),I((v=>p(Rb(f("Unexpected Error","Fetch Approval view errored out"+JSON.stringify(v)))))))}{const{approvalRuleIds:g}=c,v=[$b(g)];return _&&v.push(se()),h(v)}}))),(n,i,r)=>n.pipe(S(uj.match),A((t=>{const{companyId:e,cacheOverride:a,refreshViewInBackground:s}=t.payload,{remiSetupViewState:o,plaidAccountViewState:c,companyState:d}=i.value,l=Ue(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(T(u)&&u.data!=null){const m=u.data.accounts.map((g=>g.account_id)),_=[F({users:u.data.users}),K(u.data.user_roles),H({payload:u.data.companies,schema:{}}),G(u.data.addresses),Se({files:u.data.files}),X(u.data.accounts,"reimbursement"),ve(u.data.payment_accounts),ea({data:u.data.payment_accounts,updateType:"replace"}),tt(u.data.deposit_accounts??[]),ta({data:u.data?.deposit_accounts??[],updateType:"replace"}),Le({companyId:u.data.companies[0].company_id}),al({companyId:u.data.companies[0].company_id}),ut(m,"reimbursement_setup"),qb()];return h(_)}return p(N({messageSection:"reimbursement_setup",messageText:"failed",type:"error"}),jb(u.status))})),I((u=>p(jb(f("Unexpected Error","Fetch Remi Setup view errored out"+JSON.stringify(u)))))));{const{allBankAccountIds:u}=c.reimbursement_setup.accountDetails;return p(Le({companyId:e}),ut(u,"reimbursement_setup"),qb())}}))),(n,i)=>n.pipe(S(av.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([Zt("month"),Zt("quarter"),Zt("year")]);{const e=[],a=i.value.revenueClassesViewState.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")),h(e)}}))),(n,i)=>n.pipe(S(qn.match),A((r=>{const{cacheOverride:t,endDate:e,forecastId:a,startDate:s}=r.payload;if(t===!0)return h([Wa("month",a,!0,!1,s,e),Wa("quarter",a,!0,!1,s,e),Wa("year",a,!0,!1,s,e)]);{const o=[],c=h1(i.value.revenueState,i.value.revenueState.uiState.isForecastModeOn,a).fetchState;return c.month.fetchState!=="In-Progress"&&c.month.fetchState!=="Completed"&&o.push(Wa("month",a,!0,!1,s,e)),c.quarter.fetchState!=="In-Progress"&&c.quarter.fetchState!=="Completed"&&o.push(Wa("quarter",a,!0,!1,s,e)),c.year.fetchState!=="In-Progress"&&c.year.fetchState!=="Completed"&&o.push(Wa("year",a,!0,!1,s,e)),h(o)}}))),(n,i,r)=>n.pipe(S(Zt.match),y((t=>{const e={is_full_response:t.payload.fetchFullReport,time_series_groups:[cv(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&&T(a)){const s=[];return s.push(ie(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(ie(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(S1({timeframe:t.payload.timeframe,report:a.data})),h(s)}return p(dv(a.status,t.payload.timeframe))})),I((a=>p(dv(f("Unexpected Error","Revenue REST API call errored out"+JSON.stringify(a)),t.payload.timeframe)))))}))),pY,(n,i,r)=>n.pipe(S(Xt.match),y((t=>{const e={is_full_response:t.payload.fetchFullReport,time_series_groups:[cv(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&&T(a)){const s=[],o=a.data.report,c=o.currency;return s.push(Bt(o.projects)),s.push(ce(t.payload.timeframe,"cogs","revenue_by_projects",o.cogs,o.accounts,c)),s.push(ce(t.payload.timeframe,"income","revenue_by_projects",o.income,o.accounts,c)),s.push(g1({timeframe:t.payload.timeframe,report:a.data})),h(s)}return p(lv(a.status,t.payload.timeframe))})),I((a=>p(lv(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(nv.match),A((r=>{const{cacheOverride:t}=r.payload;if(t===!0)return h([Xt("month"),Xt("quarter"),Xt("year")]);{const e=[],a=i.value.revenueProjectViewState.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")),h(e)}}))),(n,i)=>n.pipe(S(ov.match),y((r=>{const{cacheOverride:t,forecastId:e}=r.payload,a=_1(i.value),s=ic(i.value.forecastState,i.value.forecastListState,a.dataAvailable),o=cc(i.value.forecastState,i.value.forecastListState),c=((d,l)=>d!=null&&((u,m)=>{let _=!1;for(const g of m)if(g.id===u){_=!0;break}return _})(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(an(a.firstMonthOfFY,!0,void 0,{id:c,index:l.indexOf(c)})),t===!0||((u,m)=>{const _=xy(u,m);return _.fetchState!=="Completed"&&_.fetchState!=="In-Progress"})(c,i.value.revenueState)?d.push(qn(!1,c)):console.log("Required data is already there!! No need to fire any fetch!"),h(d)}if(c==null&&o.fetchState==="Completed"&&o.forecasts.length===0)return h([]);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=[Qa(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"month"),Qa(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"year"),Qa(f("Invalid forecastId given or Forecast is deleted","Invalid forecastId given or Forecast is deleted"),r.payload.forecastId,"quarter")];return h([d])}if(c==null&&o.forecasts.length===0)return h([cs(),iv(t,e)]);{console.warn("Invlid state!!");const d=[Qa(f("Unexpected error","Unexpected error"),r.payload.forecastId,"month"),Qa(f("Unexpected error","Unexpected error"),r.payload.forecastId,"year"),Qa(f("Unexpected error","Unexpected error"),r.payload.forecastId,"quarter")];return h([d])}}))),(n,i,r)=>n.pipe(S(xn.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(T(c)&&c.data!=null){const d=[f1(c.data.companies)];return a===!0&&d.push(N({messageSection:"audit_score_updated",messageText:"success",type:"success"})),h(d)}{const d=[uv(c.status)];return h(d)}})),I((c=>{const d=[uv(f("Unexpected error","Cockpit Review errored out"+JSON.stringify(c)))];return h(d)}))):h([])}))),(n,i,r)=>n.pipe(S(Hj.match),A((()=>{const t=i.value.transferDetailState.localData,e={from_account:{account_id:t.transferFrom?.id,account_type:qe(t.transferFrom?.accType)??""},to_account:{account_id:t.transferTo?.id,account_type:qe(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=>T(a)&&a.data!=null?p(Qj(a.data)):p(p0(a.status)))),I((a=>p(p0(f("Unexpected Error","Review Transfer Detail REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(vi.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(T(o)&&o.data!=null){const c=[UR(o.data)];return h(c)}return p(qf(o.status))})),I((o=>p(qf(f("Unexpected Error","Fetch rewards plan REST API call errored out"+JSON.stringify(o)))))))}return[]}))),(n,i,r)=>n.pipe(S(Ip.match),A((t=>{const{scheduleId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/routines/${encodeURIComponent(e)}/runs`).pipe(Ee((a=>{if(!T(a)||a.data==null)return bp(a.status);const{data:s}=a;return ZN({runs:(s.runs??[]).filter(BY).map(DY),scheduleId:e,sessionId:s.session_id??null})})),I((a=>p(bp(f("Unexpected Error","Fetch routine runs REST API call failed",a instanceof Error?{message:a.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(gt.match),A((()=>r.getJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/routines`).pipe(y((t=>{if(!T(t)||t.data==null)return p(Ep(t.status));const{data:e}=t;return p(XN({routines:(e.routines??[]).filter($Y).map(MY),maxRoutines:e.max_routines??0,routinesEnabled:e.routines_enabled===!0}))})),I((t=>p(Ep(f("Unexpected Error","Fetch routines REST API call failed",t instanceof Error?{message:t.message}:void 0))))))))),(n,i,r)=>n.pipe(S(_v.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(Za(a,o.selectedJEAccruedScheduleKey,s)),e.push(Nc()),h(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(T(d)&&d.data!=null){const l=hv(d.data.je_schedules[0]);return e.push(fa(d.data.je_schedules),x1({selectedJEScheduleKey:l}),wr(d.data.je_schedules,d.data.scheduled_journal_entries),on("Not-Started"),Za(a,l,s),Nc()),h(e)}return p(Ac({error:d.status}))})),I((d=>p(Ac({error:f("Unexpected Error","Accrued Schedule Detail REST API call errored out"+JSON.stringify(d))})))))}return o.selectedJEAccruedScheduleKey!=null?(e.push(Za(a,o.selectedJEAccruedScheduleKey)),e.push(Nc())):e.push(Ac({error:f("Unexpected Error","Accrued Schedule Detail key is not defined")})),h(e)}))),(n,i)=>n.pipe(S(U1.match),y((r=>{const t=[],e=Jr(),a=i.value.accountListState,s=i.value.classListState;return a.byReportId[e.accountListKey].fetchState==="Not-Started"&&t.push(Ae(e.accountListKey,!0,!1,!1,!1,e.allowedAccountList)),s.fetchState==="Not-Started"&&t.push(se()),r.payload.selectedJeScheduleDetailId!=null&&t.push(_v(r.payload.scheduleType,r.payload.selectedJeScheduleDetailId)),j(h(t))}))),(n,i,r)=>n.pipe(S(gv.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(cn(a,c.selectedJEScheduleKey,s)),e.push(xc()),h(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(T(l)&&l.data!=null){const u=L1(l.data.je_schedules[0].base_transaction);return e.push(mt(l.data.je_schedules),F1({selectedJEScheduleKey:u}),Et(l.data.je_schedules,l.data.scheduled_journal_entries),dn("Not-Started"),cn(a,u,s),xc()),l.data.je_schedules[0].status.code==="draft"&&fQ(l.data.je_schedules[0])&&e.push(Sv({scheduleType:a})),h(e)}return p(Uc({error:l.status}))})),I((l=>p(Uc({error:f("Unexpected Error","Schedule Detail REST API call errored out"+JSON.stringify(l))})))))}return c.selectedJEScheduleKey!=null?(e.push(cn(a,c.selectedJEScheduleKey)),e.push(xc())):e.push(Uc({error:f("Unexpected Error","Schedule Detail key is not defined")})),h(e)}))),(n,i)=>n.pipe(S(q1.match),y((r=>{const t=[],e=Jr(),a=i.value.accountListState,s=i.value.classListState;return a.byReportId[e.accountListKey].fetchState==="Not-Started"&&t.push(Ae(e.accountListKey,!0,!1,!1,!1,e.allowedAccountList)),s.fetchState==="Not-Started"&&t.push(se()),r.payload.selectedJeScheduleDetailId!=null&&t.push(gv(r.payload.scheduleType,r.payload.selectedJeScheduleDetailId,r.payload.cacheOverride)),j(h(t))}))),(n,i,r)=>n.pipe(S(Dc.match),y((t=>{const{scheduleType:e}=t.payload,{scheduleListState:a,accountListState:s}=i.value;let o;if(e!=="accrued_expenses"&&(o=Bc(a,e)),o==null)return h([]);const c=t.payload.timeframeAndCategory!=null?t.payload.timeframeAndCategory.selectedTimeframe:o.selectedTimeframe,d=t.payload.timeframeAndCategory!=null?t.payload.timeframeAndCategory.selectedCategoryId:o.selectedCategoryId,l=ba(c),u=Us(d,c),m=o.jeScheduleKeysByListKey[u];if(m!=null&&m.fetchState==="Completed"&&t.payload.cacheOverride===!1)return h([]);const _=tM(e),g=aM(e),v=g!=null?X1(s,_.accountListKey,g):[];let b=[d];d==="all"&&(b=v);const E={start_date:te(l.start),end_date:te(l.end),je_schedule_type:e,base_txn_account_ids:b,sort_by:"transaction_date",sort_order:"desc",filter:"all"};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules?query=${encodeURIComponent(JSON.stringify(E))}`).pipe(y((P=>{if(T(P)&&P.data!=null){const O=[];return O.push(mt(P.data.je_schedules),Et(P.data.je_schedules,P.data.scheduled_journal_entries),eM(e,c,d,P.data.je_schedules)),h(O)}return p(Ev(e,c,d,P.status))})),I((P=>p(Ev(e,c,d,f("Unexpected Error","Schedule List REST API call errored out"+JSON.stringify(P)))))))}))),n=>n.pipe(S(rM.match),y((()=>{const i=[],r=Jr();return i.push(Ae(r.accountListKey,!1,!1,!1,!1,r.allowedAccountList)),h(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=>T(s)&&Gl(s.data)?p(tA({detail:zl(s.data),macroId:e})):p(Tp({error:s.status,macroId:e})))),I((s=>p(Tp({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(Jo.match),A((()=>{const t=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/skills`;return r.getJSON(t).pipe(y((e=>T(e)&&e.data!=null?p(sA({skills:(e.data.skills??[]).map(qY),skillsEnabled:e.data.skills_enabled===!0,canPublish:e.data.can_publish===!0})):p(Op(e.status)))),I((e=>p(Op(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=>T(o)&&mP(o.data)?p(rA({macroId:e,version:a,instructions:o.data.instructions})):p(Pp({macroId:e,version:a,error:o.status})))),I((o=>p(Pp({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(Np.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=>T(s)&&s.data!=null?p(nA({macroId:e,versions:(s.data.versions??[]).map(LY)})):p(Ap({macroId:e,error:s.status})))),I((s=>p(Ap({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(nG.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(T(o)&&o.data!=null){const c=o.data.subscription_addons.map((l=>l.subscription_addon_id)),d=[xa({payload:o.data.subscription_addons}),S0({addOnIds:c})];return h(d)}return p(g0({status:o.status}))})),I((o=>p(g0({status:f("Unexpected error","Unable to fetch subscription addOns"+JSON.stringify(o))}))))):p(S0({addOnIds:s}))}))),(n,i,r)=>n.pipe(S(sG.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(T(o)&&o.data!=null){const c=o.data.subscription_coupons.map((l=>l.subscription_coupon_id)),d=[br({payload:o.data.subscription_coupons}),f0({couponIds:c})];return h(d)}return p(v0({status:o.status}))})),I((o=>p(v0({status:f("Unexpected error","Unable to fetch subscription coupons"+JSON.stringify(o))}))))):p(f0({couponIds:s}))}))),(n,i,r)=>n.pipe(S(oG.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(xT(u,e,!0)))}`).pipe(y((m=>{if(T(m)&&m.data!=null){const _=[iG({tenantId:e,subscriptionEstmiateData:m.data})];return h(_)}return p(I0({tenantId:e,status:m.status}))})),I((m=>p(I0({tenantId:e,status:f("Unexpected error","Unable to fetch subscription create estimate"+JSON.stringify(m))})))))}return h([])}))),(n,i,r)=>n.pipe(S(cG.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(T(d)&&d.data!=null){const l=d.data.subscriptions.map((m=>m.subscription_id)),u=[Ir({payload:d.data.subscriptions,schema:d.data.schema.subscription}),Ca({payload:d.data.subscription_plans,schema:d.data.schema.subscription_plan}),br({payload:d.data.subscription_coupons,schema:d.data.schema.subscription_coupon}),xa({payload:d.data.subscription_addons,schema:d.data.schema.subscription_addon}),Ua({payload:d.data.subscription_summaries,schema:d.data.schema.subscription_summary}),b0({companyId:e,subscriptionIds:l})];return h(u)}return p(E0({companyId:e,status:d.status}))})),I((d=>p(E0({companyId:e,status:f("Unexpected error","fetch Subscription Details errored out"+JSON.stringify(d))}))))):p(b0({companyId:e,subscriptionIds:c}))}))),(n,i,r)=>n.pipe(S(Er.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(T(e)&&e.data!=null){const a=e.data.companies.map((d=>d.company_id)),s=(function(d,l){const u=Hl(d),m={};return l.forEach((_=>{m[_]={subscriptionIds:u[_]??[],fetchStatus:{fetchState:"Completed",error:void 0}}})),m})(e.data.subscriptions,a),o=pi(e.data.user_roles,e.data.companies),c=[K(e.data.user_roles),H({payload:e.data.companies,schema:e.data.schema.company,subset:!1,companyIdTenantIdMapping:o}),Ir({payload:e.data.subscriptions,schema:e.data.schema.subscription}),Ca({payload:e.data.subscription_plans,schema:e.data.schema.subscription_plan}),xa({payload:e.data.subscription_addons,schema:e.data.schema.subscription_addon}),br({payload:e.data.subscription_coupons,schema:e.data.schema.subscription_coupon}),Ua({payload:e.data.subscription_summaries,schema:e.data.schema.subscription_summary}),dG({companyIds:a,subscriptionDetailsByCompanyId:s})];return t.payload.fetchFullResponse===!0&&e.data.users!=null&&c.push(F({users:e.data.users})),h(c)}return p(T0(e.status))})),I((e=>p(T0(f("Unexpected error","fetch Subscription List errored out"+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(lG.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(T(o)&&o.data!=null){const c=o.data.subscription_plans.map((l=>l.subscription_plan_id)),d=[Ca({payload:o.data.subscription_plans}),P0({planIds:c})];return h(d)}return p(N0({status:o.status}))})),I((o=>p(N0({status:f("Unexpected error","Unable to fetch subscription plans"+JSON.stringify(o))}))))):p(P0({planIds:s}))}))),mY,(n,i,r)=>n.pipe(S(uG.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:_}=a,g={subscriptionId:s,subscriptionEstmiate:o,subscriptionPlanId:c,subscriptionAddOnIds:d,subscriptionCouponIds:l,invoiceImmediately:u,applyEndOfTerm:m,shouldProrate:_};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscription-update-estimate?query=${encodeURIComponent(JSON.stringify(CT(g,e,!0)))}`).pipe(y((v=>{if(T(v)&&v.data!=null){const b=[pG({tenantId:e,subscriptionEstmiateData:v.data})];return h(b)}return p(A0({tenantId:e,status:v.status}))})),I((v=>p(A0({tenantId:e,status:f("Unexpected error","Unable to fetch subscription update estimate"+JSON.stringify(v))})))))}return h([])}))),(n,i)=>n.pipe(S(VC.match),A((r=>{const{cacheOverride:t,fetchFullResponse:e}=r.payload;if(t===!0)return h([Er(e),He()]);const a=i.value,s=[];return a.companyViewState.zeniUsers.fetchState==="In-Progress"||a.companyViewState.zeniUsers.hasValidState()||s.push(He()),a.subscriptionViewState.subscriptionListView.fetchState==="In-Progress"||a.subscriptionViewState.subscriptionListView.hasValidState()||s.push(Er(e)),h(s)}))),(n,i,r)=>n.pipe(S(kG.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(T(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(ze(o),DG({parentTaskId:e,subTaskIds:c}),BG({parentTaskId:e}))}return p(w0({parentTaskId:e,fetchState:"Error",error:s.status}))})),I((s=>p(w0({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=>T(c)&&c.data!=null?p(iA({pageContext:e,generatedAt:c.data.generated_at,suggestedQuestions:c.data.suggested_questions})):p(Cp({pageContext:e,error:c.status})))),I((c=>p(Cp({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(eo.match),y((t=>{const{taskId:e,cacheOverride:a}=t.payload,s=[],o=i.value,c=Y(o.taskDetailState.editTaskStateById,e,void 0);if(a===!0&&mu(c))return KQ(e,i,r);if(a===!0&&s.push(JG(e)),a===!1&&mu(c))return p(Pl(e));if(a===!0||c==null||c.fetchTaskStatus.fetchState!=="In-Progress"){s.push(pr({taskId:e,fetchState:"In-Progress"}));const d=r.getJSON(TP(r,e)).pipe(y((l=>{if(T(l)&&l.data!=null){const u=[ze(l.data.tasks),pr({taskId:e,fetchState:"Completed"}),mr(l.data.tasks.map((_=>_.tags)).flat()),Pl(e)],m=l.data.tasks[0].file_ids;return m.length>0&&u.push(gu(m)),h(u)}return h(PP(e,l.status))})),I((l=>(console.error(`REST API call errored out ${l}`),p(pr({taskId:e,fetchState:"Error",error:f("Unexpected Error","Fetch Task detail REST API call errored out"+JSON.stringify(l))}))))));return j(h(s),d)}return h(s)}))),(n,i)=>n.pipe(S($G.match),y((r=>{const{cacheOverride:t,taskId:e}=r.payload,a=[],s=i.value;if(t===!0&&e!=null&&mu(s.taskDetailState.editTaskStateById[e]))a.push(eo(e,!0)),a.push(to(e,!0));else if(t===!0)a.push(Fe("taskManagerCandidate",!0)),a.push(se()),e!=null&&(a.push(eo(e,!0)),a.push(to(e,!0)));else{const o=s.userListViewState.userListByType.taskManagerCandidate;o.hasValidState()===!1&&o.fetchState!=="In-Progress"&&a.push(Fe("taskManagerCandidate",!1)),s.classListState.hasValidState()===!1&&s.classListState.fetchState!=="In-Progress"&&a.push(se()),e!=null&&(a.push(eo(e,!1)),a.push(to(e,!1)))}return j(h(a))}))),(n,i,r)=>n.pipe(S(Ol.match),A((()=>r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/templates`).pipe(y((t=>{if(T(t)&&t.data!=null){const e=[KG(t.data),YG(t.data.templates)];return h(e)}{const e=[V0(t.status)];return h(e)}})),I((t=>{const e=[V0(f("Unexpected error","fetch task group templates REST API call errored out"+JSON.stringify(t)))];return h(e)})))))),(n,i,r)=>n.pipe(S(to.match),y((t=>{const{taskId:e,cacheOverride:a}=t.payload,s=[],o=i.value,c=Y(o.taskDetailState.taskHistoryById,e,void 0);if(a===!1&&c!=null&&c.fetchState==="Completed")return $;if(a===!0||c==null||c.fetchState!=="In-Progress"){s.push(Nl({taskId:e,fetchState:"In-Progress"}));const d=r.getJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${e}/history`).pipe(y((l=>T(l)&&l.data!=null?p(RG({taskId:e,historicEventsPayload:l.data.activities})):p(Nl({taskId:e,fetchState:"Error",error:l.status})))),I((l=>p(Nl({taskId:e,fetchState:"Error",error:f("Unexpected Error","Fetch Task history REST API call errored out"+JSON.stringify(l))})))));return j(h(s),d)}return h(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(T(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(ze(d),oz({data:e,completed:c??[],deleted:a??[],archived:s??[],snoozed:o??[]}),mr(d.map((l=>l.tags)).flat()))}return p(K0({fetchState:"Error",error:t.status}))})),I((t=>p(K0({fetchState:"Error",error:f("Unexpected Error","Fetch Task List REST API call errored out"+JSON.stringify(t))})))))))),(n,i)=>n.pipe(S(iz.match),y((r=>{const{cacheOverride:t,isTaskTemplatesEnabled:e}=r.payload,a=[],s=i.value;if(t===!0)a.push(Ct(),se(),Fe("taskManagerCandidate",!0),bl(),xl()),e===!0&&a.push(Ol());else{s.taskListState.fetchState!=="In-Progress"&&s.taskListState.hasValidState()===!1&&a.push(Ct()),s.classListState.hasValidState()===!1&&s.classListState.fetchState!=="In-Progress"&&a.push(se());const o=s.userListViewState.userListByType.taskManagerCandidate;o.hasValidState()===!1&&o.fetchState!=="In-Progress"&&a.push(Fe("taskManagerCandidate",!1)),s.tagViewState.hasValidState()===!1&&s.tagViewState.fetchState!=="In-Progress"&&a.push(bl()),s.taskGroupViewState.hasValidState()===!1&&s.taskGroupViewState.fetchState!=="In-Progress"&&a.push(xl()),e===!0&&s.taskGroupTemplateViewState.hasValidState()===!1&&s.taskGroupTemplateViewState.fetchState!=="In-Progress"&&a.push(Ol())}return j(h(a))}))),(n,i,r)=>n.pipe(S(iC.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=>T(e)&&e.data!=null?p(cC(e.data.summary)):p(Hm()))),I((()=>p(Hm()))))}))),(n,i,r)=>n.pipe(S(Nn.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/task_card`).pipe(y((t=>T(t)?p(lz(t.data)):p(H0(t.status)))),I((t=>p(H0(f("Unexpected Error","Tasks card REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(hi.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/reports/top_expenses`).pipe(y((t=>T(t)?p(X(t.data?.report.accounts??[],"top_expenses"),uz(t.data)):p(Q0(t.status)))),I((t=>p(Q0(f("Unexpected error","TopEx REST API call errored out"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(pz.match),A((t=>{const{qboId:e}=t.payload;return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/${e}/activity`).pipe(y((a=>{if(T(a)&&a.data!=null&&a.data.activity!=null){const s=[];return a.data.users!=null&&a.data.users.length>0&&s.push(F({users:a.data.users,updateType:"merge"})),s.push(mz(a.data.activity)),s.push(yz({data:a.data.activity,qboId:e})),h(s)}return p(W0({fetchState:"Error",error:a.status,qboId:e}))})),I((a=>p(W0({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(nE.match),y((t=>{const{transactionId:e,cacheOverride:a}=t.payload,s=Be(e),o=[];if(a===!0){const d=Ot(i.value.transactionState,s);o.push(...(function(l,u){const m=[];return m.push(hu(l)),u!=null&&(m.push(_u(Be(l))),sE(u).forEach((_=>{m.push(hu(_)),m.push(_u(Be(_)))}))),m})(e,d))}const c=Y(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(Ae("accountList"));const l=i.value.classListState;l.hasValidState()===!1&&l.fetchState!=="In-Progress"&&o.push(se());const u=i.value.projectListState;u.hasValidState()===!1&&u.fetchState!=="In-Progress"&&o.push(Vi()),o.push(ao(e,"In-Progress"));const m={transaction_type:e.type},_=r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/${e.id}?query=${encodeURIComponent(JSON.stringify(m))}`).pipe(y((g=>{if(T(g)&&g.data?.transaction?.transaction_id!=null){const v=[],b=Or(g.data.transaction),E={...g.data,vendors:g.data.vendors?.map((O=>({...O,vendor_id:O.qbo_id??O.vendor_id})))??[]};E.vendors.length>0&&v.push(ue(E.vendors,"merge"));const P=Be(b);return v.push(Mt(P,E.transaction)),v.push(Cr({transactionId:b,vendorId:E.vendors[0]?.vendor_id})),v.push(ao(b,"Completed")),v.push(...(function(O,x){const U=[],k=Dz(O),C=sE(k).filter((B=>(function(J,L){const M=Be(J),q=L.transactionDetailState.transactionDetailById[M];return q!=null&&(q.hasValidState()===!0||q.fetchState==="In-Progress")})(B,x)===!1));return C.forEach((B=>U.push(nE(B,!1)))),C.length===0&&console.log("Phew all linked transactions are fetched or there are no linked transactions.."),U})(E.transaction,i.value)),E.vendors.length>0&&v.push(Bn({vendorId:E.vendors[0].vendor_id,localData:ME(gr(E.vendors[0]))})),RT(E.transaction.transaction_type)!=null&&v.push(_t()),h(v)}return p(ao(t.payload.transactionId,"Error",g.status))})),I((g=>(console.error(`REST API call errored out ${g}`),p(ao(t.payload.transactionId,"Error",f("Unexpected Error",`REST API call errored out ${g}`)))))));return j(h(o),_)}return h(o)}))),(n,i,r)=>n.pipe(S(Vz.match),y((t=>{const e=i.value,a=Lz(t.payload.accountId,t.payload.accountType,t.payload.period),s=Y(e.transactionListState.byAccount.transactionListByAccountKey,a,void 0);if(t.payload.cacheOverride===!0||s==null||s.hasValidState()===!1){const o={start_date:te(t.payload.period.start),end_date:te(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=kn(t.payload.accountId);return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts/${c}/transactions?query=${encodeURIComponent(JSON.stringify(o))}`).pipe(y((d=>{if(T(d)&&d.data!=null){const l=[];return l.push(De(d.data.account.transactions,(u=>u.transaction_id))),l.push(Fz(d.data)),h(l)}return p(oE(t.payload.accountId,t.payload.accountType,t.payload.period,d.status))})),I((d=>p(oE(t.payload.accountId,t.payload.accountType,t.payload.period,f("Unexpected Error","fetch transaction list REST API call errored out"+JSON.stringify(d)))))))}return h([])}))),(n,i,r)=>n.pipe(S(iE.match),y((t=>{const e=i.value,a=cE(t.payload.accountId,t.payload.accountType,t.payload.classId,t.payload.period),s=Y(e.transactionListState.byClass.transactionListByClassKey,a,void 0);if(t.payload.cacheOverride===!0||s==null||s.hasValidState()===!1){const o={start_date:te(t.payload.period.start),end_date:te(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=kn(t.payload.accountId);return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts/${c}/transactions?query=${encodeURIComponent(JSON.stringify(o))}`).pipe(y((d=>{if(T(d)&&d.data!=null){const l=[];return l.push(De(d.data.account.transactions,(u=>u.transaction_id))),l.push(qz(d.data)),h(l)}return p(dE(t.payload.accountId,t.payload.accountType,t.payload.classId,t.payload.period,d.status))})),I((d=>p(dE(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 h([])}))),(n,i,r)=>n.pipe(S(lE.match),y((t=>{const e=i.value,a=uE(t.payload.entity,t.payload.period),s=Y(e.transactionListState.byEntity.transactionListByEntityKey,a,void 0);if(t.payload.cacheOverride===!0||s==null||s.hasValidState()===!1){const o={start_date:te(t.payload.period.start),end_date:te(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(T(c)&&c.data!=null){const d=[];return d.push(De(c.data.transactions,(l=>l.transaction_id))),d.push(jz(c.data)),h(d)}return p(pE(t.payload.entity,t.payload.period,c.status))})),I((c=>p(pE(t.payload.entity,t.payload.period,f("Unexpected Error","fetch transaction list REST API call errored out"+JSON.stringify(c)))))))}return h([])}))),(n,i,r)=>n.pipe(S(mE.match),y((t=>{const e=i.value,a=yE(t.payload.accountId,t.payload.accountType,t.payload.projectId,t.payload.period),s=Y(e.transactionListState.byProject.transactionListByProjectKey,a,void 0);if(t.payload.cacheOverride===!0||s==null||s.hasValidState()===!1){const o={start_date:te(t.payload.period.start),end_date:te(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=kn(t.payload.accountId);return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts/${c}/transactions?query=${encodeURIComponent(JSON.stringify(o))}`).pipe(y((d=>{if(T(d)&&d.data!=null){const l=[];return l.push(De(d.data.account.transactions,(u=>u.transaction_id))),l.push(Gz(d.data)),h(l)}return p(_E(t.payload.accountId,t.payload.accountType,t.payload.projectId,t.payload.period,d.status))})),I((d=>p(_E(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 h([])}))),(n,i)=>n.pipe(S(tK.match),y((r=>{const{entity:t,screen:e,selectedPeriod:a,fiscalYearStartMonth:s}=r.payload,o=[];return o.push(fE(t,ba(a.timePeriod),!1,s)),o.push(aK(t,e,a)),h(o)}))),(n,i,r)=>n.pipe(S(hE.match),y((t=>{const e=i.value,{transactionCategoryType:a,period:s,cacheOverride:o,minimumTransactionAmount:c}=t.payload,d=SE(a,s),l=Y(e.transactionListState.byType[a].transactionListByCategoryType,d,void 0);if(o===!0||l==null||l.hasValidState()===!1){const u={start_date:te(s.start),end_date:te(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(T(m)&&m.data!=null){const _=[];return _.push(De(m.data.transactions,(g=>g.transaction_id))),_.push(zz(a,s,m.data.transactions)),h(_)}return p(gE(a,s,m.status))})),I((m=>p(gE(a,s,f("Unexpected Error","fetch transaction list REST API call errored out"+JSON.stringify(m)))))))}return h([])}))),(n,i,r)=>n.pipe(S(ex.match),Me((t=>t.payload.kind)),y((t=>t.pipe(A((e=>{const{kind:a}=e.payload,s=lH[a],o=dH[a],c=`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts?query=${encodeURIComponent(JSON.stringify(s))}`;return r.getJSON(c).pipe(y((d=>{if(T(d)&&d.data!=null){const l=d.data.accounts.map((m=>m.account_id)),u=[X(d.data.accounts,o),tx({accountIds:l,kind:a})];return p(...u)}return p(Ty({kind:a}))})),I((()=>p(Ty({kind:a})))))})))))),(n,i,r)=>n.pipe(S(Lv.match),A((t=>{const{cacheOverride:e,fetchOnlySummary:a}=t.payload,s=i.value,o=[];if(e===!0)o.push(sl()),o.push(ol()),o.push(il(!0)),o.push(cl(!0)),o.push(dl()),o.push(ll(!0));else if(a!==!0){const c=s.treasuryStatementListState;c.hasValidState()===!1&&c.fetchState!=="In-Progress"&&o.push(il(!1));const d=s.treasuryTaxLetterListState;d.hasValidState()===!1&&d.fetchState!=="In-Progress"&&o.push(cl(!1));const l=s.treasuryDetailState;l.hasValidState()===!1&&l.fetchState!=="In-Progress"&&o.push(dl());const u=l.transactionsState;u.fetchState!=="Completed"&&u.fetchState!=="In-Progress"&&o.push(ll(!1,5));const m=s.treasurySetupViewState;m.treasuryFundsDetails.fetchStatus.fetchState!=="In-Progress"&&o.push(sl()),m.currentAllocation.fetchStatus.fetchState!=="In-Progress"&&o.push(ol())}return r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account?query=${encodeURIComponent('{"is_summary":true}')}`).pipe(y((c=>T(c)?j(p(Ej({data:c})),h(o)):j(p(Hb({error:c.status})),h(o)))),I((c=>j(p(Hb({error:f("Unexpected Error","Fetch treasury summary REST API call errored out "+JSON.stringify(c))})),h(o)))))}))),(n,i,r)=>n.pipe(S(sl.match),A((()=>r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury/funds`).pipe(y((t=>{if(T(t)&&t.data!=null){const e=[Cj(t.data)];return h(e)}return p(e0({error:t.status}))})),I((t=>p(e0({error:f("Unexpected Error","Fetch treasury funds REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(dl.match),A((()=>r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account/balance/time-series`).pipe(y((t=>T(t)?p(Tj({data:t})):p(Qb({fetchState:"Error",error:t.status})))),I((t=>p(Qb({fetchState:"Error",error:f("Unexpected Error","Fetch treasury account history REST API call errored out "+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(xj.match),A((t=>{const{companyId:e,cacheOverride:a,refreshViewInBackground:s}=t.payload,{treasurySetupViewState:o,plaidAccountViewState:c,companyState:d}=i.value,l=Ue(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(T(u)&&u.data!=null){const m=u.data.accounts?.map((g=>g.account_id)),_=[F({users:u.data.users}),K(u.data.user_roles),H({payload:u.data.companies,schema:{}}),G(u.data.addresses??[]),Se({files:u.data.files??[]}),X(u.data.accounts??[],"zeni_treasury"),ve(u.data.payment_accounts??[]),ea({data:u.data.payment_accounts??[],updateType:"replace"}),tt(u.data.deposit_accounts??[]),ta({data:u.data?.deposit_accounts??[],updateType:"replace"}),Le({companyId:u.data.companies[0].company_id}),ut(m,"treasury_setup"),t0()];return h(_)}return p(N({messageSection:"treasury_setup",messageText:"failed",type:"error"}),a0(u.status))})),I((u=>p(a0(f("Unexpected Error","Fetch Treasury Setup view errored out"+JSON.stringify(u)))))));{const{allBankAccountIds:u}=c.spend_management_setup.accountDetails;return p(Le({companyId:e}),ut(u,"treasury_setup"),t0())}}))),(n,i,r)=>n.pipe(S(il.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=>T(c)?p(Bj({data:c.data?.statements??[]})):p(ul({fetchState:"Error",error:c.status})))),I((c=>p(ul({fetchState:"Error",error:f("Unexpected Error","Fetch treasury Account statement REST API call errored out "+JSON.stringify(c))})))))}return p(ul({fetchState:"Completed",error:void 0}))}))),(n,i,r)=>n.pipe(S(cl.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=>T(c)?p(Dj({data:c.data?.statements??[]})):p(pl({fetchState:"Error",error:c.status})))),I((c=>p(pl({fetchState:"Error",error:f("Unexpected Error","Fetch treasury tax letter REST API call errored out "+JSON.stringify(c))})))))}return p(pl({fetchState:"Completed",error:void 0}))}))),(n,i,r)=>n.pipe(S(ll.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=>T(s)?p(Pj({transactionList:s.data?.transactions??[]})):p(Wb({error:s.status})))),I((s=>p(Wb({error:f("Unexpected Error","Fetch treasury transactions REST API call errored out"+JSON.stringify(s))}))))):h([])}))),(n,i)=>n.pipe(S(ai.match),y((r=>{const{entity:t}=r.payload;return t.type==="customer"?p(IE(t.id,t.name)):t.type==="vendor"?p(vE(t.id,t.name,t.zeniId)):h([])}))),(n,i,r)=>n.pipe(S(Tm.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user/self`).pipe(y((t=>{if(T(t)&&t.data!=null){const e=[kO()];return t.data.users.length>0&&e.push(F({users:t.data.users})),h(e)}return p(Pm(t.status))})),I((t=>p(Pm(f("Unexpected error","Unable to fetch user details"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(Ld.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(T(s)&&s.data!=null){const o=[],c=yW(s.data.bank_accounts)?.bank_account_id;return o.push(Ve(s.data.bank_accounts),rK({userFinancialAccount:s.data}),ve(s.data.payment_accounts)),a==null&&o.push(_r({bankAccountId:c,shouldOverWriteCurrentBankAccountId:!1})),h(o)}return p(bE({status:s.status,userId:e}))})),I((s=>p(bE({userId:e,status:f("Unexpected Error","Fetch User Financial Account REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(Fe.match),y((t=>{const{userType:e,cacheOverride:a}=t.payload,s=i.value,o=s.userListViewState.userListByType[e],c=Q(s),d=nK(c);if(a===!0||a===!1&&o.hasValidState()===!1){let l=`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/users`;const u=_W(e,d);l+=`?query=${encodeURIComponent(JSON.stringify(u))}`;const m=r.tenantId,_=()=>m!=null&&r.tenantId!==m;return r.getJSON(l).pipe(y((g=>{if(_())return p(EE({userType:e}));if(T(g)){const v=[F({users:g.data?.users??[]}),K(g.data?.user_roles??[]),wv({userType:e,usersPayload:g.data?.users??[]})];return g.data?.user_groups!=null&&(v.push(zm({userGroups:g.data.user_groups})),e==="taskManagerCandidate"&&v.push(sK({userGroupType:e,userGroupsPayload:g.data.user_groups}))),e==="cardHolderCandidate"&&(v.push(ub(g.data?.cards_count_by_user_id??[])),v.push(pb(g.data?.debit_cards_count_by_deposit_account_id??{})),v.push(G(g.data?.addresses??[]))),j(h(v))}return p(TE({userType:e,status:g.status}))})),I((g=>p(_()?EE({userType:e}):TE({userType:e,status:f("Unexpected error","User REST API call errored out"+JSON.stringify(g))})))))}return h([])}))),(n,i,r)=>n.pipe(S(oK.match),A((t=>{const{cacheOverride:e}=t.payload;return e===!0?r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user-roles/config`).pipe(y((a=>T(a)?h([iK(a),cK({countryListKey:"nationalityCountryList",countryListPayload:a.data?.nationality??[]})]):p(PE(a.status)))),I((a=>p(PE(f("Unexpected Error","Fetch user-roles config REST API call errored out"+JSON.stringify(a))))))):[]}))),(n,i,r)=>n.pipe(S(Uo.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/1099-config`).pipe(y((t=>T(t)?p(dK(t)):p(NE(t.status)))),I((t=>p(NE(f("Unexpected Error","Fetch vendor 1099 types REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(hV.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=Ie(r.payload.billId);o=s.editBillDetailViewState.editBillStateById[c]}if(e!=null){const c=xe(s.vendorState,e);c!=null&&a===!1?(c.vendorCurrencyCode==null||ei(c.vendorCurrencyCode)||t.push(Aa(!0,{amount:o.billDetailLocalData.totalAmount?.amount??0,currencyCode:c.vendorCurrencyCode??"USD",currencySymbol:c.vendorCurrencySymbol??"$"},"USD",r.payload.billId)),t.push(St({billDetailLocalData:uu(s,o,c),billId:r.payload.billId})),t.push(ia(c.qboId,!1))):t.push(Jn(e),II(e,r.payload.billId))}else t.push(St({billDetailLocalData:uu(s,o),billId:r.payload.billId}));return h(t)}))),(n,i)=>n.pipe(S(SV.match),y((r=>{const t=[],{invoiceProcessingPayload:e,isVendorRecommendationFeatureEnabled:a,billId:s}=r.payload,o=e.vendors.length>0?e.vendors[0].vendor_name??"":"",c=ed(i.value);return c.vendors.map((d=>d.name.toLowerCase())).includes(o.toLowerCase())===!0||o.length===0?t.push(td(e,a,s)):c.fetchStateBillsTab.fetchState!=="In-Progress"&&t.push(Rt({searchString:o,billId:s}),bI(e,a,s)),h(t)}))),(n,i)=>n.pipe(S(PO.match),A((r=>{const t=[],e=i.value;if(r.payload.cacheOverride===!0)t.push(Ae("accountList",!0)),t.push(se()),t.push(Xe()),t.push(_t()),r.payload.vendorId!=null?t.push(Jn(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(Ae("accountList",!0));const s=i.value.classListState;if(s.hasValidState()===!1&&s.fetchState!=="In-Progress"&&t.push(se()),e.vendorTypeListState.hasValidState()===!1&&e.vendorTypeListState.fetchState!=="In-Progress"&&t.push(Xe()),e.ownerListState.fetchState!=="In-Progress"&&e.ownerListState.hasValidState()===!1&&t.push(_t()),r.payload.vendorId!=null){const o=i.value.vendorViewState.editVendorStateById[r.payload.vendorId].fetchStatus;o.fetchState!=="Completed"&&o.fetchState!=="In-Progress"&&t.push(Jn(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(h(t))}))),(n,i,r)=>n.pipe(S(Jn.match),A((t=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${t.payload.vendorId}`,{},t.payload.signal).pipe(y((e=>{if(T(e)){const a=e.data?.vendors[0],s=a?.contacts??[],o=ht(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=[ue(e.data?.vendors??[]),X(l,"account_list"),We("class_list",u),ft(s),G(o),Ve(c),Ia(d),Se({files:a?.documents??[]}),vm({vendorId:t.payload.vendorId,isCreatable:t.payload.isCreatable}),wn(t.payload.vendorId)];return a!=null&&m.push(Sr({vendorId:t.payload.vendorId,localData:so(gr(a),i.value,a),isCreatable:t.payload.isCreatable})),m.push(Xo("Completed",t.payload.vendorId,void 0,t.payload.isCreatable)),m.push(Im()),h(m)}return p(Xo("Error",t.payload.vendorId,e.status,t.payload.isCreatable))})),I((e=>p(Xo("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(vK.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(T(c)&&c.data!=null){const d=[];return d.push(IK({vendorId:a,transactionAttachments:c.data.transaction_attachments})),d}return p(CE({status:c.status}))})),I((c=>p(CE({status:f("Unexpected Error","Fetch Vendor First Review View REST API call errored out"+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(bK.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:SW(c.sortKey),sort_order:d??null,search_text:a??null};return e+=`?query=${encodeURIComponent(JSON.stringify(l))}`,r.getJSON(e).pipe(A((u=>{if(T(u)&&u.data!=null){const m=[];return m.push(ue(lo(u.data.vendors)),F({users:uo(u.data.vendors),updateType:"merge"}),Tt({globalMerchants:po(u.data.vendors)}),EK({response:u.data,keepExistingListItems:s})),m}return p(xE({status:u.status}))})),I((u=>p(xE({status:f("Unexpected Error","Fetch Vendor First Review View REST API call errored out"+JSON.stringify(u))})))))}))),(n,i,r)=>n.pipe(S(UK.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:PW(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(T(m)&&m.data!=null){const _=[];return _.push(F({users:EW(m.data.merchants),updateType:"merge"}),kK({tenantMerchants:m.data.merchants}),Tt({globalMerchants:TW(m.data.merchants)}),BK({globalMerchantsPayload:m.data.merchants,keepExistingListItems:e}),DK(m.data.query,m.data.total_count)),_}return p(BE({status:m.status}))})),I((m=>p(BE({status:f("Unexpected Error","Fetch Vendor Global Review View REST API call errored out"+JSON.stringify(m))})))))}))),(n,i)=>n.pipe(S(Iz.match),A((r=>{const{transactionType:t,entity:e,lineIds:a}=r.payload;if(e==null)return p(bz(t,a));const s=(u=>u.qboId&&u.qboId!==u.name?u.qboId:u.name)(e),o=i.value,c=ot(o),d=Pa(o,s,"vendor");if(d.fetchState==="Completed")return p(Z0(t,a,d.recommendations??[],c));const l=n.pipe(S(hr.match),S((u=>u.payload.entityType==="vendor"&&u.payload.entityIdOrName===s)),Oe(1),y((()=>h([Z0(t,a,Pa(i.value,s,"vendor").recommendations??[],ot(i.value))]))));return d.fetchState==="In-Progress"?l:j(p((u=>!u.qboId||u.qboId===u.name)(e)?Ta(s,"vendor"):As(s,"vendor")),l)}))),(n,i)=>n.pipe(S(lK.match),A((r=>{const t=i.value,e=[];return r.payload.cacheOverride,t.vendor1099TypeListState.hasValidState()===!1&&t.vendor1099TypeListState.fetchState!=="In-Progress"&&e.push(Uo()),e.push(Xu()),e.push(Dl()),j(h(e))}))),(n,i,r)=>n.pipe(S(uK.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(T(s)&&s.data!=null){const o=[];return o.push(Jl({response:s.data,downloadState:{fetchState:"Completed",error:void 0}})),o}return p(Jl({response:AE.vendorFiling1099DownloadData,downloadState:{fetchState:"Error"}}))})),I((s=>p(Jl({response:AE.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(Dl.match),A((()=>{const t=`${r.apiEndPoints.accountMicroServiceBaseUrl}/2.0/reports/vendor_1099`;return r.getJSON(t).pipe(A((e=>{if(T(e)&&e.data!=null){const a=[];return a.push(...(function(s){const o=[],c=ht(s);return o.push(ue(s,"merge"),G(c)),o})(e.data.report.vendors??[]),pK({response:e})),a.push(Xe()),a}return p(OE({status:e.status}))})),I((e=>p(OE({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:hW(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(T(m)){const _=[];return m.data?.vendors?.[0]?.vendor_id!=null&&o==null&&_.push(hK({vendorId:m.data?.vendors?.[0].vendor_id,billId:d})),_.push(...(function(g,v){const b=[],E=g.length>0?SK(g):[],P=ht(g),O=g.length>0?Mn(g):[],x=g.length>0?gK(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?fK(g):[];return b.push(ue(g,v==="vendorsTab"?"merge":"replace"),X(U,"account_list"),We("class_list",k),ft(E),G(P),Ve(O),Ia(x),Se({files:B}),F({users:C,updateType:"merge"})),b})(m.data?.vendors??[],o),qc({response:m,keepExistingListItems:s,searchString:a??"",view:o})),_}return p(ad({status:m.status,view:o}))})),I((m=>p(ad({status:f("Unexpected Error","Fetch vendors list REST API call errored out"+JSON.stringify(m)),view:o})))))}))),(n,i)=>n.pipe(S(DO.match),A((r=>{const{vendorId:t,entity:e,cacheOverride:a}=r.payload,s=[];if(a===!0)s.push(ti(t,!1),ai(e),Xe());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(Xe()),!(c.fetchState==="Completed"||c.fetchState==="In-Progress")&&s.push(ti(t,!1)),s.push(ai(e))}return h(s)}))),(n,i)=>n.pipe(S(ti.match),A((r=>{const t=[],e=i.value;if(r.payload.cacheOverride===!0)t.push(Ae("accountList",!0)),t.push(se()),t.push(Xe()),t.push(_t()),r.payload.vendorId!=null?t.push(ri(r.payload.vendorId)):t.push(Rt({}));else{const a=i.value.accountListState.byReportId.accountList;a.hasValidState()===!1&&a.fetchState!=="In-Progress"&&t.push(Ae("accountList",!0));const s=i.value.classListState;s.hasValidState()===!1&&s.fetchState!=="In-Progress"&&t.push(se()),e.ownerListState.fetchState!=="In-Progress"&&e.ownerListState.hasValidState()===!1&&t.push(_t());const o=i.value.vendorsTabVendorViewState.vendorStateById[r.payload.vendorId].fetchStatus;o.fetchState!=="Completed"&&o.fetchState!=="In-Progress"&&t.push(ri(r.payload.vendorId))}return j(h(t))}))),(n,i,r)=>n.pipe(S(ri.match),A((t=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${t.payload.vendorId}`).pipe(y((e=>{if(T(e)){const a=e.data?.vendors[0],s=a?.contacts??[],o=ht(e.data?.vendors??[]),c=Mn(e.data?.vendors??[]),d=a?.account!=null?[a?.account]:[],l=a?.accounting_class!=null?[a?.accounting_class]:[],u=[ue(e.data?.vendors??[]),X(d,"account_list"),We("class_list",l),ft(s),G(o),Ve(c),Se({files:a?.documents??[]}),ni("Completed",t.payload.vendorId,void 0),JO({vendorId:t.payload.vendorId}),wn(t.payload.vendorId)];return a!=null&&u.push(Nm({vendorId:t.payload.vendorId,localData:Am(gr(a),i.value,a)})),h(u)}return p(ni("Error",t.payload.vendorId,e.status))})),I((e=>p(ni("Error",t.payload.vendorId,f("Unexpected Error","Fetch vendors tab REST API call errored out"+JSON.stringify(e)))))))))),(n,i)=>n.pipe(S($K.match),A((r=>{const{shouldFetchAccruedExpenses:t,shouldFetchFixedAssets:e,shouldFetchOpexByVendor:a,shouldFetchPrepaidExpenses:s,shouldFetchVendorsList:o,shouldFetchFiling1099Vendor:c}=r.payload,d=i.value,l=[],u=RK(d),m=Fl(d,"fixed_assets"),_=Fl(d,"prepaid_expenses"),g=Fl(d,"accrued_expenses"),v=MK(d).fetchState,b=ed(d,"vendorsTab").fetchState;t===!0&&u==="Completed"&&g!=="In-Progress"&&g!=="Completed"&&l.push(vv("accrued_expenses",{selectedTimeframe:xs("accrued_expenses"),selectedCategoryId:"all"}));const E=VK(d).fetchState;return e===!0&&u==="Completed"&&m!=="In-Progress"&&m!=="Completed"&&l.push(Dc("fixed_assets",{selectedTimeframe:xs("fixed_assets"),selectedCategoryId:"all"})),s===!0&&u==="Completed"&&_!=="In-Progress"&&_!=="Completed"&&l.push(Dc("prepaid_expenses",{selectedTimeframe:xs("prepaid_expenses"),selectedCategoryId:"all"})),a&&v!=="In-Progress"&&v!=="Completed"&&l.push(lf()),o&&b!=="In-Progress"&&b!=="Completed"&&l.push(Rt({searchString:"",keepExistingListItems:!1,view:"vendorsTab"})),c&&E!=="In-Progress"&&E!=="Completed"&&l.push(Dl()),h(l)}))),(n,i,r)=>n.pipe(S(Xe.match),A((()=>r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendor/config`).pipe(y((t=>T(t)?p(LK(t)):p(DE(t.status)))),I((t=>p(DE(f("Unexpected Error","Fetch vendor types REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(Xj.match),y((r=>{const{cacheOverride:t}=r.payload,e=[],a=i.value;if(t===!0)e.push($e()),e.push(Qe()),e.push(na());else{const s=a.depositAccountListState,o=a.zeniAccountListState;(s.hasValidState()===!1&&s.fetchState!=="In-Progress"||o.summary==null)&&e.push($e());const c=a.paymentAccountListState;c.hasValidState()===!1&&c.fetchState!=="In-Progress"&&e.push(Qe());const d=a.zeniAccountsConfigState;d.hasValidState()===!1&&d.fetchState!=="In-Progress"&&e.push(na())}return j(h(e))}))),(n,i,r)=>n.pipe(S(na.match),A((()=>r.getJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/baas/config`).pipe(y((t=>{if(T(t)&&t.data!=null){const e=[G([t.data.mailing_address,t.data.bank_address]),rG(t.data)];return h(e)}return p(h0({error:t.status}))})),I((t=>p(h0({error:f("Unexpected Error","Fetch Zeni Accounts config REST API call errored out"+JSON.stringify(t))})))))))),(n,i,r)=>n.pipe(S(aG.match),A((t=>{const{companyId:e,cacheOverride:a,refreshViewInBackground:s}=t.payload,{zeniAccountSetupViewState:o,plaidAccountViewState:c,companyState:d}=i.value,l=Ue(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(T(u)&&u.data!=null){const m=u.data.accounts?.map((g=>g.account_id)),_=[F({users:u.data.users}),K(u.data.user_roles),H({payload:u.data.companies,schema:{}}),G(u.data.addresses??[]),Se({files:u.data.files??[]}),X(u.data.accounts??[],"zeni_accounts"),ve(u.data.payment_accounts),ea({data:u.data.payment_accounts,updateType:"replace"}),tt(u.data.deposit_accounts??[]),ta({data:u.data?.deposit_accounts??[],updateType:"replace"}),Le({companyId:u.data.companies[0].company_id}),ut(m,"account_setup"),y0()];return h(_)}return p(N({messageSection:"zeni_accounts_setup",messageText:"failed",type:"error"}),_0(u.status))})),I((u=>p(_0(f("Unexpected Error","Fetch Zeni Account Setup view errored out"+JSON.stringify(u)))))));{const{allBankAccountIds:u}=c.spend_management_setup.accountDetails;return p(Le({companyId:e}),ut(u,"account_setup"),y0())}}))),(n,i,r)=>n.pipe(S(Qs.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=>T(s)?p(FK({depositAccountId:e,data:s.data?.statements??[]})):p(JE({depositAccountId:e,fetchState:"Error",error:s.status})))),I((s=>p(JE({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(qK.match),y((r=>{const{cacheOverride:t,depositAccountId:e}=r.payload,a=[],s=i.value;if(t===!0)a.push(Qs(e)),e!==wE&&a.push(_n(e));else{if(e!==wE){const c=s.zeniAccountDetailState.depositAccountDetailById[e];(c==null||c.hasValidState()===!1&&c.fetchState!=="In-Progress")&&a.push(_n(e))}const o=s.zeniAccStatementListState.byDepositId[e];(o==null||o.hasValidState()===!1&&o.fetchState!=="In-Progress")&&a.push(Qs(e))}return j(h(a))}))),(n,i,r)=>n.pipe(S(He.match),A((()=>r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/users/zeni-users`).pipe(y((t=>{if(T(t)&&t.data!=null){const e=t.data.users.map((s=>s.user_id)),a=[F({users:t.data.users}),LC(e)];return h(a)}return p(vy(t.status))})),I((t=>p(vy(f("Unexpected error","Unable to fetch zeni users"+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(Bw.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(T(a)&&a.data!=null){const s=[Dw(a.data)];return h(s)}return p(kg(a.status))})),I((a=>p(kg(f("Unexpected error","Email Group REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(R$.match),A((t=>{const{linkTokenType:e,paymentAccountId:a}=t.payload;return r.getJSON(`${r.apiEndPoints.payMicroServiceBaseUrl}/1.0/plaid/link-token?query=${JSON.stringify(_T(e,a))}`).pipe(y((s=>{if(T(s)&&s.data!=null){const o=[M$(s.data.link_token,s.data.expiration,e)];return h(o)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),of(s.status,e))})),I((s=>p(of(f("Unexpected Error","Get Onboarding Plaid Link Token errored out"+JSON.stringify(s)),e)))))}))),(n,i,r)=>n.pipe(S(wc.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(T(c)&&c.data!=null){const d=c.data.payment_accounts.map((u=>u.payment_account_id)),l=[X(c.data.accounts,za(e)),ve(c.data.payment_accounts),mq(d,s)];return h(l)}return p(Sb(c.status,s))})),I((c=>p(Sb(f("Unexpected Error","Get Payment Accounts errored out"+JSON.stringify(c)),s)))))}))),(n,i,r)=>n.pipe(S(w$.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(_T(e,a))}`).pipe(y((o=>{if(T(o)&&o.data!=null){const c=[$$(o.data.link_token,o.data.expiration,e,s)];return h(c)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),sf(o.status,e,s))})),I((o=>p(sf(f("Unexpected Error","Get Plaid Link Token errored out"+JSON.stringify(o)),e,s)))))}))),(n,i,r)=>n.pipe(S(IU.match),Me((t=>t.payload.matchId)),y((t=>t.pipe(je((e=>{const{matchId:a,reason:s,note:o}=e.payload,c={reason:s,...o!=null&&o!==""?{note:o}:{}},d=(function(l,u){return xi(l.actualMatchingState,u)?.vendorName??""})(i.value,a);return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/actual-matching/${encodeURIComponent(a)}/ignore`,c).pipe(y((l=>{if(T(l)&&l.data!=null){const u=[u_(a),bU({matchId:a}),...Zl(i.value),Xl(d,!0)];return h(u)}return p(p_({matchId:a,status:l.status}),Xl(d,!1))})),I((l=>p(p_({matchId:a,status:f("Unexpected Error","Ignore actual matching suggestion REST API call errored out"+JSON.stringify(l))}),Xl(d,!1)))),_e(n.pipe(S(ke.match))))})))))),(n,i,r)=>n.pipe(S(VU.match),y((t=>{const e=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:a}}=e,{scheduleType:s,jeScheduleTransactionKey:o,reason:c,note:d}=t.payload,l=Q(e),u=a[l.tenantId],m=[],_=qt(o,e),g=((E,P,O)=>{const{vendorState:x}=O,{vendor:U,currencyCode:k,currencySymbol:C,baseTransaction:B,status:J,balanceAsOfToday:L,period:M,startDate:q,endDate:R,jeCredit:D,jeDebit:w}=P,z=U.id,ee=x.vendorByID[z];return{scheduled_journal_entries:[],je_schedules:[{status:J,vendor:wU(ee),currency_code:k,currency_symbol:C,period:M??null,je_schedule_type:E,posting_date:null,balance:NH(B,L),start_date:q?.format(re)??null,end_date:R?.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:JU(B),is_reviewed:!0}]}})(s,_,e),v={...g,je_schedules:g.je_schedules.map(((E,P)=>P===0?{...E,feedback:{reason:c,...d!=null&&d!==""?{note:d}:{}}}:E))},b={je_schedule_type:s};return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/ignore/${_.jeScheduleId}?query=${encodeURIComponent(JSON.stringify(b))}`,v).pipe(y((E=>{if(T(E)&&E.data!=null)return m.push(mt(E.data.je_schedules),Et(E.data.je_schedules,E.data.scheduled_journal_entries),LU(o),A_(o,u),it({tenantId:l.tenantId,period:u,refreshViewInBackground:!0}),N({messageSection:"ignore_schedule",messageText:"success",type:"success"})),h(m);{const P=[];return P.push(O_({status:E.status,jeScheduleTransactionKey:o})),P.push(N({messageSection:"ignore_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:E.status.message}]})),h(P)}})),I((E=>{const P=[];return P.push(O_({status:f("Unexpected Error","ignore JE schedules REST API call errored out"+JSON.stringify(E)),jeScheduleTransactionKey:o})),P.push(N({messageSection:"ignore_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(E)}]})),h(P)})))}))),(n,i,r)=>n.pipe(S(WO.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(ZO(d,e))}return p(Lm(f("Unexpected error","Ai-text-assist REST API call errored out"+JSON.stringify(c.status)),e))})),I((c=>p(Lm(f("Unexpected error","Ai-text-assist REST API call errored out"+JSON.stringify(c)),e)))))}))),(n,i,r)=>n.pipe(S(Jx.match),y((t=>{const{accountId:e}=t.payload,a=i.value,s=Q(a),o=a.expenseAutomationViewState.selectedPeriodByTenantId[s.tenantId],c=rt(a.accountState,e,"excluded_account_reconciliation"),d=Re(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(T(m)&&m.data!=null){const _=m.data.reconciliation,g=zn("excluded_account_reconciliation",_.account_id),v=zn("account_reconciliation",_.account_id);return p(Ei(o,[_]),wx({reconciliation:_,selectedPeriod:o}),My({oldKey:g,newKey:v}),N({messageSection:"account_included_in_reconciliation",messageText:"success",type:"success",variables:[{variableName:"_account-name_",variableValue:c?.accountName??""}]}))}return p(Ky({error:m.status}),N({messageSection:"account_included_in_reconciliation",messageText:"failed",type:"error"}))})),I((m=>p(Ky({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=xY)=>n.pipe(S(QP.match),Me((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(T(s)&&s.data!=null)return t(s.data.authorization_url),h([WP(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 h([ju(a.payload.tenantId,a.payload.provider,o)])})),I((s=>{const o=s instanceof Error?s.message:`Unexpected error starting ${a.payload.provider} connection.`;return h([ju(a.payload.tenantId,a.payload.provider,f(o))])}))))))))),(n,i)=>n.pipe(S(zy.match),y((()=>{const r=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:t},expenseAutomationReconciliationViewState:{selectedAccountId:e}}=r,a=t[Q(r).tenantId],s=[];if(e!=null){const o=wa(r,e,a),c=o?.transactionsToReconcile?.filter((u=>u.isTransactionChecked)),d=c?.map((u=>u.id))??[];s.push(Ur({selectedTransactionIds:d}));const l=pH(o?.transactionsToReview??[]);s.push(jy(l))}return h(s)}))),n=>n.pipe(S(Xu.match),y((()=>{const i=[];return i.push(Wu()),i.push(Hu()),i.push(Uo()),h(i)}))),n=>n.pipe(S(i_.match),y((()=>{const i=[];return i.push(r_()),i.push(s_()),h(i)}))),(n,i)=>n.pipe(S(XM.match),y((r=>{const{approvalRuleId:t}=r.payload,e=[];if(t!=null){const a=iI(i.value.approvalRuleState,t);if(a!=null){const s={approvalRuleId:t,steps:a.steps,criteria:{amount:lI(a.criteria),vendor:dI(a.criteria),department:cI(a.criteria)},name:a.name,description:a.description,separationOfDuties:a.separationOfDuties};e.push(uI(),pI(s))}}else{const a={steps:[],criteria:{}};e.push(uI(),pI(a))}return h(e)}))),(n,i)=>n.pipe(S(Qc.match),y((r=>{const{billId:t}=r.payload,e=i.value,a=Ie(t),s=Y(e.editBillDetailViewState.editBillStateById,a,void 0),o=Y(e.billDetailViewState.billDetailById,a,void 0),c=Y(e.billTransactionState.transactionById,t,void 0),{accountListState:d,accountState:l,classListState:u,classState:m,recurringBillState:_}=e,g=bu(l,d,"billPayAccountList"),v=_a(m,u),b=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 E=sP(e.vendorState,c.vendor?.id??"");if(E==null){const le=e.editBillDetailViewState.newBillState.suggestedVendorIdFromParsedInvoice;if(le!=null){const Pe=xe(e.vendorState,le);(Pe?.matchScore??0)>85&&(E=Pe)}}const{tenantState:P,companyState:O}=e,{currentTenantId:x}=P,U=x!=null?P.tenantsById?.[x]?.companyId:void 0,k=Ue(O,U??""),C=k?.company.companyInfo.bookCloseDate,B={invoiceNumber:c.documentId,billDueDate:c.dueDate!=null&&c.date!=null?oP(c.billPayInfo.stage.code,c.dueDate,c.date,C):c.dueDate,invoiceDate:Iu(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((le=>{J[le.id]={...le,...Nu(le.id,le,b,g,v,E)}}));const L=k?.company.companyBillPayInfo.payNowCutOffTimeByMethod.ach,M=L!=null&&ye().isSameOrBefore(L),q=c.billPayInfo.paymentDate??Z(bo(ye().toDate(),[0,6],M?0:1).toISOString()),R={paymentType:pV(e.billPayConfigState,c.billPayInfo.fromAccount.billAccountType,c.billPayInfo.billPaymentMethodType,c.billPayInfo.internationalTransferFeeBearerPaymentMethod),paymentDate:q,withdrawFrom:iP(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,z=c.billPayInfo.isCancelled,ee=c.attachments?.[0],W=c.candidateVendorName,pe=c.billPayInfo.toAccountVendorEmail,ne=c.billPayInfo.isCollectToAccountInfoFromVendorContact,ae=c.isRecurring;let me,he;if(ae){const{recurringConfigLocalData:le,recurringBillInstancesLocalData:Pe}=mV(_,c);me=le,he=Pe}const we=Uu(c.billPayInfo.billPaymentMethodType.code)?{paymentMode:c.billPayInfo.outsideZeniTransactionPaymentMode,paymentDate:c.billPayInfo.paymentDate}:void 0,Te=[St({billDetailLocalData:{showVendorGptRecommendationText:!1,vendor:E,whatForSection:B,updatesByLineId:J,paymentDetailsSection:R,totalAmount:D,recipientTotalAmount:w,isCancelled:z,file:ee,candidateVendorname:W,toAccountVendorEmail:pe,isCollectToAccountInfoFromVendorContact:ne,isRecurring:ae,recurringConfig:me,recurringBillInstances:he,outsideZeniPaymentLocalData:we},billId:t}),fI({billId:t})];return E?.vendorCurrencyCode!=null&&E.vendorCurrencyCode!=="USD"&&Te.push(Aa(!0,{amount:D.amount,currencyCode:E.vendorCurrencyCode,currencySymbol:E.vendorCurrencySymbol},"USD",t)),h(Te)}return h([fI({billId:t})])}))),(n,i)=>n.pipe(S(RL.match),y((r=>{const{userId:t}=r.payload,e=i.value.userState,a=i.value.userRoleState,s=Pt(e,t),o=Ic(a,t),c=[];if(s!=null&&o!=null){const d=s.birthday,l=s.phone,u=s?.isPhoneVerified,m=s?.syncToken,_={userId:t,dateOfBirth:d,phone:l,isPhoneVerified:u,syncToken:m};c.push(ML({localData:_}))}return h(c)}))),(n,i)=>n.pipe(S(km.match),y((r=>{const t=[],{companyId:e}=r.payload,a=i.value,{companyHealthMetricState:s}=a,o=VO(s,e);if(o!=null){const{netPromoterScore:c,externalProductServiceExposure:d,customerSatisfactionScore:l,additionalChurnFactors:u}=o;t.push(LO({companyId:e,updatedLocalData:{netPromoterScore:c,customerSatisfactionScore:l,externalProductServiceExposure:d?.code,additionalChurnFactors:u}}))}return j(h(t))}))),n=>n.pipe(S(Ez.match),Ee((i=>Tz(i.payload.transactionType)))),(n,i)=>n.pipe(S(OI.match),y((r=>{const{amount:t,vendorType:e}=r.payload,a=[],s=i.value,o=s.internationalWireState.createInternationalWireDetails.localData,c=AI(o?.currencyCode??"",t,e),d=s.internationalWireState.dynamicFormDetailsbyKey[c]??{};if(o!=null){const l={countryCode:o.countryCode,currencyCode:o.currencyCode,accountType:o.accountType,dynamicForm:AQ(d),source:o.source};a.push(xI(l))}return h(a)}))),(n,i)=>n.pipe(S(rR.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:Ic(s,t),update:nR(o,t)},d=c.user?.email,{userRoles:l,managerUserId:u,accountingClassIDs:m}=c.userRole,_=Q(i.value),g=xu(l,_.company);e.push(sR({peopleLocalData:[{email:d!=null?[d]:[],role:g,managerId:u,departmentId:m[0]}],person:c}))}return h(e)}))),(n,i)=>n.pipe(S(T_.match),y((r=>{const t=i.value,{jeScheduleLocalDataById:e}=t.expenseAutomationJESchedulesViewState,a=[],{jeScheduleTransactionKeys:s}=r.payload;return s.forEach((o=>{const c=t.jeSchedulesState.schedulesByTransactionKey[o];c?.scheduledJournalEntry.filter((d=>d.error.length>0)).forEach((d=>{const{scheduledJournalEntryID:l}=d;e[l]==null&&a.push(FU({localData:{jeScheduleType:c.jeScheduleType,jeScheduleID:c.jeScheduleId,scheduledJournalEntryID:l,updatedVendor:void 0,updatedCategoryId:void 0,updatedAccumulatedDepreciationCategoryID:void 0,updatedClassId:void 0},scheduledJournalEntryID:l}))}))})),h(a)}))),(n,i)=>n.pipe(S(GV.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=Ie(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(NI(d.currencyCode,c,l||"international_business",!1))}a.push(xI(d))}return h(a)}))),(n,i)=>n.pipe(S(UI.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(YV(o)),h(a)}))),(n,i)=>n.pipe(S(ug.match),y((r=>{const t=i.value,e=t.addressViewState.newAddressState?.[Es]?.addressToCreate,a=r.payload.address?.address_id;if(e!=null||a==null)return $;const s=st(t.addressState,a);return s!=null?p(Ye({addressType:Es,addressToCreate:s})):$}))),(n,i)=>n.pipe(S((r=>ND.match(r)||ms.match(r)||ys.match(r)||Qr.match(r))),y((r=>{const{id:t}=r.payload;if(t==null)return $;const e=i.value,a=e.addressViewState.newAddressState?.[Xr]?.addressToCreate,s=e.editInvoicingCustomerDetailViewState.billingAddressOwnerId;if(ms.match(r)&&s!=null&&s!==t)return $;if(a!=null&&s===t)return $;const o=Xh(e.invoicingCustomerState,t),c=o?.billingAddressId!=null?st(e.addressState,o.billingAddressId):void 0,d=[];return c!=null?d.push(Ye({addressType:Xr,addressToCreate:c})):a!=null&&d.push(Zi(Xr)),d.push(AD({id:t})),h(d)}))),(n,i)=>n.pipe(S((r=>jD.match(r)||en.match(r)||aS.match(r)||_s.match(r))),y((r=>{const{id:t}=r.payload;if(t==null)return $;const e=i.value,a=e.addressViewState.newAddressState?.[ur]?.addressToCreate,s=e.editInvoicingSubscriptionDetailViewState.shippingAddressOwnerId;if(en.match(r)&&s!=null&&s!==t)return $;if(a!=null&&s===t)return $;const o=GD(e.invoicingSubscriptionState,t),c=o?.shippingAddressId!=null?st(e.addressState,o.shippingAddressId):void 0,d=[];return c!=null?d.push(Ye({addressType:ur,addressToCreate:c})):a!=null&&d.push(Zi(ur)),d.push(zD({id:t})),h(d)}))),(n,i)=>n.pipe(S(xv.match),y((()=>{const r=i.value.tenantState.loggedInUser?.userId,t=[Na("user_address")];if(r==null)return t;const e=i.value.userState,a=i.value.userRoleState,s=Pt(e,r),o=Ic(a,r),c=o?.addressId!=null?st(i.value.addressState,o.addressId):void 0;if(c!=null&&t.push(Ye({addressType:"user_address",addressToCreate:c})),s!=null&&o!=null){const d=s.birthday,l=s.phone,u=s?.isPhoneVerified??!1,m=s?.syncToken,_={dateOfBirth:d,phone:l,isPhoneVerified:u,syncToken:m};t.push(mM({localData:_}))}return h(t)}))),(n,i)=>n.pipe(S(GU.match),y((r=>{const t=[],e=Jr(),{accountListState:a,classListState:s}=i.value;return a.byReportId[e.accountListKey]?.fetchState==="Not-Started"&&t.push(Ae(e.accountListKey,!0,!1,!1,!1,e.allowedAccountList)),s.fetchState==="Not-Started"&&t.push(se()),r.payload.shouldResetEnteredData&&(t.push(x_({scheduleType:r.payload.scheduleType})),t.push(zU())),h(t)}))),(n,i)=>n.pipe(S(Jw.match),y((r=>{const{isDebitCardFlagEnabled:t,companyId:e}=r.payload,a=[];if(e!=null){const s=ww(i.value.onboardingCustomerState,e),o=yc(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=Bg(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?$w(o.company.companyOnboardingInfo.onboardingInfo?.accountingConnectionCreationMode):void 0,selectedProducts:YH(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(Dg(),Jg(m),wg(m),_c());const _=o?.company.managementInfo.companyAddressId!=null?st(i.value.addressState,o?.company.managementInfo.companyAddressId):void 0;_!=null&&a.push(Ye({addressType:"company_address",addressToCreate:_}))}else a.push(Rw())}else{const s={companyEmailDomain:"",isOnboardingTenant:!0,userEmailWithPreOnboardSuccess:"",chargebeeId:"",isSubsidiary:void 0,groupId:"",groupName:"",groupDescription:"",name:"",customerName:{firstName:"",lastName:""},companyLegalName:"",email:"",qboRealmId:"",selectedProducts:[]};a.push(Dg(),Jg(s),wg(s),_c())}return h(a)}))),(n,i)=>n.pipe(S(oj.match),y((r=>{const{approvalRuleId:t}=r.payload,e=[];if(t!=null){const a=iI(i.value.approvalRuleState,t);if(a!=null){const s={approvalRuleId:t,steps:a.steps,criteria:{amount:lI(a.criteria),vendor:dI(a.criteria),department:cI(a.criteria)},name:a.name,description:a.description,separationOfDuties:a.separationOfDuties};e.push(Mb(),Vb(s))}}else{const a={steps:[],criteria:{}};e.push(Mb(),Vb(a))}return h(e)}))),(n,i)=>n.pipe(S(Pb.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 _=m.merchant?.id,g=_!=null?Dq(e.merchantState,_):void 0,{recommendedAccount:v}=Jq(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:v,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:v!=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 h([])}))),(n,i)=>n.pipe(S(Za.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=da(o,t)),s!=null&&d!=null){const l=((u,m)=>{const _=m.map((k=>({postingDate:k.expectedPostDate,amount:la(k.amount?k.amount.amount:0,k.currencyCode??"USD",k.currencySymbol??"$"),runningBalance:la(k.runningBalance?k.runningBalance.amount:0,k.currencyCode??"USD",k.currencySymbol??"$"),postingStatus:k.status.code,memo:k.memo,jeLink:gQ(k.thirdPartyID,k.transactionID,k.recommendedTransactionID,k.reversalTransactionDetails)}))),{startDate:g,period:v,jeDebit:b,jeCredit:E,memo:P,recurringAmount:O,vendor:x,otherAttributes:U}=u;return{scheduleType:"accrued_expenses",startingBalance:{amount:U.startingBalance?.amount??0,currencyCode:"USD",currencySymbol:"$"},jeScheduleDetails:_,selectedDate:g,selectedMonths:v,selectedAccount:b.account?.accountId,selectedClass:b.accountingClass?.classId,estimatedMonthlyAmount:O,memo:P,selectedVendor:x,selectedAccruedExpenseCategory:E.account?.accountId??""}})(d,d.scheduledJournalEntry);a.push(Cs({scheduleType:c,selectedJeScheduleDetailId:s,localData:{...k1,...l}}))}else a.push(Cs({scheduleType:c,localData:{...e.newScheduleState},selectedJeScheduleDetailId:void 0}));return h(a)}))),(n,i)=>n.pipe(S(cn.match),y((r=>{const t=i.value,{scheduleDetailState:e}=t,a=[],{selectedJeScheduleDetailId:s,selectedJEScheduleKey:o,scheduleType:c}=r.payload,d=qt(o,t);if(s!=null){const l=d.scheduledJournalEntry,u=c!=="fixed_assets"?j1(c,d,l):G1(d,l);a.push(ks({scheduleType:c,selectedJeScheduleDetailId:s,localData:{...z1[c],...u}}))}else a.push(ks({scheduleType:c,localData:{...e.newScheduleState[c]},selectedJeScheduleDetailId:void 0}));return h(a)}))),(n,i)=>n.pipe(S(mG.match),y((r=>{const{subscriptionId:t,tenantId:e}=r.payload,a=[];if(t!=null){const s=yG(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 _={subscriptionPlanId:o,subscriptionAddOnIds:c,subscriptionCouponIds:d,subscriptionId:t,invoiceImmediately:m,applyEndOfTerm:l,shouldProrate:u};a.push(O0({tenantId:e}),C0({tenantId:e,subscriptionData:_}))}}else{const s={subscriptionAddOnIds:[],subscriptionCouponIds:[],invoiceImmediately:!0};a.push(O0({tenantId:e}),C0({tenantId:e,subscriptionData:s}))}return h(a)}))),(n,i)=>n.pipe(S(Pl.match),y((r=>{const{taskId:t}=r.payload,e=i.value,a=Y(e.taskState.taskByID,t,void 0);if(a!=null){const s=Au(a),o=[lP({taskDetailLocalData:s,taskId:t}),pr({taskId:t,fetchState:"Completed"})];return h(o)}return h([pr({taskId:t,fetchState:"Completed"})])}))),(n,i)=>n.pipe(S(Cr.match),y((r=>{const{transactionId:t,vendorId:e}=r.payload,a=[],s=i.value.transactionState,o=Be(t),c=Ot(s,o);if(c!=null){const d=Ea(i.value.accountState,i.value.accountListState,"accountList"),l=Uz(c,e,d);a.push(kz({transactionId:t})),a.push(Bz({transactionId:t,transactionLocalData:l}))}return h(a)}))),(n,i)=>n.pipe(S(wn.match),y((r=>{const{vendorId:t}=r.payload,e=[Na("vendor_address")];if(t!=null){const a=xe(i.value.vendorState,t),s=a?.addressId!=null?st(i.value.addressState,a?.addressId):void 0;s!=null&&e.push(Ye({addressType:"vendor_address",addressToCreate:s}))}return h(e)}))),(n,i,r)=>n.pipe(S(AF.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=OF(s,d),m=CF(o,c),_=xF(u.depositAccounts,m.paymentAccounts,c.paymentAccountBalanceFetchStatus).find((v=>v.id===l.transferFrom?.id)),g={funding_account:{account_id:l.transferFrom?.id,account_type:qe(_?.accType)??""},idempotency_key:l.idempotencyKey,is_auto_pay_enabled:l.isAutoRepayment,amount:l.amount.amount};return _!=null&&l.transferFrom!=null?r.postAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/repayments`,g).pipe(y((v=>{if(T(v)&&v.data!=null){const b=[UF(v.data.card_repayment),kF({cardRepaymentId:v.data.card_repayment.card_repayment_id,zeniCreditAccountId:v.data.card_repayment.zeni_credit_account_id}),BF({amount:la(v.data.card_repayment.amount,v.data.card_repayment.currency_code,v.data.card_repayment.currency_symbol),date:Z(v.data.card_repayment.repayment_date)}),js({fetchState:"Completed",error:void 0})];return l.transferFrom!=null&&_?.accType!=null&&b.push(yn({companyId:a,primaryFundingAccountId:l.transferFrom.id,accountType:_.accType,productType:"charge_cards"}),DF({companyId:a,enableAutoPay:l.isAutoRepayment})),h(b)}return p(js({fetchState:"Error",error:v.status}))})),I((v=>p(js({fetchState:"Error",error:f("Unexpected Error","Initiate Charge Card Repayment REST API call errored out"+JSON.stringify(v))}))))):p(js({fetchState:"Error",error:f("Validation Error","Funding account not selected.")}))}))),(n,i)=>n.pipe(S(tv.match),A((r=>{const{reportIdToResync:t}=r.payload,e=[];switch(t){case"profit_and_loss_by_classes":e.push(Nf(!0));break;case"operating_expenses_by_classes":e.push(_f(!0));break;case"revenue_by_classes":e.push(av(!0));break;case"net_burn_or_income_by_classes":e.push(gg(!0))}return h(e)}))),(n,i)=>n.pipe(S(rv.match),A((r=>{const{reportIdToResync:t}=r.payload,e=[];switch(t){case"profit_and_loss_by_projects":e.push(Cf(!0));break;case"operating_expenses_by_projects":e.push(gf(!0));break;case"revenue_by_projects":e.push(nv(!0));break;case"net_burn_or_income_by_projects":e.push(Ig(!0))}return h(e)}))),(n,i,r)=>n.pipe(S(oR.match),A((()=>{const t=i.value.peopleState.personDetails.localData,e=Q(i.value),a=nQ(t,e.company);return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/invites`,a).pipe(y((s=>{if(T(s)){const o=[];return s.data?.user_roles&&co(o,s.data?.user_roles[0],!1),p(K(s.data?.user_roles??[]),F({users:s.data?.users??[]}),Ef(s.data),N({messageSection:a.invites.length>1?"people_invite_multiple_people":"people_invite_people",messageText:"success",type:"success"}),...o)}return p(Ns(s.status))})),I((s=>p(Ns(f("Unexpected error","User Roles REST API call errored out"+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(iR.match),A((t=>{const e=i.value.peopleState.personDetails.localData,a=sQ(e);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${t.payload.companyId}`,a).pipe(y((s=>{if(T(s)){const o=[];return s.data?.user_roles&&co(o,s.data?.user_roles[0],!0),p(K(s.data?.user_roles??[]),F({users:s.data?.users??[]}),Ef(s.data),N({messageSection:a.users.length>1?"people_invite_multiple_people":"people_invite_people",messageText:"success",type:"success"}),...o)}return p(Ns(s.status))})),I((s=>p(Ns(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(zB.match),y((()=>Sn("connect",r.postAndGetJSON(`${t()}/chargebee/connect`,{}))))),a=n.pipe(S(KB.match),y((d=>{const l=new FormData;return d.payload.files.forEach((u=>l.append("files",u,u.name))),Sn("upload",r.postFormData(`${t()}/uploads`,l))}))),s=n.pipe(S(YB.match),y((d=>Sn("start",r.postAndGetJSON(`${t()}/${encodeURIComponent(d.payload)}/import`,{}))))),o=n.pipe(S(HB.match),y((d=>Sn("retry",r.postAndGetJSON(`${t()}/${encodeURIComponent(d.payload)}/retry`,{}))))),c=n.pipe(S(QB.match),y((d=>Sn("rollback",r.postAndGetJSON(`${t()}/${encodeURIComponent(d.payload)}/rollback`,{})))));return et(e,a,s,o,c)},(n,i,r)=>n.pipe(S(GF.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(V(s)&&s.data!=null){const o=[],c=s.data.cards;o.push(ar(c),F({users:s.data.users}),K(s.data.user_roles),YI({chargeCardListPayload:s.data,keepExistingListItems:!0}),G(s.data.addresses),ub(s.data?.cards_count_by_user_id??[]),pb(s.data?.debit_cards_count_by_deposit_account_id??{}),zF(c.map((u=>u.card_id))),Gs({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(KF(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 h(o)}return p(Gs({fetchState:"Error",error:s.status}))})),I((s=>p(Gs({fetchState:"Error",error:f("Unexpected Error","Issue Charge Card REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(tw.match),y((()=>{const{draft:t}=i.value.invoicingIssueCreditNoteState,{invoiceId:e}=t,a=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices/${encodeURIComponent(e)}/issue-credit-note`,s=aw(t);return r.postAndGetJSON(a,s).pipe(y((o=>T(o)&&o.data!=null?[us([o.data],"merge"),tn({invoiceId:e}),rw({creditNoteId:o.data.id}),N({messageSection:"invoicing_credit_note_saved",messageText:"success",type:"success"})]:h([cg(o.status),N({messageSection:"invoicing_credit_note_saved",messageText:"failed",type:"error",variables:Ne(o.status)})]))),I((o=>h([cg(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(rF.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=>V(l)&&l.data!=null?p(pt(l.data),bd({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}]}),bd({chargeCardId:e,fetchState:"Error",error:l.status})))),I((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)}]}),bd({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Lock card API call errored out"+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(hF.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=>V(o)&&o.data!=null?p(ar(o.data),Ud({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}]}),Ud({fetchState:"Error",error:o.status})))),I((o=>p(N({messageSection:"lock_charge_cards",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(o)}]}),Ud({fetchState:"Error",error:f("Unexpected Error","Lock cards API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(K1.match),y((t=>{const e=i.value,{scheduleType:a,jeScheduleKey:s}=t.payload,o=[],c=qt(s,e),d=c.jeScheduleId,l=c.vendor.name,u=d!=null?e.scheduleDetailState.editScheduleStateByDetailId[a][d]:e.scheduleDetailState.newScheduleState[a],m={...Oc(e,u,s,a,!1,!0)},_={je_schedule_type:a};return(d!=null?r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${d}?query=${encodeURIComponent(JSON.stringify(_))}`,m):r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules?query=${encodeURIComponent(JSON.stringify(_))}`,m)).pipe(y((g=>T(g)&&g.data!=null?(o.push(Et(g.data.je_schedules,g.data.scheduled_journal_entries,"replace"),kc("Completed"),N({messageSection:"mark_as_complete_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:l}]})),h(o)):(o.push(kc("Error",g.status)),o.push(N({messageSection:"mark_as_complete_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:g.status.message}]})),h(o)))),I((g=>h([N({messageSection:"mark_as_complete_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(g)}]}),kc("Error",f("Unexpected Error",`Mark As Complete Schedule Detail REST API call errored out ${JSON.stringify(g)}`))]))))}))),(n,i,r)=>n.pipe(S(tE.match),y((t=>{if(t.payload.isExpenseAutomationEnabled===!0){const e=Be(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(T(o)){const c=[];c.push(sr(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(aE(e,!1));const{expenseAutomationViewState:l,expenseAutomationTransactionsViewState:u}=i.value,{transactionCategorizationView:m,selectedTransactionCategorizationTab:_}=u,g=Q(i.value)?.tenantId,{selectedPeriodByTenantId:v}=l,b=g!=null?v[g]:void 0,E=(m.autoCategorized.transactionReviewLocalDataById[d]?.transactionReviewLocalData.tabSpecificLineItems?.autoCategorized??[]).length>0,{uiState:P}=m[_],O=_==="review"?[d]:E?[]:[d];if(b!=null&&c.push(is(_,[d],O,b,"Completed")),E||c.push(ah({transactionIds:[d]})),O.length>0&&b!=null){const x=P.totalCount[be(b)]??0,U=Math.max(0,x-1);c.push(rs({selectedPeriod:b,selectedTab:_,totalCount:U}))}}return c.push(Bl({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"})),h(c)}return p(sr(t.payload.transactionId,"Error",o.status))})),I((o=>p(sr(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`,iW(t.payload.transactionId)).pipe(y((e=>{if(V(e)){const a=[];a.push(sr(t.payload.transactionId,"Completed",void 0));const s=Be(t.payload.transactionId);return a.push(aE(s,!1)),a.push(Bl({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"})),h(a)}return p(sr(t.payload.transactionId,"Error",e.status))})),I((e=>p(sr(t.payload.transactionId,"Error",f("Unexpected Error",`Transaction mark miscategorized as correct REST API call errored out ${e}`))))))}))),(n,i,r)=>n.pipe(S(EU.match),Me((t=>`${t.payload.transactionType.toLowerCase()}:${t.payload.transactionIntegrationId}`)),y((t=>t.pipe(je((e=>{const{transactionId:a,transactionIntegrationId:s,transactionType:o,lineIds:c,accrualIds:d,transactionSyncToken:l,forMatchModal:u}=e.payload,m={transaction_id:a,transaction_integration_id:s,transaction_type:o,line_ids:c,transaction_sync_token:l,accrual_ids:d},_=`${o.toLowerCase()}:${s}`,g=(function(v,b){return xi(v.actualMatchingState,b)?.vendorName??""})(i.value,_);return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/match-and-reverse`,m).pipe(y((v=>{if(T(v)&&v.data!=null){const b=v.data.results.map(bH),E=[TU({matchId:_,results:b,...u===!0?{forMatchModal:!0}:{}})],P=b.some((U=>m_(U.status))),O=b.length>0&&b.every((U=>m_(U.status)));P&&E.push(...Zl(i.value),Oi(_,!0));const x=(function(U,k){const C=U.filter((L=>L.status==="reversed")).length,B=U.filter((L=>{return(M=L.status)==="conflict"||M==="claim_lost"||M==="error";var M})).length,J=[{variableName:"_count_",variableValue:String(C)},{variableName:"_vendor_name_",variableValue:k}];return U.length===0||C===0&&B>0?N({messageSection:"actual_matching_match_and_reverse",messageText:"failed",type:"error",variables:J}):C>0&&B===0?N({messageSection:"actual_matching_match_and_reverse",messageText:"success",type:"success",variables:J}):C>0&&B>0?N({messageSection:"actual_matching_match_and_reverse",messageText:"notification",type:"warning",variables:J}):null})(b,g);return x!=null&&E.push(x),O&&u===!0&&E.push(PU()),h(E)}return p(y_({status:v.status,matchId:_,...u===!0?{forMatchModal:!0}:{}}),HE(g))})),I((v=>p(y_({matchId:_,...u===!0?{forMatchModal:!0}:{},status:f("Unexpected Error","Match and reverse accruals REST API call errored out"+JSON.stringify(v))}),HE(g)))),_e(n.pipe(S(ke.match))))})))))),(n,i,r)=>n.pipe(S(Hk.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(T(e)&&e.data!=null)return h([Qk(e.data)]);const a=e.status??f("Failed to register interest. Please try again.");return h([oh(a)])})),I((e=>{const a=e instanceof Error?e.message:"Unexpected error registering interest.";return h([oh(f(a))])})))))),(n,i,r)=>et(((t,e,a)=>t.pipe(S(tk.match),y((s=>{const o=e.value,{accrualId:c,amount:d}=s.payload,l=ak(S_(c),o.jeSchedulesState),u=o.expenseAutomationJESchedulesViewState.oneTimeAccrualLocalDataById[c],m=u?.jeDebitAccountId??l?.jeDebitAccountId,_=u?.jeCreditAccountId??l?.jeCreditAccountId;if(m==null||_==null)return h(sa("save_schedule",c,"This accrual is missing an expense or liability account."));const g=u?.reverseNextMonth??l?.reversalPolicy==="scheduled_date",v=u?.expectedReversalDate??l?.expectedReversalDate,b=u?.jeDebitAccountingClassId??l?.jeDebitAccountingClassId,E=u?.jeDebitAccountingClassName??l?.jeDebitAccountingClassName,P=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:_,...P!=null?{je_debit_account_name:P}:{},...O!=null?{je_credit_account_name:O}:{},...b!=null?{je_debit_accounting_class_id:b}:{},...E!=null?{je_debit_accounting_class_name:E}:{},...x!=null?{je_credit_accounting_class_id:x}:{},...U!=null?{je_credit_accounting_class_name:U}:{},reverse_next_month:g,...g&&v!=null?{expected_reversal_date:v.format(re)}:{}};return a.putAndGetJSON(`${a.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/${c}`,{...k}).pipe(y((C=>T(C)&&C.data!=null?h([Ft([C.data.accrual]),ki({accrualId:c}),rk({accrualId:c}),N({messageSection:"save_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:l?.vendorName??""}]}),...tu(e.value)]):h(sa("save_schedule",c,C.status.message,C.status)))),I((C=>h(sa("save_schedule",c,`Promote accrual REST API call errored out ${JSON.stringify(C)}`)))),_e(t.pipe(S(ke.match))))}))))(n,i,r),((t,e,a)=>t.pipe(S(ek.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=>T(u)&&u.data!=null?h([Ft([u.data.accrual]),ki({accrualId:o}),N({messageSection:"ignore_accrual",messageText:"success",type:"success"}),...tu(e.value)]):h(sa("ignore_accrual",o,u.status.message,u.status)))),I((u=>h(sa("ignore_accrual",o,`Ignore accrual REST API call errored out ${JSON.stringify(u)}`)))),_e(t.pipe(S(ke.match))))}))))(n,i,r),((t,e,a)=>t.pipe(S(XU.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=>T(u)&&u.data!=null?h([Ft([u.data.accrual]),ki({accrualId:o}),N({messageSection:"revert_accrual",messageText:"success",type:"success"}),...tu(e.value)]):h(sa("revert_accrual",o,u.status.message,u.status)))),I((u=>h(sa("revert_accrual",o,`Revert accrual REST API call errored out ${JSON.stringify(u)}`)))),_e(t.pipe(S(ke.match))))}))))(n,i,r)),yY,(n,i)=>n.pipe(S(Kz.match),y((r=>{const t=i.value.transactionListState,e=DT(r.payload.period).filter((a=>r.payload.cacheOverride!==!1||(function(s,o,c,d,l){const u=cE(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!"),h([]);{const a=e.map((s=>iE(r.payload.accountId,r.payload.accountType,r.payload.classId,s,!0)));return h(a)}}))),(n,i)=>n.pipe(S(fE.match),y((r=>{const t=i.value.transactionListState,e=(function(s,o=1){let c=Z(te(s.start));const d=Z(te(s.end));c=c.set("date",1);const l=Yz(d,o);c.isBefore(l)&&(c=l);const u=Math.ceil(d.diff(c,"month",!0)),m=[];if(u>=0){let _=c.clone().set("date",1);for(let g=0;g<u-1;++g){const v=_.daysInMonth();m.push({start:{day:1,month:_.month()+1,year:_.year()},end:{day:v,month:_.month()+1,year:_.year()}}),_=_.add(1,"month")}m.push({start:{day:_.date(),month:_.month()+1,year:_.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=uE(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!"),h([]);{const s=a.map((o=>lE(r.payload.entity,o,!0)));return h(s)}}))),(n,i)=>n.pipe(S(Hz.match),y((r=>{const t=i.value.transactionListState,e=DT(r.payload.period).filter((a=>r.payload.cacheOverride!==!1||(function(s,o,c,d,l){const u=yE(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!"),h([]);{const a=e.map((s=>mE(r.payload.accountId,r.payload.accountType,r.payload.projectId,s,!0)));return h(a)}}))),(n,i)=>n.pipe(S(Qz.match),y((r=>{const{transactionCategoryType:t,minimumTransactionAmount:e}=r.payload,a=i.value.transactionListState,s=Wz(r.payload.period).filter((o=>r.payload.cacheOverride!==!1||(function(c,d,l){const u=SE(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!"),h([]);{const o=s.map((c=>hE(!0,t,c,e)));return h(o)}}))),(n,i,r)=>n.pipe(S($x.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=>T(c)===!0&&c.data!=null?h([Yn({accountId:e,selectedPeriod:a,parsedStatementData:Rx(c.data)}),Yy({accountId:e,selectedPeriod:a})]):p(Hn({accountId:e,selectedPeriod:a,error:c.status})))),I((c=>p(Hn({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(td.match),y((r=>{const{invoiceProcessingPayload:t,isVendorRecommendationFeatureEnabled:e,billId:a}=r.payload,s=i.value,o=a!=null?Ie(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=nd.billDetailLocalData.vendor,m=!1;const _=t.vendors.length>0?t.vendors[0].vendor_name??"":void 0,g=t.bills.length>0?t.bills[0].currency_code:"USD";let v="";const b=ed(s).vendors;let E,P,O=!1;if(_!=null&&_.length>0&&(u=b.filter((C=>C.name.toLowerCase()===_.toLowerCase()))[0],u==null)){const C=c?.suggestedVendorIdFromParsedInvoice??s.editBillDetailViewState.newBillState.suggestedVendorIdFromParsedInvoice;if(C!=null){P=xe(s.vendorState,C);const B=P?.matchScore??0;v=P?.vendorCurrencyCode??"USD",e?P?.name.toLowerCase()===_.toLowerCase()?v===g?(u=P,O=!0,E=P?.id):m=!0:(E=P?.id,u=P,O=!0):B>85&&(v===g?(u=P,O=!0):m=!0)}}const x=Rs(t.files[0]),U={...EQ(s,O,t.bills[0],u,E),file:x},k=TQ(U,m,_,g,v);if(u!=null){let C=[];return u.vendorCurrencyCode!=null&&u.vendorCurrencyCode!=="USD"&&C.push(Aa(!0,{amount:U.recipientTotalAmount?.amount??0,currencyCode:u.vendorCurrencyCode,currencySymbol:u.vendorCurrencySymbol},"USD")),C=[...C,St({billDetailLocalData:U,billId:a}),ia(u.qboId,!1),Fc(u.name,u.id,U.totalAmount?.amount??0,U.recipientTotalAmount?.amount??0,U.whatForSection?.invoiceNumber),Xc(!1),Rn({addBillAutoFields:k,billId:a}),rd({fetchState:{fetchState:"Completed",error:void 0},billId:a})],h(C)}{const C=[St({billDetailLocalData:U,billId:a}),Xc(!1),Rn({addBillAutoFields:k,billId:a}),rd({fetchState:{fetchState:"Completed",error:void 0},billId:a})];return E!=null&&P!=null&&C.push(ia(P.qboId,!1)),h(C)}}{const u=Rs(t.files[0]);return p(St({billDetailLocalData:{...nd.billDetailLocalData,file:u},billId:a}),Rn({addBillAutoFields:nd.addBillAutoFields,billId:a}),rd({fetchState:{fetchState:"Completed",error:void 0},billId:a}))}}))),(n,i)=>n.pipe(S(wq.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=Q(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 _=t.files.map((g=>Rs(g)));return p(Kd({remiDetailLocalData:{...d.remiDetailLocalData,files:d.remiDetailLocalData.files!=null?[...d.remiDetailLocalData.files,..._]:_,updatesByLineId:u},reimbursementId:a}),Nb({reimbursementId:a,fetchState:"Completed"}))}{const m=[],_=[],g={};t.merchants.forEach((x=>{x.merchant_id&&(g[x.merchant_id]=$q(x))}));const v={},b={};let E=e;const P=Rq(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=P.filter((L=>L.name.toLowerCase()===C.toLowerCase()))[0]),u[E]={lineId:String(E),type:"out_of_pocket",fileId:x.file_id??"",homeCurrencyConversions:{amount:x.amount,currencyCode:x.currency_code??"USD",currencySymbol:x.currency_symbol??"$"},outOfPocket:{...kQ(c.accountState,c.classState,x,B,l)},mileage:{}},x.currency_code!=="USD"&&_.push(Tb("USD",E.toString(),a)),v[E]=BQ(u[E]);const J=DQ(u[E],C);J!=null&&J!==""&&(b[E]=J),B!=null?m.push(qd(!1,E.toString(),a,B.id,void 0)):m.push(qd(!1,E.toString(),a,void 0,b[E])),E++}));const O=t.files.map((x=>Rs(x)));return m.push(Kd({remiDetailLocalData:{...d.remiDetailLocalData,files:d.remiDetailLocalData.files!=null?[...d.remiDetailLocalData.files,...O]:O,updatesByLineId:u},reimbursementId:a}),Mq({reimbursementId:a,addRemiAutoFields:v}),Vq({reimbursementId:a,tentativeMerchantNameByLineId:b}),..._,Nb({reimbursementId:a,fetchState:"Completed"})),o!=null&&m.push(Yd(o,!0,a)),h(m)}}))),(n,i,r)=>n.pipe(S(Mx.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=>T(c)===!0&&c.data!=null?h([Yn({accountId:e,selectedPeriod:a,parsedStatementData:Vx(c.data)}),Yy({accountId:e,selectedPeriod:a})]):p(Hn({accountId:e,selectedPeriod:a,error:c.status})))),I((c=>p(Hn({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(aq.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=rq({target:e,fileId:s});return r.postAndGetJSON(c,d).pipe(y((u=>{if(!T(u)||u.data==null)return p(l);const m=u.data.files?.[0]?.extracted_data;if(m==null)return p(l);let _;switch(o){case"certificate_of_incorporation":_=(v=>{const b={values:{},autoFilledFieldNames:[]};if(oe(v.company_legal_name)&&de(b,"companyLegalName",v.company_legal_name.value),oe(v.ein)&&de(b,"taxIdOrEIN",v.ein.value),oe(v.phone_number)&&de(b,"phone",v.phone_number.value),oe(v.product_description)&&de(b,"companyDescription",v.product_description.value),oe(v.website))try{de(b,"website",eq(v.website.value))}catch{}if(oe(v.industry)&&de(b,"companyIndustryType",v.industry.value),oe(v.sub_industry)&&de(b,"companySubIndustry",v.sub_industry.value),oe(v.type_of_incorporation)&&de(b,"typeOfIncorporation",v.type_of_incorporation.value),oe(v.date_of_incorporation)){const E=pu(v.date_of_incorporation.value);E!=null&&de(b,"incDate",E)}return oe(v.state_of_incorporation)&&de(b,"stateOfIncorporation",v.state_of_incorporation.value),oe(v.countries_of_operations)&&de(b,"countriesOfOperations",v.countries_of_operations.value),oe(v.source_of_funds)&&de(b,"sourceOfFunds",v.source_of_funds.value),oe(v.transaction_volume_expectations)&&de(b,"transactionVolume",v.transaction_volume_expectations.value),oe(v.purpose_of_account)&&de(b,"purposeOfAccount",v.purpose_of_account.value),oe(v.regulated_status)&&de(b,"regulatedStatus",v.regulated_status.value),oe(v.us_nexus)&&de(b,"usNexus",v.us_nexus.value),b})(m);break;case"tax_ein":_=(v=>{const b={values:{},autoFilledFieldNames:[]};return oe(v.legal_business_name)&&de(b,"companyLegalName",v.legal_business_name.value),oe(v.ein)&&de(b,"taxIdOrEIN",v.ein.value),b})(m)}if(_.autoFilledFieldNames.length===0)return p(l);const g=e==="setup"?nq({companyId:a,fileId:s,values:_.values,autoFilledFieldNames:_.autoFilledFieldNames}):sq({companyId:a,fileId:s,values:_.values,autoFilledFieldNames:_.autoFilledFieldNames});return p(g)})),I((()=>p(l))))}))),(n,i,r)=>n.pipe(S(oq.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=iq({target:e,fileId:o});return r.postAndGetJSON(d,l).pipe(y((m=>{if(!T(m)||m.data==null)return p(u);const _=m.data.files?.[0]?.extracted_data;if(_==null)return p(u);let g;switch(c){case"passport":g=(b=>{const E={values:{},autoFilledFieldNames:[]};if(oe(b.first_name)&&de(E,"firstName",b.first_name.value),oe(b.last_name)&&de(E,"lastName",b.last_name.value),oe(b.date_of_birth)){const P=pu(b.date_of_birth.value);P!=null&&de(E,"birthday",P)}return oe(b.nationality)&&de(E,"nationalityCountryCode",b.nationality.value),E})(_);break;case"driving_license":g=(b=>{const E={values:{},autoFilledFieldNames:[]};if(oe(b.first_name)&&de(E,"firstName",b.first_name.value),oe(b.last_name)&&de(E,"lastName",b.last_name.value),oe(b.date_of_birth)){const k=pu(b.date_of_birth.value);k!=null&&de(E,"birthday",k)}const P=oe(b.address_street)?b.address_street.value.trim():void 0,O=oe(b.address_city)?b.address_city.value.trim():void 0,x=oe(b.address_state)?b.address_state.value.trim():void 0,U=oe(b.address_zip)?b.address_zip.value.trim():void 0;return P==null&&O==null&&x==null&&U==null||(E.address={street:P!=null?[P]:[],city:O??"",state:x??"",postalCode:U??"",country:"USA",countryCode:"US"},E.autoFilledFieldNames.push("officerAddress")),E})(_);break;case"social_security_card":g=(b=>{const E={values:{},autoFilledFieldNames:[]};if(oe(b.full_name)){const{firstName:P,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}})(b.full_name.value);P!==""&&de(E,"firstName",P),O!==""&&de(E,"lastName",O)}return E})(_)}if(g.autoFilledFieldNames.length===0)return p(u);const v=[e==="setup"?cq({companyId:a,officerType:s,fileId:o,values:g.values,autoFilledFieldNames:g.autoFilledFieldNames}):dq({companyId:a,officerType:s,fileId:o,values:g.values,autoFilledFieldNames:g.autoFilledFieldNames})];if(g.address!=null){const b=`${s.toLowerCase()}_address`;v.push(Ye({addressType:b,addressToCreate:g.address}))}return h(v)})),I((()=>p(u))))}))),(n,i,r)=>n.pipe(S(dR.match),y((t=>{const{localData:e,person:a}=i.value.peopleState.personDetails,{userRole:s}=a,{isZeniTenant:o}=t.payload,c=Q(i.value),d=oQ(e[0],o,a,c.company);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user-roles/${s.userRoleId}`,d).pipe(y((l=>{if(T(l)&&l.data!=null){const u=[K(l.data?.user_roles??[]),lR(),N({messageSection:"people_update_person",messageText:"success",type:"success"})];return l.data?.user_roles&&co(u,l.data?.user_roles[0]),h(u)}{const u=[Tf(l.status)];return h(u)}})),I((l=>p(Tf(f("Unexpected error","User Roles save updates errored out"+JSON.stringify(l)))))))}))),(n,i)=>n.pipe(S(Co.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?$:p(wu(e,a,s))}))),(n,i,r)=>n.pipe(S(wu.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(!V(c)||c.data?.wizard_plan?.step_5_review==null)return p($u(c.status));const d=c.data,l=d.wizard_plan.step_5_review,u={step5Review:{draftPolicies:(l.draft_policies??[]).map(((_,g)=>({id:`draft-${g}`,name:_.name,description:_.description??"",mode:_.mode,allowedEntity:{categoryCodes:_.allowed_entity?.category_codes??[],merchantNames:_.allowed_entity?.merchant_names??[]},blockedEntity:{categoryCodes:_.blocked_entity?.category_codes??[],merchantNames:_.blocked_entity?.merchant_names??[]},applyToCards:_.apply_to_cards??[],requiredReceiptThreshold:_.required_receipt_threshold??0,spendLimits:{transaction:_.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(MP(),RP({answerId:e,chatSessionId:a,wizardPlan:u,source:m}),$P(u,m))})),I((c=>p($u(f("Unexpected Error","Policy recommendation from upload REST API call errored out"+JSON.stringify(c)))))),_e(n.pipe(S(Bu.match))))}))),(n,i,r)=>n.pipe(S((t=>$r.match(t)||Ra.match(t))),y((t=>{const{batchId:e}=t.payload;let a=!1;const s=Ra.match(t)?5e3:3e4;return cr(s,1e4).pipe(_e(et(n.pipe(S(es.match)),n.pipe(S($i.match),S((o=>o.payload.batchId===e&&o.payload.status==="completed"))),n.pipe(S($a.match),S((o=>o.payload.batchId===e))),n.pipe(S(K_.match),S((o=>o.payload.batchId===e))))),A((()=>r.getJSON(`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/batches/${e}`).pipe(y((o=>{if(T(o)&&o.data!=null&&yo(o.data.status)){const c=[],d=_o(o.data.files);return d.length>0&&c.push(De(d,(l=>l.transaction_id))),c.push($a(ho(o.data,r.apiEndPoints.fileMicroServiceBaseUrl))),c.push(Rr({cacheOverride:!0})),h(c)}return $})),I((()=>a?$:(a=!0,p(N({messageSection:"receipts_upload",messageText:"failed",type:"error"})))))))))}))),(n,i)=>n.pipe(S(Lt.match),y((r=>{const t=i.value,{period:e,isAccrualEnabled:a}=r.payload,{selectedPageTab:s}=t.expenseAutomationJESchedulesViewState.uiState,o=[],c=sk.filter((u=>u!==s&&u!=="actual_matching")),d=Q(t),l=t.expenseAutomationViewState.selectedPeriodByTenantId[d.tenantId];if(l!=null&&c.forEach((u=>{const m=Ni(u,be(l));t.expenseAutomationJESchedulesViewState.jeScheduleTransactionKeysByPeriodAndTab[m]!=null||o.push(lr(e,!0,u))})),a===!0&&s!=="actual_matching"){const u=be({month:e.start.month,year:e.start.year});t.expenseAutomationActualMatchingViewState.matchIdsByPeriod[u]==null&&o.push(Ci(e,!0))}return o.length===0?$:h(o)}))),n=>n.pipe(S($i.match),S((i=>i.payload.status==="completed")),Dr(300),y((i=>h([Rr({cacheOverride:!0}),G_({batchId:i.payload.batchId})])))),_Y,(n,i,r)=>n.pipe(S(nw.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=sw(e);return r.postAndGetJSON(u,m).pipe(y((_=>T(_)&&_.data!=null?[Va([_.data],"merge"),tn({invoiceId:a}),dg({invoiceId:a}),N({messageSection:"invoicing_payment_recorded",messageText:"success",type:"success"})]:h([vs(_.status),N({messageSection:"invoicing_payment_recorded",messageText:"failed",type:"error",variables:Ne(_.status)})]))),I((_=>h([vs(f("Unexpected Error","Record payment REST API call errored out "+JSON.stringify(_))),N({messageSection:"invoicing_payment_recorded",messageText:"failed",type:"error"})]))))}const s=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/payments`,o=ow(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(T(u)&&u.data!=null){const m=[fs([u.data],"merge"),iw(u.data.id),dg({transactionId:u.data.id})];return c!=null&&m.push(tn({invoiceId:c})),m.push(N({messageSection:"invoicing_payment_recorded",messageText:"success",type:"success"})),m}return h([vs(u.status),N({messageSection:"invoicing_payment_recorded",messageText:"failed",type:"error",variables:Ne(u.status)})])})),I((u=>h([vs(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=>Nk.match(i)||Ak.match(i))),y((()=>p(Mr(void 0,!0))))),(n,i,r)=>n.pipe(S(G_.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 $;const o=r.getJSON(`${r.apiEndPoints.communicationAgentMicroServiceBaseUrl}/1.0/batches/${e}`).pipe(y((c=>{if(!T(c)||c.data==null||!yo(c.data.status))return $;const d=[],l=_o(c.data.files);return l.length>0&&d.push(De(l,(u=>u.transaction_id))),d.push(mo(ho(c.data,r.apiEndPoints.fileMicroServiceBaseUrl))),h(d)})),I((c=>(console.error(`Failed to refresh batch details for ${e}:`,f("Unexpected Error","Refresh batch details errored out: "+JSON.stringify(c))),p($T({batchId:e}))))));return j(p(Ok({batchId:e,timestamp:a})),o)}))),(n,i)=>n.pipe(S(sU.match),A((()=>{const r=i.value,t=Q(r),e=t.companyId,{selectedTransactionCategorizationTab:a}=r.expenseAutomationTransactionsViewState,{selectedPeriodByTenantId:s,currentSelectedView:o}=r.expenseAutomationViewState,c=s[t.tenantId],{selectedAccountId:d}=r.expenseAutomationReconciliationViewState,l=Re(c),u=ge(l.start),m=ge(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 h([Br({start:u,end:m},{amount:75,currencyCode:"USD",currencySymbol:"$"},!0,!0)]);case"flux_analysis":return h([Wn(c,!0,!0,null)]);case"je_schedules":return h([Lt({start:u,end:m},!0)]);case"month_end_insights":return h([Mm(!0,e,t.tenantId,l.end,!0),$m(e,t.tenantId)]);case"reconciliation":return h(d!=null?[Vt(c,d,!0,!0)]:[Vt(c,void 0,!0,!0)]);default:return h([kr(a,{start:u,end:m},!0,!1,void 0,void 0,!0,void 0)])}}))),(n,i,r)=>n.pipe(S(yM.match),A((()=>{const t=[];return r.getJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/settings/refresh-all-entities`).pipe(Jp(3e3),y((e=>T(e)&&e.data!=null?(t.push(N({messageSection:"data_refresh_update",messageText:"success",type:"success"}),_M()),h(t)):(t.push(Uv()),h(t)))),I((()=>(t.push(Uv()),h(t)))))}))),(n,i,r)=>n.pipe(S(j$.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?Z(t.status.last_refresh_success_time):void 0;return p(G$({lastRefreshSuccessTime:e}))}return p(yf(t.status))})),I((t=>p(yf(f("Unexpected error","Refresh OpEx by Vendor REST API call errored out: "+JSON.stringify(t)))))))))),(n,i,r)=>n.pipe(S(JK.match),y((t=>{const{merchantId:e}=t.payload,{globalMerchantState:a,vendorGlobalReviewViewState:s}=i.value,{vendorGlobalByMerchantId:o}=s,c=o[e].vendorGlobalReviewViewLocalData,d=UE(a,kE(c.tenantId,e));if(c!=null&&d!=null){const l=Array({globalMerchants:go(a,c.recommendationIds)}),u=Array({globalMerchants:c.recommendedNonExistingGlobalMerchants}),m=Io(l,u),_={...NW(d,m)};return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/reviews/global-merchant-list/${e}`,_).pipe(y((g=>{if(V(g)){const v=[{variableName:"_merchant_name_",variableValue:d.tenantMerchantName}],b=[wK(e),N({messageSection:"reject_global_merchant",messageText:"success",type:"success",variables:v})];return h(b)}return g.status.code===409?p(Ll({merchantId:e,status:g.status})):p(Ll({merchantId:e,status:g.status}),N({messageSection:"reject_global_merchant",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:g.status.message}]}))})),I((g=>p(Ll({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(eV.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(T(o)&&o.data!=null){const c=o.data.approval_rules.map((l=>l.approval_rule_id)),d=[at(o.data.approval_rules),tV(c),N({messageSection:"bill_pay_approval_reorder",messageText:"success",type:"success"})];return h(d)}{const c=[mI(o.status),N({messageSection:"bill_pay_approval_reorder",messageText:"failed",type:"error"}),Kc(!0,!0,a)];return h(c)}})),I((o=>h([mI(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(ij.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(T(o)&&o.data!=null){const c=o.data.approval_rules.map((l=>l.approval_rule_id)),d=[at(o.data.approval_rules),cj(c),N({messageSection:"reimbursement_approval_reorder",messageText:"success",type:"success"})];return h(d)}return h([Lb(o.status),N({messageSection:"reimbursement_approval_reorder",messageText:"failed",type:"error"}),tl(!0,!1,!1,a)])})),I((o=>h([Lb(f("Unexpected Error","Reorder Reimbursement Approval Rules errored out"+JSON.stringify(o))),N({messageSection:"reimbursement_approval_reorder",messageText:"failed",type:"error"}),tl(!0,!1,!1,a)]))))}))),(n,i,r)=>n.pipe(S(Lx.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(T(o)===!0&&o.data!=null){const c=Ja(e,a);return h([Fx(c,o.data),qx({accountId:e,selectedPeriod:a})])}return p(Hy({accountId:e,selectedPeriod:a,error:o.status}))})),I((o=>p(Hy({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(u1.match),y((t=>{const{reportIdToResync:e}=t.payload,a=p1(e)||m1(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(T(o)){const c=[a?rv({reportIdToResync:e}):tv({reportIdToResync:e}),y1({hasNewData:o.status.code===200})];return h(c)}return h([sv({error:o.status}),N({messageSection:"reports_resync",messageText:"failed",type:"error"})])})),I((o=>h([sv({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(SF.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=>V(a)?p(pt(a.data),gF({cardId:t.payload.cardId}),N({messageSection:"charge_card_resend_invite",messageText:"success",type:"success"})):p(eb(a.status)))),I((a=>p(eb(f("Unexpected Error","Resend Charge Card REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(pR.match),y((t=>r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/invites`,{is_reinvited:!0,user_id:t.payload.userId}).pipe(y((e=>T(e)?p(K([e.data]),mR(t.payload.userId),N({messageSection:"people_invite_people",messageText:"success",type:"success"})):p(Pf(t.payload.userId)))),I((()=>p(Pf(t.payload.userId)))))))),hY,(n,i,r)=>n.pipe(S(kR.match),A((t=>r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/company-referrals`,{reinvite_to:t.payload.emailId}).pipe(y((e=>V(e)&&e.data!=null?[BR({emailId:t.payload.emailId,timestamp:e.data.last_invite_timestamp}),N({messageSection:"referral_invite_sent",messageText:"success",type:"success"})]:p(Os(e.status)))),I((e=>p(Os(f("Unexpected error","Resend referral REST API call errored out"+JSON.stringify(e)))))))))),SY,(n,i,r)=>n.pipe(S(lq.match),y((()=>r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/kyc-kyb-reset`,{is_reset_company_officers:!1}).pipe(y((t=>T(t)?h([uq(),N({messageSection:"kyc_kyb_reset",messageText:"success",type:"success"})]):h([_b(t.status),N({messageSection:"kyc_kyb_reset",messageText:"failed",type:"error"})]))),I((t=>h([_b(f("Unexpected error","Reset KYC/KYB errored out: "+(t instanceof Error?t.message:JSON.stringify(t)))),N({messageSection:"kyc_kyb_reset",messageText:"failed",type:"error"})]))))))),(n,i,r)=>n.pipe(S(fO.match),y((t=>{const e=[];if(t.payload.vendorId!=null){const a=xe(i.value.vendorState,t.payload.vendorId);a!=null&&e.push(Bn({vendorId:t.payload.vendorId,localData:ME(a)}))}else e.push(Bn({localData:{},vendorId:void 0}));return h(e)}))),(n,i,r)=>n.pipe(S(bm.match),y((t=>{const e=[];if(t.payload.vendorId!=null){const a=xe(i.value.vendorState,t.payload.vendorId);a!=null&&e.push(Sr({vendorId:t.payload.vendorId,localData:so(a,i.value)}))}else e.push(Sr({localData:void 0,vendorId:void 0}));return h(e)}))),(n,i,r)=>n.pipe(S(Om.match),y((t=>{const e=[],a=xe(i.value.vendorState,t.payload.vendorId);return a!=null&&e.push(Nm({vendorId:t.payload.vendorId,localData:Am(a,i.value)})),h(e)}))),(n,i,r)=>n.pipe(S(Ck.match),y((()=>{const t=i.value,{expenseAutomationMissingReceiptsViewState:{bulkUpload:e},expenseAutomationViewState:{selectedPeriodByTenantId:a}}=t;if(e.phase!=="idle")return $;if(e.batchListFetchState.fetchState==="In-Progress")return $;const s=t.tenantState.loggedInUser?.userId;if(s==null)return $;const o=a[Q(t).tenantId];if(o==null)return $;const{end:c,start:d}=au(R_),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/`,_=be(o),g=(e.batchListByPeriod[_]??[]).length>0&&e.batchListFetchState.fetchState==="Completed";return(g?p(null):r.getJSON(u).pipe(I((()=>p(null))))).pipe(y((v=>{const b=g?e.batchListByPeriod[_]??[]:v!=null&&T(v)&&v.data!=null?v.data.batches.map(M_):null;if(b==null)return $;const E=g?null:ts({batchList:b,selectedPeriod:o}),P=b.filter((x=>{const U=x.status.toLowerCase();return U==="processing"||U==="pending"})),O=h(P).pipe(Ma((x=>r.getJSON(`${m}${x.batchId}`).pipe(y((U=>{if(!T(U)||U.data==null)return $;const k=U.data,C=k.user_id;return C==null||C!==s?$:xk(k.status)?p(Ra({batchId:x.batchId,totalFiles:x.totalFiles})):$})),I((()=>$))))),Oe(1));return E!=null?j(p(E),O):O})))}))),(n,i,r)=>n.pipe(S(oy.match),A((t=>{const{companyId:e}=t.payload,a=Oa(i.value.tenantState,e);return a==null?h([vt({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=>T(s)&&s.data!=null?s.data.is_accounting_provider_project_apis_enabled!==!0||s.data.is_accounting_projects_enabled!==!0?h([vt({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"})]):h([ny({enabled:!0,tenantId:a}),sy(),N({messageSection:"accounting_projects_enabled_update",messageText:"success",type:"success"})]):h([vt({status:s.status}),N({messageSection:"accounting_projects_enabled_update",messageText:"failed",type:"error"})]))),I((s=>p(vt({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(v1.match),y((t=>{const{companyId:e}=t.payload,a=i.value,s=Ue(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(T(d)&&d.data!=null){const l=[];return l.push(I1({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"})),h(l)}return p(pv({companyId:e,error:d.status}),N({messageSection:"retry_bank_account_connection",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}))})),I((d=>p(pv({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(qw.match),y((t=>{const{companyId:e}=t.payload,a=i.value,s=yc(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(T(d)&&d.data!=null){const l=[];return l.push(jw({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"}),Gw({companyId:e,onboardingInfo:d.data.companies[0].onboarding_info})):l.push(N({messageSection:"retry_bank_account_connection",messageText:"failed",type:"error"})),h(l)}return p($g({companyId:e,error:d.status}),N({messageSection:"retry_bank_account_connection",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}))})),I((d=>p($g({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)}]}))))):h([])}))),(n,i,r)=>n.pipe(S(ok.match),A((t=>{const e=i.value,{expenseAutomationJESchedulesViewState:{jeScheduleLocalDataById:a},expenseAutomationViewState:{selectedPeriodByTenantId:s}}=e,o=Q(e),c=s[o.tenantId],{scheduledJournalEntryID:d,jeScheduleTransactionKey:l}=t.payload,u=a[d];if(u==null)return h([]);const m={...AH(u)};return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/retry_sje_posting`,m).pipe(y((_=>{if(V(_)){const g=[],v=(e.jeSchedulesState.schedulesByTransactionKey[l]?.scheduledJournalEntry.filter((b=>b.error.length>0))??[]).filter((b=>b.scheduledJournalEntryID!==d)).length===0;return g.push(ik({scheduledJournalEntryID:d}),ck(l,d),dk({scheduledJournalEntryID:d}),it({tenantId:o.tenantId,period:c,refreshViewInBackground:!0}),N({messageSection:"je_posted",messageText:"success",type:"success"})),v&&g.push(lk(l,c)),h(g)}{const g=[];return g.push(D_({status:_.status,scheduledJournalEntryID:d})),g.push(N({messageSection:"je_posted",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:_.status.message}]})),h(g)}})),I((_=>{const g=[];return g.push(D_({status:f("Unexpected Error","retry JE schedule posting REST API call errored out"+JSON.stringify(_)),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(LJ.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=>T(s)?p(FJ({status:s.data?.status??"",taskId:s.data?.task_id??e}),sc(),N({messageSection:"invoicing_qbo_sync_health_retry",messageText:"success",type:"success"})):h([XS({status:s.status,taskId:e}),N({messageSection:"invoicing_qbo_sync_health_retry",messageText:"failed",type:"error",variables:Ne(s.status)})]))),I((s=>h([XS({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(qM.match),y((t=>{const{billId:e,actionType:a}=t.payload,{editBillDetailViewState:s}=i.value,o=Ie(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?qe(er(u?.withdrawFrom?.accType)):null}}}}else l=`${l}/payment/refund`;return r.putAndGetJSON(l,d).pipe(y((u=>{if(T(u)){const m=[];return u.data!=null&&u.data.transactions[0]?.transaction_id!=null&&m.push(Ds(u.data.transactions[0])),m.push(jM(t.payload.billId,t.payload.actionType)),m.push(N({messageSection:t.payload.actionType==="refund"?"bill_pay_refund":"bill_pay_retry",messageText:"success",type:"success"})),h(m)}return p(Wv(e,t.payload.actionType,u.status),N({messageSection:"bill_pay_cancelled_deleted",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:u.status.message}]}))})),I((u=>p(Wv(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(uk.match),y((t=>{const e=i.value,{expenseAutomationViewState:{selectedPeriodByTenantId:a}}=e,{jeScheduleId:s,jeScheduleTransactionKey:o,reason:c,note:d,scheduleType:l}=t.payload,u=Q(e),m=a[u.tenantId],_={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`,_).pipe(y((g=>T(g)&&g.data!=null?h([pk({jeScheduleTransactionKey:o}),l==="accrued_expenses"?mk(o):A_(o,m),it({tenantId:u.tenantId,period:m,refreshViewInBackground:!0}),N({messageSection:"revert_schedule",messageText:"success",type:"success"})]):h([J_({jeScheduleTransactionKey:o,status:g.status}),N({messageSection:"revert_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:g.status.message}]})]))),I((g=>h([J_({jeScheduleTransactionKey:o,status:f("Unexpected Error",`Revert schedule REST API call errored out ${JSON.stringify(g)}`)}),N({messageSection:"revert_schedule",messageText:"failed",type:"error"})]))),_e(n.pipe(S(ke.match))))}))),(n,i,r)=>n.pipe(S(vj.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(V(a)){const s=[];return s.push(Ij(a.data?.validation_results??[])),h(s)}return p(Yb(a.status))})),I((a=>p(Yb(f("Unexpected Error","Remi bulk review action REST API call errored out "+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(dU.match),y((t=>{const{actionType:e,operatingExpenseIds:a,selectedPeriod:s}=t.payload,o={...hH(e,a)},c=Q(i.value);return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/month-close/flux-analysis
2
- `,o).pipe(y((d=>{if(T(d)&&d.data!=null){const l=[];return l.push(X(d.data.accounts,"account_list"),We("class_list",d.data.accounting_class),ue(d.data.vendors,"merge"),F({users:d.data.users,updateType:"merge"})),d.data.flux_analysis_entities!=null&&l.push(lU({expensesPayload:d.data.flux_analysis_entities?.operating_expenses??[],currency:d.data.currency,selectedPeriod:s})),c!=null&&l.push(it({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"}]})),h(l)}return p(a_({operatingExpenseIds:a,status:d.status}))})),I((d=>p(a_({operatingExpenseIds:a,status:f("Unexpected Error","review flux analysis view REST API call errored out"+JSON.stringify(d))})))))}))),(n,i,r)=>n.pipe(S(fF.match),A((t=>{const{cardId:e}=t.payload;return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${e}/cancel-issue-request`).pipe(y((a=>V(a)?p(vF(e),N({messageSection:"charge_card_revoke_invite",messageText:"success",type:"success"})):p(tb(a.status)))),I((a=>p(tb(f("Unexpected Error","Revoke Charge Card REST API call errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(IF.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=>V(s)&&s.data!=null?p(kd({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}]}),kd({fetchState:"Error",error:s.status,revokedCardIds:[]})))),I((s=>p(N({messageSection:"revoke_invite_charge_cards",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(s)}]}),kd({fetchState:"Error",error:f("Unexpected Error","Revoke invite charge cards API call errored out"+JSON.stringify(s)),revokedCardIds:[]})))))}))),(n,i,r)=>n.pipe(S(XB.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=>T(c)&&c.data!=null?[Wr([c.data],"merge"),eD({id:a})]:p(Rh({error:c.status,id:a})))),I((c=>p(Rh({error:f("Unexpected Error","Catalog plan action REST API call errored out "+JSON.stringify(c)),id:a})))))}))),(n,i,r)=>n.pipe(S(tD.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=>T(l)&&l.data!=null?[...s!=null?[Mh(s,l.data)]:[],aD({id:d})]:p(Vh({error:l.status,id:d})))),I((l=>p(Vh({error:f("Unexpected Error","Catalog product action REST API call errored out "+JSON.stringify(l)),id:d})))))}))),(n,i,r)=>n.pipe(S(mD.match),y((t=>{const{action:e,id:a}=t.payload,s={action:e},o=MH[e],c=(l,u)=>o==null?[]:[N({messageSection:o,messageText:l,type:l==="success"?"success":"error",variables:Ne(u)})],d=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/discounts/${encodeURIComponent(a)}/actions`;return r.postAndGetJSON(d,s).pipe(y((l=>T(l)&&l.data!=null?[ls([l.data],"merge"),yD({id:a}),...c("success")]:h([jh({error:l.status,id:a}),...c("failed",l.status)]))),I((l=>h([jh({error:f("Unexpected Error","Discount action REST API call errored out "+JSON.stringify(l)),id:a}),...c("failed")]))))}))),(n,i,r)=>n.pipe(S(AJ.match),y((t=>{const{action:e,body:a,id:s}=t.payload,o=KH[e],c=(l,u)=>o==null?[]:[N({messageSection:o,messageText:l,type:l==="success"?"success":"error",variables:Ne(u)})],d=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/dunning/${encodeURIComponent(s)}/${e}`;return r.postAndGetJSON(d,a??{}).pipe(y((l=>T(l)&&l.data!=null?[ac([l.data],"merge"),OJ({id:s}),...c("success")]:h([DS({error:l.status,id:s}),...c("failed",l.status)]))),I((l=>h([DS({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=>eJ.match(t)&&t.payload.action!=="issue-credit-note")),y((t=>{const{action:e,body:a,invoiceId:s}=t.payload,o=zH[e],c=(l,u)=>o==null?[]:[N({messageSection:o,messageText:l,type:l==="success"?"success":"error",variables:Ne(u)})],d=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices/${encodeURIComponent(s)}/${e}`;return r.postAndGetJSON(d,a??{}).pipe(y((l=>T(l)&&l.data!=null?[Va([l.data],"merge"),G(Kr([l.data])),cS({invoiceId:s}),...c("success")]:h([Ss({error:l.status,invoiceId:s}),...c("failed",l.status)]))),I((l=>h([Ss({error:f("Unexpected Error","Invoice action REST API call errored out "+JSON.stringify(l)),invoiceId:s}),...c("failed")]))))}))),(n,i,r)=>n.pipe(S(QJ.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=>T(c)&&c.data!=null?[fs([c.data],"merge"),WJ({id:s})]:p(sg({error:c.status,id:s})))),I((c=>p(sg({error:f("Unexpected Error","Payment action REST API call errored out "+JSON.stringify(c)),id:s})))))}))),(n,i,r)=>n.pipe(S(KD.match),y((t=>{const{action:e,body:a,id:s}=t.payload,o={action:e,...a??{}},c=GH[e],d=(u,m)=>c==null?[]:[N({messageSection:c,messageText:u,type:u==="success"?"success":"error",variables:Ne(m)})],l=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/subscriptions/${encodeURIComponent(s)}/actions`;return r.postAndGetJSON(l,o).pipe(y((u=>T(u)&&u.data!=null?[qa([u.data],"merge"),G(Fa([u.data])),YD({id:s}),...d("success")]:h([oS({error:u.status,id:s}),...d("failed",u.status)]))),I((u=>h([oS({error:f("Unexpected Error","Subscription action REST API call errored out "+JSON.stringify(u)),id:s}),...d("failed")]))))}))),(n,i,r)=>n.pipe(S(cA.match),y((t=>{const{scheduleId:e}=t.payload;return r.postAndGetJSON(`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/routines/${encodeURIComponent(e)}/run`,{}).pipe(y((a=>V(a)?p(dA(),gt(),Ip({scheduleId:e})):p(xp(a.status)))),I((a=>p(xp(f("Unexpected Error","Run routine REST API call failed",a instanceof Error?{message:a.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(iN.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=[ko({status:f("No Account Mapping Data to Save")})];return h(e)}return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts`,{accounts:t}).pipe(y((e=>{if(V(e)){const a=[Nn(),cN(),N({messageSection:"settings_accounting_accounts_updated",messageText:"success",type:"success"})];return h(a)}{const a=[ko({status:e.status})];return h(a)}})),I((e=>p(ko({status:f("Unexpected error","Save Account Mapping REST API call errored out"+JSON.stringify(e))})))))}))),(n,i,r)=>n.pipe(S(yU.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,SH),o(e.selectedFixedAssetsAccountIds,e.previousFixedAssetsAccount,gH),o(e.selectedAccruedExpensesAccountIds,e.previousAccruedExpensesAccount,fH),a})(i.value.expenseAutomationJESchedulesViewState.accountSettings.localData);if(t.length===0){const e=[Ai({status:f("No Account Mapping Data to Save")})];return h(e)}return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts`,{accounts:t}).pipe(y((e=>{if(V(e)){const a=[_U(),N({messageSection:"settings_accounting_accounts_updated",messageText:"success",type:"success"})];return h(a)}{const a=[Ai({status:e.status})];return h(a)}})),I((e=>p(Ai({status:f("Unexpected error","Save Account Mapping REST API call errored out"+JSON.stringify(e))})))))}))),(n,i,r)=>n.pipe(S(ZP.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(T(e))return h([XP(t.payload.tenantId,t.payload.connectionType,e.data)]);const a=e.status??f("Failed to save connection. Please try again.");return h([Gu(t.payload.tenantId,a)])})),I((e=>{const a=e instanceof Error?e.message:"Unexpected error saving connection.";return h([Gu(t.payload.tenantId,f(a))])})))))),(n,i,r)=>n.pipe(S(BV.match),y((t=>{const e=i.value,{billStageCode:a,billId:s,isForMarkAsPaid:o,isApproverMarkingAsPaid:c}=t.payload,d=Ie(s??""),l=s!=null?e.editBillDetailViewState.editBillStateById[d]:e.editBillDetailViewState.newBillState,u=(function(g,v,b,E,P,O,x,U){const k=P.billId;let C;const B=P.billDetailLocalData.paymentDetailsSection?.withdrawFrom,J=gc(b,B?.id??"")?.zeniAccountId,L=!!P.billDetailLocalData.isRecurring,M={vendor_id:P.billDetailLocalData.vendor?.qboId??"",vendor_name:P.billDetailLocalData.vendor?.name??"",candidate_vendor_name:P.billDetailLocalData.vendor?.qboId!=null?void 0:P.addBillAutoFields.tentativeVendorName??P.billDetailLocalData.candidateVendorname,ocr_parsed_vendor_term:P.addBillAutoFields.tentativeVendorName?P.addBillAutoFields.tentativeVendorName:null,transaction_type:"bill",bill_pay_provider:"zeni",account_id:J!=null?rt(g,J,"bill_pay")?.qboId:"",file_id:P.billDetailLocalData.file?.fileId??"",transaction_date:P.billDetailLocalData.whatForSection?.invoiceDate?.format("YYYY-MM-DD")??ye().format("YYYY-MM-DD"),due_date:P.billDetailLocalData.whatForSection?.billDueDate?.format("YYYY-MM-DD")??null,total_amount:P.billDetailLocalData.totalAmount?.amount??0,recipient_total_amount:P.billDetailLocalData.recipientTotalAmount?.amount??0,bill_pay_info:{stage:{code:O},payment_date:PQ(P.billDetailLocalData),from_account:{account_id:P.billDetailLocalData.paymentDetailsSection?.withdrawFrom?.id??"",account_type:qe(P.billDetailLocalData.paymentDetailsSection?.withdrawFrom?.accType)??""},to_account:{...P.billDetailLocalData.paymentDetailsSection?.paymentType?.method.includes("international")===!0?{payment_instrument_id:P.billDetailLocalData.isCollectToAccountInfoFromVendorContact?null:P.billDetailLocalData.paymentDetailsSection?.paymentTo??null}:{account_id:P.billDetailLocalData.isCollectToAccountInfoFromVendorContact?null:P.billDetailLocalData.paymentDetailsSection?.paymentTo??null}},to_account_vendor_email:P.billDetailLocalData.toAccountVendorEmail??null,is_collect_to_account_info_from_vendor_contact:P.billDetailLocalData.isCollectToAccountInfoFromVendorContact,is_cancelled:!1,bill_payment_method_type:EP(P.billDetailLocalData.paymentDetailsSection?.paymentType),international_transfer_fee_bearer_payment_method:P.billDetailLocalData.paymentDetailsSection?.paymentType?.method.includes("international")===!0&&P.billDetailLocalData.vendor?.vendorCurrencyCode==="USD"?P.billDetailLocalData.paymentDetailsSection.internationalTransferFeeBearerPaymentMethod??"swift_our":null,outside_zeni_transaction_payment_mode:P.billDetailLocalData.outsideZeniPaymentLocalData?.paymentMode??null,bill_payment_status:{code:x?"mark_as_paid":null}},document_id:P.billDetailLocalData.whatForSection?.invoiceNumber,transaction_memo:P.billDetailLocalData.whatForSection?.memo,currency_code:P.billDetailLocalData.whatForSection?.currencyCode??"USD",recipient_currency_code:P.billDetailLocalData.whatForSection?.recipientCurrencyCode??"USD",lines:Object.keys(P.billDetailLocalData.updatesByLineId).map((q=>{const R=P.billDetailLocalData.updatesByLineId[q],D=(w=R,{account:kV,class:UV,...w});var w;return JV(D)}))};if(L||(M.vendor_name=P.billDetailLocalData.vendor?.name??""),k!=null?(C=Y(v.transactionById,k,void 0),M.sync_token=C?.syncToken??null,M.update_time=C?.updateTime.format("YYYY-MM-DD")??null,U&&(M.is_outside_zeni_bill_marked_as_paid_by_approver=!0),C?.isRecurring===!0&&!P.billDetailLocalData.isRecurring&&(M.is_recurring=!1)):M.are_approvals_serialized=!0,O==="pending_approval"&&P.billDetailLocalData.paymentDetailsSection?.conversionRate!=null&&(M.exchange_rate=1/P.billDetailLocalData.paymentDetailsSection.conversionRate),P.billDetailLocalData.isRecurring){M.is_recurring=!0;const q=P.billDetailLocalData.recurringConfig,R=P.billDetailLocalData.recurringBillInstances;if(q!=null&&(M.recurring_bill_config=wV(q)),q?.id!=null){const D=Y(E.recurringBillDetailByConfigId,q.id),w=$V(q,D.recurringBillConfig,!0);if(M.is_update_recurring_bill_config=w,M.is_update_future_recurring_bills=q.updateRecurringBills==="all",!w&&q.updateRecurringBills!=="all"||M.recurring_bill_config==null||(M.recurring_bill_config.sync_token=D.recurringBillConfig.syncToken),R!=null){const z=R.filter((ee=>!ee.readonly)).slice(1).map((ee=>PT(ee,P.billDetailLocalData.paymentDetailsSection?.paymentType?.maxPeriod?.value??PI)));M.future_recurring_bill_instances=z,M.recurring_bill_config!=null&&(M.recurring_bill_config.future_total_payment_cycles=z?.length,delete M.recurring_bill_config.total_payment_cycles)}}else M.recurring_bill_instances=R?.map((D=>PT(D,P.billDetailLocalData.paymentDetailsSection?.paymentType?.maxPeriod?.value??PI)))}return M})(e.accountState,e.billTransactionState,e.paymentAccountState,e.recurringBillState,l,a,o,c),m=l.billDetailLocalData.isRecurring,_=`${r.apiEndPoints.spendManagementMicroServiceBaseUrl}/1.0/bills/transactions`;return(s!=null?r.putAndGetJSON(TT(_,m,s,e.billTransactionState),u):r.postAndGetJSON(TT(_,m),u)).pipe(y((g=>{if(T(g)&&g.data?.transactions[0]?.transaction_id!=null){const v=[Ds(g.data.transactions[0])];return m&&v.push(Lc(g.data.recurring_bill_configs??[]),Yv(g.data.recurring_bill_instances??[])),v.push(sd("Completed",t.payload.billId),N({messageSection:NQ(o,a),messageText:"success",type:"success"})),h(v)}return p(sd("Error",t.payload.billId,g.status),N({messageSection:"bill_pay_updated",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:g.status.message}]}))})),I((g=>p(sd("Error",t.payload.billId,f("Unexpected Error",`REST API call errored out ${JSON.stringify(g)}`))))))}))),(n,i,r)=>n.pipe(S(aV.match),A((t=>{const{billPaySetupApproverViewState:e}=i.value,a=e.billPaySetupApproverViewUpdateData;if(a!=null&&a.data!=null){const{useV3:s}=t.payload,o=s?IT(a.data):bT(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(T(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,_=[F({users:d.data.users}),at(d.data.approval_rules),N({messageSection:`bill_pay_${a.type}`,messageText:"success",type:"success"}),rV(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(yI(d.status)),h(l)}})),I((d=>p(yI(f("Unexpected Error","Save Bill Pay Approval View Updates errored out"+JSON.stringify(d)))))))}return h([])}))),(n,i,r)=>n.pipe(S(NG.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=>T(d)?p(AG(),k0()):p(D0({error:d.status})))),I((d=>p(D0({error:f("Unexpected Error","Save Canned Response errored: "+JSON.stringify(d))})))))}))),(n,i)=>n.pipe(S(VL.match),y((()=>{const r=i.value.cardUserOnboardingState.cardUserOnboardingLocalData;return h([Dv("CardUserOnboarding",r?.phone,r?.otpChallenge,r?.dateOfBirth)])}))),(n,i,r)=>n.pipe(S(hM.match),y((t=>{const{companyId:e}=t.payload;let a;const{newAddressState:s}=i.value.addressViewState,o=It(i.value,e,[]);return o!=null&&s?.subscription_billing_address.addressToCreate!=null?(a=vQ(s.subscription_billing_address.addressToCreate,o.company.company.companyInfo.syncToken),r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,a).pipe(y((c=>{if(T(c)&&c.data!=null){const d=[H({payload:c.data.companies,schema:{}}),G(c.data.addresses)];return d.push(SM()),h(d)}return p(N({messageSection:"billing_address_view",messageText:"failed",type:"error"}),kv(c.status))})),I((c=>p(kv(f("Unexpected Error","Save Billing Address Details errored out"+JSON.stringify(c)))))))):h([])}))),(n,i,r)=>n.pipe(S(FO.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((_=>_.code)),m=l.decreasingChurnProbability.map((_=>_.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((_=>{if(T(_)&&_.data!=null){const g=[];return g.push(H({payload:_.data.companies,schema:{}})),g.push(xm({payload:_.data.company_health_metrics})),g.push(km(e)),g.push(qO({companyId:e})),h(g)}return p(Bm({companyId:e,error:_.status}))})),I((_=>p(Bm({companyId:e,error:f("Unexpected Error","Save Company Health Metric By Id REST API call errored out"+JSON.stringify(_))})))))}))),(n,i,r)=>n.pipe(S(XO.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,_=m.companyState.companiesById[a],g=m.companyState.companiesById[a].companyInfo.name,v=u??_.companyInfo.tenantId,b=Fm(ye()),E=ye(),P=[];if(d!=null&&d!=null){const U=qm(m.fileState,d);U!=null&&P.push({data:U.base64String,id:U.fileId,name:U.fileName})}const O={template_data:VE(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:b,last_report_sent_date:E.format(re),...l!==void 0&&{zeni_requests_html:l===""?null:l},files:P},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":v}).pipe(y((U=>{if(V(U)&&U.data!=null){const k=[eC(a,c,U.data)];return c||(k.push(jm({companyId:a,isInDraftMode:!0})),k.push(N({messageSection:"cockpit_month_end_email_save",messageText:"success",type:"success",variables:[{variableName:"_company-name_",variableValue:g}]}))),h(k)}return p(Gm(a,"Error",c,U.status))})),I((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(gC.match),y((()=>{const r=i.value,t=[],e=r.companyViewState.passportView;e.primaryContact.localData!=null&&t.push(iy(e.companyIds[0],e.primaryContact.localData)),Object.values(e.companyOfficerUpdateStatus).forEach((s=>{s.localData!=null&&s.localData.email&&s.localData.userId!=null&&t.push(cy(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(ey(e.companyIds[0],a)),e.companyDetails.localData!=null&&t.push(dy(e.companyIds[0],e.companyDetails.localData)),h(t)}))),(n,i,r)=>n.pipe(S(eN.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(T(e)&&e.data!=null)return h([tN(t.payload.tenantId,t.payload.connectionType,t.payload.connectionName,e.data)]);const a=e.status??f("Failed to save connection. Please try again.");return h([zu(t.payload.tenantId,t.payload.connectionName,a)])})),I((e=>{const a=e instanceof Error?e.message:"Unexpected error saving connection.";return h([zu(t.payload.tenantId,t.payload.connectionName,f(a))])})))))),(n,i,r)=>n.pipe(S(ix.match),A((t=>{const{instructions:e}=t.payload,a=i.value.creditAgentEntityState.macro;if(a==null)return h([yi(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=>T(c)&&c.data!=null?h([Ny(c.data),cx(),N({messageSection:"credit_agent_save_macro",messageText:"success",type:"success"})]):h([yi(c.status),N({messageSection:"credit_agent_save_macro",messageText:"failed",type:"error"})]))),I((c=>h([yi(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(xx.match),y((t=>{const e=i.value,{reconcileAction:a}=t.payload,{expenseAutomationViewState:{selectedPeriodByTenantId:s},expenseAutomationReconciliationViewState:{selectedAccountId:o,reconTabsState:{balances:c}}}=e,d=s[Q(e).tenantId];let l,u;o!=null&&(l=wa(e,o,d),u=l?.reconciliationId);let m={};return l!=null&&(m=(function(_,g,v,b,E,P){const{balance:O,initialClearedBalance:x}=b,{expenseAutomationReconciliationViewState:{selectedAccountId:U,reconTabsState:{reconcile:{localData:{selectedTransactionIds:k}}}}}=_,C=Re(g,!0),B=(function(L,M){const q=[];return M.transactionsToReconcile.map((D=>({...D,isTransactionChecked:L.includes(D.id)}))).forEach((D=>{const w=kx(D);q.push(w)})),q})(k,b),J=(function(L){const M=[];return L.transactionsToReview.forEach((q=>{const R=Bx(q);M.push(R)})),M})(b);return{action:E.reconcileAction==="save_reconcile_for_later"?"save_for_later":E.reconcileAction,account_type:"bank",bank_balance:O?.amount??0,cleared_balance:v.clearedBalance.amount,variance:v.variance.amount,currency_code:O?.currencyCode,transactions:{reconcile:B,review:J},...x?.amount!=null?{initial_cleared_balance:x.amount}:{},...P==="POST"?{account_id:U,start_date:C.start,end_date:C.end}:{},...E.reconcileAction==="exclude"?{exclude_transaction_ids:[E.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((_=>{if(T(_)&&_.data!=null){const g=[],v=zE(_.data.reconciliation[0].transactions.reconcile),b=Ly(_.data.reconciliation);if(g.push(bi(b,"merge")),g.push(Ei(d,_.data.reconciliation)),g.push(Ur({selectedTransactionIds:v})),t.payload.reconcileAction==="exclude"){if(o!=null){const E=Ja(o,d);g.push(Fy(E,t.payload.excludeTransactionId))}g.push(qy({reconcileAction:a,excludeTransactionId:t.payload.excludeTransactionId}))}else t.payload.reconcileAction!=="reconcile"&&t.payload.reconcileAction!=="save_reconcile_for_later"||g.push(qy({reconcileAction:t.payload.reconcileAction}),Ux({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??""}]}:{}})),h(g)}{const g=[];return t.payload.reconcileAction==="exclude"?g.push(Kn({fetchStateByAction:{reconcileAction:t.payload.reconcileAction,excludeTransactionId:t.payload.excludeTransactionId},error:_.status})):t.payload.reconcileAction!=="reconcile"&&t.payload.reconcileAction!=="save_reconcile_for_later"||g.push(Kn({fetchStateByAction:{reconcileAction:t.payload.reconcileAction},error:_.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??""}]})),h(g)}})),I((_=>{const g=[];return t.payload.reconcileAction==="exclude"?g.push(Kn({fetchStateByAction:{reconcileAction:t.payload.reconcileAction,excludeTransactionId:t.payload.excludeTransactionId},error:f(`Unexpected Error occured while ${GE(t.payload.reconcileAction)}`,"save REST API call errored out"+JSON.stringify(_))})):t.payload.reconcileAction!=="reconcile"&&t.payload.reconcileAction!=="save_reconcile_for_later"||g.push(Kn({fetchStateByAction:{reconcileAction:t.payload.reconcileAction},error:f(`Unexpected Error occured while ${GE(t.payload.reconcileAction)}`,"save REST API call errored out"+JSON.stringify(_))})),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??""}]})),h(g)})))}))),(n,i,r)=>n.pipe(S(jx.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[Q(e).tenantId];let m,_,g;l!=null&&(m=wa(e,l,u),_=m?.reconciliationId,g=m?.transactionsToReview.find((P=>P.transactionId===s)));const v={review_action:g?.recommendedAction.action,reconciliation_id:_??"",ref_account_id:l,ref_account_name:m?.account.accountName,ref_account_type:m?.account.accountType};let b={};if(m!=null&&g!=null&&o!=null)switch(g.recommendedAction.action){case"record_expense":case"record_cc_credit":b=mH(g,o);break;case"record_bill_payment":{const P=g.recommendedAction.recommendedTransactions.find((O=>O.bookTransactionId===o.matchedTransactionId));b=yH(g,P,o,m?.account.accountType);break}case"record_transfer":b=(function(P,O){return{account_id:O.bankAccountId,amount:P.amount.amount,transaction_memo:P.memo,line_description:O.memo,transaction_date:P.transactionDate.format(re),transaction_direction:P.transactionDirection,transaction_id:P.transactionId,currency_code:P.amount.currencyCode}})(g,o);break;case"record_cc_payment":b=(function(P,O,x){return{account_id:x==="credit_card"?O.bankAccountId:O.creditCardId,amount:P.amount.amount,transaction_memo:P.memo,line_description:O.memo,transaction_date:P.transactionDate.format(re),transaction_direction:P.transactionDirection,transaction_id:P.transactionId,currency_code:P.amount.currencyCode}})(g,o,m?.account.accountType);break;case"record_deposit":b=(function(P,O,x){const U=O.customer?.id!=null?zx(x,[O.customer?.id])[0]?.zeniId:void 0;return{amount:P.amount.amount,transaction_memo:P.memo,line_description:O.memo,transaction_date:P.transactionDate.format(re),transaction_direction:P.transactionDirection,transaction_id:P.transactionId,customer_id:U,customer_name:O.customer?.name,account_id:O.categoryId,accounting_class_id:O.classId,currency_code:P.amount.currencyCode}})(g,o,a)}b={...b,is_recommendation_operation_selected:v.review_action===g?.recommendedAction.action};const E=_H(g);return r.postAndGetJSON(`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/review?query=${encodeURIComponent(JSON.stringify(v))}`,b).pipe(y((P=>{if(T(P)&&P.data!=null){const O=[];if(O.push(Ti({transactionId:s,fetchState:"Completed"}),bi([{allReconciledTransactions:[P.data.reconciliation],currencyPayload:{currency_code:g?.amount.currencyCode??Qn.currencyCode,currency_symbol:g?.amount.currencySymbol??Qn.currencySymbol}}],"merge")),l!=null){const x=Ja(l,u);O.push(Fy(x,s),Gx(x,P.data.reconciliation.transaction_id),Ur({selectedTransactionIds:[...c.selectedTransactionIds,P.data.reconciliation.transaction_id]}))}return O.push(N({messageSection:E,messageText:"success",type:"success"})),h(O)}{const O=[];return O.push(Ti({transactionId:s,fetchState:"Error",error:P.status}),N({messageSection:E,messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:P.status.message}]})),h(O)}})),I((P=>{const O=[];return O.push(Ti({transactionId:s,fetchState:"Error",error:f("Unexpected Error occurred while saving reconciliation review","save reconciliation review REST API call errored out"+JSON.stringify(P))}),N({messageSection:E,messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify("error")}]})),h(O)})))}))),gY,(n,i,r)=>n.pipe(S((t=>sD.match(t))),y((t=>{const{id:e}=t.payload,a=i.value,s=dD(a),o=a.editInvoicingCatalogItemDetailViewState,c=(e!=null?o.editDraftById[e]?.localData:o.newItemDraft)??o.newItemDraft,d=((m,_,g)=>{const v=pa(m.productCode)??vP(m.name),b={applicable_items:m.itemApplicability==="restricted"?m.applicableItems:[],description:pa(m.description)??"",enabled_for_checkout:!0,enabled_in_portal:!0,is_giftable:!1,is_shippable:!1,item_applicability:m.itemApplicability,metered:!1,name:m.name.trim(),product_code:v,type:m.catalogType,unit:pa(m.unit)??"USD"},E=pa(m.externalId);E!=null&&(b.external_id=E);const P=m.subFamilies.length>0?m.subFamilies:[rD()];return _?(b.sub_families=P.map((O=>nu(m,O,!1,g))),b):(b.sub_families=P.filter((O=>O.id!=="")).map((O=>{const x=nu(m,O,!0,g);return x.accounting_detail=x.accounting_detail??null,{...x,id:O.id}})),b)})(c,e==null,s),l=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`,u=e!=null?`${l}/catalog/plans/${encodeURIComponent(e)}`:`${l}/catalog/plans`;return(e!=null?r.putAndGetJSON(u,{...d}):r.postAndGetJSON(u,{...d})).pipe(y((m=>{if(T(m)&&m.data!=null){const _=m.data,g=b=>{const E=b.find((x=>!T(x)||x.data==null));if(E!=null)return h([Ki(E.status),N({messageSection:"invoicing_catalog_item_saved",messageText:"failed",type:"error",variables:Ne(E.status)})]);const P=b.flatMap((x=>x.data!=null?[x.data]:[])),O=[Wr([_],"merge"),...P.map((x=>Mh(_.id,x))),iD({itemId:_.id,kind:"plan"})];if(e==null){const x=_.type==="charge"||_.item_type==="charge"?"charge":_.type==="addon"||_.item_type==="addon"?"addon":"plan";O.push(cD({id:_.id,type:x}))}return O.push(N({messageSection:"invoicing_catalog_item_saved",messageText:"success",type:"success"})),O},v=e!=null?((b,E,P)=>b.subFamilies.filter((O=>O.id==="")).map((O=>({...nu(b,O,!1,P),item_id:E}))))(c,_.id,s):[];return v.length===0?g([]):oD(v.map((b=>r.postAndGetJSON(`${l}/catalog/products`,b)))).pipe(y((b=>g(b))))}return h([Ki(m.status),N({messageSection:"invoicing_catalog_item_saved",messageText:"failed",type:"error",variables:Ne(m.status)})])})),I((m=>h([Ki(f("Unexpected Error","Save catalog item REST API call errored out "+JSON.stringify(m))),N({messageSection:"invoicing_catalog_item_saved",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S((t=>_D.match(t)||Gh.match(t))),y((t=>{const{id:e}=t.payload,a=Gh.match(t)?t.payload.data:(()=>{const c=i.value,d=c.editInvoicingCouponDetailViewState,l=(e!=null?d.editDraftById[e]?.localData:d.newCouponDraft)??d.newCouponDraft;return((u,m,_)=>{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 v=u.couponCode.trim();v!==""&&(g.coupon_code=v),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 b=u.invoiceName.trim();b!==""&&(g.invoice_name=b);const E=u.invoiceNotes.trim();E!==""&&(g.invoice_notes=E);const P=u.discountsAccountId.trim(),O=P!==""?_?.(P):void 0;return O!=null&&(g.discounts_account=dr(O)),g})(e==null?{...l,discountsAccountId:hD(l.discountsAccountId,SD(c)?.qbo?.account_mappings)}:l,e==null,(u=>Kh(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(T(c)&&c.data!=null){const d=c.data,l=[ls([d],"merge"),gD({couponId:d.id})];return e==null&&l.push(fD({id:d.id,status:d.status})),l.push(N({messageSection:"invoicing_coupon_saved",messageText:"success",type:"success"})),l}return h([zh(c.status),N({messageSection:"invoicing_coupon_saved",messageText:"failed",type:"error",variables:Ne(c.status)})])})),I((c=>h([zh(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(OD.match),y((t=>{const{id:e}=t.payload,a=i.value,s=a.editInvoicingCustomerDetailViewState,o=(e!=null?s.editDraftById[e]?.localData:s.newCustomerDraft)??s.newCustomerDraft,c=a.addressViewState.newAddressState?.[Xr]?.addressToCreate,d=((u,m)=>{const _=oa(u.firstName),g=oa(u.lastName),v=oa(u.company),b=u.netTermDays.trim();return{auto_collection:u.autoCollection?"on":"off",company:v,customer_type:u.customerType,email:oa(u.email),first_name:_,invoice_notes:oa(u.invoiceNotes),last_name:g,notes:u.notes.trim(),phone:oa(u.phone),preferred_currency_code:u.preferredCurrencyCode,taxability:u.taxability,vat_number:oa(u.vatNumber),...b!==""?{net_term_days:Number(b)}:{},...m!=null?{billing_address:Je(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(T(u)&&u.data!=null){const m=[Qi([u.data],"merge"),G(Hi([u.data])),CD({customerId:u.data.id}),Na(Xr)];return e==null&&m.push(xD({id:u.data.id,status:u.data.status})),m.push(N({messageSection:"invoicing_customer_saved",messageText:"success",type:"success"})),m}return h([eS(u.status),N({messageSection:"invoicing_customer_saved",messageText:"failed",type:"error",variables:Ne(u.status)})])})),I((u=>h([eS(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($B.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=>T(o)&&o.data!=null?[RB(),Qr({id:e})]:p(Oh(o.status)))),I((o=>p(Oh(f("Unexpected Error","Save payment method REST API call errored out "+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(mg.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:Ne(d)})];return r.putAndGetJSON(e,{...a}).pipe(A((c=>{if(T(c)&&c.data!=null){const d=c.data.logo_file;return h([...d!=null?[Se({files:[d]})]:[],yg(c.data),...o("success")])}return h([bs(c.status),...o("failed",c.status)])})),I((c=>h([bs(f("Unexpected Error","Save settings REST API call errored out "+JSON.stringify(c))),...o("failed")]))))}))),(n,i,r)=>n.pipe(S($D.match),y((t=>{const{id:e}=t.payload,{data:a,localData:s,previousCouponCode:o}=aT(i.value,e),c=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return(e!=null?r.putAndGetJSON(`${c}/subscriptions/${encodeURIComponent(e)}`,{...a}):r.postAndGetJSON(`${c}/subscriptions`,{...a})).pipe(y((d=>{if(!T(d)||d.data==null)return[hs(d.status),N({messageSection:"invoicing_subscription_saved",messageText:"failed",type:"error",variables:Ne(d.status)})];const l=d.data;if(e!=null&&tT(o,s.couponId))return[qa([l],"merge"),G(Fa([l])),rS({subscriptionId:l.id,previousCouponCode:o,nextCouponCode:s.couponId})];const u=[qa([l],"merge"),G(Fa([l])),nS({subscriptionId:l.id}),Na(ur)];return e==null&&u.push(VD({id:l.id,status:l.status}),Eh({id:l.customer_id}),Th({customerId:l.customer_id})),u.push(N({messageSection:"invoicing_subscription_saved",messageText:"success",type:"success"})),u})),I((d=>h([hs(f("Unexpected Error","Save subscription REST API call errored out "+JSON.stringify(d))),N({messageSection:"invoicing_subscription_saved",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(cL.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,_=u?RE(m):Kl(m,s);if(Object.assign(_,{transaction_id:d,transaction_type:"bill"}),s==="wire"&&Object.assign(_,{mailing_address:Je(a)}),u&&Object.assign(_,{is_local_currency_enabled:l}),m!=null){const g=`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${c}/bank-accounts`;return r.postAndGetJSON(g,_).pipe(y((v=>{const b=[];return V(v)?b.push(dd({fetchState:"Completed",isInternationalBankAccount:u})):(v.status.code,b.push(dd({fetchState:"Error",error:v.status,isInternationalBankAccount:u})),b.push(N({messageSection:"create_bank_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:v.status.message}]}))),h(b)})),I((v=>p(dd({fetchState:"Error",error:f("Unexpected Error","Bank Account Creation REST API call errored out"+JSON.stringify(v)),isInternationalBankAccount:u})))))}return h([])}))),(n,i)=>n.pipe(S(An.match),y((r=>{const t=r.payload.addressType;switch(t){case"company_address":return p(tp(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(ap(t,r.payload.companyId,r.payload.userId)):h([]);default:return p(ep(t))}}))),(n,i,r)=>n.pipe(S(KU.match),y((t=>{const{scheduleType:e}=t.payload,a=i.value,s=a.expenseAutomationJESchedulesViewState.newSchedule.newScheduleState[e],{selectedBaseTransactionId:o}=s,c=o!=null?YU(a.transactionState,U_(o)):void 0;if(c==null)return h([Xn({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=HU(c,s,e);if(!d.ok){const E=OH[d.reason];return h([Xn({status:f("Unexpected Error",E)}),N({messageSection:"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:E}]})])}const l=s.selectedVendor?.name??c.vendorName??"",u={je_schedule_type:e},m={...d.payload},_=a.expenseAutomationViewState.selectedPeriodByTenantId[Q(a).tenantId],g=_!=null?Re(_):void 0,v=g!=null?ge(g.start):void 0,b=g!=null?ge(g.end):void 0;return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules?query=${encodeURIComponent(JSON.stringify(u))}`,m).pipe(y((E=>{if(T(E)&&E.data!=null){const P=[mt(E.data.je_schedules),Et(E.data.je_schedules,E.data.scheduled_journal_entries),x_({scheduleType:e}),QU(),N({messageSection:"create_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:l}]})];return v!=null&&b!=null&&P.push(lr({start:v,end:b},!0)),h(P)}return h([Xn({status:E.status}),N({messageSection:"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:E.status.message}]})])})),I((E=>h([N({messageSection:"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(E)}]}),Xn({status:f("Unexpected Error",`Save New Schedule REST API call errored out ${JSON.stringify(E)}`)})]))),_e(n.pipe(S(ke.match))))}))),fY,(n,i,r)=>n.pipe(S(gM.match),A((()=>{const t=Ov(r),{notificationSettings:e,notificationSettingsLocalData:a}=i.value.settingsViewState.notification,s=(function(o,c){const{reminderNotificationSettings:d,monthEndInsightsNotificationSettings:l}=c,{reminders:u,monthEndInsights:m}=o,_={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_pending_task_notification_active:null,pending_task_notification:null,is_month_end_insights_active:l.enabled!=null?m.notify:null,month_end_email_recipient_email_ids:m.recipientEmailIds};return d.missingReceiptNotification!=null&&(_.is_missing_receipt_notification_active=u.missingReceiptNotification.preferredMode.length>0,_.missing_receipt_notification=fn(u.missingReceiptNotification)),d.uncategorizedTransactionNotification!=null&&(_.is_uncategorized_transaction_notification_active=u.uncategorizedTransactionNotification.preferredMode.length>0,_.uncategorized_transaction_notification=fn(u.uncategorizedTransactionNotification)),d.pendingBillApprovalNotification!=null&&(_.is_pending_bill_approval_notification_active=u.pendingBillApprovalNotification.preferredMode.length>0,_.pending_bill_approval_notification=fn(u.pendingBillApprovalNotification)),d.pendingReimbursementApprovalNotification!=null&&(_.is_pending_reimbursement_approval_notification_active=u.pendingReimbursementApprovalNotification.preferredMode.length>0,_.pending_reimbursement_approval_notification=fn(u.pendingReimbursementApprovalNotification)),d.pendingTaskNotification!=null&&(_.is_pending_task_notification_active=u.pendingTaskNotification.preferredMode.length>0,_.pending_task_notification=fn(u.pendingTaskNotification)),_})(a,e);return r.putAndGetJSON(t,s).pipe(y((o=>{if(T(o)&&o.data!=null){const c=[fM({data:o.data}),N({messageSection:"notification_settings_saved",messageText:"success",type:"success"})];return p(...c)}return p(Bv(o.status))})),I((o=>p(Bv(f("Unexpected error","Save Notification Settings REST API call errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(aN.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(T(e))return h([rN(t.payload.tenantId,t.payload.connectionType,e.data)]);const a=e.status??f("Failed to save connection. Please try again.");return h([Ku(t.payload.tenantId,a)])})),I((e=>{const a=e instanceof Error?e.message:"Unexpected error saving connection.";return h([Ku(t.payload.tenantId,f(a))])})))))),(n,i,r)=>n.pipe(S(zw.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(T(u)&&u.data!=null){const m=[Kw(a),Yw(s),Hw(a),Qw(a)];return h(m)}return p(Rg(a,u.status))})),I((u=>p(Rg(a,f("Unexpected error","Save Onboarding Customer Complete REST API call errored out"+JSON.stringify(u)))))))}))),(n,i,r)=>n.pipe(S(Ww.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(T(s)&&s.data!=null){const o=[Ts({payload:s.data.companies,schema:{}}),Zw(e)];return h(o)}return p(Mg({companyId:e,error:s.status}))})),I((s=>p(Mg({companyId:e,error:f("Unexpected error","Save Onboarding Customer Complete REST API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(t$.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=yc(i.value.companyState,l??""),d=Bg(i.value.tenantState,u??""));const m=((_,g,v,b)=>{const{companyId:E,companyEmailDomain:P,groupId:O,groupName:x,groupDescription:U,isEmailGroupCreated:k,customerName:C,name:B,email:J,accountingConnectionCreationMode:L,hubSpotId:M,selectedProducts:q}=_,R={company_email_domain:P,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"),z=q.includes("bookkeeping"),ee=q.includes("zeni_payroll"),W=q.includes("zeni_cfo"),pe=q.includes("zeni_tax"),ne=ee||W||pe;if(R.is_other_products_enabled=ne,R.is_payroll_enabled=ee,R.is_cfo_enabled=W,R.is_tax_enabled=pe,ne)R.is_book_keeping_enabled=!1,R.is_banking_enabled=!1,R.is_spend_management_enabled=!1,R.is_card_enabled=!1;else{R.is_payroll_enabled=!1,R.is_cfo_enabled=!1,R.is_tax_enabled=!1;const ae=q.includes("zeni_treasury");z?(R.is_book_keeping_enabled=!0,R.is_banking_enabled=D,R.is_spend_management_enabled=!0,R.is_card_enabled=w,R.is_treasury_enabled=ae):D&&w?(R.is_book_keeping_enabled=!1,R.is_banking_enabled=!0,R.is_spend_management_enabled=!1,R.is_card_enabled=!0,R.is_treasury_enabled=ae):w?(R.is_book_keeping_enabled=!1,R.is_banking_enabled=!1,R.is_spend_management_enabled=!1,R.is_card_enabled=!0,R.is_treasury_enabled=!1):D?(R.is_book_keeping_enabled=!1,R.is_banking_enabled=!0,R.is_spend_management_enabled=!1,R.is_card_enabled=!1,R.is_treasury_enabled=ae):(R.is_book_keeping_enabled=!1,R.is_banking_enabled=!1,R.is_spend_management_enabled=!1,R.is_card_enabled=!1,R.is_treasury_enabled=!1)}}return E&&(R.company_id=E),M&&(R.hubspot_id=M),L!=null&&(R.accounting_connection_created_by=L),O&&k!=1&&(R.email_group_id=O,R.email_group_name=x,R.email_group_description=U),HH(_,R,v,b),R})(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((_=>{if(T(_)&&_.data!=null){const g=_.data.companies.map((E=>E.company_id)),v=dc(_.data.tenants,_.data.companies),b=[lc(_.data.tenants,!0),Ts({payload:_.data.companies,schema:{},onboardingInviteStatus:_.data.onboarding_invite_status,companyIdTenantIdMapping:v}),G(_.data.addresses??[]),uc(_.data.tenants),pc({onboardingCustomersInfo:_.data.whitelist_companies}),mc(g),a$({tenants:_.data.tenants,companies:_.data.companies,sendInvite:a,newTenant:m.company_id==null})];if(_.data.users!=null&&b.push(F({users:_.data.users})),_.data.user_roles!=null&&b.push(K(_.data.user_roles)),a===!0){const E=lT(_.data.companies[0].onboarding_info,_.data.users),P=_.data.companies[0].name??"";b.push(N({messageSection:"dashboard_invite_sent",messageText:"success",type:"success",variables:[{variableName:"_user-name_",variableValue:E},{variableName:"_company-name_",variableValue:P}]}))}return a!==!0&&s!==!0&&b.push(N({messageSection:"onboarding_info_saved",messageText:"success",type:"success"})),h(b)}{const g=[Lg(_.status),N({messageSection:a===!0?"dashboard_invite_sent":"onboarding_info_saved",messageText:"failed",type:"error"})];return h(g)}})),I((_=>{const g=[Lg(f("Unexpected Error","Save Onboarding Customer View Updates errored out"+JSON.stringify(_))),N({messageSection:a===!0?"dashboard_invite_sent":"onboarding_info_saved",messageText:"failed",type:"error"})];return h(g)})))}return h([])}))),(n,i,r)=>n.pipe(S(xq.match),y((t=>{const{entityId:e,entityType:a,realTimeApprovalLocalData:s}=t.payload,{userState:o}=i.value,c=UQ(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(T(u)&&u.data!=null){const m=[];u.data.entity_approval.steps_approval_status.forEach((v=>{v.step_position!=null&&d.indexOf(v.step_position)>=0&&v.actors.forEach((b=>{m.push(b.id)}))}));const _=m.map((v=>{const b=Pt(o,v);return`${b?.firstName} ${b?.lastName}`})),g=u.data.attribute_users.map((v=>v.user_id));return h([Js(e,a,!0),Nt([u.data.entity_approval]),F({users:u.data.attribute_users??[]}),N({messageSection:"real_time_approver_added",messageText:"success",type:"success",variables:[{variableName:"_approvers-added_",variableValue:_.join(", ")}]}),Md({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}]}),Md({entityId:e,entityType:a,fetchState:"Error",approverIds:[],error:f("Unexpected error","resources REST API call errored out"+JSON.stringify(u.status.message))}))})),I((u=>p(N({messageSection:"real_time_approver_added",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:u}]}),Md({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(DA.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((_=>{if(V(_)&&_.data!=null){const g=[JA({companyId:e,auditGroupId:a,auditRuleId:s,reasonResponsePayload:_.data})];return c==="approved"&&g.push(xn(!0,!0)),h(g)}return p(Kp(e,a,s,f("Error","Invalid response status: "+_.status)))})),I((_=>p(Kp(e,a,s,f("Unexpected Error","Reason for audit rule REST API call failed: "+JSON.stringify(_)))))))}))),(n,i,r)=>n.pipe(S(Lq.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,_,g){const v=m.reimbursementId,b=Y(l.reimbursementById,v??"",void 0),E={reimbursement_provider:"zeni",transaction_type:"reimbursement",is_include_approval_info:!0,reimbursee_user_id:b?.reimburseeUserId??u.loggedInUser?.userId,sync_token:b?.syncToken??null,reimbursement_date:ye().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:_},to_account:m.remiDetailLocalData.paymentTo!=null?{account_id:m.remiDetailLocalData.paymentTo}:void 0},lines:Object.keys(m.remiDetailLocalData.updatesByLineId).map((P=>{const O=m.remiDetailLocalData.updatesByLineId[P];return Ob(O)}))};return v==null&&(E.are_approvals_serialized=!0),E})(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(T(l)&&l.data?.transactions[0]?.transaction_id!=null){const u=[Hd(l.data.transactions[0]),F({users:l.data.users??[]}),at(l.data.approval_rules),Nt(l.data.entity_approvals),Rd(l.data.merchants),Ab(l.data.merchants),Fq(),Qd("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 _=gn(m.recommendations??[]);_!=null&&m.merchant_id&&u.push(nn({entityId:m.merchant_id,entityType:"merchant",recommendations:_}))})),h(u)}return p(Qd("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}]}))})),I((l=>p(Qd("Error",t.payload.reimbursementId,f("Unexpected Error",`REST API call errored out ${JSON.stringify(l)}`))))))}))),(n,i,r)=>n.pipe(S(dj.match),A((t=>{const{remiSetupApproverViewState:e}=i.value,a=e.remiSetupApproverViewUpdateData;if(a!=null&&a.data!=null){const{useV3:s}=t.payload,o=s?IT(a.data):bT(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(T(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,_=[F({users:d.data.users}),at(d.data.approval_rules),N({messageSection:`reimbursement_${a.type}`,messageText:"success",type:"success"}),lj(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(Fb(d.status)),h(l)}})),I((d=>p(Fb(f("Unexpected Error","Save Reimbursement Approval View Updates errored out"+JSON.stringify(d)))))))}return h([])}))),(n,i,r)=>n.pipe(S(lA.match),je((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=>T(d)?p(Up(),gt()):p(On(d.status)))),I((d=>p(On(f("Unexpected Error","Save routine REST API call failed",d instanceof Error?{message:d.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(B1.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=da(o,e),u!=null){l=u.jeScheduleId;const g=e.scheduleAccruedDetailState.editScheduleStateByDetailId[l];m=g.selectedVendor?.name??"",d={...gT(e,g,o)}}}else{const g=e.scheduleAccruedDetailState.newScheduleState;m=g.selectedVendor?.name??"",d={...uQ(e,g)}}const _={je_schedule_type:s};return(l!=null?r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${l}?query=${encodeURIComponent(JSON.stringify(_))}`,d):r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules?query=${encodeURIComponent(JSON.stringify(_))}`,d)).pipe(y((g=>{if(T(g)&&g.data!=null){const v=g.data.je_schedules[0].je_schedule_id;if(v==null)return c.push(on("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."}]})),h(c);if(c.push(fa(g.data.je_schedules),wr(g.data.je_schedules,g.data.scheduled_journal_entries)),l==null){const b=hv(g.data.je_schedules[0]),E=xs("accrued_expenses"),P=Us("all",E);c.push(D1({scheduleType:"accrued_expenses",key:P,jeScheduleAccruedKey:b}))}return c.push(Za(s,o,v),on("Completed"),J1(),N({messageSection:l!=null?"save_schedule":"create_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:m}]})),h(c)}return c.push(on("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}]})),h(c)})),I((g=>h([N({messageSection:l!=null?"save_schedule":"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(g)}]}),on("Error",f("Unexpected Error",`Save Schedule Accrued Detail REST API call errored out ${JSON.stringify(g)}`))]))))}))),(n,i,r)=>n.pipe(S(Y1.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 h(l);const u=qt(d,e),m=u.vendor.name,_=u.jeScheduleId??s,g=_!=null?e.scheduleDetailState.editScheduleStateByDetailId[o][_]:e.scheduleDetailState.newScheduleState[o],v={...Oc(e,g,d,o,void 0,void 0,c)},b={je_schedule_type:o};return(_!=null&&u.status.code!=="marked_as_completed"?r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules/${_}?query=${encodeURIComponent(JSON.stringify(b))}`,v):r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/schedules?query=${encodeURIComponent(JSON.stringify(b))}`,v)).pipe(y((E=>{if(T(E)&&E.data!=null){const P=E.data.je_schedules[0].je_schedule_id;return P==null?(l.push(dn("Error",E.status),N({messageSection:_!=null?"save_schedule":"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:"Schedule returned NULL for ID."}]})),h(l)):(l.push(mt(E.data.je_schedules),Et(E.data.je_schedules,E.data.scheduled_journal_entries),cn(o,d,P),dn("Completed"),N({messageSection:_!=null?"save_schedule":"create_schedule",messageText:"success",type:"success",variables:[{variableName:"_vendor_name_",variableValue:m}]})),h(l))}return l.push(dn("Error",E.status)),l.push(N({messageSection:_!=null?"save_schedule":"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:E.status.message}]})),h(l)})),I((E=>h([N({messageSection:_!=null?"save_schedule":"create_schedule",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(E)}]}),dn("Error",f("Unexpected Error",`Save Schedule Detail REST API call errored out ${JSON.stringify(E)}`))]))))}))),(n,i,r)=>n.pipe(S(uA.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(T(c)&&Gl(c.data)){const d=c.data,l=d.skill.macro_id,u=[pA({macroId:l,detail:zl(d)}),Jo()];return mA(i.value).macroId===l&&u.push(Np({macroId:l})),p(...u)}return p(kp(c.status))})),I((c=>p(kp(f("Unexpected Error","Save skill REST API call failed",c instanceof Error?{message:c.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(_G.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(T(o)&&o.data!=null){const c=[Ua({payload:[o.data]}),vl({tenantId:e})];return h(c)}return p(Xs({tenantId:e,status:o.status}))})),I((o=>p(Xs({tenantId:t.payload.tenantId,status:f("Unexpected error","Connection REST API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(hG.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=CT(d,e),c=r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscriptions/${l}`,o)}else{const d=a.data;o=xT(d,e),c=r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/subscriptions`,o)}return c.pipe(y((d=>{if(T(d)&&d.data!=null){const l=d.data.subscriptions[0],u=l.company_id,m=[Ir({payload:d.data.subscriptions,schema:d.data.schema.subscription}),Ca({payload:d.data.subscription_plans,schema:d.data.schema.subscription_plan}),br({payload:d.data.subscription_coupons,schema:d.data.schema.subscription_coupon}),xa({payload:d.data.subscription_addons,schema:d.data.schema.subscription_addon}),Ua({payload:d.data.subscription_summaries,schema:d.data.schema.subscription_summary})];return s?m.push(vl({tenantId:e,companyId:u})):m.push(vl({tenantId:e,companyId:u,subscriptionId:l.subscription_id})),h(m)}return p(Xs({tenantId:e,status:d.status}))})),I((d=>p(Xs({tenantId:e,status:f("Unexpected error",`Unable to ${s?"update":"create"} subscription`+JSON.stringify(d))})))))}return h([])}))),(n,i,r)=>n.pipe(S(MG.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?ua(s.taskState,e)?.taskGroupIds??[]:[],u=d?[]:c!=null?[c]:e!=null?l:a!=null?[a]:[],m=u[0],_=YQ(s,e,u);return(e!=null?r.putAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${e}`,_):r.postAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks`,_)).pipe(y((g=>{if(T(g)&&g.data!=null&&g.data.tasks.length>0){const v=g.data.tasks[0].task_id,b=[ze(g.data.tasks),Al({fetchState:"Completed",newTaskId:v,taskId:e})],E=g.data.tasks[0],P=E.status?.code==="resolved",O=s.taskListState.currentTab;return o===!0&&d===!1&&m!=null&&(!(O==="live"||O==="completed")||P&&O==="completed"||!P&&O==="live")===!0?b.push(J0({taskGroupId:m,task:g.data.tasks[0],currentTaskState:e!=null?ua(s.taskState,e):void 0})):o===!0&&d===!0&&e!=null&&ua(s.taskState,e)?.taskGroupIds.forEach((U=>{b.push(VG({taskId:e,taskGroupId:U}))})),h(b)}return p(Al({fetchState:"Error",taskId:e,error:g.status}),N({messageSection:"save_task_detail",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:g.status.message}]}))})),I((g=>p(Al({fetchState:"Error",taskId:e,error:f("Unexpected Error","Save Task REST API call errored out"+JSON.stringify(g))})))))}))),(n,i)=>n.pipe(S(gm.match),y((r=>{const{transactionId:t,cotTransactionTracking:e,isExpenseAutomationEnabled:a}=r.payload,s=[],o=i.value.transactionDetailState,c=i.value.transactionState,d=ss(i.value),l=Be(t),u=Y(o.transactionDetailById,l,void 0),m=Ot(c,l);if(u!=null&&m!=null){const _=((g,v,b,E=!1)=>{const P={updatesByLineId:{}},O={},x={},U=hP(v,b);P.memo=g.memo,P.documentId=g.documentId,!E||v.type!=="invoice"&&v.type!=="credit_memo"||(P.project=g.project);const k=g.selectedEntity,C=g.updatePreviousTransactionsWithUpdatedVendor===!0?g.vendorUpdates?.qboId:void 0;let B,J,L=!1;const M=new Set(v.lines?.map((D=>D.id))??[]),q=new Set((g.deletedLineIds??[]).filter((D=>M.has(D)))),R=Object.values(g.lineItemById).filter((D=>!M.has(D.id)));return v.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 z=UH(k,w,g.vendorUpdates,g.customerUpdates);if(O[D.id]={lineDescription:w.lineDescription,amount:w.amount,class:w.class,account:w.account,...v.type!=="invoice"&&v.type!=="credit_memo"?{project:w.project}:{},recommendation:LT(w.recommendationsWithCOT)},D.type==="journal_entry_transaction_line"||D.platformLineDetailType==="deposit_line_detail"){const Pe=w.lineEntity;O[D.id]={...O[D.id],customer:Pe!=null&&Pe.type==="customer"?w.customer:void 0,vendor:Pe!=null&&Pe.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 ee=!1,W=!1;const pe=D;ee=w.account?.qboId!==pe.account.qboId&&!!w.account?.qboId,W=(w.class?.qboId!=null||pe.class?.qboId!=null)&&w.class?.qboId!==pe.class?.qboId;const ne=yP(w.amount.amount,w.account),ae=_P(w.amount.amount,w.class),me=w.recommendedAccount,he=w.recommendedClass,we=!!ne&&!!me&&ne?.qboId===me?.qboId,Te=!!ae&&!!he&&ae?.qboId===he?.qboId,le=(w.isRecommendedCategorySelected===!1||w.isRecommendedClassSelected===!1||we===!1||Te===!1)&&w.recommendationsWithCOT!=null&&(ee||W);if(L=L||(w.isUpdateAllChecked??!1),z!=null&&(le===!0||w.isUpdateAllChecked!=null&&w.isUpdateAllChecked===!0||C!==null)){B=ee===!0||w.isRetainedCategorySelected===!0?ne:void 0,J=W===!0||w.isRetainedClassSelected===!0?ae:void 0;const Pe={account:B,class:J};if(Pe.class!=null||Pe.account!=null||C!=null){const ha=g.vendorUpdates?.qboId,Sa=g.customerUpdates?.qboId;let ga=z.entityId;ha!=null&&k?.type==="vendor"?ga=g.updatePreviousTransactionsWithUpdatedVendor===!0?ga:ha:Sa!=null&&k?.type==="customer"&&(ga=Sa),xH(x,ga,z.entityType,Pe,w.isUpdateAllChecked,C,z.entityName)}}}else O[D.id]=D})),P.updatesByLineId=O,{updates:P,entityRelatedUpdates:x,markAsMiscatUpdates:U,anyBulkUpdates:L,addedLines:R.length>0?R:void 0,deletedLineIds:q.size>0?[...q]:void 0}})(u.transactionDetailLocalData,m,a,d);return s.push(rE(t,_,a,e)),h(s)}return h(s)}))),(n,i,r)=>n.pipe(S(vO.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=Ea(s,o,"accountList"),_=e.transactionVendorViewState.newVendorState?.vendorDetailLocalData?.vendorId,g=t.payload.vendorId!=null?e.transactionVendorViewState.editVendorStateById[t.payload.vendorId].vendorDetailLocalData:e.transactionVendorViewState.newVendorState.vendorDetailLocalData,v=t.payload.vendorId!=null?t.payload.vendorId:_,b=((E,P,O)=>{const{vendorState:x,accountState:U,classState:k}=E,C={};if(P!=null&&(C.vendor_name=P.vendorName),O!=null){const B=x.vendorByID[O].syncToken;C.sync_token=B,C.qbo_id=x.vendorByID[O].qboId}else{if(P.vendorCategory!=null){const B=rt(U,P.vendorCategory,"account_list");B!=null&&(C.account=dr(B))}else C.account=null;if(P.vendorClass!=null){const B=ya(k,{classId:P.vendorClass,reportId:"class_list"});B!=null&&(C.accounting_class=vn(B))}else C.accounting_class=null;P.vendorOwner!=null?C.owner_id=P.vendorOwner:C.owner_id=null}return C})(e,g??EO,v);return(v!=null?r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${v}`,b):r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors`,b)).pipe(y((E=>{if(T(E)&&E.data!=null){const P=[ue(E.data.vendors??[])];if(P.push(Bn({vendorId:E.data.vendors[0].vendor_id,localData:{vendorName:E.data.vendors[0].vendor_name,vendorId:E.data.vendors[0].vendor_id}})),v==null&&t.payload.transactionId!=null&&E.data!=null){if(t.payload.isExpenseAutomationEnabled===!0){if(l!=null&&u!=null){const O=Ot(e.transactionState,l);O!=null&&P.push(IO({selectedTab:c,transactionId:l,lineId:u,selectedTransaction:O,uncategorizedAccounts:m,isAccountingClassesEnabled:ot(e),updatedVendor:{name:E.data.vendors[0].vendor_name,id:E.data.vendors[0].qbo_id,logo:Wo(E.data.vendors[0].logo?.url??"")},selectedEntity:{name:E.data.vendors[0].vendor_name,id:E.data.vendors[0].qbo_id,type:"vendor",zeniId:E.data.vendors[0].vendor_id,qboId:E.data.vendors[0].qbo_id,logo:Wo(E.data.vendors[0].logo?.url??"")}}))}}else P.push(bO({transactionId:t.payload.transactionId,vendorUpdates:{name:E.data.vendors[0].vendor_name,id:E.data.vendors[0].vendor_id,qboId:E.data.vendors[0].qbo_id},entity:{name:E.data.vendors[0].vendor_name,id:E.data.vendors[0].qbo_id,type:"vendor",zeniId:E.data.vendors[0].vendor_id,qboId:E.data.vendors[0].qbo_id,logo:Wo(E.data.vendors[0].logo?.url??"")},resetRecommendations:!0}));P.push(N({messageSection:"create_vendor",messageText:"success",type:"none"}))}return P.push(Zo("Completed",t.payload.vendorId)),t.payload.saveTransaction===!0&&t.payload.transactionId!=null&&P.push(gm({transactionId:t.payload.transactionId,isExpenseAutomationEnabled:t.payload.isExpenseAutomationEnabled,cotTransactionTracking:[]})),h(P)}{const P=[];return P.push(Zo("Error",t.payload.vendorId,E.status)),E.status.code!==409&&P.push(N({messageSection:v==null?"create_vendor":"update_vendor",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:E.status.message}]})),h(P)}})),I((E=>p(Zo("Error",t.payload.vendorId,f("Unexpected Error",`Save Transaction Vendor REST API call errored out ${JSON.stringify(E)}`))))))}))),(n,i,r)=>n.pipe(S(TK.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(T(o)&&o.data!=null){const c=[ue(o.data.vendors)];return c.push($l({vendorId:s,fetchState:"Completed"})),h(c)}{const c=[];return o.status.code!==409&&(c.push($l({vendorId:s,fetchState:"Error"})),c.push(N({messageSection:"update_vendor",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:o.status.message}]}))),h(c)}})),I((o=>p($l({vendorId:s,fetchState:"Error",error:f("Unexpected Error","Vendor Save on First Review View REST API call errored out "+JSON.stringify(o))}))))):h([])}))),(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:M,addressViewState:q,vendorState:R}=C,D={};if(B!=null){if(D.vendor_name=B.vendorName,B.vendorCategory!=null){const W=rt(L,B.vendorCategory,"account_list");W!=null&&(D.account=dr(W))}else D.account=null;if(B.vendorClass!=null){const W=ya(M,{classId:B.vendorClass,reportId:"class_list"});W!=null&&(D.accounting_class=vn(W))}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((W=>W.email.length>0||W.fullName.length>0)).map((W=>$n(W))),J!=null){const W=R.vendorByID[J].syncToken;D.bank_account_ids=[...new Set(B.bankAccountIds)],D.payment_instrument_ids=[...new Set(B.paymentInstrumentIds)],D.sync_token=W,D.qbo_id=R.vendorByID[J].qboId}else D.bank_account_ids=B.bankAccountIds,D.payment_instrument_ids=B.paymentInstrumentIds;const z=q.newAddressState?.vendor_address?.addressToCreate,ee=z!=null?Je(z):void 0;return ee!=null&&(D.address=ee),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??UO,o);let d=e.editBillDetailViewState.newBillState;const{tenantState:l,companyState:u,expressPayState:m}=e,{currentTenantId:_}=l,g=_!=null?l.tenantsById?.[_]?.companyId:void 0,v=Ue(u,g??""),b=v?.company.companyBillPayInfo.payNowCutOffTimeByMethod.ach,E=b!=null&&ye().isSameOrBefore(b),P=m.formLocalData;if(t.payload.billId!=null){const C=Ie(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(T(C)){const B=C.data?.vendors[0]!=null?gr(C.data?.vendors[0]):void 0,J={...x};if(B!=null){const q=B.accountId!=null?rt(e.accountState,B.accountId,"account_list"):void 0,R=B.classId!=null?Em(e.classState,{classId:B.classId,reportId:"class_list"}):void 0,D=B.vendorCurrencyCode,w=B.vendorCurrencySymbol;Object.keys(J).forEach((z=>{const ee=x[z];J[z]={...ee,account:q,class:R,...bn}})),Object.keys(J).length===0&&(J[1]={account:q,class:R,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,...bn})}const L=ht(C.data?.vendors??[]),M=[ue(C.data?.vendors??[]),ft(C.data?.vendors[0].contacts??[]),G(L),Ve(C.data?.vendors[0].bank_accounts??[]),Ia(C.data?.vendors[0].payment_instruments??[])];if(t.payload.view!=="vendorsTab"){B?.vendorCurrencyCode==null||ei(B.vendorCurrencyCode)||M.push(Aa(!0,{amount:d.billDetailLocalData.totalAmount?.amount??0,currencyCode:B.vendorCurrencyCode??"USD",currencySymbol:B.vendorCurrencySymbol??"$"},"USD",t.payload.billId));const q=d.billDetailLocalData.showVendorGptRecommendationText,R=d.billDetailLocalData.recommendedVendorId,D=d.billDetailLocalData.vendor?.id,w=d.addBillAutoFields.tentativeVendorName;let z;z=R!=null&&R===B?.id||(D==null||B?.id==null||D===B.id)&&q,w&&w===B?.name&&(z=!0,M.push(Rn({addBillAutoFields:{...d.addBillAutoFields,tentativeVendorName:""}})),R==null&&M.push(xO(B?.id))),t.payload.isExpressPayPage!==!0&&(M.push(St({billDetailLocalData:{showVendorGptRecommendationText:z,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??Z(bo(ye().toDate(),[0,6],E?0:1).toISOString())},isCollectToAccountInfoFromVendorContact:!1,isRecurring:d.billDetailLocalData.isRecurring},billId:t.payload.billId})),B?.qboId!=null&&M.push(ia(B.qboId,!1)))}return t.payload.isExpressPayPage!==!0&&M.push(bm(t.payload.vendorId)),M.push(fr("Completed",t.payload.vendorId)),t.payload.view==="vendorsTab"&&M.push(N({messageSection:"update_vendor",messageText:"success",type:"success"})),t.payload.isExpressPayPage===!0&&t.payload.vendorId==null&&B!=null&&(M.push(Sr({vendorId:B.id,localData:so(B,i.value,C.data?.vendors[0])})),M.push(fr("Completed",B.id)),M.push(Vo({localData:{...P,vendorId:B.id,amount:P?.amount??{amount:0,currencyCode:B.vendorCurrencyCode,currencySymbol:B.vendorCurrencySymbol},paymentDate:P?.paymentDate??ye()}}))),h(M)}return C.data?.error_code===1001?p(fr("Error",t.payload.vendorId,C.status,!0),Tm({userId:k})):p(fr("Error",t.payload.vendorId,C.status),N({messageSection:"update_vendor",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:C.status.message}]}))})),I((C=>p(fr("Error",t.payload.vendorId,f("Unexpected Error",`REST API call errored out ${JSON.stringify(C)}`))))))}))),(n,i,r)=>n.pipe(S(PK.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=xe(s,o),{vendorName:m,selectedGlobalMerchant:_,recommendations:g,nonExistingRecommendations:v}=IW(l,a,s),b={...vW(m,g,v,c,d,u?.qboId,_)};return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${o}?query=${encodeURIComponent(JSON.stringify({view:"merchant_review_list"}))}`,b).pipe(y((E=>{if(T(E)&&E.data!=null){const P=[];return P.push(ue(lo(E.data.vendors??[])),F({users:uo(E.data.vendors??[]),updateType:"merge"}),Tt({globalMerchants:po(E.data.vendors??[])})),P.push(Rl({vendorId:o,vendors:E.data.vendors??[]})),P.push(hn("Completed",t.payload.vendorId,c,d,E.status,E.data.vendors?.[0].status)),u!=null&&(E.data.vendors?.[0].status.code==="reviewed"?P.push(N({messageSection:"save_vendor_renamed",messageText:"success",type:"success",variables:[{variableName:"_old_vendor_name_",variableValue:u?.name},{variableName:"_updated_vendor_name_",variableValue:m}]})):P.push(N({messageSection:b.is_employee===!0?"save_vendor_marked_as_employee":b.is_local_contractor===!0?"save_vendor_marked_as_local_contractor":"save_vendor_sent_for_review",messageText:"success",type:b.is_employee===!0||b.is_local_contractor===!0?"success":"info",variables:[{variableName:"_vendor_name_",variableValue:u?.name}]}))),h(P)}if(E.status.code===409&&E.data!=null){const P=[];if(P.push(Rl({vendorId:o,vendors:E.data.vendors??[]})),P.push(hn("Error",t.payload.vendorId,c,d,E.status)),P.push(ue(lo(E.data.vendors??[])),F({users:uo(E.data.vendors??[]),updateType:"merge"}),Tt({globalMerchants:po(E.data.vendors??[])})),E.status.details==null)P.push(Ml({vendorId:t.payload.vendorId,vendorNameSentForReview:m,isVendorMergeError:!0}));else if(E.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()}:v.length>0&&v[0]?.globalMerchants?.[0]!=null&&(O={...v[0].globalMerchants[0],isReviewed:!1,globalMerchantNameInLowerCase:v[0].globalMerchants[0].globalMerchantName.toLowerCase()});const x=E.data.vendors?.[0]?.recommendations?.[0]?.global_merchants?.[0]!=null?{...NK(E.data.vendors?.[0]?.recommendations?.[0]?.global_merchants?.[0]),globalMerchantId:E.data.vendors?.[0]?.recommendations?.[0]?.global_merchants?.[0]?.global_merchant_id}:void 0;P.push(Ml({vendorId:t.payload.vendorId,vendorNameSentForReview:m,isVendorMergeError:!1,oldRecommendation:O,newRecommendation:x}))}return h(P)}if(E.status.code===400&&E.status.message.includes("There is already a vendor using that entity name.")){const P=[];return P.push(Rl({vendorId:o,vendors:E.data&&E.data.vendors?E.data.vendors:[]})),P.push(hn("Error",t.payload.vendorId,c,d,E.status)),P.push(ue(lo(E.data&&E.data.vendors?E.data.vendors:[])),F({users:uo(E.data&&E.data.vendors?E.data.vendors:[]),updateType:"merge"}),Tt({globalMerchants:po(E.data&&E.data.vendors?E.data.vendors:[])})),E.status.details==null&&P.push(Ml({vendorId:t.payload.vendorId,vendorNameSentForReview:m,isVendorMergeError:!0})),h(P)}return p(hn("Error",t.payload.vendorId,c,d,E.status),N({messageSection:"save_vendor_sent_for_review",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:E.status.message}]}))})),I((E=>p(hn("Error",t.payload.vendorId,c,d,f("Unexpected Error",`Save Vendor First Review View REST API call errored out ${JSON.stringify(E)}`))))))}))),(n,i,r)=>n.pipe(S(wO.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:_,vendorState:g}=c,v={};if(d!=null){if(v.vendor_name=d.vendorName,v.legal_name=d.legalName,d.vendorCategory!=null){const O=rt(u,d.vendorCategory,"account_list");O!=null&&(v.account=dr(O))}else v.account=null;if(d.vendorClass!=null){const O=ya(m,{classId:d.vendorClass,reportId:"class_list"});O!=null&&(v.accounting_class=vn(O))}else v.accounting_class=null;d.vendorOwner!=null?v.owner_id=d.vendorOwner:v.owner_id=null,d.vendorEmail!=null&&(v.email=d.vendorEmail),d.vendorPhone!=null&&(v.phone=d.vendorPhone),d.vendorType!=null&&(v.vendor_type=d.vendorType),d.tin!=null?v.tin={type:d.tin.type,value:d.tin.value}:v.tin=null}const b=d.contacts??[];v.contacts=b.filter((O=>O.email.length>0||O.fullName.length>0||O.phone.length>0)).map((O=>$n(O)));const E=_.newAddressState?.vendor_address.addressToCreate,P=E!=null?Je(E):void 0;if(P!=null&&(v.address=P),l!=null){const O=g.vendorByID[l].syncToken;v.sync_token=O,v.qbo_id=g.vendorByID[l].qboId}return v})(e,a??$O,s);return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${s}`,o).pipe(y((c=>{if(T(c)){const d=ht(c.data?.vendors??[]),l=Mn(c.data?.vendors??[]),u=[ue(c.data?.vendors??[]),ft(c.data?.vendors[0].contacts??[]),G(d),Ve(l)];return u.push(Om(t.payload.vendorId)),u.push(si("Completed",t.payload.vendorId)),u.push(N({messageSection:"update_vendor",messageText:"success",type:"success"})),h(u)}return p(si("Error",t.payload.vendorId,c.status),N({messageSection:"update_vendor",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}))})),I((c=>p(si("Error",t.payload.vendorId,f("Unexpected Error",`Vendors tab save REST API call errored out ${JSON.stringify(c)}`))))))}))),(n,i,r)=>n.pipe(S(dx.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=>T(o)?h([lx(e),N({messageSection:"credit_agent_schedule_cron",messageText:"success",type:"success"})]):h([Oy(e,o.status),N({messageSection:"credit_agent_schedule_cron",messageText:"failed",type:"error"})]))),I((o=>h([Oy(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(__.match)),e=t.pipe(S((s=>s.payload.pageToken!=null))),a=t.pipe(S((s=>s.payload.pageToken==null)),Dr(h_));return et(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=NU;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(T(m)&&m.data!=null){const _=m.data.accruals,g=c!=null,v=d+_.length,b=v<(m.data.total??v)?String(v):null,E=Zn(i.value)?.currencyCode??"",P=_.map((k=>AU(k,E))),O=[],x=i.value.jeSchedulesState.oneTimeAccrualsByKey,U=P.filter((k=>x[S_(k._id)]==null));return U.length>0&&O.push(Ft(U)),O.push(OU({append:g,nextPageToken:b,results:P})),h(O)}return p(g_({error:m.status}))})),I((m=>p(g_({error:f("Unexpected Error","Search match accruals REST API call errored out"+JSON.stringify(m))})))),_e(n.pipe(S(ke.match))))})))},(n,i,r)=>{const t=n.pipe(S(CU.match),y((()=>h([f_(""),__("")])))),e=n.pipe(S(f_.match)),a=e.pipe(S((c=>c.payload.pageToken!=null))),s=e.pipe(S((c=>c.payload.pageToken==null)),Dr(h_)),o=et(a,s).pipe(A((c=>{const{query:d,pageToken:l,transactionType:u,transactionIntegrationId:m}=c.payload,_={search_text:d,page_size:xU,...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(_))}`).pipe(y((g=>{if(T(g)&&g.data!=null){const{transactions:v,next_page_token:b}=g.data,E=l!=null,P=Zn(i.value),O=v.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:vH(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,categorizationStatus:U.categorization_status==null||U.categorization_status===""?void 0:U.categorization_status,currencyCode:C,currencySymbol:IH(U,C,k),transactionMemo:U.transaction_memo??void 0,lineDescription:U.line_description??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,P)));return p(UU({append:E,nextPageToken:b??null,results:O}))}return p(v_({error:g.status}))})),I((g=>p(v_({error:f("Unexpected Error","Search match transactions REST API call errored out"+JSON.stringify(g))})))),_e(n.pipe(S(ke.match))))})));return et(t,o)},(n,i,r)=>{const t=n.pipe(S(Uk.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)),Dr(300));return et(e,a,s).pipe(A((o=>{const{query:c,pageToken:d}=o.payload;if(d==null&&c.trim().length<2)return $;const l=i.value,{expenseAutomationMissingReceiptsViewState:{bulkUpload:{manualSearch:u,sortKey:m,sortOrder:_}}}=l,{end:g,start:v}=au(90),b=_??"descending",E={start_date:v,end_date:g,auto_categorized:!1,sort_by:wi(m??"date"),sort_order:b==="ascending"?"asc":"desc",page_token:d??null,page_size:u.pageSize,search_text:c,sub_tab:L_};return r.getJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/expense-automation/transactions?query=${encodeURIComponent(JSON.stringify(E))}`).pipe(y((P=>{if(T(P)&&P.data!=null){const{transactions:O,next_page_token:x,total_count:U}=P.data,k=d!=null,C=O.map(kk),B=[De(O,(J=>J.transaction_id),"merge"),Bk({append:k,nextPageToken:x??null,results:C,totalCount:U})];return h(B)}return p(z_({error:P.status}))})),I((P=>p(z_({error:f("Unexpected Error","Search transactions for manual match errored: "+JSON.stringify(P))})))))})))},(n,i,r)=>{const t=n.pipe(S(WU.match)),e=t.pipe(S((s=>s.payload.query.trim().length<Ui))),a=t.pipe(S((s=>s.payload.query.trim().length>=Ui)),Dr(300));return et(e,a).pipe(A((s=>{const o=s.payload.query.trim();if(o.length<Ui)return $;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(T(d)&&d.data!=null){const{transactions:l}=d.data,u={};l.forEach((_=>{const{currency_code:g,currency_symbol:v}=_,b=g??"USD",E=u[b];u[b]=E!=null?{currencySymbol:E.currencySymbol,transactions:[...E.transactions,_]}:{currencySymbol:g==null?"$":v,transactions:[_]}}));const m=Object.keys(u).map((_=>{const g=u[_];return Vu(g.transactions,_,g.currencySymbol,"merge")}));return m.push(ZU({searchResults:l.map((_=>U_({id:_.transaction_id,type:k_(_.transaction_type),lineId:_.line_id})))})),h(m)}return p(B_({status:d.status}))})),I((d=>p(B_({status:f("Unexpected Error","Search transactions for new schedule errored: "+JSON.stringify(d))})))))})))},(n,i)=>n.pipe(y((r=>{if(Gs.match(r)&&r.payload.fetchState==="Completed")return p(YF());if(!(c=>LI.match(c)||wo.match(c))(r))return $;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 $;const a=((c,d,l)=>{const u=FI(c.aiCfoState,d,l),m=u?.responses.answer?.content.visualization;if(m?.type!=="interactive_form")return;const _=m.data;return"formType"in _&&_.formType==="cards_creation"?_.payload:void 0})(t,r.payload.chatSessionId,e);if(a==null)return $;const s=OT(t);if(s.length>0)return p(mb(s,a));const o=i.pipe(Ee(OT),VI(((c,d)=>c.length===d.length&&c.every(((l,u)=>l===d[u])))),S((c=>c.length>0)),Oe(1),Ee((c=>mb(c,a))));return t.userListViewState.userListByType.cardHolderCandidate.fetchState==="In-Progress"?o:j(p(Fe("cardHolderCandidate",!1)),o)}))),(n,i)=>n.pipe(y((r=>{if((o=>Ls.match(o)&&o.payload.fetchState==="Completed")(r))return p(JL());if(!(o=>LI.match(o)||wo.match(o))(r))return $;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 $;const a=((o,c,d)=>{const l=FI(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 $;if(NT(t))return p(AT(t,a));const s=i.pipe(Ee((o=>NT(o))),VI(),S((o=>o)),Oe(1),Ee((()=>AT(i.value,a))));return t.cardPolicyState.mccCategoriesFetchState==="In-Progress"?s:j(p(RI()),s)}))),(n,i)=>n.pipe(S((r=>wh.match(r)||ji.match(r))),Ge(i),y((([r,t])=>{const e=r.payload.id;if(e==null)return $;if(ji.match(r)&&(r.payload.cacheOverride===!0||t.editInvoicingCatalogItemDetailViewState.recordStateById[e]?.fetchState!=="Completed"))return $;const a=lD(t.invoicingCatalogState,e);return a==null?$:p(uD({id:e,localData:pD(a)}))}))),(n,i)=>n.pipe(S((r=>Fh.match(r)||Yi.match(r))),Ge(i),y((([r,t])=>{const{id:e}=r.payload;if(e==null)return $;if(Yi.match(r)&&(r.payload.cacheOverride===!0||t.editInvoicingCouponDetailViewState.recordStateById[e]?.fetchState!=="Completed"))return $;const a=vD(t.invoicingCouponState,e);return a==null?$:p(ID({id:e,localData:bD(a)}))}))),(n,i)=>n.pipe(S((r=>ms.match(r)||ys.match(r))),Ge(i),y((([r,t])=>{const{id:e}=r.payload;if(e==null)return $;if(ys.match(r)&&(r.payload.cacheOverride===!0||t.editInvoicingCustomerDetailViewState.recordStateById[e]?.fetchState!=="Completed"))return $;const a=Xh(t.invoicingCustomerState,e);return a==null?$:p(UD({id:e,localData:kD(a)}))}))),(n,i)=>n.pipe(S((r=>en.match(r)||Xi.match(r))),Ge(i),y((([r,t])=>{const e=en.match(r)?r.payload.id:r.payload.subscriptionId;if(e==null)return $;if(Xi.match(r)&&t.editInvoicingSubscriptionDetailViewState.recordStateById[e]?.fetchState!=="Completed")return $;const a=e!=null?HD(t,e):void 0;return a==null?$:p(QD({id:e,localData:WD(a)}))}))),(n,i,r)=>n.pipe(S(tC.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,_=s??u.companyInfo.tenantId,g=Fm(ye()),v=ye(),b=[];if(a!=null&&a!=null){const P=qm(o.fileState,a);P!=null&&b.push({data:P.base64String,id:P.fileId,name:P.fileName})}const E={template_data:VE(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:v.format(re),...l!==void 0&&{zeni_requests_html:l===""?null:l},files:b};return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}/emails/month-end`,E,{"zeni-tenant-id":_}).pipe(y((P=>{if(V(P)){const O=[ci(e,"Completed",void 0),aC({companyId:e}),jm({companyId:e,isInDraftMode:!1}),rC({companyId:e,reportSent:!0}),N({messageSection:"cockpit_month_end_email_sent",messageText:"success",type:"success",variables:[{variableName:"_company-name_",variableValue:m}]})];return h(O)}return p(ci(e,"Error",P.status))})),I((P=>p(ci(e,"Error",f("Unexpected Error","send company month end report REST API call errored out"+JSON.stringify(P)))))))}))),vY,(n,i,r)=>n.pipe(S(MB.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=>T(d)&&d.data!=null?p(VB({email:d.data.email,magicLinkUrl:d.data.magic_link_url})):p(Ch(d.status)))),I((d=>p(Ch(f("Unexpected Error","Send payment link REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(Xw.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(T(s)&&s.data!=null){const o=s.data.companies.map((m=>m.company_id)),c=dc(s.data.tenants,s.data.companies),d=lT(s.data.companies[0].onboarding_info,s.data.users),l=s.data.companies[0].name??"",u=[];return u.push(lc(s.data.tenants,!0)),u.push(Ts({payload:s.data.companies,schema:{},onboardingInviteStatus:s.data.onboarding_invite_status,companyIdTenantIdMapping:c})),u.push(G(s.data.addresses??[])),u.push(uc(s.data.tenants)),u.push(pc({onboardingCustomersInfo:s.data.whitelist_companies})),u.push(mc(o)),u.push(e$({companyId:e})),s.data.users!=null&&u.push(F({users:s.data.users})),s.data.user_roles!=null&&u.push(K(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}]})),h(u)}{const o=[];return o.push(Vg({error:s.status,companyId:e})),o.push(N({messageSection:"dashboard_invite_sent",messageText:"failed",type:"error"})),h(o)}})),I((s=>{const o=[];return o.push(Vg({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"})),h(o)})))}))),IY,(n,i,r)=>n.pipe(S(DR.match),A((()=>{const{referralViewState:t}=i.value,e=t.referralFormLocalData,a=t.rewardsPlan.planId,s={...iQ(e,a)};return r.postAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/company-referrals`,s).pipe(y((o=>V(o)?[JR(),N({messageSection:"referral_invite_sent",messageText:"success",type:"success"})]:p(Os(o.status)))),I((o=>p(Os(f("Unexpected error","Send referral REST API call errored out"+JSON.stringify(o)))))))}))),bY,(n,i,r)=>n.pipe(S(yA.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=>T(s)?p(Up(),gt()):p(On(s.status),gt()))),I((s=>p(On(f("Unexpected Error","Set routine enabled REST API call failed",s instanceof Error?{message:s.message}:void 0)),gt()))))}))),(n,i,r)=>n.pipe(S(_A.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=>T(o)&&Gl(o.data)?p(hA({macroId:e,detail:zl(o.data)}),Jo()):p(Bp(o.status)))),I((o=>p(Bp(f("Unexpected Error","Set skill visibility REST API call failed",o instanceof Error?{message:o.message}:void 0))))))}))),(n,i,r)=>n.pipe(S(LG.match),y((t=>QQ(t.payload.taskId,t.payload.snoozedUntil,r)))),(n,i,r)=>n.pipe(S(qJ.match),A((t=>{const e=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/qbo/backfill`;return r.postAndGetJSON(e,{start_date:t.payload.startDate}).pipe(y((a=>T(a)?h([jJ(),sc(),N({messageSection:"invoicing_qbo_backfill",messageText:"success",type:"success"})]):h([eg(a.status),N({messageSection:"invoicing_qbo_backfill",messageText:"failed",type:"error",variables:Ne(a.status)})]))),I((a=>h([eg(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(sO.match),A((t=>r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts/${kn(t.payload.accountId)}`,{statement_close_day:t.payload.statementCloseDay.toString()}).pipe(y((e=>V(e)?p(oO({accountId:t.payload.accountId,statementCloseDay:t.payload.statementCloseDay,reportId:"card_balance"})):p(om(e.status)))),I((e=>p(om(f("Unexpected error","Update statement close date REST API call errored out"+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(SA.match),A((t=>{const{chatSessionId:e}=t.payload,a=i.value.aiCfoState.aiCfoByChatSessionId[e];if(a==null)return p(Cn({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(Cn({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=>T(d)&&d.data!=null?p(Dp({chatSessionId:e,questionAnswerId:s.questionAnswerId}),gA({chatSessionId:e,question:s.question.questionText,isOnlyQuestionInSession:o})):p(Cn({chatSessionId:e,error:d.status})))),I((d=>p(Cn({chatSessionId:e,error:f("Unexpected Error","Stop submit REST API call errored out"+JSON.stringify(d))})))))}))),(n,i)=>n.pipe(S(fA.match),Jp(500),A((r=>{const{chatSessionId:t}=r.payload,e=i.value.aiCfoState.aiCfoByChatSessionId[t];if(e==null)return p(wp({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(Dp({chatSessionId:t,questionAnswerId:a.questionAnswerId}),vA({chatSessionId:t,question:a.question.questionText,isOnlyQuestionInSession:s})):p(wp({chatSessionId:t,error:{code:404,message:"No pending question found"}}))}))),(n,i,r)=>n.pipe(S(dV.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:Iu("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(V(d)){const l=[],u=d.data?.total_operations_processing??0;return l.push(Yc({billsProcessing:u,refreshTime:d.data?.hard_refresh_after_sec??0})),l.push(Hc(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"}]})),h(l)}return p(tr(d.status),N({messageSection:"bill_pay_bulk_submit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:d.status.message}]}))})),I((d=>p(tr(f("Unexpected Error","Bulk Send For Approval bill REST API call errored out "+JSON.stringify(d)))))))}))),(n,i,r)=>n.pipe(S(bj.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(V(s)){const o=[],c=s.data?.total_operations_processing??0;return o.push(rl({remisProcessing:c,refreshTime:s.data?.hard_refresh_after_sec??0})),o.push(nl(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"}]})),h(o)}return p(nr(s.status),N({messageSection:"reimbursement_bulk_submit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:s.status.message}]}))})),I((s=>p(nr(f("Unexpected Error","Bulk Send For Approval remi REST API call errored out "+JSON.stringify(s)))))))}))),(n,i,r)=>n.pipe(S(zj.match),A((()=>{const{expressPayState:t}=i.value,e=t.formLocalData;return e!=null?r.postAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/transactions/express-pay`,$Q(e)).pipe(y((a=>{const s=[];return T(a)&&a.data!=null?(s.push(Sl({fetchState:"Completed",error:void 0})),s.push(N({messageSection:"express_pay_submit",messageText:"success",type:"success"}))):(s.push(Sl({fetchState:"Error",error:a.status})),s.push(N({messageSection:"express_pay_submit",messageText:"failed",type:"error"}))),h(s)})),I((a=>p(Sl({fetchState:"Error",error:f("Unexpected Error","Submit express pay REST API call errored out"+JSON.stringify(a))}))))):h([])}))),(n,i,r)=>n.pipe(S(IA.match),Me((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=>V(m)?p(bA(a)):p($p(a,m.status)))),I((m=>p($p(a,f("Feedback REST API call errored out: "+(m instanceof Error?m.message:String(m)),"Unexpected Error"))))))})))))),(n,i,r)=>n.pipe(S(HV.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`,OQ(s)).pipe(y((o=>{const c=[];return T(o)&&o.data!=null?(c.push(cd({fetchState:"Completed",error:void 0})),c.push(N({messageSection:"business_verification_submit",messageText:"success",type:"success"})),o.data!=null&&c.push(QV({companyId:a,status:o.data?.international_wire_onboarding_status}))):(c.push(cd({fetchState:"Error",error:o.status})),c.push(N({messageSection:"business_verification_submit",messageText:"failed",type:"error"}))),h(c)})),I((o=>p(cd({fetchState:"Error",error:f("Unexpected Error","Submit international wire verification REST API call errored out"+JSON.stringify(o))}))))):h([])}))),(n,i,r)=>n.pipe(S(pw.match),y((()=>{const t=i.value,{brandingDraft:e,settings:a}=t.invoicingSettingsViewState,s=e??mw(a),o=a?.address?.address_id,c=t.addressViewState.newAddressState?.[Es]?.addressToCreate??(o!=null?st(t.addressState,o):void 0),d=yw(s,c),l=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/settings`;return r.putAndGetJSON(l,{...d}).pipe(y((u=>{if(T(u)&&u.data!=null){const m=u.data.address,_=u.data.logo_file;return[...m!=null?[G([m])]:[],..._!=null?[Se({files:[_]})]:[],yg(u.data),...m==null?[Na(Es)]:[]]}return p(bs(u.status))})),I((u=>p(bs(f("Unexpected Error","Save branding settings REST API call errored out "+JSON.stringify(u)))))))}))),(n,i)=>n.pipe(S(lw.match),Ge(i),y((([,r])=>{const{qboDraft:t}=r.invoicingSettingsViewState;return t==null?$:p(mg({settings:{qbo:uw(t,(e=>Kh(r,e)))},snackbarSection:"invoicing_qbo_settings_save"}))}))),(n,i,r)=>n.pipe(S(pp.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:_}=m,g=_.agentId;if(g==null||!!d==0)throw new Error("Invalid State");const v=`${r.apiEndPoints.aiCfoMicroServiceBaseUrl}/1.0/agents/${g}`;let b;if(l!=null&&l.length>0){const E=new FormData;E.append("chat_session_id",s),E.append("message",d),u!=null&&E.append("macro_id",u);for(const P of l)E.append("files",P,P.name);b=r.postFormData(v,E)}else b=r.postAndGetJSON(v,{chat_session_id:s,message:d,...u!=null&&{macro_id:u}});return b.pipe(y((E=>{if(T(E)&&E.data!=null){const P=[];return P.push(wo({chatSessionId:s,questionAnswerId:e,question:{questionId:o,text:d,createdAt:c},answerPayload:E.data,userId:a,insertQuestionAnswer:!1}),EA(s)),p(...P)}return p(Rp({sessionId:s,error:E.status}))})),I((E=>p(Rp({sessionId:s,error:f("Unexpected Error","Submit question REST API call errored out"+JSON.stringify(E))})))))}))),(n,i,r)=>n.pipe(S(TR.match),y((t=>{const{transactionId:e}=t.payload,a=PR(t.payload.outcome);return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/${e}/recommendation-feedback`,(s=t.payload,{line_id:s.lineId??null,dimension:s.dimension,recommendation_set_id:s.recommendationSetId??null,top_pick_source:s.topPickSource??null,shown_recommendations:(s.shownRecommendations??[]).map((o=>({source:o.source,rank:o.rank,value:{name:o.value.name,id:o.value.id??null,integration_id:o.value.integrationId??null},confidence:o.confidence??null,reasoning:o.reasoning??null,cot:o.cot??[]}))),selected:{name:s.selected.name,id:s.selected.id??null,integration_id:s.selected.integrationId??null,is_new_entity:s.selected.isNewEntity??!1},matched_source:s.matchedSource??null,matched_rank:s.matchedRank??null,outcome:s.outcome,reason_text:s.reasonText??null,skipped:s.skipped??!1,retracts_feedback_id:s.retractsFeedbackId??null,features:s.features??null})).pipe(y((o=>{const c=V(o);return c||console.error("submitRecommendationFeedbackEpic: recommendation feedback was not recorded",o.status),a?p(Mf({succeeded:c,error:c?void 0:o.status})):$})),I((o=>(console.error("submitRecommendationFeedbackEpic: failed to submit recommendation feedback",o),a?p(Mf({succeeded:!1})):$))));var s}))),(n,i)=>n.pipe(S(yk.match),S((r=>r.payload.selectedPageTab!=null)),y((r=>{const t=i.value,e=r.payload.selectedPageTab,a=Q(t),s=t.expenseAutomationViewState.selectedPeriodByTenantId[a.tenantId];if(s==null||e==null)return $;const{fetchState:o,refreshStatus:c,jeScheduleTransactionKeysByPeriodAndTab:d}=t.expenseAutomationJESchedulesViewState;if(e!=="actual_matching"&&d[Ni(e,be(s))]!=null&&(o==="In-Progress"||c.fetchState==="In-Progress"))return $;const l=Re(s),u=ge(l.start),m=ge(l.end);return u==null||m==null?$:p(Lt({start:u,end:m},!0))}))),(n,i,r)=>n.pipe(S(rS.match),y((t=>{const{subscriptionId:e,previousCouponCode:a,nextCouponCode:s}=t.payload,o=rT(a),c=rT(s);if(o===c)return $;const d=`${r.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0`;return(o===""?p({success:!0,payload:null}):nT(r,d,e,"remove-coupon",o)).pipe(y((l=>l.success?(c===""?p({success:!0,payload:l.payload}):nT(r,d,e,"apply-coupon",c)).pipe(y((u=>{if(!u.success)return[hs(sT(u)),N({messageSection:"invoicing_subscription_saved",messageText:"failed",type:"error"})];const m=u.payload??l.payload,_=[];return m!=null&&_.push(qa([m],"merge"),G(Fa([m]))),_.push(nS({subscriptionId:e}),Na(ur),N({messageSection:"invoicing_subscription_saved",messageText:"success",type:"success"})),_}))):h([hs(sT(l)),N({messageSection:"invoicing_subscription_saved",messageText:"failed",type:"error"})]))))}))),(n,i)=>n.pipe(S((r=>$r.match(r)||Ra.match(r))),A((r=>{const{batchId:t}=r.payload;return et(n.pipe(S($a.match)),n.pipe(S(mo.match))).pipe(S((e=>e.payload.batchId===t)),Oe(1),A((e=>{const{summary:a}=e.payload;if(a.matched<=0)return $;const s=i.value,o=Q(s);if(o==null)return $;const c=s.expenseAutomationViewState.selectedPeriodByTenantId[o.tenantId];if(c==null)return h([Mr(void 0,!0)]);const d=Re(c),l=ge(d.start),u=ge(d.end);return h(l==null||u==null?[Mr(void 0,!0)]:[Br({start:l,end:u},{amount:75,currencyCode:"USD",currencySymbol:"$"},!0,!0),Mr(void 0,!0)])})),_e(n.pipe(S(es.match))))}))),(n,i)=>n.pipe(S(an.match),A((r=>{const t=[VR({isForecastModeOn:r.payload.isForecastModeOn,selectedForecast:r.payload.selectedForecast,maxNumOfPeriodsToHighlightWithForecast:r.payload.maxNumOfPeriodsToHighlightWithForecast}),LR({isForecastModeOn:r.payload.isForecastModeOn,selectedForecast:r.payload.selectedForecast,maxNumOfPeriodsToHighlightWithForecast:r.payload.maxNumOfPeriodsToHighlightWithForecast}),FR({isForecastModeOn:r.payload.isForecastModeOn,selectedForecast:r.payload.selectedForecast,maxNumOfPeriodsToHighlightWithForecast:r.payload.maxNumOfPeriodsToHighlightWithForecast})];return r.payload.isForecastModeOn&&(t.push(zf(r.payload.firstMonthOfFY,!1,r.payload.maxNumOfPeriodsToHighlightWithForecast,[])),t.push(Kf(r.payload.firstMonthOfFY,i.value.reportUIOptionsState.compareMode,r.payload.maxNumOfPeriodsToHighlightWithForecast,[])),t.push(qR({viewMode:"account_group"})),t.push(jR({viewMode:"account_group"})),t.push(GR({viewMode:"account_group"}))),h(t)}))),(n,i,r)=>n.pipe(S(Wj.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:qe(s.transferFrom?.accType)??""},to_account:{account_id:s.transferTo?.id,account_type:qe(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(T(c)){const d=[];return a!=null&&d.push(Ws(a,!0,5)),d.push($e(),gl({fetchState:"Completed"})),h(d)}return p(gl({fetchState:"Error",error:c.status}))})),I((c=>p(gl({fetchState:"Error",error:f("Unexpected Error","Transfer money REST API call errored out"+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(Jj.match),A((()=>{const t=i.value.treasuryTransferMoneyState.localData;return r.postAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/treasury-account/transactions`,{...wQ(t)}).pipe(y((e=>{if(T(e)&&e.data){const a=[wj({transferTransaction:e.data}),ml({fetchState:"Completed"}),N({messageSection:"treasury_transfer_money",messageText:"success",type:"success"})];return h(a)}return h([ml({fetchState:"Error",error:e.status}),N({messageSection:"treasury_transfer_money_failed",messageText:"failed",type:"error"})])})),I((e=>h([ml({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(fN.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(T(l))return h([vN(),Do(),N({messageSection:"ai_accountant_trigger_job",messageText:"success",type:"success"})]);{const u=UY(l);return h([dp(l.status),N({messageSection:"ai_accountant_trigger_job",messageText:"failed",type:"error",variables:[{variableName:"__reason__",variableValue:u}]})])}})),I((l=>h([dp(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(nh.match),y((r=>{const{pendingReviewLineIds:t,transactionId:e}=r.payload;if(t.length===0)return $;const a=i.value;if(a.expenseAutomationTransactionsViewState.transactionCategorizationView.review.transactionReviewLocalDataById[e.id]!=null)return $;const s=Q(a),o=a.expenseAutomationViewState.selectedPeriodByTenantId[s.tenantId],c=Re(o),d=ge(c.start),l=ge(c.end);return d==null||l==null?$:p(Y_({start:d,end:l}))}))),(n,i,r)=>n.pipe(S(kU.match),Me((t=>t.payload.matchId)),y((t=>t.pipe(je((e=>{const{accrualIds:a,matchId:s}=e.payload,o={accrual_ids:a},c=(function(d,l){return xi(d.actualMatchingState,l)?.vendorName??""})(i.value,s);return r.postAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accruals/undo-reversal`,o).pipe(y((d=>{if(T(d)&&d.data!=null){const l=d.data.results.map(EH),u=[BU(s,l)];return l.some((m=>m.status==="undone"))&&u.push(...Zl(i.value),Oi(s,!0)),u.push(eu(l,c)),h(u)}return p(I_({matchId:s,status:d.status}),eu([],c))})),I((d=>p(I_({matchId:s,status:f("Unexpected Error","Undo reversal accruals REST API call errored out"+JSON.stringify(d))}),eu([],c)))),_e(n.pipe(S(ke.match))))})))))),(n,i,r)=>n.pipe(S(Kj.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=>V(a)&&e!=null?p(Yj({accountId:e}),u0({accountId:e,fetchState:"Completed",error:void 0})):p(u0({accountId:e,fetchState:"Error",error:a.status}),N({messageSection:"unlink_deposit_account",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:a.status.message}]})))),I((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(nF.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=>V(c)&&c.data!=null?p(pt(c.data),Ed({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}]}),Ed({chargeCardId:a,fetchState:"Error",error:c.status})))),I((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)}]}),Ed({chargeCardId:a,fetchState:"Error",error:f("Unexpected Error","Unlock card API call errored out"+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(bF.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=>V(s)&&s.data!=null?p(ar(s.data),Bd({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}]}),Bd({fetchState:"Error",error:s.status})))),I((s=>p(N({messageSection:"unlock_charge_cards",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(s)}]}),Bd({fetchState:"Error",error:f("Unexpected Error","Unlock cards API call errored out"+JSON.stringify(s))})))))}))),(n,i,r)=>n.pipe(S(qG.match),y((t=>ZQ(t.payload.taskId,r)))),(n,i,r)=>n.pipe(S(fC.match),A((t=>{const{companyId:e,enabled:a}=t.payload,s=Oa(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(T(o)&&c.length>0){const d=[H({payload:c,schema:{}})];return s!=null&&d.push(vC({enabled:a,tenantId:s})),d.push(IC()),d.push(N({messageSection:"accounting_classes_enabled_update",messageText:"success",type:"success"})),h(d)}return h([ly({status:o.status}),N({messageSection:"accounting_classes_enabled_update",messageText:"failed",type:"error"})])})),I((o=>h([ly({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(fa.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),Ru.forEach((c=>{const d=VP(o,c);d!=null&&a.push(d);const l=Mu(o,c);l!=null&&s.push(l)}))})),r.push(X(a,"account_list"),We("class_list",s),ue(t,"merge"),F({users:e,updateType:"merge"})),r.push(LP({jeAccruedSchedulesTransactionsPayload:i.payload.jeAccruedSchedulesTransactionsPayload}))}return h(r)}))),(n,i,r)=>n.pipe(S(lN.match),A((t=>{const{addressId:e,addressToUpdate:a}=t.payload,s=Je(a);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/addresses/${e}`,s).pipe(y((o=>{if(T(o)){const c=o.data?.addresses??[];return p(G(c),uN(e))}return p(sp({addressId:e,status:o.status}))})),I((o=>p(sp({addressId:e,status:f("Unexpected Error","Update Address REST API call errored out"+JSON.stringify(o))})))))}))),(n,i)=>n.pipe(S(w1.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=SQ(c!=null?a.editScheduleStateByDetailId[c].jeScheduleDetails:a.newScheduleState.jeScheduleDetails,r.payload.rowId),l=c!=null?a.editScheduleStateByDetailId[c]:a.newScheduleState;t.push(Cs({scheduleType:o,selectedJeScheduleDetailId:c,localData:{...l,jeScheduleDetails:d}}))}return h(t)}))),(n,i)=>n.pipe(S(H1.match),y((r=>{const t=[],e=i.value,{scheduleDetailState:a}=e,s=a.selectedJEScheduleKey,o=r.payload.scheduleType;if(s!=null){const c=qt(s,e),d=r.payload.jeScheduleDetailId,l=c.baseTransaction.amount.amount,u=d!=null?fv(a.editScheduleStateByDetailId[o][d].jeScheduleDetails,a.editScheduleStateByDetailId[o][d].selectedMonths??0,r.payload.rowId,l):fv(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(ks({scheduleType:o,selectedJeScheduleDetailId:d,localData:{...m,jeScheduleDetails:u}}))}return h(t)}))),(n,i,r)=>n.pipe(S(bC.match),A((t=>{const{companyId:e,enabled:a}=t.payload,s=Oa(i.value.tenantState,e);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,{accounting_config:{customers:{auto_review_income_without_customer:a}}}).pipe(y((o=>{const c=o.data?.companies??[];if(T(o)&&c.length>0){const d=[H({payload:c,schema:{}})];return s!=null&&d.push(EC({enabled:a,tenantId:s})),d.push(TC()),d.push(N({messageSection:"auto_review_income_without_customer_update",messageText:"success",type:"success"})),h(d)}return h([uy({status:o.status}),N({messageSection:"auto_review_income_without_customer_update",messageText:"failed",type:"error"})])})),I((o=>h([uy({status:f("Unexpected error","Update Auto Review Income Without Customer errored out"+(o instanceof Error?o.message:JSON.stringify(o)))}),N({messageSection:"auto_review_income_without_customer_update",messageText:"failed",type:"error"})]))))}))),(n,i,r)=>n.pipe(S(BM.match),A((t=>{const{ruleId:e,pauseRule:a,resumeRule:s}=t.payload,o=fT(i.value.autotransferRulesState.ruleUpdateLocalData,a,s);return r.putAndGetJSON(`${r.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto/${e}`,o).pipe(y((c=>{if(T(c)&&c.data!=null){const d=lu(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=[DM({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 h(u)}return h([qv({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}]})])})),I((c=>p(qv({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(S$.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,_=l.companyOfficerUpdateStatus[a].localData;if(u!=null){const g=It(i.value,e,[]),{newAddressState:v}=i.value.addressViewState,b=v?.company_address?.addressToCreate,E=v?.company_registered_address?.addressToCreate,P=a.toLowerCase().concat("_address"),O=v?.[P]?.addressToCreate,x=m?.userId==null||m?.email!==g?.primaryContact?.user.email,U=uT(u,o,b,E,s),k=m!=null&&m.email?pT(m,x):{},C=_!=null&&_.email?mT(_,d,O):{},B=eQ(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(T(L)&&L.data!=null){const{users:M}=L.data,q=[F({users:M}),K(L.data.user_roles),H({payload:L.data.companies,schema:{}}),G(L.data.addresses),Se({files:L.data.files}),X(L.data.accounts,za(s)),ve(L.data.payment_accounts),Le({companyId:L.data.companies[0].company_id})];return o===!1&&_?.officerType!=null&&q.push(g$(_?.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(f$()),h(q)}return p(N({messageSection:o===!0?"business_verification_submit":"business_verification_save",messageText:"failed",type:"error"}),Zg(L.status))})),I((L=>p(Zg(f("Unexpected Error","Update Business Verification Details errored out"+JSON.stringify(L)))))))}return h([])}))),(n,i,r)=>n.pipe(S(PC.match),A((t=>{const{companyId:e,accountId:a,threshold:s,dismissOnboardingForAccount:o,allOverrides:c}=t.payload,d=Oa(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(T(m)){const _=m.data?.companies??[],g=[];return _.length>0&&g.push(H({payload:_,schema:{}})),d!=null&&(g.push(NC({tenantId:d,accountId:a,threshold:s,allOverrides:c!==void 0?Object.keys(l).length>0?l:null:void 0})),o===!0&&g.push(ay({tenantId:d,accountId:a}))),g.push(AC()),g.push(N({messageSection:"capitalization_threshold_update",messageText:"success",type:"success"})),h(g)}return h([py({status:m.status}),N({messageSection:"capitalization_threshold_update",messageText:"failed",type:"error"})])})),I((m=>h([py({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(hL.match),y((t=>{const e=t.payload,a=i.value.cardPolicyDetailState.formDraft;if(a==null)return p(Vs({fetchState:"Error",error:f("Missing form draft",`Cannot update card-policy ${e} — no formDraft is loaded.`)}));const s=SL(a);return r.putAndGetJSON(`${r.apiEndPoints.cardMicroServiceBaseUrl}/1.0/policy-templates/${e}`,s).pipe(y((o=>{if(V(o)&&o.data!=null){const{template:c}=o.data,d=[ud(c),Vs({fetchState:"Completed"})];return h(d)}return p(Vs({fetchState:"Error",error:o.status}))})),I((o=>p(Vs({fetchState:"Error",error:f("Unexpected Error","Update card-policy REST API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(ux.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=>T(d)&&d.data!=null&&d.data.profile!=null?h([px({payload:d.data.profile,tenantId:e}),mx(e),N({messageSection:"credit_agent_update_profile",messageText:"success",type:"success"})]):h([Cy(e,d.status),N({messageSection:"credit_agent_update_profile",messageText:"failed",type:"error"})]))),I((d=>h([Cy(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(sF.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=>V(o)&&o.data!=null?p(pt(o.data.card),F({users:o.data.users}),K(o.data.user_roles),Td({chargeCardId:e,fetchState:"Completed"})):p(N({messageSection:"update_charge_card",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:o.status.message}]}),Td({chargeCardId:e,fetchState:"Error",error:o.status})))),I((o=>p(N({messageSection:"update_charge_card",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(o)}]}),Td({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Update card detail API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(oF.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=>V(d)&&d.data!=null?p(pt(d.data),Pd({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}]}),Pd({chargeCardId:e,fetchState:"Error",error:d.status})))),I((d=>p(N({messageSection:"charge_card_update_limit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(d)}]}),Pd({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Update card limit API call errored out"+JSON.stringify(d))})))))}))),(n,i,r)=>n.pipe(S(iF.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=>V(l)&&l.data!=null?p(pt(l.data),Nd({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}]}),Nd({chargeCardId:e,fetchState:"Error",error:l.status})))),I((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)}]}),Nd({chargeCardId:e,fetchState:"Error",error:f("Unexpected Error","Update card name API call errored out"+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(EF.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=>V(c)&&c.data!=null?p(ar(c.data),Dd({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}]}),Dd({fetchState:"Error",error:c.status})))),I((c=>p(N({messageSection:"charge_cards_update_limit",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(c)}]}),Dd({fetchState:"Error",error:f("Unexpected Error","Update cards limit API call errored out"+JSON.stringify(c))})))))}))),(n,i,r)=>n.pipe(S(Wx.match),A((t=>{const{accountId:e,selectedPeriod:a}=t.payload,s=i.value.expenseAutomationReconciliationViewState.accountReconciliationRecordsBySelectedPeriod[be(a)]?.reconciliationByAccountID[e],o=s?.parsedStatementData,c=s?.localData?.statementUpdateLocalDataByUploadId,d=Qy(o);if(o==null||c==null||d.length===0||d.some((_=>c[_.statementMeta.statementUploadId]==null)))return p(bt({accountId:e,selectedPeriod:a,error:f("Missing Data","No statement update data found for combined accounts")}));const l=Ry(s);if(l==="")return p(bt({accountId:e,selectedPeriod:a,error:f("Missing Data","No combined statement group id found for bulk update")}));const u=((_,g)=>{const v=Qy(g).map((b=>{const E=b.statementMeta.statementUploadId,P=_[E];if(P==null)throw new Error(`Missing statement update local data for upload ${E}`);return{statementUploadId:E,localData:KE(P,b)}}));return Kx(v)})(c,o),m=`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/2.0/statement-uploads/combined-statement-groups/${l}`;return r.putAndGetJSON(m,u).pipe(y((_=>{if(T(_)===!0&&_.data!=null)return p(Yn({accountId:e,selectedPeriod:a,parsedStatementData:Zy(_.data)}),Wy({accountId:e,selectedPeriod:a}),Vt(a,void 0,!0,!0));const g=Xy(_)?e_(_):null;return p(bt({accountId:e,selectedPeriod:a,error:_.status,dateConflict:g}))})),I((_=>p(bt({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Update Statement REST API call errored out "+(_ instanceof Error?_.message:String(_)))})))))}))),(n,i,r)=>n.pipe(S(dy.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(sH)}}),...oH(e.incInfo),...iH(e.taxDetails),...cH(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(T(l)&&u.length>0){const m=[H({payload:u,schema:{}})];return d!=null&&m.push(An({addressType:"company_address",companyId:a})),m.push(OC(a)),h(m)}return p(my({companyId:a,status:l.status}))})),I((l=>p(my({companyId:a,status:f("Unexpected error","Update Company Details errored out"+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(cy.match),y((t=>{const e=t.payload.officer,a=t.payload.companyId,{userId:s,officerType:o}=e,c=oo(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 _=m.data?.users??[];if(T(m)&&_.length>0){const g=[F({users:_})];return u!=null&&g.push(An({addressType:d,companyId:a,userId:_[0].user_id})),g.push(CC({companyId:a,officerType:o})),h(g)}return p(yy({companyId:a,officerType:o,status:m.status}))})),I((m=>p(yy({companyId:a,officerType:o,status:f("Unexpected error",`Update Company Officer REST API call errored out ${JSON.stringify(m)}`)})))))}))),(n,i)=>n.pipe(S(ry.match),y((r=>{const t=r.payload.companyId,{companyViewState:e,fileState:a}=i.value,s=Y(e.passportView.subscriptionIDsByCompanyID,t,void 0),o=It(i.value,t,s??[]),c=[];if(o!=null){const d=o.company.company.incInfo.fileIds,l=_y(a,d),u=xC(o,l);c.push(UC(),ui(u)),c.push(hy(LE));const m=Ql(o);m!=null&&Object.keys(m).forEach((_=>{c.push(Ye({addressType:_,addressToCreate:m[_]}))}))}return h(c)}))),(n,i,r)=>n.pipe(S(FC.match),y((t=>{const{companyId:e,services:a}=t.payload,{isBookkeepingEnabled:s,isBillPayEnabled:o,isReimbursementEnabled:c}=a,d=Iy(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?h([by({companyId:e})]):r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,l).pipe(y((u=>{if(T(u)){const m=u.data?.companies??[],_=[];return m.length>0&&_.push(H({payload:m,schema:{},isUpdate:!0})),s!=null&&d!=null&&_.push(qC({tenantId:d,isBookkeepingEnabled:s,isSpendManagementEnabled:s})),_.push(by({companyId:e})),_.push(N({messageSection:"product_services_update",messageText:"success",type:"success"})),h(_)}return h([Ey(e,u.status),N({messageSection:"product_services_update",messageText:"failed",type:"error"})])})),I((u=>h([Ey(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(jC.match),y((t=>{const{companyId:e,qboRealmId:a}=t.payload,s=Iy(i.value,e);return s==null?h([mi(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=>T(o)?h([GC({companyId:e}),N({messageSection:"qbo_realm_id_update",messageText:"success",type:"success"})]):h([mi(e,o.status),N({messageSection:"qbo_realm_id_update",messageText:"failed",type:"error"})]))),I((o=>h([mi(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(dC.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 $;const{uiState:e}=i.value.companyTaskManagerViewState;return p(Vn(0,e.sortKey,e.sortOrder,!1,e.filterText,t))}))),(n,i,r)=>n.pipe(S(Gn.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=>T(o)&&o.data?p(vx(o.data.preferences.card_order)):p(Dy(o.status)))),I((o=>p(Dy(f("Unexpected Error","User preferences put REST API call errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(cF.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=>V(o)&&o.data!=null?p(pt(o.data.card),F({users:o.data.users}),K(o.data.user_roles),Ad({chargeCardId:e,fetchState:"Completed"})):p(Ad({chargeCardId:e,fetchState:"Error",error:o.status})))),I((o=>p(Ad({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(Lj.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=>T(c)?p(tt(c.data?.deposit_accounts??[]),N({messageSection:"update_zeni_account_nickname",messageText:"success",type:"success"}),hl({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}]}),hl({depositAccountId:e,updateType:a,fetchState:"Error",error:c.status})))),I((c=>p(N({messageSection:"update_zeni_account_nickname",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:JSON.stringify(c)}]}),hl({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(Ur.match),y((r=>{const t=i.value,{transactionState:e,expenseAutomationReconciliationViewState:a,expenseAutomationViewState:{selectedPeriodByTenantId:s}}=t,{selectedAccountId:o}=a,c=s[Q(t).tenantId],d=[],{selectedTransactionIds:l}=r.payload;if(o!=null){const u=[],m=wa(t,o,c);if(m==null)return h(d);const _=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=Zx(e,k);C!=null&&u.push(C)}));const v=m.account.accountType,b=(function(k,C,B){let J=ca(C.amount);const L=B==="credit_card";return k.forEach((M=>{M.transactionDirection==="payment"?J=L?J.plus(ca(M.amount.amount)):J.minus(ca(M.amount.amount)):M.transactionDirection==="deposit"&&(J=L?J.minus(ca(M.amount.amount)):J.plus(ca(M.amount.amount)))})),{amount:parseFloat(J.toFixed(2)),currencyCode:C.currencyCode,currencySymbol:C.currencySymbol}})(u,_,v),{variance:E,variancePercentage:P}=(function(k,C){const B=ca(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}})(b,g),O={currencyCode:g.currencyCode,currencySymbol:g.currencySymbol},x=YE(u,"deposit",O),U=YE(u,"payment",O);d.push(Xx({clearedBalance:b,variance:E,variancePercentage:P,deposits:x,payments:U}))}return h(d)}))),(n,i,r)=>n.pipe(S(nB.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=>T(o)?p(Se({files:o.data?.files??[]}),sB({fileId:e})):p(uh({fileId:e,status:o.status})))),I((o=>p(uh({fileId:e,status:f("Unexpected Error","Update File REST API call errored out"+JSON.stringify(o))})))))}))),(n,i)=>n.pipe(S(oB.match),y((r=>{const{filesPayload:t}=r.payload,e=[];return e.push(Se({files:t})),h(e)}))),(n,i,r)=>n.pipe(S(tJ.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=>T(o)&&o.data!=null?[Va([o.data],"merge"),G(Kr([o.data])),cS({invoiceId:a}),N({messageSection:"invoicing_invoice_saved",messageText:"success",type:"success"})]:h([Ss({error:o.status,invoiceId:a}),N({messageSection:"invoicing_invoice_saved",messageText:"failed",type:"error",variables:Ne(o.status)})]))),I((o=>h([Ss({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(mt.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),Ru.forEach((u=>{const m=FP(c,u);m!=null&&a.push(m);const _=Mu(c,u);_!=null&&s.push(_)}))})),r.push(X(a,"account_list"),We("class_list",s),ue(t,"merge")),Object.keys(o).forEach((c=>{const d=o[c];r.push(Vu(d.transactions,d.currency.currency_code,d.currency.currency_symbol))})),r.push(F({users:e,updateType:"merge"})),r.push(qP({jeSchedulesTransactionsPayload:i.payload.jeSchedulesTransactionsPayload}))}return h(r)}))),(n,i,r)=>n.pipe(S(yq.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(T(o)&&o.data!=null){const c=[tt(o.data?.deposit_accounts??[]),_q(e)];return h(c)}return p(gb(e,o.status))})),I((o=>p(gb(e,f("Unexpected Error","Update Mapped Cash Account errored out"+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(pj.match),A((t=>{const{companyId:e}=t.payload,a=It(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(T(m)&&m.data!=null){const _=[F({users:m.data.users}),K(m.data.user_roles),H({payload:m.data.companies,schema:{}}),Le({companyId:m.data.companies[0].company_id}),al({companyId:m.data.companies[0].company_id}),N({messageSection:d?"reimbursement_update_mileage":"reimbursement_create_mileage",messageText:"success",type:"success"}),Gb()];return h(_)}return p(zb(m.status),N({messageSection:d?"reimbursement_update_mileage":"reimbursement_create_mileage",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:m.status.message}]}))})),I((m=>p(zb(f("Unexpected Error","Update Mileage details errored out"+JSON.stringify(m)))))))}return p(Gb())}))),(n,i,r)=>n.pipe(S(Dv.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?st(i.value.addressState,a?.addressId):void 0,o=IQ({...t.payload},a,s);return r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user/self`,o).pipe(y((c=>{if(T(c)&&c.data!=null){const d=Jv(e,c.data.users),l=Jv(vM(e,c.data.user_roles),c.data.users),u=[];switch(t.payload.origin){case"CardUserOnboarding":u.push(IM());break;case"CompleteProfile":u.push(N({messageSection:"complete_profile_done",messageText:"success",type:"success"}))}return u.push(K(c.data.user_roles),F({users:c.data.users})),c.data.addresses!=null&&u.push(G(c.data.addresses)),l&&d!=null&&u.push(wv({userType:"manager",usersPayload:l})),u.push(xv()),u.push(bM()),p(...u)}return p($v(c.status))})),I((c=>p($v(f("Unexpected error","Update User Profile REST API call errored out"+JSON.stringify(c)))))))}))),EY,(n,i,r)=>n.pipe(S(Nw.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=>V(l)?p(N({messageSection:"notification_mark_as_read",messageText:"success",type:"success"}),Pg(c,a),Aw(e)):p(Ng({status:l.status,notificationGroup:e}),N({messageSection:"notification_mark_as_read",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]})))),I((l=>p(Ng({status:f("Unexpected Error","Update All Notifications Status API call errored out"+JSON.stringify(l)),notificationGroup:e})))))}))),(n,i,r)=>n.pipe(S(Ow.match),A((t=>{const{notificationGroup:e,status:a,notificationIds:s,showSnackBarOnSuccess:o}=t.payload,{notificationViewState:c,notificationState:d}=i.value,{stateByTab:l}=c,u=Tg(e),m=l[u],{selectedNotificationIds:_}=m,g={notifications:[]};let v=0;return s.length>0?(s.forEach((b=>{g.notifications.push({user_notification_id:b,status:a})})),v=s.length):(_.forEach((b=>{g.notifications.push({user_notification_id:b,status:a})})),u!=="comments"&&_.forEach((b=>{d.notificationById[b]!=null&&d.notificationById[b].status!==a&&(v+=1)}))),r.putAndGetJSON(`${r.apiEndPoints.notificationMicroServiceBaseUrl}/1.0/user-notification`,{notifications:g.notifications}).pipe(A((b=>{if(V(b)){const E=g.notifications.map((O=>O.user_notification_id)),P=[];return o===!0&&P.push(N({messageSection:"notification_mark_as_read",messageText:"success",type:"success"})),P.push(Pg(E,a),Cw(e,v)),h(P)}return p(Ag({status:b.status,notificationGroup:e}),N({messageSection:"notification_mark_as_read",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:b.status.message}]}))})),I((b=>p(Ag({status:f("Unexpected Error","Update Notification Status API call errored out"+JSON.stringify(b)),notificationGroup:e})))))}))),(n,i,r)=>n.pipe(S(m$.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(T(c)&&c.data!=null){const d=[H({payload:c.data.companies,schema:{}}),y$()];return h(d)}return p(N({messageSection:"onboarding_customer_view_complete",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:c.status.message}]}),Qg(c.status))})),I((c=>p(Qg(f("Unexpected Error","Update - Onboarding Customer View Complete Status errored out"+JSON.stringify(c)))))))}))),(n,i,r)=>n.pipe(S(_$.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(V(a)){const s=[h$()];return a.data?.companies!=null&&s.unshift(H({payload:a.data.companies,schema:{}})),h(s)}return p(Wg(a.status))})),I((a=>p(Wg(f("Unexpected Error","Update - Onboarding Customer View Dashboard Loaded errored out"+JSON.stringify(a)))))))}))),(n,i,r)=>n.pipe(S(v$.match),y((t=>{const{companyId:e,officerType:a,sendForVerification:s,reCalculateCurrentStep:o=!1,isBillingAddressUpdate:c,businessProfile:d}=t.payload,{onboardingCustomerViewState:l}=i.value,{companyDetails:u,primaryContactDetails:m,companyOfficerUpdateStatus:_,currentStep:g,currentSubStep:v}=l,b=u.localData,E=m.localData;let P;c===!1&&a!=null&&(P=_[a].localData);const{newAddressState:O}=i.value.addressViewState;let x={};const U=c===!0||d!=null;if(b!=null){const k=It(i.value,e,[]),C=c===!0?O?.subscription_billing_address.addressToCreate:void 0;C==null&&d==null||(x=rQ(b,C,d!=null?aQ(d,k?.company.company.incInfo):{}));const B=O?.company_address?.addressToCreate,J=O?.company_registered_address?.addressToCreate,L=a?.toLowerCase().concat("_address"),M=O?.[L]?.addressToCreate,q=E?.userId==null||E?.email!==k?.primaryContact?.user.email,R=uT(b,s,B,J),D=E!=null&&E.email?pT(E,q):{},w=P!=null&&P.email?mT(P,!1,M):{},z=g==="verification"&&v==="company_officer";c===!1&&d==null&&(x=z?{company:tQ(b),company_officer:w}:{company:R,primary_contact_user:D});const ee=U?"setup_billing":z?"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:"common",sendForVerification:"common"}};let pe;return pe=U?W[ee].save:s===!0?W[ee].sendForVerification:W[ee].save,r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${e}`,x).pipe(y((ne=>{if(T(ne)&&ne.data!=null){const{users:ae}=ne.data,me=[F({users:ae}),K(ne.data.user_roles),H({payload:ne.data.companies,schema:{}}),G(ne.data.addresses),Se({files:ne.data.files}),X(ne.data.accounts,"onboarding"),ve(ne.data.payment_accounts)],he=Q(i.value).externalConnections,we=he?.accounting?.some((le=>le.connectionName.match(/quickbooks/i)))??!1,{allSteps:Te}=I$(i.value,e);return g==="setup_billing"&&(we===!0&&Te.includes("connect_ledger")?me.push(Sc({step:"connect_ledger"})):me.push(Sc({step:"verification"}))),me.push(Ps({companyId:ne.data.companies[0].company_id,currentStep:g,reCalculateCurrentStep:o}),N({messageSection:pe,messageText:"success",type:"success"}),b$()),h(me)}return p(N({messageSection:pe,messageText:"failed",type:"error"}),Xg(ne.status))})),I((ne=>p(Xg(f("Unexpected Error","Update Onboarding Customer View Details errored out"+JSON.stringify(ne)))))))}return h([])}))),(n,i)=>n.pipe(S(Ps.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:_}=i.value,{subscriptionPaymentAccountIds:g}=l,v=Y(o.passportView.subscriptionIDsByCompanyID,t,void 0),b=It(i.value,t,v??[]),E=Ue(s,t)?.company,P=E?.companyOnboardingInfo.subscriptionBillingAddressId;let O;P!=null&&(O=st(_,P));const x=ef(c,E?.managementInfo.companyOfficerUserIds??[]),U=E?.managementInfo.primaryContactUserId!=null?Pt(c,E?.managementInfo.primaryContactUserId):void 0,k=tf(d,E?.managementInfo.companyOfficerUserIds??[]),C=[];if(E!=null){const B=(function(ae,me,he,we){return yT(ae,me,he,we)})(E,x,k,U),{companyDetails:J,officers:L,primaryContactDetails:M}=B;let q=J;if(e==="verification"&&l.currentSubStep==="company_officer"&&l.companyDetails.localData!=null){const{companyInfo:ae}=E,{syncToken:me}=ae;q={...l.companyDetails.localData,syncToken:me}}let R,D="setup_billing";const{companyOnboardingInfo:w}=E,z=w?.onboardingInfo?.accountingConnectionCreationMode;if(g.length>0){const ae=g[0];R=P$(u,ae)}const ee=Q(i.value),W=ee.externalConnections,pe=W?.accounting[0]?.isValid??!1;if(a===!0){let ae;const{paymentAccountDetails:me}=l,{paymentAccountIds:he}=me;if(he?.length>0){const Te=he[0];ae=gc(m,Te)}const we=i.value.cardPaymentViewState;(ae?.providerVerificationStatus?.code?.includes("verified")===!0&&ae?.isLoginRequired===!1||R?.providerVerificationStatus?.code?.includes("verified")===!0||we.cardPaymentsIds.length>0)&&b?.company.company.companyOnboardingInfo.subscriptionBillingAddressId!=null&&(D="connect_ledger",pe&&(w?.onboardingInfo?.onboardingAiActivationInfo?.isOnboardingAiActivationViewed??!1)&&(D="connect_data_source"))}const{allStepsData:ne}=N$(pe,ee?.productSettings??[],z);if(ne.length>0&&ne.indexOf(D)===-1&&(D=ne[0]),C.push(A$(),O$({companyDetails:q,officers:L,primaryContactDetails:M}),_c()),O!=null&&C.push(Ye({addressType:"subscription_billing_address",addressToCreate:O})),a===!0&&(C.push(Sc({step:D})),D!==l.currentStep)){const ae=D==="verification"?"unlock-stack":"default";C.push(C$({subStep:ae}))}}if(b!=null){const B=Ql(b);B!=null&&Object.keys(B).forEach((J=>{C.push(Ye({addressType:J,addressToCreate:B[J]}))}))}return h(C)}))),(n,i,r)=>n.pipe(S(x$.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(T(o)&&o.data!=null){const c=o.data.payment_accounts.map((l=>l.payment_account_id)),d=[X(o.data.accounts,"onboarding"),ve(o.data.payment_accounts),U$(c,s)];return h(d)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),af(o.status,s))})),I((o=>p(af(f("Unexpected Error","Update Onboarding Payment Account Login Status failed "+JSON.stringify(o)),s)))))}))),(n,i,r)=>n.pipe(S(k$.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(T(o)&&o.data!=null){const c=o.data.payment_accounts.map((l=>l.payment_account_id)),d=[X(o.data.accounts,"onboarding"),ve(o.data.payment_accounts),B$(c,s)];return h(d)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),rf(o.status,s))})),I((o=>p(rf(f("Unexpected Error","Update Onboarding Payment Account Status failed "+JSON.stringify(o)),s)))))}))),(n,i,r)=>n.pipe(S(hq.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(T(c)&&c.data!=null){const d=[X(c.data.accounts,za(s)),ve(c.data.payment_accounts),Sq(o)];return h(d)}return p(fb(c.status,o))})),I((c=>p(fb(f("Unexpected Error","Update Payment Account errored out"+JSON.stringify(c)),o)))))}))),(n,i,r)=>n.pipe(S(gq.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(T(d)&&d.data!=null){const l=d.data.payment_accounts.map((m=>m.payment_account_id)),u=[X(d.data.accounts,za(s)),ve(d.data.payment_accounts),fq(l,o,c)];return h(u)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),vb(d.status,o,c))})),I((d=>p(vb(f("Unexpected Error","Update Payment Account Login Status failed "+JSON.stringify(d)),o,c)))))}))),(n,i,r)=>n.pipe(S(vq.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(T(d)&&d.data!=null){const l=[X(d.data.accounts,za(s)),ve(d.data.payment_accounts),Iq(o,c)];return h(l)}return p(N({messageSection:"plaid_connection",messageText:"failed",type:"error"}),Ib(d.status,o,c))})),I((d=>p(Ib(f("Unexpected Error","Update Payment Account Status failed "+JSON.stringify(d)),o,c)))))}))),(n,i,r)=>n.pipe(S(dF.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=>V(o)&&o.data!=null?p(pt(o.data.card),F({users:o.data.users}),K(o.data.user_roles),Od({chargeCardId:e,fetchState:"Completed"})):p(Od({chargeCardId:e,fetchState:"Error",error:o.status})))),I((o=>p(Od({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(Uj.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(T(o)){const c=[kj(o.data||{fund_allocation_percentages:{},custom_corporate_id:null})];return a&&c.push(N({messageSection:"treasury_update_portfolio_allocation",messageText:"success",type:"success"})),h(c)}return p(r0(o.status))})),I((o=>p(r0(f("Unexpected Error",(a?"Update":"Create")+" portfolio allocation REST API call errored out: "+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(iy.match),y((t=>{let{primaryContact:e}=t.payload;const a=t.payload.companyId,{userId:s,email:o}=e,c=It(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({},oo(e),{is_changes_in_response_only:!1})]}:l=oo(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(T(u)&&m.length>0){const _=[F({users:m})];return d&&_.push(H({payload:u.data?.companies??[],schema:{}}),K(u.data?.user_roles??[]),ui({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}})),_.push(kC(a)),h(_)}return p(Sy({companyId:a,status:u.status}))})),I((u=>p(Sy({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(bq.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:qe(er(l))};case"reimbursement_setup":return{reimbursement_primary_funding_account_id:d,reimbursement_primary_funding_account_type:qe(er(l))};case"charge_card_setup":return{charge_cards_primary_funding_account_id:d,charge_cards_primary_funding_account_type:qe(er(l))};case"treasury_setup":return{treasury_accounts_primary_funding_account_id:d,treasury_accounts_primary_funding_account_type:qe(er(l))};default:return{deposit_accounts_primary_funding_account_id:d,deposit_accounts_primary_funding_account_type:qe(er(l))}}})(a,s,o)).pipe(y((c=>{if(T(c)&&c.data!=null){const d=[H({payload:c.data.companies??[],schema:{}}),Eq(a),N({messageSection:"primary_funding_account_updated",messageText:"success",type:"success",variables:[{variableName:"_productType_",variableValue:xQ(a)}]})];return h(d)}return p(bb(a,c.status))})),I((c=>p(bb(a,f("Unexpected Error","Update Primary Funding Account errored out"+JSON.stringify(c)))))))}))),(n,i,r)=>n.pipe(S(r$.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:n$(t.payload.redirectUri.href,"/")}).pipe(y((e=>{if(T(e)&&e.data!=null){const a=e.data;return p(s$(a))}return p(Fg(e.status))})),I((e=>p(Fg(f("Unexpected error","QBO Connection Pool Save errored Out: "+JSON.stringify(e)))))))))),(n,i,r)=>n.pipe(S(wR.match),A((()=>r.putAndGetJSON(`${r.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/user/self`,{has_viewed_refer_reward_plan:!0}).pipe(y((t=>V(t)?p(RR(),$R()):p(jf(t.status)))),I((t=>p(jf(f("Unexpected error","Update user refer viewed REST API call errored out"+JSON.stringify(t)))))))))),(n,i)=>n.pipe(S(al.match),y((r=>{const{companyId:t}=r.payload,e=Ue(i.value.companyState,t)?.company,a=[];return e!=null&&a.push(mj(),yj((function(s){const{configInfo:o}=s,{mileageRateConfig:c}=o,{mileageUnit:d,mileageUnitAmount:l,mileageCurrencyCode:u,mileageCurrencySymbol:m,description:_,denominationConversions:{denomination:g,denominationSymbol:v,amount:b}}=c;return{mileageDetails:{mileageUnitAmount:l!=null?la(l,u,m):void 0,mileageUnit:d,mileageCurrencyCode:u,mileageCurrencySymbol:m,denomination:g,denominationSymbol:v,mileageAmountInDenomination:b,description:_}}})(e))),h(a)}))),(n,i)=>n.pipe(S(zR.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,_=i.value.cashInCashOutState.uiState.selectedCOABalancesRange;return p(ZR({selectedCOABalancesRange:{thisPeriod:e,orderBy:a,numberOfPeriods:d.numberOfPeriods},highlightedCOABalancesRange:c}),WR({selectedCOABalancesRange:{thisPeriod:e,orderBy:a,numberOfPeriods:l.numberOfPeriods},highlightedCOABalancesRange:c}),QR({selectedCOABalancesRange:{thisPeriod:e,orderBy:a,numberOfPeriods:u.numberOfPeriods},highlightedCOABalancesRange:c}),HR({selectedCOABalancesRange:{thisPeriod:e,orderBy:a,numberOfPeriods:m.numberOfPeriods},highlightedCOABalancesRange:c}),YR({selectedCOABalancesRange:{thisPeriod:e,orderBy:a,numberOfPeriods:_.numberOfPeriods},highlightedCOABalancesRange:c}),KR({thisPeriod:r.payload.highlightedCOABalancesRange!=null?r.payload.highlightedCOABalancesRange.thisPeriod:e,numberOfPeriods:s,orderBy:a}))}))),(n,i)=>n.pipe(S(Kf.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=bc(i.value),o=Yf(t,e,a);return p(ev({isCompareModeOn:e,additionalBalances:e?[a]:[],maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),Xf({isCompareModeOn:e,additionalBalances:e?[a]:[],maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),Zf({isCompareModeOn:e,additionalBalances:e?[a]:[],maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),Wf({isCompareModeOn:e,additionalBalances:e?[a]:[],maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),Qf({isCompareModeOn:e,additionalBalances:e?[a]:[],maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),Hf({firstMonthOfFY:r.payload.firstMonthOfFY,isCompareModeOn:e,additionalBalances:o,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight,coaBalances:s.balancesInTimeframe}))}))),(n,i)=>n.pipe(S(zf.match),A((r=>{const{additionalBalances:t}=r.payload,e=i.value.reportUIOptionsState.compareMode==="compare_mode_percent"?"this_period_vs_last_period_percent":"this_period_vs_last_period",a=r.payload.isCompareModeOn?[e]:[],s=bc(i.value),o=Yf(t,r.payload.isCompareModeOn,e),c=[ev({isCompareModeOn:r.payload.isCompareModeOn,additionalBalances:a,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),Xf({isCompareModeOn:r.payload.isCompareModeOn,additionalBalances:a,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),Zf({isCompareModeOn:r.payload.isCompareModeOn,additionalBalances:a,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),Wf({isCompareModeOn:r.payload.isCompareModeOn,additionalBalances:a,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),Qf({isCompareModeOn:r.payload.isCompareModeOn,additionalBalances:a,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight}),Hf({firstMonthOfFY:r.payload.firstMonthOfFY,isCompareModeOn:r.payload.isCompareModeOn,additionalBalances:o,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToHighlight,coaBalances:s.balancesInTimeframe})];return r.payload.isCompareModeOn&&c.push(an(r.payload.firstMonthOfFY,!1,r.payload.maxNumOfPeriodsToHighlight)),h(c)}))),(n,i)=>n.pipe(S(XR.match),A((r=>{const t=bc(i.value);return p(n1({thisPeriod:r.payload.thisPeriod}),r1({thisPeriod:r.payload.thisPeriod}),a1({thisPeriod:r.payload.thisPeriod}),ym({thisPeriod:r.payload.thisPeriod}),pm({thisPeriod:r.payload.thisPeriod}),e1({firstMonthOfFY:r.payload.firstMonthOfFY,thisPeriod:r.payload.thisPeriod,coaBalances:t.balancesInTimeframe,maxNumOfPeriodsToHighlight:r.payload.maxNumOfPeriodsToSelect??t1.maxNumOfPeriodsToHighlight}))}))),n=>n.pipe(S(s1.match),A((i=>p(l1(i.payload),d1(i.payload),c1(i.payload),i1(i.payload),o1(i.payload))))),n=>n.pipe(S(jP.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=>Lu(m))),u=xo(o);if(t.accounts!=null){const m=t.accounts,_=jl(m,u,e);_.length>0&&r.push(Pn(_,d,s,a))}if(t.account_groups!=null){const m=t.account_groups,_=[],g=[];Object.keys(m).forEach((v=>{const b=c.find((E=>v===E.account_group_id));if(b!=null){const E=Object.keys(m[v].accounts),P=Fu(E,l);_.push({accountGroupMetadataPayload:b,accountGroupBalances:m[v],nestedAccountIds:P});const O=jl(m[v].accounts,u,e);g.push(...O)}})),r.push(GP(a,_,d,e,s)),r.push(Pn(g,d,s,a))}return h(r)}))),n=>n.pipe(S(ie.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=zP(t),u=[],m=[],_=c.map((v=>Lu(v))),g=xo(c);return e.classes!=null&&Object.keys(e.classes).forEach((v=>{const b=l[v].nestedClassId,E=l[v].classMetadataPayload,P=e.classes[v],O="accounts"in P?P.accounts:void 0;O!=null&&m.push(...jl(O,g,a,{parentClassId:b,sectionId:a}));const x=O!=null?Fu(Object.keys(O),_):[];E!=null&&u.push({nestedClassId:b,classMetadata:E,classBalances:P,nestedAccountIds:x})})),u.length>0&&r.push(KP(o,s,a,u,d)),m.length>0&&r.push(Pn(m,d,o,s)),h(r)}))),n=>n.pipe(S(ce.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=xo(c),l=[];return t.projects!=null&&Object.keys(t.projects).forEach((u=>{const m=t.projects[u],_="accounts"in m?m.accounts:void 0;_!=null&&CY(_,d,e,{projectId:u,sectionId:e},l)})),l.length>0&&r.push(Pn(l,o,s,a)),h(r)}))),(n,i,r)=>n.pipe(S(BO.match),y((t=>{const e=xe(i.value.vendorState,t.payload),a=[vm({vendorId:void 0}),wn(t.payload)];return e!=null&&a.push(Sr({localData:so(e,i.value)})),h(a)}))),(n,i)=>n.pipe(S(Le.match),y((r=>{const{companyId:t}=r.payload,e=Y(i.value.companyViewState.passportView.subscriptionIDsByCompanyID,t,void 0),a=It(i.value,t,e??[]),s=Ue(i.value.companyState,t)?.company,o=ef(i.value.userState,s?.managementInfo.companyOfficerUserIds??[]),c=s?.managementInfo.primaryContactUserId!=null?Pt(i.value.userState,s?.managementInfo.primaryContactUserId):void 0,d=tf(i.value.userRoleState,s?.managementInfo.companyOfficerUserIds??[]),l=[];if(s!=null){const u=yT(s,o,d,c);l.push(E$(),T$(u)),l.push(hy(LE))}if(a!=null){const u=Ql(a);u!=null&&Object.keys(u).forEach((m=>{l.push(Ye({addressType:m,addressToCreate:u[m]}))}))}return h(l)}))),(n,i,r)=>n.pipe(S(eU.match),A((t=>{const{accountId:e,selectedPeriod:a,statementUploadId:s}=t.payload,o=i.value.expenseAutomationReconciliationViewState.accountReconciliationRecordsBySelectedPeriod[be(a)]?.reconciliationByAccountID[e],c=o?.parsedStatementData,d=o?.localData?.statementUpdateLocalDataByUploadId?.[s];if(c==null||d==null)return p(bt({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(bt({accountId:e,selectedPeriod:a,error:f("Invalid Data","One or more edited transactions are missing statement transaction ids")}));const l=((m,_)=>Yx(KE(m,_.statementUpload)))(d,c),u=`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/2.0/statement-uploads/${s}`;return r.putAndGetJSON(u,l).pipe(y((m=>{if(T(m)===!0&&m.data!=null)return p(Yn({accountId:e,selectedPeriod:a,parsedStatementData:Zy(m.data)}),Wy({accountId:e,selectedPeriod:a}));const _=Xy(m)?e_(m):null;return p(bt({accountId:e,selectedPeriod:a,error:m.status,dateConflict:_}))})),I((m=>p(bt({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(cz.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:_}=l,g=Y(_.taskByID,u);return tW(l,{...g,...m})})(e,o,s);return r.putAndGetJSON(`${r.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${o}`,d).pipe(y((l=>T(l)&&l.data!=null?h([ze(l.data.tasks),dz()]):p(Y0({error:l.status})))),I((l=>p(Y0({error:f("Unexpected Error","update task from list view REST API call errored out"+JSON.stringify(l))})))))}))),(n,i,r)=>n.pipe(S(az.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(T(o)&&o.data!=null){const c=[L0(o.data.task_groups[0]),Ul({fetchState:"Completed"}),rz({taskGroupId:e,taskGroupName:a}),N({messageSection:"task_group_update_success",messageText:"success",type:"success"})];return h(c)}return p(Ul({fetchState:"Error",error:o.status}))})),I((o=>p(Ul({fetchState:"Error",error:f("Unexpected Error","Update Task Group REST API call errored out"+JSON.stringify(o))})))))}))),(n,i,r)=>n.pipe(S(rE.match),y((t=>{const{transactionState:e,vendorState:a,transactionDetailState:s}=i.value,o=ss(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,_,g,v,b,E){const P=Be(g),O=Ot(u,P),x=Y(_.transactionDetailById,P,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=xe(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=cW(v.updates,O,b,E,B,J,C,v.deletedLineIds,v.addedLines);return{entity_related_updates:uW(v.entityRelatedUpdates),transaction_id:g.id,transaction:L}}})(e,a,s,d,l,c,o)).pipe(y((u=>{if(T(u)&&u.data!=null){const m=Or(u.data.transaction),_=Be(m),g=[];u.data.vendors!=null&&g.push(ue(u.data.vendors,"merge")),g.push(Mt(_,u.data.transaction,"replace")),g.push(Cr({transactionId:m,vendorId:u.data.vendors?.[0]?.vendor_id})),g.push(ro(m,"Completed"));const v=Ea(i.value.accountState,i.value.accountListState,"accountList"),b=Jz(u.data.transaction),E=ot(i.value),P=dW(b,v,E,t.payload.isExpenseAutomationEnabled);t.payload.transactionSaveUpdates.markAsMiscatUpdates===!0&&P.length>0?g.push(tE(m,t.payload.transactionSaveUpdates,t.payload.isExpenseAutomationEnabled,P)):(g.push(Bl({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(De([u.data.transaction],(U=>U.transaction_id),"merge"));const O=os(b),x=wz(O);return g.push(nh(m,O,x)),h(g)}return $z(u)?p(ro(t.payload.transactionId,"Error",u.status),Rz({transactionId:t.payload.transactionId})):p(ro(t.payload.transactionId,"Error",u.status))})),I((u=>p(ro(t.payload.transactionId,"Error",f("Unexpected Error",`REST API call errored out ${u}`))))))}))),(n,i,r)=>n.pipe(S(MV.match),y((t=>{const e=i.value,{emailId:a,vendorId:s,billId:o}=t.payload,c=e.vendorState?.vendorByID?.[s],d=(function(u,m,_){const g={};if(g.vendor_name=m.name,g.account=null,m.accountId!=null){const E=rt(u.accountState,m.accountId,"account_list");E!=null&&(g.account=dr(E))}if(g.accounting_class=null,m.classId!=null){const E=Em(u.classState,{classId:m.classId,reportId:"class_list"});E!=null&&(g.accounting_class=vn(E))}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??Qn.currencyCode,g.vendor_currency_symbol=m.vendorCurrencySymbol??Qn.currencySymbol;const v=wT(u.contactState,m.contactIds);g.contacts=v.map((E=>$n(E)));const b=$n({fullName:"",email:_,phone:""});return g.contacts?.push(b),g})(e,c,a);let l=e.editBillDetailViewState.newBillState;if(o!=null){const u=Ie(o);l=e.editBillDetailViewState.editBillStateById[u]}return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${s}`,d).pipe(y((u=>{if(T(u)){const m=u.data?.vendors[0]!=null?gr(u.data?.vendors[0]):void 0,_=ht(u.data?.vendors??[]),g=[ue(u.data?.vendors??[]),ft(u.data?.vendors[0].contacts??[]),G(_),Ve(u.data?.vendors[0].bank_accounts??[])];return g.push(St({billDetailLocalData:{...l.billDetailLocalData,vendor:m,paymentDetailsSection:{...l.billDetailLocalData.paymentDetailsSection,paymentTo:void 0},isCollectToAccountInfoFromVendorContact:!0,toAccountVendorEmail:a},billId:o})),g.push(od("Completed")),g.push(N({messageSection:"update_vendor",messageText:"success",type:"success"})),h(g)}return p(od("Error",u.status),N({messageSection:"update_vendor",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:u.status.message}]}))})),I((u=>p(od("Error",f("Unexpected Error",`REST API call errored out ${JSON.stringify(u)}`))))))}))),(n,i,r)=>n.pipe(S(tU.match),y((t=>{const{accountId:e,selectedPeriod:a,payload:s,statementAccountScope:o}=t.payload,{start:c,end:d}=Re(a,!0),l=rt(i.value.accountState,e,"account_reconciliation");if(l==null)return p(Pi({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Account not found")}));const u=l.accountType=="credit_card"?"card":"bank",m=i.value.expenseAutomationReconciliationViewState.accountReconciliationRecordsBySelectedPeriod[be(a)]?.reconciliationByAccountID[e]?.localData?.statementAccountScope,_=(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:_};return r.postAndGetJSON(`${r.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/statements`,g).pipe(y((v=>{if(T(v)===!0&&v.data!=null){const b=[],E=Ja(e,a);return b.push(aU(E,v.data)),b.push(Se({files:[v.data.file]})),b.push(rU({accountId:e,selectedPeriod:a})),h(b)}return p(Pi({accountId:e,selectedPeriod:a,error:v.status}))})),I((v=>p(Pi({accountId:e,selectedPeriod:a,error:f("Unexpected Error","Upload Account Statement REST API call errored out "+JSON.stringify(v))})))))}))),n=>n.pipe(S(Mz.match),A((i=>{const r=Or(i.payload.payload),t=Be(r);return p(N({messageSection:"receipts_upload",messageText:"success",type:"success"}),Mt(t,i.payload.payload))}))),(n,i)=>n.pipe(S(Dk.match),y((r=>{const{transactionPayload:t,updateType:e}=r.payload,a=[],s=Q(i.value),o=i.value.expenseAutomationViewState.selectedPeriodByTenantId;if(a.push(Mt(t.transaction_id,t,e)),s!=null){const c=o[s.tenantId];c!=null&&a.push(it({tenantId:s.tenantId,period:c,refreshViewInBackground:!0}))}return h(a)}))),(n,i)=>n.pipe(S(Gk.match),y((r=>{const{transactionPayload:t,updateType:e}=r.payload,a=[],s=Q(i.value),o=i.value.expenseAutomationViewState.selectedPeriodByTenantId;if(a.push(Mt(t.transaction_id,t,e)),s!=null){const c=o[s.tenantId];c!=null&&a.push(it({tenantId:s.tenantId,period:c,refreshViewInBackground:!0}))}return h(a)}))),(n,i,r)=>n.pipe(S(lV.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(V(o)){const c=[];return c.push(uV(o.data?.validation_results??[])),h(c)}return p(gI(o.status))})),I((o=>p(gI(f("Unexpected Error","Bill bulk review action REST API call errored out "+JSON.stringify(o)))))))}))),(n,i,r)=>n.pipe(S(mK.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=yK(e,a.vendor1099DetailsLocalData,c,o);return r.putAndGetJSON(`${r.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors/${c}`,d,{},s).pipe(y((l=>{if(T(l)&&l.data!=null){const u=ht(l.data.vendors),m=Mn(l.data.vendors),_=[ue(l.data.vendors),ft(l.data.vendors[0].contacts??[]),G(u),Ve(m)];return _.push(_K(t.payload.vendorId)),_.push(wl("Completed")),_.push(N({messageSection:"update_vendor",messageText:"success",type:"success"})),h(_)}return p(wl("Error",l.status),N({messageSection:"update_vendor",messageText:"failed",type:"error",variables:[{variableName:"_api-error_",variableValue:l.status.message}]}))})),I((l=>p(wl("Error",f("Unexpected Error",`Vendors Filing 1099 Upload Details save REST API call errored out ${JSON.stringify(l)}`))))))}))),TY,PY,NY,(n,i)=>n.pipe(S(Zc.match),A((r=>{const{billId:t}=r.payload;return n.pipe(S((e=>ln.match(e))),Oe(1),y((()=>p(Qc(t)))))}))),(n,i)=>n.pipe(S(Sg.match),A((r=>{const{cacheOverride:t,forecastId:e}=r.payload;return n.pipe(S((a=>ds.match(a)||Lr.match(a))),Oe(1),y((()=>p(hg(t,e)))))}))),(n,i)=>n.pipe(S(df.match),A((r=>{const{cacheOverride:t,forecastId:e}=r.payload;return n.pipe(S((a=>ds.match(a)||Lr.match(a))),Oe(1),y((()=>p(cf(t,e)))))}))),(n,i)=>n.pipe(S(iv.match),A((r=>{const{cacheOverride:t,forecastId:e}=r.payload;return n.pipe(S((a=>ds.match(a)||Lr.match(a))),Oe(1),y((()=>p(ov(t,e)))))}))),(n,i)=>n.pipe(S(zs.match),Ma((r=>{const{reimbursementId:t}=r.payload;return n.pipe(S((e=>hr.match(e))),Oe(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=[]}=Pa(a,o,"merchant"),m=t!=null?a.reimbursementState.reimbursementById[t]:void 0;return h(l.map((_=>jd({reimbursementId:t,lineId:_,recommendations:u,reimbursementStageCode:m?.reimbursementInfo.stage.code,shouldAutofill:!0}))))}}return h([])})))}))),(n,i)=>n.pipe(S(II.match),A((r=>{const{vendorId:t}=r.payload;return n.pipe(S((e=>Im.match(e))),Oe(1),y((()=>{const e=i.value,a=[],s=xe(e.vendorState,t);let o=e.editBillDetailViewState.newBillState;if(r.payload.billId!=null){const c=Ie(r.payload.billId);o=e.editBillDetailViewState.editBillStateById[c]}return s!=null&&(s.vendorCurrencyCode==null||ei(s.vendorCurrencyCode)||a.push(Aa(!0,{amount:o.billDetailLocalData.totalAmount?.amount??0,currencyCode:s.vendorCurrencyCode??"USD",currencySymbol:s.vendorCurrencySymbol??"$"},"USD",r.payload.billId)),a.push(St({billDetailLocalData:uu(e,o,s),billId:r.payload.billId})),a.push(ia(s.qboId,!1))),h(a)})))}))),(n,i)=>n.pipe(S(bI.match),A((r=>{const{invoiceProcessingPayload:t,isVendorRecommendationFeatureEnabled:e,billId:a}=r.payload;return n.pipe(S((s=>qc.match(s)||ad.match(s))),Oe(1),y((()=>p(td(t,e,a)))))}))),(n,i)=>n.pipe(S(Kv.match),A((r=>{const{billId:t,billDetail:e,vendorId:a}=r.payload;return n.pipe(S((s=>qc.match(s))),Oe(1),y((()=>h([ln({billId:t,billDetail:e}),Xa(t,"Completed",void 0,a)]))))}))),(n,i)=>n.pipe(S(Dn.match),A((r=>{const{vendorName:t}=r.payload;return n.pipe(S((e=>hr.match(e))),Oe(1),y((()=>{const e=i.value;if(t!=null){const{recommendations:a=[]}=Pa(e,t,"vendor");return p(fm({recommendations:a,vendorId:void 0}))}return h([])})))}))),(n,i,r)=>n.pipe(S(uL.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=>V(o)?p(ld({fetchState:"Completed"})):p(ld({fetchState:"Error",error:o.status})))),I((o=>p(ld({fetchState:"Error",error:f("Unexpected Error","Fetch wiseRedirect REST API call errored out"+JSON.stringify(o))})))))})))],OW=new Set(AY),CW=zK(...AW.filter((n=>!OW.has(n)))),BW=(n,i,r)=>CW(n,i,r).pipe(Ee(OY),I(((t,e)=>(console.error(t),e))));export{BW as featureRootEpic};