ordering-ui-react-native 0.21.45 → 0.21.46-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/BusinessesListing/index.tsx +1 -1
- package/src/components/PaymentOptionsWebView/index.tsx +1 -0
- package/src/components/StripeMethodForm/index.tsx +6 -4
- package/src/components/VerifyPhone/styles.tsx +1 -2
- package/src/types/index.tsx +3 -1
- package/src/utils/index.tsx +2 -2
- package/themes/business/index.tsx +6 -0
- package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +7 -3
- package/themes/business/src/components/BusinessController/index.tsx +19 -17
- package/themes/business/src/components/BusinessProductList/AccordionDropdown.tsx +63 -0
- package/themes/business/src/components/BusinessProductList/IterateCategories.tsx +108 -0
- package/themes/business/src/components/BusinessProductList/ProductList.tsx +196 -0
- package/themes/business/src/components/BusinessProductList/index.tsx +196 -0
- package/themes/business/src/components/BusinessProductList/styles.tsx +10 -0
- package/themes/business/src/components/DriverMap/index.tsx +36 -23
- package/themes/business/src/components/GoogleMap/index.tsx +15 -8
- package/themes/business/src/components/Home/index.tsx +5 -1
- package/themes/business/src/components/LanguageSelector/index.tsx +1 -2
- 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 +30 -15
- package/themes/business/src/components/MessagesOption/index.tsx +2 -1
- package/themes/business/src/components/NewOrderNotification/index.tsx +66 -26
- package/themes/business/src/components/OrderDetails/Business.tsx +52 -2
- package/themes/business/src/components/OrderDetails/Delivery.tsx +30 -11
- package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +68 -61
- package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +40 -20
- package/themes/business/src/components/OrderDetails/usePrinterCommands.tsx +220 -0
- package/themes/business/src/components/OrderSummary/index.tsx +240 -76
- package/themes/business/src/components/OrdersListManager/index.tsx +7 -2
- package/themes/business/src/components/OrdersListManager/utils.tsx +1 -1
- package/themes/business/src/components/OrdersOption/index.tsx +125 -46
- package/themes/business/src/components/PhoneInputNumber/index.tsx +8 -5
- package/themes/business/src/components/PreviousOrders/OrderItem.tsx +37 -40
- package/themes/business/src/components/PreviousOrders/OrderList.tsx +1 -1
- package/themes/business/src/components/PreviousOrders/index.tsx +5 -3
- package/themes/business/src/components/PreviousOrders/styles.tsx +10 -0
- package/themes/business/src/components/PrinterEdition/index.tsx +363 -0
- package/themes/business/src/components/PrinterEdition/styles.tsx +61 -0
- package/themes/business/src/components/PrinterSettings/index.tsx +267 -0
- package/themes/business/src/components/PrinterSettings/styles.tsx +30 -0
- package/themes/business/src/components/ProductItemAccordion/index.tsx +2 -2
- package/themes/business/src/components/ReviewCustomer/index.tsx +2 -0
- package/themes/business/src/components/SearchBar/index.tsx +2 -1
- package/themes/business/src/components/Sessions/index.tsx +187 -0
- package/themes/business/src/components/Sessions/styles.tsx +20 -0
- package/themes/business/src/components/StoresList/index.tsx +5 -3
- package/themes/business/src/components/UserFormDetails/index.tsx +111 -107
- package/themes/business/src/components/UserProfileForm/index.tsx +106 -54
- package/themes/business/src/components/WebsocketStatus/index.tsx +171 -0
- package/themes/business/src/components/WebsocketStatus/styles.tsx +28 -0
- package/themes/business/src/components/shared/OInput.tsx +2 -0
- package/themes/business/src/components/shared/OTextarea.tsx +8 -9
- package/themes/business/src/hooks/useLocation.tsx +5 -4
- package/themes/business/src/types/index.tsx +16 -2
- package/themes/business/src/utils/index.tsx +5 -0
- 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 +12 -4
- package/themes/original/src/components/AddressDetails/index.tsx +20 -10
- package/themes/original/src/components/AddressForm/index.tsx +41 -12
- package/themes/original/src/components/AddressForm/styles.tsx +1 -1
- package/themes/original/src/components/AddressList/index.tsx +18 -4
- package/themes/original/src/components/AddressList/styles.tsx +4 -4
- 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 +7 -10
- package/themes/original/src/components/BusinessBasicInformation/styles.tsx +1 -1
- package/themes/original/src/components/BusinessController/index.tsx +18 -10
- package/themes/original/src/components/BusinessController/styles.tsx +8 -7
- package/themes/original/src/components/BusinessInformation/styles.tsx +2 -2
- package/themes/original/src/components/BusinessItemAccordion/index.tsx +11 -7
- package/themes/original/src/components/BusinessListingSearch/BusinessSearchFooter.tsx +317 -0
- package/themes/original/src/components/BusinessListingSearch/BusinessSearchHeader.tsx +96 -0
- package/themes/original/src/components/BusinessListingSearch/MaxSectionItem/index.tsx +1 -1
- package/themes/original/src/components/BusinessListingSearch/index.tsx +47 -358
- package/themes/original/src/components/BusinessListingSearch/styles.tsx +1 -1
- package/themes/original/src/components/BusinessPreorder/index.tsx +4 -3
- package/themes/original/src/components/BusinessProductsCategories/index.tsx +1 -1
- package/themes/original/src/components/BusinessProductsList/index.tsx +1 -1
- package/themes/original/src/components/BusinessProductsList/styles.tsx +0 -3
- package/themes/original/src/components/BusinessProductsListing/index.tsx +34 -19
- package/themes/original/src/components/BusinessProductsListing/styles.tsx +2 -2
- package/themes/original/src/components/BusinessReviews/index.tsx +1 -1
- package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +1 -1
- package/themes/original/src/components/BusinessesListing/Layout/Appointment/styles.tsx +5 -5
- package/themes/original/src/components/BusinessesListing/Layout/Original/FlatListBusinessListFooter.tsx +1 -1
- package/themes/original/src/components/BusinessesListing/Layout/Original/FlatListBusinessListHeader.tsx +7 -7
- package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +2 -2
- 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 +32 -9
- package/themes/original/src/components/CartContent/index.tsx +96 -58
- package/themes/original/src/components/CartStoresListing/styles.tsx +2 -2
- package/themes/original/src/components/Checkout/index.tsx +144 -62
- package/themes/original/src/components/Checkout/styles.tsx +17 -0
- package/themes/original/src/components/CitiesControl/styles.tsx +1 -1
- package/themes/original/src/components/DatePicker/index.tsx +33 -0
- package/themes/original/src/components/DatePicker/styles.tsx +20 -0
- package/themes/original/src/components/Favorite/index.tsx +9 -9
- package/themes/original/src/components/Favorite/styles.tsx +0 -2
- package/themes/original/src/components/FloatingButton/styles.tsx +1 -1
- package/themes/original/src/components/ForgotPasswordForm/index.tsx +5 -0
- package/themes/original/src/components/GPSButton/index.tsx +1 -1
- package/themes/original/src/components/GiftCard/GiftCardOrdersList/index.tsx +64 -0
- package/themes/original/src/components/GiftCard/GiftCardOrdersList/styles.tsx +8 -0
- package/themes/original/src/components/GiftCard/PurchaseGiftCard/styles.tsx +1 -1
- package/themes/original/src/components/GiftCard/RedeemGiftCard/styles.tsx +1 -1
- package/themes/original/src/components/GiftCard/SendGiftCard/index.tsx +2 -2
- package/themes/original/src/components/GiftCard/SendGiftCard/styles.tsx +1 -1
- package/themes/original/src/components/GiftCard/SingleGiftCard/index.tsx +101 -0
- package/themes/original/src/components/GiftCard/SingleGiftCard/styles.tsx +4 -0
- package/themes/original/src/components/GiftCard/VerticalGiftCardOrdersLayout/index.tsx +83 -0
- package/themes/original/src/components/GiftCard/VerticalGiftCardOrdersLayout/styles.tsx +9 -0
- package/themes/original/src/components/GoogleMap/index.tsx +39 -18
- package/themes/original/src/components/Help/index.tsx +7 -0
- package/themes/original/src/components/HelpAccountAndPayment/index.tsx +5 -0
- package/themes/original/src/components/HelpGuide/index.tsx +5 -0
- package/themes/original/src/components/HelpOrder/index.tsx +5 -0
- package/themes/original/src/components/HighestRatedBusinesses/index.tsx +2 -2
- package/themes/original/src/components/HighestRatedBusinesses/styles.tsx +1 -1
- package/themes/original/src/components/Home/index.tsx +3 -8
- package/themes/original/src/components/LoginForm/Otp/index.tsx +4 -16
- package/themes/original/src/components/LoginForm/index.tsx +9 -3
- package/themes/original/src/components/MessageListing/index.tsx +6 -0
- package/themes/original/src/components/Messages/index.tsx +8 -7
- package/themes/original/src/components/Messages/styles.tsx +1 -1
- package/themes/original/src/components/MomentOption/index.tsx +19 -4
- package/themes/original/src/components/MultiCart/index.tsx +1 -1
- package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +7 -3
- package/themes/original/src/components/MultiCheckout/index.tsx +126 -61
- package/themes/original/src/components/MultiCheckout/styles.tsx +17 -0
- package/themes/original/src/components/MultiOrdersDetails/index.tsx +20 -15
- package/themes/original/src/components/MyOrders/index.tsx +28 -28
- package/themes/original/src/components/NavBar/index.tsx +5 -0
- package/themes/original/src/components/NetworkError/index.tsx +2 -3
- package/themes/original/src/components/NetworkError/styles.tsx +2 -2
- package/themes/original/src/components/Notifications/index.tsx +9 -8
- package/themes/original/src/components/Notifications/styles.tsx +0 -1
- package/themes/original/src/components/OrderDetails/OrderHistory.tsx +1 -1
- package/themes/original/src/components/OrderDetails/index.tsx +708 -663
- package/themes/original/src/components/OrderDetails/styles.tsx +24 -8
- package/themes/original/src/components/OrderProgress/index.tsx +22 -3
- package/themes/original/src/components/OrderProgress/styles.tsx +1 -1
- package/themes/original/src/components/OrderSummary/index.tsx +3 -1
- package/themes/original/src/components/OrderTypeSelector/index.tsx +10 -6
- package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/styles.tsx +1 -1
- package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/styles.tsx +1 -1
- package/themes/original/src/components/OrdersOption/index.tsx +3 -5
- package/themes/original/src/components/OrdersOption/styles.tsx +1 -1
- package/themes/original/src/components/PaymentOptionCard/index.tsx +4 -2
- package/themes/original/src/components/PaymentOptionWallet/index.tsx +56 -56
- package/themes/original/src/components/PaymentOptions/index.tsx +47 -4
- package/themes/original/src/components/PreviousOrders/index.tsx +2 -0
- package/themes/original/src/components/ProductForm/ActionButton.tsx +122 -0
- package/themes/original/src/components/ProductForm/ExtraOptions.tsx +56 -0
- package/themes/original/src/components/ProductForm/index.tsx +170 -252
- package/themes/original/src/components/ProductItemAccordion/index.tsx +55 -44
- package/themes/original/src/components/ProductItemAccordion/styles.tsx +3 -4
- package/themes/original/src/components/ProductOptionSubOption/index.tsx +112 -91
- package/themes/original/src/components/ProfessionalProfile/styles.tsx +3 -3
- package/themes/original/src/components/Promotions/index.tsx +13 -11
- package/themes/original/src/components/Promotions/styles.tsx +0 -2
- package/themes/original/src/components/ReviewDriver/index.tsx +5 -0
- package/themes/original/src/components/ReviewDriver/styles.tsx +1 -1
- package/themes/original/src/components/ReviewOrder/index.tsx +5 -0
- package/themes/original/src/components/ReviewOrder/styles.tsx +1 -1
- package/themes/original/src/components/ReviewProducts/index.tsx +5 -0
- package/themes/original/src/components/ReviewProducts/styles.tsx +1 -1
- package/themes/original/src/components/ServiceForm/index.tsx +1 -1
- package/themes/original/src/components/ServiceForm/styles.tsx +4 -4
- package/themes/original/src/components/Sessions/index.tsx +5 -0
- package/themes/original/src/components/SignupForm/index.tsx +67 -59
- package/themes/original/src/components/SingleOrderCard/index.tsx +3 -2
- package/themes/original/src/components/SingleProductCard/index.tsx +4 -3
- package/themes/original/src/components/SingleProductCard/styles.tsx +0 -3
- package/themes/original/src/components/StripeCardsList/index.tsx +12 -35
- package/themes/original/src/components/StripeElementsForm/index.tsx +79 -59
- package/themes/original/src/components/StripeElementsForm/naked.tsx +47 -0
- package/themes/original/src/components/UpsellingProducts/UpsellingContent.tsx +170 -0
- package/themes/original/src/components/UpsellingProducts/UpsellingLayout.tsx +91 -0
- package/themes/original/src/components/UpsellingProducts/index.tsx +15 -199
- package/themes/original/src/components/UpsellingProducts/styles.tsx +19 -0
- package/themes/original/src/components/UserFormDetails/index.tsx +123 -75
- package/themes/original/src/components/UserFormDetails/styles.tsx +7 -0
- package/themes/original/src/components/UserProfile/index.tsx +3 -2
- package/themes/original/src/components/UserProfileForm/index.tsx +5 -0
- package/themes/original/src/components/WalletTransactions/styles.tsx +1 -0
- package/themes/original/src/components/Wallets/index.tsx +7 -4
- package/themes/original/src/components/Wallets/styles.tsx +2 -1
- package/themes/original/src/components/WebsocketStatus/index.tsx +172 -0
- package/themes/original/src/components/WebsocketStatus/styles.tsx +28 -0
- package/themes/original/src/components/shared/HeaderTitle.tsx +1 -1
- package/themes/original/src/components/shared/OButton.tsx +5 -5
- package/themes/original/src/components/shared/OInput.tsx +1 -4
- package/themes/original/src/components/shared/OModal.tsx +12 -14
- package/themes/original/src/layouts/Container.tsx +5 -3
- package/themes/original/src/types/index.tsx +4 -1
- package/themes/original/src/utils/index.tsx +12 -1
- package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
|
@@ -50,6 +50,12 @@ const CheckoutUI = (props: any) => {
|
|
|
50
50
|
}
|
|
51
51
|
}, [cart])
|
|
52
52
|
|
|
53
|
+
useEffect(() => {
|
|
54
|
+
if (!cartState.loading && cart && !cart?.valid && cart?.status === 2) {
|
|
55
|
+
navigation?.canGoBack() && navigation.goBack()
|
|
56
|
+
}
|
|
57
|
+
}, [cart])
|
|
58
|
+
|
|
53
59
|
return (
|
|
54
60
|
<>
|
|
55
61
|
<PaymentOptions
|
|
@@ -4,6 +4,7 @@ import { OIcon, OButton, OText } from '../shared'
|
|
|
4
4
|
import { ImageStyle, TextStyle, View, Platform, TouchableOpacity } from 'react-native'
|
|
5
5
|
import { useConfig, useLanguage, useOrder } from 'ordering-components/native'
|
|
6
6
|
import { useTheme } from 'styled-components/native'
|
|
7
|
+
|
|
7
8
|
const Wrapper = styled.View`
|
|
8
9
|
background-color: ${(props: any) => props.theme.colors.white};
|
|
9
10
|
padding: 10px 0px 20px 0px;
|
|
@@ -65,28 +66,27 @@ const NavBar = (props: Props) => {
|
|
|
65
66
|
|
|
66
67
|
return (
|
|
67
68
|
<Wrapper style={{ paddingTop: props.paddingTop, ...props.style }}>
|
|
68
|
-
{(props?.onActionLeft) && (
|
|
69
|
+
{(props?.onActionLeft || props?.leftImg) && (
|
|
69
70
|
<OButton
|
|
70
|
-
imgLeftSrc={props.leftImg}
|
|
71
|
+
imgLeftSrc={props.leftImg || theme.images.general.arrow_left}
|
|
71
72
|
imgRightSrc={null}
|
|
72
73
|
style={{ ...btnBackArrow, ...props.btnStyle }}
|
|
73
74
|
onClick={props.onActionLeft}
|
|
74
|
-
imgLeftStyle={props.imgLeftStyle}
|
|
75
|
-
{...(!props.leftImg && { iconProps: { name: 'arrowleft', size: 28, color: props.btnStyle?.color } })}
|
|
75
|
+
imgLeftStyle= {props.imgLeftStyle}
|
|
76
76
|
/>)
|
|
77
77
|
}
|
|
78
78
|
<TitleTopWrapper>
|
|
79
79
|
{props.withIcon
|
|
80
80
|
? (
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
81
|
+
<OIcon
|
|
82
|
+
url={props.icon}
|
|
83
|
+
style={{
|
|
84
|
+
borderColor: theme.colors.lightGray,
|
|
85
|
+
borderRadius: 20,
|
|
86
|
+
}}
|
|
87
|
+
width={60}
|
|
88
|
+
height={60}
|
|
89
|
+
/>
|
|
90
90
|
)
|
|
91
91
|
: null
|
|
92
92
|
}
|
|
@@ -134,7 +134,7 @@ const NavBar = (props: Props) => {
|
|
|
134
134
|
</View>
|
|
135
135
|
)}
|
|
136
136
|
|
|
137
|
-
{props.rightComponent}
|
|
137
|
+
{ props.rightComponent }
|
|
138
138
|
</Wrapper>
|
|
139
139
|
)
|
|
140
140
|
}
|
|
@@ -15,8 +15,6 @@ import { Container } from '../../layouts/Container'
|
|
|
15
15
|
import NavBar from '../NavBar'
|
|
16
16
|
import { LANDSCAPE, PORTRAIT, useDeviceOrientation } from '../../../../../src/hooks/DeviceOrientation'
|
|
17
17
|
import GridContainer from '../../layouts/GridContainer'
|
|
18
|
-
import AntDesignIcon from 'react-native-vector-icons/AntDesign'
|
|
19
|
-
import MaterialIcon from 'react-native-vector-icons/MaterialCommunityIcons'
|
|
20
18
|
|
|
21
19
|
const OrderTypeSelectorCardUI = (props: OrderTypeSelectParams) => {
|
|
22
20
|
const {
|
|
@@ -29,7 +27,7 @@ const OrderTypeSelectorCardUI = (props: OrderTypeSelectParams) => {
|
|
|
29
27
|
callback
|
|
30
28
|
} = props
|
|
31
29
|
|
|
32
|
-
|
|
30
|
+
const theme = useTheme();
|
|
33
31
|
const [, t] = useLanguage();
|
|
34
32
|
const [orientationState] = useDeviceOrientation();
|
|
35
33
|
const [orderState] = useOrder()
|
|
@@ -47,7 +45,7 @@ const OrderTypeSelectorCardUI = (props: OrderTypeSelectParams) => {
|
|
|
47
45
|
}
|
|
48
46
|
|
|
49
47
|
useEffect(() => {
|
|
50
|
-
if
|
|
48
|
+
if(isCardCliked){
|
|
51
49
|
callback?.()
|
|
52
50
|
setIsCardClicked(false)
|
|
53
51
|
setIsLoadingCard(null)
|
|
@@ -85,13 +83,13 @@ const OrderTypeSelectorCardUI = (props: OrderTypeSelectParams) => {
|
|
|
85
83
|
style={cardStyle}
|
|
86
84
|
isDisabled={isCardCliked}
|
|
87
85
|
isLoading={isLoadingCard === 'Eat In'}
|
|
88
|
-
title={t('EAT_IN',
|
|
86
|
+
title={t('EAT_IN','Eat In')}
|
|
89
87
|
description={t('EAT_IN_DESCRIPTION', 'We are very glad to have you here. Bon appetit!')}
|
|
90
88
|
bgImage={theme.images.general.eatIn}
|
|
91
|
-
|
|
89
|
+
icon={theme.images.general.pushPin}
|
|
92
90
|
callToActionText={t('START_MY_ORDER', 'Start my order')}
|
|
93
91
|
onClick={() => {
|
|
94
|
-
if
|
|
92
|
+
if(_eatIn?.value !== orderState?.options?.type){
|
|
95
93
|
handleChangeOrderType(_eatIn?.value);
|
|
96
94
|
setIsCardClicked(true)
|
|
97
95
|
setIsLoadingCard('Eat In')
|
|
@@ -108,15 +106,15 @@ const OrderTypeSelectorCardUI = (props: OrderTypeSelectParams) => {
|
|
|
108
106
|
|
|
109
107
|
<OptionCard
|
|
110
108
|
style={cardStyle}
|
|
111
|
-
title={t('TAKE_OUT',
|
|
109
|
+
title={t('TAKE_OUT','Take out')}
|
|
112
110
|
isDisabled={isCardCliked}
|
|
113
111
|
isLoading={isLoadingCard === 'Take out'}
|
|
114
112
|
description={t('TAKE_OUT_DESCRIPTION', 'You are very welcome anytime you visit us!')}
|
|
115
113
|
bgImage={theme.images.general.takeOut}
|
|
116
|
-
|
|
114
|
+
icon={theme.images.general.shoppingCart}
|
|
117
115
|
callToActionText={t('START_MY_ORDER', 'Start my order')}
|
|
118
116
|
onClick={() => {
|
|
119
|
-
if
|
|
117
|
+
if(_takeOut?.value !== orderState?.options?.type){
|
|
120
118
|
handleChangeOrderType(_takeOut?.value);
|
|
121
119
|
setIsCardClicked(true)
|
|
122
120
|
setIsLoadingCard('Take out')
|
|
@@ -10,8 +10,6 @@ import {
|
|
|
10
10
|
|
|
11
11
|
import * as React from 'react';
|
|
12
12
|
import styled from 'styled-components/native';
|
|
13
|
-
import AntDesignIcon from 'react-native-vector-icons/AntDesign'
|
|
14
|
-
import { Icon, IconProps } from 'react-native-vector-icons/Icon';
|
|
15
13
|
|
|
16
14
|
const StyledButton = styled.View<Props>`
|
|
17
15
|
background-color: ${(props: any) => props.theme.colors.primary};
|
|
@@ -79,19 +77,17 @@ interface Props {
|
|
|
79
77
|
isCircle?: boolean;
|
|
80
78
|
bgColor?: string;
|
|
81
79
|
borderColor?: string;
|
|
82
|
-
iconProps?: IconProps;
|
|
83
|
-
IconCustom?: React.FunctionComponent
|
|
84
80
|
}
|
|
85
81
|
|
|
86
82
|
const OButton = (props: Props): React.ReactElement => {
|
|
87
83
|
if (props.isDisabled) {
|
|
88
84
|
return (
|
|
89
85
|
<View style={props.parentStyle}>
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
86
|
+
<StyledButtonDisabled style={props.style}>
|
|
87
|
+
<StyledTextDisabled style={props.disabledTextStyle ? props.disabledTextStyle : props.textStyle}>
|
|
88
|
+
{props.text}
|
|
89
|
+
</StyledTextDisabled>
|
|
90
|
+
</StyledButtonDisabled>
|
|
95
91
|
</View>
|
|
96
92
|
);
|
|
97
93
|
}
|
|
@@ -115,15 +111,6 @@ const OButton = (props: Props): React.ReactElement => {
|
|
|
115
111
|
{props.imgLeftSrc ? (
|
|
116
112
|
<StyledImage style={props.imgLeftStyle} source={props.imgLeftSrc} />
|
|
117
113
|
) : null}
|
|
118
|
-
{props.iconProps ? (
|
|
119
|
-
<>
|
|
120
|
-
{props?.IconCustom ? (
|
|
121
|
-
<props.IconCustom {...props.iconProps} />
|
|
122
|
-
) : (
|
|
123
|
-
<AntDesignIcon {...props.iconProps} />
|
|
124
|
-
)}
|
|
125
|
-
</>
|
|
126
|
-
) : null}
|
|
127
114
|
{props.text ? (
|
|
128
115
|
<StyledText style={props.textStyle}>{props.text}</StyledText>
|
|
129
116
|
) : null}
|
|
@@ -96,15 +96,18 @@ import { LogoutButton } from './src/components/LogoutButton';
|
|
|
96
96
|
import { UserFormDetailsUI } from './src/components/UserFormDetails';
|
|
97
97
|
import { WalletTransactionItem } from './src/components/WalletTransactionItem';
|
|
98
98
|
import { Promotions } from './src/components/Promotions'
|
|
99
|
-
import { PageBanner } from './src/components/PageBanner'
|
|
100
99
|
import { MultiCart } from './src/components/MultiCart'
|
|
100
|
+
import { PageBanner } from './src/components/PageBanner'
|
|
101
101
|
import { USER_TYPE, ORDER_TYPES } from './src/config/constants'
|
|
102
|
-
|
|
102
|
+
import { DatePickerUI } from './src/components/DatePicker'
|
|
103
|
+
import { WebsocketStatus } from './src/components/WebsocketStatus';
|
|
103
104
|
import { OSBill, OSTable, OSCoupon, OSTotal, OSRow } from './src/components/OrderSummary/styles';
|
|
104
105
|
|
|
105
106
|
import { FormInput, FormSide, ButtonsWrapper, LoginWith, OTab, OTabs } from './src/components/LoginForm/styles';
|
|
106
107
|
import { OSItem, OSItemContent, OSItemActions } from './src/components/PaymentOptionStripe/styles';
|
|
107
108
|
|
|
109
|
+
import { orderTypeList } from './src/utils'
|
|
110
|
+
|
|
108
111
|
import Alert from './src/providers/AlertProvider'
|
|
109
112
|
|
|
110
113
|
import {
|
|
@@ -263,7 +266,8 @@ export {
|
|
|
263
266
|
Promotions,
|
|
264
267
|
PageBanner,
|
|
265
268
|
MyOrders,
|
|
266
|
-
|
|
269
|
+
MultiCart,
|
|
270
|
+
WebsocketStatus,
|
|
267
271
|
ORDER_TYPES,
|
|
268
272
|
USER_TYPE,
|
|
269
273
|
|
|
@@ -340,5 +344,9 @@ export {
|
|
|
340
344
|
_retrieveStoreData,
|
|
341
345
|
_setStoreData,
|
|
342
346
|
_removeStoreData,
|
|
343
|
-
_clearStoreData
|
|
347
|
+
_clearStoreData,
|
|
348
|
+
orderTypeList,
|
|
349
|
+
|
|
350
|
+
// Date Picker
|
|
351
|
+
DatePickerUI
|
|
344
352
|
}
|
|
@@ -1,30 +1,40 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import FastImage from 'react-native-fast-image'
|
|
3
|
-
import { StyleSheet, TouchableOpacity,
|
|
3
|
+
import { StyleSheet, TouchableOpacity, useWindowDimensions } from 'react-native';
|
|
4
4
|
import {
|
|
5
5
|
AddressDetails as AddressDetailsController,
|
|
6
6
|
useOrder,
|
|
7
7
|
useLanguage,
|
|
8
8
|
} from 'ordering-components/native';
|
|
9
|
+
import { useTheme } from 'styled-components/native';
|
|
9
10
|
|
|
10
11
|
import { ADContainer, ADHeader, ADAddress, ADMap } from './styles';
|
|
11
|
-
|
|
12
|
-
import {
|
|
13
|
-
import { OText, OIcon } from '../shared';
|
|
14
|
-
import { useWindowDimensions } from 'react-native';
|
|
12
|
+
import { OText } from '../shared';
|
|
13
|
+
import { getTypesText } from '../../utils';
|
|
15
14
|
|
|
16
15
|
const AddressDetailsUI = (props: any) => {
|
|
17
|
-
const {
|
|
18
|
-
|
|
16
|
+
const {
|
|
17
|
+
navigation,
|
|
18
|
+
addressToShow,
|
|
19
|
+
isCartPending,
|
|
20
|
+
googleMapsUrl,
|
|
21
|
+
apiKey
|
|
22
|
+
} = props;
|
|
19
23
|
|
|
20
24
|
const theme = useTheme();
|
|
21
25
|
const [orderState] = useOrder();
|
|
26
|
+
const [{ options }] = useOrder();
|
|
22
27
|
const [, t] = useLanguage();
|
|
23
28
|
const { width } = useWindowDimensions();
|
|
24
29
|
|
|
30
|
+
const orderTypeText = {
|
|
31
|
+
key: getTypesText(options?.type || 1),
|
|
32
|
+
value: t(getTypesText(options?.type || 1), 'Delivery')
|
|
33
|
+
}
|
|
34
|
+
|
|
25
35
|
const styles = StyleSheet.create({
|
|
26
36
|
productStyle: {
|
|
27
|
-
width
|
|
37
|
+
width,
|
|
28
38
|
height: 151,
|
|
29
39
|
marginVertical: 10
|
|
30
40
|
}
|
|
@@ -39,13 +49,13 @@ const AddressDetailsUI = (props: any) => {
|
|
|
39
49
|
lineHeight={24}
|
|
40
50
|
color={theme.colors.textNormal}
|
|
41
51
|
>
|
|
42
|
-
{t(
|
|
52
|
+
{t(`${orderTypeText.key}_ADDRESS`, `${orderTypeText.value} address`)}
|
|
43
53
|
</OText>
|
|
44
54
|
)}
|
|
45
55
|
</ADHeader>
|
|
46
56
|
{!!apiKey && googleMapsUrl && (
|
|
47
57
|
<ADMap
|
|
48
|
-
style={{
|
|
58
|
+
style={{ width, flex: 1, marginStart: -20, marginEnd: -20, }}>
|
|
49
59
|
<FastImage
|
|
50
60
|
style={styles.productStyle}
|
|
51
61
|
source={{
|
|
@@ -66,7 +66,9 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
66
66
|
isFromProductsList,
|
|
67
67
|
hasAddressDefault,
|
|
68
68
|
afterSignup,
|
|
69
|
-
businessSlug
|
|
69
|
+
businessSlug,
|
|
70
|
+
isFromCheckout,
|
|
71
|
+
onNavigationRedirect
|
|
70
72
|
} = props;
|
|
71
73
|
|
|
72
74
|
const theme = useTheme();
|
|
@@ -122,8 +124,8 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
122
124
|
width: 16
|
|
123
125
|
},
|
|
124
126
|
wrapperNavbar: Platform.OS === 'ios'
|
|
125
|
-
? { paddingVertical: 0, paddingLeft:
|
|
126
|
-
: { paddingVertical: 10, paddingLeft:
|
|
127
|
+
? { paddingVertical: 0, paddingLeft: 20, paddingRight: 20 }
|
|
128
|
+
: { paddingVertical: 10, paddingLeft: 20, paddingRight: 20 }
|
|
127
129
|
});
|
|
128
130
|
|
|
129
131
|
const [, t] = useLanguage();
|
|
@@ -132,6 +134,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
132
134
|
const [configState] = useConfig();
|
|
133
135
|
const [orderState] = useOrder();
|
|
134
136
|
const { handleSubmit, errors, control, setValue } = useForm();
|
|
137
|
+
const [autoCompleteAddress, setAutoCompleteAddress] = useState(false)
|
|
135
138
|
|
|
136
139
|
const [toggleMap, setToggleMap] = useState(false);
|
|
137
140
|
const [alertState, setAlertState] = useState<{
|
|
@@ -172,6 +175,8 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
172
175
|
const isHideMap = theme?.address?.components?.map?.hidden
|
|
173
176
|
const isHideIcons = theme?.address?.components?.icons?.hidden
|
|
174
177
|
const continueAsGuest = () => navigation.navigate(!!businessSlug ? 'Business' : 'BusinessList', { isGuestUser: true });
|
|
178
|
+
const unaddressedTypes = configState?.configs?.unaddressed_order_types_allowed?.value.split('|').map((value: any) => Number(value)) || []
|
|
179
|
+
const isAllowUnaddressOrderType = unaddressedTypes.includes(orderState?.options?.type)
|
|
175
180
|
const goToBack = () => navigation?.canGoBack() && navigation.goBack();
|
|
176
181
|
|
|
177
182
|
const getAddressFormatted = (address: any) => {
|
|
@@ -371,6 +376,10 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
371
376
|
setToggleMap(!toggleMap);
|
|
372
377
|
};
|
|
373
378
|
|
|
379
|
+
const showFieldWithTheme = (name) => {
|
|
380
|
+
return !theme?.address?.components?.[name]?.hidden
|
|
381
|
+
}
|
|
382
|
+
|
|
374
383
|
useEffect(() => {
|
|
375
384
|
if (
|
|
376
385
|
orderState.loading &&
|
|
@@ -379,9 +388,11 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
379
388
|
auth &&
|
|
380
389
|
!afterSignup
|
|
381
390
|
) {
|
|
382
|
-
|
|
383
|
-
? navigation.
|
|
384
|
-
:
|
|
391
|
+
isFromCheckout
|
|
392
|
+
? navigation.goBack()
|
|
393
|
+
: !isFromProductsList
|
|
394
|
+
? navigation.navigate('BottomTab')
|
|
395
|
+
: navigation.navigate('Business');
|
|
385
396
|
}
|
|
386
397
|
}, [orderState?.options?.address]);
|
|
387
398
|
|
|
@@ -520,6 +531,12 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
520
531
|
setIsSignUpEffect(true);
|
|
521
532
|
}, [orderState.loading]);
|
|
522
533
|
|
|
534
|
+
useEffect(() => {
|
|
535
|
+
if (isAllowUnaddressOrderType) {
|
|
536
|
+
onNavigationRedirect && onNavigationRedirect(!!businessSlug ? 'Business' : 'BusinessList')
|
|
537
|
+
}
|
|
538
|
+
}, [isAllowUnaddressOrderType])
|
|
539
|
+
|
|
523
540
|
return (
|
|
524
541
|
<ScrollView
|
|
525
542
|
keyboardShouldPersistTaps='always'
|
|
@@ -535,6 +552,11 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
535
552
|
style={{ marginTop: Platform.OS === 'ios' ? 0 : 10 }}
|
|
536
553
|
titleWrapStyle={{ paddingHorizontal: 0, width: '100%' }}
|
|
537
554
|
titleStyle={{ marginRight: 0, marginLeft: 0, paddingRight: 5 }}
|
|
555
|
+
buttonProps={{
|
|
556
|
+
bgColor: theme.colors.white,
|
|
557
|
+
borderColor: theme.colors.white,
|
|
558
|
+
textStyle: { color: theme.colors.btnFont }
|
|
559
|
+
}}
|
|
538
560
|
/>
|
|
539
561
|
</View>
|
|
540
562
|
<TouchableWithoutFeedback onPress={Keyboard.dismiss}>
|
|
@@ -565,6 +587,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
565
587
|
placeholder={t('ADD_ADDRESS', 'Add a address')}
|
|
566
588
|
onPress={(data, details: any) => {
|
|
567
589
|
handleChangeAddress(data, details);
|
|
590
|
+
setAutoCompleteAddress(true);
|
|
568
591
|
}}
|
|
569
592
|
query={{
|
|
570
593
|
key: googleMapsApiKey,
|
|
@@ -579,6 +602,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
579
602
|
target: { name: 'address', value: text },
|
|
580
603
|
});
|
|
581
604
|
setValue('address', text);
|
|
605
|
+
setAutoCompleteAddress(true)
|
|
582
606
|
}
|
|
583
607
|
setIsFirstTime(false);
|
|
584
608
|
setAddressEditing(text.length == 0);
|
|
@@ -666,13 +690,15 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
666
690
|
setSaveLocation={setSaveMapLocation}
|
|
667
691
|
handleToggleMap={handleToggleMap}
|
|
668
692
|
isIntGeoCoder
|
|
693
|
+
setAutoCompleteAddress={setAutoCompleteAddress}
|
|
694
|
+
autoCompleteAddress={autoCompleteAddress}
|
|
669
695
|
/>
|
|
670
696
|
</GoogleMapContainer>
|
|
671
697
|
</View>
|
|
672
698
|
)}
|
|
673
699
|
|
|
674
700
|
<View style={{ flexDirection: 'row', flexBasis: '50%' }}>
|
|
675
|
-
{
|
|
701
|
+
{((isRequiredField && isRequiredField('internal_number')) || showFieldWithTheme('internal_number')) && (
|
|
676
702
|
<Controller
|
|
677
703
|
control={control}
|
|
678
704
|
name="internal_number"
|
|
@@ -708,7 +734,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
708
734
|
isFocusHighlight
|
|
709
735
|
style={{
|
|
710
736
|
...styles.inputsStyle,
|
|
711
|
-
marginRight: showField('internal_number') && showField('zipcode') ? 24 : 0
|
|
737
|
+
marginRight: showField?.('internal_number') && showField?.('zipcode') ? 24 : 0
|
|
712
738
|
}}
|
|
713
739
|
forwardRef={internalNumberRef}
|
|
714
740
|
returnKeyType="next"
|
|
@@ -719,7 +745,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
719
745
|
/>
|
|
720
746
|
)}
|
|
721
747
|
|
|
722
|
-
{
|
|
748
|
+
{((isRequiredField && isRequiredField('zipcode')) || showFieldWithTheme('zipcode')) && (
|
|
723
749
|
<Controller
|
|
724
750
|
control={control}
|
|
725
751
|
name="zipcode"
|
|
@@ -764,7 +790,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
764
790
|
)}
|
|
765
791
|
</View>
|
|
766
792
|
|
|
767
|
-
{
|
|
793
|
+
{((isRequiredField && isRequiredField('address_notes')) || showFieldWithTheme('address_notes')) && (
|
|
768
794
|
<Controller
|
|
769
795
|
control={control}
|
|
770
796
|
name="address_notes"
|
|
@@ -855,8 +881,9 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
855
881
|
) : (
|
|
856
882
|
<OButton
|
|
857
883
|
text={t('CANCEL', 'Cancel')}
|
|
858
|
-
bgColor={theme.colors.
|
|
859
|
-
borderColor={theme.colors.
|
|
884
|
+
bgColor={theme.colors.secundary}
|
|
885
|
+
borderColor={theme.colors.secundary}
|
|
886
|
+
textStyle={{ color: theme.colors.black }}
|
|
860
887
|
style={{ borderRadius: 7.6, borderWidth: 1, shadowOpacity: 0 }}
|
|
861
888
|
onClick={() => navigation?.canGoBack() && navigation.goBack()}
|
|
862
889
|
/>
|
|
@@ -883,6 +910,8 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
883
910
|
<OButton
|
|
884
911
|
text={t('SAVE', 'Save')}
|
|
885
912
|
textStyle={{ color: theme.colors.white }}
|
|
913
|
+
bgColor={theme.colors.primary}
|
|
914
|
+
borderColor={theme.colors.primary}
|
|
886
915
|
imgRightSrc={null}
|
|
887
916
|
style={{ marginHorizontal: 30, marginBottom: 10 }}
|
|
888
917
|
onClick={() => setSaveMapLocation(true)}
|
|
@@ -2,7 +2,7 @@ import styled from 'styled-components/native'
|
|
|
2
2
|
|
|
3
3
|
export const AddressFormContainer = styled.View`
|
|
4
4
|
flex: 1;
|
|
5
|
-
padding: 0px
|
|
5
|
+
padding: 0px 20px 20px;
|
|
6
6
|
background-color: ${(props: any) => props.theme.colors.backgroundPage};
|
|
7
7
|
justify-content: space-between;
|
|
8
8
|
`
|
|
@@ -152,6 +152,11 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
152
152
|
showCall={false}
|
|
153
153
|
paddingTop={10}
|
|
154
154
|
btnStyle={{ paddingLeft: 0 }}
|
|
155
|
+
buttonProps={{
|
|
156
|
+
bgColor: theme.colors.white,
|
|
157
|
+
borderColor: theme.colors.white,
|
|
158
|
+
textStyle: { color: theme.colors.btnFont }
|
|
159
|
+
}}
|
|
155
160
|
/>
|
|
156
161
|
)}
|
|
157
162
|
{
|
|
@@ -173,6 +178,11 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
173
178
|
style={{ marginTop: 0 }}
|
|
174
179
|
titleWrapStyle={{ paddingHorizontal: 0 }}
|
|
175
180
|
titleStyle={{ marginLeft: 0, marginRight: 0 }}
|
|
181
|
+
buttonProps={{
|
|
182
|
+
bgColor: theme.colors.white,
|
|
183
|
+
borderColor: theme.colors.white,
|
|
184
|
+
textStyle: { color: theme.colors.btnFont }
|
|
185
|
+
}}
|
|
176
186
|
/>
|
|
177
187
|
)}
|
|
178
188
|
{addressList.loading && addressList?.addresses?.length === 0 && (
|
|
@@ -217,7 +227,8 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
217
227
|
onSaveAddress: handleSaveAddress,
|
|
218
228
|
isSelectedAfterAdd: true,
|
|
219
229
|
isFromProductsList: isFromProductsList,
|
|
220
|
-
hasAddressDefault: !!orderState.options?.address?.location
|
|
230
|
+
hasAddressDefault: !!orderState.options?.address?.location,
|
|
231
|
+
isFromCheckout: route?.params?.isFromCheckout
|
|
221
232
|
}
|
|
222
233
|
) : onNavigationRedirect(
|
|
223
234
|
'AddressFormInitial',
|
|
@@ -228,7 +239,8 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
228
239
|
onSaveAddress: handleSaveAddress,
|
|
229
240
|
isSelectedAfterAdd: true,
|
|
230
241
|
isFromProductsList: isFromProductsList,
|
|
231
|
-
hasAddressDefault: !!orderState.options?.address?.location
|
|
242
|
+
hasAddressDefault: !!orderState.options?.address?.location,
|
|
243
|
+
isFromCheckout: route?.params?.isFromCheckout
|
|
232
244
|
})}
|
|
233
245
|
>
|
|
234
246
|
<OIcon src={theme.images.general.pencil} width={16} style={{ marginHorizontal: 4 }} />
|
|
@@ -305,7 +317,8 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
305
317
|
addressesList: addressList?.addresses,
|
|
306
318
|
nopadding: true,
|
|
307
319
|
isSelectedAfterAdd: true,
|
|
308
|
-
hasAddressDefault: !!orderState.options?.address?.location
|
|
320
|
+
hasAddressDefault: !!orderState.options?.address?.location,
|
|
321
|
+
isFromCheckout: route?.params?.isFromCheckout
|
|
309
322
|
}) : onNavigationRedirect(
|
|
310
323
|
'AddressFormInitial',
|
|
311
324
|
{
|
|
@@ -314,7 +327,8 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
314
327
|
addressesList: addressList?.addresses,
|
|
315
328
|
nopadding: true,
|
|
316
329
|
isSelectedAfterAdd: true,
|
|
317
|
-
hasAddressDefault: !!orderState.options?.address?.location
|
|
330
|
+
hasAddressDefault: !!orderState.options?.address?.location,
|
|
331
|
+
isFormCheckout: route?.params?.isFromCheckout
|
|
318
332
|
})}
|
|
319
333
|
/>
|
|
320
334
|
</>
|
|
@@ -3,10 +3,10 @@ import styled from 'styled-components/native'
|
|
|
3
3
|
export const Container = styled.ScrollView`
|
|
4
4
|
position: relative;
|
|
5
5
|
flex: 1;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
paddingLeft: 20px;
|
|
7
|
+
paddingRight: 20px;
|
|
8
|
+
margin-bottom: 40px;
|
|
9
|
+
padding-top: 10px;
|
|
10
10
|
`
|
|
11
11
|
|
|
12
12
|
export const AddressItem = styled.TouchableOpacity`
|
|
@@ -23,8 +23,7 @@ export const AnalyticsSegment = (props: any) => {
|
|
|
23
23
|
segmentClient.track('Product List Viewed', {
|
|
24
24
|
business_id: category?.business_id,
|
|
25
25
|
category_id: category?.id,
|
|
26
|
-
category: category?.name
|
|
27
|
-
products: category?.products
|
|
26
|
+
category: category?.name
|
|
28
27
|
})
|
|
29
28
|
}
|
|
30
29
|
|
|
@@ -62,11 +61,12 @@ export const AnalyticsSegment = (props: any) => {
|
|
|
62
61
|
})
|
|
63
62
|
}
|
|
64
63
|
|
|
65
|
-
const handleProductAdded = (product: any) => {
|
|
64
|
+
const handleProductAdded = (product: any, result: any) => {
|
|
66
65
|
segmentClient.track('Product Added', {
|
|
67
|
-
|
|
66
|
+
cart_id: result.uuid,
|
|
67
|
+
product_id: product.id,
|
|
68
68
|
name: product.name,
|
|
69
|
-
category: product.category_id,
|
|
69
|
+
category: product.category_id || product?.categoryId,
|
|
70
70
|
price: product.price,
|
|
71
71
|
quantity: product.quantity
|
|
72
72
|
})
|
|
@@ -101,7 +101,7 @@ export const AnalyticsSegment = (props: any) => {
|
|
|
101
101
|
|
|
102
102
|
const handleOrderPlaced = (order: any) => {
|
|
103
103
|
segmentClient.track('Order Placed', {
|
|
104
|
-
|
|
104
|
+
order_id: order.id,
|
|
105
105
|
affiliation: order.business?.name,
|
|
106
106
|
revenue: order.total,
|
|
107
107
|
tax: order.tax_total,
|
|
@@ -21,7 +21,7 @@ export const AppleLogin = (props: any) => {
|
|
|
21
21
|
const [{ configs }] = useConfig();
|
|
22
22
|
const [credentialStateForUser, updateCredentialStateForUser] = useState<any>(-1);
|
|
23
23
|
|
|
24
|
-
let user
|
|
24
|
+
let user: any = null
|
|
25
25
|
|
|
26
26
|
const buttonText = auth
|
|
27
27
|
? t('CONTINUE_WITH_APPLE', 'Logout with Apple')
|
|
@@ -53,7 +53,7 @@ export const AppleLogin = (props: any) => {
|
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
const fetchAndUpdateCredentialState = async (updateCredentialStateForUser
|
|
56
|
+
const fetchAndUpdateCredentialState = async (updateCredentialStateForUser: any) => {
|
|
57
57
|
if (user === null) {
|
|
58
58
|
updateCredentialStateForUser('N/A');
|
|
59
59
|
} else {
|
|
@@ -66,7 +66,7 @@ export const AppleLogin = (props: any) => {
|
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
68
|
|
|
69
|
-
const onIOSButtonPress = async (updateCredentialStateForUser
|
|
69
|
+
const onIOSButtonPress = async (updateCredentialStateForUser: any) => {
|
|
70
70
|
try {
|
|
71
71
|
const appleAuthRequestResponse = await appleAuth.performRequest({
|
|
72
72
|
requestedOperation: appleAuth.Operation.LOGIN,
|
|
@@ -79,7 +79,7 @@ export const AppleLogin = (props: any) => {
|
|
|
79
79
|
identityToken,
|
|
80
80
|
authorizationCode
|
|
81
81
|
} = appleAuthRequestResponse;
|
|
82
|
-
|
|
82
|
+
|
|
83
83
|
user = newUser;
|
|
84
84
|
|
|
85
85
|
fetchAndUpdateCredentialState(updateCredentialStateForUser).catch(error =>
|