@tap-payments/auth-jsconnect 2.6.57-test → 2.6.59-test
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/build/@types/app.d.ts +3 -1
- package/build/@types/app.js +1 -1
- package/build/api/account.d.ts +1 -0
- package/build/api/account.js +8 -1
- package/build/api/auth.d.ts +2 -0
- package/build/api/index.d.ts +4 -3
- package/build/api/lead.d.ts +3 -0
- package/build/api/operator.d.ts +3 -2
- package/build/api/operator.js +2 -2
- package/build/app/rootReducer.d.ts +1 -0
- package/build/app/rootReducer.js +2 -0
- package/build/app/settings.js +3 -2
- package/build/app/store.d.ts +2 -0
- package/build/constants/app.d.ts +10 -0
- package/build/constants/app.js +53 -0
- package/build/features/app/auth/authStore.d.ts +189 -0
- package/build/features/app/auth/authStore.js +729 -0
- package/build/features/app/bank/bankStore.js +5 -4
- package/build/features/app/brand/brandStore.js +5 -4
- package/build/features/app/business/businessStore.js +37 -28
- package/build/features/app/connectExpress/connectExpressStore.js +3 -2
- package/build/features/app/entity/entityStore.js +5 -4
- package/build/features/app/individual/individualStore.js +5 -4
- package/build/features/app/tax/taxStore.js +5 -4
- package/build/features/auth/Auth.d.ts +8 -0
- package/build/features/auth/Auth.js +93 -0
- package/build/features/auth/index.d.ts +1 -0
- package/build/features/auth/index.js +1 -0
- package/build/features/auth/screens/AuthenticationList/AuthenticationList.d.ts +5 -0
- package/build/features/auth/screens/AuthenticationList/AuthenticationList.js +91 -0
- package/build/features/auth/screens/AuthenticationList/BrandList.d.ts +10 -0
- package/build/features/auth/screens/AuthenticationList/BrandList.js +81 -0
- package/build/features/auth/screens/AuthenticationList/EntityList.d.ts +11 -0
- package/build/features/auth/screens/AuthenticationList/EntityList.js +96 -0
- package/build/features/auth/screens/AuthenticationList/MerchantList.d.ts +10 -0
- package/build/features/auth/screens/AuthenticationList/MerchantList.js +107 -0
- package/build/features/auth/screens/AuthenticationList/index.d.ts +3 -0
- package/build/features/auth/screens/AuthenticationList/index.js +2 -0
- package/build/features/auth/screens/AuthenticationList/validation.d.ts +14 -0
- package/build/features/auth/screens/AuthenticationList/validation.js +8 -0
- package/build/features/auth/screens/BusinessCountry/BusinessCountry.d.ts +5 -0
- package/build/features/auth/screens/BusinessCountry/BusinessCountry.js +105 -0
- package/build/features/auth/screens/BusinessCountry/index.d.ts +3 -0
- package/build/features/auth/screens/BusinessCountry/index.js +2 -0
- package/build/features/auth/screens/CivilID/CivilID.d.ts +5 -0
- package/build/features/auth/screens/CivilID/CivilID.js +88 -0
- package/build/features/auth/screens/CivilID/IDNumber.d.ts +8 -0
- package/build/features/auth/screens/CivilID/IDNumber.js +54 -0
- package/build/features/auth/screens/CivilID/index.d.ts +3 -0
- package/build/features/auth/screens/CivilID/index.js +2 -0
- package/build/features/auth/screens/CivilID/validation.d.ts +8 -0
- package/build/features/auth/screens/CivilID/validation.js +4 -0
- package/build/features/auth/screens/Mobile/Mobile.d.ts +5 -0
- package/build/features/auth/screens/Mobile/Mobile.js +108 -0
- package/build/features/auth/screens/Mobile/MobileNumber.d.ts +13 -0
- package/build/features/auth/screens/Mobile/MobileNumber.js +158 -0
- package/build/features/auth/screens/Mobile/index.d.ts +3 -0
- package/build/features/auth/screens/Mobile/index.js +2 -0
- package/build/features/auth/screens/Mobile/validation.d.ts +8 -0
- package/build/features/auth/screens/Mobile/validation.js +30 -0
- package/build/features/auth/screens/NID/DOB.d.ts +6 -0
- package/build/features/auth/screens/NID/DOB.js +47 -0
- package/build/features/auth/screens/NID/IDNumber.d.ts +7 -0
- package/build/features/auth/screens/NID/IDNumber.js +55 -0
- package/build/features/auth/screens/NID/NID.d.ts +5 -0
- package/build/features/auth/screens/NID/NID.js +92 -0
- package/build/features/auth/screens/NID/index.d.ts +3 -0
- package/build/features/auth/screens/NID/index.js +2 -0
- package/build/features/auth/screens/NID/validation.d.ts +11 -0
- package/build/features/auth/screens/NID/validation.js +11 -0
- package/build/features/auth/screens/OTP/OTP.d.ts +5 -0
- package/build/features/auth/screens/OTP/OTP.js +87 -0
- package/build/features/auth/screens/OTP/OTPInput.d.ts +5 -0
- package/build/features/auth/screens/OTP/OTPInput.js +57 -0
- package/build/features/auth/screens/OTP/index.d.ts +3 -0
- package/build/features/auth/screens/OTP/index.js +2 -0
- package/build/features/auth/screens/OTP/validation.d.ts +8 -0
- package/build/features/auth/screens/OTP/validation.js +4 -0
- package/build/features/auth/screens/VerifyPACI/VerifyPACI.d.ts +5 -0
- package/build/features/auth/screens/VerifyPACI/VerifyPACI.js +34 -0
- package/build/features/auth/screens/VerifyPACI/index.d.ts +3 -0
- package/build/features/auth/screens/VerifyPACI/index.js +2 -0
- package/build/features/brand/screens/BrandActivities/ActivitiesList.d.ts +6 -33
- package/build/features/brand/screens/BrandActivities/RefundPolicy.d.ts +4 -17
- package/build/features/brand/screens/BrandActivities/TAC.d.ts +2 -7
- package/build/features/business/screens/BusinessType/LicenseType.d.ts +4 -26
- package/build/features/business/screens/Customers/CustomerLocations.d.ts +6 -33
- package/build/features/business/screens/Customers/RefundPolicy.d.ts +4 -17
- package/build/features/connectExpress/screens/CollectBusinessInfo/LicenseType.d.ts +4 -26
- package/build/features/connectExpress/screens/CollectBusinessInfo/TAC.d.ts +2 -7
- package/build/features/connectExpress/screens/Mobile/MobileNumber.js +2 -2
- package/build/features/connectExpress/screens/NID/TAC.d.ts +2 -7
- package/build/features/entity/screens/EntityName/EntityTypeList.d.ts +6 -33
- package/build/features/featuresScreens.d.ts +1 -0
- package/build/features/featuresScreens.js +40 -3
- package/build/features/individual/screens/AdditionalIndividualInfo/PEPSwitch.d.ts +4 -26
- package/build/features/individual/screens/IndividualPersonalInfo/Gender.d.ts +4 -26
- package/build/features/shared/Address/CountryList.d.ts +5 -21
- package/build/features/shared/Address/InputSelect.d.ts +5 -21
- package/build/features/shared/Input/Input.d.ts +1 -1
- package/build/features/shared/UploadFile/FileUpload.d.ts +2 -7
- package/build/features/shared/UploadFile/UploadFile.d.ts +2 -7
- package/build/features/shared/UploadFile/UploadWrapper.d.ts +2 -7
- package/build/features/shared/UploadMultipleFile/UploadFile.d.ts +2 -7
- package/build/features/shared/UploadMultipleFile/UploadMultipleFile.d.ts +2 -7
- package/build/hooks/useAppDispatch.d.ts +1 -0
- package/build/index.d.ts +3 -2
- package/build/index.js +3 -1
- package/build/utils/common.d.ts +1 -0
- package/build/utils/common.js +8 -1
- package/build/utils/string.d.ts +1 -0
- package/build/utils/string.js +3 -0
- package/package.json +1 -1
|
@@ -60,10 +60,11 @@ export var verifyLeadToken = createAsyncThunk('bankVerifyLeadToken', function (_
|
|
|
60
60
|
return __generator(this, function (_k) {
|
|
61
61
|
switch (_k.label) {
|
|
62
62
|
case 0:
|
|
63
|
-
payload = {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
63
|
+
payload = __assign({ service_name: 'tap_email', verify_token: token }, (isInternally && {
|
|
64
|
+
notification: {
|
|
65
|
+
sms: false
|
|
66
|
+
}
|
|
67
|
+
}));
|
|
67
68
|
return [4, API.leadService.verifyLeadToken(payload)];
|
|
68
69
|
case 1:
|
|
69
70
|
data = (_k.sent()).data;
|
|
@@ -71,10 +71,11 @@ export var verifyLeadToken = createAsyncThunk('brandVerifyLeadToken', function (
|
|
|
71
71
|
return __generator(this, function (_j) {
|
|
72
72
|
switch (_j.label) {
|
|
73
73
|
case 0:
|
|
74
|
-
payload = {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
74
|
+
payload = __assign({ service_name: 'tap_email', verify_token: token }, (isInternally && {
|
|
75
|
+
notification: {
|
|
76
|
+
sms: false
|
|
77
|
+
}
|
|
78
|
+
}));
|
|
78
79
|
return [4, API.leadService.verifyLeadToken(payload)];
|
|
79
80
|
case 1:
|
|
80
81
|
data = (_j.sent()).data;
|
|
@@ -501,10 +501,10 @@ export var retrieveBoardDetails = createAsyncThunk('retrieveBoardDetails', funct
|
|
|
501
501
|
});
|
|
502
502
|
}); });
|
|
503
503
|
export var updateLeadBusinessType = createAsyncThunk('updateLeadBusinessType', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
|
|
504
|
-
var _a, settings, business, isKWCountry, selectedLicense, licenseNumber, entityLegalName, certificateId, articleId, selectedEntityLicense, isFL, _b, lead_id, brand, stepName, payload, data, accountBody, accountData, brandData, brandRes, _c, message, error, list, documentData, entityData, entityId, documentBody, payload_1;
|
|
505
|
-
var _d, _e;
|
|
506
|
-
return __generator(this, function (
|
|
507
|
-
switch (
|
|
504
|
+
var _a, settings, business, isKWCountry, selectedLicense, licenseNumber, entityLegalName, certificateId, articleId, selectedEntityLicense, isFL, _b, lead_id, brand, stepName, payload, data, accountBody, accountData, brandData, data_1, brandRes, _c, message, error, list, documentData, entityData, entityId, documentBody, payload_1;
|
|
505
|
+
var _d, _e, _f;
|
|
506
|
+
return __generator(this, function (_g) {
|
|
507
|
+
switch (_g.label) {
|
|
508
508
|
case 0:
|
|
509
509
|
_a = thunkApi.getState(), settings = _a.settings, business = _a.business;
|
|
510
510
|
isKWCountry = isKW(settings.data.businessCountry.iso2);
|
|
@@ -523,7 +523,7 @@ export var updateLeadBusinessType = createAsyncThunk('updateLeadBusinessType', f
|
|
|
523
523
|
})), { encryption_contract: ['license_number', 'business_type', 'license_type'] });
|
|
524
524
|
return [4, API.leadService.updateLead(payload)];
|
|
525
525
|
case 1:
|
|
526
|
-
data =
|
|
526
|
+
data = _g.sent();
|
|
527
527
|
accountBody = {
|
|
528
528
|
lead_id: lead_id,
|
|
529
529
|
notify: {
|
|
@@ -535,20 +535,29 @@ export var updateLeadBusinessType = createAsyncThunk('updateLeadBusinessType', f
|
|
|
535
535
|
step_name: BUSINESS_STEP_NAMES.BUSINESS_INFO_CONFIRM
|
|
536
536
|
};
|
|
537
537
|
brandData = undefined;
|
|
538
|
-
|
|
538
|
+
_g.label = 2;
|
|
539
539
|
case 2:
|
|
540
|
-
|
|
540
|
+
_g.trys.push([2, 7, , 8]);
|
|
541
541
|
return [4, API.accountService.createAccount(accountBody)];
|
|
542
542
|
case 3:
|
|
543
|
-
accountData =
|
|
543
|
+
accountData = _g.sent();
|
|
544
|
+
if (!!(accountData === null || accountData === void 0 ? void 0 : accountData.entity_id)) return [3, 5];
|
|
545
|
+
return [4, API.leadService.retrieveLead(lead_id)];
|
|
546
|
+
case 4:
|
|
547
|
+
data_1 = (_g.sent()).data;
|
|
548
|
+
if (!((_d = data_1 === null || data_1 === void 0 ? void 0 : data_1.entity) === null || _d === void 0 ? void 0 : _d.id))
|
|
549
|
+
throw new Error('Internal server error');
|
|
550
|
+
accountData = __assign(__assign({}, accountData), { entity_id: data_1.entity.id });
|
|
551
|
+
_g.label = 5;
|
|
552
|
+
case 5:
|
|
544
553
|
thunkApi.dispatch(updateStepName(BUSINESS_STEP_NAMES.BUSINESS_INFO_CONFIRM));
|
|
545
554
|
return [4, API.brandService.retrieveBrand(brand === null || brand === void 0 ? void 0 : brand.id)];
|
|
546
|
-
case
|
|
547
|
-
brandRes = (
|
|
555
|
+
case 6:
|
|
556
|
+
brandRes = (_g.sent()).brand;
|
|
548
557
|
brandData = brandRes;
|
|
549
|
-
return [3,
|
|
550
|
-
case
|
|
551
|
-
_c =
|
|
558
|
+
return [3, 8];
|
|
559
|
+
case 7:
|
|
560
|
+
_c = _g.sent();
|
|
552
561
|
message = _c.message;
|
|
553
562
|
error = message;
|
|
554
563
|
if ((error === null || error === void 0 ? void 0 : error.toLowerCase()) === 'entity with license already exist') {
|
|
@@ -556,13 +565,13 @@ export var updateLeadBusinessType = createAsyncThunk('updateLeadBusinessType', f
|
|
|
556
565
|
}
|
|
557
566
|
else
|
|
558
567
|
throw new Error(error);
|
|
559
|
-
return [3,
|
|
560
|
-
case
|
|
561
|
-
case
|
|
562
|
-
list = (
|
|
568
|
+
return [3, 8];
|
|
569
|
+
case 8: return [4, API.dataService.getActivitiesIsIc()];
|
|
570
|
+
case 9:
|
|
571
|
+
list = (_g.sent()).list;
|
|
563
572
|
entityData = undefined;
|
|
564
573
|
entityId = accountData === null || accountData === void 0 ? void 0 : accountData.entity_id;
|
|
565
|
-
if (!((certificateId || []).length > 0)) return [3,
|
|
574
|
+
if (!((certificateId || []).length > 0)) return [3, 11];
|
|
566
575
|
documentBody = {
|
|
567
576
|
entity_id: entityId || '',
|
|
568
577
|
documents: [
|
|
@@ -573,22 +582,22 @@ export var updateLeadBusinessType = createAsyncThunk('updateLeadBusinessType', f
|
|
|
573
582
|
]
|
|
574
583
|
};
|
|
575
584
|
return [4, API.documentService.updateDocumentInfo(documentBody)];
|
|
576
|
-
case
|
|
577
|
-
documentData =
|
|
578
|
-
|
|
579
|
-
case
|
|
580
|
-
if (!(articleId && entityId)) return [3,
|
|
585
|
+
case 10:
|
|
586
|
+
documentData = _g.sent();
|
|
587
|
+
_g.label = 11;
|
|
588
|
+
case 11:
|
|
589
|
+
if (!(articleId && entityId)) return [3, 13];
|
|
581
590
|
payload_1 = {
|
|
582
591
|
id: (accountData === null || accountData === void 0 ? void 0 : accountData.entity_id) || '',
|
|
583
592
|
AOA_file_id: articleId
|
|
584
593
|
};
|
|
585
594
|
return [4, API.entityService.updateEntity(payload_1)];
|
|
586
|
-
case
|
|
587
|
-
entityData =
|
|
588
|
-
|
|
589
|
-
case
|
|
595
|
+
case 12:
|
|
596
|
+
entityData = _g.sent();
|
|
597
|
+
_g.label = 13;
|
|
598
|
+
case 13:
|
|
590
599
|
thunkApi.dispatch(handleNextScreenStep(stepName));
|
|
591
|
-
(
|
|
600
|
+
(_f = (_e = settings.data.appConfig).onStepCompleted) === null || _f === void 0 ? void 0 : _f.call(_e, settings.data.activeScreen.name, params);
|
|
592
601
|
return [2, { data: __assign(__assign({}, data), { brand: brandData }), formData: params, accountData: accountData, documentData: documentData, entityData: entityData, isicActivityList: list || [] }];
|
|
593
602
|
}
|
|
594
603
|
});
|
|
@@ -976,9 +976,10 @@ export var updateOperatorInfoAsync = createAsyncThunk('connectExpress/updateOper
|
|
|
976
976
|
bi: bi,
|
|
977
977
|
brand_id: (brandInfo === null || brandInfo === void 0 ? void 0 : brandInfo.id) || '',
|
|
978
978
|
merchant_id: (merchantInfo === null || merchantInfo === void 0 ? void 0 : merchantInfo.id) || '',
|
|
979
|
-
entity_id: (entityInfo === null || entityInfo === void 0 ? void 0 : entityInfo.id) || ''
|
|
979
|
+
entity_id: (entityInfo === null || entityInfo === void 0 ? void 0 : entityInfo.id) || '',
|
|
980
|
+
data: settings.data.appConfig.data || []
|
|
980
981
|
};
|
|
981
|
-
return [4, API.operatorService.
|
|
982
|
+
return [4, API.operatorService.confirm(body)];
|
|
982
983
|
case 1:
|
|
983
984
|
data = _h.sent();
|
|
984
985
|
(_g = (_f = settings.data.appConfig).onStepCompleted) === null || _g === void 0 ? void 0 : _g.call(_f, settings.data.activeScreen.name, data);
|
|
@@ -72,10 +72,11 @@ export var verifyLeadToken = createAsyncThunk('entityVerifyLeadToken', function
|
|
|
72
72
|
return __generator(this, function (_l) {
|
|
73
73
|
switch (_l.label) {
|
|
74
74
|
case 0:
|
|
75
|
-
payload = {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
75
|
+
payload = __assign({ service_name: 'tap_email', verify_token: token }, (isInternally && {
|
|
76
|
+
notification: {
|
|
77
|
+
sms: false
|
|
78
|
+
}
|
|
79
|
+
}));
|
|
79
80
|
return [4, API.leadService.verifyLeadToken(payload)];
|
|
80
81
|
case 1:
|
|
81
82
|
data = (_l.sent()).data;
|
|
@@ -80,10 +80,11 @@ export var verifyToken = createAsyncThunk('individual/verifyToken', function (_a
|
|
|
80
80
|
return __generator(this, function (_m) {
|
|
81
81
|
switch (_m.label) {
|
|
82
82
|
case 0:
|
|
83
|
-
payload = {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
83
|
+
payload = __assign({ service_name: 'tap_email', verify_token: token }, (isInternally && {
|
|
84
|
+
notification: {
|
|
85
|
+
sms: false
|
|
86
|
+
}
|
|
87
|
+
}));
|
|
87
88
|
settings = thunkApi.getState().settings;
|
|
88
89
|
return [4, API.leadService.verifyLeadToken(payload)];
|
|
89
90
|
case 1:
|
|
@@ -60,10 +60,11 @@ export var verifyLeadToken = createAsyncThunk('taxVerifyLeadToken', function (_a
|
|
|
60
60
|
return __generator(this, function (_j) {
|
|
61
61
|
switch (_j.label) {
|
|
62
62
|
case 0:
|
|
63
|
-
payload = {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
63
|
+
payload = __assign({ service_name: 'tap_email', verify_token: token }, (isInternally && {
|
|
64
|
+
notification: {
|
|
65
|
+
sms: false
|
|
66
|
+
}
|
|
67
|
+
}));
|
|
67
68
|
return [4, API.leadService.verifyLeadToken(payload)];
|
|
68
69
|
case 1:
|
|
69
70
|
data = (_j.sent()).data;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { LibConfig } from '../../@types';
|
|
2
|
+
export interface AuthLibProps extends Pick<LibConfig, 'open' | 'mode' | 'scope' | 'merchantDomain' | 'publicKey' | 'redirectUrl' | 'data' | 'postURL' | 'appInfo' | 'businessCountryCode' | 'language' | 'onFlowCompleted' | 'onError' | 'onStepCompleted' | 'onReady' | 'onClose' | 'onStepStarted'> {
|
|
3
|
+
leadId?: string;
|
|
4
|
+
}
|
|
5
|
+
export declare function AuthElement(props: AuthLibProps): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export declare function renderAuthLib(config: AuthLibProps, elementId: string): {
|
|
7
|
+
unmount: () => void;
|
|
8
|
+
};
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
23
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
24
|
+
import React, { memo } from 'react';
|
|
25
|
+
import { createRoot } from 'react-dom/client';
|
|
26
|
+
import { useAppTheme, useAppSelector, useAppConfig, useErrorListener, useStepStartedListener, useAppDispatch } from '../../hooks';
|
|
27
|
+
import { handleCurrentActiveScreen, settingsSelector } from '../../app/settings';
|
|
28
|
+
import AnimationFlow from '../../components/AnimationFlow';
|
|
29
|
+
import { store } from '../../app/store';
|
|
30
|
+
import { ReduxProvider, ThemeProvider } from '../../components/Providers';
|
|
31
|
+
import Collapse from '../../components/Collapse';
|
|
32
|
+
import { findOrCreateElementAndInject, sendPageView, isSA } from '../../utils';
|
|
33
|
+
import { AUTH_SCREENS_NAVIGATION } from '../../constants';
|
|
34
|
+
import Background from '../shared/Background';
|
|
35
|
+
import { FeatureContainer } from '../shared/Containers';
|
|
36
|
+
import { authSelector, setMobileCountryCode, setLeadId, retrieveLeadIdentityByIdAsync } from '../app/auth/authStore';
|
|
37
|
+
import { authFeatureScreens } from '../featuresScreens';
|
|
38
|
+
var Auth = memo(function (_a) {
|
|
39
|
+
var leadId = _a.leadId, postURL = _a.postURL, props = __rest(_a, ["leadId", "postURL"]);
|
|
40
|
+
var theme = useAppTheme().theme;
|
|
41
|
+
var dispatch = useAppDispatch();
|
|
42
|
+
var _b = useAppSelector(settingsSelector), settingData = _b.data, error = _b.error, settingLoading = _b.loading;
|
|
43
|
+
var _c = useAppSelector(authSelector), authError = _c.error, loading = _c.loading, customLoading = _c.customLoading;
|
|
44
|
+
useAppConfig(__assign({ postURL: postURL, navigation: AUTH_SCREENS_NAVIGATION }, props));
|
|
45
|
+
useErrorListener(authError || error);
|
|
46
|
+
useStepStartedListener();
|
|
47
|
+
var activeScreen = settingData.activeScreen, isTapOrigin = settingData.isTapOrigin, open = settingData.open, merchant = settingData.merchant;
|
|
48
|
+
React.useEffect(function () {
|
|
49
|
+
sendPageView({ title: 'Auth' });
|
|
50
|
+
dispatch(setLeadId(leadId !== null && leadId !== void 0 ? leadId : ''));
|
|
51
|
+
}, []);
|
|
52
|
+
React.useEffect(function () {
|
|
53
|
+
if (leadId) {
|
|
54
|
+
dispatch(retrieveLeadIdentityByIdAsync(leadId));
|
|
55
|
+
}
|
|
56
|
+
}, [leadId]);
|
|
57
|
+
React.useEffect(function () {
|
|
58
|
+
var _a;
|
|
59
|
+
if (settingLoading || !props.open || !settingData.isValidOperator)
|
|
60
|
+
return;
|
|
61
|
+
if (leadId)
|
|
62
|
+
return;
|
|
63
|
+
var iso2 = (_a = settingData.businessCountry) === null || _a === void 0 ? void 0 : _a.iso2;
|
|
64
|
+
if (!iso2) {
|
|
65
|
+
dispatch(handleCurrentActiveScreen('AUTH_BUSINESS_COUNTRY_STEP'));
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
if (iso2 && !isSA(iso2)) {
|
|
69
|
+
dispatch(handleCurrentActiveScreen('AUTH_MOBILE_STEP'));
|
|
70
|
+
}
|
|
71
|
+
}, [settingData.isValidOperator, settingLoading]);
|
|
72
|
+
React.useEffect(function () {
|
|
73
|
+
var _a;
|
|
74
|
+
if (!!((_a = settingData.businessCountry) === null || _a === void 0 ? void 0 : _a.iso2)) {
|
|
75
|
+
dispatch(setMobileCountryCode(settingData.businessCountry));
|
|
76
|
+
}
|
|
77
|
+
}, [settingData.businessCountry]);
|
|
78
|
+
return (_jsx(ThemeProvider, __assign({ theme: theme }, { children: _jsx(Background, __assign({ open: open, isTapOrigin: isTapOrigin, loading: settingLoading || customLoading }, { children: _jsx(AnimationFlow, __assign({ pointerEvents: loading ? 'none' : 'auto', isTapOrigin: isTapOrigin, loading: settingLoading || customLoading, error: error, open: open, screenId: activeScreen.name, merchantInfo: merchant, isMaturityExpress: !isTapOrigin }, { children: _jsx(FeatureContainer, __assign({ isMaturityExpress: true }, { children: authFeatureScreens.map(function (_a, index) {
|
|
79
|
+
var Element = _a.element, name = _a.name;
|
|
80
|
+
var isActive = activeScreen.name === name;
|
|
81
|
+
return (_jsx(Collapse, __assign({ in: isActive, timeout: { enter: 1000, exit: 800 } }, { children: _jsx(Element, {}) }), index));
|
|
82
|
+
}) })) })) })) })));
|
|
83
|
+
});
|
|
84
|
+
export function AuthElement(props) {
|
|
85
|
+
return (_jsx(ReduxProvider, __assign({ store: store }, { children: _jsx(Auth, __assign({}, props)) })));
|
|
86
|
+
}
|
|
87
|
+
export function renderAuthLib(config, elementId) {
|
|
88
|
+
var el = findOrCreateElementAndInject(elementId);
|
|
89
|
+
var root = createRoot(el);
|
|
90
|
+
root.render(_jsx(AuthElement, __assign({}, config)));
|
|
91
|
+
var unmount = function () { return root.unmount(); };
|
|
92
|
+
return { unmount: unmount };
|
|
93
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Auth';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Auth';
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
import * as React from 'react';
|
|
14
|
+
import { useForm, FormProvider } from 'react-hook-form';
|
|
15
|
+
import { useTranslation } from 'react-i18next';
|
|
16
|
+
import Collapse from '@mui/material/Collapse';
|
|
17
|
+
import { yupResolver } from '@hookform/resolvers/yup';
|
|
18
|
+
import { useAppDispatch, useAppSelector, useLanguage } from '../../../../hooks';
|
|
19
|
+
import { handlePrevScreenStep, settingsSelector } from '../../../../app/settings';
|
|
20
|
+
import { deepCopy, isKW, sendCustomEventToGTM } from '../../../../utils';
|
|
21
|
+
import { AuthForType } from '../../../../@types';
|
|
22
|
+
import Form from '../../../../components/Form';
|
|
23
|
+
import { ScreenContainer } from '../../../shared/Containers';
|
|
24
|
+
import Button from '../../../shared/Button';
|
|
25
|
+
import { clearError, authSelector, confirmInfo } from '../../../app/auth/authStore';
|
|
26
|
+
import { AuthenticationListValidationSchema } from './validation';
|
|
27
|
+
import BrandList from './BrandList';
|
|
28
|
+
import EntityList from './EntityList';
|
|
29
|
+
import MerchantList from './MerchantList';
|
|
30
|
+
var ListType;
|
|
31
|
+
(function (ListType) {
|
|
32
|
+
ListType["BrandList"] = "BrandList";
|
|
33
|
+
ListType["EntityList"] = "EntityList";
|
|
34
|
+
ListType["MerchantList"] = "MerchantList";
|
|
35
|
+
})(ListType || (ListType = {}));
|
|
36
|
+
var AuthenticationList = function (_a) {
|
|
37
|
+
var settingsData = useAppSelector(settingsSelector).data;
|
|
38
|
+
var _b = useAppSelector(authSelector), data = _b.data, loading = _b.loading, error = _b.error, merchantLoading = _b.merchantLoading, terminalLoading = _b.terminalLoading;
|
|
39
|
+
var _c = data.authenticationData, brandInfo = _c.brandInfo, entityInfo = _c.entityInfo, merchantInfo = _c.merchantInfo;
|
|
40
|
+
var _d = React.useState(), listActive = _d[0], setListActive = _d[1];
|
|
41
|
+
var _e = data.responseData || {}, brandList = _e.brandList, entityList = _e.entityList;
|
|
42
|
+
var otpData = data.otpData;
|
|
43
|
+
var startWithNID = otpData.authFor === AuthForType.NATIONAL_ID;
|
|
44
|
+
React.useEffect(function () {
|
|
45
|
+
sendCustomEventToGTM({
|
|
46
|
+
event: 'Send Event',
|
|
47
|
+
event_category: 'User Authentication Flow',
|
|
48
|
+
event_action: 'Authentication List Step'
|
|
49
|
+
});
|
|
50
|
+
}, []);
|
|
51
|
+
var methods = useForm({
|
|
52
|
+
resolver: yupResolver(AuthenticationListValidationSchema()),
|
|
53
|
+
defaultValues: {
|
|
54
|
+
brandInfo: brandInfo,
|
|
55
|
+
entityInfo: entityInfo,
|
|
56
|
+
merchantInfo: merchantInfo
|
|
57
|
+
},
|
|
58
|
+
mode: 'onChange'
|
|
59
|
+
});
|
|
60
|
+
var t = useTranslation().t;
|
|
61
|
+
var isAr = useLanguage().isAr;
|
|
62
|
+
var dispatch = useAppDispatch();
|
|
63
|
+
var onSubmit = function (formData) {
|
|
64
|
+
dispatch(confirmInfo(deepCopy(formData)));
|
|
65
|
+
};
|
|
66
|
+
var onBack = function () {
|
|
67
|
+
var _a;
|
|
68
|
+
var code = (_a = settingsData.businessCountry) === null || _a === void 0 ? void 0 : _a.iso2;
|
|
69
|
+
var screen = startWithNID ? (isKW(code) ? 'AUTH_CIVIL_ID_STEP' : 'AUTH_NID_STEP') : 'AUTH_MOBILE_STEP';
|
|
70
|
+
dispatch(handlePrevScreenStep(screen));
|
|
71
|
+
};
|
|
72
|
+
React.useEffect(function () {
|
|
73
|
+
if (merchantInfo && !methods.getValues('merchantInfo'))
|
|
74
|
+
methods.setValue('merchantInfo', merchantInfo, { shouldValidate: true });
|
|
75
|
+
}, [merchantInfo]);
|
|
76
|
+
React.useEffect(function () {
|
|
77
|
+
if (error)
|
|
78
|
+
dispatch(clearError());
|
|
79
|
+
}, [methods.formState.isValid]);
|
|
80
|
+
var disabled = !methods.formState.isValid || merchantLoading || terminalLoading;
|
|
81
|
+
var handleMenuClick = function (flag) {
|
|
82
|
+
if (error)
|
|
83
|
+
dispatch(clearError());
|
|
84
|
+
setListActive(flag);
|
|
85
|
+
};
|
|
86
|
+
var isBrandList = listActive === ListType.BrandList;
|
|
87
|
+
var isEntityList = listActive === ListType.EntityList;
|
|
88
|
+
var isMerchantList = listActive === ListType.MerchantList;
|
|
89
|
+
return (_jsx(ScreenContainer, { children: _jsx(FormProvider, __assign({}, methods, { children: _jsxs(Form, __assign({ onSubmit: methods.handleSubmit(onSubmit) }, { children: [_jsx(BrandList, { list: brandList || [], show: !isEntityList && !isMerchantList, onListOpen: function () { return handleMenuClick(ListType.BrandList); }, onListClose: function () { return handleMenuClick(); } }), _jsx(EntityList, { list: entityList || [], countryList: settingsData.countries || [], show: !isBrandList && !isMerchantList, onListOpen: function () { return handleMenuClick(ListType.EntityList); }, onListClose: function () { return handleMenuClick(); } }), _jsx(MerchantList, { show: !isBrandList && !isEntityList, onListOpen: function () { return handleMenuClick(ListType.MerchantList); }, onListClose: function () { return handleMenuClick(); } }), _jsx(Collapse, __assign({ in: !listActive, timeout: 500 }, { children: _jsx(Button, __assign({ onBackClicked: function () { return onBack(); }, disabled: disabled, isAr: isAr, error: t(error || ''), loading: loading }, { children: t('next') })) }))] })) })) }));
|
|
90
|
+
};
|
|
91
|
+
export default React.memo(AuthenticationList);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { BrandInfo } from '../../../../@types';
|
|
3
|
+
interface BrandListProps {
|
|
4
|
+
show: boolean;
|
|
5
|
+
list: Array<BrandInfo>;
|
|
6
|
+
onListOpen?: () => void;
|
|
7
|
+
onListClose?: () => void;
|
|
8
|
+
}
|
|
9
|
+
declare const _default: React.MemoExoticComponent<({ show, list, ...rest }: BrandListProps) => import("react/jsx-runtime").JSX.Element>;
|
|
10
|
+
export default _default;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
23
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
24
|
+
import * as React from 'react';
|
|
25
|
+
import { useTranslation } from 'react-i18next';
|
|
26
|
+
import { useFormContext, useController } from 'react-hook-form';
|
|
27
|
+
import Box from '@mui/material/Box';
|
|
28
|
+
import { styled } from '@mui/material/styles';
|
|
29
|
+
import { useLanguage } from '../../../../hooks';
|
|
30
|
+
import SimpleList from '../../../../components/SimpleList';
|
|
31
|
+
import Text from '../../../../components/Text';
|
|
32
|
+
import ExpandIcon from '../../../../components/ExpandIcon';
|
|
33
|
+
import Collapse from '../../../../components/Collapse';
|
|
34
|
+
import ScreenContainer from '../../../shared/Containers/ScreenContainer';
|
|
35
|
+
import InputSelect from '../../../shared/InputSelect';
|
|
36
|
+
import CheckIcon from '../../../shared/CheckIcon';
|
|
37
|
+
var BrandContainer = styled(Box)(function () { return ({
|
|
38
|
+
display: 'flex'
|
|
39
|
+
}); });
|
|
40
|
+
var BrandNameText = styled(Text, { shouldForwardProp: function (prop) { return prop !== 'isSelected'; } })(function (_a) {
|
|
41
|
+
var theme = _a.theme, isSelected = _a.isSelected;
|
|
42
|
+
return (__assign(__assign({ color: theme.palette.text.primary }, theme.typography.body2), { fontWeight: isSelected ? theme.typography.fontWeightMedium : theme.typography.fontWeightLight }));
|
|
43
|
+
});
|
|
44
|
+
var BrandList = function (_a) {
|
|
45
|
+
var show = _a.show, list = _a.list, rest = __rest(_a, ["show", "list"]);
|
|
46
|
+
var _b = React.useState(null), anchorEl = _b[0], setAnchorEl = _b[1];
|
|
47
|
+
var t = useTranslation().t;
|
|
48
|
+
var isAr = useLanguage().isAr;
|
|
49
|
+
var control = useFormContext().control;
|
|
50
|
+
var brandInfoControl = useController({ control: control, name: 'brandInfo' });
|
|
51
|
+
var brandInfo = brandInfoControl.field.value;
|
|
52
|
+
var onOpenBrandList = function (event) {
|
|
53
|
+
var _a;
|
|
54
|
+
setAnchorEl(event.currentTarget);
|
|
55
|
+
(_a = rest.onListOpen) === null || _a === void 0 ? void 0 : _a.call(rest);
|
|
56
|
+
};
|
|
57
|
+
var onCloseBrandList = function () {
|
|
58
|
+
var _a;
|
|
59
|
+
setAnchorEl(null);
|
|
60
|
+
(_a = rest.onListClose) === null || _a === void 0 ? void 0 : _a.call(rest);
|
|
61
|
+
};
|
|
62
|
+
var getBrandName = function (brand) {
|
|
63
|
+
var _a, _b;
|
|
64
|
+
if (!brand)
|
|
65
|
+
return '';
|
|
66
|
+
return (isAr ? (_a = brand.name) === null || _a === void 0 ? void 0 : _a.ar : (_b = brand.name) === null || _b === void 0 ? void 0 : _b.en) || '';
|
|
67
|
+
};
|
|
68
|
+
var getBrandId = function (brand) {
|
|
69
|
+
if (!brand)
|
|
70
|
+
return '';
|
|
71
|
+
return brand.id || '';
|
|
72
|
+
};
|
|
73
|
+
var onSelectItem = function (brand) {
|
|
74
|
+
brandInfoControl.field.onChange(brand);
|
|
75
|
+
onCloseBrandList();
|
|
76
|
+
};
|
|
77
|
+
return (_jsx(Collapse, __assign({ in: show }, { children: _jsxs(ScreenContainer, { children: [_jsx(InputSelect, { label: t('select_brand_label'), onClick: !!anchorEl ? onCloseBrandList : onOpenBrandList, endAdornment: _jsx(ExpandIcon, { anchorEl: !!anchorEl }), placeholder: t('choose_brand'), value: t(getBrandName(brandInfo)) }), _jsx(Collapse, __assign({ in: !!anchorEl }, { children: _jsx(SimpleList, { space: 140, list: list, onSelectItem: onSelectItem, renderItem: function (item) {
|
|
78
|
+
return (_jsxs(_Fragment, { children: [_jsx(BrandContainer, { children: _jsx(BrandNameText, __assign({ isSelected: getBrandId(item) === getBrandId(brandInfo) }, { children: t(getBrandName(item)) })) }), getBrandId(item) === getBrandId(brandInfo) && _jsx(CheckIcon, {})] }));
|
|
79
|
+
} }) }))] }) })));
|
|
80
|
+
};
|
|
81
|
+
export default React.memo(BrandList);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { CountryCode, EntityLicenseAuth } from '../../../../@types';
|
|
3
|
+
interface EntityListProps {
|
|
4
|
+
show: boolean;
|
|
5
|
+
list: Array<EntityLicenseAuth>;
|
|
6
|
+
countryList: Array<CountryCode>;
|
|
7
|
+
onListOpen?: () => void;
|
|
8
|
+
onListClose?: () => void;
|
|
9
|
+
}
|
|
10
|
+
declare const _default: React.MemoExoticComponent<({ show, list, countryList, ...rest }: EntityListProps) => import("react/jsx-runtime").JSX.Element>;
|
|
11
|
+
export default _default;
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
23
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
24
|
+
import * as React from 'react';
|
|
25
|
+
import { useTranslation } from 'react-i18next';
|
|
26
|
+
import { useFormContext, useController } from 'react-hook-form';
|
|
27
|
+
import Box from '@mui/material/Box';
|
|
28
|
+
import { styled } from '@mui/material/styles';
|
|
29
|
+
import { useLanguage } from '../../../../hooks';
|
|
30
|
+
import ScreenContainer from '../../../shared/Containers/ScreenContainer';
|
|
31
|
+
import InputSelect from '../../../shared/InputSelect';
|
|
32
|
+
import CheckIcon from '../../../shared/CheckIcon';
|
|
33
|
+
import SimpleList from '../../../../components/SimpleList';
|
|
34
|
+
import Text from '../../../../components/Text';
|
|
35
|
+
import ExpandIcon from '../../../../components/ExpandIcon';
|
|
36
|
+
import Collapse from '../../../../components/Collapse';
|
|
37
|
+
import Icon from '../../../../components/Icon';
|
|
38
|
+
var EntityContainer = styled(Box)(function () { return ({
|
|
39
|
+
display: 'flex',
|
|
40
|
+
alignItems: 'center'
|
|
41
|
+
}); });
|
|
42
|
+
var EntityCountryFlag = styled(Icon)(function (_a) {
|
|
43
|
+
var theme = _a.theme;
|
|
44
|
+
return ({
|
|
45
|
+
display: 'flex',
|
|
46
|
+
marginInlineEnd: theme.spacing(1.25)
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
var EntityNameText = styled(Text, { shouldForwardProp: function (prop) { return prop !== 'isSelected'; } })(function (_a) {
|
|
50
|
+
var theme = _a.theme, isSelected = _a.isSelected;
|
|
51
|
+
return (__assign(__assign({ color: theme.palette.text.primary }, theme.typography.body2), { fontWeight: isSelected ? theme.typography.fontWeightMedium : theme.typography.fontWeightLight }));
|
|
52
|
+
});
|
|
53
|
+
var EntityList = function (_a) {
|
|
54
|
+
var show = _a.show, list = _a.list, countryList = _a.countryList, rest = __rest(_a, ["show", "list", "countryList"]);
|
|
55
|
+
var _b = React.useState(null), anchorEl = _b[0], setAnchorEl = _b[1];
|
|
56
|
+
var t = useTranslation().t;
|
|
57
|
+
var isAr = useLanguage().isAr;
|
|
58
|
+
var control = useFormContext().control;
|
|
59
|
+
var selectedEntityControl = useController({ control: control, name: 'entityInfo' });
|
|
60
|
+
var selectedEntity = selectedEntityControl.field.value;
|
|
61
|
+
var onOpenEntityList = function (event) {
|
|
62
|
+
var _a;
|
|
63
|
+
setAnchorEl(event.currentTarget);
|
|
64
|
+
(_a = rest.onListOpen) === null || _a === void 0 ? void 0 : _a.call(rest);
|
|
65
|
+
};
|
|
66
|
+
var onCloseEntityList = function () {
|
|
67
|
+
var _a;
|
|
68
|
+
setAnchorEl(null);
|
|
69
|
+
(_a = rest.onListClose) === null || _a === void 0 ? void 0 : _a.call(rest);
|
|
70
|
+
};
|
|
71
|
+
var getLegalName = function (entity) {
|
|
72
|
+
var _a, _b;
|
|
73
|
+
if (!entity)
|
|
74
|
+
return '';
|
|
75
|
+
return (isAr ? (_a = entity.legal_name) === null || _a === void 0 ? void 0 : _a.ar : (_b = entity.legal_name) === null || _b === void 0 ? void 0 : _b.en) || '';
|
|
76
|
+
};
|
|
77
|
+
var getEntityId = function (entity) {
|
|
78
|
+
if (!entity)
|
|
79
|
+
return '';
|
|
80
|
+
return entity.id || '';
|
|
81
|
+
};
|
|
82
|
+
var getCountryFlag = function (entity) {
|
|
83
|
+
var _a;
|
|
84
|
+
if (!entity)
|
|
85
|
+
return '';
|
|
86
|
+
return ((_a = countryList.find(function (country) { return country.iso2.toLocaleLowerCase() === entity.country.toLocaleLowerCase(); })) === null || _a === void 0 ? void 0 : _a.logo) || '';
|
|
87
|
+
};
|
|
88
|
+
var onSelectItem = function (brand) {
|
|
89
|
+
selectedEntityControl.field.onChange(brand);
|
|
90
|
+
onCloseEntityList();
|
|
91
|
+
};
|
|
92
|
+
return (_jsx(Collapse, __assign({ in: show }, { children: _jsxs(ScreenContainer, __assign({ sx: { mt: 2.5 } }, { children: [_jsx(InputSelect, { label: t('select_entity_label'), onClick: !!anchorEl ? onCloseEntityList : onOpenEntityList, endAdornment: _jsx(ExpandIcon, { anchorEl: !!anchorEl }), placeholder: t('select_entity_placeholder'), value: t(getLegalName(selectedEntity)) }), _jsx(Collapse, __assign({ in: !!anchorEl }, { children: _jsx(SimpleList, { space: 140, list: list, onSelectItem: onSelectItem, renderItem: function (entity) {
|
|
93
|
+
return (_jsxs(_Fragment, { children: [_jsxs(EntityContainer, { children: [_jsx(EntityCountryFlag, { src: getCountryFlag(entity) }), _jsx(EntityNameText, __assign({ isSelected: getEntityId(entity) === getEntityId(selectedEntity) }, { children: t(getLegalName(entity)) }))] }), getEntityId(entity) === getEntityId(selectedEntity) && _jsx(CheckIcon, {})] }));
|
|
94
|
+
} }) }))] })) })));
|
|
95
|
+
};
|
|
96
|
+
export default React.memo(EntityList);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
interface MerchantListProps {
|
|
3
|
+
show: boolean;
|
|
4
|
+
onListOpen?: () => void;
|
|
5
|
+
onListClose?: () => void;
|
|
6
|
+
readOnly?: boolean;
|
|
7
|
+
isVerified?: boolean;
|
|
8
|
+
}
|
|
9
|
+
declare const _default: React.MemoExoticComponent<React.ForwardRefExoticComponent<MerchantListProps & React.RefAttributes<unknown>>>;
|
|
10
|
+
export default _default;
|