ordering-ui-react-native 0.16.85 → 0.16.86-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 +5 -5
  2. package/src/DeliveryApp.tsx +43 -1
  3. package/src/components/ActiveOrders/styles.tsx +8 -14
  4. package/src/components/BusinessInformation/index.tsx +19 -4
  5. package/src/components/BusinessInformation/styles.tsx +2 -2
  6. package/src/components/BusinessProductsList/index.tsx +8 -8
  7. package/src/components/BusinessesListing/index.tsx +1 -1
  8. package/src/components/LanguageSelector/index.tsx +21 -16
  9. package/src/components/Messages/index.tsx +2 -2
  10. package/src/components/OrderCreating/index.tsx +1 -21
  11. package/src/components/OrdersOption/index.tsx +54 -56
  12. package/src/components/PaymentOptionsWebView/index.tsx +119 -120
  13. package/src/components/SingleProductReview/index.tsx +7 -4
  14. package/src/components/VerifyPhone/styles.tsx +1 -2
  15. package/src/components/shared/OToast.tsx +4 -4
  16. package/src/utils/index.tsx +2 -1
  17. package/themes/business/index.tsx +2 -0
  18. package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +265 -240
  19. package/themes/business/src/components/AcceptOrRejectOrder/styles.tsx +6 -4
  20. package/themes/business/src/components/BusinessController/index.tsx +2 -2
  21. package/themes/business/src/components/Chat/index.tsx +31 -31
  22. package/themes/business/src/components/DriverMap/index.tsx +22 -9
  23. package/themes/business/src/components/GoogleMap/index.tsx +58 -57
  24. package/themes/business/src/components/LoginForm/Otp/index.tsx +120 -0
  25. package/themes/business/src/components/LoginForm/Otp/styles.tsx +7 -0
  26. package/themes/business/src/components/LoginForm/index.tsx +236 -80
  27. package/themes/business/src/components/LoginForm/styles.tsx +10 -0
  28. package/themes/business/src/components/MapView/index.tsx +19 -8
  29. package/themes/business/src/components/MessagesOption/index.tsx +11 -1
  30. package/themes/business/src/components/NewOrderNotification/index.tsx +31 -41
  31. package/themes/business/src/components/OrderDetails/Delivery.tsx +4 -3
  32. package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +96 -50
  33. package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +59 -62
  34. package/themes/business/src/components/OrderDetailsLogistic/index.tsx +195 -0
  35. package/themes/business/src/components/OrderDetailsLogistic/styles.tsx +5 -0
  36. package/themes/business/src/components/OrderMessage/index.tsx +18 -17
  37. package/themes/business/src/components/OrdersOption/index.tsx +79 -87
  38. package/themes/business/src/components/OrdersOption/styles.tsx +5 -1
  39. package/themes/business/src/components/OrdersOptionBusiness/index.tsx +15 -1
  40. package/themes/business/src/components/OrdersOptionCity/index.tsx +15 -1
  41. package/themes/business/src/components/OrdersOptionDate/index.tsx +19 -6
  42. package/themes/business/src/components/OrdersOptionDelivery/index.tsx +15 -1
  43. package/themes/business/src/components/OrdersOptionDriver/index.tsx +15 -1
  44. package/themes/business/src/components/OrdersOptionPaymethod/index.tsx +15 -1
  45. package/themes/business/src/components/OrdersOptionStatus/index.tsx +10 -1
  46. package/themes/business/src/components/PreviousMessages/index.tsx +17 -18
  47. package/themes/business/src/components/PreviousOrders/OrderItem.tsx +250 -0
  48. package/themes/business/src/components/PreviousOrders/OrdersGroupedItem.tsx +115 -0
  49. package/themes/business/src/components/PreviousOrders/index.tsx +447 -247
  50. package/themes/business/src/components/PreviousOrders/styles.tsx +31 -3
  51. package/themes/business/src/components/ProductItemAccordion/index.tsx +27 -3
  52. package/themes/business/src/components/ReviewCustomer/index.tsx +54 -27
  53. package/themes/business/src/components/shared/ODropDown.tsx +42 -8
  54. package/themes/business/src/components/shared/ODropDownCalendar.tsx +36 -7
  55. package/themes/business/src/components/shared/OLink.tsx +33 -13
  56. package/themes/business/src/components/shared/OModal.tsx +16 -9
  57. package/themes/business/src/components/shared/OText.tsx +8 -2
  58. package/themes/business/src/types/index.tsx +35 -3
  59. package/themes/business/src/utils/index.tsx +53 -0
  60. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  61. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  62. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  63. package/themes/kiosk/src/components/BusinessesListing/index.tsx +2 -1
  64. package/themes/kiosk/src/components/Checkout/index.tsx +6 -0
  65. package/themes/kiosk/src/components/LoginForm/Otp/index.tsx +92 -0
  66. package/themes/kiosk/src/components/LoginForm/Otp/styles.tsx +7 -0
  67. package/themes/kiosk/src/components/LoginForm/index.tsx +473 -151
  68. package/themes/kiosk/src/components/LoginForm/styles.tsx +14 -1
  69. package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
  70. package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
  71. package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
  72. package/themes/kiosk/src/components/PhoneInputNumber/index.tsx +1 -0
  73. package/themes/kiosk/src/components/PhoneInputNumber/styles.tsx +1 -3
  74. package/themes/kiosk/src/components/ProductForm/index.tsx +1 -14
  75. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  76. package/themes/kiosk/src/components/shared/OModal.tsx +14 -11
  77. package/themes/kiosk/src/layouts/Container.tsx +7 -1
  78. package/themes/kiosk/src/types/index.d.ts +13 -0
  79. package/themes/kiosk/src/utils/index.tsx +15 -0
  80. package/themes/original/index.tsx +8 -0
  81. package/themes/original/src/components/AddressDetails/index.tsx +10 -8
  82. package/themes/original/src/components/AddressForm/index.tsx +155 -139
  83. package/themes/original/src/components/AddressList/index.tsx +18 -18
  84. package/themes/original/src/components/AddressList/styles.tsx +4 -2
  85. package/themes/original/src/components/AppleLogin/index.tsx +4 -4
  86. package/themes/original/src/components/BusinessBasicInformation/index.tsx +118 -76
  87. package/themes/original/src/components/BusinessController/index.tsx +100 -47
  88. package/themes/original/src/components/BusinessController/styles.tsx +14 -9
  89. package/themes/original/src/components/BusinessInformation/index.tsx +10 -31
  90. package/themes/original/src/components/BusinessItemAccordion/index.tsx +9 -3
  91. package/themes/original/src/components/BusinessListingSearch/index.tsx +87 -34
  92. package/themes/original/src/components/BusinessListingSearch/styles.tsx +6 -0
  93. package/themes/original/src/components/BusinessPreorder/index.tsx +96 -15
  94. package/themes/original/src/components/BusinessProductsList/index.tsx +10 -8
  95. package/themes/original/src/components/BusinessProductsList/styles.tsx +0 -3
  96. package/themes/original/src/components/BusinessProductsListing/index.tsx +564 -495
  97. package/themes/original/src/components/BusinessProductsListing/styles.tsx +13 -12
  98. package/themes/original/src/components/BusinessTypeFilter/index.tsx +3 -2
  99. package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +2 -1
  100. package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +116 -81
  101. package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +1 -9
  102. package/themes/original/src/components/BusinessesListing/index.tsx +6 -6
  103. package/themes/original/src/components/Cart/index.tsx +83 -42
  104. package/themes/original/src/components/CartContent/index.tsx +77 -15
  105. package/themes/original/src/components/CartContent/styles.tsx +11 -1
  106. package/themes/original/src/components/Checkout/index.tsx +75 -86
  107. package/themes/original/src/components/Checkout/styles.tsx +4 -2
  108. package/themes/original/src/components/CitiesControl/index.tsx +89 -0
  109. package/themes/original/src/components/CitiesControl/styles.tsx +17 -0
  110. package/themes/original/src/components/DriverTips/index.tsx +52 -37
  111. package/themes/original/src/components/DriverTips/styles.tsx +2 -1
  112. package/themes/original/src/components/Favorite/index.tsx +7 -4
  113. package/themes/original/src/components/Favorite/styles.tsx +1 -1
  114. package/themes/original/src/components/FavoriteList/index.tsx +70 -80
  115. package/themes/original/src/components/FloatingButton/index.tsx +1 -2
  116. package/themes/original/src/components/FloatingButton/styles.tsx +1 -1
  117. package/themes/original/src/components/GPSButton/index.tsx +20 -19
  118. package/themes/original/src/components/GPSButton/styles.ts +3 -3
  119. package/themes/original/src/components/GoogleMap/index.tsx +10 -1
  120. package/themes/original/src/components/Help/index.tsx +8 -8
  121. package/themes/original/src/components/HelpAccountAndPayment/index.tsx +11 -22
  122. package/themes/original/src/components/HelpAccountAndPayment/styles.tsx +6 -0
  123. package/themes/original/src/components/HelpGuide/index.tsx +12 -16
  124. package/themes/original/src/components/HelpGuide/styles.tsx +6 -0
  125. package/themes/original/src/components/HelpOrder/index.tsx +12 -25
  126. package/themes/original/src/components/HelpOrder/styles.tsx +8 -1
  127. package/themes/original/src/components/LanguageSelector/index.tsx +19 -14
  128. package/themes/original/src/components/LastOrder/index.tsx +1 -34
  129. package/themes/original/src/components/LoginForm/Otp/index.tsx +89 -73
  130. package/themes/original/src/components/LoginForm/Otp/styles.tsx +0 -1
  131. package/themes/original/src/components/LoginForm/index.tsx +28 -8
  132. package/themes/original/src/components/LottieAnimation/index.tsx +78 -0
  133. package/themes/original/src/components/MessageListing/index.tsx +7 -40
  134. package/themes/original/src/components/Messages/index.tsx +26 -10
  135. package/themes/original/src/components/MomentOption/index.tsx +195 -88
  136. package/themes/original/src/components/MultiCart/index.tsx +50 -0
  137. package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +92 -93
  138. package/themes/original/src/components/MultiCheckout/index.tsx +179 -77
  139. package/themes/original/src/components/MultiOrdersDetails/SingleOrderCard.tsx +37 -224
  140. package/themes/original/src/components/MultiOrdersDetails/index.tsx +67 -20
  141. package/themes/original/src/components/MultiOrdersDetails/styles.tsx +1 -1
  142. package/themes/original/src/components/MyOrders/index.tsx +66 -17
  143. package/themes/original/src/components/NavBar/index.tsx +6 -11
  144. package/themes/original/src/components/NetworkError/index.tsx +5 -3
  145. package/themes/original/src/components/NotFoundSource/index.tsx +2 -1
  146. package/themes/original/src/components/Notifications/index.tsx +144 -0
  147. package/themes/original/src/components/Notifications/styles.tsx +20 -0
  148. package/themes/original/src/components/OrderDetails/index.tsx +108 -218
  149. package/themes/original/src/components/OrderDetails/styles.tsx +10 -1
  150. package/themes/original/src/components/OrderItAgain/index.tsx +44 -42
  151. package/themes/original/src/components/OrderProgress/index.tsx +74 -104
  152. package/themes/original/src/components/OrderProgress/styles.tsx +5 -0
  153. package/themes/original/src/components/OrderSummary/index.tsx +2 -2
  154. package/themes/original/src/components/OrderTypeSelector/index.tsx +9 -3
  155. package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/index.tsx +29 -20
  156. package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/index.tsx +3 -0
  157. package/themes/original/src/components/OrdersOption/index.tsx +76 -83
  158. package/themes/original/src/components/PageBanner/index.tsx +146 -0
  159. package/themes/original/src/components/PageBanner/styles.tsx +11 -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 +2 -2
  163. package/themes/original/src/components/PhoneInputNumber/index.tsx +1 -1
  164. package/themes/original/src/components/PlaceSpot/index.tsx +12 -6
  165. package/themes/original/src/components/PreviousOrders/index.tsx +3 -2
  166. package/themes/original/src/components/ProductForm/index.tsx +240 -256
  167. package/themes/original/src/components/ProductForm/styles.tsx +5 -8
  168. package/themes/original/src/components/ProductItemAccordion/index.tsx +199 -128
  169. package/themes/original/src/components/ProductOptionSubOption/index.tsx +18 -10
  170. package/themes/original/src/components/ProductOptionSubOption/styles.tsx +1 -2
  171. package/themes/original/src/components/ProfessionalFilter/SingleProfessionalCard/index.tsx +108 -0
  172. package/themes/original/src/components/ProfessionalFilter/index.tsx +20 -49
  173. package/themes/original/src/components/ProfessionalProfile/index.tsx +54 -14
  174. package/themes/original/src/components/Promotions/index.tsx +234 -220
  175. package/themes/original/src/components/Promotions/styles.tsx +7 -2
  176. package/themes/original/src/components/ReviewDriver/index.tsx +3 -3
  177. package/themes/original/src/components/ReviewOrder/index.tsx +43 -11
  178. package/themes/original/src/components/ReviewOrder/styles.tsx +7 -0
  179. package/themes/original/src/components/ReviewProducts/index.tsx +8 -5
  180. package/themes/original/src/components/ReviewTrigger/index.tsx +27 -9
  181. package/themes/original/src/components/ReviewTrigger/styles.tsx +8 -1
  182. package/themes/original/src/components/ScheduleAccordion/index.tsx +68 -0
  183. package/themes/original/src/components/ScheduleAccordion/styles.tsx +14 -0
  184. package/themes/original/src/components/ServiceForm/index.tsx +377 -270
  185. package/themes/original/src/components/Sessions/index.tsx +11 -8
  186. package/themes/original/src/components/Sessions/styles.tsx +5 -0
  187. package/themes/original/src/components/SignupForm/index.tsx +78 -66
  188. package/themes/original/src/components/SingleOrderCard/index.tsx +125 -56
  189. package/themes/original/src/components/SingleOrderCard/styles.tsx +10 -8
  190. package/themes/original/src/components/SingleProductCard/index.tsx +104 -45
  191. package/themes/original/src/components/SingleProductCard/styles.tsx +14 -13
  192. package/themes/original/src/components/SingleProductReview/index.tsx +38 -5
  193. package/themes/original/src/components/SingleProductReview/styles.tsx +12 -0
  194. package/themes/original/src/components/StripeCardsList/index.tsx +1 -1
  195. package/themes/original/src/components/StripeElementsForm/index.tsx +4 -1
  196. package/themes/original/src/components/UpsellingProducts/index.tsx +243 -218
  197. package/themes/original/src/components/UpsellingProducts/styles.tsx +12 -1
  198. package/themes/original/src/components/UserDetails/index.tsx +8 -4
  199. package/themes/original/src/components/UserFormDetails/index.tsx +53 -54
  200. package/themes/original/src/components/UserProfile/index.tsx +58 -35
  201. package/themes/original/src/components/UserProfile/styles.ts +17 -0
  202. package/themes/original/src/components/UserProfileForm/index.tsx +21 -28
  203. package/themes/original/src/components/UserProfileForm/styles.tsx +7 -0
  204. package/themes/original/src/components/Wallets/index.tsx +96 -93
  205. package/themes/original/src/components/Wallets/styles.tsx +2 -0
  206. package/themes/original/src/components/shared/CardAnimation.tsx +47 -0
  207. package/themes/original/src/components/shared/HeaderTitle.tsx +8 -3
  208. package/themes/original/src/components/shared/OBottomPopup.tsx +1 -1
  209. package/themes/original/src/components/shared/OButton.tsx +1 -1
  210. package/themes/original/src/components/shared/OIcon.tsx +8 -1
  211. package/themes/original/src/components/shared/OInput.tsx +10 -1
  212. package/themes/original/src/layouts/Container.tsx +13 -9
  213. package/themes/original/src/types/index.tsx +36 -5
  214. package/themes/original/src/utils/index.tsx +321 -58
  215. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
@@ -26,48 +26,50 @@ export const OrderItAgain = (props: OrderItAgainParams) => {
26
26
  const [, t] = useLanguage()
27
27
  const theme = useTheme()
28
28
  const { width } = Dimensions.get('window');
29
- const productsFilterd = productList?.length > 0 && productList?.sort((a: any, b:any) => moment(b?.last_ordered_date).valueOf() - moment(a?.last_ordered_date).valueOf()).filter((product : any) => product?.name?.toLowerCase()?.includes(searchValue?.toLowerCase()))
29
+ const productsFilterd = productList?.length > 0 && productList.filter((product : any) => !searchValue || product?.name?.toLowerCase()?.includes(searchValue?.toLowerCase()))?.sort((a: any, b:any) => moment(b?.last_ordered_date).valueOf() - moment(a?.last_ordered_date).valueOf())
30
30
  return (
31
- <Container hide={productsFilterd?.length === 0}>
32
- <OText
33
- size={16}
34
- lineHeight={24}
35
- color={theme.colors.textNormal}
36
- style={{
37
- fontWeight: '600',
38
- marginBottom: 6
39
- }}
40
- >
41
- {t('ORDER_IT_AGAIN', 'Order it again')}
42
- </OText>
43
- <OText
44
- size={12}
45
- lineHeight={18}
46
- color={theme.colors.disabled}
47
- >
48
- {t('ORDER_IT_AGAIN_DESC', 'Quickly add items from your past orders.')}
49
- </OText>
50
- <ScrollView
51
- horizontal
52
- showsVerticalScrollIndicator={false}
53
- showsHorizontalScrollIndicator={false}
54
- >
55
- {productsFilterd.map((product: any, i: number) => (
56
- <ProductWrapper key={'prod_' + product.id + `_${i}`} style={{ width: width - 120, }}>
57
- <SingleProductCard
58
- isSoldOut={product.inventoried && !product.quantity}
59
- product={product}
60
- businessId={businessId}
61
- categoryState={categoryState}
62
- onProductClick={() => onProductClick(product)}
63
- productAddedToCartLength={currentCart?.products?.reduce((productsLength: number, Cproduct: any) => { return productsLength + (Cproduct?.id === product?.id ? Cproduct?.quantity : 0) }, 0)}
64
- handleUpdateProducts={handleUpdateProducts}
65
- navigation={navigation}
66
- isPreviously
67
- />
68
- </ProductWrapper>
69
- ))}
70
- </ScrollView>
71
- </Container>
31
+ productsFilterd?.length > 0 ? (
32
+ <Container>
33
+ <OText
34
+ size={16}
35
+ lineHeight={24}
36
+ color={theme.colors.textNormal}
37
+ style={{
38
+ fontWeight: '600',
39
+ marginBottom: 6
40
+ }}
41
+ >
42
+ {t('ORDER_IT_AGAIN', 'Order it again')}
43
+ </OText>
44
+ <OText
45
+ size={12}
46
+ lineHeight={18}
47
+ color={theme.colors.disabled}
48
+ >
49
+ {t('ORDER_IT_AGAIN_DESC', 'Quickly add items from your past orders.')}
50
+ </OText>
51
+ <ScrollView
52
+ horizontal
53
+ showsVerticalScrollIndicator={false}
54
+ showsHorizontalScrollIndicator={false}
55
+ >
56
+ {productsFilterd.map((product: any, i: number) => (
57
+ <ProductWrapper key={'prod_' + product.id + `_${i}`} style={{ width: width - 120, }}>
58
+ <SingleProductCard
59
+ isSoldOut={product.inventoried && !product.quantity}
60
+ product={product}
61
+ businessId={businessId}
62
+ categoryState={categoryState}
63
+ onProductClick={() => onProductClick(product)}
64
+ productAddedToCartLength={currentCart?.products?.reduce((productsLength: number, Cproduct: any) => { return productsLength + (Cproduct?.id === product?.id ? Cproduct?.quantity : 0) }, 0)}
65
+ handleUpdateProducts={handleUpdateProducts}
66
+ navigation={navigation}
67
+ isPreviously
68
+ />
69
+ </ProductWrapper>
70
+ ))}
71
+ </ScrollView>
72
+ </Container>
73
+ ) : null
72
74
  )
73
75
  }
@@ -17,8 +17,11 @@ import {
17
17
  ProgressBar,
18
18
  TimeWrapper,
19
19
  ProgressTextWrapper,
20
- OrderInfoWrapper
20
+ OrderInfoWrapper,
21
+ OrderProgressWrapper
21
22
  } from './styles'
23
+ import { getOrderStatus } from '../../utils'
24
+
22
25
  const OrderProgressUI = (props: any) => {
23
26
  const {
24
27
  orderList,
@@ -47,9 +50,9 @@ const OrderProgressUI = (props: any) => {
47
50
  height: 1
48
51
  },
49
52
  shadowColor: '#000',
50
- shadowOpacity: 0.1,
51
- shadowRadius: 1,
52
- elevation: 2
53
+ shadowOpacity: 0.2,
54
+ shadowRadius: 2,
55
+ elevation: 3
53
56
  },
54
57
  logoWrapper: {
55
58
  overflow: 'hidden',
@@ -73,49 +76,12 @@ const OrderProgressUI = (props: any) => {
73
76
  }
74
77
  });
75
78
 
76
- const getOrderStatus = (s: any) => {
77
- const status = parseInt(s)
78
- const orderStatus = [
79
- { key: 0, value: t('PENDING', theme?.defaultLanguages?.PENDING || 'Pending'), slug: 'PENDING', percentage: 25 },
80
- { key: 1, value: t('COMPLETED', theme?.defaultLanguages?.COMPLETED || 'Completed'), slug: 'COMPLETED', percentage: 100 },
81
- { key: 2, value: t('REJECTED', theme?.defaultLanguages?.REJECTED || 'Rejected'), slug: 'REJECTED', percentage: 0 },
82
- { key: 3, value: t('DRIVER_IN_BUSINESS', theme?.defaultLanguages?.DRIVER_IN_BUSINESS || 'Driver in business'), slug: 'DRIVER_IN_BUSINESS', percentage: 60 },
83
- { key: 4, value: t('PREPARATION_COMPLETED', theme?.defaultLanguages?.PREPARATION_COMPLETED || 'Preparation Completed'), slug: 'PREPARATION_COMPLETED', percentage: 70 },
84
- { key: 5, value: t('REJECTED_BY_BUSINESS', theme?.defaultLanguages?.REJECTED_BY_BUSINESS || 'Rejected by business'), slug: 'REJECTED_BY_BUSINESS', percentage: 0 },
85
- { key: 6, value: t('REJECTED_BY_DRIVER', theme?.defaultLanguages?.REJECTED_BY_DRIVER || 'Rejected by Driver'), slug: 'REJECTED_BY_DRIVER', percentage: 0 },
86
- { key: 7, value: t('ACCEPTED_BY_BUSINESS', theme?.defaultLanguages?.ACCEPTED_BY_BUSINESS || 'Accepted by business'), slug: 'ACCEPTED_BY_BUSINESS', percentage: 35 },
87
- { key: 8, value: t('ACCEPTED_BY_DRIVER', theme?.defaultLanguages?.ACCEPTED_BY_DRIVER || 'Accepted by driver'), slug: 'ACCEPTED_BY_DRIVER', percentage: 45 },
88
- { key: 9, value: t('PICK_UP_COMPLETED_BY_DRIVER', theme?.defaultLanguages?.PICK_UP_COMPLETED_BY_DRIVER || 'Pick up completed by driver'), slug: 'PICK_UP_COMPLETED_BY_DRIVER', percentage: 80 },
89
- { key: 10, value: t('PICK_UP_FAILED_BY_DRIVER', theme?.defaultLanguages?.PICK_UP_FAILED_BY_DRIVER || 'Pick up Failed by driver'), slug: 'PICK_UP_FAILED_BY_DRIVER', percentage: 0 },
90
- { key: 11, value: t('DELIVERY_COMPLETED_BY_DRIVER', theme?.defaultLanguages?.DELIVERY_COMPLETED_BY_DRIVER || 'Delivery completed by driver'), slug: 'DELIVERY_COMPLETED_BY_DRIVER', percentage: 100 },
91
- { key: 12, value: t('DELIVERY_FAILED_BY_DRIVER', theme?.defaultLanguages?.DELIVERY_FAILED_BY_DRIVER || 'Delivery Failed by driver'), slug: 'DELIVERY_FAILED_BY_DRIVER', percentage: 0 },
92
- { key: 13, value: t('PREORDER', theme?.defaultLanguages?.PREORDER || 'PreOrder'), slug: 'PREORDER', percentage: 0 },
93
- { key: 14, value: t('ORDER_NOT_READY', theme?.defaultLanguages?.ORDER_NOT_READY || 'Order not ready'), slug: 'ORDER_NOT_READY', percentage: 65 },
94
- { key: 15, value: t('ORDER_PICKEDUP_COMPLETED_BY_CUSTOMER', theme?.defaultLanguages?.ORDER_PICKEDUP_COMPLETED_BY_CUSTOMER || 'Order picked up completed by customer'), slug: 'ORDER_PICKEDUP_COMPLETED_BY_CUSTOMER', percentage: 100 },
95
- { key: 16, value: t('ORDER_STATUS_CANCELLED_BY_CUSTOMER', theme?.defaultLanguages?.ORDER_STATUS_CANCELLED_BY_CUSTOMER || 'Order cancelled by customer'), slug: 'ORDER_STATUS_CANCELLED_BY_CUSTOMER', percentage: 0 },
96
- { key: 17, value: t('ORDER_NOT_PICKEDUP_BY_CUSTOMER', theme?.defaultLanguages?.ORDER_NOT_PICKEDUP_BY_CUSTOMER || 'Order not picked up by customer'), slug: 'ORDER_NOT_PICKEDUP_BY_CUSTOMER', percentage: 0 },
97
- { key: 18, value: t('ORDER_DRIVER_ALMOST_ARRIVED_BUSINESS', theme?.defaultLanguages?.ORDER_DRIVER_ALMOST_ARRIVED_BUSINESS || 'Driver almost arrived to business'), slug: 'ORDER_DRIVER_ALMOST_ARRIVED_BUSINESS', percentage: 55 },
98
- { key: 19, value: t('ORDER_DRIVER_ALMOST_ARRIVED_CUSTOMER', theme?.defaultLanguages?.ORDER_DRIVER_ALMOST_ARRIVED_CUSTOMER || 'Driver almost arrived to customer'), slug: 'ORDER_DRIVER_ALMOST_ARRIVED_CUSTOMER', percentage: 90 },
99
- { key: 20, value: t('ORDER_CUSTOMER_ALMOST_ARRIVED_BUSINESS', theme?.defaultLanguages?.ORDER_CUSTOMER_ALMOST_ARRIVED_BUSINESS || 'Customer almost arrived to business'), slug: 'ORDER_CUSTOMER_ALMOST_ARRIVED_BUSINESS', percentage: 90 },
100
- { key: 21, value: t('ORDER_CUSTOMER_ARRIVED_BUSINESS', theme?.defaultLanguages?.ORDER_CUSTOMER_ARRIVED_BUSINESS || 'Customer arrived to business'), slug: 'ORDER_CUSTOMER_ARRIVED_BUSINESS', percentage: 95 },
101
- { key: 22, value: t('ORDER_LOOKING_FOR_DRIVER', theme?.defaultLanguages?.ORDER_LOOKING_FOR_DRIVER || 'Looking for driver'), slug: 'ORDER_LOOKING_FOR_DRIVER', percentage: 35 },
102
- { key: 23, value: t('ORDER_DRIVER_ON_WAY', theme?.defaultLanguages?.ORDER_DRIVER_ON_WAY || 'Driver on way'), slug: 'ORDER_DRIVER_ON_WAY', percentage: 45 }
103
- ]
104
-
105
- const objectStatus = orderStatus.find((o) => o.key === status)
106
-
107
- return objectStatus && objectStatus
108
- }
109
-
110
79
  const convertDiffToHours = (order: any) => {
111
- const time = order.delivery_type === 1 ? order?.business?.delivery_time : order?.business?.pickup_time
80
+ const minute = order?.eta_time
112
81
  const deliveryTime = order?.delivery_datetime_utc
113
82
  ? parseDate(order?.delivery_datetime_utc, { outputFormat: 'YYYY-MM-DD HH:mm' })
114
83
  : parseDate(order?.delivery_datetime, { utc: false, outputFormat: 'YYYY-MM-DD HH:mm' })
115
- const hour = time?.split(':')?.[0]
116
- const minute = time?.split(':')?.[1]
117
- const result = time ? (parseInt(hour, 10) * 60) + parseInt(minute, 10) : 0
118
- const returnedDate = moment(deliveryTime).add(result, 'minutes').format('hh:mm A')
84
+ const returnedDate = moment(deliveryTime).add(minute, 'minutes').format('hh:mm A')
119
85
  return returnedDate
120
86
  }
121
87
 
@@ -144,70 +110,74 @@ const OrderProgressUI = (props: any) => {
144
110
  return (
145
111
  <>
146
112
  {(orderList?.loading && !initialLoaded) && (
147
- <Placeholder Animation={Fade} height={Platform.OS === 'ios' ? 147.5 : 158}>
148
- <PlaceholderLine height={60} style={{ borderRadius: 8, marginBottom: 10 }} />
149
- <PlaceholderLine height={20} style={{ marginBottom: 10 }} />
150
- <PlaceholderLine height={40} style={{ borderRadius: 8, marginBottom: 10 }} />
151
- </Placeholder>
113
+ <OrderProgressWrapper>
114
+ <Placeholder Animation={Fade} height={Platform.OS === 'ios' ? 147.5 : 158}>
115
+ <PlaceholderLine height={60} style={{ borderRadius: 8, marginBottom: 10 }} />
116
+ <PlaceholderLine height={20} style={{ marginBottom: 10 }} />
117
+ <PlaceholderLine height={40} style={{ borderRadius: 8, marginBottom: 10 }} />
118
+ </Placeholder>
119
+ </OrderProgressWrapper>
152
120
  )}
153
121
  {(!orderList?.loading || initialLoaded) && orderList?.orders?.length > 0 && lastOrder && (
154
- <View style={styles.main}>
155
- <OrderInfoWrapper style={{ flex: 1 }}>
156
- <View style={styles.logoWrapper}>
157
- <FastImage
158
- style={{ width: 50, height: 50 }}
159
- source={{
160
- uri: optimizeImage(lastOrder?.business?.logo, 'h_50,c_limit'),
161
- priority: FastImage.priority.normal,
162
- }}
163
- resizeMode={FastImage.resizeMode.cover}
164
- />
165
- </View>
166
- <View style={{
167
- paddingHorizontal: 10,
168
- flex: 1
169
- }}
170
- >
171
- <OText
172
- size={13}
173
- style={{
174
- fontWeight: 'bold',
175
- marginBottom: 3
176
- }}
177
- >{t('ORDER_IN_PROGRESS', 'Order in progress')}</OText>
178
- <OText size={11} numberOfLines={1} ellipsizeMode='tail'>{t('RESTAURANT_PREPARING_YOUR_ORDER', 'The restaurant is preparing your order')}</OText>
179
- <TouchableOpacity onPress={() => handleGoToOrder('MyOrders')}>
180
- <View style={styles.navigationButton}>
181
- <OText size={11} color={theme.colors.primary}>{t('GO_TO_MY_ORDERS', 'Go to my orders')}</OText>
182
- <IconAntDesign
183
- name='arrowright'
184
- color={theme.colors.primary}
185
- size={13}
186
- style={{ marginHorizontal: 5 }}
187
- />
188
- </View>
189
- </TouchableOpacity>
122
+ <OrderProgressWrapper>
123
+ <View style={styles.main}>
124
+ <OrderInfoWrapper style={{ flex: 1 }}>
125
+ <View style={styles.logoWrapper}>
126
+ <FastImage
127
+ style={{ width: 50, height: 50 }}
128
+ source={orderList?.orders.length === 1 ? {
129
+ uri: optimizeImage(lastOrder?.business?.logo, 'h_50,c_limit'),
130
+ priority: FastImage.priority.normal,
131
+ } : theme.images.logos.logotype}
132
+ resizeMode={FastImage.resizeMode.contain}
133
+ />
134
+ </View>
135
+ <View style={{
136
+ paddingHorizontal: 10,
137
+ flex: 1
138
+ }}
139
+ >
140
+ <OText
141
+ size={13}
142
+ style={{
143
+ fontWeight: 'bold',
144
+ marginBottom: 3
145
+ }}
146
+ >{t('ORDER_IN_PROGRESS', 'Order in progress')}</OText>
147
+ <OText size={11} numberOfLines={1} ellipsizeMode='tail'>{t('RESTAURANT_PREPARING_YOUR_ORDER', 'The restaurant is preparing your order')}</OText>
148
+ <TouchableOpacity onPress={() => handleGoToOrder('MyOrders')}>
149
+ <View style={styles.navigationButton}>
150
+ <OText size={11} color={theme.colors.primary}>{t('GO_TO_MY_ORDERS', 'Go to my orders')}</OText>
151
+ <IconAntDesign
152
+ name='arrowright'
153
+ color={theme.colors.primary}
154
+ size={13}
155
+ style={{ marginHorizontal: 5 }}
156
+ />
157
+ </View>
158
+ </TouchableOpacity>
159
+ </View>
160
+ </OrderInfoWrapper>
161
+ <View style={{ flex: 1 }}>
162
+ <ProgressContentWrapper>
163
+ <ProgressBar style={{ width: getOrderStatus(lastOrder.status)?.percentage ? `${getOrderStatus(lastOrder.status)?.percentage}%` : '0%' }} />
164
+ </ProgressContentWrapper>
165
+ <ProgressTextWrapper>
166
+ <OText size={12} style={{ width: '50%' }}>{getOrderStatus(lastOrder.status)?.value}</OText>
167
+ <TimeWrapper>
168
+ <OText size={11}>{t('ESTIMATED_DELIVERY', 'Estimated delivery')}</OText>
169
+ <OText size={11}>
170
+ {lastOrder?.delivery_datetime_utc
171
+ ? parseTime(lastOrder?.delivery_datetime_utc, { outputFormat: 'hh:mm A' })
172
+ : parseTime(lastOrder?.delivery_datetime, { utc: false })}
173
+ &nbsp;-&nbsp;
174
+ {convertDiffToHours(lastOrder)}
175
+ </OText>
176
+ </TimeWrapper>
177
+ </ProgressTextWrapper>
190
178
  </View>
191
- </OrderInfoWrapper>
192
- <View style={{ flex: 1 }}>
193
- <ProgressContentWrapper>
194
- <ProgressBar style={{ width: getOrderStatus(lastOrder.status)?.percentage ? `${getOrderStatus(lastOrder.status)?.percentage}%` : '0%' }} />
195
- </ProgressContentWrapper>
196
- <ProgressTextWrapper>
197
- <OText size={12} style={{ width: '50%' }}>{getOrderStatus(lastOrder.status)?.value}</OText>
198
- <TimeWrapper>
199
- <OText size={11}>{t('ESTIMATED_DELIVERY', 'Estimated delivery')}</OText>
200
- <OText size={11}>
201
- {lastOrder?.delivery_datetime_utc
202
- ? parseTime(lastOrder?.delivery_datetime_utc, { outputFormat: 'hh:mm A' })
203
- : parseTime(lastOrder?.delivery_datetime, { utc: false })}
204
- &nbsp;-&nbsp;
205
- {convertDiffToHours(lastOrder)}
206
- </OText>
207
- </TimeWrapper>
208
- </ProgressTextWrapper>
209
179
  </View>
210
- </View>
180
+ </OrderProgressWrapper>
211
181
  )}
212
182
  {/* {!orderList?.loading && orderList?.orders?.length === 0 && (
213
183
  <NotFoundSource
@@ -228,7 +198,7 @@ export const OrderProgress = (props: any) => {
228
198
  useDefualtSessionManager: true,
229
199
  paginationSettings: {
230
200
  initialPage: 1,
231
- pageSize: 1,
201
+ pageSize: 10,
232
202
  controlType: 'infinity'
233
203
  }
234
204
  }
@@ -29,3 +29,8 @@ export const OrderInfoWrapper = styled.View`
29
29
  align-items: center;
30
30
  margin-bottom: 15px;
31
31
  `
32
+ export const OrderProgressWrapper = styled.View`
33
+ margin-top: 37px;
34
+ margin-bottom: 20px;
35
+ padding-horizontal: 40px;
36
+ `
@@ -292,10 +292,10 @@ const OrderSummaryUI = (props: any) => {
292
292
  {cart?.total >= 1 && (
293
293
  <View style={{ marginTop: 15, borderTopWidth: 1, borderTopColor: '#d9d9d9' }}>
294
294
  <OSTable style={{ marginTop: 15 }}>
295
- <OText size={14} style={{ fontWeight: 'bold' }}>
295
+ <OText size={14} style={{ fontWeight: 'bold' }} color={theme.colors.textNormal}>
296
296
  {t('TOTAL', 'Total')}
297
297
  </OText>
298
- <OText size={14} style={{ fontWeight: 'bold' }} >
298
+ <OText size={14} style={{ fontWeight: 'bold' }} color={theme.colors.textNormal}>
299
299
  {parsePrice(cart?.balance >= 0 ? cart?.balance : 0)}
300
300
  </OText>
301
301
  </OSTable>
@@ -1,4 +1,4 @@
1
- import React from 'react'
1
+ import React, { useEffect } from 'react'
2
2
  import {
3
3
  OrderTypeControl,
4
4
  useLanguage,
@@ -17,6 +17,7 @@ const OrderTypeSelectorUI = (props: OrderTypeSelectParams) => {
17
17
  const {
18
18
  navigation,
19
19
  handleChangeOrderType,
20
+ handleChangeType,
20
21
  typeSelected,
21
22
  defaultValue,
22
23
  configTypes,
@@ -51,6 +52,10 @@ const OrderTypeSelectorUI = (props: OrderTypeSelectParams) => {
51
52
  }
52
53
  }
53
54
 
55
+ useEffect(() => {
56
+ handleChangeType && handleChangeType(typeSelected)
57
+ }, [typeSelected])
58
+
54
59
  return (
55
60
  <Wrapper>
56
61
  {isChewLayout ? (
@@ -90,12 +95,13 @@ const OrderTypeSelectorUI = (props: OrderTypeSelectParams) => {
90
95
  <>
91
96
  <NavBar
92
97
  onActionLeft={() => goToBack()}
93
- btnStyle={{ paddingLeft: 0 }}
94
- paddingTop={0}
98
+ btnStyle={{ paddingLeft: 0, width: 50 }}
99
+ paddingTop={Platform.OS === 'ios' ? 10 : 0}
95
100
  style={{ paddingBottom: 0 }}
96
101
  title={t('HOW_WILL_YOU_DELIVERY_TYPE', 'How will your order type?')}
97
102
  titleAlign={'center'}
98
103
  titleStyle={{ fontSize: 14 }}
104
+ noMargin
99
105
  />
100
106
  {
101
107
  items.length > 0 && (
@@ -12,27 +12,28 @@ import {
12
12
  } from 'react-native';
13
13
  import { PreviousBusinessOrderedParams } from '../../../types';
14
14
 
15
- const BusinessControllerList = ({ businesses, onBusinessClick, navigation, orderState, style }: any) => {
15
+ const BusinessControllerList = ({ businesses, onBusinessClick, navigation, orderState, handleCustomUpdate, style }: any) => {
16
16
  return (
17
17
  <>
18
18
  {businesses?.result?.map((business: any, i: number) => (
19
- <BusinessController
20
- key={`${business.id}_` + i}
21
- business={business}
22
- isBusinessOpen={business.open}
23
- handleCustomClick={() => onBusinessClick(business)}
24
- orderType={orderState?.options?.type}
25
- navigation={navigation}
26
- businessHeader={business?.header}
27
- businessFeatured={business?.featured}
28
- businessLogo={business?.logo}
29
- businessReviews={business?.reviews}
30
- businessDeliveryPrice={business?.delivery_price}
31
- businessDeliveryTime={business?.delivery_time}
32
- businessPickupTime={business?.pickup_time}
33
- businessDistance={business?.distance}
34
- style={style}
35
- />
19
+ <View style={style} key={`${business.id}_` + i}>
20
+ <BusinessController
21
+ business={business}
22
+ isBusinessOpen={business.open}
23
+ handleCustomClick={() => onBusinessClick(business)}
24
+ orderType={orderState?.options?.type}
25
+ navigation={navigation}
26
+ businessHeader={business?.header}
27
+ businessFeatured={business?.featured}
28
+ businessLogo={business?.logo}
29
+ businessReviews={business?.reviews}
30
+ businessDeliveryPrice={business?.delivery_price}
31
+ businessDeliveryTime={business?.delivery_time}
32
+ businessPickupTime={business?.pickup_time}
33
+ businessDistance={business?.distance}
34
+ handleCustomUpdate={handleCustomUpdate}
35
+ />
36
+ </View>
36
37
  ))}
37
38
  </>
38
39
  )
@@ -92,12 +93,13 @@ export const PreviousBusinessOrdered = (props: PreviousBusinessOrderedParams) =>
92
93
  businesses,
93
94
  onNavigationRedirect,
94
95
  isBusinessesSearchList,
96
+ handleUpdateBusinesses,
95
97
  } = props
96
98
 
97
99
  const [orderState] = useOrder()
98
100
  const windowWidth = Dimensions.get('window').width;
99
101
  const onBusinessClick = (business: any) => {
100
- onNavigationRedirect('Business', { store: business.slug })
102
+ onNavigationRedirect('Business', { store: business.slug, logo: business.logo, header: business.header })
101
103
  }
102
104
 
103
105
  const styles = StyleSheet.create({
@@ -107,7 +109,12 @@ export const PreviousBusinessOrdered = (props: PreviousBusinessOrderedParams) =>
107
109
  });
108
110
 
109
111
  return (
110
- <ScrollView horizontal={isBusinessesSearchList} style={styles.container} showsVerticalScrollIndicator={false}>
112
+ <ScrollView
113
+ horizontal={isBusinessesSearchList}
114
+ style={styles.container}
115
+ showsVerticalScrollIndicator={false}
116
+ showsHorizontalScrollIndicator={false}
117
+ >
111
118
  {isBusinessesSearchList ? (
112
119
  <>
113
120
  {!businesses?.loading && (
@@ -117,6 +124,7 @@ export const PreviousBusinessOrdered = (props: PreviousBusinessOrderedParams) =>
117
124
  orderState={orderState}
118
125
  navigation={navigation}
119
126
  businesses={businesses}
127
+ handleCustomUpdate={handleUpdateBusinesses}
120
128
  />
121
129
  )}
122
130
  </>
@@ -130,6 +138,7 @@ export const PreviousBusinessOrdered = (props: PreviousBusinessOrderedParams) =>
130
138
  orderState={orderState}
131
139
  navigation={navigation}
132
140
  businesses={businesses}
141
+ handleCustomUpdate={handleUpdateBusinesses}
133
142
  />
134
143
  )}
135
144
  </ListWrapper>
@@ -11,6 +11,7 @@ export const PreviousProductsOrdered = (props: PreviousProductsOrderedParams) =>
11
11
  const {
12
12
  products,
13
13
  onProductClick,
14
+ handleUpdateProducts,
14
15
  isBusinessesSearchList
15
16
  } = props
16
17
 
@@ -28,12 +29,14 @@ export const PreviousProductsOrdered = (props: PreviousProductsOrderedParams) =>
28
29
  {products?.map((product: any) => (
29
30
  <SingleProductCard
30
31
  key={product?.id}
32
+ isProductId
31
33
  isSoldOut={(product.inventoried && !product.quantity)}
32
34
  product={product}
33
35
  businessId={product?.business?.id}
34
36
  onProductClick={onProductClick}
35
37
  style={style}
36
38
  productAddedToCartLength={0}
39
+ handleUpdateProducts={handleUpdateProducts}
37
40
  />
38
41
  ))}
39
42
  </>