ordering-ui-react-native 0.17.76 → 0.17.77-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 (225) hide show
  1. package/package.json +8 -7
  2. package/src/DeliveryApp.tsx +43 -1
  3. package/src/components/BusinessInformation/index.tsx +10 -9
  4. package/src/components/BusinessesListing/index.tsx +1 -1
  5. package/src/components/OrderCreating/index.tsx +1 -21
  6. package/src/components/PaymentOptionsWebView/index.tsx +29 -8
  7. package/src/components/PhoneInputNumber/index.tsx +6 -2
  8. package/src/components/StripeMethodForm/index.tsx +136 -102
  9. package/src/components/VerifyPhone/styles.tsx +1 -2
  10. package/src/components/shared/OToast.tsx +3 -2
  11. package/src/types/index.tsx +5 -0
  12. package/src/utils/index.tsx +5 -0
  13. package/themes/business/index.tsx +2 -0
  14. package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +28 -25
  15. package/themes/business/src/components/BusinessController/index.tsx +0 -1
  16. package/themes/business/src/components/Chat/index.tsx +149 -118
  17. package/themes/business/src/components/DriverMap/index.tsx +17 -6
  18. package/themes/business/src/components/DriverSchedule/index.tsx +45 -8
  19. package/themes/business/src/components/GoogleMap/index.tsx +58 -57
  20. package/themes/business/src/components/LoginForm/Otp/index.tsx +31 -3
  21. package/themes/business/src/components/LoginForm/index.tsx +15 -22
  22. package/themes/business/src/components/MapView/index.tsx +10 -10
  23. package/themes/business/src/components/MessagesOption/index.tsx +20 -93
  24. package/themes/business/src/components/NewOrderNotification/index.tsx +128 -96
  25. package/themes/business/src/components/NotFoundSource/index.tsx +2 -2
  26. package/themes/business/src/components/OrderDetails/Business.tsx +1 -1
  27. package/themes/business/src/components/OrderDetails/Delivery.tsx +191 -6
  28. package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +102 -40
  29. package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +70 -67
  30. package/themes/business/src/components/OrderDetailsLogistic/index.tsx +195 -0
  31. package/themes/business/src/components/OrderDetailsLogistic/styles.tsx +5 -0
  32. package/themes/business/src/components/OrderMessage/index.tsx +19 -18
  33. package/themes/business/src/components/OrderSummary/index.tsx +114 -123
  34. package/themes/business/src/components/OrdersOption/index.tsx +20 -22
  35. package/themes/business/src/components/PreviousMessages/FooterMessageComponent.tsx +103 -0
  36. package/themes/business/src/components/PreviousMessages/index.tsx +97 -55
  37. package/themes/business/src/components/PreviousOrders/OrderItem.tsx +17 -12
  38. package/themes/business/src/components/PreviousOrders/OrderList.tsx +88 -0
  39. package/themes/business/src/components/PreviousOrders/OrdersGroupedItem.tsx +1 -1
  40. package/themes/business/src/components/PreviousOrders/index.tsx +139 -174
  41. package/themes/business/src/components/ProductItemAccordion/index.tsx +27 -3
  42. package/themes/business/src/components/ReviewCustomer/index.tsx +18 -13
  43. package/themes/business/src/components/StoresList/index.tsx +3 -4
  44. package/themes/business/src/components/UserProfileForm/index.tsx +14 -15
  45. package/themes/business/src/components/shared/OLink.tsx +9 -2
  46. package/themes/business/src/components/shared/OModal.tsx +16 -9
  47. package/themes/business/src/components/shared/OText.tsx +6 -1
  48. package/themes/business/src/types/index.tsx +25 -10
  49. package/themes/business/src/utils/index.tsx +29 -2
  50. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  51. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  52. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  53. package/themes/kiosk/src/components/Checkout/index.tsx +6 -0
  54. package/themes/kiosk/src/components/Intro/index.tsx +16 -1
  55. package/themes/kiosk/src/components/LoginForm/index.tsx +7 -9
  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 +2 -2
  60. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  61. package/themes/original/index.tsx +1 -1
  62. package/themes/original/src/components/AddressDetails/index.tsx +19 -3
  63. package/themes/original/src/components/AddressForm/index.tsx +61 -39
  64. package/themes/original/src/components/AddressList/index.tsx +11 -6
  65. package/themes/original/src/components/AnalyticsSegment/index.tsx +193 -10
  66. package/themes/original/src/components/AppleLogin/index.tsx +4 -4
  67. package/themes/original/src/components/AppleLogin/styles.tsx +3 -1
  68. package/themes/original/src/components/BusinessBasicInformation/index.tsx +153 -96
  69. package/themes/original/src/components/BusinessBasicInformation/styles.tsx +10 -12
  70. package/themes/original/src/components/BusinessController/index.tsx +81 -68
  71. package/themes/original/src/components/BusinessController/styles.tsx +12 -5
  72. package/themes/original/src/components/BusinessFeaturedController/index.tsx +21 -54
  73. package/themes/original/src/components/BusinessFeaturedController/styles.tsx +8 -0
  74. package/themes/original/src/components/BusinessInformation/index.tsx +140 -85
  75. package/themes/original/src/components/BusinessItemAccordion/index.tsx +15 -20
  76. package/themes/original/src/components/BusinessListingSearch/index.tsx +348 -340
  77. package/themes/original/src/components/BusinessListingSearch/styles.tsx +0 -18
  78. package/themes/original/src/components/BusinessPreorder/index.tsx +103 -19
  79. package/themes/original/src/components/BusinessProductsCategories/index.tsx +1 -2
  80. package/themes/original/src/components/BusinessProductsList/index.tsx +15 -7
  81. package/themes/original/src/components/BusinessProductsList/styles.tsx +8 -3
  82. package/themes/original/src/components/BusinessProductsListing/UpsellingRedirect.tsx +1 -1
  83. package/themes/original/src/components/BusinessProductsListing/index.tsx +684 -559
  84. package/themes/original/src/components/BusinessProductsListing/styles.tsx +1 -1
  85. package/themes/original/src/components/BusinessReviews/index.tsx +3 -1
  86. package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +70 -39
  87. package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +0 -1
  88. package/themes/original/src/components/BusinessesListing/index.tsx +0 -1
  89. package/themes/original/src/components/Cart/index.tsx +76 -79
  90. package/themes/original/src/components/CartContent/index.tsx +112 -19
  91. package/themes/original/src/components/CartContent/styles.tsx +16 -6
  92. package/themes/original/src/components/Checkout/index.tsx +294 -56
  93. package/themes/original/src/components/CitiesControl/index.tsx +1 -1
  94. package/themes/original/src/components/CouponControl/index.tsx +10 -3
  95. package/themes/original/src/components/DriverTips/index.tsx +52 -34
  96. package/themes/original/src/components/FacebookLogin/styles.tsx +3 -1
  97. package/themes/original/src/components/Favorite/index.tsx +2 -6
  98. package/themes/original/src/components/FavoriteList/index.tsx +1 -35
  99. package/themes/original/src/components/FloatingButton/index.tsx +10 -13
  100. package/themes/original/src/components/GPSButton/index.tsx +6 -4
  101. package/themes/original/src/components/GiftCard/PurchaseGiftCard/index.tsx +7 -3
  102. package/themes/original/src/components/GiftCard/PurchaseGiftCard/styles.tsx +2 -0
  103. package/themes/original/src/components/GiftCard/RedeemGiftCard/index.tsx +19 -6
  104. package/themes/original/src/components/GoogleLogin/styles.tsx +1 -1
  105. package/themes/original/src/components/GoogleMap/index.tsx +60 -5
  106. package/themes/original/src/components/Help/index.tsx +2 -2
  107. package/themes/original/src/components/HelpGuide/index.tsx +2 -2
  108. package/themes/original/src/components/HelpGuide/styles.tsx +1 -0
  109. package/themes/original/src/components/Home/index.tsx +13 -4
  110. package/themes/original/src/components/LastOrder/index.tsx +1 -34
  111. package/themes/original/src/components/LoginForm/Otp/index.tsx +91 -25
  112. package/themes/original/src/components/LoginForm/index.tsx +64 -34
  113. package/themes/original/src/components/LottieAnimation/index.tsx +88 -63
  114. package/themes/original/src/components/MessageListing/index.tsx +16 -42
  115. package/themes/original/src/components/Messages/index.tsx +14 -7
  116. package/themes/original/src/components/MomentOption/index.tsx +193 -90
  117. package/themes/original/src/components/MomentSelector/index.tsx +1 -1
  118. package/themes/original/src/components/MultiCart/index.tsx +41 -54
  119. package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +162 -50
  120. package/themes/original/src/components/MultiCheckout/index.tsx +329 -100
  121. package/themes/original/src/components/MultiCheckout/styles.tsx +3 -1
  122. package/themes/original/src/components/MultiOrdersDetails/SingleOrderCard.tsx +37 -224
  123. package/themes/original/src/components/MultiOrdersDetails/index.tsx +54 -21
  124. package/themes/original/src/components/MultiOrdersDetails/styles.tsx +1 -1
  125. package/themes/original/src/components/MyOrders/index.tsx +37 -24
  126. package/themes/original/src/components/NavBar/index.tsx +20 -12
  127. package/themes/original/src/components/NotFoundSource/index.tsx +14 -10
  128. package/themes/original/src/components/Notifications/styles.tsx +1 -5
  129. package/themes/original/src/components/OrderDetails/OrderEta.tsx +76 -0
  130. package/themes/original/src/components/OrderDetails/OrderHistory.tsx +21 -5
  131. package/themes/original/src/components/OrderDetails/index.tsx +139 -306
  132. package/themes/original/src/components/OrderDetails/styles.tsx +0 -1
  133. package/themes/original/src/components/OrderItAgain/index.tsx +3 -1
  134. package/themes/original/src/components/OrderProgress/index.tsx +33 -57
  135. package/themes/original/src/components/OrderSummary/index.tsx +83 -57
  136. package/themes/original/src/components/OrderTypeSelector/index.tsx +2 -1
  137. package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/index.tsx +14 -14
  138. package/themes/original/src/components/OrdersOption/index.tsx +61 -81
  139. package/themes/original/src/components/OrdersOption/styles.tsx +1 -1
  140. package/themes/original/src/components/PageBanner/index.tsx +98 -38
  141. package/themes/original/src/components/PageBanner/styles.tsx +0 -10
  142. package/themes/original/src/components/PaymentOptionCard/index.tsx +180 -0
  143. package/themes/original/src/components/PaymentOptionStripe/styles.tsx +1 -1
  144. package/themes/original/src/components/PaymentOptionWallet/index.tsx +56 -56
  145. package/themes/original/src/components/PaymentOptions/index.tsx +95 -33
  146. package/themes/original/src/components/PhoneInputNumber/index.tsx +18 -4
  147. package/themes/original/src/components/ProductForm/index.tsx +103 -40
  148. package/themes/original/src/components/ProductForm/styles.tsx +3 -3
  149. package/themes/original/src/components/ProductItemAccordion/index.tsx +8 -6
  150. package/themes/original/src/components/ProductOptionSubOption/index.tsx +50 -21
  151. package/themes/original/src/components/ProductOptionSubOption/styles.tsx +10 -9
  152. package/themes/original/src/components/ProfessionalFilter/SingleProfessionalCard/index.tsx +108 -0
  153. package/themes/original/src/components/ProfessionalFilter/index.tsx +20 -50
  154. package/themes/original/src/components/ProfessionalProfile/index.tsx +36 -7
  155. package/themes/original/src/components/Promotions/index.tsx +2 -2
  156. package/themes/original/src/components/Promotions/styles.tsx +3 -1
  157. package/themes/original/src/components/ReviewProducts/index.tsx +16 -7
  158. package/themes/original/src/components/ScheduleAccordion/index.tsx +3 -3
  159. package/themes/original/src/components/ServiceForm/index.tsx +63 -20
  160. package/themes/original/src/components/Sessions/index.tsx +11 -8
  161. package/themes/original/src/components/Sessions/styles.tsx +5 -0
  162. package/themes/original/src/components/SignupForm/index.tsx +43 -27
  163. package/themes/original/src/components/SingleOrderCard/index.tsx +102 -63
  164. package/themes/original/src/components/SingleOrderCard/styles.tsx +1 -1
  165. package/themes/original/src/components/SingleProductCard/index.tsx +72 -31
  166. package/themes/original/src/components/SingleProductCard/styles.tsx +20 -4
  167. package/themes/original/src/components/SingleProductReview/styles.tsx +1 -1
  168. package/themes/original/src/components/StripeCardsList/index.tsx +49 -5
  169. package/themes/original/src/components/StripeElementsForm/index.tsx +48 -34
  170. package/themes/original/src/components/StripeElementsForm/naked.tsx +12 -1
  171. package/themes/original/src/components/UpsellingProducts/index.tsx +238 -224
  172. package/themes/original/src/components/UpsellingProducts/styles.tsx +12 -1
  173. package/themes/original/src/components/UserDetails/index.tsx +3 -1
  174. package/themes/original/src/components/UserFormDetails/index.tsx +78 -9
  175. package/themes/original/src/components/UserFormDetails/styles.tsx +1 -1
  176. package/themes/original/src/components/UserProfile/index.tsx +87 -76
  177. package/themes/original/src/components/UserProfileForm/index.tsx +10 -3
  178. package/themes/original/src/components/UserProfileForm/styles.tsx +1 -1
  179. package/themes/original/src/components/UserVerification/index.tsx +55 -50
  180. package/themes/original/src/components/WalletTransactionItem/index.tsx +2 -2
  181. package/themes/original/src/components/WalletTransactions/index.tsx +3 -3
  182. package/themes/original/src/components/Wallets/index.tsx +56 -33
  183. package/themes/original/src/components/Wallets/styles.tsx +3 -4
  184. package/themes/original/src/components/shared/OButton.tsx +6 -2
  185. package/themes/original/src/components/shared/OInput.tsx +6 -1
  186. package/themes/original/src/components/shared/OModal.tsx +3 -3
  187. package/themes/original/src/types/index.tsx +39 -10
  188. package/themes/original/src/utils/index.tsx +386 -1
  189. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
  190. package/src/navigators/BottomNavigator.tsx +0 -117
  191. package/src/navigators/CheckoutNavigator.tsx +0 -66
  192. package/src/navigators/HomeNavigator.tsx +0 -202
  193. package/src/navigators/NavigationRef.tsx +0 -7
  194. package/src/navigators/RootNavigator.tsx +0 -269
  195. package/src/pages/Account.tsx +0 -34
  196. package/src/pages/AddressForm.tsx +0 -62
  197. package/src/pages/AddressList.tsx +0 -24
  198. package/src/pages/BusinessProductsList.tsx +0 -81
  199. package/src/pages/BusinessesListing.tsx +0 -43
  200. package/src/pages/CartList.tsx +0 -49
  201. package/src/pages/Checkout.tsx +0 -101
  202. package/src/pages/ForgotPassword.tsx +0 -24
  203. package/src/pages/Help.tsx +0 -23
  204. package/src/pages/HelpAccountAndPayment.tsx +0 -23
  205. package/src/pages/HelpGuide.tsx +0 -23
  206. package/src/pages/HelpOrder.tsx +0 -23
  207. package/src/pages/Home.tsx +0 -36
  208. package/src/pages/IntroductoryTutorial.tsx +0 -170
  209. package/src/pages/Login.tsx +0 -47
  210. package/src/pages/MomentOption.tsx +0 -30
  211. package/src/pages/MultiCheckout.tsx +0 -31
  212. package/src/pages/MultiOrdersDetails.tsx +0 -27
  213. package/src/pages/MyOrders.tsx +0 -40
  214. package/src/pages/NetworkError.tsx +0 -24
  215. package/src/pages/NotFound.tsx +0 -22
  216. package/src/pages/OrderDetails.tsx +0 -25
  217. package/src/pages/ProductDetails.tsx +0 -55
  218. package/src/pages/Profile.tsx +0 -36
  219. package/src/pages/ReviewDriver.tsx +0 -30
  220. package/src/pages/ReviewOrder.tsx +0 -32
  221. package/src/pages/ReviewProducts.tsx +0 -30
  222. package/src/pages/Sessions.tsx +0 -22
  223. package/src/pages/Signup.tsx +0 -53
  224. package/src/pages/SpinnerLoader.tsx +0 -10
  225. package/src/pages/Splash.tsx +0 -21
@@ -7,7 +7,9 @@ import {
7
7
  OrderDetails as OrderDetailsConTableoller,
8
8
  useUtils,
9
9
  useOrder,
10
- useConfig
10
+ useConfig,
11
+ useToast,
12
+ ToastType
11
13
  } from 'ordering-components/native';
12
14
  import { useTheme } from 'styled-components/native';
13
15
  import { showLocation } from 'react-native-map-link';
@@ -40,7 +42,7 @@ import { ProductItemAccordion } from '../ProductItemAccordion';
40
42
  import { TouchableOpacity } from 'react-native-gesture-handler';
41
43
  import { OrderDetailsParams } from '../../types';
42
44
  import { GoogleMap } from '../GoogleMap';
43
- import { verifyDecimals } from '../../utils';
45
+ import { verifyDecimals, getOrderStatus, getOrderStatuPickUp } from '../../utils';
44
46
  import { OSRow } from '../OrderSummary/styles';
45
47
  import AntIcon from 'react-native-vector-icons/AntDesign'
46
48
  import { TaxInformation } from '../TaxInformation';
@@ -49,6 +51,7 @@ import NavBar from '../NavBar'
49
51
  import { OrderHistory } from './OrderHistory';
50
52
  import { PlaceSpot } from '../PlaceSpot'
51
53
  import { SendGiftCard } from '../GiftCard/SendGiftCard'
54
+ import { OrderEta } from './OrderEta'
52
55
  export const OrderDetailsUI = (props: OrderDetailsParams) => {
53
56
  const {
54
57
  navigation,
@@ -64,7 +67,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
64
67
  } = props;
65
68
 
66
69
  const theme = useTheme();
67
-
70
+ const [, { showToast }] = useToast()
68
71
  const styles = StyleSheet.create({
69
72
  rowDirection: {
70
73
  flexDirection: 'row',
@@ -120,10 +123,21 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
120
123
  const mapValidStatuses = [9, 19, 23]
121
124
  const placeSpotTypes = [3, 4, 5]
122
125
  const directionTypes = [2, 3, 4, 5]
123
- const activeStatus = [0, 3, 4, 7, 8, 9, 14, 18, 19, 20, 21, 22, 23]
126
+ const activeStatus = [0, 3, 4, 7, 8, 9, 13, 14, 18, 19, 20, 21, 22, 23]
127
+ const reorderStatus = [1, 2, 5, 6, 10, 11, 12]
124
128
  const enabledPoweredByOrdering = configs?.powered_by_ordering_module?.value
125
129
  const isGiftCardOrder = !order?.business_id
126
-
130
+ const hideDeliveryDate = theme?.confirmation?.components?.order?.components?.date?.hidden
131
+ const hideDeliveryProgress = theme?.confirmation?.components?.order?.components?.progress?.hidden
132
+ const hideBusinessPhone = theme?.confirmation?.components?.business?.components?.phone?.hidden
133
+ const hideBusinessMessages = theme?.confirmation?.components?.business?.components?.messages?.hidden
134
+ const hideBusinessEmail = theme?.confirmation?.components?.business?.components?.email?.hidden
135
+ const hideBusinessAddress = theme?.confirmation?.components?.business?.components?.address?.hidden
136
+ const hideDriverName = theme?.confirmation?.components?.driver?.components?.name?.hidden
137
+ const hideDriverPhone = theme?.confirmation?.components?.driver?.components?.phone?.hidden
138
+ const hideDriverMessages = theme?.confirmation?.components?.driver?.components?.messages?.hidden
139
+ const hideCustomerPhone = theme?.confirmation?.components?.customer?.components?.phone?.hidden
140
+ const hideCustomerAddress = theme?.confirmation?.components?.customer?.components?.address?.hidden
127
141
  const walletName: any = {
128
142
  cash: {
129
143
  name: t('PAY_WITH_CASH_WALLET', 'Pay with Cash Wallet'),
@@ -133,205 +147,6 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
133
147
  }
134
148
  }
135
149
 
136
- const getOrderStatus = (s: string) => {
137
- const status = parseInt(s);
138
- const orderStatus = [
139
- {
140
- key: 0,
141
- value: t('PENDING', 'Pending'),
142
- slug: 'PENDING',
143
- percentage: 0.25,
144
- image: theme.images.order.status0,
145
- },
146
- {
147
- key: 1,
148
- value: t('COMPLETED', 'Completed'),
149
- slug: 'COMPLETED',
150
- percentage: 1,
151
- image: theme.images.order.status1,
152
- },
153
- {
154
- key: 2,
155
- value: t('REJECTED', 'Rejected'),
156
- slug: 'REJECTED',
157
- percentage: 0,
158
- image: theme.images.order.status2,
159
- },
160
- {
161
- key: 3,
162
- value: t('DRIVER_IN_BUSINESS', 'Driver in business'),
163
- slug: 'DRIVER_IN_BUSINESS',
164
- percentage: 0.6,
165
- image: theme.images.order.status3,
166
- },
167
- {
168
- key: 4,
169
- value: t('PREPARATION_COMPLETED', 'Preparation Completed'),
170
- slug: 'PREPARATION_COMPLETED',
171
- percentage: 0.7,
172
- image: theme.images.order.status4,
173
- },
174
- {
175
- key: 5,
176
- value: t('REJECTED_BY_BUSINESS', 'Rejected by business'),
177
- slug: 'REJECTED_BY_BUSINESS',
178
- percentage: 0,
179
- image: theme.images.order.status5,
180
- },
181
- {
182
- key: 6,
183
- value: t('REJECTED_BY_DRIVER', 'Rejected by Driver'),
184
- slug: 'REJECTED_BY_DRIVER',
185
- percentage: 0,
186
- image: theme.images.order.status6,
187
- },
188
- {
189
- key: 7,
190
- value: t('ACCEPTED_BY_BUSINESS', 'Accepted by business'),
191
- slug: 'ACCEPTED_BY_BUSINESS',
192
- percentage: 0.35,
193
- image: theme.images.order.status7,
194
- },
195
- {
196
- key: 8,
197
- value: t('ACCEPTED_BY_DRIVER', 'Accepted by driver'),
198
- slug: 'ACCEPTED_BY_DRIVER',
199
- percentage: 0.45,
200
- image: theme.images.order.status8,
201
- },
202
- {
203
- key: 9,
204
- value: t('PICK_UP_COMPLETED_BY_DRIVER', 'Pick up completed by driver'),
205
- slug: 'PICK_UP_COMPLETED_BY_DRIVER',
206
- percentage: 0.8,
207
- image: theme.images.order.status9,
208
- },
209
- {
210
- key: 10,
211
- value: t('PICK_UP_FAILED_BY_DRIVER', 'Pick up Failed by driver'),
212
- slug: 'PICK_UP_FAILED_BY_DRIVER',
213
- percentage: 0,
214
- image: theme.images.order.status10,
215
- },
216
- {
217
- key: 11,
218
- value: t(
219
- 'DELIVERY_COMPLETED_BY_DRIVER',
220
- 'Delivery completed by driver',
221
- ),
222
- slug: 'DELIVERY_COMPLETED_BY_DRIVER',
223
- percentage: 1,
224
- image: theme.images.order.status11,
225
- },
226
- {
227
- key: 12,
228
- value: t('DELIVERY_FAILED_BY_DRIVER', 'Delivery Failed by driver'),
229
- slug: 'DELIVERY_FAILED_BY_DRIVER',
230
- percentage: 0,
231
- image: theme.images.order.status12,
232
- },
233
- {
234
- key: 13,
235
- value: t('PREORDER', 'PreOrder'),
236
- slug: 'PREORDER',
237
- percentage: 0,
238
- image: theme.images.order.status13,
239
- },
240
- {
241
- key: 14,
242
- value: t('ORDER_NOT_READY', 'Order not ready'),
243
- slug: 'ORDER_NOT_READY',
244
- percentage: 0,
245
- image: theme.images.order.status13,
246
- },
247
- {
248
- key: 15,
249
- value: t(
250
- 'ORDER_PICKEDUP_COMPLETED_BY_CUSTOMER',
251
- 'Order picked up completed by customer',
252
- ),
253
- slug: 'ORDER_PICKEDUP_COMPLETED_BY_CUSTOMER',
254
- percentage: 100,
255
- image: theme.images.order.status1,
256
- },
257
- {
258
- key: 16,
259
- value: t('CANCELLED_BY_CUSTOMER', 'Cancelled by customer'),
260
- slug: 'CANCELLED_BY_CUSTOMER',
261
- percentage: 0,
262
- image: theme.images.order.status2,
263
- },
264
- {
265
- key: 17,
266
- value: t(
267
- 'ORDER_NOT_PICKEDUP_BY_CUSTOMER',
268
- 'Order not picked up by customer',
269
- ),
270
- slug: 'ORDER_NOT_PICKEDUP_BY_CUSTOMER',
271
- percentage: 0,
272
- image: theme.images.order.status2,
273
- },
274
- {
275
- key: 18,
276
- value: t(
277
- 'DRIVER_ALMOST_ARRIVED_TO_BUSINESS',
278
- 'Driver almost arrived to business',
279
- ),
280
- slug: 'DRIVER_ALMOST_ARRIVED_TO_BUSINESS',
281
- percentage: 0.15,
282
- image: theme.images.order.status3,
283
- },
284
- {
285
- key: 19,
286
- value: t(
287
- 'DRIVER_ALMOST_ARRIVED_TO_CUSTOMER',
288
- 'Driver almost arrived to customer',
289
- ),
290
- slug: 'DRIVER_ALMOST_ARRIVED_TO_CUSTOMER',
291
- percentage: 0.9,
292
- image: theme.images.order.status11,
293
- },
294
- {
295
- key: 20,
296
- value: t(
297
- 'ORDER_CUSTOMER_ALMOST_ARRIVED_BUSINESS',
298
- 'Customer almost arrived to business',
299
- ),
300
- slug: 'ORDER_CUSTOMER_ALMOST_ARRIVED_BUSINESS',
301
- percentage: 90,
302
- image: theme.images.order.status7,
303
- },
304
- {
305
- key: 21,
306
- value: t(
307
- 'ORDER_CUSTOMER_ARRIVED_BUSINESS',
308
- 'Customer arrived to business',
309
- ),
310
- slug: 'ORDER_CUSTOMER_ARRIVED_BUSINESS',
311
- percentage: 95,
312
- image: theme.images.order.status7,
313
- },
314
- {
315
- key: 22,
316
- value: t('ORDER_LOOKING_FOR_DRIVER', 'Looking for driver'),
317
- slug: 'ORDER_LOOKING_FOR_DRIVER',
318
- percentage: 35,
319
- image: theme.images.order.status8
320
- },
321
- {
322
- key: 23,
323
- value: t('ORDER_DRIVER_ON_WAY', 'Driver on way'),
324
- slug: 'ORDER_DRIVER_ON_WAY',
325
- percentage: 45,
326
- image: theme.images.order.status8
327
- }
328
- ];
329
-
330
- const objectStatus = orderStatus.find((o) => o.key === status);
331
-
332
- return objectStatus && objectStatus;
333
- };
334
-
335
150
  const handleGoToMessages = (type: string) => {
336
151
  readMessages && readMessages();
337
152
  navigation.navigate(
@@ -380,7 +195,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
380
195
  order: {
381
196
  id: order?.id,
382
197
  business_id: order?.business_id,
383
- logo: order.business?.logo,
198
+ logo: order.business?.logo || theme.images.dummies.businessLogo,
384
199
  driver: order?.driver,
385
200
  products: order?.products,
386
201
  review: order?.review,
@@ -400,7 +215,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
400
215
  ) && !order.review && !isReviewed && handleClickOrderReview(order)
401
216
  }
402
217
 
403
-
218
+
404
219
  const resfreshOrder = () => {
405
220
  getOrder()
406
221
  }
@@ -524,8 +339,17 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
524
339
  }
525
340
  }, [driverLocation]);
526
341
 
342
+ useEffect(() => {
343
+ if (props?.order?.error && !props?.order?.loading) {
344
+ showToast(ToastType.Error, props?.order?.error)
345
+ navigation.navigate('BusinessList')
346
+ }
347
+ }, [props?.order?.error, props?.order?.loading])
348
+
349
+ const progressBarObjt = order?.delivery_type && props.order?.delivery_type === 2 ? getOrderStatuPickUp : getOrderStatus
350
+
527
351
  return (
528
- <OrderDetailsContainer
352
+ <OrderDetailsContainer
529
353
  keyboardShouldPersistTaps="handled"
530
354
  refreshControl={
531
355
  <RefreshControl
@@ -598,14 +422,12 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
598
422
  style={{ marginTop: Platform.OS === 'ios' ? 0 : 20 }}
599
423
  titleWrapStyle={{ paddingHorizontal: 0 }}
600
424
  titleStyle={{ marginRight: 0, marginLeft: 0 }}
601
- subTitle={<OText size={12} lineHeight={18} color={theme.colors.textNormal}>
602
- {
603
- activeStatus.includes(order?.status)
604
- ? order?.eta_time + 'min'
605
- : order?.delivery_datetime_utc
606
- ? parseDate(order?.delivery_datetime_utc)
607
- : parseDate(order?.delivery_datetime, { utc: false })
608
- }
425
+ subTitle={!hideDeliveryDate && <OText size={12} lineHeight={18} color={theme.colors.textNormal}>
426
+ {activeStatus.includes(order?.status) ? (
427
+ <OrderEta order={order} />
428
+ ) : (
429
+ parseDate(order?.reporting_data?.at[`status:${order.status}`])
430
+ )}
609
431
  </OText>}
610
432
  />
611
433
  {enabledPoweredByOrdering && (
@@ -644,7 +466,6 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
644
466
  activeOpacity={0.7}
645
467
  style={{ marginTop: 6 }}
646
468
  onPress={() => setIsOrderHistory(true)}
647
-
648
469
  >
649
470
  <OText
650
471
  size={12}
@@ -656,26 +477,29 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
656
477
  </OText>
657
478
  </TouchableOpacity>
658
479
  </View>
659
-
660
- <StaturBar>
661
- <LinearGradient
662
- start={{ x: 0.0, y: 0.0 }}
663
- end={{
664
- x: getOrderStatus(order?.status)?.percentage || 0,
665
- y: 0,
666
- }}
667
- locations={[0.9999, 0.9999]}
668
- colors={[theme.colors.primary, theme.colors.backgroundGray100]}
669
- style={styles.statusBar}
670
- />
671
- </StaturBar>
672
- <OText
673
- size={16}
674
- lineHeight={24}
675
- weight={'600'}
676
- color={theme.colors.textNormal}>
677
- {getOrderStatus(order?.status)?.value}
678
- </OText>
480
+ {!hideDeliveryProgress && (
481
+ <>
482
+ <StaturBar>
483
+ <LinearGradient
484
+ start={{ x: 0.0, y: 0.0 }}
485
+ end={{
486
+ x: progressBarObjt(order?.status)?.percentage || 0,
487
+ y: 0,
488
+ }}
489
+ locations={[0.9999, 0.9999]}
490
+ colors={[theme.colors.primary, theme.colors.backgroundGray100]}
491
+ style={styles.statusBar}
492
+ />
493
+ </StaturBar>
494
+ <OText
495
+ size={16}
496
+ lineHeight={24}
497
+ weight={'600'}
498
+ color={theme.colors.textNormal}>
499
+ {progressBarObjt(order?.status)?.value}
500
+ </OText>
501
+ </>
502
+ )}
679
503
  </OrderData>
680
504
  <View
681
505
  style={{
@@ -719,7 +543,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
719
543
  {order?.business?.name}
720
544
  </OText>
721
545
  <Icons>
722
- {!!order?.business?.cellphone && (
546
+ {!!order?.business?.cellphone && !hideBusinessPhone && (
723
547
  <TouchableOpacity
724
548
  onPress={() => order?.business?.cellphone &&
725
549
  Linking.openURL(`tel:${order?.business?.cellphone}`)
@@ -733,25 +557,29 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
733
557
  />
734
558
  </TouchableOpacity>
735
559
  )}
736
- <TouchableOpacity
737
- style={{ paddingStart: 5 }}
738
- onPress={() => handleGoToMessages('business')}>
739
- <OIcon
740
- src={theme.images.general.chat}
741
- width={16}
742
- color={theme.colors.disabled}
743
- />
744
- </TouchableOpacity>
560
+ {!hideBusinessMessages && (
561
+ <TouchableOpacity
562
+ style={{ paddingStart: 5 }}
563
+ onPress={() => handleGoToMessages('business')}>
564
+ <OIcon
565
+ src={theme.images.general.chat}
566
+ width={16}
567
+ color={theme.colors.disabled}
568
+ />
569
+ </TouchableOpacity>
570
+ )}
745
571
  </Icons>
746
572
  </View>
747
- <OText
748
- size={12}
749
- lineHeight={18}
750
- color={theme.colors.textNormal}
751
- mBottom={2}>
752
- {order?.business?.email}
753
- </OText>
754
- {!!order?.business?.cellphone && (
573
+ {!hideBusinessEmail && (
574
+ <OText
575
+ size={12}
576
+ lineHeight={18}
577
+ color={theme.colors.textNormal}
578
+ mBottom={2}>
579
+ {order?.business?.email}
580
+ </OText>
581
+ )}
582
+ {!!order?.business?.cellphone && !hideBusinessPhone && (
755
583
  <OText
756
584
  size={12}
757
585
  lineHeight={18}
@@ -760,9 +588,11 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
760
588
  {order?.business?.cellphone}
761
589
  </OText>
762
590
  )}
763
- <OText size={12} lineHeight={18} color={theme.colors.textNormal}>
764
- {order?.business?.address}
765
- </OText>
591
+ {!hideBusinessAddress && (
592
+ <OText size={12} lineHeight={18} color={theme.colors.textNormal}>
593
+ {order?.business?.address}
594
+ </OText>
595
+ )}
766
596
  </View>
767
597
  {directionTypes.includes(order?.delivery_type) && (
768
598
  <OButton
@@ -786,7 +616,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
786
616
  )}
787
617
  </OrderBusiness>
788
618
  )}
789
-
619
+
790
620
  {!isGiftCardOrder && placeSpotTypes.includes(order?.delivery_type) && (
791
621
  <PlaceSpotWrapper>
792
622
  <PlaceSpot
@@ -824,14 +654,16 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
824
654
  mBottom={2}>
825
655
  {order?.customer?.name} {order?.customer?.lastname}
826
656
  </OText>
827
- <OText
828
- size={12}
829
- lineHeight={18}
830
- color={theme.colors.textNormal}
831
- mBottom={2}>
832
- {order?.customer?.address}
833
- </OText>
834
- {(!!order?.customer?.cellphone) && (
657
+ {!hideCustomerAddress && (
658
+ <OText
659
+ size={12}
660
+ lineHeight={18}
661
+ color={theme.colors.textNormal}
662
+ mBottom={2}>
663
+ {order?.customer?.address}
664
+ </OText>
665
+ )}
666
+ {(!!order?.customer?.cellphone && !hideCustomerPhone) && (
835
667
  <OText
836
668
  size={12}
837
669
  lineHeight={18}
@@ -899,23 +731,29 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
899
731
  alignItems: 'center',
900
732
  justifyContent: 'space-between',
901
733
  }}>
902
- <OText size={12} lineHeight={18} color={theme.colors.textNormal} mBottom={2} style={{ flexGrow: 1, flexBasis: '80%' }}>
903
- {order?.driver?.name} {order?.driver?.lastname}
904
- </OText>
905
- <Icons>
906
- <TouchableOpacity
907
- onPress={() => handleGoToMessages('driver')}>
908
- <OIcon
909
- src={theme.images.general.chat}
910
- width={16}
911
- color={theme.colors.disabled}
912
- />
913
- </TouchableOpacity>
914
- </Icons>
734
+ {!hideDriverName && (
735
+ <OText size={12} lineHeight={18} color={theme.colors.textNormal} mBottom={2} style={{ flexGrow: 1, flexBasis: '80%' }}>
736
+ {order?.driver?.name} {order?.driver?.lastname}
737
+ </OText>
738
+ )}
739
+ {!hideDriverMessages && (
740
+ <Icons>
741
+ <TouchableOpacity
742
+ onPress={() => handleGoToMessages('driver')}>
743
+ <OIcon
744
+ src={theme.images.general.chat}
745
+ width={16}
746
+ color={theme.colors.disabled}
747
+ />
748
+ </TouchableOpacity>
749
+ </Icons>
750
+ )}
915
751
  </View>
916
- <OText size={12} lineHeight={18} color={theme.colors.textNormal} mBottom={2}>
917
- {order?.driver?.cellphone}
918
- </OText>
752
+ {!hideDriverPhone && (
753
+ <OText size={12} lineHeight={18} color={theme.colors.textNormal} mBottom={2}>
754
+ {order?.driver?.cellphone}
755
+ </OText>
756
+ )}
919
757
  </InfoBlock>
920
758
  </Customer>
921
759
  </OrderDriver>
@@ -956,25 +794,17 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
956
794
  parentStyle={{ marginTop: 29, marginEnd: 15 }}
957
795
  onClick={() => navigation.navigate('BottomTab', { screen: 'MyOrders' })}
958
796
  />
959
- {(
960
- parseInt(order?.status) === 1 ||
961
- parseInt(order?.status) === 2 ||
962
- parseInt(order?.status) === 5 ||
963
- parseInt(order?.status) === 6 ||
964
- parseInt(order?.status) === 10 ||
965
- parseInt(order?.status) === 11 ||
966
- parseInt(order?.status) === 12
967
- ) && (
968
- <OButton
969
- text={order.id === reorderState?.loading ? t('LOADING', 'Loading..') : t('REORDER', 'Reorder')}
970
- textStyle={{ fontSize: 14, color: theme.colors.primary }}
971
- imgRightSrc={null}
972
- borderColor='transparent'
973
- bgColor={theme.colors.primary + 10}
974
- style={{ borderRadius: 7.6, borderWidth: 1, height: 44, shadowOpacity: 0, marginTop: 29 }}
975
- onClick={() => handleReorder && handleReorder(order.id)}
976
- />
977
- )}
797
+ {(reorderStatus?.includes(parseInt(order?.status)) && order?.cart) && (
798
+ <OButton
799
+ text={order.id === reorderState?.loading ? t('LOADING', 'Loading..') : t('REORDER', 'Reorder')}
800
+ textStyle={{ fontSize: 14, color: theme.colors.primary }}
801
+ imgRightSrc={null}
802
+ borderColor='transparent'
803
+ bgColor={theme.colors.primary + 10}
804
+ style={{ borderRadius: 7.6, borderWidth: 1, height: 44, shadowOpacity: 0, marginTop: 29 }}
805
+ onClick={() => handleReorder && handleReorder(order.id)}
806
+ />
807
+ )}
978
808
  </OrderAction>
979
809
  </HeaderInfo>
980
810
  <OrderProducts>
@@ -1108,7 +938,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
1108
938
  </Table>
1109
939
  ))
1110
940
  }
1111
- {order?.summary?.delivery_price > 0 && (
941
+ {typeof order?.summary?.delivery_price === 'number' && (
1112
942
  <Table>
1113
943
  <OText size={12} lineHeight={18} weight={'400'} color={theme.colors.textNormal}>{t('DELIVERY_FEE', 'Delivery Fee')}</OText>
1114
944
  <OText size={12} lineHeight={18} weight={'400'} color={theme.colors.textNormal}>{parsePrice(order?.summary?.delivery_price)}</OText>
@@ -1183,16 +1013,18 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
1183
1013
  <OText>
1184
1014
  {event?.wallet_event
1185
1015
  ? walletName[event?.wallet_event?.wallet?.type]?.name
1186
- : event?.paymethod?.name}
1016
+ : t(event?.paymethod?.name.toUpperCase()?.replace(/ /g, '_'), event?.paymethod?.name)}
1187
1017
  </OText>
1188
- {event?.data?.charge_id && (
1018
+ {/* {event?.data?.charge_id && (
1189
1019
  <OText>
1190
1020
  {`${t('CODE', 'Code')}: ${event?.data?.charge_id}`}
1191
1021
  </OText>
1192
- )}
1022
+ )} */}
1193
1023
  </View>
1194
1024
  <OText>
1195
- -{parsePrice(event.amount, { isTruncable: true })}
1025
+ {configs.currency_position?.value === 'left'
1026
+ ? `${configs.format_number_currency?.value} -${parseNumber(event.amount, { isTruncable: true })}`
1027
+ : `-${parsePrice(event.amount, { isTruncable: true })}`}
1196
1028
  </OText>
1197
1029
  </View>
1198
1030
  ))}
@@ -1238,6 +1070,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
1238
1070
  >
1239
1071
  <OrderHistory
1240
1072
  order={order}
1073
+ hideViaText={props.hideViaText}
1241
1074
  messages={messages}
1242
1075
  enableReview={(
1243
1076
  parseInt(order?.status) === 1 ||
@@ -5,7 +5,6 @@ export const OrderDetailsContainer = styled.ScrollView`
5
5
  `
6
6
 
7
7
  export const NavBack = styled.TouchableOpacity`
8
-
9
8
  `
10
9
 
11
10
 
@@ -20,7 +20,8 @@ export const OrderItAgain = (props: OrderItAgainParams) => {
20
20
  currentCart,
21
21
  handleUpdateProducts,
22
22
  navigation,
23
- searchValue
23
+ searchValue,
24
+ businessSingleId
24
25
  } = props
25
26
 
26
27
  const [, t] = useLanguage()
@@ -65,6 +66,7 @@ export const OrderItAgain = (props: OrderItAgainParams) => {
65
66
  handleUpdateProducts={handleUpdateProducts}
66
67
  navigation={navigation}
67
68
  isPreviously
69
+ businessSingleId={businessSingleId}
68
70
  />
69
71
  </ProductWrapper>
70
72
  ))}