@zeniai/client-epic-state 5.0.99 → 5.1.0-betaAK1
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/tenant/tenantPayload.d.ts +2 -2
- package/lib/entity/tenant/tenantReducer.d.ts +6 -5
- package/lib/entity/tenant/tenantReducer.js +67 -26
- package/lib/entity/tenant/tenantState.d.ts +2 -2
- package/lib/epic.d.ts +2 -2
- package/lib/epic.js +2 -2
- package/lib/esm/entity/tenant/tenantReducer.js +66 -25
- package/lib/esm/epic.js +2 -2
- package/lib/esm/index.js +2 -2
- package/lib/esm/view/companyView/companyViewReducer.js +11 -10
- package/lib/esm/view/companyView/epic/companyPassport/dismissCapitalizationOnboardingEpic.js +5 -5
- package/lib/esm/view/companyView/epic/companyPassport/{updateCapitalizationThresholdEpic.js → updateCapitalizationAccountThresholdEpic.js} +38 -19
- package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowSelector.js +7 -5
- package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewSelector.js +7 -20
- package/lib/index.d.ts +2 -2
- package/lib/index.js +2 -2
- package/lib/view/companyView/companyViewReducer.d.ts +8 -7
- package/lib/view/companyView/companyViewReducer.js +12 -11
- package/lib/view/companyView/epic/companyPassport/dismissCapitalizationOnboardingEpic.js +5 -5
- package/lib/view/companyView/epic/companyPassport/updateCapitalizationAccountThresholdEpic.d.ts +10 -0
- package/lib/view/companyView/epic/companyPassport/{updateCapitalizationThresholdEpic.js → updateCapitalizationAccountThresholdEpic.js} +38 -19
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowSelector.js +7 -5
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewSelector.js +7 -20
- package/package.json +1 -1
- package/lib/view/companyView/epic/companyPassport/updateCapitalizationThresholdEpic.d.ts +0 -10
|
@@ -68,16 +68,17 @@ export declare const fetchCompanyPassportView: import("@reduxjs/toolkit").Action
|
|
|
68
68
|
enabled: boolean;
|
|
69
69
|
}, "companyView/updateAccountingClassesEnabled", never, never>, updateAccountingClassesEnabledSuccess: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"companyView/updateAccountingClassesEnabledSuccess">, updateAccountingClassesEnabledFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
70
70
|
status: ZeniAPIStatus;
|
|
71
|
-
}, "companyView/updateAccountingClassesEnabledFailure">,
|
|
71
|
+
}, "companyView/updateAccountingClassesEnabledFailure">, updateCapitalizationAccountThreshold: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[companyId: string, accountId: string, threshold: number | null, dismissOnboardingForAccount?: boolean | undefined, allOverrides?: Record<string, number> | null | undefined], {
|
|
72
72
|
companyId: string;
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
73
|
+
accountId: string;
|
|
74
|
+
threshold: number | null;
|
|
75
|
+
dismissOnboardingForAccount: boolean | undefined;
|
|
76
|
+
allOverrides: Record<string, number> | null | undefined;
|
|
77
|
+
}, "companyView/updateCapitalizationAccountThreshold", never, never>, updateCapitalizationAccountThresholdSuccess: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"companyView/updateCapitalizationAccountThresholdSuccess">, updateCapitalizationAccountThresholdFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
77
78
|
status: ZeniAPIStatus;
|
|
78
|
-
}, "companyView/
|
|
79
|
+
}, "companyView/updateCapitalizationAccountThresholdFailure">, dismissCapitalizationOnboarding: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[companyId: string, accountId: string], {
|
|
79
80
|
companyId: string;
|
|
80
|
-
|
|
81
|
+
accountId: string;
|
|
81
82
|
}, "companyView/dismissCapitalizationOnboarding", never, never>, companyPassportUpdatePrimaryContact: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[companyId: string, primaryContact: PrimaryContactLocalData], {
|
|
82
83
|
companyId: string;
|
|
83
84
|
primaryContact: PrimaryContactLocalData;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.updateParentSubsidiaryViewOnFailure = exports.updateParentSubsidiaryView = exports.fetchParentSubsidiaryManagementView = exports.saveCompanyPassportDetails = exports.saveIndustryAndIncDateInCompanyPassportLocalStore = exports.updateCompanyPassportLocalStoreData = exports.companyPassportCreateCompanyOfficersFailure = exports.companyPassportCreateCompanyOfficersSuccess = exports.companyPassportCreateCompanyOfficers = exports.companyPassportUpdateCompanyOfficerFailure = exports.companyPassportUpdateCompanyOfficerSuccess = exports.companyPassportUpdateCompanyOfficer = exports.companyPassportUpdatePrimaryContactFailure = exports.companyPassportUpdatePrimaryContactSuccess = exports.companyPassportUpdatePrimaryContact = exports.dismissCapitalizationOnboarding = exports.
|
|
4
|
+
exports.updateParentSubsidiaryViewOnFailure = exports.updateParentSubsidiaryView = exports.fetchParentSubsidiaryManagementView = exports.saveCompanyPassportDetails = exports.saveIndustryAndIncDateInCompanyPassportLocalStore = exports.updateCompanyPassportLocalStoreData = exports.companyPassportCreateCompanyOfficersFailure = exports.companyPassportCreateCompanyOfficersSuccess = exports.companyPassportCreateCompanyOfficers = exports.companyPassportUpdateCompanyOfficerFailure = exports.companyPassportUpdateCompanyOfficerSuccess = exports.companyPassportUpdateCompanyOfficer = exports.companyPassportUpdatePrimaryContactFailure = exports.companyPassportUpdatePrimaryContactSuccess = exports.companyPassportUpdatePrimaryContact = exports.dismissCapitalizationOnboarding = exports.updateCapitalizationAccountThresholdFailure = exports.updateCapitalizationAccountThresholdSuccess = exports.updateCapitalizationAccountThreshold = exports.updateAccountingClassesEnabledFailure = exports.updateAccountingClassesEnabledSuccess = exports.updateAccountingClassesEnabled = exports.companyPassportUpdateCompanyDetailsFailure = exports.companyPassportUpdateCompanyDetailsSuccess = exports.companyPassportUpdateCompanyDetails = exports.companyPassportClearDataInLocalStore = exports.deleteCompanyOfficerInLocalStore = exports.companyPassportSaveDataInLocalStore = exports.updateCompanyManagementUIState = exports.updateCompanyPortfolioUIState = exports.clearCompanyView = exports.updateZeniUsersOnFailure = exports.updateZeniUsersOnSuccess = exports.fetchZeniUsers = exports.fetchCompanyPortfolioView = exports.updateCompanyViewOnFailure = exports.updateCompanyViewOnSuccess = exports.companyManagementSaveUpdatesFailure = exports.companyManagementSaveUpdatesSuccess = exports.companyManagementDiscardUpdates = exports.companyManagementSavePendingUpdates = exports.companyManagementSaveUpdates = exports.fetchCompanyManagementView = exports.fetchPortfolioView = exports.fetchSubscriptionView = exports.fetchManagementView = exports.fetchOnboardingView = exports.fetchAllCockpitViews = exports.fetchCompanyPassportView = exports.initialState = void 0;
|
|
5
5
|
exports.updateMetaDataOnSendMonthEndReport = exports.updateCompanyMetaDataOnFailure = exports.updateCompanyMetaDataOnSuccess = exports.fetchCompanyMetaData = exports.updateCompanyDownloadState = void 0;
|
|
6
6
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
7
7
|
const parentSubsidiaryViewState_1 = require("./parentSubsidiaryView/parentSubsidiaryViewState");
|
|
@@ -314,14 +314,15 @@ const companyView = (0, toolkit_1.createSlice)({
|
|
|
314
314
|
error: action.payload.status,
|
|
315
315
|
};
|
|
316
316
|
},
|
|
317
|
-
|
|
318
|
-
prepare(companyId,
|
|
317
|
+
updateCapitalizationAccountThreshold: {
|
|
318
|
+
prepare(companyId, accountId, threshold, dismissOnboardingForAccount, allOverrides) {
|
|
319
319
|
return {
|
|
320
320
|
payload: {
|
|
321
321
|
companyId,
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
322
|
+
accountId,
|
|
323
|
+
threshold,
|
|
324
|
+
dismissOnboardingForAccount,
|
|
325
|
+
allOverrides,
|
|
325
326
|
},
|
|
326
327
|
};
|
|
327
328
|
},
|
|
@@ -334,21 +335,21 @@ const companyView = (0, toolkit_1.createSlice)({
|
|
|
334
335
|
};
|
|
335
336
|
},
|
|
336
337
|
},
|
|
337
|
-
|
|
338
|
+
updateCapitalizationAccountThresholdSuccess(draft) {
|
|
338
339
|
draft.passportView.capitalizationThresholdUpdateStatus = {
|
|
339
340
|
fetchState: 'Completed',
|
|
340
341
|
error: undefined,
|
|
341
342
|
};
|
|
342
343
|
},
|
|
343
|
-
|
|
344
|
+
updateCapitalizationAccountThresholdFailure(draft, action) {
|
|
344
345
|
draft.passportView.capitalizationThresholdUpdateStatus = {
|
|
345
346
|
fetchState: 'Error',
|
|
346
347
|
error: action.payload.status,
|
|
347
348
|
};
|
|
348
349
|
},
|
|
349
350
|
dismissCapitalizationOnboarding: {
|
|
350
|
-
prepare(companyId,
|
|
351
|
-
return { payload: { companyId,
|
|
351
|
+
prepare(companyId, accountId) {
|
|
352
|
+
return { payload: { companyId, accountId } };
|
|
352
353
|
},
|
|
353
354
|
reducer(
|
|
354
355
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
@@ -631,5 +632,5 @@ const companyView = (0, toolkit_1.createSlice)({
|
|
|
631
632
|
},
|
|
632
633
|
},
|
|
633
634
|
});
|
|
634
|
-
_a = companyView.actions, exports.fetchCompanyPassportView = _a.fetchCompanyPassportView, exports.fetchAllCockpitViews = _a.fetchAllCockpitViews, exports.fetchOnboardingView = _a.fetchOnboardingView, exports.fetchManagementView = _a.fetchManagementView, exports.fetchSubscriptionView = _a.fetchSubscriptionView, exports.fetchPortfolioView = _a.fetchPortfolioView, exports.fetchCompanyManagementView = _a.fetchCompanyManagementView, exports.companyManagementSaveUpdates = _a.companyManagementSaveUpdates, exports.companyManagementSavePendingUpdates = _a.companyManagementSavePendingUpdates, exports.companyManagementDiscardUpdates = _a.companyManagementDiscardUpdates, exports.companyManagementSaveUpdatesSuccess = _a.companyManagementSaveUpdatesSuccess, exports.companyManagementSaveUpdatesFailure = _a.companyManagementSaveUpdatesFailure, exports.updateCompanyViewOnSuccess = _a.updateCompanyViewOnSuccess, exports.updateCompanyViewOnFailure = _a.updateCompanyViewOnFailure, exports.fetchCompanyPortfolioView = _a.fetchCompanyPortfolioView, exports.fetchZeniUsers = _a.fetchZeniUsers, exports.updateZeniUsersOnSuccess = _a.updateZeniUsersOnSuccess, exports.updateZeniUsersOnFailure = _a.updateZeniUsersOnFailure, exports.clearCompanyView = _a.clearCompanyView, exports.updateCompanyPortfolioUIState = _a.updateCompanyPortfolioUIState, exports.updateCompanyManagementUIState = _a.updateCompanyManagementUIState, exports.companyPassportSaveDataInLocalStore = _a.companyPassportSaveDataInLocalStore, exports.deleteCompanyOfficerInLocalStore = _a.deleteCompanyOfficerInLocalStore, exports.companyPassportClearDataInLocalStore = _a.companyPassportClearDataInLocalStore, exports.companyPassportUpdateCompanyDetails = _a.companyPassportUpdateCompanyDetails, exports.companyPassportUpdateCompanyDetailsSuccess = _a.companyPassportUpdateCompanyDetailsSuccess, exports.companyPassportUpdateCompanyDetailsFailure = _a.companyPassportUpdateCompanyDetailsFailure, exports.updateAccountingClassesEnabled = _a.updateAccountingClassesEnabled, exports.updateAccountingClassesEnabledSuccess = _a.updateAccountingClassesEnabledSuccess, exports.updateAccountingClassesEnabledFailure = _a.updateAccountingClassesEnabledFailure, exports.
|
|
635
|
+
_a = companyView.actions, exports.fetchCompanyPassportView = _a.fetchCompanyPassportView, exports.fetchAllCockpitViews = _a.fetchAllCockpitViews, exports.fetchOnboardingView = _a.fetchOnboardingView, exports.fetchManagementView = _a.fetchManagementView, exports.fetchSubscriptionView = _a.fetchSubscriptionView, exports.fetchPortfolioView = _a.fetchPortfolioView, exports.fetchCompanyManagementView = _a.fetchCompanyManagementView, exports.companyManagementSaveUpdates = _a.companyManagementSaveUpdates, exports.companyManagementSavePendingUpdates = _a.companyManagementSavePendingUpdates, exports.companyManagementDiscardUpdates = _a.companyManagementDiscardUpdates, exports.companyManagementSaveUpdatesSuccess = _a.companyManagementSaveUpdatesSuccess, exports.companyManagementSaveUpdatesFailure = _a.companyManagementSaveUpdatesFailure, exports.updateCompanyViewOnSuccess = _a.updateCompanyViewOnSuccess, exports.updateCompanyViewOnFailure = _a.updateCompanyViewOnFailure, exports.fetchCompanyPortfolioView = _a.fetchCompanyPortfolioView, exports.fetchZeniUsers = _a.fetchZeniUsers, exports.updateZeniUsersOnSuccess = _a.updateZeniUsersOnSuccess, exports.updateZeniUsersOnFailure = _a.updateZeniUsersOnFailure, exports.clearCompanyView = _a.clearCompanyView, exports.updateCompanyPortfolioUIState = _a.updateCompanyPortfolioUIState, exports.updateCompanyManagementUIState = _a.updateCompanyManagementUIState, exports.companyPassportSaveDataInLocalStore = _a.companyPassportSaveDataInLocalStore, exports.deleteCompanyOfficerInLocalStore = _a.deleteCompanyOfficerInLocalStore, exports.companyPassportClearDataInLocalStore = _a.companyPassportClearDataInLocalStore, exports.companyPassportUpdateCompanyDetails = _a.companyPassportUpdateCompanyDetails, exports.companyPassportUpdateCompanyDetailsSuccess = _a.companyPassportUpdateCompanyDetailsSuccess, exports.companyPassportUpdateCompanyDetailsFailure = _a.companyPassportUpdateCompanyDetailsFailure, exports.updateAccountingClassesEnabled = _a.updateAccountingClassesEnabled, exports.updateAccountingClassesEnabledSuccess = _a.updateAccountingClassesEnabledSuccess, exports.updateAccountingClassesEnabledFailure = _a.updateAccountingClassesEnabledFailure, exports.updateCapitalizationAccountThreshold = _a.updateCapitalizationAccountThreshold, exports.updateCapitalizationAccountThresholdSuccess = _a.updateCapitalizationAccountThresholdSuccess, exports.updateCapitalizationAccountThresholdFailure = _a.updateCapitalizationAccountThresholdFailure, exports.dismissCapitalizationOnboarding = _a.dismissCapitalizationOnboarding, exports.companyPassportUpdatePrimaryContact = _a.companyPassportUpdatePrimaryContact, exports.companyPassportUpdatePrimaryContactSuccess = _a.companyPassportUpdatePrimaryContactSuccess, exports.companyPassportUpdatePrimaryContactFailure = _a.companyPassportUpdatePrimaryContactFailure, exports.companyPassportUpdateCompanyOfficer = _a.companyPassportUpdateCompanyOfficer, exports.companyPassportUpdateCompanyOfficerSuccess = _a.companyPassportUpdateCompanyOfficerSuccess, exports.companyPassportUpdateCompanyOfficerFailure = _a.companyPassportUpdateCompanyOfficerFailure, exports.companyPassportCreateCompanyOfficers = _a.companyPassportCreateCompanyOfficers, exports.companyPassportCreateCompanyOfficersSuccess = _a.companyPassportCreateCompanyOfficersSuccess, exports.companyPassportCreateCompanyOfficersFailure = _a.companyPassportCreateCompanyOfficersFailure, exports.updateCompanyPassportLocalStoreData = _a.updateCompanyPassportLocalStoreData, exports.saveIndustryAndIncDateInCompanyPassportLocalStore = _a.saveIndustryAndIncDateInCompanyPassportLocalStore, exports.saveCompanyPassportDetails = _a.saveCompanyPassportDetails, exports.fetchParentSubsidiaryManagementView = _a.fetchParentSubsidiaryManagementView, exports.updateParentSubsidiaryView = _a.updateParentSubsidiaryView, exports.updateParentSubsidiaryViewOnFailure = _a.updateParentSubsidiaryViewOnFailure, exports.updateCompanyDownloadState = _a.updateCompanyDownloadState, exports.fetchCompanyMetaData = _a.fetchCompanyMetaData, exports.updateCompanyMetaDataOnSuccess = _a.updateCompanyMetaDataOnSuccess, exports.updateCompanyMetaDataOnFailure = _a.updateCompanyMetaDataOnFailure, exports.updateMetaDataOnSendMonthEndReport = _a.updateMetaDataOnSendMonthEndReport;
|
|
635
636
|
exports.default = companyView.reducer;
|
|
@@ -7,11 +7,11 @@ const tenantReducer_1 = require("../../../../entity/tenant/tenantReducer");
|
|
|
7
7
|
const responsePayload_1 = require("../../../../responsePayload");
|
|
8
8
|
const companyViewReducer_1 = require("../../companyViewReducer");
|
|
9
9
|
const dismissCapitalizationOnboardingEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(companyViewReducer_1.dismissCapitalizationOnboarding.match), (0, operators_1.switchMap)((action) => {
|
|
10
|
-
const { companyId,
|
|
10
|
+
const { companyId, accountId } = action.payload;
|
|
11
11
|
const tenantId = Object.values(state$.value.tenantState.tenantsById).find((t) => t.companyId === companyId)?.tenantId;
|
|
12
|
-
const body =
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
const body = {
|
|
13
|
+
capitalization_onboarding_dismissed_accounts: { [accountId]: true },
|
|
14
|
+
};
|
|
15
15
|
return zeniAPI
|
|
16
16
|
.putAndGetJSON(`${zeniAPI.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${companyId}`, body)
|
|
17
17
|
.pipe((0, operators_1.mergeMap)((response) => {
|
|
@@ -19,7 +19,7 @@ const dismissCapitalizationOnboardingEpic = (actions$, state$, zeniAPI) => actio
|
|
|
19
19
|
return (0, rxjs_1.from)([
|
|
20
20
|
(0, tenantReducer_1.updateTenantCapitalizationOnboardingDismissed)({
|
|
21
21
|
tenantId,
|
|
22
|
-
|
|
22
|
+
accountId,
|
|
23
23
|
}),
|
|
24
24
|
]);
|
|
25
25
|
}
|
package/lib/view/companyView/epic/companyPassport/updateCapitalizationAccountThresholdEpic.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ActionsObservable, StateObservable } from 'redux-observable';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { updateCompanies } from '../../../../entity/company/companyReducer';
|
|
4
|
+
import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
|
|
5
|
+
import { updateTenantCapitalizationOnboardingDismissed, updateTenantCapitalizationAccountOverride } from '../../../../entity/tenant/tenantReducer';
|
|
6
|
+
import { RootState } from '../../../../reducer';
|
|
7
|
+
import { ZeniAPI } from '../../../../zeniAPI';
|
|
8
|
+
import { updateCapitalizationAccountThreshold, updateCapitalizationAccountThresholdFailure, updateCapitalizationAccountThresholdSuccess } from '../../companyViewReducer';
|
|
9
|
+
export type ActionType = ReturnType<typeof updateCompanies> | ReturnType<typeof updateTenantCapitalizationAccountOverride> | ReturnType<typeof updateTenantCapitalizationOnboardingDismissed> | ReturnType<typeof openSnackbar> | ReturnType<typeof updateCapitalizationAccountThreshold> | ReturnType<typeof updateCapitalizationAccountThresholdSuccess> | ReturnType<typeof updateCapitalizationAccountThresholdFailure>;
|
|
10
|
+
export declare const updateCapitalizationAccountThresholdEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.updateCapitalizationAccountThresholdEpic = void 0;
|
|
4
4
|
const rxjs_1 = require("rxjs");
|
|
5
5
|
const operators_1 = require("rxjs/operators");
|
|
6
6
|
const companyReducer_1 = require("../../../../entity/company/companyReducer");
|
|
@@ -8,18 +8,32 @@ const snackbarReducer_1 = require("../../../../entity/snackbar/snackbarReducer")
|
|
|
8
8
|
const tenantReducer_1 = require("../../../../entity/tenant/tenantReducer");
|
|
9
9
|
const responsePayload_1 = require("../../../../responsePayload");
|
|
10
10
|
const companyViewReducer_1 = require("../../companyViewReducer");
|
|
11
|
-
const
|
|
12
|
-
const { companyId,
|
|
11
|
+
const updateCapitalizationAccountThresholdEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(companyViewReducer_1.updateCapitalizationAccountThreshold.match), (0, operators_1.switchMap)((action) => {
|
|
12
|
+
const { companyId, accountId, threshold, dismissOnboardingForAccount, allOverrides, } = action.payload;
|
|
13
13
|
const tenantId = Object.values(state$.value.tenantState.tenantsById).find((t) => t.companyId === companyId)?.tenantId;
|
|
14
|
+
let finalOverrides;
|
|
15
|
+
if (allOverrides !== undefined) {
|
|
16
|
+
finalOverrides = allOverrides ?? {};
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
finalOverrides = {
|
|
20
|
+
...(tenantId != null
|
|
21
|
+
? state$.value.tenantState.tenantsById[tenantId]
|
|
22
|
+
?.capitalizableAccountOverrides
|
|
23
|
+
: {}),
|
|
24
|
+
};
|
|
25
|
+
if (threshold === null) {
|
|
26
|
+
delete finalOverrides[accountId];
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
finalOverrides[accountId] = threshold;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
14
32
|
const body = {
|
|
15
|
-
|
|
16
|
-
capitalization_threshold_max_ceiling: capitalizationThresholdMaxCeiling,
|
|
33
|
+
capitalizable_account_overrides: Object.keys(finalOverrides).length > 0 ? finalOverrides : null,
|
|
17
34
|
};
|
|
18
|
-
if (
|
|
19
|
-
body.
|
|
20
|
-
}
|
|
21
|
-
else if (dismissOnboardingForPopupType === 'fixed_asset') {
|
|
22
|
-
body.capitalization_onboarding_shown_for_fixed_asset = true;
|
|
35
|
+
if (dismissOnboardingForAccount === true) {
|
|
36
|
+
body.capitalization_onboarding_dismissed_accounts = { [accountId]: true };
|
|
23
37
|
}
|
|
24
38
|
return zeniAPI
|
|
25
39
|
.putAndGetJSON(`${zeniAPI.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${companyId}`, body)
|
|
@@ -34,19 +48,24 @@ const updateCapitalizationThresholdEpic = (actions$, state$, zeniAPI) => actions
|
|
|
34
48
|
}));
|
|
35
49
|
}
|
|
36
50
|
if (tenantId != null) {
|
|
37
|
-
actions.push((0, tenantReducer_1.
|
|
51
|
+
actions.push((0, tenantReducer_1.updateTenantCapitalizationAccountOverride)({
|
|
38
52
|
tenantId,
|
|
39
|
-
|
|
40
|
-
|
|
53
|
+
accountId,
|
|
54
|
+
threshold,
|
|
55
|
+
allOverrides: allOverrides !== undefined
|
|
56
|
+
? (Object.keys(finalOverrides).length > 0
|
|
57
|
+
? finalOverrides
|
|
58
|
+
: null)
|
|
59
|
+
: undefined,
|
|
41
60
|
}));
|
|
42
|
-
if (
|
|
61
|
+
if (dismissOnboardingForAccount === true) {
|
|
43
62
|
actions.push((0, tenantReducer_1.updateTenantCapitalizationOnboardingDismissed)({
|
|
44
63
|
tenantId,
|
|
45
|
-
|
|
64
|
+
accountId,
|
|
46
65
|
}));
|
|
47
66
|
}
|
|
48
67
|
}
|
|
49
|
-
actions.push((0, companyViewReducer_1.
|
|
68
|
+
actions.push((0, companyViewReducer_1.updateCapitalizationAccountThresholdSuccess)());
|
|
50
69
|
actions.push((0, snackbarReducer_1.openSnackbar)({
|
|
51
70
|
messageSection: 'capitalization_threshold_update',
|
|
52
71
|
messageText: 'success',
|
|
@@ -56,7 +75,7 @@ const updateCapitalizationThresholdEpic = (actions$, state$, zeniAPI) => actions
|
|
|
56
75
|
}
|
|
57
76
|
else {
|
|
58
77
|
return (0, rxjs_1.from)([
|
|
59
|
-
(0, companyViewReducer_1.
|
|
78
|
+
(0, companyViewReducer_1.updateCapitalizationAccountThresholdFailure)({
|
|
60
79
|
status: response.status,
|
|
61
80
|
}),
|
|
62
81
|
(0, snackbarReducer_1.openSnackbar)({
|
|
@@ -67,7 +86,7 @@ const updateCapitalizationThresholdEpic = (actions$, state$, zeniAPI) => actions
|
|
|
67
86
|
]);
|
|
68
87
|
}
|
|
69
88
|
}), (0, operators_1.catchError)((error) => (0, rxjs_1.from)([
|
|
70
|
-
(0, companyViewReducer_1.
|
|
89
|
+
(0, companyViewReducer_1.updateCapitalizationAccountThresholdFailure)({
|
|
71
90
|
status: (0, responsePayload_1.createZeniAPIStatus)('Unexpected error', 'Update Capitalization Threshold errored out' +
|
|
72
91
|
(error instanceof Error
|
|
73
92
|
? error.message
|
|
@@ -80,4 +99,4 @@ const updateCapitalizationThresholdEpic = (actions$, state$, zeniAPI) => actions
|
|
|
80
99
|
}),
|
|
81
100
|
])));
|
|
82
101
|
}));
|
|
83
|
-
exports.
|
|
102
|
+
exports.updateCapitalizationAccountThresholdEpic = updateCapitalizationAccountThresholdEpic;
|
|
@@ -20,14 +20,16 @@ const getAutoSweepFlow = (state) => {
|
|
|
20
20
|
: undefined;
|
|
21
21
|
const risk = (0, autoSweepFlowState_1.bufferAmountToRisk)(bufferAmount.amount);
|
|
22
22
|
// The banner's recommended sweep assumes the default buffer band; shift it
|
|
23
|
-
// by the delta between the user's selected band
|
|
24
|
-
// tighter buffer sweeps more and a looser
|
|
23
|
+
// by the delta between the default buffer and the user's selected band so a
|
|
24
|
+
// tighter buffer (higher risk → smaller buffer) sweeps more and a looser
|
|
25
|
+
// buffer (lower risk → larger buffer) sweeps less. Clamp at zero so a buffer
|
|
26
|
+
// larger than the available surplus never yields a negative sweep.
|
|
25
27
|
const baseSweepAmount = (0, cashManagementOverviewSelector_1.getCashManagementOverviewBanner)(state).amount;
|
|
26
28
|
const sweepAmount = {
|
|
27
29
|
...baseSweepAmount,
|
|
28
|
-
amount: baseSweepAmount.amount +
|
|
29
|
-
autoSweepFlowState_1.RISK_BUFFER_AMOUNT[
|
|
30
|
-
autoSweepFlowState_1.RISK_BUFFER_AMOUNT[
|
|
30
|
+
amount: Math.max(0, baseSweepAmount.amount +
|
|
31
|
+
autoSweepFlowState_1.RISK_BUFFER_AMOUNT[DEFAULT_RISK_LEVEL] -
|
|
32
|
+
autoSweepFlowState_1.RISK_BUFFER_AMOUNT[risk]),
|
|
31
33
|
};
|
|
32
34
|
return {
|
|
33
35
|
fetchState,
|
|
@@ -69,7 +69,7 @@ const pickLargestOutflow = (outflows) => {
|
|
|
69
69
|
return outflows.reduce((largest, event) => event.amount.amount > largest.amount.amount ? event : largest);
|
|
70
70
|
};
|
|
71
71
|
const getCashManagementOverview = (state) => {
|
|
72
|
-
const { cashManagementOverviewState, depositAccountListState,
|
|
72
|
+
const { cashManagementOverviewState, depositAccountListState, paymentAccountListState, treasuryDetailState, } = state;
|
|
73
73
|
const aggregate = (0, reduceFetchState_1.reduceAllFetchState)([
|
|
74
74
|
{
|
|
75
75
|
fetchState: paymentAccountListState.fetchState,
|
|
@@ -93,7 +93,11 @@ const getCashManagementOverview = (state) => {
|
|
|
93
93
|
},
|
|
94
94
|
]);
|
|
95
95
|
const treasuryBalance = treasuryDetailState.accountSummary?.totalBalance ?? (0, amount_1.zeroAmount)();
|
|
96
|
-
const
|
|
96
|
+
const bannerView = (0, exports.getCashManagementOverviewBanner)(state);
|
|
97
|
+
// cashBalance is the primary (agent-managed) deposit account's available
|
|
98
|
+
// balance — the account the banner resolves as primaryFundingAccount — not
|
|
99
|
+
// the sum of all cash accounts. Zero until that account resolves.
|
|
100
|
+
const cashBalance = bannerView.primaryFundingAccount?.accountBalance?.available ?? (0, amount_1.zeroAmount)();
|
|
97
101
|
const totalCash = addAmounts(treasuryBalance, cashBalance);
|
|
98
102
|
const bannerData = cashManagementOverviewState.banner.data;
|
|
99
103
|
const inflowEvents = bannerData?.inflows ?? [];
|
|
@@ -103,7 +107,7 @@ const getCashManagementOverview = (state) => {
|
|
|
103
107
|
const cashflow = subtractAmounts(totalInFlow, totalOutFlow);
|
|
104
108
|
const projectionData = buildProjectionData(cashBalance, inflowEvents, outflowEvents);
|
|
105
109
|
return {
|
|
106
|
-
banner:
|
|
110
|
+
banner: bannerView,
|
|
107
111
|
cashBalance,
|
|
108
112
|
cashflow,
|
|
109
113
|
inflowEvents,
|
|
@@ -211,20 +215,3 @@ const addAmounts = (a, b) => {
|
|
|
211
215
|
currencySymbol: a.currencySymbol,
|
|
212
216
|
};
|
|
213
217
|
};
|
|
214
|
-
const sumCashBalances = (paymentAccountIds, paymentAccountState, depositAccountIds, depositAccountState) => {
|
|
215
|
-
let total = (0, amount_1.zeroAmount)();
|
|
216
|
-
paymentAccountIds.forEach((id) => {
|
|
217
|
-
const balance = paymentAccountState.paymentAccountByID[id]?.balances
|
|
218
|
-
?.available;
|
|
219
|
-
if (balance != null) {
|
|
220
|
-
total = addAmounts(total, balance);
|
|
221
|
-
}
|
|
222
|
-
});
|
|
223
|
-
depositAccountIds.forEach((id) => {
|
|
224
|
-
const balance = depositAccountState.depositAccountByID[id]?.accountBalance?.available;
|
|
225
|
-
if (balance != null) {
|
|
226
|
-
total = addAmounts(total, balance);
|
|
227
|
-
}
|
|
228
|
-
});
|
|
229
|
-
return total;
|
|
230
|
-
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zeniai/client-epic-state",
|
|
3
|
-
"version": "5.0
|
|
3
|
+
"version": "5.1.0-betaAK1",
|
|
4
4
|
"description": "Shared module between Web & Mobile containing required abstractions for state management, async network communication. ",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib/esm/index.js",
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { ActionsObservable, StateObservable } from 'redux-observable';
|
|
2
|
-
import { Observable } from 'rxjs';
|
|
3
|
-
import { updateCompanies } from '../../../../entity/company/companyReducer';
|
|
4
|
-
import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
|
|
5
|
-
import { updateTenantCapitalizationOnboardingDismissed, updateTenantCapitalizationThreshold } from '../../../../entity/tenant/tenantReducer';
|
|
6
|
-
import { RootState } from '../../../../reducer';
|
|
7
|
-
import { ZeniAPI } from '../../../../zeniAPI';
|
|
8
|
-
import { updateCapitalizationThreshold, updateCapitalizationThresholdFailure, updateCapitalizationThresholdSuccess } from '../../companyViewReducer';
|
|
9
|
-
export type ActionType = ReturnType<typeof updateCompanies> | ReturnType<typeof updateTenantCapitalizationThreshold> | ReturnType<typeof updateTenantCapitalizationOnboardingDismissed> | ReturnType<typeof openSnackbar> | ReturnType<typeof updateCapitalizationThreshold> | ReturnType<typeof updateCapitalizationThresholdSuccess> | ReturnType<typeof updateCapitalizationThresholdFailure>;
|
|
10
|
-
export declare const updateCapitalizationThresholdEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
|