ordering-ui-react-native 0.17.49 → 0.17.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 (219) 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/PhoneInputNumber/index.tsx +6 -2
  7. package/src/components/StripeMethodForm/index.tsx +136 -102
  8. package/src/components/VerifyPhone/styles.tsx +1 -2
  9. package/src/components/shared/OToast.tsx +4 -4
  10. package/src/types/index.tsx +5 -0
  11. package/src/utils/index.tsx +7 -1
  12. package/themes/business/index.tsx +2 -0
  13. package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +265 -240
  14. package/themes/business/src/components/AcceptOrRejectOrder/styles.tsx +6 -4
  15. package/themes/business/src/components/BusinessController/index.tsx +0 -1
  16. package/themes/business/src/components/Chat/index.tsx +125 -113
  17. package/themes/business/src/components/DriverMap/index.tsx +17 -6
  18. package/themes/business/src/components/DriverSchedule/index.tsx +29 -2
  19. package/themes/business/src/components/GoogleMap/index.tsx +58 -57
  20. package/themes/business/src/components/LoginForm/Otp/index.tsx +120 -0
  21. package/themes/business/src/components/LoginForm/Otp/styles.tsx +7 -0
  22. package/themes/business/src/components/LoginForm/index.tsx +238 -80
  23. package/themes/business/src/components/LoginForm/styles.tsx +10 -0
  24. package/themes/business/src/components/MapView/index.tsx +10 -10
  25. package/themes/business/src/components/NewOrderNotification/index.tsx +35 -21
  26. package/themes/business/src/components/OrderDetails/Delivery.tsx +30 -4
  27. package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +93 -50
  28. package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +59 -62
  29. package/themes/business/src/components/OrderDetailsLogistic/index.tsx +195 -0
  30. package/themes/business/src/components/OrderDetailsLogistic/styles.tsx +5 -0
  31. package/themes/business/src/components/OrderMessage/index.tsx +18 -17
  32. package/themes/business/src/components/OrderSummary/index.tsx +113 -121
  33. package/themes/business/src/components/OrdersOption/index.tsx +32 -75
  34. package/themes/business/src/components/PreviousOrders/OrderItem.tsx +250 -0
  35. package/themes/business/src/components/PreviousOrders/OrdersGroupedItem.tsx +115 -0
  36. package/themes/business/src/components/PreviousOrders/index.tsx +445 -243
  37. package/themes/business/src/components/PreviousOrders/styles.tsx +31 -3
  38. package/themes/business/src/components/ProductItemAccordion/index.tsx +27 -3
  39. package/themes/business/src/components/ReviewCustomer/index.tsx +29 -14
  40. package/themes/business/src/components/StoresList/index.tsx +2 -2
  41. package/themes/business/src/components/UserProfileForm/index.tsx +11 -13
  42. package/themes/business/src/components/shared/OLink.tsx +33 -13
  43. package/themes/business/src/components/shared/OModal.tsx +16 -9
  44. package/themes/business/src/components/shared/OText.tsx +8 -2
  45. package/themes/business/src/types/index.tsx +32 -2
  46. package/themes/business/src/utils/index.tsx +44 -1
  47. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  48. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  49. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  50. package/themes/kiosk/src/components/BusinessesListing/index.tsx +2 -1
  51. package/themes/kiosk/src/components/Checkout/index.tsx +6 -0
  52. package/themes/kiosk/src/components/LoginForm/Otp/index.tsx +92 -0
  53. package/themes/kiosk/src/components/LoginForm/Otp/styles.tsx +7 -0
  54. package/themes/kiosk/src/components/LoginForm/index.tsx +480 -156
  55. package/themes/kiosk/src/components/LoginForm/styles.tsx +14 -1
  56. package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
  57. package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
  58. package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
  59. package/themes/kiosk/src/components/PhoneInputNumber/index.tsx +3 -2
  60. package/themes/kiosk/src/components/PhoneInputNumber/styles.tsx +1 -3
  61. package/themes/kiosk/src/components/ProductForm/index.tsx +1 -14
  62. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  63. package/themes/kiosk/src/components/shared/OModal.tsx +14 -11
  64. package/themes/kiosk/src/layouts/Container.tsx +7 -1
  65. package/themes/kiosk/src/types/index.d.ts +13 -0
  66. package/themes/kiosk/src/utils/index.tsx +15 -0
  67. package/themes/original/index.tsx +6 -0
  68. package/themes/original/src/components/AddressDetails/index.tsx +29 -11
  69. package/themes/original/src/components/AddressForm/index.tsx +79 -44
  70. package/themes/original/src/components/AddressList/index.tsx +27 -22
  71. package/themes/original/src/components/AddressList/styles.tsx +4 -2
  72. package/themes/original/src/components/AnalyticsSegment/index.tsx +193 -10
  73. package/themes/original/src/components/AppleLogin/index.tsx +4 -4
  74. package/themes/original/src/components/AppleLogin/styles.tsx +3 -1
  75. package/themes/original/src/components/BusinessBasicInformation/index.tsx +160 -91
  76. package/themes/original/src/components/BusinessBasicInformation/styles.tsx +9 -7
  77. package/themes/original/src/components/BusinessController/index.tsx +146 -68
  78. package/themes/original/src/components/BusinessController/styles.tsx +22 -2
  79. package/themes/original/src/components/BusinessFeaturedController/index.tsx +21 -54
  80. package/themes/original/src/components/BusinessFeaturedController/styles.tsx +8 -0
  81. package/themes/original/src/components/BusinessInformation/index.tsx +10 -31
  82. package/themes/original/src/components/BusinessItemAccordion/index.tsx +23 -22
  83. package/themes/original/src/components/BusinessListingSearch/index.tsx +352 -326
  84. package/themes/original/src/components/BusinessPreorder/index.tsx +97 -16
  85. package/themes/original/src/components/BusinessProductsList/index.tsx +23 -14
  86. package/themes/original/src/components/BusinessProductsList/styles.tsx +8 -3
  87. package/themes/original/src/components/BusinessProductsListing/UpsellingRedirect.tsx +1 -1
  88. package/themes/original/src/components/BusinessProductsListing/index.tsx +669 -513
  89. package/themes/original/src/components/BusinessProductsListing/styles.tsx +2 -2
  90. package/themes/original/src/components/BusinessReviews/index.tsx +3 -1
  91. package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +1 -1
  92. package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +98 -79
  93. package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +1 -11
  94. package/themes/original/src/components/BusinessesListing/index.tsx +0 -1
  95. package/themes/original/src/components/Cart/index.tsx +100 -67
  96. package/themes/original/src/components/CartContent/index.tsx +115 -19
  97. package/themes/original/src/components/CartContent/styles.tsx +17 -7
  98. package/themes/original/src/components/Checkout/index.tsx +366 -173
  99. package/themes/original/src/components/Checkout/styles.tsx +4 -2
  100. package/themes/original/src/components/CitiesControl/index.tsx +89 -0
  101. package/themes/original/src/components/CitiesControl/styles.tsx +17 -0
  102. package/themes/original/src/components/CouponControl/index.tsx +10 -3
  103. package/themes/original/src/components/DriverTips/index.tsx +52 -34
  104. package/themes/original/src/components/FacebookLogin/styles.tsx +3 -1
  105. package/themes/original/src/components/Favorite/index.tsx +8 -9
  106. package/themes/original/src/components/Favorite/styles.tsx +1 -1
  107. package/themes/original/src/components/FavoriteList/index.tsx +51 -80
  108. package/themes/original/src/components/FloatingButton/index.tsx +1 -2
  109. package/themes/original/src/components/FloatingButton/styles.tsx +1 -1
  110. package/themes/original/src/components/GPSButton/index.tsx +6 -4
  111. package/themes/original/src/components/GPSButton/styles.ts +3 -3
  112. package/themes/original/src/components/GiftCard/GiftCardUI/index.tsx +96 -0
  113. package/themes/original/src/components/GiftCard/GiftCardUI/styles.tsx +5 -0
  114. package/themes/original/src/components/GiftCard/PurchaseGiftCard/index.tsx +100 -0
  115. package/themes/original/src/components/GiftCard/PurchaseGiftCard/styles.tsx +8 -0
  116. package/themes/original/src/components/GiftCard/RedeemGiftCard/index.tsx +191 -0
  117. package/themes/original/src/components/GiftCard/RedeemGiftCard/styles.tsx +8 -0
  118. package/themes/original/src/components/GiftCard/SendGiftCard/index.tsx +165 -0
  119. package/themes/original/src/components/GiftCard/SendGiftCard/styles.tsx +9 -0
  120. package/themes/original/src/components/GoogleLogin/styles.tsx +1 -1
  121. package/themes/original/src/components/GoogleMap/index.tsx +15 -4
  122. package/themes/original/src/components/Help/index.tsx +8 -8
  123. package/themes/original/src/components/HelpAccountAndPayment/index.tsx +10 -31
  124. package/themes/original/src/components/HelpAccountAndPayment/styles.tsx +5 -3
  125. package/themes/original/src/components/HelpGuide/index.tsx +6 -6
  126. package/themes/original/src/components/HelpGuide/styles.tsx +6 -0
  127. package/themes/original/src/components/HelpOrder/index.tsx +6 -15
  128. package/themes/original/src/components/HelpOrder/styles.tsx +8 -1
  129. package/themes/original/src/components/Home/index.tsx +13 -4
  130. package/themes/original/src/components/LastOrder/index.tsx +1 -34
  131. package/themes/original/src/components/LoginForm/Otp/index.tsx +55 -13
  132. package/themes/original/src/components/LoginForm/Otp/styles.tsx +0 -1
  133. package/themes/original/src/components/LoginForm/index.tsx +64 -26
  134. package/themes/original/src/components/LottieAnimation/index.tsx +89 -55
  135. package/themes/original/src/components/MessageListing/index.tsx +16 -42
  136. package/themes/original/src/components/Messages/index.tsx +32 -10
  137. package/themes/original/src/components/MomentOption/index.tsx +195 -88
  138. package/themes/original/src/components/MultiCart/index.tsx +50 -0
  139. package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +151 -49
  140. package/themes/original/src/components/MultiCheckout/index.tsx +308 -88
  141. package/themes/original/src/components/MultiCheckout/styles.tsx +3 -1
  142. package/themes/original/src/components/MultiOrdersDetails/SingleOrderCard.tsx +37 -224
  143. package/themes/original/src/components/MultiOrdersDetails/index.tsx +68 -21
  144. package/themes/original/src/components/MultiOrdersDetails/styles.tsx +1 -1
  145. package/themes/original/src/components/MyOrders/index.tsx +77 -52
  146. package/themes/original/src/components/NavBar/index.tsx +18 -18
  147. package/themes/original/src/components/NotFoundSource/index.tsx +14 -10
  148. package/themes/original/src/components/Notifications/index.tsx +46 -50
  149. package/themes/original/src/components/Notifications/styles.tsx +6 -3
  150. package/themes/original/src/components/OrderDetails/OrderEta.tsx +76 -0
  151. package/themes/original/src/components/OrderDetails/OrderHistory.tsx +15 -3
  152. package/themes/original/src/components/OrderDetails/index.tsx +190 -358
  153. package/themes/original/src/components/OrderDetails/styles.tsx +0 -1
  154. package/themes/original/src/components/OrderItAgain/index.tsx +3 -1
  155. package/themes/original/src/components/OrderProgress/index.tsx +93 -114
  156. package/themes/original/src/components/OrderProgress/styles.tsx +5 -0
  157. package/themes/original/src/components/OrderSummary/index.tsx +85 -57
  158. package/themes/original/src/components/OrderTypeSelector/index.tsx +1 -1
  159. package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/index.tsx +24 -19
  160. package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/index.tsx +14 -14
  161. package/themes/original/src/components/OrdersOption/index.tsx +76 -66
  162. package/themes/original/src/components/OrdersOption/styles.tsx +1 -1
  163. package/themes/original/src/components/PageBanner/index.tsx +171 -0
  164. package/themes/original/src/components/PageBanner/styles.tsx +11 -0
  165. package/themes/original/src/components/PaymentOptionCard/index.tsx +180 -0
  166. package/themes/original/src/components/PaymentOptionStripe/styles.tsx +1 -1
  167. package/themes/original/src/components/PaymentOptionWallet/index.tsx +56 -56
  168. package/themes/original/src/components/PaymentOptions/index.tsx +64 -7
  169. package/themes/original/src/components/PhoneInputNumber/index.tsx +3 -3
  170. package/themes/original/src/components/PlaceSpot/index.tsx +12 -6
  171. package/themes/original/src/components/ProductForm/index.tsx +114 -36
  172. package/themes/original/src/components/ProductForm/styles.tsx +5 -7
  173. package/themes/original/src/components/ProductItemAccordion/index.tsx +17 -14
  174. package/themes/original/src/components/ProductOptionSubOption/index.tsx +24 -14
  175. package/themes/original/src/components/ProductOptionSubOption/styles.tsx +3 -4
  176. package/themes/original/src/components/ProfessionalFilter/SingleProfessionalCard/index.tsx +108 -0
  177. package/themes/original/src/components/ProfessionalFilter/index.tsx +20 -50
  178. package/themes/original/src/components/ProfessionalProfile/index.tsx +36 -7
  179. package/themes/original/src/components/Promotions/index.tsx +234 -220
  180. package/themes/original/src/components/Promotions/styles.tsx +10 -3
  181. package/themes/original/src/components/ReviewDriver/index.tsx +3 -3
  182. package/themes/original/src/components/ReviewOrder/index.tsx +26 -9
  183. package/themes/original/src/components/ReviewOrder/styles.tsx +7 -0
  184. package/themes/original/src/components/ReviewProducts/index.tsx +23 -11
  185. package/themes/original/src/components/ReviewTrigger/index.tsx +27 -9
  186. package/themes/original/src/components/ReviewTrigger/styles.tsx +8 -1
  187. package/themes/original/src/components/ScheduleAccordion/index.tsx +68 -0
  188. package/themes/original/src/components/ScheduleAccordion/styles.tsx +14 -0
  189. package/themes/original/src/components/ServiceForm/index.tsx +66 -17
  190. package/themes/original/src/components/Sessions/index.tsx +11 -8
  191. package/themes/original/src/components/Sessions/styles.tsx +5 -0
  192. package/themes/original/src/components/SignupForm/index.tsx +43 -20
  193. package/themes/original/src/components/SingleOrderCard/index.tsx +130 -52
  194. package/themes/original/src/components/SingleOrderCard/styles.tsx +11 -2
  195. package/themes/original/src/components/SingleProductCard/index.tsx +72 -34
  196. package/themes/original/src/components/SingleProductCard/styles.tsx +22 -4
  197. package/themes/original/src/components/SingleProductReview/styles.tsx +1 -1
  198. package/themes/original/src/components/StripeCardsList/index.tsx +13 -3
  199. package/themes/original/src/components/StripeElementsForm/index.tsx +67 -34
  200. package/themes/original/src/components/UpsellingProducts/index.tsx +238 -224
  201. package/themes/original/src/components/UpsellingProducts/styles.tsx +12 -1
  202. package/themes/original/src/components/UserDetails/index.tsx +8 -4
  203. package/themes/original/src/components/UserFormDetails/index.tsx +76 -7
  204. package/themes/original/src/components/UserFormDetails/styles.tsx +1 -1
  205. package/themes/original/src/components/UserProfile/index.tsx +12 -29
  206. package/themes/original/src/components/UserProfileForm/index.tsx +27 -29
  207. package/themes/original/src/components/UserProfileForm/styles.tsx +7 -0
  208. package/themes/original/src/components/WalletTransactionItem/index.tsx +2 -2
  209. package/themes/original/src/components/WalletTransactions/index.tsx +3 -3
  210. package/themes/original/src/components/Wallets/index.tsx +67 -24
  211. package/themes/original/src/components/Wallets/styles.tsx +3 -4
  212. package/themes/original/src/components/shared/HeaderTitle.tsx +8 -3
  213. package/themes/original/src/components/shared/OButton.tsx +6 -2
  214. package/themes/original/src/components/shared/OInput.tsx +16 -2
  215. package/themes/original/src/components/shared/OModal.tsx +3 -3
  216. package/themes/original/src/layouts/Container.tsx +1 -1
  217. package/themes/original/src/types/index.tsx +40 -11
  218. package/themes/original/src/utils/index.tsx +375 -58
  219. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
@@ -1,11 +1,21 @@
1
1
  import React from 'react';
2
2
  import { useLanguage } from 'ordering-components/native';
3
3
  import FontAwesome from 'react-native-vector-icons/FontAwesome';
4
- import {CODES} from 'ordering-components/native'
4
+ import { CODES } from 'ordering-components/native'
5
5
  import { ORDER_TYPES } from '../config/constants';
6
+ import { useTheme } from 'styled-components/native';
7
+ import ReactNativeHapticFeedback from "react-native-haptic-feedback";
8
+
9
+ const [languageState, t] = useLanguage();
10
+ const theme = useTheme()
6
11
 
7
12
  export const flatArray = (arr: any) => [].concat(...arr)
8
13
 
14
+ /**
15
+ * List of order type
16
+ */
17
+ export const orderTypeList = ['delivery', 'pickup', 'eatin', 'curbside', 'drivethru', 'seatdelivery']
18
+
9
19
  /**
10
20
  * Function to return the traduction depending of a key 't'
11
21
  * @param {string} key for traduction
@@ -43,69 +53,113 @@ export const getTraduction = (key: string) => {
43
53
  /**
44
54
  * Change local moment variables
45
55
  */
46
- export const setLocalMoment = (moment : any, t : any) => {
56
+ export const setLocalMoment = (moment: any, t: any) => {
47
57
  moment.locale('custom', {
48
58
  months: [
49
- t('MONTH1','January'),
50
- t('MONTH2','February'),
51
- t('MONTH3','March'),
52
- t('MONTH4','April'),
53
- t('MONTH5','May'),
54
- t('MONTH6','June'),
55
- t('MONTH7','July'),
56
- t('MONTH8','August'),
57
- t('MONTH9','September'),
58
- t('MONTH10','October'),
59
- t('MONTH11','November'),
60
- t('MONTH12','December')
59
+ t('MONTH1', 'January'),
60
+ t('MONTH2', 'February'),
61
+ t('MONTH3', 'March'),
62
+ t('MONTH4', 'April'),
63
+ t('MONTH5', 'May'),
64
+ t('MONTH6', 'June'),
65
+ t('MONTH7', 'July'),
66
+ t('MONTH8', 'August'),
67
+ t('MONTH9', 'September'),
68
+ t('MONTH10', 'October'),
69
+ t('MONTH11', 'November'),
70
+ t('MONTH12', 'December')
61
71
  ],
62
72
  monthsShort: [
63
- t('MONTHSHORT1','Jan'),
64
- t('MONTHSHORT2','Feb'),
65
- t('MONTHSHORT3','Mar'),
66
- t('MONTHSHORT4','Apr'),
67
- t('MONTHSHORT5','May'),
68
- t('MONTHSHORT6','Jun'),
69
- t('MONTHSHORT7','Jul'),
70
- t('MONTHSHORT8','Aug'),
71
- t('MONTHSHORT9','Sep'),
72
- t('MONTHSHORT10','Oct'),
73
- t('MONTHSHORT11','Nov'),
74
- t('MONTHSHORT12','Dec')
73
+ t('MONTHSHORT1', 'Jan'),
74
+ t('MONTHSHORT2', 'Feb'),
75
+ t('MONTHSHORT3', 'Mar'),
76
+ t('MONTHSHORT4', 'Apr'),
77
+ t('MONTHSHORT5', 'May'),
78
+ t('MONTHSHORT6', 'Jun'),
79
+ t('MONTHSHORT7', 'Jul'),
80
+ t('MONTHSHORT8', 'Aug'),
81
+ t('MONTHSHORT9', 'Sep'),
82
+ t('MONTHSHORT10', 'Oct'),
83
+ t('MONTHSHORT11', 'Nov'),
84
+ t('MONTHSHORT12', 'Dec')
75
85
  ],
76
86
  weekdays: [
77
- t('DAY7','Sunday'),
78
- t('DAY1','Monday'),
79
- t('DAY2','Tuesday'),
80
- t('DAY3','Wednesday'),
81
- t('DAY4','Thursday'),
82
- t('DAY5','Friday'),
83
- t('DAY6','Saturday')
87
+ t('DAY7', 'Sunday'),
88
+ t('DAY1', 'Monday'),
89
+ t('DAY2', 'Tuesday'),
90
+ t('DAY3', 'Wednesday'),
91
+ t('DAY4', 'Thursday'),
92
+ t('DAY5', 'Friday'),
93
+ t('DAY6', 'Saturday')
84
94
  ],
85
95
  weekdaysShort: [
86
- t('DAYSHORT7','Sun'),
87
- t('DAYSHORT1','Mon'),
88
- t('DAYSHORT2','Tue'),
89
- t('DAYSHORT3','Wed'),
90
- t('DAYSHORT4','Thu'),
91
- t('DAYSHORT5','Fri'),
92
- t('DAYSHORT6','Sat')
96
+ t('DAYSHORT7', 'Sun'),
97
+ t('DAYSHORT1', 'Mon'),
98
+ t('DAYSHORT2', 'Tue'),
99
+ t('DAYSHORT3', 'Wed'),
100
+ t('DAYSHORT4', 'Thu'),
101
+ t('DAYSHORT5', 'Fri'),
102
+ t('DAYSHORT6', 'Sat')
93
103
  ],
94
104
  weekdaysMin: [
95
- t('DAYMIN7','Su'),
96
- t('DAYMIN1','Mo'),
97
- t('DAYMIN2','Tu'),
98
- t('DAYMIN3','We'),
99
- t('DAYMIN4','Th'),
100
- t('DAYMIN5','Fr'),
101
- t('DAYMIN6','Sa')
105
+ t('DAYMIN7', 'Su'),
106
+ t('DAYMIN1', 'Mo'),
107
+ t('DAYMIN2', 'Tu'),
108
+ t('DAYMIN3', 'We'),
109
+ t('DAYMIN4', 'Th'),
110
+ t('DAYMIN5', 'Fr'),
111
+ t('DAYMIN6', 'Sa')
102
112
  ],
103
- meridiem : function (hours : any) {
104
- return hours < 12 ? t('AM', 'AM') : t('PM','PM');
113
+ meridiem: function (hours: any) {
114
+ return hours < 12 ? t('AM', 'AM') : t('PM', 'PM');
105
115
  }
106
116
  })
107
117
  }
108
118
 
119
+ export const monthsEnum: any = {
120
+ Jan: 'MONTHSHORT1',
121
+ Feb: 'MONTHSHORT2',
122
+ Mar: 'MONTHSHORT3',
123
+ Apr: 'MONTHSHORT4',
124
+ May: 'MONTHSHORT5',
125
+ Jun: 'MONTHSHORT6',
126
+ Jul: 'MONTHSHORT7',
127
+ Aug: 'MONTHSHORT8',
128
+ Sep: 'MONTHSHORT9',
129
+ Oct: 'MONTHSHORT10',
130
+ Nov: 'MONTHSHORT11',
131
+ Dec: 'MONTHSHORT12',
132
+ }
133
+
134
+ export const locale = {
135
+ name: languageState?.language?.code?.slice(0, 2),
136
+ config: {
137
+ months: [
138
+ t('MONTH1', 'January'),
139
+ t('MONTH2', 'February'),
140
+ t('MONTH3', 'March'),
141
+ t('MONTH4', 'April'),
142
+ t('MONTH5', 'May'),
143
+ t('MONTH6', 'June'),
144
+ t('MONTH7', 'July'),
145
+ t('MONTH8', 'August'),
146
+ t('MONTH9', 'September'),
147
+ t('MONTH10', 'October'),
148
+ t('MONTH11', 'November'),
149
+ t('MONTH12', 'December')
150
+ ],
151
+ weekdaysShort: [
152
+ t('DAYSHORT7', 'Sun'),
153
+ t('DAYSHORT1', 'Mon'),
154
+ t('DAYSHORT2', 'Tue'),
155
+ t('DAYSHORT3', 'Wed'),
156
+ t('DAYSHORT4', 'Thu'),
157
+ t('DAYSHORT5', 'Fri'),
158
+ t('DAYSHORT6', 'Sat')
159
+ ],
160
+ }
161
+ };
162
+
109
163
  /**
110
164
  * Function to convert delivery time in minutes
111
165
  * @param {string} time business delivery time
@@ -182,7 +236,7 @@ export const getIconCard = (brand: string, size: number) => {
182
236
  * Function to return a static google maps image based in location
183
237
  * @param {object} param object with latitude and logitude
184
238
  */
185
- export const getGoogleMapImage = ({ lat, lng }: any, apiKey: string) => {
239
+ export const getGoogleMapImage = ({ lat, lng }: any, apiKey: string) => {
186
240
  return `https://maps.googleapis.com/maps/api/staticmap?size=500x190&center=${lat},${lng}&zoom=17&scale=2&maptype=roadmap&&markers=icon:https://res.cloudinary.com/ditpjbrmz/image/upload/f_auto,q_auto,w_45,q_auto:best,q_auto:best/v1564675872/marker-customer_kvxric.png%7Ccolor:white%7C${lat},${lng}&key=${apiKey}`
187
241
  }
188
242
  /**
@@ -213,8 +267,13 @@ export const sortInputFields = ({ fields, values }: any) => {
213
267
  return fieldsSorted;
214
268
  }
215
269
 
216
- export const transformCountryCode = (countryCode : number) => {
217
- const code = CODES.find((code : any) => code.phoneCode === countryCode)
270
+ export const transformCountryCode = (countryCode: number) => {
271
+ const code = CODES.find((code: any) => code.phoneCode === countryCode)
272
+ return code?.countryCode
273
+ }
274
+
275
+ export const findExitingCode = (countryCode: string) => {
276
+ const code = CODES.find((code: any) => code.countryCode === (countryCode || '').toUpperCase())
218
277
  return code?.countryCode
219
278
  }
220
279
 
@@ -224,7 +283,7 @@ export const transformCountryCode = (countryCode : number) => {
224
283
  * @param {*} parser function fallback when is decimal
225
284
  * @returns string
226
285
  */
227
- export const verifyDecimals = (value: number, parser: any) => {
286
+ export const verifyDecimals = (value: number, parser: any) => {
228
287
  if (value % 1 === 0) {
229
288
  return value
230
289
  } else {
@@ -240,7 +299,7 @@ export const getTypesText = (value: number) => {
240
299
  /**
241
300
  * List shape for ribbon
242
301
  */
243
- export const shape = {
302
+ export const shape = {
244
303
  rectangle: 'rectangle',
245
304
  rectangleRound: 'rectangle_round',
246
305
  capsuleShape: 'capsule_shape'
@@ -251,7 +310,7 @@ export const getTypesText = (value: number) => {
251
310
  * @param {number} value for transform
252
311
  *
253
312
  */
254
- export const convertToRadian = (value: number) => {
313
+ export const convertToRadian = (value: number) => {
255
314
  return value * Math.PI / 180
256
315
  }
257
316
 
@@ -273,14 +332,14 @@ export const getDistance = (lat1: any, lon1: any, lat2: any, lon2: any) => {
273
332
  return R * c
274
333
  }
275
334
 
276
- export const formatUrlVideo = (url : string) => {
335
+ export const formatUrlVideo = (url: string) => {
277
336
  const regExp = /^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#&?]*).*/
278
337
  const match = url.match(regExp)
279
338
  const id = (match && match[7].length === 11) ? match[7] : false
280
339
  return `https://www.youtube-nocookie.com/embed/${id}`
281
340
  }
282
341
 
283
- export const formatSeconds = (seconds : number) => {
342
+ export const formatSeconds = (seconds: number) => {
284
343
  // Hours, minutes and seconds
285
344
  var hrs = ~~(seconds / 3600)
286
345
  var mins = ~~((seconds % 3600) / 60)
@@ -299,10 +358,268 @@ export const formatSeconds = (seconds : number) => {
299
358
  /**
300
359
  * List of price to filter businesses
301
360
  */
302
- export const priceList = [
361
+ export const priceList = [
303
362
  { level: '1', content: '$' },
304
363
  { level: '2', content: '$$' },
305
364
  { level: '3', content: '$$$' },
306
365
  { level: '4', content: '$$$$' },
307
366
  { level: '5', content: '$$$$$' }
308
367
  ]
368
+
369
+ export const getLogisticTag = (status: any) => {
370
+ const keyList: any = {
371
+ 0: t('PENDING', 'Pending'),
372
+ 1: t('IN_PROGRESS', 'In progress'),
373
+ 2: t('IN_QUEUE', 'In queue'),
374
+ 3: t('EXPIRED', 'Expired'),
375
+ 4: t('RESOLVED', 'Resolved'),
376
+ }
377
+ return keyList[status] ? keyList[status] : t('UNKNOWN', 'Unknown')
378
+ }
379
+
380
+ export const getOrderStatus = (s: string) => {
381
+ const status = parseInt(s);
382
+ const orderStatus = [
383
+ {
384
+ key: 0,
385
+ value: t('PENDING', 'Pending'),
386
+ slug: 'PENDING',
387
+ percentage: 0.1,
388
+ image: theme.images.order.status0,
389
+ },
390
+ {
391
+ key: 1,
392
+ value: t('COMPLETED', 'Completed'),
393
+ slug: 'COMPLETED',
394
+ percentage: 1,
395
+ image: theme.images.order.status1,
396
+ },
397
+ {
398
+ key: 2,
399
+ value: t('REJECTED', 'Rejected'),
400
+ slug: 'REJECTED',
401
+ percentage: 0,
402
+ image: theme.images.order.status2,
403
+ },
404
+ {
405
+ key: 3,
406
+ value: t('DRIVER_IN_BUSINESS', 'Driver in business'),
407
+ slug: 'DRIVER_IN_BUSINESS',
408
+ percentage: 0.6,
409
+ image: theme.images.order.status3,
410
+ },
411
+ {
412
+ key: 4,
413
+ value: t('PREPARATION_COMPLETED', 'Preparation Completed'),
414
+ slug: 'PREPARATION_COMPLETED',
415
+ percentage: 0.2,
416
+ image: theme.images.order.status4,
417
+ },
418
+ {
419
+ key: 5,
420
+ value: t('REJECTED_BY_BUSINESS', 'Rejected by business'),
421
+ slug: 'REJECTED_BY_BUSINESS',
422
+ percentage: 0,
423
+ image: theme.images.order.status5,
424
+ },
425
+ {
426
+ key: 6,
427
+ value: t('REJECTED_BY_DRIVER', 'Rejected by Driver'),
428
+ slug: 'REJECTED_BY_DRIVER',
429
+ percentage: 0,
430
+ image: theme.images.order.status6,
431
+ },
432
+ {
433
+ key: 7,
434
+ value: t('ACCEPTED_BY_BUSINESS', 'Accepted by business'),
435
+ slug: 'ACCEPTED_BY_BUSINESS',
436
+ percentage: 0.15,
437
+ image: theme.images.order.status7,
438
+ },
439
+ {
440
+ key: 8,
441
+ value: t('ACCEPTED_BY_DRIVER', 'Accepted by driver'),
442
+ slug: 'ACCEPTED_BY_DRIVER',
443
+ percentage: 0.4,
444
+ image: theme.images.order.status8,
445
+ },
446
+ {
447
+ key: 9,
448
+ value: t('PICK_UP_COMPLETED_BY_DRIVER', 'Pick up completed by driver'),
449
+ slug: 'PICK_UP_COMPLETED_BY_DRIVER',
450
+ percentage: 0.7,
451
+ image: theme.images.order.status9,
452
+ },
453
+ {
454
+ key: 10,
455
+ value: t('PICK_UP_FAILED_BY_DRIVER', 'Pick up Failed by driver'),
456
+ slug: 'PICK_UP_FAILED_BY_DRIVER',
457
+ percentage: 0,
458
+ image: theme.images.order.status10,
459
+ },
460
+ {
461
+ key: 11,
462
+ value: t(
463
+ 'DELIVERY_COMPLETED_BY_DRIVER',
464
+ 'Delivery completed by driver',
465
+ ),
466
+ slug: 'DELIVERY_COMPLETED_BY_DRIVER',
467
+ percentage: 1,
468
+ image: theme.images.order.status11,
469
+ },
470
+ {
471
+ key: 12,
472
+ value: t('DELIVERY_FAILED_BY_DRIVER', 'Delivery Failed by driver'),
473
+ slug: 'DELIVERY_FAILED_BY_DRIVER',
474
+ percentage: 0,
475
+ image: theme.images.order.status12,
476
+ },
477
+ {
478
+ key: 13,
479
+ value: t('PREORDER', 'PreOrder'),
480
+ slug: 'PREORDER',
481
+ percentage: 0,
482
+ image: theme.images.order.status13,
483
+ },
484
+ {
485
+ key: 14,
486
+ value: t('ORDER_NOT_READY', 'Order not ready'),
487
+ slug: 'ORDER_NOT_READY',
488
+ percentage: 0.15,
489
+ image: theme.images.order.status13,
490
+ },
491
+ {
492
+ key: 15,
493
+ value: t(
494
+ 'ORDER_PICKEDUP_COMPLETED_BY_CUSTOMER',
495
+ 'Order picked up completed by customer',
496
+ ),
497
+ slug: 'ORDER_PICKEDUP_COMPLETED_BY_CUSTOMER',
498
+ percentage: 1,
499
+ image: theme.images.order.status1,
500
+ },
501
+ {
502
+ key: 16,
503
+ value: t('CANCELLED_BY_CUSTOMER', 'Cancelled by customer'),
504
+ slug: 'CANCELLED_BY_CUSTOMER',
505
+ percentage: 0,
506
+ image: theme.images.order.status2,
507
+ },
508
+ {
509
+ key: 17,
510
+ value: t(
511
+ 'ORDER_NOT_PICKEDUP_BY_CUSTOMER',
512
+ 'Order not picked up by customer',
513
+ ),
514
+ slug: 'ORDER_NOT_PICKEDUP_BY_CUSTOMER',
515
+ percentage: 0,
516
+ image: theme.images.order.status2,
517
+ },
518
+ {
519
+ key: 18,
520
+ value: t(
521
+ 'DRIVER_ALMOST_ARRIVED_TO_BUSINESS',
522
+ 'Driver almost arrived to business',
523
+ ),
524
+ slug: 'DRIVER_ALMOST_ARRIVED_TO_BUSINESS',
525
+ percentage: 0.5,
526
+ image: theme.images.order.status3,
527
+ },
528
+ {
529
+ key: 19,
530
+ value: t(
531
+ 'DRIVER_ALMOST_ARRIVED_TO_CUSTOMER',
532
+ 'Driver almost arrived to customer',
533
+ ),
534
+ slug: 'DRIVER_ALMOST_ARRIVED_TO_CUSTOMER',
535
+ percentage: 0.9,
536
+ image: theme.images.order.status11,
537
+ },
538
+ {
539
+ key: 20,
540
+ value: t(
541
+ 'ORDER_CUSTOMER_ALMOST_ARRIVED_BUSINESS',
542
+ 'Customer almost arrived to business',
543
+ ),
544
+ slug: 'ORDER_CUSTOMER_ALMOST_ARRIVED_BUSINESS',
545
+ percentage: 0.9,
546
+ image: theme.images.order.status7,
547
+ },
548
+ {
549
+ key: 21,
550
+ value: t(
551
+ 'ORDER_CUSTOMER_ARRIVED_BUSINESS',
552
+ 'Customer arrived to business',
553
+ ),
554
+ slug: 'ORDER_CUSTOMER_ARRIVED_BUSINESS',
555
+ percentage: 0.9,
556
+ image: theme.images.order.status7,
557
+ },
558
+ {
559
+ key: 22,
560
+ value: t('ORDER_LOOKING_FOR_DRIVER', 'Looking for driver'),
561
+ slug: 'ORDER_LOOKING_FOR_DRIVER',
562
+ percentage: 0.3,
563
+ image: theme.images.order.status8
564
+ },
565
+ {
566
+ key: 23,
567
+ value: t('ORDER_DRIVER_ON_WAY', 'Driver on way'),
568
+ slug: 'ORDER_DRIVER_ON_WAY',
569
+ percentage: 0.8,
570
+ image: theme.images.order.status8
571
+ }
572
+ ];
573
+
574
+ const objectStatus = orderStatus.find((o) => o.key === status);
575
+
576
+ return objectStatus && objectStatus;
577
+ }
578
+
579
+ /**
580
+ * Function to get brightness of color.
581
+ */
582
+ export const lightenDarkenColor = (color: any) => {
583
+
584
+ let r, g, b, hsp
585
+ if (!color) return
586
+ if (color.match(/^rgb/)) {
587
+ // If HEX --> store the red, green, blue values in separate variables
588
+ color = color.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)(?:,\s*(\d+(?:\.\d+)?))?\)$/)
589
+
590
+ r = color[1]
591
+ g = color[2]
592
+ b = color[3]
593
+ } else {
594
+ // If RGB --> Convert it to HEX
595
+ color = +("0x" + color.slice(1).replace(color.length < 5 && /./g, '$&$&'))
596
+
597
+ r = color >> 16
598
+ g = color >> 8 & 255
599
+ b = color & 255
600
+ }
601
+
602
+ // HSP (Highly Sensitive Poo) equation
603
+ hsp = Math.sqrt(
604
+ 0.299 * (r * r) +
605
+ 0.587 * (g * g) +
606
+ 0.114 * (b * b)
607
+ )
608
+
609
+ // Using the HSP value, determine whether the color is light or dark
610
+ if (hsp > 197) {
611
+ return true //is light color
612
+ } else {
613
+ return false
614
+ }
615
+ }
616
+
617
+ export const vibrateApp = (impact ?: string) => {
618
+ const options = {
619
+ enableVibrateFallback: true,
620
+ ignoreAndroidSystemSettings: false
621
+ };
622
+
623
+ ReactNativeHapticFeedback.trigger(impact || "impactLight", options);
624
+
625
+ }
@@ -144,7 +144,7 @@ const BusinessesListingUI = (props: BusinessesListingParams) => {
144
144
  {isFarAway && (
145
145
  <FarAwayMessage style={styles.farAwayMsg}>
146
146
  <Ionicons name='md-warning-outline' style={styles.iconStyle} />
147
- <OText size={12} numberOfLines={1} ellipsizeMode={'tail'} color={theme.colors.textNormal}>{t('YOU_ARE_FAR_FROM_ADDRESS', 'You are far from this address')}</OText>
147
+ <OText size={12} numberOfLines={1} ellipsizeMode={'tail'} color={theme.colors.textNormal}>{t('YOU_ARE_FAR_FROM_ADDRESS', 'Your are far from this address')}</OText>
148
148
  </FarAwayMessage>
149
149
  )}
150
150
  <View style={styles.wrapperOrderOptions}>