@zeniai/client-epic-state 4.18.90 → 4.18.92

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 (121) hide show
  1. package/lib/commonStateTypes/animations.d.ts +1 -1
  2. package/lib/commonStateTypes/animations.js +4 -0
  3. package/lib/commonStateTypes/classesView/getNestedClassIDHierarchyForReport.js +2 -0
  4. package/lib/commonStateTypes/classesView/nestedClassID.d.ts +1 -0
  5. package/lib/commonStateTypes/viewAndReport/viewAndReport.d.ts +2 -2
  6. package/lib/commonStateTypes/viewAndReport/viewAndReport.js +1 -0
  7. package/lib/entity/account/accountState.d.ts +1 -1
  8. package/lib/entity/accountGroup/accountGroupState.d.ts +1 -1
  9. package/lib/entity/chargeCard/chargeCard.d.ts +2 -1
  10. package/lib/entity/chargeCard/chargeCard.js +2 -0
  11. package/lib/entity/chargeCard/chargeCardPayload.d.ts +2 -1
  12. package/lib/entity/chargeCard/chargeCardPayload.js +10 -9
  13. package/lib/entity/chargeCardTransaction/chargeCardTransaction.d.ts +1 -1
  14. package/lib/entity/chargeCardTransaction/chargeCardTransactionPayload.d.ts +1 -2
  15. package/lib/entity/class/classPayload.d.ts +1 -0
  16. package/lib/entity/class/classPayload.js +9 -9
  17. package/lib/entity/class/classReducer.d.ts +4 -4
  18. package/lib/entity/class/classState.d.ts +2 -1
  19. package/lib/entity/forecast/forecastState.d.ts +1 -1
  20. package/lib/entity/monthEndCloseChecks/monthEndCloseChecksPayload.d.ts +8 -0
  21. package/lib/entity/monthEndCloseChecks/monthEndCloseChecksPayload.js +14 -0
  22. package/lib/entity/monthEndCloseChecks/monthEndCloseChecksState.d.ts +8 -0
  23. package/lib/entity/sectionAccountsView/sectionAccountsView.d.ts +1 -1
  24. package/lib/entity/sectionClassesViewV2/sectionClassesView.d.ts +1 -1
  25. package/lib/entity/sectionClassesViewV2/sectionClassesViewReducer.d.ts +2 -2
  26. package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
  27. package/lib/entity/snackbar/snackbarTypes.js +34 -8
  28. package/lib/entity/tenant/tenantPayload.d.ts +1 -0
  29. package/lib/entity/tenant/tenantReducer.d.ts +1 -1
  30. package/lib/entity/tenant/tenantReducer.js +8 -2
  31. package/lib/entity/tenant/tenantState.d.ts +1 -0
  32. package/lib/epic.d.ts +13 -1
  33. package/lib/epic.js +13 -1
  34. package/lib/index.d.ts +14 -12
  35. package/lib/index.js +53 -30
  36. package/lib/init.d.ts +2 -1
  37. package/lib/init.js +3 -2
  38. package/lib/responsePayload.d.ts +3 -0
  39. package/lib/view/auditReportView/auditReportViewState.d.ts +1 -1
  40. package/lib/view/billPayCard/billPayCardSelector.d.ts +1 -1
  41. package/lib/view/cardBalance/cardBalanceSelector.d.ts +1 -1
  42. package/lib/view/cashBalance/cashBalanceSelector.d.ts +1 -1
  43. package/lib/view/cashInCashOut/cashInCashOutSelector.d.ts +1 -1
  44. package/lib/view/cashPosition/cashPositionSelector.d.ts +1 -1
  45. package/lib/view/classList/classListReducer.d.ts +3 -1
  46. package/lib/view/classList/classListReducer.js +8 -3
  47. package/lib/view/classList/fetchClassListEpic.js +6 -2
  48. package/lib/view/companyMonthEndReportView/companyMonthEndReportViewReducer.d.ts +2 -1
  49. package/lib/view/companyMonthEndReportView/companyMonthEndReportViewReducer.js +10 -2
  50. package/lib/view/companyMonthEndReportView/epics/fetchCompanyMonthEndReportViewEpic.js +2 -4
  51. package/lib/view/dashboard/dashboardReducer.d.ts +2 -2
  52. package/lib/view/dashboard/dashboardSelector.d.ts +2 -1
  53. package/lib/view/dashboard/dashboardSelector.js +14 -6
  54. package/lib/view/dashboardLayout/dashboardLayoutReducer.js +1 -0
  55. package/lib/view/dashboardLayout/fetchDashboardLayoutEpic.js +14 -1
  56. package/lib/view/expenseAutomationView/epics/common/refreshExpenseAutomationCurrentTabEpic.js +1 -1
  57. package/lib/view/expenseAutomationView/epics/transactionCategorization/markTransactionAsNotMiscategorizedEpic.js +3 -1
  58. package/lib/view/expenseAutomationView/helpers/helpers.d.ts +3 -3
  59. package/lib/view/expenseAutomationView/helpers/helpers.js +4 -4
  60. package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +2 -2
  61. package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.js +46 -64
  62. package/lib/view/financeStatement/financeStatementReducer.d.ts +1 -1
  63. package/lib/view/globalMerchantView/globalMerchantViewReducer.d.ts +2 -2
  64. package/lib/view/monthEndCloseChecksView/epics/fetchMonthClosePerformanceTrendEpic.d.ts +7 -0
  65. package/lib/view/monthEndCloseChecksView/epics/fetchMonthClosePerformanceTrendEpic.js +47 -0
  66. package/lib/view/monthEndCloseChecksView/epics/fetchMonthEndCloseChecksEpic.js +1 -1
  67. package/lib/view/monthEndCloseChecksView/monthEndCloseChecksViewPayload.d.ts +8 -0
  68. package/lib/view/monthEndCloseChecksView/monthEndCloseChecksViewReducer.d.ts +11 -1
  69. package/lib/view/monthEndCloseChecksView/monthEndCloseChecksViewReducer.js +47 -3
  70. package/lib/view/monthEndCloseChecksView/monthEndCloseChecksViewSelector.d.ts +3 -0
  71. package/lib/view/monthEndCloseChecksView/monthEndCloseChecksViewSelector.js +18 -13
  72. package/lib/view/monthEndCloseChecksView/monthEndCloseChecksViewState.d.ts +7 -1
  73. package/lib/view/reimbursementCard/reimbursementCardSelector.d.ts +1 -1
  74. package/lib/view/reportsResync/reportsResyncReducer.d.ts +2 -2
  75. package/lib/view/spendManagement/billPay/editBillView/epics/fetchEditBillDetailPageEpic.js +3 -4
  76. package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetail.d.ts +17 -2
  77. package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetail.js +38 -3
  78. package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailPayload.d.ts +11 -1
  79. package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailReducer.d.ts +40 -4
  80. package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailReducer.js +189 -26
  81. package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailSelector.d.ts +19 -1
  82. package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailSelector.js +87 -12
  83. package/lib/view/spendManagement/chargeCards/chargeCardDetail/closeChargeCardEpic.d.ts +9 -0
  84. package/lib/view/spendManagement/chargeCards/chargeCardDetail/closeChargeCardEpic.js +71 -0
  85. package/lib/view/spendManagement/chargeCards/chargeCardDetail/fetchChargeCardsRecurringExpensesEpic.d.ts +7 -0
  86. package/lib/view/spendManagement/chargeCards/chargeCardDetail/fetchChargeCardsRecurringExpensesEpic.js +44 -0
  87. package/lib/view/spendManagement/chargeCards/chargeCardDetail/fetchDepositAccountLimitEpic.js +4 -4
  88. package/lib/view/spendManagement/chargeCards/chargeCardDetail/lockChargeCardEpic.d.ts +9 -0
  89. package/lib/view/spendManagement/chargeCards/chargeCardDetail/lockChargeCardEpic.js +78 -0
  90. package/lib/view/spendManagement/chargeCards/chargeCardDetail/unlockChargeCardEpic.d.ts +9 -0
  91. package/lib/view/spendManagement/chargeCards/chargeCardDetail/unlockChargeCardEpic.js +75 -0
  92. package/lib/view/spendManagement/chargeCards/chargeCardDetail/updateChargeCardNameEpic.d.ts +9 -0
  93. package/lib/view/spendManagement/chargeCards/chargeCardDetail/updateChargeCardNameEpic.js +83 -0
  94. package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardList.d.ts +7 -0
  95. package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListPayload.d.ts +1 -0
  96. package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListReducer.d.ts +34 -4
  97. package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListReducer.js +142 -3
  98. package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListSelector.d.ts +46 -0
  99. package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListSelector.js +198 -4
  100. package/lib/view/spendManagement/chargeCards/chargeCardList/closeChargeCardsEpic.d.ts +9 -0
  101. package/lib/view/spendManagement/chargeCards/chargeCardList/closeChargeCardsEpic.js +69 -0
  102. package/lib/view/spendManagement/chargeCards/chargeCardList/fetchChargeCardListPageEpic.d.ts +3 -1
  103. package/lib/view/spendManagement/chargeCards/chargeCardList/fetchChargeCardListPageEpic.js +18 -0
  104. package/lib/view/spendManagement/chargeCards/chargeCardList/lockChargeCardsEpic.d.ts +9 -0
  105. package/lib/view/spendManagement/chargeCards/chargeCardList/lockChargeCardsEpic.js +69 -0
  106. package/lib/view/spendManagement/chargeCards/chargeCardList/revokeChargeCardsInviteEpic.d.ts +8 -0
  107. package/lib/view/spendManagement/chargeCards/chargeCardList/revokeChargeCardsInviteEpic.js +71 -0
  108. package/lib/view/spendManagement/chargeCards/chargeCardList/unlockChargeCardsEpic.d.ts +9 -0
  109. package/lib/view/spendManagement/chargeCards/chargeCardList/unlockChargeCardsEpic.js +68 -0
  110. package/lib/view/spendManagement/chargeCards/chargeCardList/updateChargeCardsLimitEpic.d.ts +9 -0
  111. package/lib/view/spendManagement/chargeCards/chargeCardList/updateChargeCardsLimitEpic.js +76 -0
  112. package/lib/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryVideoViewedEpic.d.ts +8 -0
  113. package/lib/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryVideoViewedEpic.js +22 -0
  114. package/lib/view/spendManagement/treasury/treasurySetUp/treasurySetupViewReducer.d.ts +1 -1
  115. package/lib/view/spendManagement/treasury/treasurySetUp/treasurySetupViewReducer.js +24 -2
  116. package/lib/view/spendManagement/treasury/treasurySetUp/treasurySetupViewState.d.ts +1 -0
  117. package/lib/view/tasksCard/tasksCardSelector.d.ts +1 -1
  118. package/lib/view/topEx/topExSelector.d.ts +1 -1
  119. package/lib/zeniAPI.d.ts +12 -1
  120. package/lib/zeniAPI.js +33 -6
  121. package/package.json +1 -1
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fetchChargeCardsRecurringExpensesEpic = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ const operators_1 = require("rxjs/operators");
6
+ const responsePayload_1 = require("../../../../responsePayload");
7
+ const chargeCardDetail_1 = require("./chargeCardDetail");
8
+ const chargeCardDetailReducer_1 = require("./chargeCardDetailReducer");
9
+ const fetchChargeCardsRecurringExpensesEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(chargeCardDetailReducer_1.fetchChargeCardsRecurringExpenses.match), (0, operators_1.switchMap)((action) => {
10
+ const { cardIds } = action.payload;
11
+ const query = {
12
+ card_ids: cardIds,
13
+ };
14
+ return zeniAPI
15
+ .getJSON(`${zeniAPI.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/recurring-expenses?query=${encodeURIComponent(JSON.stringify(query))}`)
16
+ .pipe((0, operators_1.mergeMap)((response) => {
17
+ if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
18
+ const recurringExpensesByChargeCardId = {};
19
+ response.data.forEach((cardRecurringExpense) => {
20
+ recurringExpensesByChargeCardId[cardRecurringExpense.card_id] =
21
+ cardRecurringExpense.expenses.map((expense) => (0, chargeCardDetail_1.mapRecurringExpensePayloadToRecurringExpense)(expense));
22
+ });
23
+ return (0, rxjs_1.of)((0, chargeCardDetailReducer_1.updateChargeCardsRecurringExpenses)({
24
+ recurringExpensesByChargeCardId,
25
+ }), (0, chargeCardDetailReducer_1.updateChargeCardsRecurringExpensesFetchState)({
26
+ fetchState: 'Completed',
27
+ error: undefined,
28
+ }));
29
+ }
30
+ else {
31
+ return (0, rxjs_1.of)((0, chargeCardDetailReducer_1.updateChargeCardsRecurringExpensesFetchState)({
32
+ fetchState: 'Error',
33
+ error: response.status,
34
+ }));
35
+ }
36
+ }), (0, operators_1.catchError)((error) => {
37
+ return (0, rxjs_1.of)((0, chargeCardDetailReducer_1.updateChargeCardsRecurringExpensesFetchState)({
38
+ fetchState: 'Error',
39
+ error: (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Fetch Charge Cards Recurring Expenses REST API call errored out' +
40
+ JSON.stringify(error)),
41
+ }));
42
+ }));
43
+ }));
44
+ exports.fetchChargeCardsRecurringExpensesEpic = fetchChargeCardsRecurringExpensesEpic;
@@ -7,7 +7,7 @@ const depositAccountReducer_1 = require("../../../../entity/depositAccount/depos
7
7
  const responsePayload_1 = require("../../../../responsePayload");
8
8
  const chargeCardDetailReducer_1 = require("./chargeCardDetailReducer");
9
9
  const fetchDepositAccountLimitEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(chargeCardDetailReducer_1.fetchDepositAccountLimit.match), (0, operators_1.switchMap)((action) => {
10
- const { depositAccountId, chargeCardId } = action.payload;
10
+ const { depositAccountId } = action.payload;
11
11
  const query = {
12
12
  deposit_account_id: depositAccountId,
13
13
  };
@@ -17,21 +17,21 @@ const fetchDepositAccountLimitEpic = (actions$, _state$, zeniAPI) => actions$.pi
17
17
  var _a, _b;
18
18
  if ((0, responsePayload_1.isSuccessResponse)(response)) {
19
19
  return (0, rxjs_1.of)((0, depositAccountReducer_1.updateDepositAccountLimitsForChargeCard)((_b = (_a = response.data) === null || _a === void 0 ? void 0 : _a.deposit_accounts) !== null && _b !== void 0 ? _b : []), (0, chargeCardDetailReducer_1.updateDepositAccountLimitFetchStatus)({
20
- chargeCardId,
20
+ depositAccountId,
21
21
  fetchState: 'Completed',
22
22
  error: undefined,
23
23
  }));
24
24
  }
25
25
  else {
26
26
  return (0, rxjs_1.of)((0, chargeCardDetailReducer_1.updateDepositAccountLimitFetchStatus)({
27
- chargeCardId,
27
+ depositAccountId,
28
28
  fetchState: 'Error',
29
29
  error: response.status,
30
30
  }));
31
31
  }
32
32
  }), (0, operators_1.catchError)((error) => {
33
33
  return (0, rxjs_1.of)((0, chargeCardDetailReducer_1.updateDepositAccountLimitFetchStatus)({
34
- chargeCardId,
34
+ depositAccountId,
35
35
  fetchState: 'Error',
36
36
  error: (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Fetch deposit Accounts Limit For Card Detail REST API call errored out' +
37
37
  JSON.stringify(error)),
@@ -0,0 +1,9 @@
1
+ import { ActionsObservable, StateObservable } from 'redux-observable';
2
+ import { Observable } from 'rxjs';
3
+ import { updateChargeCard } from '../../../../entity/chargeCard/chargeCardReducer';
4
+ import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
5
+ import { RootState } from '../../../../reducer';
6
+ import { ZeniAPI } from '../../../../zeniAPI';
7
+ import { lockChargeCard, lockChargeCardSuccessOrFailure } from './chargeCardDetailReducer';
8
+ export type ActionType = ReturnType<typeof openSnackbar> | ReturnType<typeof lockChargeCard> | ReturnType<typeof lockChargeCardSuccessOrFailure> | ReturnType<typeof updateChargeCard>;
9
+ export declare const lockChargeCardEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.lockChargeCardEpic = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ const operators_1 = require("rxjs/operators");
6
+ const chargeCardReducer_1 = require("../../../../entity/chargeCard/chargeCardReducer");
7
+ const snackbarReducer_1 = require("../../../../entity/snackbar/snackbarReducer");
8
+ const responsePayload_1 = require("../../../../responsePayload");
9
+ const chargeCardDetailReducer_1 = require("./chargeCardDetailReducer");
10
+ const lockChargeCardEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(chargeCardDetailReducer_1.lockChargeCard.match), (0, operators_1.switchMap)((action) => {
11
+ var _a;
12
+ const { chargeCardId, reason, isChargeCardAdmin } = action.payload;
13
+ const payload = {
14
+ reason: reason,
15
+ };
16
+ const cardDetail = state$.value.chargeCardState.chargeCardByID[chargeCardId];
17
+ const accountLast4 = (_a = cardDetail === null || cardDetail === void 0 ? void 0 : cardDetail.accountLast4) !== null && _a !== void 0 ? _a : '';
18
+ return zeniAPI
19
+ .putAndGetJSON(`${zeniAPI.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${chargeCardId}/lock`, payload)
20
+ .pipe((0, operators_1.mergeMap)((response) => {
21
+ if ((0, responsePayload_1.isSuccessStatus)(response) && response.data != null) {
22
+ return (0, rxjs_1.of)((0, chargeCardReducer_1.updateChargeCard)(response.data), (0, chargeCardDetailReducer_1.lockChargeCardSuccessOrFailure)({
23
+ chargeCardId,
24
+ fetchState: 'Completed',
25
+ }), (0, snackbarReducer_1.openSnackbar)({
26
+ messageSection: isChargeCardAdmin
27
+ ? 'lock_charge_card'
28
+ : 'lock_charge_card_card_user',
29
+ messageText: 'success',
30
+ type: 'success',
31
+ variables: [
32
+ {
33
+ variableName: '_masked_card_number_',
34
+ variableValue: `•••• ${accountLast4}`,
35
+ },
36
+ ],
37
+ }));
38
+ }
39
+ else {
40
+ return (0, rxjs_1.of)((0, snackbarReducer_1.openSnackbar)({
41
+ messageSection: isChargeCardAdmin
42
+ ? 'lock_charge_card'
43
+ : 'lock_charge_card_card_user',
44
+ messageText: 'failed',
45
+ type: 'error',
46
+ variables: [
47
+ {
48
+ variableName: '_api-error_',
49
+ variableValue: response.status.message,
50
+ },
51
+ ],
52
+ }), (0, chargeCardDetailReducer_1.lockChargeCardSuccessOrFailure)({
53
+ chargeCardId,
54
+ fetchState: 'Error',
55
+ error: response.status,
56
+ }));
57
+ }
58
+ }), (0, operators_1.catchError)((error) => {
59
+ return (0, rxjs_1.of)((0, snackbarReducer_1.openSnackbar)({
60
+ messageSection: isChargeCardAdmin
61
+ ? 'lock_charge_card'
62
+ : 'lock_charge_card_card_user',
63
+ messageText: 'failed',
64
+ type: 'error',
65
+ variables: [
66
+ {
67
+ variableName: '_api-error_',
68
+ variableValue: JSON.stringify(error),
69
+ },
70
+ ],
71
+ }), (0, chargeCardDetailReducer_1.lockChargeCardSuccessOrFailure)({
72
+ chargeCardId,
73
+ fetchState: 'Error',
74
+ error: (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Lock card API call errored out' + JSON.stringify(error)),
75
+ }));
76
+ }));
77
+ }));
78
+ exports.lockChargeCardEpic = lockChargeCardEpic;
@@ -0,0 +1,9 @@
1
+ import { ActionsObservable, StateObservable } from 'redux-observable';
2
+ import { Observable } from 'rxjs';
3
+ import { updateChargeCard } from '../../../../entity/chargeCard/chargeCardReducer';
4
+ import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
5
+ import { RootState } from '../../../../reducer';
6
+ import { ZeniAPI } from '../../../../zeniAPI';
7
+ import { unlockChargeCard, unlockChargeCardSuccessOrFailure } from './chargeCardDetailReducer';
8
+ export type ActionType = ReturnType<typeof openSnackbar> | ReturnType<typeof unlockChargeCard> | ReturnType<typeof unlockChargeCardSuccessOrFailure> | ReturnType<typeof updateChargeCard>;
9
+ export declare const unlockChargeCardEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.unlockChargeCardEpic = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ const operators_1 = require("rxjs/operators");
6
+ const chargeCardReducer_1 = require("../../../../entity/chargeCard/chargeCardReducer");
7
+ const snackbarReducer_1 = require("../../../../entity/snackbar/snackbarReducer");
8
+ const responsePayload_1 = require("../../../../responsePayload");
9
+ const chargeCardDetailReducer_1 = require("./chargeCardDetailReducer");
10
+ const unlockChargeCardEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(chargeCardDetailReducer_1.unlockChargeCard.match), (0, operators_1.switchMap)((action) => {
11
+ var _a;
12
+ const { isChargeCardAdmin, chargeCardId } = action.payload;
13
+ const cardDetail = state$.value.chargeCardState.chargeCardByID[chargeCardId];
14
+ const accountLast4 = (_a = cardDetail === null || cardDetail === void 0 ? void 0 : cardDetail.accountLast4) !== null && _a !== void 0 ? _a : '';
15
+ return zeniAPI
16
+ .putAndGetJSON(`${zeniAPI.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${chargeCardId}/unlock`)
17
+ .pipe((0, operators_1.mergeMap)((response) => {
18
+ if ((0, responsePayload_1.isSuccessStatus)(response) && response.data != null) {
19
+ return (0, rxjs_1.of)((0, chargeCardReducer_1.updateChargeCard)(response.data), (0, chargeCardDetailReducer_1.unlockChargeCardSuccessOrFailure)({
20
+ chargeCardId,
21
+ fetchState: 'Completed',
22
+ }), (0, snackbarReducer_1.openSnackbar)({
23
+ messageSection: isChargeCardAdmin
24
+ ? 'unlock_charge_card'
25
+ : 'unlock_charge_card_card_user',
26
+ messageText: 'success',
27
+ type: 'success',
28
+ variables: [
29
+ {
30
+ variableName: '_masked_card_number_',
31
+ variableValue: `•••• ${accountLast4}`,
32
+ },
33
+ ],
34
+ }));
35
+ }
36
+ else {
37
+ return (0, rxjs_1.of)((0, snackbarReducer_1.openSnackbar)({
38
+ messageSection: isChargeCardAdmin
39
+ ? 'unlock_charge_card'
40
+ : 'unlock_charge_card_card_user',
41
+ messageText: 'failed',
42
+ type: 'error',
43
+ variables: [
44
+ {
45
+ variableName: '_api-error_',
46
+ variableValue: response.status.message,
47
+ },
48
+ ],
49
+ }), (0, chargeCardDetailReducer_1.unlockChargeCardSuccessOrFailure)({
50
+ chargeCardId,
51
+ fetchState: 'Error',
52
+ error: response.status,
53
+ }));
54
+ }
55
+ }), (0, operators_1.catchError)((error) => {
56
+ return (0, rxjs_1.of)((0, snackbarReducer_1.openSnackbar)({
57
+ messageSection: isChargeCardAdmin
58
+ ? 'unlock_charge_card'
59
+ : 'unlock_charge_card_card_user',
60
+ messageText: 'failed',
61
+ type: 'error',
62
+ variables: [
63
+ {
64
+ variableName: '_api-error_',
65
+ variableValue: JSON.stringify(error),
66
+ },
67
+ ],
68
+ }), (0, chargeCardDetailReducer_1.unlockChargeCardSuccessOrFailure)({
69
+ chargeCardId,
70
+ fetchState: 'Error',
71
+ error: (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Unlock card API call errored out' + JSON.stringify(error)),
72
+ }));
73
+ }));
74
+ }));
75
+ exports.unlockChargeCardEpic = unlockChargeCardEpic;
@@ -0,0 +1,9 @@
1
+ import { ActionsObservable, StateObservable } from 'redux-observable';
2
+ import { Observable } from 'rxjs';
3
+ import { updateChargeCard } from '../../../../entity/chargeCard/chargeCardReducer';
4
+ import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
5
+ import { RootState } from '../../../../reducer';
6
+ import { ZeniAPI } from '../../../../zeniAPI';
7
+ import { updateChargeCardName, updateChargeCardNameSuccessOrFailure } from './chargeCardDetailReducer';
8
+ export type ActionType = ReturnType<typeof openSnackbar> | ReturnType<typeof updateChargeCardName> | ReturnType<typeof updateChargeCardNameSuccessOrFailure> | ReturnType<typeof updateChargeCard>;
9
+ export declare const updateChargeCardNameEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateChargeCardNameEpic = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ const operators_1 = require("rxjs/operators");
6
+ const chargeCardReducer_1 = require("../../../../entity/chargeCard/chargeCardReducer");
7
+ const snackbarReducer_1 = require("../../../../entity/snackbar/snackbarReducer");
8
+ const responsePayload_1 = require("../../../../responsePayload");
9
+ const chargeCardDetailReducer_1 = require("./chargeCardDetailReducer");
10
+ const updateChargeCardNameEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(chargeCardDetailReducer_1.updateChargeCardName.match), (0, operators_1.switchMap)((action) => {
11
+ var _a;
12
+ const { chargeCardId, name, isChargeCardAdmin } = action.payload;
13
+ const payload = {
14
+ card_name: name,
15
+ };
16
+ const cardDetail = state$.value.chargeCardState.chargeCardByID[chargeCardId];
17
+ const accountLast4 = (_a = cardDetail === null || cardDetail === void 0 ? void 0 : cardDetail.accountLast4) !== null && _a !== void 0 ? _a : '';
18
+ return zeniAPI
19
+ .putAndGetJSON(`${zeniAPI.apiEndPoints.cardMicroServiceBaseUrl}/1.0/cards/${chargeCardId}/rename`, payload)
20
+ .pipe((0, operators_1.mergeMap)((response) => {
21
+ if ((0, responsePayload_1.isSuccessStatus)(response) && response.data != null) {
22
+ return (0, rxjs_1.of)((0, chargeCardReducer_1.updateChargeCard)(response.data), (0, chargeCardDetailReducer_1.updateChargeCardNameSuccessOrFailure)({
23
+ chargeCardId,
24
+ fetchState: 'Completed',
25
+ }), (0, snackbarReducer_1.openSnackbar)({
26
+ messageSection: isChargeCardAdmin
27
+ ? 'update_charge_card_name'
28
+ : 'update_charge_card_name_card_user',
29
+ messageText: 'success',
30
+ type: 'success',
31
+ variables: [
32
+ {
33
+ variableName: '_masked_card_number_',
34
+ variableValue: `•••• ${accountLast4}`,
35
+ },
36
+ {
37
+ variableName: '_new_card_name_',
38
+ variableValue: name,
39
+ },
40
+ ],
41
+ }));
42
+ }
43
+ else {
44
+ return (0, rxjs_1.of)((0, snackbarReducer_1.openSnackbar)({
45
+ messageSection: isChargeCardAdmin
46
+ ? 'update_charge_card_name'
47
+ : 'update_charge_card_name_card_user',
48
+ messageText: 'failed',
49
+ type: 'error',
50
+ variables: [
51
+ {
52
+ variableName: '_api-error_',
53
+ variableValue: response.status.message,
54
+ },
55
+ ],
56
+ }), (0, chargeCardDetailReducer_1.updateChargeCardNameSuccessOrFailure)({
57
+ chargeCardId,
58
+ fetchState: 'Error',
59
+ error: response.status,
60
+ }));
61
+ }
62
+ }), (0, operators_1.catchError)((error) => {
63
+ return (0, rxjs_1.of)((0, snackbarReducer_1.openSnackbar)({
64
+ messageSection: isChargeCardAdmin
65
+ ? 'update_charge_card_name'
66
+ : 'update_charge_card_name_card_user',
67
+ messageText: 'failed',
68
+ type: 'error',
69
+ variables: [
70
+ {
71
+ variableName: '_api-error_',
72
+ variableValue: JSON.stringify(error),
73
+ },
74
+ ],
75
+ }), (0, chargeCardDetailReducer_1.updateChargeCardNameSuccessOrFailure)({
76
+ chargeCardId,
77
+ fetchState: 'Error',
78
+ error: (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Update card name API call errored out' +
79
+ JSON.stringify(error)),
80
+ }));
81
+ }));
82
+ }));
83
+ exports.updateChargeCardNameEpic = updateChargeCardNameEpic;
@@ -3,14 +3,21 @@ import { FetchStateAndError, FetchedState, ID } from '../../../../commonStateTyp
3
3
  import { ZeniDate } from '../../../../zeniDayJS';
4
4
  import { SpendManagementUIState } from '../../billPay/billList/billListState';
5
5
  export interface ChargeCardListState extends FetchedState {
6
+ bulkActionCardIds: ID[];
6
7
  cardIds: ID[];
8
+ closeChargeCardsFetchState: FetchStateAndError;
7
9
  creditAccount: CreditAccount;
8
10
  creditAccountRepayment: CreditAccountRepayment;
9
11
  debitCardSummaries: DebitCardSummaries;
12
+ lockChargeCardsFetchState: FetchStateAndError;
10
13
  resendCardInvite: ResendRevokeCardInvite;
11
14
  revokeCardInvite: ResendRevokeCardInvite;
15
+ revokeChargeCardsInviteFetchState: FetchStateAndError;
12
16
  searchText: string;
13
17
  uiState: ChargeCardListUIState;
18
+ unlockChargeCardsFetchState: FetchStateAndError;
19
+ updateChargeCardsSpendLimitFetchState: FetchStateAndError;
20
+ rowActionCardId?: ID;
14
21
  unAssignedCredits?: Amount;
15
22
  }
16
23
  export interface ResendRevokeCardInvite {
@@ -66,4 +66,5 @@ interface DebitCardSummaryPayload {
66
66
  }
67
67
  export type FetchDebitCardSummaryResponse = ZeniAPIResponse<DebitCardSummaryPayload>;
68
68
  export type ResendInviteResponse = ZeniAPIResponse<ChargeCardPayload>;
69
+ export type UpdateChargeCardsLimitResponse = ZeniAPIResponse<ChargeCardPayload[]>;
69
70
  export {};
@@ -1,5 +1,5 @@
1
1
  import { Amount } from '../../../../commonStateTypes/amount';
2
- import { ID } from '../../../../commonStateTypes/common';
2
+ import { FetchState, ID } from '../../../../commonStateTypes/common';
3
3
  import { ZeniAPIStatus } from '../../../../responsePayload';
4
4
  import { ZeniDate } from '../../../../zeniDayJS';
5
5
  import { ChargeCardListState, ChargeCardListUIState } from './chargeCardList';
@@ -13,10 +13,10 @@ export declare const fetchChargeCardListPage: import("@reduxjs/toolkit").ActionC
13
13
  }, "chargeCardList/fetchChargeCardListPage", never, never>, fetchCreditAccountRepayment: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"chargeCardList/fetchCreditAccountRepayment">, updateCreditAccountRepayment: import("@reduxjs/toolkit").ActionCreatorWithPayload<CreditAccountRepaymentPayload, "chargeCardList/updateCreditAccountRepayment">, updateCreditAccountRepaymentFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "chargeCardList/updateCreditAccountRepaymentFailure">, updateCreditAccountRepaymentAmountAndDate: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
14
14
  amount: Amount;
15
15
  date: ZeniDate;
16
- }, "chargeCardList/updateCreditAccountRepaymentAmountAndDate">, fetchCreditAccount: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"chargeCardList/fetchCreditAccount">, updateCreditAccount: import("@reduxjs/toolkit").ActionCreatorWithPayload<CreditAccountPayload[], "chargeCardList/updateCreditAccount">, updateCreditAccountFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "chargeCardList/updateCreditAccountFailure">, fetchDebitCardSummary: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"chargeCardList/fetchDebitCardSummary">, updateDebitCardSummary: import("@reduxjs/toolkit").ActionCreatorWithPayload<DebitCardSummariesPayload, "chargeCardList/updateDebitCardSummary">, updateDebitCardSummaryFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "chargeCardList/updateDebitCardSummaryFailure">, fetchChargeCardList: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"chargeCardList/fetchChargeCardList">, updateChargeCardList: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
16
+ }, "chargeCardList/updateCreditAccountRepaymentAmountAndDate">, updateRowActionCardId: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<string | undefined, "chargeCardList/updateRowActionCardId">, fetchCreditAccount: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"chargeCardList/fetchCreditAccount">, updateCreditAccount: import("@reduxjs/toolkit").ActionCreatorWithPayload<CreditAccountPayload[], "chargeCardList/updateCreditAccount">, updateCreditAccountFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "chargeCardList/updateCreditAccountFailure">, fetchDebitCardSummary: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"chargeCardList/fetchDebitCardSummary">, updateDebitCardSummary: import("@reduxjs/toolkit").ActionCreatorWithPayload<DebitCardSummariesPayload, "chargeCardList/updateDebitCardSummary">, updateDebitCardSummaryFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "chargeCardList/updateDebitCardSummaryFailure">, fetchChargeCardList: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"chargeCardList/fetchChargeCardList">, updateChargeCardList: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
17
17
  chargeCardListPayload: ChargeCardListPayload;
18
18
  keepExistingListItems?: boolean;
19
- }, "chargeCardList/updateChargeCardList">, updateChargeCardListFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "chargeCardList/updateChargeCardListFailure">, updateSearchText: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "chargeCardList/updateSearchText">, updateChargeCardListUIState: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
19
+ }, "chargeCardList/updateChargeCardList">, updateChargeCardListFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "chargeCardList/updateChargeCardListFailure">, updateSearchText: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "chargeCardList/updateSearchText">, updateBulkActionCardIds: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "chargeCardList/updateBulkActionCardIds">, updateChargeCardListUIState: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
20
20
  uiState: Partial<ChargeCardListUIState>;
21
21
  }, "chargeCardList/updateChargeCardListUIState">, clearChargeCardList: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"chargeCardList/clearChargeCardList">, resendCardInvite: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[cardId: string], {
22
22
  cardId: string;
@@ -24,6 +24,36 @@ export declare const fetchChargeCardListPage: import("@reduxjs/toolkit").ActionC
24
24
  cardId: ID;
25
25
  }, "chargeCardList/resendCardInviteSuccess">, resendCardInviteFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "chargeCardList/resendCardInviteFailure">, revokeCardInvite: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[cardId: string], {
26
26
  cardId: string;
27
- }, "chargeCardList/revokeCardInvite", never, never>, revokeCardInviteSuccess: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "chargeCardList/revokeCardInviteSuccess">, revokeCardInviteFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "chargeCardList/revokeCardInviteFailure">;
27
+ }, "chargeCardList/revokeCardInvite", never, never>, revokeCardInviteSuccess: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "chargeCardList/revokeCardInviteSuccess">, revokeCardInviteFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "chargeCardList/revokeCardInviteFailure">, updateChargeCardsSpendLimit: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[chargeCardIds: string[], updatedSpendLimit: Amount, frequency: string], {
28
+ chargeCardIds: string[];
29
+ updatedSpendLimit: Amount;
30
+ frequency: string;
31
+ }, "chargeCardList/updateChargeCardsSpendLimit", never, never>, updateChargeCardsSpendLimitSuccessOrFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
32
+ fetchState: FetchState;
33
+ error?: ZeniAPIStatus;
34
+ }, "chargeCardList/updateChargeCardsSpendLimitSuccessOrFailure">, lockChargeCards: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[cardIds: string[], reason?: string | undefined], {
35
+ cardIds: string[];
36
+ reason: string | undefined;
37
+ }, "chargeCardList/lockChargeCards", never, never>, lockChargeCardsSuccessOrFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
38
+ fetchState: FetchState;
39
+ error?: ZeniAPIStatus;
40
+ }, "chargeCardList/lockChargeCardsSuccessOrFailure">, unlockChargeCards: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[cardIds: string[]], {
41
+ cardIds: string[];
42
+ }, "chargeCardList/unlockChargeCards", never, never>, unlockChargeCardsSuccessOrFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
43
+ fetchState: FetchState;
44
+ error?: ZeniAPIStatus;
45
+ }, "chargeCardList/unlockChargeCardsSuccessOrFailure">, closeChargeCards: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[cardIds: string[], reason?: string | undefined], {
46
+ cardIds: string[];
47
+ reason: string | undefined;
48
+ }, "chargeCardList/closeChargeCards", never, never>, closeChargeCardsSuccessOrFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
49
+ fetchState: FetchState;
50
+ error?: ZeniAPIStatus;
51
+ }, "chargeCardList/closeChargeCardsSuccessOrFailure">, revokeChargeCardsInvite: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[cardIds: string[]], {
52
+ cardIds: string[];
53
+ }, "chargeCardList/revokeChargeCardsInvite", never, never>, revokeChargeCardsInviteSuccessOrFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
54
+ fetchState: FetchState;
55
+ revokedCardIds: ID[];
56
+ error?: ZeniAPIStatus;
57
+ }, "chargeCardList/revokeChargeCardsInviteSuccessOrFailure">;
28
58
  declare const _default: import("redux").Reducer<ChargeCardListState>;
29
59
  export default _default;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var _a;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.revokeCardInviteFailure = exports.revokeCardInviteSuccess = exports.revokeCardInvite = exports.resendCardInviteFailure = exports.resendCardInviteSuccess = exports.resendCardInvite = exports.clearChargeCardList = exports.updateChargeCardListUIState = exports.updateSearchText = exports.updateChargeCardListFailure = exports.updateChargeCardList = exports.fetchChargeCardList = exports.updateDebitCardSummaryFailure = exports.updateDebitCardSummary = exports.fetchDebitCardSummary = exports.updateCreditAccountFailure = exports.updateCreditAccount = exports.fetchCreditAccount = exports.updateCreditAccountRepaymentAmountAndDate = exports.updateCreditAccountRepaymentFailure = exports.updateCreditAccountRepayment = exports.fetchCreditAccountRepayment = exports.fetchChargeCardListPage = exports.initialState = void 0;
4
+ exports.revokeChargeCardsInviteSuccessOrFailure = exports.revokeChargeCardsInvite = exports.closeChargeCardsSuccessOrFailure = exports.closeChargeCards = exports.unlockChargeCardsSuccessOrFailure = exports.unlockChargeCards = exports.lockChargeCardsSuccessOrFailure = exports.lockChargeCards = exports.updateChargeCardsSpendLimitSuccessOrFailure = exports.updateChargeCardsSpendLimit = exports.revokeCardInviteFailure = exports.revokeCardInviteSuccess = exports.revokeCardInvite = exports.resendCardInviteFailure = exports.resendCardInviteSuccess = exports.resendCardInvite = exports.clearChargeCardList = exports.updateChargeCardListUIState = exports.updateBulkActionCardIds = exports.updateSearchText = exports.updateChargeCardListFailure = exports.updateChargeCardList = exports.fetchChargeCardList = exports.updateDebitCardSummaryFailure = exports.updateDebitCardSummary = exports.fetchDebitCardSummary = exports.updateCreditAccountFailure = exports.updateCreditAccount = exports.fetchCreditAccount = exports.updateRowActionCardId = exports.updateCreditAccountRepaymentAmountAndDate = exports.updateCreditAccountRepaymentFailure = exports.updateCreditAccountRepayment = exports.fetchCreditAccountRepayment = exports.fetchChargeCardListPage = exports.initialState = void 0;
5
5
  const toolkit_1 = require("@reduxjs/toolkit");
6
6
  const amount_1 = require("../../../../commonStateTypes/amount");
7
7
  const zeniDayJS_1 = require("../../../../zeniDayJS");
@@ -9,11 +9,33 @@ const chargeCardList_1 = require("./chargeCardList");
9
9
  exports.initialState = {
10
10
  fetchState: 'Not-Started',
11
11
  error: undefined,
12
+ bulkActionCardIds: [],
12
13
  cardIds: [],
13
14
  searchText: '',
14
15
  unAssignedCredits: undefined,
16
+ rowActionCardId: undefined,
15
17
  creditAccount: chargeCardList_1.initialCreditAcc,
16
18
  debitCardSummaries: chargeCardList_1.initialDebitCardSummaries,
19
+ updateChargeCardsSpendLimitFetchState: {
20
+ fetchState: 'Not-Started',
21
+ error: undefined,
22
+ },
23
+ lockChargeCardsFetchState: {
24
+ fetchState: 'Not-Started',
25
+ error: undefined,
26
+ },
27
+ unlockChargeCardsFetchState: {
28
+ fetchState: 'Not-Started',
29
+ error: undefined,
30
+ },
31
+ closeChargeCardsFetchState: {
32
+ fetchState: 'Not-Started',
33
+ error: undefined,
34
+ },
35
+ revokeChargeCardsInviteFetchState: {
36
+ fetchState: 'Not-Started',
37
+ error: undefined,
38
+ },
17
39
  hasValidState() {
18
40
  return this.fetchState == 'Completed';
19
41
  },
@@ -58,6 +80,9 @@ const chargeCardList = (0, toolkit_1.createSlice)({
58
80
  updateCreditAccountRepaymentFailure(draft, action) {
59
81
  draft.creditAccountRepayment = Object.assign(Object.assign({}, chargeCardList_1.initialCreditAccountRepayment), { fetchState: 'Error', error: action.payload });
60
82
  },
83
+ updateRowActionCardId(draft, action) {
84
+ draft.rowActionCardId = action.payload;
85
+ },
61
86
  fetchCreditAccount(draft) {
62
87
  draft.creditAccount.fetchState = 'In-Progress';
63
88
  draft.creditAccount.error = undefined;
@@ -105,6 +130,9 @@ const chargeCardList = (0, toolkit_1.createSlice)({
105
130
  updateSearchText(draft, action) {
106
131
  draft.searchText = action.payload;
107
132
  },
133
+ updateBulkActionCardIds(draft, action) {
134
+ draft.bulkActionCardIds = action.payload;
135
+ },
108
136
  updateChargeCardListUIState(draft, action) {
109
137
  if (action.payload.uiState.sortKey != null) {
110
138
  draft.uiState.sortKey = action.payload.uiState.sortKey;
@@ -125,7 +153,7 @@ const chargeCardList = (0, toolkit_1.createSlice)({
125
153
  },
126
154
  reducer(draft, action) {
127
155
  draft.resendCardInvite.cardId = action.payload.cardId;
128
- draft.revokeCardInvite.saveStatus.fetchState = 'In-Progress';
156
+ draft.resendCardInvite.saveStatus.fetchState = 'In-Progress';
129
157
  },
130
158
  },
131
159
  resendCardInviteSuccess(draft, action) {
@@ -158,9 +186,120 @@ const chargeCardList = (0, toolkit_1.createSlice)({
158
186
  draft.revokeCardInvite.saveStatus.fetchState = 'Error';
159
187
  draft.revokeCardInvite.saveStatus.error = action.payload;
160
188
  },
189
+ updateChargeCardsSpendLimit: {
190
+ reducer(draft) {
191
+ draft.updateChargeCardsSpendLimitFetchState = {
192
+ fetchState: 'In-Progress',
193
+ error: undefined,
194
+ };
195
+ },
196
+ prepare(chargeCardIds, updatedSpendLimit, frequency) {
197
+ return {
198
+ payload: {
199
+ chargeCardIds,
200
+ updatedSpendLimit,
201
+ frequency,
202
+ },
203
+ };
204
+ },
205
+ },
206
+ updateChargeCardsSpendLimitSuccessOrFailure(draft, action) {
207
+ draft.updateChargeCardsSpendLimitFetchState = {
208
+ fetchState: action.payload.fetchState,
209
+ error: action.payload.error,
210
+ };
211
+ },
212
+ lockChargeCards: {
213
+ reducer(draft) {
214
+ draft.lockChargeCardsFetchState = {
215
+ fetchState: 'In-Progress',
216
+ error: undefined,
217
+ };
218
+ },
219
+ prepare(cardIds, reason) {
220
+ return {
221
+ payload: {
222
+ cardIds,
223
+ reason,
224
+ },
225
+ };
226
+ },
227
+ },
228
+ lockChargeCardsSuccessOrFailure(draft, action) {
229
+ draft.lockChargeCardsFetchState = {
230
+ fetchState: action.payload.fetchState,
231
+ error: action.payload.error,
232
+ };
233
+ },
234
+ closeChargeCards: {
235
+ reducer(draft) {
236
+ draft.closeChargeCardsFetchState = {
237
+ fetchState: 'In-Progress',
238
+ error: undefined,
239
+ };
240
+ },
241
+ prepare(cardIds, reason) {
242
+ return {
243
+ payload: {
244
+ cardIds,
245
+ reason,
246
+ },
247
+ };
248
+ },
249
+ },
250
+ closeChargeCardsSuccessOrFailure(draft, action) {
251
+ draft.closeChargeCardsFetchState = {
252
+ fetchState: action.payload.fetchState,
253
+ error: action.payload.error,
254
+ };
255
+ },
256
+ unlockChargeCards: {
257
+ reducer(draft) {
258
+ draft.unlockChargeCardsFetchState = {
259
+ fetchState: 'In-Progress',
260
+ error: undefined,
261
+ };
262
+ },
263
+ prepare(cardIds) {
264
+ return {
265
+ payload: {
266
+ cardIds,
267
+ },
268
+ };
269
+ },
270
+ },
271
+ unlockChargeCardsSuccessOrFailure(draft, action) {
272
+ draft.unlockChargeCardsFetchState = {
273
+ fetchState: action.payload.fetchState,
274
+ error: action.payload.error,
275
+ };
276
+ },
277
+ revokeChargeCardsInvite: {
278
+ reducer(draft) {
279
+ draft.revokeChargeCardsInviteFetchState = {
280
+ fetchState: 'In-Progress',
281
+ error: undefined,
282
+ };
283
+ },
284
+ prepare(cardIds) {
285
+ return {
286
+ payload: {
287
+ cardIds,
288
+ },
289
+ };
290
+ },
291
+ },
292
+ revokeChargeCardsInviteSuccessOrFailure(draft, action) {
293
+ draft.revokeChargeCardsInviteFetchState = {
294
+ fetchState: action.payload.fetchState,
295
+ error: action.payload.error,
296
+ };
297
+ // Remove successfully revoked cards from the list
298
+ draft.cardIds = draft.cardIds.filter((cardId) => !action.payload.revokedCardIds.includes(cardId));
299
+ },
161
300
  },
162
301
  });
163
- _a = chargeCardList.actions, exports.fetchChargeCardListPage = _a.fetchChargeCardListPage, exports.fetchCreditAccountRepayment = _a.fetchCreditAccountRepayment, exports.updateCreditAccountRepayment = _a.updateCreditAccountRepayment, exports.updateCreditAccountRepaymentFailure = _a.updateCreditAccountRepaymentFailure, exports.updateCreditAccountRepaymentAmountAndDate = _a.updateCreditAccountRepaymentAmountAndDate, exports.fetchCreditAccount = _a.fetchCreditAccount, exports.updateCreditAccount = _a.updateCreditAccount, exports.updateCreditAccountFailure = _a.updateCreditAccountFailure, exports.fetchDebitCardSummary = _a.fetchDebitCardSummary, exports.updateDebitCardSummary = _a.updateDebitCardSummary, exports.updateDebitCardSummaryFailure = _a.updateDebitCardSummaryFailure, exports.fetchChargeCardList = _a.fetchChargeCardList, exports.updateChargeCardList = _a.updateChargeCardList, exports.updateChargeCardListFailure = _a.updateChargeCardListFailure, exports.updateSearchText = _a.updateSearchText, exports.updateChargeCardListUIState = _a.updateChargeCardListUIState, exports.clearChargeCardList = _a.clearChargeCardList, exports.resendCardInvite = _a.resendCardInvite, exports.resendCardInviteSuccess = _a.resendCardInviteSuccess, exports.resendCardInviteFailure = _a.resendCardInviteFailure, exports.revokeCardInvite = _a.revokeCardInvite, exports.revokeCardInviteSuccess = _a.revokeCardInviteSuccess, exports.revokeCardInviteFailure = _a.revokeCardInviteFailure;
302
+ _a = chargeCardList.actions, exports.fetchChargeCardListPage = _a.fetchChargeCardListPage, exports.fetchCreditAccountRepayment = _a.fetchCreditAccountRepayment, exports.updateCreditAccountRepayment = _a.updateCreditAccountRepayment, exports.updateCreditAccountRepaymentFailure = _a.updateCreditAccountRepaymentFailure, exports.updateCreditAccountRepaymentAmountAndDate = _a.updateCreditAccountRepaymentAmountAndDate, exports.updateRowActionCardId = _a.updateRowActionCardId, exports.fetchCreditAccount = _a.fetchCreditAccount, exports.updateCreditAccount = _a.updateCreditAccount, exports.updateCreditAccountFailure = _a.updateCreditAccountFailure, exports.fetchDebitCardSummary = _a.fetchDebitCardSummary, exports.updateDebitCardSummary = _a.updateDebitCardSummary, exports.updateDebitCardSummaryFailure = _a.updateDebitCardSummaryFailure, exports.fetchChargeCardList = _a.fetchChargeCardList, exports.updateChargeCardList = _a.updateChargeCardList, exports.updateChargeCardListFailure = _a.updateChargeCardListFailure, exports.updateSearchText = _a.updateSearchText, exports.updateBulkActionCardIds = _a.updateBulkActionCardIds, exports.updateChargeCardListUIState = _a.updateChargeCardListUIState, exports.clearChargeCardList = _a.clearChargeCardList, exports.resendCardInvite = _a.resendCardInvite, exports.resendCardInviteSuccess = _a.resendCardInviteSuccess, exports.resendCardInviteFailure = _a.resendCardInviteFailure, exports.revokeCardInvite = _a.revokeCardInvite, exports.revokeCardInviteSuccess = _a.revokeCardInviteSuccess, exports.revokeCardInviteFailure = _a.revokeCardInviteFailure, exports.updateChargeCardsSpendLimit = _a.updateChargeCardsSpendLimit, exports.updateChargeCardsSpendLimitSuccessOrFailure = _a.updateChargeCardsSpendLimitSuccessOrFailure, exports.lockChargeCards = _a.lockChargeCards, exports.lockChargeCardsSuccessOrFailure = _a.lockChargeCardsSuccessOrFailure, exports.unlockChargeCards = _a.unlockChargeCards, exports.unlockChargeCardsSuccessOrFailure = _a.unlockChargeCardsSuccessOrFailure, exports.closeChargeCards = _a.closeChargeCards, exports.closeChargeCardsSuccessOrFailure = _a.closeChargeCardsSuccessOrFailure, exports.revokeChargeCardsInvite = _a.revokeChargeCardsInvite, exports.revokeChargeCardsInviteSuccessOrFailure = _a.revokeChargeCardsInviteSuccessOrFailure;
164
303
  exports.default = chargeCardList.reducer;
165
304
  // helper
166
305
  const toCreditAccount = (payload) => ({