@zeniai/client-epic-state 5.0.71 → 5.0.72
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.
- package/lib/coreEpics.js +1 -1
- package/lib/entity/account/accountSelector.d.ts +1 -1
- package/lib/entity/account/accountState.d.ts +1 -1
- package/lib/entity/account/subAccountSelector.d.ts +1 -1
- package/lib/entity/aiAccountantCustomer/aiAccountantCustomerPayload.js +3 -1
- package/lib/entity/aiAccountantCustomer/aiAccountantCustomerReducer.js +2 -1
- package/lib/entity/aiAccountantCustomer/aiAccountantCustomerSelector.d.ts +1 -1
- package/lib/entity/chargeCard/chargeCardReducer.d.ts +2 -19
- package/lib/entity/chargeCard/chargeCardReducer.js +2 -35
- package/lib/entity/chargeCardTransaction/chargeCardTransactionReducer.d.ts +1 -14
- package/lib/entity/chargeCardTransaction/chargeCardTransactionReducer.js +2 -36
- package/lib/entity/sectionProjectView/sectionProjectViewReducer.d.ts +1 -1
- package/lib/entity/sectionProjectView/sectionProjectViewSelector.js +1 -1
- package/lib/entity/tenant/SessionManager.js +3 -6
- package/lib/entity/tenant/clearAllEpic.d.ts +2 -2
- package/lib/entity/tenant/clearAllEpic.js +2 -2
- package/lib/entity/tenant/epic/saveAPIKeyConnectionEpic.js +2 -6
- package/lib/entity/tenant/epic/saveOAuthConnectionEpic.js +2 -6
- package/lib/entity/tenant/tenantReducer.js +1 -6
- package/lib/entity/transaction/payloadTypes/transactionLinePayload.js +1 -3
- package/lib/epic.d.ts +9 -9
- package/lib/epic.js +10 -10
- package/lib/esm/coreEpics.js +1 -1
- package/lib/esm/entity/aiAccountantCustomer/aiAccountantCustomerPayload.js +3 -1
- package/lib/esm/entity/aiAccountantCustomer/aiAccountantCustomerReducer.js +2 -1
- package/lib/esm/entity/chargeCard/chargeCardReducer.js +1 -34
- package/lib/esm/entity/chargeCardTransaction/chargeCardTransactionReducer.js +1 -35
- package/lib/esm/entity/sectionProjectView/sectionProjectViewSelector.js +1 -1
- package/lib/esm/entity/tenant/SessionManager.js +1 -4
- package/lib/esm/entity/tenant/clearAllEpic.js +2 -2
- package/lib/esm/entity/tenant/epic/saveAPIKeyConnectionEpic.js +2 -6
- package/lib/esm/entity/tenant/epic/saveOAuthConnectionEpic.js +2 -6
- package/lib/esm/entity/tenant/tenantReducer.js +1 -6
- package/lib/esm/entity/transaction/payloadTypes/transactionLinePayload.js +1 -3
- package/lib/esm/epic.js +10 -10
- package/lib/esm/index.js +13 -17
- package/lib/esm/reducer.js +2 -2
- package/lib/esm/view/aiAccountantView/epics/fetchAiAccountantCustomersEpic.js +5 -2
- package/lib/esm/view/aiAccountantView/epics/fetchAiAccountantJobsEpic.js +5 -2
- package/lib/esm/view/aiAccountantView/epics/triggerAiAccountantJobEpic.js +1 -4
- package/lib/esm/view/companyTaskManagerView/companyTaskManagerViewSelector.js +1 -1
- package/lib/esm/view/companyTaskManagerView/epics/fetchTaskManagerMetricsEpic.js +1 -1
- package/lib/esm/view/expenseAutomationView/epics/missingReceipts/fetchBulkUploadBatchesEpic.js +2 -2
- package/lib/esm/view/expenseAutomationView/epics/missingReceipts/fetchCompletedTransactionsEpic.js +1 -2
- package/lib/esm/view/expenseAutomationView/epics/missingReceipts/restoreBulkUploadAutomatchingOnMountEpic.js +6 -8
- package/lib/esm/view/expenseAutomationView/epics/missingReceipts/searchTransactionsForManualMatchEpic.js +1 -7
- package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationEpic.js +1 -11
- package/lib/esm/view/expenseAutomationView/reducers/missingReceiptsViewReducer.js +1 -2
- package/lib/esm/view/expenseAutomationView/reducers/transactionsViewReducer.js +1 -127
- package/lib/esm/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +1 -20
- package/lib/esm/view/expenseAutomationView/types/missingReceiptsViewState.js +2 -0
- package/lib/esm/view/financeStatement/financeStatementSelector.js +1 -1
- package/lib/esm/view/spendManagement/chargeCards/cashbackDetail/cashbackDetailReducer.js +2 -3
- package/lib/esm/view/spendManagement/chargeCards/chargeCardConfig/chargeCardConfigReducer.js +2 -3
- package/lib/esm/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailReducer.js +18 -55
- package/lib/esm/view/spendManagement/chargeCards/chargeCardDetail/fetchChargeCardDetailEpic.js +2 -16
- package/lib/esm/view/spendManagement/chargeCards/chargeCardDetail/fetchChargeCardDetailPageEpic.js +4 -5
- package/lib/esm/view/spendManagement/chargeCards/chargeCardList/chargeCardListReducer.js +9 -26
- package/lib/esm/view/spendManagement/chargeCards/chargeCardList/fetchChargeCardListPageEpic.js +6 -9
- package/lib/esm/view/spendManagement/chargeCards/chargeCardPaymentHistory/chargeCardPaymentHistoryReducer.js +2 -3
- package/lib/esm/view/spendManagement/chargeCards/chargeCardPaymentHistory/fetchChargeCardPaymentPageEpic.js +1 -1
- package/lib/esm/view/spendManagement/chargeCards/chargeCardRepaymentDetail/chargeCardRepaymentDetailReducer.js +3 -7
- package/lib/esm/view/taskManager/cannedResponsesView/epics/fetchCannedResponsesEpic.js +1 -1
- package/lib/esm/view/taskManager/cannedResponsesView/epics/saveCannedResponseEpic.js +1 -1
- package/lib/esm/view/taskManager/taskDetailView/epics/unsnoozeTaskEpic.js +1 -1
- package/lib/esm/view/transactionDetail/transactionDetailSelector.js +1 -7
- package/lib/index.d.ts +15 -19
- package/lib/index.js +58 -72
- package/lib/reducer.d.ts +2 -2
- package/lib/reducer.js +2 -2
- package/lib/tsconfig.typecheck.tsbuildinfo +1 -0
- package/lib/view/aiAccountantView/aiAccountantViewPayload.d.ts +2 -2
- package/lib/view/aiAccountantView/aiAccountantViewReducer.d.ts +1 -1
- package/lib/view/aiAccountantView/epics/fetchAiAccountantCustomersEpic.js +5 -2
- package/lib/view/aiAccountantView/epics/fetchAiAccountantJobsEpic.js +5 -2
- package/lib/view/aiAccountantView/epics/triggerAiAccountantJobEpic.js +1 -4
- package/lib/view/companyTaskManagerView/companyTaskManagerViewSelector.d.ts +1 -1
- package/lib/view/companyTaskManagerView/companyTaskManagerViewSelector.js +1 -1
- package/lib/view/expenseAutomationView/epics/missingReceipts/fetchBulkUploadBatchesEpic.js +2 -2
- package/lib/view/expenseAutomationView/epics/missingReceipts/fetchCompletedTransactionsEpic.js +1 -2
- package/lib/view/expenseAutomationView/epics/missingReceipts/restoreBulkUploadAutomatchingOnMountEpic.js +6 -8
- package/lib/view/expenseAutomationView/epics/missingReceipts/searchTransactionsForManualMatchEpic.js +1 -7
- package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationEpic.d.ts +2 -2
- package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationEpic.js +0 -10
- package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +1 -1
- package/lib/view/expenseAutomationView/payload/transactionCategorizationPayload.d.ts +0 -21
- package/lib/view/expenseAutomationView/reducers/missingReceiptsViewReducer.d.ts +1 -2
- package/lib/view/expenseAutomationView/reducers/missingReceiptsViewReducer.js +1 -2
- package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.d.ts +3 -9
- package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.js +2 -128
- package/lib/view/expenseAutomationView/selectorTypes/missingReceiptsSelectorTypes.d.ts +1 -2
- package/lib/view/expenseAutomationView/selectorTypes/transactionsViewSelectorTypes.d.ts +0 -14
- package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +1 -20
- package/lib/view/expenseAutomationView/types/missingReceiptsViewState.d.ts +2 -1
- package/lib/view/expenseAutomationView/types/missingReceiptsViewState.js +4 -1
- package/lib/view/expenseAutomationView/types/transactionsViewState.d.ts +2 -41
- package/lib/view/financeStatement/financeStatementSelector.js +1 -1
- package/lib/view/profitAndLossProjectView/profitAndLossProjectViewSelectorTypes.d.ts +1 -1
- package/lib/view/spendManagement/chargeCards/cashbackDetail/cashbackDetailReducer.d.ts +1 -3
- package/lib/view/spendManagement/chargeCards/cashbackDetail/cashbackDetailReducer.js +2 -3
- package/lib/view/spendManagement/chargeCards/chargeCardConfig/chargeCardConfigReducer.d.ts +1 -3
- package/lib/view/spendManagement/chargeCards/chargeCardConfig/chargeCardConfigReducer.js +2 -3
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailReducer.js +18 -55
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/fetchChargeCardDetailEpic.js +2 -16
- package/lib/view/spendManagement/chargeCards/chargeCardDetail/fetchChargeCardDetailPageEpic.js +4 -5
- package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListReducer.d.ts +3 -18
- package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListReducer.js +10 -27
- package/lib/view/spendManagement/chargeCards/chargeCardList/fetchChargeCardListPageEpic.js +6 -9
- package/lib/view/spendManagement/chargeCards/chargeCardPaymentHistory/chargeCardPaymentHistoryReducer.d.ts +1 -3
- package/lib/view/spendManagement/chargeCards/chargeCardPaymentHistory/chargeCardPaymentHistoryReducer.js +2 -3
- package/lib/view/spendManagement/chargeCards/chargeCardPaymentHistory/fetchChargeCardPaymentPageEpic.js +1 -1
- package/lib/view/spendManagement/chargeCards/chargeCardRepaymentDetail/chargeCardRepaymentDetailReducer.d.ts +1 -3
- package/lib/view/spendManagement/chargeCards/chargeCardRepaymentDetail/chargeCardRepaymentDetailReducer.js +3 -7
- package/lib/view/transactionDetail/transactionDetailSelector.js +1 -7
- package/lib/view/zeniOAuthView/zeniOAuthSelector.d.ts +1 -1
- package/package.json +4 -9
- package/lib/commonStateTypes/cacheOverrideFetchReducer.d.ts +0 -17
- package/lib/commonStateTypes/cacheOverrideFetchReducer.js +0 -20
- package/lib/commonStateTypes/pusherActions.d.ts +0 -11
- package/lib/commonStateTypes/pusherActions.js +0 -6
- package/lib/esm/commonStateTypes/cacheOverrideFetchReducer.js +0 -16
- package/lib/esm/commonStateTypes/pusherActions.js +0 -3
- package/lib/esm/view/expenseAutomationView/types/completedSubTab.js +0 -17
- package/lib/view/expenseAutomationView/types/completedSubTab.d.ts +0 -10
- package/lib/view/expenseAutomationView/types/completedSubTab.js +0 -21
|
@@ -19,7 +19,9 @@ const toAccuracyByModel = (accuracyPayload) => {
|
|
|
19
19
|
export const toAiAccountantEnrollment = (payload) => ({
|
|
20
20
|
status: toAiAccountantEnrollmentStatus(payload.status),
|
|
21
21
|
accuracy: toAccuracyByModel(payload.accuracy),
|
|
22
|
-
latestTraining: payload.latest_training != null
|
|
22
|
+
latestTraining: payload.latest_training != null
|
|
23
|
+
? date(payload.latest_training)
|
|
24
|
+
: undefined,
|
|
23
25
|
latestTransactionSync: payload.latest_transaction_sync != null
|
|
24
26
|
? date(payload.latest_transaction_sync)
|
|
25
27
|
: undefined,
|
|
@@ -27,7 +27,8 @@ const aiAccountantCustomer = createSlice({
|
|
|
27
27
|
const existing = draft.jobsByTenantId[action.payload.tenantId] ?? [];
|
|
28
28
|
const jobMap = new Map(existing.map((job) => [job.jobId, job]));
|
|
29
29
|
mappedJobs.forEach((job) => jobMap.set(job.jobId, job));
|
|
30
|
-
draft.jobsByTenantId[action.payload.tenantId] =
|
|
30
|
+
draft.jobsByTenantId[action.payload.tenantId] =
|
|
31
|
+
Array.from(jobMap.values());
|
|
31
32
|
}
|
|
32
33
|
else {
|
|
33
34
|
draft.jobsByTenantId[action.payload.tenantId] = mappedJobs;
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { createSlice } from '@reduxjs/toolkit';
|
|
2
2
|
import assignWith from 'lodash/assignWith';
|
|
3
|
-
import { toAmount } from '../../commonStateTypes/amount';
|
|
4
|
-
import { toCardStatusCodeType } from './chargeCard';
|
|
5
3
|
import { mapChargeCardPayloadToChargeCard, } from './chargeCardPayload';
|
|
6
4
|
export const initialState = {
|
|
7
5
|
chargeCardByID: {},
|
|
@@ -37,37 +35,6 @@ const chargeCard = createSlice({
|
|
|
37
35
|
const latestChargeCard = mapChargeCardPayloadToChargeCard(action.payload);
|
|
38
36
|
draft.chargeCardByID[latestChargeCard.id] = latestChargeCard;
|
|
39
37
|
},
|
|
40
|
-
updateChargeCardStatusFromPusher(draft, action) {
|
|
41
|
-
const { cardId, cardStatus, isLockedByAdmin } = action.payload;
|
|
42
|
-
const card = draft.chargeCardByID[cardId];
|
|
43
|
-
if (card != null) {
|
|
44
|
-
card.status = {
|
|
45
|
-
code: toCardStatusCodeType(cardStatus.code),
|
|
46
|
-
name: cardStatus.name,
|
|
47
|
-
};
|
|
48
|
-
if (isLockedByAdmin !== undefined) {
|
|
49
|
-
card.isLockedByAdmin = isLockedByAdmin;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
},
|
|
53
|
-
updateChargeCardSpendingFromPusher(draft, action) {
|
|
54
|
-
const { cardId, currencyCode, currencySymbol } = action.payload;
|
|
55
|
-
const card = draft.chargeCardByID[cardId];
|
|
56
|
-
if (card == null) {
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
const amt = (v) => v !== undefined ? toAmount(v, currencyCode, currencySymbol) : undefined;
|
|
60
|
-
card.balance = amt(action.payload.balance) ?? card.balance;
|
|
61
|
-
card.hold = amt(action.payload.hold) ?? card.hold;
|
|
62
|
-
card.dailyPurchaseSpends =
|
|
63
|
-
amt(action.payload.dailyPurchaseSpends) ?? card.dailyPurchaseSpends;
|
|
64
|
-
card.monthlyPurchaseSpends =
|
|
65
|
-
amt(action.payload.monthlyPurchaseSpends) ?? card.monthlyPurchaseSpends;
|
|
66
|
-
card.dailyWithdrawals =
|
|
67
|
-
amt(action.payload.dailyWithdrawals) ?? card.dailyWithdrawals;
|
|
68
|
-
card.monthlyWithdrawals =
|
|
69
|
-
amt(action.payload.monthlyWithdrawals) ?? card.monthlyWithdrawals;
|
|
70
|
-
},
|
|
71
38
|
removeChargeCard(draft, action) {
|
|
72
39
|
delete draft.chargeCardByID[action.payload];
|
|
73
40
|
},
|
|
@@ -76,5 +43,5 @@ const chargeCard = createSlice({
|
|
|
76
43
|
},
|
|
77
44
|
},
|
|
78
45
|
});
|
|
79
|
-
export const { updateChargeCards, updateChargeCard,
|
|
46
|
+
export const { updateChargeCards, updateChargeCard, removeChargeCard, clearAllChargeCards, } = chargeCard.actions;
|
|
80
47
|
export default chargeCard.reducer;
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { createSlice } from '@reduxjs/toolkit';
|
|
2
|
-
import { addChargeCardTransactionFromPusher, addDeclinedChargeCardTransactionFromPusher, } from '../../commonStateTypes/pusherActions';
|
|
3
|
-
import { toCardTransactionStatusCode, } from './chargeCardTransaction';
|
|
4
2
|
import { toChargeCardTransaction, } from './chargeCardTransactionPayload';
|
|
5
3
|
export const initialState = {
|
|
6
4
|
chargeCardTransactionById: {},
|
|
@@ -48,42 +46,10 @@ const chargeCardTransaction = createSlice({
|
|
|
48
46
|
}
|
|
49
47
|
}
|
|
50
48
|
},
|
|
51
|
-
updateChargeCardTransactionStatusFromPusher(draft, action) {
|
|
52
|
-
const { transactionId, transactionStatus } = action.payload;
|
|
53
|
-
const transaction = draft.chargeCardTransactionById[transactionId];
|
|
54
|
-
if (transaction != null) {
|
|
55
|
-
transaction.transactionStatus = {
|
|
56
|
-
code: toCardTransactionStatusCode(transactionStatus.code),
|
|
57
|
-
name: transactionStatus.name,
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
},
|
|
61
|
-
updateChargeCardTransactionFromPusher(draft, action) {
|
|
62
|
-
const entity = toChargeCardTransaction(action.payload.transaction);
|
|
63
|
-
draft.chargeCardTransactionById[entity.id] = entity;
|
|
64
|
-
},
|
|
65
|
-
updateChargeCardTransactionReceiptFromPusher(draft, action) {
|
|
66
|
-
const { transactionId, attachmentFilePaths } = action.payload;
|
|
67
|
-
const transaction = draft.chargeCardTransactionById[transactionId];
|
|
68
|
-
if (transaction != null) {
|
|
69
|
-
transaction.attachmentFilePaths = attachmentFilePaths;
|
|
70
|
-
}
|
|
71
|
-
},
|
|
72
49
|
clearAllChargeCardTransactions(draft) {
|
|
73
50
|
draft.chargeCardTransactionById = {};
|
|
74
51
|
},
|
|
75
52
|
},
|
|
76
|
-
extraReducers: (builder) => {
|
|
77
|
-
builder
|
|
78
|
-
.addCase(addChargeCardTransactionFromPusher, (draft, action) => {
|
|
79
|
-
const entity = toChargeCardTransaction(action.payload.transaction);
|
|
80
|
-
draft.chargeCardTransactionById[entity.id] = entity;
|
|
81
|
-
})
|
|
82
|
-
.addCase(addDeclinedChargeCardTransactionFromPusher, (draft, action) => {
|
|
83
|
-
const entity = toChargeCardTransaction(action.payload.transaction);
|
|
84
|
-
draft.chargeCardTransactionById[entity.id] = entity;
|
|
85
|
-
});
|
|
86
|
-
},
|
|
87
53
|
});
|
|
88
|
-
export const { updateChargeCardTransactions, updateChargeCardTransaction, updateChargeCardTransactionAttachments,
|
|
54
|
+
export const { updateChargeCardTransactions, updateChargeCardTransaction, updateChargeCardTransactionAttachments, removeChargeCardTransaction, removeChargeCardTransactionAttachmentByThirdPartyTransactionId, clearAllChargeCardTransactions, } = chargeCardTransaction.actions;
|
|
89
55
|
export default chargeCardTransaction.reducer;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import recordGet from 'lodash/get';
|
|
2
|
-
import { getSumOfBalancesByGroupedByPeriod } from '../../commonStateTypes/coaBalance/classBalances/getSumOfBalancesGroupedByPeriod';
|
|
3
2
|
import { getCOABalances, } from '../../commonStateTypes/coaBalance/coaBalance';
|
|
3
|
+
import { getSumOfBalancesByGroupedByPeriod } from '../../commonStateTypes/coaBalance/classBalances/getSumOfBalancesGroupedByPeriod';
|
|
4
4
|
import { getNestedAccountReportForAccount, } from '../account/subAccountSelector';
|
|
5
5
|
import { getProjectById } from '../project/projectSelector';
|
|
6
6
|
import { getSectionProjectViewKey } from './sectionProjectView';
|
|
@@ -260,10 +260,7 @@ export class SessionManager {
|
|
|
260
260
|
this.callbacks?.onHeartbeat();
|
|
261
261
|
// Let other tabs know we just fired a heartbeat — they can skip theirs
|
|
262
262
|
// this cycle to avoid N tabs all firing heartbeats.
|
|
263
|
-
this.broadcast({
|
|
264
|
-
type: 'heartbeat-fired',
|
|
265
|
-
timestamp: this.lastHeartbeatTime,
|
|
266
|
-
});
|
|
263
|
+
this.broadcast({ type: 'heartbeat-fired', timestamp: this.lastHeartbeatTime });
|
|
267
264
|
}
|
|
268
265
|
// ─── BroadcastChannel (cross-tab activity sync) ───────────
|
|
269
266
|
setupBroadcastChannel() {
|
|
@@ -3,13 +3,13 @@ import { filter, mergeMap } from 'rxjs/operators';
|
|
|
3
3
|
import { clearAllAiAccountantCustomers } from '../../entity/aiAccountantCustomer/aiAccountantCustomerReducer';
|
|
4
4
|
import { clearAiCfo } from '../../entity/aiCfo/aiCfoReducer';
|
|
5
5
|
import { clearAllApprovalRules } from '../../entity/approvalRule/approvalRuleReducer';
|
|
6
|
-
import { clearAllCreditAgent } from '../../entity/creditAgent/creditAgentReducer';
|
|
7
6
|
import { clearAllEntityApprovalStatus } from '../../entity/entityApprovalStatus/entityApprovalStatusReducer';
|
|
8
7
|
import { clearAllMonthEndCloseChecks } from '../../entity/monthEndCloseChecks/monthEndCloseChecksReducer';
|
|
9
8
|
import { clearAllNotifications } from '../../entity/notification/notificationReducer';
|
|
10
9
|
import { clearAllSectionsClassesViewV2 } from '../../entity/sectionClassesViewV2/sectionClassesViewReducer';
|
|
11
10
|
import { clearAllSectionsProjectView } from '../../entity/sectionProjectView/sectionProjectViewReducer';
|
|
12
11
|
import { clearAllTaskGroups } from '../../entity/taskGroup/taskGroupReducer';
|
|
12
|
+
import { clearCannedResponses } from '../../view/taskManager/cannedResponsesView/cannedResponsesReducer';
|
|
13
13
|
import { clearAllToastNotifications } from '../../entity/toastNotification/toastNotificationReducer';
|
|
14
14
|
import { clearAccountList } from '../../view/accountList/accountListReducer';
|
|
15
15
|
import { clearAccountMappingView } from '../../view/accountMappingView/accountMappingReducer';
|
|
@@ -40,6 +40,7 @@ import { clearCompanyHealthMetricView } from '../../view/companyHealthMetricView
|
|
|
40
40
|
import { clearCompanyMonthEndReportView } from '../../view/companyMonthEndReportView/companyMonthEndReportViewReducer';
|
|
41
41
|
import { clearCompanyTaskManagerView } from '../../view/companyTaskManagerView/companyTaskManagerViewReducer';
|
|
42
42
|
import { clearCompanyView } from '../../view/companyView/companyViewReducer';
|
|
43
|
+
import { clearAllCreditAgent } from '../../entity/creditAgent/creditAgentReducer';
|
|
43
44
|
import { clearCreditAgentView } from '../../view/creditAgentView/creditAgentViewReducer';
|
|
44
45
|
import { clearDashboard } from '../../view/dashboard/dashboardReducer';
|
|
45
46
|
import { clearDashboardLayout } from '../../view/dashboardLayout/dashboardLayoutReducer';
|
|
@@ -134,7 +135,6 @@ import { clearZeniAccountSetupView } from '../../view/spendManagement/zeniAccoun
|
|
|
134
135
|
import { clearZeniAccountsConfig } from '../../view/spendManagement/zeniAccounts/zeniAccountsConfig/zeniAccountsConfigReducer';
|
|
135
136
|
import { clearSubscriptionView } from '../../view/subscriptionView/subscriptionViewReducer';
|
|
136
137
|
import { clearTagView } from '../../view/tagView/tagViewReducer';
|
|
137
|
-
import { clearCannedResponses } from '../../view/taskManager/cannedResponsesView/cannedResponsesReducer';
|
|
138
138
|
import { clearTaskDetail } from '../../view/taskManager/taskDetailView/taskDetailReducer';
|
|
139
139
|
import { clearTaskGroupTemplatesView } from '../../view/taskManager/taskGroupTemplateView/taskGroupTemplateViewReducer';
|
|
140
140
|
import { clearTaskGroupView } from '../../view/taskManager/taskGroupView/taskGroupViewReducer';
|
|
@@ -18,13 +18,9 @@ export const saveAPIKeyConnectionEpic = (actions$, _, zeniAPI) => actions$.pipe(
|
|
|
18
18
|
}
|
|
19
19
|
const status = response.status ??
|
|
20
20
|
createZeniAPIStatus('Failed to save connection. Please try again.');
|
|
21
|
-
return from([
|
|
22
|
-
saveAPIKeyConnectionFailure(action.payload.tenantId, status),
|
|
23
|
-
]);
|
|
21
|
+
return from([saveAPIKeyConnectionFailure(action.payload.tenantId, status)]);
|
|
24
22
|
}), catchError((error) => {
|
|
25
|
-
const message = error instanceof Error
|
|
26
|
-
? error.message
|
|
27
|
-
: 'Unexpected error saving connection.';
|
|
23
|
+
const message = error instanceof Error ? error.message : 'Unexpected error saving connection.';
|
|
28
24
|
return from([
|
|
29
25
|
saveAPIKeyConnectionFailure(action.payload.tenantId, createZeniAPIStatus(message)),
|
|
30
26
|
]);
|
|
@@ -20,13 +20,9 @@ export const saveOAuthConnectionEpic = (actions$, _, zeniAPI) => actions$.pipe(f
|
|
|
20
20
|
}
|
|
21
21
|
const status = response.status ??
|
|
22
22
|
createZeniAPIStatus('Failed to save connection. Please try again.');
|
|
23
|
-
return from([
|
|
24
|
-
saveOAuthConnectionFailure(action.payload.tenantId, status),
|
|
25
|
-
]);
|
|
23
|
+
return from([saveOAuthConnectionFailure(action.payload.tenantId, status)]);
|
|
26
24
|
}), catchError((error) => {
|
|
27
|
-
const message = error instanceof Error
|
|
28
|
-
? error.message
|
|
29
|
-
: 'Unexpected error saving connection.';
|
|
25
|
+
const message = error instanceof Error ? error.message : 'Unexpected error saving connection.';
|
|
30
26
|
return from([
|
|
31
27
|
saveOAuthConnectionFailure(action.payload.tenantId, createZeniAPIStatus(message)),
|
|
32
28
|
]);
|
|
@@ -563,12 +563,7 @@ const tenant = createSlice({
|
|
|
563
563
|
saveConnectorCredentialsSuccess: {
|
|
564
564
|
prepare(tenantId, connectionType, connectionName, connectionPayload) {
|
|
565
565
|
return {
|
|
566
|
-
payload: {
|
|
567
|
-
tenantId,
|
|
568
|
-
connectionType,
|
|
569
|
-
connectionName,
|
|
570
|
-
connectionPayload,
|
|
571
|
-
},
|
|
566
|
+
payload: { tenantId, connectionType, connectionName, connectionPayload },
|
|
572
567
|
};
|
|
573
568
|
},
|
|
574
569
|
reducer(draft, action) {
|
|
@@ -23,9 +23,7 @@ const toTransactionLineBase = (payload, lineType, currency) => ({
|
|
|
23
23
|
});
|
|
24
24
|
const toLinkedTransactionLine = (payload, currency) => ({
|
|
25
25
|
...toTransactionLineBase(payload, 'linked_transaction_line', currency),
|
|
26
|
-
linkedTransactions: payload.linked_transactions != null
|
|
27
|
-
? payload.linked_transactions.map((transactionIDPayload) => toTransactionID(transactionIDPayload))
|
|
28
|
-
: [],
|
|
26
|
+
linkedTransactions: payload.linked_transactions != null ? payload.linked_transactions.map((transactionIDPayload) => toTransactionID(transactionIDPayload)) : [],
|
|
29
27
|
});
|
|
30
28
|
/**
|
|
31
29
|
* Transaction with account and class line payload with COT tracking
|
package/lib/esm/epic.js
CHANGED
|
@@ -7,7 +7,6 @@ import { updateSectionAccountsViewEpic, } from './entity/sectionAccountsView/sec
|
|
|
7
7
|
import { updateSectionClassesViewEpic as updateSectionClassesViewEpicV2, } from './entity/sectionClassesViewV2/sectionClassesViewEpic';
|
|
8
8
|
import { updateSectionProjectViewEpic, } from './entity/sectionProjectView/sectionProjectViewEpic';
|
|
9
9
|
import { clearAllEpic, } from './entity/tenant/clearAllEpic';
|
|
10
|
-
import { deleteConnectionEpic } from './entity/tenant/epic/deleteConnectionEpic';
|
|
11
10
|
import { doMagicLinkSignInEpic, } from './entity/tenant/epic/doMagicLinkSignInEpic';
|
|
12
11
|
import { fetchActiveTenantEpic, } from './entity/tenant/epic/fetchActiveTenantEpic';
|
|
13
12
|
import { fetchAllTenantsEpic, } from './entity/tenant/epic/fetchAllTenantsEpic';
|
|
@@ -15,6 +14,7 @@ import { fetchExcludedResourcesEpic, } from './entity/tenant/epic/fetchExcludedR
|
|
|
15
14
|
import { fetchExternalConnectionsEpic, } from './entity/tenant/epic/fetchExternalConnectionsEpic';
|
|
16
15
|
import { fetchSubscriptionSummaryForTenantEpic, } from './entity/tenant/epic/fetchSubscriptionSummaryForTenantEpic';
|
|
17
16
|
import { resendVerifyDeviceOTPEpic, } from './entity/tenant/epic/resendVerifyDeviceOTPEpic';
|
|
17
|
+
import { deleteConnectionEpic } from './entity/tenant/epic/deleteConnectionEpic';
|
|
18
18
|
import { saveAPIKeyConnectionEpic } from './entity/tenant/epic/saveAPIKeyConnectionEpic';
|
|
19
19
|
import { saveConnectorCredentialsEpic } from './entity/tenant/epic/saveConnectorCredentialsEpic';
|
|
20
20
|
import { saveExternalConnectionEpic, } from './entity/tenant/epic/saveExternalConnectionEpic';
|
|
@@ -188,8 +188,6 @@ import { saveTransactionCategorizationEpic as fetchExpenseAutomationSaveTransact
|
|
|
188
188
|
import { triggerReviewTabRefetchEpic, } from './view/expenseAutomationView/epics/transactionCategorization/triggerReviewTabRefetchEpic';
|
|
189
189
|
import { updateTransactionCategorizationEpic as fetchExpenseAutomationUpdateTransactionCategorizationEpic, } from './view/expenseAutomationView/epics/transactionCategorization/updateTransactionCategorizationEpic';
|
|
190
190
|
import { uploadTransactionReceiptSuccessEpic, } from './view/expenseAutomationView/epics/transactionCategorization/uploadTransactionReceiptSuccessEpic';
|
|
191
|
-
import { fetchRegisteredInterestsEpic, } from './view/featureNotificationView/epics/fetchRegisteredInterestsEpic';
|
|
192
|
-
import { notifyMeForFeatureEpic, } from './view/featureNotificationView/epics/notifyMeForFeatureEpic';
|
|
193
191
|
import { deleteFileEpic, } from './view/fileView/epic/deleteFileEpic';
|
|
194
192
|
import { deleteFileListEpic, } from './view/fileView/epic/deleteFileListEpic';
|
|
195
193
|
import { fetchFileEpic, } from './view/fileView/epic/fetchFileEpic';
|
|
@@ -215,6 +213,8 @@ import { fetchNotificationUnreadCountEpic, } from './view/notificationView/epics
|
|
|
215
213
|
import { fetchNotificationViewEpic, } from './view/notificationView/epics/fetchNotificationViewEpic';
|
|
216
214
|
import { updateNotificationViewAllNotificationsStatusEpic, } from './view/notificationView/epics/updateNotificationViewAllNotificationsStatusEpic';
|
|
217
215
|
import { updateNotificationViewNotificationStatusEpic, } from './view/notificationView/epics/updateNotificationViewNotificationStatusEpic';
|
|
216
|
+
import { fetchRegisteredInterestsEpic, } from './view/featureNotificationView/epics/fetchRegisteredInterestsEpic';
|
|
217
|
+
import { notifyMeForFeatureEpic, } from './view/featureNotificationView/epics/notifyMeForFeatureEpic';
|
|
218
218
|
import { fetchCompanyOnboardingViewEpic, } from './view/onboardingView/cockpitView/epic/fetchCompanyOnboardingViewEpic';
|
|
219
219
|
import { fetchOnboardingCompletedCompaniesEpic, } from './view/onboardingView/cockpitView/epic/fetchOnboardingCompletedCompaniesEpic';
|
|
220
220
|
import { fetchQBOConnectionPoolEpic, } from './view/onboardingView/cockpitView/epic/fetchQBOConnectionPoolEpic';
|
|
@@ -504,18 +504,15 @@ import { saveSubscriptionUpdatesEpic, } from './view/subscriptionView/epic/saveS
|
|
|
504
504
|
import { createTagEpic, } from './view/tagView/epics/createTagEpic';
|
|
505
505
|
import { deleteTagEpic, } from './view/tagView/epics/deleteTagEpic';
|
|
506
506
|
import { fetchAllTagsEpic, } from './view/tagView/epics/fetchAllTagsEpic';
|
|
507
|
-
import { deleteCannedResponseEpic, } from './view/taskManager/cannedResponsesView/epics/deleteCannedResponseEpic';
|
|
508
|
-
import { fetchCannedResponsesEpic, } from './view/taskManager/cannedResponsesView/epics/fetchCannedResponsesEpic';
|
|
509
|
-
import { saveCannedResponseEpic, } from './view/taskManager/cannedResponsesView/epics/saveCannedResponseEpic';
|
|
510
507
|
import { archiveTaskEpic, } from './view/taskManager/taskDetailView/epics/archiveTaskEpic';
|
|
511
508
|
import { deleteTaskEpic, } from './view/taskManager/taskDetailView/epics/deleteTaskEpic';
|
|
509
|
+
import { snoozeTaskEpic, } from './view/taskManager/taskDetailView/epics/snoozeTaskEpic';
|
|
510
|
+
import { unsnoozeTaskEpic, } from './view/taskManager/taskDetailView/epics/unsnoozeTaskEpic';
|
|
512
511
|
import { fetchTaskDetailEpic, } from './view/taskManager/taskDetailView/epics/fetchTaskDetailEpic';
|
|
513
512
|
import { fetchTaskDetailPageEpic, } from './view/taskManager/taskDetailView/epics/fetchTaskDetailPageEpic';
|
|
514
513
|
import { fetchTaskHistoryEpic, } from './view/taskManager/taskDetailView/epics/fetchTaskHistoryEpic';
|
|
515
514
|
import { initializeTaskToLocalStoreEpic, } from './view/taskManager/taskDetailView/epics/initializeTaskToLocalStoreEpic';
|
|
516
515
|
import { saveTaskDetailEpic, } from './view/taskManager/taskDetailView/epics/saveTaskDetailEpic';
|
|
517
|
-
import { snoozeTaskEpic, } from './view/taskManager/taskDetailView/epics/snoozeTaskEpic';
|
|
518
|
-
import { unsnoozeTaskEpic, } from './view/taskManager/taskDetailView/epics/unsnoozeTaskEpic';
|
|
519
516
|
import { createTaskFromTaskGroupTemplateEpic, } from './view/taskManager/taskGroupTemplateView/epics/createTaskFromTaskGroupTemplateEpic';
|
|
520
517
|
import { fetchTaskGroupTemplatesEpic, } from './view/taskManager/taskGroupTemplateView/epics/fetchTaskGroupTemplatesEpic';
|
|
521
518
|
import { createNewTaskGroupEpic, } from './view/taskManager/taskGroupView/epics/createNewTaskGroupEpic';
|
|
@@ -527,6 +524,9 @@ import { dragNDropTasksEpic, } from './view/taskManager/taskListView/epics/dragN
|
|
|
527
524
|
import { fetchTaskListEpic, } from './view/taskManager/taskListView/epics/fetchTaskListEpic';
|
|
528
525
|
import { fetchTaskListPageEpic, } from './view/taskManager/taskListView/epics/fetchTaskListPageEpic';
|
|
529
526
|
import { updateTaskFromListViewEpic, } from './view/taskManager/taskListView/epics/updateTaskFromListViewEpic';
|
|
527
|
+
import { fetchCannedResponsesEpic, } from './view/taskManager/cannedResponsesView/epics/fetchCannedResponsesEpic';
|
|
528
|
+
import { saveCannedResponseEpic, } from './view/taskManager/cannedResponsesView/epics/saveCannedResponseEpic';
|
|
529
|
+
import { deleteCannedResponseEpic, } from './view/taskManager/cannedResponsesView/epics/deleteCannedResponseEpic';
|
|
530
530
|
import { fetchTasksCardEpic, } from './view/tasksCard/fetchTasksCardEpic';
|
|
531
531
|
import { fetchTopExEpic, } from './view/topEx/topExEpic';
|
|
532
532
|
import { fetchTransactionActivityLogEpic, } from './view/transactionActivityLogView/fetchTransactionActivityLogEpic';
|
|
@@ -540,13 +540,13 @@ import { updateTransactionDetailEpic, } from './view/transactionDetail/epics/upd
|
|
|
540
540
|
import { uploadMissingAttachmentSuccessEpic, } from './view/transactionDetail/epics/uploadMissingAttachmentSuccessEpic';
|
|
541
541
|
import { fetchTransactionListByAccountEpic, } from './view/transactionList/fetchTransactionListByAccountEpic';
|
|
542
542
|
import { fetchTransactionListByClassEpic, } from './view/transactionList/fetchTransactionListByClassEpic';
|
|
543
|
-
import { fetchTransactionListByEntityEpic, } from './view/transactionList/fetchTransactionListByEntityEpic';
|
|
544
543
|
import { fetchTransactionListByProjectEpic, } from './view/transactionList/fetchTransactionListByProjectEpic';
|
|
544
|
+
import { fetchTransactionListByEntityEpic, } from './view/transactionList/fetchTransactionListByEntityEpic';
|
|
545
545
|
import { fetchTransactionsListByCategoryTypeEpic, } from './view/transactionList/fetchTransactionsListByCategoryTypeEpic';
|
|
546
546
|
import { parallelFetchAccountTransactionListEpic, } from './view/transactionList/parallelFetchAccountTransactionListEpic';
|
|
547
547
|
import { parallelFetchClassTransactionListEpic, } from './view/transactionList/parallelFetchClassTransactionListEpic';
|
|
548
|
-
import { parallelFetchEntityTransactionListEpic, } from './view/transactionList/parallelFetchEntityTransactionListEpic';
|
|
549
548
|
import { parallelFetchProjectTransactionListEpic, } from './view/transactionList/parallelFetchProjectTransactionListEpic';
|
|
549
|
+
import { parallelFetchEntityTransactionListEpic, } from './view/transactionList/parallelFetchEntityTransactionListEpic';
|
|
550
550
|
import { parallelFetchTransactionListByCategoryTypeEpic, } from './view/transactionList/parallelFetchTransactionListByCategoryTypeEpic';
|
|
551
551
|
import { fetchExpenseTrendEpic, } from './view/trend/fetchExpenseTrendEpic';
|
|
552
552
|
import { fetchIncomeTrendEpic, } from './view/trend/fetchIncomeTrendEpic';
|
package/lib/esm/index.js
CHANGED
|
@@ -15,7 +15,6 @@ import { getActualPeriodOfFY, getActualPeriodOfFYQtr, } from './commonStateTypes
|
|
|
15
15
|
import { getFYMonths } from './commonStateTypes/fiscalYearHelpers/getFYMonths';
|
|
16
16
|
import { getFYQuarterAndYear, getLastMonthOfFYQuarter, getLastMonthOfFYYear, } from './commonStateTypes/fiscalYearHelpers/getFYQuarterAndYear';
|
|
17
17
|
import { getStartOfAndEndOfTimeframeForFY } from './commonStateTypes/fiscalYearHelpers/getStartOfAndEndOfTimeframeFY';
|
|
18
|
-
import { addChargeCardTransactionFromPusher, addDeclinedChargeCardTransactionFromPusher, } from './commonStateTypes/pusherActions';
|
|
19
18
|
import { isAllFetchCompleted, isAnyFetchInProgress, reduceAllFetchState, reduceAnyCompletedFetchState, reduceAnyFetchState, reduceFetchState, reduceFetchStateParallelTimeframes, } from './commonStateTypes/reduceFetchState';
|
|
20
19
|
import { toReimbursementTypeCode } from './commonStateTypes/reimbursementTypeCode';
|
|
21
20
|
import { stringToUnion, stringToUnionStrict, } from './commonStateTypes/stringToUnion';
|
|
@@ -35,11 +34,9 @@ import { toAttributeOrRoleTypeStrict, toAttributeTypeStrict, toRoleTypeStrict, }
|
|
|
35
34
|
import { toOutsideZeniPaymentModeType, } from './entity/billPay/billTransaction/billTransactionState';
|
|
36
35
|
import { toRecurringBillFrequency, toRecurringBillFrequencyStrict, } from './entity/billPay/recurringBills/recurringBillsState';
|
|
37
36
|
import { toCardAddressType, toCardType, toCreditLimitFrequencyCodeType, toShippingAddressType, } from './entity/chargeCard/chargeCard';
|
|
38
|
-
import { updateChargeCardSpendingFromPusher, updateChargeCardStatusFromPusher, } from './entity/chargeCard/chargeCardReducer';
|
|
39
37
|
import { getChargeCardById } from './entity/chargeCard/chargeCardSelector';
|
|
40
38
|
import { attachmentFilePathToAttachment, } from './entity/chargeCardTransaction/chargeCardTransactionPayload';
|
|
41
39
|
import { updateChargeCardTransactionAttachments } from './entity/chargeCardTransaction/chargeCardTransactionReducer';
|
|
42
|
-
import { updateChargeCardTransactionFromPusher, updateChargeCardTransactionReceiptFromPusher, updateChargeCardTransactionStatusFromPusher, } from './entity/chargeCardTransaction/chargeCardTransactionReducer';
|
|
43
40
|
import { getControllersName, getFirstControllerEmail, getFirstControllerId, } from './entity/company/companyHelper';
|
|
44
41
|
import { getCompanyByCompanyId, getCompanyInfoForAllCockpitCompaniesInState, getControllersForCompany, } from './entity/company/companySelector';
|
|
45
42
|
import { ALL_ACCOUNTING_CONNECTION_CREATION_MODES, isCompanyEligibleForTreasury, } from './entity/company/companyStateTypes';
|
|
@@ -62,7 +59,7 @@ import { closeSnackbar, openSnackbar } from './entity/snackbar/snackbarReducer';
|
|
|
62
59
|
import { getSnackbar } from './entity/snackbar/snackbarSelector';
|
|
63
60
|
import { ALL_WEEK_DAYS, toDayOfWeek, toPriorityCodeType, toTaskStatusCodeType, } from './entity/task/taskState';
|
|
64
61
|
import { getTaskGroupById } from './entity/taskGroup/taskGroupSelector';
|
|
65
|
-
import { clearAll,
|
|
62
|
+
import { clearAll, doMagicLinkSignIn, doSignIn, doSignOut, fetchActiveTenant, fetchAllTenants, fetchExcludedResources as fetchExcludedResourcesForTenant, fetchExternalConnections as fetchExternalConnectionsForTenant, fetchSubscriptionSummaryForTenant, resendVerifyDeviceOTP, resetSignInState, deleteConnection, saveAPIKeyConnection, saveConnectorCredentials, saveExternalConnection as saveExternalConnectionForTenant, saveOAuthConnection, sendEmailMagicLinkToUser, sendSessionHeartbeat, toExternalIntegrationType, toExternalSupportedTool, updateCurrentTenant, updateSignInState, verifyDeviceWithTwoFA, } from './entity/tenant/tenantReducer';
|
|
66
63
|
import { getCurrentTenant, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled, getTenantBaseById, getTenantBaseViewForTenantId, getTenantBaseViewForTenantView, getTenantsBaseByCheckInDateSelector, getTenantsByCheckInDateSelector, getTenantsCoreDetailsByCheckInDateSelector, isOtherProductsEnabledForTenant, isTenantBankingOnly, isTenantBookkeepingEnabled, isTenantCardsOnly, isTenantUsingZeniCOA, isZeniDomainTenant, toTenantCoreDetailsView, } from './entity/tenant/tenantSelector';
|
|
67
64
|
import { pushToastNotification } from './entity/toastNotification/toastNotificationReducer';
|
|
68
65
|
import { getLastNotificationTime, getNotifications, } from './entity/toastNotification/toastNotificationSelector';
|
|
@@ -126,6 +123,8 @@ import { fetchCashPosition, updateCashPositionCOABalancesRange, updateCashPositi
|
|
|
126
123
|
import { getCashPosition, getCashPositionForHighlightedRange, getCashPositionForSelectedRange, getCashPositionUIState, } from './view/cashPosition/cashPositionSelector';
|
|
127
124
|
import { fetchClassList } from './view/classList/classListReducer';
|
|
128
125
|
import { getClassList, } from './view/classList/classListSelector';
|
|
126
|
+
import { fetchProjectList } from './view/projectList/projectListReducer';
|
|
127
|
+
import { getProjectList, } from './view/projectList/projectListSelector';
|
|
129
128
|
import { SEMI_WEEKLY_REQUIRED_DAYS_COUNT, getMinAllowedEndDate, getRecurringEndDateFromCount, toRecurringFrequency, } from './view/common/recurringViewHelper';
|
|
130
129
|
import { ZENI_CLEARING_ACCOUNT, isZeniClearingAccount, isZeniClearingAccountReport, } from './view/common/zeniClearingAccountHelper';
|
|
131
130
|
import { clearTransactionVendorSaveStatus, resetTransactionVendorLocalData, saveTransactionVendor, saveTransactionVendorSuccessOrFailure, updateTransactionVendorLocalData, } from './view/commonVendorView/transactionVendorView/transactionVendorViewReducer';
|
|
@@ -168,18 +167,15 @@ import { clearExpenseAutomationFluxAnalysisView, fetchFluxAnalysisView, reviewFl
|
|
|
168
167
|
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, updateJESchedulesUIState as updateExpenseAutomationJESchedulesUIState, updateJeScheduleLocalDataById, updateJeScheduleTransactionKeys, } from './view/expenseAutomationView/reducers/jeSchedulesViewReducer';
|
|
169
168
|
import { acknowledgeBulkUploadConfirmMatchComplete, bulkUploadAutomatchingTimedOut, bulkUploadReceipts, bulkUploadReceiptsFailure, bulkUploadReceiptsSuccess, clearBulkUpload, clearManualSearchResults, clearMissingReceiptsTabNavigation, confirmBulkUploadMatch, confirmBulkUploadMatchFailure, confirmBulkUploadMatchSuccess, fetchBulkUploadBatchDetails, fetchBulkUploadBatchDetailsFailure, fetchBulkUploadBatchDetailsSuccess, fetchBulkUploadBatches, fetchBulkUploadBatchesFailure, fetchBulkUploadBatchesSuccess, fetchCompletedTransactions, fetchCompletedTransactionsFailure, fetchCompletedTransactionsSuccess, fetchMissingReceipts as fetchExpenseAutomationMissingReceipts, fetchMoreBatchDetails, fetchMoreBatchDetailsComplete, fetchMoreBatchDetailsFailure, markMissingReceiptAsDone as markExpenseAutomationMissingReceiptAsDone, pusherBatchStatusUpdate, requestMissingReceiptsTabNavigation, restoreBulkUploadAutomatchingOnMount, restoreBulkUploadMatchingState, searchTransactionsForManualMatch, searchTransactionsForManualMatchFailure, searchTransactionsForManualMatchSuccess, setBulkUploadCompletedSubTab, setBulkUploadResultsTab, setBulkUploadSortConfig, setBulkUploadUploadedFileCount, storeBatchDetails, updateBulkUploadProgress, updateMissingReceiptUploadState as updateExpenseAutomationMissingReceiptUploadState, updateMissingReceiptsUIState as updateExpenseAutomationMissingReceiptsUIState, uploadMissingReceiptSuccess as uploadExpenseAutomationMissingReceiptSuccess, } from './view/expenseAutomationView/reducers/missingReceiptsViewReducer';
|
|
170
169
|
import { deleteAccountStatement, excludeAccountFromReconciliation, fetchReconciliation as fetchReconciliationView, includeAccountInReconciliation, 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, updateNodeCollapseState, updateStatementUploadChosen, uploadAccountStatement, } from './view/expenseAutomationView/reducers/reconciliationViewReducer';
|
|
171
|
-
import { backgroundRefetchReviewTab, clearExpenseAutomationTransactionsView, fetchTransactionCategorization, fetchTransactionCategorizationFailure, fetchTransactionCategorizationView, initializeTransactionCategorizationViewLocalData, markTransactionAsNotMiscategorized, saveTransactionCategorization, saveTransactionCategorizationLocalData, setAllItemsToCategoryClassInLocalDataForCategorization, setEntityRecommendationForLineIdsForCategorization, syncTransactionCategorizationFromDetailSave, updateCurrentSelectedTransactionCategorizationTab, updateSelectedCheckboxTransactionIds, updateSelectedCustomerForTransaction, updateSelectedTransactionId, updateSelectedVendorForTransaction, updateTransactionCategorization,
|
|
170
|
+
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';
|
|
172
171
|
import { getExpenseAutomationFluxAnalysisView } from './view/expenseAutomationView/selectors/fluxAnalysisViewSelector';
|
|
173
172
|
import { getExpenseAutomationReconciliationView, isAccountReconReport, } from './view/expenseAutomationView/selectors/reconciliationViewSelector';
|
|
174
173
|
import { getExpenseAutomationTransactionView } from './view/expenseAutomationView/selectors/transactionCategorizationSelector';
|
|
175
|
-
import { DEFAULT_COMPLETED_SUB_TAB, toCompletedSubTab, } from './view/expenseAutomationView/types/completedSubTab';
|
|
176
174
|
import { toJEScheduleMainTab as toExpenseAutomationJEScheduleMainTab, toJEScheduleSortKey as toExpenseAutomationJEScheduleSortKey, } from './view/expenseAutomationView/types/jeSchedulesViewState';
|
|
177
|
-
import { BATCH_FILE_STATUSES, isUnmatchedTabFileStatus, toBatchFileStatus, toBatchStatusValue, toBulkUploadPhase, toBulkUploadResultsTab, toBulkUploadSortKey, toMatchSource, toMissingReceiptsTab, } from './view/expenseAutomationView/types/missingReceiptsViewState';
|
|
175
|
+
import { BATCH_FILE_STATUSES, isUnmatchedTabFileStatus, toBatchFileStatus, toBatchStatusValue, toBulkUploadPhase, toBulkUploadResultsTab, toBulkUploadSortKey, toCompletedSubTab, toMatchSource, toMissingReceiptsTab, } from './view/expenseAutomationView/types/missingReceiptsViewState';
|
|
178
176
|
import { toMissingReceiptsSortKey as toExpenseAutomationMissingReceiptsSortKey, } from './view/expenseAutomationView/types/missingReceiptsViewState';
|
|
179
177
|
import { toReconciliationTabsType, } from './view/expenseAutomationView/types/reconciliationViewState';
|
|
180
178
|
import { toTransactionsTabKey as toExpenseAutomationTransactionsTabKey, toTransactionsSortKey, } from './view/expenseAutomationView/types/transactionsViewState';
|
|
181
|
-
import { clearFeatureNotificationView, fetchRegisteredInterests, notifyMeForFeature, } from './view/featureNotificationView/featureNotificationViewReducer';
|
|
182
|
-
import { getFeatureNotificationView, getRegisteredInterests, getRegisteredInterestsByFeature, isFeatureInterestRegistered, } from './view/featureNotificationView/featureNotificationViewSelector';
|
|
183
179
|
import downloadFile from './view/fileView/fileDownloadHelpers';
|
|
184
180
|
import uploadFile from './view/fileView/fileUploadHelpers';
|
|
185
181
|
import { clearFileViewList, deleteFile, deleteFileFailure, deleteFileList, deleteFileListFailure, deleteFileListSuccess, deleteFileSuccess, fetchFile, fetchFileList, fetchFileListFailure, fetchFileListSuccess, updateFileName, updateFileNameFailure, updateFileNameSuccess, updateFilesMetadata, } from './view/fileView/fileViewReducer';
|
|
@@ -206,6 +202,8 @@ import { getNetBurnOrIncomeStoryCardReport } from './view/netBurnOrIncomeStoryCa
|
|
|
206
202
|
import { fetchNotificationUnreadCount, fetchNotificationUnreadCountSuccess, fetchNotificationView, updateNotificationViewAllNotificationsStatus, updateNotificationViewCurrentTabAndSubTab, updateNotificationViewNotificationStatus, updateNotificationViewSubTab, updateNotificationViewTabState, updateNotificationViewUIState, } from './view/notificationView/notificationViewReducer';
|
|
207
203
|
import { getExternalNotificationsForSelectedSubTab, getNotificationView, getNotificationsForSelectedSubTab, } from './view/notificationView/notificationViewSelector';
|
|
208
204
|
import { toNotificationSubTabTypeStrict, toNotificationTabTypeStrict, } from './view/notificationView/notificationViewState';
|
|
205
|
+
import { clearFeatureNotificationView, fetchRegisteredInterests, notifyMeForFeature, } from './view/featureNotificationView/featureNotificationViewReducer';
|
|
206
|
+
import { getFeatureNotificationView, getRegisteredInterests, getRegisteredInterestsByFeature, isFeatureInterestRegistered, } from './view/featureNotificationView/featureNotificationViewSelector';
|
|
209
207
|
import { clearOnboardingCustomerViewUpdateData, fetchCompanyOnboardingView, fetchOnboardingCompletedCompanies, fetchQBOConnectionPool, getOnboardingEmailGroup, initializeOnboardingCustomerViewUpdateData, resetNewOnboardedCustomerId, retryBankAccountConnectionForOnboarding, saveOnboardingCustomerCompletedStatus, saveOnboardingCustomerDataInLocalStore, saveOnboardingCustomerNotes, saveOnboardingCustomerViewUpdateData, saveOnboardingCustomerViewUpdates, sendOnboardingCustomerViewInvite, updateCustomerCreationStatus, updateOnboardingCustomerDataInLocalStore, updateOnboardingCustomerListUIState, updateQBOConnectionPoolExternalConnection, updateStatusAfterOnboardingCompleted, } from './view/onboardingView/cockpitView/onboardingCockpitViewReducer';
|
|
210
208
|
import { getNewOnboardingCustomerView, getOnboardingCockpitView, } from './view/onboardingView/cockpitView/onboardingCockpitViewSelector';
|
|
211
209
|
import { toProductType, toProductTypeStrict, } from './view/onboardingView/cockpitView/types/onboardingCockpitViewTypes';
|
|
@@ -226,15 +224,13 @@ import { fetchProfitAndLoss, fetchProfitAndLossForTimeframe, resetProfitAndLossN
|
|
|
226
224
|
import { getPandLReportFetchState, getProfitAndLossReport, } from './view/profitAndLoss/profitAndLossSelector';
|
|
227
225
|
import { getEmptyHorizontalSectionBalancesSlice } from './view/profitAndLossClassesView/horizontalSectionEmptyBalancesSlice';
|
|
228
226
|
import { getProfitAndLossClassesHorizontalView } from './view/profitAndLossClassesView/profitAndLossClassesByClassHorizontalSelector';
|
|
227
|
+
import { aggregateHorizontalDescendantBalances } from './view/profitAndLossClassesView/profitAndLossHorizontalEnrichment';
|
|
229
228
|
import { HORIZONTAL_CLASS_TOTAL_BALANCE_ID, isHorizontalAccountReportData, } from './view/profitAndLossClassesView/profitAndLossClassesByClassHorizontalSelectorTypes';
|
|
230
229
|
import { fetchProfitAndLossClassesView, resetProfitAndLossClassesNodeCollapseState, updateClassViewLayout, updateAccountViewMode as updateProfitAndLossAccountViewMode, updateClassesToFilterOut as updateProfitAndLossClassesToFilterOut, updateProfitAndLossClassesViewUIState, } from './view/profitAndLossClassesView/profitAndLossClassesViewReducer';
|
|
231
230
|
import { getProfitAndLossClassesView } from './view/profitAndLossClassesView/profitAndLossClassesViewSelector';
|
|
232
231
|
import { isPandLReportViewCalculatedSectionID, isPandLReportViewSectionID, } from './view/profitAndLossClassesView/profitAndLossClassesViewSelectorTypes';
|
|
233
|
-
import { aggregateHorizontalDescendantBalances } from './view/profitAndLossClassesView/profitAndLossHorizontalEnrichment';
|
|
234
232
|
import { clearProfitAndLossProjectView, fetchProfitAndLossForTimeframeProjectView, fetchProfitAndLossProjectView, resetProfitAndLossProjectNodeCollapseState, updateProfitAndLossProjectViewUIState, updateProjectViewAccountViewMode, updateProjectsToFilterOut, } from './view/profitAndLossProjectView/profitAndLossProjectViewReducer';
|
|
235
233
|
import { getProfitAndLossProjectView } from './view/profitAndLossProjectView/profitAndLossProjectViewSelector';
|
|
236
|
-
import { fetchProjectList } from './view/projectList/projectListReducer';
|
|
237
|
-
import { getProjectList, } from './view/projectList/projectListSelector';
|
|
238
234
|
import { fetchEntityRecommendationsByTransactionId, fetchRecommendationByEntityId, fetchRecommendationByEntityName, } from './view/recommendation/recommendationReducer';
|
|
239
235
|
import { clearReferrals, fetchReferrals, fetchRewardsPlan, resendReferralInvite, saveReferralFormDataInLocalStore, sendReferralInvite, updateReferViewed, updateReferralListSortUiState, } from './view/referralView/referralReducer';
|
|
240
236
|
import { getInviteFormView, getReferralListView, getRewardsPlanCard, } from './view/referralView/referralSelector';
|
|
@@ -299,7 +295,7 @@ import { fetchChargeCardConfig } from './view/spendManagement/chargeCards/charge
|
|
|
299
295
|
import { closeChargeCard, completeCVVActivationWait, completeDebitCardSetPinWait, fetchChargeCardDetail, fetchChargeCardDetailPage, fetchChargeCardTransactionAttachments, fetchChargeCardTransactionList, fetchChargeCardTransactionStatistics, fetchChargeCardsRecurringExpenses, fetchDepositAccountLimit, lockChargeCard, startCVVActivationWait, startDebitCardSetPinWait, unlockChargeCard, updateChargeCardDetail, updateChargeCardName, updateChargeCardSpendLimit, updateChargeCardSpendLimitSuccessOrFailure, updateChargeCardTransactionIsViewReceiptClicked, updateChargeCardTransactionReceiptsShowTickFetchStatus, updateChargeCardTransactionUploadReceiptsFetchStatus, updateDebitCardPinAttempt, updatePhysicalChargeCardAttempt, } from './view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailReducer';
|
|
300
296
|
import { getChargeCardCVVActivateView, getChargeCardControlDetailView, getChargeCardDetailView, getChargeCardRecurringExpensesView, getChargeCardTransactionAttachmentView, getDebitCardSetPinView, getDepositAccountLimitFetchStateByDepositAccountId, } from './view/spendManagement/chargeCards/chargeCardDetail/chargeCardDetailSelector';
|
|
301
297
|
import { toChargeCardSortKeyType, } from './view/spendManagement/chargeCards/chargeCardList/chargeCardList';
|
|
302
|
-
import { closeChargeCards, fetchChargeCardList, fetchChargeCardListPage, fetchCreditAccount, fetchCreditAccountRepayment, fetchDebitCardSummary, lockChargeCards, resendCardInvite, revokeCardInvite, revokeChargeCardsInvite, unlockChargeCards, updateBulkActionCardIds, updateSearchText as updateChargeCardListSearchText, updateChargeCardListUIState, updateChargeCardsSpendLimit,
|
|
298
|
+
import { closeChargeCards, fetchChargeCardList, fetchChargeCardListPage, fetchCreditAccount, fetchCreditAccountRepayment, fetchDebitCardSummary, lockChargeCards, resendCardInvite, revokeCardInvite, revokeChargeCardsInvite, unlockChargeCards, updateBulkActionCardIds, updateSearchText as updateChargeCardListSearchText, updateChargeCardListUIState, updateChargeCardsSpendLimit, updateRowActionCardId, } from './view/spendManagement/chargeCards/chargeCardList/chargeCardListReducer';
|
|
303
299
|
import { anyCardOnHold, getChargeCardBulkActionView, getChargeCardListView, getChargeCardRecurringExpensesByCardIds, getChargeCardRowActionView, getCreditAccountDetails, getDebitCardList, getDebitCardSummary, getDepositAccountListWithDebitCardIssued, getMyPendingActivationChargeCardListView, getMyRequestOnHoldChargeCardListWithShippingAddress, } from './view/spendManagement/chargeCards/chargeCardList/chargeCardListSelector';
|
|
304
300
|
import { PAYMENT_HISTORY_FILTER_CATEGORIES, } from './view/spendManagement/chargeCards/chargeCardPaymentHistory/chargeCardPaymentHistory';
|
|
305
301
|
import { getChargeCardPaymentHistoryDownloadReport, } from './view/spendManagement/chargeCards/chargeCardPaymentHistory/chargeCardPaymentHistoryDownloadSelector';
|
|
@@ -388,9 +384,9 @@ import { getThirdPartyIdFromTransactionId, } from './view/transactionDetail/tran
|
|
|
388
384
|
import { getTransactionListByAccount, getTransactionListUIStateByAccountKey, } from './view/transactionList/transactionListByAccountSelector';
|
|
389
385
|
import { getTransactionListUIStateByCategoryType, getTransactionsListByCategoryType, } from './view/transactionList/transactionListByCategoryTypeSelector';
|
|
390
386
|
import { getTransactionListByClass, getTransactionListUIStateByClassKey, } from './view/transactionList/transactionListByClassSelector';
|
|
391
|
-
import { getTransactionListByEntity, getTransactionListByEntityForSinglePeriod, } from './view/transactionList/transactionListByEntitySelector';
|
|
392
387
|
import { getTransactionListByProject, getTransactionListUIStateByProjectKey, } from './view/transactionList/transactionListByProjectSelector';
|
|
393
|
-
import {
|
|
388
|
+
import { getTransactionListByEntity, getTransactionListByEntityForSinglePeriod, } from './view/transactionList/transactionListByEntitySelector';
|
|
389
|
+
import { clearTransactionList, fetchAccountTransactionList, fetchEntityTransactionList, parallelFetchAccountTransactionList, parallelFetchClassTransactionList, parallelFetchProjectTransactionList, parallelFetchEntityTransactionList, parallelFetchTransactionListByCategoryType, updateLatestTransactionId, updateTransactionListByAccount, updateTransactionListByAccountFailure, updateTransactionListByAccountUIState, updateTransactionListByClass, updateTransactionListByClassUIState, updateTransactionListByProject, updateTransactionListByProjectUIState, updateTransactionListByEntity, updateTransactionListByEntityFailure, updateTransactionListUIStateByCategoryType, } from './view/transactionList/transactionListReducer';
|
|
394
390
|
import { clearTrendData, fetchExpenseTrend, fetchIncomeTrend, } from './view/trend/trendReducer';
|
|
395
391
|
import { getCurrentFiscalQuarterDateRange, getTrendForEntity, } from './view/trend/trendSelector';
|
|
396
392
|
import { clearTrendWithTransactions, fetchTransactionsForEntity, fetchTrendForEntity, updateSelectedTimeperiod, } from './view/trendWithTransactions/trendWithTransactionsReducer';
|
|
@@ -445,7 +441,7 @@ export { stringToUnion, stringToUnionStrict };
|
|
|
445
441
|
export { fetchMonthEndCloseChecks, fetchMonthClosePerformanceTrend, getMonthEndCloseChecksViewByTenantId, ALL_MONTH_END_CLOSE_CHECKS_FREQUENCY, };
|
|
446
442
|
export {
|
|
447
443
|
// Bulk Upload Types
|
|
448
|
-
BATCH_FILE_STATUSES, isUnmatchedTabFileStatus,
|
|
444
|
+
BATCH_FILE_STATUSES, isUnmatchedTabFileStatus, toBatchFileStatus, toBatchStatusValue, toBulkUploadPhase, toBulkUploadResultsTab, toBulkUploadSortKey, toCompletedSubTab, toMatchSource, toMissingReceiptsTab, toExpenseAutomationJEScheduleMainTab, toExpenseAutomationJEScheduleSortKey, getExpenseAutomationView, toExpenseAutomationMissingReceiptsSortKey, toExpenseAutomationTransactionsTabKey, toExpenseAutomationViewType, uploadExpenseAutomationMissingReceiptSuccess, markExpenseAutomationMissingReceiptAsDone, fetchAllExpenseAutomationTabs, refreshExpenseAutomationCurrentTab, updateCurrentSelectedTransactionCategorizationTab, fetchExpenseAutomationMissingReceipts,
|
|
449
445
|
// Bulk Upload Actions
|
|
450
446
|
bulkUploadReceipts, bulkUploadAutomatchingTimedOut, bulkUploadReceiptsSuccess, bulkUploadReceiptsFailure, restoreBulkUploadAutomatchingOnMount, restoreBulkUploadMatchingState, updateBulkUploadProgress, pusherBatchStatusUpdate, requestMissingReceiptsTabNavigation, clearMissingReceiptsTabNavigation, fetchBulkUploadBatchDetails, fetchBulkUploadBatchDetailsSuccess, fetchBulkUploadBatchDetailsFailure, storeBatchDetails, fetchMoreBatchDetails, fetchMoreBatchDetailsComplete, fetchMoreBatchDetailsFailure, fetchBulkUploadBatches, fetchBulkUploadBatchesSuccess, fetchBulkUploadBatchesFailure, confirmBulkUploadMatch, confirmBulkUploadMatchSuccess, confirmBulkUploadMatchFailure, setBulkUploadResultsTab, setBulkUploadCompletedSubTab, setBulkUploadSortConfig, setBulkUploadUploadedFileCount, clearBulkUpload, searchTransactionsForManualMatch, searchTransactionsForManualMatchSuccess, searchTransactionsForManualMatchFailure, clearManualSearchResults, acknowledgeBulkUploadConfirmMatchComplete, fetchCompletedTransactions, fetchCompletedTransactionsSuccess, fetchCompletedTransactionsFailure, fetchFluxAnalysisView, clearExpenseAutomationFluxAnalysisView, updateOperatingExpensesIdsForReview as updateFluxOperatingExpensesIdsForReview, updateSelectedSectionIdsForReview as updateFluxAnalysisSelectedSectionIdsForReview, reviewFluxAnalysisView, updateExpenseAutomationMissingReceiptUploadState, updateExpenseAutomationMissingReceiptsUIState, updateTransactionCategorizationUploadReceiptState, uploadTransactionCategorizationReceiptSuccess, getExpenseAutomationFluxAnalysisView, updateCurrentSelectedView, updateCurrentSelectedPeriod, getExpenseAutomationTransactionView, updateFluxAnalysisViewUIState, updateFluxAnalysisViewPageMetaData, MAX_SELECTION_LIMIT, checkIfAllLineItemsAreCategoryClassFilled, getLineItemsByTransactionIdsFromLocalData, isAnyItemWithUncategorizedExpenseAccount, excludeAccountFromReconciliation, includeAccountInReconciliation, saveExpenseAutomationReconciliationDetail, updateExpenseAutomationReconcileTabListScrollState, updateExpenseAutomationReconReviewTabListSortState, updateExpenseAutomationReconcileTabListSortState, updateExpenseAutomationReconcileTabLocalData, updateExpenseAutomationAccountReconciliationSelectedTab, updateExpenseAutomationAccountReconciliationSelectedAccountId, getExpenseAutomationReconciliationView, fetchReconciliationView, uploadAccountStatementIntoDocumentAI, updateExpenseAutomationReconListScrollPosition, setConnectionInProgressForAccountReconciliation, getAccountReconByAccountIdAndSelectedPeriod, toReconciliationTabsType, isAccountReconReport, updateExpenseAutomationReconReviewTabLocalData, updateExpenseAutomationSelectedDrawerAccountId, saveExpenseAutomationReconciliationReview, updateExpenseAutomationAccountReconciliationLocalData, toReconciliationAccountSource, deleteAccountStatement, uploadAccountStatement, updateNodeCollapseState, updateStatementUploadChosen, isReviewTransactionBankTransferType, isReviewTransactionBillPaymentType, isReviewTransactionCreditCardPaymentType, isReviewTransactionDepositType, isReviewTransactionExpenseType, isReviewTransactionCreditCardCreditType, setStatementParseInProgress, };
|
|
451
447
|
export { fetchTransactionCategorization, fetchTransactionCategorizationView, updateTransactionCategorizationUIState, updateSelectedCheckboxTransactionIds, setEntityRecommendationForLineIdsForCategorization, initializeTransactionCategorizationViewLocalData, setAllItemsToCategoryClassInLocalDataForCategorization, saveTransactionCategorizationLocalData, fetchTransactionCategorizationFailure, saveTransactionCategorization, updateTransactionCategorization, updateTransactionCategorizationSaveStatus, markTransactionAsNotMiscategorized, updateSelectedVendorForTransaction, updateSelectedCustomerForTransaction, updateSelectedTransactionId, syncTransactionCategorizationFromDetailSave, backgroundRefetchReviewTab, clearExpenseAutomationTransactionsView, toTransactionsSortKey, };
|
|
@@ -600,7 +596,7 @@ export { fetchUserRoleConfig, getUserRoleConfig };
|
|
|
600
596
|
export { getCompanyHealthMetricConfig, fetchCompanyHealthMetricConfig, };
|
|
601
597
|
export { updateCompaniesHealth, updateCompanyHealth, };
|
|
602
598
|
export { clearCompanyHealthMetricView, fetchCompanyHealthMetricView, initializeCompanyHealthMetricViewLocalData, removeSelectedCompanyId, saveCompanyHealthMetricById, updateCompanyHealthMetricLocalStore, updateCompanyHealthMetricViewErrorStatus, updateCompanyHealthMetricViewSuccessStatus, updateCompanyHealthViewUIState, };
|
|
603
|
-
export { updateChargeCardTransactionAttachments,
|
|
599
|
+
export { updateChargeCardTransactionAttachments, attachmentFilePathToAttachment, isCompanyRunwayInfinite, getCompanyHealthMetricView, hasCompanyHealthMetricFormFieldChanged, companyHealthMetricDropDownOptions, getChargeCardBusinessVerificationDetails, fetchDebitCardSummary, fetchChargeCardList, fetchChargeCardListPage, fetchChargeCardConfig, fetchCreditAccount, fetchCreditAccountRepayment, getChargeCardListView, getMyPendingActivationChargeCardListView, getMyRequestOnHoldChargeCardListWithShippingAddress, clearChargeCardRepaymentDetail, fetchChargeCardRepaymentDetail, initiateChargeCardRepayment, updateChargeCardRepaymentLocalStore, getChargeCardRepaymentDetail, fetchChargeCardPaymentPage, fetchChargeCardPaymentHistory, updatePaymentHistoryDownloadUIState, updatePaymentHistoryFilters, updatePaymentHistorySearchText, updatePaymentHistoryUIState, getChargeCardPaymentHistoryDownloadReport, getChargeCardPaymentHistoryView, getPaymentHistorySourceAccountName, getPaymentStatusDisplayText, PAYMENT_HISTORY_FILTER_CATEGORIES, getCreditAccountDetails, fetchChargeCardDetailPage, fetchChargeCardDetail, fetchChargeCardTransactionStatistics, fetchDepositAccountLimit, getChargeCardDetailView, getChargeCardControlDetailView, getDepositAccountLimitFetchStateByDepositAccountId, getChargeCardTransactionAttachmentView, getDebitCardSetPinView, getChargeCardRecurringExpensesByCardIds, getChargeCardRecurringExpensesView, getChargeCardRowActionView, getChargeCardBulkActionView, getChargeCardCVVActivateView, fetchChargeCardTransactionList, fetchCashbackDetail, toChargeCardSortKeyType, getCashbackDetail, getZeniDateFromPeriod, toCreditLimitFrequencyCodeType, getDepositAccountListWithDebitCardIssued, getIssueChargeCardView, getChargeCardSetupViewDetails, fetchChargeCardStatementList, getChargeCardStatements, fetchChargeCardSetupView, enableChargeCardAutoPay, acceptChargeCardTerms, expressInterestInChargeCard, getDepositAccountLimitForChargeCardByDepositAccountId, toCardAddressType, toShippingAddressType, toCardType, issueChargeCards, fetchIssueCardPage, fetchDepositAccountListForCards, getDebitCardList, getDebitCardSummary, updateCustomAddressId, updateChargeCardsLocalStore, resetIssueChargeCardForm, updateBulkActionCardIds, updateChargeCardListSearchText, updateChargeCardListUIState, updateCashbackDetailUIState, updateChargeCardDetail, updatePhysicalChargeCardAttempt, lockChargeCard, unlockChargeCard, closeChargeCard, updateChargeCardName, getCardUserOnboardingView, initializeCardUserOnboardingLocalData, updateCardUserOnboardingLocalData, saveCardOnboardingUserDetails, updateChargeCardTransactionUploadReceiptsFetchStatus, completeDebitCardSetPinWait, startDebitCardSetPinWait, updateDebitCardPinAttempt, updateChargeCardTransactionReceiptsShowTickFetchStatus, updateChargeCardTransactionIsViewReceiptClicked, fetchChargeCardTransactionAttachments, completeCVVActivationWait, startCVVActivationWait, updateChargeCardSpendLimit, updateChargeCardSpendLimitSuccessOrFailure, resendCardInvite, revokeCardInvite, updateRowActionCardId, revokeChargeCardsInvite, lockChargeCards, unlockChargeCards, closeChargeCards, updateChargeCardsSpendLimit, fetchChargeCardsRecurringExpenses, startCardUserOnboardingActivationWait, completeCardUserOnboardingActivationWait, setFirstViewAfterActivation, setFirstViewCompleteAfterActivation, setCurrentDisplayedCardId, getChargeCardById, anyCardOnHold, };
|
|
604
600
|
export { TIME_SERIES_DURATIONS, convertToTimeSeriesSelectionRange, toTimeSeriesDuration, fetchAggregatedReport, aggregatedReportView, };
|
|
605
601
|
export { fetchApAging, getApAgingReport, updateApAgingUIState, };
|
|
606
602
|
export { fetchApAgingDetail, getApAgingDetailForVendor, updateApAgingDetailUIState, };
|
package/lib/esm/reducer.js
CHANGED
|
@@ -4,6 +4,7 @@ import accountGroup, { initialState as initialAccountGroupState, } from './entit
|
|
|
4
4
|
import accountRecon, { initialState as initialAccountReconState, } from './entity/accountRecon/accountReconReducer';
|
|
5
5
|
import address, { initialState as initialAddressState, } from './entity/address/addressReducer';
|
|
6
6
|
import aiAccountantCustomer, { initialAiAccountantCustomerState, } from './entity/aiAccountantCustomer/aiAccountantCustomerReducer';
|
|
7
|
+
import creditAgentEntity, { initialCreditAgentEntityState, } from './entity/creditAgent/creditAgentReducer';
|
|
7
8
|
import aiCfo, { initialAiCfoState } from './entity/aiCfo/aiCfoReducer';
|
|
8
9
|
import approvalRule, { initialState as initialApprovalRuleState, } from './entity/approvalRule/approvalRuleReducer';
|
|
9
10
|
import bankAccount, { initialState as initialBankAccountState, } from './entity/bankAccount/bankAccountReducer';
|
|
@@ -19,7 +20,6 @@ import company, { initialState as initialCompanyState, } from './entity/company/
|
|
|
19
20
|
import companyHealthMetric, { initialState as initialCompanyHealthMetricState, } from './entity/companyHealthMetric/companyHealthMetricReducer';
|
|
20
21
|
import connectedAccount, { initialState as initialConnectedAccountState, } from './entity/connectedAccount/connectedAccountReducer';
|
|
21
22
|
import countryList, { initialState as initialCountryListState, } from './entity/countryList/countryListReducer';
|
|
22
|
-
import creditAgentEntity, { initialCreditAgentEntityState, } from './entity/creditAgent/creditAgentReducer';
|
|
23
23
|
import currency, { initialState as initialCurrencyState, } from './entity/currency/currencyReducer';
|
|
24
24
|
import customer, { initialState as initialCustomerState, } from './entity/customer/customerReducer';
|
|
25
25
|
import customerIncome, { initialState as initialCustomerIncomeState, } from './entity/customerIncome/customerIncomeTrendReducer';
|
|
@@ -107,9 +107,9 @@ import expenseAutomationJESchedulesView, { initialState as initialExpenseAutomat
|
|
|
107
107
|
import expenseAutomationMissingReceiptsView, { initialState as initialExpenseAutomationMissingReceiptsViewState, } from './view/expenseAutomationView/reducers/missingReceiptsViewReducer';
|
|
108
108
|
import expenseAutomationReconciliationView, { initialState as initialExpenseAutomationReconciliationViewState, } from './view/expenseAutomationView/reducers/reconciliationViewReducer';
|
|
109
109
|
import expenseAutomationTransactionsView, { initialState as initialExpenseAutomationTransactionsViewState, } from './view/expenseAutomationView/reducers/transactionsViewReducer';
|
|
110
|
-
import featureNotificationView, { initialState as initialFeatureNotificationViewState, } from './view/featureNotificationView/featureNotificationViewReducer';
|
|
111
110
|
import fileView from './view/fileView/fileViewReducer';
|
|
112
111
|
import { initialFileViewState, } from './view/fileView/fileViewState';
|
|
112
|
+
import featureNotificationView, { initialState as initialFeatureNotificationViewState, } from './view/featureNotificationView/featureNotificationViewReducer';
|
|
113
113
|
import financeStatement, { initialFinanceStatementState, } from './view/financeStatement/financeStatementReducer';
|
|
114
114
|
import forecastList, { initialState as initialForecastListState, } from './view/forecastList/forecastListReducer';
|
|
115
115
|
import globalMerchantAutoComplete, { initialState as initialGlobalMerchantAutoCompleteState, } from './view/globalMerchantView/globalMerchantAutoCompleteView/globalMerchantAutoCompleteViewReducer';
|
|
@@ -7,7 +7,9 @@ import { fetchAiAccountantCustomers, updateAiAccountantCustomers, updateAiAccoun
|
|
|
7
7
|
export const fetchAiAccountantCustomersEpic = (actions$, _, zeniAPI) => actions$.pipe(filter(fetchAiAccountantCustomers.match), switchMap(() => {
|
|
8
8
|
const base = `${zeniAPI.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels`;
|
|
9
9
|
const url = `${base}/ai-accountant/customers`;
|
|
10
|
-
return zeniAPI
|
|
10
|
+
return zeniAPI
|
|
11
|
+
.getJSON(url)
|
|
12
|
+
.pipe(mergeMap((response) => {
|
|
11
13
|
if (isSuccessResponse(response)) {
|
|
12
14
|
const customers = response.data?.customers ?? [];
|
|
13
15
|
const users = response.data?.users ?? [];
|
|
@@ -20,5 +22,6 @@ export const fetchAiAccountantCustomersEpic = (actions$, _, zeniAPI) => actions$
|
|
|
20
22
|
else {
|
|
21
23
|
return of(updateAiAccountantCustomersFailure(response.status));
|
|
22
24
|
}
|
|
23
|
-
}), catchError((error) => of(updateAiAccountantCustomersFailure(createZeniAPIStatus('Unexpected error', 'AI Accountant customers fetch failed: ' +
|
|
25
|
+
}), catchError((error) => of(updateAiAccountantCustomersFailure(createZeniAPIStatus('Unexpected error', 'AI Accountant customers fetch failed: ' +
|
|
26
|
+
JSON.stringify(error))))));
|
|
24
27
|
}));
|
|
@@ -20,7 +20,9 @@ export const fetchAiAccountantJobsEpic = (actions$, state$, zeniAPI) => actions$
|
|
|
20
20
|
}
|
|
21
21
|
const base = `${zeniAPI.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/cockpit-panels`;
|
|
22
22
|
const url = `${base}/ai-accountant/jobs?${params.toString()}`;
|
|
23
|
-
return zeniAPI
|
|
23
|
+
return zeniAPI
|
|
24
|
+
.getJSON(url)
|
|
25
|
+
.pipe(mergeMap((response) => {
|
|
24
26
|
if (isSuccessResponse(response)) {
|
|
25
27
|
const jobs = response.data?.jobs ?? [];
|
|
26
28
|
const users = response.data?.users ?? [];
|
|
@@ -39,6 +41,7 @@ export const fetchAiAccountantJobsEpic = (actions$, state$, zeniAPI) => actions$
|
|
|
39
41
|
}
|
|
40
42
|
}), catchError((error) => of(updateAiAccountantJobsFailure({
|
|
41
43
|
tenantId,
|
|
42
|
-
error: createZeniAPIStatus('Unexpected error', 'AI Accountant jobs fetch failed: ' +
|
|
44
|
+
error: createZeniAPIStatus('Unexpected error', 'AI Accountant jobs fetch failed: ' +
|
|
45
|
+
JSON.stringify(error)),
|
|
43
46
|
}))));
|
|
44
47
|
}));
|
|
@@ -51,10 +51,7 @@ export const triggerAiAccountantJobEpic = (actions$, state$, zeniAPI) => actions
|
|
|
51
51
|
messageText: 'failed',
|
|
52
52
|
type: 'error',
|
|
53
53
|
variables: [
|
|
54
|
-
{
|
|
55
|
-
variableName: '__reason__',
|
|
56
|
-
variableValue: 'Unexpected error',
|
|
57
|
-
},
|
|
54
|
+
{ variableName: '__reason__', variableValue: 'Unexpected error' },
|
|
58
55
|
],
|
|
59
56
|
}),
|
|
60
57
|
])));
|
|
@@ -4,7 +4,7 @@ import { getTagsByIds } from '../../entity/tag/tagSelector';
|
|
|
4
4
|
import { getTaskById } from '../../entity/task/taskSelector';
|
|
5
5
|
import { getUserByUserId, getUsersByUserIds, } from '../../entity/user/userSelector';
|
|
6
6
|
export const getCompanyTaskManagerView = createSelector((state) => state.companyTaskManagerViewState, (state) => state.companyState, (state) => state.userState, (state) => state.taskState, (state) => state.tagState, (companyTaskManagerViewState, companyState, userState, taskState, tagState) => {
|
|
7
|
-
const { taskIds, uiState, fetchState, error, totalTaskCount, metrics, metricsFetchState
|
|
7
|
+
const { taskIds, uiState, fetchState, error, totalTaskCount, metrics, metricsFetchState } = companyTaskManagerViewState;
|
|
8
8
|
const tasksList = [];
|
|
9
9
|
taskIds.forEach((taskId) => {
|
|
10
10
|
const task = getTaskById(taskState, taskId);
|