ordering-ui-react-native 0.17.35 → 0.17.36-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 (215) hide show
  1. package/package.json +8 -7
  2. package/src/DeliveryApp.tsx +43 -1
  3. package/src/components/BusinessesListing/index.tsx +1 -1
  4. package/src/components/OrderCreating/index.tsx +1 -21
  5. package/src/components/PaymentOptionsWebView/index.tsx +29 -8
  6. package/src/components/StripeMethodForm/index.tsx +108 -79
  7. package/src/components/VerifyPhone/styles.tsx +1 -2
  8. package/src/components/shared/OToast.tsx +4 -4
  9. package/src/types/index.tsx +5 -0
  10. package/src/utils/index.tsx +7 -1
  11. package/themes/business/index.tsx +2 -0
  12. package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +265 -240
  13. package/themes/business/src/components/AcceptOrRejectOrder/styles.tsx +6 -4
  14. package/themes/business/src/components/BusinessController/index.tsx +0 -1
  15. package/themes/business/src/components/Chat/index.tsx +118 -107
  16. package/themes/business/src/components/DriverMap/index.tsx +17 -6
  17. package/themes/business/src/components/GoogleMap/index.tsx +58 -57
  18. package/themes/business/src/components/LoginForm/Otp/index.tsx +120 -0
  19. package/themes/business/src/components/LoginForm/Otp/styles.tsx +7 -0
  20. package/themes/business/src/components/LoginForm/index.tsx +238 -80
  21. package/themes/business/src/components/LoginForm/styles.tsx +10 -0
  22. package/themes/business/src/components/MapView/index.tsx +10 -10
  23. package/themes/business/src/components/NewOrderNotification/index.tsx +43 -50
  24. package/themes/business/src/components/OrderDetails/Delivery.tsx +4 -3
  25. package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +90 -47
  26. package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +59 -62
  27. package/themes/business/src/components/OrderDetailsLogistic/index.tsx +195 -0
  28. package/themes/business/src/components/OrderDetailsLogistic/styles.tsx +5 -0
  29. package/themes/business/src/components/OrderMessage/index.tsx +18 -17
  30. package/themes/business/src/components/OrderSummary/index.tsx +113 -121
  31. package/themes/business/src/components/OrdersOption/index.tsx +32 -75
  32. package/themes/business/src/components/PreviousOrders/OrderItem.tsx +250 -0
  33. package/themes/business/src/components/PreviousOrders/OrdersGroupedItem.tsx +115 -0
  34. package/themes/business/src/components/PreviousOrders/index.tsx +445 -243
  35. package/themes/business/src/components/PreviousOrders/styles.tsx +31 -3
  36. package/themes/business/src/components/ProductItemAccordion/index.tsx +27 -3
  37. package/themes/business/src/components/ReviewCustomer/index.tsx +41 -24
  38. package/themes/business/src/components/StoresList/index.tsx +2 -2
  39. package/themes/business/src/components/shared/OLink.tsx +33 -13
  40. package/themes/business/src/components/shared/OModal.tsx +16 -9
  41. package/themes/business/src/components/shared/OText.tsx +8 -2
  42. package/themes/business/src/types/index.tsx +32 -2
  43. package/themes/business/src/utils/index.tsx +44 -1
  44. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  45. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  46. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  47. package/themes/kiosk/src/components/BusinessesListing/index.tsx +2 -1
  48. package/themes/kiosk/src/components/Checkout/index.tsx +6 -0
  49. package/themes/kiosk/src/components/LoginForm/Otp/index.tsx +92 -0
  50. package/themes/kiosk/src/components/LoginForm/Otp/styles.tsx +7 -0
  51. package/themes/kiosk/src/components/LoginForm/index.tsx +473 -151
  52. package/themes/kiosk/src/components/LoginForm/styles.tsx +14 -1
  53. package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
  54. package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
  55. package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
  56. package/themes/kiosk/src/components/PhoneInputNumber/index.tsx +3 -2
  57. package/themes/kiosk/src/components/PhoneInputNumber/styles.tsx +1 -3
  58. package/themes/kiosk/src/components/ProductForm/index.tsx +1 -14
  59. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  60. package/themes/kiosk/src/components/shared/OModal.tsx +14 -11
  61. package/themes/kiosk/src/layouts/Container.tsx +7 -1
  62. package/themes/kiosk/src/types/index.d.ts +13 -0
  63. package/themes/kiosk/src/utils/index.tsx +15 -0
  64. package/themes/original/index.tsx +6 -0
  65. package/themes/original/src/components/AddressDetails/index.tsx +29 -11
  66. package/themes/original/src/components/AddressForm/index.tsx +85 -49
  67. package/themes/original/src/components/AddressList/index.tsx +26 -21
  68. package/themes/original/src/components/AddressList/styles.tsx +4 -2
  69. package/themes/original/src/components/AnalyticsSegment/index.tsx +193 -10
  70. package/themes/original/src/components/AppleLogin/index.tsx +4 -4
  71. package/themes/original/src/components/BusinessBasicInformation/index.tsx +159 -90
  72. package/themes/original/src/components/BusinessBasicInformation/styles.tsx +9 -7
  73. package/themes/original/src/components/BusinessController/index.tsx +154 -68
  74. package/themes/original/src/components/BusinessController/styles.tsx +22 -9
  75. package/themes/original/src/components/BusinessFeaturedController/index.tsx +21 -54
  76. package/themes/original/src/components/BusinessFeaturedController/styles.tsx +8 -0
  77. package/themes/original/src/components/BusinessInformation/index.tsx +10 -31
  78. package/themes/original/src/components/BusinessItemAccordion/index.tsx +23 -22
  79. package/themes/original/src/components/BusinessListingSearch/index.tsx +351 -326
  80. package/themes/original/src/components/BusinessPreorder/index.tsx +97 -16
  81. package/themes/original/src/components/BusinessProductsList/index.tsx +20 -11
  82. package/themes/original/src/components/BusinessProductsList/styles.tsx +8 -3
  83. package/themes/original/src/components/BusinessProductsListing/UpsellingRedirect.tsx +1 -1
  84. package/themes/original/src/components/BusinessProductsListing/index.tsx +684 -524
  85. package/themes/original/src/components/BusinessProductsListing/styles.tsx +4 -6
  86. package/themes/original/src/components/BusinessReviews/index.tsx +3 -1
  87. package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +1 -1
  88. package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +106 -79
  89. package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +1 -9
  90. package/themes/original/src/components/BusinessesListing/index.tsx +0 -1
  91. package/themes/original/src/components/Cart/index.tsx +102 -69
  92. package/themes/original/src/components/CartContent/index.tsx +115 -19
  93. package/themes/original/src/components/CartContent/styles.tsx +17 -7
  94. package/themes/original/src/components/Checkout/index.tsx +375 -179
  95. package/themes/original/src/components/Checkout/styles.tsx +4 -2
  96. package/themes/original/src/components/CitiesControl/index.tsx +89 -0
  97. package/themes/original/src/components/CitiesControl/styles.tsx +17 -0
  98. package/themes/original/src/components/CouponControl/index.tsx +10 -3
  99. package/themes/original/src/components/DriverTips/index.tsx +52 -34
  100. package/themes/original/src/components/Favorite/index.tsx +7 -4
  101. package/themes/original/src/components/Favorite/styles.tsx +1 -1
  102. package/themes/original/src/components/FavoriteList/index.tsx +51 -80
  103. package/themes/original/src/components/FloatingButton/index.tsx +1 -2
  104. package/themes/original/src/components/FloatingButton/styles.tsx +1 -1
  105. package/themes/original/src/components/GPSButton/index.tsx +6 -4
  106. package/themes/original/src/components/GPSButton/styles.ts +3 -3
  107. package/themes/original/src/components/GiftCard/GiftCardUI/index.tsx +96 -0
  108. package/themes/original/src/components/GiftCard/GiftCardUI/styles.tsx +5 -0
  109. package/themes/original/src/components/GiftCard/PurchaseGiftCard/index.tsx +100 -0
  110. package/themes/original/src/components/GiftCard/PurchaseGiftCard/styles.tsx +8 -0
  111. package/themes/original/src/components/GiftCard/RedeemGiftCard/index.tsx +191 -0
  112. package/themes/original/src/components/GiftCard/RedeemGiftCard/styles.tsx +8 -0
  113. package/themes/original/src/components/GiftCard/SendGiftCard/index.tsx +165 -0
  114. package/themes/original/src/components/GiftCard/SendGiftCard/styles.tsx +9 -0
  115. package/themes/original/src/components/GoogleMap/index.tsx +15 -4
  116. package/themes/original/src/components/Help/index.tsx +8 -8
  117. package/themes/original/src/components/HelpAccountAndPayment/index.tsx +11 -22
  118. package/themes/original/src/components/HelpAccountAndPayment/styles.tsx +6 -0
  119. package/themes/original/src/components/HelpGuide/index.tsx +12 -16
  120. package/themes/original/src/components/HelpGuide/styles.tsx +6 -0
  121. package/themes/original/src/components/HelpOrder/index.tsx +12 -25
  122. package/themes/original/src/components/HelpOrder/styles.tsx +8 -1
  123. package/themes/original/src/components/Home/index.tsx +13 -4
  124. package/themes/original/src/components/LastOrder/index.tsx +1 -34
  125. package/themes/original/src/components/LoginForm/Otp/index.tsx +139 -75
  126. package/themes/original/src/components/LoginForm/Otp/styles.tsx +0 -1
  127. package/themes/original/src/components/LoginForm/index.tsx +71 -28
  128. package/themes/original/src/components/LottieAnimation/index.tsx +103 -0
  129. package/themes/original/src/components/MessageListing/index.tsx +16 -42
  130. package/themes/original/src/components/Messages/index.tsx +32 -10
  131. package/themes/original/src/components/MomentOption/index.tsx +195 -88
  132. package/themes/original/src/components/MultiCart/index.tsx +50 -0
  133. package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +197 -116
  134. package/themes/original/src/components/MultiCheckout/index.tsx +298 -88
  135. package/themes/original/src/components/MultiCheckout/styles.tsx +3 -1
  136. package/themes/original/src/components/MultiOrdersDetails/SingleOrderCard.tsx +37 -224
  137. package/themes/original/src/components/MultiOrdersDetails/index.tsx +68 -21
  138. package/themes/original/src/components/MultiOrdersDetails/styles.tsx +1 -1
  139. package/themes/original/src/components/MyOrders/index.tsx +53 -51
  140. package/themes/original/src/components/NavBar/index.tsx +18 -18
  141. package/themes/original/src/components/NotFoundSource/index.tsx +14 -10
  142. package/themes/original/src/components/Notifications/index.tsx +46 -50
  143. package/themes/original/src/components/Notifications/styles.tsx +6 -3
  144. package/themes/original/src/components/OrderDetails/OrderEta.tsx +76 -0
  145. package/themes/original/src/components/OrderDetails/OrderHistory.tsx +15 -3
  146. package/themes/original/src/components/OrderDetails/index.tsx +199 -359
  147. package/themes/original/src/components/OrderDetails/styles.tsx +0 -1
  148. package/themes/original/src/components/OrderItAgain/index.tsx +3 -1
  149. package/themes/original/src/components/OrderProgress/index.tsx +93 -114
  150. package/themes/original/src/components/OrderProgress/styles.tsx +5 -0
  151. package/themes/original/src/components/OrderSummary/index.tsx +87 -59
  152. package/themes/original/src/components/OrderTypeSelector/index.tsx +1 -1
  153. package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/index.tsx +24 -19
  154. package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/index.tsx +14 -14
  155. package/themes/original/src/components/OrdersOption/index.tsx +70 -65
  156. package/themes/original/src/components/OrdersOption/styles.tsx +1 -1
  157. package/themes/original/src/components/PageBanner/index.tsx +171 -0
  158. package/themes/original/src/components/PageBanner/styles.tsx +11 -0
  159. package/themes/original/src/components/PaymentOptionCard/index.tsx +180 -0
  160. package/themes/original/src/components/PaymentOptionStripe/styles.tsx +1 -1
  161. package/themes/original/src/components/PaymentOptionWallet/index.tsx +56 -56
  162. package/themes/original/src/components/PaymentOptions/index.tsx +58 -7
  163. package/themes/original/src/components/PhoneInputNumber/index.tsx +3 -3
  164. package/themes/original/src/components/PlaceSpot/index.tsx +12 -6
  165. package/themes/original/src/components/ProductForm/index.tsx +223 -232
  166. package/themes/original/src/components/ProductForm/styles.tsx +5 -8
  167. package/themes/original/src/components/ProductItemAccordion/index.tsx +59 -29
  168. package/themes/original/src/components/ProductOptionSubOption/index.tsx +19 -11
  169. package/themes/original/src/components/ProductOptionSubOption/styles.tsx +1 -2
  170. package/themes/original/src/components/ProfessionalFilter/SingleProfessionalCard/index.tsx +108 -0
  171. package/themes/original/src/components/ProfessionalFilter/index.tsx +20 -50
  172. package/themes/original/src/components/ProfessionalProfile/index.tsx +36 -7
  173. package/themes/original/src/components/Promotions/index.tsx +234 -220
  174. package/themes/original/src/components/Promotions/styles.tsx +10 -3
  175. package/themes/original/src/components/ReviewDriver/index.tsx +3 -3
  176. package/themes/original/src/components/ReviewOrder/index.tsx +26 -9
  177. package/themes/original/src/components/ReviewOrder/styles.tsx +7 -0
  178. package/themes/original/src/components/ReviewProducts/index.tsx +23 -11
  179. package/themes/original/src/components/ReviewTrigger/index.tsx +27 -9
  180. package/themes/original/src/components/ReviewTrigger/styles.tsx +8 -1
  181. package/themes/original/src/components/ScheduleAccordion/index.tsx +68 -0
  182. package/themes/original/src/components/ScheduleAccordion/styles.tsx +14 -0
  183. package/themes/original/src/components/ServiceForm/index.tsx +74 -19
  184. package/themes/original/src/components/Sessions/index.tsx +11 -8
  185. package/themes/original/src/components/Sessions/styles.tsx +5 -0
  186. package/themes/original/src/components/SignupForm/index.tsx +42 -19
  187. package/themes/original/src/components/SingleOrderCard/index.tsx +156 -65
  188. package/themes/original/src/components/SingleOrderCard/styles.tsx +11 -9
  189. package/themes/original/src/components/SingleProductCard/index.tsx +100 -56
  190. package/themes/original/src/components/SingleProductCard/styles.tsx +22 -13
  191. package/themes/original/src/components/SingleProductReview/styles.tsx +1 -1
  192. package/themes/original/src/components/StripeCardsList/index.tsx +13 -3
  193. package/themes/original/src/components/StripeElementsForm/index.tsx +28 -15
  194. package/themes/original/src/components/UpsellingProducts/index.tsx +238 -224
  195. package/themes/original/src/components/UpsellingProducts/styles.tsx +12 -1
  196. package/themes/original/src/components/UserDetails/index.tsx +8 -4
  197. package/themes/original/src/components/UserFormDetails/index.tsx +47 -7
  198. package/themes/original/src/components/UserProfile/index.tsx +5 -7
  199. package/themes/original/src/components/UserProfileForm/index.tsx +25 -28
  200. package/themes/original/src/components/UserProfileForm/styles.tsx +7 -0
  201. package/themes/original/src/components/WalletTransactionItem/index.tsx +2 -2
  202. package/themes/original/src/components/WalletTransactions/index.tsx +3 -3
  203. package/themes/original/src/components/Wallets/index.tsx +79 -36
  204. package/themes/original/src/components/Wallets/styles.tsx +5 -4
  205. package/themes/original/src/components/shared/CardAnimation.tsx +47 -0
  206. package/themes/original/src/components/shared/HeaderTitle.tsx +8 -3
  207. package/themes/original/src/components/shared/OBottomPopup.tsx +1 -1
  208. package/themes/original/src/components/shared/OButton.tsx +6 -2
  209. package/themes/original/src/components/shared/OIcon.tsx +8 -1
  210. package/themes/original/src/components/shared/OInput.tsx +16 -2
  211. package/themes/original/src/components/shared/OModal.tsx +3 -3
  212. package/themes/original/src/layouts/Container.tsx +13 -9
  213. package/themes/original/src/types/index.tsx +38 -9
  214. package/themes/original/src/utils/index.tsx +364 -58
  215. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
@@ -16,6 +16,8 @@ import {
16
16
  useToast,
17
17
  ToastType
18
18
  } from 'ordering-components/native';
19
+ import { DeviceOrientationMethods } from '../../../../../src/hooks/DeviceOrientation'
20
+
19
21
  import { GooglePlacesAutocomplete } from 'react-native-google-places-autocomplete';
20
22
  import Spinner from 'react-native-loading-spinner-overlay';
21
23
  import { useForm, Controller } from 'react-hook-form';
@@ -38,6 +40,8 @@ import {
38
40
  import { GPSButton } from '../GPSButton';
39
41
  import { ScrollView } from 'react-native-gesture-handler';
40
42
 
43
+ const { useDeviceOrientation } = DeviceOrientationMethods
44
+
41
45
  const inputNames = [
42
46
  { name: 'address', code: 'Address' },
43
47
  { name: 'internal_number', code: 'Internal number' },
@@ -62,9 +66,13 @@ const AddressFormUI = (props: AddressFormParams) => {
62
66
  isFromProductsList,
63
67
  hasAddressDefault,
64
68
  afterSignup,
69
+ businessSlug
65
70
  } = props;
66
71
 
67
72
  const theme = useTheme();
73
+ const [orientationState] = useDeviceOrientation();
74
+
75
+ const [autoCompleteInputFocused, setAutoCompleteInputFocused] = useState(false)
68
76
 
69
77
  const tagsName = [
70
78
  { icon: theme.images.general.tag_home, value: 'home' },
@@ -73,6 +81,8 @@ const AddressFormUI = (props: AddressFormParams) => {
73
81
  { icon: theme.images.general.tag_plus, value: 'other' },
74
82
  ];
75
83
 
84
+ const HEIGHT_SCREEN = orientationState?.dimensions?.height
85
+
76
86
  const styles = StyleSheet.create({
77
87
  iconContainer: {
78
88
  display: 'flex',
@@ -83,7 +93,6 @@ const AddressFormUI = (props: AddressFormParams) => {
83
93
  backgroundColor: theme.colors.clear
84
94
  },
85
95
  inputsStyle: {
86
- borderColor: theme.colors.border,
87
96
  borderRadius: 10,
88
97
  marginBottom: 20,
89
98
  height: 50,
@@ -92,7 +101,6 @@ const AddressFormUI = (props: AddressFormParams) => {
92
101
  flex: 1,
93
102
  },
94
103
  textAreaStyles: {
95
- borderColor: theme.colors.border,
96
104
  borderRadius: 10,
97
105
  marginBottom: 20,
98
106
  height: 104,
@@ -106,10 +114,16 @@ const AddressFormUI = (props: AddressFormParams) => {
106
114
  end: 0,
107
115
  top: 12,
108
116
  zIndex: 1002,
117
+ right: autoCompleteInputFocused && (
118
+ !!address?.address ||
119
+ !!formState.changes?.address ||
120
+ !!addressState.address.address
121
+ ) ? 30 : 15,
122
+ width: 16
109
123
  },
110
124
  wrapperNavbar: Platform.OS === 'ios'
111
- ? { paddingVertical: 0, paddingHorizontal: 40 }
112
- : { paddingVertical: 20, paddingHorizontal: 40 }
125
+ ? { paddingVertical: 0, paddingLeft: 40, paddingRight: 20 }
126
+ : { paddingVertical: 10, paddingLeft: 40, paddingRight: 20 }
113
127
  });
114
128
 
115
129
  const [, t] = useLanguage();
@@ -154,13 +168,14 @@ const AddressFormUI = (props: AddressFormParams) => {
154
168
  'true';
155
169
  const maxLimitLocation =
156
170
  configState?.configs?.meters_to_change_address?.value;
157
-
158
- const continueAsGuest = () => navigation.navigate('BusinessList', { isGuestUser: true });
171
+ const countryCode = configState?.configs?.country_autocomplete?.value
172
+ const isHideMap = theme?.address?.components?.map?.hidden
173
+ const isHideIcons = theme?.address?.components?.icons?.hidden
174
+ const continueAsGuest = () => navigation.navigate(!!businessSlug ? 'Business' : 'BusinessList', { isGuestUser: true });
159
175
  const goToBack = () => navigation?.canGoBack() && navigation.goBack();
160
176
 
161
177
  const getAddressFormatted = (address: any) => {
162
178
  const data: any = { address: null, error: null };
163
- Geocoder.init(googleMapsApiKey);
164
179
  Geocoder.from(address)
165
180
  .then((json) => {
166
181
  if (json.results && json.results?.length > 0) {
@@ -336,6 +351,9 @@ const AddressFormUI = (props: AddressFormParams) => {
336
351
  map_data: { library: 'google', place_id: data.place_id },
337
352
  zip_code: data?.zip_code || null,
338
353
  };
354
+ if (googleInput?.current) {
355
+ googleInput?.current?.setAddressText(addressSelected.address);
356
+ }
339
357
  updateChanges(addressSelected);
340
358
  };
341
359
 
@@ -357,7 +375,7 @@ const AddressFormUI = (props: AddressFormParams) => {
357
375
  if (
358
376
  orderState.loading &&
359
377
  !addressesList &&
360
- orderState.options.address &&
378
+ orderState?.options?.address &&
361
379
  auth &&
362
380
  !afterSignup
363
381
  ) {
@@ -365,7 +383,7 @@ const AddressFormUI = (props: AddressFormParams) => {
365
383
  ? navigation.navigate('BottomTab')
366
384
  : navigation.navigate('Business');
367
385
  }
368
- }, [orderState.options.address]);
386
+ }, [orderState?.options?.address]);
369
387
 
370
388
  useEffect(() => {
371
389
  if (alertState.open && alertState?.key !== 'ERROR_MAX_LIMIT_LOCATION') {
@@ -418,16 +436,16 @@ const AddressFormUI = (props: AddressFormParams) => {
418
436
  if (isEditing) {
419
437
  if (formState?.changes?.location) {
420
438
  const prevLocation = {
421
- lat: Math.trunc(locationChange.lat),
422
- lng: Math.trunc(locationChange.lng),
439
+ lat: locationChange?.lat?.toFixed(5),
440
+ lng: locationChange?.lng?.toFixed(5),
423
441
  };
424
442
  const newLocation = {
425
- lat: Math.trunc(formState?.changes?.location?.lat),
426
- lng: Math.trunc(formState?.changes?.location?.lng),
443
+ lat: formState?.changes?.location?.lat?.toFixed(5),
444
+ lng: formState?.changes?.location?.lng?.toFixed(5),
427
445
  };
428
446
  if (
429
- prevLocation.lat !== newLocation.lat &&
430
- prevLocation.lng !== newLocation.lng
447
+ prevLocation?.lat !== newLocation?.lat &&
448
+ prevLocation?.lng !== newLocation?.lng
431
449
  ) {
432
450
  setLocationChange(formState?.changes?.location);
433
451
  }
@@ -472,6 +490,10 @@ const AddressFormUI = (props: AddressFormParams) => {
472
490
  }
473
491
  }, []);
474
492
 
493
+ useEffect(() => {
494
+ Geocoder.init(googleMapsApiKey);
495
+ }, [googleMapsApiKey]);
496
+
475
497
  useEffect(() => {
476
498
  const keyboardDidShowListener = Keyboard.addListener(
477
499
  'keyboardDidShow',
@@ -509,14 +531,14 @@ const AddressFormUI = (props: AddressFormParams) => {
509
531
  titleAlign={'center'}
510
532
  onActionLeft={goToBack}
511
533
  showCall={false}
512
- btnStyle={{ paddingLeft: 0 }}
513
- style={{ marginTop: Platform.OS === 'ios' ? 0 : 30 }}
514
- titleWrapStyle={{ paddingHorizontal: 0 }}
515
- titleStyle={{ marginRight: 0, marginLeft: 0 }}
534
+ btnStyle={{ paddingLeft: 0, paddingRight: 5 }}
535
+ style={{ marginTop: Platform.OS === 'ios' ? 0 : 10 }}
536
+ titleWrapStyle={{ paddingHorizontal: 0, width: '100%' }}
537
+ titleStyle={{ marginRight: 0, marginLeft: 0, paddingRight: 5 }}
516
538
  />
517
539
  </View>
518
540
  <TouchableWithoutFeedback onPress={Keyboard.dismiss}>
519
- <AddressFormContainer style={{ height: 600, overflow: 'scroll' }}>
541
+ <AddressFormContainer style={{ overflow: 'scroll' }}>
520
542
  <View>
521
543
  <FormInput>
522
544
  <AutocompleteInput>
@@ -544,7 +566,10 @@ const AddressFormUI = (props: AddressFormParams) => {
544
566
  onPress={(data, details: any) => {
545
567
  handleChangeAddress(data, details);
546
568
  }}
547
- query={{ key: googleMapsApiKey }}
569
+ query={{
570
+ key: googleMapsApiKey,
571
+ components: countryCode && countryCode !== '*' ? `country:${countryCode}` : ''
572
+ }}
548
573
  fetchDetails
549
574
  ref={googleInput}
550
575
  textInputProps={{
@@ -563,6 +588,8 @@ const AddressFormUI = (props: AddressFormParams) => {
563
588
  autoCorrect: false,
564
589
  blurOnSubmit: false,
565
590
  returnKeyType: 'next',
591
+ onFocus: () => setAutoCompleteInputFocused(true),
592
+ onBlur: () => setAutoCompleteInputFocused(false)
566
593
  }}
567
594
  onFail={(error) =>
568
595
  setAlertState({
@@ -586,13 +613,14 @@ const AddressFormUI = (props: AddressFormParams) => {
586
613
  textInput: {
587
614
  borderWidth: 1,
588
615
  borderRadius: 7.6,
589
- borderColor: theme.colors.border,
616
+ borderColor: autoCompleteInputFocused ? theme.colors.primary : theme.colors.border,
590
617
  flexGrow: 1,
591
618
  fontSize: 15,
592
- paddingHorizontal: 16,
619
+ paddingLeft: 16,
620
+ paddingRight: 32,
593
621
  minHeight: 50,
594
622
  fontFamily: 'Poppins-Regular',
595
- marginBottom: 24,
623
+ marginBottom: 24
596
624
  },
597
625
  }}
598
626
  />
@@ -600,9 +628,9 @@ const AddressFormUI = (props: AddressFormParams) => {
600
628
  />
601
629
 
602
630
  {(
603
- ((!isEditing && !isGuestUser && !formState.changes?.address) ||
604
- (isEditing && !isGuestUser && !formState.changes?.address && formState.changes?.address !== undefined)) ||
605
- (isGuestUser && !formState.changes?.address)) &&
631
+ ((!isEditing && !isGuestUser) ||
632
+ (isEditing && !isGuestUser)) ||
633
+ (isGuestUser)) &&
606
634
  (
607
635
  <View style={styles.pinIcon}>
608
636
  <GPSButton
@@ -615,12 +643,13 @@ const AddressFormUI = (props: AddressFormParams) => {
615
643
  }
616
644
  }}
617
645
  IconButton={<OIcon src={theme.images.general.pin} width={16} />}
646
+ isIntGeoCoder
618
647
  />
619
648
  </View>
620
649
  )}
621
650
  </AutocompleteInput>
622
651
 
623
- {(locationChange || formState.changes?.location) && (
652
+ {!isHideMap && (locationChange || formState.changes?.location) && (
624
653
  <View
625
654
  style={{
626
655
  height: 189,
@@ -636,6 +665,7 @@ const AddressFormUI = (props: AddressFormParams) => {
636
665
  saveLocation={saveMapLocation}
637
666
  setSaveLocation={setSaveMapLocation}
638
667
  handleToggleMap={handleToggleMap}
668
+ isIntGeoCoder
639
669
  />
640
670
  </GoogleMapContainer>
641
671
  </View>
@@ -675,6 +705,7 @@ const AddressFormUI = (props: AddressFormParams) => {
675
705
  addressState?.address?.internal_number ||
676
706
  ''
677
707
  }
708
+ isFocusHighlight
678
709
  style={{
679
710
  ...styles.inputsStyle,
680
711
  marginRight: showField('internal_number') && showField('zipcode') ? 24 : 0
@@ -721,6 +752,7 @@ const AddressFormUI = (props: AddressFormParams) => {
721
752
  addressState.address.zipcode ||
722
753
  ''
723
754
  }
755
+ isFocusHighlight
724
756
  style={styles.inputsStyle}
725
757
  forwardRef={zipCodeRef}
726
758
  returnKeyType="next"
@@ -766,6 +798,7 @@ const AddressFormUI = (props: AddressFormParams) => {
766
798
  ''
767
799
  }
768
800
  multiline
801
+ isFocusHighlight
769
802
  style={styles.textAreaStyles}
770
803
  returnKeyType="done"
771
804
  forwardRef={addressNotesRef}
@@ -775,27 +808,29 @@ const AddressFormUI = (props: AddressFormParams) => {
775
808
  />
776
809
  )}
777
810
  </FormInput>
778
- <IconsContainer>
779
- {tagsName.map((tag) => (
780
- <TouchableOpacity
781
- key={tag.value}
782
- onPress={() => handleAddressTag(tag.value)}>
783
- <View
784
- style={{
785
- ...styles.iconContainer,
786
- }}>
787
- <OIcon
788
- src={tag.icon}
789
- width={24}
790
- color={
791
- addressTag === tag.value ?
792
- theme.colors.primary : theme.colors.disabled
793
- }
794
- />
795
- </View>
796
- </TouchableOpacity>
797
- ))}
798
- </IconsContainer>
811
+ {!isHideIcons && (
812
+ <IconsContainer>
813
+ {tagsName.map((tag) => (
814
+ <TouchableOpacity
815
+ key={tag.value}
816
+ onPress={() => handleAddressTag(tag.value)}>
817
+ <View
818
+ style={{
819
+ ...styles.iconContainer,
820
+ }}>
821
+ <OIcon
822
+ src={tag.icon}
823
+ width={24}
824
+ color={
825
+ addressTag === tag.value ?
826
+ theme.colors.primary : theme.colors.disabled
827
+ }
828
+ />
829
+ </View>
830
+ </TouchableOpacity>
831
+ ))}
832
+ </IconsContainer>
833
+ )}
799
834
  </View>
800
835
 
801
836
  <View>
@@ -841,6 +876,7 @@ const AddressFormUI = (props: AddressFormParams) => {
841
876
  saveLocation={saveMapLocation}
842
877
  setSaveLocation={setSaveMapLocation}
843
878
  handleToggleMap={handleToggleMap}
879
+ isIntGeoCoder
844
880
  />
845
881
  </GoogleMapContainer>
846
882
  )}
@@ -1,9 +1,8 @@
1
1
  import React, { useEffect } from 'react'
2
2
  import { AddressList as AddressListController, useLanguage, useOrder, useSession } from 'ordering-components/native'
3
- import { AddressListContainer, AddressItem } from './styles'
3
+ import { AddressItem, Container } from './styles'
4
4
  import { Platform, RefreshControl, StyleSheet, View } from 'react-native'
5
5
  import { OButton, OText, OAlert, OModal, OIcon } from '../shared'
6
- import { Container } from '../../layouts/Container'
7
6
  import { AddressListParams } from '../../types'
8
7
  import { NotFoundSource } from '../NotFoundSource'
9
8
  import NavBar from '../NavBar'
@@ -40,9 +39,6 @@ const AddressListUI = (props: AddressListParams) => {
40
39
 
41
40
  const [isProfile, setIsProfile] = useState(isFromProfile || route?.params?.isFromProfile);
42
41
 
43
- const goToBack = () => navigation?.canGoBack() && navigation.goBack()
44
- const onNavigationRedirect = (route: string, params?: any) => navigation.navigate(route, params)
45
-
46
42
  const onNavigatorRedirect = () => {
47
43
  if (route && (isFromBusinesses || isGoBack)) {
48
44
  isGoBack ? goToBack() : onNavigationRedirect('BottomTab')
@@ -104,7 +100,6 @@ const AddressListUI = (props: AddressListParams) => {
104
100
  const handleSetAddress = (address: any) => {
105
101
  if (address.id === orderState?.options?.address_id) return
106
102
  handleSetDefault(address)
107
- onNavigatorRedirect()
108
103
  }
109
104
 
110
105
  const handleSaveAddress = (address: any) => {
@@ -133,13 +128,21 @@ const AddressListUI = (props: AddressListParams) => {
133
128
  }
134
129
  }
135
130
 
131
+ const goToBack = () => navigation?.canGoBack() && navigation.goBack()
132
+ const onNavigationRedirect = (route: string, params?: any) => navigation.navigate(route, params)
133
+
134
+ useEffect(() => {
135
+ if (orderState.loading && auth && orderState.options.address?.location) {
136
+ onNavigatorRedirect()
137
+ }
138
+ }, [orderState.options.address])
139
+
136
140
  useEffect(() => {
137
141
  console.log('From profile : ' + isProfile)
138
142
  }, [])
139
143
 
140
144
  return (
141
- <Container
142
- noPadding
145
+ <Container
143
146
  refreshControl={
144
147
  <RefreshControl
145
148
  refreshing={refreshing}
@@ -147,17 +150,18 @@ const AddressListUI = (props: AddressListParams) => {
147
150
  />
148
151
  }
149
152
  >
150
- {isProfile && (
151
- <NavBar
152
- title={t('SAVED_PLACES', 'My saved places')}
153
- titleAlign={'center'}
154
- onActionLeft={goToBack}
155
- showCall={false}
156
- style={{ paddingHorizontal: 40, paddingVertical: Platform.OS === 'ios' ? 0 : 20, marginTop: Platform.OS === 'ios' ? 0 : 30 }}
157
- />
158
- )}
159
153
  {(!addressList.loading || (isFromProductsList || isFromBusinesses || isFromProfile || isProfile)) && (
160
- <AddressListContainer>
154
+ <>
155
+ {isProfile && (
156
+ <NavBar
157
+ title={t('SAVED_PLACES', 'My saved places')}
158
+ titleAlign={'center'}
159
+ onActionLeft={goToBack}
160
+ showCall={false}
161
+ paddingTop={10}
162
+ btnStyle={{ paddingLeft: 0 }}
163
+ />
164
+ )}
161
165
  {
162
166
  route &&
163
167
  (
@@ -173,8 +177,8 @@ const AddressListUI = (props: AddressListParams) => {
173
177
  onActionLeft={() => goToBack()}
174
178
  showCall={false}
175
179
  btnStyle={{ paddingLeft: 0 }}
176
- paddingTop={0}
177
- style={{ marginTop: Platform.OS === 'ios' ? 0 : 40 }}
180
+ paddingTop={10}
181
+ style={{ marginTop: 0 }}
178
182
  titleWrapStyle={{ paddingHorizontal: 0 }}
179
183
  titleStyle={{ marginLeft: 0, marginRight: 0 }}
180
184
  />
@@ -323,7 +327,8 @@ const AddressListUI = (props: AddressListParams) => {
323
327
  />
324
328
  </>
325
329
  )}
326
- </AddressListContainer>
330
+ </>
331
+
327
332
  )}
328
333
  </Container>
329
334
  )
@@ -1,10 +1,12 @@
1
1
  import styled from 'styled-components/native'
2
2
 
3
- export const AddressListContainer = styled.View`
3
+ export const Container = styled.ScrollView`
4
+ position: relative;
4
5
  flex: 1;
5
6
  paddingLeft: 40px;
6
7
  paddingRight: 40px;
7
- paddingBottom: 20px;
8
+ margin-bottom: 40px;
9
+ padding-top: 10px;
8
10
  `
9
11
 
10
12
  export const AddressItem = styled.TouchableOpacity`