ordering-ui-react-native 0.16.49 → 0.16.50-release

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 (205) hide show
  1. package/package.json +6 -5
  2. package/src/DeliveryApp.tsx +43 -1
  3. package/src/components/ActiveOrders/index.tsx +61 -63
  4. package/src/components/ActiveOrders/styles.tsx +8 -14
  5. package/src/components/BusinessInformation/index.tsx +33 -4
  6. package/src/components/BusinessInformation/styles.tsx +2 -2
  7. package/src/components/BusinessProductsList/index.tsx +10 -10
  8. package/src/components/BusinessesListing/index.tsx +1 -1
  9. package/src/components/Checkout/index.tsx +2 -1
  10. package/src/components/LanguageSelector/index.tsx +21 -16
  11. package/src/components/Messages/index.tsx +2 -2
  12. package/src/components/NotificationSetting/index.tsx +85 -0
  13. package/src/components/OrdersOption/index.tsx +54 -56
  14. package/src/components/PaymentOptions/index.tsx +298 -345
  15. package/src/components/PaymentOptionsWebView/index.tsx +120 -121
  16. package/src/components/ReviewProducts/index.tsx +11 -0
  17. package/src/components/SingleProductReview/index.tsx +8 -5
  18. package/src/components/StripeElementsForm/index.tsx +25 -16
  19. package/src/components/VerifyPhone/styles.tsx +1 -2
  20. package/src/components/shared/OBottomPopup.tsx +6 -2
  21. package/src/components/shared/OToast.tsx +4 -4
  22. package/src/index.tsx +2 -0
  23. package/src/types/@fatnlazycat/react-native-recaptcha-v3/index.d.ts +1 -0
  24. package/src/utils/index.tsx +2 -1
  25. package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +259 -238
  26. package/themes/business/src/components/AcceptOrRejectOrder/styles.tsx +6 -4
  27. package/themes/business/src/components/BusinessController/index.tsx +2 -2
  28. package/themes/business/src/components/Chat/index.tsx +40 -32
  29. package/themes/business/src/components/DriverMap/index.tsx +7 -5
  30. package/themes/business/src/components/DriverSchedule/index.tsx +36 -19
  31. package/themes/business/src/components/LoginForm/index.tsx +111 -74
  32. package/themes/business/src/components/MapView/index.tsx +12 -1
  33. package/themes/business/src/components/MessagesOption/index.tsx +11 -1
  34. package/themes/business/src/components/NewOrderNotification/index.tsx +26 -41
  35. package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +40 -30
  36. package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +3 -3
  37. package/themes/business/src/components/OrdersListManager/index.tsx +10 -3
  38. package/themes/business/src/components/OrdersOption/index.tsx +76 -77
  39. package/themes/business/src/components/OrdersOption/styles.tsx +5 -1
  40. package/themes/business/src/components/OrdersOptionBusiness/index.tsx +15 -1
  41. package/themes/business/src/components/OrdersOptionCity/index.tsx +15 -1
  42. package/themes/business/src/components/OrdersOptionDate/index.tsx +19 -6
  43. package/themes/business/src/components/OrdersOptionDelivery/index.tsx +15 -1
  44. package/themes/business/src/components/OrdersOptionDriver/index.tsx +15 -1
  45. package/themes/business/src/components/OrdersOptionPaymethod/index.tsx +15 -1
  46. package/themes/business/src/components/OrdersOptionStatus/index.tsx +10 -1
  47. package/themes/business/src/components/PreviousMessages/index.tsx +17 -18
  48. package/themes/business/src/components/PreviousOrders/OrderItem.tsx +250 -0
  49. package/themes/business/src/components/PreviousOrders/OrdersGroupedItem.tsx +115 -0
  50. package/themes/business/src/components/PreviousOrders/index.tsx +332 -244
  51. package/themes/business/src/components/PreviousOrders/styles.tsx +30 -2
  52. package/themes/business/src/components/ProductItemAccordion/index.tsx +3 -2
  53. package/themes/business/src/components/ReviewCustomer/index.tsx +39 -15
  54. package/themes/business/src/components/ScheduleBlocked/index.tsx +2 -2
  55. package/themes/business/src/components/UserFormDetails/index.tsx +5 -2
  56. package/themes/business/src/components/UserProfileForm/index.tsx +2 -0
  57. package/themes/business/src/components/shared/ODropDown.tsx +42 -8
  58. package/themes/business/src/components/shared/ODropDownCalendar.tsx +36 -7
  59. package/themes/business/src/components/shared/OLink.tsx +24 -12
  60. package/themes/business/src/components/shared/OText.tsx +3 -2
  61. package/themes/business/src/types/index.tsx +25 -11
  62. package/themes/business/src/utils/index.tsx +10 -0
  63. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  64. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  65. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  66. package/themes/kiosk/src/components/BusinessesListing/index.tsx +2 -1
  67. package/themes/kiosk/src/components/Checkout/index.tsx +6 -0
  68. package/themes/kiosk/src/components/LoginForm/index.tsx +121 -10
  69. package/themes/kiosk/src/components/LoginForm/styles.tsx +5 -0
  70. package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
  71. package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
  72. package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
  73. package/themes/kiosk/src/components/ProductForm/index.tsx +1 -14
  74. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  75. package/themes/kiosk/src/types/index.d.ts +2 -0
  76. package/themes/original/index.tsx +8 -0
  77. package/themes/original/src/components/AddressDetails/index.tsx +10 -8
  78. package/themes/original/src/components/AddressForm/index.tsx +157 -140
  79. package/themes/original/src/components/AddressList/index.tsx +1 -1
  80. package/themes/original/src/components/AppleLogin/index.tsx +4 -4
  81. package/themes/original/src/components/BusinessBasicInformation/index.tsx +218 -147
  82. package/themes/original/src/components/BusinessBasicInformation/styles.tsx +2 -2
  83. package/themes/original/src/components/BusinessController/index.tsx +203 -94
  84. package/themes/original/src/components/BusinessController/styles.tsx +14 -9
  85. package/themes/original/src/components/BusinessInformation/index.tsx +10 -31
  86. package/themes/original/src/components/BusinessItemAccordion/index.tsx +12 -6
  87. package/themes/original/src/components/BusinessListingSearch/BusinessControllerSkeletons/index.tsx +57 -0
  88. package/themes/original/src/components/BusinessListingSearch/MaxSectionItem/index.tsx +59 -0
  89. package/themes/original/src/components/BusinessListingSearch/MaxSectionItem/styles.tsx +13 -0
  90. package/themes/original/src/components/BusinessListingSearch/index.tsx +85 -137
  91. package/themes/original/src/components/BusinessListingSearch/styles.tsx +10 -12
  92. package/themes/original/src/components/BusinessProductsList/SubcategoriesComponent/index.tsx +87 -0
  93. package/themes/original/src/components/BusinessProductsList/SubcategoriesComponent/styles.tsx +12 -0
  94. package/themes/original/src/components/BusinessProductsList/index.tsx +59 -60
  95. package/themes/original/src/components/BusinessProductsList/styles.tsx +0 -3
  96. package/themes/original/src/components/BusinessProductsListing/index.tsx +179 -83
  97. package/themes/original/src/components/BusinessProductsListing/styles.tsx +19 -12
  98. package/themes/original/src/components/BusinessTypeFilter/index.tsx +3 -2
  99. package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +15 -4
  100. package/themes/original/src/components/BusinessesListing/Layout/Appointment/styles.tsx +3 -2
  101. package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +276 -122
  102. package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +48 -11
  103. package/themes/original/src/components/BusinessesListing/index.tsx +82 -28
  104. package/themes/original/src/components/Cart/index.tsx +82 -15
  105. package/themes/original/src/components/Cart/styles.tsx +4 -0
  106. package/themes/original/src/components/CartContent/index.tsx +27 -17
  107. package/themes/original/src/components/CartContent/styles.tsx +1 -1
  108. package/themes/original/src/components/Checkout/index.tsx +114 -118
  109. package/themes/original/src/components/Checkout/styles.tsx +4 -3
  110. package/themes/original/src/components/CitiesControl/index.tsx +89 -0
  111. package/themes/original/src/components/CitiesControl/styles.tsx +17 -0
  112. package/themes/original/src/components/DriverTips/index.tsx +4 -4
  113. package/themes/original/src/components/DriverTips/styles.tsx +2 -1
  114. package/themes/original/src/components/FavoriteList/index.tsx +69 -45
  115. package/themes/original/src/components/FloatingButton/index.tsx +13 -11
  116. package/themes/original/src/components/FloatingButton/styles.tsx +1 -1
  117. package/themes/original/src/components/GPSButton/index.tsx +20 -19
  118. package/themes/original/src/components/GPSButton/styles.ts +3 -3
  119. package/themes/original/src/components/GoogleMap/index.tsx +20 -12
  120. package/themes/original/src/components/HelpAccountAndPayment/index.tsx +25 -10
  121. package/themes/original/src/components/HelpAccountAndPayment/styles.tsx +4 -0
  122. package/themes/original/src/components/HelpGuide/index.tsx +9 -8
  123. package/themes/original/src/components/HelpOrder/index.tsx +9 -8
  124. package/themes/original/src/components/LanguageSelector/index.tsx +19 -14
  125. package/themes/original/src/components/LoginForm/Otp/index.tsx +89 -73
  126. package/themes/original/src/components/LoginForm/Otp/styles.tsx +0 -1
  127. package/themes/original/src/components/LoginForm/index.tsx +98 -41
  128. package/themes/original/src/components/LottieAnimation/index.tsx +69 -0
  129. package/themes/original/src/components/Messages/index.tsx +35 -20
  130. package/themes/original/src/components/MomentOption/index.tsx +8 -6
  131. package/themes/original/src/components/MultiCart/index.tsx +63 -0
  132. package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +92 -93
  133. package/themes/original/src/components/MultiCheckout/index.tsx +10 -2
  134. package/themes/original/src/components/MultiOrdersDetails/index.tsx +34 -16
  135. package/themes/original/src/components/MyOrders/index.tsx +88 -24
  136. package/themes/original/src/components/NavBar/index.tsx +11 -5
  137. package/themes/original/src/components/NetworkError/index.tsx +5 -3
  138. package/themes/original/src/components/NotFoundSource/index.tsx +2 -1
  139. package/themes/original/src/components/Notifications/index.tsx +148 -0
  140. package/themes/original/src/components/Notifications/styles.tsx +17 -0
  141. package/themes/original/src/components/OrderDetails/index.tsx +162 -50
  142. package/themes/original/src/components/OrderDetails/styles.tsx +15 -2
  143. package/themes/original/src/components/OrderItAgain/index.tsx +75 -0
  144. package/themes/original/src/components/OrderItAgain/styles.tsx +10 -0
  145. package/themes/original/src/components/OrderProgress/index.tsx +77 -66
  146. package/themes/original/src/components/OrderProgress/styles.tsx +5 -0
  147. package/themes/original/src/components/OrderSummary/index.tsx +2 -35
  148. package/themes/original/src/components/OrderTypeSelector/index.tsx +85 -36
  149. package/themes/original/src/components/OrderTypeSelector/styles.tsx +19 -1
  150. package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/index.tsx +94 -98
  151. package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/index.tsx +3 -0
  152. package/themes/original/src/components/OrdersOption/index.tsx +91 -53
  153. package/themes/original/src/components/PaymentOptionWallet/index.tsx +56 -56
  154. package/themes/original/src/components/PaymentOptions/index.tsx +1 -2
  155. package/themes/original/src/components/PhoneInputNumber/index.tsx +1 -1
  156. package/themes/original/src/components/PlaceSpot/index.tsx +249 -47
  157. package/themes/original/src/components/PlaceSpot/styles.tsx +0 -2
  158. package/themes/original/src/components/PreviousOrders/index.tsx +3 -2
  159. package/themes/original/src/components/ProductForm/index.tsx +645 -664
  160. package/themes/original/src/components/ProductForm/styles.tsx +10 -11
  161. package/themes/original/src/components/ProductItemAccordion/index.tsx +199 -128
  162. package/themes/original/src/components/ProductOption/index.tsx +1 -1
  163. package/themes/original/src/components/ProductOptionSubOption/index.tsx +16 -8
  164. package/themes/original/src/components/ProductOptionSubOption/styles.tsx +0 -1
  165. package/themes/original/src/components/ProfessionalFilter/index.tsx +2 -1
  166. package/themes/original/src/components/ProfessionalProfile/index.tsx +19 -8
  167. package/themes/original/src/components/Promotions/index.tsx +232 -219
  168. package/themes/original/src/components/Promotions/styles.tsx +7 -2
  169. package/themes/original/src/components/ReviewDriver/index.tsx +3 -3
  170. package/themes/original/src/components/ReviewOrder/index.tsx +120 -108
  171. package/themes/original/src/components/ReviewOrder/styles.tsx +5 -7
  172. package/themes/original/src/components/ReviewProducts/index.tsx +8 -5
  173. package/themes/original/src/components/ReviewTrigger/index.tsx +136 -0
  174. package/themes/original/src/components/ReviewTrigger/styles.tsx +41 -0
  175. package/themes/original/src/components/ScheduleAccordion/index.tsx +68 -0
  176. package/themes/original/src/components/ScheduleAccordion/styles.tsx +14 -0
  177. package/themes/original/src/components/ServiceForm/index.tsx +341 -267
  178. package/themes/original/src/components/SignupForm/index.tsx +160 -113
  179. package/themes/original/src/components/SingleOrderCard/index.tsx +219 -129
  180. package/themes/original/src/components/SingleOrderCard/styles.tsx +10 -8
  181. package/themes/original/src/components/SingleProductCard/index.tsx +182 -105
  182. package/themes/original/src/components/SingleProductCard/styles.tsx +3 -10
  183. package/themes/original/src/components/SingleProductReview/index.tsx +38 -5
  184. package/themes/original/src/components/SingleProductReview/styles.tsx +12 -0
  185. package/themes/original/src/components/StripeElementsForm/index.tsx +13 -2
  186. package/themes/original/src/components/UpsellingProducts/index.tsx +15 -5
  187. package/themes/original/src/components/UserDetails/index.tsx +5 -3
  188. package/themes/original/src/components/UserFormDetails/index.tsx +6 -48
  189. package/themes/original/src/components/UserProfile/index.tsx +58 -35
  190. package/themes/original/src/components/UserProfile/styles.ts +17 -0
  191. package/themes/original/src/components/WalletTransactions/index.tsx +76 -0
  192. package/themes/original/src/components/WalletTransactions/styles.tsx +13 -0
  193. package/themes/original/src/components/Wallets/index.tsx +176 -164
  194. package/themes/original/src/components/Wallets/styles.tsx +12 -8
  195. package/themes/original/src/components/shared/CardAnimation.tsx +47 -0
  196. package/themes/original/src/components/shared/HeaderTitle.tsx +8 -3
  197. package/themes/original/src/components/shared/OBottomPopup.tsx +48 -15
  198. package/themes/original/src/components/shared/OButton.tsx +10 -3
  199. package/themes/original/src/components/shared/OIcon.tsx +8 -1
  200. package/themes/original/src/components/shared/OInput.tsx +10 -1
  201. package/themes/original/src/layouts/Container.tsx +13 -9
  202. package/themes/original/src/layouts/FloatingBottomContainer.tsx +5 -1
  203. package/themes/original/src/types/index.tsx +86 -28
  204. package/themes/original/src/utils/index.tsx +103 -58
  205. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
@@ -1,5 +1,5 @@
1
1
  import React, { useEffect, useRef, useState } from 'react';
2
- import { View, Pressable, StyleSheet, Linking, Platform, TouchableOpacity } from 'react-native';
2
+ import { View, Pressable, StyleSheet, Linking, Platform, TouchableOpacity, Vibration } from 'react-native';
3
3
  import { useForm, Controller } from 'react-hook-form';
4
4
  import Spinner from 'react-native-loading-spinner-overlay';
5
5
  import MaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityIcons';
@@ -7,6 +7,7 @@ import CheckBox from '@react-native-community/checkbox';
7
7
  import { PhoneInputNumber } from '../PhoneInputNumber';
8
8
  import { FacebookLogin } from '../FacebookLogin';
9
9
  import Recaptcha from 'react-native-recaptcha-that-works'
10
+ import ReCaptcha from '@fatnlazycat/react-native-recaptcha-v3'
10
11
 
11
12
  import {
12
13
  SignupForm as SignUpController,
@@ -244,6 +245,7 @@ const SignupFormUI = (props: SignupParams) => {
244
245
  const onSubmit = (values?: any) => {
245
246
  if (phoneInputData.error && signUpTab !== 'otpEmail') {
246
247
  showToast(ToastType.Error, phoneInputData.error);
248
+ Vibration.vibrate()
247
249
  return;
248
250
  }
249
251
  if (
@@ -261,6 +263,7 @@ const SignupFormUI = (props: SignupParams) => {
261
263
  'The field Mobile phone is required.',
262
264
  ),
263
265
  );
266
+ Vibration.vibrate()
264
267
  return;
265
268
  }
266
269
  if (signUpTab === 'otpEmail' || signUpTab === 'otpCellphone') {
@@ -329,6 +332,7 @@ const SignupFormUI = (props: SignupParams) => {
329
332
  await Linking.openURL(url);
330
333
  } else {
331
334
  showToast(ToastType.Error, t('VALIDATION_ERROR_ACTIVE_URL', 'The _attribute_ is not a valid URL.').replace('_attribute_', t('URL', 'URL')))
335
+ Vibration.vibrate()
332
336
  }
333
337
  }
334
338
 
@@ -336,10 +340,12 @@ const SignupFormUI = (props: SignupParams) => {
336
340
  setRecaptchaVerified(false)
337
341
  if (!recaptchaConfig?.siteKey) {
338
342
  showToast(ToastType.Error, t('NO_RECAPTCHA_SITE_KEY', 'The config doesn\'t have recaptcha site key'));
343
+ Vibration.vibrate()
339
344
  return
340
345
  }
341
346
  if (!recaptchaConfig?.baseUrl) {
342
347
  showToast(ToastType.Error, t('NO_RECAPTCHA_BASE_URL', 'The config doesn\'t have recaptcha base url'));
348
+ Vibration.vibrate()
343
349
  return
344
350
  }
345
351
  recaptchaRef.current.open()
@@ -347,22 +353,47 @@ const SignupFormUI = (props: SignupParams) => {
347
353
 
348
354
  const onRecaptchaVerify = (token: any) => {
349
355
  setRecaptchaVerified(true)
350
- handleReCaptcha && handleReCaptcha(token)
356
+ handleReCaptcha && handleReCaptcha({ code: token, version: recaptchaConfig?.version })
351
357
  }
352
358
 
353
359
  useEffect(() => {
354
360
  if (configs && Object.keys(configs).length > 0 && enableReCaptcha) {
355
- setRecaptchaConfig({
356
- siteKey: configs?.security_recaptcha_site_key?.value || null,
357
- baseUrl: configs?.security_recaptcha_base_url?.value || null
358
- })
361
+ if (configs?.security_recaptcha_type?.value === 'v3' &&
362
+ configs?.security_recaptcha_score_v3?.value > 0 &&
363
+ configs?.security_recaptcha_site_key_v3?.value
364
+ ) {
365
+ setRecaptchaConfig({
366
+ version: 'v3',
367
+ siteKey: configs?.security_recaptcha_site_key_v3?.value || null,
368
+ baseUrl: configs?.security_recaptcha_base_url?.value || null
369
+ })
370
+ return
371
+ }
372
+ if (configs?.security_recaptcha_site_key?.value) {
373
+ setRecaptchaConfig({
374
+ version: 'v2',
375
+ siteKey: configs?.security_recaptcha_site_key?.value || null,
376
+ baseUrl: configs?.security_recaptcha_base_url?.value || null
377
+ })
378
+ }
359
379
  }
360
380
  }, [configs, enableReCaptcha])
361
381
 
362
382
  useEffect(() => {
363
383
  if (!formState.loading && formState.result?.error) {
364
- formState.result?.result &&
365
- showToast(ToastType.Error, formState.result?.result[0]);
384
+ if (formState.result?.result?.[0] === 'ERROR_AUTH_VERIFICATION_CODE') {
385
+ setRecaptchaVerified(false)
386
+ setRecaptchaConfig({
387
+ version: 'v2',
388
+ siteKey: configs?.security_recaptcha_site_key?.value || null,
389
+ baseUrl: configs?.security_recaptcha_base_url?.value || null
390
+ })
391
+ showToast(ToastType.Info, t('TRY_AGAIN', 'Please try again'))
392
+ Vibration.vibrate()
393
+ return
394
+ }
395
+ formState.result?.result && showToast(ToastType.Error, formState.result?.result[0]);
396
+ formState.result?.result && Vibration.vibrate()
366
397
  setIsLoadingVerifyModal(false);
367
398
  }
368
399
  }, [formState]);
@@ -370,6 +401,7 @@ const SignupFormUI = (props: SignupParams) => {
370
401
  useEffect(() => {
371
402
  if (Object.keys(errors).length > 0) {
372
403
  setIsLoadingVerifyModal(false);
404
+ Vibration.vibrate()
373
405
  }
374
406
  }, [errors])
375
407
 
@@ -398,6 +430,7 @@ const SignupFormUI = (props: SignupParams) => {
398
430
  ? verifyPhoneState?.result?.result
399
431
  : verifyPhoneState?.result?.result[0];
400
432
  verifyPhoneState.result?.result && showToast(ToastType.Error, message);
433
+ verifyPhoneState.result?.result && Vibration.vibrate()
401
434
  setIsLoadingVerifyModal(false);
402
435
  return;
403
436
  }
@@ -438,41 +471,42 @@ const SignupFormUI = (props: SignupParams) => {
438
471
  onActionLeft={() => navigation?.canGoBack() && navigation.goBack()}
439
472
  showCall={false}
440
473
  btnStyle={{ paddingLeft: 0 }}
441
- style={{ flexDirection: 'column', alignItems: 'flex-start' }}
442
474
  titleWrapStyle={{ paddingHorizontal: 0 }}
443
475
  titleStyle={{ marginLeft: 0, marginRight: 0 }}
444
476
  />
445
477
  <FormSide>
446
- {(useSignUpFullDetails) && (
478
+ {((Number(useSignUpFullDetails) + Number(useSignUpOtpEmail) + Number(useSignUpOtpCellphone)) > 1) && (
447
479
  <SignupWith>
448
480
  <OTabs
449
481
  horizontal
450
482
  showsHorizontalScrollIndicator={false}
451
483
  ref={tabsRef}
452
484
  >
453
- <TabBtn
454
- onPress={() => handleSignUpTab('default')}
455
- onLayout={(event: any) => handleOnLayout(event, 'default')}
456
- >
457
- <OTab
458
- style={{
459
- borderBottomColor:
460
- signUpTab === 'default'
461
- ? theme.colors.textNormal
462
- : theme.colors.border,
463
- }}>
464
- <OText
465
- size={14}
466
- color={
467
- signUpTab === 'default'
468
- ? theme.colors.textNormal
469
- : theme.colors.disabled
470
- }
471
- weight={signUpTab === 'default' ? 'bold' : 'normal'}>
472
- {t('DEFAULT', 'Default')}
473
- </OText>
474
- </OTab>
475
- </TabBtn>
485
+ {useSignUpFullDetails && (
486
+ <TabBtn
487
+ onPress={() => handleSignUpTab('default')}
488
+ onLayout={(event: any) => handleOnLayout(event, 'default')}
489
+ >
490
+ <OTab
491
+ style={{
492
+ borderBottomColor:
493
+ signUpTab === 'default'
494
+ ? theme.colors.textNormal
495
+ : theme.colors.border,
496
+ }}>
497
+ <OText
498
+ size={14}
499
+ color={
500
+ signUpTab === 'default'
501
+ ? theme.colors.textNormal
502
+ : theme.colors.disabled
503
+ }
504
+ weight={signUpTab === 'default' ? 'bold' : 'normal'}>
505
+ {t('DEFAULT', 'Default')}
506
+ </OText>
507
+ </OTab>
508
+ </TabBtn>
509
+ )}
476
510
  {useSignUpOtpEmail && (
477
511
  <TabBtn
478
512
  onPress={() => handleSignUpTab('otpEmail')}
@@ -608,7 +642,6 @@ const SignupFormUI = (props: SignupParams) => {
608
642
  }
609
643
  })}
610
644
  forwardRef={phoneRef}
611
- defaultCode={formState?.country_code ?? formState?.country_phone_code ?? null}
612
645
  changeCountry={(val: any) => setPhoneInputData({
613
646
  ...phoneInputData,
614
647
  phone: {
@@ -625,36 +658,49 @@ const SignupFormUI = (props: SignupParams) => {
625
658
  </View>
626
659
  )}
627
660
 
628
- {enableReCaptcha && (
661
+ {(enableReCaptcha && recaptchaConfig?.version) && (
629
662
  <>
630
- <TouchableOpacity
631
- onPress={handleOpenRecaptcha}
632
- style={{ marginHorizontal: 4, marginBottom: 10 }}
633
- >
634
- <RecaptchaButton>
635
- {recaptchaVerified ? (
636
- <MaterialCommunityIcons
637
- name="checkbox-marked"
638
- size={23}
639
- color={theme.colors.primary}
640
- />
641
- ) : (
642
- <MaterialCommunityIcons
643
- name="checkbox-blank-outline"
644
- size={23}
645
- color={theme.colors.disabled}
646
- />
647
- )}
648
- <OText size={14} mLeft={8}>{t('VERIFY_ReCAPTCHA', 'Verify reCAPTCHA')}</OText>
649
- </RecaptchaButton>
650
- </TouchableOpacity>
651
- <Recaptcha
652
- ref={recaptchaRef}
653
- siteKey={recaptchaConfig?.siteKey}
654
- baseUrl={recaptchaConfig?.baseUrl}
655
- onVerify={onRecaptchaVerify}
656
- onExpire={() => setRecaptchaVerified(false)}
657
- />
663
+ {recaptchaConfig?.version === 'v3' ? (
664
+ <ReCaptcha
665
+ url={recaptchaConfig?.baseUrl}
666
+ siteKey={recaptchaConfig?.siteKey}
667
+ containerStyle={{ height: 40 }}
668
+ onExecute={onRecaptchaVerify}
669
+ reCaptchaType={1}
670
+ />
671
+ ) : (
672
+ <>
673
+ <TouchableOpacity
674
+ onPress={handleOpenRecaptcha}
675
+ style={{ marginHorizontal: 4, marginBottom: 10 }}
676
+ >
677
+ <RecaptchaButton>
678
+ {recaptchaVerified ? (
679
+ <MaterialCommunityIcons
680
+ name="checkbox-marked"
681
+ size={23}
682
+ color={theme.colors.primary}
683
+ />
684
+ ) : (
685
+ <MaterialCommunityIcons
686
+ name="checkbox-blank-outline"
687
+ size={23}
688
+ color={theme.colors.disabled}
689
+ />
690
+ )}
691
+ <OText size={14} mLeft={8}>{t('VERIFY_ReCAPTCHA', 'Verify reCAPTCHA')}</OText>
692
+ </RecaptchaButton>
693
+ </TouchableOpacity>
694
+ <Recaptcha
695
+ ref={recaptchaRef}
696
+ siteKey={recaptchaConfig?.siteKey}
697
+ baseUrl={recaptchaConfig?.baseUrl}
698
+ onVerify={onRecaptchaVerify}
699
+ onExpire={() => setRecaptchaVerified(false)}
700
+ />
701
+ </>
702
+ )}
703
+
658
704
  </>
659
705
  )}
660
706
  {(signUpTab === 'default') && (
@@ -847,64 +893,65 @@ const SignupFormUI = (props: SignupParams) => {
847
893
  </View>
848
894
  )
849
895
  }
850
- <View
851
- style={{
852
- flexDirection: 'row',
853
- width: '100%',
854
- justifyContent: 'space-between',
855
- alignItems: 'center',
856
- marginVertical: 30,
857
- }}>
858
- <View style={style.line} />
859
- <OText
860
- size={14}
861
- mBottom={10}
862
- style={{ paddingHorizontal: 19 }}
863
- color={theme.colors.disabled}>
864
- {t('OR', 'or')}
865
- </OText>
866
- <View style={style.line} />
867
- </View>
868
-
869
896
  {configs && Object.keys(configs).length > 0 && (
870
- (((configs?.facebook_login?.value === 'true' || configs?.facebook_login?.value === '1') && configs?.facebook_id?.value) ||
871
- (configs?.google_login_client_id?.value !== '' && configs?.google_login_client_id?.value !== null)) &&
897
+ (((configs?.facebook_login?.value === 'true' || configs?.facebook_login?.value === '1') && configs?.facebook_id?.value && facebookLoginEnabled) ||
898
+ ((configs?.google_login_client_id?.value !== '' && configs?.google_login_client_id?.value !== null) && googleLoginEnabled) ||
899
+ ((configs?.apple_login_client_id?.value !== '' && configs?.apple_login_client_id?.value !== null) && appleLoginEnabled)) &&
872
900
  (
873
- <ButtonsWrapper>
874
- <SocialButtons>
875
- {(configs?.facebook_login?.value === 'true' || configs?.facebook_login?.value === '1') &&
876
- configs?.facebook_id?.value &&
877
- facebookLoginEnabled &&
878
- (
879
- <FacebookLogin
901
+ <>
902
+ <View
903
+ style={{
904
+ flexDirection: 'row',
905
+ width: '100%',
906
+ justifyContent: 'space-between',
907
+ alignItems: 'center',
908
+ marginVertical: 30,
909
+ }}>
910
+ <View style={style.line} />
911
+ <OText
912
+ size={14}
913
+ mBottom={10}
914
+ style={{ paddingHorizontal: 19 }}
915
+ color={theme.colors.disabled}>
916
+ {t('OR', 'or')}
917
+ </OText>
918
+ <View style={style.line} />
919
+ </View>
920
+ <ButtonsWrapper>
921
+ <SocialButtons>
922
+ {(configs?.facebook_login?.value === 'true' || configs?.facebook_login?.value === '1') &&
923
+ configs?.facebook_id?.value &&
924
+ facebookLoginEnabled &&
925
+ (
926
+ <FacebookLogin
927
+ notificationState={notificationState}
928
+ handleErrors={(err: any) => { showToast(ToastType.Error, err), Vibration.vibrate() }}
929
+ handleLoading={(val: boolean) => setIsFBLoading(val)}
930
+ handleSuccessFacebookLogin={handleSuccessFacebook}
931
+ />
932
+ )}
933
+ {(configs?.google_login_client_id?.value !== '' && configs?.google_login_client_id?.value !== null) && googleLoginEnabled && (
934
+ <GoogleLogin
880
935
  notificationState={notificationState}
881
- handleErrors={(err: any) => showToast(ToastType.Error, err)}
936
+ webClientId={configs?.google_login_client_id?.value}
937
+ handleErrors={(err: any) => { showToast(ToastType.Error, err), Vibration.vibrate() }}
882
938
  handleLoading={(val: boolean) => setIsFBLoading(val)}
883
- handleSuccessFacebookLogin={handleSuccessFacebook}
939
+ handleSuccessGoogleLogin={handleSuccessFacebook}
884
940
  />
885
941
  )}
886
- {(configs?.google_login_client_id?.value !== '' && configs?.google_login_client_id?.value !== null) && googleLoginEnabled && (
887
- <GoogleLogin
888
- notificationState={notificationState}
889
- webClientId={configs?.google_login_client_id?.value}
890
- handleErrors={(err: any) => showToast(ToastType.Error, err)}
891
- handleLoading={(val: boolean) => setIsFBLoading(val)}
892
- handleSuccessGoogleLogin={handleSuccessFacebook}
893
- />
894
- )}
895
- {(configs?.apple_login_client_id?.value !== '' && configs?.apple_login_client_id?.value !== null) && appleLoginEnabled && (
896
- <AppleLogin
897
- notificationState={notificationState}
898
- handleErrors={(err: any) => showToast(ToastType.Error, err)}
899
- handleLoading={(val: boolean) => setIsFBLoading(val)}
900
- handleSuccessAppleLogin={handleSuccessFacebook}
901
- />
902
- )}
903
- </SocialButtons>
904
- </ButtonsWrapper>
942
+ {(configs?.apple_login_client_id?.value !== '' && configs?.apple_login_client_id?.value !== null) && appleLoginEnabled && (
943
+ <AppleLogin
944
+ notificationState={notificationState}
945
+ handleErrors={(err: any) => { showToast(ToastType.Error, err), Vibration.vibrate() }}
946
+ handleLoading={(val: boolean) => setIsFBLoading(val)}
947
+ handleSuccessAppleLogin={handleSuccessFacebook}
948
+ />
949
+ )}
950
+ </SocialButtons>
951
+ </ButtonsWrapper>
952
+ </>
905
953
  )
906
954
  )}
907
-
908
955
  </FormSide>
909
956
  <OModal
910
957
  open={willVerifyOtpState}