ordering-ui-react-native 0.22.8 → 0.22.9-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 +2 -1
- package/themes/business/src/components/Chat/index.tsx +15 -3
- package/themes/business/src/components/DriverMap/index.tsx +49 -27
- 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 +40 -27
- package/themes/business/src/components/OrderDetails/Business.tsx +38 -21
- package/themes/business/src/components/OrderDetails/Delivery.tsx +138 -55
- package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +125 -43
- package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +62 -24
- package/themes/business/src/components/OrderDetails/styles.tsx +39 -3
- package/themes/business/src/components/OrderDetails/usePrinterCommands.tsx +138 -64
- package/themes/business/src/components/OrderDetailsLogistic/index.tsx +3 -2
- package/themes/business/src/components/OrderSummary/index.tsx +209 -73
- 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 +76 -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 -173
- package/themes/business/src/components/PrinterSettings/styles.tsx +14 -1
- 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 +16 -17
- package/themes/business/src/components/WebsocketStatus/index.tsx +2 -2
- package/themes/business/src/components/shared/OTextarea.tsx +8 -9
- package/themes/business/src/layouts/SafeAreaContainer.tsx +35 -19
- package/themes/business/src/types/index.tsx +13 -4
- package/themes/business/src/utils/index.tsx +25 -1
- 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/AnalyticsSegment/index.tsx +6 -6
- 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/BusinessController/index.tsx +5 -5
- 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 +18 -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/index.tsx +1 -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 +38 -14
- package/themes/original/src/components/CartContent/index.tsx +2 -4
- package/themes/original/src/components/Checkout/index.tsx +112 -58
- 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 +4 -7
- 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 +13 -10
- 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 +5 -4
- 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 +0 -2
- 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 +86 -78
- 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 +10 -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 +159 -133
- package/themes/original/src/components/UserProfile/index.tsx +9 -1
- package/themes/original/src/components/UserVerification/index.tsx +14 -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 +5 -1
- package/themes/original/src/utils/index.tsx +30 -1
- package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
|
@@ -53,16 +53,23 @@ const MapViewComponent = (props: MapViewParams) => {
|
|
|
53
53
|
|
|
54
54
|
const fitCoordinates = (location?: any) => {
|
|
55
55
|
if (mapRef.current) {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
56
|
+
const isSendCoordinates =
|
|
57
|
+
location &&
|
|
58
|
+
userLocation &&
|
|
59
|
+
location.latitude !== userLocation.latitude &&
|
|
60
|
+
location.longitude !== userLocation.longitude &&
|
|
61
|
+
location.latitude !== 0 &&
|
|
62
|
+
location.longitude !== 0 &&
|
|
63
|
+
userLocation.latitude !== 0 &&
|
|
64
|
+
userLocation.longitude !== 0
|
|
65
|
+
|
|
66
|
+
isSendCoordinates && mapRef.current.fitToCoordinates(
|
|
67
|
+
[location, userLocation].map(_location => ({
|
|
68
|
+
latitude: _location.latitude,
|
|
69
|
+
longitude: _location.longitude
|
|
70
|
+
})),
|
|
64
71
|
{
|
|
65
|
-
edgePadding: { top: 120, right: 120, bottom: 120, left: 120 }
|
|
72
|
+
edgePadding: { top: 120, right: 120, bottom: 120, left: 120 }
|
|
66
73
|
},
|
|
67
74
|
);
|
|
68
75
|
}
|
|
@@ -133,8 +140,20 @@ const MapViewComponent = (props: MapViewParams) => {
|
|
|
133
140
|
const RenderMarker = ({ marker, customer, orderIds }: { marker: any, customer?: boolean, orderIds?: Array<number> }) => {
|
|
134
141
|
const markerRef = useRef<any>()
|
|
135
142
|
|
|
136
|
-
let coordinateLat = (customer
|
|
137
|
-
|
|
143
|
+
let coordinateLat = (customer
|
|
144
|
+
? typeof marker?.customer?.location?.lat === 'number' && !Number.isNaN(marker?.customer?.location?.lat)
|
|
145
|
+
? marker?.customer?.location?.lat
|
|
146
|
+
: 0
|
|
147
|
+
: typeof marker?.business?.location?.lat === 'number' && !Number.isNaN(marker?.business?.location?.lat)
|
|
148
|
+
? marker?.business?.location?.lat
|
|
149
|
+
: 0) ?? (initialPosition?.latitude || 0)
|
|
150
|
+
let coordinateLng = (customer
|
|
151
|
+
? typeof marker?.customer?.location?.lng === 'number' && !Number.isNaN(marker?.customer?.location?.lng)
|
|
152
|
+
? marker?.customer?.location?.lng
|
|
153
|
+
: 0
|
|
154
|
+
: typeof marker?.business?.location?.lng === 'number' && !Number.isNaN(marker?.business?.location?.lng)
|
|
155
|
+
? marker?.business?.location?.lng
|
|
156
|
+
: 0) ?? (initialPosition?.longitude || 0)
|
|
138
157
|
|
|
139
158
|
useEffect(() => {
|
|
140
159
|
if (
|
|
@@ -154,8 +173,8 @@ const MapViewComponent = (props: MapViewParams) => {
|
|
|
154
173
|
}}
|
|
155
174
|
onPress={() =>
|
|
156
175
|
setLocationSelected({
|
|
157
|
-
latitude:
|
|
158
|
-
longitude:
|
|
176
|
+
latitude: coordinateLat,
|
|
177
|
+
longitude: coordinateLng
|
|
159
178
|
})
|
|
160
179
|
}
|
|
161
180
|
ref={(ref) => markerRef.current = ref}
|
|
@@ -235,8 +254,8 @@ const MapViewComponent = (props: MapViewParams) => {
|
|
|
235
254
|
ref={mapRef}
|
|
236
255
|
provider={PROVIDER_GOOGLE}
|
|
237
256
|
initialRegion={{
|
|
238
|
-
latitude: initialPosition?.latitude,
|
|
239
|
-
longitude: initialPosition?.longitude,
|
|
257
|
+
latitude: initialPosition?.latitude || 0,
|
|
258
|
+
longitude: initialPosition?.longitude || 0,
|
|
240
259
|
latitudeDelta: haveOrders ? 0.01 : 0.1,
|
|
241
260
|
longitudeDelta: haveOrders ? 0.01 * ASPECT_RATIO : 0.1 * ASPECT_RATIO,
|
|
242
261
|
}}
|
|
@@ -266,8 +285,8 @@ const MapViewComponent = (props: MapViewParams) => {
|
|
|
266
285
|
))}
|
|
267
286
|
<Marker
|
|
268
287
|
coordinate={{
|
|
269
|
-
latitude: location.lat,
|
|
270
|
-
longitude: location.lng,
|
|
288
|
+
latitude: typeof location.lat === 'number' && !Number.isNaN(location.lat) ? location.lat : 0,
|
|
289
|
+
longitude: typeof location.lng === 'number' && !Number.isNaN(location.lng) ? location.lng : 0,
|
|
271
290
|
}}
|
|
272
291
|
title={t('YOUR_LOCATION', 'Your Location')}
|
|
273
292
|
>
|
|
@@ -44,17 +44,25 @@ const SoundPlayerComponent = (props: any) => {
|
|
|
44
44
|
const id = setInterval(() => setCount(count + 1), 2500)
|
|
45
45
|
|
|
46
46
|
const playSound = async () => {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
47
|
+
try {
|
|
48
|
+
SoundPlayer.playUrl(URL_SOUND)
|
|
49
|
+
await new Promise(resolve => setTimeout(resolve, DELAY_SOUND))
|
|
50
|
+
SoundPlayer.stop()
|
|
51
|
+
} catch (err: any) {
|
|
52
|
+
console.log('Sound Error - ', err.message)
|
|
53
|
+
}
|
|
50
54
|
}
|
|
51
55
|
if (NativeModules?.RNSoundPlayer?.playUrl && typeof URL_SOUND === 'string' && isEnabledReadStorage) {
|
|
52
56
|
playSound()
|
|
53
57
|
}
|
|
54
58
|
|
|
55
59
|
return () => {
|
|
56
|
-
SoundPlayer.stop()
|
|
57
60
|
clearInterval(id);
|
|
61
|
+
try {
|
|
62
|
+
SoundPlayer.stop()
|
|
63
|
+
} catch (err: any) {
|
|
64
|
+
console.log('Sound Error - ', err.message)
|
|
65
|
+
}
|
|
58
66
|
}
|
|
59
67
|
}, [count, isEnabledReadStorage])
|
|
60
68
|
|
|
@@ -67,7 +75,7 @@ const SoundPlayerComponent = (props: any) => {
|
|
|
67
75
|
setIsEnabledReadStorage(true)
|
|
68
76
|
}
|
|
69
77
|
}
|
|
70
|
-
checkSoundMedia()
|
|
78
|
+
// checkSoundMedia()
|
|
71
79
|
|
|
72
80
|
}, [])
|
|
73
81
|
return (
|
|
@@ -109,21 +117,16 @@ const SoundPlayerComponent = (props: any) => {
|
|
|
109
117
|
}
|
|
110
118
|
|
|
111
119
|
const NewOrderNotificationUI = (props: any) => {
|
|
112
|
-
const { isBusinessApp, evtList } = props
|
|
120
|
+
const { isBusinessApp, evtList, orderStatus } = props
|
|
113
121
|
const [, t] = useLanguage()
|
|
114
122
|
const [events] = useEvent()
|
|
115
123
|
const [{ user, token }] = useSession()
|
|
116
124
|
const [ordering] = useApi()
|
|
117
|
-
const [{ configs }] = useConfig()
|
|
118
125
|
const [, { showToast }] = useToast()
|
|
119
126
|
const { getCurrentLocation } = useLocation()
|
|
120
127
|
const [currentEvent, setCurrentEvent] = useState<any>(null)
|
|
121
128
|
|
|
122
|
-
const
|
|
123
|
-
? configs?.notification_business_states?.value.split('|').map((value: any) => Number(value)) || []
|
|
124
|
-
: configs?.notification_driver_states?.value.split('|').map((value: any) => Number(value)) || []
|
|
125
|
-
|
|
126
|
-
const handleEventNotification = async (evtType: number, value: any) => {
|
|
129
|
+
const handleEventNotification = async (evtType: number, value: any, orderStatus?: any) => {
|
|
127
130
|
if (value?.driver) {
|
|
128
131
|
try {
|
|
129
132
|
const location = await getCurrentLocation()
|
|
@@ -149,11 +152,11 @@ const NewOrderNotificationUI = (props: any) => {
|
|
|
149
152
|
} catch { }
|
|
150
153
|
const duration = moment.duration(moment().diff(moment.utc(value?.last_driver_assigned_at)))
|
|
151
154
|
const assignedSecondsDiff = duration.asSeconds()
|
|
152
|
-
if (assignedSecondsDiff < 5 && !isBusinessApp && !value?.logistic_status
|
|
155
|
+
if (assignedSecondsDiff < 5 && !isBusinessApp && !value?.logistic_status) {
|
|
153
156
|
setCurrentEvent({ evt: 2, orderId: value?.id ?? value?.order_id })
|
|
154
157
|
}
|
|
155
158
|
}
|
|
156
|
-
if (!orderStatus.includes(value.status) || value?.author_id === user.id) return
|
|
159
|
+
if ((!orderStatus.includes(value.status) && evtType !== 1 && isBusinessApp && orderStatus?.length > 0) || value?.author_id === user.id) return
|
|
157
160
|
setCurrentEvent({
|
|
158
161
|
evt: evtType,
|
|
159
162
|
orderId: value?.driver
|
|
@@ -165,20 +168,30 @@ const NewOrderNotificationUI = (props: any) => {
|
|
|
165
168
|
}
|
|
166
169
|
|
|
167
170
|
useEffect(() => {
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
171
|
+
const handleEventTypeOne = (o: any) => {
|
|
172
|
+
handleEventNotification(1, o, orderStatus)
|
|
173
|
+
}
|
|
174
|
+
const handleEventTypeTwo = (o: any) => {
|
|
175
|
+
handleEventNotification(2, o, orderStatus)
|
|
176
|
+
}
|
|
177
|
+
const handleEventTypeThree = (o: any) => {
|
|
178
|
+
handleEventNotification(3, o, orderStatus)
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
events.on('message_added_notification', handleEventTypeOne)
|
|
182
|
+
events.on('order_added_notification', handleEventTypeTwo)
|
|
183
|
+
events.on('order_updated_notification', handleEventTypeThree)
|
|
184
|
+
events.on('request_register_notification', handleEventTypeTwo)
|
|
185
|
+
events.on('request_update_notification', handleEventTypeThree)
|
|
173
186
|
|
|
174
187
|
return () => {
|
|
175
|
-
events.off('message_added_notification',
|
|
176
|
-
events.off('order_added_notification',
|
|
177
|
-
events.off('order_updated_notification',
|
|
178
|
-
events.off('request_register_notification',
|
|
179
|
-
events.off('request_update_notification',
|
|
188
|
+
events.off('message_added_notification', handleEventTypeOne)
|
|
189
|
+
events.off('order_added_notification', handleEventTypeTwo)
|
|
190
|
+
events.off('order_updated_notification', handleEventTypeThree)
|
|
191
|
+
events.off('request_register_notification', handleEventTypeTwo)
|
|
192
|
+
events.off('request_update_notification', handleEventTypeThree)
|
|
180
193
|
}
|
|
181
|
-
}, [])
|
|
194
|
+
}, [orderStatus, events])
|
|
182
195
|
|
|
183
196
|
useEffect(() => {
|
|
184
197
|
return () => setCurrentEvent(null)
|
|
@@ -186,13 +199,13 @@ const NewOrderNotificationUI = (props: any) => {
|
|
|
186
199
|
|
|
187
200
|
return (
|
|
188
201
|
<>
|
|
189
|
-
{!!currentEvent
|
|
202
|
+
{!!currentEvent && (
|
|
190
203
|
<SoundPlayerComponent
|
|
191
204
|
evtList={evtList}
|
|
192
205
|
currentEvent={currentEvent}
|
|
193
206
|
handleCloseEvents={() => setCurrentEvent(null)}
|
|
194
207
|
/>
|
|
195
|
-
)
|
|
208
|
+
)}
|
|
196
209
|
</>
|
|
197
210
|
)
|
|
198
211
|
};
|
|
@@ -53,6 +53,8 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
53
53
|
actions,
|
|
54
54
|
orderTitle,
|
|
55
55
|
appTitle,
|
|
56
|
+
loadMessages,
|
|
57
|
+
notificationApp
|
|
56
58
|
} = props;
|
|
57
59
|
|
|
58
60
|
const theme = useTheme();
|
|
@@ -74,10 +76,12 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
74
76
|
const [openModalForAccept, setOpenModalForAccept] = useState(false);
|
|
75
77
|
const [openModalForMapView, setOpenModalForMapView] = useState(false);
|
|
76
78
|
const [isDriverModalVisible, setIsDriverModalVisible] = useState(false);
|
|
77
|
-
const [printerSettings, setPrinterSettings] = useState('')
|
|
79
|
+
const [printerSettings, setPrinterSettings] = useState<any>('')
|
|
78
80
|
const [autoPrintEnabled, setAutoPrintEnabled] = useState<boolean>(false)
|
|
79
81
|
|
|
80
|
-
const orderToComplete = [4,20,21]
|
|
82
|
+
const orderToComplete = [4, 20, 21]
|
|
83
|
+
const orderToReady = [7, 14]
|
|
84
|
+
const deliveryTypes = [1, 7]
|
|
81
85
|
|
|
82
86
|
if (order?.status === 7 || order?.status === 4) {
|
|
83
87
|
if (drivers?.length > 0 && drivers) {
|
|
@@ -208,7 +212,13 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
208
212
|
? t('EAT_IN', 'Eat in')
|
|
209
213
|
: order.delivery_type === 4
|
|
210
214
|
? t('CURBSIDE', 'Curbside')
|
|
211
|
-
:
|
|
215
|
+
: order.delivery_type === 5
|
|
216
|
+
? t('DRIVER_THRU', 'Driver thru')
|
|
217
|
+
: order.delivery_type === 7
|
|
218
|
+
? t('CATERING_DELIVERY', 'Catering delivery')
|
|
219
|
+
: order.delivery_type === 8
|
|
220
|
+
? t('CATERING_PICKUP', 'Catering pickup')
|
|
221
|
+
: t('DELIVERY', 'Delivery')
|
|
212
222
|
}\n`
|
|
213
223
|
: '';
|
|
214
224
|
|
|
@@ -297,7 +307,8 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
297
307
|
|
|
298
308
|
const handleOpenMessagesForBusiness = () => {
|
|
299
309
|
setOpenModalForBusiness(true);
|
|
300
|
-
readMessages && readMessages()
|
|
310
|
+
readMessages && readMessages()
|
|
311
|
+
loadMessages && loadMessages()
|
|
301
312
|
setUnreadAlert({ ...unreadAlert, business: false });
|
|
302
313
|
};
|
|
303
314
|
|
|
@@ -309,24 +320,26 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
309
320
|
setOpenModalForAccept(true);
|
|
310
321
|
};
|
|
311
322
|
|
|
312
|
-
const printAction = async (printerSettings: any, commands: any) => {
|
|
323
|
+
const printAction = async (printerSettings: any, commands: any, showAlert: boolean = true) => {
|
|
313
324
|
try {
|
|
314
325
|
var printResult = await StarPRNT.print(printerSettings?.emulation, commands, printerSettings?.portName);
|
|
315
|
-
showToast(ToastType.Info, t('ORDER_PRINTED_SUCCESS', 'Order printed'), 1000)
|
|
326
|
+
showAlert && showToast(ToastType.Info, t('ORDER_PRINTED_SUCCESS', 'Order printed'), 1000)
|
|
316
327
|
} catch (e) {
|
|
317
|
-
showToast(ToastType.Error, t('ORDER_PRINTED_FAILED', 'Order not printed, connection failed'), 1000)
|
|
328
|
+
showAlert && showToast(ToastType.Error, t('ORDER_PRINTED_FAILED', 'Order not printed, connection failed'), 1000)
|
|
318
329
|
}
|
|
319
330
|
}
|
|
320
331
|
|
|
321
332
|
const handleViewSummaryOrder = () => {
|
|
322
333
|
if (printerSettings) {
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
334
|
+
printerSettings.map((printer: any, idx: number) => {
|
|
335
|
+
const commands: any = generateCommands({
|
|
336
|
+
...order,
|
|
337
|
+
orderStatus: getOrderStatus(order?.status, t)?.value
|
|
338
|
+
}, printer?.printMode)
|
|
339
|
+
commands.push({ appendCutPaper: StarPRNT.CutPaperAction.PartialCutWithFeed })
|
|
340
|
+
|
|
341
|
+
printAction(printer, commands, idx === printerSettings.length - 1)
|
|
326
342
|
})
|
|
327
|
-
commands.push({ appendCutPaper: StarPRNT.CutPaperAction.PartialCutWithFeed })
|
|
328
|
-
|
|
329
|
-
printAction(printerSettings, commands)
|
|
330
343
|
return
|
|
331
344
|
}
|
|
332
345
|
navigation?.navigate &&
|
|
@@ -337,6 +350,8 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
337
350
|
};
|
|
338
351
|
|
|
339
352
|
const handleCloseModal = () => {
|
|
353
|
+
readMessages && readMessages()
|
|
354
|
+
loadMessages && loadMessages()
|
|
340
355
|
setOpenModalForBusiness(false);
|
|
341
356
|
};
|
|
342
357
|
|
|
@@ -377,7 +392,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
377
392
|
},
|
|
378
393
|
{
|
|
379
394
|
...order?.customer?.location,
|
|
380
|
-
title: order?.customer?.name ??
|
|
395
|
+
title: order?.customer?.name ?? t('CUSTOMER', 'Customer'),
|
|
381
396
|
address: {
|
|
382
397
|
addressName: order?.customer?.address,
|
|
383
398
|
zipcode: order?.customer?.zipcode
|
|
@@ -411,9 +426,9 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
411
426
|
|
|
412
427
|
useEffect(() => {
|
|
413
428
|
const getStorageData = async () => {
|
|
414
|
-
|
|
429
|
+
const printers = await _retrieveStoreData('printers')
|
|
415
430
|
const autoPrint = await _retrieveStoreData('auto_print_after_accept_order')
|
|
416
|
-
setPrinterSettings(
|
|
431
|
+
setPrinterSettings(printers?.length && printers)
|
|
417
432
|
setAutoPrintEnabled(!!autoPrint)
|
|
418
433
|
}
|
|
419
434
|
|
|
@@ -480,6 +495,8 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
480
495
|
handleCopyClipboard={handleCopyClipboard}
|
|
481
496
|
handleArrowBack={handleArrowBack}
|
|
482
497
|
isCustomView={props.isCustomView}
|
|
498
|
+
messages={messages}
|
|
499
|
+
messagesReadList={messagesReadList}
|
|
483
500
|
/>
|
|
484
501
|
<OrderDetailsContainer
|
|
485
502
|
keyboardShouldPersistTaps="handled"
|
|
@@ -487,7 +504,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
487
504
|
<>
|
|
488
505
|
<OrderContentComponent order={order} />
|
|
489
506
|
{(order?.status === 7 || order?.status === 4) &&
|
|
490
|
-
order?.delivery_type
|
|
507
|
+
deliveryTypes.includes(order?.delivery_type) && configs?.assign_driver_enabled?.value === '1' && (
|
|
491
508
|
<AssignDriver>
|
|
492
509
|
<OText style={{ marginBottom: 5 }} size={16} weight="600">
|
|
493
510
|
{t('ASSIGN_DRIVER', 'Assign driver')}
|
|
@@ -585,6 +602,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
585
602
|
messages={messages}
|
|
586
603
|
order={order}
|
|
587
604
|
setMessages={setMessages}
|
|
605
|
+
notificationApp={notificationApp}
|
|
588
606
|
/>
|
|
589
607
|
</OModal>
|
|
590
608
|
|
|
@@ -628,7 +646,6 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
628
646
|
</>
|
|
629
647
|
<View style={{ height: 30 }} />
|
|
630
648
|
</OrderDetailsContainer>
|
|
631
|
-
|
|
632
649
|
{order &&
|
|
633
650
|
Object.keys(order).length > 0 &&
|
|
634
651
|
getOrderStatus(order?.status, t)?.value ===
|
|
@@ -645,7 +662,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
645
662
|
widthButton={'45%'}
|
|
646
663
|
/>
|
|
647
664
|
)}
|
|
648
|
-
{order?.status
|
|
665
|
+
{orderToReady.includes(order?.status) && (
|
|
649
666
|
<FloatingButton
|
|
650
667
|
btnText={t('READY_FOR_PICKUP', 'Ready for pickup')}
|
|
651
668
|
colorTxt1={theme.colors.primary}
|
|
@@ -655,7 +672,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
655
672
|
disabled={loading}
|
|
656
673
|
/>
|
|
657
674
|
)}
|
|
658
|
-
{orderToComplete.includes(order?.status) && !
|
|
675
|
+
{orderToComplete.includes(order?.status) && !deliveryTypes.includes(order?.delivery_type) && (
|
|
659
676
|
<FloatingButton
|
|
660
677
|
btnText={t(
|
|
661
678
|
'ORDER_NOT_PICKEDUP_BY_CUSTOMER',
|
|
@@ -666,7 +683,7 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
666
683
|
secondButtonClick={() => handleChangeOrderStatus?.(15)}
|
|
667
684
|
firstButtonClick={() => handleChangeOrderStatus?.(17)}
|
|
668
685
|
secondBtnText={t(
|
|
669
|
-
'
|
|
686
|
+
'ORDER_PICKUP_COMPLETED_BY_CUSTOMER',
|
|
670
687
|
'Pickup completed by customer',
|
|
671
688
|
)}
|
|
672
689
|
secondButton={true}
|