@zeniai/client-epic-state 4.8.12 → 4.8.14

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 (41) hide show
  1. package/lib/entity/billPay/billTransaction/billTransactionPayload.d.ts +4 -2
  2. package/lib/entity/billPay/billTransaction/billTransactionPayload.js +24 -3
  3. package/lib/entity/billPay/billTransaction/billTransactionState.d.ts +11 -3
  4. package/lib/entity/billPay/billTransaction/billTransactionState.js +12 -1
  5. package/lib/entity/reimbursement/reimbursementPayload.d.ts +2 -1
  6. package/lib/entity/reimbursement/reimbursementPayload.js +12 -3
  7. package/lib/entity/reimbursement/reimbursementState.d.ts +7 -3
  8. package/lib/view/commonVendorView/vendorView/epics/saveVendorEpic.js +22 -5
  9. package/lib/view/spendManagement/billPay/billDetailView/billDetailViewPayload.d.ts +2 -0
  10. package/lib/view/spendManagement/billPay/billDetailView/billDetailViewReducer.d.ts +1 -1
  11. package/lib/view/spendManagement/billPay/billDetailView/billDetailViewReducer.js +2 -3
  12. package/lib/view/spendManagement/billPay/billDetailView/billDetailViewSelector.d.ts +6 -7
  13. package/lib/view/spendManagement/billPay/billDetailView/billDetailViewSelector.js +21 -26
  14. package/lib/view/spendManagement/billPay/billDetailView/billDetailViewState.d.ts +0 -4
  15. package/lib/view/spendManagement/billPay/billDetailView/epics/fetchBillDetailEpic.d.ts +2 -1
  16. package/lib/view/spendManagement/billPay/billDetailView/epics/fetchBillDetailEpic.js +3 -1
  17. package/lib/view/spendManagement/billPay/billList/billListSelector.js +4 -3
  18. package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigPayload.d.ts +10 -8
  19. package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigPayload.js +38 -38
  20. package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigReducer.js +14 -4
  21. package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigState.d.ts +1 -1
  22. package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigState.js +2 -2
  23. package/lib/view/spendManagement/billPay/billPayReview/billPayReviewSelector.js +8 -48
  24. package/lib/view/spendManagement/billPay/editBillView/editBillViewSelector.d.ts +11 -5
  25. package/lib/view/spendManagement/billPay/editBillView/editBillViewSelector.js +69 -50
  26. package/lib/view/spendManagement/billPay/editBillView/editBillViewState.d.ts +2 -1
  27. package/lib/view/spendManagement/billPay/editBillView/epics/fetchEditBillDetailPageEpic.d.ts +2 -1
  28. package/lib/view/spendManagement/billPay/editBillView/epics/fetchEditBillDetailPageEpic.js +13 -7
  29. package/lib/view/spendManagement/billPay/editBillView/epics/initializeBillToLocalStoreEpic.js +6 -9
  30. package/lib/view/spendManagement/billPay/editBillView/epics/parseInvoiceToBillEpic.js +14 -12
  31. package/lib/view/spendManagement/billPay/editBillView/epics/saveBillDetailEpic.js +27 -25
  32. package/lib/view/spendManagement/zeniAccounts/transferDetail/transferDetailSelector.d.ts +5 -0
  33. package/lib/view/spendManagement/zeniAccounts/transferDetail/transferDetailSelector.js +41 -30
  34. package/lib/view/spendManagement/zeniAccounts/transferDetail/transferMoneyEpic.js +4 -4
  35. package/lib/view/vendorReviewView/common/payload/commonTypes.js +15 -10
  36. package/lib/view/vendorReviewView/common/state/commonTypes.js +11 -9
  37. package/lib/view/vendorReviewView/vendorFirstReviewView/epics/fetchVendorFirstReviewViewEpic.js +3 -7
  38. package/lib/view/vendorReviewView/vendorFirstReviewView/vendorFirstReviewViewReducer.js +4 -3
  39. package/lib/view/vendorReviewView/vendorFirstReviewView/vendorFirstReviewViewSelector.js +4 -4
  40. package/lib/view/vendorReviewView/vendorGlobalReviewView/epics/fetchVendorGlobalReviewViewEpic.js +6 -9
  41. package/package.json +1 -1
@@ -1,5 +1,7 @@
1
1
  import { FetchState } from '../../../../commonStateTypes/common';
2
2
  import { SelectorView } from '../../../../commonStateTypes/viewAndReport/viewAndReport';
3
+ import { DepositAccount } from '../../../../entity/depositAccount/depositAccount';
4
+ import { PaymentAccount } from '../../../../entity/paymentAccount/paymentAccountState';
3
5
  import { RootState } from '../../../../reducer';
4
6
  import { TransferDetailLocalData, TransferMoneyParty } from './transferDetailState';
5
7
  export interface TransferDetailSelectorView extends SelectorView {
@@ -8,3 +10,6 @@ export interface TransferDetailSelectorView extends SelectorView {
8
10
  transferMoneyPartiesFetchState: FetchState;
9
11
  }
10
12
  export declare const getTransferDetail: (state: RootState) => TransferDetailSelectorView;
13
+ export declare const getTransferMoneyParties: (depositAccounts: DepositAccount[], paymentAccounts: PaymentAccount[]) => TransferMoneyParty[];
14
+ export declare const mapDepositAccToTransferMoneyParty: (depositAcc: DepositAccount) => TransferMoneyParty;
15
+ export declare const mapPaymentAccToTransferMoneyParty: (paymentAcc: PaymentAccount) => TransferMoneyParty;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getTransferDetail = void 0;
3
+ exports.mapPaymentAccToTransferMoneyParty = exports.mapDepositAccToTransferMoneyParty = exports.getTransferMoneyParties = exports.getTransferDetail = void 0;
4
4
  const reduceFetchState_1 = require("../../../../commonStateTypes/reduceFetchState");
5
5
  const depositAccountPayload_1 = require("../../../../entity/depositAccount/depositAccountPayload");
6
6
  const depositAccountListSelector_1 = require("../depositAccountList/depositAccountListSelector");
@@ -17,35 +17,7 @@ const getTransferDetail = (state) => {
17
17
  ]).fetchState;
18
18
  if (depositAccountsView.fetchState === 'Completed' &&
19
19
  paymentAccountsView.fetchState === 'Completed') {
20
- transferParties = [
21
- ...depositAccountsView.depositAccounts.map((depositAcc) => ({
22
- id: depositAcc.id,
23
- accType: 'depositAccount',
24
- label: depositAcc.accountName,
25
- maskedAccountNumber: depositAcc.maskedAccountNumber,
26
- accountBalance: depositAcc.accountBalance,
27
- logo: undefined,
28
- })),
29
- ...paymentAccountsView.paymentAccounts
30
- .filter((paymentAccount) => {
31
- var _a, _b;
32
- return ((_a = paymentAccount.providerVerificationStatus) === null || _a === void 0 ? void 0 : _a.code) === 'verified' ||
33
- ((_b = paymentAccount.providerVerificationStatus) === null || _b === void 0 ? void 0 : _b.code) ===
34
- 'manually_verified';
35
- })
36
- .map((paymentAcc) => {
37
- var _a;
38
- return ({
39
- id: paymentAcc.paymentAccountId,
40
- accType: 'paymentAccount',
41
- maskedAccountNumber: paymentAcc.maskedAccountNumber,
42
- label: Boolean(paymentAcc.institutionDetails.institutionName) === true
43
- ? paymentAcc.institutionDetails.institutionName
44
- : (0, depositAccountPayload_1.getZeniAccountFallbackName)(paymentAcc.maskedAccountNumber, (_a = paymentAcc.accountSubType) === null || _a === void 0 ? void 0 : _a.name),
45
- logo: paymentAcc.institutionDetails.logo,
46
- });
47
- }),
48
- ];
20
+ transferParties = (0, exports.getTransferMoneyParties)(depositAccountsView.depositAccounts, paymentAccountsView.paymentAccounts);
49
21
  }
50
22
  return {
51
23
  transferDetailLocalData: localData,
@@ -57,3 +29,42 @@ const getTransferDetail = (state) => {
57
29
  };
58
30
  };
59
31
  exports.getTransferDetail = getTransferDetail;
32
+ /* This helper function takes deposit accounts and payment accounts
33
+ and give back TrasferMoneyParty type array
34
+ to support single dropdown with both lists */
35
+ const getTransferMoneyParties = (depositAccounts, paymentAccounts) => {
36
+ return [
37
+ ...depositAccounts.map((depositAcc) => (0, exports.mapDepositAccToTransferMoneyParty)(depositAcc)),
38
+ ...paymentAccounts
39
+ .filter((paymentAccount) => {
40
+ var _a, _b;
41
+ return ((_a = paymentAccount.providerVerificationStatus) === null || _a === void 0 ? void 0 : _a.code) === 'verified' ||
42
+ ((_b = paymentAccount.providerVerificationStatus) === null || _b === void 0 ? void 0 : _b.code) ===
43
+ 'manually_verified';
44
+ })
45
+ .map((paymentAcc) => (0, exports.mapPaymentAccToTransferMoneyParty)(paymentAcc)),
46
+ ];
47
+ };
48
+ exports.getTransferMoneyParties = getTransferMoneyParties;
49
+ const mapDepositAccToTransferMoneyParty = (depositAcc) => ({
50
+ id: depositAcc.id,
51
+ accType: 'depositAccount',
52
+ label: depositAcc.accountName,
53
+ maskedAccountNumber: depositAcc.maskedAccountNumber,
54
+ accountBalance: depositAcc.accountBalance,
55
+ logo: undefined,
56
+ });
57
+ exports.mapDepositAccToTransferMoneyParty = mapDepositAccToTransferMoneyParty;
58
+ const mapPaymentAccToTransferMoneyParty = (paymentAcc) => {
59
+ var _a;
60
+ return ({
61
+ id: paymentAcc.paymentAccountId,
62
+ accType: 'paymentAccount',
63
+ maskedAccountNumber: paymentAcc.maskedAccountNumber,
64
+ label: Boolean(paymentAcc.institutionDetails.institutionName) === true
65
+ ? paymentAcc.institutionDetails.institutionName
66
+ : (0, depositAccountPayload_1.getZeniAccountFallbackName)(paymentAcc.maskedAccountNumber, (_a = paymentAcc.accountSubType) === null || _a === void 0 ? void 0 : _a.name),
67
+ logo: paymentAcc.institutionDetails.logo,
68
+ });
69
+ };
70
+ exports.mapPaymentAccToTransferMoneyParty = mapPaymentAccToTransferMoneyParty;
@@ -9,18 +9,18 @@ const depositAccountListReducer_1 = require("../depositAccountList/depositAccoun
9
9
  const depositAccountTransactionListReducer_1 = require("../depositAccountTransactionList/depositAccountTransactionListReducer");
10
10
  const helpers_1 = require("../../helpers");
11
11
  const transferMoneyEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(transferDetailReducer_1.transferMoney.match), (0, operators_1.switchMap)((action) => {
12
- var _a, _b, _c, _d;
12
+ var _a, _b, _c, _d, _e, _f;
13
13
  const state = state$.value;
14
14
  const { depositAccountId } = action.payload;
15
15
  const localData = state.transferDetailState.localData;
16
16
  const payload = {
17
17
  from_account: {
18
18
  account_id: (_a = localData.transferFrom) === null || _a === void 0 ? void 0 : _a.id,
19
- account_type: (0, helpers_1.accountTypeSubConfigCodeToAccType)((_b = localData.transferFrom) === null || _b === void 0 ? void 0 : _b.accType),
19
+ account_type: (_c = (0, helpers_1.accountTypeSubConfigCodeToAccType)((_b = localData.transferFrom) === null || _b === void 0 ? void 0 : _b.accType)) !== null && _c !== void 0 ? _c : '',
20
20
  },
21
21
  to_account: {
22
- account_id: (_c = localData.transferTo) === null || _c === void 0 ? void 0 : _c.id,
23
- account_type: (0, helpers_1.accountTypeSubConfigCodeToAccType)((_d = localData.transferTo) === null || _d === void 0 ? void 0 : _d.accType),
22
+ account_id: (_d = localData.transferTo) === null || _d === void 0 ? void 0 : _d.id,
23
+ account_type: (_f = (0, helpers_1.accountTypeSubConfigCodeToAccType)((_e = localData.transferTo) === null || _e === void 0 ? void 0 : _e.accType)) !== null && _f !== void 0 ? _f : '',
24
24
  },
25
25
  amount: localData.amount.amount,
26
26
  currency_code: localData.amount.currencyCode,
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.toGlobalMerchantsBasePayload = exports.toVendorReviewViewRecommendationPayload = exports.toNonExistingRecommendationGlobalMerchantBasePayload = exports.toUserPayload = void 0;
7
- const flatMap_1 = __importDefault(require("lodash/flatMap"));
8
7
  const omit_1 = __importDefault(require("lodash/omit"));
9
8
  const globalMerchantPayload_1 = require("../../../../entity/globalMerchant/globalMerchantPayload");
10
9
  /**
@@ -69,19 +68,25 @@ const toVendorReviewViewRecommendationPayload = (recommendations, nonExistingRec
69
68
  global_merchants: recommendationEntities,
70
69
  };
71
70
  });
72
- const allRecommendations = recommendationsPayload.length > 0
73
- ? recommendationsPayload
74
- : nonExistingRecommendationsPayload;
71
+ const allRecommendations = [
72
+ {
73
+ global_merchants: [
74
+ ...recommendationsPayload[0].global_merchants,
75
+ ...nonExistingRecommendationsPayload[0].global_merchants,
76
+ ],
77
+ },
78
+ ];
75
79
  return allRecommendations;
76
80
  };
77
81
  exports.toVendorReviewViewRecommendationPayload = toVendorReviewViewRecommendationPayload;
78
82
  const toGlobalMerchantsBasePayload = (vendorsRecommendationsPayload) => {
79
- var _a, _b;
80
- let globalMerchantBasePayload = [];
81
- if (((_b = (_a = vendorsRecommendationsPayload[0]) === null || _a === void 0 ? void 0 : _a.global_merchants[0]) === null || _b === void 0 ? void 0 : _b.global_merchant_id) != null) {
82
- globalMerchantBasePayload = (0, flatMap_1.default)(vendorsRecommendationsPayload.map((vendorsRecoomendation) => vendorsRecoomendation
83
- .global_merchants));
84
- }
83
+ var _a;
84
+ const globalMerchantBasePayload = [];
85
+ (_a = vendorsRecommendationsPayload[0]) === null || _a === void 0 ? void 0 : _a.global_merchants.forEach((globalMerchantPayload) => {
86
+ if (globalMerchantPayload.global_merchant_id != null) {
87
+ globalMerchantBasePayload.push(globalMerchantPayload);
88
+ }
89
+ });
85
90
  return globalMerchantBasePayload;
86
91
  };
87
92
  exports.toGlobalMerchantsBasePayload = toGlobalMerchantsBasePayload;
@@ -67,15 +67,17 @@ const toNonExistingGlobalMerchantBase = (globalMerchantPayload) => {
67
67
  };
68
68
  exports.toNonExistingGlobalMerchantBase = toNonExistingGlobalMerchantBase;
69
69
  const toAllRecommendationsFromPayload = (recommendationsPayload) => {
70
- var _a, _b;
71
- let recommendations = [];
72
- let nonExistingRecommendations = [];
73
- if (((_b = (_a = recommendationsPayload[0]) === null || _a === void 0 ? void 0 : _a.global_merchants[0]) === null || _b === void 0 ? void 0 : _b.global_merchant_id) != null) {
74
- recommendations = (0, exports.toRecommendationsFromPayload)(recommendationsPayload);
75
- }
76
- else {
77
- nonExistingRecommendations = (0, exports.toNonExistingRecommendationsFromPayload)(recommendationsPayload);
78
- }
70
+ var _a;
71
+ const recommendations = [];
72
+ const nonExistingRecommendations = [];
73
+ (_a = recommendationsPayload[0]) === null || _a === void 0 ? void 0 : _a.global_merchants.forEach((globalmerchant) => {
74
+ if (globalmerchant.global_merchant_id != null) {
75
+ recommendations.push((0, globalMerchantPayload_1.toGlobalMerchantBase)(globalmerchant));
76
+ }
77
+ else {
78
+ nonExistingRecommendations.push((0, exports.toNonExistingGlobalMerchantBase)(globalmerchant));
79
+ }
80
+ });
79
81
  const recommendationIds = recommendations.map((recommendation) => recommendation.globalMerchantId);
80
82
  return {
81
83
  recommendationIds,
@@ -82,17 +82,13 @@ exports.mapUsersPayloadFromVendorFirstReviewViewResponse = mapUsersPayloadFromVe
82
82
  const mapGlobalMerchantsBasePayloadFromVendorFirstReviewViewResponse = (vendorsResponse) => {
83
83
  const globalMerchantBasePayload = [];
84
84
  vendorsResponse.forEach((vendor) => {
85
- var _a, _b;
86
- if (((_b = (_a = vendor.recommendations[0]) === null || _a === void 0 ? void 0 : _a.global_merchants[0]) === null || _b === void 0 ? void 0 : _b.global_merchant_id) != null) {
87
- mapVendorRecommendationsToGlobalMerchantBasePayload(vendor.recommendations, globalMerchantBasePayload);
88
- }
85
+ var _a;
86
+ const existingMerchants = (_a = vendor.recommendations[0]) === null || _a === void 0 ? void 0 : _a.global_merchants.filter((merchant) => merchant.global_merchant_id != null);
87
+ mapEntitiesRecommendationsPayloadToGlobalMerchantsBasePayload(existingMerchants, globalMerchantBasePayload);
89
88
  });
90
89
  return globalMerchantBasePayload;
91
90
  };
92
91
  exports.mapGlobalMerchantsBasePayloadFromVendorFirstReviewViewResponse = mapGlobalMerchantsBasePayloadFromVendorFirstReviewViewResponse;
93
- const mapVendorRecommendationsToGlobalMerchantBasePayload = (recommendations, globalMerchantBasePayload) => {
94
- recommendations.forEach((recommendation) => mapEntitiesRecommendationsPayloadToGlobalMerchantsBasePayload(recommendation.global_merchants, globalMerchantBasePayload));
95
- };
96
92
  const mapEntitiesRecommendationsPayloadToGlobalMerchantsBasePayload = (entities, globalMerchantBasePayload) => {
97
93
  entities.forEach((entity) => globalMerchantBasePayload.push(entity));
98
94
  };
@@ -83,8 +83,9 @@ const vendorFirstReviewView = (0, toolkit_1.createSlice)({
83
83
  const isRecommendationSelected = selectedGlobalMerchantId != null &&
84
84
  (selectedGlobalMerchantId ===
85
85
  vendorLocalData.recommendationIds[0] ||
86
- selectedGlobalMerchantId ===
87
- ((_a = vendorLocalData.recommendedNonExistingGlobalMerchants[0]) === null || _a === void 0 ? void 0 : _a.globalMerchantName));
86
+ (vendorLocalData.recommendationIds.length === 0 &&
87
+ selectedGlobalMerchantId ===
88
+ ((_a = vendorLocalData.recommendedNonExistingGlobalMerchants[0]) === null || _a === void 0 ? void 0 : _a.globalMerchantName)));
88
89
  const isRetainSelected = selectedGlobalMerchantId != null &&
89
90
  selectedGlobalMerchantId === vendorLocalData.vendorId;
90
91
  currentSelection =
@@ -244,7 +245,7 @@ const mapPayloadToVendorFirstReviewView = (payload) => {
244
245
  },
245
246
  currentSelection: null,
246
247
  recommendationIds,
247
- recommendedNonExistingGlobalMerchants: recommendationIds.length === 0 ? nonExistingRecommendations : [],
248
+ recommendedNonExistingGlobalMerchants: nonExistingRecommendations,
248
249
  lastUpdatedVendorNameByUserId: (_a = payload.last_updated_vendor_name_by_user) === null || _a === void 0 ? void 0 : _a.user_id,
249
250
  };
250
251
  };
@@ -19,10 +19,10 @@ const getVendorFirstReviewView = (state) => {
19
19
  const currentVendor = (0, vendorSelector_1.getVendorByVendorId)(vendorState, vendorLocalData.vendorId);
20
20
  const users = (0, userSelector_1.getUsersByUserIds)(userState, userIds);
21
21
  let recommendations = (0, globalMerchantSelector_1.getGlobalMerchantsByMerchantIds)(globalMerchantState, vendorLocalData.recommendationIds);
22
- recommendations =
23
- recommendations.length > 0
24
- ? recommendations
25
- : vendorLocalData.recommendedNonExistingGlobalMerchants;
22
+ recommendations = [
23
+ ...recommendations,
24
+ ...vendorLocalData.recommendedNonExistingGlobalMerchants,
25
+ ];
26
26
  let selectedVendor;
27
27
  const vendor = (0, vendorSelector_1.getVendorByVendorId)(vendorState, vendorLocalData.selectedVendorId);
28
28
  if (vendor != null) {
@@ -71,15 +71,12 @@ exports.toUsersPayload = toUsersPayload;
71
71
  const mapGlobalReviewPayloadToGlobalMerchantsBasePayload = (vendorsResponse) => {
72
72
  let globalMerchantBasePayload = [];
73
73
  vendorsResponse.forEach((vendor) => {
74
- var _a, _b;
75
- if (((_b = (_a = vendor.recommendations[0]) === null || _a === void 0 ? void 0 : _a.global_merchants[0]) === null || _b === void 0 ? void 0 : _b.global_merchant_id) != null) {
76
- globalMerchantBasePayload = [
77
- ...new Set([
78
- ...globalMerchantBasePayload,
79
- ...(0, commonTypes_1.toGlobalMerchantsBasePayload)(vendor.recommendations),
80
- ]),
81
- ];
82
- }
74
+ globalMerchantBasePayload = [
75
+ ...new Set([
76
+ ...globalMerchantBasePayload,
77
+ ...(0, commonTypes_1.toGlobalMerchantsBasePayload)(vendor.recommendations),
78
+ ]),
79
+ ];
83
80
  });
84
81
  return globalMerchantBasePayload;
85
82
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeniai/client-epic-state",
3
- "version": "4.8.12",
3
+ "version": "4.8.14",
4
4
  "description": "Shared module between Web & Mobile containing required abstractions for state management, async network communication. ",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",