@zeniai/client-epic-state 4.16.82 → 4.16.84
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/entity/account/accountPayload.d.ts +0 -1
- package/lib/entity/account/accountPayload.js +0 -3
- package/lib/entity/account/accountSelector.js +0 -1
- package/lib/entity/account/accountState.d.ts +0 -4
- package/lib/entity/account/accountState.js +1 -6
- package/lib/entity/accountRecon/accountReconPayload.d.ts +0 -7
- package/lib/entity/accountRecon/accountReconPayload.js +0 -16
- package/lib/entity/accountRecon/accountReconReducer.d.ts +1 -8
- package/lib/entity/accountRecon/accountReconReducer.js +2 -57
- package/lib/entity/accountRecon/accountReconSelector.d.ts +2 -15
- package/lib/entity/accountRecon/accountReconSelector.js +1 -11
- package/lib/entity/accountRecon/accountReconState.d.ts +1 -17
- package/lib/entity/accountRecon/accountReconState.js +2 -21
- package/lib/entity/aiController/aiControllerPayload.d.ts +1 -1
- package/lib/entity/aiController/aiControllerReducer.d.ts +1 -4
- package/lib/entity/aiController/aiControllerReducer.js +90 -266
- package/lib/entity/aiController/aiControllerState.d.ts +1 -3
- package/lib/entity/file/filePayload.d.ts +9 -9
- package/lib/entity/file/fileState.d.ts +4 -4
- package/lib/entity/tenant/clearAllEpic.d.ts +2 -2
- package/lib/entity/tenant/clearAllEpic.js +1 -1
- package/lib/epic.d.ts +1 -3
- package/lib/epic.js +1 -3
- package/lib/index.d.ts +7 -9
- package/lib/index.js +28 -38
- package/lib/view/aiControllerView/aiControllerViewReducer.d.ts +1 -4
- package/lib/view/aiControllerView/aiControllerViewReducer.js +5 -27
- package/lib/view/aiControllerView/aiControllerViewSelector.d.ts +0 -1
- package/lib/view/aiControllerView/aiControllerViewSelector.js +2 -3
- package/lib/view/aiControllerView/aiControllerViewState.d.ts +2 -5
- package/lib/view/aiControllerView/epics/fetchChatHistoryEpic.d.ts +1 -1
- package/lib/view/aiControllerView/epics/fetchChatHistoryEpic.js +3 -15
- package/lib/view/aiControllerView/epics/fetchChatSessionsForUserEpic.d.ts +1 -1
- package/lib/view/aiControllerView/epics/fetchChatSessionsForUserEpic.js +3 -15
- package/lib/view/aiControllerView/epics/submitQuestionEpic.d.ts +2 -2
- package/lib/view/aiControllerView/epics/submitQuestionEpic.js +5 -6
- package/lib/view/autoComplete/entityAutoCompleteReducer.d.ts +2 -9
- package/lib/view/autoComplete/entityAutoCompleteReducer.js +11 -25
- package/lib/view/autoComplete/entityAutoCompleteSelector.d.ts +1 -3
- package/lib/view/autoComplete/entityAutoCompleteSelector.js +3 -3
- package/lib/view/autoComplete/entityAutoCompleteState.d.ts +2 -3
- package/lib/view/autoComplete/fetchEntityAutoCompleteEpic.js +6 -15
- package/lib/view/companyView/types/cockpitTypes.d.ts +2 -2
- package/lib/view/expenseAutomationView/epics/accountRecon/fetchReconciliationViewEpic.d.ts +1 -2
- package/lib/view/expenseAutomationView/epics/accountRecon/fetchReconciliationViewEpic.js +2 -4
- package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.js +1 -27
- package/lib/view/expenseAutomationView/payload/reconciliationPayload.d.ts +1 -29
- package/lib/view/expenseAutomationView/reducers/reconciliationViewReducer.d.ts +4 -37
- package/lib/view/expenseAutomationView/reducers/reconciliationViewReducer.js +4 -80
- package/lib/view/expenseAutomationView/selectorTypes/reconciliationViewSelectorTypes.d.ts +4 -10
- package/lib/view/expenseAutomationView/selectors/reconciliationViewSelector.js +0 -12
- package/lib/view/expenseAutomationView/types/reconciliationViewState.d.ts +6 -16
- package/lib/view/spendManagement/billPay/billList/billListReducer.d.ts +1 -1
- package/lib/view/spendManagement/billPay/billList/billListState.d.ts +1 -1
- package/lib/view/spendManagement/reimbursement/remiListView/remiListReducer.d.ts +1 -1
- package/lib/view/spendManagement/reimbursement/remiListView/remiListState.d.ts +3 -3
- package/lib/view/vendorReviewView/vendorGlobalReviewView/vendorGlobalReviewViewState.d.ts +1 -1
- package/package.json +1 -1
- package/lib/view/expenseAutomationView/epics/accountRecon/deleteAccountStatementEpic.d.ts +0 -9
- package/lib/view/expenseAutomationView/epics/accountRecon/deleteAccountStatementEpic.js +0 -41
- package/lib/view/expenseAutomationView/epics/accountRecon/uploadAccountStatementDocumentAIHelper.d.ts +0 -12
- package/lib/view/expenseAutomationView/epics/accountRecon/uploadAccountStatementDocumentAIHelper.js +0 -54
- package/lib/view/expenseAutomationView/epics/accountRecon/uploadAccountStatementEpic.d.ts +0 -15
- package/lib/view/expenseAutomationView/epics/accountRecon/uploadAccountStatementEpic.js +0 -46
|
@@ -6,7 +6,7 @@ const operators_1 = require("rxjs/operators");
|
|
|
6
6
|
const aiControllerReducer_1 = require("../../../entity/aiController/aiControllerReducer");
|
|
7
7
|
const responsePayload_1 = require("../../../responsePayload");
|
|
8
8
|
const aiControllerViewReducer_1 = require("../aiControllerViewReducer");
|
|
9
|
-
const submitQuestionEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(aiControllerViewReducer_1.submitQuestion.match), (0, operators_1.
|
|
9
|
+
const submitQuestionEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(aiControllerViewReducer_1.submitQuestion.match), (0, operators_1.switchMap)((action) => {
|
|
10
10
|
const { questionAnswerId, userId, questionId, createdAt, question } = action.payload;
|
|
11
11
|
const { aiControllerViewState } = state$.value;
|
|
12
12
|
const { uiState } = aiControllerViewState;
|
|
@@ -16,9 +16,7 @@ const submitQuestionEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, oper
|
|
|
16
16
|
if (agentId == null || sessionId == null || Boolean(question) == false) {
|
|
17
17
|
throw new Error('Invalid State');
|
|
18
18
|
}
|
|
19
|
-
|
|
20
|
-
const updateSessionAction = (0, aiControllerReducer_1.updateNewSession)({ chatSessionId: sessionId });
|
|
21
|
-
return (0, rxjs_1.concat)((0, rxjs_1.of)(updateSessionAction), zeniAPI
|
|
19
|
+
return zeniAPI
|
|
22
20
|
.postAndGetJSON(`${zeniAPI.apiEndPoints.aiControllerMicroServiceBaseUrl}/1.0/agents/${agentId}`, payload)
|
|
23
21
|
.pipe((0, operators_1.mergeMap)((response) => {
|
|
24
22
|
if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
|
|
@@ -34,13 +32,14 @@ const submitQuestionEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, oper
|
|
|
34
32
|
answerPayload: response.data,
|
|
35
33
|
userId,
|
|
36
34
|
insertQuestionAnswer: false, // Don't insert the Q/A here after stopSubmitSuccess
|
|
37
|
-
})
|
|
35
|
+
}));
|
|
36
|
+
actions.push((0, aiControllerViewReducer_1.submitQuestionSuccess)());
|
|
38
37
|
return (0, rxjs_1.of)(...actions);
|
|
39
38
|
}
|
|
40
39
|
else {
|
|
41
40
|
return (0, rxjs_1.of)((0, aiControllerViewReducer_1.submitQuestionFailure)(response.status));
|
|
42
41
|
}
|
|
43
42
|
}), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, aiControllerViewReducer_1.submitQuestionFailure)((0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Submit question REST API call errored out' +
|
|
44
|
-
JSON.stringify(error))))))
|
|
43
|
+
JSON.stringify(error))))));
|
|
45
44
|
}));
|
|
46
45
|
exports.submitQuestionEpic = submitQuestionEpic;
|
|
@@ -1,20 +1,13 @@
|
|
|
1
1
|
import { Entity, EntityType } from '../../entity/genericEntity/entity';
|
|
2
2
|
import { ZeniAPIStatus } from '../../responsePayload';
|
|
3
3
|
import { EntityAutoCompleteResponsePayload } from './entityAutoCompletePayload';
|
|
4
|
-
import { EntityAutoCompleteState
|
|
4
|
+
import { EntityAutoCompleteState } from './entityAutoCompleteState';
|
|
5
5
|
interface EntityAutoCompletePayload {
|
|
6
6
|
searchString: string;
|
|
7
|
-
searchOrigin: SearchOrigin;
|
|
8
7
|
entityType?: EntityType;
|
|
9
8
|
selectedEntity?: Entity;
|
|
10
9
|
}
|
|
11
10
|
export declare const initialState: EntityAutoCompleteState;
|
|
12
|
-
export declare const fetchEntityAutoCompleteResults: import("@reduxjs/toolkit").ActionCreatorWithPayload<EntityAutoCompletePayload, "entityAutoComplete/fetchEntityAutoCompleteResults">, updateEntityAutoCompleteResults: import("@reduxjs/toolkit").ActionCreatorWithPayload<
|
|
13
|
-
entitiesData: EntityAutoCompleteResponsePayload;
|
|
14
|
-
searchOrigin: SearchOrigin;
|
|
15
|
-
}, "entityAutoComplete/updateEntityAutoCompleteResults">, clearEntityAutoCompleteResults: import("@reduxjs/toolkit").ActionCreatorWithPayload<SearchOrigin, "entityAutoComplete/clearEntityAutoCompleteResults">, clearAllEntityAutoCompleteResults: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"entityAutoComplete/clearAllEntityAutoCompleteResults">, updateEntityAutoCompleteFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
16
|
-
status: ZeniAPIStatus;
|
|
17
|
-
searchOrigin: SearchOrigin;
|
|
18
|
-
}, "entityAutoComplete/updateEntityAutoCompleteFailure">;
|
|
11
|
+
export declare const fetchEntityAutoCompleteResults: import("@reduxjs/toolkit").ActionCreatorWithPayload<EntityAutoCompletePayload, "entityAutoComplete/fetchEntityAutoCompleteResults">, updateEntityAutoCompleteResults: import("@reduxjs/toolkit").ActionCreatorWithPayload<EntityAutoCompleteResponsePayload, "entityAutoComplete/updateEntityAutoCompleteResults">, updateEntityAutoCompleteFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "entityAutoComplete/updateEntityAutoCompleteFailure">, clearEntityAutoCompleteResults: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"entityAutoComplete/clearEntityAutoCompleteResults">;
|
|
19
12
|
declare const _default: import("redux").Reducer<EntityAutoCompleteState>;
|
|
20
13
|
export default _default;
|
|
@@ -1,18 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.
|
|
4
|
+
exports.clearEntityAutoCompleteResults = exports.updateEntityAutoCompleteFailure = exports.updateEntityAutoCompleteResults = exports.fetchEntityAutoCompleteResults = exports.initialState = void 0;
|
|
5
5
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
6
6
|
exports.initialState = {
|
|
7
|
-
entityIds:
|
|
7
|
+
entityIds: [],
|
|
8
8
|
version: '1.0',
|
|
9
9
|
fetchState: 'Not-Started',
|
|
10
10
|
error: undefined,
|
|
11
11
|
status: undefined,
|
|
12
|
-
autoCompleteText:
|
|
13
|
-
navbar: undefined,
|
|
14
|
-
common: undefined,
|
|
15
|
-
},
|
|
12
|
+
autoCompleteText: undefined,
|
|
16
13
|
hasValidState() {
|
|
17
14
|
return this.fetchState == 'Completed';
|
|
18
15
|
},
|
|
@@ -22,38 +19,27 @@ const entityAutoComplete = (0, toolkit_1.createSlice)({
|
|
|
22
19
|
initialState: exports.initialState,
|
|
23
20
|
reducers: {
|
|
24
21
|
fetchEntityAutoCompleteResults(entityAutoCompleteState, action) {
|
|
25
|
-
|
|
26
|
-
entityAutoCompleteState.autoCompleteText[searchOrigin] = searchString;
|
|
22
|
+
entityAutoCompleteState.autoCompleteText = action.payload.searchString;
|
|
27
23
|
entityAutoCompleteState.fetchState = 'In-Progress';
|
|
28
24
|
entityAutoCompleteState.error = undefined;
|
|
29
25
|
},
|
|
30
26
|
updateEntityAutoCompleteResults(entityAutoCompleteState, action) {
|
|
31
27
|
//map payload to internal state
|
|
32
|
-
const { entitiesData, searchOrigin } = action.payload;
|
|
33
28
|
entityAutoCompleteState.fetchState = 'Completed';
|
|
34
|
-
entityAutoCompleteState.entityIds
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
});
|
|
38
|
-
},
|
|
39
|
-
clearEntityAutoCompleteResults(entityAutoCompleteState, action) {
|
|
40
|
-
const searchOrigin = action.payload;
|
|
41
|
-
entityAutoCompleteState.fetchState = 'Not-Started';
|
|
42
|
-
entityAutoCompleteState.error = undefined;
|
|
43
|
-
delete entityAutoCompleteState.entityIds[searchOrigin];
|
|
44
|
-
entityAutoCompleteState.autoCompleteText[searchOrigin] = undefined;
|
|
29
|
+
entityAutoCompleteState.entityIds = action.payload.entities.map((entity) => {
|
|
30
|
+
return entity.entity_id;
|
|
31
|
+
});
|
|
45
32
|
},
|
|
46
|
-
|
|
33
|
+
clearEntityAutoCompleteResults(entityAutoCompleteState) {
|
|
47
34
|
//map state to initial state
|
|
48
35
|
Object.assign(entityAutoCompleteState, exports.initialState);
|
|
49
36
|
},
|
|
50
37
|
updateEntityAutoCompleteFailure(entityAutoCompleteState, action) {
|
|
51
|
-
const { searchOrigin, status } = action.payload;
|
|
52
38
|
entityAutoCompleteState.fetchState = 'Error';
|
|
53
|
-
entityAutoCompleteState.error =
|
|
54
|
-
entityAutoCompleteState.entityIds
|
|
39
|
+
entityAutoCompleteState.error = action.payload;
|
|
40
|
+
entityAutoCompleteState.entityIds = [];
|
|
55
41
|
},
|
|
56
42
|
},
|
|
57
43
|
});
|
|
58
|
-
_a = entityAutoComplete.actions, exports.fetchEntityAutoCompleteResults = _a.fetchEntityAutoCompleteResults, exports.updateEntityAutoCompleteResults = _a.updateEntityAutoCompleteResults, exports.
|
|
44
|
+
_a = entityAutoComplete.actions, exports.fetchEntityAutoCompleteResults = _a.fetchEntityAutoCompleteResults, exports.updateEntityAutoCompleteResults = _a.updateEntityAutoCompleteResults, exports.updateEntityAutoCompleteFailure = _a.updateEntityAutoCompleteFailure, exports.clearEntityAutoCompleteResults = _a.clearEntityAutoCompleteResults;
|
|
59
45
|
exports.default = entityAutoComplete.reducer;
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import { SelectorView } from '../../commonStateTypes/viewAndReport/viewAndReport';
|
|
2
2
|
import { Entity } from '../../entity/genericEntity/entity';
|
|
3
3
|
import { RootState } from '../../reducer';
|
|
4
|
-
import { SearchOrigin } from './entityAutoCompleteState';
|
|
5
4
|
export interface EntityAutoCompleteView extends SelectorView {
|
|
6
5
|
customer: Entity[];
|
|
7
6
|
vendor: Entity[];
|
|
8
|
-
autoCompleteText?: string;
|
|
9
7
|
}
|
|
10
|
-
export declare const getEntityAutoCompleteResults: (state: RootState
|
|
8
|
+
export declare const getEntityAutoCompleteResults: (state: RootState) => EntityAutoCompleteView;
|
|
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getEntityAutoCompleteResults = void 0;
|
|
4
4
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
5
5
|
const entitySelector_1 = require("../../entity/genericEntity/entitySelector");
|
|
6
|
-
exports.getEntityAutoCompleteResults = (0, toolkit_1.createSelector)((state) => state.entityAutoCompleteState, (state) => state.entityState, (
|
|
7
|
-
const entityList = (0, entitySelector_1.getEntityByEntityIDs)(entityState, autoCompleteState.entityIds
|
|
6
|
+
exports.getEntityAutoCompleteResults = (0, toolkit_1.createSelector)((state) => state.entityAutoCompleteState, (state) => state.entityState, (autoCompleteState, entityState) => {
|
|
7
|
+
const entityList = (0, entitySelector_1.getEntityByEntityIDs)(entityState, autoCompleteState.entityIds);
|
|
8
8
|
const customers = [];
|
|
9
9
|
const vendors = [];
|
|
10
10
|
entityList.forEach((entity) => {
|
|
@@ -20,6 +20,6 @@ exports.getEntityAutoCompleteResults = (0, toolkit_1.createSelector)((state) =>
|
|
|
20
20
|
vendor: vendors,
|
|
21
21
|
version: '1.0',
|
|
22
22
|
fetchState: autoCompleteState.fetchState,
|
|
23
|
-
error: autoCompleteState.error
|
|
23
|
+
error: autoCompleteState.error,
|
|
24
24
|
};
|
|
25
25
|
});
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { FetchedState, ID } from '../../commonStateTypes/common';
|
|
2
2
|
import { View } from '../../commonStateTypes/viewAndReport/viewAndReport';
|
|
3
|
-
export type SearchOrigin = 'navbar' | 'common';
|
|
4
3
|
export interface EntityAutoCompleteState extends FetchedState, View {
|
|
5
|
-
entityIds:
|
|
6
|
-
autoCompleteText
|
|
4
|
+
entityIds: ID[];
|
|
5
|
+
autoCompleteText?: string;
|
|
7
6
|
}
|
|
@@ -8,15 +8,15 @@ const responsePayload_1 = require("../../responsePayload");
|
|
|
8
8
|
const entityAutoCompleteReducer_1 = require("./entityAutoCompleteReducer");
|
|
9
9
|
const fetchEntityAutoCompleteEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(entityAutoCompleteReducer_1.fetchEntityAutoCompleteResults.match), (0, operators_1.concatMap)((action) => {
|
|
10
10
|
const state = state$.value;
|
|
11
|
-
const
|
|
12
|
-
const
|
|
11
|
+
const searchString = state.entityAutoCompleteState.autoCompleteText;
|
|
12
|
+
const { entityType } = action.payload;
|
|
13
13
|
// Only fire the search if the current state is the same as the one
|
|
14
14
|
// that came from the action. Else skip.
|
|
15
15
|
const queryParam = {
|
|
16
16
|
search_text: searchString,
|
|
17
17
|
entity_type: entityType,
|
|
18
18
|
};
|
|
19
|
-
if (
|
|
19
|
+
if (searchString === action.payload.searchString) {
|
|
20
20
|
return zeniAPI
|
|
21
21
|
.getJSON(`${zeniAPI.apiEndPoints.searchMicroServiceBaseUrl}/1.0/autocomplete?query=${encodeURIComponent(JSON.stringify(queryParam))}`)
|
|
22
22
|
.pipe((0, operators_1.concatMap)((response) => {
|
|
@@ -26,23 +26,14 @@ const fetchEntityAutoCompleteEpic = (actions$, state$, zeniAPI) => actions$.pipe
|
|
|
26
26
|
const updateActions = [];
|
|
27
27
|
// eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain
|
|
28
28
|
updateActions.push((0, entityReducer_1.updateEntities)((_a = response.data) === null || _a === void 0 ? void 0 : _a.entities));
|
|
29
|
-
updateActions.push((0, entityAutoCompleteReducer_1.updateEntityAutoCompleteResults)(
|
|
30
|
-
entitiesData: response.data,
|
|
31
|
-
searchOrigin,
|
|
32
|
-
}));
|
|
29
|
+
updateActions.push((0, entityAutoCompleteReducer_1.updateEntityAutoCompleteResults)(response.data));
|
|
33
30
|
return (0, rxjs_1.from)(updateActions);
|
|
34
31
|
/* eslint-enable @typescript-eslint/no-non-null-assertion*/
|
|
35
32
|
}
|
|
36
33
|
else {
|
|
37
|
-
return (0, rxjs_1.of)((0, entityAutoCompleteReducer_1.updateEntityAutoCompleteFailure)(
|
|
38
|
-
status: response.status,
|
|
39
|
-
searchOrigin,
|
|
40
|
-
}));
|
|
34
|
+
return (0, rxjs_1.of)((0, entityAutoCompleteReducer_1.updateEntityAutoCompleteFailure)(response.status));
|
|
41
35
|
}
|
|
42
|
-
}), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, entityAutoCompleteReducer_1.updateEntityAutoCompleteFailure)(
|
|
43
|
-
status: (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'REST API call errored out' + JSON.stringify(error)),
|
|
44
|
-
searchOrigin,
|
|
45
|
-
}))));
|
|
36
|
+
}), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, entityAutoCompleteReducer_1.updateEntityAutoCompleteFailure)((0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'REST API call errored out' + JSON.stringify(error))))));
|
|
46
37
|
}
|
|
47
38
|
else {
|
|
48
39
|
return (0, rxjs_1.from)([]);
|
|
@@ -4,9 +4,9 @@ import { SubscriptionViewSortKey } from '../../subscriptionView/types/subscripti
|
|
|
4
4
|
import { FilterCategoryValueType } from '../helpers/cockpitHelpers';
|
|
5
5
|
import { CockpitDownloadTabsID, CockpitTabsFileType } from './cockpitTabsID';
|
|
6
6
|
export declare const toPortfolioSortKeyType: (v: string) => "expenses" | "runway" | "companyName" | "cashBalance" | "revenues" | "netIncome";
|
|
7
|
-
export declare const toManagementSortKeyType: (v: string) => "status" | "bookCloseDate" | "
|
|
7
|
+
export declare const toManagementSortKeyType: (v: string) => "status" | "bookCloseDate" | "taxStatus" | "controller" | "preparer" | "reviewer" | "annualRecurringRevenue" | "monthlyRecurringRevenue" | "companyName" | "group" | "task" | "notes" | "plans" | "customerSuccessManager" | "apAnalyst" | "reportSent" | "taxLead" | "satisfaction";
|
|
8
8
|
export declare const toOnboardingSortKeyType: (v: string) => "companyName" | "identityVerified" | "businessVerified" | "bankAccountLinked" | "qboLinked" | "groupCreated" | "customerCreated" | "notes" | "enroller" | "invite" | "latestCreated";
|
|
9
|
-
export declare const toHealthSortKeyType: (v: string) => "
|
|
9
|
+
export declare const toHealthSortKeyType: (v: string) => "runway" | "controller" | "monthlyRecurringRevenue" | "companyName" | "group" | "companyEngagementMetricsUpdatedAt" | "netPromoterScore" | "customerSatisfactionScore" | "externalProductServiceExposure" | "customerSuccessManager" | "lastReportSent" | "issues" | "productVerticals" | "churnProbability" | "subscriptionDate" | "renewalDate" | "dashboardLastSeen" | "lastEngagement";
|
|
10
10
|
export declare const toTaskManagerSortKeyType: (v: string) => "status" | "name" | "dueDate" | "tags" | "createdBy" | "priority" | "taskName" | "assignee";
|
|
11
11
|
export type PortfolioViewSortKey = ReturnType<typeof toPortfolioSortKeyType>;
|
|
12
12
|
export type ManagementViewSortKey = ReturnType<typeof toManagementSortKeyType>;
|
|
@@ -4,13 +4,12 @@ import { ID } from '../../../../commonStateTypes/common';
|
|
|
4
4
|
import { updateAccounts } from '../../../../entity/account/accountReducer';
|
|
5
5
|
import { TransactionsToReviewPayload } from '../../../../entity/accountRecon/accountReconPayload';
|
|
6
6
|
import { updateAccountRecon } from '../../../../entity/accountRecon/accountReconReducer';
|
|
7
|
-
import { updateFiles } from '../../../../entity/file/fileReducer';
|
|
8
7
|
import { updateMultipleReconcileTransactions } from '../../../../entity/transaction/transactionReducer';
|
|
9
8
|
import { updateAllUsers } from '../../../../entity/user/userReducer';
|
|
10
9
|
import { RootState } from '../../../../reducer';
|
|
11
10
|
import { ZeniAPI } from '../../../../zeniAPI';
|
|
12
11
|
import { fetchReconciliation, fetchReconciliationFailure, fetchReconciliationSuccess, initialiseLocalDataForSelectedAccountId, initializeReconciliationReviewTabLocalData, updateReconcileTabLocalData } from '../../reducers/reconciliationViewReducer';
|
|
13
12
|
import { ReconciliationReviewTabLocalData } from '../../types/reconciliationViewState';
|
|
14
|
-
export type ActionType = ReturnType<typeof fetchReconciliation> | ReturnType<typeof fetchReconciliationFailure> | ReturnType<typeof fetchReconciliationSuccess> | ReturnType<typeof initialiseLocalDataForSelectedAccountId> | ReturnType<typeof initializeReconciliationReviewTabLocalData> | ReturnType<typeof updateAccountRecon> | ReturnType<typeof updateAccounts> | ReturnType<typeof
|
|
13
|
+
export type ActionType = ReturnType<typeof fetchReconciliation> | ReturnType<typeof fetchReconciliationFailure> | ReturnType<typeof fetchReconciliationSuccess> | ReturnType<typeof initialiseLocalDataForSelectedAccountId> | ReturnType<typeof initializeReconciliationReviewTabLocalData> | ReturnType<typeof updateAccountRecon> | ReturnType<typeof updateAccounts> | ReturnType<typeof updateAllUsers> | ReturnType<typeof updateMultipleReconcileTransactions> | ReturnType<typeof updateReconcileTabLocalData>;
|
|
15
14
|
export declare const fetchReconciliationViewEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
|
|
16
15
|
export declare const prepareReviewTabLocalData: (transactionsToReview: TransactionsToReviewPayload[]) => Record<ID, ReconciliationReviewTabLocalData>;
|
|
@@ -7,7 +7,6 @@ const timePeriod_1 = require("../../../../commonStateTypes/timePeriod");
|
|
|
7
7
|
const accountReducer_1 = require("../../../../entity/account/accountReducer");
|
|
8
8
|
const accountReconReducer_1 = require("../../../../entity/accountRecon/accountReconReducer");
|
|
9
9
|
const accountReconSelector_1 = require("../../../../entity/accountRecon/accountReconSelector");
|
|
10
|
-
const fileReducer_1 = require("../../../../entity/file/fileReducer");
|
|
11
10
|
const tenantSelector_1 = require("../../../../entity/tenant/tenantSelector");
|
|
12
11
|
const transactionReducer_1 = require("../../../../entity/transaction/transactionReducer");
|
|
13
12
|
const userReducer_1 = require("../../../../entity/user/userReducer");
|
|
@@ -54,7 +53,7 @@ const fetchReconciliationViewEpic = (actions$, state$, zeniAPI) => actions$.pipe
|
|
|
54
53
|
? `${zeniAPI.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation/${reconciliationId}?query=${encodeURIComponent(JSON.stringify(queryParam))}`
|
|
55
54
|
: `${zeniAPI.apiEndPoints.reconciliationMicroServiceBaseUrl}/1.0/reconciliation?query=${encodeURIComponent(JSON.stringify(queryParam))}`;
|
|
56
55
|
return zeniAPI.getJSON(apiUrl).pipe((0, operators_1.mergeMap)((response) => {
|
|
57
|
-
var _a, _b, _c, _d
|
|
56
|
+
var _a, _b, _c, _d;
|
|
58
57
|
if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
|
|
59
58
|
const updateActions = [];
|
|
60
59
|
updateActions.push((0, accountReducer_1.updateAccounts)(response.data.accounts, 'account_reconciliation'));
|
|
@@ -62,11 +61,10 @@ const fetchReconciliationViewEpic = (actions$, state$, zeniAPI) => actions$.pipe
|
|
|
62
61
|
users: (_a = response.data.users) !== null && _a !== void 0 ? _a : [],
|
|
63
62
|
updateType: 'merge',
|
|
64
63
|
}));
|
|
65
|
-
updateActions.push((0, fileReducer_1.updateFiles)({ files: (_b = response.data.files) !== null && _b !== void 0 ? _b : [] }));
|
|
66
64
|
const allTransactionsPerRecon = (0, reconciliationHelpers_1.getAllReviewTransactionsFromReconcilePayload)(response.data.reconciliation);
|
|
67
65
|
updateActions.push((0, transactionReducer_1.updateMultipleReconcileTransactions)(allTransactionsPerRecon, 'merge'));
|
|
68
66
|
updateActions.push((0, accountReconReducer_1.updateAccountRecon)(selectedPeriod, response.data.reconciliation));
|
|
69
|
-
const reviewTabLocalData = (0, exports.prepareReviewTabLocalData)((
|
|
67
|
+
const reviewTabLocalData = (0, exports.prepareReviewTabLocalData)((_d = (_c = (_b = response.data.reconciliation[0]) === null || _b === void 0 ? void 0 : _b.transactions) === null || _c === void 0 ? void 0 : _c.review) !== null && _d !== void 0 ? _d : []);
|
|
70
68
|
if (accountId != null) {
|
|
71
69
|
const selectedTransactionIds = (0, saveReconciliationDetailEpic_1.getTransactionIdFromCheckedMatchedTransactionPayload)(response.data.reconciliation[0].transactions.reconcile);
|
|
72
70
|
updateActions.push((0, reconciliationViewReducer_1.updateReconcileTabLocalData)({
|
|
@@ -77,7 +77,7 @@ const buildLineItemById = (transaction, recommendations) => {
|
|
|
77
77
|
const lineItemData = {};
|
|
78
78
|
const { lines } = transaction;
|
|
79
79
|
lines === null || lines === void 0 ? void 0 : lines.forEach((line) => {
|
|
80
|
-
var _a, _b
|
|
80
|
+
var _a, _b;
|
|
81
81
|
if (line.type === 'transaction_with_account_and_class_line' ||
|
|
82
82
|
line.type === 'transaction_with_product_or_service_line' ||
|
|
83
83
|
line.type === 'journal_entry_transaction_line') {
|
|
@@ -128,32 +128,6 @@ const buildLineItemById = (transaction, recommendations) => {
|
|
|
128
128
|
record.reviewPendingReasons = accountLine.reviewPendingReasons;
|
|
129
129
|
if (recommendations != null) {
|
|
130
130
|
record.recommendations = recommendations[lineId];
|
|
131
|
-
const higherPreferenceRecommendation = (_c = recommendations[lineId]) === null || _c === void 0 ? void 0 : _c[0];
|
|
132
|
-
if (accountLine.account.accountId === '' ||
|
|
133
|
-
(accountLine.account.accountId == null &&
|
|
134
|
-
(higherPreferenceRecommendation === null || higherPreferenceRecommendation === void 0 ? void 0 : higherPreferenceRecommendation.account) != null)) {
|
|
135
|
-
record.account =
|
|
136
|
-
(_d = higherPreferenceRecommendation === null || higherPreferenceRecommendation === void 0 ? void 0 : higherPreferenceRecommendation.account) !== null && _d !== void 0 ? _d : record.account;
|
|
137
|
-
}
|
|
138
|
-
if (accountLine.class.classId === '' &&
|
|
139
|
-
(higherPreferenceRecommendation === null || higherPreferenceRecommendation === void 0 ? void 0 : higherPreferenceRecommendation.class) != null) {
|
|
140
|
-
record.class = (_e = higherPreferenceRecommendation === null || higherPreferenceRecommendation === void 0 ? void 0 : higherPreferenceRecommendation.class) !== null && _e !== void 0 ? _e : record.class;
|
|
141
|
-
}
|
|
142
|
-
if (record.selectedEntityLine == null) {
|
|
143
|
-
const vendor = higherPreferenceRecommendation === null || higherPreferenceRecommendation === void 0 ? void 0 : higherPreferenceRecommendation.vendor;
|
|
144
|
-
if (vendor != null && vendor.id != null) {
|
|
145
|
-
const { id, name, logo } = vendor;
|
|
146
|
-
record.vendor = { id, name, logo };
|
|
147
|
-
record.selectedEntityLine = {
|
|
148
|
-
id,
|
|
149
|
-
name,
|
|
150
|
-
logo,
|
|
151
|
-
type: 'vendor',
|
|
152
|
-
qboId: id,
|
|
153
|
-
zeniId: id,
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
131
|
}
|
|
158
132
|
lineItemData[line.id] = record;
|
|
159
133
|
if (line.platformLineDetailType === 'deposit_line_detail') {
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { StatusCodeWithLabelPayload } from '../../../commonPayloadTypes/statusPayload';
|
|
2
1
|
import { MonthYearPeriod } from '../../../commonStateTypes/timePeriod';
|
|
3
2
|
import { AccountPayload } from '../../../entity/account/accountPayload';
|
|
4
|
-
import { ReconciliationDataPayload,
|
|
3
|
+
import { ReconciliationDataPayload, TransactionsToReviewPayload } from '../../../entity/accountRecon/accountReconPayload';
|
|
5
4
|
import { AccountReconciliationEntity } from '../../../entity/accountRecon/accountReconSelector';
|
|
6
|
-
import { FilePayload } from '../../../entity/file/filePayload';
|
|
7
5
|
import { MatchedTransactionPayload } from '../../../entity/transaction/payloadTypes/reconciliationTransactionPayloads';
|
|
8
6
|
import { UserPayload } from '../../../entity/user/userPayload';
|
|
9
7
|
import { RootState } from '../../../reducer';
|
|
@@ -14,7 +12,6 @@ export interface AccountAndPaymentAccountPayload extends AccountPayload {
|
|
|
14
12
|
}
|
|
15
13
|
export interface ReconciliationPayload {
|
|
16
14
|
accounts: AccountAndPaymentAccountPayload[];
|
|
17
|
-
files: FilePayload[];
|
|
18
15
|
reconciliation: ReconciliationDataPayload[];
|
|
19
16
|
users: UserPayload[];
|
|
20
17
|
}
|
|
@@ -29,28 +26,3 @@ export declare function createSaveReconciliationPayloadBasedOnActionAndMethod(st
|
|
|
29
26
|
review: TransactionsToReviewPayload[];
|
|
30
27
|
};
|
|
31
28
|
};
|
|
32
|
-
export interface DeleteStatementResponsePayload {
|
|
33
|
-
statement_upload: {
|
|
34
|
-
statement_status: StatusCodeWithLabelPayload;
|
|
35
|
-
statement_meta_data: StatementMetaDataPayload | null;
|
|
36
|
-
statement_data_status: StatusCodeWithLabelPayload;
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
export type DeleteStatementResponse = ZeniAPIResponse<DeleteStatementResponsePayload>;
|
|
40
|
-
export interface UploadStatementDocumentAIPayload {
|
|
41
|
-
files: FilePayload[];
|
|
42
|
-
processor_run_id: string;
|
|
43
|
-
}
|
|
44
|
-
export type UploadStatementDocumentAIResponse = ZeniAPIResponse<UploadStatementDocumentAIPayload>;
|
|
45
|
-
export interface UploadStatementResponsePayload {
|
|
46
|
-
file: FilePayload;
|
|
47
|
-
statement_upload: {
|
|
48
|
-
account_type: string;
|
|
49
|
-
statement_end_date: string;
|
|
50
|
-
statement_start_date: string;
|
|
51
|
-
statement_upload_id: string;
|
|
52
|
-
statement_status: StatusCodeWithLabelPayload;
|
|
53
|
-
statement_data_status: StatusCodeWithLabelPayload;
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
export type UploadStatementResponse = ZeniAPIResponse<UploadStatementResponsePayload>;
|
|
@@ -3,8 +3,8 @@ import { FetchState, ID } from '../../../commonStateTypes/common';
|
|
|
3
3
|
import { SortOrder } from '../../../commonStateTypes/selectorTypes/sortOrderTypes';
|
|
4
4
|
import { MonthYearPeriod } from '../../../commonStateTypes/timePeriod';
|
|
5
5
|
import { ZeniAPIStatus } from '../../../responsePayload';
|
|
6
|
-
import { ReconciliationPayload
|
|
7
|
-
import {
|
|
6
|
+
import { ReconciliationPayload } from '../payload/reconciliationPayload';
|
|
7
|
+
import { ActionFetchStates, ReconReconcileSortKey, ReconReviewSortKey, ReconciliationReviewTabLocalData, ReconciliationTabsState, ReconciliationViewState, ReconciliationViewTabType, SaveReconcileDetailActionPayload, SaveReconciliationDetailFailurePayload, TransactionSummary } from '../types/reconciliationViewState';
|
|
8
8
|
export declare const initialReconciliationTabsState: ReconciliationTabsState;
|
|
9
9
|
export declare const initialActionFetchState: ActionFetchStates;
|
|
10
10
|
export declare const initialState: ReconciliationViewState;
|
|
@@ -30,11 +30,7 @@ export declare const fetchReconciliation: import("@reduxjs/toolkit").ActionCreat
|
|
|
30
30
|
}, "expenseAutomationReconciliationView/updateSelectedAccountId">, setConnectionInProgressForAccount: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
31
31
|
accountId: ID;
|
|
32
32
|
connectionInProgress: boolean;
|
|
33
|
-
}, "expenseAutomationReconciliationView/setConnectionInProgressForAccount">,
|
|
34
|
-
accountId: ID;
|
|
35
|
-
selectedPeriod: MonthYearPeriod;
|
|
36
|
-
statementParseInProgress: boolean;
|
|
37
|
-
}, "expenseAutomationReconciliationView/setStatementParseInProgress">, updateReconcileTabLocalData: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
33
|
+
}, "expenseAutomationReconciliationView/setConnectionInProgressForAccount">, updateReconcileTabLocalData: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
38
34
|
selectedTransactionIds: ID[];
|
|
39
35
|
}, "expenseAutomationReconciliationView/updateReconcileTabLocalData">, updateReconcileTabListSortState: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
40
36
|
sortKey: ReconReconcileSortKey;
|
|
@@ -70,35 +66,6 @@ export declare const fetchReconciliation: import("@reduxjs/toolkit").ActionCreat
|
|
|
70
66
|
scrollLeft?: number;
|
|
71
67
|
scrollTop: number;
|
|
72
68
|
};
|
|
73
|
-
}, "expenseAutomationReconciliationView/updateReconListScrollPosition"
|
|
74
|
-
accountId: ID;
|
|
75
|
-
selectedPeriod: MonthYearPeriod;
|
|
76
|
-
localData: AccountReconciliationLocalData;
|
|
77
|
-
}, "expenseAutomationReconciliationView/updateAccountReconciliationLocalData">, deleteAccountStatement: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
78
|
-
accountId: ID;
|
|
79
|
-
selectedPeriod: MonthYearPeriod;
|
|
80
|
-
statementUploadId: ID;
|
|
81
|
-
fileId: ID;
|
|
82
|
-
}, "expenseAutomationReconciliationView/deleteAccountStatement">, deleteAccountStatementSuccess: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
83
|
-
accountId: ID;
|
|
84
|
-
selectedPeriod: MonthYearPeriod;
|
|
85
|
-
}, "expenseAutomationReconciliationView/deleteAccountStatementSuccess">, deleteAccountStatementFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
86
|
-
accountId: ID;
|
|
87
|
-
selectedPeriod: MonthYearPeriod;
|
|
88
|
-
error: ZeniAPIStatus;
|
|
89
|
-
}, "expenseAutomationReconciliationView/deleteAccountStatementFailure">, uploadAccountStatement: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
90
|
-
accountId: ID;
|
|
91
|
-
selectedPeriod: MonthYearPeriod;
|
|
92
|
-
payload: UploadStatementDocumentAIPayload;
|
|
93
|
-
}, "expenseAutomationReconciliationView/uploadAccountStatement">, uploadAccountStatementSuccess: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
94
|
-
accountId: ID;
|
|
95
|
-
selectedPeriod: MonthYearPeriod;
|
|
96
|
-
}, "expenseAutomationReconciliationView/uploadAccountStatementSuccess">, uploadAccountStatementFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
97
|
-
accountId: ID;
|
|
98
|
-
selectedPeriod: MonthYearPeriod;
|
|
99
|
-
error: ZeniAPIStatus;
|
|
100
|
-
}, "expenseAutomationReconciliationView/uploadAccountStatementFailure">, updateStatementUploadChosen: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
101
|
-
statementUploadChosen: boolean;
|
|
102
|
-
}, "expenseAutomationReconciliationView/updateStatementUploadChosen">;
|
|
69
|
+
}, "expenseAutomationReconciliationView/updateReconListScrollPosition">;
|
|
103
70
|
declare const _default: import("redux").Reducer<ReconciliationViewState>;
|
|
104
71
|
export default _default;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.
|
|
4
|
+
exports.updateReconListScrollPosition = exports.updateSaveReconciliationReviewFetchStatus = exports.saveReconciliationReview = exports.updateReviewTabLocalData = exports.initializeReconciliationReviewTabLocalData = exports.updateReviewTabSortState = exports.updateSelectedDrawerAccountId = exports.clearExpenseAutomationReconciliationView = exports.initialiseLocalDataForSelectedAccountId = exports.updateBalancesLocalData = exports.updateSelectedTab = exports.saveReconciliationDetailSuccess = exports.updateReconcileTabListScrollState = exports.updateReconcileTabListSortState = exports.updateReconcileTabLocalData = exports.setConnectionInProgressForAccount = exports.updateSelectedAccountId = exports.saveReconciliationDetailFailure = exports.saveReconciliationDetail = exports.fetchReconciliationSuccess = exports.fetchReconciliationFailure = exports.fetchReconciliation = exports.initialState = exports.initialActionFetchState = exports.initialReconciliationTabsState = void 0;
|
|
5
5
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
6
6
|
const timePeriod_1 = require("../../../commonStateTypes/timePeriod");
|
|
7
|
-
const accountState_1 = require("../../../entity/account/accountState");
|
|
8
7
|
const accountReconState_1 = require("../../../entity/accountRecon/accountReconState");
|
|
9
8
|
// Initial state
|
|
10
9
|
exports.initialReconciliationTabsState = {
|
|
@@ -62,7 +61,6 @@ exports.initialState = {
|
|
|
62
61
|
refreshStatus: { fetchState: 'Not-Started', error: undefined },
|
|
63
62
|
actionFetchState: exports.initialActionFetchState,
|
|
64
63
|
selectedAccountId: undefined,
|
|
65
|
-
statementUploadChosen: false,
|
|
66
64
|
reconListUIState: {
|
|
67
65
|
scrollPosition: {
|
|
68
66
|
scrollTop: 0,
|
|
@@ -324,75 +322,13 @@ const expenseAutomationReconciliationView = (0, toolkit_1.createSlice)({
|
|
|
324
322
|
draft.accountConnectionStatusByAccountID[action.payload.accountId] = Object.assign(Object.assign({}, draft.accountConnectionStatusByAccountID[action.payload.accountId]), { connectionInProgress: action.payload.connectionInProgress });
|
|
325
323
|
}
|
|
326
324
|
},
|
|
327
|
-
setStatementParseInProgress: (draft, action) => {
|
|
328
|
-
const { accountId, selectedPeriod, statementParseInProgress } = action.payload;
|
|
329
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId].statementParseInProgress =
|
|
330
|
-
statementParseInProgress;
|
|
331
|
-
},
|
|
332
|
-
uploadAccountStatement: (draft, action) => {
|
|
333
|
-
const { accountId, selectedPeriod } = action.payload;
|
|
334
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId].statementUploadStatus = {
|
|
335
|
-
fetchState: 'In-Progress',
|
|
336
|
-
error: undefined,
|
|
337
|
-
};
|
|
338
|
-
},
|
|
339
|
-
uploadAccountStatementSuccess: (draft, action) => {
|
|
340
|
-
const { accountId, selectedPeriod } = action.payload;
|
|
341
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId].statementUploadStatus = {
|
|
342
|
-
fetchState: 'Completed',
|
|
343
|
-
error: undefined,
|
|
344
|
-
};
|
|
345
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId].statementParseInProgress = true;
|
|
346
|
-
},
|
|
347
|
-
uploadAccountStatementFailure: (draft, action) => {
|
|
348
|
-
const { accountId, selectedPeriod } = action.payload;
|
|
349
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId].statementUploadStatus = {
|
|
350
|
-
fetchState: 'Error',
|
|
351
|
-
error: action.payload.error,
|
|
352
|
-
};
|
|
353
|
-
},
|
|
354
|
-
deleteAccountStatement: (draft, action) => {
|
|
355
|
-
const { accountId, selectedPeriod } = action.payload;
|
|
356
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId].statementDeleteStatus = {
|
|
357
|
-
fetchState: 'In-Progress',
|
|
358
|
-
error: undefined,
|
|
359
|
-
};
|
|
360
|
-
},
|
|
361
|
-
deleteAccountStatementSuccess: (draft, action) => {
|
|
362
|
-
const { accountId, selectedPeriod } = action.payload;
|
|
363
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId].statementDeleteStatus = {
|
|
364
|
-
fetchState: 'Completed',
|
|
365
|
-
error: undefined,
|
|
366
|
-
};
|
|
367
|
-
},
|
|
368
|
-
deleteAccountStatementFailure: (draft, action) => {
|
|
369
|
-
const { accountId, selectedPeriod } = action.payload;
|
|
370
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId].statementDeleteStatus = {
|
|
371
|
-
fetchState: 'Error',
|
|
372
|
-
error: action.payload.error,
|
|
373
|
-
};
|
|
374
|
-
},
|
|
375
|
-
updateAccountReconciliationLocalData: (draft, action) => {
|
|
376
|
-
const { accountId, selectedPeriod, localData } = action.payload;
|
|
377
|
-
const oldLocalData = draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId].localData;
|
|
378
|
-
if (oldLocalData == null) {
|
|
379
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId].localData = localData;
|
|
380
|
-
}
|
|
381
|
-
else {
|
|
382
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId].localData = Object.assign(Object.assign({}, oldLocalData), localData);
|
|
383
|
-
}
|
|
384
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId].localData = Object.assign(Object.assign({}, oldLocalData), localData);
|
|
385
|
-
},
|
|
386
|
-
updateStatementUploadChosen: (draft, action) => {
|
|
387
|
-
draft.statementUploadChosen = action.payload.statementUploadChosen;
|
|
388
|
-
},
|
|
389
325
|
clearExpenseAutomationReconciliationView: (draft) => {
|
|
390
326
|
Object.assign(draft, exports.initialState);
|
|
391
327
|
},
|
|
392
328
|
},
|
|
393
329
|
});
|
|
394
330
|
// Export actions
|
|
395
|
-
_a = expenseAutomationReconciliationView.actions, exports.fetchReconciliation = _a.fetchReconciliation, exports.fetchReconciliationFailure = _a.fetchReconciliationFailure, exports.fetchReconciliationSuccess = _a.fetchReconciliationSuccess, exports.saveReconciliationDetail = _a.saveReconciliationDetail, exports.saveReconciliationDetailFailure = _a.saveReconciliationDetailFailure, exports.updateSelectedAccountId = _a.updateSelectedAccountId, exports.setConnectionInProgressForAccount = _a.setConnectionInProgressForAccount, exports.
|
|
331
|
+
_a = expenseAutomationReconciliationView.actions, exports.fetchReconciliation = _a.fetchReconciliation, exports.fetchReconciliationFailure = _a.fetchReconciliationFailure, exports.fetchReconciliationSuccess = _a.fetchReconciliationSuccess, exports.saveReconciliationDetail = _a.saveReconciliationDetail, exports.saveReconciliationDetailFailure = _a.saveReconciliationDetailFailure, exports.updateSelectedAccountId = _a.updateSelectedAccountId, exports.setConnectionInProgressForAccount = _a.setConnectionInProgressForAccount, exports.updateReconcileTabLocalData = _a.updateReconcileTabLocalData, exports.updateReconcileTabListSortState = _a.updateReconcileTabListSortState, exports.updateReconcileTabListScrollState = _a.updateReconcileTabListScrollState, exports.saveReconciliationDetailSuccess = _a.saveReconciliationDetailSuccess, exports.updateSelectedTab = _a.updateSelectedTab, exports.updateBalancesLocalData = _a.updateBalancesLocalData, exports.initialiseLocalDataForSelectedAccountId = _a.initialiseLocalDataForSelectedAccountId, exports.clearExpenseAutomationReconciliationView = _a.clearExpenseAutomationReconciliationView, exports.updateSelectedDrawerAccountId = _a.updateSelectedDrawerAccountId, exports.updateReviewTabSortState = _a.updateReviewTabSortState, exports.initializeReconciliationReviewTabLocalData = _a.initializeReconciliationReviewTabLocalData, exports.updateReviewTabLocalData = _a.updateReviewTabLocalData, exports.saveReconciliationReview = _a.saveReconciliationReview, exports.updateSaveReconciliationReviewFetchStatus = _a.updateSaveReconciliationReviewFetchStatus, exports.updateReconListScrollPosition = _a.updateReconListScrollPosition;
|
|
396
332
|
// Export reducer
|
|
397
333
|
exports.default = expenseAutomationReconciliationView.reducer;
|
|
398
334
|
function updateAllReconciliation(draft, accounts, selectedPeriod, reconciliationData, refreshViewInBackground) {
|
|
@@ -425,15 +361,6 @@ function updateAllReconciliation(draft, accounts, selectedPeriod, reconciliation
|
|
|
425
361
|
reconciliationId: (_c = reconciliation.reconciliation_id) !== null && _c !== void 0 ? _c : undefined,
|
|
426
362
|
transactionFetchState: { fetchState: 'Not-Started', error: undefined },
|
|
427
363
|
refreshStatus: { fetchState: 'Not-Started', error: undefined },
|
|
428
|
-
statementDeleteStatus: { fetchState: 'Not-Started', error: undefined },
|
|
429
|
-
statementUploadStatus: { fetchState: 'Not-Started', error: undefined },
|
|
430
|
-
statementUpdateStatus: { fetchState: 'Not-Started', error: undefined },
|
|
431
|
-
statementParseInProgress: reconciliation.bank_status.code === 'parsing',
|
|
432
|
-
localData: {
|
|
433
|
-
accountSource: (account === null || account === void 0 ? void 0 : account.reconciliation_source) != null
|
|
434
|
-
? (0, accountState_1.toReconciliationAccountSource)(account.reconciliation_source)
|
|
435
|
-
: undefined,
|
|
436
|
-
},
|
|
437
364
|
};
|
|
438
365
|
accountReconciliationRecords.accountIDs.push(reconciliation.account_id);
|
|
439
366
|
});
|
|
@@ -460,13 +387,10 @@ function updateReconciliationByAccountID(draft, accounts, selectedPeriod, accoun
|
|
|
460
387
|
: false,
|
|
461
388
|
paymentAccountId: (_a = accounts.payment_account_id) !== null && _a !== void 0 ? _a : undefined,
|
|
462
389
|
};
|
|
463
|
-
const oldStatementParseInProgress = oldRecord.statementParseInProgress;
|
|
464
|
-
const statementParseInProgress = reconciliationData.bank_status.code === 'parsing' ||
|
|
465
|
-
oldStatementParseInProgress === true;
|
|
466
390
|
if (refreshViewInBackground === true) {
|
|
467
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId] = Object.assign(Object.assign({}, oldRecord), { reconciliationId: (_b = reconciliationData.reconciliation_id) !== null && _b !== void 0 ? _b : undefined, refreshStatus: { fetchState: 'Completed', error: undefined }
|
|
391
|
+
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId] = Object.assign(Object.assign({}, oldRecord), { reconciliationId: (_b = reconciliationData.reconciliation_id) !== null && _b !== void 0 ? _b : undefined, refreshStatus: { fetchState: 'Completed', error: undefined } });
|
|
468
392
|
}
|
|
469
393
|
else {
|
|
470
|
-
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId] = Object.assign(Object.assign({}, oldRecord), {
|
|
394
|
+
draft.accountReconciliationRecordsBySelectedPeriod[(0, timePeriod_1.toMonthYearPeriodId)(selectedPeriod)].reconciliationByAccountID[accountId] = Object.assign(Object.assign({}, oldRecord), { reconciliationId: (_c = reconciliationData.reconciliation_id) !== null && _c !== void 0 ? _c : undefined, transactionFetchState: { fetchState: 'Completed', error: undefined } });
|
|
471
395
|
}
|
|
472
396
|
}
|