ordering-ui-react-native 0.12.75 → 0.12.79
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 +1 -1
- package/src/components/Checkout/index.tsx +77 -8
- package/src/components/Messages/index.tsx +3 -3
- package/src/components/PaymentOptions/index.tsx +2 -2
- package/src/config.json +1 -1
- package/themes/business/src/components/OrderDetails/Delivery.tsx +134 -131
- package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +1 -1
- package/themes/original/src/components/BusinessMenuList/index.tsx +6 -0
- package/themes/original/src/components/BusinessPreorder/index.tsx +18 -5
- package/themes/original/src/components/BusinessPreorder/styles.tsx +2 -6
package/package.json
CHANGED
|
@@ -116,13 +116,13 @@ const CheckoutUI = (props: any) => {
|
|
|
116
116
|
const [validationFields] = useValidationFields();
|
|
117
117
|
const [ordering] = useApi()
|
|
118
118
|
const webviewRef = useRef<any>(null)
|
|
119
|
-
|
|
119
|
+
const webviewRefSquare = useRef<any>(null)
|
|
120
120
|
const [errorCash, setErrorCash] = useState(false);
|
|
121
121
|
const [userErrors, setUserErrors] = useState<any>([]);
|
|
122
122
|
const [isUserDetailsEdit, setIsUserDetailsEdit] = useState(false);
|
|
123
123
|
const [phoneUpdate, setPhoneUpdate] = useState(false);
|
|
124
124
|
const [showGateway, setShowGateway] = useState<any>({ closedByUsed: false, open: false });
|
|
125
|
-
const [
|
|
125
|
+
const [webviewPaymethod, setWebviewPaymethod] = useState<any>(null)
|
|
126
126
|
const [progClr, setProgClr] = useState('#424242');
|
|
127
127
|
const [prog, setProg] = useState(true);
|
|
128
128
|
const [openOrderCreating, setOpenOrderCreating] = useState(false)
|
|
@@ -183,7 +183,7 @@ const CheckoutUI = (props: any) => {
|
|
|
183
183
|
}
|
|
184
184
|
|
|
185
185
|
const onMessage = (e: any) => {
|
|
186
|
-
if (e?.nativeEvent?.data) {
|
|
186
|
+
if (e?.nativeEvent?.data && e?.nativeEvent?.data !== 'undefined') {
|
|
187
187
|
let payment = JSON.parse(e.nativeEvent.data);
|
|
188
188
|
|
|
189
189
|
if (payment === 'api error') {
|
|
@@ -213,7 +213,7 @@ const CheckoutUI = (props: any) => {
|
|
|
213
213
|
|
|
214
214
|
const handlePaymentMethodClick = (paymethod: any) => {
|
|
215
215
|
setShowGateway({ closedByUser: false, open: true })
|
|
216
|
-
|
|
216
|
+
setWebviewPaymethod(paymethod)
|
|
217
217
|
}
|
|
218
218
|
|
|
219
219
|
const handleCloseWebview = () => {
|
|
@@ -570,7 +570,7 @@ const CheckoutUI = (props: any) => {
|
|
|
570
570
|
</>
|
|
571
571
|
</>
|
|
572
572
|
)}
|
|
573
|
-
{
|
|
573
|
+
{webviewPaymethod?.gateway === 'paypal' && showGateway.open && (
|
|
574
574
|
<View style={{ zIndex: 9999, height: '100%', width: '100%', position: 'absolute', backgroundColor: 'white' }}>
|
|
575
575
|
<Icon
|
|
576
576
|
name="x"
|
|
@@ -620,22 +620,91 @@ const CheckoutUI = (props: any) => {
|
|
|
620
620
|
urlPlace: `${ordering.root}/carts/${cart?.uuid}/place`,
|
|
621
621
|
urlConfirm: `${ordering.root}/carts/${cart?.uuid}/confirm`,
|
|
622
622
|
payData: {
|
|
623
|
-
paymethod_id:
|
|
623
|
+
paymethod_id: webviewPaymethod?.id,
|
|
624
624
|
amount: cart?.total,
|
|
625
625
|
delivery_zone_id: cart?.delivery_zone_id,
|
|
626
626
|
user_id: user?.id
|
|
627
627
|
},
|
|
628
628
|
currency: configs?.stripe_currency?.value || currency,
|
|
629
629
|
userToken: token,
|
|
630
|
-
clientId:
|
|
630
|
+
clientId: webviewPaymethod?.credentials?.client_id
|
|
631
631
|
}
|
|
632
632
|
}
|
|
633
633
|
setProg(false);
|
|
634
|
-
webviewRef
|
|
634
|
+
webviewRef?.current?.postMessage?.(JSON.stringify(message))
|
|
635
635
|
}}
|
|
636
636
|
/>
|
|
637
637
|
</View>
|
|
638
638
|
)}
|
|
639
|
+
{webviewPaymethod?.gateway === 'square' && showGateway.open && (
|
|
640
|
+
<View style={{ zIndex: 9999, height: '100%', width: '100%', position: 'absolute', backgroundColor: 'white' }}>
|
|
641
|
+
<Icon
|
|
642
|
+
name="x"
|
|
643
|
+
size={35}
|
|
644
|
+
style={{ backgroundColor: 'white', paddingTop: 30, paddingLeft: 10 }}
|
|
645
|
+
onPress={handleCloseWebview}
|
|
646
|
+
/>
|
|
647
|
+
<OText
|
|
648
|
+
style={{
|
|
649
|
+
textAlign: 'center',
|
|
650
|
+
fontSize: 16,
|
|
651
|
+
fontWeight: 'bold',
|
|
652
|
+
color: '#00457C',
|
|
653
|
+
marginBottom: 5,
|
|
654
|
+
marginTop: 10
|
|
655
|
+
}}>
|
|
656
|
+
{t('SQUARE_PAYMENT', 'Square payment')}
|
|
657
|
+
</OText>
|
|
658
|
+
<View style={{ padding: 20, opacity: prog ? 1 : 0, backgroundColor: 'white' }}>
|
|
659
|
+
<ActivityIndicator size={24} color={progClr} />
|
|
660
|
+
</View>
|
|
661
|
+
<WebView
|
|
662
|
+
source={{ uri: `https://test-square-f50f7.web.app` }}
|
|
663
|
+
onMessage={onMessage}
|
|
664
|
+
ref={webviewRefSquare}
|
|
665
|
+
javaScriptEnabled={true}
|
|
666
|
+
javaScriptEnabledAndroid={true}
|
|
667
|
+
cacheEnabled={false}
|
|
668
|
+
cacheMode='LOAD_NO_CACHE'
|
|
669
|
+
style={{ flex: 1 }}
|
|
670
|
+
onShouldStartLoadWithRequest={() => true}
|
|
671
|
+
onLoadStart={() => {
|
|
672
|
+
setProg(true);
|
|
673
|
+
setProgClr('#424242');
|
|
674
|
+
}}
|
|
675
|
+
onLoadProgress={() => {
|
|
676
|
+
setProg(true);
|
|
677
|
+
setProgClr('#00457C');
|
|
678
|
+
}}
|
|
679
|
+
onLoad={() => {
|
|
680
|
+
setProg(true);
|
|
681
|
+
setProgClr('#00457C');
|
|
682
|
+
}}
|
|
683
|
+
onLoadEnd={(e) => {
|
|
684
|
+
const message = {
|
|
685
|
+
action: 'init',
|
|
686
|
+
data: {
|
|
687
|
+
urlPlace: `${ordering.root}/carts/${cart?.uuid}/place`,
|
|
688
|
+
urlConfirm: `${ordering.root}/carts/${cart?.uuid}/confirm`,
|
|
689
|
+
payData: {
|
|
690
|
+
paymethod_id: webviewPaymethod?.id,
|
|
691
|
+
amount: cart?.total,
|
|
692
|
+
delivery_zone_id: cart?.delivery_zone_id,
|
|
693
|
+
user_id: user?.id,
|
|
694
|
+
},
|
|
695
|
+
currency: configs?.stripe_currency?.value || currency,
|
|
696
|
+
userToken: token,
|
|
697
|
+
clientId: 'sandbox-sq0idb-rMLAce87hOfpGvokZCygEw',
|
|
698
|
+
locationId: 'L1NGAY5M6KJRX'
|
|
699
|
+
}
|
|
700
|
+
}
|
|
701
|
+
setProg(false);
|
|
702
|
+
webviewRefSquare?.current?.postMessage?.(JSON.stringify(message))
|
|
703
|
+
}}
|
|
704
|
+
/>
|
|
705
|
+
</View>
|
|
706
|
+
)
|
|
707
|
+
}
|
|
639
708
|
{openOrderCreating && (
|
|
640
709
|
<View style={{ zIndex: 9999, height: '100%', width: '100%', position: 'absolute', backgroundColor: 'white' }}>
|
|
641
710
|
<OrderCreating
|
|
@@ -209,11 +209,11 @@ const MessagesUI = (props: MessagesParams) => {
|
|
|
209
209
|
<InputToolbar
|
|
210
210
|
{...props}
|
|
211
211
|
containerStyle={{
|
|
212
|
-
|
|
213
|
-
flexDirection: 'column-reverse'
|
|
212
|
+
marginBottom: Platform.OS === 'ios' && isKeyboardShow ? 0 : 10,
|
|
213
|
+
flexDirection: Platform.OS === 'ios' && isKeyboardShow ? 'column' : 'column-reverse'
|
|
214
214
|
}}
|
|
215
215
|
primaryStyle={{ alignItems: 'center', justifyContent: 'flex-start' }}
|
|
216
|
-
renderAccessory={() => renderAccessory()}
|
|
216
|
+
renderAccessory={() => !isKeyboardShow && renderAccessory()}
|
|
217
217
|
/>
|
|
218
218
|
)
|
|
219
219
|
|
|
@@ -90,9 +90,9 @@ const PaymentOptionsUI = (props: any) => {
|
|
|
90
90
|
}
|
|
91
91
|
|
|
92
92
|
const handlePaymentMethodClick = (paymethod: any) => {
|
|
93
|
-
const isPopupMethod = ['stripe', 'stripe_direct', 'stripe_connect', 'stripe_redirect', 'paypal'].includes(paymethod?.gateway)
|
|
93
|
+
const isPopupMethod = ['stripe', 'stripe_direct', 'stripe_connect', 'stripe_redirect', 'paypal', 'square'].includes(paymethod?.gateway)
|
|
94
94
|
handlePaymethodClick(paymethod, isPopupMethod)
|
|
95
|
-
if(paymethod?.gateway === 'paypal') {
|
|
95
|
+
if(paymethod?.gateway === 'paypal' || paymethod?.gateway === 'square') {
|
|
96
96
|
handlePaymentMethodClickCustom(paymethod)
|
|
97
97
|
}
|
|
98
98
|
setCardData(paymethodData)
|
package/src/config.json
CHANGED
|
@@ -333,144 +333,147 @@ export const OrderDetailsUI = (props: OrderDetailsParams) => {
|
|
|
333
333
|
onClickButton={() => navigation.navigate('Orders')}
|
|
334
334
|
/>
|
|
335
335
|
)}
|
|
336
|
-
|
|
337
|
-
<
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
<
|
|
348
|
-
keyboardShouldPersistTaps="handled"
|
|
349
|
-
showsVerticalScrollIndicator={false}
|
|
350
|
-
>
|
|
351
|
-
{order?.order_group && order?.order_group_id && order?.isLogistic ? order?.order_group?.orders.map((order: any, i: number, hash: any) => (
|
|
352
|
-
<OrderDetailsInformation key={order?.id} order={order} isOrderGroup lastOrder={hash?.length === i + 1} />
|
|
353
|
-
)) : (
|
|
354
|
-
<OrderDetailsInformation order={order} />
|
|
355
|
-
)}
|
|
356
|
-
</OrderDetailsContainer>
|
|
357
|
-
{showFloatButtonsPickUp[order?.status] && (
|
|
358
|
-
<FloatingButton
|
|
359
|
-
disabled={props.order?.loading}
|
|
360
|
-
btnText={t('PICKUP_FAILED', 'Pickup failed')}
|
|
361
|
-
isSecondaryBtn={false}
|
|
362
|
-
secondButtonClick={() =>
|
|
363
|
-
handleChangeOrderStatus && handleChangeOrderStatus(9)
|
|
364
|
-
}
|
|
365
|
-
firstButtonClick={() =>
|
|
366
|
-
handleViewActionOrder && handleViewActionOrder('pickupFailed')
|
|
367
|
-
}
|
|
368
|
-
secondBtnText={t('PICKUP_COMPLETE', 'Pickup complete')}
|
|
369
|
-
secondButton={true}
|
|
370
|
-
firstColorCustom={theme.colors.red}
|
|
371
|
-
secondColorCustom={theme.colors.green}
|
|
372
|
-
widthButton={'45%'}
|
|
373
|
-
/>
|
|
374
|
-
)}
|
|
375
|
-
{(order?.status === 9 || order?.status === 19) && (
|
|
336
|
+
{!((!order || Object.keys(order).length === 0) &&
|
|
337
|
+
(props.order?.error?.length < 1 || !props.order?.error)) && (
|
|
338
|
+
<View style={{ flex: 1 }}>
|
|
339
|
+
<OrderHeaderComponent
|
|
340
|
+
order={order}
|
|
341
|
+
handleOpenMapView={handleOpenMapView}
|
|
342
|
+
handleOpenMessagesForBusiness={handleOpenMessagesForBusiness}
|
|
343
|
+
getOrderStatus={getOrderStatus}
|
|
344
|
+
handleArrowBack={handleArrowBack}
|
|
345
|
+
logisticOrderStatus={logisticOrderStatus}
|
|
346
|
+
/>
|
|
347
|
+
{order && Object.keys(order).length > 0 && (props.order?.error?.length < 1 || !props.order?.error) && (
|
|
376
348
|
<>
|
|
377
|
-
<
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
349
|
+
<OrderDetailsContainer
|
|
350
|
+
keyboardShouldPersistTaps="handled"
|
|
351
|
+
showsVerticalScrollIndicator={false}
|
|
352
|
+
>
|
|
353
|
+
{order?.order_group && order?.order_group_id && order?.isLogistic ? order?.order_group?.orders.map((order: any, i: number, hash: any) => (
|
|
354
|
+
<OrderDetailsInformation key={order?.id} order={order} isOrderGroup lastOrder={hash?.length === i + 1} />
|
|
355
|
+
)) : (
|
|
356
|
+
<OrderDetailsInformation order={order} />
|
|
357
|
+
)}
|
|
358
|
+
</OrderDetailsContainer>
|
|
359
|
+
{showFloatButtonsPickUp[order?.status] && (
|
|
360
|
+
<FloatingButton
|
|
361
|
+
disabled={props.order?.loading}
|
|
362
|
+
btnText={t('PICKUP_FAILED', 'Pickup failed')}
|
|
363
|
+
isSecondaryBtn={false}
|
|
364
|
+
secondButtonClick={() =>
|
|
365
|
+
handleChangeOrderStatus && handleChangeOrderStatus(9)
|
|
366
|
+
}
|
|
367
|
+
firstButtonClick={() =>
|
|
368
|
+
handleViewActionOrder && handleViewActionOrder('pickupFailed')
|
|
369
|
+
}
|
|
370
|
+
secondBtnText={t('PICKUP_COMPLETE', 'Pickup complete')}
|
|
371
|
+
secondButton={true}
|
|
372
|
+
firstColorCustom={theme.colors.red}
|
|
373
|
+
secondColorCustom={theme.colors.green}
|
|
374
|
+
widthButton={'45%'}
|
|
375
|
+
/>
|
|
376
|
+
)}
|
|
377
|
+
{(order?.status === 9 || order?.status === 19) && (
|
|
378
|
+
<>
|
|
379
|
+
<FloatingButton
|
|
380
|
+
disabled={props.order?.loading}
|
|
381
|
+
btnText={t('DELIVERY_FAILED', 'Delivery Failed')}
|
|
382
|
+
isSecondaryBtn={false}
|
|
383
|
+
secondButtonClick={() =>
|
|
384
|
+
handleChangeOrderStatus && handleChangeOrderStatus(11)
|
|
385
|
+
}
|
|
386
|
+
firstButtonClick={() =>
|
|
387
|
+
handleViewActionOrder && handleViewActionOrder('deliveryFailed')
|
|
388
|
+
}
|
|
389
|
+
secondBtnText={t('DELIVERY_COMPLETE', 'Delivery complete')}
|
|
390
|
+
secondButton={true}
|
|
391
|
+
firstColorCustom={theme.colors.red}
|
|
392
|
+
secondColorCustom={theme.colors.green}
|
|
393
|
+
widthButton={'45%'}
|
|
394
|
+
/>
|
|
395
|
+
</>
|
|
396
|
+
)}
|
|
397
|
+
{showFloatButtonsAcceptOrReject[order?.status] && (
|
|
398
|
+
<FloatingButton
|
|
399
|
+
btnText={t('REJECT', 'Reject')}
|
|
400
|
+
isSecondaryBtn={false}
|
|
401
|
+
secondButtonClick={() => (order?.isLogistic && (order?.order_group || logisticOrderStatus.includes(order?.status))) ? handleAcceptLogisticOrder(order) : handleViewActionOrder('accept')}
|
|
402
|
+
firstButtonClick={() => order?.isLogistic && (order?.order_group || logisticOrderStatus.includes(order?.status)) ? handleRejectLogisticOrder() : handleViewActionOrder('reject')}
|
|
403
|
+
secondBtnText={t('ACCEPT', 'Accept')}
|
|
404
|
+
secondButton={true}
|
|
405
|
+
firstColorCustom={theme.colors.red}
|
|
406
|
+
secondColorCustom={theme.colors.green}
|
|
407
|
+
widthButton={'45%'}
|
|
408
|
+
/>
|
|
409
|
+
)}
|
|
410
|
+
</>
|
|
411
|
+
)}
|
|
412
|
+
{openModalForMapView && (
|
|
413
|
+
<OModal
|
|
414
|
+
open={openModalForMapView}
|
|
415
|
+
onClose={() => handleOpenMapView()}
|
|
416
|
+
entireModal
|
|
417
|
+
customClose>
|
|
418
|
+
<DriverMap
|
|
419
|
+
navigation={navigation}
|
|
420
|
+
order={order}
|
|
421
|
+
orderStatus={getOrderStatus(order?.status, t)?.value || ''}
|
|
422
|
+
location={locationMarker}
|
|
423
|
+
readOnly
|
|
424
|
+
updateDriverPosition={updateDriverPosition}
|
|
425
|
+
driverUpdateLocation={driverUpdateLocation}
|
|
426
|
+
setDriverUpdateLocation={setDriverUpdateLocation}
|
|
427
|
+
handleViewActionOrder={handleViewActionOrder}
|
|
428
|
+
isBusinessMarker={isBusinessMarker}
|
|
429
|
+
isToFollow={isToFollow}
|
|
430
|
+
showAcceptOrReject={
|
|
431
|
+
showFloatButtonsAcceptOrReject[order?.status]
|
|
383
432
|
}
|
|
384
|
-
|
|
385
|
-
|
|
433
|
+
handleOpenMapView={handleOpenMapView}
|
|
434
|
+
/>
|
|
435
|
+
</OModal>
|
|
436
|
+
)}
|
|
437
|
+
{openModalForBusiness && (
|
|
438
|
+
<OModal
|
|
439
|
+
open={openModalForBusiness}
|
|
440
|
+
order={order}
|
|
441
|
+
title={`${t('INVOICE_ORDER_NO', 'Order No.')} ${order.id}`}
|
|
442
|
+
entireModal
|
|
443
|
+
onClose={() => handleCloseModal()}>
|
|
444
|
+
<Chat
|
|
445
|
+
type={
|
|
446
|
+
openModalForBusiness ? USER_TYPE.BUSINESS : USER_TYPE.DRIVER
|
|
386
447
|
}
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
widthButton={'45%'}
|
|
448
|
+
orderId={order?.id}
|
|
449
|
+
messages={messages}
|
|
450
|
+
order={order}
|
|
451
|
+
setMessages={setMessages}
|
|
392
452
|
/>
|
|
393
|
-
|
|
453
|
+
</OModal>
|
|
394
454
|
)}
|
|
395
|
-
{
|
|
396
|
-
<
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
455
|
+
{openModalForAccept && (
|
|
456
|
+
<OModal
|
|
457
|
+
open={openModalForAccept}
|
|
458
|
+
onClose={() => setOpenModalForAccept(false)}
|
|
459
|
+
entireModal
|
|
460
|
+
customClose>
|
|
461
|
+
<AcceptOrRejectOrder
|
|
462
|
+
handleUpdateOrder={handleChangeOrderStatus}
|
|
463
|
+
closeModal={setOpenModalForAccept}
|
|
464
|
+
customerCellphone={order?.customer?.cellphone}
|
|
465
|
+
loading={props.order?.loading}
|
|
466
|
+
action={actionOrder}
|
|
467
|
+
orderId={order?.id}
|
|
468
|
+
notShowCustomerPhone
|
|
469
|
+
actions={actions}
|
|
470
|
+
orderTitle={orderTitle}
|
|
471
|
+
appTitle={appTitle}
|
|
472
|
+
/>
|
|
473
|
+
</OModal>
|
|
407
474
|
)}
|
|
408
|
-
|
|
409
|
-
)}
|
|
410
|
-
{openModalForMapView && (
|
|
411
|
-
<OModal
|
|
412
|
-
open={openModalForMapView}
|
|
413
|
-
onClose={() => handleOpenMapView()}
|
|
414
|
-
entireModal
|
|
415
|
-
customClose>
|
|
416
|
-
<DriverMap
|
|
417
|
-
navigation={navigation}
|
|
418
|
-
order={order}
|
|
419
|
-
orderStatus={getOrderStatus(order?.status, t)?.value || ''}
|
|
420
|
-
location={locationMarker}
|
|
421
|
-
readOnly
|
|
422
|
-
updateDriverPosition={updateDriverPosition}
|
|
423
|
-
driverUpdateLocation={driverUpdateLocation}
|
|
424
|
-
setDriverUpdateLocation={setDriverUpdateLocation}
|
|
425
|
-
handleViewActionOrder={handleViewActionOrder}
|
|
426
|
-
isBusinessMarker={isBusinessMarker}
|
|
427
|
-
isToFollow={isToFollow}
|
|
428
|
-
showAcceptOrReject={
|
|
429
|
-
showFloatButtonsAcceptOrReject[order?.status]
|
|
430
|
-
}
|
|
431
|
-
handleOpenMapView={handleOpenMapView}
|
|
432
|
-
/>
|
|
433
|
-
</OModal>
|
|
434
|
-
)}
|
|
435
|
-
{openModalForBusiness && (
|
|
436
|
-
<OModal
|
|
437
|
-
open={openModalForBusiness}
|
|
438
|
-
order={order}
|
|
439
|
-
title={`${t('INVOICE_ORDER_NO', 'Order No.')} ${order.id}`}
|
|
440
|
-
entireModal
|
|
441
|
-
onClose={() => handleCloseModal()}>
|
|
442
|
-
<Chat
|
|
443
|
-
type={
|
|
444
|
-
openModalForBusiness ? USER_TYPE.BUSINESS : USER_TYPE.DRIVER
|
|
445
|
-
}
|
|
446
|
-
orderId={order?.id}
|
|
447
|
-
messages={messages}
|
|
448
|
-
order={order}
|
|
449
|
-
setMessages={setMessages}
|
|
450
|
-
/>
|
|
451
|
-
</OModal>
|
|
452
|
-
)}
|
|
453
|
-
{openModalForAccept && (
|
|
454
|
-
<OModal
|
|
455
|
-
open={openModalForAccept}
|
|
456
|
-
onClose={() => setOpenModalForAccept(false)}
|
|
457
|
-
entireModal
|
|
458
|
-
customClose>
|
|
459
|
-
<AcceptOrRejectOrder
|
|
460
|
-
handleUpdateOrder={handleChangeOrderStatus}
|
|
461
|
-
closeModal={setOpenModalForAccept}
|
|
462
|
-
customerCellphone={order?.customer?.cellphone}
|
|
463
|
-
loading={props.order?.loading}
|
|
464
|
-
action={actionOrder}
|
|
465
|
-
orderId={order?.id}
|
|
466
|
-
notShowCustomerPhone
|
|
467
|
-
actions={actions}
|
|
468
|
-
orderTitle={orderTitle}
|
|
469
|
-
appTitle={appTitle}
|
|
470
|
-
/>
|
|
471
|
-
</OModal>
|
|
475
|
+
</View>
|
|
472
476
|
)}
|
|
473
|
-
</View>
|
|
474
477
|
{alertState?.open && (
|
|
475
478
|
<Alert
|
|
476
479
|
open={alertState.open}
|
|
@@ -175,7 +175,7 @@ export const OrderHeaderComponent = (props: OrderHeader) => {
|
|
|
175
175
|
)}
|
|
176
176
|
</>
|
|
177
177
|
</OText>
|
|
178
|
-
{!order?.isLogistic && (!order?.order_group_id || !logisticOrderStatus?.includes(order?.status)) && (
|
|
178
|
+
{!order?.isLogistic && order?.delivery_type && (!order?.order_group_id || !logisticOrderStatus?.includes(order?.status)) && (
|
|
179
179
|
<OText size={13}>
|
|
180
180
|
{`${order?.paymethod?.name} - ${order.delivery_type === 1
|
|
181
181
|
? t('DELIVERY', 'Delivery')
|
|
@@ -81,6 +81,7 @@ const BusinessMenuListUI = (props: BusinessMenuListParams) => {
|
|
|
81
81
|
<IconAntDesign
|
|
82
82
|
name='close'
|
|
83
83
|
color={theme.colors.textThird}
|
|
84
|
+
style={{ marginLeft: 7 }}
|
|
84
85
|
size={24}
|
|
85
86
|
/>
|
|
86
87
|
</TouchableOpacity>
|
|
@@ -115,6 +116,11 @@ const BusinessMenuListUI = (props: BusinessMenuListParams) => {
|
|
|
115
116
|
</DropOption>
|
|
116
117
|
</TouchableOpacity>
|
|
117
118
|
))}
|
|
119
|
+
{businessMenuList?.menus && businessMenuList?.menus.length === 0 && (
|
|
120
|
+
<View>
|
|
121
|
+
<OText>{t('NO_RESULTS_FOUND', 'Sorry, no results found')}</OText>
|
|
122
|
+
</View>
|
|
123
|
+
)}
|
|
118
124
|
</MenuListWrapper>
|
|
119
125
|
</OModal>
|
|
120
126
|
</>
|
|
@@ -123,6 +123,17 @@ const BusinessPreorderUI = (props: BusinessPreorderParams) => {
|
|
|
123
123
|
color: '#B1BCCC',
|
|
124
124
|
fontSize: 14,
|
|
125
125
|
fontWeight: '500'
|
|
126
|
+
},
|
|
127
|
+
wrapperIcon: {
|
|
128
|
+
overflow: 'hidden',
|
|
129
|
+
backgroundColor: 'transparent',
|
|
130
|
+
marginBottom: 12,
|
|
131
|
+
width: 25,
|
|
132
|
+
height: 25,
|
|
133
|
+
marginStart: 7,
|
|
134
|
+
alignItems: 'center',
|
|
135
|
+
justifyContent: 'center',
|
|
136
|
+
zIndex: 99999
|
|
126
137
|
}
|
|
127
138
|
})
|
|
128
139
|
|
|
@@ -264,12 +275,13 @@ const BusinessPreorderUI = (props: BusinessPreorderParams) => {
|
|
|
264
275
|
|
|
265
276
|
return (
|
|
266
277
|
<>
|
|
267
|
-
<PreOrderContainer>
|
|
278
|
+
<PreOrderContainer contentContainerStyle={{ paddingVertical: 30, paddingHorizontal: 40 }}>
|
|
268
279
|
<TouchableOpacity onPress={() => goToBack && goToBack()} style={{ marginBottom: 12 }}>
|
|
269
280
|
<IconAntDesign
|
|
270
281
|
name='close'
|
|
271
282
|
color={theme.colors.textThird}
|
|
272
283
|
size={24}
|
|
284
|
+
style={{ marginLeft: -4}}
|
|
273
285
|
/>
|
|
274
286
|
</TouchableOpacity>
|
|
275
287
|
<BusinessInfoWrapper>
|
|
@@ -350,7 +362,7 @@ const BusinessPreorderUI = (props: BusinessPreorderParams) => {
|
|
|
350
362
|
{t('ORDER_TIME', 'Order time')}
|
|
351
363
|
</OText>
|
|
352
364
|
<View style={{ flex: 1 }}>
|
|
353
|
-
{selectDate && datesWhitelist[0]
|
|
365
|
+
{selectDate && datesWhitelist[0]?.start !== null && (
|
|
354
366
|
<CalendarStrip
|
|
355
367
|
scrollable
|
|
356
368
|
style={styles.calendar}
|
|
@@ -398,7 +410,7 @@ const BusinessPreorderUI = (props: BusinessPreorderParams) => {
|
|
|
398
410
|
<OButton
|
|
399
411
|
text={t('GO_TO_MENU', 'Go to menu')}
|
|
400
412
|
textStyle={{color: 'white'}}
|
|
401
|
-
style={{borderRadius: 7.6, marginBottom:
|
|
413
|
+
style={{borderRadius: 7.6, marginBottom: 20, marginTop: 30}}
|
|
402
414
|
onClick={() => handleClickBusiness()}
|
|
403
415
|
/>
|
|
404
416
|
</PreOrderContainer>
|
|
@@ -409,8 +421,8 @@ const BusinessPreorderUI = (props: BusinessPreorderParams) => {
|
|
|
409
421
|
customClose
|
|
410
422
|
entireModal
|
|
411
423
|
>
|
|
412
|
-
<PreorderTypeListWrapper>
|
|
413
|
-
<TouchableOpacity onPress={() => setIsPreorderTypeList(false)} style={
|
|
424
|
+
<PreorderTypeListWrapper contentContainerStyle={{ paddingVertical: 20, paddingHorizontal: 40}}>
|
|
425
|
+
<TouchableOpacity onPress={() => setIsPreorderTypeList(false)} style={styles.wrapperIcon}>
|
|
414
426
|
<IconAntDesign
|
|
415
427
|
name='close'
|
|
416
428
|
color={theme.colors.textThird}
|
|
@@ -421,6 +433,7 @@ const BusinessPreorderUI = (props: BusinessPreorderParams) => {
|
|
|
421
433
|
<TouchableOpacity
|
|
422
434
|
key={index}
|
|
423
435
|
onPress={() => handleClickPreorderType(option)}
|
|
436
|
+
style={{ zIndex: 99999 }}
|
|
424
437
|
>
|
|
425
438
|
<DropOption
|
|
426
439
|
numberOfLines={1}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import styled, { css } from 'styled-components/native'
|
|
2
2
|
|
|
3
|
-
export const PreOrderContainer = styled.ScrollView
|
|
4
|
-
padding: 20px 40px 30px 40px;
|
|
5
|
-
`
|
|
3
|
+
export const PreOrderContainer = styled.ScrollView``
|
|
6
4
|
|
|
7
5
|
export const BusinessInfoWrapper = styled.View`
|
|
8
6
|
flex-direction: row;
|
|
@@ -45,9 +43,7 @@ export const TimeItem = styled.View`
|
|
|
45
43
|
`}
|
|
46
44
|
`
|
|
47
45
|
|
|
48
|
-
export const PreorderTypeListWrapper = styled.ScrollView
|
|
49
|
-
padding: 20px 40px 30px 40px;
|
|
50
|
-
`
|
|
46
|
+
export const PreorderTypeListWrapper = styled.ScrollView``
|
|
51
47
|
|
|
52
48
|
export const DropOption = styled.View`
|
|
53
49
|
padding: 10px;
|