ordering-ui-react-native 0.22.21 → 0.22.22-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 +6 -7
- package/src/DeliveryApp.tsx +43 -1
- package/src/components/BusinessesListing/index.tsx +1 -1
- package/src/components/Checkout/index.tsx +40 -39
- package/src/components/StripeMethodForm/index.tsx +4 -2
- package/src/components/VerifyPhone/styles.tsx +1 -2
- package/src/context/OfflineActions/index.tsx +236 -0
- package/src/types/index.tsx +2 -1
- package/themes/business/index.tsx +2 -0
- package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +9 -6
- package/themes/business/src/components/AcceptOrRejectOrder/styles.tsx +1 -0
- package/themes/business/src/components/BusinessController/index.tsx +8 -3
- package/themes/business/src/components/BusinessProductList/index.tsx +3 -2
- package/themes/business/src/components/Chat/index.tsx +15 -3
- package/themes/business/src/components/DriverMap/index.tsx +49 -26
- package/themes/business/src/components/FloatingButton/index.tsx +3 -2
- package/themes/business/src/components/GoogleMap/index.tsx +15 -8
- package/themes/business/src/components/LanguageSelector/index.tsx +2 -3
- package/themes/business/src/components/LanguageSelector/lang_country.json +515 -70
- package/themes/business/src/components/LogoutButton/index.tsx +1 -1
- package/themes/business/src/components/MapView/index.tsx +36 -17
- package/themes/business/src/components/NewOrderNotification/index.tsx +38 -19
- package/themes/business/src/components/OrderDetails/Business.tsx +47 -27
- package/themes/business/src/components/OrderDetails/Delivery.tsx +134 -53
- package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +128 -41
- package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +45 -18
- package/themes/business/src/components/OrderDetails/styles.tsx +39 -3
- package/themes/business/src/components/OrderDetails/usePrinterCommands.tsx +17 -16
- package/themes/business/src/components/OrderDetailsLogistic/index.tsx +3 -2
- package/themes/business/src/components/OrderSummary/index.tsx +6 -4
- package/themes/business/src/components/OrdersListManager/index.tsx +13 -1
- package/themes/business/src/components/OrdersOption/index.tsx +217 -156
- package/themes/business/src/components/PhoneInputNumber/index.tsx +8 -5
- package/themes/business/src/components/PreviousMessages/index.tsx +26 -3
- package/themes/business/src/components/PreviousOrders/OrderItem.tsx +39 -16
- package/themes/business/src/components/PreviousOrders/index.tsx +74 -66
- package/themes/business/src/components/PrinterEdition/MessageAlert.tsx +33 -0
- package/themes/business/src/components/PrinterEdition/index.tsx +431 -0
- package/themes/business/src/components/PrinterEdition/printerList.tsx +23 -0
- package/themes/business/src/components/PrinterEdition/styles.tsx +61 -0
- package/themes/business/src/components/PrinterSettings/index.tsx +162 -174
- package/themes/business/src/components/PrinterSettings/styles.tsx +14 -1
- package/themes/business/src/components/ProductItemAccordion/index.tsx +3 -2
- package/themes/business/src/components/ReviewCustomer/index.tsx +2 -0
- package/themes/business/src/components/StoresList/index.tsx +2 -2
- package/themes/business/src/components/UserProfileForm/index.tsx +55 -22
- package/themes/business/src/components/UserProfileForm/styles.tsx +7 -0
- package/themes/business/src/components/WebsocketStatus/index.tsx +2 -2
- package/themes/business/src/components/shared/OTextarea.tsx +8 -9
- package/themes/business/src/config/currency.tsx +1010 -0
- package/themes/business/src/hooks/useLocation.tsx +16 -12
- package/themes/business/src/layouts/SafeAreaContainer.tsx +35 -19
- package/themes/business/src/types/index.tsx +16 -4
- package/themes/business/src/utils/index.tsx +33 -3
- 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/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/shared/OButton.tsx +5 -18
- package/themes/original/index.tsx +11 -0
- package/themes/original/src/components/AddressForm/index.tsx +32 -17
- package/themes/original/src/components/AddressList/index.tsx +8 -7
- package/themes/original/src/components/AppleLogin/index.tsx +4 -4
- package/themes/original/src/components/BusinessBasicInformation/index.tsx +5 -8
- package/themes/original/src/components/BusinessItemAccordion/index.tsx +13 -5
- package/themes/original/src/components/BusinessListingSearch/BusinessSearchFooter.tsx +103 -92
- package/themes/original/src/components/BusinessListingSearch/BusinessSearchHeader.tsx +8 -6
- package/themes/original/src/components/BusinessListingSearch/index.tsx +1 -2
- package/themes/original/src/components/BusinessPreorder/index.tsx +46 -28
- package/themes/original/src/components/BusinessProductsList/SubcategoriesComponent/index.tsx +73 -70
- package/themes/original/src/components/BusinessProductsList/index.tsx +6 -7
- package/themes/original/src/components/BusinessProductsList/styles.tsx +0 -3
- package/themes/original/src/components/BusinessProductsListing/index.tsx +10 -6
- package/themes/original/src/components/BusinessTypeFilter/index.tsx +9 -8
- package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +2 -1
- package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +1 -1
- package/themes/original/src/components/BusinessesListing/index.tsx +0 -1
- package/themes/original/src/components/Cart/index.tsx +46 -14
- package/themes/original/src/components/CartContent/index.tsx +2 -4
- package/themes/original/src/components/Checkout/index.tsx +127 -77
- package/themes/original/src/components/CitiesControl/index.tsx +0 -3
- package/themes/original/src/components/CouponControl/index.tsx +1 -3
- package/themes/original/src/components/DriverTips/index.tsx +1 -3
- package/themes/original/src/components/Favorite/index.tsx +1 -5
- package/themes/original/src/components/FavoriteList/index.tsx +0 -1
- package/themes/original/src/components/ForgotPasswordForm/index.tsx +5 -7
- package/themes/original/src/components/GiftCard/GiftCardUI/index.tsx +15 -17
- package/themes/original/src/components/GiftCard/PurchaseGiftCard/index.tsx +3 -7
- package/themes/original/src/components/GiftCard/RedeemGiftCard/index.tsx +24 -32
- package/themes/original/src/components/GiftCard/SendGiftCard/index.tsx +7 -9
- package/themes/original/src/components/GiftCard/VerticalGiftCardOrdersLayout/index.tsx +11 -12
- package/themes/original/src/components/GoogleMap/index.tsx +39 -18
- package/themes/original/src/components/Help/index.tsx +2 -0
- package/themes/original/src/components/HighestRatedBusinesses/index.tsx +1 -1
- package/themes/original/src/components/Home/index.tsx +3 -11
- package/themes/original/src/components/LoginForm/Otp/index.tsx +0 -3
- package/themes/original/src/components/LoginForm/index.tsx +12 -9
- package/themes/original/src/components/MessageListing/index.tsx +2 -1
- package/themes/original/src/components/Messages/index.tsx +27 -19
- package/themes/original/src/components/MomentOption/TimeListItem.tsx +56 -0
- package/themes/original/src/components/MomentOption/index.tsx +80 -51
- package/themes/original/src/components/MomentSelector/index.tsx +5 -2
- package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +7 -3
- package/themes/original/src/components/MultiCheckout/index.tsx +55 -27
- package/themes/original/src/components/MultiOrdersDetails/index.tsx +1 -0
- package/themes/original/src/components/MyOrders/index.tsx +2 -2
- package/themes/original/src/components/NavBar/index.tsx +7 -4
- package/themes/original/src/components/NetworkError/index.tsx +0 -5
- package/themes/original/src/components/NotFoundSource/index.tsx +0 -3
- package/themes/original/src/components/OrderDetails/OrderEta.tsx +4 -3
- package/themes/original/src/components/OrderDetails/OrderHistory.tsx +16 -11
- package/themes/original/src/components/OrderDetails/index.tsx +44 -21
- package/themes/original/src/components/OrderDetails/styles.tsx +0 -1
- package/themes/original/src/components/OrderProgress/index.tsx +4 -3
- package/themes/original/src/components/OrderSummary/index.tsx +29 -10
- package/themes/original/src/components/OrderTypeSelector/index.tsx +7 -6
- package/themes/original/src/components/OrdersOption/index.tsx +3 -6
- package/themes/original/src/components/PaymentOptionStripe/index.tsx +0 -5
- package/themes/original/src/components/PaymentOptionWallet/index.tsx +56 -56
- package/themes/original/src/components/PaymentOptions/index.tsx +4 -3
- package/themes/original/src/components/PhoneInputNumber/index.tsx +92 -7
- package/themes/original/src/components/PlaceSpot/index.tsx +1 -3
- package/themes/original/src/components/PreviousOrders/index.tsx +1 -2
- package/themes/original/src/components/ProductForm/ActionButton.tsx +17 -20
- package/themes/original/src/components/ProductForm/index.tsx +107 -102
- package/themes/original/src/components/ProductItemAccordion/index.tsx +50 -43
- package/themes/original/src/components/ProductItemAccordion/styles.tsx +0 -3
- package/themes/original/src/components/ProductOptionSubOption/index.tsx +16 -8
- package/themes/original/src/components/ProfessionalProfile/index.tsx +4 -5
- package/themes/original/src/components/Promotions/index.tsx +6 -9
- package/themes/original/src/components/ReviewDriver/index.tsx +1 -1
- package/themes/original/src/components/ReviewOrder/index.tsx +2 -2
- package/themes/original/src/components/ReviewProducts/index.tsx +1 -1
- package/themes/original/src/components/ReviewTrigger/index.tsx +2 -2
- package/themes/original/src/components/ServiceForm/index.tsx +52 -54
- package/themes/original/src/components/Sessions/index.tsx +3 -3
- package/themes/original/src/components/SignupForm/index.tsx +102 -88
- package/themes/original/src/components/SingleOrderCard/index.tsx +6 -4
- package/themes/original/src/components/SingleProductCard/index.tsx +5 -5
- package/themes/original/src/components/SingleProductCard/styles.tsx +0 -3
- package/themes/original/src/components/StripeCardForm/index.tsx +0 -3
- package/themes/original/src/components/StripeCardsList/index.tsx +16 -3
- package/themes/original/src/components/StripeElementsForm/index.tsx +76 -62
- package/themes/original/src/components/StripeElementsForm/naked.tsx +48 -1
- package/themes/original/src/components/StripeRedirectForm/index.tsx +0 -3
- package/themes/original/src/components/TaxInformation/index.tsx +3 -2
- package/themes/original/src/components/UpsellingProducts/UpsellingContent.tsx +10 -7
- package/themes/original/src/components/UpsellingProducts/UpsellingLayout.tsx +8 -3
- package/themes/original/src/components/UserDetails/index.tsx +17 -16
- package/themes/original/src/components/UserFormDetails/index.tsx +164 -135
- package/themes/original/src/components/UserProfile/index.tsx +9 -1
- package/themes/original/src/components/UserVerification/index.tsx +15 -4
- package/themes/original/src/components/Wallets/index.tsx +6 -3
- package/themes/original/src/components/WebsocketStatus/index.tsx +1 -4
- package/themes/original/src/components/shared/OAlert.tsx +2 -1
- package/themes/original/src/components/shared/OButton.tsx +5 -4
- package/themes/original/src/components/shared/OInput.tsx +4 -8
- package/themes/original/src/components/shared/OModal.tsx +7 -2
- package/themes/original/src/types/index.tsx +10 -3
- package/themes/original/src/utils/index.tsx +30 -1
- package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
//React & React Native
|
|
2
1
|
import React, { useState, useEffect } from 'react';
|
|
3
2
|
import { StyleSheet, View } from 'react-native';
|
|
4
3
|
|
|
5
|
-
// Thirds
|
|
6
4
|
import { Placeholder, PlaceholderLine, Fade } from 'rn-placeholder';
|
|
7
5
|
import Clipboard from '@react-native-clipboard/clipboard';
|
|
6
|
+
import MCIcon from 'react-native-vector-icons/MaterialCommunityIcons';
|
|
8
7
|
|
|
9
|
-
//OrderingComponent
|
|
10
8
|
import {
|
|
11
9
|
useLanguage,
|
|
12
10
|
OrderDetails as OrderDetailsConTableoller,
|
|
@@ -14,16 +12,16 @@ import {
|
|
|
14
12
|
useSession,
|
|
15
13
|
ToastType,
|
|
16
14
|
useUtils,
|
|
17
|
-
useConfig
|
|
15
|
+
useConfig,
|
|
16
|
+
useApi
|
|
18
17
|
} from 'ordering-components/native';
|
|
19
18
|
|
|
20
|
-
//Components
|
|
21
19
|
import Alert from '../../providers/AlertProvider';
|
|
22
20
|
import { AcceptOrRejectOrder } from '../AcceptOrRejectOrder';
|
|
23
21
|
import { Chat } from '../Chat';
|
|
24
22
|
import { FloatingButton } from '../FloatingButton';
|
|
25
23
|
import { DriverMap } from '../DriverMap';
|
|
26
|
-
import { OButton } from '../shared';
|
|
24
|
+
import { OButton, OText } from '../shared';
|
|
27
25
|
import { OModal } from '../shared';
|
|
28
26
|
import { OrderDetailsParams } from '../../types';
|
|
29
27
|
import { USER_TYPE } from '../../config/constants';
|
|
@@ -32,8 +30,8 @@ import { NotFoundSource } from '../NotFoundSource';
|
|
|
32
30
|
import { verifyDecimals, getProductPrice, getOrderStatus } from '../../utils';
|
|
33
31
|
import { OrderHeaderComponent } from './OrderHeaderComponent';
|
|
34
32
|
import { OrderContentComponent } from './OrderContentComponent';
|
|
35
|
-
//Styles
|
|
36
33
|
import { OrderDetailsContainer, Pickup } from './styles';
|
|
34
|
+
import { useOfflineActions } from '../../../../../src/context/OfflineActions';
|
|
37
35
|
|
|
38
36
|
export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
39
37
|
const {
|
|
@@ -42,7 +40,6 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
42
40
|
setMessages,
|
|
43
41
|
readMessages,
|
|
44
42
|
messagesReadList,
|
|
45
|
-
handleChangeOrderStatus,
|
|
46
43
|
permissions,
|
|
47
44
|
askLocationPermission,
|
|
48
45
|
driverLocation,
|
|
@@ -56,13 +53,15 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
56
53
|
forceUpdate,
|
|
57
54
|
getPermissions,
|
|
58
55
|
orderAssingId,
|
|
59
|
-
isGrantedPermissions
|
|
56
|
+
isGrantedPermissions
|
|
60
57
|
} = props;
|
|
58
|
+
|
|
61
59
|
const [, { showToast }] = useToast();
|
|
62
60
|
const [{ parsePrice, parseNumber }] = useUtils();
|
|
63
61
|
const [{ configs }] = useConfig();
|
|
64
|
-
|
|
62
|
+
const [ordering] = useApi()
|
|
65
63
|
const { order } = props.order
|
|
64
|
+
const isDelosiProject = ['delosi', 'delosipruebas'].includes(ordering?.project)
|
|
66
65
|
|
|
67
66
|
const hideTimer = configs?.hidden_driver_eta_time?.value === '1'
|
|
68
67
|
const isAllowedDriverRejectOrder = configs?.allow_driver_reject_order?.value === '1'
|
|
@@ -72,6 +71,8 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
72
71
|
const theme = useTheme();
|
|
73
72
|
const [, t] = useLanguage();
|
|
74
73
|
const [session] = useSession();
|
|
74
|
+
const [{ isNetConnected, canSaveChangesOffline }, { applyOffAction, registerOffOrder }] = useOfflineActions()
|
|
75
|
+
|
|
75
76
|
const [actionOrder, setActionOrder] = useState('');
|
|
76
77
|
const [unreadAlert, setUnreadAlert] = useState({
|
|
77
78
|
business: false,
|
|
@@ -86,12 +87,17 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
86
87
|
key?: string | null;
|
|
87
88
|
}>({ open: false, content: [], key: null });
|
|
88
89
|
|
|
89
|
-
const
|
|
90
|
+
const disabledActionsByInternet = isNetConnected !== null && !isNetConnected && canSaveChangesOffline === false
|
|
91
|
+
|
|
92
|
+
const validStatusComplete = [9, 19, 23, 26]
|
|
90
93
|
|
|
91
94
|
const pendingOrderStatus = [1, 4, 7, 13]
|
|
92
95
|
|
|
93
96
|
const logisticOrderStatus = [4, 6, 7]
|
|
94
97
|
|
|
98
|
+
const deliveryTypes = [1, 7]
|
|
99
|
+
|
|
100
|
+
|
|
95
101
|
const showFloatButtonsPickUp: any = {
|
|
96
102
|
8: !isHideRejectButtons,
|
|
97
103
|
3: true,
|
|
@@ -105,13 +111,23 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
105
111
|
14: true
|
|
106
112
|
};
|
|
107
113
|
|
|
108
|
-
const
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
114
|
+
const handleChangeOrderStatus = async (status: number) => {
|
|
115
|
+
if (!isNetConnected && canSaveChangesOffline !== false) {
|
|
116
|
+
const result = applyOffAction({
|
|
117
|
+
event: 'evt_off_change_order_status',
|
|
118
|
+
data: { orderId: order?.id, body: { status } }
|
|
119
|
+
})
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
const dataToSave: any = !isNetConnected && canSaveChangesOffline !== false
|
|
123
|
+
? { dataToSave: { status, unsync: true } }
|
|
124
|
+
: null
|
|
125
|
+
const orderUpdated = await props.handleChangeOrderStatus(status, {}, dataToSave)
|
|
126
|
+
|
|
127
|
+
if (!isNetConnected && canSaveChangesOffline !== false) {
|
|
128
|
+
await registerOffOrder(orderUpdated)
|
|
129
|
+
}
|
|
130
|
+
}
|
|
115
131
|
|
|
116
132
|
const handleOpenMessagesForBusiness = () => {
|
|
117
133
|
setOpenModalForBusiness(true);
|
|
@@ -222,7 +238,13 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
222
238
|
? t('EAT_IN', 'Eat in')
|
|
223
239
|
: order.delivery_type === 4
|
|
224
240
|
? t('CURBSIDE', 'Curbside')
|
|
225
|
-
:
|
|
241
|
+
: order.delivery_type === 5
|
|
242
|
+
? t('DRIVER_THRU', 'Driver thru')
|
|
243
|
+
: order.delivery_type === 7
|
|
244
|
+
? t('CATERING_DELIVERY', 'Catering delivery')
|
|
245
|
+
: order.delivery_type === 8
|
|
246
|
+
? t('CATERING_PICKUP', 'Catering pickup')
|
|
247
|
+
: t('DELIVERY', 'Delivery')
|
|
226
248
|
}\n`
|
|
227
249
|
: '';
|
|
228
250
|
|
|
@@ -428,6 +450,16 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
428
450
|
forceUpdate && handleViewActionOrder && handleViewActionOrder(forceUpdate === 9 ? 'forcePickUp' : 'forceDelivery')
|
|
429
451
|
}, [forceUpdate])
|
|
430
452
|
|
|
453
|
+
useEffect(() => {
|
|
454
|
+
if (!!props.order?.error || props.order?.error?.length > 0) {
|
|
455
|
+
showToast(ToastType.Error,
|
|
456
|
+
props.order?.error?.[0] ||
|
|
457
|
+
props.order?.error ||
|
|
458
|
+
t('NETWORK_ERROR', 'Network Error'),
|
|
459
|
+
5000)
|
|
460
|
+
}
|
|
461
|
+
}, [props.order?.error])
|
|
462
|
+
|
|
431
463
|
const styles = StyleSheet.create({
|
|
432
464
|
btnPickUp: {
|
|
433
465
|
borderWidth: 0,
|
|
@@ -439,8 +471,10 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
439
471
|
let locationMarker: any;
|
|
440
472
|
let isToFollow = false;
|
|
441
473
|
let isBusinessMarker = false;
|
|
442
|
-
|
|
443
|
-
|
|
474
|
+
const customerStatusses = [3, 9, 19, 23, 26]
|
|
475
|
+
const businessStatusses = [7, 8, 18]
|
|
476
|
+
const arrivedCustomerStatusses = [9, 19, 23]
|
|
477
|
+
if (businessStatusses?.includes(order?.status)) {
|
|
444
478
|
const markerBusiness = 'Business';
|
|
445
479
|
isBusinessMarker = true;
|
|
446
480
|
locationMarker = locations.find(
|
|
@@ -450,7 +484,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
450
484
|
if (order?.status === 8 || order?.status === 18) {
|
|
451
485
|
isToFollow = true;
|
|
452
486
|
}
|
|
453
|
-
} else if (
|
|
487
|
+
} else if (customerStatusses?.includes(order?.status)) {
|
|
454
488
|
const markerCustomer = 'Customer';
|
|
455
489
|
isToFollow = true;
|
|
456
490
|
isBusinessMarker = false;
|
|
@@ -478,20 +512,35 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
478
512
|
isOrderGroup={isOrderGroup}
|
|
479
513
|
lastOrder={lastOrder}
|
|
480
514
|
/>
|
|
481
|
-
{(order?.status === 8 || order?.status === 18) && order?.delivery_type
|
|
515
|
+
{(order?.status === 8 || order?.status === 18) && deliveryTypes?.includes(order?.delivery_type) && !props.order?.loading && (
|
|
482
516
|
<Pickup>
|
|
483
517
|
<OButton
|
|
484
518
|
style={styles.btnPickUp}
|
|
485
519
|
textStyle={{ color: theme.colors.primary }}
|
|
486
520
|
text={t('ARRIVED_TO_BUSINESS', 'Arrived to bussiness')}
|
|
521
|
+
isDisabled={disabledActionsByInternet}
|
|
487
522
|
onClick={() =>
|
|
488
|
-
|
|
523
|
+
isGrantedPermissions ? handleChangeOrderStatus(3) : goToPermissionPage()
|
|
489
524
|
}
|
|
490
525
|
imgLeftStyle={{ tintColor: theme.colors.backArrow }}
|
|
491
526
|
/>
|
|
492
527
|
</Pickup>
|
|
493
528
|
)}
|
|
494
|
-
{order?.status
|
|
529
|
+
{arrivedCustomerStatusses.includes(order?.status) && deliveryTypes?.includes(order?.delivery_type) && !props.order?.loading && (
|
|
530
|
+
<View style={{ paddingVertical: 20, marginBottom: 20 }}>
|
|
531
|
+
<OButton
|
|
532
|
+
style={styles.btnPickUp}
|
|
533
|
+
textStyle={{ color: theme.colors.primary }}
|
|
534
|
+
text={t('ARRIVED_TO_CUSTOMER', 'Arrived to customer')}
|
|
535
|
+
isDisabled={disabledActionsByInternet}
|
|
536
|
+
onClick={() =>
|
|
537
|
+
isGrantedPermissions ? handleChangeOrderStatus(26) : goToPermissionPage()
|
|
538
|
+
}
|
|
539
|
+
imgLeftStyle={{ tintColor: theme.colors.backArrow }}
|
|
540
|
+
/>
|
|
541
|
+
</View>
|
|
542
|
+
)}
|
|
543
|
+
{order?.status === 3 && deliveryTypes?.includes(order?.delivery_type) && !isHideRejectButtons && isEnabledOrderNotReady && !props.order?.loading && (
|
|
495
544
|
<View style={{ paddingVertical: 20, marginBottom: 20 }}>
|
|
496
545
|
<OButton
|
|
497
546
|
style={styles.btnPickUp}
|
|
@@ -508,7 +557,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
508
557
|
<View
|
|
509
558
|
style={{
|
|
510
559
|
height:
|
|
511
|
-
order?.status === 8 && order?.delivery_type
|
|
560
|
+
order?.status === 8 && deliveryTypes?.includes(order?.delivery_type) ? 50 : 35,
|
|
512
561
|
}}
|
|
513
562
|
/>
|
|
514
563
|
|
|
@@ -535,21 +584,31 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
535
584
|
))}
|
|
536
585
|
</View>
|
|
537
586
|
)}
|
|
538
|
-
|
|
539
|
-
{(!!props.order?.error || props.order?.error?.length > 0) && (
|
|
540
|
-
<NotFoundSource
|
|
541
|
-
btnTitle={t('GO_TO_MY_ORDERS', 'Go to my orders')}
|
|
542
|
-
content={
|
|
543
|
-
props.order.error[0] ||
|
|
544
|
-
props.order.error ||
|
|
545
|
-
t('NETWORK_ERROR', 'Network Error')
|
|
546
|
-
}
|
|
547
|
-
onClickButton={() => navigation.navigate('Orders')}
|
|
548
|
-
/>
|
|
549
|
-
)}
|
|
550
587
|
{!((!order || Object.keys(order).length === 0) &&
|
|
551
|
-
(props.order?.error?.length < 1 || !props.order?.error)) && (
|
|
588
|
+
(props.order?.error?.length < 1 || !props.order?.error)) && order?.id && (
|
|
552
589
|
<View style={{ flex: 1 }}>
|
|
590
|
+
{order?.unsync && (
|
|
591
|
+
<View
|
|
592
|
+
style={{
|
|
593
|
+
flexDirection: 'row',
|
|
594
|
+
justifyContent: 'flex-start',
|
|
595
|
+
alignItems: 'center'
|
|
596
|
+
}}
|
|
597
|
+
>
|
|
598
|
+
<MCIcon
|
|
599
|
+
name={'cloud-sync'}
|
|
600
|
+
color={'#444'}
|
|
601
|
+
size={16}
|
|
602
|
+
/>
|
|
603
|
+
<OText
|
|
604
|
+
size={14}
|
|
605
|
+
color={theme.colors.textGray}
|
|
606
|
+
style={{ marginLeft: 5 }}
|
|
607
|
+
>
|
|
608
|
+
{t('PENDING_SYNC_CHANGES', 'Pending sync changes')}
|
|
609
|
+
</OText>
|
|
610
|
+
</View>
|
|
611
|
+
)}
|
|
553
612
|
<OrderHeaderComponent
|
|
554
613
|
order={order}
|
|
555
614
|
handleOpenMapView={handleOpenMapView}
|
|
@@ -573,11 +632,11 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
573
632
|
</OrderDetailsContainer>
|
|
574
633
|
{showFloatButtonsPickUp[order?.status] && (
|
|
575
634
|
<FloatingButton
|
|
576
|
-
disabled={props.order?.loading}
|
|
635
|
+
disabled={props.order?.loading || disabledActionsByInternet}
|
|
577
636
|
btnText={t('PICKUP_FAILED', 'Pickup failed')}
|
|
578
637
|
isSecondaryBtn={false}
|
|
579
638
|
secondButtonClick={() =>
|
|
580
|
-
|
|
639
|
+
isGrantedPermissions ? handleChangeOrderStatus(9) : goToPermissionPage()
|
|
581
640
|
}
|
|
582
641
|
firstButtonClick={() =>
|
|
583
642
|
handleViewActionOrder && handleViewActionOrder('pickupFailed')
|
|
@@ -590,39 +649,48 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
590
649
|
isHideRejectButtons={isHideRejectButtons || !isEnabledFailedPickupDriver}
|
|
591
650
|
/>
|
|
592
651
|
)}
|
|
593
|
-
{(validStatusComplete.includes(order?.status)) && (
|
|
652
|
+
{(validStatusComplete.includes(order?.status)) && !(isDelosiProject && order?.status !== 26 && isHideRejectButtons) && (
|
|
594
653
|
<>
|
|
595
654
|
<FloatingButton
|
|
596
|
-
disabled={props.order?.loading}
|
|
655
|
+
disabled={props.order?.loading || disabledActionsByInternet}
|
|
597
656
|
btnText={t('DELIVERY_FAILED', 'Delivery Failed')}
|
|
598
657
|
isSecondaryBtn={false}
|
|
599
658
|
secondButtonClick={() =>
|
|
600
|
-
|
|
659
|
+
isGrantedPermissions ? handleChangeOrderStatus(11) : goToPermissionPage()
|
|
601
660
|
}
|
|
602
661
|
firstButtonClick={() =>
|
|
603
662
|
handleViewActionOrder && handleViewActionOrder('deliveryFailed')
|
|
604
663
|
}
|
|
605
664
|
secondBtnText={t('DELIVERY_COMPLETE', 'Delivery complete')}
|
|
606
|
-
secondButton={true}
|
|
665
|
+
secondButton={isDelosiProject ? order?.status === 26 : true}
|
|
607
666
|
firstColorCustom={theme.colors.red}
|
|
667
|
+
principalButtonColor={theme.colors.red}
|
|
608
668
|
secondColorCustom={theme.colors.green}
|
|
609
|
-
widthButton={isHideRejectButtons ? '100%' : '45%'}
|
|
669
|
+
widthButton={isHideRejectButtons || (isDelosiProject && order?.status !== 26) ? '100%' : '45%'}
|
|
610
670
|
isHideRejectButtons={isHideRejectButtons}
|
|
611
671
|
/>
|
|
612
672
|
</>
|
|
613
673
|
)}
|
|
614
674
|
{showFloatButtonsAcceptOrReject[order?.status] && (
|
|
615
675
|
<FloatingButton
|
|
676
|
+
disabled={props.order?.loading || disabledActionsByInternet}
|
|
677
|
+
widthButton={isHideRejectButtons ? '100%' : '45%'}
|
|
678
|
+
isHideRejectButtons={isHideRejectButtons}
|
|
616
679
|
btnText={t('REJECT', 'Reject')}
|
|
680
|
+
firstColorCustom={theme.colors.red}
|
|
681
|
+
firstButtonClick={() => order?.isLogistic && (order?.order_group || logisticOrderStatus.includes(order?.status))
|
|
682
|
+
? handleRejectLogisticOrder()
|
|
683
|
+
: handleViewActionOrder('reject')
|
|
684
|
+
}
|
|
617
685
|
isSecondaryBtn={false}
|
|
618
|
-
secondButtonClick={() => hideTimer ? handleChangeOrderStatus && handleChangeOrderStatus(8) : (order?.isLogistic && (order?.order_group || logisticOrderStatus.includes(order?.status))) ? handleAcceptLogisticOrder(order) : handleViewActionOrder('accept')}
|
|
619
|
-
firstButtonClick={() => order?.isLogistic && (order?.order_group || logisticOrderStatus.includes(order?.status)) ? handleRejectLogisticOrder() : handleViewActionOrder('reject')}
|
|
620
|
-
secondBtnText={t('ACCEPT', 'Accept')}
|
|
621
686
|
secondButton={true}
|
|
622
|
-
|
|
687
|
+
secondBtnText={t('ACCEPT', 'Accept')}
|
|
688
|
+
secondButtonClick={() => hideTimer
|
|
689
|
+
? handleChangeOrderStatus(8)
|
|
690
|
+
: (order?.isLogistic && (order?.order_group || logisticOrderStatus.includes(order?.status)))
|
|
691
|
+
? handleAcceptLogisticOrder(order)
|
|
692
|
+
: handleViewActionOrder('accept')}
|
|
623
693
|
secondColorCustom={theme.colors.green}
|
|
624
|
-
widthButton={isHideRejectButtons ? '100%' : '45%'}
|
|
625
|
-
isHideRejectButtons={isHideRejectButtons}
|
|
626
694
|
/>
|
|
627
695
|
)}
|
|
628
696
|
</>
|
|
@@ -677,7 +745,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
677
745
|
entireModal
|
|
678
746
|
customClose>
|
|
679
747
|
<AcceptOrRejectOrder
|
|
680
|
-
handleUpdateOrder={handleChangeOrderStatus}
|
|
748
|
+
handleUpdateOrder={props.handleChangeOrderStatus}
|
|
681
749
|
closeModal={setOpenModalForAccept}
|
|
682
750
|
customerCellphone={order?.customer?.cellphone}
|
|
683
751
|
loading={props.order?.loading}
|
|
@@ -687,11 +755,24 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
687
755
|
actions={actions}
|
|
688
756
|
orderTitle={orderTitle}
|
|
689
757
|
appTitle={appTitle}
|
|
758
|
+
isLoadingOrder={props.order?.loading}
|
|
690
759
|
/>
|
|
691
760
|
</OModal>
|
|
692
761
|
)}
|
|
693
762
|
</View>
|
|
694
763
|
)}
|
|
764
|
+
|
|
765
|
+
{(!!props.order?.error || props.order?.error?.length > 0) && (
|
|
766
|
+
<NotFoundSource
|
|
767
|
+
btnTitle={t('GO_TO_MY_ORDERS', 'Go to my orders')}
|
|
768
|
+
content={
|
|
769
|
+
props.order.error[0] ||
|
|
770
|
+
props.order.error ||
|
|
771
|
+
t('NETWORK_ERROR', 'Network Error')
|
|
772
|
+
}
|
|
773
|
+
onClickButton={() => navigation.navigate('Orders')}
|
|
774
|
+
/>
|
|
775
|
+
)}
|
|
695
776
|
{alertState?.open && (
|
|
696
777
|
<Alert
|
|
697
778
|
open={alertState.open}
|