@tap-payments/auth-jsconnect 2.1.61-test → 2.1.62-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/form.d.ts +1 -0
- package/build/assets/locales/ar.json +2 -1
- package/build/assets/locales/en.json +2 -1
- package/build/constants/assets.d.ts +1 -0
- package/build/constants/assets.js +1 -0
- package/build/features/app/connectExpress/connectExpressStore.d.ts +3 -1
- package/build/features/app/connectExpress/connectExpressStore.js +23 -14
- package/build/features/bank/screens/PrepareDataLoading/PrepareDataLoading.js +4 -1
- package/build/features/brand/screens/PrepareDataLoading/PrepareDataLoading.js +4 -1
- package/build/features/connectExpress/ConnectExpress.d.ts +1 -0
- package/build/features/connectExpress/ConnectExpress.js +4 -2
- package/build/features/connectExpress/screens/CollectBusinessInfo/CollectBusinessInfo.js +9 -6
- package/build/features/connectExpress/screens/CollectBusinessInfo/TAC.d.ts +6 -0
- package/build/features/connectExpress/screens/CollectBusinessInfo/TAC.js +83 -0
- package/build/features/connectExpress/screens/CollectBusinessInfo/validation.d.ts +2 -2
- package/build/features/connectExpress/screens/CollectBusinessInfo/validation.js +133 -57
- package/build/features/connectExpress/screens/CreateAccountLoader/CreateAccountLoader.js +6 -53
- package/build/features/connectExpress/screens/Mobile/Mobile.js +3 -2
- package/build/features/connectExpress/screens/Mobile/TAC.d.ts +6 -0
- package/build/features/connectExpress/screens/Mobile/TAC.js +83 -0
- package/build/features/connectExpress/screens/Mobile/validation.d.ts +1 -1
- package/build/features/connectExpress/screens/Mobile/validation.js +58 -26
- package/build/features/connectExpress/screens/NID/NID.js +4 -3
- package/build/features/connectExpress/screens/NID/TAC.d.ts +6 -0
- package/build/features/connectExpress/screens/NID/TAC.js +83 -0
- package/build/features/connectExpress/screens/NID/validation.d.ts +1 -1
- package/build/features/connectExpress/screens/NID/validation.js +21 -8
- package/build/features/entity/screens/PrepareDataLoading/PrepareDataLoading.js +4 -1
- package/build/features/individual/screens/PrepareDataLoading/PrepareDataLoading.js +4 -1
- package/build/features/shared/CreateAccountLoading/CreateAccountLoading.d.ts +6 -0
- package/build/features/shared/CreateAccountLoading/CreateAccountLoading.js +58 -0
- package/build/features/shared/CreateAccountLoading/index.d.ts +2 -0
- package/build/features/shared/CreateAccountLoading/index.js +2 -0
- package/build/features/shared/DataLoading/DataLoading.d.ts +2 -1
- package/build/features/shared/DataLoading/DataLoading.js +14 -11
- package/build/features/shared/GenericError/GenericError.d.ts +7 -0
- package/build/features/shared/GenericError/GenericError.js +55 -0
- package/build/features/shared/GenericError/index.d.ts +2 -0
- package/build/features/shared/GenericError/index.js +2 -0
- package/build/features/tax/screens/PrepareDataLoading/PrepareDataLoading.js +4 -1
- package/package.json +3 -2
package/build/@types/form.d.ts
CHANGED
|
@@ -360,5 +360,6 @@
|
|
|
360
360
|
"creating_account_description": "This might take a moment...",
|
|
361
361
|
"uploaded_file": "file",
|
|
362
362
|
"prepare_data_title": "Preparing your data",
|
|
363
|
-
"prepare_data_description": "This might take a moment..."
|
|
363
|
+
"prepare_data_description": "This might take a moment...",
|
|
364
|
+
"oops": "Oops"
|
|
364
365
|
}
|
|
@@ -389,5 +389,6 @@
|
|
|
389
389
|
"creating_account_description": "This might take a moment...",
|
|
390
390
|
"uploaded_file": "file",
|
|
391
391
|
"prepare_data_title": "Preparing your data",
|
|
392
|
-
"prepare_data_description": "This might take a moment..."
|
|
392
|
+
"prepare_data_description": "This might take a moment...",
|
|
393
|
+
"oops": "Oops"
|
|
393
394
|
}
|
|
@@ -37,6 +37,7 @@ export var ICONS_NAMES = {
|
|
|
37
37
|
TAP_LOGO_TEXT_AR: ICONS_FULL_PATH + '/tap-white-text-ar' + ICONS_EXTENSION,
|
|
38
38
|
TAP_LOGO_TEXT_EN: ICONS_FULL_PATH + '/tap-white-text-en' + ICONS_EXTENSION,
|
|
39
39
|
PACI_VERIFY_ICON: ICONS_FULL_PATH + '/PACI_verify_icon' + '.png',
|
|
40
|
+
EXPRESS_ERROR_ICON: ICONS_FULL_PATH + '/EXPRESS_error_icon' + '.svg',
|
|
40
41
|
TAP_EN: 'https://tap-connecet.b-cdn.net/imgs/tapEN' + ICONS_EXTENSION,
|
|
41
42
|
TAP_AR: 'https://tap-connecet.b-cdn.net/imgs/tapAR' + ICONS_EXTENSION,
|
|
42
43
|
ID_IMAGE: 'https://villageofwarwick.org/wp-content/uploads/2020/02/ICON99-512-1.png',
|
|
@@ -78,6 +78,7 @@ interface ResponseData {
|
|
|
78
78
|
}
|
|
79
79
|
export interface ConnectExpressData {
|
|
80
80
|
isLeadIdPassed: boolean;
|
|
81
|
+
showBoard: boolean;
|
|
81
82
|
postURL: string;
|
|
82
83
|
mobileData: MobileFormValues;
|
|
83
84
|
nidData: NIDFormValues;
|
|
@@ -95,6 +96,7 @@ export interface ConnectExpressState extends SharedState<ConnectExpressData & Re
|
|
|
95
96
|
}
|
|
96
97
|
export declare const connectSlice: import("@reduxjs/toolkit").Slice<ConnectExpressState, {
|
|
97
98
|
setLeadId(state: ConnectExpressState, action: ActionState<string>): void;
|
|
99
|
+
setShowBoard(state: ConnectExpressState, action: ActionState<boolean>): void;
|
|
98
100
|
setIsLeadIdPassed: (state: ConnectExpressState, action: ActionState<boolean>) => void;
|
|
99
101
|
clearError: (state: ConnectExpressState) => void;
|
|
100
102
|
setError(state: ConnectExpressState, action: ActionState<string>): void;
|
|
@@ -107,7 +109,7 @@ export declare const connectSlice: import("@reduxjs/toolkit").Slice<ConnectExpre
|
|
|
107
109
|
resetStore: (state: ConnectExpressState) => void;
|
|
108
110
|
resetIndividualScreen: (state: ConnectExpressState) => void;
|
|
109
111
|
}, "connectExpress/store">;
|
|
110
|
-
export declare const clearError: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, stopLoader: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, setIsLeadIdPassed: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>, resetMobileScreen: import("@reduxjs/toolkit").ActionCreatorWithPayload<CountryCode, string>, resetOTPValue: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, resetNIDScreen: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, resetCivilScreen: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, resetStore: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, setError: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, setPostUrl: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, setLeadId: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, resetIndividualScreen: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>;
|
|
112
|
+
export declare const clearError: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, stopLoader: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, setIsLeadIdPassed: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>, resetMobileScreen: import("@reduxjs/toolkit").ActionCreatorWithPayload<CountryCode, string>, resetOTPValue: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, resetNIDScreen: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, resetCivilScreen: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, resetStore: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, setError: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, setPostUrl: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, setLeadId: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, setShowBoard: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>, resetIndividualScreen: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>;
|
|
111
113
|
declare const _default: import("redux").Reducer<ConnectExpressState, import("redux").AnyAction>;
|
|
112
114
|
export default _default;
|
|
113
115
|
export declare const connectExpressSelector: (state: RootState) => ConnectExpressState;
|
|
@@ -235,13 +235,13 @@ export var createCivilIdAuthAsync = createAsyncThunk('connectExpress/createCivil
|
|
|
235
235
|
});
|
|
236
236
|
}); });
|
|
237
237
|
export var verifyMobileOtpAsync = createAsyncThunk('connectExpress/verifyMobileOtpAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
|
|
238
|
-
var _a, settings, connectExpress, _b, responseData, leadId, isLeadIdPassed,
|
|
238
|
+
var _a, settings, connectExpress, _b, responseData, leadId, isLeadIdPassed, mobileData, _c, auth_token, device_token, service_name, payload, data, isSaudi, next;
|
|
239
239
|
var _d, _e;
|
|
240
240
|
return __generator(this, function (_f) {
|
|
241
241
|
switch (_f.label) {
|
|
242
242
|
case 0:
|
|
243
243
|
_a = thunkApi.getState(), settings = _a.settings, connectExpress = _a.connectExpress;
|
|
244
|
-
_b = connectExpress.data || {}, responseData = _b.responseData, leadId = _b.leadId, isLeadIdPassed = _b.isLeadIdPassed,
|
|
244
|
+
_b = connectExpress.data || {}, responseData = _b.responseData, leadId = _b.leadId, isLeadIdPassed = _b.isLeadIdPassed, mobileData = _b.mobileData;
|
|
245
245
|
if (!(responseData === null || responseData === void 0 ? void 0 : responseData.authData))
|
|
246
246
|
throw new Error('Auth data is missing');
|
|
247
247
|
_c = responseData.authData, auth_token = _c.auth_token, device_token = _c.device_token, service_name = _c.service_name;
|
|
@@ -253,7 +253,7 @@ export var verifyMobileOtpAsync = createAsyncThunk('connectExpress/verifyMobileO
|
|
|
253
253
|
device_token: device_token,
|
|
254
254
|
service_name: service_name,
|
|
255
255
|
sign_in: false,
|
|
256
|
-
terms: ['general'],
|
|
256
|
+
terms: isLeadIdPassed && mobileData.termAndConditionChecked ? ['general'] : undefined,
|
|
257
257
|
step_name: CONNECT_EXPRESS_STEP_NAMES.VERIFY_AUTH_MOBILE,
|
|
258
258
|
encryption_contract: ['data']
|
|
259
259
|
};
|
|
@@ -272,13 +272,13 @@ export var verifyMobileOtpAsync = createAsyncThunk('connectExpress/verifyMobileO
|
|
|
272
272
|
});
|
|
273
273
|
}); });
|
|
274
274
|
export var verifyNIDOtpAsync = createAsyncThunk('connectExpress/verifyNIDOtpAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
|
|
275
|
-
var _a, settings, connectExpress, _b, responseData, leadId, _c, auth_token, device_token, service_name, payload, data, stepName, needToCollectMoreInfo, creatingAccount;
|
|
275
|
+
var _a, settings, connectExpress, _b, responseData, leadId, isLeadIdPassed, nidData, _c, auth_token, device_token, service_name, payload, data, stepName, needToCollectMoreInfo, creatingAccount;
|
|
276
276
|
var _d, _e;
|
|
277
277
|
return __generator(this, function (_f) {
|
|
278
278
|
switch (_f.label) {
|
|
279
279
|
case 0:
|
|
280
280
|
_a = thunkApi.getState(), settings = _a.settings, connectExpress = _a.connectExpress;
|
|
281
|
-
_b = connectExpress.data || {}, responseData = _b.responseData, leadId = _b.leadId;
|
|
281
|
+
_b = connectExpress.data || {}, responseData = _b.responseData, leadId = _b.leadId, isLeadIdPassed = _b.isLeadIdPassed, nidData = _b.nidData;
|
|
282
282
|
if (!(responseData === null || responseData === void 0 ? void 0 : responseData.authData))
|
|
283
283
|
throw new Error('Auth data is missing');
|
|
284
284
|
_c = responseData.authData, auth_token = _c.auth_token, device_token = _c.device_token, service_name = _c.service_name;
|
|
@@ -290,7 +290,7 @@ export var verifyNIDOtpAsync = createAsyncThunk('connectExpress/verifyNIDOtpAsyn
|
|
|
290
290
|
device_token: device_token,
|
|
291
291
|
service_name: service_name || 'ABSHER',
|
|
292
292
|
sign_in: false,
|
|
293
|
-
terms: ['general'],
|
|
293
|
+
terms: isLeadIdPassed && nidData.termAndConditionChecked ? ['general'] : undefined,
|
|
294
294
|
step_name: CONNECT_EXPRESS_STEP_NAMES.VERIFY_AUTH_NID,
|
|
295
295
|
encryption_contract: ['data']
|
|
296
296
|
};
|
|
@@ -571,15 +571,16 @@ export var updateLeadIndividualAsync = createAsyncThunk('connectExpress/updateLe
|
|
|
571
571
|
});
|
|
572
572
|
}); });
|
|
573
573
|
export var updateLeadBusinessDataAsync = createAsyncThunk('updateLeadBusinessDataAsync ', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
|
|
574
|
-
var _a, settings, connectExpress, isNonSA, isFL, id, brandNameBody, payload, data;
|
|
575
|
-
var
|
|
574
|
+
var _a, settings, connectExpress, isNonSA, isFL, _b, responseData, isLeadIdPassed, id, brandNameBody, payload, data;
|
|
575
|
+
var _c, _d, _e, _f;
|
|
576
576
|
return __generator(this, function (_g) {
|
|
577
577
|
switch (_g.label) {
|
|
578
578
|
case 0:
|
|
579
579
|
_a = thunkApi.getState(), settings = _a.settings, connectExpress = _a.connectExpress;
|
|
580
580
|
isNonSA = !isSA(settings.data.businessCountry.iso2);
|
|
581
|
-
isFL = ((
|
|
582
|
-
|
|
581
|
+
isFL = ((_c = params.selectedLicense) === null || _c === void 0 ? void 0 : _c.type) === BusinessType.FL;
|
|
582
|
+
_b = connectExpress.data, responseData = _b.responseData, isLeadIdPassed = _b.isLeadIdPassed;
|
|
583
|
+
id = ((responseData === null || responseData === void 0 ? void 0 : responseData.leadData) || {}).id;
|
|
583
584
|
brandNameBody = {
|
|
584
585
|
name: {
|
|
585
586
|
en: params.brandName,
|
|
@@ -594,6 +595,7 @@ export var updateLeadBusinessDataAsync = createAsyncThunk('updateLeadBusinessDat
|
|
|
594
595
|
license_type: isFL ? 'freelance' : 'commercial_registration',
|
|
595
596
|
business_type: (_d = params.selectedLicense) === null || _d === void 0 ? void 0 : _d.type,
|
|
596
597
|
is_acknowledged: true,
|
|
598
|
+
terms_conditions_accepted: !isLeadIdPassed ? params.termAndConditionChecked : undefined,
|
|
597
599
|
step_name: CONNECT_EXPRESS_STEP_NAMES.UPDATE_LEAD_BRAND_BUSINESS,
|
|
598
600
|
encryption_contract: ['license_number', 'business_type', 'license_type']
|
|
599
601
|
};
|
|
@@ -611,16 +613,19 @@ var initialState = {
|
|
|
611
613
|
loading: false,
|
|
612
614
|
customLoading: false,
|
|
613
615
|
data: {
|
|
616
|
+
showBoard: true,
|
|
614
617
|
isLeadIdPassed: false,
|
|
615
618
|
postURL: '',
|
|
616
619
|
flowName: FlowsTypes.CONNECT_EXPRESS,
|
|
617
620
|
mobileData: {
|
|
618
621
|
countryCode: defaultCountry,
|
|
619
|
-
mobile: ''
|
|
622
|
+
mobile: '',
|
|
623
|
+
termAndConditionChecked: false
|
|
620
624
|
},
|
|
621
625
|
nidData: {
|
|
622
626
|
nid: '',
|
|
623
|
-
dob: getEighteenYearsAgo()
|
|
627
|
+
dob: getEighteenYearsAgo(),
|
|
628
|
+
termAndConditionChecked: false
|
|
624
629
|
},
|
|
625
630
|
civilIdData: {
|
|
626
631
|
civilId: ''
|
|
@@ -637,7 +642,8 @@ var initialState = {
|
|
|
637
642
|
},
|
|
638
643
|
businessData: {
|
|
639
644
|
brandName: '',
|
|
640
|
-
licenseNumber: ''
|
|
645
|
+
licenseNumber: '',
|
|
646
|
+
termAndConditionChecked: false
|
|
641
647
|
}
|
|
642
648
|
}
|
|
643
649
|
};
|
|
@@ -648,6 +654,9 @@ export var connectSlice = createSlice({
|
|
|
648
654
|
setLeadId: function (state, action) {
|
|
649
655
|
state.data.leadId = action.payload;
|
|
650
656
|
},
|
|
657
|
+
setShowBoard: function (state, action) {
|
|
658
|
+
state.data.showBoard = action.payload;
|
|
659
|
+
},
|
|
651
660
|
setIsLeadIdPassed: function (state, action) {
|
|
652
661
|
state.data.isLeadIdPassed = action.payload;
|
|
653
662
|
},
|
|
@@ -966,6 +975,6 @@ export var connectSlice = createSlice({
|
|
|
966
975
|
});
|
|
967
976
|
}
|
|
968
977
|
});
|
|
969
|
-
export var clearError = (_a = connectSlice.actions, _a.clearError), stopLoader = _a.stopLoader, setIsLeadIdPassed = _a.setIsLeadIdPassed, resetMobileScreen = _a.resetMobileScreen, resetOTPValue = _a.resetOTPValue, resetNIDScreen = _a.resetNIDScreen, resetCivilScreen = _a.resetCivilScreen, resetStore = _a.resetStore, setError = _a.setError, setPostUrl = _a.setPostUrl, setLeadId = _a.setLeadId, resetIndividualScreen = _a.resetIndividualScreen;
|
|
978
|
+
export var clearError = (_a = connectSlice.actions, _a.clearError), stopLoader = _a.stopLoader, setIsLeadIdPassed = _a.setIsLeadIdPassed, resetMobileScreen = _a.resetMobileScreen, resetOTPValue = _a.resetOTPValue, resetNIDScreen = _a.resetNIDScreen, resetCivilScreen = _a.resetCivilScreen, resetStore = _a.resetStore, setError = _a.setError, setPostUrl = _a.setPostUrl, setLeadId = _a.setLeadId, setShowBoard = _a.setShowBoard, resetIndividualScreen = _a.resetIndividualScreen;
|
|
970
979
|
export default connectSlice.reducer;
|
|
971
980
|
export var connectExpressSelector = function (state) { return state.connectExpress; };
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { memo } from 'react';
|
|
3
|
+
import { useAppSelector } from '../../../../hooks';
|
|
3
4
|
import DataLoading from '../../../shared/DataLoading';
|
|
5
|
+
import { bankSelector } from '../../../app/bank/bankStore';
|
|
4
6
|
export var PrepareDataLoading = function () {
|
|
5
|
-
|
|
7
|
+
var error = useAppSelector(bankSelector).error;
|
|
8
|
+
return _jsx(DataLoading, { error: error });
|
|
6
9
|
};
|
|
7
10
|
export default memo(PrepareDataLoading);
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { memo } from 'react';
|
|
3
|
+
import { useAppSelector } from '../../../../hooks';
|
|
3
4
|
import DataLoading from '../../../shared/DataLoading';
|
|
5
|
+
import { brandSelector } from '../../../app/brand/brandStore';
|
|
4
6
|
export var PrepareDataLoading = function () {
|
|
5
|
-
|
|
7
|
+
var error = useAppSelector(brandSelector).error;
|
|
8
|
+
return _jsx(DataLoading, { error: error });
|
|
6
9
|
};
|
|
7
10
|
export default memo(PrepareDataLoading);
|
|
@@ -3,6 +3,7 @@ import { LibConfig } from '../../@types';
|
|
|
3
3
|
export interface ConnectExpressLibProps extends LibConfig {
|
|
4
4
|
leadId?: string;
|
|
5
5
|
postURL: string;
|
|
6
|
+
showBoard?: boolean;
|
|
6
7
|
}
|
|
7
8
|
export declare function ConnectExpressLib(props: ConnectExpressLibProps): JSX.Element;
|
|
8
9
|
export declare function renderConnectExpressLib(config: ConnectExpressLibProps, elementId: string): {
|
|
@@ -27,7 +27,7 @@ import { useAppTheme, useAppSelector, useAppConfig, useErrorListener, useStepSta
|
|
|
27
27
|
import { handleCurrentActiveScreen, settingsSelector } from '../../app/settings';
|
|
28
28
|
import AnimationFlow from '../../components/AnimationFlow';
|
|
29
29
|
import { store } from '../../app/store';
|
|
30
|
-
import { connectExpressSelector, setIsLeadIdPassed, setPostUrl, setLeadId, retrieveLeadIdentityByIdAsync } from '../app/connectExpress/connectExpressStore';
|
|
30
|
+
import { connectExpressSelector, setIsLeadIdPassed, setPostUrl, setLeadId, retrieveLeadIdentityByIdAsync, setShowBoard } from '../app/connectExpress/connectExpressStore';
|
|
31
31
|
import { ReduxProvider, ThemeProvider } from '../../components/Providers';
|
|
32
32
|
import Collapse from '../../components/Collapse';
|
|
33
33
|
import { reactElement, isKW } from '../../utils';
|
|
@@ -36,7 +36,7 @@ import { connectExpressFeatureScreens } from '../featuresScreens';
|
|
|
36
36
|
import CustomFooter from '../shared/Footer';
|
|
37
37
|
import Background from '../shared/Background';
|
|
38
38
|
var ConnectExpress = memo(function (_a) {
|
|
39
|
-
var leadId = _a.leadId, postURL = _a.postURL, props = __rest(_a, ["leadId", "postURL"]);
|
|
39
|
+
var leadId = _a.leadId, postURL = _a.postURL, showBoard = _a.showBoard, props = __rest(_a, ["leadId", "postURL", "showBoard"]);
|
|
40
40
|
var theme = useAppTheme().theme;
|
|
41
41
|
var dispatch = useAppDispatch();
|
|
42
42
|
var _b = useAppSelector(settingsSelector), data = _b.data, error = _b.error, settingLoading = _b.loading;
|
|
@@ -49,6 +49,8 @@ var ConnectExpress = memo(function (_a) {
|
|
|
49
49
|
if (!postURL)
|
|
50
50
|
throw new Error('postURL is required and you ave to pass it in the lib configuration!');
|
|
51
51
|
dispatch(setPostUrl(postURL));
|
|
52
|
+
if (typeof showBoard === 'boolean')
|
|
53
|
+
dispatch(setShowBoard(showBoard));
|
|
52
54
|
}, []);
|
|
53
55
|
React.useEffect(function () {
|
|
54
56
|
if (data.isValidOperator && props.open && !settingLoading && leadId) {
|
|
@@ -25,12 +25,13 @@ import Button from '../../../shared/Button';
|
|
|
25
25
|
import { KWBusinessDataSchema, BusinessDataSchema } from './validation';
|
|
26
26
|
import LicenseList from './LicenseList';
|
|
27
27
|
import BrandName from './BrandName';
|
|
28
|
+
import TAC from './TAC';
|
|
28
29
|
var CollectBusinessInfo = function (_a) {
|
|
29
30
|
var _b = useAppSelector(connectExpressSelector), data = _b.data, loading = _b.loading, error = _b.error;
|
|
30
31
|
var settingsData = useAppSelector(settingsSelector).data;
|
|
31
|
-
var responseData = data.responseData, businessData = data.businessData;
|
|
32
|
+
var responseData = data.responseData, businessData = data.businessData, isLeadIdPassed = data.isLeadIdPassed;
|
|
32
33
|
var isBrandNameAvailable = (responseData || {}).isBrandNameAvailable;
|
|
33
|
-
var selectedLicense = businessData.selectedLicense, licenseNumber = businessData.licenseNumber, brandName = businessData.brandName;
|
|
34
|
+
var selectedLicense = businessData.selectedLicense, licenseNumber = businessData.licenseNumber, brandName = businessData.brandName, termAndConditionChecked = businessData.termAndConditionChecked;
|
|
34
35
|
var t = useTranslation().t;
|
|
35
36
|
var isAr = useLanguage().isAr;
|
|
36
37
|
var dispatch = useAppDispatch();
|
|
@@ -38,11 +39,12 @@ var CollectBusinessInfo = function (_a) {
|
|
|
38
39
|
var _d = React.useState(false), brandNameChecking = _d[0], setBrandNameChecking = _d[1];
|
|
39
40
|
var isSACountry = React.useMemo(function () { return isSA(settingsData.businessCountry.iso2); }, [settingsData.businessCountry.iso2]);
|
|
40
41
|
var methods = useForm({
|
|
41
|
-
resolver: yupResolver(!isSACountry ? KWBusinessDataSchema : BusinessDataSchema),
|
|
42
|
+
resolver: yupResolver(!isSACountry ? KWBusinessDataSchema(isLeadIdPassed) : BusinessDataSchema(isLeadIdPassed)),
|
|
42
43
|
defaultValues: {
|
|
43
44
|
brandName: brandName,
|
|
44
45
|
selectedLicense: selectedLicense,
|
|
45
|
-
licenseNumber: licenseNumber
|
|
46
|
+
licenseNumber: licenseNumber,
|
|
47
|
+
termAndConditionChecked: termAndConditionChecked
|
|
46
48
|
},
|
|
47
49
|
mode: 'onChange'
|
|
48
50
|
});
|
|
@@ -59,7 +61,8 @@ var CollectBusinessInfo = function (_a) {
|
|
|
59
61
|
var dataValues = {
|
|
60
62
|
brandName: data.brandName,
|
|
61
63
|
selectedLicense: data.selectedLicense,
|
|
62
|
-
licenseNumber: data.licenseNumber
|
|
64
|
+
licenseNumber: data.licenseNumber,
|
|
65
|
+
termAndConditionChecked: data.termAndConditionChecked
|
|
63
66
|
};
|
|
64
67
|
dispatch(updateLeadBusinessDataAsync(dataValues));
|
|
65
68
|
};
|
|
@@ -72,6 +75,6 @@ var CollectBusinessInfo = function (_a) {
|
|
|
72
75
|
setListActive(true);
|
|
73
76
|
}, onListClose: function () {
|
|
74
77
|
setListActive(false);
|
|
75
|
-
} }), _jsx(Collapse, __assign({ in: !listActive, timeout: 500 }, { children: _jsx(Button, __assign({ onBackClicked: function () { return onBack(); }, isAr: isAr, disabled: disabled, loading: loading, error: t(error || '') }, { children: t('next') })) }))] })) })) }));
|
|
78
|
+
} }), _jsx(TAC, { show: !isLeadIdPassed }), _jsx(Collapse, __assign({ in: !listActive, timeout: 500 }, { children: _jsx(Button, __assign({ onBackClicked: function () { return onBack(); }, isAr: isAr, disabled: disabled, loading: loading, error: t(error || '') }, { children: t('next') })) }))] })) })) }));
|
|
76
79
|
};
|
|
77
80
|
export default React.memo(CollectBusinessInfo);
|
|
@@ -0,0 +1,83 @@
|
|
|
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 { useTranslation } from 'react-i18next';
|
|
15
|
+
import { useController, useFormContext } from 'react-hook-form';
|
|
16
|
+
import Box from '@mui/material/Box';
|
|
17
|
+
import { styled, alpha } from '@mui/material/styles';
|
|
18
|
+
import Link from '@mui/material/Link';
|
|
19
|
+
import { settingsSelector } from '../../../../app/settings';
|
|
20
|
+
import { EXTERNAL_LINKS, TAP_WEBSITE } from '../../../../constants';
|
|
21
|
+
import { useLanguage, useAppSelector } from '../../../../hooks';
|
|
22
|
+
import CheckBox from '../../../../components/CheckBox';
|
|
23
|
+
import Text from '../../../../components/Text';
|
|
24
|
+
import Warning from '../../../../components/Warning';
|
|
25
|
+
import Collapse from '../../../../components/Collapse';
|
|
26
|
+
import { ScreenContainer } from '../../../shared/Containers';
|
|
27
|
+
var TACContainerStyled = styled(Box)(function (_a) {
|
|
28
|
+
var theme = _a.theme;
|
|
29
|
+
return ({
|
|
30
|
+
display: 'flex',
|
|
31
|
+
flexDirection: 'row',
|
|
32
|
+
alignItems: 'center',
|
|
33
|
+
paddingInlineStart: theme.spacing(2.5)
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
var TextStyled = styled(Text)(function (_a) {
|
|
37
|
+
var theme = _a.theme;
|
|
38
|
+
return (__assign({ color: alpha(theme.palette.text.primary, 0.4), fontWeight: theme.typography.fontWeightLight, whiteSpace: 'pre-line', height: 'fit-content' }, theme.typography.body2));
|
|
39
|
+
});
|
|
40
|
+
var LinkStyled = styled(Link)(function (_a) {
|
|
41
|
+
var theme = _a.theme;
|
|
42
|
+
return ({
|
|
43
|
+
color: theme.palette.primary.main,
|
|
44
|
+
fontWeight: theme.typography.fontWeightMedium,
|
|
45
|
+
letterSpacing: theme.spacing(0)
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
var CheckboxStyled = styled(CheckBox)(function (_a) {
|
|
49
|
+
var theme = _a.theme;
|
|
50
|
+
return ({
|
|
51
|
+
margin: theme.spacing(0),
|
|
52
|
+
padding: theme.spacing(0),
|
|
53
|
+
marginInlineEnd: theme.spacing(1.5),
|
|
54
|
+
color: theme.palette.primary.main,
|
|
55
|
+
'& .MuiSvgIcon-root': {
|
|
56
|
+
fontSize: theme.spacing(3.75)
|
|
57
|
+
},
|
|
58
|
+
'&.Mui-checked': {
|
|
59
|
+
color: theme.palette.text.primary,
|
|
60
|
+
borderRadius: theme.spacing(2.5)
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
var CollapseStyled = styled(Collapse)(function () { return ({
|
|
65
|
+
width: '100%'
|
|
66
|
+
}); });
|
|
67
|
+
var TAC = function (_a) {
|
|
68
|
+
var _b;
|
|
69
|
+
var show = _a.show;
|
|
70
|
+
var t = useTranslation().t;
|
|
71
|
+
var isAr = useLanguage().isAr;
|
|
72
|
+
var control = useFormContext().control;
|
|
73
|
+
var settingsData = useAppSelector(settingsSelector).data;
|
|
74
|
+
var tacControl = useController({ control: control, name: 'termAndConditionChecked' });
|
|
75
|
+
var tacChecked = tacControl.field.value;
|
|
76
|
+
var warningMessage = (_b = tacControl.fieldState.error) === null || _b === void 0 ? void 0 : _b.message;
|
|
77
|
+
var countryCode = settingsData.businessCountry.iso2.toLowerCase();
|
|
78
|
+
var handleTACCheckedChange = function (event, checked) {
|
|
79
|
+
tacControl.field.onChange(checked);
|
|
80
|
+
};
|
|
81
|
+
return (_jsx(Collapse, __assign({ in: show }, { children: _jsxs(ScreenContainer, __assign({ sx: { mt: 2.5 } }, { children: [_jsxs(TACContainerStyled, { children: [_jsx(CheckboxStyled, { disableRipple: true, disableFocusRipple: true, focusRipple: false, checked: tacChecked, onChange: handleTACCheckedChange }), _jsxs(TextStyled, { children: [t('read_agree_terms_and_conditions_message'), _jsx(LinkStyled, __assign({ href: isAr ? TAP_WEBSITE + countryCode + EXTERNAL_LINKS.TOS_AR : TAP_WEBSITE + countryCode + EXTERNAL_LINKS.TOS_EN, target: '_blank', underline: 'always' }, { children: t('terms_and_conditions_link_title') }))] })] }), _jsx(CollapseStyled, __assign({ in: !!warningMessage }, { children: _jsx(Warning, __assign({ warningType: 'alert' }, { children: warningMessage && t(warningMessage) })) }))] })) })));
|
|
82
|
+
};
|
|
83
|
+
export default React.memo(TAC);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as yup from 'yup';
|
|
2
|
-
export declare const BusinessDataSchema: yup.ObjectSchema<import("yup/lib/object").Assign<import("yup/lib/object").ObjectShape, {
|
|
2
|
+
export declare const BusinessDataSchema: (isLeadIdPassed: boolean) => yup.ObjectSchema<import("yup/lib/object").Assign<import("yup/lib/object").ObjectShape, {
|
|
3
3
|
brandName: import("yup/lib/string").RequiredStringSchema<string | undefined, import("yup/lib/types").AnyObject>;
|
|
4
4
|
selectedLicense: any;
|
|
5
5
|
licenseNumber: import("yup/lib/string").RequiredStringSchema<string | undefined, import("yup/lib/types").AnyObject>;
|
|
@@ -12,7 +12,7 @@ export declare const BusinessDataSchema: yup.ObjectSchema<import("yup/lib/object
|
|
|
12
12
|
selectedLicense: any;
|
|
13
13
|
licenseNumber: import("yup/lib/string").RequiredStringSchema<string | undefined, import("yup/lib/types").AnyObject>;
|
|
14
14
|
}>>>;
|
|
15
|
-
export declare const KWBusinessDataSchema: yup.ObjectSchema<import("yup/lib/object").Assign<import("yup/lib/object").ObjectShape, {
|
|
15
|
+
export declare const KWBusinessDataSchema: (isLeadIdPassed: boolean) => yup.ObjectSchema<import("yup/lib/object").Assign<import("yup/lib/object").ObjectShape, {
|
|
16
16
|
brandName: import("yup/lib/string").RequiredStringSchema<string | undefined, import("yup/lib/types").AnyObject>;
|
|
17
17
|
selectedLicense: any;
|
|
18
18
|
licenseNumber: import("yup/lib/string").RequiredStringSchema<string | undefined, import("yup/lib/types").AnyObject>;
|
|
@@ -11,69 +11,145 @@ var objectElements = {
|
|
|
11
11
|
}),
|
|
12
12
|
type: yup.string()
|
|
13
13
|
};
|
|
14
|
-
export var BusinessDataSchema =
|
|
15
|
-
|
|
16
|
-
.
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
14
|
+
export var BusinessDataSchema = function (isLeadIdPassed) {
|
|
15
|
+
if (!isLeadIdPassed) {
|
|
16
|
+
return yup.object().shape({
|
|
17
|
+
brandName: yup
|
|
18
|
+
.string()
|
|
19
|
+
.test({
|
|
20
|
+
test: function (value) {
|
|
21
|
+
if ((value === null || value === void 0 ? void 0 : value.length) === 0)
|
|
22
|
+
return true;
|
|
23
|
+
if (value && value.length >= 3 && (value === null || value === void 0 ? void 0 : value.match(REGEX_BRAND_NAME)))
|
|
24
|
+
return true;
|
|
25
|
+
return this.createError({ message: 'enter_brand_name_english_chars_numbers_space' });
|
|
26
|
+
}
|
|
27
|
+
})
|
|
28
|
+
.required('enter_brand_name_english_chars_numbers_space'),
|
|
29
|
+
selectedLicense: yup.object().shape(objectElements).required(''),
|
|
30
|
+
licenseNumber: yup
|
|
31
|
+
.string()
|
|
32
|
+
.test({
|
|
33
|
+
test: function (value) {
|
|
34
|
+
var selectedLicense = this.parent.selectedLicense;
|
|
35
|
+
var isCR = (selectedLicense === null || selectedLicense === void 0 ? void 0 : selectedLicense.type) === BusinessType.CR;
|
|
36
|
+
var length = (value === null || value === void 0 ? void 0 : value.length) || 0;
|
|
37
|
+
if (length === 0)
|
|
38
|
+
return true;
|
|
39
|
+
if (isCR) {
|
|
40
|
+
return length > CR_MIN_LICENSE_LENGTH ? true : this.createError({ message: 'cr_max_length' });
|
|
41
|
+
}
|
|
42
|
+
return length > FL_MIN_LICENSE_LENGTH ? true : this.createError({ message: 'fl_max_length' });
|
|
43
|
+
}
|
|
44
|
+
})
|
|
45
|
+
.required(''),
|
|
46
|
+
termAndConditionChecked: yup.boolean().isTrue('check_terms_cond').required('check_terms_cond')
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
return yup.object().shape({
|
|
50
|
+
brandName: yup
|
|
51
|
+
.string()
|
|
52
|
+
.test({
|
|
53
|
+
test: function (value) {
|
|
54
|
+
if ((value === null || value === void 0 ? void 0 : value.length) === 0)
|
|
55
|
+
return true;
|
|
56
|
+
if (value && value.length >= 3 && (value === null || value === void 0 ? void 0 : value.match(REGEX_BRAND_NAME)))
|
|
57
|
+
return true;
|
|
58
|
+
return this.createError({ message: 'enter_brand_name_english_chars_numbers_space' });
|
|
39
59
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
});
|
|
45
|
-
export var KWBusinessDataSchema = yup.object().shape({
|
|
46
|
-
brandName: yup
|
|
47
|
-
.string()
|
|
48
|
-
.test({
|
|
49
|
-
test: function (value) {
|
|
50
|
-
if ((value === null || value === void 0 ? void 0 : value.length) === 0)
|
|
51
|
-
return true;
|
|
52
|
-
if (value && value.length >= 3 && (value === null || value === void 0 ? void 0 : value.match(REGEX_BRAND_NAME)))
|
|
53
|
-
return true;
|
|
54
|
-
return this.createError({ message: 'enter_brand_name_english_chars_numbers_space' });
|
|
55
|
-
}
|
|
56
|
-
})
|
|
57
|
-
.required('enter_brand_name_english_chars_numbers_space'),
|
|
58
|
-
selectedLicense: yup.object().shape(objectElements).required(''),
|
|
59
|
-
licenseNumber: yup
|
|
60
|
-
.string()
|
|
61
|
-
.when('selectedLicense', function (selectedLicense) {
|
|
62
|
-
var isCR = (selectedLicense === null || selectedLicense === void 0 ? void 0 : selectedLicense.type) === BusinessType.CR;
|
|
63
|
-
if (!isCR) {
|
|
64
|
-
return yup.string().optional();
|
|
65
|
-
}
|
|
66
|
-
return yup
|
|
60
|
+
})
|
|
61
|
+
.required('enter_brand_name_english_chars_numbers_space'),
|
|
62
|
+
selectedLicense: yup.object().shape(objectElements).required(''),
|
|
63
|
+
licenseNumber: yup
|
|
67
64
|
.string()
|
|
68
|
-
.required('')
|
|
69
65
|
.test({
|
|
70
66
|
test: function (value) {
|
|
67
|
+
var selectedLicense = this.parent.selectedLicense;
|
|
68
|
+
var isCR = (selectedLicense === null || selectedLicense === void 0 ? void 0 : selectedLicense.type) === BusinessType.CR;
|
|
71
69
|
var length = (value === null || value === void 0 ? void 0 : value.length) || 0;
|
|
72
70
|
if (length === 0)
|
|
73
71
|
return true;
|
|
74
|
-
|
|
72
|
+
if (isCR) {
|
|
73
|
+
return length > CR_MIN_LICENSE_LENGTH ? true : this.createError({ message: 'cr_max_length' });
|
|
74
|
+
}
|
|
75
|
+
return length > FL_MIN_LICENSE_LENGTH ? true : this.createError({ message: 'fl_max_length' });
|
|
75
76
|
}
|
|
77
|
+
})
|
|
78
|
+
.required('')
|
|
79
|
+
});
|
|
80
|
+
};
|
|
81
|
+
export var KWBusinessDataSchema = function (isLeadIdPassed) {
|
|
82
|
+
if (!isLeadIdPassed) {
|
|
83
|
+
return yup.object().shape({
|
|
84
|
+
brandName: yup
|
|
85
|
+
.string()
|
|
86
|
+
.test({
|
|
87
|
+
test: function (value) {
|
|
88
|
+
if ((value === null || value === void 0 ? void 0 : value.length) === 0)
|
|
89
|
+
return true;
|
|
90
|
+
if (value && value.length >= 3 && (value === null || value === void 0 ? void 0 : value.match(REGEX_BRAND_NAME)))
|
|
91
|
+
return true;
|
|
92
|
+
return this.createError({ message: 'enter_brand_name_english_chars_numbers_space' });
|
|
93
|
+
}
|
|
94
|
+
})
|
|
95
|
+
.required('enter_brand_name_english_chars_numbers_space'),
|
|
96
|
+
selectedLicense: yup.object().shape(objectElements).required(''),
|
|
97
|
+
licenseNumber: yup
|
|
98
|
+
.string()
|
|
99
|
+
.when('selectedLicense', function (selectedLicense) {
|
|
100
|
+
var isCR = (selectedLicense === null || selectedLicense === void 0 ? void 0 : selectedLicense.type) === BusinessType.CR;
|
|
101
|
+
if (!isCR) {
|
|
102
|
+
return yup.string().optional();
|
|
103
|
+
}
|
|
104
|
+
return yup
|
|
105
|
+
.string()
|
|
106
|
+
.required('')
|
|
107
|
+
.test({
|
|
108
|
+
test: function (value) {
|
|
109
|
+
var length = (value === null || value === void 0 ? void 0 : value.length) || 0;
|
|
110
|
+
if (length === 0)
|
|
111
|
+
return true;
|
|
112
|
+
return length >= KW_MIN_LICENSE_LENGTH ? true : this.createError({ message: 'cr_kw_max_length' });
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
})
|
|
116
|
+
.required(''),
|
|
117
|
+
termAndConditionChecked: yup.boolean().isTrue('check_terms_cond').required('check_terms_cond')
|
|
76
118
|
});
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
|
|
119
|
+
}
|
|
120
|
+
return yup.object().shape({
|
|
121
|
+
brandName: yup
|
|
122
|
+
.string()
|
|
123
|
+
.test({
|
|
124
|
+
test: function (value) {
|
|
125
|
+
if ((value === null || value === void 0 ? void 0 : value.length) === 0)
|
|
126
|
+
return true;
|
|
127
|
+
if (value && value.length >= 3 && (value === null || value === void 0 ? void 0 : value.match(REGEX_BRAND_NAME)))
|
|
128
|
+
return true;
|
|
129
|
+
return this.createError({ message: 'enter_brand_name_english_chars_numbers_space' });
|
|
130
|
+
}
|
|
131
|
+
})
|
|
132
|
+
.required('enter_brand_name_english_chars_numbers_space'),
|
|
133
|
+
selectedLicense: yup.object().shape(objectElements).required(''),
|
|
134
|
+
licenseNumber: yup
|
|
135
|
+
.string()
|
|
136
|
+
.when('selectedLicense', function (selectedLicense) {
|
|
137
|
+
var isCR = (selectedLicense === null || selectedLicense === void 0 ? void 0 : selectedLicense.type) === BusinessType.CR;
|
|
138
|
+
if (!isCR) {
|
|
139
|
+
return yup.string().optional();
|
|
140
|
+
}
|
|
141
|
+
return yup
|
|
142
|
+
.string()
|
|
143
|
+
.required('')
|
|
144
|
+
.test({
|
|
145
|
+
test: function (value) {
|
|
146
|
+
var length = (value === null || value === void 0 ? void 0 : value.length) || 0;
|
|
147
|
+
if (length === 0)
|
|
148
|
+
return true;
|
|
149
|
+
return length >= KW_MIN_LICENSE_LENGTH ? true : this.createError({ message: 'cr_kw_max_length' });
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
})
|
|
153
|
+
.required('')
|
|
154
|
+
});
|
|
155
|
+
};
|