@tap-payments/auth-jsconnect 2.11.14-development → 2.11.14-sandbox

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 (54) hide show
  1. package/build/@types/form.d.ts +2 -2
  2. package/build/api/account.d.ts +2 -2
  3. package/build/api/account.js +7 -4
  4. package/build/api/auth.d.ts +1 -1
  5. package/build/api/auth.js +7 -3
  6. package/build/api/headers.d.ts +5 -0
  7. package/build/api/headers.js +3 -0
  8. package/build/api/index.d.ts +4 -4
  9. package/build/api/operator.d.ts +1 -1
  10. package/build/api/operator.js +5 -2
  11. package/build/assets/locales/ar.json +5 -0
  12. package/build/assets/locales/en.json +7 -2
  13. package/build/components/Tooltip/Tooltip.js +1 -1
  14. package/build/constants/app.d.ts +1 -0
  15. package/build/constants/app.js +105 -18
  16. package/build/constants/flows.d.ts +1 -0
  17. package/build/constants/flows.js +2 -1
  18. package/build/features/app/auth/authStore.js +64 -54
  19. package/build/features/app/bank/bankStore.js +24 -20
  20. package/build/features/app/board/boardStore.js +11 -7
  21. package/build/features/app/brand/brandStore.js +22 -18
  22. package/build/features/app/business/businessStore.js +30 -26
  23. package/build/features/app/connect/connectStore.js +26 -22
  24. package/build/features/app/connectExpress/connectExpressStore.js +20 -7
  25. package/build/features/app/entity/entityStore.js +21 -17
  26. package/build/features/app/individual/individualStore.js +33 -28
  27. package/build/features/app/password/passwordStore.js +44 -46
  28. package/build/features/app/signIn/signInStore.js +12 -16
  29. package/build/features/app/tax/taxStore.js +20 -16
  30. package/build/features/app/terminal/terminalStore.js +5 -3
  31. package/build/features/auth/screens/AuthenticationList/AuthenticationList.js +10 -7
  32. package/build/features/auth/screens/AuthenticationList/EntityLicenseType.d.ts +4 -1
  33. package/build/features/auth/screens/AuthenticationList/EntityLicenseType.js +6 -4
  34. package/build/features/auth/screens/AuthenticationList/EntityList.js +9 -1
  35. package/build/features/business/screens/BusinessType/BusinessType.js +2 -3
  36. package/build/features/business/screens/BusinessType/LicenseList.js +5 -5
  37. package/build/features/connectExpress/screens/AuthenticationList/AuthenticationList.js +10 -10
  38. package/build/features/connectExpress/screens/AuthenticationList/EntityLicenseType.d.ts +4 -1
  39. package/build/features/connectExpress/screens/AuthenticationList/EntityLicenseType.js +6 -4
  40. package/build/features/connectExpress/screens/AuthenticationList/EntityList.js +9 -1
  41. package/build/features/connectExpress/screens/CollectBusinessInfo/LicenseList.js +6 -11
  42. package/build/features/connectExpress/screens/Mobile/Mobile.js +7 -6
  43. package/build/features/featuresScreens.js +60 -0
  44. package/build/features/shared/OTPVerifySecurityError/OTPVerifySecurityError.d.ts +3 -0
  45. package/build/features/shared/OTPVerifySecurityError/OTPVerifySecurityError.js +9 -0
  46. package/build/features/shared/OTPVerifySecurityError/index.d.ts +2 -0
  47. package/build/features/shared/OTPVerifySecurityError/index.js +2 -0
  48. package/build/features/terminal/screens/NoTerminalDeviceLinked/NoTerminalDeviceLinked.js +59 -14
  49. package/build/features/terminal/screens/POSDeviceListPage/POSDeviceListPage.js +5 -2
  50. package/build/features/terminal/screens/Verify/Verify.js +6 -2
  51. package/build/utils/common.js +3 -3
  52. package/build/utils/error.d.ts +1 -0
  53. package/build/utils/error.js +3 -0
  54. package/package.json +2 -2
@@ -51,7 +51,7 @@ import API from '../../../api';
51
51
  import { FlowsTypes } from '../../../@types';
52
52
  import { handleCurrentActiveScreen, handleNextScreenStep, handlePrevScreenStep, handlePublicKey, handleSetCountryByIso2, onCloseComplete } from '../../../app/settings';
53
53
  import { PASSWORD_OPERATION_TYPE, PASSWORD_STEP_NAMES } from '../../../constants';
54
- import { retrieveIndividualData, sendCustomEventToGTM, sleep } from '../../../utils';
54
+ import { isAuthenticationVerificationFailed, retrieveIndividualData, sendCustomEventToGTM, sleep } from '../../../utils';
55
55
  export var verifyLeadToken = createAsyncThunk('passwordVerifyLeadToken', function (_a, thunkApi) {
56
56
  var token = _a.token, isInternally = _a.isInternally;
57
57
  return __awaiter(void 0, void 0, void 0, function () {
@@ -156,9 +156,9 @@ export var retrieveBoardDetails = createAsyncThunk('retrievePasswordBoardDetails
156
156
  });
157
157
  export var verifyPasswordLeadOTP = createAsyncThunk('verifyPasswordLeadOTP', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
158
158
  var _a, password, settings, responseBody, payload, data, _b, config, board_info_password_status, country_code, board_id, recipient, countryIso2, publicKey, flows, data_3, data_4;
159
- var _c, _d, _e, _f, _g;
160
- return __generator(this, function (_h) {
161
- switch (_h.label) {
159
+ var _c, _d, _e, _f;
160
+ return __generator(this, function (_g) {
161
+ switch (_g.label) {
162
162
  case 0:
163
163
  _a = thunkApi.getState(), password = _a.password, settings = _a.settings;
164
164
  responseBody = password.data.verify.responseBody;
@@ -169,11 +169,13 @@ export var verifyPasswordLeadOTP = createAsyncThunk('verifyPasswordLeadOTP', fun
169
169
  step_name: PASSWORD_STEP_NAMES.PHONE_AUTH,
170
170
  encryption_contract: ['data']
171
171
  };
172
- return [4, API.leadService.verifyLeadOTP(payload)];
172
+ return [4, API.leadService.verifyTokenOTP(payload).catch(function (err) {
173
+ if (isAuthenticationVerificationFailed(err === null || err === void 0 ? void 0 : err.message))
174
+ thunkApi.dispatch(handleNextScreenStep('PASSWORD_OTP_VERIFY_SECURITY_ERROR_STEP'));
175
+ throw new Error(err === null || err === void 0 ? void 0 : err.message);
176
+ })];
173
177
  case 1:
174
- data = (_h.sent()).data;
175
- if ((_d = data === null || data === void 0 ? void 0 : data.errors) === null || _d === void 0 ? void 0 : _d.length)
176
- throw new Error(data.errors[0].description);
178
+ data = _g.sent();
177
179
  _b = data || {}, config = _b.config, board_info_password_status = _b.board_info_password_status, country_code = _b.country_code, board_id = _b.id, recipient = _b.recipient;
178
180
  countryIso2 = country_code;
179
181
  if (countryIso2)
@@ -181,7 +183,7 @@ export var verifyPasswordLeadOTP = createAsyncThunk('verifyPasswordLeadOTP', fun
181
183
  publicKey = config === null || config === void 0 ? void 0 : config.public_key;
182
184
  if (publicKey)
183
185
  thunkApi.dispatch(handlePublicKey(publicKey));
184
- (_f = (_e = settings.data.appConfig).onStepCompleted) === null || _f === void 0 ? void 0 : _f.call(_e, settings.data.activeScreen.name, { otp: params.otp });
186
+ (_e = (_d = settings.data.appConfig).onStepCompleted) === null || _e === void 0 ? void 0 : _e.call(_d, settings.data.activeScreen.name, { otp: params.otp });
185
187
  flows = [];
186
188
  if (!(board_info_password_status === 'completed')) return [3, 3];
187
189
  return [4, Promise.all([
@@ -189,7 +191,7 @@ export var verifyPasswordLeadOTP = createAsyncThunk('verifyPasswordLeadOTP', fun
189
191
  thunkApi.dispatch(retrieveBoardDetails({ boardId: board_id, individualId: recipient === null || recipient === void 0 ? void 0 : recipient.id, individualType: recipient === null || recipient === void 0 ? void 0 : recipient.type })).unwrap()
190
192
  ])];
191
193
  case 2:
192
- data_3 = (_h.sent())[0];
194
+ data_3 = (_g.sent())[0];
193
195
  flows = (data_3 === null || data_3 === void 0 ? void 0 : data_3.info) || [];
194
196
  thunkApi.dispatch(handleNextScreenStep('PASSWORD_SUCCESS_FOUR_FLOWS_BUTTONS_STEP'));
195
197
  return [3, 6];
@@ -197,13 +199,13 @@ export var verifyPasswordLeadOTP = createAsyncThunk('verifyPasswordLeadOTP', fun
197
199
  if (!!country_code) return [3, 5];
198
200
  return [4, API.boardService.retrieveBoardDetails(board_id)];
199
201
  case 4:
200
- data_4 = _h.sent();
201
- if ((_g = data_4 === null || data_4 === void 0 ? void 0 : data_4.entity) === null || _g === void 0 ? void 0 : _g.country)
202
+ data_4 = _g.sent();
203
+ if ((_f = data_4 === null || data_4 === void 0 ? void 0 : data_4.entity) === null || _f === void 0 ? void 0 : _f.country)
202
204
  thunkApi.dispatch(handleSetCountryByIso2(data_4.entity.country));
203
- _h.label = 5;
205
+ _g.label = 5;
204
206
  case 5:
205
207
  thunkApi.dispatch(handleNextScreenStep('PASSWORD_CREATE_PASSWORD_STEP'));
206
- _h.label = 6;
208
+ _g.label = 6;
207
209
  case 6: return [2, { data: data, formData: __assign({}, params), flows: flows }];
208
210
  }
209
211
  });
@@ -296,9 +298,9 @@ export var retrieveBoardStatus = createAsyncThunk('password/retrieveBoardStatus'
296
298
  }); });
297
299
  export var verifyOperationToken = createAsyncThunk('verifyOperationToken', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
298
300
  var token, boardId, boardInfoId, userId, userType, payload, data, countryIso2, publicKey, data_5;
299
- var _a, _b, _c;
300
- return __generator(this, function (_d) {
301
- switch (_d.label) {
301
+ var _a, _b;
302
+ return __generator(this, function (_c) {
303
+ switch (_c.label) {
302
304
  case 0:
303
305
  token = params.token, boardId = params.boardId, boardInfoId = params.boardInfoId, userId = params.userId, userType = params.userType;
304
306
  payload = {
@@ -307,22 +309,20 @@ export var verifyOperationToken = createAsyncThunk('verifyOperationToken', funct
307
309
  };
308
310
  return [4, API.authService.verifyAuth(payload)];
309
311
  case 1:
310
- data = (_d.sent()).data;
311
- if ((_a = data === null || data === void 0 ? void 0 : data.errors) === null || _a === void 0 ? void 0 : _a.length)
312
- throw new Error(data.errors[0].description);
312
+ data = _c.sent();
313
313
  countryIso2 = data === null || data === void 0 ? void 0 : data.country;
314
314
  if (countryIso2)
315
315
  thunkApi.dispatch(handleSetCountryByIso2(countryIso2));
316
- publicKey = (_b = data === null || data === void 0 ? void 0 : data.config) === null || _b === void 0 ? void 0 : _b.public_key;
316
+ publicKey = (_a = data === null || data === void 0 ? void 0 : data.config) === null || _a === void 0 ? void 0 : _a.public_key;
317
317
  if (publicKey)
318
318
  thunkApi.dispatch(handlePublicKey(publicKey));
319
319
  if (!!(data === null || data === void 0 ? void 0 : data.country)) return [3, 3];
320
320
  return [4, API.boardService.retrieveBoardDetails(boardId)];
321
321
  case 2:
322
- data_5 = _d.sent();
323
- if ((_c = data_5 === null || data_5 === void 0 ? void 0 : data_5.entity) === null || _c === void 0 ? void 0 : _c.country)
322
+ data_5 = _c.sent();
323
+ if ((_b = data_5 === null || data_5 === void 0 ? void 0 : data_5.entity) === null || _b === void 0 ? void 0 : _b.country)
324
324
  thunkApi.dispatch(handleSetCountryByIso2(data_5.entity.country));
325
- _d.label = 3;
325
+ _c.label = 3;
326
326
  case 3:
327
327
  thunkApi.dispatch(handleNextScreenStep('PASSWORD_CREATE_PASSWORD_STEP'));
328
328
  return [2, __assign({ data: data, token: token, boardId: boardId, boardInfoId: boardInfoId }, (userId &&
@@ -347,16 +347,16 @@ export var resendOperationOTP = createAsyncThunk('resendOperationOTPPassword', f
347
347
  };
348
348
  return [4, API.authService.verifyAuth(payload)];
349
349
  case 1:
350
- data = (_a.sent()).data;
350
+ data = _a.sent();
351
351
  return [2, { data: data }];
352
352
  }
353
353
  });
354
354
  }); });
355
355
  export var resetPassword = createAsyncThunk('resetPassword', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
356
356
  var _a, password, settings, responseBody, passwordData, payload, data;
357
- var _b, _c, _d;
358
- return __generator(this, function (_e) {
359
- switch (_e.label) {
357
+ var _b, _c;
358
+ return __generator(this, function (_d) {
359
+ switch (_d.label) {
360
360
  case 0:
361
361
  _a = thunkApi.getState(), password = _a.password, settings = _a.settings;
362
362
  responseBody = password.data.verify.responseBody;
@@ -371,15 +371,15 @@ export var resetPassword = createAsyncThunk('resetPassword', function (params, t
371
371
  },
372
372
  encryption_contract: ['user_credentail.otp', 'user_credentail.new_password']
373
373
  };
374
- return [4, API.authService.verifyAuth(payload)];
374
+ return [4, API.authService.verifyAuth(payload).catch(function (err) {
375
+ if (isAuthenticationVerificationFailed(err === null || err === void 0 ? void 0 : err.message))
376
+ thunkApi.dispatch(handleNextScreenStep('PASSWORD_OTP_VERIFY_SECURITY_ERROR_STEP'));
377
+ throw new Error(err === null || err === void 0 ? void 0 : err.message);
378
+ })];
375
379
  case 1:
376
- data = (_e.sent()).data;
377
- if ((_b = data === null || data === void 0 ? void 0 : data.errors) === null || _b === void 0 ? void 0 : _b.length)
378
- throw new Error(data.errors[0].description);
379
- if (!(data === null || data === void 0 ? void 0 : data.errors)) {
380
- sleep(100).then(function () { return thunkApi.dispatch(handleNextScreenStep('PASSWORD_SUCCESS_STEP')); });
381
- (_d = (_c = settings.data.appConfig).onStepCompleted) === null || _d === void 0 ? void 0 : _d.call(_c, settings.data.activeScreen.name, payload);
382
- }
380
+ data = _d.sent();
381
+ sleep(100).then(function () { return thunkApi.dispatch(handleNextScreenStep('PASSWORD_SUCCESS_STEP')); });
382
+ (_c = (_b = settings.data.appConfig).onStepCompleted) === null || _c === void 0 ? void 0 : _c.call(_b, settings.data.activeScreen.name, payload);
383
383
  return [2, { data: data, formData: __assign(__assign({}, params), passwordData) }];
384
384
  }
385
385
  });
@@ -511,9 +511,11 @@ export var passwordSlice = createSlice({
511
511
  flows: flows
512
512
  }));
513
513
  })
514
- .addCase(verifyPasswordLeadOTP.rejected, function (state, action) {
514
+ .addCase(verifyPasswordLeadOTP.rejected, function (state, _a) {
515
+ var message = _a.error.message;
515
516
  state.loading = false;
516
- state.error = action.error.message;
517
+ if (!isAuthenticationVerificationFailed(message))
518
+ state.error = message;
517
519
  })
518
520
  .addCase(createPassword.pending, function (state) {
519
521
  state.loading = true;
@@ -599,14 +601,8 @@ export var passwordSlice = createSlice({
599
601
  state.error = null;
600
602
  })
601
603
  .addCase(resendOperationOTP.fulfilled, function (state, action) {
602
- var _a;
603
604
  state.error = null;
604
605
  var data = action.payload.data;
605
- var description = (((_a = data === null || data === void 0 ? void 0 : data.errors) === null || _a === void 0 ? void 0 : _a[0]) || {}).description;
606
- if (description) {
607
- state.error = description;
608
- return;
609
- }
610
606
  state.data.verify.responseBody = __assign(__assign({}, state.data.verify.responseBody), data);
611
607
  })
612
608
  .addCase(resendOperationOTP.rejected, function (state, action) {
@@ -624,8 +620,10 @@ export var passwordSlice = createSlice({
624
620
  state.loading = true;
625
621
  state.error = null;
626
622
  })
627
- .addCase(resetPassword.rejected, function (state, action) {
628
- state.error = action.error.message;
623
+ .addCase(resetPassword.rejected, function (state, _a) {
624
+ var message = _a.error.message;
625
+ if (!isAuthenticationVerificationFailed(message))
626
+ state.error = message;
629
627
  state.loading = false;
630
628
  })
631
629
  .addCase(retrieveBoardResetPasswordSuccess.fulfilled, function (state, action) {
@@ -189,12 +189,10 @@ export var verifyAuthOTP = createAsyncThunk('signIn/verifyAuthOTP', function (pa
189
189
  };
190
190
  return [4, API.authService.verifyAuth(requestBody)];
191
191
  case 1:
192
- data = (_f.sent()).data;
193
- if (!data.errors) {
194
- (_c = (_b = settings.data.appConfig).onStepCompleted) === null || _c === void 0 ? void 0 : _c.call(_b, settings.data.activeScreen.name, { otp: params.otp });
195
- thunkApi.dispatch(handleOpen(false));
196
- (_e = (_d = settings.data.appConfig).onFlowCompleted) === null || _e === void 0 ? void 0 : _e.call(_d, data);
197
- }
192
+ data = _f.sent();
193
+ (_c = (_b = settings.data.appConfig).onStepCompleted) === null || _c === void 0 ? void 0 : _c.call(_b, settings.data.activeScreen.name, { otp: params.otp });
194
+ thunkApi.dispatch(handleOpen(false));
195
+ (_e = (_d = settings.data.appConfig).onFlowCompleted) === null || _e === void 0 ? void 0 : _e.call(_d, data);
198
196
  return [2, { data: data, formData: params }];
199
197
  }
200
198
  });
@@ -221,16 +219,14 @@ export var verifyAuthPassword = createAsyncThunk('signIn/verifyAuthPassword', fu
221
219
  };
222
220
  return [4, API.authService.verifyAuth(requestBody)];
223
221
  case 1:
224
- data = (_g.sent()).data;
225
- if (!data.errors) {
226
- (_d = (_c = settings.data.appConfig).onStepCompleted) === null || _d === void 0 ? void 0 : _d.call(_c, settings.data.activeScreen.name, { otp: params.password });
227
- if ((data === null || data === void 0 ? void 0 : data.status) === 'pending') {
228
- thunkApi.dispatch(handleNextScreenStep('SIGIN_OTP_STEP'));
229
- }
230
- else {
231
- thunkApi.dispatch(handleOpen(false));
232
- (_f = (_e = settings.data.appConfig).onFlowCompleted) === null || _f === void 0 ? void 0 : _f.call(_e, data);
233
- }
222
+ data = _g.sent();
223
+ (_d = (_c = settings.data.appConfig).onStepCompleted) === null || _d === void 0 ? void 0 : _d.call(_c, settings.data.activeScreen.name, { otp: params.password });
224
+ if ((data === null || data === void 0 ? void 0 : data.status) === 'pending') {
225
+ thunkApi.dispatch(handleNextScreenStep('SIGIN_OTP_STEP'));
226
+ }
227
+ else {
228
+ thunkApi.dispatch(handleOpen(false));
229
+ (_f = (_e = settings.data.appConfig).onFlowCompleted) === null || _f === void 0 ? void 0 : _f.call(_e, data);
234
230
  }
235
231
  return [2, data];
236
232
  }
@@ -51,7 +51,7 @@ import API from '../../../api';
51
51
  import { DocumentPurpose, FlowsTypes } from '../../../@types';
52
52
  import { handleNextScreenStep, handleCurrentActiveScreen, handleSetCountryByIso2, handlePrevScreenStep, handlePublicKey, onCloseComplete } from '../../../app/settings';
53
53
  import { TAX_STEP_NAMES } from '../../../constants';
54
- import { getRecentDocumentBasedOnPurpose, hasNoneEditableValue, retrieveIndividualData, sleep } from '../../../utils';
54
+ import { getRecentDocumentBasedOnPurpose, hasNoneEditableValue, isAuthenticationVerificationFailed, retrieveIndividualData, sleep } from '../../../utils';
55
55
  export var verifyLeadToken = createAsyncThunk('taxVerifyLeadToken', function (_a, thunkApi) {
56
56
  var token = _a.token, isInternally = _a.isInternally;
57
57
  return __awaiter(void 0, void 0, void 0, function () {
@@ -178,9 +178,9 @@ export var retrieveBoardDetails = createAsyncThunk('tax/retrieveBrandInfo', func
178
178
  });
179
179
  export var verifyTaxLeadOTP = createAsyncThunk('verifyTaxLeadOTP', function (params, thunkApi) { return __awaiter(void 0, void 0, void 0, function () {
180
180
  var _a, tax, settings, responseBody, payload, data, _b, config, entity_id, boardId, country_code, entityData, publicKey, countryIso2, data_2;
181
- var _c, _d, _e, _f, _g, _h;
182
- return __generator(this, function (_j) {
183
- switch (_j.label) {
181
+ var _c, _d, _e, _f, _g;
182
+ return __generator(this, function (_h) {
183
+ switch (_h.label) {
184
184
  case 0:
185
185
  _a = thunkApi.getState(), tax = _a.tax, settings = _a.settings;
186
186
  responseBody = tax.data.verify.responseBody;
@@ -191,11 +191,13 @@ export var verifyTaxLeadOTP = createAsyncThunk('verifyTaxLeadOTP', function (par
191
191
  step_name: TAX_STEP_NAMES.PHONE_AUTH,
192
192
  encryption_contract: ['data']
193
193
  };
194
- return [4, API.leadService.verifyLeadOTP(payload)];
194
+ return [4, API.leadService.verifyTokenOTP(payload).catch(function (err) {
195
+ if (isAuthenticationVerificationFailed(err === null || err === void 0 ? void 0 : err.message))
196
+ thunkApi.dispatch(handleNextScreenStep('TAX_OTP_VERIFY_SECURITY_ERROR_STEP'));
197
+ throw new Error(err === null || err === void 0 ? void 0 : err.message);
198
+ })];
195
199
  case 1:
196
- data = (_j.sent()).data;
197
- if ((_d = data.errors) === null || _d === void 0 ? void 0 : _d.length)
198
- throw new Error(data.errors[0].description);
200
+ data = _h.sent();
199
201
  _b = data || {}, config = _b.config, entity_id = _b.entity_id, boardId = _b.id, country_code = _b.country_code;
200
202
  entityData = undefined;
201
203
  publicKey = config === null || config === void 0 ? void 0 : config.public_key;
@@ -207,19 +209,19 @@ export var verifyTaxLeadOTP = createAsyncThunk('verifyTaxLeadOTP', function (par
207
209
  if (!!entity_id) return [3, 3];
208
210
  return [4, API.boardService.retrieveBoardDetails(boardId)];
209
211
  case 2:
210
- data_2 = _j.sent();
211
- if (!((_e = data_2 === null || data_2 === void 0 ? void 0 : data_2.entity) === null || _e === void 0 ? void 0 : _e.id))
212
+ data_2 = _h.sent();
213
+ if (!((_d = data_2 === null || data_2 === void 0 ? void 0 : data_2.entity) === null || _d === void 0 ? void 0 : _d.id))
212
214
  throw new Error('entity_id_missing');
213
215
  entityData = data_2;
214
216
  return [3, 5];
215
217
  case 3: return [4, API.entityService.retrieveEntity(entity_id)];
216
218
  case 4:
217
- entityData = _j.sent();
218
- _j.label = 5;
219
+ entityData = _h.sent();
220
+ _h.label = 5;
219
221
  case 5:
220
- if (!countryIso2 && ((_f = entityData === null || entityData === void 0 ? void 0 : entityData.entity) === null || _f === void 0 ? void 0 : _f.country))
222
+ if (!countryIso2 && ((_e = entityData === null || entityData === void 0 ? void 0 : entityData.entity) === null || _e === void 0 ? void 0 : _e.country))
221
223
  thunkApi.dispatch(handleSetCountryByIso2(entityData.entity.country));
222
- (_h = (_g = settings.data.appConfig).onStepCompleted) === null || _h === void 0 ? void 0 : _h.call(_g, settings.data.activeScreen.name, { otp: params.otp });
224
+ (_g = (_f = settings.data.appConfig).onStepCompleted) === null || _g === void 0 ? void 0 : _g.call(_f, settings.data.activeScreen.name, { otp: params.otp });
223
225
  sleep(100).then(function () { return thunkApi.dispatch(handleNextScreenStep('TAX_TAX_DETAILS_STEP')); });
224
226
  return [2, { data: data, entityData: entityData === null || entityData === void 0 ? void 0 : entityData.entity, formData: params }];
225
227
  }
@@ -426,9 +428,11 @@ export var taxSlice = createSlice({
426
428
  if (is_vat_acknowledged)
427
429
  state.data.taxData.confirmPolicy = is_vat_acknowledged;
428
430
  })
429
- .addCase(verifyTaxLeadOTP.rejected, function (state, action) {
431
+ .addCase(verifyTaxLeadOTP.rejected, function (state, _a) {
432
+ var message = _a.error.message;
430
433
  state.loading = false;
431
- state.error = action.error.message;
434
+ if (!isAuthenticationVerificationFailed(message))
435
+ state.error = message;
432
436
  })
433
437
  .addCase(updateTaxInfo.pending, function (state) {
434
438
  state.loading = true;
@@ -51,7 +51,7 @@ import { handlePublicKey, handleSetCountryByIso2, onCloseComplete } from '../../
51
51
  import { FlowsTypes } from '../../../@types';
52
52
  import { CONNECT_FLOWS, NAFATH_PACI_TIMEOUT_DURATION, SELECTED_POS_DEFAULT_INFO, SELECTED_TERMINAL_DEFAULT_INFO, TERMINAL_PUSH_NOTIFICATION_DURATION, TERMINAL_PUSH_NOTIFICATION_FAILED, TERMINAL_STEP_NAMES } from '../../../constants';
53
53
  import API from '../../../api';
54
- import { isNetworkError, isTimeoutError, retrieveIndividualData, sleep } from '../../../utils';
54
+ import { isAuthenticationVerificationFailed, isNetworkError, isTimeoutError, retrieveIndividualData, sleep } from '../../../utils';
55
55
  export var verifyToken = createAsyncThunk('terminal/verifyLeadToken', function (_a, thunkApi) {
56
56
  var token = _a.token, isInternally = _a.isInternally;
57
57
  return __awaiter(void 0, void 0, void 0, function () {
@@ -514,9 +514,11 @@ export var terminalSlice = createSlice({
514
514
  state.data.otpData = formData;
515
515
  state.data.responseData = { authData: data, boardData: { id: data === null || data === void 0 ? void 0 : data.id, board_info_id: data === null || data === void 0 ? void 0 : data.board_info_id }, terminalData: terminalData };
516
516
  })
517
- .addCase(verifyTokenOTP.rejected, function (state, action) {
517
+ .addCase(verifyTokenOTP.rejected, function (state, _a) {
518
+ var message = _a.error.message;
518
519
  state.loading = false;
519
- state.error = action.error.message;
520
+ if (!isAuthenticationVerificationFailed(message))
521
+ state.error = message;
520
522
  })
521
523
  .addCase(linkNewTerminal.pending, function (state) {
522
524
  state.loading = true;
@@ -17,7 +17,7 @@ import Collapse from '@mui/material/Collapse';
17
17
  import { yupResolver } from '@hookform/resolvers/yup';
18
18
  import { useAppDispatch, useAppSelector, useLanguage } from '../../../../hooks';
19
19
  import { handlePrevScreenStep, settingsSelector } from '../../../../app/settings';
20
- import { deepCopy, sendCustomEventToGTM } from '../../../../utils';
20
+ import { deepCopy, isSA, sendCustomEventToGTM } from '../../../../utils';
21
21
  import Form from '../../../../components/Form';
22
22
  import { ScreenContainer } from '../../../shared/Containers';
23
23
  import Button from '../../../shared/Button';
@@ -27,19 +27,22 @@ import BrandList from './BrandList';
27
27
  import EntityList from './EntityList';
28
28
  import EntityLegalName from './EntityLegalName';
29
29
  import LicenseNumber from './LicenseNumber';
30
- import LicenseType from './EntityLicenseType';
30
+ import EntityLicenseType from './EntityLicenseType';
31
31
  var ListType;
32
32
  (function (ListType) {
33
33
  ListType["BrandList"] = "BrandList";
34
34
  ListType["EntityList"] = "EntityList";
35
35
  })(ListType || (ListType = {}));
36
36
  var AuthenticationList = function (_a) {
37
+ var _b;
37
38
  var settingsData = useAppSelector(settingsSelector).data;
38
- var _b = useAppSelector(authSelector), data = _b.data, loading = _b.loading, error = _b.error;
39
- var _c = data.authenticationData, brandInfo = _c.brandInfo, entityInfo = _c.entityInfo;
40
- var _d = React.useState(), listActive = _d[0], setListActive = _d[1];
39
+ var _c = useAppSelector(authSelector), data = _c.data, loading = _c.loading, error = _c.error;
40
+ var _d = data.authenticationData, brandInfo = _d.brandInfo, entityInfo = _d.entityInfo;
41
+ var _e = React.useState(), listActive = _e[0], setListActive = _e[1];
41
42
  var brandList = (data.responseData || {}).brandList;
42
- var _e = React.useState(false), isAddEntity = _e[0], setIsAddEntity = _e[1];
43
+ var _f = React.useState(false), isAddEntity = _f[0], setIsAddEntity = _f[1];
44
+ var code = (_b = settingsData.businessCountry) === null || _b === void 0 ? void 0 : _b.iso2;
45
+ var isSACountry = React.useMemo(function () { return isSA(code); }, [code]);
43
46
  React.useEffect(function () {
44
47
  sendCustomEventToGTM({
45
48
  event: 'Send Event',
@@ -91,6 +94,6 @@ var AuthenticationList = function (_a) {
91
94
  };
92
95
  var isBrandList = listActive === ListType.BrandList;
93
96
  var isEntityList = listActive === ListType.EntityList;
94
- return (_jsx(ScreenContainer, { children: _jsx(FormProvider, __assign({}, methods, { children: _jsxs(Form, __assign({ onSubmit: methods.handleSubmit(onSubmit) }, { children: [_jsx(BrandList, { list: brandList || [], show: !isAddEntity && !isEntityList, onListOpen: function () { return handleMenuClick(ListType.BrandList); }, onListClose: function () { return handleMenuClick(); } }), _jsx(EntityList, { countryList: settingsData.countries || [], show: !isBrandList, onListOpen: function () { return handleMenuClick(ListType.EntityList); }, onListClose: function () { return handleMenuClick(); }, handleAddEntity: function (flag) { return setIsAddEntity(flag); } }), _jsxs(Collapse, __assign({ in: isAddEntity && !isBrandList && !isEntityList }, { children: [_jsx(EntityLegalName, {}), _jsx(LicenseType, {}), _jsx(LicenseNumber, {})] })), _jsx(Collapse, __assign({ in: !listActive, timeout: 500 }, { children: _jsx(Button, __assign({ onBackClicked: function () { return onBack(); }, disabled: disabled, isAr: isAr, error: t(error || ''), loading: loading }, { children: isAddEntity ? t('create_new_entity') : t('next') })) }))] })) })) }));
97
+ return (_jsx(ScreenContainer, { children: _jsx(FormProvider, __assign({}, methods, { children: _jsxs(Form, __assign({ onSubmit: methods.handleSubmit(onSubmit) }, { children: [_jsx(BrandList, { list: brandList || [], show: !isAddEntity && !isEntityList, onListOpen: function () { return handleMenuClick(ListType.BrandList); }, onListClose: function () { return handleMenuClick(); } }), _jsx(EntityList, { countryList: settingsData.countries || [], show: !isBrandList, onListOpen: function () { return handleMenuClick(ListType.EntityList); }, onListClose: function () { return handleMenuClick(); }, handleAddEntity: function (flag) { return setIsAddEntity(flag); } }), _jsxs(Collapse, __assign({ in: isAddEntity && !isBrandList && !isEntityList }, { children: [_jsx(EntityLegalName, {}), _jsx(EntityLicenseType, { show: isSACountry }), _jsx(LicenseNumber, {})] })), _jsx(Collapse, __assign({ in: !listActive, timeout: 500 }, { children: _jsx(Button, __assign({ onBackClicked: function () { return onBack(); }, disabled: disabled, isAr: isAr, error: t(error || ''), loading: loading }, { children: isAddEntity ? t('create_new_entity') : t('next') })) }))] })) })) }));
95
98
  };
96
99
  export default React.memo(AuthenticationList);
@@ -27,5 +27,8 @@ export declare const InfoOutlinedIconStyled: import("@emotion/styled").StyledCom
27
27
  } & import("@mui/material/OverridableComponent").CommonProps & Omit<Pick<React.SVGProps<SVGSVGElement>, "string" | "name" | "type" | "version" | "fr" | "in" | "className" | "style" | "display" | "overflow" | "visibility" | "order" | "color" | "width" | "height" | "fontFamily" | "fontSize" | "fontStyle" | "fontWeight" | "letterSpacing" | "clipPath" | "cursor" | "direction" | "filter" | "fontSizeAdjust" | "fontStretch" | "fontVariant" | "imageRendering" | "opacity" | "paintOrder" | "pointerEvents" | "rotate" | "scale" | "textRendering" | "transform" | "unicodeBidi" | "wordSpacing" | "writingMode" | "mask" | "offset" | "textDecoration" | "azimuth" | "clip" | "alignmentBaseline" | "baselineShift" | "clipRule" | "colorInterpolation" | "colorRendering" | "dominantBaseline" | "fill" | "fillOpacity" | "fillRule" | "floodColor" | "floodOpacity" | "glyphOrientationVertical" | "lightingColor" | "markerEnd" | "markerMid" | "markerStart" | "shapeRendering" | "stopColor" | "stopOpacity" | "stroke" | "strokeDasharray" | "strokeDashoffset" | "strokeLinecap" | "strokeLinejoin" | "strokeMiterlimit" | "strokeOpacity" | "strokeWidth" | "textAnchor" | "vectorEffect" | "path" | "children" | "key" | "id" | "lang" | "tabIndex" | "role" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "mode" | "end" | "values" | "local" | "x" | "y" | "alphabetic" | "hanging" | "ideographic" | "mathematical" | "origin" | "method" | "operator" | "spacing" | "elevation" | "max" | "href" | "orientation" | "media" | "target" | "min" | "viewBox" | "crossOrigin" | "accentHeight" | "accumulate" | "additive" | "allowReorder" | "amplitude" | "arabicForm" | "ascent" | "attributeName" | "attributeType" | "autoReverse" | "baseFrequency" | "baseProfile" | "bbox" | "begin" | "bias" | "by" | "calcMode" | "capHeight" | "clipPathUnits" | "colorInterpolationFilters" | "colorProfile" | "contentScriptType" | "contentStyleType" | "cx" | "cy" | "d" | "decelerate" | "descent" | "diffuseConstant" | "divisor" | "dur" | "dx" | "dy" | "edgeMode" | "enableBackground" | "exponent" | "externalResourcesRequired" | "filterRes" | "filterUnits" | "focusable" | "format" | "from" | "fx" | "fy" | "g1" | "g2" | "glyphName" | "glyphOrientationHorizontal" | "glyphRef" | "gradientTransform" | "gradientUnits" | "horizAdvX" | "horizOriginX" | "in2" | "intercept" | "k1" | "k2" | "k3" | "k4" | "k" | "kernelMatrix" | "kernelUnitLength" | "kerning" | "keyPoints" | "keySplines" | "keyTimes" | "lengthAdjust" | "limitingConeAngle" | "markerHeight" | "markerUnits" | "markerWidth" | "maskContentUnits" | "maskUnits" | "numOctaves" | "orient" | "overlinePosition" | "overlineThickness" | "panose1" | "pathLength" | "patternContentUnits" | "patternTransform" | "patternUnits" | "points" | "pointsAtX" | "pointsAtY" | "pointsAtZ" | "preserveAlpha" | "preserveAspectRatio" | "primitiveUnits" | "r" | "radius" | "refX" | "refY" | "renderingIntent" | "repeatCount" | "repeatDur" | "requiredExtensions" | "requiredFeatures" | "restart" | "result" | "rx" | "ry" | "seed" | "slope" | "specularConstant" | "specularExponent" | "speed" | "spreadMethod" | "startOffset" | "stdDeviation" | "stemh" | "stemv" | "stitchTiles" | "strikethroughPosition" | "strikethroughThickness" | "surfaceScale" | "systemLanguage" | "tableValues" | "targetX" | "targetY" | "textLength" | "to" | "u1" | "u2" | "underlinePosition" | "underlineThickness" | "unicode" | "unicodeRange" | "unitsPerEm" | "vAlphabetic" | "vertAdvY" | "vertOriginX" | "vertOriginY" | "vHanging" | "vIdeographic" | "viewTarget" | "vMathematical" | "widths" | "x1" | "x2" | "xChannelSelector" | "xHeight" | "xlinkActuate" | "xlinkArcrole" | "xlinkHref" | "xlinkRole" | "xlinkShow" | "xlinkTitle" | "xlinkType" | "xmlBase" | "xmlLang" | "xmlns" | "xmlnsXlink" | "xmlSpace" | "y1" | "y2" | "yChannelSelector" | "z" | "zoomAndPan"> & {
28
28
  ref?: ((instance: SVGSVGElement | null) => void) | React.RefObject<SVGSVGElement> | null | undefined;
29
29
  }, keyof import("@mui/material/OverridableComponent").CommonProps | "color" | "fontSize" | "shapeRendering" | "children" | "sx" | "htmlColor" | "inheritViewBox" | "titleAccess" | "viewBox"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme>, {}, {}>;
30
- declare const Type: () => JSX.Element;
30
+ declare type TypeProps = {
31
+ show: boolean;
32
+ };
33
+ declare const Type: ({ show }: TypeProps) => JSX.Element;
31
34
  export default Type;
@@ -26,6 +26,7 @@ import Tooltip from '../../../../components/Tooltip';
26
26
  import Radio from '../../../../components/Radio';
27
27
  import { clearError, authSelector } from '../../../app/auth/authStore';
28
28
  import { useAppDispatch, useAppSelector } from '../../../../hooks';
29
+ import Collapse from '../../../../components/Collapse';
29
30
  var LabelTextStyled = styled(Text)(function (_a) {
30
31
  var theme = _a.theme;
31
32
  return (__assign(__assign({}, theme.typography.caption), { color: alpha(theme.palette.text.primary, 0.6), marginBlockEnd: theme.spacing(0.625) }));
@@ -70,12 +71,13 @@ export var InfoOutlinedIconStyled = styled(InfoOutlinedIcon)(function (_a) {
70
71
  display: 'inline-flex'
71
72
  });
72
73
  });
73
- var Type = function () {
74
+ var Type = function (_a) {
75
+ var show = _a.show;
74
76
  var t = useTranslation().t;
75
77
  var control = useFormContext().control;
76
78
  var error = useAppSelector(authSelector).error;
77
- var _a = React.useState(false), isCRHovered = _a[0], setIsCRHovered = _a[1];
78
- var _b = React.useState(false), isFLHovered = _b[0], setIsFLHovered = _b[1];
79
+ var _b = React.useState(false), isCRHovered = _b[0], setIsCRHovered = _b[1];
80
+ var _c = React.useState(false), isFLHovered = _c[0], setIsFLHovered = _c[1];
79
81
  var typeControl = useController({ control: control, name: 'licenseType' });
80
82
  var dispatch = useAppDispatch();
81
83
  var handleOnChange = function (_a) {
@@ -85,6 +87,6 @@ var Type = function () {
85
87
  typeControl.field.onChange(target.value);
86
88
  };
87
89
  var typeValue = typeControl.field.value;
88
- return (_jsxs(ScreenContainer, __assign({ sx: { pb: 1.5, pl: 2.5, pr: 2.5 } }, { children: [_jsxs(LabelTextStyled, { children: [t('signup_business_type_label'), _jsx(Mandatory, {})] }), _jsxs(RadioGroupStyled, __assign({ value: typeValue ? (typeValue === LicenseType.FL ? LicenseType.FL : LicenseType.CR) : false, onChange: handleOnChange }, { children: [_jsx(RadioLabel, { value: LicenseType.FL, label: _jsxs(LabelStyled, { children: [t('homemaker_reg'), _jsx(Tooltip, __assign({ title: t('homemaker_reg_hint'), onMouseOver: function () { return setIsFLHovered(true); }, onMouseLeave: function () { return setIsFLHovered(false); }, onTouchStartCapture: function () { return setIsFLHovered(true); } }, { children: isFLHovered ? _jsx(InfoIconStyled, {}) : _jsx(InfoOutlinedIconStyled, {}) }))] }), control: _jsx(RadioStyled, { color: 'primary', disableFocusRipple: true, disableRipple: true, disableTouchRipple: true, focusRipple: false }) }), _jsx(RadioLabel, { value: LicenseType.CR, sx: { marginInlineEnd: '0px' }, label: _jsxs(LabelStyled, { children: [t('commercial_reg'), _jsx(Tooltip, __assign({ title: t('commercial_reg_hint'), onMouseOver: function () { return setIsCRHovered(true); }, onMouseLeave: function () { return setIsCRHovered(false); }, onTouchStartCapture: function () { return setIsCRHovered(true); } }, { children: isCRHovered ? _jsx(InfoIconStyled, {}) : _jsx(InfoOutlinedIconStyled, {}) }))] }), control: _jsx(RadioStyled, { color: 'primary', disableFocusRipple: true, disableRipple: true, disableTouchRipple: true, focusRipple: false }) })] }))] })));
90
+ return (_jsx(Collapse, __assign({ in: show }, { children: _jsxs(ScreenContainer, __assign({ sx: { pb: 1.5, pl: 2.5, pr: 2.5 } }, { children: [_jsxs(LabelTextStyled, { children: [t('signup_business_type_label'), _jsx(Mandatory, {})] }), _jsxs(RadioGroupStyled, __assign({ value: typeValue ? (typeValue === LicenseType.FL ? LicenseType.FL : LicenseType.CR) : false, onChange: handleOnChange }, { children: [_jsx(RadioLabel, { value: LicenseType.FL, label: _jsxs(LabelStyled, { children: [t('homemaker_reg'), _jsx(Tooltip, __assign({ title: t('homemaker_reg_hint'), onMouseOver: function () { return setIsFLHovered(true); }, onMouseLeave: function () { return setIsFLHovered(false); }, onTouchStartCapture: function () { return setIsFLHovered(true); } }, { children: isFLHovered ? _jsx(InfoIconStyled, {}) : _jsx(InfoOutlinedIconStyled, {}) }))] }), control: _jsx(RadioStyled, { color: 'primary', disableFocusRipple: true, disableRipple: true, disableTouchRipple: true, focusRipple: false }) }), _jsx(RadioLabel, { value: LicenseType.CR, sx: { marginInlineEnd: '0px' }, label: _jsxs(LabelStyled, { children: [t('commercial_reg'), _jsx(Tooltip, __assign({ title: t('commercial_reg_hint'), onMouseOver: function () { return setIsCRHovered(true); }, onMouseLeave: function () { return setIsCRHovered(false); }, onTouchStartCapture: function () { return setIsCRHovered(true); } }, { children: isCRHovered ? _jsx(InfoIconStyled, {}) : _jsx(InfoOutlinedIconStyled, {}) }))] }), control: _jsx(RadioStyled, { color: 'primary', disableFocusRipple: true, disableRipple: true, disableTouchRipple: true, focusRipple: false }) })] }))] })) })));
89
91
  };
90
92
  export default Type;
@@ -43,9 +43,12 @@ import SimpleList from '../../../../components/SimpleList';
43
43
  import Text from '../../../../components/Text';
44
44
  import ExpandIcon from '../../../../components/ExpandIcon';
45
45
  import Collapse from '../../../../components/Collapse';
46
+ import { LicenseType } from '../../../../@types';
46
47
  import Icon from '../../../../components/Icon';
47
48
  import { authSelector } from '../../../app/auth/authStore';
48
49
  import { ADD_ENTITY } from '../../../../constants';
50
+ import { settingsSelector } from '../../../../app/settings';
51
+ import { isSA } from '../../../../utils';
49
52
  var EntityContainer = styled(Box)(function () { return ({
50
53
  display: 'flex',
51
54
  alignItems: 'center'
@@ -74,6 +77,8 @@ var EntityList = function (_a) {
74
77
  var entityList = ((_b = data.responseData) === null || _b === void 0 ? void 0 : _b.entityList) || [];
75
78
  var selectedEntityControl = useController({ control: control, name: 'entityInfo' });
76
79
  var selectedEntity = selectedEntityControl.field.value;
80
+ var businessCountry = useAppSelector(settingsSelector).data.businessCountry;
81
+ var isSACountry = React.useMemo(function () { return isSA(businessCountry === null || businessCountry === void 0 ? void 0 : businessCountry.iso2); }, [businessCountry === null || businessCountry === void 0 ? void 0 : businessCountry.iso2]);
77
82
  React.useEffect(function () {
78
83
  if (entityList.length > 0) {
79
84
  var filteredEntityList = entityList.filter(function (entity) { return (brandInfo === null || brandInfo === void 0 ? void 0 : brandInfo.business_id) && entity.business_id === brandInfo.business_id; }) || [];
@@ -121,8 +126,11 @@ var EntityList = function (_a) {
121
126
  };
122
127
  var onSelectItem = function (entity) {
123
128
  selectedEntityControl.field.onChange(entity);
124
- if (entity.id === ADD_ENTITY)
129
+ if (entity.id === ADD_ENTITY) {
130
+ if (!isSACountry)
131
+ setValue('licenseType', LicenseType.CR);
125
132
  handleAddEntity === null || handleAddEntity === void 0 ? void 0 : handleAddEntity(true);
133
+ }
126
134
  else {
127
135
  setValue('licenseNumber', '');
128
136
  setValue('legalName', '');
@@ -23,7 +23,7 @@ import ScreenContainer from '../../../shared/Containers/ScreenContainer';
23
23
  import { businessSelector, clearError, updateLeadBusinessType } from '../../../app/business/businessStore';
24
24
  import { BusinessType as Type } from '../../../../@types';
25
25
  import Button from '../../../shared/Button';
26
- import { deepCopy, isKW, isOtherLicense, isOtherThanKWOrSA, isSA, sendCustomEventToGTM } from '../../../../utils';
26
+ import { deepCopy, isKW, isOtherLicense, isSA, sendCustomEventToGTM } from '../../../../utils';
27
27
  import { KWLicenseValidationSchema, LicenseValidationSchema, OtherCountryLicenseValidationSchema } from './validation';
28
28
  import LicenseList from './LicenseList';
29
29
  import LicenseCertificate from './LicenseCertificate';
@@ -60,7 +60,6 @@ var BusinessType = function (_a) {
60
60
  };
61
61
  var isSACountry = React.useMemo(function () { return isSA(settingsData.businessCountry.iso2); }, [settingsData.businessCountry.iso2]);
62
62
  var isKWCountry = React.useMemo(function () { return isKW(settingsData.businessCountry.iso2); }, [settingsData.businessCountry.iso2]);
63
- var isOtherCountry = React.useMemo(function () { return isOtherThanKWOrSA(settingsData.businessCountry.iso2); }, [settingsData.businessCountry.iso2]);
64
63
  var getSchema = function () {
65
64
  if (isSACountry)
66
65
  return LicenseValidationSchema;
@@ -116,7 +115,7 @@ var BusinessType = function (_a) {
116
115
  var isCR = (selected === null || selected === void 0 ? void 0 : selected.type) === Type.CR;
117
116
  var isFL = (selected === null || selected === void 0 ? void 0 : selected.type) === Type.FL;
118
117
  var hasEntityList = !!(entityLicenseList === null || entityLicenseList === void 0 ? void 0 : entityLicenseList.length);
119
- var showLicenseList = hasEntityList ? (isSACountry || isOtherCountry) && isOtherLicense(selectedLicenseEntity) : isSACountry || isOtherCountry;
118
+ var showLicenseList = hasEntityList ? isSACountry && isOtherLicense(selectedLicenseEntity) : isSACountry;
120
119
  var showEntityList = isKWCountry ? hasEntityList && !isLicenseListActive && isCR : hasEntityList && !isLicenseListActive;
121
120
  var disabled = !methods.formState.isValid || uploading || uploadingArticle;
122
121
  var disableBack = !data.otpData.isNID;
@@ -37,7 +37,7 @@ import Text from '../../../../components/Text';
37
37
  import ExpandIcon from '../../../../components/ExpandIcon';
38
38
  import Collapse from '../../../../components/Collapse';
39
39
  import { isKW, isOtherLicense, isSA } from '../../../../utils';
40
- import { OTHER_CR_LICENSE, OTHER_FL_LICENSE } from '../../../../constants';
40
+ import { OTHER_CR_LICENSE } from '../../../../constants';
41
41
  import { settingsSelector } from '../../../../app/settings';
42
42
  var InputStyled = styled(InputSelect)(function (_a) {
43
43
  var theme = _a.theme;
@@ -91,10 +91,10 @@ var LicenseList = function (_a) {
91
91
  }, [licenseList, selectedLicense]);
92
92
  React.useEffect(function () {
93
93
  if (!!country_code) {
94
- var isKWCountry = isKW(country_code);
95
- if (isKWCountry) {
96
- var license = (selectedLicense === null || selectedLicense === void 0 ? void 0 : selectedLicense.type) === BusinessType.CR ? OTHER_CR_LICENSE : OTHER_FL_LICENSE;
97
- setValue('selectedLicense', license, { shouldValidate: true });
94
+ if (!isSA(country_code)) {
95
+ setValue('selectedLicense', OTHER_CR_LICENSE, { shouldValidate: true });
96
+ }
97
+ if (isKW(country_code)) {
98
98
  setValue('entityLegalName', entityLegalName, { shouldValidate: true });
99
99
  }
100
100
  }