@zeniai/client-epic-state 4.11.45 → 4.11.47

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 (66) hide show
  1. package/lib/entity/chargeCardTransaction/chargeCardTransaction.d.ts +1 -1
  2. package/lib/entity/company/companyPayload.d.ts +12 -0
  3. package/lib/entity/company/companyPayload.js +21 -0
  4. package/lib/entity/company/companyReducer.d.ts +7 -0
  5. package/lib/entity/company/companyReducer.js +22 -2
  6. package/lib/entity/company/companyStateTypes.d.ts +12 -0
  7. package/lib/entity/depositAccountTransaction/depositAccountTransaction.d.ts +1 -1
  8. package/lib/entity/paymentAccount/paymentAccountPayload.d.ts +2 -0
  9. package/lib/entity/paymentAccount/paymentAccountPayload.js +2 -0
  10. package/lib/entity/paymentAccount/paymentAccountState.d.ts +2 -0
  11. package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
  12. package/lib/entity/toastNotification/epic/pushToastNotificationEpic.d.ts +1 -1
  13. package/lib/index.d.ts +6 -6
  14. package/lib/view/cardPayment/epic/addCardPaymentSourceEpic.d.ts +1 -1
  15. package/lib/view/cardPayment/epic/confirmCardSetupIntentEpic.d.ts +1 -1
  16. package/lib/view/cardPayment/epic/createCardSetupIntentEpic.d.ts +1 -1
  17. package/lib/view/cardPayment/epic/fetchPaymentSourcesEpic.d.ts +1 -1
  18. package/lib/view/companyView/types/cockpitTypes.d.ts +2 -2
  19. package/lib/view/onboardingView/customerView/epic/plaidConnection/establishOnboardingPlaidConnectionEpic.js +2 -0
  20. package/lib/view/people/changeZeniPersonRolesEpic.d.ts +1 -1
  21. package/lib/view/people/deletePersonEpic.d.ts +1 -1
  22. package/lib/view/people/invitePeopleEpic.d.ts +1 -1
  23. package/lib/view/people/inviteZeniPeopleEpic.d.ts +1 -1
  24. package/lib/view/people/resendInviteEpic.d.ts +1 -1
  25. package/lib/view/referralView/referralState.d.ts +1 -1
  26. package/lib/view/reviewCompanyView/reviewCompanyViewSelector.js +45 -41
  27. package/lib/view/scheduleView/scheduleListView/scheduleListTypes.d.ts +1 -1
  28. package/lib/view/settingsView/epic/fetchBankConnectionsViewEpic.d.ts +6 -4
  29. package/lib/view/settingsView/epic/fetchBankConnectionsViewEpic.js +29 -6
  30. package/lib/view/settingsView/epic/saveNotificationSettingsEpic.d.ts +1 -1
  31. package/lib/view/settingsView/settingsViewReducer.d.ts +3 -1
  32. package/lib/view/settingsView/settingsViewReducer.js +11 -2
  33. package/lib/view/settingsView/settingsViewSelector.d.ts +1 -1
  34. package/lib/view/settingsView/settingsViewSelector.js +56 -7
  35. package/lib/view/settingsView/types/settingsViewSelectorTypes.d.ts +10 -2
  36. package/lib/view/spendManagement/billPay/billPayReview/billPayReviewSelector.js +2 -3
  37. package/lib/view/spendManagement/billPay/billPaySetupView/billPaySetupViewSelector.js +1 -1
  38. package/lib/view/spendManagement/billPay/billPaySetupView/epic/billPaySetup/fetchBillPaySetupViewEpic.d.ts +4 -1
  39. package/lib/view/spendManagement/billPay/billPaySetupView/epic/billPaySetup/fetchBillPaySetupViewEpic.js +16 -4
  40. package/lib/view/spendManagement/billPay/editBillView/editBillViewSelector.js +2 -3
  41. package/lib/view/spendManagement/billPay/editBillView/epics/initializeBillToLocalStoreEpic.d.ts +1 -2
  42. package/lib/view/spendManagement/chargeCards/chargeCardSetUp/chargeCardSetUpViewSelector.js +1 -1
  43. package/lib/view/spendManagement/chargeCards/chargeCardSetUp/epic/fetchChargeCardSetupViewEpic.d.ts +4 -1
  44. package/lib/view/spendManagement/chargeCards/chargeCardSetUp/epic/fetchChargeCardSetupViewEpic.js +16 -4
  45. package/lib/view/spendManagement/commonSetup/setupViewSelector.d.ts +4 -0
  46. package/lib/view/spendManagement/commonSetup/setupViewSelector.js +42 -32
  47. package/lib/view/spendManagement/plaidAccount/epic/paymentAccounts/getPaymentAccountsEpic.js +1 -2
  48. package/lib/view/spendManagement/plaidAccount/epic/paymentAccounts/updateMappedCashAccountEpic.js +4 -5
  49. package/lib/view/spendManagement/plaidAccount/epic/paymentAccounts/updatePaymentAccountEpic.js +1 -2
  50. package/lib/view/spendManagement/plaidAccount/epic/paymentAccounts/updatePaymentAccountStatusEpic.js +1 -2
  51. package/lib/view/spendManagement/plaidAccount/epic/paymentAccounts/updatePrimaryFundingAccountEpic.js +34 -12
  52. package/lib/view/spendManagement/plaidAccount/epic/plaidConnection/establishPlaidConnectionEpic.d.ts +2 -1
  53. package/lib/view/spendManagement/plaidAccount/epic/plaidConnection/establishPlaidConnectionEpic.js +52 -16
  54. package/lib/view/spendManagement/plaidAccount/epic/plaidConnection/getPlaidLinkTokenEpic.js +1 -1
  55. package/lib/view/spendManagement/plaidAccount/plaidAccountViewReducer.d.ts +22 -29
  56. package/lib/view/spendManagement/plaidAccount/plaidAccountViewReducer.js +49 -78
  57. package/lib/view/spendManagement/plaidAccount/plaidAccountViewState.d.ts +2 -8
  58. package/lib/view/spendManagement/plaidAccount/plaidAccountViewState.js +5 -3
  59. package/lib/view/spendManagement/reimbursement/remiSetupView/epic/remiSetup/fetchRemiSetupViewEpic.js +6 -19
  60. package/lib/view/spendManagement/zeniAccounts/zeniAccountList/zeniAccountListSelector.js +2 -2
  61. package/lib/view/spendManagement/zeniAccounts/zeniAccountSetUp/epic/fetchZeniAccountSetupViewEpic.d.ts +4 -1
  62. package/lib/view/spendManagement/zeniAccounts/zeniAccountSetUp/epic/fetchZeniAccountSetupViewEpic.js +20 -9
  63. package/lib/view/spendManagement/zeniAccounts/zeniAccountSetUp/zeniAccountSetupViewSelector.js +1 -1
  64. package/lib/view/tagView/epics/createTagEpic.d.ts +6 -6
  65. package/lib/view/tagView/epics/deleteTagEpic.d.ts +6 -6
  66. package/package.json +1 -1
@@ -16,6 +16,9 @@ const responsePayload_1 = require("../../../../../responsePayload");
16
16
  const setupViewReducer_1 = require("../../../commonSetup/setupViewReducer");
17
17
  const chargeCardSetUpViewReducer_1 = require("../chargeCardSetUpViewReducer");
18
18
  const plaidAccountViewReducer_1 = require("../../../plaidAccount/plaidAccountViewReducer");
19
+ const paymentAccountListReducer_1 = require("../../../zeniAccounts/paymentAccountList/paymentAccountListReducer");
20
+ const depositAccountReducer_1 = require("../../../../../entity/depositAccount/depositAccountReducer");
21
+ const depositAccountListReducer_1 = require("../../../zeniAccounts/depositAccountList/depositAccountListReducer");
19
22
  const fetchChargeCardSetupViewEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(chargeCardSetUpViewReducer_1.fetchChargeCardSetupView.match), (0, operators_1.switchMap)((action) => {
20
23
  var _a;
21
24
  const { companyId, cacheOverride, refreshViewInBackground } = action.payload;
@@ -29,9 +32,9 @@ const fetchChargeCardSetupViewEpic = (actions$, state$, zeniAPI) => actions$.pip
29
32
  return zeniAPI
30
33
  .getJSON(`${zeniAPI.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${companyId}?query={"view":"charge_cards_setup"}`)
31
34
  .pipe((0, operators_1.mergeMap)((response) => {
35
+ var _a, _b, _c;
32
36
  if ((0, responsePayload_1.isSuccessStatus)(response) && response.data != null) {
33
37
  const allBankAccountIds = response.data.accounts.map((account) => account.account_id);
34
- const paymentAccountIds = response.data.payment_accounts.map((paymentAccount) => paymentAccount.payment_account_id);
35
38
  const actions = [
36
39
  (0, userReducer_1.updateAllUsers)({ users: response.data.users }),
37
40
  (0, userRoleReducer_1.updateUserRoles)(response.data.user_roles),
@@ -43,10 +46,19 @@ const fetchChargeCardSetupViewEpic = (actions$, state$, zeniAPI) => actions$.pip
43
46
  (0, fileReducer_1.updateFiles)({ files: response.data.files }),
44
47
  (0, accountReducer_1.updateAccounts)(response.data.accounts, 'charge_cards'),
45
48
  (0, paymentAccountReducer_1.updatePaymentAccounts)(response.data.payment_accounts),
49
+ (0, paymentAccountListReducer_1.updatePaymentAccountList)({
50
+ data: response.data.payment_accounts,
51
+ updateType: 'replace',
52
+ }),
53
+ (0, depositAccountReducer_1.updateDepositAccounts)((_a = response.data.deposit_accounts) !== null && _a !== void 0 ? _a : []),
54
+ (0, depositAccountListReducer_1.updateDepositAccountList)({
55
+ data: (_c = (_b = response.data) === null || _b === void 0 ? void 0 : _b.deposit_accounts) !== null && _c !== void 0 ? _c : [],
56
+ updateType: 'replace',
57
+ }),
46
58
  (0, setupViewReducer_1.updateSetupViewLocalStoreData)({
47
59
  companyId: response.data.companies[0].company_id,
48
60
  }),
49
- (0, plaidAccountViewReducer_1.updatePlaidAccountViewAccountDetails)(allBankAccountIds, paymentAccountIds, 'spend_management_setup'),
61
+ (0, plaidAccountViewReducer_1.updatePlaidAccountViewAccountDetails)(allBankAccountIds, 'charge_card_setup'),
50
62
  (0, chargeCardSetUpViewReducer_1.fetchChargeCardSetupViewSuccess)(),
51
63
  ];
52
64
  return (0, rxjs_1.from)(actions);
@@ -62,10 +74,10 @@ const fetchChargeCardSetupViewEpic = (actions$, state$, zeniAPI) => actions$.pip
62
74
  JSON.stringify(error))))));
63
75
  }
64
76
  else {
65
- const { allBankAccountIds, paymentAccountIds } = plaidAccountViewState['spend_management_setup'].accountDetails;
77
+ const { allBankAccountIds } = plaidAccountViewState['spend_management_setup'].accountDetails;
66
78
  return (0, rxjs_1.of)((0, setupViewReducer_1.updateSetupViewLocalStoreData)({
67
79
  companyId,
68
- }), (0, plaidAccountViewReducer_1.updatePlaidAccountViewAccountDetails)(allBankAccountIds, paymentAccountIds, 'spend_management_setup'), (0, chargeCardSetUpViewReducer_1.fetchChargeCardSetupViewSuccess)());
80
+ }), (0, plaidAccountViewReducer_1.updatePlaidAccountViewAccountDetails)(allBankAccountIds, 'charge_card_setup'), (0, chargeCardSetUpViewReducer_1.fetchChargeCardSetupViewSuccess)());
69
81
  }
70
82
  }));
71
83
  exports.fetchChargeCardSetupViewEpic = fetchChargeCardSetupViewEpic;
@@ -77,6 +77,10 @@ export interface BusinessVerificationDetails extends CompanyAndOfficerLocalData
77
77
  updateStatus: FetchStateAndError;
78
78
  }
79
79
  export declare function getCommonSetupViewDetails(state: RootState, companyId: ID, setupViewType: SetupViewType, plaidAccountKeyType: PlaidAccountKeyType): SetupView;
80
+ export declare function getPrimaryAccountForTheProduct(state: RootState, companyId: ID, setupViewType: SetupViewType): {
81
+ accountId: ID;
82
+ accountType: AccountTypeSubConfigCodeKeyType;
83
+ } | undefined;
80
84
  export declare function getBusinessVerificationDetails(state: RootState, companyId: ID): BusinessVerificationDetails;
81
85
  export declare const getCompanyAndIdentityDetails: (state: RootState, companyId: ID, companyAndIdentityDetails: CompanyAndIdentityDetails) => CompanyAndOfficerLocalData;
82
86
  export declare const getAllFundingAccounts: (depositAccounts: DepositAccount[], paymentAccounts: PaymentAccount[], includeOnlyVerifiedAccounts?: boolean) => FundingAccount[];
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mapPaymentAccToFundingAccount = exports.mapDepositAccToFundingAccount = exports.getAllFundingAccounts = exports.getCompanyAndIdentityDetails = exports.getBusinessVerificationDetails = exports.getCommonSetupViewDetails = void 0;
3
+ exports.mapPaymentAccToFundingAccount = exports.mapDepositAccToFundingAccount = exports.getAllFundingAccounts = exports.getCompanyAndIdentityDetails = exports.getBusinessVerificationDetails = exports.getPrimaryAccountForTheProduct = exports.getCommonSetupViewDetails = void 0;
4
4
  const accountSelector_1 = require("../../../entity/account/accountSelector");
5
5
  const fileSelector_1 = require("../../../entity/file/fileSelector");
6
6
  const fileViewSelector_1 = require("../../fileView/fileViewSelector");
@@ -10,62 +10,72 @@ const paymentAccountSelector_1 = require("../../../entity/paymentAccount/payment
10
10
  const depositAccountSelector_1 = require("../../../entity/depositAccount/depositAccountSelector");
11
11
  const depositAccountPayload_1 = require("../../../entity/depositAccount/depositAccountPayload");
12
12
  function getCommonSetupViewDetails(state, companyId, setupViewType, plaidAccountKeyType) {
13
- var _a, _b, _c, _d;
13
+ var _a, _b, _c;
14
14
  const { accountState, setupViewState, paymentAccountState, paymentAccountListState, depositAccountState, depositAccountListState, plaidAccountViewState, } = state;
15
15
  const { updateStatus } = setupViewState;
16
16
  const { accountDetails, plaidConnectionDetails } = (0, plaidAccountViewSelector_1.getPlaidAccountDetails)(plaidAccountViewState, plaidAccountKeyType);
17
- const { allBankAccountIds, primaryFundingAccount } = accountDetails;
17
+ const { allBankAccountIds } = accountDetails;
18
18
  const { paymentAccountIds } = paymentAccountListState;
19
19
  const { accountIds: depositAccountIds } = depositAccountListState;
20
20
  const allBankAccounts = (_a = allBankAccountIds === null || allBankAccountIds === void 0 ? void 0 : allBankAccountIds.map((accountId) => (0, accountSelector_1.getAccountBase)(accountState, accountId, setupViewType)).filter((account) => account != null)) !== null && _a !== void 0 ? _a : [];
21
21
  const paymentAccounts = (_b = (0, paymentAccountSelector_1.getPaymentAccountsByPaymentAccountIds)(paymentAccountState, paymentAccountIds).filter((account) => account != null)) !== null && _b !== void 0 ? _b : [];
22
22
  const depositAccounts = (_c = (0, depositAccountSelector_1.getDepositAccountsByDepositAccountIds)(depositAccountState, depositAccountIds).filter((account) => account != null)) !== null && _c !== void 0 ? _c : [];
23
- const allFundingAccounts = (0, exports.getAllFundingAccounts)(depositAccounts, paymentAccounts, false);
23
+ const allFundingAccounts = (0, exports.getAllFundingAccounts)(setupViewType === 'zeni_accounts' ? [] : depositAccounts, // only external acct can be made primary for accounts setup
24
+ paymentAccounts, false);
24
25
  const companyView = (0, getCompanyView_1.getCompanyView)(state, companyId, []);
25
26
  const companyBillPayInfo = companyView === null || companyView === void 0 ? void 0 : companyView.company.company.companyBillPayInfo;
26
- let paymentAccount;
27
- let primaryAccount = undefined;
28
- if (((_d = accountDetails.paymentAccountIds) === null || _d === void 0 ? void 0 : _d.length) > 0) {
29
- // paymentAccount is used for products other than reimbursement
30
- const paymentAccountId = accountDetails.paymentAccountIds[0];
31
- paymentAccount = (0, paymentAccountSelector_1.getPaymentAccountByPaymentAccountId)(paymentAccountState, paymentAccountId);
32
- }
33
- // For reimbursement setup, use primaryFundingAccount as the payment account.
34
- // For other setup pages, continue using first payment account
35
- if (plaidAccountKeyType === 'reimbursement_setup') {
36
- if ((primaryFundingAccount === null || primaryFundingAccount === void 0 ? void 0 : primaryFundingAccount.accountType) === 'depositAccount') {
37
- const depositAccount = (0, depositAccountSelector_1.getDepositAccountByDepositAccountId)(depositAccountState, primaryFundingAccount.accountId);
38
- if (depositAccount != null) {
39
- primaryAccount = (0, exports.mapDepositAccToFundingAccount)(depositAccount);
40
- }
41
- }
42
- else if ((primaryFundingAccount === null || primaryFundingAccount === void 0 ? void 0 : primaryFundingAccount.accountType) === 'paymentAccount') {
43
- const paymentAccount = (0, paymentAccountSelector_1.getPaymentAccountByPaymentAccountId)(paymentAccountState, primaryFundingAccount.accountId);
44
- if (paymentAccount != null) {
45
- primaryAccount = (0, exports.mapPaymentAccToFundingAccount)(paymentAccount);
46
- }
27
+ const primaryAccount = getPrimaryAccountForTheProduct(state, companyId, setupViewType);
28
+ let primaryFundingAccount;
29
+ if ((primaryAccount === null || primaryAccount === void 0 ? void 0 : primaryAccount.accountType) === 'depositAccount') {
30
+ const depositAccount = (0, depositAccountSelector_1.getDepositAccountByDepositAccountId)(depositAccountState, primaryAccount.accountId);
31
+ if (depositAccount != null) {
32
+ primaryFundingAccount = (0, exports.mapDepositAccToFundingAccount)(depositAccount);
47
33
  }
48
34
  }
49
- else if ((paymentAccountIds === null || paymentAccountIds === void 0 ? void 0 : paymentAccountIds.length) > 0) {
50
- const paymentAccountId = paymentAccountIds[0];
51
- const paymentAccount = (0, paymentAccountSelector_1.getPaymentAccountByPaymentAccountId)(paymentAccountState, paymentAccountId);
35
+ else if ((primaryAccount === null || primaryAccount === void 0 ? void 0 : primaryAccount.accountType) === 'paymentAccount') {
36
+ const paymentAccount = (0, paymentAccountSelector_1.getPaymentAccountByPaymentAccountId)(paymentAccountState, primaryAccount.accountId);
52
37
  if (paymentAccount != null) {
53
- primaryAccount = (0, exports.mapPaymentAccToFundingAccount)(paymentAccount);
38
+ primaryFundingAccount = (0, exports.mapPaymentAccToFundingAccount)(paymentAccount);
54
39
  }
55
40
  }
56
41
  return {
57
42
  companyBillPayInfo,
58
- paymentAccount,
59
- primaryFundingAccount: primaryAccount,
43
+ primaryFundingAccount,
60
44
  allFundingAccounts,
61
45
  allBankAccounts,
62
46
  plaidConnectionDetails,
63
- accountUpdateStatus: accountDetails.updateStatus,
47
+ accountUpdateStatus: accountDetails.cashAccountUpdateStatus,
64
48
  accountFetchStatus: accountDetails.fetchStatus,
65
49
  updateStatus,
66
50
  };
67
51
  }
68
52
  exports.getCommonSetupViewDetails = getCommonSetupViewDetails;
53
+ function getPrimaryAccountForTheProduct(state, companyId, setupViewType) {
54
+ const companyView = (0, getCompanyView_1.getCompanyView)(state, companyId, []);
55
+ if (companyView == null) {
56
+ return undefined;
57
+ }
58
+ let primaryFundingAccount;
59
+ if (setupViewType === 'bill_pay') {
60
+ primaryFundingAccount =
61
+ companyView.company.company.companyBillPayInfo.primaryFundingAccount;
62
+ }
63
+ else if (setupViewType === 'reimbursement') {
64
+ primaryFundingAccount =
65
+ companyView.company.company.companyReimbursementInfo
66
+ .primaryFundingAccount;
67
+ }
68
+ else if (setupViewType === 'charge_cards') {
69
+ primaryFundingAccount =
70
+ companyView.company.company.companyChargeCardInfo.primaryFundingAccount;
71
+ }
72
+ else if (setupViewType === 'zeni_accounts') {
73
+ primaryFundingAccount =
74
+ companyView.company.company.companyZeniAccountInfo.primaryFundingAccount;
75
+ }
76
+ return primaryFundingAccount;
77
+ }
78
+ exports.getPrimaryAccountForTheProduct = getPrimaryAccountForTheProduct;
69
79
  function getBusinessVerificationDetails(state, companyId) {
70
80
  const { setupViewState } = state;
71
81
  const { companyDetails, companyOfficerUpdateStatus, primaryContactDetails, updateStatus, } = setupViewState;
@@ -24,11 +24,10 @@ const getPaymentAccountsEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0,
24
24
  .getJSON(`${zeniAPI.apiEndPoints.payMicroServiceBaseUrl}/1.0/payment-accounts?query=${encodeURIComponent(JSON.stringify(queryParams))}`)
25
25
  .pipe((0, operators_1.mergeMap)((response) => {
26
26
  if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
27
- const paymentAccountIds = response.data.payment_accounts.map((paymentAccount) => paymentAccount.payment_account_id);
28
27
  const actions = [
29
28
  (0, accountReducer_1.updateAccounts)(response.data.accounts, setupViewType),
30
29
  (0, paymentAccountReducer_1.updatePaymentAccounts)(response.data.payment_accounts),
31
- (0, plaidAccountViewReducer_1.getPaymentAccountsSuccess)(paymentAccountIds, plaidAccountKeyType),
30
+ (0, plaidAccountViewReducer_1.getPaymentAccountsSuccess)(plaidAccountKeyType),
32
31
  ];
33
32
  return (0, rxjs_1.from)(actions);
34
33
  }
@@ -7,7 +7,7 @@ const responsePayload_1 = require("../../../../../responsePayload");
7
7
  const plaidAccountViewReducer_1 = require("../../plaidAccountViewReducer");
8
8
  const depositAccountReducer_1 = require("../../../../../entity/depositAccount/depositAccountReducer");
9
9
  const updateMappedCashAccountEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(plaidAccountViewReducer_1.updateMappedCashAccount.match), (0, operators_1.mergeMap)((action) => {
10
- const { accountId, depositAccountId } = action.payload;
10
+ const { plaidAccountKeyType, accountId, depositAccountId } = action.payload;
11
11
  return zeniAPI
12
12
  .putAndGetJSON(`${zeniAPI.apiEndPoints.payMicroServiceBaseUrl}/1.0/deposit-accounts/${depositAccountId}`, {
13
13
  zeni_mapped_account_id: accountId,
@@ -15,17 +15,16 @@ const updateMappedCashAccountEpic = (actions$, _state$, zeniAPI) => actions$.pip
15
15
  .pipe((0, operators_1.mergeMap)((response) => {
16
16
  var _a, _b;
17
17
  if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
18
- const depositAccountIds = response.data.deposit_accounts.map((depositAccount) => depositAccount.deposit_account_id);
19
18
  const actions = [
20
19
  (0, depositAccountReducer_1.updateDepositAccounts)((_b = (_a = response.data) === null || _a === void 0 ? void 0 : _a.deposit_accounts) !== null && _b !== void 0 ? _b : []),
21
- (0, plaidAccountViewReducer_1.updateMappedCashAccountSuccess)(depositAccountIds),
20
+ (0, plaidAccountViewReducer_1.updateMappedCashAccountSuccess)(plaidAccountKeyType),
22
21
  ];
23
22
  return (0, rxjs_1.from)(actions);
24
23
  }
25
24
  else {
26
- return (0, rxjs_1.of)((0, plaidAccountViewReducer_1.updateMappedCashAccountFailure)(response.status));
25
+ return (0, rxjs_1.of)((0, plaidAccountViewReducer_1.updateMappedCashAccountFailure)(plaidAccountKeyType, response.status));
27
26
  }
28
- }), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, plaidAccountViewReducer_1.updateMappedCashAccountFailure)((0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Update Mapped Cash Account errored out' +
27
+ }), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, plaidAccountViewReducer_1.updateMappedCashAccountFailure)(plaidAccountKeyType, (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Update Mapped Cash Account errored out' +
29
28
  JSON.stringify(error))))));
30
29
  }));
31
30
  exports.updateMappedCashAccountEpic = updateMappedCashAccountEpic;
@@ -15,11 +15,10 @@ const updatePaymentAccountEpic = (actions$, _state$, zeniAPI) => actions$.pipe((
15
15
  })
16
16
  .pipe((0, operators_1.mergeMap)((response) => {
17
17
  if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
18
- const paymentAccountIds = response.data.payment_accounts.map((paymentAccount) => paymentAccount.payment_account_id);
19
18
  const actions = [
20
19
  (0, accountReducer_1.updateAccounts)(response.data.accounts, setupViewType),
21
20
  (0, paymentAccountReducer_1.updatePaymentAccounts)(response.data.payment_accounts),
22
- (0, plaidAccountViewReducer_1.updatePaymentAccountSuccess)(paymentAccountIds, plaidAccountKeyType),
21
+ (0, plaidAccountViewReducer_1.updatePaymentAccountSuccess)(plaidAccountKeyType),
23
22
  ];
24
23
  return (0, rxjs_1.from)(actions);
25
24
  }
@@ -16,11 +16,10 @@ const updatePaymentAccountStatusEpic = (actions$, _state$, zeniAPI) => actions$.
16
16
  })
17
17
  .pipe((0, operators_1.mergeMap)((response) => {
18
18
  if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
19
- const paymentAccountIds = response.data.payment_accounts.map((paymentAccount) => paymentAccount.payment_account_id);
20
19
  const actions = [
21
20
  (0, accountReducer_1.updateAccounts)(response.data.accounts, setupViewType),
22
21
  (0, paymentAccountReducer_1.updatePaymentAccounts)(response.data.payment_accounts),
23
- (0, plaidAccountViewReducer_1.updatePaymentAccountStatusSuccess)(paymentAccountIds, linkTokenType, plaidAccountKeyType),
22
+ (0, plaidAccountViewReducer_1.updatePaymentAccountStatusSuccess)(linkTokenType, plaidAccountKeyType),
24
23
  ];
25
24
  return (0, rxjs_1.from)(actions);
26
25
  }
@@ -8,32 +8,54 @@ const plaidAccountViewReducer_1 = require("../../plaidAccountViewReducer");
8
8
  const companyReducer_1 = require("../../../../../entity/company/companyReducer");
9
9
  const helpers_1 = require("../../../helpers");
10
10
  const billPayConfigState_1 = require("../../../billPay/billPayConfig/billPayConfigState");
11
- const billPayConfigPayload_1 = require("../../../billPay/billPayConfig/billPayConfigPayload");
12
11
  const updatePrimaryFundingAccountEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(plaidAccountViewReducer_1.updatePrimaryFundingAccount.match), (0, operators_1.mergeMap)((action) => {
13
- const { companyId, accountId, accountType } = action.payload;
12
+ const { companyId, plaidAccountKeyType, accountId, accountType } = action.payload;
14
13
  return zeniAPI
15
- .putAndGetJSON(`${zeniAPI.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${companyId}`, {
16
- reimbursement_primary_funding_account_id: accountId,
17
- reimbursement_primary_funding_account_type: (0, helpers_1.accountTypeSubConfigCodeToAccType)(accountType),
18
- })
14
+ .putAndGetJSON(`${zeniAPI.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${companyId}`, toPayload(plaidAccountKeyType, accountId, accountType))
19
15
  .pipe((0, operators_1.mergeMap)((response) => {
20
- var _a, _b, _c;
16
+ var _a;
21
17
  if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
22
18
  const actions = [
23
19
  (0, companyReducer_1.updateCompanies)({
24
20
  payload: (_a = response.data.companies) !== null && _a !== void 0 ? _a : [],
25
21
  schema: {},
26
22
  }),
27
- (0, plaidAccountViewReducer_1.updatePrimaryFundingAccountSuccess)((_b = response.data.companies[0].reimbursement_info
28
- .primary_funding_account.account_id) !== null && _b !== void 0 ? _b : '', (0, billPayConfigPayload_1.getAccountTypeSubConfigCodeKey)((0, billPayConfigState_1.toAccType)((_c = response.data.companies[0].reimbursement_info
29
- .primary_funding_account.account_type) !== null && _c !== void 0 ? _c : ''))),
23
+ (0, plaidAccountViewReducer_1.updatePrimaryFundingAccountSuccess)(plaidAccountKeyType),
30
24
  ];
31
25
  return (0, rxjs_1.from)(actions);
32
26
  }
33
27
  else {
34
- return (0, rxjs_1.of)((0, plaidAccountViewReducer_1.updatePrimaryFundingAccountFailure)(response.status));
28
+ return (0, rxjs_1.of)((0, plaidAccountViewReducer_1.updatePrimaryFundingAccountFailure)(plaidAccountKeyType, response.status));
35
29
  }
36
- }), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, plaidAccountViewReducer_1.updatePrimaryFundingAccountFailure)((0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Update Primary Funding Account errored out' +
30
+ }), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, plaidAccountViewReducer_1.updatePrimaryFundingAccountFailure)(plaidAccountKeyType, (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Update Primary Funding Account errored out' +
37
31
  JSON.stringify(error))))));
38
32
  }));
39
33
  exports.updatePrimaryFundingAccountEpic = updatePrimaryFundingAccountEpic;
34
+ function toPayload(plaidAccountKeyType, accountId, accountType) {
35
+ switch (plaidAccountKeyType) {
36
+ case 'bill_pay_setup': {
37
+ return {
38
+ bill_pay_primary_funding_account_id: accountId,
39
+ bill_pay_primary_funding_account_type: (0, helpers_1.accountTypeSubConfigCodeToAccType)((0, billPayConfigState_1.toAccountTypeSubConfigCodeKeyType)(accountType)),
40
+ };
41
+ }
42
+ case 'reimbursement_setup': {
43
+ return {
44
+ reimbursement_primary_funding_account_id: accountId,
45
+ reimbursement_primary_funding_account_type: (0, helpers_1.accountTypeSubConfigCodeToAccType)((0, billPayConfigState_1.toAccountTypeSubConfigCodeKeyType)(accountType)),
46
+ };
47
+ }
48
+ case 'charge_card_setup': {
49
+ return {
50
+ charge_cards_primary_funding_account_id: accountId,
51
+ charge_cards_primary_funding_account_type: (0, helpers_1.accountTypeSubConfigCodeToAccType)((0, billPayConfigState_1.toAccountTypeSubConfigCodeKeyType)(accountType)),
52
+ };
53
+ }
54
+ default: {
55
+ return {
56
+ deposit_accounts_primary_funding_account_id: accountId,
57
+ deposit_accounts_primary_funding_account_type: (0, helpers_1.accountTypeSubConfigCodeToAccType)((0, billPayConfigState_1.toAccountTypeSubConfigCodeKeyType)(accountType)),
58
+ };
59
+ }
60
+ }
61
+ }
@@ -9,5 +9,6 @@ import { establishPlaidConnection, establishPlaidConnectionSuccess, establishPla
9
9
  import { updateBankAccounts } from '../../../../../entity/bankAccount/bankAccountReducer';
10
10
  import { updateUserBankAccount } from '../../../../userFinancialAccount/userFinancialAccountReducer';
11
11
  import { updatePaymentAccountList } from '../../../zeniAccounts/paymentAccountList/paymentAccountListReducer';
12
- export declare type ActionType = ReturnType<typeof establishPlaidConnection> | ReturnType<typeof updateAccounts> | ReturnType<typeof updateBankAccounts> | ReturnType<typeof updateUserBankAccount> | ReturnType<typeof updatePaymentAccounts> | ReturnType<typeof openSnackbar> | ReturnType<typeof updatePaymentAccountList> | ReturnType<typeof establishPlaidConnectionSuccess> | ReturnType<typeof establishPlaidConnectionFailure>;
12
+ import { updateCompanyPrimaryAccount } from '../../../../../entity/company/companyReducer';
13
+ export declare type ActionType = ReturnType<typeof establishPlaidConnection> | ReturnType<typeof updateAccounts> | ReturnType<typeof updateBankAccounts> | ReturnType<typeof updateUserBankAccount> | ReturnType<typeof updatePaymentAccounts> | ReturnType<typeof openSnackbar> | ReturnType<typeof updatePaymentAccountList> | ReturnType<typeof establishPlaidConnectionSuccess> | ReturnType<typeof establishPlaidConnectionFailure> | ReturnType<typeof updateCompanyPrimaryAccount>;
13
14
  export declare const establishPlaidConnectionEpic: (actions$: ActionsObservable<ActionType>, state: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
@@ -11,9 +11,10 @@ const plaidAccountViewReducer_1 = require("../../plaidAccountViewReducer");
11
11
  const bankAccountReducer_1 = require("../../../../../entity/bankAccount/bankAccountReducer");
12
12
  const userFinancialAccountReducer_1 = require("../../../../userFinancialAccount/userFinancialAccountReducer");
13
13
  const paymentAccountListReducer_1 = require("../../../zeniAccounts/paymentAccountList/paymentAccountListReducer");
14
+ const companyReducer_1 = require("../../../../../entity/company/companyReducer");
14
15
  const establishPlaidConnectionEpic = (actions$, state, zeniAPI) => actions$.pipe((0, operators_1.filter)(plaidAccountViewReducer_1.establishPlaidConnection.match), (0, operators_1.mergeMap)((action) => {
15
16
  var _a, _b;
16
- const { publicToken, setupViewType, linkTokenType, plaidAccountKeyType } = action.payload;
17
+ const { publicToken, companyId, setupViewType, linkTokenType, plaidAccountKeyType, } = action.payload;
17
18
  const requestPayload = {
18
19
  public_token: publicToken,
19
20
  };
@@ -23,39 +24,74 @@ const establishPlaidConnectionEpic = (actions$, state, zeniAPI) => actions$.pipe
23
24
  if (setupViewType == null) {
24
25
  requestPayload.is_user_account = true;
25
26
  }
27
+ else if (plaidAccountKeyType === 'bill_pay_setup') {
28
+ requestPayload.is_primary_for_bill_pay = true;
29
+ }
26
30
  else if (plaidAccountKeyType === 'reimbursement_setup') {
27
31
  requestPayload.is_primary_for_reimbursements = true;
28
32
  }
33
+ else if (plaidAccountKeyType === 'charge_card_setup') {
34
+ requestPayload.is_primary_for_charge_cards = true;
35
+ }
36
+ else if (plaidAccountKeyType === 'account_setup') {
37
+ requestPayload.is_primary_for_deposit_accounts = true;
38
+ }
29
39
  else if (plaidAccountKeyType === 'billing_setup') {
30
40
  requestPayload.is_primary_for_onboarding = true;
31
41
  }
32
- else {
33
- requestPayload.is_primary_for_bill_pay = true;
34
- }
35
42
  }
36
43
  return zeniAPI
37
44
  .postAndGetJSON(`${zeniAPI.apiEndPoints.payMicroServiceBaseUrl}/1.0/plaid/public-token`, requestPayload)
38
45
  .pipe((0, operators_1.mergeMap)((response) => {
39
46
  if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
40
- const paymentAccountIds = response.data.payment_accounts.map((paymentAccount) => paymentAccount.payment_account_id);
41
- // the payment account received in the response is the new primary funding account
42
- const primaryFundingAccountId = paymentAccountIds[0];
43
- const existingPaymentAccountIds = state.value.plaidAccountViewState['reimbursement_setup']
44
- .accountDetails.paymentAccountIds;
47
+ const paymentAccount = response.data.payment_accounts[0];
45
48
  const actions = [
46
49
  (0, paymentAccountReducer_1.updatePaymentAccounts)(response.data.payment_accounts),
47
50
  (0, paymentAccountListReducer_1.updatePaymentAccountList)({
48
51
  data: response.data.payment_accounts,
49
52
  updateType: 'merge',
50
53
  }),
51
- (0, plaidAccountViewReducer_1.establishPlaidConnectionSuccess)(primaryFundingAccountId, [...paymentAccountIds, ...existingPaymentAccountIds], linkTokenType, plaidAccountKeyType),
54
+ (0, plaidAccountViewReducer_1.establishPlaidConnectionSuccess)(linkTokenType, plaidAccountKeyType),
52
55
  ];
53
- // if plaidAccountKeyType is not reimbursement_setup but the account added is primary for reimbursement
54
- // it should be reflected on remi setup page without refresh also
55
- if (plaidAccountKeyType !== 'reimbursement_setup' &&
56
- response.data.payment_accounts[0]
57
- .is_primary_for_reimbursements === true) {
58
- actions.push((0, plaidAccountViewReducer_1.establishPlaidConnectionSuccess)(primaryFundingAccountId, [...paymentAccountIds, ...existingPaymentAccountIds], linkTokenType, 'reimbursement_setup'));
56
+ if (setupViewType != null) {
57
+ const primaryAccountForProducts = [];
58
+ // if the account added is primary for any product, it should be reflected on that setup page without refresh also
59
+ // this happens when the first external account is added - it becomes primary for rest of the products also
60
+ if (paymentAccount.is_primary_for_bill_pay === true) {
61
+ primaryAccountForProducts.push('bill_pay');
62
+ }
63
+ if (paymentAccount.is_primary_for_bill_pay === true) {
64
+ actions.push((0, companyReducer_1.updateCompanyPrimaryAccount)({
65
+ companyId: companyId,
66
+ primaryFundingAccountId: paymentAccount.payment_account_id,
67
+ accountType: 'paymentAccount',
68
+ productType: 'bill_pay',
69
+ }));
70
+ }
71
+ if (paymentAccount.is_primary_for_reimbursements === true) {
72
+ actions.push((0, companyReducer_1.updateCompanyPrimaryAccount)({
73
+ companyId: companyId,
74
+ primaryFundingAccountId: paymentAccount.payment_account_id,
75
+ accountType: 'paymentAccount',
76
+ productType: 'reimbursement',
77
+ }));
78
+ }
79
+ if (paymentAccount.is_primary_for_charge_cards === true) {
80
+ actions.push((0, companyReducer_1.updateCompanyPrimaryAccount)({
81
+ companyId: companyId,
82
+ primaryFundingAccountId: paymentAccount.payment_account_id,
83
+ accountType: 'paymentAccount',
84
+ productType: 'charge_cards',
85
+ }));
86
+ }
87
+ if (paymentAccount.is_primary_for_deposit_accounts === true) {
88
+ actions.push((0, companyReducer_1.updateCompanyPrimaryAccount)({
89
+ companyId: companyId,
90
+ primaryFundingAccountId: paymentAccount.payment_account_id,
91
+ accountType: 'paymentAccount',
92
+ productType: 'zeni_accounts',
93
+ }));
94
+ }
59
95
  }
60
96
  if (response.data.bank_accounts != null) {
61
97
  const bankAccountIds = response.data.bank_accounts.map((bank_account) => bank_account.bank_account_id);
@@ -6,7 +6,7 @@ const operators_1 = require("rxjs/operators");
6
6
  const responsePayload_1 = require("../../../../../responsePayload");
7
7
  const snackbarReducer_1 = require("../../../../../entity/snackbar/snackbarReducer");
8
8
  const plaidAccountViewReducer_1 = require("../../plaidAccountViewReducer");
9
- const getPlaidLinkTokenEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(plaidAccountViewReducer_1.getPlaidLinkToken.match), (0, operators_1.switchMap)((action) => {
9
+ const getPlaidLinkTokenEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(plaidAccountViewReducer_1.getPlaidLinkToken.match), (0, operators_1.mergeMap)((action) => {
10
10
  const { linkTokenType, paymentAccountId, plaidAccountKeyType } = action.payload;
11
11
  return zeniAPI
12
12
  .getJSON(`${zeniAPI.apiEndPoints.payMicroServiceBaseUrl}/1.0/plaid/link-token?query=${JSON.stringify((0, exports.toLinkTokenPayload)(linkTokenType, paymentAccountId))}`)
@@ -1,4 +1,3 @@
1
- import { ID } from '../../../commonStateTypes/common';
2
1
  import { ZeniAPIStatus } from '../../../responsePayload';
3
2
  import { PlaidAccountKeyType, PlaidAccountViewState, PlaidLinkTokenType } from './plaidAccountViewState';
4
3
  export declare const initialState: PlaidAccountViewState;
@@ -6,8 +5,7 @@ export declare const getPaymentAccounts: import("@reduxjs/toolkit").ActionCreato
6
5
  setupViewType: "bill_pay" | "reimbursement" | "zeni_accounts" | "charge_cards" | "billing";
7
6
  includeBalances: boolean;
8
7
  plaidAccountKeyType: PlaidAccountKeyType;
9
- }, string, never, never>, getPaymentAccountsSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[paymentAccountIds: string[], plaidAccountKeyType: PlaidAccountKeyType], {
10
- paymentAccountIds: string[];
8
+ }, string, never, never>, getPaymentAccountsSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[plaidAccountKeyType: PlaidAccountKeyType], {
11
9
  plaidAccountKeyType: PlaidAccountKeyType;
12
10
  }, string, never, never>, getPaymentAccountsFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[error: ZeniAPIStatus<Record<string, unknown>>, plaidAccountKeyType: PlaidAccountKeyType], {
13
11
  error: ZeniAPIStatus<Record<string, unknown>>;
@@ -17,8 +15,7 @@ export declare const getPaymentAccounts: import("@reduxjs/toolkit").ActionCreato
17
15
  paymentAccountId: string;
18
16
  setupViewType: "bill_pay" | "reimbursement" | "zeni_accounts" | "charge_cards" | "billing";
19
17
  plaidAccountKeyType: PlaidAccountKeyType;
20
- }, string, never, never>, updatePaymentAccountSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[paymentAccountIds: string[], plaidAccountKeyType: PlaidAccountKeyType], {
21
- paymentAccountIds: string[];
18
+ }, string, never, never>, updatePaymentAccountSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[plaidAccountKeyType: PlaidAccountKeyType], {
22
19
  plaidAccountKeyType: PlaidAccountKeyType;
23
20
  }, string, never, never>, updatePaymentAccountFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[error: ZeniAPIStatus<Record<string, unknown>>, plaidAccountKeyType: PlaidAccountKeyType], {
24
21
  error: ZeniAPIStatus<Record<string, unknown>>;
@@ -29,8 +26,7 @@ export declare const getPaymentAccounts: import("@reduxjs/toolkit").ActionCreato
29
26
  setupViewType: "bill_pay" | "reimbursement" | "zeni_accounts" | "charge_cards" | "billing";
30
27
  plaidAccountKeyType: PlaidAccountKeyType;
31
28
  linkTokenType: PlaidLinkTokenType;
32
- }, string, never, never>, updatePaymentAccountStatusSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[paymentAccountIds: string[], linkTokenType: PlaidLinkTokenType, plaidAccountKeyType: PlaidAccountKeyType], {
33
- paymentAccountIds: string[];
29
+ }, string, never, never>, updatePaymentAccountStatusSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[linkTokenType: PlaidLinkTokenType, plaidAccountKeyType: PlaidAccountKeyType], {
34
30
  linkTokenType: PlaidLinkTokenType;
35
31
  plaidAccountKeyType: PlaidAccountKeyType;
36
32
  }, string, never, never>, updatePaymentAccountStatusFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[error: ZeniAPIStatus<Record<string, unknown>>, linkTokenType: PlaidLinkTokenType, plaidAccountKeyType: PlaidAccountKeyType], {
@@ -64,44 +60,41 @@ export declare const getPaymentAccounts: import("@reduxjs/toolkit").ActionCreato
64
60
  error: ZeniAPIStatus<Record<string, unknown>>;
65
61
  linkTokenType: PlaidLinkTokenType;
66
62
  plaidAccountKeyType: PlaidAccountKeyType;
67
- }, string, never, never>, establishPlaidConnection: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[publicToken: string, plaidAccountKeyType: PlaidAccountKeyType, setupViewType?: "bill_pay" | "reimbursement" | "zeni_accounts" | "charge_cards" | "billing" | undefined, linkTokenType?: PlaidLinkTokenType | undefined], {
63
+ }, string, never, never>, establishPlaidConnection: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[publicToken: string, companyId: string, plaidAccountKeyType: PlaidAccountKeyType, setupViewType?: "bill_pay" | "reimbursement" | "zeni_accounts" | "charge_cards" | "billing" | undefined, linkTokenType?: PlaidLinkTokenType | undefined], {
68
64
  publicToken: string;
65
+ companyId: string;
69
66
  setupViewType: "bill_pay" | "reimbursement" | "zeni_accounts" | "charge_cards" | "billing" | undefined;
70
67
  linkTokenType: PlaidLinkTokenType;
71
68
  plaidAccountKeyType: PlaidAccountKeyType;
72
- }, string, never, never>, establishPlaidConnectionSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[primaryFundingAccountId: string, paymentAccountIds: string[], linkTokenType: PlaidLinkTokenType, plaidAccountKeyType: PlaidAccountKeyType], {
73
- primaryFundingAccountId: string;
74
- paymentAccountIds: string[];
69
+ }, string, never, never>, establishPlaidConnectionSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[linkTokenType: PlaidLinkTokenType, plaidAccountKeyType: PlaidAccountKeyType], {
75
70
  linkTokenType: PlaidLinkTokenType;
76
71
  plaidAccountKeyType: PlaidAccountKeyType;
77
72
  }, string, never, never>, establishPlaidConnectionFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[error: ZeniAPIStatus<Record<string, unknown>>, linkTokenType: PlaidLinkTokenType, plaidAccountKeyType: PlaidAccountKeyType], {
78
73
  error: ZeniAPIStatus<Record<string, unknown>>;
79
74
  linkTokenType: PlaidLinkTokenType;
80
75
  plaidAccountKeyType: PlaidAccountKeyType;
81
- }, string, never, never>, updatePlaidAccountViewAccountDetails: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[allBankAccountIds: string[], paymentAccountIds: string[], plaidAccountKeyType: PlaidAccountKeyType, depositAccountIds?: string[] | undefined, primaryFundingAccount?: {
82
- accountId: ID;
83
- accountType: string;
84
- } | undefined], {
76
+ }, string, never, never>, updatePlaidAccountViewAccountDetails: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[allBankAccountIds: string[], plaidAccountKeyType: PlaidAccountKeyType], {
85
77
  allBankAccountIds: string[];
86
- paymentAccountIds: string[];
87
78
  plaidAccountKeyType: PlaidAccountKeyType;
88
- depositAccountIds: string[] | undefined;
89
- primaryFundingAccount: {
90
- accountId: ID;
91
- accountType: string;
92
- } | undefined;
93
- }, string, never, never>, updatePrimaryFundingAccount: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[companyId: string, accountId: string, accountType: string], {
79
+ }, string, never, never>, updatePrimaryFundingAccount: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[companyId: string, plaidAccountKeyType: PlaidAccountKeyType, accountId: string, accountType: string], {
94
80
  companyId: string;
81
+ plaidAccountKeyType: PlaidAccountKeyType;
95
82
  accountId: string;
96
83
  accountType: string;
97
- }, string, never, never>, updatePrimaryFundingAccountSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[accountId: string, accountType: string], {
98
- accountId: string;
99
- accountType: string;
100
- }, string, never, never>, updatePrimaryFundingAccountFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[error: ZeniAPIStatus<Record<string, unknown>>], ZeniAPIStatus<Record<string, unknown>>, string, never, never>, updateMappedCashAccount: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[accountId: string, depositAccountId: string], {
84
+ }, string, never, never>, updatePrimaryFundingAccountSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[plaidAccountKeyType: PlaidAccountKeyType], {
85
+ plaidAccountKeyType: PlaidAccountKeyType;
86
+ }, string, never, never>, updatePrimaryFundingAccountFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[plaidAccountKeyType: PlaidAccountKeyType, error: ZeniAPIStatus<Record<string, unknown>>], {
87
+ error: ZeniAPIStatus<Record<string, unknown>>;
88
+ plaidAccountKeyType: PlaidAccountKeyType;
89
+ }, string, never, never>, updateMappedCashAccount: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[plaidAccountKeyType: PlaidAccountKeyType, accountId: string, depositAccountId: string], {
90
+ plaidAccountKeyType: PlaidAccountKeyType;
101
91
  accountId: string;
102
92
  depositAccountId: string;
103
- }, string, never, never>, updateMappedCashAccountSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[depositAccountIds: string[]], {
104
- depositAccountIds: string[];
105
- }, string, never, never>, updateMappedCashAccountFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[error: ZeniAPIStatus<Record<string, unknown>>], ZeniAPIStatus<Record<string, unknown>>, string, never, never>, clearPlaidAccountView: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>;
93
+ }, string, never, never>, updateMappedCashAccountSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[plaidAccountKeyType: PlaidAccountKeyType], {
94
+ plaidAccountKeyType: PlaidAccountKeyType;
95
+ }, string, never, never>, updateMappedCashAccountFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[plaidAccountKeyType: PlaidAccountKeyType, error: ZeniAPIStatus<Record<string, unknown>>], {
96
+ plaidAccountKeyType: PlaidAccountKeyType;
97
+ error: ZeniAPIStatus<Record<string, unknown>>;
98
+ }, string, never, never>, clearPlaidAccountView: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>;
106
99
  declare const _default: import("@reduxjs/toolkit").Reducer<PlaidAccountViewState, import("@reduxjs/toolkit").AnyAction>;
107
100
  export default _default;