@zeniai/client-epic-state 5.0.83 → 5.0.84-beta0ND
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/common/aiCfo/aiCfoSuggestedQuestionsPageContext.d.ts +1 -1
- package/lib/commonStateTypes/animations.d.ts +1 -1
- package/lib/commonStateTypes/animations.js +1 -0
- package/lib/entity/aiCfo/aiCfoPayload.d.ts +1 -140
- package/lib/entity/aiCfo/aiCfoReducer.d.ts +2 -23
- package/lib/entity/aiCfo/aiCfoReducer.js +4 -332
- package/lib/entity/aiCfo/aiCfoSelector.d.ts +1 -13
- package/lib/entity/aiCfo/aiCfoSelector.js +1 -28
- package/lib/entity/aiCfo/aiCfoState.d.ts +4 -225
- package/lib/entity/aiCfo/aiCfoState.js +1 -30
- package/lib/entity/company/companyPayload.d.ts +2 -0
- package/lib/entity/company/companyPayload.js +2 -0
- package/lib/entity/company/companyStateTypes.d.ts +2 -0
- package/lib/entity/jeSchedules/jeSchedulesTypes.d.ts +1 -1
- package/lib/entity/monthEndCloseChecks/monthEndCloseChecksState.d.ts +1 -1
- package/lib/entity/paymentAccount/paymentAccountSelector.d.ts +1 -0
- package/lib/entity/paymentAccount/paymentAccountSelector.js +4 -0
- package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
- package/lib/entity/snackbar/snackbarTypes.js +1 -3
- package/lib/entity/tenant/clearAllEpic.d.ts +2 -6
- package/lib/entity/tenant/clearAllEpic.js +0 -8
- package/lib/entity/tenant/epic/deleteConnectionEpic.d.ts +1 -1
- package/lib/entity/tenant/epic/initEmailConnectOAuthEpic.d.ts +21 -0
- package/lib/entity/tenant/epic/initEmailConnectOAuthEpic.js +54 -0
- package/lib/entity/tenant/epic/saveAPIKeyConnectionEpic.d.ts +1 -1
- package/lib/entity/tenant/epic/saveConnectorCredentialsEpic.d.ts +3 -3
- package/lib/entity/tenant/epic/saveOAuthConnectionEpic.d.ts +1 -1
- package/lib/entity/tenant/tenantPayload.d.ts +19 -0
- package/lib/entity/tenant/tenantReducer.d.ts +49 -28
- package/lib/entity/tenant/tenantReducer.js +111 -5
- package/lib/entity/tenant/tenantState.d.ts +21 -0
- package/lib/epic.d.ts +6 -11
- package/lib/epic.js +7 -11
- package/lib/esm/commonStateTypes/animations.js +1 -0
- package/lib/esm/entity/aiCfo/aiCfoReducer.js +4 -332
- package/lib/esm/entity/aiCfo/aiCfoSelector.js +1 -26
- package/lib/esm/entity/aiCfo/aiCfoState.js +0 -27
- package/lib/esm/entity/company/companyPayload.js +2 -0
- package/lib/esm/entity/paymentAccount/paymentAccountSelector.js +3 -0
- package/lib/esm/entity/snackbar/snackbarTypes.js +1 -3
- package/lib/esm/entity/tenant/clearAllEpic.js +0 -8
- package/lib/esm/entity/tenant/epic/initEmailConnectOAuthEpic.js +50 -0
- package/lib/esm/entity/tenant/tenantReducer.js +108 -3
- package/lib/esm/epic.js +7 -11
- package/lib/esm/index.js +16 -28
- package/lib/esm/reducer.js +0 -12
- package/lib/esm/view/aiCfoView/aiCfoViewReducer.js +3 -6
- package/lib/esm/view/aiCfoView/epics/createSessionAndSubmitEpic.js +2 -5
- package/lib/esm/view/aiCfoView/epics/createSessionEpic.js +1 -2
- package/lib/esm/view/aiCfoView/epics/fetchSuggestedQuestionsEpic.js +2 -12
- package/lib/esm/view/companyView/companyViewReducer.js +45 -1
- package/lib/esm/view/companyView/epic/companyPassport/dismissCapitalizationOnboardingEpic.js +25 -0
- package/lib/esm/view/companyView/epic/companyPassport/updateCapitalizationThresholdEpic.js +79 -0
- package/lib/esm/view/companyView/types/companyPassport/companyPassportViewState.js +4 -0
- package/lib/esm/view/onboardingView/customerView/epic/aiAgentsActivation/fetchAiAgentsActivationStatusEpic.js +45 -0
- package/lib/esm/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiFinanceTeamEpic.js +40 -0
- package/lib/esm/view/onboardingView/customerView/onboardingCustomerViewReducer.js +168 -50
- package/lib/esm/view/onboardingView/customerView/onboardingCustomerViewSelector.js +14 -0
- package/lib/esm/view/onboardingView/customerView/onboardingCustomerViewState.js +13 -0
- package/lib/esm/view/spendManagement/chargeCards/chargeCardList/chargeCardListSelector.js +0 -25
- package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardEpic.js +2 -2
- package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardReducer.js +4 -16
- package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardSelector.js +0 -38
- package/lib/esm/view/spendManagement/commonSetup/epic/setup/parseUploadedKybDocumentEpic.js +49 -0
- package/lib/esm/view/spendManagement/commonSetup/epic/setup/parseUploadedKycDocumentEpic.js +58 -0
- package/lib/esm/view/spendManagement/commonSetup/kycKybAutofillActions.js +12 -0
- package/lib/esm/view/spendManagement/commonSetup/kycKybParseMapper.js +205 -0
- package/lib/esm/view/spendManagement/commonSetup/setupViewReducer.js +71 -52
- package/lib/esm/view/spendManagement/commonSetup/setupViewSelector.js +2 -0
- package/lib/esm/view/spendManagement/commonSetup/types/kycKybAutofill.js +28 -0
- package/lib/index.d.ts +19 -28
- package/lib/index.js +36 -136
- package/lib/reducer.d.ts +0 -12
- package/lib/reducer.js +0 -12
- package/lib/view/aiCfoView/aiCfoViewReducer.d.ts +2 -11
- package/lib/view/aiCfoView/aiCfoViewReducer.js +3 -6
- package/lib/view/aiCfoView/epics/createSessionAndSubmitEpic.js +2 -5
- package/lib/view/aiCfoView/epics/createSessionEpic.js +1 -2
- package/lib/view/aiCfoView/epics/fetchSuggestedQuestionsEpic.d.ts +1 -8
- package/lib/view/aiCfoView/epics/fetchSuggestedQuestionsEpic.js +2 -12
- package/lib/view/companyView/companyViewReducer.d.ts +11 -1
- package/lib/view/companyView/companyViewReducer.js +47 -3
- package/lib/view/companyView/epic/companyPassport/dismissCapitalizationOnboardingEpic.d.ts +9 -0
- package/lib/view/companyView/epic/companyPassport/dismissCapitalizationOnboardingEpic.js +29 -0
- package/lib/view/companyView/epic/companyPassport/updateCapitalizationThresholdEpic.d.ts +10 -0
- package/lib/view/companyView/epic/companyPassport/updateCapitalizationThresholdEpic.js +83 -0
- package/lib/view/companyView/types/companyPassport/companyPassportViewState.d.ts +1 -0
- package/lib/view/companyView/types/companyPassport/companyPassportViewState.js +4 -0
- package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +1 -1
- package/lib/view/expenseAutomationView/types/reconciliationViewState.d.ts +1 -1
- package/lib/view/onboardingView/customerView/epic/aiAgentsActivation/fetchAiAgentsActivationStatusEpic.d.ts +7 -0
- package/lib/view/onboardingView/customerView/epic/aiAgentsActivation/fetchAiAgentsActivationStatusEpic.js +49 -0
- package/lib/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiFinanceTeamEpic.d.ts +9 -0
- package/lib/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiFinanceTeamEpic.js +44 -0
- package/lib/view/onboardingView/customerView/onboardingCustomerViewPayload.d.ts +3 -0
- package/lib/view/onboardingView/customerView/onboardingCustomerViewReducer.d.ts +41 -4
- package/lib/view/onboardingView/customerView/onboardingCustomerViewReducer.js +170 -51
- package/lib/view/onboardingView/customerView/onboardingCustomerViewSelector.d.ts +7 -1
- package/lib/view/onboardingView/customerView/onboardingCustomerViewSelector.js +21 -1
- package/lib/view/onboardingView/customerView/onboardingCustomerViewState.d.ts +37 -0
- package/lib/view/onboardingView/customerView/onboardingCustomerViewState.js +14 -1
- package/lib/view/people/peopleTypes.d.ts +1 -1
- package/lib/view/scheduleView/scheduleListView/scheduleListTypes.d.ts +1 -1
- package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardList.d.ts +1 -1
- package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListSelector.d.ts +0 -14
- package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListSelector.js +1 -27
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardEpic.d.ts +2 -2
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardEpic.js +1 -1
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardReducer.d.ts +1 -5
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardReducer.js +5 -17
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardSelector.d.ts +0 -27
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardSelector.js +1 -43
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardState.d.ts +0 -2
- package/lib/view/spendManagement/commonSetup/epic/setup/parseUploadedKybDocumentEpic.d.ts +8 -0
- package/lib/view/spendManagement/commonSetup/epic/setup/parseUploadedKybDocumentEpic.js +53 -0
- package/lib/view/spendManagement/commonSetup/epic/setup/parseUploadedKycDocumentEpic.d.ts +8 -0
- package/lib/view/spendManagement/commonSetup/epic/setup/parseUploadedKycDocumentEpic.js +62 -0
- package/lib/view/spendManagement/commonSetup/kycKybAutofillActions.d.ts +27 -0
- package/lib/view/spendManagement/commonSetup/kycKybAutofillActions.js +15 -0
- package/lib/view/spendManagement/commonSetup/kycKybParseMapper.d.ts +24 -0
- package/lib/view/spendManagement/commonSetup/kycKybParseMapper.js +213 -0
- package/lib/view/spendManagement/commonSetup/setupViewReducer.d.ts +24 -2
- package/lib/view/spendManagement/commonSetup/setupViewReducer.js +72 -53
- package/lib/view/spendManagement/commonSetup/setupViewSelector.d.ts +4 -0
- package/lib/view/spendManagement/commonSetup/setupViewSelector.js +2 -0
- package/lib/view/spendManagement/commonSetup/setupViewState.d.ts +12 -0
- package/lib/view/spendManagement/commonSetup/types/kycKybAutofill.d.ts +125 -0
- package/lib/view/spendManagement/commonSetup/types/kycKybAutofill.js +32 -0
- package/lib/view/taskManager/taskListView/taskListReducer.d.ts +1 -1
- package/package.json +1 -1
- package/lib/entity/cardPolicy/cardPolicyPayload.d.ts +0 -277
- package/lib/entity/cardPolicy/cardPolicyPayload.js +0 -143
- package/lib/entity/cardPolicy/cardPolicyReducer.d.ts +0 -19
- package/lib/entity/cardPolicy/cardPolicyReducer.js +0 -265
- package/lib/entity/cardPolicy/cardPolicySelector.d.ts +0 -32
- package/lib/entity/cardPolicy/cardPolicySelector.js +0 -103
- package/lib/entity/cardPolicy/cardPolicyState.d.ts +0 -205
- package/lib/entity/cardPolicy/cardPolicyState.js +0 -14
- package/lib/entity/cardPolicy/extractPolicyDocumentEpic.d.ts +0 -18
- package/lib/entity/cardPolicy/extractPolicyDocumentEpic.js +0 -68
- package/lib/entity/cardPolicy/fetchCardPolicyVendorOptionsEpic.d.ts +0 -26
- package/lib/entity/cardPolicy/fetchCardPolicyVendorOptionsEpic.js +0 -47
- package/lib/entity/cardPolicy/policyDocumentExtractionToRecommendationBridgeEpic.d.ts +0 -25
- package/lib/entity/cardPolicy/policyDocumentExtractionToRecommendationBridgeEpic.js +0 -39
- package/lib/entity/cardPolicy/policyRecommendationFromUploadEpic.d.ts +0 -23
- package/lib/entity/cardPolicy/policyRecommendationFromUploadEpic.js +0 -111
- package/lib/esm/entity/cardPolicy/cardPolicyPayload.js +0 -130
- package/lib/esm/entity/cardPolicy/cardPolicyReducer.js +0 -261
- package/lib/esm/entity/cardPolicy/cardPolicySelector.js +0 -79
- package/lib/esm/entity/cardPolicy/cardPolicyState.js +0 -9
- package/lib/esm/entity/cardPolicy/extractPolicyDocumentEpic.js +0 -64
- package/lib/esm/entity/cardPolicy/fetchCardPolicyVendorOptionsEpic.js +0 -43
- package/lib/esm/entity/cardPolicy/policyDocumentExtractionToRecommendationBridgeEpic.js +0 -35
- package/lib/esm/entity/cardPolicy/policyRecommendationFromUploadEpic.js +0 -107
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailReducer.js +0 -70
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailSelector.js +0 -22
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailState.js +0 -1
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/fetchCardPolicyDetailEpic.js +0 -56
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/updateCardPolicyEpic.js +0 -49
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/archiveCardPolicyEpic.js +0 -42
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListReducer.js +0 -72
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListSelector.js +0 -21
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListState.js +0 -1
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/fetchCardPolicyListEpic.js +0 -56
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyReducer.js +0 -62
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicySelector.js +0 -39
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyState.js +0 -1
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyTemplateEpic.js +0 -53
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/fetchCardPolicyMccCategoriesEpic.js +0 -25
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailReducer.d.ts +0 -14
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailReducer.js +0 -74
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailSelector.d.ts +0 -21
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailSelector.js +0 -28
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailState.d.ts +0 -25
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailState.js +0 -2
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/fetchCardPolicyDetailEpic.d.ts +0 -19
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/fetchCardPolicyDetailEpic.js +0 -60
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/updateCardPolicyEpic.d.ts +0 -18
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/updateCardPolicyEpic.js +0 -53
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/archiveCardPolicyEpic.d.ts +0 -16
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/archiveCardPolicyEpic.js +0 -46
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListReducer.d.ts +0 -15
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListReducer.js +0 -76
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListSelector.d.ts +0 -21
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListSelector.js +0 -27
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListState.d.ts +0 -19
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListState.js +0 -2
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/fetchCardPolicyListEpic.d.ts +0 -19
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/fetchCardPolicyListEpic.js +0 -60
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyReducer.d.ts +0 -13
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyReducer.js +0 -66
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicySelector.d.ts +0 -32
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicySelector.js +0 -46
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyState.d.ts +0 -45
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyState.js +0 -2
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyTemplateEpic.d.ts +0 -25
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyTemplateEpic.js +0 -57
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/fetchCardPolicyMccCategoriesEpic.d.ts +0 -15
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/fetchCardPolicyMccCategoriesEpic.js +0 -29
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getChargeCardBulkActionView = exports.getChargeCardRowActionView = exports.getChargeCardRecurringExpensesByCardIds = exports.getDebitCardSummary = exports.getDebitCardList = exports.getDepositAccountListWithDebitCardIssued = exports.getCreditAccountDetails = exports.anyCardOnHold = exports.getMyRequestOnHoldChargeCardListWithShippingAddress = exports.getMyPendingActivationChargeCardListView = exports.
|
|
6
|
+
exports.getChargeCardBulkActionView = exports.getChargeCardRowActionView = exports.getChargeCardRecurringExpensesByCardIds = exports.getDebitCardSummary = exports.getDebitCardList = exports.getDepositAccountListWithDebitCardIssued = exports.getCreditAccountDetails = exports.anyCardOnHold = exports.getMyRequestOnHoldChargeCardListWithShippingAddress = exports.getMyPendingActivationChargeCardListView = exports.getChargeCardListView = void 0;
|
|
7
7
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
8
8
|
const orderBy_1 = __importDefault(require("lodash/orderBy"));
|
|
9
9
|
const sortOrderPayload_1 = require("../../../../commonPayloadTypes/sortOrderPayload");
|
|
@@ -94,32 +94,6 @@ const getChargeCardListView = (state, includeCreditAccountDebitSummaryAndCashbac
|
|
|
94
94
|
};
|
|
95
95
|
};
|
|
96
96
|
exports.getChargeCardListView = getChargeCardListView;
|
|
97
|
-
/**
|
|
98
|
-
* Returns every enriched `ChargeCardWithUser` for the tenant, without
|
|
99
|
-
* applying the cards-list screen's `searchText` filter or its column
|
|
100
|
-
* `sortKey/sortOrder`. Used by surfaces that need the raw card universe
|
|
101
|
-
* decoupled from whatever the user has typed/sorted on the cards list
|
|
102
|
-
* (e.g. the Card Policy "Apply to Cards" picker, which owns its own
|
|
103
|
-
* search + sort UI). The list-screen's filter/sort state is intentionally
|
|
104
|
-
* left untouched so revisits to the cards list still restore the user's
|
|
105
|
-
* search.
|
|
106
|
-
*/
|
|
107
|
-
const getAllChargeCardsWithUser = (state) => {
|
|
108
|
-
const { chargeCardListState, chargeCardState, chargeCardConfigState } = state;
|
|
109
|
-
const cards = (0, chargeCardSelector_1.getChargeCardsByIds)(chargeCardState, chargeCardListState.cardIds);
|
|
110
|
-
const chargeCardsWithUser = getChargeCardsWithUser(cards, state);
|
|
111
|
-
const fetchState = (0, reduceFetchState_1.reduceFetchState)([
|
|
112
|
-
chargeCardListState,
|
|
113
|
-
chargeCardConfigState,
|
|
114
|
-
]).fetchState;
|
|
115
|
-
return {
|
|
116
|
-
fetchState,
|
|
117
|
-
error: chargeCardListState.error,
|
|
118
|
-
cards: chargeCardsWithUser,
|
|
119
|
-
version: '1.0',
|
|
120
|
-
};
|
|
121
|
-
};
|
|
122
|
-
exports.getAllChargeCardsWithUser = getAllChargeCardsWithUser;
|
|
123
97
|
const getMyPendingActivationChargeCardListView = (state) => {
|
|
124
98
|
const { tenantState, chargeCardListState, chargeCardState } = state;
|
|
125
99
|
const cards = (0, chargeCardSelector_1.getChargeCardsByIds)(chargeCardState, chargeCardListState.cardIds);
|
|
@@ -8,6 +8,6 @@ import { updateUserRoles } from '../../../../entity/userRole/userRoleReducer';
|
|
|
8
8
|
import { RootState } from '../../../../reducer';
|
|
9
9
|
import { ZeniAPI } from '../../../../zeniAPI';
|
|
10
10
|
import { updateChargeCardList } from '../chargeCardList/chargeCardListReducer';
|
|
11
|
-
import { issueChargeCardSuccessOrFailure, issueChargeCards, updateChargeCardCount, updateDebitCardCount,
|
|
12
|
-
export type ActionType = ReturnType<typeof issueChargeCards> | ReturnType<typeof updateChargeCards> | ReturnType<typeof updateAllUsers> | ReturnType<typeof updateUserRoles> | ReturnType<typeof openSnackbar> | ReturnType<typeof updateChargeCardList> | ReturnType<typeof updateChargeCardCount> | ReturnType<typeof updateDebitCardCount> | ReturnType<typeof updateLastSelfIssuedDebitCardId> | ReturnType<typeof
|
|
11
|
+
import { issueChargeCardSuccessOrFailure, issueChargeCards, updateChargeCardCount, updateDebitCardCount, updateLastSelfIssuedDebitCardId } from './issueChargeCardReducer';
|
|
12
|
+
export type ActionType = ReturnType<typeof issueChargeCards> | ReturnType<typeof updateChargeCards> | ReturnType<typeof updateAllUsers> | ReturnType<typeof updateUserRoles> | ReturnType<typeof openSnackbar> | ReturnType<typeof updateChargeCardList> | ReturnType<typeof updateChargeCardCount> | ReturnType<typeof updateDebitCardCount> | ReturnType<typeof updateLastSelfIssuedDebitCardId> | ReturnType<typeof issueChargeCardSuccessOrFailure> | ReturnType<typeof updateAddresses>;
|
|
13
13
|
export declare const issueChargeCardEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
|
|
@@ -90,7 +90,7 @@ const issueChargeCardEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, ope
|
|
|
90
90
|
actions.push((0, chargeCardReducer_1.updateChargeCards)(issuedCards), (0, userReducer_1.updateAllUsers)({ users: response.data.users }), (0, userRoleReducer_1.updateUserRoles)(response.data.user_roles), (0, chargeCardListReducer_1.updateChargeCardList)({
|
|
91
91
|
chargeCardListPayload: response.data,
|
|
92
92
|
keepExistingListItems: true,
|
|
93
|
-
}), (0, addressReducer_1.updateAddresses)(response.data.addresses), (0, issueChargeCardReducer_1.updateChargeCardCount)(response.data?.cards_count_by_user_id ?? []), (0, issueChargeCardReducer_1.updateDebitCardCount)(response.data?.debit_cards_count_by_deposit_account_id ?? {}), (0, issueChargeCardReducer_1.
|
|
93
|
+
}), (0, addressReducer_1.updateAddresses)(response.data.addresses), (0, issueChargeCardReducer_1.updateChargeCardCount)(response.data?.cards_count_by_user_id ?? []), (0, issueChargeCardReducer_1.updateDebitCardCount)(response.data?.debit_cards_count_by_deposit_account_id ?? {}), (0, issueChargeCardReducer_1.issueChargeCardSuccessOrFailure)({ fetchState: 'Completed' }));
|
|
94
94
|
if (issuedCards.length === 1 &&
|
|
95
95
|
(issuedCards[0].card_type.code ===
|
|
96
96
|
'business_virtual_debit_card' ||
|
|
@@ -5,11 +5,7 @@ import { ZeniAPIStatus } from '../../../../responsePayload';
|
|
|
5
5
|
import { ActiveChargeCardCountPayload, ActiveDebitCardCountByUserIdPayload } from '../../../userListView/userListViewPayload';
|
|
6
6
|
import { IssueChargeCardLocalData, IssueChargeCardState } from './issueChargeCardState';
|
|
7
7
|
export declare const initialState: IssueChargeCardState;
|
|
8
|
-
export declare const issueChargeCards: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[
|
|
9
|
-
sourceChatSessionId?: ID;
|
|
10
|
-
} | undefined], {
|
|
11
|
-
sourceChatSessionId?: ID;
|
|
12
|
-
}, "issueChargeCard/issueChargeCards", never, never>, updateChargeCardsLocalStore: import("@reduxjs/toolkit").ActionCreatorWithPayload<IssueChargeCardLocalData[], "issueChargeCard/updateChargeCardsLocalStore">, updateLastSelfIssuedDebitCardId: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issueChargeCard/updateLastSelfIssuedDebitCardId">, updateLastIssuedCardIds: import("@reduxjs/toolkit").ActionCreatorWithPayload<string[], "issueChargeCard/updateLastIssuedCardIds">, issueChargeCardSuccessOrFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
8
|
+
export declare const issueChargeCards: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[], {}, "issueChargeCard/issueChargeCards", never, never>, updateChargeCardsLocalStore: import("@reduxjs/toolkit").ActionCreatorWithPayload<IssueChargeCardLocalData[], "issueChargeCard/updateChargeCardsLocalStore">, updateLastSelfIssuedDebitCardId: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "issueChargeCard/updateLastSelfIssuedDebitCardId">, issueChargeCardSuccessOrFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
13
9
|
fetchState: FetchState;
|
|
14
10
|
error?: ZeniAPIStatus;
|
|
15
11
|
}, "issueChargeCard/issueChargeCardSuccessOrFailure">, resetIssueChargeCardForm: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"issueChargeCard/resetIssueChargeCardForm">, updateCustomAddressId: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.clearIssueChargeCard = exports.updateDepositAccountListForCardsFetchStatus = exports.fetchDepositAccountListForCards = exports.updateDepositAccountsInCards = exports.fetchIssueCardPage = exports.updateDebitCardCount = exports.updateChargeCardCount = exports.updateCustomAddressId = exports.resetIssueChargeCardForm = exports.issueChargeCardSuccessOrFailure = exports.
|
|
4
|
+
exports.clearIssueChargeCard = exports.updateDepositAccountListForCardsFetchStatus = exports.fetchDepositAccountListForCards = exports.updateDepositAccountsInCards = exports.fetchIssueCardPage = exports.updateDebitCardCount = exports.updateChargeCardCount = exports.updateCustomAddressId = exports.resetIssueChargeCardForm = exports.issueChargeCardSuccessOrFailure = exports.updateLastSelfIssuedDebitCardId = exports.updateChargeCardsLocalStore = exports.issueChargeCards = exports.initialState = void 0;
|
|
5
5
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
6
6
|
exports.initialState = {
|
|
7
7
|
depositAccountIds: [],
|
|
@@ -18,7 +18,6 @@ exports.initialState = {
|
|
|
18
18
|
},
|
|
19
19
|
activeChargeCardCount: {},
|
|
20
20
|
activeDebitCardCountByDepositAccountId: {},
|
|
21
|
-
lastIssuedCardIds: [],
|
|
22
21
|
};
|
|
23
22
|
const issueChargeCard = (0, toolkit_1.createSlice)({
|
|
24
23
|
name: 'issueChargeCard',
|
|
@@ -39,23 +38,14 @@ const issueChargeCard = (0, toolkit_1.createSlice)({
|
|
|
39
38
|
},
|
|
40
39
|
},
|
|
41
40
|
issueChargeCards: {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
// drawer can correlate an in-flight create back to its conversation.
|
|
45
|
-
// The field is not sent to the backend.
|
|
46
|
-
prepare(payload) {
|
|
47
|
-
return { payload: payload ?? {} };
|
|
41
|
+
prepare() {
|
|
42
|
+
return { payload: {} };
|
|
48
43
|
},
|
|
49
|
-
reducer(draft
|
|
44
|
+
reducer(draft) {
|
|
50
45
|
draft.saveStatus.fetchState = 'In-Progress';
|
|
51
46
|
draft.saveStatus.error = undefined;
|
|
52
|
-
draft.lastIssueSourceChatSessionId = action.payload.sourceChatSessionId;
|
|
53
|
-
draft.lastIssuedCardIds = [];
|
|
54
47
|
},
|
|
55
48
|
},
|
|
56
|
-
updateLastIssuedCardIds(draft, action) {
|
|
57
|
-
draft.lastIssuedCardIds = action.payload;
|
|
58
|
-
},
|
|
59
49
|
updateChargeCardsLocalStore(draft, action) {
|
|
60
50
|
draft.localData = action.payload;
|
|
61
51
|
},
|
|
@@ -63,8 +53,6 @@ const issueChargeCard = (0, toolkit_1.createSlice)({
|
|
|
63
53
|
draft.localData = [...exports.initialState.localData];
|
|
64
54
|
draft.saveStatus = exports.initialState.saveStatus;
|
|
65
55
|
draft.lastSelfIssuedDebitCardId = undefined;
|
|
66
|
-
draft.lastIssueSourceChatSessionId = undefined;
|
|
67
|
-
draft.lastIssuedCardIds = [];
|
|
68
56
|
},
|
|
69
57
|
updateLastSelfIssuedDebitCardId(draft, action) {
|
|
70
58
|
draft.lastSelfIssuedDebitCardId = action.payload;
|
|
@@ -145,5 +133,5 @@ const issueChargeCard = (0, toolkit_1.createSlice)({
|
|
|
145
133
|
},
|
|
146
134
|
},
|
|
147
135
|
});
|
|
148
|
-
_a = issueChargeCard.actions, exports.issueChargeCards = _a.issueChargeCards, exports.updateChargeCardsLocalStore = _a.updateChargeCardsLocalStore, exports.updateLastSelfIssuedDebitCardId = _a.updateLastSelfIssuedDebitCardId, exports.
|
|
136
|
+
_a = issueChargeCard.actions, exports.issueChargeCards = _a.issueChargeCards, exports.updateChargeCardsLocalStore = _a.updateChargeCardsLocalStore, exports.updateLastSelfIssuedDebitCardId = _a.updateLastSelfIssuedDebitCardId, exports.issueChargeCardSuccessOrFailure = _a.issueChargeCardSuccessOrFailure, exports.resetIssueChargeCardForm = _a.resetIssueChargeCardForm, exports.updateCustomAddressId = _a.updateCustomAddressId, exports.updateChargeCardCount = _a.updateChargeCardCount, exports.updateDebitCardCount = _a.updateDebitCardCount, exports.fetchIssueCardPage = _a.fetchIssueCardPage, exports.updateDepositAccountsInCards = _a.updateDepositAccountsInCards, exports.fetchDepositAccountListForCards = _a.fetchDepositAccountListForCards, exports.updateDepositAccountListForCardsFetchStatus = _a.updateDepositAccountListForCardsFetchStatus, exports.clearIssueChargeCard = _a.clearIssueChargeCard;
|
|
149
137
|
exports.default = issueChargeCard.reducer;
|
|
@@ -25,30 +25,3 @@ export interface IssueChargeCardSelectorView extends SelectorView {
|
|
|
25
25
|
lastSelfIssuedDebitCardId?: ID;
|
|
26
26
|
}
|
|
27
27
|
export declare const getIssueChargeCardView: (state: RootState, isCreditCardEnabled: boolean, isDebitCardEnabled: boolean) => IssueChargeCardSelectorView;
|
|
28
|
-
/**
|
|
29
|
-
* Returns the AI CFO chat session id that triggered the most recent
|
|
30
|
-
* `issueChargeCards` dispatch (if any). Used by the cards list screen to
|
|
31
|
-
* decide whether the in-flight bulk-create originated from an AI CFO
|
|
32
|
-
* interactive form submission and should therefore render a pending
|
|
33
|
-
* placeholder + synthetic AI CFO drawer bubble.
|
|
34
|
-
*/
|
|
35
|
-
export declare const getLastIssueChargeCardsSourceChatSessionId: (state: RootState) => ID | undefined;
|
|
36
|
-
/**
|
|
37
|
-
* Returns the ids of the cards created by the most recent successful
|
|
38
|
-
* `issueChargeCards` call. Used by the AI CFO drawer's "Created" success
|
|
39
|
-
* bubble to map back to the actual created entities.
|
|
40
|
-
*/
|
|
41
|
-
export declare const getLastIssuedChargeCardIds: (state: RootState) => ID[];
|
|
42
|
-
/**
|
|
43
|
-
* Returns the save-status fetch state for the most recent `issueChargeCards`
|
|
44
|
-
* dispatch. Useful for gating pending placeholder rows on `In-Progress` /
|
|
45
|
-
* swapping them out on `Completed`.
|
|
46
|
-
*/
|
|
47
|
-
export declare const getIssueChargeCardsSaveStatus: (state: RootState) => FetchStateAndError;
|
|
48
|
-
/**
|
|
49
|
-
* Returns the number of card rows currently being bulk-issued via the most
|
|
50
|
-
* recent `issueChargeCards` dispatch. Mirrors `localData.length` while the
|
|
51
|
-
* call is in flight so the cards list screen can render N skeleton rows at
|
|
52
|
-
* the top of the table.
|
|
53
|
-
*/
|
|
54
|
-
export declare const getInFlightIssueChargeCardsCount: (state: RootState) => number;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.getIssueChargeCardView = void 0;
|
|
4
4
|
const reduceFetchState_1 = require("../../../../commonStateTypes/reduceFetchState");
|
|
5
5
|
const addressSelector_1 = require("../../../../entity/address/addressSelector");
|
|
6
6
|
const classSelector_1 = require("../../../../entity/class/classSelector");
|
|
@@ -97,45 +97,3 @@ const getIssueChargeCardView = (state, isCreditCardEnabled, isDebitCardEnabled)
|
|
|
97
97
|
};
|
|
98
98
|
};
|
|
99
99
|
exports.getIssueChargeCardView = getIssueChargeCardView;
|
|
100
|
-
/**
|
|
101
|
-
* Returns the AI CFO chat session id that triggered the most recent
|
|
102
|
-
* `issueChargeCards` dispatch (if any). Used by the cards list screen to
|
|
103
|
-
* decide whether the in-flight bulk-create originated from an AI CFO
|
|
104
|
-
* interactive form submission and should therefore render a pending
|
|
105
|
-
* placeholder + synthetic AI CFO drawer bubble.
|
|
106
|
-
*/
|
|
107
|
-
const getLastIssueChargeCardsSourceChatSessionId = (state) => {
|
|
108
|
-
return state.issueChargeCardState.lastIssueSourceChatSessionId;
|
|
109
|
-
};
|
|
110
|
-
exports.getLastIssueChargeCardsSourceChatSessionId = getLastIssueChargeCardsSourceChatSessionId;
|
|
111
|
-
/**
|
|
112
|
-
* Returns the ids of the cards created by the most recent successful
|
|
113
|
-
* `issueChargeCards` call. Used by the AI CFO drawer's "Created" success
|
|
114
|
-
* bubble to map back to the actual created entities.
|
|
115
|
-
*/
|
|
116
|
-
const getLastIssuedChargeCardIds = (state) => {
|
|
117
|
-
return state.issueChargeCardState.lastIssuedCardIds;
|
|
118
|
-
};
|
|
119
|
-
exports.getLastIssuedChargeCardIds = getLastIssuedChargeCardIds;
|
|
120
|
-
/**
|
|
121
|
-
* Returns the save-status fetch state for the most recent `issueChargeCards`
|
|
122
|
-
* dispatch. Useful for gating pending placeholder rows on `In-Progress` /
|
|
123
|
-
* swapping them out on `Completed`.
|
|
124
|
-
*/
|
|
125
|
-
const getIssueChargeCardsSaveStatus = (state) => {
|
|
126
|
-
return state.issueChargeCardState.saveStatus;
|
|
127
|
-
};
|
|
128
|
-
exports.getIssueChargeCardsSaveStatus = getIssueChargeCardsSaveStatus;
|
|
129
|
-
/**
|
|
130
|
-
* Returns the number of card rows currently being bulk-issued via the most
|
|
131
|
-
* recent `issueChargeCards` dispatch. Mirrors `localData.length` while the
|
|
132
|
-
* call is in flight so the cards list screen can render N skeleton rows at
|
|
133
|
-
* the top of the table.
|
|
134
|
-
*/
|
|
135
|
-
const getInFlightIssueChargeCardsCount = (state) => {
|
|
136
|
-
if (state.issueChargeCardState.saveStatus.fetchState !== 'In-Progress') {
|
|
137
|
-
return 0;
|
|
138
|
-
}
|
|
139
|
-
return state.issueChargeCardState.localData.length;
|
|
140
|
-
};
|
|
141
|
-
exports.getInFlightIssueChargeCardsCount = getInFlightIssueChargeCardsCount;
|
|
@@ -6,10 +6,8 @@ export interface IssueChargeCardState extends FetchedState {
|
|
|
6
6
|
activeDebitCardCountByDepositAccountId: Record<ID, ActiveDebitCardCountByUserId>;
|
|
7
7
|
depositAccountIds: ID[];
|
|
8
8
|
depositAccountsFetchState: FetchStateAndError;
|
|
9
|
-
lastIssuedCardIds: ID[];
|
|
10
9
|
localData: IssueChargeCardLocalData[];
|
|
11
10
|
saveStatus: FetchStateAndError;
|
|
12
|
-
lastIssueSourceChatSessionId?: ID;
|
|
13
11
|
lastSelfIssuedDebitCardId?: ID;
|
|
14
12
|
}
|
|
15
13
|
export interface ActiveChargeCardCount {
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ActionsObservable, StateObservable } from 'redux-observable';
|
|
2
|
+
import { RootState } from '../../../../../reducer';
|
|
3
|
+
import { ZeniAPI } from '../../../../../zeniAPI';
|
|
4
|
+
import { applyKybDocumentAutofillForOnboarding } from '../../../../onboardingView/customerView/onboardingCustomerViewReducer';
|
|
5
|
+
import { parseUploadedKybDocument } from '../../kycKybAutofillActions';
|
|
6
|
+
import { applyKybDocumentAutofillForSetup } from '../../setupViewReducer';
|
|
7
|
+
export type ActionType = ReturnType<typeof parseUploadedKybDocument | typeof applyKybDocumentAutofillForSetup | typeof applyKybDocumentAutofillForOnboarding>;
|
|
8
|
+
export declare const parseUploadedKybDocumentEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => import("rxjs").Observable<unknown>;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseUploadedKybDocumentEpic = void 0;
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
|
+
const operators_1 = require("rxjs/operators");
|
|
6
|
+
const responsePayload_1 = require("../../../../../responsePayload");
|
|
7
|
+
const onboardingCustomerViewReducer_1 = require("../../../../onboardingView/customerView/onboardingCustomerViewReducer");
|
|
8
|
+
const kycKybAutofillActions_1 = require("../../kycKybAutofillActions");
|
|
9
|
+
const kycKybParseMapper_1 = require("../../kycKybParseMapper");
|
|
10
|
+
const setupViewReducer_1 = require("../../setupViewReducer");
|
|
11
|
+
const PROCESS_DOCUMENT_SYNC_PATH = '/1.0/documents/process/sync';
|
|
12
|
+
const parseUploadedKybDocumentEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(kycKybAutofillActions_1.parseUploadedKybDocument.match), (0, operators_1.mergeMap)((action) => {
|
|
13
|
+
const { target, companyId, fileId, documentType } = action.payload;
|
|
14
|
+
const url = `${zeniAPI.apiEndPoints.communicationAgentMicroServiceBaseUrl}${PROCESS_DOCUMENT_SYNC_PATH}`;
|
|
15
|
+
const requestPayload = {
|
|
16
|
+
provided_document_type: documentType,
|
|
17
|
+
files: [{ file_id: fileId }],
|
|
18
|
+
processing_priority: 10,
|
|
19
|
+
metadata: { source: 'kyc_kyb_autofill' },
|
|
20
|
+
};
|
|
21
|
+
return zeniAPI
|
|
22
|
+
.postAndGetJSON(url, requestPayload)
|
|
23
|
+
.pipe((0, operators_1.mergeMap)((response) => {
|
|
24
|
+
if (!(0, responsePayload_1.isSuccessResponse)(response) || response.data == null) {
|
|
25
|
+
return (0, rxjs_1.of)();
|
|
26
|
+
}
|
|
27
|
+
let result;
|
|
28
|
+
switch (documentType) {
|
|
29
|
+
case 'certificate_of_incorporation':
|
|
30
|
+
result = (0, kycKybParseMapper_1.mapCoiToCompanyDetails)(response.data);
|
|
31
|
+
break;
|
|
32
|
+
case 'tax_ein':
|
|
33
|
+
result = (0, kycKybParseMapper_1.mapTaxEinToCompanyDetails)(response.data);
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
if (result.autoFilledFieldNames.length === 0) {
|
|
37
|
+
return (0, rxjs_1.of)();
|
|
38
|
+
}
|
|
39
|
+
const applyAction = target === 'setup'
|
|
40
|
+
? (0, setupViewReducer_1.applyKybDocumentAutofillForSetup)({
|
|
41
|
+
companyId,
|
|
42
|
+
values: result.values,
|
|
43
|
+
autoFilledFieldNames: result.autoFilledFieldNames,
|
|
44
|
+
})
|
|
45
|
+
: (0, onboardingCustomerViewReducer_1.applyKybDocumentAutofillForOnboarding)({
|
|
46
|
+
companyId,
|
|
47
|
+
values: result.values,
|
|
48
|
+
autoFilledFieldNames: result.autoFilledFieldNames,
|
|
49
|
+
});
|
|
50
|
+
return (0, rxjs_1.of)(applyAction);
|
|
51
|
+
}), (0, operators_1.catchError)(() => (0, rxjs_1.of)()));
|
|
52
|
+
}));
|
|
53
|
+
exports.parseUploadedKybDocumentEpic = parseUploadedKybDocumentEpic;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ActionsObservable, StateObservable } from 'redux-observable';
|
|
2
|
+
import { RootState } from '../../../../../reducer';
|
|
3
|
+
import { ZeniAPI } from '../../../../../zeniAPI';
|
|
4
|
+
import { applyKycDocumentAutofillForOnboarding } from '../../../../onboardingView/customerView/onboardingCustomerViewReducer';
|
|
5
|
+
import { parseUploadedKycDocument } from '../../kycKybAutofillActions';
|
|
6
|
+
import { applyKycDocumentAutofillForSetup } from '../../setupViewReducer';
|
|
7
|
+
export type ActionType = ReturnType<typeof parseUploadedKycDocument | typeof applyKycDocumentAutofillForSetup | typeof applyKycDocumentAutofillForOnboarding>;
|
|
8
|
+
export declare const parseUploadedKycDocumentEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => import("rxjs").Observable<unknown>;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseUploadedKycDocumentEpic = void 0;
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
|
+
const operators_1 = require("rxjs/operators");
|
|
6
|
+
const countryListSelector_1 = require("../../../../../entity/countryList/countryListSelector");
|
|
7
|
+
const responsePayload_1 = require("../../../../../responsePayload");
|
|
8
|
+
const onboardingCustomerViewReducer_1 = require("../../../../onboardingView/customerView/onboardingCustomerViewReducer");
|
|
9
|
+
const kycKybAutofillActions_1 = require("../../kycKybAutofillActions");
|
|
10
|
+
const kycKybParseMapper_1 = require("../../kycKybParseMapper");
|
|
11
|
+
const setupViewReducer_1 = require("../../setupViewReducer");
|
|
12
|
+
const PROCESS_DOCUMENT_SYNC_PATH = '/1.0/documents/process/sync';
|
|
13
|
+
const parseUploadedKycDocumentEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(kycKybAutofillActions_1.parseUploadedKycDocument.match), (0, operators_1.mergeMap)((action) => {
|
|
14
|
+
const { target, companyId, officerType, fileId, documentType } = action.payload;
|
|
15
|
+
const url = `${zeniAPI.apiEndPoints.communicationAgentMicroServiceBaseUrl}${PROCESS_DOCUMENT_SYNC_PATH}`;
|
|
16
|
+
const requestPayload = {
|
|
17
|
+
provided_document_type: documentType,
|
|
18
|
+
files: [{ file_id: fileId }],
|
|
19
|
+
processing_priority: 10,
|
|
20
|
+
metadata: { source: 'kyc_kyb_autofill' },
|
|
21
|
+
};
|
|
22
|
+
return zeniAPI
|
|
23
|
+
.postAndGetJSON(url, requestPayload)
|
|
24
|
+
.pipe((0, operators_1.mergeMap)((response) => {
|
|
25
|
+
if (!(0, responsePayload_1.isSuccessResponse)(response) || response.data == null) {
|
|
26
|
+
return (0, rxjs_1.of)();
|
|
27
|
+
}
|
|
28
|
+
const allCountries = (0, countryListSelector_1.getCountryList)(state$.value.countryListState, 'nationalityCountryList').countries;
|
|
29
|
+
let result;
|
|
30
|
+
switch (documentType) {
|
|
31
|
+
case 'passport':
|
|
32
|
+
result = (0, kycKybParseMapper_1.mapPassportToOfficer)(response.data, allCountries);
|
|
33
|
+
break;
|
|
34
|
+
case 'driving_license':
|
|
35
|
+
result = (0, kycKybParseMapper_1.mapDrivingLicenseToOfficer)(response.data);
|
|
36
|
+
break;
|
|
37
|
+
case 'social_security_card':
|
|
38
|
+
result = (0, kycKybParseMapper_1.mapSsnCardToOfficer)(response.data);
|
|
39
|
+
break;
|
|
40
|
+
}
|
|
41
|
+
if (result.autoFilledFieldNames.length === 0) {
|
|
42
|
+
return (0, rxjs_1.of)();
|
|
43
|
+
}
|
|
44
|
+
const applyAction = target === 'setup'
|
|
45
|
+
? (0, setupViewReducer_1.applyKycDocumentAutofillForSetup)({
|
|
46
|
+
companyId,
|
|
47
|
+
officerType,
|
|
48
|
+
values: result.values,
|
|
49
|
+
autoFilledFieldNames: result.autoFilledFieldNames,
|
|
50
|
+
})
|
|
51
|
+
: (0, onboardingCustomerViewReducer_1.applyKycDocumentAutofillForOnboarding)({
|
|
52
|
+
companyId,
|
|
53
|
+
officerType,
|
|
54
|
+
values: result.values,
|
|
55
|
+
autoFilledFieldNames: result.autoFilledFieldNames,
|
|
56
|
+
});
|
|
57
|
+
return (0, rxjs_1.of)(applyAction);
|
|
58
|
+
}), (0, operators_1.catchError)(() =>
|
|
59
|
+
// Autofill is best-effort; swallow errors silently so the user can keep typing.
|
|
60
|
+
(0, rxjs_1.of)()));
|
|
61
|
+
}));
|
|
62
|
+
exports.parseUploadedKycDocumentEpic = parseUploadedKycDocumentEpic;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Trigger actions for the KYC / KYB autofill epics.
|
|
3
|
+
*
|
|
4
|
+
* These actions don't mutate state — the epic listens for them, calls
|
|
5
|
+
* document-communication-agent's sync endpoint, and dispatches the appropriate
|
|
6
|
+
* `applyKyc/KybDocumentAutofillFor{Setup,Onboarding}` against the matching
|
|
7
|
+
* slice. Co-located with the rest of the commonSetup module because the entire
|
|
8
|
+
* autofill flow is auxiliary to the setup view; there is no separate state.
|
|
9
|
+
*/
|
|
10
|
+
import { ID } from '../../../commonStateTypes/common';
|
|
11
|
+
import { CompanyOfficerType } from '../../companyView/types/companyPassport/companyUsersLocalData';
|
|
12
|
+
import { KybProvidedDocumentType, KycKybAutofillTarget, KycProvidedDocumentType } from './types/kycKybAutofill';
|
|
13
|
+
export interface ParseUploadedKycDocumentPayload {
|
|
14
|
+
companyId: ID;
|
|
15
|
+
documentType: KycProvidedDocumentType;
|
|
16
|
+
fileId: ID;
|
|
17
|
+
officerType: CompanyOfficerType;
|
|
18
|
+
target: KycKybAutofillTarget;
|
|
19
|
+
}
|
|
20
|
+
export interface ParseUploadedKybDocumentPayload {
|
|
21
|
+
companyId: ID;
|
|
22
|
+
documentType: KybProvidedDocumentType;
|
|
23
|
+
fileId: ID;
|
|
24
|
+
target: KycKybAutofillTarget;
|
|
25
|
+
}
|
|
26
|
+
export declare const parseUploadedKycDocument: import("@reduxjs/toolkit").ActionCreatorWithPayload<ParseUploadedKycDocumentPayload, string>;
|
|
27
|
+
export declare const parseUploadedKybDocument: import("@reduxjs/toolkit").ActionCreatorWithPayload<ParseUploadedKybDocumentPayload, string>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Trigger actions for the KYC / KYB autofill epics.
|
|
4
|
+
*
|
|
5
|
+
* These actions don't mutate state — the epic listens for them, calls
|
|
6
|
+
* document-communication-agent's sync endpoint, and dispatches the appropriate
|
|
7
|
+
* `applyKyc/KybDocumentAutofillFor{Setup,Onboarding}` against the matching
|
|
8
|
+
* slice. Co-located with the rest of the commonSetup module because the entire
|
|
9
|
+
* autofill flow is auxiliary to the setup view; there is no separate state.
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.parseUploadedKybDocument = exports.parseUploadedKycDocument = void 0;
|
|
13
|
+
const toolkit_1 = require("@reduxjs/toolkit");
|
|
14
|
+
exports.parseUploadedKycDocument = (0, toolkit_1.createAction)('commonSetup/parseUploadedKycDocument');
|
|
15
|
+
exports.parseUploadedKybDocument = (0, toolkit_1.createAction)('commonSetup/parseUploadedKybDocument');
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure mappers from ExtendAI parser payloads to our form-side local-data shapes.
|
|
3
|
+
*
|
|
4
|
+
* Each mapper filters out fields below KYC_KYB_AUTOFILL_MIN_CONFIDENCE and returns
|
|
5
|
+
* both the merged values and the list of field names that were autofilled so the
|
|
6
|
+
* UI can show the ✦ AI badge next to each.
|
|
7
|
+
*/
|
|
8
|
+
import { Country } from '../../../entity/countryList/countryListState';
|
|
9
|
+
import { CompanyDetailsLocalData, CompanyOfficerLocalData } from './setupViewState';
|
|
10
|
+
import { ExtendCertificateOfIncorporationParsed, ExtendDrivingLicenseParsed, ExtendPassportParsed, ExtendSsnCardParsed, ExtendTaxEinParsed } from './types/kycKybAutofill';
|
|
11
|
+
export interface AutofillResult<TLocalData> {
|
|
12
|
+
autoFilledFieldNames: (keyof TLocalData & string)[];
|
|
13
|
+
values: Partial<TLocalData>;
|
|
14
|
+
}
|
|
15
|
+
/** Passport → Company Officer. */
|
|
16
|
+
export declare const mapPassportToOfficer: (parsed: ExtendPassportParsed, allNationalityCountries: Country[]) => AutofillResult<CompanyOfficerLocalData>;
|
|
17
|
+
/** Driving License → Company Officer. */
|
|
18
|
+
export declare const mapDrivingLicenseToOfficer: (parsed: ExtendDrivingLicenseParsed) => AutofillResult<CompanyOfficerLocalData>;
|
|
19
|
+
/** SSN Card → Company Officer (name only — SSN value not yet returned by parser). */
|
|
20
|
+
export declare const mapSsnCardToOfficer: (parsed: ExtendSsnCardParsed) => AutofillResult<CompanyOfficerLocalData>;
|
|
21
|
+
/** Certificate of Incorporation → Company Details. */
|
|
22
|
+
export declare const mapCoiToCompanyDetails: (parsed: ExtendCertificateOfIncorporationParsed) => AutofillResult<CompanyDetailsLocalData>;
|
|
23
|
+
/** Tax EIN letter → Company Details. */
|
|
24
|
+
export declare const mapTaxEinToCompanyDetails: (parsed: ExtendTaxEinParsed) => AutofillResult<CompanyDetailsLocalData>;
|