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.
- package/package.json +8 -7
- package/src/DeliveryApp.tsx +43 -1
- package/src/components/BusinessInformation/index.tsx +10 -9
- package/src/components/BusinessesListing/index.tsx +1 -1
- package/src/components/OrderCreating/index.tsx +1 -21
- package/src/components/PaymentOptionsWebView/index.tsx +29 -8
- package/src/components/PhoneInputNumber/index.tsx +6 -2
- package/src/components/StripeMethodForm/index.tsx +136 -102
- package/src/components/VerifyPhone/styles.tsx +1 -2
- package/src/components/shared/OToast.tsx +3 -2
- package/src/types/index.tsx +5 -0
- package/src/utils/index.tsx +5 -0
- package/themes/business/index.tsx +2 -0
- package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +28 -25
- package/themes/business/src/components/BusinessController/index.tsx +0 -1
- package/themes/business/src/components/Chat/index.tsx +149 -118
- package/themes/business/src/components/DriverMap/index.tsx +17 -6
- package/themes/business/src/components/DriverSchedule/index.tsx +45 -8
- package/themes/business/src/components/GoogleMap/index.tsx +58 -57
- package/themes/business/src/components/LoginForm/Otp/index.tsx +31 -3
- package/themes/business/src/components/LoginForm/index.tsx +15 -22
- package/themes/business/src/components/MapView/index.tsx +10 -10
- package/themes/business/src/components/MessagesOption/index.tsx +20 -93
- package/themes/business/src/components/NewOrderNotification/index.tsx +128 -96
- package/themes/business/src/components/NotFoundSource/index.tsx +2 -2
- package/themes/business/src/components/OrderDetails/Business.tsx +1 -1
- package/themes/business/src/components/OrderDetails/Delivery.tsx +191 -6
- package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +102 -40
- package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +70 -67
- package/themes/business/src/components/OrderDetailsLogistic/index.tsx +195 -0
- package/themes/business/src/components/OrderDetailsLogistic/styles.tsx +5 -0
- package/themes/business/src/components/OrderMessage/index.tsx +19 -18
- package/themes/business/src/components/OrderSummary/index.tsx +114 -123
- package/themes/business/src/components/OrdersOption/index.tsx +20 -22
- package/themes/business/src/components/PreviousMessages/FooterMessageComponent.tsx +103 -0
- package/themes/business/src/components/PreviousMessages/index.tsx +97 -55
- package/themes/business/src/components/PreviousOrders/OrderItem.tsx +17 -12
- package/themes/business/src/components/PreviousOrders/OrderList.tsx +88 -0
- package/themes/business/src/components/PreviousOrders/OrdersGroupedItem.tsx +1 -1
- package/themes/business/src/components/PreviousOrders/index.tsx +139 -174
- package/themes/business/src/components/ProductItemAccordion/index.tsx +27 -3
- package/themes/business/src/components/ReviewCustomer/index.tsx +18 -13
- package/themes/business/src/components/StoresList/index.tsx +3 -4
- package/themes/business/src/components/UserProfileForm/index.tsx +14 -15
- package/themes/business/src/components/shared/OLink.tsx +9 -2
- package/themes/business/src/components/shared/OModal.tsx +16 -9
- package/themes/business/src/components/shared/OText.tsx +6 -1
- package/themes/business/src/types/index.tsx +25 -10
- package/themes/business/src/utils/index.tsx +29 -2
- package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
- package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
- package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
- package/themes/kiosk/src/components/Checkout/index.tsx +6 -0
- package/themes/kiosk/src/components/Intro/index.tsx +16 -1
- package/themes/kiosk/src/components/LoginForm/index.tsx +7 -9
- package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
- package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
- package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
- package/themes/kiosk/src/components/PhoneInputNumber/index.tsx +2 -2
- package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
- package/themes/original/index.tsx +1 -1
- package/themes/original/src/components/AddressDetails/index.tsx +19 -3
- package/themes/original/src/components/AddressForm/index.tsx +61 -39
- package/themes/original/src/components/AddressList/index.tsx +11 -6
- package/themes/original/src/components/AnalyticsSegment/index.tsx +193 -10
- package/themes/original/src/components/AppleLogin/index.tsx +4 -4
- package/themes/original/src/components/AppleLogin/styles.tsx +3 -1
- package/themes/original/src/components/BusinessBasicInformation/index.tsx +153 -96
- package/themes/original/src/components/BusinessBasicInformation/styles.tsx +10 -12
- package/themes/original/src/components/BusinessController/index.tsx +81 -68
- package/themes/original/src/components/BusinessController/styles.tsx +12 -5
- package/themes/original/src/components/BusinessFeaturedController/index.tsx +21 -54
- package/themes/original/src/components/BusinessFeaturedController/styles.tsx +8 -0
- package/themes/original/src/components/BusinessInformation/index.tsx +140 -85
- package/themes/original/src/components/BusinessItemAccordion/index.tsx +15 -20
- package/themes/original/src/components/BusinessListingSearch/index.tsx +348 -340
- package/themes/original/src/components/BusinessListingSearch/styles.tsx +0 -18
- package/themes/original/src/components/BusinessPreorder/index.tsx +103 -19
- package/themes/original/src/components/BusinessProductsCategories/index.tsx +1 -2
- package/themes/original/src/components/BusinessProductsList/index.tsx +15 -7
- package/themes/original/src/components/BusinessProductsList/styles.tsx +8 -3
- package/themes/original/src/components/BusinessProductsListing/UpsellingRedirect.tsx +1 -1
- package/themes/original/src/components/BusinessProductsListing/index.tsx +684 -559
- package/themes/original/src/components/BusinessProductsListing/styles.tsx +1 -1
- package/themes/original/src/components/BusinessReviews/index.tsx +3 -1
- package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +70 -39
- package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +0 -1
- package/themes/original/src/components/BusinessesListing/index.tsx +0 -1
- package/themes/original/src/components/Cart/index.tsx +76 -79
- package/themes/original/src/components/CartContent/index.tsx +112 -19
- package/themes/original/src/components/CartContent/styles.tsx +16 -6
- package/themes/original/src/components/Checkout/index.tsx +294 -56
- package/themes/original/src/components/CitiesControl/index.tsx +1 -1
- package/themes/original/src/components/CouponControl/index.tsx +10 -3
- package/themes/original/src/components/DriverTips/index.tsx +52 -34
- package/themes/original/src/components/FacebookLogin/styles.tsx +3 -1
- package/themes/original/src/components/Favorite/index.tsx +2 -6
- package/themes/original/src/components/FavoriteList/index.tsx +1 -35
- package/themes/original/src/components/FloatingButton/index.tsx +10 -13
- package/themes/original/src/components/GPSButton/index.tsx +6 -4
- package/themes/original/src/components/GiftCard/PurchaseGiftCard/index.tsx +7 -3
- package/themes/original/src/components/GiftCard/PurchaseGiftCard/styles.tsx +2 -0
- package/themes/original/src/components/GiftCard/RedeemGiftCard/index.tsx +19 -6
- package/themes/original/src/components/GoogleLogin/styles.tsx +1 -1
- package/themes/original/src/components/GoogleMap/index.tsx +60 -5
- package/themes/original/src/components/Help/index.tsx +2 -2
- package/themes/original/src/components/HelpGuide/index.tsx +2 -2
- package/themes/original/src/components/HelpGuide/styles.tsx +1 -0
- package/themes/original/src/components/Home/index.tsx +13 -4
- package/themes/original/src/components/LastOrder/index.tsx +1 -34
- package/themes/original/src/components/LoginForm/Otp/index.tsx +91 -25
- package/themes/original/src/components/LoginForm/index.tsx +64 -34
- package/themes/original/src/components/LottieAnimation/index.tsx +88 -63
- package/themes/original/src/components/MessageListing/index.tsx +16 -42
- package/themes/original/src/components/Messages/index.tsx +14 -7
- package/themes/original/src/components/MomentOption/index.tsx +193 -90
- package/themes/original/src/components/MomentSelector/index.tsx +1 -1
- package/themes/original/src/components/MultiCart/index.tsx +41 -54
- package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +162 -50
- package/themes/original/src/components/MultiCheckout/index.tsx +329 -100
- package/themes/original/src/components/MultiCheckout/styles.tsx +3 -1
- package/themes/original/src/components/MultiOrdersDetails/SingleOrderCard.tsx +37 -224
- package/themes/original/src/components/MultiOrdersDetails/index.tsx +54 -21
- package/themes/original/src/components/MultiOrdersDetails/styles.tsx +1 -1
- package/themes/original/src/components/MyOrders/index.tsx +37 -24
- package/themes/original/src/components/NavBar/index.tsx +20 -12
- package/themes/original/src/components/NotFoundSource/index.tsx +14 -10
- package/themes/original/src/components/Notifications/styles.tsx +1 -5
- package/themes/original/src/components/OrderDetails/OrderEta.tsx +76 -0
- package/themes/original/src/components/OrderDetails/OrderHistory.tsx +21 -5
- package/themes/original/src/components/OrderDetails/index.tsx +139 -306
- package/themes/original/src/components/OrderDetails/styles.tsx +0 -1
- package/themes/original/src/components/OrderItAgain/index.tsx +3 -1
- package/themes/original/src/components/OrderProgress/index.tsx +33 -57
- package/themes/original/src/components/OrderSummary/index.tsx +83 -57
- package/themes/original/src/components/OrderTypeSelector/index.tsx +2 -1
- package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/index.tsx +14 -14
- package/themes/original/src/components/OrdersOption/index.tsx +61 -81
- package/themes/original/src/components/OrdersOption/styles.tsx +1 -1
- package/themes/original/src/components/PageBanner/index.tsx +98 -38
- package/themes/original/src/components/PageBanner/styles.tsx +0 -10
- package/themes/original/src/components/PaymentOptionCard/index.tsx +180 -0
- package/themes/original/src/components/PaymentOptionStripe/styles.tsx +1 -1
- package/themes/original/src/components/PaymentOptionWallet/index.tsx +56 -56
- package/themes/original/src/components/PaymentOptions/index.tsx +95 -33
- package/themes/original/src/components/PhoneInputNumber/index.tsx +18 -4
- package/themes/original/src/components/ProductForm/index.tsx +103 -40
- package/themes/original/src/components/ProductForm/styles.tsx +3 -3
- package/themes/original/src/components/ProductItemAccordion/index.tsx +8 -6
- package/themes/original/src/components/ProductOptionSubOption/index.tsx +50 -21
- package/themes/original/src/components/ProductOptionSubOption/styles.tsx +10 -9
- package/themes/original/src/components/ProfessionalFilter/SingleProfessionalCard/index.tsx +108 -0
- package/themes/original/src/components/ProfessionalFilter/index.tsx +20 -50
- package/themes/original/src/components/ProfessionalProfile/index.tsx +36 -7
- package/themes/original/src/components/Promotions/index.tsx +2 -2
- package/themes/original/src/components/Promotions/styles.tsx +3 -1
- package/themes/original/src/components/ReviewProducts/index.tsx +16 -7
- package/themes/original/src/components/ScheduleAccordion/index.tsx +3 -3
- package/themes/original/src/components/ServiceForm/index.tsx +63 -20
- package/themes/original/src/components/Sessions/index.tsx +11 -8
- package/themes/original/src/components/Sessions/styles.tsx +5 -0
- package/themes/original/src/components/SignupForm/index.tsx +43 -27
- package/themes/original/src/components/SingleOrderCard/index.tsx +102 -63
- package/themes/original/src/components/SingleOrderCard/styles.tsx +1 -1
- package/themes/original/src/components/SingleProductCard/index.tsx +72 -31
- package/themes/original/src/components/SingleProductCard/styles.tsx +20 -4
- package/themes/original/src/components/SingleProductReview/styles.tsx +1 -1
- package/themes/original/src/components/StripeCardsList/index.tsx +49 -5
- package/themes/original/src/components/StripeElementsForm/index.tsx +48 -34
- package/themes/original/src/components/StripeElementsForm/naked.tsx +12 -1
- package/themes/original/src/components/UpsellingProducts/index.tsx +238 -224
- package/themes/original/src/components/UpsellingProducts/styles.tsx +12 -1
- package/themes/original/src/components/UserDetails/index.tsx +3 -1
- package/themes/original/src/components/UserFormDetails/index.tsx +78 -9
- package/themes/original/src/components/UserFormDetails/styles.tsx +1 -1
- package/themes/original/src/components/UserProfile/index.tsx +87 -76
- package/themes/original/src/components/UserProfileForm/index.tsx +10 -3
- package/themes/original/src/components/UserProfileForm/styles.tsx +1 -1
- package/themes/original/src/components/UserVerification/index.tsx +55 -50
- package/themes/original/src/components/WalletTransactionItem/index.tsx +2 -2
- package/themes/original/src/components/WalletTransactions/index.tsx +3 -3
- package/themes/original/src/components/Wallets/index.tsx +56 -33
- package/themes/original/src/components/Wallets/styles.tsx +3 -4
- package/themes/original/src/components/shared/OButton.tsx +6 -2
- package/themes/original/src/components/shared/OInput.tsx +6 -1
- package/themes/original/src/components/shared/OModal.tsx +3 -3
- package/themes/original/src/types/index.tsx +39 -10
- package/themes/original/src/utils/index.tsx +386 -1
- package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
- package/src/navigators/BottomNavigator.tsx +0 -117
- package/src/navigators/CheckoutNavigator.tsx +0 -66
- package/src/navigators/HomeNavigator.tsx +0 -202
- package/src/navigators/NavigationRef.tsx +0 -7
- package/src/navigators/RootNavigator.tsx +0 -269
- package/src/pages/Account.tsx +0 -34
- package/src/pages/AddressForm.tsx +0 -62
- package/src/pages/AddressList.tsx +0 -24
- package/src/pages/BusinessProductsList.tsx +0 -81
- package/src/pages/BusinessesListing.tsx +0 -43
- package/src/pages/CartList.tsx +0 -49
- package/src/pages/Checkout.tsx +0 -101
- package/src/pages/ForgotPassword.tsx +0 -24
- package/src/pages/Help.tsx +0 -23
- package/src/pages/HelpAccountAndPayment.tsx +0 -23
- package/src/pages/HelpGuide.tsx +0 -23
- package/src/pages/HelpOrder.tsx +0 -23
- package/src/pages/Home.tsx +0 -36
- package/src/pages/IntroductoryTutorial.tsx +0 -170
- package/src/pages/Login.tsx +0 -47
- package/src/pages/MomentOption.tsx +0 -30
- package/src/pages/MultiCheckout.tsx +0 -31
- package/src/pages/MultiOrdersDetails.tsx +0 -27
- package/src/pages/MyOrders.tsx +0 -40
- package/src/pages/NetworkError.tsx +0 -24
- package/src/pages/NotFound.tsx +0 -22
- package/src/pages/OrderDetails.tsx +0 -25
- package/src/pages/ProductDetails.tsx +0 -55
- package/src/pages/Profile.tsx +0 -36
- package/src/pages/ReviewDriver.tsx +0 -30
- package/src/pages/ReviewOrder.tsx +0 -32
- package/src/pages/ReviewProducts.tsx +0 -30
- package/src/pages/Sessions.tsx +0 -22
- package/src/pages/Signup.tsx +0 -53
- package/src/pages/SpinnerLoader.tsx +0 -10
- package/src/pages/Splash.tsx +0 -21
|
@@ -2,7 +2,8 @@ import React, { useEffect, useState } from 'react'
|
|
|
2
2
|
import {
|
|
3
3
|
OrderList,
|
|
4
4
|
useLanguage,
|
|
5
|
-
useUtils
|
|
5
|
+
useUtils,
|
|
6
|
+
useConfig
|
|
6
7
|
} from 'ordering-components/native'
|
|
7
8
|
import { useTheme } from 'styled-components/native';
|
|
8
9
|
import IconAntDesign from 'react-native-vector-icons/AntDesign'
|
|
@@ -12,6 +13,7 @@ import { NotFoundSource } from '../NotFoundSource'
|
|
|
12
13
|
import { View, StyleSheet, TouchableOpacity, Platform } from 'react-native'
|
|
13
14
|
import { Placeholder, Fade, PlaceholderLine } from "rn-placeholder";
|
|
14
15
|
import FastImage from 'react-native-fast-image'
|
|
16
|
+
import { OrderEta } from '../OrderDetails/OrderEta'
|
|
15
17
|
import {
|
|
16
18
|
ProgressContentWrapper,
|
|
17
19
|
ProgressBar,
|
|
@@ -20,6 +22,8 @@ import {
|
|
|
20
22
|
OrderInfoWrapper,
|
|
21
23
|
OrderProgressWrapper
|
|
22
24
|
} from './styles'
|
|
25
|
+
import { getOrderStatuPickUp, getOrderStatus } from '../../utils'
|
|
26
|
+
|
|
23
27
|
const OrderProgressUI = (props: any) => {
|
|
24
28
|
const {
|
|
25
29
|
orderList,
|
|
@@ -31,10 +35,12 @@ const OrderProgressUI = (props: any) => {
|
|
|
31
35
|
const theme = useTheme();
|
|
32
36
|
|
|
33
37
|
const [, t] = useLanguage()
|
|
34
|
-
const [{ optimizeImage,
|
|
38
|
+
const [{ optimizeImage, parseTime, parseDate }] = useUtils()
|
|
39
|
+
const [{ configs }] = useConfig()
|
|
35
40
|
const [lastOrder, setLastOrder] = useState<any>(null)
|
|
36
41
|
const imageFails = theme.images.general.emptyActiveOrders
|
|
37
42
|
const [initialLoaded, setInitialLoaded] = useState(false)
|
|
43
|
+
const statusToShow = [0, 3, 4, 7, 8, 9, 13, 14, 18, 19, 20, 21, 22, 23]
|
|
38
44
|
|
|
39
45
|
const styles = StyleSheet.create({
|
|
40
46
|
main: {
|
|
@@ -74,49 +80,6 @@ const OrderProgressUI = (props: any) => {
|
|
|
74
80
|
}
|
|
75
81
|
});
|
|
76
82
|
|
|
77
|
-
const getOrderStatus = (s: any) => {
|
|
78
|
-
const status = parseInt(s)
|
|
79
|
-
const orderStatus = [
|
|
80
|
-
{ key: 0, value: t('PENDING', theme?.defaultLanguages?.PENDING || 'Pending'), slug: 'PENDING', percentage: 25 },
|
|
81
|
-
{ key: 1, value: t('COMPLETED', theme?.defaultLanguages?.COMPLETED || 'Completed'), slug: 'COMPLETED', percentage: 100 },
|
|
82
|
-
{ key: 2, value: t('REJECTED', theme?.defaultLanguages?.REJECTED || 'Rejected'), slug: 'REJECTED', percentage: 0 },
|
|
83
|
-
{ key: 3, value: t('DRIVER_IN_BUSINESS', theme?.defaultLanguages?.DRIVER_IN_BUSINESS || 'Driver in business'), slug: 'DRIVER_IN_BUSINESS', percentage: 60 },
|
|
84
|
-
{ key: 4, value: t('PREPARATION_COMPLETED', theme?.defaultLanguages?.PREPARATION_COMPLETED || 'Preparation Completed'), slug: 'PREPARATION_COMPLETED', percentage: 70 },
|
|
85
|
-
{ key: 5, value: t('REJECTED_BY_BUSINESS', theme?.defaultLanguages?.REJECTED_BY_BUSINESS || 'Rejected by business'), slug: 'REJECTED_BY_BUSINESS', percentage: 0 },
|
|
86
|
-
{ key: 6, value: t('REJECTED_BY_DRIVER', theme?.defaultLanguages?.REJECTED_BY_DRIVER || 'Rejected by Driver'), slug: 'REJECTED_BY_DRIVER', percentage: 0 },
|
|
87
|
-
{ key: 7, value: t('ACCEPTED_BY_BUSINESS', theme?.defaultLanguages?.ACCEPTED_BY_BUSINESS || 'Accepted by business'), slug: 'ACCEPTED_BY_BUSINESS', percentage: 35 },
|
|
88
|
-
{ key: 8, value: t('ACCEPTED_BY_DRIVER', theme?.defaultLanguages?.ACCEPTED_BY_DRIVER || 'Accepted by driver'), slug: 'ACCEPTED_BY_DRIVER', percentage: 45 },
|
|
89
|
-
{ 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 },
|
|
90
|
-
{ 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 },
|
|
91
|
-
{ 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 },
|
|
92
|
-
{ 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 },
|
|
93
|
-
{ key: 13, value: t('PREORDER', theme?.defaultLanguages?.PREORDER || 'PreOrder'), slug: 'PREORDER', percentage: 0 },
|
|
94
|
-
{ key: 14, value: t('ORDER_NOT_READY', theme?.defaultLanguages?.ORDER_NOT_READY || 'Order not ready'), slug: 'ORDER_NOT_READY', percentage: 65 },
|
|
95
|
-
{ 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 },
|
|
96
|
-
{ 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 },
|
|
97
|
-
{ 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 },
|
|
98
|
-
{ 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 },
|
|
99
|
-
{ 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 },
|
|
100
|
-
{ 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 },
|
|
101
|
-
{ 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 },
|
|
102
|
-
{ key: 22, value: t('ORDER_LOOKING_FOR_DRIVER', theme?.defaultLanguages?.ORDER_LOOKING_FOR_DRIVER || 'Looking for driver'), slug: 'ORDER_LOOKING_FOR_DRIVER', percentage: 35 },
|
|
103
|
-
{ key: 23, value: t('ORDER_DRIVER_ON_WAY', theme?.defaultLanguages?.ORDER_DRIVER_ON_WAY || 'Driver on way'), slug: 'ORDER_DRIVER_ON_WAY', percentage: 45 }
|
|
104
|
-
]
|
|
105
|
-
|
|
106
|
-
const objectStatus = orderStatus.find((o) => o.key === status)
|
|
107
|
-
|
|
108
|
-
return objectStatus && objectStatus
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
const convertDiffToHours = (order: any) => {
|
|
112
|
-
const minute = order?.eta_time
|
|
113
|
-
const deliveryTime = order?.delivery_datetime_utc
|
|
114
|
-
? parseDate(order?.delivery_datetime_utc, { outputFormat: 'YYYY-MM-DD HH:mm' })
|
|
115
|
-
: parseDate(order?.delivery_datetime, { utc: false, outputFormat: 'YYYY-MM-DD HH:mm' })
|
|
116
|
-
const returnedDate = moment(deliveryTime).add(minute, 'minutes').format('hh:mm A')
|
|
117
|
-
return returnedDate
|
|
118
|
-
}
|
|
119
|
-
|
|
120
83
|
const handleGoToOrder = (index: string) => {
|
|
121
84
|
navigation && navigation.navigate(index)
|
|
122
85
|
}
|
|
@@ -124,7 +87,15 @@ const OrderProgressUI = (props: any) => {
|
|
|
124
87
|
useEffect(() => {
|
|
125
88
|
if (orderList?.orders.length > 0) {
|
|
126
89
|
const sortedOrders = orderList.orders.sort((a: any, b: any) => a.id > b.id ? -1 : 1)
|
|
127
|
-
|
|
90
|
+
const orderInProgress = sortedOrders.find((order: any) => (statusToShow.includes(order.status)))
|
|
91
|
+
|
|
92
|
+
let _lastOrder = null
|
|
93
|
+
if (orderInProgress) {
|
|
94
|
+
_lastOrder = orderInProgress
|
|
95
|
+
} else {
|
|
96
|
+
_lastOrder = sortedOrders[0]
|
|
97
|
+
}
|
|
98
|
+
setLastOrder(_lastOrder)
|
|
128
99
|
}
|
|
129
100
|
}, [orderList?.orders])
|
|
130
101
|
|
|
@@ -139,6 +110,8 @@ const OrderProgressUI = (props: any) => {
|
|
|
139
110
|
setInitialLoaded(true)
|
|
140
111
|
}, [orderList.loading, initialLoaded])
|
|
141
112
|
|
|
113
|
+
const progressBarObjt = lastOrder?.delivery_type && lastOrder?.delivery_type === 2 ? getOrderStatuPickUp : getOrderStatus
|
|
114
|
+
|
|
142
115
|
return (
|
|
143
116
|
<>
|
|
144
117
|
{(orderList?.loading && !initialLoaded) && (
|
|
@@ -157,11 +130,11 @@ const OrderProgressUI = (props: any) => {
|
|
|
157
130
|
<View style={styles.logoWrapper}>
|
|
158
131
|
<FastImage
|
|
159
132
|
style={{ width: 50, height: 50 }}
|
|
160
|
-
source={{
|
|
133
|
+
source={orderList?.orders.length === 1 ? {
|
|
161
134
|
uri: optimizeImage(lastOrder?.business?.logo, 'h_50,c_limit'),
|
|
162
135
|
priority: FastImage.priority.normal,
|
|
163
|
-
}}
|
|
164
|
-
resizeMode={FastImage.resizeMode.
|
|
136
|
+
} : theme.images.logos.logotype}
|
|
137
|
+
resizeMode={FastImage.resizeMode.contain}
|
|
165
138
|
/>
|
|
166
139
|
</View>
|
|
167
140
|
<View style={{
|
|
@@ -175,8 +148,7 @@ const OrderProgressUI = (props: any) => {
|
|
|
175
148
|
fontWeight: 'bold',
|
|
176
149
|
marginBottom: 3
|
|
177
150
|
}}
|
|
178
|
-
>{t('ORDER_IN_PROGRESS', 'Order in progress')}</OText>
|
|
179
|
-
<OText size={11} numberOfLines={1} ellipsizeMode='tail'>{t('RESTAURANT_PREPARING_YOUR_ORDER', 'The restaurant is preparing your order')}</OText>
|
|
151
|
+
>{statusToShow.includes(lastOrder?.status) ? t('ORDER_IN_PROGRESS', 'Order in progress') : t('ORDER', 'Order')}</OText>
|
|
180
152
|
<TouchableOpacity onPress={() => handleGoToOrder('MyOrders')}>
|
|
181
153
|
<View style={styles.navigationButton}>
|
|
182
154
|
<OText size={11} color={theme.colors.primary}>{t('GO_TO_MY_ORDERS', 'Go to my orders')}</OText>
|
|
@@ -192,18 +164,22 @@ const OrderProgressUI = (props: any) => {
|
|
|
192
164
|
</OrderInfoWrapper>
|
|
193
165
|
<View style={{ flex: 1 }}>
|
|
194
166
|
<ProgressContentWrapper>
|
|
195
|
-
<ProgressBar style={{ width:
|
|
167
|
+
<ProgressBar style={{ width: progressBarObjt(lastOrder.status)?.percentage ? `${(progressBarObjt(lastOrder.status) as any).percentage * 100}%` : '0%' }} />
|
|
196
168
|
</ProgressContentWrapper>
|
|
197
169
|
<ProgressTextWrapper>
|
|
198
|
-
<OText size={12} style={{ width: '50%' }}>{
|
|
170
|
+
<OText size={12} style={{ width: '50%' }}>{progressBarObjt(lastOrder.status)?.value}</OText>
|
|
199
171
|
<TimeWrapper>
|
|
200
|
-
<OText size={11}>{t('ESTIMATED_DELIVERY', 'Estimated delivery')}</OText>
|
|
172
|
+
<OText size={11}>{lastOrder?.delivery_type === 1 ? t('ESTIMATED_DELIVERY', 'Estimated delivery') : t('ESTIMATED_TIME', 'Estimated time')}</OText>
|
|
201
173
|
<OText size={11}>
|
|
202
174
|
{lastOrder?.delivery_datetime_utc
|
|
203
|
-
? parseTime(lastOrder?.delivery_datetime_utc, { outputFormat: '
|
|
175
|
+
? parseTime(lastOrder?.delivery_datetime_utc, { outputFormat: configs?.general_hour_format?.value || 'HH:mm' })
|
|
204
176
|
: parseTime(lastOrder?.delivery_datetime, { utc: false })}
|
|
205
177
|
-
|
|
206
|
-
{
|
|
178
|
+
{statusToShow.includes(lastOrder?.status) ? (
|
|
179
|
+
<OrderEta order={lastOrder} outputFormat={configs?.general_hour_format?.value || 'HH:mm'} />
|
|
180
|
+
) : (
|
|
181
|
+
parseDate(lastOrder?.reporting_data?.at[`status:${lastOrder.status}`], { outputFormat: configs?.general_hour_format?.value })
|
|
182
|
+
)}
|
|
207
183
|
</OText>
|
|
208
184
|
</TimeWrapper>
|
|
209
185
|
</ProgressTextWrapper>
|
|
@@ -230,7 +206,7 @@ export const OrderProgress = (props: any) => {
|
|
|
230
206
|
useDefualtSessionManager: true,
|
|
231
207
|
paginationSettings: {
|
|
232
208
|
initialPage: 1,
|
|
233
|
-
pageSize:
|
|
209
|
+
pageSize: 10,
|
|
234
210
|
controlType: 'infinity'
|
|
235
211
|
}
|
|
236
212
|
}
|
|
@@ -20,12 +20,12 @@ import {
|
|
|
20
20
|
|
|
21
21
|
import { ProductItemAccordion } from '../ProductItemAccordion';
|
|
22
22
|
import { CouponControl } from '../CouponControl';
|
|
23
|
-
import { OInput, OModal, OText } from '../shared';
|
|
23
|
+
import { OInput, OModal, OText, OAlert } from '../shared';
|
|
24
24
|
import { verifyDecimals } from '../../utils';
|
|
25
25
|
import AntIcon from 'react-native-vector-icons/AntDesign'
|
|
26
26
|
import { TaxInformation } from '../TaxInformation';
|
|
27
27
|
import { TouchableOpacity } from 'react-native';
|
|
28
|
-
import {
|
|
28
|
+
import { MomentOption } from '../MomentOption';
|
|
29
29
|
|
|
30
30
|
const OrderSummaryUI = (props: any) => {
|
|
31
31
|
const {
|
|
@@ -38,7 +38,16 @@ const OrderSummaryUI = (props: any) => {
|
|
|
38
38
|
commentState,
|
|
39
39
|
handleChangeComment,
|
|
40
40
|
onNavigationRedirect,
|
|
41
|
-
handleRemoveOfferClick
|
|
41
|
+
handleRemoveOfferClick,
|
|
42
|
+
preorderSlotInterval,
|
|
43
|
+
preorderLeadTime,
|
|
44
|
+
preorderTimeRange,
|
|
45
|
+
preorderMaximumDays,
|
|
46
|
+
preorderMinimumDays,
|
|
47
|
+
cateringTypes,
|
|
48
|
+
hideDeliveryFee,
|
|
49
|
+
loyaltyRewardRate,
|
|
50
|
+
maxDate
|
|
42
51
|
} = props;
|
|
43
52
|
|
|
44
53
|
const theme = useTheme()
|
|
@@ -48,8 +57,32 @@ const OrderSummaryUI = (props: any) => {
|
|
|
48
57
|
const [{ parsePrice, parseNumber }] = useUtils();
|
|
49
58
|
const [validationFields] = useValidationFields();
|
|
50
59
|
const [openTaxModal, setOpenTaxModal] = useState<any>({ open: false, data: null, type: '' })
|
|
51
|
-
const [confirm, setConfirm] = useState<any>({ open: false, content: null, handleOnAccept: null, id: null, title: null })
|
|
52
60
|
const isCouponEnabled = validationFields?.fields?.checkout?.coupon?.enabled;
|
|
61
|
+
const hideCartComments = !validationFields?.fields?.checkout?.comments?.enabled
|
|
62
|
+
|
|
63
|
+
const cart = orderState?.carts?.[`businessId:${props.cart.business_id}`]
|
|
64
|
+
|
|
65
|
+
const walletName: any = {
|
|
66
|
+
cash: {
|
|
67
|
+
name: t('PAY_WITH_CASH_WALLET', 'Pay with Cash Wallet'),
|
|
68
|
+
},
|
|
69
|
+
credit_point: {
|
|
70
|
+
name: t('PAY_WITH_CREDITS_POINTS_WALLET', 'Pay with Credit Points Wallet'),
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
const getIncludedTaxes = () => {
|
|
75
|
+
if (cart?.taxes === null || !cart?.taxes) {
|
|
76
|
+
return cart?.business?.tax_type === 1 ? cart?.tax : 0
|
|
77
|
+
} else {
|
|
78
|
+
return cart?.taxes.reduce((taxIncluded: number, tax: any) => {
|
|
79
|
+
return taxIncluded + (tax.type === 1 ? tax.summary?.tax : 0)
|
|
80
|
+
}, 0)
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
const clearAmount = (value: any) => parseFloat((Math.trunc(value * 100) / 100).toFixed(configs.format_number_decimal_length?.value ?? 2))
|
|
85
|
+
const loyaltyRewardValue = clearAmount((cart?.subtotal + getIncludedTaxes()) * loyaltyRewardRate)
|
|
53
86
|
|
|
54
87
|
const handleDeleteClick = (product: any) => {
|
|
55
88
|
removeProduct(product, cart)
|
|
@@ -67,41 +100,20 @@ const OrderSummaryUI = (props: any) => {
|
|
|
67
100
|
})
|
|
68
101
|
}
|
|
69
102
|
|
|
70
|
-
const getIncludedTaxes = () => {
|
|
71
|
-
if (cart?.taxes === null || !cart?.taxes) {
|
|
72
|
-
return cart.business.tax_type === 1 ? cart?.tax : 0
|
|
73
|
-
} else {
|
|
74
|
-
return cart?.taxes.reduce((taxIncluded: number, tax: any) => {
|
|
75
|
-
return taxIncluded + (tax.type === 1 ? tax.summary?.tax : 0)
|
|
76
|
-
}, 0)
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
|
|
80
103
|
const getIncludedTaxesDiscounts = () => {
|
|
81
104
|
return cart?.taxes?.filter((tax: any) => tax?.type === 1)?.reduce((carry: number, tax: any) => carry + (tax?.summary?.tax_after_discount ?? tax?.summary?.tax), 0)
|
|
82
105
|
}
|
|
83
106
|
|
|
84
|
-
const
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
const cart = orderState?.carts?.[`businessId:${props.cart.business_id}`]
|
|
97
|
-
|
|
98
|
-
const walletName: any = {
|
|
99
|
-
cash: {
|
|
100
|
-
name: t('PAY_WITH_CASH_WALLET', 'Pay with Cash Wallet'),
|
|
101
|
-
},
|
|
102
|
-
credit_point: {
|
|
103
|
-
name: t('PAY_WITH_CREDITS_POINTS_WALLET', 'Pay with Credit Points Wallet'),
|
|
104
|
-
}
|
|
107
|
+
const OfferAlert = ({ offerId }: any) => {
|
|
108
|
+
return (
|
|
109
|
+
<OAlert
|
|
110
|
+
title={t('OFFER', 'Offer')}
|
|
111
|
+
message={t('QUESTION_DELETE_OFFER', 'Are you sure that you want to delete the offer?')}
|
|
112
|
+
onAccept={() => handleRemoveOfferClick(offerId)}
|
|
113
|
+
>
|
|
114
|
+
<AntIcon style={{ marginLeft: 3 }} name='closecircle' size={16} color={theme.colors.primary} />
|
|
115
|
+
</OAlert>
|
|
116
|
+
)
|
|
105
117
|
}
|
|
106
118
|
|
|
107
119
|
return (
|
|
@@ -157,9 +169,9 @@ const OrderSummaryUI = (props: any) => {
|
|
|
157
169
|
<TouchableOpacity style={{ marginLeft: 3 }} onPress={() => setOpenTaxModal({ open: true, data: offer, type: 'offer_target_1' })}>
|
|
158
170
|
<AntIcon name='infocirlceo' size={16} color={theme.colors.primary} />
|
|
159
171
|
</TouchableOpacity>
|
|
160
|
-
|
|
161
|
-
<
|
|
162
|
-
|
|
172
|
+
{!!offer?.id && (
|
|
173
|
+
<OfferAlert offerId={offer?.id} />
|
|
174
|
+
)}
|
|
163
175
|
</OSRow>
|
|
164
176
|
<OText size={12}>
|
|
165
177
|
- {parsePrice(offer?.summary?.discount)}
|
|
@@ -197,8 +209,8 @@ const OrderSummaryUI = (props: any) => {
|
|
|
197
209
|
))
|
|
198
210
|
}
|
|
199
211
|
{
|
|
200
|
-
cart?.fees?.length > 0 && cart?.fees?.filter((fee: any) => !(fee.fixed === 0 && fee.percentage === 0)).map((fee: any) => (
|
|
201
|
-
<OSTable key={fee?.id}>
|
|
212
|
+
cart?.fees?.length > 0 && cart?.fees?.filter((fee: any) => !(fee.fixed === 0 && fee.percentage === 0)).map((fee: any, i: number) => (
|
|
213
|
+
<OSTable key={fee?.id + i}>
|
|
202
214
|
<OSRow>
|
|
203
215
|
<OText size={12} numberOfLines={1}>
|
|
204
216
|
{fee.name || t('INHERIT_FROM_BUSINESS', 'Inherit from business')}{' '}
|
|
@@ -223,9 +235,9 @@ const OrderSummaryUI = (props: any) => {
|
|
|
223
235
|
<TouchableOpacity style={{ marginLeft: 3 }} onPress={() => setOpenTaxModal({ open: true, data: offer, type: 'offer_target_3' })}>
|
|
224
236
|
<AntIcon name='infocirlceo' size={16} color={theme.colors.primary} />
|
|
225
237
|
</TouchableOpacity>
|
|
226
|
-
|
|
227
|
-
<
|
|
228
|
-
|
|
238
|
+
{!!offer?.id && (
|
|
239
|
+
<OfferAlert offerId={offer?.id} />
|
|
240
|
+
)}
|
|
229
241
|
</OSRow>
|
|
230
242
|
<OText size={12}>
|
|
231
243
|
- {parsePrice(offer?.summary?.discount)}
|
|
@@ -233,10 +245,10 @@ const OrderSummaryUI = (props: any) => {
|
|
|
233
245
|
</OSTable>
|
|
234
246
|
))
|
|
235
247
|
}
|
|
236
|
-
{orderState?.options?.type === 1 &&
|
|
248
|
+
{orderState?.options?.type === 1 && !hideDeliveryFee && (
|
|
237
249
|
<OSTable>
|
|
238
250
|
<OText size={12}>{t('DELIVERY_FEE', 'Delivery Fee')}</OText>
|
|
239
|
-
<OText size={12}>{parsePrice(cart?.
|
|
251
|
+
<OText size={12}>{parsePrice(cart?.delivery_price_with_discount)}</OText>
|
|
240
252
|
</OSTable>
|
|
241
253
|
)}
|
|
242
254
|
{
|
|
@@ -250,9 +262,9 @@ const OrderSummaryUI = (props: any) => {
|
|
|
250
262
|
<TouchableOpacity style={{ marginLeft: 3 }} onPress={() => setOpenTaxModal({ open: true, data: offer, type: 'offer_target_2' })}>
|
|
251
263
|
<AntIcon name='infocirlceo' size={16} color={theme.colors.primary} />
|
|
252
264
|
</TouchableOpacity>
|
|
253
|
-
|
|
254
|
-
<
|
|
255
|
-
|
|
265
|
+
{!!offer?.id && (
|
|
266
|
+
<OfferAlert offerId={offer?.id} />
|
|
267
|
+
)}
|
|
256
268
|
</OSRow>
|
|
257
269
|
<OText size={12}>
|
|
258
270
|
- {parsePrice(offer?.summary?.discount)}
|
|
@@ -302,9 +314,16 @@ const OrderSummaryUI = (props: any) => {
|
|
|
302
314
|
{parsePrice(cart?.balance >= 0 ? cart?.balance : 0)}
|
|
303
315
|
</OText>
|
|
304
316
|
</OSTable>
|
|
317
|
+
{!!loyaltyRewardValue && (
|
|
318
|
+
<OSTable style={{ justifyContent: 'flex-end' }}>
|
|
319
|
+
<OText size={12} color={theme.colors.textNormal}>
|
|
320
|
+
{t('REWARD_LOYALTY_POINT', 'Reward :amount: on loyalty points').replace(':amount:', loyaltyRewardValue)}
|
|
321
|
+
</OText>
|
|
322
|
+
</OSTable>
|
|
323
|
+
)}
|
|
305
324
|
</View>
|
|
306
325
|
)}
|
|
307
|
-
{cart?.business_id && cart?.status !== 2 && (
|
|
326
|
+
{cart?.business_id && cart?.status !== 2 && !hideCartComments && (
|
|
308
327
|
<OSTable>
|
|
309
328
|
<View style={{ width: '100%', marginTop: 20 }}>
|
|
310
329
|
<OText size={12}>{t('COMMENTS', 'Comments')}</OText>
|
|
@@ -339,6 +358,21 @@ const OrderSummaryUI = (props: any) => {
|
|
|
339
358
|
)}
|
|
340
359
|
</OSBill>
|
|
341
360
|
)}
|
|
361
|
+
{cateringTypes.includes(orderState?.options?.type) && maxDate && cart?.business && (
|
|
362
|
+
<View>
|
|
363
|
+
<MomentOption
|
|
364
|
+
maxDate={maxDate}
|
|
365
|
+
cateringPreorder
|
|
366
|
+
isCart
|
|
367
|
+
preorderSlotInterval={preorderSlotInterval}
|
|
368
|
+
preorderLeadTime={preorderLeadTime}
|
|
369
|
+
preorderTimeRange={preorderTimeRange}
|
|
370
|
+
preorderMaximumDays={preorderMaximumDays}
|
|
371
|
+
preorderMinimumDays={preorderMinimumDays}
|
|
372
|
+
business={cart?.business}
|
|
373
|
+
/>
|
|
374
|
+
</View>
|
|
375
|
+
)}
|
|
342
376
|
<OModal
|
|
343
377
|
open={openTaxModal.open}
|
|
344
378
|
onClose={() => setOpenTaxModal({ open: false, data: null, type: '' })}
|
|
@@ -352,14 +386,6 @@ const OrderSummaryUI = (props: any) => {
|
|
|
352
386
|
products={cart?.products}
|
|
353
387
|
/>
|
|
354
388
|
</OModal>
|
|
355
|
-
<OAlert
|
|
356
|
-
open={confirm.open}
|
|
357
|
-
title={confirm.title}
|
|
358
|
-
content={confirm.content}
|
|
359
|
-
onAccept={confirm.handleOnAccept}
|
|
360
|
-
onCancel={() => setConfirm({ ...confirm, open: false, title: null })}
|
|
361
|
-
onClose={() => setConfirm({ ...confirm, open: false, title: null })}
|
|
362
|
-
/>
|
|
363
389
|
</>
|
|
364
390
|
)}
|
|
365
391
|
</OSContainer>
|
|
@@ -96,10 +96,11 @@ const OrderTypeSelectorUI = (props: OrderTypeSelectParams) => {
|
|
|
96
96
|
<NavBar
|
|
97
97
|
onActionLeft={() => goToBack()}
|
|
98
98
|
btnStyle={{ paddingLeft: 0, width: 50 }}
|
|
99
|
-
paddingTop={0}
|
|
99
|
+
paddingTop={Platform.OS === 'ios' ? 10 : 0}
|
|
100
100
|
style={{ paddingBottom: 0 }}
|
|
101
101
|
title={t('HOW_WILL_YOU_DELIVERY_TYPE', 'How will your order type?')}
|
|
102
102
|
titleAlign={'center'}
|
|
103
|
+
titleStyle={{ fontSize: 14 }}
|
|
103
104
|
noMargin
|
|
104
105
|
/>
|
|
105
106
|
{
|
|
@@ -23,21 +23,21 @@ export const PreviousProductsOrdered = (props: PreviousProductsOrderedParams) =>
|
|
|
23
23
|
},
|
|
24
24
|
});
|
|
25
25
|
|
|
26
|
-
const ProductList = (
|
|
26
|
+
const ProductList = () => {
|
|
27
27
|
return (
|
|
28
28
|
<>
|
|
29
|
-
{products?.map((product: any) => (
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
29
|
+
{products?.filter((product : any) => product?.business?.available)?.map((product: any) => (
|
|
30
|
+
<SingleProductCard
|
|
31
|
+
key={product?.id}
|
|
32
|
+
isProductId
|
|
33
|
+
isSoldOut={(product.inventoried && !product.quantity)}
|
|
34
|
+
product={product}
|
|
35
|
+
businessId={product?.business?.id}
|
|
36
|
+
onProductClick={onProductClick}
|
|
37
|
+
style={{ width: windowWidth - (products?.length > 1 ? 120 : 80), marginRight: 20 }}
|
|
38
|
+
productAddedToCartLength={0}
|
|
39
|
+
handleUpdateProducts={handleUpdateProducts}
|
|
40
|
+
/>
|
|
41
41
|
))}
|
|
42
42
|
</>
|
|
43
43
|
)
|
|
@@ -45,7 +45,7 @@ export const PreviousProductsOrdered = (props: PreviousProductsOrderedParams) =>
|
|
|
45
45
|
return (
|
|
46
46
|
<ScrollView horizontal={isBusinessesSearchList} style={styles.container} showsVerticalScrollIndicator={false}>
|
|
47
47
|
{isBusinessesSearchList ? (
|
|
48
|
-
<ProductList
|
|
48
|
+
<ProductList />
|
|
49
49
|
) : (
|
|
50
50
|
<ListWrapper isBusinessesSearchList={isBusinessesSearchList}>
|
|
51
51
|
<ProductList />
|