@zeniai/client-epic-state 4.19.85 → 4.19.86-betaNB1

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 (76) hide show
  1. package/lib/commonStateTypes/animations.d.ts +1 -1
  2. package/lib/commonStateTypes/animations.js +3 -0
  3. package/lib/entity/account/accountPayload.d.ts +2 -0
  4. package/lib/entity/account/accountPayload.js +2 -0
  5. package/lib/entity/account/accountState.d.ts +2 -0
  6. package/lib/entity/depositAccount/depositAccount.d.ts +1 -1
  7. package/lib/entity/depositAccount/depositAccount.js +1 -1
  8. package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
  9. package/lib/entity/snackbar/snackbarTypes.js +5 -0
  10. package/lib/epic.d.ts +9 -1
  11. package/lib/epic.js +9 -1
  12. package/lib/esm/commonStateTypes/animations.js +3 -0
  13. package/lib/esm/entity/account/accountPayload.js +2 -0
  14. package/lib/esm/entity/depositAccount/depositAccount.js +1 -1
  15. package/lib/esm/entity/snackbar/snackbarTypes.js +5 -0
  16. package/lib/esm/epic.js +9 -1
  17. package/lib/esm/index.js +4 -2
  18. package/lib/esm/reducer.js +3 -0
  19. package/lib/esm/view/expenseAutomationView/epics/missingReceipts/uploadMissingReceiptSuccessEpic.js +7 -5
  20. package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/uploadTransactionReceiptSuccessEpic.js +24 -0
  21. package/lib/esm/view/expenseAutomationView/reducers/transactionsViewReducer.js +20 -1
  22. package/lib/esm/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +2 -1
  23. package/lib/esm/view/expenseAutomationView/types/transactionsViewState.js +2 -1
  24. package/lib/esm/view/spendManagement/autotransferRules/autoTransferRulesPayload.js +26 -0
  25. package/lib/esm/view/spendManagement/autotransferRules/autoTransferRulesReducer.js +199 -0
  26. package/lib/esm/view/spendManagement/autotransferRules/autoTransferRulesSelector.js +52 -0
  27. package/lib/esm/view/spendManagement/autotransferRules/autoTransferRulesState.js +1 -0
  28. package/lib/esm/view/spendManagement/autotransferRules/epics/createAutoTransferRuleEpic.js +91 -0
  29. package/lib/esm/view/spendManagement/autotransferRules/epics/deleteAutoTransferRuleEpic.js +48 -0
  30. package/lib/esm/view/spendManagement/autotransferRules/epics/fetchAutoTransferReviewDetailEpic.js +30 -0
  31. package/lib/esm/view/spendManagement/autotransferRules/epics/fetchAutoTransferRuleHistory.js +45 -0
  32. package/lib/esm/view/spendManagement/autotransferRules/epics/fetchAutoTransferRulesEpic.js +52 -0
  33. package/lib/esm/view/spendManagement/autotransferRules/epics/updateAutoTransferRuleEpic.js +69 -0
  34. package/lib/esm/view/spendManagement/treasury/treasuryList/epics/fetchTreasuryDetailEpic.js +2 -2
  35. package/lib/esm/view/spendManagement/treasury/treasuryList/treasuryDetailReducer.js +2 -1
  36. package/lib/esm/view/taskManager/taskDetailView/taskDetailSelector.js +1 -1
  37. package/lib/index.d.ts +8 -4
  38. package/lib/index.js +45 -31
  39. package/lib/reducer.d.ts +3 -0
  40. package/lib/reducer.js +3 -0
  41. package/lib/view/expenseAutomationView/epics/missingReceipts/uploadMissingReceiptSuccessEpic.js +7 -5
  42. package/lib/view/expenseAutomationView/epics/transactionCategorization/uploadTransactionReceiptSuccessEpic.d.ts +7 -0
  43. package/lib/view/expenseAutomationView/epics/transactionCategorization/uploadTransactionReceiptSuccessEpic.js +28 -0
  44. package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +1 -1
  45. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.d.ts +11 -3
  46. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.js +21 -2
  47. package/lib/view/expenseAutomationView/selectorTypes/transactionsViewSelectorTypes.d.ts +1 -0
  48. package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +2 -1
  49. package/lib/view/expenseAutomationView/types/transactionsViewState.d.ts +2 -1
  50. package/lib/view/expenseAutomationView/types/transactionsViewState.js +2 -1
  51. package/lib/view/spendManagement/autotransferRules/autoTransferRulesPayload.d.ts +75 -0
  52. package/lib/view/spendManagement/autotransferRules/autoTransferRulesPayload.js +30 -0
  53. package/lib/view/spendManagement/autotransferRules/autoTransferRulesReducer.d.ts +50 -0
  54. package/lib/view/spendManagement/autotransferRules/autoTransferRulesReducer.js +206 -0
  55. package/lib/view/spendManagement/autotransferRules/autoTransferRulesSelector.d.ts +24 -0
  56. package/lib/view/spendManagement/autotransferRules/autoTransferRulesSelector.js +61 -0
  57. package/lib/view/spendManagement/autotransferRules/autoTransferRulesState.d.ts +38 -0
  58. package/lib/view/spendManagement/autotransferRules/autoTransferRulesState.js +2 -0
  59. package/lib/view/spendManagement/autotransferRules/epics/createAutoTransferRuleEpic.d.ts +12 -0
  60. package/lib/view/spendManagement/autotransferRules/epics/createAutoTransferRuleEpic.js +97 -0
  61. package/lib/view/spendManagement/autotransferRules/epics/deleteAutoTransferRuleEpic.d.ts +8 -0
  62. package/lib/view/spendManagement/autotransferRules/epics/deleteAutoTransferRuleEpic.js +52 -0
  63. package/lib/view/spendManagement/autotransferRules/epics/fetchAutoTransferReviewDetailEpic.d.ts +7 -0
  64. package/lib/view/spendManagement/autotransferRules/epics/fetchAutoTransferReviewDetailEpic.js +34 -0
  65. package/lib/view/spendManagement/autotransferRules/epics/fetchAutoTransferRuleHistory.d.ts +7 -0
  66. package/lib/view/spendManagement/autotransferRules/epics/fetchAutoTransferRuleHistory.js +52 -0
  67. package/lib/view/spendManagement/autotransferRules/epics/fetchAutoTransferRulesEpic.d.ts +10 -0
  68. package/lib/view/spendManagement/autotransferRules/epics/fetchAutoTransferRulesEpic.js +56 -0
  69. package/lib/view/spendManagement/autotransferRules/epics/updateAutoTransferRuleEpic.d.ts +8 -0
  70. package/lib/view/spendManagement/autotransferRules/epics/updateAutoTransferRuleEpic.js +73 -0
  71. package/lib/view/spendManagement/treasury/treasuryList/epics/fetchTreasuryDetailEpic.js +2 -2
  72. package/lib/view/spendManagement/treasury/treasuryList/treasuryDetailReducer.d.ts +2 -1
  73. package/lib/view/spendManagement/treasury/treasuryList/treasuryDetailReducer.js +2 -1
  74. package/lib/view/taskManager/taskDetailView/taskDetailSelector.js +1 -1
  75. package/package.json +1 -1
  76. package/lib/tsconfig.typecheck.tsbuildinfo +0 -1
@@ -0,0 +1,91 @@
1
+ import { from, of } from 'rxjs';
2
+ import { catchError, filter, mergeMap, switchMap } from 'rxjs/operators';
3
+ import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
4
+ import { createZeniAPIStatus, isSuccessResponse, } from '../../../../responsePayload';
5
+ import { mapPayloadToAutoTransferRule, } from '../autoTransferRulesPayload';
6
+ import { createAutoTransferRule, createAutoTransferRuleFailure, createAutoTransferRuleSuccess, } from '../autoTransferRulesReducer';
7
+ export const createAutoTransferRuleEpic = (actions$, state$, zeniAPI) => actions$.pipe(filter(createAutoTransferRule.match), switchMap(() => {
8
+ const requestBody = mapAutoTransferRuleLocalDataToPayload(state$.value.autotransferRulesState.ruleUpdateLocalData);
9
+ return zeniAPI
10
+ .postAndGetJSON(`${zeniAPI.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto`, requestBody)
11
+ .pipe(mergeMap((response) => {
12
+ if (isSuccessResponse(response) && response.data != null) {
13
+ const rule = mapPayloadToAutoTransferRule(response.data.auto_transfer_rule);
14
+ const actions = [
15
+ createAutoTransferRuleSuccess({ rule }),
16
+ openSnackbar({
17
+ messageSection: 'auto_transfer_rule_create',
18
+ messageText: 'success',
19
+ type: 'success',
20
+ }),
21
+ ];
22
+ return from(actions);
23
+ }
24
+ else {
25
+ return from([
26
+ createAutoTransferRuleFailure({
27
+ fetchState: 'Error',
28
+ error: response.status,
29
+ }),
30
+ openSnackbar({
31
+ messageSection: 'auto_transfer_rule_create',
32
+ messageText: 'failed',
33
+ type: 'error',
34
+ variables: [
35
+ {
36
+ variableName: '_api-error_',
37
+ variableValue: response.status.message,
38
+ },
39
+ ],
40
+ }),
41
+ ]);
42
+ }
43
+ }), catchError((error) => of(createAutoTransferRuleFailure({
44
+ fetchState: 'Error',
45
+ error: createZeniAPIStatus('Unexpected Error', 'Create auto transfer rule REST API call errored out ' +
46
+ JSON.stringify(error)),
47
+ }))));
48
+ }));
49
+ export function mapAutoTransferRuleLocalDataToPayload(localData, pauseRule, resumeRule) {
50
+ if (pauseRule === true) {
51
+ return {
52
+ is_active: false,
53
+ };
54
+ }
55
+ if (resumeRule === true) {
56
+ return {
57
+ is_active: true,
58
+ };
59
+ }
60
+ const payload = {
61
+ amount: localData.amount?.amount,
62
+ currency_code: localData.amount?.currencyCode,
63
+ destination_bank_account_id: localData.destinationAccount?.id,
64
+ destination_bank_account_type: accountTypeSubConfigCodeToAccType(localData.destinationAccount?.accType),
65
+ destination_bank_account_metadata: localData.destinationAccountWithPercentAllocation?.map((allocation) => ({
66
+ account_id: allocation.account.id,
67
+ account_type: accountTypeSubConfigCodeToAccType(allocation.account.accType),
68
+ percentage: allocation.percentage,
69
+ })),
70
+ frequency: localData.frequency,
71
+ rule_type: localData.ruleType,
72
+ source_bank_account_id: localData.sourceAccount?.id,
73
+ source_bank_account_type: accountTypeSubConfigCodeToAccType(localData.sourceAccount?.accType),
74
+ first_transfer_date: localData.firstTransferDate != null
75
+ ? localData.firstTransferDate.format('YYYY-MM-DD')
76
+ : undefined,
77
+ };
78
+ return payload;
79
+ }
80
+ export const accountTypeSubConfigCodeToAccType = (code) => {
81
+ switch (code) {
82
+ case 'depositAccount':
83
+ return 'deposit_account';
84
+ case 'paymentAccount':
85
+ return 'payment_account';
86
+ case 'treasuryAccount':
87
+ return 'treasury_account';
88
+ default:
89
+ return undefined;
90
+ }
91
+ };
@@ -0,0 +1,48 @@
1
+ import { from, of } from 'rxjs';
2
+ import { catchError, filter, mergeMap, switchMap } from 'rxjs/operators';
3
+ import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
4
+ import { createZeniAPIStatus, isSuccessResponse, } from '../../../../responsePayload';
5
+ import { deleteAutoTransferRule, deleteAutoTransferRuleFailure, deleteAutoTransferRuleSuccess, } from '../autoTransferRulesReducer';
6
+ export const deleteAutoTransferRuleEpic = (actions$, _state$, zeniAPI) => actions$.pipe(filter(deleteAutoTransferRule.match), switchMap((action) => {
7
+ const { ruleId } = action.payload;
8
+ return zeniAPI
9
+ .deleteAndGetJSON(`${zeniAPI.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto/${ruleId}`)
10
+ .pipe(mergeMap((response) => {
11
+ if (isSuccessResponse(response)) {
12
+ const actions = [
13
+ deleteAutoTransferRuleSuccess({ ruleId }),
14
+ openSnackbar({
15
+ messageSection: 'auto_transfer_rule_delete',
16
+ messageText: 'success',
17
+ type: 'success',
18
+ }),
19
+ ];
20
+ return from(actions);
21
+ }
22
+ else {
23
+ return from([
24
+ deleteAutoTransferRuleFailure({
25
+ ruleId,
26
+ fetchState: 'Error',
27
+ error: response.status,
28
+ }),
29
+ openSnackbar({
30
+ messageSection: 'auto_transfer_rule_delete',
31
+ messageText: 'failed',
32
+ type: 'error',
33
+ variables: [
34
+ {
35
+ variableName: '_api-error_',
36
+ variableValue: response.status.message,
37
+ },
38
+ ],
39
+ }),
40
+ ]);
41
+ }
42
+ }), catchError((error) => of(deleteAutoTransferRuleFailure({
43
+ ruleId,
44
+ fetchState: 'Error',
45
+ error: createZeniAPIStatus('Unexpected Error', 'Delete auto transfer rule REST API call errored out ' +
46
+ JSON.stringify(error)),
47
+ }))));
48
+ }));
@@ -0,0 +1,30 @@
1
+ import { of } from 'rxjs';
2
+ import { catchError, filter, mergeMap, switchMap } from 'rxjs/operators';
3
+ import { createZeniAPIStatus, isSuccessResponse, } from '../../../../responsePayload';
4
+ import { fetchAutoTransferReviewDetail, updateAutoTransferReviewDetail, updateAutoTransferReviewDetailFailure, } from '../autoTransferRulesReducer';
5
+ import { accountTypeSubConfigCodeToAccType } from './createAutoTransferRuleEpic';
6
+ export const fetchAutoTransferReviewDetailEpic = (actions$, state$, zeniAPI) => actions$.pipe(filter(fetchAutoTransferReviewDetail.match), switchMap(() => {
7
+ const localData = state$.value.autotransferRulesState.ruleUpdateLocalData;
8
+ const payload = {
9
+ from_account: {
10
+ account_id: localData.sourceAccount?.id,
11
+ account_type: accountTypeSubConfigCodeToAccType(localData.sourceAccount?.accType) ?? '',
12
+ },
13
+ to_account: {
14
+ account_id: localData.destinationAccount?.id,
15
+ account_type: accountTypeSubConfigCodeToAccType(localData.destinationAccount?.accType) ?? '',
16
+ },
17
+ amount: localData.amount?.amount ?? 0,
18
+ currency_code: localData.amount?.currencyCode ?? 'USD',
19
+ currency_symbol: localData.amount?.currencySymbol ?? '$',
20
+ };
21
+ return zeniAPI
22
+ .postAndGetJSON(`${zeniAPI.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto/review`, payload)
23
+ .pipe(mergeMap((response) => {
24
+ if (isSuccessResponse(response) && response.data != null) {
25
+ return of(updateAutoTransferReviewDetail(response.data));
26
+ }
27
+ return of(updateAutoTransferReviewDetailFailure(response.status));
28
+ }), catchError((error) => of(updateAutoTransferReviewDetailFailure(createZeniAPIStatus('Unexpected Error', 'Fetch auto transfer review detail REST API call errored out ' +
29
+ JSON.stringify(error))))));
30
+ }));
@@ -0,0 +1,45 @@
1
+ import recordGet from 'lodash/get';
2
+ import { concat, from, of } from 'rxjs';
3
+ import { catchError, filter, mergeMap } from 'rxjs/operators';
4
+ import { createZeniAPIStatus, isSuccessResponse, } from '../../../../responsePayload';
5
+ import { fetchAutoTransferRuleHistory, updateAutoTransferRuleHistory, updateAutoTransferRuleHistoryFetchStatus, } from '../autoTransferRulesReducer';
6
+ export const fetchAutoTransferRuleHistoryEpic = (actions$, state$, zeniAPI) => actions$.pipe(filter(fetchAutoTransferRuleHistory.match), mergeMap((action) => {
7
+ const { ruleId, cacheOverride } = action.payload;
8
+ const historyActions = [];
9
+ const state = state$.value;
10
+ const historyDetail = recordGet(state.autotransferRulesState.historyByRuleId, ruleId, undefined);
11
+ if (cacheOverride === true ||
12
+ historyDetail == null ||
13
+ historyDetail.fetchState !== 'In-Progress') {
14
+ historyActions.push(updateAutoTransferRuleHistoryFetchStatus({
15
+ ruleId,
16
+ fetchState: 'In-Progress',
17
+ }));
18
+ const getHistoryDetail$ = zeniAPI
19
+ .getJSON(`${zeniAPI.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto/${ruleId}/history`)
20
+ .pipe(mergeMap((response) => {
21
+ if (isSuccessResponse(response) && response.data != null) {
22
+ return of(updateAutoTransferRuleHistory({
23
+ ruleId,
24
+ historicEventsPayload: response.data.activities,
25
+ }));
26
+ }
27
+ else {
28
+ return of(updateAutoTransferRuleHistoryFetchStatus({
29
+ ruleId,
30
+ fetchState: 'Error',
31
+ error: response.status,
32
+ }));
33
+ }
34
+ }), catchError((error) => of(updateAutoTransferRuleHistoryFetchStatus({
35
+ ruleId,
36
+ fetchState: 'Error',
37
+ error: createZeniAPIStatus('Unexpected Error', 'Fetch auto transfer rule history REST API call errored out ' +
38
+ JSON.stringify(error)),
39
+ }))));
40
+ return concat(from(historyActions), getHistoryDetail$);
41
+ }
42
+ else {
43
+ return from(historyActions);
44
+ }
45
+ }));
@@ -0,0 +1,52 @@
1
+ import { from, of } from 'rxjs';
2
+ import { catchError, filter, mergeMap, switchMap } from 'rxjs/operators';
3
+ import { createZeniAPIStatus, isSuccessResponse, } from '../../../../responsePayload';
4
+ import { fetchTreasuryOverviewDetail } from '../../treasury/treasuryList/treasuryDetailReducer';
5
+ import { fetchDepositAccountList } from '../../zeniAccounts/depositAccountList/depositAccountListReducer';
6
+ import { fetchPaymentAccountList } from '../../zeniAccounts/paymentAccountList/paymentAccountListReducer';
7
+ import { mapPayloadToAutoTransferRule, } from '../autoTransferRulesPayload';
8
+ import { fetchAutoTransferRules, updateAutoTransferRules, updateAutoTransferRulesFailure, } from '../autoTransferRulesReducer';
9
+ export const fetchAutoTransferRulesEpic = (actions$, state$, zeniAPI) => actions$.pipe(filter(fetchAutoTransferRules.match), switchMap((action) => {
10
+ const state = state$.value;
11
+ const { cacheOverride } = action.payload;
12
+ const { autotransferRulesState, depositAccountListState, paymentAccountListState, } = state;
13
+ if (cacheOverride === true ||
14
+ (autotransferRulesState.hasValidState() === false &&
15
+ autotransferRulesState.fetchState !== 'In-Progress')) {
16
+ return zeniAPI
17
+ .getJSON(`${zeniAPI.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto/list`)
18
+ .pipe(mergeMap((response) => {
19
+ if (isSuccessResponse(response) && response.data != null) {
20
+ const rules = response.data.auto_transfer_rules.map(mapPayloadToAutoTransferRule);
21
+ const actions = [
22
+ updateAutoTransferRules({ rules }),
23
+ ];
24
+ if (depositAccountListState.fetchState !== 'In-Progress' &&
25
+ depositAccountListState.fetchState !== 'Completed') {
26
+ actions.push(fetchDepositAccountList());
27
+ }
28
+ if (paymentAccountListState.fetchState !== 'In-Progress' &&
29
+ paymentAccountListState.fetchState !== 'Completed') {
30
+ actions.push(fetchPaymentAccountList());
31
+ }
32
+ actions.push(fetchTreasuryOverviewDetail(false, true));
33
+ return from(actions);
34
+ }
35
+ else {
36
+ return of(updateAutoTransferRulesFailure({
37
+ fetchState: 'Error',
38
+ error: response.status,
39
+ }));
40
+ }
41
+ }), catchError((error) => of(updateAutoTransferRulesFailure({
42
+ fetchState: 'Error',
43
+ error: createZeniAPIStatus('Unexpected Error', 'Fetch auto transfer rules REST API call errored out ' +
44
+ JSON.stringify(error)),
45
+ }))));
46
+ }
47
+ else {
48
+ return of(updateAutoTransferRules({
49
+ rules: autotransferRulesState.rules,
50
+ }));
51
+ }
52
+ }));
@@ -0,0 +1,69 @@
1
+ import { from, of } from 'rxjs';
2
+ import { catchError, filter, mergeMap, switchMap } from 'rxjs/operators';
3
+ import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
4
+ import { createZeniAPIStatus, isSuccessResponse, } from '../../../../responsePayload';
5
+ import { mapPayloadToAutoTransferRule, } from '../autoTransferRulesPayload';
6
+ import { updateAutoTransferRule, updateAutoTransferRuleFailure, updateAutoTransferRuleSuccess, } from '../autoTransferRulesReducer';
7
+ import { mapAutoTransferRuleLocalDataToPayload } from './createAutoTransferRuleEpic';
8
+ export const updateAutoTransferRuleEpic = (actions$, state$, zeniAPI) => actions$.pipe(filter(updateAutoTransferRule.match), switchMap((action) => {
9
+ const { ruleId, pauseRule, resumeRule } = action.payload;
10
+ const requestBody = mapAutoTransferRuleLocalDataToPayload(state$.value.autotransferRulesState.ruleUpdateLocalData, pauseRule, resumeRule);
11
+ return zeniAPI
12
+ .putAndGetJSON(`${zeniAPI.apiEndPoints.bankingMicroServiceBaseUrl}/1.0/rules/transfer/auto/${ruleId}`, requestBody)
13
+ .pipe(mergeMap((response) => {
14
+ if (isSuccessResponse(response) && response.data != null) {
15
+ const rule = mapPayloadToAutoTransferRule(response.data.auto_transfer_rule);
16
+ const isPauseOrResumeOnly = Object.keys(requestBody).length === 1 &&
17
+ 'is_active' in requestBody;
18
+ const messageSection = isPauseOrResumeOnly
19
+ ? requestBody.is_active === false
20
+ ? 'auto_transfer_rule_pause'
21
+ : 'auto_transfer_rule_resume'
22
+ : 'auto_transfer_rule_update';
23
+ const actions = [
24
+ updateAutoTransferRuleSuccess({ rule }),
25
+ openSnackbar({
26
+ messageSection,
27
+ messageText: 'success',
28
+ type: 'success',
29
+ variables: [
30
+ {
31
+ variableName: '__ruleName__',
32
+ variableValue: rule.ruleType === 'minimum_balance'
33
+ ? 'Maintain a Minimum Balance'
34
+ : rule.ruleType === 'recurring'
35
+ ? 'Make a Recurring Transfer'
36
+ : 'Distribute Balance by Percentage',
37
+ },
38
+ ],
39
+ }),
40
+ ];
41
+ return from(actions);
42
+ }
43
+ else {
44
+ return from([
45
+ updateAutoTransferRuleFailure({
46
+ ruleId,
47
+ fetchState: 'Error',
48
+ error: response.status,
49
+ }),
50
+ openSnackbar({
51
+ messageSection: 'auto_transfer_rule_update',
52
+ messageText: 'failed',
53
+ type: 'error',
54
+ variables: [
55
+ {
56
+ variableName: '_api-error_',
57
+ variableValue: response.status.message,
58
+ },
59
+ ],
60
+ }),
61
+ ]);
62
+ }
63
+ }), catchError((error) => of(updateAutoTransferRuleFailure({
64
+ ruleId,
65
+ fetchState: 'Error',
66
+ error: createZeniAPIStatus('Unexpected Error', 'Update auto transfer rule REST API call errored out ' +
67
+ JSON.stringify(error)),
68
+ }))));
69
+ }));
@@ -6,7 +6,7 @@ import { fetchTreasuryStatementList } from '../../treasuryStatementList/treasury
6
6
  import { fetchTreasuryTaxLetterList } from '../../treasuryTaxLetterList/treasuryTaxLetterListReducer';
7
7
  import { fetchTreasuryHistory, fetchTreasuryOverviewDetail, fetchTreasurySummaryFailure, fetchTreasurySummarySuccess, fetchTreasuryTransactionList, } from '../treasuryDetailReducer';
8
8
  export const fetchTreasuryDetailEpic = (actions$, state$, zeniAPI) => actions$.pipe(filter(fetchTreasuryOverviewDetail.match), switchMap((action) => {
9
- const { cacheOverride } = action.payload;
9
+ const { cacheOverride, fetchOnlySummary } = action.payload;
10
10
  const state = state$.value;
11
11
  const treasuryActions = [];
12
12
  if (cacheOverride === true) {
@@ -17,7 +17,7 @@ export const fetchTreasuryDetailEpic = (actions$, state$, zeniAPI) => actions$.p
17
17
  treasuryActions.push(fetchTreasuryHistory());
18
18
  treasuryActions.push(fetchTreasuryTransactionList(true));
19
19
  }
20
- else {
20
+ else if (fetchOnlySummary !== true) {
21
21
  // Check treasury statement list state
22
22
  const treasuryStatementListState = state.treasuryStatementListState;
23
23
  if (treasuryStatementListState.hasValidState() === false &&
@@ -30,10 +30,11 @@ const treasuryDetail = createSlice({
30
30
  reducer(draft) {
31
31
  draft.fetchState = 'In-Progress';
32
32
  },
33
- prepare(cacheOverride) {
33
+ prepare(cacheOverride, fetchOnlySummary) {
34
34
  return {
35
35
  payload: {
36
36
  cacheOverride,
37
+ fetchOnlySummary,
37
38
  },
38
39
  };
39
40
  },
@@ -109,7 +109,7 @@ export const allTaskPriority = [
109
109
  },
110
110
  {
111
111
  code: 'medium',
112
- name: 'Normal',
112
+ name: 'Medium',
113
113
  },
114
114
  {
115
115
  code: 'low',
package/lib/index.d.ts CHANGED
@@ -267,7 +267,7 @@ import { clearExpenseAutomationFluxAnalysisView, fetchFluxAnalysisView, reviewFl
267
267
  import { clearJeScheduleLocalData as clearExpenseAutomationJEScheduleLocalData, clearExpenseAutomationJESchedulesView, fetchJeSchedulesPage as fetchExpenseAutomationJESchedulesPage, ignoreRecommendedJeSchedule as ignoreExpenseAutomationJESchedule, initializeAccountSettingsView as initializeJeAccountSettingsView, initializeJeScheduleLocalData, removeJeScheduleTransactionKey, retryJeSchedule as retryExpenseAutomationJESchedule, saveAccountSettings as saveJeAccountSettings, saveAccountSettingsLocalData as saveJeAccountSettingsLocalData, updateJeScheduleLocalDataById, updateJeScheduleTransactionKeys } from './view/expenseAutomationView/reducers/jeSchedulesViewReducer';
268
268
  import { fetchMissingReceipts as fetchExpenseAutomationMissingReceipts, markMissingReceiptAsDone as markExpenseAutomationMissingReceiptAsDone, updateMissingReceiptUploadState as updateExpenseAutomationMissingReceiptUploadState, updateMissingReceiptsUIState as updateExpenseAutomationMissingReceiptsUIState, uploadMissingReceiptSuccess as uploadExpenseAutomationMissingReceiptSuccess } from './view/expenseAutomationView/reducers/missingReceiptsViewReducer';
269
269
  import { deleteAccountStatement, fetchReconciliation as fetchReconciliationView, saveReconciliationDetail as saveExpenseAutomationReconciliationDetail, saveReconciliationReview as saveExpenseAutomationReconciliationReview, setConnectionInProgressForAccount as setConnectionInProgressForAccountReconciliation, setStatementParseInProgress, updateAccountReconciliationLocalData as updateExpenseAutomationAccountReconciliationLocalData, updateSelectedAccountId as updateExpenseAutomationAccountReconciliationSelectedAccountId, updateSelectedTab as updateExpenseAutomationAccountReconciliationSelectedTab, updateReconListScrollPosition as updateExpenseAutomationReconListScrollPosition, updateReviewTabSortState as updateExpenseAutomationReconReviewTabListSortState, updateReviewTabLocalData as updateExpenseAutomationReconReviewTabLocalData, updateReconcileTabListScrollState as updateExpenseAutomationReconcileTabListScrollState, updateReconcileTabListSortState as updateExpenseAutomationReconcileTabListSortState, updateReconcileTabLocalData as updateExpenseAutomationReconcileTabLocalData, updateSelectedDrawerAccountId as updateExpenseAutomationSelectedDrawerAccountId, updateStatementUploadChosen, uploadAccountStatement } from './view/expenseAutomationView/reducers/reconciliationViewReducer';
270
- import { backgroundRefetchReviewTab, clearExpenseAutomationTransactionsView, fetchTransactionCategorization, fetchTransactionCategorizationFailure, fetchTransactionCategorizationView, initializeTransactionCategorizationViewLocalData, markTransactionAsNotMiscategorized, saveTransactionCategorization, saveTransactionCategorizationLocalData, setAllItemsToCategoryClassInLocalDataForCategorization, setEntityRecommendationForLineIdsForCategorization, syncTransactionCategorizationFromDetailSave, updateCurrentSelectedTransactionCategorizationTab, updateSelectedCheckboxTransactionIds, updateSelectedCustomerForTransaction, updateSelectedTransactionId, updateSelectedVendorForTransaction, updateTransactionCategorization, updateTransactionCategorizationSaveStatus, updateTransactionCategorizationUIState } from './view/expenseAutomationView/reducers/transactionsViewReducer';
270
+ import { backgroundRefetchReviewTab, clearExpenseAutomationTransactionsView, fetchTransactionCategorization, fetchTransactionCategorizationFailure, fetchTransactionCategorizationView, initializeTransactionCategorizationViewLocalData, markTransactionAsNotMiscategorized, saveTransactionCategorization, saveTransactionCategorizationLocalData, setAllItemsToCategoryClassInLocalDataForCategorization, setEntityRecommendationForLineIdsForCategorization, syncTransactionCategorizationFromDetailSave, updateCurrentSelectedTransactionCategorizationTab, updateSelectedCheckboxTransactionIds, updateSelectedCustomerForTransaction, updateSelectedTransactionId, updateSelectedVendorForTransaction, updateTransactionCategorization, updateTransactionCategorizationSaveStatus, updateTransactionCategorizationUIState, updateTransactionCategorizationUploadReceiptState, uploadTransactionCategorizationReceiptSuccess } from './view/expenseAutomationView/reducers/transactionsViewReducer';
271
271
  import { ExpenseAutomationStepDetails, ExpenseAutomationViewSelector } from './view/expenseAutomationView/selectorTypes/expenseAutomationViewSelectorTypes';
272
272
  import { ExpenseAutomationFluxAnalysisViewSelector, FluxAnalysisOperatingExpenseView, FluxAnalysisSectionType, FluxAnalysisVendorView, FluxAnalysisViewSectionReport, FluxVendorAccountsAndClassesView } from './view/expenseAutomationView/selectorTypes/fluxAnalysisViewSelectorTypes';
273
273
  import { JEAccountSettingsView } from './view/expenseAutomationView/selectorTypes/jeAccountSettingsViewSelectorTypes';
@@ -451,7 +451,7 @@ import { ChargeCardStatementsSelectorView, getChargeCardStatements } from './vie
451
451
  import { fetchDepositAccountListForCards, fetchIssueCardPage, issueChargeCards, resetIssueChargeCardForm, updateChargeCardsLocalStore, updateCustomAddressId } from './view/spendManagement/chargeCards/issueChargeCard/issueChargeCardReducer';
452
452
  import { IssueChargeCardSelectorView, getIssueChargeCardView } from './view/spendManagement/chargeCards/issueChargeCard/issueChargeCardSelector';
453
453
  import { ActiveChargeCardCount, ActiveDebitCardCount, ActiveDebitCardCountByUserId, IssueChargeCardLocalData, IssueChargeCardState, PhysicalCreditCardData, PhysicalDebitCardData, VirtualCreditCardData, VirtualDebitCardData } from './view/spendManagement/chargeCards/issueChargeCard/issueChargeCardState';
454
- import { HistoricEvent, HistoricEventUpdate } from './view/spendManagement/commonHistoryView/commonHistory';
454
+ import { CommonHistoryView, HistoricEvent, HistoricEventUpdate } from './view/spendManagement/commonHistoryView/commonHistory';
455
455
  import { ActivityHistorySelectorView } from './view/spendManagement/commonHistoryView/commonHistorySelector';
456
456
  import { clearSetupViewDataInLocalStore, enableSetup, saveCompnayOfficerAdditionalDocumentsInLocalStore, saveCompnayOfficerPhoneInLocalStore, saveIndustryAndIncDateInLocalStore, saveSetupViewDataInLocalStore, saveTreasuryAdditionalDocumentsInLocalStore, updateBusinessVerificationDetails, updateSelectedCompanyOfficer, updateSetupViewLocalStoreData } from './view/spendManagement/commonSetup/setupViewReducer';
457
457
  import { BusinessVerificationDetails, CompanyDetails, CompanyOfficersDetails, FundingAccount, SetupView, getBusinessVerificationDetails, getCommonSetupViewDetails } from './view/spendManagement/commonSetup/setupViewSelector';
@@ -621,7 +621,7 @@ export { TransactionsOrder, COABalancesSliceOrder, EntityOrder, Section, Section
621
621
  export { ClassesViewSelectorReportV2 };
622
622
  export { BalancesTimeseries, TrendTimeseries, BalanceKind };
623
623
  export { fetchMonthEndCloseChecks, fetchMonthClosePerformanceTrend, MonthClosePerformanceTrend, MonthEndCloseCheck, getMonthEndCloseChecksViewByTenantId, MonthEndCloseChecksView, MonthEndCloseCheckFrequency, MonthCloseCheckMetrics, ALL_MONTH_END_CLOSE_CHECKS_FREQUENCY, MonthEndAuditSummary, };
624
- export { ExpenseAutomationViewSelector, ExpenseAutomationStepDetails, ExpenseAutomationViewType, ExpenseAutomationMissingReceiptsViewSelector, ExpenseAutomationFluxAnalysisViewSelector, FluxAnalysisVendorView, FluxAnalysisViewSectionReport, FluxVendorAccountsAndClassesView, ExpenseAutomationMissingReceiptsViewUIState, ExpenseAutomationMissingReceiptsViewState, ExpenseAutomationViewState, ExpenseAutomationTransactionsTab, ExpenseAutomationMissingReceiptsSortKey, getExpenseAutomationView, toExpenseAutomationMissingReceiptsSortKey, toExpenseAutomationTransactionsTabKey, toExpenseAutomationViewType, uploadExpenseAutomationMissingReceiptSuccess, markExpenseAutomationMissingReceiptAsDone, fetchAllExpenseAutomationTabs, refreshExpenseAutomationCurrentTab, updateCurrentSelectedTransactionCategorizationTab, fetchExpenseAutomationMissingReceipts, fetchFluxAnalysisView, clearExpenseAutomationFluxAnalysisView, updateOperatingExpensesIdsForReview as updateFluxOperatingExpensesIdsForReview, updateSelectedSectionIdsForReview as updateFluxAnalysisSelectedSectionIdsForReview, reviewFluxAnalysisView, updateExpenseAutomationMissingReceiptUploadState, updateExpenseAutomationMissingReceiptsUIState, FluxAnalysisOperatingExpenseView, FluxAnalysisSectionType, getExpenseAutomationFluxAnalysisView, FluxAnalysisSortKey, FluxAnalysisActionType, FluxBalancesByMonth, updateCurrentSelectedView, updateCurrentSelectedPeriod, getExpenseAutomationTransactionView, ReconReconcileSortKey, ReconciliationReconcileTabLocalData, FluxAnalysisReviewStatus, updateFluxAnalysisViewUIState, FluxAnalysisViewUIState, updateFluxAnalysisViewPageMetaData, MAX_SELECTION_LIMIT, checkIfAllLineItemsAreCategoryClassFilled, getLineItemsByTransactionIdsFromLocalData, isAnyItemWithUncategorizedExpenseAccount, SaveExpenseAutomationReconciliationActionType, saveExpenseAutomationReconciliationDetail, updateExpenseAutomationReconcileTabListScrollState, updateExpenseAutomationReconReviewTabListSortState, updateExpenseAutomationReconcileTabListSortState, updateExpenseAutomationReconcileTabLocalData, updateExpenseAutomationAccountReconciliationSelectedTab, updateExpenseAutomationAccountReconciliationSelectedAccountId, ExpenseAutomationReconciliationViewSelector, getExpenseAutomationReconciliationView, AccountReconciliationBySection, fetchReconciliationView, uploadAccountStatementIntoDocumentAI, UploadStatementDocumentAIResponse, updateExpenseAutomationReconListScrollPosition, setConnectionInProgressForAccountReconciliation, AccountReconciliationByAccount, AccountReconciliationEntity, getAccountReconByAccountIdAndSelectedPeriod, ExpenseAutomationReconciliationViewTab, toReconciliationTabsType, isAccountReconReport, ReconReviewSortKey, AccountReconSectionID, ReconciliationReviewTabLocalData, TransactionsToReview, RecommendedActionCodeType, ReconciliationStatusCodeType, BalanceDataStatusCodeType, updateExpenseAutomationReconReviewTabLocalData, updateExpenseAutomationSelectedDrawerAccountId, saveExpenseAutomationReconciliationReview, updateExpenseAutomationAccountReconciliationLocalData, BankStatusCodeType, ReconciliationAccountSourceType, toReconciliationAccountSource, StatementStatusCodeType, AccountReconciliationLocalData, StatementDataStatusCodeType, deleteAccountStatement, uploadAccountStatement, UploadStatementDocumentAIPayload, updateStatementUploadChosen, isReviewTransactionBankTransferType, isReviewTransactionBillPaymentType, isReviewTransactionCreditCardPaymentType, isReviewTransactionDepositType, isReviewTransactionExpenseType, isReviewTransactionCreditCardCreditType, setStatementParseInProgress, };
624
+ export { ExpenseAutomationViewSelector, ExpenseAutomationStepDetails, ExpenseAutomationViewType, ExpenseAutomationMissingReceiptsViewSelector, ExpenseAutomationFluxAnalysisViewSelector, FluxAnalysisVendorView, FluxAnalysisViewSectionReport, FluxVendorAccountsAndClassesView, ExpenseAutomationMissingReceiptsViewUIState, ExpenseAutomationMissingReceiptsViewState, ExpenseAutomationViewState, ExpenseAutomationTransactionsTab, ExpenseAutomationMissingReceiptsSortKey, getExpenseAutomationView, toExpenseAutomationMissingReceiptsSortKey, toExpenseAutomationTransactionsTabKey, toExpenseAutomationViewType, uploadExpenseAutomationMissingReceiptSuccess, markExpenseAutomationMissingReceiptAsDone, fetchAllExpenseAutomationTabs, refreshExpenseAutomationCurrentTab, updateCurrentSelectedTransactionCategorizationTab, fetchExpenseAutomationMissingReceipts, fetchFluxAnalysisView, clearExpenseAutomationFluxAnalysisView, updateOperatingExpensesIdsForReview as updateFluxOperatingExpensesIdsForReview, updateSelectedSectionIdsForReview as updateFluxAnalysisSelectedSectionIdsForReview, reviewFluxAnalysisView, updateExpenseAutomationMissingReceiptUploadState, updateExpenseAutomationMissingReceiptsUIState, updateTransactionCategorizationUploadReceiptState, uploadTransactionCategorizationReceiptSuccess, FluxAnalysisOperatingExpenseView, FluxAnalysisSectionType, getExpenseAutomationFluxAnalysisView, FluxAnalysisSortKey, FluxAnalysisActionType, FluxBalancesByMonth, updateCurrentSelectedView, updateCurrentSelectedPeriod, getExpenseAutomationTransactionView, ReconReconcileSortKey, ReconciliationReconcileTabLocalData, FluxAnalysisReviewStatus, updateFluxAnalysisViewUIState, FluxAnalysisViewUIState, updateFluxAnalysisViewPageMetaData, MAX_SELECTION_LIMIT, checkIfAllLineItemsAreCategoryClassFilled, getLineItemsByTransactionIdsFromLocalData, isAnyItemWithUncategorizedExpenseAccount, SaveExpenseAutomationReconciliationActionType, saveExpenseAutomationReconciliationDetail, updateExpenseAutomationReconcileTabListScrollState, updateExpenseAutomationReconReviewTabListSortState, updateExpenseAutomationReconcileTabListSortState, updateExpenseAutomationReconcileTabLocalData, updateExpenseAutomationAccountReconciliationSelectedTab, updateExpenseAutomationAccountReconciliationSelectedAccountId, ExpenseAutomationReconciliationViewSelector, getExpenseAutomationReconciliationView, AccountReconciliationBySection, fetchReconciliationView, uploadAccountStatementIntoDocumentAI, UploadStatementDocumentAIResponse, updateExpenseAutomationReconListScrollPosition, setConnectionInProgressForAccountReconciliation, AccountReconciliationByAccount, AccountReconciliationEntity, getAccountReconByAccountIdAndSelectedPeriod, ExpenseAutomationReconciliationViewTab, toReconciliationTabsType, isAccountReconReport, ReconReviewSortKey, AccountReconSectionID, ReconciliationReviewTabLocalData, TransactionsToReview, RecommendedActionCodeType, ReconciliationStatusCodeType, BalanceDataStatusCodeType, updateExpenseAutomationReconReviewTabLocalData, updateExpenseAutomationSelectedDrawerAccountId, saveExpenseAutomationReconciliationReview, updateExpenseAutomationAccountReconciliationLocalData, BankStatusCodeType, ReconciliationAccountSourceType, toReconciliationAccountSource, StatementStatusCodeType, AccountReconciliationLocalData, StatementDataStatusCodeType, deleteAccountStatement, uploadAccountStatement, UploadStatementDocumentAIPayload, updateStatementUploadChosen, isReviewTransactionBankTransferType, isReviewTransactionBillPaymentType, isReviewTransactionCreditCardPaymentType, isReviewTransactionDepositType, isReviewTransactionExpenseType, isReviewTransactionCreditCardCreditType, setStatementParseInProgress, };
625
625
  export { JEScheduleLocalData };
626
626
  export { ExpenseAutomationJESchedulesViewSelector, JEAccountSettingsView, JEScheduledTransactionWithFailedEntries, };
627
627
  export { fetchTransactionCategorization, fetchTransactionCategorizationView, updateTransactionCategorizationUIState, updateSelectedCheckboxTransactionIds, setEntityRecommendationForLineIdsForCategorization, initializeTransactionCategorizationViewLocalData, setAllItemsToCategoryClassInLocalDataForCategorization, saveTransactionCategorizationLocalData, fetchTransactionCategorizationFailure, saveTransactionCategorization, updateTransactionCategorization, updateTransactionCategorizationSaveStatus, markTransactionAsNotMiscategorized, updateSelectedVendorForTransaction, updateSelectedCustomerForTransaction, updateSelectedTransactionId, syncTransactionCategorizationFromDetailSave, backgroundRefetchReviewTab, clearExpenseAutomationTransactionsView, TransactionsSortKey, toTransactionsSortKey, TransactionsTab, TransactionCategorizationLineItemData, TransactionReviewLocalData, SupportedTransactionCategorization, ExpenseAutomationTransactionsViewState, ExpenseAutomationTransactionsViewUIState, ExpenseAutomationTransactionViewSelector, TransactionReviewLocalDataSelectorView, };
@@ -798,7 +798,7 @@ export { VendorListViewSortKey, VendorViewUIState, VendorListSelectorView, Vendo
798
798
  export { fetchEntityRecommendationsByTransactionId, fetchRecommendationByEntityId, fetchRecommendationByEntityName, };
799
799
  export { fetchOwnerList };
800
800
  export { ZeniAccountsConfigSelectorView, getZeniAccountsConfigDetail, ZeniAccountListSelectorView, getZeniAccountList, fetchZeniAccountList, fetchAccountList, DepositAccount, createCheckingAccount, fetchPaymentAccountList, unlinkPaymentAccount, getDepositAccountDetail, DepositAccountDetailSelectorView, DepositAccountListSelectorView, getAllDepositAccounts, getDepositAccountDetailForPDF, DepositAccountDetailForPDF, fetchDepositAccount, fetchZeniAccountsConfig, AccountHistoryWithBalances, TransferDetailLocalData, ReviewTransferDetail, updateTransferMoneyLocalData, updateTransferToLocalData, updateDepositToLocalData, transferMoney, getTransferDetail, TransferDetailSelectorView, clearTransferDetail, clearReviewTransferDetail, fetchReviewTransferDetail, fetchDepositAccountDetail, DepositAccountTransaction, DepositTransactionStatusCode, DepositTransactionStatus, CheckDepositLocalData, depositCheck, updateCheckDepositLocalData, clearCheckDeposit, CheckDepositSelectorView, getCheckDepositDetail, updateDepositAccount, fetchDepositAccountHistorySuccess, fetchDepositAccountHistoryFailure, DepositAccountUpdateType, ZeniAccountSummaryWithBalance, fetchZeniAccStatementPage, getZeniAccStatements, ZeniAccStatementsSelectorView, ZeniAccountPaymentMethod, };
801
- export { HistoricEvent, HistoricEventUpdate, ActivityHistorySelectorView };
801
+ export { CommonHistoryView, HistoricEvent, HistoricEventUpdate, ActivityHistorySelectorView, };
802
802
  export { ActivityRealTimeApprovalSelectorView, Statement, fetchDepositAccountTransactionList, DepositAccountTransactionListSelectorView, getDepositAccountTransactionList, };
803
803
  export { TransactionVendorLocalData, TransactionVendorState, TransactionVendorViewState, };
804
804
  export { TransactionVendorSelectorView, getTransactionVendorView, TransactionVendorDetails, };
@@ -867,6 +867,10 @@ export { TreasuryStatementsSelectorView, getTreasuryStatements, } from './view/s
867
867
  export { fetchTreasuryTaxLetterList } from './view/spendManagement/treasury/treasuryTaxLetterList/treasuryTaxLetterListReducer';
868
868
  export { TreasuryTaxLettersSelectorView, getTreasuryTaxLetters, } from './view/spendManagement/treasury/treasuryTaxLetterList/treasuryTaxLetterListSelector';
869
869
  export { TreasuryTransactionStatus } from './view/spendManagement/treasury/treasuryList/treasuryDetailPayload';
870
+ export { fetchAutoTransferRules, createAutoTransferRule, updateAutoTransferRule, deleteAutoTransferRule, fetchAutoTransferRuleHistory, updateRuleLocalData, clearRuleUpdateLocalData, } from './view/spendManagement/autotransferRules/autoTransferRulesReducer';
871
+ export { AutoTransferRulesSelectorView, getAutoTransferRules, getAutoTransferRuleById, getAutoTransferRuleHistory, } from './view/spendManagement/autotransferRules/autoTransferRulesSelector';
872
+ export { AutoTransferRule } from './view/spendManagement/autotransferRules/autoTransferRulesState';
873
+ export { AutoTransferRuleType, AutoTransferRuleFrequency, AutoTransferRuleLocalData, } from './view/spendManagement/autotransferRules/autoTransferRulesPayload';
870
874
  export type { TransactionActivityLog } from './entity/transactionActivityLog/transactionActivityLogState';
871
875
  export { fetchTransactionActivityLog } from './view/transactionActivityLogView/transactionActivityLogViewReducer';
872
876
  export { TransactionActivityLogViewSelectorView, getTransactionActivityLogView, } from './view/transactionActivityLogView/transactionActivityLogViewSelector';