@tap-payments/auth-jsconnect 2.8.65-development → 2.8.68-development
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/form.d.ts +1 -1
- package/build/api/auth.d.ts +13 -0
- package/build/api/index.d.ts +2 -2
- package/build/api/lead.d.ts +6 -0
- package/build/assets/locales/ar.json +10 -1
- package/build/assets/locales/en.json +10 -1
- package/build/constants/app.d.ts +1 -0
- package/build/constants/app.js +35 -12
- package/build/constants/assets.d.ts +2 -0
- package/build/constants/assets.js +2 -0
- package/build/features/app/auth/authStore.d.ts +5 -15
- package/build/features/app/auth/authStore.js +58 -113
- package/build/features/app/business/businessStore.d.ts +16 -11
- package/build/features/app/business/businessStore.js +58 -44
- package/build/features/app/connect/connectStore.d.ts +19 -12
- package/build/features/app/connect/connectStore.js +151 -82
- package/build/features/app/connectExpress/connectExpressStore.d.ts +10 -33
- package/build/features/app/connectExpress/connectExpressStore.js +156 -251
- package/build/features/app/individual/individualStore.js +4 -1
- package/build/features/auth/screens/AuthSwitch/AuthSwitch.js +2 -2
- package/build/features/auth/screens/NID/IDNumber.js +1 -1
- package/build/features/auth/screens/NID/NID.js +4 -10
- package/build/features/auth/screens/NID/validation.d.ts +0 -3
- package/build/features/auth/screens/NID/validation.js +0 -1
- package/build/features/auth/screens/OTP/OTP.js +1 -5
- package/build/features/auth/screens/OTP/OTPInput.js +2 -13
- package/build/features/{connectExpress/screens/IdentityOTP/OTP.d.ts → auth/screens/VerifyNafath/VerifyNafath.d.ts} +2 -2
- package/build/features/auth/screens/VerifyNafath/VerifyNafath.js +34 -0
- package/build/features/auth/screens/VerifyNafath/index.d.ts +3 -0
- package/build/features/auth/screens/VerifyNafath/index.js +2 -0
- package/build/features/business/screens/VerifyNafath/VerifyNafath.d.ts +5 -0
- package/build/features/business/screens/VerifyNafath/VerifyNafath.js +34 -0
- package/build/features/business/screens/VerifyNafath/index.d.ts +3 -0
- package/build/features/business/screens/VerifyNafath/index.js +2 -0
- package/build/features/connect/screens/Mobile/Mobile.js +2 -2
- package/build/features/connect/screens/NID/IDNumber.d.ts +1 -0
- package/build/features/connect/screens/NID/IDNumber.js +2 -2
- package/build/features/connect/screens/NID/NID.js +5 -11
- package/build/features/connect/screens/NID/validation.d.ts +0 -3
- package/build/features/connect/screens/NID/validation.js +0 -1
- package/build/features/connect/screens/OTP/OTPInput.js +3 -11
- package/build/features/connect/screens/VerifyNafath/VerifyNafath.d.ts +5 -0
- package/build/features/connect/screens/VerifyNafath/VerifyNafath.js +34 -0
- package/build/features/connect/screens/VerifyNafath/index.d.ts +3 -0
- package/build/features/connect/screens/VerifyNafath/index.js +2 -0
- package/build/features/connectExpress/screens/IdentityVerifyNafath/IdentityVerifyNafath.d.ts +5 -0
- package/build/features/connectExpress/screens/IdentityVerifyNafath/IdentityVerifyNafath.js +34 -0
- package/build/features/connectExpress/screens/IdentityVerifyNafath/index.d.ts +3 -0
- package/build/features/connectExpress/screens/IdentityVerifyNafath/index.js +2 -0
- package/build/features/connectExpress/screens/Mobile/Mobile.js +2 -2
- package/build/features/connectExpress/screens/NID/IDNumber.d.ts +1 -0
- package/build/features/connectExpress/screens/NID/IDNumber.js +2 -2
- package/build/features/connectExpress/screens/NID/NID.js +4 -9
- package/build/features/connectExpress/screens/NID/validation.d.ts +0 -3
- package/build/features/connectExpress/screens/NID/validation.js +0 -2
- package/build/features/connectExpress/screens/NIDMissed/NID.js +2 -2
- package/build/features/connectExpress/screens/OTP/OTP.js +5 -13
- package/build/features/connectExpress/screens/OTP/OTPInput.js +3 -11
- package/build/features/connectExpress/screens/VerifyNafath/VerifyNafath.d.ts +5 -0
- package/build/features/connectExpress/screens/VerifyNafath/VerifyNafath.js +34 -0
- package/build/features/connectExpress/screens/VerifyNafath/index.d.ts +3 -0
- package/build/features/connectExpress/screens/VerifyNafath/index.js +2 -0
- package/build/features/featuresScreens.js +21 -6
- package/build/features/shared/Button/NafathButton.d.ts +7 -0
- package/build/features/shared/Button/{AbsherButton.js → NafathButton.js} +13 -3
- package/build/features/shared/Button/index.d.ts +2 -2
- package/build/features/shared/Button/index.js +2 -2
- package/build/features/shared/NafathVerification/NafathVerification.d.ts +13 -0
- package/build/features/shared/NafathVerification/NafathVerification.js +92 -0
- package/build/features/shared/NafathVerification/VerifyNafathLoading.d.ts +8 -0
- package/build/features/shared/NafathVerification/VerifyNafathLoading.js +53 -0
- package/build/features/shared/NafathVerification/VerifyNafathSuccess.d.ts +5 -0
- package/build/features/shared/NafathVerification/VerifyNafathSuccess.js +8 -0
- package/build/features/shared/NafathVerification/index.d.ts +2 -0
- package/build/features/shared/NafathVerification/index.js +2 -0
- package/build/hooks/useAppTheme.js +4 -3
- package/build/theme/palette.js +2 -1
- package/build/theme/theme.d.ts +1 -1
- package/build/theme/theme.js +2 -2
- package/package.json +1 -1
- package/build/features/auth/screens/NID/DOB.d.ts +0 -6
- package/build/features/auth/screens/NID/DOB.js +0 -47
- package/build/features/business/screens/OTP/OTP.d.ts +0 -8
- package/build/features/business/screens/OTP/OTP.js +0 -90
- package/build/features/business/screens/OTP/OTPInput.d.ts +0 -5
- package/build/features/business/screens/OTP/OTPInput.js +0 -49
- package/build/features/business/screens/OTP/index.d.ts +0 -3
- package/build/features/business/screens/OTP/index.js +0 -2
- package/build/features/business/screens/OTP/validation.d.ts +0 -8
- package/build/features/business/screens/OTP/validation.js +0 -4
- package/build/features/connect/screens/NID/DOB.d.ts +0 -5
- package/build/features/connect/screens/NID/DOB.js +0 -47
- package/build/features/connectExpress/screens/IdentityOTP/OTP.js +0 -88
- package/build/features/connectExpress/screens/IdentityOTP/OTPInput.d.ts +0 -5
- package/build/features/connectExpress/screens/IdentityOTP/OTPInput.js +0 -56
- package/build/features/connectExpress/screens/IdentityOTP/index.d.ts +0 -3
- package/build/features/connectExpress/screens/IdentityOTP/index.js +0 -2
- package/build/features/connectExpress/screens/IdentityOTP/validation.d.ts +0 -8
- package/build/features/connectExpress/screens/IdentityOTP/validation.js +0 -4
- package/build/features/connectExpress/screens/NID/DOB.d.ts +0 -6
- package/build/features/connectExpress/screens/NID/DOB.js +0 -47
- package/build/features/shared/Button/AbsherButton.d.ts +0 -7
|
@@ -307,80 +307,109 @@ export var resendMobileAuthOTP = createAsyncThunk('connectExpress/resendMobileAu
|
|
|
307
307
|
}
|
|
308
308
|
});
|
|
309
309
|
}); });
|
|
310
|
-
export var
|
|
311
|
-
var
|
|
312
|
-
var
|
|
313
|
-
return __generator(this, function (
|
|
314
|
-
switch (
|
|
310
|
+
export var createNafathAuth = createAsyncThunk('connectExpress/createNafathAuth', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
|
|
311
|
+
var settings, requestBody, data;
|
|
312
|
+
var _a, _b;
|
|
313
|
+
return __generator(this, function (_c) {
|
|
314
|
+
switch (_c.label) {
|
|
315
315
|
case 0:
|
|
316
|
-
|
|
317
|
-
dob = params.dob, nid = params.nid;
|
|
318
|
-
nidType = nid.startsWith('1') ? IDENTIFICATION_TYPE.NID : IDENTIFICATION_TYPE.IQAMA;
|
|
319
|
-
countryCode = settings.data.businessCountry.iso2;
|
|
316
|
+
settings = thunkApi.getState().settings;
|
|
320
317
|
requestBody = {
|
|
321
|
-
country:
|
|
318
|
+
country: settings.data.businessCountry.iso2,
|
|
322
319
|
scope: settings.data.appConfig.scope,
|
|
323
320
|
lang: settings.data.language,
|
|
324
|
-
lead_id: connectExpress.data.leadId,
|
|
325
321
|
user_credentail: {
|
|
326
|
-
identification_id: nid,
|
|
327
|
-
identification_id_type:
|
|
328
|
-
|
|
329
|
-
country_code: countryCode
|
|
322
|
+
identification_id: params.nid,
|
|
323
|
+
identification_id_type: IDENTIFICATION_TYPE.NAFATH,
|
|
324
|
+
country_code: settings.data.businessCountry.iso2
|
|
330
325
|
},
|
|
331
326
|
sign_in: false,
|
|
332
327
|
is_lead: true,
|
|
333
328
|
step_name: CONNECT_EXPRESS_STEP_NAMES.CREATE_AUTH_NID,
|
|
334
|
-
encryption_contract: [
|
|
335
|
-
'user_credentail.country_code',
|
|
336
|
-
'user_credentail.identification_id',
|
|
337
|
-
'user_credentail.identification_id_type',
|
|
338
|
-
'user_credentail.date_of_birth'
|
|
339
|
-
]
|
|
329
|
+
encryption_contract: ['user_credentail.country_code', 'user_credentail.identification_id', 'user_credentail.identification_id_type']
|
|
340
330
|
};
|
|
341
|
-
return [4, API.authService.
|
|
331
|
+
return [4, API.authService.createAuthKitNID(requestBody)];
|
|
342
332
|
case 1:
|
|
343
|
-
data =
|
|
333
|
+
data = _c.sent();
|
|
344
334
|
thunkApi.dispatch(handleNextScreenStep());
|
|
345
|
-
(
|
|
346
|
-
return [2, { response: data, formData: params }];
|
|
335
|
+
(_b = (_a = settings.data.appConfig).onStepCompleted) === null || _b === void 0 ? void 0 : _b.call(_a, settings.data.activeScreen.name, requestBody);
|
|
336
|
+
return [2, { response: data, formData: __assign(__assign({}, params), { type: IDENTIFICATION_TYPE.NAFATH }) }];
|
|
347
337
|
}
|
|
348
338
|
});
|
|
349
339
|
}); });
|
|
350
|
-
export var
|
|
351
|
-
var _a, settings, connectExpress,
|
|
352
|
-
|
|
353
|
-
|
|
340
|
+
export var verifyNafathAsync = createAsyncThunk('connectExpress/verifyNafathAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
|
|
341
|
+
var _a, settings, connectExpress, authData, _b, scope, redirectUrl, authConfigData, isScopeAuthentication, bi, isDataHasIndividualOnly, authDataHasValue, expiry, interval, maxCalls, count, data, isSuccess, authId, urlQueryStart, _c, brandList, entityList, stepName, needToCollectMoreInfo, creatingAccount;
|
|
342
|
+
var _d, _e, _f;
|
|
343
|
+
return __generator(this, function (_g) {
|
|
344
|
+
switch (_g.label) {
|
|
354
345
|
case 0:
|
|
355
346
|
_a = thunkApi.getState(), settings = _a.settings, connectExpress = _a.connectExpress;
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
date_of_birth: dob,
|
|
368
|
-
country_code: countryCode
|
|
369
|
-
},
|
|
370
|
-
sign_in: false,
|
|
371
|
-
is_lead: true,
|
|
372
|
-
step_name: CONNECT_EXPRESS_STEP_NAMES.CREATE_AUTH_NID,
|
|
373
|
-
encryption_contract: [
|
|
374
|
-
'user_credentail.country_code',
|
|
375
|
-
'user_credentail.identification_id',
|
|
376
|
-
'user_credentail.identification_id_type',
|
|
377
|
-
'user_credentail.date_of_birth'
|
|
378
|
-
]
|
|
379
|
-
};
|
|
380
|
-
return [4, API.authService.createExpressAuth(requestBody)];
|
|
347
|
+
authData = (connectExpress.data.responseData || {}).authData;
|
|
348
|
+
_b = settings.data.appConfig, scope = _b.scope, redirectUrl = _b.redirectUrl, authConfigData = _b.data;
|
|
349
|
+
isScopeAuthentication = scope === SCOPE_AUTH;
|
|
350
|
+
bi = settings.data.deviceInfo.browser.browser_id;
|
|
351
|
+
isDataHasIndividualOnly = (authConfigData === null || authConfigData === void 0 ? void 0 : authConfigData.length) === 1 && authConfigData.includes('individual');
|
|
352
|
+
authDataHasValue = authConfigData === null || authConfigData === void 0 ? void 0 : authConfigData.length;
|
|
353
|
+
expiry = (authData === null || authData === void 0 ? void 0 : authData.expiry) || 120;
|
|
354
|
+
interval = 3;
|
|
355
|
+
maxCalls = Math.floor(expiry / interval);
|
|
356
|
+
count = 1;
|
|
357
|
+
_g.label = 1;
|
|
381
358
|
case 1:
|
|
382
|
-
|
|
383
|
-
|
|
359
|
+
if (!(count <= maxCalls)) return [3, 9];
|
|
360
|
+
if (thunkApi.signal.aborted) {
|
|
361
|
+
return [3, 9];
|
|
362
|
+
}
|
|
363
|
+
return [4, API.authService.getVerifyAuth(authData === null || authData === void 0 ? void 0 : authData.auth_token)];
|
|
364
|
+
case 2:
|
|
365
|
+
data = _g.sent();
|
|
366
|
+
isSuccess = ((_e = (_d = data.auth) === null || _d === void 0 ? void 0 : _d.status) === null || _e === void 0 ? void 0 : _e.toLowerCase()) === 'completed';
|
|
367
|
+
if (!isSuccess) return [3, 6];
|
|
368
|
+
authId = data.auth.id;
|
|
369
|
+
thunkApi.dispatch(storeAuthId(authId));
|
|
370
|
+
if (isScopeAuthentication && !data.new_user && isDataHasIndividualOnly && authId) {
|
|
371
|
+
if (settings.data.appConfig.mode === 'popup') {
|
|
372
|
+
settings.data.appConfig.onFlowCompleted({ auth_id: authId, bi: bi });
|
|
373
|
+
thunkApi.dispatch(handleOpen(false));
|
|
374
|
+
return [2, data];
|
|
375
|
+
}
|
|
376
|
+
if (redirectUrl) {
|
|
377
|
+
urlQueryStart = redirectUrl.includes('?') ? '&' : '?';
|
|
378
|
+
window.open("".concat(redirectUrl).concat(urlQueryStart, "authentication_id=").concat(authId, "&bi=").concat(bi), '_self');
|
|
379
|
+
return [2, data];
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
if (!(isScopeAuthentication && !data.new_user && authDataHasValue)) return [3, 4];
|
|
383
|
+
return [4, thunkApi.dispatch(retrieveAuthenticationListAsync({ individualId: data.individual_id })).unwrap()];
|
|
384
|
+
case 3:
|
|
385
|
+
_c = _g.sent(), brandList = _c.brandList, entityList = _c.entityList;
|
|
386
|
+
if (brandList.length && entityList.length) {
|
|
387
|
+
sleep(100).then(function () { return thunkApi.dispatch(handleNextScreenStep('CONNECT_EXPRESS_AUTHENTICATION_LIST_STEP')); });
|
|
388
|
+
return [2, data];
|
|
389
|
+
}
|
|
390
|
+
_g.label = 4;
|
|
391
|
+
case 4: return [4, thunkApi.dispatch(getLeadByIdAsync(data.lead.id)).unwrap()];
|
|
392
|
+
case 5:
|
|
393
|
+
_g.sent();
|
|
394
|
+
stepName = data.step_name;
|
|
395
|
+
needToCollectMoreInfo = stepName === 'collect_info';
|
|
396
|
+
creatingAccount = stepName === 'create_account';
|
|
397
|
+
(_f = params.onSuccess) === null || _f === void 0 ? void 0 : _f.call(params);
|
|
398
|
+
if (creatingAccount) {
|
|
399
|
+
sleep(100).then(function () { return thunkApi.dispatch(handleCurrentActiveScreen('CONNECT_EXPRESS_WAITING_FOR_CREATING_ACCOUNT_STEP')); });
|
|
400
|
+
}
|
|
401
|
+
if (needToCollectMoreInfo) {
|
|
402
|
+
sleep(100).then(function () { return thunkApi.dispatch(handleCurrentActiveScreen('CONNECT_EXPRESS_COLLECT_INDIVIDUAL_INFO_STEP')); });
|
|
403
|
+
}
|
|
404
|
+
return [2, data];
|
|
405
|
+
case 6: return [4, sleep(interval * 1000)];
|
|
406
|
+
case 7:
|
|
407
|
+
_g.sent();
|
|
408
|
+
_g.label = 8;
|
|
409
|
+
case 8:
|
|
410
|
+
count++;
|
|
411
|
+
return [3, 1];
|
|
412
|
+
case 9: throw new Error('nafath_verification_failed');
|
|
384
413
|
}
|
|
385
414
|
});
|
|
386
415
|
}); });
|
|
@@ -488,82 +517,6 @@ export var verifyMobileOtpAsync = createAsyncThunk('connectExpress/verifyMobileO
|
|
|
488
517
|
}
|
|
489
518
|
});
|
|
490
519
|
}); });
|
|
491
|
-
export var verifyNIDOtpAsync = createAsyncThunk('connectExpress/verifyNIDOtpAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
|
|
492
|
-
var _a, settings, connectExpress, _b, responseData, leadId, isLeadIdPassed, nidData, _c, auth_token, device_token, service_name, _d, scope, redirectUrl, authData, isScopeAuthentication, bi, isDataHasIndividualOnly, authDataHasValue, payload, data, authId, urlQueryStart, _e, brandList, entityList, stepName, needToCollectMoreInfo, creatingAccount;
|
|
493
|
-
var _f, _g;
|
|
494
|
-
return __generator(this, function (_h) {
|
|
495
|
-
switch (_h.label) {
|
|
496
|
-
case 0:
|
|
497
|
-
_a = thunkApi.getState(), settings = _a.settings, connectExpress = _a.connectExpress;
|
|
498
|
-
_b = connectExpress.data || {}, responseData = _b.responseData, leadId = _b.leadId, isLeadIdPassed = _b.isLeadIdPassed, nidData = _b.nidData;
|
|
499
|
-
if (!(responseData === null || responseData === void 0 ? void 0 : responseData.authData))
|
|
500
|
-
throw new Error('Auth data is missing');
|
|
501
|
-
_c = responseData.authData, auth_token = _c.auth_token, device_token = _c.device_token, service_name = _c.service_name;
|
|
502
|
-
_d = settings.data.appConfig, scope = _d.scope, redirectUrl = _d.redirectUrl, authData = _d.data;
|
|
503
|
-
isScopeAuthentication = scope === SCOPE_AUTH;
|
|
504
|
-
bi = settings.data.deviceInfo.browser.browser_id;
|
|
505
|
-
isDataHasIndividualOnly = (authData === null || authData === void 0 ? void 0 : authData.length) === 1 && authData.includes('individual');
|
|
506
|
-
authDataHasValue = authData === null || authData === void 0 ? void 0 : authData.length;
|
|
507
|
-
payload = {
|
|
508
|
-
auth_token: auth_token,
|
|
509
|
-
lead_id: leadId,
|
|
510
|
-
data: params.otp,
|
|
511
|
-
auth_type: 2,
|
|
512
|
-
device_token: device_token,
|
|
513
|
-
service_name: service_name || 'ABSHER',
|
|
514
|
-
sign_in: false,
|
|
515
|
-
terms: isLeadIdPassed && nidData.termAndConditionChecked ? ['general'] : undefined,
|
|
516
|
-
step_name: CONNECT_EXPRESS_STEP_NAMES.VERIFY_AUTH_NID,
|
|
517
|
-
encryption_contract: ['data']
|
|
518
|
-
};
|
|
519
|
-
return [4, API.authService.verifyExpressAuth(payload)];
|
|
520
|
-
case 1:
|
|
521
|
-
data = _h.sent();
|
|
522
|
-
sendCustomEventToGTM({
|
|
523
|
-
event: 'Send Event',
|
|
524
|
-
event_category: 'User Registration Flow',
|
|
525
|
-
event_action: 'First OTP Success'
|
|
526
|
-
});
|
|
527
|
-
(_g = (_f = settings.data.appConfig).onStepCompleted) === null || _g === void 0 ? void 0 : _g.call(_f, settings.data.activeScreen.name, params);
|
|
528
|
-
authId = data.auth.id;
|
|
529
|
-
thunkApi.dispatch(storeAuthId(authId));
|
|
530
|
-
if (isScopeAuthentication && !data.new_user && isDataHasIndividualOnly && authId) {
|
|
531
|
-
if (settings.data.appConfig.mode === 'popup') {
|
|
532
|
-
settings.data.appConfig.onFlowCompleted({ auth_id: authId, bi: bi });
|
|
533
|
-
thunkApi.dispatch(handleOpen(false));
|
|
534
|
-
return [2, data];
|
|
535
|
-
}
|
|
536
|
-
if (redirectUrl) {
|
|
537
|
-
urlQueryStart = redirectUrl.includes('?') ? '&' : '?';
|
|
538
|
-
window.open("".concat(redirectUrl).concat(urlQueryStart, "authentication_id=").concat(authId, "&bi=").concat(bi), '_self');
|
|
539
|
-
return [2, data];
|
|
540
|
-
}
|
|
541
|
-
}
|
|
542
|
-
if (!(isScopeAuthentication && !data.new_user && authDataHasValue)) return [3, 3];
|
|
543
|
-
return [4, thunkApi.dispatch(retrieveAuthenticationListAsync({ individualId: data.individual_id })).unwrap()];
|
|
544
|
-
case 2:
|
|
545
|
-
_e = _h.sent(), brandList = _e.brandList, entityList = _e.entityList;
|
|
546
|
-
if (brandList.length && entityList.length) {
|
|
547
|
-
sleep(100).then(function () { return thunkApi.dispatch(handleNextScreenStep('CONNECT_EXPRESS_AUTHENTICATION_LIST_STEP')); });
|
|
548
|
-
return [2, data];
|
|
549
|
-
}
|
|
550
|
-
_h.label = 3;
|
|
551
|
-
case 3: return [4, thunkApi.dispatch(getLeadByIdAsync(data.lead.id)).unwrap()];
|
|
552
|
-
case 4:
|
|
553
|
-
_h.sent();
|
|
554
|
-
stepName = data.step_name;
|
|
555
|
-
needToCollectMoreInfo = stepName === 'collect_info';
|
|
556
|
-
creatingAccount = stepName === 'create_account';
|
|
557
|
-
if (creatingAccount) {
|
|
558
|
-
sleep(100).then(function () { return thunkApi.dispatch(handleCurrentActiveScreen('CONNECT_EXPRESS_WAITING_FOR_CREATING_ACCOUNT_STEP')); });
|
|
559
|
-
}
|
|
560
|
-
if (needToCollectMoreInfo) {
|
|
561
|
-
sleep(100).then(function () { return thunkApi.dispatch(handleCurrentActiveScreen('CONNECT_EXPRESS_COLLECT_INDIVIDUAL_INFO_STEP')); });
|
|
562
|
-
}
|
|
563
|
-
return [2, data];
|
|
564
|
-
}
|
|
565
|
-
});
|
|
566
|
-
}); });
|
|
567
520
|
export var verifyPACIAsync = createAsyncThunk('connectExpress/verifyPACIAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
|
|
568
521
|
var _a, settings, connectExpress, authData, _b, scope, redirectUrl, authConfigData, isScopeAuthentication, bi, isDataHasIndividualOnly, authDataHasValue, expiry, interval, maxCalls, count, data, isSuccess, authId, urlQueryStart, _c, brandList, entityList, stepName, needToCollectMoreInfo, creatingAccount;
|
|
569
522
|
var _d, _e, _f;
|
|
@@ -668,28 +621,29 @@ export var createCivilIDAuthIdentityAsync = createAsyncThunk('connectExpress/cre
|
|
|
668
621
|
}
|
|
669
622
|
});
|
|
670
623
|
}); });
|
|
671
|
-
export var
|
|
672
|
-
var _a, settings, connectExpress,
|
|
624
|
+
export var createNIDNafathAuthIdentityAsync = createAsyncThunk('connectExpress/createNIDNafathAuthIdentityAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
|
|
625
|
+
var _a, settings, connectExpress, nid, dob, nidType, countryCode, authData, requestBody, data;
|
|
673
626
|
var _b, _c, _d;
|
|
674
627
|
return __generator(this, function (_e) {
|
|
675
628
|
switch (_e.label) {
|
|
676
629
|
case 0:
|
|
677
630
|
_a = thunkApi.getState(), settings = _a.settings, connectExpress = _a.connectExpress;
|
|
678
|
-
|
|
679
|
-
nidType =
|
|
631
|
+
nid = params.nid, dob = params.dob;
|
|
632
|
+
nidType = IDENTIFICATION_TYPE.NAFATH;
|
|
680
633
|
countryCode = settings.data.businessCountry.iso2;
|
|
681
634
|
if (isOtherThanKWOrSA(countryCode)) {
|
|
682
635
|
nidType = IDENTIFICATION_TYPE.NID;
|
|
683
636
|
}
|
|
637
|
+
authData = (_b = connectExpress.data.responseData) === null || _b === void 0 ? void 0 : _b.authData;
|
|
684
638
|
requestBody = {
|
|
685
|
-
id:
|
|
639
|
+
id: authData === null || authData === void 0 ? void 0 : authData.lead_id,
|
|
686
640
|
identification: {
|
|
687
641
|
id: nid,
|
|
688
642
|
issued_country_code: countryCode,
|
|
689
643
|
type: nidType
|
|
690
644
|
},
|
|
691
|
-
country_code: countryCode,
|
|
692
645
|
date_of_birth: dob,
|
|
646
|
+
country_code: countryCode,
|
|
693
647
|
step_name: CONNECT_EXPRESS_STEP_NAMES.IDENTITY_AUTH,
|
|
694
648
|
encryption_contract: ['identification.issued_country_code', 'identification.id', 'identification.type', 'date_of_birth']
|
|
695
649
|
};
|
|
@@ -697,7 +651,7 @@ export var createNIDAuthIdentityAsync = createAsyncThunk('connectExpress/createN
|
|
|
697
651
|
case 1:
|
|
698
652
|
data = _e.sent();
|
|
699
653
|
if (!((data === null || data === void 0 ? void 0 : data.verify_token) !== 'null')) return [3, 2];
|
|
700
|
-
thunkApi.dispatch(handleNextScreenStep('
|
|
654
|
+
thunkApi.dispatch(handleNextScreenStep('CONNECT_EXPRESS_IDENTITY_VERIFY_NAFATH_STEP'));
|
|
701
655
|
return [3, 4];
|
|
702
656
|
case 2:
|
|
703
657
|
if (!isOtherThanKWOrSA(countryCode)) return [3, 4];
|
|
@@ -707,77 +661,40 @@ export var createNIDAuthIdentityAsync = createAsyncThunk('connectExpress/createN
|
|
|
707
661
|
thunkApi.dispatch(handleNextScreenStep('CONNECT_EXPRESS_COLLECT_INDIVIDUAL_INFO_STEP'));
|
|
708
662
|
_e.label = 4;
|
|
709
663
|
case 4:
|
|
710
|
-
(_d = (_c = settings.data.appConfig).onStepCompleted) === null || _d === void 0 ? void 0 : _d.call(_c, settings.data.activeScreen.name, requestBody
|
|
664
|
+
(_d = (_c = settings.data.appConfig).onStepCompleted) === null || _d === void 0 ? void 0 : _d.call(_c, settings.data.activeScreen.name, requestBody);
|
|
711
665
|
return [2, { response: { verify_token: data.verify_token }, formData: params }];
|
|
712
666
|
}
|
|
713
667
|
});
|
|
714
668
|
}); });
|
|
715
|
-
export var
|
|
716
|
-
var
|
|
717
|
-
var _b;
|
|
718
|
-
return __generator(this, function (
|
|
719
|
-
switch (
|
|
720
|
-
case 0:
|
|
721
|
-
_a = thunkApi.getState(), settings = _a.settings, connectExpress = _a.connectExpress;
|
|
722
|
-
dob = params.dob, nid = params.nid;
|
|
723
|
-
nidType = nid.startsWith('1') ? IDENTIFICATION_TYPE.NID : IDENTIFICATION_TYPE.IQAMA;
|
|
724
|
-
countryCode = settings.data.businessCountry.iso2;
|
|
725
|
-
if (isOtherThanKWOrSA(countryCode)) {
|
|
726
|
-
nidType = IDENTIFICATION_TYPE.NID;
|
|
727
|
-
}
|
|
728
|
-
requestBody = {
|
|
729
|
-
id: (_b = connectExpress.data.responseData) === null || _b === void 0 ? void 0 : _b.authData.lead_id,
|
|
730
|
-
identification: {
|
|
731
|
-
id: nid,
|
|
732
|
-
issued_country_code: countryCode,
|
|
733
|
-
type: nidType
|
|
734
|
-
},
|
|
735
|
-
country_code: countryCode,
|
|
736
|
-
date_of_birth: dob,
|
|
737
|
-
step_name: CONNECT_EXPRESS_STEP_NAMES.IDENTITY_AUTH,
|
|
738
|
-
encryption_contract: ['identification.issued_country_code', 'identification.id', 'identification.type', 'date_of_birth']
|
|
739
|
-
};
|
|
740
|
-
return [4, API.leadService.updateLead(requestBody)];
|
|
741
|
-
case 1:
|
|
742
|
-
data = _c.sent();
|
|
743
|
-
return [2, { response: { verify_token: data.verify_token }, formData: params }];
|
|
744
|
-
}
|
|
745
|
-
});
|
|
746
|
-
}); });
|
|
747
|
-
export var verifyNIDOtpLeadIdentityAsync = createAsyncThunk('connectExpress/verifyNIDOtpLeadIdentityAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
|
|
748
|
-
var _a, settings, connectExpress, _b, responseData, leadId, verify_token, payload, data, needToCollectMoreInfo, creatingAccount;
|
|
749
|
-
var _c, _d;
|
|
750
|
-
return __generator(this, function (_e) {
|
|
751
|
-
switch (_e.label) {
|
|
669
|
+
export var verifyNafathIdentityAsync = createAsyncThunk('connectExpress/verifyNafathIdentityAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
|
|
670
|
+
var connectExpress, authData, expiry, interval, maxCalls, count, data, isSuccess, needToCollectMoreInfo, creatingAccount;
|
|
671
|
+
var _a, _b, _c;
|
|
672
|
+
return __generator(this, function (_d) {
|
|
673
|
+
switch (_d.label) {
|
|
752
674
|
case 0:
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
lead_id: leadId,
|
|
761
|
-
data: params.otp,
|
|
762
|
-
service_name: 'absher',
|
|
763
|
-
sign_in: false,
|
|
764
|
-
step_name: CONNECT_EXPRESS_STEP_NAMES.VERIFY_IDENTITY_AUTH,
|
|
765
|
-
encryption_contract: ['data']
|
|
766
|
-
};
|
|
767
|
-
return [4, API.authService.verifyExpressLeadIdentity(payload)];
|
|
675
|
+
connectExpress = thunkApi.getState().connectExpress;
|
|
676
|
+
authData = (connectExpress.data.responseData || {}).authData;
|
|
677
|
+
expiry = (authData === null || authData === void 0 ? void 0 : authData.expiry) || 120;
|
|
678
|
+
interval = 3;
|
|
679
|
+
maxCalls = Math.floor(expiry / interval);
|
|
680
|
+
count = 1;
|
|
681
|
+
_d.label = 1;
|
|
768
682
|
case 1:
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
});
|
|
775
|
-
return [4, thunkApi.dispatch(getLeadByIdAsync(data.lead.id)).unwrap()];
|
|
683
|
+
if (!(count <= maxCalls)) return [3, 7];
|
|
684
|
+
if (thunkApi.signal.aborted) {
|
|
685
|
+
return [3, 7];
|
|
686
|
+
}
|
|
687
|
+
return [4, API.authService.getExpressTokenVerify({ token: authData === null || authData === void 0 ? void 0 : authData.verify_token, leadId: authData === null || authData === void 0 ? void 0 : authData.lead_id })];
|
|
776
688
|
case 2:
|
|
777
|
-
|
|
778
|
-
(
|
|
689
|
+
data = _d.sent();
|
|
690
|
+
isSuccess = ((_b = (_a = data.auth) === null || _a === void 0 ? void 0 : _a.status) === null || _b === void 0 ? void 0 : _b.toLowerCase()) === 'completed';
|
|
691
|
+
if (!isSuccess) return [3, 4];
|
|
692
|
+
return [4, thunkApi.dispatch(getLeadByIdAsync(data.lead.id)).unwrap()];
|
|
693
|
+
case 3:
|
|
694
|
+
_d.sent();
|
|
779
695
|
needToCollectMoreInfo = data.step_name === 'collect_info';
|
|
780
696
|
creatingAccount = data.step_name === 'create_account';
|
|
697
|
+
(_c = params.onSuccess) === null || _c === void 0 ? void 0 : _c.call(params);
|
|
781
698
|
if (creatingAccount) {
|
|
782
699
|
sleep(100).then(function () { return thunkApi.dispatch(handleCurrentActiveScreen('CONNECT_EXPRESS_WAITING_FOR_CREATING_ACCOUNT_STEP')); });
|
|
783
700
|
}
|
|
@@ -785,10 +702,18 @@ export var verifyNIDOtpLeadIdentityAsync = createAsyncThunk('connectExpress/veri
|
|
|
785
702
|
sleep(100).then(function () { return thunkApi.dispatch(handleCurrentActiveScreen('CONNECT_EXPRESS_COLLECT_INDIVIDUAL_INFO_STEP')); });
|
|
786
703
|
}
|
|
787
704
|
return [2, data];
|
|
705
|
+
case 4: return [4, sleep(interval * 1000)];
|
|
706
|
+
case 5:
|
|
707
|
+
_d.sent();
|
|
708
|
+
_d.label = 6;
|
|
709
|
+
case 6:
|
|
710
|
+
count++;
|
|
711
|
+
return [3, 1];
|
|
712
|
+
case 7: throw new Error('nafath_verification_failed');
|
|
788
713
|
}
|
|
789
714
|
});
|
|
790
715
|
}); });
|
|
791
|
-
export var verifyPaciLeadIdentityAsync = createAsyncThunk('connectExpress/
|
|
716
|
+
export var verifyPaciLeadIdentityAsync = createAsyncThunk('connectExpress/verifyPaciLeadIdentityAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
|
|
792
717
|
var connectExpress, authData, expiry, interval, maxCalls, count, data, isSuccess, needToCollectMoreInfo, creatingAccount;
|
|
793
718
|
var _a, _b, _c;
|
|
794
719
|
return __generator(this, function (_d) {
|
|
@@ -831,7 +756,7 @@ export var verifyPaciLeadIdentityAsync = createAsyncThunk('connectExpress/verify
|
|
|
831
756
|
case 6:
|
|
832
757
|
count++;
|
|
833
758
|
return [3, 1];
|
|
834
|
-
case 7: throw new Error('
|
|
759
|
+
case 7: throw new Error('nafath_verification_failed');
|
|
835
760
|
}
|
|
836
761
|
});
|
|
837
762
|
}); });
|
|
@@ -1176,7 +1101,6 @@ var initialState = {
|
|
|
1176
1101
|
},
|
|
1177
1102
|
nidData: {
|
|
1178
1103
|
nid: '',
|
|
1179
|
-
dob: '',
|
|
1180
1104
|
termAndConditionChecked: false
|
|
1181
1105
|
},
|
|
1182
1106
|
civilIdData: {
|
|
@@ -1265,11 +1189,9 @@ export var connectSlice = createSlice({
|
|
|
1265
1189
|
state.customLoading = false;
|
|
1266
1190
|
var _a = action.payload, data = _a.data, countryCode = _a.countryCode, boardInfo = _a.boardInfo, boardData = _a.boardData;
|
|
1267
1191
|
state.data.responseData = __assign(__assign({}, state.data.responseData), { leadData: data, boardInfo: boardInfo, boardData: boardData });
|
|
1268
|
-
var _b = data || {}, identification = _b.identification,
|
|
1192
|
+
var _b = data || {}, identification = _b.identification, contact = _b.contact, terms_conditions_accepted = _b.terms_conditions_accepted;
|
|
1269
1193
|
if (identification === null || identification === void 0 ? void 0 : identification.id)
|
|
1270
1194
|
state.data.nidData.nid = identification === null || identification === void 0 ? void 0 : identification.id;
|
|
1271
|
-
if (date_of_birth)
|
|
1272
|
-
state.data.nidData.dob = date_of_birth;
|
|
1273
1195
|
var phone = (contact || {}).phone;
|
|
1274
1196
|
if (phone) {
|
|
1275
1197
|
state.data.mobileData.mobile = phone === null || phone === void 0 ? void 0 : phone.number;
|
|
@@ -1293,11 +1215,9 @@ export var connectSlice = createSlice({
|
|
|
1293
1215
|
state.loading = false;
|
|
1294
1216
|
var _c = action.payload, data = _c.data, countryCode = _c.countryCode;
|
|
1295
1217
|
state.data.responseData = __assign(__assign({}, state.data.responseData), { leadData: data });
|
|
1296
|
-
var _d = data || {}, name = _d.name, contact = _d.contact, brand = _d.brand, identification = _d.identification,
|
|
1218
|
+
var _d = data || {}, name = _d.name, contact = _d.contact, brand = _d.brand, identification = _d.identification, terms_conditions_accepted = _d.terms_conditions_accepted;
|
|
1297
1219
|
if (identification === null || identification === void 0 ? void 0 : identification.id)
|
|
1298
1220
|
state.data.nidData.nid = identification === null || identification === void 0 ? void 0 : identification.id;
|
|
1299
|
-
if (date_of_birth)
|
|
1300
|
-
state.data.nidData.dob = date_of_birth;
|
|
1301
1221
|
var fullName = concatenateObjectValues(name, ['first', 'middle', 'last']);
|
|
1302
1222
|
if (!!fullName) {
|
|
1303
1223
|
var capitalizedName = capitalizeTheFirstLetterOfEachWord(fullName);
|
|
@@ -1344,29 +1264,20 @@ export var connectSlice = createSlice({
|
|
|
1344
1264
|
.addCase(resendMobileAuthOTP.rejected, function (state, action) {
|
|
1345
1265
|
state.error = action.error.message;
|
|
1346
1266
|
})
|
|
1347
|
-
.addCase(
|
|
1348
|
-
state.loading = true;
|
|
1349
|
-
state.error = null;
|
|
1350
|
-
})
|
|
1351
|
-
.addCase(createNIDAuthAsync.fulfilled, function (state, action) {
|
|
1267
|
+
.addCase(createNafathAuth.fulfilled, function (state, action) {
|
|
1352
1268
|
state.loading = false;
|
|
1353
|
-
state.
|
|
1269
|
+
state.error = null;
|
|
1270
|
+
var _a = action.payload, formData = _a.formData, response = _a.response;
|
|
1271
|
+
state.data.nidData = formData;
|
|
1272
|
+
state.data.responseData = __assign(__assign({}, state.data.responseData), { authData: response });
|
|
1354
1273
|
state.data.otpData.authFor = AuthForType.NATIONAL_ID;
|
|
1355
|
-
state.data.responseData = __assign(__assign({}, state.data.responseData), { authData: action.payload.response });
|
|
1356
|
-
})
|
|
1357
|
-
.addCase(createNIDAuthAsync.rejected, function (state, action) {
|
|
1358
|
-
state.loading = false;
|
|
1359
|
-
state.error = action.error.message;
|
|
1360
1274
|
})
|
|
1361
|
-
.addCase(
|
|
1275
|
+
.addCase(createNafathAuth.pending, function (state) {
|
|
1276
|
+
state.loading = true;
|
|
1362
1277
|
state.error = null;
|
|
1363
1278
|
})
|
|
1364
|
-
.addCase(
|
|
1365
|
-
state.
|
|
1366
|
-
state.data.otpData.authFor = AuthForType.NATIONAL_ID;
|
|
1367
|
-
state.data.responseData = __assign(__assign({}, state.data.responseData), { authData: action.payload.response });
|
|
1368
|
-
})
|
|
1369
|
-
.addCase(resendNIDAuthOTP.rejected, function (state, action) {
|
|
1279
|
+
.addCase(createNafathAuth.rejected, function (state, action) {
|
|
1280
|
+
state.loading = false;
|
|
1370
1281
|
state.error = action.error.message;
|
|
1371
1282
|
})
|
|
1372
1283
|
.addCase(createCivilIdAuthAsync.pending, function (state) {
|
|
@@ -1398,32 +1309,20 @@ export var connectSlice = createSlice({
|
|
|
1398
1309
|
state.loading = false;
|
|
1399
1310
|
state.error = action.error.message;
|
|
1400
1311
|
})
|
|
1401
|
-
.addCase(
|
|
1312
|
+
.addCase(createNIDNafathAuthIdentityAsync.pending, function (state) {
|
|
1402
1313
|
state.loading = true;
|
|
1403
1314
|
state.error = null;
|
|
1404
1315
|
})
|
|
1405
|
-
.addCase(
|
|
1316
|
+
.addCase(createNIDNafathAuthIdentityAsync.fulfilled, function (state, action) {
|
|
1406
1317
|
var _a;
|
|
1407
1318
|
state.loading = false;
|
|
1408
1319
|
state.data.nidData = action.payload.formData;
|
|
1409
1320
|
state.data.otpData.authFor = AuthForType.NATIONAL_ID_MISSED;
|
|
1410
1321
|
state.data.responseData = __assign(__assign({}, state.data.responseData), { authData: __assign(__assign({}, (_a = state.data.responseData) === null || _a === void 0 ? void 0 : _a.authData), action.payload.response) });
|
|
1411
1322
|
})
|
|
1412
|
-
.addCase(
|
|
1323
|
+
.addCase(createNIDNafathAuthIdentityAsync.rejected, function (state, action) {
|
|
1413
1324
|
state.loading = false;
|
|
1414
1325
|
state.error = action.error.message;
|
|
1415
|
-
})
|
|
1416
|
-
.addCase(resendNIDAuthIdentityOTP.pending, function (state) {
|
|
1417
|
-
state.error = null;
|
|
1418
|
-
})
|
|
1419
|
-
.addCase(resendNIDAuthIdentityOTP.fulfilled, function (state, action) {
|
|
1420
|
-
var _a;
|
|
1421
|
-
state.data.nidData = action.payload.formData;
|
|
1422
|
-
state.data.otpData.authFor = AuthForType.NATIONAL_ID_MISSED;
|
|
1423
|
-
state.data.responseData = __assign(__assign({}, state.data.responseData), { authData: __assign(__assign({}, (_a = state.data.responseData) === null || _a === void 0 ? void 0 : _a.authData), action.payload.response) });
|
|
1424
|
-
})
|
|
1425
|
-
.addCase(resendNIDAuthIdentityOTP.rejected, function (state, action) {
|
|
1426
|
-
state.error = action.error.message;
|
|
1427
1326
|
})
|
|
1428
1327
|
.addCase(verifyMobileOtpAsync.pending, function (state) {
|
|
1429
1328
|
state.loading = true;
|
|
@@ -1438,18 +1337,21 @@ export var connectSlice = createSlice({
|
|
|
1438
1337
|
state.loading = false;
|
|
1439
1338
|
state.error = action.error.message;
|
|
1440
1339
|
})
|
|
1441
|
-
.addCase(
|
|
1340
|
+
.addCase(verifyNafathAsync.pending, function (state) {
|
|
1442
1341
|
state.loading = true;
|
|
1443
1342
|
state.error = null;
|
|
1444
1343
|
})
|
|
1445
|
-
.addCase(
|
|
1344
|
+
.addCase(verifyNafathAsync.fulfilled, function (state, action) {
|
|
1446
1345
|
var _a;
|
|
1447
1346
|
state.loading = false;
|
|
1448
1347
|
state.data.responseData = __assign(__assign({}, state.data.responseData), { authData: __assign(__assign({}, (_a = state.data.responseData) === null || _a === void 0 ? void 0 : _a.authData), action.payload) });
|
|
1449
1348
|
})
|
|
1450
|
-
.addCase(
|
|
1349
|
+
.addCase(verifyNafathAsync.rejected, function (state, action) {
|
|
1451
1350
|
state.loading = false;
|
|
1452
|
-
|
|
1351
|
+
var error = action.error.message;
|
|
1352
|
+
if (error !== 'Aborted') {
|
|
1353
|
+
state.error = error;
|
|
1354
|
+
}
|
|
1453
1355
|
})
|
|
1454
1356
|
.addCase(verifyPACIAsync.pending, function (state) {
|
|
1455
1357
|
state.loading = true;
|
|
@@ -1467,19 +1369,22 @@ export var connectSlice = createSlice({
|
|
|
1467
1369
|
state.error = error;
|
|
1468
1370
|
}
|
|
1469
1371
|
})
|
|
1470
|
-
.addCase(
|
|
1372
|
+
.addCase(verifyNafathIdentityAsync.pending, function (state) {
|
|
1471
1373
|
state.loading = true;
|
|
1472
1374
|
state.error = null;
|
|
1473
1375
|
})
|
|
1474
|
-
.addCase(
|
|
1376
|
+
.addCase(verifyNafathIdentityAsync.fulfilled, function (state, action) {
|
|
1475
1377
|
var _a, _b, _c;
|
|
1476
1378
|
state.loading = false;
|
|
1477
1379
|
var auth = (((_a = state.data.responseData) === null || _a === void 0 ? void 0 : _a.authData) || {}).auth;
|
|
1478
1380
|
state.data.responseData = __assign(__assign({}, state.data.responseData), { authData: __assign(__assign(__assign({}, (_b = state.data.responseData) === null || _b === void 0 ? void 0 : _b.authData), action.payload), { auth: __assign(__assign({}, (_c = action.payload) === null || _c === void 0 ? void 0 : _c.auth), { id: auth === null || auth === void 0 ? void 0 : auth.id }) }) });
|
|
1479
1381
|
})
|
|
1480
|
-
.addCase(
|
|
1382
|
+
.addCase(verifyNafathIdentityAsync.rejected, function (state, action) {
|
|
1481
1383
|
state.loading = false;
|
|
1482
|
-
|
|
1384
|
+
var error = action.error.message;
|
|
1385
|
+
if (error !== 'Aborted') {
|
|
1386
|
+
state.error = error;
|
|
1387
|
+
}
|
|
1483
1388
|
})
|
|
1484
1389
|
.addCase(verifyPaciLeadIdentityAsync.pending, function (state) {
|
|
1485
1390
|
state.loading = true;
|
|
@@ -71,7 +71,7 @@ import API from '../../../api';
|
|
|
71
71
|
import { FlowsTypes, IndividualGender, DocumentPurpose } from '../../../@types';
|
|
72
72
|
import { handleNextScreenStep, handlePrevScreenStep, handlePublicKey, handleSetCountryByIso2, onCloseComplete } from '../../../app/settings';
|
|
73
73
|
import { defaultCountry, IDENTIFICATION_TYPE, INDIVIDUAl_STEP_NAMES, MONTHLY_INCOME_LIST } from '../../../constants';
|
|
74
|
-
import { convertNumbers2English, dateFormat, findCountryByIddPrefix, findCountryByIso2, hasNoneEditableValue, getUserNameObject, getUserName, sleep, isValidEmail, getRecentDocumentBasedOnPurpose, formatNumberAsCurrency, removeAllCharsFromNumber, mapUserList, sortUserList, getIndividualType, isOtherThanKWOrSA, isKWOrSA } from '../../../utils';
|
|
74
|
+
import { convertNumbers2English, dateFormat, findCountryByIddPrefix, findCountryByIso2, hasNoneEditableValue, getUserNameObject, getUserName, sleep, isValidEmail, getRecentDocumentBasedOnPurpose, formatNumberAsCurrency, removeAllCharsFromNumber, mapUserList, sortUserList, getIndividualType, isOtherThanKWOrSA, isKWOrSA, isSA } from '../../../utils';
|
|
75
75
|
export var verifyToken = createAsyncThunk('individual/verifyToken', function (_a, thunkApi) {
|
|
76
76
|
var token = _a.token, isInternally = _a.isInternally, isUpdatePhoneInfo = _a.isUpdatePhoneInfo;
|
|
77
77
|
return __awaiter(void 0, void 0, void 0, function () {
|
|
@@ -581,6 +581,9 @@ export var updateIndividualPersonalInfo = createAsyncThunk('individual/updateInd
|
|
|
581
581
|
if (isOtherThanKWOrSA(settings.data.businessCountry.iso2)) {
|
|
582
582
|
identification_id_type = IDENTIFICATION_TYPE.NID;
|
|
583
583
|
}
|
|
584
|
+
if (isSA(settings.data.businessCountry.iso2)) {
|
|
585
|
+
identification_id_type = IDENTIFICATION_TYPE.NAFATH;
|
|
586
|
+
}
|
|
584
587
|
isGenderNonEditable = hasNoneEditableValue(data_status, 'gender');
|
|
585
588
|
isNameENNonEditable = hasNoneEditableValue(data_status, 'name.en');
|
|
586
589
|
isNameARNonEditable = hasNoneEditableValue(data_status, 'name.ar');
|
|
@@ -15,7 +15,7 @@ import { useTranslation } from 'react-i18next';
|
|
|
15
15
|
import { useAppDispatch, useAppSelector } from '../../../../hooks';
|
|
16
16
|
import { handleNextScreenStep, settingsSelector } from '../../../../app/settings';
|
|
17
17
|
import { resetStore } from '../../../app/auth/authStore';
|
|
18
|
-
import {
|
|
18
|
+
import { NafathButton, MobileButton } from '../../../shared/Button';
|
|
19
19
|
import { ScreenContainer } from '../../../shared/Containers';
|
|
20
20
|
import { isKW, isSA, sendCustomEventToGTM } from '../../../../utils';
|
|
21
21
|
import { ICONS_NAMES } from '../../../../constants';
|
|
@@ -52,6 +52,6 @@ var AuthSwitch = function (_a) {
|
|
|
52
52
|
});
|
|
53
53
|
dispatch(handleNextScreenStep('AUTH_CIVIL_ID_STEP'));
|
|
54
54
|
};
|
|
55
|
-
return (_jsxs(ScreenContainer, { children: [_jsx(MobileButton, __assign({
|
|
55
|
+
return (_jsxs(ScreenContainer, { children: [_jsx(MobileButton, __assign({ onClick: function () { return onOpenMobile(); } }, { children: t('mobile_button_label') })), _jsx(MobileButton, __assign({ onClick: function () { return onOpenEmail(); }, icon: ICONS_NAMES.email_icon }, { children: t('email_button_label') })), isKWCountry ? (_jsx(MobileButton, __assign({ onClick: function () { return onOpenPACI(); }, icon: ICONS_NAMES.PACI_ICON }, { children: t('paci_button_label') }))) : (isSACountry && _jsx(NafathButton, __assign({ onClick: function () { return onOpenNID(); } }, { children: t('nafath_button_label') })))] }));
|
|
56
56
|
};
|
|
57
57
|
export default React.memo(AuthSwitch);
|
|
@@ -50,6 +50,6 @@ var IDNumber = React.forwardRef(function (_a, ref) {
|
|
|
50
50
|
};
|
|
51
51
|
var nidValue = nidControl.field.value;
|
|
52
52
|
var error = (_b = nidControl.fieldState.error) === null || _b === void 0 ? void 0 : _b.message;
|
|
53
|
-
return (_jsx(Collapse, __assign({ in: show }, { children: _jsxs(ScreenContainer, __assign({ ref: ref }, { children: [_jsx(LabelContainerStyled, { children: _jsx(InputLabelStyled, { children: t('enter_national_id') }) }), _jsx(Input, { readOnly: readOnly, dir: 'ltr', type: 'tel', inputProps: { maxLength: ID_NUMBER_LENGTH }, onChange: handleIdChange, value: nidValue, endAdornment: _jsx(EndAdornment, { value: nidValue, error: error, onClear: clearIdNumber }), placeholder: t('national_id_placeholder'), warningType: 'alert', warningMessage: error && t(error, { number: '1' }), required: true })] })) })));
|
|
53
|
+
return (_jsx(Collapse, __assign({ in: show }, { children: _jsxs(ScreenContainer, __assign({ ref: ref, sx: { mb: 5 } }, { children: [_jsx(LabelContainerStyled, { children: _jsx(InputLabelStyled, { children: t('enter_national_id') }) }), _jsx(Input, { readOnly: readOnly, dir: 'ltr', type: 'tel', inputProps: { maxLength: ID_NUMBER_LENGTH }, onChange: handleIdChange, value: nidValue, endAdornment: _jsx(EndAdornment, { value: nidValue, error: error, onClear: clearIdNumber }), placeholder: t('national_id_placeholder'), warningType: 'alert', warningMessage: error && t(error, { number: '1' }), required: true })] })) })));
|
|
54
54
|
});
|
|
55
55
|
export default React.memo(IDNumber);
|