@zeniai/client-epic-state 4.15.41 → 4.15.42

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 (248) hide show
  1. package/README.md +1 -19
  2. package/lib/commonPayloadTypes/recommendationPayload.d.ts +0 -1
  3. package/lib/commonStateTypes/common.d.ts +1 -1
  4. package/lib/commonStateTypes/fiscalYearHelpers/getFYMonths.d.ts +2 -2
  5. package/lib/commonStateTypes/fiscalYearHelpers/getFYQuarterAndYear.d.ts +2 -2
  6. package/lib/commonStateTypes/timePeriod.d.ts +7 -7
  7. package/lib/commonStateTypes/timePeriod.js +2 -2
  8. package/lib/commonStateTypes/viewAndReport/agingReportStateTypes.d.ts +1 -1
  9. package/lib/commonStateTypes/viewAndReport/agingReportStateTypes.js +1 -1
  10. package/lib/commonStateTypes/viewAndReport/viewAndReport.d.ts +2 -2
  11. package/lib/commonStateTypes/viewAndReport/viewAndReport.js +0 -1
  12. package/lib/configureStore.js +1 -2
  13. package/lib/entity/account/accountSelector.d.ts +3 -3
  14. package/lib/entity/account/accountState.d.ts +1 -1
  15. package/lib/entity/account/pickAndMergeForecastAccountReport.d.ts +1 -1
  16. package/lib/entity/accountGroup/accountGroupSelector.d.ts +22 -22
  17. package/lib/entity/accountGroup/accountGroupState.d.ts +1 -1
  18. package/lib/entity/approvalRule/approvalRuleState.d.ts +2 -2
  19. package/lib/entity/billPay/billTransaction/billTransactionState.d.ts +4 -4
  20. package/lib/entity/chargeCard/chargeCard.d.ts +1 -1
  21. package/lib/entity/chargeCardTransaction/chargeCardTransaction.d.ts +1 -1
  22. package/lib/entity/class/classReducer.d.ts +4 -4
  23. package/lib/entity/class/classState.d.ts +1 -1
  24. package/lib/entity/company/companyReducer.js +1 -0
  25. package/lib/entity/customer/customerPayload.d.ts +1 -1
  26. package/lib/entity/customer/customerPayload.js +6 -16
  27. package/lib/entity/depositAccountTransaction/depositAccountTransaction.d.ts +1 -1
  28. package/lib/entity/entityApprovalStatus/entityApprovalStatusState.d.ts +2 -2
  29. package/lib/entity/file/fileState.d.ts +3 -3
  30. package/lib/entity/forecast/forecastState.d.ts +1 -1
  31. package/lib/entity/jeSchedules/jeSchedulesReducer.d.ts +2 -2
  32. package/lib/entity/jeSchedules/jeSchedulesTypes.d.ts +2 -2
  33. package/lib/entity/notification/types/notificationTypes.d.ts +2 -2
  34. package/lib/entity/sectionAccountsView/sectionAccountsView.d.ts +1 -1
  35. package/lib/entity/sectionClassesViewV2/sectionClassesView.d.ts +1 -1
  36. package/lib/entity/sectionClassesViewV2/sectionClassesViewReducer.d.ts +2 -2
  37. package/lib/entity/snackbar/snackbarTypes.d.ts +2 -2
  38. package/lib/entity/snackbar/snackbarTypes.js +0 -4
  39. package/lib/entity/task/taskState.d.ts +3 -3
  40. package/lib/entity/tenant/clearAllEpic.d.ts +2 -4
  41. package/lib/entity/tenant/clearAllEpic.js +0 -4
  42. package/lib/entity/tenant/tenantReducer.d.ts +2 -2
  43. package/lib/entity/tenant/tenantReducer.js +1 -0
  44. package/lib/entity/transaction/payloadTypes/customerTransactionPayload.d.ts +1 -1
  45. package/lib/entity/transaction/payloadTypes/customerTransactionPayload.js +2 -1
  46. package/lib/entity/transaction/payloadTypes/transactionPayload.d.ts +0 -2
  47. package/lib/entity/transaction/payloadTypes/transactionPayload.js +6 -9
  48. package/lib/entity/transaction/payloadTypes/vendorTransactionPayload.d.ts +1 -9
  49. package/lib/entity/transaction/payloadTypes/vendorTransactionPayload.js +2 -24
  50. package/lib/entity/transaction/stateTypes/attachment.d.ts +2 -2
  51. package/lib/entity/transaction/stateTypes/transaction.d.ts +1 -3
  52. package/lib/entity/transaction/stateTypes/transactionType.d.ts +1 -1
  53. package/lib/entity/transaction/stateTypes/transactionType.js +1 -1
  54. package/lib/entity/transaction/stateTypes/vendorTransaction.d.ts +0 -5
  55. package/lib/entity/transaction/stateTypes/vendorTransaction.js +1 -5
  56. package/lib/entity/transaction/toSupportedTransaction.js +1 -6
  57. package/lib/entity/transaction/transactionReducer.d.ts +0 -17
  58. package/lib/entity/transaction/transactionReducer.js +2 -47
  59. package/lib/entity/transaction/transactionSelector.d.ts +0 -2
  60. package/lib/entity/transaction/transactionSelector.js +0 -5
  61. package/lib/entity/transaction/transactionState.d.ts +4 -6
  62. package/lib/entity/vendorExpense/vendorExpenseReducer.js +1 -0
  63. package/lib/entity/vendorExpense/vendorExpenseSelector.d.ts +2 -2
  64. package/lib/epic.d.ts +1 -6
  65. package/lib/epic.js +1 -6
  66. package/lib/index.d.ts +13 -22
  67. package/lib/index.js +27 -56
  68. package/lib/init.d.ts +1 -2
  69. package/lib/init.js +2 -9
  70. package/lib/reducer.d.ts +1 -7
  71. package/lib/reducer.js +0 -6
  72. package/lib/view/accountList/accountListReducer.js +3 -1
  73. package/lib/view/accountMappingView/accountMappingReducer.js +1 -0
  74. package/lib/view/apAgingView/apAgingDetail/apAgingDetailReducer.js +2 -1
  75. package/lib/view/auditReportView/auditReportViewReducer.d.ts +2 -2
  76. package/lib/view/auditReportView/auditReportViewState.d.ts +2 -2
  77. package/lib/view/balanceSheet/balanceSheetReducer.js +6 -1
  78. package/lib/view/bankAccountView/bankAccountViewReducer.js +1 -0
  79. package/lib/view/billPayCard/billPayCardSelector.d.ts +2 -2
  80. package/lib/view/cardBalance/cardBalanceSelector.d.ts +3 -3
  81. package/lib/view/cashBalance/cashBalanceSelector.d.ts +3 -3
  82. package/lib/view/cashFlow/cashFlowReducer.js +4 -1
  83. package/lib/view/cashInCashOut/cashInCashOutSelector.d.ts +2 -2
  84. package/lib/view/cashPosition/cashPositionReducer.js +1 -0
  85. package/lib/view/cashPosition/cashPositionSelector.d.ts +2 -2
  86. package/lib/view/common/reportsHelpers.d.ts +1 -1
  87. package/lib/view/commonVendorView/transactionVendorView/epics/saveTransactionVendorEpic.js +0 -7
  88. package/lib/view/commonVendorView/vendorView/epics/fetchAndUpdateVendorRecommendationsEpic.js +3 -1
  89. package/lib/view/commonVendorView/vendorsTabVendorView/vendorsTabVendorViewReducer.d.ts +2 -2
  90. package/lib/view/companyTaskManagerView/companyTaskManagerViewReducer.d.ts +2 -2
  91. package/lib/view/companyView/companyViewReducer.d.ts +1 -1
  92. package/lib/view/companyView/companyViewReducer.js +10 -1
  93. package/lib/view/companyView/types/cockpitTypes.d.ts +3 -3
  94. package/lib/view/companyView/types/companyPassport/companyUsersLocalData.d.ts +1 -1
  95. package/lib/view/dashboard/dashboardEpic.js +2 -0
  96. package/lib/view/dashboard/dashboardReducer.d.ts +2 -2
  97. package/lib/view/expenseAutomationView/epics/common/fetchAllExpenseAutomationTabsEpic.d.ts +1 -2
  98. package/lib/view/expenseAutomationView/epics/common/fetchAllExpenseAutomationTabsEpic.js +10 -24
  99. package/lib/view/expenseAutomationView/epics/common/refreshExpenseAutomationCurrentTabEpic.d.ts +1 -2
  100. package/lib/view/expenseAutomationView/epics/common/refreshExpenseAutomationCurrentTabEpic.js +0 -14
  101. package/lib/view/expenseAutomationView/epics/transactionCategorization/updateTransactionCategorizationEpic.js +7 -30
  102. package/lib/view/expenseAutomationView/expenseAutomationViewReducer.d.ts +2 -2
  103. package/lib/view/expenseAutomationView/expenseAutomationViewReducer.js +5 -1
  104. package/lib/view/expenseAutomationView/expenseAutomationViewSelector.js +2 -17
  105. package/lib/view/expenseAutomationView/expenseAutomationViewState.d.ts +2 -2
  106. package/lib/view/expenseAutomationView/expenseAutomationViewState.js +1 -1
  107. package/lib/view/expenseAutomationView/helpers/saveTransactionHelper.js +42 -98
  108. package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +1 -1
  109. package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.js +10 -86
  110. package/lib/view/expenseAutomationView/reducers/jeSchedulesViewReducer.d.ts +11 -11
  111. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.d.ts +1 -12
  112. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.js +7 -66
  113. package/lib/view/expenseAutomationView/selectorTypes/expenseAutomationViewSelectorTypes.d.ts +0 -2
  114. package/lib/view/expenseAutomationView/selectorTypes/expenseAutomationViewSelectorTypes.js +1 -1
  115. package/lib/view/expenseAutomationView/selectors/jeSchedulesViewSelector.js +2 -5
  116. package/lib/view/expenseAutomationView/types/fluxAnalysisViewState.d.ts +1 -1
  117. package/lib/view/expenseAutomationView/types/missingReceiptsViewState.d.ts +1 -1
  118. package/lib/view/expenseAutomationView/types/transactionsViewState.d.ts +2 -12
  119. package/lib/view/financeStatement/financeStatementReducer.d.ts +1 -1
  120. package/lib/view/financeStatement/financeStatementReducer.js +4 -1
  121. package/lib/view/globalMerchantView/globalMerchantViewReducer.d.ts +4 -4
  122. package/lib/view/netBurnOrIncome/netBurnOrIncomeReducer.js +10 -3
  123. package/lib/view/netBurnOrIncomeClassesView/netBurnOrIncomeClassesViewReducer.js +6 -1
  124. package/lib/view/netBurnOrIncomeStoryCard/netBurnOrIncomeStoryCardReducer.js +1 -0
  125. package/lib/view/netBurnOrIncomeStoryCard/netBurnOrIncomeStoryCardState.d.ts +1 -1
  126. package/lib/view/notificationView/notificationViewReducer.d.ts +8 -8
  127. package/lib/view/notificationView/notificationViewState.d.ts +2 -2
  128. package/lib/view/onboardingView/cockpitView/onboardingCockpitViewReducer.js +3 -0
  129. package/lib/view/onboardingView/customerView/onboardingCustomerViewReducer.d.ts +2 -2
  130. package/lib/view/opEx/opExForTimeFrameEpic.js +1 -1
  131. package/lib/view/opEx/opExReducer.js +14 -4
  132. package/lib/view/opExByVendor/opExByVendorReducer.js +3 -1
  133. package/lib/view/opExByVendor/opExByVendorState.d.ts +1 -1
  134. package/lib/view/opExClassesView/opExClassesViewReducer.js +6 -1
  135. package/lib/view/people/fetchPeopleEpic.js +3 -1
  136. package/lib/view/people/invitePeopleEpic.js +3 -1
  137. package/lib/view/people/inviteZeniPeopleEpic.js +3 -1
  138. package/lib/view/people/peopleReducer.js +1 -0
  139. package/lib/view/people/peopleSaveUpdatesEpic.js +1 -1
  140. package/lib/view/profitAndLoss/profitAndLossReducer.js +6 -1
  141. package/lib/view/profitAndLossClassesView/profitAndLossClassesViewReducer.js +6 -1
  142. package/lib/view/recommendation/recommendationReducer.js +4 -1
  143. package/lib/view/referralView/referralState.d.ts +1 -1
  144. package/lib/view/reimbursementCard/reimbursementCardSelector.d.ts +2 -2
  145. package/lib/view/reportUIOptions/reportUIOptionsReducer.d.ts +8 -8
  146. package/lib/view/reportUIOptions/updateReportUIOptionThisPeriodEpic.js +3 -1
  147. package/lib/view/revenue/revenueReducer.js +10 -3
  148. package/lib/view/revenueClassesView/revenueClassesViewReducer.js +6 -1
  149. package/lib/view/scheduleView/scheduleAccruedDetailView/LinkBillExpenseView/linkBillExpense.d.ts +1 -1
  150. package/lib/view/scheduleView/scheduleDetailView/scheduleDetailReducer.d.ts +4 -4
  151. package/lib/view/scheduleView/scheduleListView/scheduleListTypes.d.ts +2 -2
  152. package/lib/view/settingsView/settingsViewReducer.js +1 -0
  153. package/lib/view/settingsView/settingsViewState.d.ts +1 -1
  154. package/lib/view/spendManagement/billPay/billList/billListReducer.d.ts +1 -1
  155. package/lib/view/spendManagement/billPay/billList/billListReducer.js +1 -0
  156. package/lib/view/spendManagement/billPay/billList/billListState.d.ts +2 -2
  157. package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigPayload.d.ts +1 -5
  158. package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigState.d.ts +1 -1
  159. package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigState.js +6 -0
  160. package/lib/view/spendManagement/billPay/billsBulkActionView/billsBulkActionViewReducer.d.ts +2 -2
  161. package/lib/view/spendManagement/billPay/billsBulkActionView/epics/validateBillsBulkActionEpic.ts.js +3 -4
  162. package/lib/view/spendManagement/billPay/editBillView/epics/fetchBillAndInitializeLocalStoreEpic.js +3 -1
  163. package/lib/view/spendManagement/billPay/editBillView/epics/saveBillDetailEpic.d.ts +1 -2
  164. package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetail.d.ts +2 -2
  165. package/lib/view/spendManagement/commonHistoryView/commonHistory.d.ts +1 -1
  166. package/lib/view/spendManagement/commonSetup/setupViewReducer.d.ts +7 -7
  167. package/lib/view/spendManagement/commonSetup/setupViewState.d.ts +1 -1
  168. package/lib/view/spendManagement/plaidAccount/epic/plaidConnection/establishPlaidConnectionEpic.js +3 -11
  169. package/lib/view/spendManagement/plaidAccount/plaidAccountViewReducer.d.ts +10 -11
  170. package/lib/view/spendManagement/plaidAccount/plaidAccountViewReducer.js +1 -3
  171. package/lib/view/spendManagement/plaidAccount/plaidAccountViewState.d.ts +1 -1
  172. package/lib/view/spendManagement/reimbursement/editRemiView/epics/fetchRecommendationsAndUpdateMerchantRecommendationsEpic.js +6 -2
  173. package/lib/view/spendManagement/reimbursement/editRemiView/epics/fetchRemiAndInitializeLocalStoreEpic.js +3 -1
  174. package/lib/view/spendManagement/reimbursement/remiListView/remiListReducer.d.ts +1 -1
  175. package/lib/view/spendManagement/reimbursement/remiListView/remiListReducer.js +1 -0
  176. package/lib/view/spendManagement/reimbursement/remiListView/remiListState.d.ts +4 -4
  177. package/lib/view/spendManagement/reimbursement/remisBulkActionView/remisBulkActionViewReducer.d.ts +2 -2
  178. package/lib/view/spendManagement/zeniAccounts/expressPay/epics/fetchExpressPayInitialDetailsEpic.d.ts +2 -2
  179. package/lib/view/spendManagement/zeniAccounts/expressPay/epics/fetchExpressPayInitialDetailsEpic.js +7 -7
  180. package/lib/view/spendManagement/zeniAccounts/expressPay/expressPaySelector.d.ts +2 -2
  181. package/lib/view/spendManagement/zeniAccounts/expressPay/expressPaySelector.js +4 -5
  182. package/lib/view/spendManagement/zeniAccounts/expressPay/expressPayState.d.ts +2 -2
  183. package/lib/view/spendManagement/zeniAccounts/zeniAccountsConfig/zeniAccountsConfigPayload.d.ts +0 -14
  184. package/lib/view/spendManagement/zeniAccounts/zeniAccountsConfig/zeniAccountsConfigPayload.js +1 -78
  185. package/lib/view/spendManagement/zeniAccounts/zeniAccountsConfig/zeniAccountsConfigReducer.js +1 -3
  186. package/lib/view/spendManagement/zeniAccounts/zeniAccountsConfig/zeniAccountsConfigSelector.d.ts +1 -2
  187. package/lib/view/spendManagement/zeniAccounts/zeniAccountsConfig/zeniAccountsConfigSelector.js +1 -2
  188. package/lib/view/spendManagement/zeniAccounts/zeniAccountsConfig/zeniAccountsConfigState.d.ts +0 -9
  189. package/lib/view/subscriptionView/subscriptionViewReducer.js +1 -0
  190. package/lib/view/subscriptionView/types/subscriptionTypes.js +1 -0
  191. package/lib/view/taskManager/taskListView/epics/dragNDropTasksEpic.js +3 -1
  192. package/lib/view/taskManager/taskListView/taskList.d.ts +3 -3
  193. package/lib/view/taskManager/taskListView/taskListSelector.d.ts +1 -1
  194. package/lib/view/tasksCard/fetchTasksCardEpic.js +2 -1
  195. package/lib/view/tasksCard/tasksCardSelector.d.ts +2 -2
  196. package/lib/view/tasksCard/tasksCardSelector.js +1 -1
  197. package/lib/view/topEx/topExSelector.d.ts +3 -3
  198. package/lib/view/transactionDetail/epics/saveTransactionHelper.js +52 -45
  199. package/lib/view/transactionDetail/epics/updateTransactionDetailEpic.js +4 -22
  200. package/lib/view/transactionDetail/transactionDetailLocalDataHelper.js +13 -66
  201. package/lib/view/transactionDetail/transactionDetailReducer.d.ts +4 -13
  202. package/lib/view/transactionDetail/transactionDetailReducer.js +21 -51
  203. package/lib/view/transactionDetail/transactionDetailState.d.ts +2 -3
  204. package/lib/view/transactionDetail/transactionDetailTypes.d.ts +0 -8
  205. package/lib/view/transactionList/transactionListByEntitySelector.js +2 -0
  206. package/lib/view/transactionList/transactionListReducer.js +6 -4
  207. package/lib/view/trendWithTransactions/trendWithTransactionsReducer.js +1 -0
  208. package/lib/view/userFinancialAccount/userFinancialAccountReducer.js +3 -1
  209. package/lib/view/vendorFiling1099/vendorFiling1099List/vendorFiling1099ListState.d.ts +1 -1
  210. package/lib/view/vendorReviewView/vendorFirstReviewView/vendorFirstReviewViewState.d.ts +1 -1
  211. package/lib/view/vendorReviewView/vendorGlobalReviewView/vendorGlobalReviewViewState.d.ts +1 -1
  212. package/lib/zeniAPI.d.ts +0 -1
  213. package/lib/zeniUrl.d.ts +1 -1
  214. package/package.json +12 -14
  215. package/lib/entity/accountRecon/accountReconPayload.d.ts +0 -70
  216. package/lib/entity/accountRecon/accountReconPayload.js +0 -125
  217. package/lib/entity/accountRecon/accountReconReducer.d.ts +0 -16
  218. package/lib/entity/accountRecon/accountReconReducer.js +0 -71
  219. package/lib/entity/accountRecon/accountReconSelector.d.ts +0 -28
  220. package/lib/entity/accountRecon/accountReconSelector.js +0 -44
  221. package/lib/entity/accountRecon/accountReconState.d.ts +0 -70
  222. package/lib/entity/accountRecon/accountReconState.js +0 -28
  223. package/lib/entity/transaction/payloadTypes/reconciliationTransactionPayloads.d.ts +0 -35
  224. package/lib/entity/transaction/payloadTypes/reconciliationTransactionPayloads.js +0 -53
  225. package/lib/entity/transaction/stateTypes/reconciliationTransaction.d.ts +0 -32
  226. package/lib/entity/transaction/stateTypes/reconciliationTransaction.js +0 -10
  227. package/lib/view/expenseAutomationView/epics/accountRecon/fetchReconciliationViewEpic.d.ts +0 -15
  228. package/lib/view/expenseAutomationView/epics/accountRecon/fetchReconciliationViewEpic.js +0 -118
  229. package/lib/view/expenseAutomationView/epics/accountRecon/initialiseLocalDataForSelectedAccountIdEpic.d.ts +0 -10
  230. package/lib/view/expenseAutomationView/epics/accountRecon/initialiseLocalDataForSelectedAccountIdEpic.js +0 -49
  231. package/lib/view/expenseAutomationView/epics/accountRecon/saveReconciliationDetailEpic.d.ts +0 -14
  232. package/lib/view/expenseAutomationView/epics/accountRecon/saveReconciliationDetailEpic.js +0 -169
  233. package/lib/view/expenseAutomationView/epics/accountRecon/saveReconciliationReviewEpic.d.ts +0 -9
  234. package/lib/view/expenseAutomationView/epics/accountRecon/saveReconciliationReviewEpic.js +0 -154
  235. package/lib/view/expenseAutomationView/epics/accountRecon/updateReconcileTabLocalDataEpic.d.ts +0 -6
  236. package/lib/view/expenseAutomationView/epics/accountRecon/updateReconcileTabLocalDataEpic.js +0 -110
  237. package/lib/view/expenseAutomationView/helpers/reconciliationHelpers.d.ts +0 -7
  238. package/lib/view/expenseAutomationView/helpers/reconciliationHelpers.js +0 -18
  239. package/lib/view/expenseAutomationView/payload/reconciliationPayload.d.ts +0 -28
  240. package/lib/view/expenseAutomationView/payload/reconciliationPayload.js +0 -51
  241. package/lib/view/expenseAutomationView/reducers/reconciliationViewReducer.d.ts +0 -66
  242. package/lib/view/expenseAutomationView/reducers/reconciliationViewReducer.js +0 -384
  243. package/lib/view/expenseAutomationView/selectorTypes/reconciliationViewSelectorTypes.d.ts +0 -51
  244. package/lib/view/expenseAutomationView/selectorTypes/reconciliationViewSelectorTypes.js +0 -7
  245. package/lib/view/expenseAutomationView/selectors/reconciliationViewSelector.d.ts +0 -5
  246. package/lib/view/expenseAutomationView/selectors/reconciliationViewSelector.js +0 -254
  247. package/lib/view/expenseAutomationView/types/reconciliationViewState.d.ts +0 -103
  248. package/lib/view/expenseAutomationView/types/reconciliationViewState.js +0 -37
@@ -1,118 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.prepareReviewTabLocalData = exports.fetchReconciliationViewEpic = void 0;
4
- const rxjs_1 = require("rxjs");
5
- const operators_1 = require("rxjs/operators");
6
- const timePeriod_1 = require("../../../../commonStateTypes/timePeriod");
7
- const accountReducer_1 = require("../../../../entity/account/accountReducer");
8
- const accountReconReducer_1 = require("../../../../entity/accountRecon/accountReconReducer");
9
- const accountReconSelector_1 = require("../../../../entity/accountRecon/accountReconSelector");
10
- const tenantSelector_1 = require("../../../../entity/tenant/tenantSelector");
11
- const transactionReducer_1 = require("../../../../entity/transaction/transactionReducer");
12
- const userReducer_1 = require("../../../../entity/user/userReducer");
13
- const responsePayload_1 = require("../../../../responsePayload");
14
- const reconciliationHelpers_1 = require("../../helpers/reconciliationHelpers");
15
- const reconciliationViewReducer_1 = require("../../reducers/reconciliationViewReducer");
16
- const saveReconciliationDetailEpic_1 = require("./saveReconciliationDetailEpic");
17
- const fetchReconciliationViewEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(reconciliationViewReducer_1.fetchReconciliation.match), (0, operators_1.mergeMap)((action) => {
18
- const { accountId, cacheOverride, refreshViewInBackground } = action.payload;
19
- const state = state$.value;
20
- const { expenseAutomationViewState: { selectedPeriodByTenantId }, expenseAutomationReconciliationViewState: { accountReconciliationRecordsBySelectedPeriod: accountReconciliationRecords, }, } = state;
21
- const currentTenant = (0, tenantSelector_1.getCurrentTenant)(state);
22
- const selectedPeriod = selectedPeriodByTenantId[currentTenant.tenantId];
23
- let reconciliationData = undefined;
24
- let reconciliationId = undefined;
25
- if (accountId != null) {
26
- reconciliationData = (0, accountReconSelector_1.getAccountReconByAccountIdAndSelectedPeriod)(state, accountId, selectedPeriod);
27
- reconciliationId = reconciliationData === null || reconciliationData === void 0 ? void 0 : reconciliationData.reconciliationId;
28
- }
29
- let fetchState;
30
- if (accountId != null) {
31
- fetchState =
32
- accountReconciliationRecords[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)]
33
- .reconciliationByAccountID[accountId].transactionFetchState
34
- .fetchState;
35
- }
36
- else {
37
- fetchState = state.expenseAutomationReconciliationViewState.fetchState;
38
- }
39
- if (cacheOverride === true || fetchState !== 'Completed') {
40
- const { start, end } = (0, timePeriod_1.convertToPeriod)(selectedPeriod, true);
41
- const queryParam = {
42
- start_date: start.toString(),
43
- end_date: end.toString(),
44
- };
45
- if (accountId != null) {
46
- queryParam.account_id = accountId;
47
- }
48
- const apiUrl = reconciliationId != null
49
- ? `${zeniAPI.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/${reconciliationId}`
50
- : `${zeniAPI.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation?query=${encodeURIComponent(JSON.stringify(queryParam))}`;
51
- return zeniAPI.getJSON(apiUrl).pipe((0, operators_1.mergeMap)((response) => {
52
- var _a, _b, _c, _d;
53
- if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
54
- const updateActions = [];
55
- updateActions.push((0, accountReducer_1.updateAccounts)(response.data.accounts, 'account_reconciliation'));
56
- updateActions.push((0, userReducer_1.updateAllUsers)({
57
- users: (_a = response.data.users) !== null && _a !== void 0 ? _a : [],
58
- updateType: 'merge',
59
- }));
60
- const allTransactionsPerRecon = (0, reconciliationHelpers_1.getAllReviewTransactionsFromReconcilePayload)(response.data.reconciliation);
61
- updateActions.push((0, transactionReducer_1.updateMultipleReconcileTransactions)(allTransactionsPerRecon, 'merge'));
62
- updateActions.push((0, accountReconReducer_1.updateAccountRecon)(selectedPeriod, response.data.reconciliation));
63
- const reviewTabLocalData = (0, exports.prepareReviewTabLocalData)((_d = (_c = (_b = response.data.reconciliation[0]) === null || _b === void 0 ? void 0 : _b.transactions) === null || _c === void 0 ? void 0 : _c.review) !== null && _d !== void 0 ? _d : []);
64
- if (accountId != null) {
65
- const selectedTransactionIds = (0, saveReconciliationDetailEpic_1.getTransactionIdFromCheckedMatchedTransactionPayload)(response.data.reconciliation[0].transactions.reconcile);
66
- updateActions.push((0, reconciliationViewReducer_1.updateReconcileTabLocalData)({
67
- selectedTransactionIds: selectedTransactionIds,
68
- }));
69
- updateActions.push((0, reconciliationViewReducer_1.initializeReconciliationReviewTabLocalData)(reviewTabLocalData));
70
- }
71
- updateActions.push((0, reconciliationViewReducer_1.fetchReconciliationSuccess)(selectedPeriod, response.data, refreshViewInBackground, accountId));
72
- return (0, rxjs_1.from)(updateActions);
73
- }
74
- else {
75
- return (0, rxjs_1.of)((0, reconciliationViewReducer_1.fetchReconciliationFailure)({
76
- error: response.status,
77
- selectedPeriod,
78
- refreshViewInBackground,
79
- accountId: accountId,
80
- }));
81
- }
82
- }), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, reconciliationViewReducer_1.fetchReconciliationFailure)({
83
- error: (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', `fetch reconciliation view REST API call errored out ${JSON.stringify(error)}`),
84
- refreshViewInBackground,
85
- selectedPeriod,
86
- accountId: accountId,
87
- }))));
88
- }
89
- else {
90
- const updateActions = [];
91
- if (accountId != null) {
92
- updateActions.push((0, reconciliationViewReducer_1.initialiseLocalDataForSelectedAccountId)());
93
- }
94
- return (0, rxjs_1.from)(updateActions);
95
- }
96
- }));
97
- exports.fetchReconciliationViewEpic = fetchReconciliationViewEpic;
98
- const prepareReviewTabLocalData = (transactionsToReview) => {
99
- return transactionsToReview.reduce((prev, currentTransaction) => {
100
- var _a, _b, _c, _d, _e, _f;
101
- const localData = {
102
- memo: currentTransaction.transaction_memo,
103
- categoryId: (_b = (_a = currentTransaction.recommended_action.recommended_transactions[0]) === null || _a === void 0 ? void 0 : _a.account_id) !== null && _b !== void 0 ? _b : undefined,
104
- classId: (_d = (_c = currentTransaction.recommended_action.recommended_transactions[0]) === null || _c === void 0 ? void 0 : _c.class_id) !== null && _d !== void 0 ? _d : undefined,
105
- vendor: ((_e = currentTransaction.recommended_action.recommended_transactions[0]) === null || _e === void 0 ? void 0 : _e.merchant_id) != null &&
106
- ((_f = currentTransaction.recommended_action.recommended_transactions[0]) === null || _f === void 0 ? void 0 : _f.merchant_name) != null
107
- ? {
108
- id: currentTransaction.recommended_action
109
- .recommended_transactions[0].merchant_id,
110
- name: currentTransaction.recommended_action
111
- .recommended_transactions[0].merchant_name,
112
- }
113
- : undefined,
114
- };
115
- return Object.assign(Object.assign({}, prev), { [currentTransaction.transaction_id]: localData });
116
- }, {});
117
- };
118
- exports.prepareReviewTabLocalData = prepareReviewTabLocalData;
@@ -1,10 +0,0 @@
1
- import { ActionsObservable, StateObservable } from 'redux-observable';
2
- import { Observable } from 'rxjs';
3
- import { ID } from '../../../../commonStateTypes/common';
4
- import { TransactionsToReview } from '../../../../entity/accountRecon/accountReconState';
5
- import { RootState } from '../../../../reducer';
6
- import { initialiseLocalDataForSelectedAccountId, initializeReconciliationReviewTabLocalData, updateReconcileTabLocalData } from '../../reducers/reconciliationViewReducer';
7
- import { ReconciliationReviewTabLocalData } from '../../types/reconciliationViewState';
8
- export type ActionType = ReturnType<typeof initialiseLocalDataForSelectedAccountId> | ReturnType<typeof initializeReconciliationReviewTabLocalData> | ReturnType<typeof updateReconcileTabLocalData>;
9
- export declare const initialiseDataForSelectedAccountIdEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>) => Observable<ActionType>;
10
- export declare const prepareReviewTabLocalData: (transactionsToReview: TransactionsToReview[]) => Record<ID, ReconciliationReviewTabLocalData>;
@@ -1,49 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.prepareReviewTabLocalData = exports.initialiseDataForSelectedAccountIdEpic = void 0;
4
- const rxjs_1 = require("rxjs");
5
- const operators_1 = require("rxjs/operators");
6
- const accountReconSelector_1 = require("../../../../entity/accountRecon/accountReconSelector");
7
- const tenantSelector_1 = require("../../../../entity/tenant/tenantSelector");
8
- const reconciliationViewReducer_1 = require("../../reducers/reconciliationViewReducer");
9
- const initialiseDataForSelectedAccountIdEpic = (actions$, state$) => actions$.pipe((0, operators_1.filter)(reconciliationViewReducer_1.initialiseLocalDataForSelectedAccountId.match), (0, operators_1.mergeMap)(() => {
10
- var _a, _b, _c;
11
- const state = state$.value;
12
- const { expenseAutomationViewState: { selectedPeriodByTenantId }, expenseAutomationReconciliationViewState: { selectedAccountId }, } = state;
13
- const currentTenant = (0, tenantSelector_1.getCurrentTenant)(state);
14
- const selectedPeriod = selectedPeriodByTenantId[currentTenant.tenantId];
15
- const actions = [];
16
- if (selectedAccountId != null) {
17
- const reconEntity = (0, accountReconSelector_1.getAccountReconByAccountIdAndSelectedPeriod)(state, selectedAccountId, selectedPeriod);
18
- const checkedTransactions = (_a = reconEntity === null || reconEntity === void 0 ? void 0 : reconEntity.transactionsToReconcile) === null || _a === void 0 ? void 0 : _a.filter((transaction) => transaction.isTransactionChecked);
19
- const selectedTransactionIds = (_b = checkedTransactions === null || checkedTransactions === void 0 ? void 0 : checkedTransactions.map((transaction) => transaction.id)) !== null && _b !== void 0 ? _b : [];
20
- actions.push((0, reconciliationViewReducer_1.updateReconcileTabLocalData)({
21
- selectedTransactionIds: selectedTransactionIds,
22
- }));
23
- const reviewTabLocalData = (0, exports.prepareReviewTabLocalData)((_c = reconEntity === null || reconEntity === void 0 ? void 0 : reconEntity.transactionsToReview) !== null && _c !== void 0 ? _c : []);
24
- actions.push((0, reconciliationViewReducer_1.initializeReconciliationReviewTabLocalData)(reviewTabLocalData));
25
- }
26
- return (0, rxjs_1.from)(actions);
27
- }));
28
- exports.initialiseDataForSelectedAccountIdEpic = initialiseDataForSelectedAccountIdEpic;
29
- const prepareReviewTabLocalData = (transactionsToReview) => {
30
- return transactionsToReview.reduce((prev, currentTransaction) => {
31
- var _a, _b, _c, _d, _e, _f;
32
- const localData = {
33
- memo: currentTransaction.memo,
34
- categoryId: (_b = (_a = currentTransaction.recommendedAction.recommendedTransactions[0]) === null || _a === void 0 ? void 0 : _a.accountId) !== null && _b !== void 0 ? _b : undefined,
35
- classId: (_d = (_c = currentTransaction.recommendedAction.recommendedTransactions[0]) === null || _c === void 0 ? void 0 : _c.classId) !== null && _d !== void 0 ? _d : undefined,
36
- vendor: ((_e = currentTransaction.recommendedAction.recommendedTransactions[0]) === null || _e === void 0 ? void 0 : _e.merchantId) != null &&
37
- ((_f = currentTransaction.recommendedAction.recommendedTransactions[0]) === null || _f === void 0 ? void 0 : _f.merchantName) != null
38
- ? {
39
- id: currentTransaction.recommendedAction
40
- .recommendedTransactions[0].merchantId,
41
- name: currentTransaction.recommendedAction
42
- .recommendedTransactions[0].merchantName,
43
- }
44
- : undefined,
45
- };
46
- return Object.assign(Object.assign({}, prev), { [currentTransaction.transactionId]: localData });
47
- }, {});
48
- };
49
- exports.prepareReviewTabLocalData = prepareReviewTabLocalData;
@@ -1,14 +0,0 @@
1
- import { ActionsObservable, StateObservable } from 'redux-observable';
2
- import { ID } from '../../../../commonStateTypes/common';
3
- import { excludeReconReviewTransaction, updateAccountRecon } from '../../../../entity/accountRecon/accountReconReducer';
4
- import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
5
- import { MatchedTransactionPayload } from '../../../../entity/transaction/payloadTypes/reconciliationTransactionPayloads';
6
- import { updateMultipleReconcileTransactions } from '../../../../entity/transaction/transactionReducer';
7
- import { RootState } from '../../../../reducer';
8
- import { ZeniAPI } from '../../../../zeniAPI';
9
- import { saveReconciliationDetail, saveReconciliationDetailFailure, saveReconciliationDetailSuccess, updateBalancesLocalData, updateReconcileTabLocalData } from '../../reducers/reconciliationViewReducer';
10
- import { ReconcileActionType } from '../../types/reconciliationViewState';
11
- export type ActionType = ReturnType<typeof excludeReconReviewTransaction> | ReturnType<typeof openSnackbar> | ReturnType<typeof saveReconciliationDetail> | ReturnType<typeof saveReconciliationDetailFailure> | ReturnType<typeof saveReconciliationDetailSuccess> | ReturnType<typeof updateAccountRecon> | ReturnType<typeof updateBalancesLocalData> | ReturnType<typeof updateMultipleReconcileTransactions> | ReturnType<typeof updateReconcileTabLocalData>;
12
- export declare const saveReconciliationDetailsEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => import("rxjs").Observable<ActionType>;
13
- export declare function createMessageForAction(action: ReconcileActionType): "Excluding Transaction" | "Reconciling" | "Saving for Later";
14
- export declare function getTransactionIdFromCheckedMatchedTransactionPayload(transactions: MatchedTransactionPayload[]): ID[];
@@ -1,169 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.saveReconciliationDetailsEpic = void 0;
4
- exports.createMessageForAction = createMessageForAction;
5
- exports.getTransactionIdFromCheckedMatchedTransactionPayload = getTransactionIdFromCheckedMatchedTransactionPayload;
6
- const rxjs_1 = require("rxjs");
7
- const operators_1 = require("rxjs/operators");
8
- const accountReconReducer_1 = require("../../../../entity/accountRecon/accountReconReducer");
9
- const accountReconSelector_1 = require("../../../../entity/accountRecon/accountReconSelector");
10
- const accountReconState_1 = require("../../../../entity/accountRecon/accountReconState");
11
- const snackbarReducer_1 = require("../../../../entity/snackbar/snackbarReducer");
12
- const tenantSelector_1 = require("../../../../entity/tenant/tenantSelector");
13
- const transactionReducer_1 = require("../../../../entity/transaction/transactionReducer");
14
- const responsePayload_1 = require("../../../../responsePayload");
15
- const reconciliationHelpers_1 = require("../../helpers/reconciliationHelpers");
16
- const reconciliationPayload_1 = require("../../payload/reconciliationPayload");
17
- const reconciliationViewReducer_1 = require("../../reducers/reconciliationViewReducer");
18
- const saveReconciliationDetailsEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(reconciliationViewReducer_1.saveReconciliationDetail.match), (0, operators_1.mergeMap)((action) => {
19
- const state = state$.value;
20
- const { reconcileAction } = action.payload;
21
- const { expenseAutomationViewState: { selectedPeriodByTenantId }, expenseAutomationReconciliationViewState: { selectedAccountId, reconTabsState: { balances }, }, } = state;
22
- const currentTenant = (0, tenantSelector_1.getCurrentTenant)(state);
23
- const selectedPeriod = selectedPeriodByTenantId[currentTenant.tenantId];
24
- let reconciliationData = undefined;
25
- let reconciliationId = undefined;
26
- if (selectedAccountId != null) {
27
- reconciliationData = (0, accountReconSelector_1.getAccountReconByAccountIdAndSelectedPeriod)(state, selectedAccountId, selectedPeriod);
28
- reconciliationId = reconciliationData === null || reconciliationData === void 0 ? void 0 : reconciliationData.reconciliationId;
29
- }
30
- let payload = {};
31
- if (reconciliationData != null) {
32
- payload = (0, reconciliationPayload_1.createSaveReconciliationPayloadBasedOnActionAndMethod)(state, selectedPeriod, balances, reconciliationData, action.payload, reconciliationId != null ? 'PUT' : 'POST');
33
- }
34
- const saveReconciliationDetailsApi = reconciliationId != null
35
- ? zeniAPI.putAndGetJSON(`${zeniAPI.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/${reconciliationId}`, payload)
36
- : zeniAPI.postAndGetJSON(`${zeniAPI.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation`, payload);
37
- return saveReconciliationDetailsApi.pipe((0, operators_1.mergeMap)((response) => {
38
- if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
39
- const actions = [];
40
- const selectedTransactionIds = getTransactionIdFromCheckedMatchedTransactionPayload(response.data.reconciliation[0].transactions.reconcile);
41
- const allTransactionsPerRecon = (0, reconciliationHelpers_1.getAllReviewTransactionsFromReconcilePayload)(response.data.reconciliation);
42
- actions.push((0, transactionReducer_1.updateMultipleReconcileTransactions)(allTransactionsPerRecon, 'merge'));
43
- actions.push((0, accountReconReducer_1.updateAccountRecon)(selectedPeriod, response.data.reconciliation));
44
- actions.push((0, reconciliationViewReducer_1.updateReconcileTabLocalData)({
45
- selectedTransactionIds: selectedTransactionIds,
46
- }));
47
- if (action.payload.reconcileAction === 'exclude') {
48
- if (selectedAccountId != null) {
49
- const accountReconKey = (0, accountReconState_1.toAccountReconKey)(selectedAccountId, selectedPeriod);
50
- actions.push((0, accountReconReducer_1.excludeReconReviewTransaction)(accountReconKey, action.payload.excludeTransactionId));
51
- }
52
- actions.push((0, reconciliationViewReducer_1.saveReconciliationDetailSuccess)({
53
- reconcileAction,
54
- excludeTransactionId: action.payload.excludeTransactionId,
55
- }));
56
- }
57
- else if (action.payload.reconcileAction === 'reconcile' ||
58
- action.payload.reconcileAction === 'save_reconcile_for_later') {
59
- actions.push((0, reconciliationViewReducer_1.saveReconciliationDetailSuccess)({
60
- reconcileAction: action.payload.reconcileAction,
61
- }));
62
- }
63
- actions.push((0, snackbarReducer_1.openSnackbar)({
64
- messageSection: action.payload.reconcileAction === 'reconcile'
65
- ? 'reconcile'
66
- : action.payload.reconcileAction ===
67
- 'save_reconcile_for_later'
68
- ? 'save_reconcile_for_later'
69
- : 'exclude_transaction',
70
- messageText: 'success',
71
- type: 'success',
72
- }));
73
- return (0, rxjs_1.from)(actions);
74
- }
75
- else {
76
- const actions = [];
77
- if (action.payload.reconcileAction === 'exclude') {
78
- actions.push((0, reconciliationViewReducer_1.saveReconciliationDetailFailure)({
79
- fetchStateByAction: {
80
- reconcileAction: action.payload.reconcileAction,
81
- excludeTransactionId: action.payload.excludeTransactionId,
82
- },
83
- error: response.status,
84
- }));
85
- }
86
- else if (action.payload.reconcileAction === 'reconcile' ||
87
- action.payload.reconcileAction === 'save_reconcile_for_later') {
88
- actions.push((0, reconciliationViewReducer_1.saveReconciliationDetailFailure)({
89
- fetchStateByAction: {
90
- reconcileAction: action.payload.reconcileAction,
91
- },
92
- error: response.status,
93
- }));
94
- }
95
- actions.push((0, snackbarReducer_1.openSnackbar)({
96
- messageSection: action.payload.reconcileAction === 'reconcile'
97
- ? 'reconcile'
98
- : action.payload.reconcileAction ===
99
- 'save_reconcile_for_later'
100
- ? 'save_reconcile_for_later'
101
- : 'exclude_transaction',
102
- messageText: 'failed',
103
- type: 'error',
104
- variables: [
105
- {
106
- variableName: '_api-error_',
107
- variableValue: response.status.message,
108
- },
109
- ],
110
- }));
111
- return (0, rxjs_1.from)(actions);
112
- }
113
- }), (0, operators_1.catchError)((error) => {
114
- const actions = [];
115
- if (action.payload.reconcileAction === 'exclude') {
116
- actions.push((0, reconciliationViewReducer_1.saveReconciliationDetailFailure)({
117
- fetchStateByAction: {
118
- reconcileAction: action.payload.reconcileAction,
119
- excludeTransactionId: action.payload.excludeTransactionId,
120
- },
121
- error: (0, responsePayload_1.createZeniAPIStatus)(`Unexpected Error occured while ${createMessageForAction(action.payload.reconcileAction)}`, 'save REST API call errored out' + JSON.stringify(error)),
122
- }));
123
- }
124
- else if (action.payload.reconcileAction === 'reconcile' ||
125
- action.payload.reconcileAction === 'save_reconcile_for_later') {
126
- actions.push((0, reconciliationViewReducer_1.saveReconciliationDetailFailure)({
127
- fetchStateByAction: {
128
- reconcileAction: action.payload.reconcileAction,
129
- },
130
- error: (0, responsePayload_1.createZeniAPIStatus)(`Unexpected Error occured while ${createMessageForAction(action.payload.reconcileAction)}`, 'save REST API call errored out' + JSON.stringify(error)),
131
- }));
132
- }
133
- actions.push((0, snackbarReducer_1.openSnackbar)({
134
- messageSection: action.payload.reconcileAction === 'reconcile'
135
- ? 'reconcile'
136
- : action.payload.reconcileAction ===
137
- 'save_reconcile_for_later'
138
- ? 'save_reconcile_for_later'
139
- : 'exclude_transaction',
140
- messageText: 'failed',
141
- type: 'error',
142
- variables: [
143
- {
144
- variableName: '_api-error_',
145
- variableValue: `Unexpected Error occured while ${createMessageForAction(action.payload.reconcileAction)}` +
146
- JSON.stringify(error),
147
- },
148
- ],
149
- }));
150
- return (0, rxjs_1.from)(actions);
151
- }));
152
- }));
153
- exports.saveReconciliationDetailsEpic = saveReconciliationDetailsEpic;
154
- function createMessageForAction(action) {
155
- switch (action) {
156
- case 'exclude':
157
- return 'Excluding Transaction';
158
- case 'reconcile':
159
- return 'Reconciling';
160
- case 'save_reconcile_for_later':
161
- return 'Saving for Later';
162
- }
163
- }
164
- function getTransactionIdFromCheckedMatchedTransactionPayload(transactions) {
165
- const selectedTransactionDetailKeys = transactions
166
- .filter((transaction) => transaction.is_checked_transaction === true)
167
- .map((transaction) => transaction.transaction_id);
168
- return selectedTransactionDetailKeys;
169
- }
@@ -1,9 +0,0 @@
1
- import { ActionsObservable, StateObservable } from 'redux-observable';
2
- import { addTransactionToReconcileList, excludeReconReviewTransaction } from '../../../../entity/accountRecon/accountReconReducer';
3
- import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
4
- import { updateMultipleReconcileTransactions } from '../../../../entity/transaction/transactionReducer';
5
- import { RootState } from '../../../../reducer';
6
- import { ZeniAPI } from '../../../../zeniAPI';
7
- import { saveReconciliationReview, updateReconcileTabLocalData, updateSaveReconciliationReviewFetchStatus } from '../../reducers/reconciliationViewReducer';
8
- export type ActionType = ReturnType<typeof saveReconciliationReview> | ReturnType<typeof excludeReconReviewTransaction> | ReturnType<typeof updateMultipleReconcileTransactions> | ReturnType<typeof addTransactionToReconcileList> | ReturnType<typeof updateReconcileTabLocalData> | ReturnType<typeof openSnackbar> | ReturnType<typeof updateSaveReconciliationReviewFetchStatus>;
9
- export declare const saveReconciliationReviewEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => import("rxjs").Observable<ActionType>;
@@ -1,154 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.saveReconciliationReviewEpic = void 0;
4
- const rxjs_1 = require("rxjs");
5
- const operators_1 = require("rxjs/operators");
6
- const formatZeniDateFY_1 = require("../../../../commonStateTypes/fiscalYearHelpers/formatZeniDateFY");
7
- const accountReconReducer_1 = require("../../../../entity/accountRecon/accountReconReducer");
8
- const accountReconSelector_1 = require("../../../../entity/accountRecon/accountReconSelector");
9
- const accountReconState_1 = require("../../../../entity/accountRecon/accountReconState");
10
- const snackbarReducer_1 = require("../../../../entity/snackbar/snackbarReducer");
11
- const tenantSelector_1 = require("../../../../entity/tenant/tenantSelector");
12
- const transactionReducer_1 = require("../../../../entity/transaction/transactionReducer");
13
- const vendorState_1 = require("../../../../entity/vendor/vendorState");
14
- const responsePayload_1 = require("../../../../responsePayload");
15
- const reconciliationViewReducer_1 = require("../../reducers/reconciliationViewReducer");
16
- const saveReconciliationReviewEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(reconciliationViewReducer_1.saveReconciliationReview.match), (0, operators_1.mergeMap)((action) => {
17
- const state = state$.value;
18
- const { transactionId } = action.payload;
19
- const localData = state.expenseAutomationReconciliationViewState.reconTabsState.review
20
- .localData[transactionId];
21
- const reconcileTabLocalData = state.expenseAutomationReconciliationViewState.reconTabsState.reconcile
22
- .localData;
23
- const { expenseAutomationViewState: { selectedPeriodByTenantId }, expenseAutomationReconciliationViewState: { selectedAccountId }, } = state;
24
- const currentTenant = (0, tenantSelector_1.getCurrentTenant)(state);
25
- const selectedPeriod = selectedPeriodByTenantId[currentTenant.tenantId];
26
- let reconciliationData;
27
- let reconciliationId = undefined;
28
- let updatedTransaction;
29
- if (selectedAccountId != null) {
30
- reconciliationData = (0, accountReconSelector_1.getAccountReconByAccountIdAndSelectedPeriod)(state, selectedAccountId, selectedPeriod);
31
- reconciliationId = reconciliationData === null || reconciliationData === void 0 ? void 0 : reconciliationData.reconciliationId;
32
- updatedTransaction = reconciliationData === null || reconciliationData === void 0 ? void 0 : reconciliationData.transactionsToReview.find((transaction) => transaction.transactionId === transactionId);
33
- }
34
- const queryParam = {
35
- review_action: updatedTransaction === null || updatedTransaction === void 0 ? void 0 : updatedTransaction.recommendedAction.action,
36
- reconciliation_id: reconciliationId !== null && reconciliationId !== void 0 ? reconciliationId : '',
37
- ref_account_id: selectedAccountId,
38
- ref_account_name: reconciliationData === null || reconciliationData === void 0 ? void 0 : reconciliationData.account.accountName,
39
- };
40
- let payload = {};
41
- if (reconciliationData != null &&
42
- updatedTransaction != null &&
43
- localData != null) {
44
- if (updatedTransaction.recommendedAction.action === 'record_expense') {
45
- payload = getPayloadForExpenseRecord(updatedTransaction, localData);
46
- }
47
- if (updatedTransaction.recommendedAction.action === 'record_bill_payment') {
48
- const linkedTransaction = updatedTransaction.recommendedAction.recommendedTransactions.find((transaction) => transaction.transactionId === localData.matchedTransactionId);
49
- payload = getPayloadForBillPayment(updatedTransaction, linkedTransaction, localData, reconciliationData === null || reconciliationData === void 0 ? void 0 : reconciliationData.account.accountType);
50
- }
51
- }
52
- return zeniAPI
53
- .postAndGetJSON(`${zeniAPI.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/review?query=${encodeURIComponent(JSON.stringify(queryParam))}`, payload)
54
- .pipe((0, operators_1.mergeMap)((response) => {
55
- var _a, _b;
56
- if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
57
- const actions = [];
58
- actions.push((0, reconciliationViewReducer_1.updateSaveReconciliationReviewFetchStatus)({
59
- transactionId,
60
- fetchState: 'Completed',
61
- }), (0, transactionReducer_1.updateMultipleReconcileTransactions)([
62
- {
63
- allReconciledTransactions: [response.data.reconciliation],
64
- currencyPayload: {
65
- currency_code: (_a = updatedTransaction === null || updatedTransaction === void 0 ? void 0 : updatedTransaction.amount.currencyCode) !== null && _a !== void 0 ? _a : vendorState_1.defaultVendorCurrency.currencyCode,
66
- currency_symbol: (_b = updatedTransaction === null || updatedTransaction === void 0 ? void 0 : updatedTransaction.amount.currencySymbol) !== null && _b !== void 0 ? _b : vendorState_1.defaultVendorCurrency.currencySymbol,
67
- },
68
- },
69
- ], 'merge'));
70
- if (selectedAccountId != null) {
71
- const accountReconKey = (0, accountReconState_1.toAccountReconKey)(selectedAccountId, selectedPeriod);
72
- actions.push((0, accountReconReducer_1.excludeReconReviewTransaction)(accountReconKey, transactionId), (0, accountReconReducer_1.addTransactionToReconcileList)(accountReconKey, response.data.reconciliation.transaction_id), (0, reconciliationViewReducer_1.updateReconcileTabLocalData)({
73
- selectedTransactionIds: [
74
- ...reconcileTabLocalData.selectedTransactionIds,
75
- response.data.reconciliation.transaction_id,
76
- ],
77
- }));
78
- }
79
- actions.push((0, snackbarReducer_1.openSnackbar)({
80
- messageSection: 'recon_transaction_creation',
81
- messageText: 'success',
82
- type: 'success',
83
- }));
84
- return (0, rxjs_1.from)(actions);
85
- }
86
- else {
87
- const actions = [];
88
- actions.push((0, reconciliationViewReducer_1.updateSaveReconciliationReviewFetchStatus)({
89
- transactionId,
90
- fetchState: 'Error',
91
- error: response.status,
92
- }), (0, snackbarReducer_1.openSnackbar)({
93
- messageSection: 'recon_transaction_creation',
94
- messageText: 'failed',
95
- type: 'error',
96
- variables: [
97
- {
98
- variableName: '_api-error_',
99
- variableValue: response.status.message,
100
- },
101
- ],
102
- }));
103
- return (0, rxjs_1.from)(actions);
104
- }
105
- }), (0, operators_1.catchError)((error) => {
106
- const actions = [];
107
- actions.push((0, reconciliationViewReducer_1.updateSaveReconciliationReviewFetchStatus)({
108
- transactionId,
109
- fetchState: 'Error',
110
- error: (0, responsePayload_1.createZeniAPIStatus)(`Unexpected Error occurred while saving reconciliation review`, 'save reconciliation review REST API call errored out' +
111
- JSON.stringify(error)),
112
- }), (0, snackbarReducer_1.openSnackbar)({
113
- messageSection: 'recon_transaction_creation',
114
- messageText: 'failed',
115
- type: 'error',
116
- variables: [
117
- {
118
- variableName: '_api-error_',
119
- variableValue: JSON.stringify('error'),
120
- },
121
- ],
122
- }));
123
- return (0, rxjs_1.from)(actions);
124
- }));
125
- }));
126
- exports.saveReconciliationReviewEpic = saveReconciliationReviewEpic;
127
- function getPayloadForExpenseRecord(updatedTransaction, localData) {
128
- var _a, _b;
129
- return {
130
- amount: updatedTransaction.amount.amount,
131
- transaction_memo: localData.memo,
132
- transaction_date: updatedTransaction.transactionDate.format(formatZeniDateFY_1.DEFAULT_DATE_FORMAT),
133
- transaction_direction: updatedTransaction.transactionDirection,
134
- transaction_id: updatedTransaction.transactionId,
135
- vendor_id: (_a = localData.vendor) === null || _a === void 0 ? void 0 : _a.id,
136
- vendor_name: (_b = localData.vendor) === null || _b === void 0 ? void 0 : _b.name,
137
- account_id: localData.categoryId,
138
- accounting_class_id: localData.classId,
139
- currency_code: updatedTransaction.amount.currencyCode,
140
- };
141
- }
142
- const getPayloadForBillPayment = (updatedTransaction, linkedTransaction, localData, accountType) => {
143
- return {
144
- account_type: accountType,
145
- amount: updatedTransaction.amount.amount,
146
- transaction_memo: localData.memo,
147
- transaction_date: updatedTransaction.transactionDate.format(formatZeniDateFY_1.DEFAULT_DATE_FORMAT),
148
- transaction_direction: updatedTransaction.transactionDirection,
149
- transaction_id: updatedTransaction.transactionId,
150
- linked_transaction_id: linkedTransaction === null || linkedTransaction === void 0 ? void 0 : linkedTransaction.bookTransactionId,
151
- linked_transaction_type: linkedTransaction === null || linkedTransaction === void 0 ? void 0 : linkedTransaction.transactionType,
152
- currency_code: updatedTransaction.amount.currencyCode,
153
- };
154
- };
@@ -1,6 +0,0 @@
1
- import { ActionsObservable, StateObservable } from 'redux-observable';
2
- import { Observable } from 'rxjs';
3
- import { RootState } from '../../../../reducer';
4
- import { updateBalancesLocalData, updateReconcileTabLocalData } from '../../reducers/reconciliationViewReducer';
5
- export type ActionType = ReturnType<typeof updateReconcileTabLocalData> | ReturnType<typeof updateBalancesLocalData>;
6
- export declare const updateReconcileTabLocalDataEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>) => Observable<ActionType>;