@tap-payments/auth-jsconnect 2.1.37-test → 2.1.38-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.
Files changed (46) hide show
  1. package/build/@types/form.d.ts +1 -1
  2. package/build/api/auth.d.ts +4 -3
  3. package/build/api/auth.js +8 -4
  4. package/build/api/index.d.ts +5 -4
  5. package/build/components/SimpleList/SimpleList.d.ts +1 -1
  6. package/build/components/SimpleList/SimpleList.js +3 -3
  7. package/build/constants/api.d.ts +2 -0
  8. package/build/constants/api.js +4 -0
  9. package/build/features/app/auth/authStore.js +1 -1
  10. package/build/features/app/connect/connectStore.js +21 -33
  11. package/build/features/app/connectExpress/connectExpressStore.d.ts +18 -5
  12. package/build/features/app/connectExpress/connectExpressStore.js +197 -6
  13. package/build/features/app/signIn/signInStore.js +13 -41
  14. package/build/features/brand/screens/BrandActivities/ActivitiesList.js +1 -1
  15. package/build/features/brand/screens/BrandInfo/SalesChannels.js +6 -6
  16. package/build/features/brand/screens/BrandInfo/Segments.js +1 -1
  17. package/build/features/brand/screens/BrandInfo/TeamSize.js +1 -1
  18. package/build/features/business/screens/Activities/ActivitiesList.js +1 -1
  19. package/build/features/connect/screens/Merchant/SalesChannels.js +4 -3
  20. package/build/features/connectExpress/ConnectExpress.d.ts +3 -2
  21. package/build/features/connectExpress/ConnectExpress.js +7 -14
  22. package/build/features/connectExpress/screens/CivilID/CivilID.js +13 -31
  23. package/build/features/connectExpress/screens/CivilID/IDNumber.js +0 -4
  24. package/build/features/connectExpress/screens/Mobile/Mobile.js +25 -49
  25. package/build/features/connectExpress/screens/NID/DOB.js +2 -2
  26. package/build/features/connectExpress/screens/NID/IDNumber.js +1 -5
  27. package/build/features/connectExpress/screens/NID/NID.js +11 -16
  28. package/build/features/connectExpress/screens/OTP/OTP.js +13 -23
  29. package/build/features/entity/screens/EntityCapital/ActivityList.js +1 -1
  30. package/build/features/shared/Address/CountryList.js +1 -1
  31. package/build/features/shared/Address/InputSelect.js +1 -1
  32. package/build/features/shared/SalesChannels/SalesChannel.d.ts +3 -2
  33. package/build/features/shared/SalesChannels/SalesChannel.js +25 -11
  34. package/build/hooks/index.d.ts +1 -0
  35. package/build/hooks/index.js +1 -0
  36. package/build/hooks/useCountry.d.ts +4 -0
  37. package/build/hooks/useCountry.js +7 -0
  38. package/build/index.d.ts +2 -2
  39. package/build/index.js +2 -3
  40. package/package.json +1 -1
  41. package/build/features/shared/UploadMultipleFile/UploadFile.d.ts +0 -0
  42. package/build/features/shared/UploadMultipleFile/UploadFile.js +0 -1
  43. package/build/features/shared/UploadMultipleFile/UploadMultipleFile.d.ts +0 -0
  44. package/build/features/shared/UploadMultipleFile/UploadMultipleFile.js +0 -1
  45. package/build/features/shared/UploadMultipleFile/index.d.ts +0 -0
  46. package/build/features/shared/UploadMultipleFile/index.js +0 -1
@@ -1,6 +1,6 @@
1
1
  import { Activity, BrandInfo, CountryCode, CustomerLocation, ExpectedCustomer, ExpectedSaleRange, License, MonthlyIncome, Occupation, SaleChannel, Segment, SourceOfIncome, TeamSize } from './app';
2
2
  export declare type MobileFormValues = {
3
- mobile: string | null;
3
+ mobile: string;
4
4
  countryCode: CountryCode;
5
5
  };
6
6
  export declare type EmailFormValues = {
@@ -63,7 +63,7 @@ export declare type CreatePasswordBody = {
63
63
  step_name: string;
64
64
  encryption_contract: Array<string>;
65
65
  };
66
- export declare type VerifyAuthKitOTPBody = {
66
+ export declare type VerifyAuthExpressOTPBody = {
67
67
  auth_token?: string;
68
68
  lead_id?: string;
69
69
  data: string;
@@ -77,12 +77,13 @@ export declare type VerifyAuthKitOTPBody = {
77
77
  encryption_contract: Array<string>;
78
78
  };
79
79
  declare const authService: {
80
- createAuth: (data: CreateAuthBody, config?: AxiosRequestConfig) => Promise<import("axios").AxiosResponse<any, any>>;
80
+ createAuth: (data: CreateAuthBody, config?: AxiosRequestConfig) => Promise<any>;
81
81
  verifyAuth: (data: VerifyAuthBody | VerifyOperationAuthBody, config?: AxiosRequestConfig) => Promise<import("axios").AxiosResponse<any, any>>;
82
82
  createPassword: (data: CreatePasswordBody) => Promise<any>;
83
- verifyAuthKitOTP: (data: VerifyAuthKitOTPBody) => Promise<any>;
83
+ verifyExpressAuth: (data: VerifyAuthExpressOTPBody) => Promise<any>;
84
84
  getVerifyAuth: (token: string, config?: AxiosRequestConfig) => Promise<any>;
85
85
  getTokenVerify: (token: string, config?: AxiosRequestConfig) => Promise<any>;
86
86
  createAuthKitNID: (data: CreateAuthBody) => Promise<any>;
87
+ createExpressAuth: (data: CreateAuthBody, config?: AxiosRequestConfig) => Promise<any>;
87
88
  };
88
89
  export { authService };
package/build/api/auth.js CHANGED
@@ -12,7 +12,10 @@ var __assign = (this && this.__assign) || function () {
12
12
  import instance, { httpClient } from './axios';
13
13
  import { ENDPOINT_PATHS } from '../constants';
14
14
  var createAuth = function (data, config) {
15
- return instance.post("".concat(ENDPOINT_PATHS.AUTH), data, config);
15
+ return httpClient(__assign({ method: 'post', url: "".concat(ENDPOINT_PATHS.AUTH), data: data }, config));
16
+ };
17
+ var createExpressAuth = function (data, config) {
18
+ return httpClient(__assign({ method: 'post', url: "".concat(ENDPOINT_PATHS.CREATE_EXPRESS_AUTH_PATH), data: data }, config));
16
19
  };
17
20
  var verifyAuth = function (data, config) {
18
21
  return instance.put("".concat(ENDPOINT_PATHS.AUTH), data, config);
@@ -30,7 +33,7 @@ var getVerifyAuth = function (token, config) {
30
33
  var getTokenVerify = function (token, config) {
31
34
  return httpClient(__assign({ method: 'get', url: "".concat(ENDPOINT_PATHS.TOKEN_VERIFY, "/").concat(token) }, config));
32
35
  };
33
- var verifyAuthKitOTP = function (data) {
36
+ var verifyExpressAuth = function (data) {
34
37
  return httpClient({
35
38
  method: 'put',
36
39
  url: "".concat(ENDPOINT_PATHS.VERIFY_AUTH_OTP),
@@ -48,9 +51,10 @@ var authService = {
48
51
  createAuth: createAuth,
49
52
  verifyAuth: verifyAuth,
50
53
  createPassword: createPassword,
51
- verifyAuthKitOTP: verifyAuthKitOTP,
54
+ verifyExpressAuth: verifyExpressAuth,
52
55
  getVerifyAuth: getVerifyAuth,
53
56
  getTokenVerify: getTokenVerify,
54
- createAuthKitNID: createAuthKitNID
57
+ createAuthKitNID: createAuthKitNID,
58
+ createExpressAuth: createExpressAuth
55
59
  };
56
60
  export { authService };
@@ -1,6 +1,6 @@
1
1
  import axiosInstance, { setAxiosGlobalHeaders, removeAxiosGlobalHeaders, getAxiosHeaders } from './axios';
2
2
  import { ValidateOperatorBody } from './operator';
3
- import { CreateAuthBody, VerifyAuthBody, CreatePasswordBody, VerifyOperationAuthBody, ResetPasswordVerifyAuthBody, VerifyAuthKitOTPBody } from './auth';
3
+ import { CreateAuthBody, VerifyAuthBody, CreatePasswordBody, VerifyOperationAuthBody, ResetPasswordVerifyAuthBody, VerifyAuthExpressOTPBody } from './auth';
4
4
  import { UpdateLeadBody, LeadVerifyBody, CreateLeadBody, LeadOTPVerifyBody, LeadIdentityUpdateBody } from './lead';
5
5
  import { CheckEmailBody, CheckBrandBody } from './availabilityServices';
6
6
  import { EntityInfoBody, EntityBankUpdateBody, UploadFileBody, UpdateEntityBody, DocumentUpdateBody, DocumentInfo, UpdateEntityActivityBody, UpdateEntityCapitalBody } from './entity';
@@ -22,13 +22,14 @@ declare const API: {
22
22
  };
23
23
  };
24
24
  authService: {
25
- createAuth: (data: CreateAuthBody, config?: import("axios").AxiosRequestConfig<any> | undefined) => Promise<import("axios").AxiosResponse<any, any>>;
25
+ createAuth: (data: CreateAuthBody, config?: import("axios").AxiosRequestConfig<any> | undefined) => Promise<any>;
26
26
  verifyAuth: (data: VerifyAuthBody | VerifyOperationAuthBody, config?: import("axios").AxiosRequestConfig<any> | undefined) => Promise<import("axios").AxiosResponse<any, any>>;
27
27
  createPassword: (data: CreatePasswordBody) => Promise<any>;
28
- verifyAuthKitOTP: (data: VerifyAuthKitOTPBody) => Promise<any>;
28
+ verifyExpressAuth: (data: VerifyAuthExpressOTPBody) => Promise<any>;
29
29
  getVerifyAuth: (token: string, config?: import("axios").AxiosRequestConfig<any> | undefined) => Promise<any>;
30
30
  getTokenVerify: (token: string, config?: import("axios").AxiosRequestConfig<any> | undefined) => Promise<any>;
31
31
  createAuthKitNID: (data: CreateAuthBody) => Promise<any>;
32
+ createExpressAuth: (data: CreateAuthBody, config?: import("axios").AxiosRequestConfig<any> | undefined) => Promise<any>;
32
33
  };
33
34
  leadService: {
34
35
  createLead: (data: CreateLeadBody, config?: import("axios").AxiosRequestConfig<any> | undefined) => Promise<import("axios").AxiosResponse<any, any>>;
@@ -121,6 +122,6 @@ declare const API: {
121
122
  getBrandListByIndividualId: (id: string) => Promise<any>;
122
123
  };
123
124
  };
124
- export type { ValidateOperatorBody, CreateAuthBody, VerifyAuthBody, CreateLeadBody, UpdateLeadBody, LeadVerifyBody, LeadOTPVerifyBody, CheckEmailBody, CheckBrandBody, LeadIdentityUpdateBody, EntityInfoBody, CreateAccountBody, EntityBankUpdateBody, CreatePasswordBody, BrandListBody, VerifyOperationAuthBody, ResetPasswordVerifyAuthBody, UpdateBoardBody, UpdateBrandBody, DataElementBody, UploadFileBody, UpdateEntityBody, DocumentUpdateBody, DocumentInfo, VerifyAuthKitOTPBody, UpdateIndividualBody, UpdateEntityActivityBody, UpdateEntityCapitalBody };
125
+ export type { ValidateOperatorBody, CreateAuthBody, VerifyAuthBody, CreateLeadBody, UpdateLeadBody, LeadVerifyBody, LeadOTPVerifyBody, CheckEmailBody, CheckBrandBody, LeadIdentityUpdateBody, EntityInfoBody, CreateAccountBody, EntityBankUpdateBody, CreatePasswordBody, BrandListBody, VerifyOperationAuthBody, ResetPasswordVerifyAuthBody, UpdateBoardBody, UpdateBrandBody, DataElementBody, UploadFileBody, UpdateEntityBody, DocumentUpdateBody, DocumentInfo, VerifyAuthExpressOTPBody, UpdateIndividualBody, UpdateEntityActivityBody, UpdateEntityCapitalBody };
125
126
  export { setAxiosGlobalHeaders, removeAxiosGlobalHeaders, axiosInstance, getAxiosHeaders };
126
127
  export default API;
@@ -7,7 +7,7 @@ export interface SimpleListProps<T> extends ListProps {
7
7
  onSelectItem: (item: T) => void;
8
8
  renderItem: (item: T, idx: number) => React.ReactElement;
9
9
  searchKeyPath?: string;
10
- searchValuePath?: string;
10
+ searchValuePath?: string[];
11
11
  }
12
12
  declare function SimpleList<T>({ list, listItemProps, onSelectItem, renderItem, children, searchKeyPath, searchValuePath, ...rest }: SimpleListProps<T>): JSX.Element;
13
13
  declare namespace SimpleList {
@@ -94,15 +94,15 @@ function SimpleList(_a) {
94
94
  var onSearch = function (value) {
95
95
  if (value) {
96
96
  var filteredArr = items.filter(function (item) {
97
- var searchValue = get(item, searchValuePath || '') || '';
98
- return searchValue.toLowerCase().includes(value.toLowerCase());
97
+ var target = (searchValuePath === null || searchValuePath === void 0 ? void 0 : searchValuePath.map(function (path) { return get(item, path) || ''; })) || [];
98
+ return target.some(function (item) { return item === null || item === void 0 ? void 0 : item.toLowerCase().includes(value.toLowerCase()); });
99
99
  });
100
100
  setItems(filteredArr);
101
101
  return;
102
102
  }
103
103
  setItems(list);
104
104
  };
105
- return (_jsxs(_Fragment, { children: [searchValuePath && _jsx(Search, { onSearchValue: onSearch }), _jsx(ListStyled, __assign({}, rest, { children: children ||
105
+ return (_jsxs(_Fragment, { children: [(searchValuePath === null || searchValuePath === void 0 ? void 0 : searchValuePath.length) && _jsx(Search, { onSearchValue: onSearch }), _jsx(ListStyled, __assign({}, rest, { children: children ||
106
106
  items.map(function (item, idx) {
107
107
  return (_createElement(ListItemStyled, __assign({}, listItemProps, { onClick: function () {
108
108
  onSelectItem(item);
@@ -1,4 +1,6 @@
1
1
  export declare const ENDPOINT_PATHS: {
2
+ CREATE_EXPRESS_AUTH_PATH: string;
3
+ Verify_Express_Auth_OTP_PATH: string;
2
4
  ADDRESS_PATH: string;
3
5
  SANDBOX_BASE_URL: string;
4
6
  PRODUCTION_BASE_URL: string;
@@ -33,6 +33,8 @@ var FILES = '/files';
33
33
  var TOKEN_VERIFY_PATH = '/token/verify';
34
34
  var RETRIEVE_USER_INFO_PATH = '/user';
35
35
  var BOARD_PATH = '/board';
36
+ var CREATE_EXPRESS_AUTH_PATH = '/connect/auth';
37
+ var Verify_Express_Auth_OTP_PATH = '/connect/auth';
36
38
  var CONNECT_PATH = '/connect';
37
39
  var CREATE_AUTH_NID_PATH = "".concat(CONNECT_PATH, "/auth");
38
40
  var VERIFY_AUTH_OTP_PATH = "".concat(CONNECT_PATH, "/auth");
@@ -41,6 +43,8 @@ var SEGMENTS_PATH = '/businessSegment/list';
41
43
  var TEAM_SIZE_PATH = '/businessSegment/team/list';
42
44
  var ADDRESS_PATH = '/address';
43
45
  export var ENDPOINT_PATHS = {
46
+ CREATE_EXPRESS_AUTH_PATH: CREATE_EXPRESS_AUTH_PATH,
47
+ Verify_Express_Auth_OTP_PATH: Verify_Express_Auth_OTP_PATH,
44
48
  ADDRESS_PATH: ADDRESS_PATH,
45
49
  SANDBOX_BASE_URL: SANDBOX_BASE_URL,
46
50
  PRODUCTION_BASE_URL: PRODUCTION_BASE_URL,
@@ -71,7 +71,7 @@ export var verifyAuthOTP = createAsyncThunk('verifyAuthOTPKit', function (params
71
71
  terms: auth.data.termAndConditionChecked ? ['general'] : [],
72
72
  encryption_contract: ['data']
73
73
  };
74
- return [4, API.authService.verifyAuthKitOTP(payload)];
74
+ return [4, API.authService.verifyExpressAuth(payload)];
75
75
  case 1:
76
76
  data = _g.sent();
77
77
  (_d = (_c = settings.data.appConfig).onStepCompleted) === null || _d === void 0 ? void 0 : _d.call(_c, settings.data.activeScreen.name, params);
@@ -75,9 +75,9 @@ import { defaultCountry } from '../../../constants';
75
75
  import { getIndividualName, capitalizeTheFirstLetterOfEachWord, getEighteenYearsAgo, sleep, findCountryByIddPrefix, concatenateObjectValues, isTwitter, isWebsite, fixBrandList } from '../../../utils';
76
76
  export var createMobileAuth = createAsyncThunk('createMobileAuth', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
77
77
  var settings, requestBody, data;
78
- var _a, _b, _c;
79
- return __generator(this, function (_d) {
80
- switch (_d.label) {
78
+ var _a, _b;
79
+ return __generator(this, function (_c) {
80
+ switch (_c.label) {
81
81
  case 0:
82
82
  settings = thunkApi.getState().settings;
83
83
  requestBody = {
@@ -95,20 +95,18 @@ export var createMobileAuth = createAsyncThunk('createMobileAuth', function (par
95
95
  };
96
96
  return [4, API.authService.createAuth(requestBody)];
97
97
  case 1:
98
- data = (_d.sent()).data;
99
- if ((_a = data.errors) === null || _a === void 0 ? void 0 : _a.length)
100
- throw new Error(data.errors[0].description);
98
+ data = _c.sent();
101
99
  thunkApi.dispatch(handleNextScreenStep());
102
- (_c = (_b = settings.data.appConfig).onStepCompleted) === null || _c === void 0 ? void 0 : _c.call(_b, settings.data.activeScreen.name, requestBody.user_credentail);
100
+ (_b = (_a = settings.data.appConfig).onStepCompleted) === null || _b === void 0 ? void 0 : _b.call(_a, settings.data.activeScreen.name, requestBody.user_credentail);
103
101
  return [2, { response: data, formData: params }];
104
102
  }
105
103
  });
106
104
  }); });
107
105
  export var createCivilIdAuth = createAsyncThunk('createCivilIdAuth', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
108
106
  var settings, requestBody, data;
109
- var _a, _b, _c;
110
- return __generator(this, function (_d) {
111
- switch (_d.label) {
107
+ var _a, _b;
108
+ return __generator(this, function (_c) {
109
+ switch (_c.label) {
112
110
  case 0:
113
111
  settings = thunkApi.getState().settings;
114
112
  requestBody = {
@@ -126,20 +124,17 @@ export var createCivilIdAuth = createAsyncThunk('createCivilIdAuth', function (p
126
124
  };
127
125
  return [4, API.authService.createAuth(requestBody)];
128
126
  case 1:
129
- data = (_d.sent()).data;
130
- if ((_a = data.errors) === null || _a === void 0 ? void 0 : _a.length)
131
- throw new Error(data.errors[0].description);
127
+ data = _c.sent();
132
128
  thunkApi.dispatch(handleNextScreenStep());
133
- (_c = (_b = settings.data.appConfig).onStepCompleted) === null || _c === void 0 ? void 0 : _c.call(_b, settings.data.activeScreen.name, requestBody.user_credentail);
129
+ (_b = (_a = settings.data.appConfig).onStepCompleted) === null || _b === void 0 ? void 0 : _b.call(_a, settings.data.activeScreen.name, requestBody.user_credentail);
134
130
  return [2, { response: data, formData: params }];
135
131
  }
136
132
  });
137
133
  }); });
138
134
  export var resendOTPMobile = createAsyncThunk('resendOTPMobile', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
139
135
  var _a, settings, connect, _b, mobile, countryCode, requestBody, data;
140
- var _c;
141
- return __generator(this, function (_d) {
142
- switch (_d.label) {
136
+ return __generator(this, function (_c) {
137
+ switch (_c.label) {
143
138
  case 0:
144
139
  _a = thunkApi.getState(), settings = _a.settings, connect = _a.connect;
145
140
  _b = connect.data.mobileData, mobile = _b.mobile, countryCode = _b.countryCode;
@@ -158,18 +153,15 @@ export var resendOTPMobile = createAsyncThunk('resendOTPMobile', function (param
158
153
  };
159
154
  return [4, API.authService.createAuth(requestBody)];
160
155
  case 1:
161
- data = (_d.sent()).data;
162
- if ((_c = data.errors) === null || _c === void 0 ? void 0 : _c.length)
163
- throw new Error(data.errors[0].description);
156
+ data = _c.sent();
164
157
  return [2, data];
165
158
  }
166
159
  });
167
160
  }); });
168
161
  export var resendOTPNID = createAsyncThunk('resendOTPNID', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
169
162
  var _a, settings, connect, _b, nid, dob, type, requestBody, data;
170
- var _c;
171
- return __generator(this, function (_d) {
172
- switch (_d.label) {
163
+ return __generator(this, function (_c) {
164
+ switch (_c.label) {
173
165
  case 0:
174
166
  _a = thunkApi.getState(), settings = _a.settings, connect = _a.connect;
175
167
  _b = connect.data.nidData, nid = _b.nid, dob = _b.dob, type = _b.type;
@@ -195,18 +187,16 @@ export var resendOTPNID = createAsyncThunk('resendOTPNID', function (params, thu
195
187
  };
196
188
  return [4, API.authService.createAuth(requestBody)];
197
189
  case 1:
198
- data = (_d.sent()).data;
199
- if ((_c = data.errors) === null || _c === void 0 ? void 0 : _c.length)
200
- throw new Error(data.errors[0].description);
190
+ data = _c.sent();
201
191
  return [2, data];
202
192
  }
203
193
  });
204
194
  }); });
205
195
  export var createNIDAuth = createAsyncThunk('createNIDAuth', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
206
196
  var settings, identification_id_type, requestBody, data;
207
- var _a, _b, _c;
208
- return __generator(this, function (_d) {
209
- switch (_d.label) {
197
+ var _a, _b;
198
+ return __generator(this, function (_c) {
199
+ switch (_c.label) {
210
200
  case 0:
211
201
  settings = thunkApi.getState().settings;
212
202
  identification_id_type = params.nid.startsWith('1') ? IDENTIFICATION_TYPE.NID : IDENTIFICATION_TYPE.IQAMA;
@@ -232,11 +222,9 @@ export var createNIDAuth = createAsyncThunk('createNIDAuth', function (params, t
232
222
  };
233
223
  return [4, API.authService.createAuth(requestBody)];
234
224
  case 1:
235
- data = (_d.sent()).data;
236
- if ((_a = data.errors) === null || _a === void 0 ? void 0 : _a.length)
237
- throw new Error(data.errors[0].description);
225
+ data = _c.sent();
238
226
  thunkApi.dispatch(handleNextScreenStep());
239
- (_c = (_b = settings.data.appConfig).onStepCompleted) === null || _c === void 0 ? void 0 : _c.call(_b, settings.data.activeScreen.name, requestBody.user_credentail);
227
+ (_b = (_a = settings.data.appConfig).onStepCompleted) === null || _b === void 0 ? void 0 : _b.call(_a, settings.data.activeScreen.name, requestBody.user_credentail);
240
228
  return [2, { response: data, formData: __assign(__assign({}, params), { type: identification_id_type }) }];
241
229
  }
242
230
  });
@@ -2,6 +2,19 @@ import { RootState } from '../../../app/store';
2
2
  import { MobileFormValues, NIDFormValues, CivilFormValues, OTPFormValues, SharedState, FlowsTypes, ActionState, CountryCode, AuthForType } from '../../../@types';
3
3
  export declare const getLeadByIdAsync: import("@reduxjs/toolkit").AsyncThunk<any, string, {}>;
4
4
  export declare const getBrandListAsync: import("@reduxjs/toolkit").AsyncThunk<any, string, {}>;
5
+ export declare const createMobileAuthAsync: import("@reduxjs/toolkit").AsyncThunk<{
6
+ response: any;
7
+ formData: MobileFormValues;
8
+ }, MobileFormValues, {}>;
9
+ export declare const createNIDAuthAsync: import("@reduxjs/toolkit").AsyncThunk<{
10
+ response: any;
11
+ formData: NIDFormValues;
12
+ }, NIDFormValues, {}>;
13
+ export declare const createCivilAuthAsync: import("@reduxjs/toolkit").AsyncThunk<{
14
+ response: any;
15
+ formData: CivilFormValues;
16
+ }, CivilFormValues, {}>;
17
+ export declare const verifyOtpAsync: import("@reduxjs/toolkit").AsyncThunk<any, OTPFormValues, {}>;
5
18
  interface ResponseData {
6
19
  responseData?: Record<string, any>;
7
20
  }
@@ -9,18 +22,18 @@ export interface ConnectExpressData {
9
22
  isLeadIdPassed: boolean;
10
23
  postURL: string;
11
24
  mobileData: MobileFormValues;
12
- nidData: NIDFormValues & {
13
- type: string;
14
- };
25
+ nidData: NIDFormValues;
15
26
  civilIdData: CivilFormValues;
16
27
  otpData: OTPFormValues & {
17
28
  authFor: AuthForType;
18
29
  };
19
30
  flowName: FlowsTypes;
31
+ leadId?: string;
20
32
  }
21
33
  export interface ConnectExpressState extends SharedState<ConnectExpressData & ResponseData> {
22
34
  }
23
35
  export declare const connectSlice: import("@reduxjs/toolkit").Slice<ConnectExpressState, {
36
+ setLeadId(state: ConnectExpressState, action: ActionState<string>): void;
24
37
  setIsLeadIdPassed: (state: ConnectExpressState, action: ActionState<boolean>) => void;
25
38
  clearError: (state: ConnectExpressState) => void;
26
39
  setError(state: ConnectExpressState, action: ActionState<string>): void;
@@ -29,11 +42,11 @@ export declare const connectSlice: import("@reduxjs/toolkit").Slice<ConnectExpre
29
42
  resetMobileScreen: (state: ConnectExpressState, action: ActionState<CountryCode>) => void;
30
43
  resetNIDScreen: (state: ConnectExpressState) => void;
31
44
  resetCivilScreen: (state: ConnectExpressState) => void;
32
- resetOTPScreen: (state: ConnectExpressState) => void;
45
+ resetOTPValue: (state: ConnectExpressState) => void;
33
46
  setPostUrl: (state: ConnectExpressState, action: ActionState<string>) => void;
34
47
  resetStore: (state: ConnectExpressState) => void;
35
48
  }, "connectExpress/store">;
36
- 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>, resetOTPScreen: 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>, setResponseData: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<Record<string, any> | undefined, string>, setPostUrl: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>;
49
+ 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>, setResponseData: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<Record<string, any> | undefined, string>, setPostUrl: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, setLeadId: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>;
37
50
  declare const _default: import("redux").Reducer<ConnectExpressState, import("redux").AnyAction>;
38
51
  export default _default;
39
52
  export declare const connectExpressSelector: (state: RootState) => ConnectExpressState;
@@ -47,10 +47,12 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
47
47
  };
48
48
  var _a;
49
49
  import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
50
+ import { handleNextScreenStep } from '../../../app/settings';
50
51
  import { FlowsTypes, AuthForType } from '../../../@types';
51
52
  import API from '../../../api';
53
+ import { CONNECT_EXPRESS_STEP_NAMES, IDENTIFICATION_TYPE } from '../../../constants';
52
54
  import { defaultCountry } from '../../../constants';
53
- import { getEighteenYearsAgo } from '../../../utils';
55
+ import { getEighteenYearsAgo, sleep } from '../../../utils';
54
56
  export var getLeadByIdAsync = createAsyncThunk('expressConnect/getLeadByIdAsync', function (leadId, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
55
57
  var data;
56
58
  return __generator(this, function (_a) {
@@ -73,6 +75,137 @@ export var getBrandListAsync = createAsyncThunk('expressConnect/getBrandListAsyn
73
75
  }
74
76
  });
75
77
  }); });
78
+ export var createMobileAuthAsync = createAsyncThunk('connectExpress/createMobileAuthAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
79
+ var settings, requestBody, data;
80
+ var _a, _b;
81
+ return __generator(this, function (_c) {
82
+ switch (_c.label) {
83
+ case 0:
84
+ settings = thunkApi.getState().settings;
85
+ requestBody = {
86
+ country: settings.data.businessCountry.iso2,
87
+ scope: settings.data.appConfig.scope,
88
+ lang: settings.data.language,
89
+ user_credentail: {
90
+ phone: params.mobile,
91
+ code: params.countryCode.idd_prefix.toString()
92
+ },
93
+ sign_in: false,
94
+ is_lead: true,
95
+ step_name: CONNECT_EXPRESS_STEP_NAMES.CREATE_AUTH_MOBILE,
96
+ encryption_contract: ['user_credentail.phone', 'user_credentail.code']
97
+ };
98
+ return [4, API.authService.createExpressAuth(requestBody)];
99
+ case 1:
100
+ data = _c.sent();
101
+ thunkApi.dispatch(handleNextScreenStep());
102
+ (_b = (_a = settings.data.appConfig).onStepCompleted) === null || _b === void 0 ? void 0 : _b.call(_a, settings.data.activeScreen.name, requestBody.user_credentail);
103
+ return [2, { response: data, formData: params }];
104
+ }
105
+ });
106
+ }); });
107
+ export var createNIDAuthAsync = createAsyncThunk('connectExpress/createNIDAuthAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
108
+ var settings, dob, nid, nidType, countryCode, requestBody, data;
109
+ var _a, _b;
110
+ return __generator(this, function (_c) {
111
+ switch (_c.label) {
112
+ case 0:
113
+ settings = thunkApi.getState().settings;
114
+ dob = params.dob, nid = params.nid;
115
+ nidType = nid.startsWith('1') ? IDENTIFICATION_TYPE.NID : IDENTIFICATION_TYPE.IQAMA;
116
+ countryCode = settings.data.businessCountry.iso2;
117
+ requestBody = {
118
+ country: countryCode,
119
+ scope: settings.data.appConfig.scope,
120
+ lang: settings.data.language,
121
+ user_credentail: {
122
+ identification_id: nid,
123
+ identification_id_type: nidType,
124
+ date_of_birth: dob,
125
+ country_code: countryCode
126
+ },
127
+ sign_in: false,
128
+ is_lead: true,
129
+ step_name: CONNECT_EXPRESS_STEP_NAMES.CREATE_AUTH_NID,
130
+ encryption_contract: [
131
+ 'user_credentail.country_code',
132
+ 'user_credentail.identification_id',
133
+ 'user_credentail.identification_id_type',
134
+ 'user_credentail.date_of_birth'
135
+ ]
136
+ };
137
+ return [4, API.authService.createExpressAuth(requestBody)];
138
+ case 1:
139
+ data = _c.sent();
140
+ thunkApi.dispatch(handleNextScreenStep());
141
+ (_b = (_a = settings.data.appConfig).onStepCompleted) === null || _b === void 0 ? void 0 : _b.call(_a, settings.data.activeScreen.name, requestBody.user_credentail);
142
+ return [2, { response: data, formData: params }];
143
+ }
144
+ });
145
+ }); });
146
+ export var createCivilAuthAsync = createAsyncThunk('connectExpress/createCivilAuthAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
147
+ var settings, civilId, countryCode, requestBody, data;
148
+ var _a, _b;
149
+ return __generator(this, function (_c) {
150
+ switch (_c.label) {
151
+ case 0:
152
+ settings = thunkApi.getState().settings;
153
+ civilId = params.civilId;
154
+ countryCode = settings.data.businessCountry.iso2;
155
+ requestBody = {
156
+ country: countryCode,
157
+ scope: settings.data.appConfig.scope,
158
+ lang: settings.data.language,
159
+ user_credentail: {
160
+ identification_id: civilId,
161
+ country_code: countryCode
162
+ },
163
+ sign_in: false,
164
+ is_lead: true,
165
+ step_name: CONNECT_EXPRESS_STEP_NAMES.CREATE_AUTH_CIVIL_ID,
166
+ encryption_contract: ['user_credentail.identification_id']
167
+ };
168
+ return [4, API.authService.createAuth(requestBody)];
169
+ case 1:
170
+ data = _c.sent();
171
+ thunkApi.dispatch(handleNextScreenStep());
172
+ (_b = (_a = settings.data.appConfig).onStepCompleted) === null || _b === void 0 ? void 0 : _b.call(_a, settings.data.activeScreen.name, requestBody.user_credentail);
173
+ return [2, { response: data, formData: params }];
174
+ }
175
+ });
176
+ }); });
177
+ export var verifyOtpAsync = createAsyncThunk('connectExpress/verifyOtpAsync', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
178
+ var _a, settings, connectExpress, _b, responseData, postURL, leadId, _c, verifyToken, device_token, service_name, payload, data;
179
+ var _d, _e;
180
+ return __generator(this, function (_f) {
181
+ switch (_f.label) {
182
+ case 0:
183
+ _a = thunkApi.getState(), settings = _a.settings, connectExpress = _a.connectExpress;
184
+ _b = connectExpress.data || {}, responseData = _b.responseData, postURL = _b.postURL, leadId = _b.leadId;
185
+ if (!(responseData === null || responseData === void 0 ? void 0 : responseData.authData))
186
+ throw new Error('Auth data is missing');
187
+ _c = responseData.authData, verifyToken = _c.verifyToken, device_token = _c.device_token, service_name = _c.service_name;
188
+ payload = {
189
+ auth_token: verifyToken,
190
+ lead_id: leadId,
191
+ data: params.otp,
192
+ post_url: postURL,
193
+ auth_type: 2,
194
+ device_token: device_token,
195
+ service_name: service_name || 'ABSHER',
196
+ sign_in: false,
197
+ terms: ['general'],
198
+ encryption_contract: ['data']
199
+ };
200
+ return [4, API.authService.verifyExpressAuth(payload)];
201
+ case 1:
202
+ data = _f.sent();
203
+ (_e = (_d = settings.data.appConfig).onStepCompleted) === null || _e === void 0 ? void 0 : _e.call(_d, settings.data.activeScreen.name, params);
204
+ sleep().then(function () { return thunkApi.dispatch(handleNextScreenStep()); });
205
+ return [2, data];
206
+ }
207
+ });
208
+ }); });
76
209
  var initialState = {
77
210
  error: null,
78
211
  loading: false,
@@ -86,8 +219,7 @@ var initialState = {
86
219
  },
87
220
  nidData: {
88
221
  nid: '',
89
- dob: getEighteenYearsAgo(),
90
- type: ''
222
+ dob: getEighteenYearsAgo()
91
223
  },
92
224
  civilIdData: {
93
225
  civilId: ''
@@ -102,6 +234,9 @@ export var connectSlice = createSlice({
102
234
  name: 'connectExpress/store',
103
235
  initialState: initialState,
104
236
  reducers: {
237
+ setLeadId: function (state, action) {
238
+ state.data.leadId = action.payload;
239
+ },
105
240
  setIsLeadIdPassed: function (state, action) {
106
241
  state.data.isLeadIdPassed = action.payload;
107
242
  },
@@ -126,7 +261,7 @@ export var connectSlice = createSlice({
126
261
  resetCivilScreen: function (state) {
127
262
  state.data.civilIdData = __assign(__assign({}, state.data.civilIdData), initialState.data.civilIdData);
128
263
  },
129
- resetOTPScreen: function (state) {
264
+ resetOTPValue: function (state) {
130
265
  state.data.otpData.otp = '';
131
266
  },
132
267
  setPostUrl: function (state, action) {
@@ -135,7 +270,8 @@ export var connectSlice = createSlice({
135
270
  resetStore: function (state) {
136
271
  var countryCode = state.data.mobileData.countryCode;
137
272
  var postURL = state.data.postURL;
138
- state.data = __assign(__assign({}, initialState.data), { mobileData: __assign(__assign({}, initialState.data.mobileData), { countryCode: countryCode }), postURL: postURL });
273
+ var isLeadIdPassed = state.data.isLeadIdPassed;
274
+ state.data = __assign(__assign({}, initialState.data), { mobileData: __assign(__assign({}, initialState.data.mobileData), { countryCode: countryCode }), postURL: postURL, isLeadIdPassed: isLeadIdPassed });
139
275
  }
140
276
  },
141
277
  extraReducers: function (builder) {
@@ -163,9 +299,64 @@ export var connectSlice = createSlice({
163
299
  .addCase(getBrandListAsync.rejected, function (state, action) {
164
300
  state.loading = false;
165
301
  state.error = action.error.message;
302
+ })
303
+ .addCase(createMobileAuthAsync.pending, function (state) {
304
+ state.loading = true;
305
+ state.error = null;
306
+ })
307
+ .addCase(createMobileAuthAsync.fulfilled, function (state, action) {
308
+ state.loading = false;
309
+ state.data.mobileData = action.payload.formData;
310
+ state.data.otpData.authFor = AuthForType.NATIONAL_ID;
311
+ state.data.responseData = __assign(__assign({}, state.data.responseData), { authData: action.payload.response });
312
+ })
313
+ .addCase(createMobileAuthAsync.rejected, function (state, action) {
314
+ state.loading = false;
315
+ state.error = action.error.message;
316
+ })
317
+ .addCase(createNIDAuthAsync.pending, function (state) {
318
+ state.loading = true;
319
+ state.error = null;
320
+ })
321
+ .addCase(createNIDAuthAsync.fulfilled, function (state, action) {
322
+ state.loading = false;
323
+ state.data.nidData = action.payload.formData;
324
+ state.data.otpData.authFor = AuthForType.NATIONAL_ID;
325
+ state.data.responseData = __assign(__assign({}, state.data.responseData), { authData: action.payload.response });
326
+ })
327
+ .addCase(createNIDAuthAsync.rejected, function (state, action) {
328
+ state.loading = false;
329
+ state.error = action.error.message;
330
+ })
331
+ .addCase(createCivilAuthAsync.pending, function (state) {
332
+ state.loading = true;
333
+ state.error = null;
334
+ })
335
+ .addCase(createCivilAuthAsync.fulfilled, function (state, action) {
336
+ state.loading = false;
337
+ state.data.civilIdData = action.payload.formData;
338
+ state.data.otpData.authFor = AuthForType.NATIONAL_ID;
339
+ state.data.responseData = __assign(__assign({}, state.data.responseData), { authData: action.payload.response });
340
+ })
341
+ .addCase(createCivilAuthAsync.rejected, function (state, action) {
342
+ state.loading = false;
343
+ state.error = action.error.message;
344
+ })
345
+ .addCase(verifyOtpAsync.pending, function (state) {
346
+ state.loading = true;
347
+ state.error = null;
348
+ })
349
+ .addCase(verifyOtpAsync.fulfilled, function (state, action) {
350
+ var _a;
351
+ state.loading = false;
352
+ 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) });
353
+ })
354
+ .addCase(verifyOtpAsync.rejected, function (state, action) {
355
+ state.loading = false;
356
+ state.error = action.error.message;
166
357
  });
167
358
  }
168
359
  });
169
- export var clearError = (_a = connectSlice.actions, _a.clearError), stopLoader = _a.stopLoader, setIsLeadIdPassed = _a.setIsLeadIdPassed, resetMobileScreen = _a.resetMobileScreen, resetOTPScreen = _a.resetOTPScreen, resetNIDScreen = _a.resetNIDScreen, resetCivilScreen = _a.resetCivilScreen, resetStore = _a.resetStore, setError = _a.setError, setResponseData = _a.setResponseData, setPostUrl = _a.setPostUrl;
360
+ 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, setResponseData = _a.setResponseData, setPostUrl = _a.setPostUrl, setLeadId = _a.setLeadId;
170
361
  export default connectSlice.reducer;
171
362
  export var connectExpressSelector = function (state) { return state.connectExpress; };