ordering-ui-react-native 0.17.71 → 0.17.72-release
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +8 -7
- package/src/DeliveryApp.tsx +43 -1
- package/src/components/BusinessInformation/index.tsx +10 -9
- package/src/components/BusinessesListing/index.tsx +1 -1
- package/src/components/OrderCreating/index.tsx +1 -21
- package/src/components/PaymentOptionsWebView/index.tsx +29 -8
- package/src/components/PhoneInputNumber/index.tsx +6 -2
- package/src/components/StripeMethodForm/index.tsx +136 -102
- package/src/components/VerifyPhone/styles.tsx +1 -2
- package/src/components/shared/OToast.tsx +3 -2
- package/src/types/index.tsx +5 -0
- package/src/utils/index.tsx +5 -0
- package/themes/business/index.tsx +2 -0
- package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +28 -24
- package/themes/business/src/components/BusinessController/index.tsx +0 -1
- package/themes/business/src/components/Chat/index.tsx +149 -118
- package/themes/business/src/components/DriverMap/index.tsx +17 -6
- package/themes/business/src/components/DriverSchedule/index.tsx +45 -8
- package/themes/business/src/components/GoogleMap/index.tsx +58 -57
- package/themes/business/src/components/LoginForm/Otp/index.tsx +31 -3
- package/themes/business/src/components/LoginForm/index.tsx +15 -22
- package/themes/business/src/components/MapView/index.tsx +10 -10
- package/themes/business/src/components/MessagesOption/index.tsx +20 -93
- package/themes/business/src/components/NewOrderNotification/index.tsx +35 -21
- package/themes/business/src/components/NotFoundSource/index.tsx +2 -2
- package/themes/business/src/components/OrderDetails/Business.tsx +1 -1
- package/themes/business/src/components/OrderDetails/Delivery.tsx +191 -6
- package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +103 -39
- package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +61 -60
- package/themes/business/src/components/OrderDetailsLogistic/index.tsx +195 -0
- package/themes/business/src/components/OrderDetailsLogistic/styles.tsx +5 -0
- package/themes/business/src/components/OrderMessage/index.tsx +19 -18
- package/themes/business/src/components/OrderSummary/index.tsx +114 -123
- package/themes/business/src/components/OrdersOption/index.tsx +17 -15
- package/themes/business/src/components/PreviousMessages/FooterMessageComponent.tsx +103 -0
- package/themes/business/src/components/PreviousMessages/index.tsx +97 -55
- package/themes/business/src/components/PreviousOrders/OrderItem.tsx +17 -12
- package/themes/business/src/components/PreviousOrders/OrderList.tsx +88 -0
- package/themes/business/src/components/PreviousOrders/OrdersGroupedItem.tsx +1 -1
- package/themes/business/src/components/PreviousOrders/index.tsx +186 -114
- package/themes/business/src/components/PreviousOrders/styles.tsx +1 -1
- package/themes/business/src/components/ProductItemAccordion/index.tsx +27 -3
- package/themes/business/src/components/ReviewCustomer/index.tsx +18 -13
- package/themes/business/src/components/StoresList/index.tsx +3 -4
- package/themes/business/src/components/UserProfileForm/index.tsx +14 -15
- package/themes/business/src/components/shared/OLink.tsx +11 -3
- package/themes/business/src/components/shared/OModal.tsx +16 -9
- package/themes/business/src/components/shared/OText.tsx +6 -1
- package/themes/business/src/types/index.tsx +25 -10
- package/themes/business/src/utils/index.tsx +29 -2
- package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
- package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
- package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
- package/themes/kiosk/src/components/Checkout/index.tsx +6 -0
- package/themes/kiosk/src/components/Intro/index.tsx +16 -1
- package/themes/kiosk/src/components/LoginForm/index.tsx +7 -9
- package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
- package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
- package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
- package/themes/kiosk/src/components/PhoneInputNumber/index.tsx +2 -2
- package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
- package/themes/original/index.tsx +1 -1
- package/themes/original/src/components/AddressDetails/index.tsx +19 -3
- package/themes/original/src/components/AddressForm/index.tsx +61 -39
- package/themes/original/src/components/AddressList/index.tsx +25 -24
- package/themes/original/src/components/AddressList/styles.tsx +4 -2
- package/themes/original/src/components/AnalyticsSegment/index.tsx +193 -10
- package/themes/original/src/components/AppleLogin/index.tsx +4 -4
- package/themes/original/src/components/AppleLogin/styles.tsx +3 -1
- package/themes/original/src/components/BusinessBasicInformation/index.tsx +153 -96
- package/themes/original/src/components/BusinessBasicInformation/styles.tsx +10 -12
- package/themes/original/src/components/BusinessController/index.tsx +80 -66
- package/themes/original/src/components/BusinessController/styles.tsx +12 -5
- package/themes/original/src/components/BusinessFeaturedController/index.tsx +21 -54
- package/themes/original/src/components/BusinessFeaturedController/styles.tsx +8 -0
- package/themes/original/src/components/BusinessInformation/index.tsx +139 -85
- package/themes/original/src/components/BusinessItemAccordion/index.tsx +15 -20
- package/themes/original/src/components/BusinessListingSearch/index.tsx +349 -339
- package/themes/original/src/components/BusinessListingSearch/styles.tsx +0 -18
- package/themes/original/src/components/BusinessPreorder/index.tsx +103 -19
- package/themes/original/src/components/BusinessProductsCategories/index.tsx +1 -2
- package/themes/original/src/components/BusinessProductsList/index.tsx +15 -7
- package/themes/original/src/components/BusinessProductsList/styles.tsx +8 -3
- package/themes/original/src/components/BusinessProductsListing/UpsellingRedirect.tsx +1 -1
- package/themes/original/src/components/BusinessProductsListing/index.tsx +684 -555
- package/themes/original/src/components/BusinessProductsListing/styles.tsx +2 -2
- package/themes/original/src/components/BusinessReviews/index.tsx +3 -1
- package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +69 -38
- package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +0 -1
- package/themes/original/src/components/BusinessesListing/index.tsx +0 -1
- package/themes/original/src/components/Cart/index.tsx +77 -79
- package/themes/original/src/components/CartContent/index.tsx +117 -20
- package/themes/original/src/components/CartContent/styles.tsx +17 -7
- package/themes/original/src/components/Checkout/index.tsx +356 -124
- package/themes/original/src/components/CitiesControl/index.tsx +1 -1
- package/themes/original/src/components/CouponControl/index.tsx +10 -3
- package/themes/original/src/components/DriverTips/index.tsx +52 -34
- package/themes/original/src/components/FacebookLogin/styles.tsx +3 -1
- package/themes/original/src/components/Favorite/index.tsx +2 -6
- package/themes/original/src/components/FavoriteList/index.tsx +1 -35
- package/themes/original/src/components/FloatingButton/index.tsx +10 -13
- package/themes/original/src/components/GPSButton/index.tsx +6 -4
- package/themes/original/src/components/GiftCard/GiftCardUI/index.tsx +96 -0
- package/themes/original/src/components/GiftCard/GiftCardUI/styles.tsx +5 -0
- package/themes/original/src/components/GiftCard/PurchaseGiftCard/index.tsx +100 -0
- package/themes/original/src/components/GiftCard/PurchaseGiftCard/styles.tsx +8 -0
- package/themes/original/src/components/GiftCard/RedeemGiftCard/index.tsx +191 -0
- package/themes/original/src/components/GiftCard/RedeemGiftCard/styles.tsx +8 -0
- package/themes/original/src/components/GiftCard/SendGiftCard/index.tsx +165 -0
- package/themes/original/src/components/GiftCard/SendGiftCard/styles.tsx +9 -0
- package/themes/original/src/components/GoogleLogin/styles.tsx +1 -1
- package/themes/original/src/components/GoogleMap/index.tsx +60 -5
- package/themes/original/src/components/Help/index.tsx +2 -2
- package/themes/original/src/components/HelpAccountAndPayment/index.tsx +10 -31
- package/themes/original/src/components/HelpAccountAndPayment/styles.tsx +5 -3
- package/themes/original/src/components/HelpGuide/index.tsx +6 -6
- package/themes/original/src/components/HelpGuide/styles.tsx +6 -0
- package/themes/original/src/components/HelpOrder/index.tsx +6 -15
- package/themes/original/src/components/HelpOrder/styles.tsx +8 -1
- package/themes/original/src/components/Home/index.tsx +13 -4
- package/themes/original/src/components/LastOrder/index.tsx +1 -34
- package/themes/original/src/components/LoginForm/Otp/index.tsx +91 -25
- package/themes/original/src/components/LoginForm/index.tsx +64 -34
- package/themes/original/src/components/LottieAnimation/index.tsx +88 -63
- package/themes/original/src/components/MessageListing/index.tsx +16 -42
- package/themes/original/src/components/Messages/index.tsx +14 -7
- package/themes/original/src/components/MomentOption/index.tsx +193 -90
- package/themes/original/src/components/MomentSelector/index.tsx +1 -1
- package/themes/original/src/components/MultiCart/index.tsx +41 -54
- package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +162 -50
- package/themes/original/src/components/MultiCheckout/index.tsx +329 -100
- package/themes/original/src/components/MultiCheckout/styles.tsx +3 -1
- package/themes/original/src/components/MultiOrdersDetails/SingleOrderCard.tsx +37 -224
- package/themes/original/src/components/MultiOrdersDetails/index.tsx +54 -21
- package/themes/original/src/components/MultiOrdersDetails/styles.tsx +1 -1
- package/themes/original/src/components/MyOrders/index.tsx +40 -29
- package/themes/original/src/components/NavBar/index.tsx +20 -17
- package/themes/original/src/components/NotFoundSource/index.tsx +14 -10
- package/themes/original/src/components/Notifications/index.tsx +42 -52
- package/themes/original/src/components/Notifications/styles.tsx +6 -3
- package/themes/original/src/components/OrderDetails/OrderEta.tsx +76 -0
- package/themes/original/src/components/OrderDetails/OrderHistory.tsx +21 -5
- package/themes/original/src/components/OrderDetails/index.tsx +191 -363
- package/themes/original/src/components/OrderDetails/styles.tsx +0 -1
- package/themes/original/src/components/OrderItAgain/index.tsx +3 -1
- package/themes/original/src/components/OrderProgress/index.tsx +30 -56
- package/themes/original/src/components/OrderSummary/index.tsx +88 -59
- package/themes/original/src/components/OrderTypeSelector/index.tsx +2 -1
- package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/index.tsx +14 -14
- package/themes/original/src/components/OrdersOption/index.tsx +68 -87
- package/themes/original/src/components/OrdersOption/styles.tsx +1 -1
- package/themes/original/src/components/PageBanner/index.tsx +98 -38
- package/themes/original/src/components/PageBanner/styles.tsx +0 -10
- package/themes/original/src/components/PaymentOptionCard/index.tsx +180 -0
- package/themes/original/src/components/PaymentOptionStripe/styles.tsx +1 -1
- package/themes/original/src/components/PaymentOptionWallet/index.tsx +56 -56
- package/themes/original/src/components/PaymentOptions/index.tsx +78 -35
- package/themes/original/src/components/PhoneInputNumber/index.tsx +18 -4
- package/themes/original/src/components/ProductForm/index.tsx +104 -29
- package/themes/original/src/components/ProductForm/styles.tsx +5 -5
- package/themes/original/src/components/ProductItemAccordion/index.tsx +12 -9
- package/themes/original/src/components/ProductOptionSubOption/index.tsx +20 -18
- package/themes/original/src/components/ProductOptionSubOption/styles.tsx +5 -9
- package/themes/original/src/components/ProfessionalFilter/SingleProfessionalCard/index.tsx +108 -0
- package/themes/original/src/components/ProfessionalFilter/index.tsx +20 -50
- package/themes/original/src/components/ProfessionalProfile/index.tsx +36 -7
- package/themes/original/src/components/Promotions/index.tsx +2 -2
- package/themes/original/src/components/Promotions/styles.tsx +3 -1
- package/themes/original/src/components/ReviewProducts/index.tsx +16 -7
- package/themes/original/src/components/ScheduleAccordion/index.tsx +3 -3
- package/themes/original/src/components/ServiceForm/index.tsx +66 -17
- package/themes/original/src/components/Sessions/index.tsx +11 -8
- package/themes/original/src/components/Sessions/styles.tsx +5 -0
- package/themes/original/src/components/SignupForm/index.tsx +43 -27
- package/themes/original/src/components/SingleOrderCard/index.tsx +102 -63
- package/themes/original/src/components/SingleOrderCard/styles.tsx +1 -1
- package/themes/original/src/components/SingleProductCard/index.tsx +72 -31
- package/themes/original/src/components/SingleProductCard/styles.tsx +20 -4
- package/themes/original/src/components/SingleProductReview/styles.tsx +1 -1
- package/themes/original/src/components/StripeCardsList/index.tsx +49 -5
- package/themes/original/src/components/StripeElementsForm/index.tsx +48 -34
- package/themes/original/src/components/StripeElementsForm/naked.tsx +12 -1
- package/themes/original/src/components/UpsellingProducts/index.tsx +238 -224
- package/themes/original/src/components/UpsellingProducts/styles.tsx +12 -1
- package/themes/original/src/components/UserDetails/index.tsx +3 -1
- package/themes/original/src/components/UserFormDetails/index.tsx +76 -7
- package/themes/original/src/components/UserFormDetails/styles.tsx +1 -1
- package/themes/original/src/components/UserProfile/index.tsx +88 -79
- package/themes/original/src/components/UserProfileForm/index.tsx +17 -21
- package/themes/original/src/components/UserProfileForm/styles.tsx +7 -0
- package/themes/original/src/components/UserVerification/index.tsx +55 -50
- package/themes/original/src/components/WalletTransactionItem/index.tsx +2 -2
- package/themes/original/src/components/WalletTransactions/index.tsx +3 -3
- package/themes/original/src/components/Wallets/index.tsx +66 -30
- package/themes/original/src/components/Wallets/styles.tsx +3 -4
- package/themes/original/src/components/shared/OButton.tsx +6 -2
- package/themes/original/src/components/shared/OInput.tsx +6 -1
- package/themes/original/src/components/shared/OModal.tsx +3 -3
- package/themes/original/src/types/index.tsx +41 -11
- package/themes/original/src/utils/index.tsx +273 -1
- package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
|
@@ -16,6 +16,8 @@ import {
|
|
|
16
16
|
useToast,
|
|
17
17
|
ToastType
|
|
18
18
|
} from 'ordering-components/native';
|
|
19
|
+
import { DeviceOrientationMethods } from '../../../../../src/hooks/DeviceOrientation'
|
|
20
|
+
|
|
19
21
|
import { GooglePlacesAutocomplete } from 'react-native-google-places-autocomplete';
|
|
20
22
|
import Spinner from 'react-native-loading-spinner-overlay';
|
|
21
23
|
import { useForm, Controller } from 'react-hook-form';
|
|
@@ -38,6 +40,8 @@ import {
|
|
|
38
40
|
import { GPSButton } from '../GPSButton';
|
|
39
41
|
import { ScrollView } from 'react-native-gesture-handler';
|
|
40
42
|
|
|
43
|
+
const { useDeviceOrientation } = DeviceOrientationMethods
|
|
44
|
+
|
|
41
45
|
const inputNames = [
|
|
42
46
|
{ name: 'address', code: 'Address' },
|
|
43
47
|
{ name: 'internal_number', code: 'Internal number' },
|
|
@@ -62,9 +66,12 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
62
66
|
isFromProductsList,
|
|
63
67
|
hasAddressDefault,
|
|
64
68
|
afterSignup,
|
|
69
|
+
businessSlug
|
|
65
70
|
} = props;
|
|
66
71
|
|
|
67
72
|
const theme = useTheme();
|
|
73
|
+
const [orientationState] = useDeviceOrientation();
|
|
74
|
+
|
|
68
75
|
const [autoCompleteInputFocused, setAutoCompleteInputFocused] = useState(false)
|
|
69
76
|
|
|
70
77
|
const tagsName = [
|
|
@@ -74,6 +81,8 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
74
81
|
{ icon: theme.images.general.tag_plus, value: 'other' },
|
|
75
82
|
];
|
|
76
83
|
|
|
84
|
+
const HEIGHT_SCREEN = orientationState?.dimensions?.height
|
|
85
|
+
|
|
77
86
|
const styles = StyleSheet.create({
|
|
78
87
|
iconContainer: {
|
|
79
88
|
display: 'flex',
|
|
@@ -113,8 +122,8 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
113
122
|
width: 16
|
|
114
123
|
},
|
|
115
124
|
wrapperNavbar: Platform.OS === 'ios'
|
|
116
|
-
? { paddingVertical: 0,
|
|
117
|
-
: { paddingVertical:
|
|
125
|
+
? { paddingVertical: 0, paddingLeft: 40, paddingRight: 20 }
|
|
126
|
+
: { paddingVertical: 10, paddingLeft: 40, paddingRight: 20 }
|
|
118
127
|
});
|
|
119
128
|
|
|
120
129
|
const [, t] = useLanguage();
|
|
@@ -160,12 +169,13 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
160
169
|
const maxLimitLocation =
|
|
161
170
|
configState?.configs?.meters_to_change_address?.value;
|
|
162
171
|
const countryCode = configState?.configs?.country_autocomplete?.value
|
|
163
|
-
const
|
|
172
|
+
const isHideMap = theme?.address?.components?.map?.hidden
|
|
173
|
+
const isHideIcons = theme?.address?.components?.icons?.hidden
|
|
174
|
+
const continueAsGuest = () => navigation.navigate(!!businessSlug ? 'Business' : 'BusinessList', { isGuestUser: true });
|
|
164
175
|
const goToBack = () => navigation?.canGoBack() && navigation.goBack();
|
|
165
176
|
|
|
166
177
|
const getAddressFormatted = (address: any) => {
|
|
167
178
|
const data: any = { address: null, error: null };
|
|
168
|
-
Geocoder.init(googleMapsApiKey);
|
|
169
179
|
Geocoder.from(address)
|
|
170
180
|
.then((json) => {
|
|
171
181
|
if (json.results && json.results?.length > 0) {
|
|
@@ -341,6 +351,9 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
341
351
|
map_data: { library: 'google', place_id: data.place_id },
|
|
342
352
|
zip_code: data?.zip_code || null,
|
|
343
353
|
};
|
|
354
|
+
if (googleInput?.current) {
|
|
355
|
+
googleInput?.current?.setAddressText(addressSelected.address);
|
|
356
|
+
}
|
|
344
357
|
updateChanges(addressSelected);
|
|
345
358
|
};
|
|
346
359
|
|
|
@@ -362,7 +375,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
362
375
|
if (
|
|
363
376
|
orderState.loading &&
|
|
364
377
|
!addressesList &&
|
|
365
|
-
orderState
|
|
378
|
+
orderState?.options?.address &&
|
|
366
379
|
auth &&
|
|
367
380
|
!afterSignup
|
|
368
381
|
) {
|
|
@@ -370,7 +383,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
370
383
|
? navigation.navigate('BottomTab')
|
|
371
384
|
: navigation.navigate('Business');
|
|
372
385
|
}
|
|
373
|
-
}, [orderState
|
|
386
|
+
}, [orderState?.options?.address]);
|
|
374
387
|
|
|
375
388
|
useEffect(() => {
|
|
376
389
|
if (alertState.open && alertState?.key !== 'ERROR_MAX_LIMIT_LOCATION') {
|
|
@@ -423,16 +436,16 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
423
436
|
if (isEditing) {
|
|
424
437
|
if (formState?.changes?.location) {
|
|
425
438
|
const prevLocation = {
|
|
426
|
-
lat:
|
|
427
|
-
lng:
|
|
439
|
+
lat: locationChange?.lat?.toFixed(5),
|
|
440
|
+
lng: locationChange?.lng?.toFixed(5),
|
|
428
441
|
};
|
|
429
442
|
const newLocation = {
|
|
430
|
-
lat:
|
|
431
|
-
lng:
|
|
443
|
+
lat: formState?.changes?.location?.lat?.toFixed(5),
|
|
444
|
+
lng: formState?.changes?.location?.lng?.toFixed(5),
|
|
432
445
|
};
|
|
433
446
|
if (
|
|
434
|
-
prevLocation
|
|
435
|
-
prevLocation
|
|
447
|
+
prevLocation?.lat !== newLocation?.lat &&
|
|
448
|
+
prevLocation?.lng !== newLocation?.lng
|
|
436
449
|
) {
|
|
437
450
|
setLocationChange(formState?.changes?.location);
|
|
438
451
|
}
|
|
@@ -477,6 +490,10 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
477
490
|
}
|
|
478
491
|
}, []);
|
|
479
492
|
|
|
493
|
+
useEffect(() => {
|
|
494
|
+
Geocoder.init(googleMapsApiKey);
|
|
495
|
+
}, [googleMapsApiKey]);
|
|
496
|
+
|
|
480
497
|
useEffect(() => {
|
|
481
498
|
const keyboardDidShowListener = Keyboard.addListener(
|
|
482
499
|
'keyboardDidShow',
|
|
@@ -514,14 +531,14 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
514
531
|
titleAlign={'center'}
|
|
515
532
|
onActionLeft={goToBack}
|
|
516
533
|
showCall={false}
|
|
517
|
-
btnStyle={{ paddingLeft: 0 }}
|
|
518
|
-
style={{ marginTop: Platform.OS === 'ios' ? 0 :
|
|
519
|
-
titleWrapStyle={{ paddingHorizontal: 0 }}
|
|
520
|
-
titleStyle={{ marginRight: 0, marginLeft: 0 }}
|
|
534
|
+
btnStyle={{ paddingLeft: 0, paddingRight: 5 }}
|
|
535
|
+
style={{ marginTop: Platform.OS === 'ios' ? 0 : 10 }}
|
|
536
|
+
titleWrapStyle={{ paddingHorizontal: 0, width: '100%' }}
|
|
537
|
+
titleStyle={{ marginRight: 0, marginLeft: 0, paddingRight: 5 }}
|
|
521
538
|
/>
|
|
522
539
|
</View>
|
|
523
540
|
<TouchableWithoutFeedback onPress={Keyboard.dismiss}>
|
|
524
|
-
<AddressFormContainer style={{
|
|
541
|
+
<AddressFormContainer style={{ overflow: 'scroll' }}>
|
|
525
542
|
<View>
|
|
526
543
|
<FormInput>
|
|
527
544
|
<AutocompleteInput>
|
|
@@ -626,12 +643,13 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
626
643
|
}
|
|
627
644
|
}}
|
|
628
645
|
IconButton={<OIcon src={theme.images.general.pin} width={16} />}
|
|
646
|
+
isIntGeoCoder
|
|
629
647
|
/>
|
|
630
648
|
</View>
|
|
631
649
|
)}
|
|
632
650
|
</AutocompleteInput>
|
|
633
651
|
|
|
634
|
-
{(locationChange || formState.changes?.location) && (
|
|
652
|
+
{!isHideMap && (locationChange || formState.changes?.location) && (
|
|
635
653
|
<View
|
|
636
654
|
style={{
|
|
637
655
|
height: 189,
|
|
@@ -647,6 +665,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
647
665
|
saveLocation={saveMapLocation}
|
|
648
666
|
setSaveLocation={setSaveMapLocation}
|
|
649
667
|
handleToggleMap={handleToggleMap}
|
|
668
|
+
isIntGeoCoder
|
|
650
669
|
/>
|
|
651
670
|
</GoogleMapContainer>
|
|
652
671
|
</View>
|
|
@@ -789,27 +808,29 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
789
808
|
/>
|
|
790
809
|
)}
|
|
791
810
|
</FormInput>
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
811
|
+
{!isHideIcons && (
|
|
812
|
+
<IconsContainer>
|
|
813
|
+
{tagsName.map((tag) => (
|
|
814
|
+
<TouchableOpacity
|
|
815
|
+
key={tag.value}
|
|
816
|
+
onPress={() => handleAddressTag(tag.value)}>
|
|
817
|
+
<View
|
|
818
|
+
style={{
|
|
819
|
+
...styles.iconContainer,
|
|
820
|
+
}}>
|
|
821
|
+
<OIcon
|
|
822
|
+
src={tag.icon}
|
|
823
|
+
width={24}
|
|
824
|
+
color={
|
|
825
|
+
addressTag === tag.value ?
|
|
826
|
+
theme.colors.primary : theme.colors.disabled
|
|
827
|
+
}
|
|
828
|
+
/>
|
|
829
|
+
</View>
|
|
830
|
+
</TouchableOpacity>
|
|
831
|
+
))}
|
|
832
|
+
</IconsContainer>
|
|
833
|
+
)}
|
|
813
834
|
</View>
|
|
814
835
|
|
|
815
836
|
<View>
|
|
@@ -855,6 +876,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
855
876
|
saveLocation={saveMapLocation}
|
|
856
877
|
setSaveLocation={setSaveMapLocation}
|
|
857
878
|
handleToggleMap={handleToggleMap}
|
|
879
|
+
isIntGeoCoder
|
|
858
880
|
/>
|
|
859
881
|
</GoogleMapContainer>
|
|
860
882
|
)}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import React, { useEffect } from 'react'
|
|
2
2
|
import { AddressList as AddressListController, useLanguage, useOrder, useSession } from 'ordering-components/native'
|
|
3
|
-
import {
|
|
3
|
+
import { AddressItem, Container } from './styles'
|
|
4
4
|
import { Platform, RefreshControl, StyleSheet, View } from 'react-native'
|
|
5
5
|
import { OButton, OText, OAlert, OModal, OIcon } from '../shared'
|
|
6
|
-
import { Container } from '../../layouts/Container'
|
|
7
6
|
import { AddressListParams } from '../../types'
|
|
8
7
|
import { NotFoundSource } from '../NotFoundSource'
|
|
9
8
|
import NavBar from '../NavBar'
|
|
@@ -40,9 +39,6 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
40
39
|
|
|
41
40
|
const [isProfile, setIsProfile] = useState(isFromProfile || route?.params?.isFromProfile);
|
|
42
41
|
|
|
43
|
-
const goToBack = () => navigation?.canGoBack() && navigation.goBack()
|
|
44
|
-
const onNavigationRedirect = (route: string, params?: any) => navigation.navigate(route, params)
|
|
45
|
-
|
|
46
42
|
const onNavigatorRedirect = () => {
|
|
47
43
|
if (route && (isFromBusinesses || isGoBack)) {
|
|
48
44
|
isGoBack ? goToBack() : onNavigationRedirect('BottomTab')
|
|
@@ -104,7 +100,6 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
104
100
|
const handleSetAddress = (address: any) => {
|
|
105
101
|
if (address.id === orderState?.options?.address_id) return
|
|
106
102
|
handleSetDefault(address)
|
|
107
|
-
onNavigatorRedirect()
|
|
108
103
|
}
|
|
109
104
|
|
|
110
105
|
const handleSaveAddress = (address: any) => {
|
|
@@ -133,14 +128,21 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
133
128
|
}
|
|
134
129
|
}
|
|
135
130
|
|
|
131
|
+
const goToBack = () => navigation?.canGoBack() && navigation.goBack()
|
|
132
|
+
const onNavigationRedirect = (route: string, params?: any) => navigation.navigate(route, params)
|
|
133
|
+
|
|
134
|
+
useEffect(() => {
|
|
135
|
+
if (orderState.loading && auth && orderState.options.address?.location) {
|
|
136
|
+
onNavigatorRedirect()
|
|
137
|
+
}
|
|
138
|
+
}, [orderState.options.address])
|
|
139
|
+
|
|
136
140
|
useEffect(() => {
|
|
137
141
|
console.log('From profile : ' + isProfile)
|
|
138
142
|
}, [])
|
|
139
143
|
|
|
140
144
|
return (
|
|
141
145
|
<Container
|
|
142
|
-
pt={20}
|
|
143
|
-
noPadding
|
|
144
146
|
refreshControl={
|
|
145
147
|
<RefreshControl
|
|
146
148
|
refreshing={refreshing}
|
|
@@ -148,20 +150,18 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
148
150
|
/>
|
|
149
151
|
}
|
|
150
152
|
>
|
|
151
|
-
{isProfile && (
|
|
152
|
-
<NavBar
|
|
153
|
-
title={t('SAVED_PLACES', 'My saved places')}
|
|
154
|
-
titleAlign={'center'}
|
|
155
|
-
onActionLeft={goToBack}
|
|
156
|
-
showCall={false}
|
|
157
|
-
style={{
|
|
158
|
-
paddingHorizontal: 40,
|
|
159
|
-
marginTop: Platform.OS === 'ios' ? 0 : 10
|
|
160
|
-
}}
|
|
161
|
-
/>
|
|
162
|
-
)}
|
|
163
153
|
{(!addressList.loading || (isFromProductsList || isFromBusinesses || isFromProfile || isProfile)) && (
|
|
164
|
-
|
|
154
|
+
<>
|
|
155
|
+
{isProfile && (
|
|
156
|
+
<NavBar
|
|
157
|
+
title={t('SAVED_PLACES', 'My saved places')}
|
|
158
|
+
titleAlign={'center'}
|
|
159
|
+
onActionLeft={goToBack}
|
|
160
|
+
showCall={false}
|
|
161
|
+
paddingTop={10}
|
|
162
|
+
btnStyle={{ paddingLeft: 0 }}
|
|
163
|
+
/>
|
|
164
|
+
)}
|
|
165
165
|
{
|
|
166
166
|
route &&
|
|
167
167
|
(
|
|
@@ -177,7 +177,7 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
177
177
|
onActionLeft={() => goToBack()}
|
|
178
178
|
showCall={false}
|
|
179
179
|
btnStyle={{ paddingLeft: 0 }}
|
|
180
|
-
paddingTop={
|
|
180
|
+
paddingTop={10}
|
|
181
181
|
style={{ marginTop: 0 }}
|
|
182
182
|
titleWrapStyle={{ paddingHorizontal: 0 }}
|
|
183
183
|
titleStyle={{ marginLeft: 0, marginRight: 0 }}
|
|
@@ -327,7 +327,8 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
327
327
|
/>
|
|
328
328
|
</>
|
|
329
329
|
)}
|
|
330
|
-
|
|
330
|
+
</>
|
|
331
|
+
|
|
331
332
|
)}
|
|
332
333
|
</Container>
|
|
333
334
|
)
|
|
@@ -350,7 +351,7 @@ const styles = StyleSheet.create({
|
|
|
350
351
|
},
|
|
351
352
|
button: {
|
|
352
353
|
marginTop: 30,
|
|
353
|
-
marginBottom:
|
|
354
|
+
marginBottom: 30,
|
|
354
355
|
borderRadius: 7.6,
|
|
355
356
|
borderWidth: 1,
|
|
356
357
|
shadowOpacity: 0,
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import styled from 'styled-components/native'
|
|
2
2
|
|
|
3
|
-
export const
|
|
3
|
+
export const Container = styled.ScrollView`
|
|
4
|
+
position: relative;
|
|
4
5
|
flex: 1;
|
|
5
6
|
paddingLeft: 40px;
|
|
6
7
|
paddingRight: 40px;
|
|
7
|
-
|
|
8
|
+
margin-bottom: 40px;
|
|
9
|
+
padding-top: 10px;
|
|
8
10
|
`
|
|
9
11
|
|
|
10
12
|
export const AddressItem = styled.TouchableOpacity`
|
|
@@ -1,14 +1,49 @@
|
|
|
1
1
|
import React, { useEffect, useState } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import {
|
|
3
|
+
createClient,
|
|
4
|
+
AnalyticsProvider
|
|
5
|
+
} from '@segment/analytics-react-native';
|
|
6
|
+
import { useEvent, useConfig, useLanguage } from 'ordering-components/native';
|
|
4
7
|
|
|
5
8
|
export const AnalyticsSegment = (props: any) => {
|
|
6
9
|
const { children } = props
|
|
7
10
|
|
|
8
11
|
const [events] = useEvent()
|
|
9
12
|
const [configState] = useConfig()
|
|
13
|
+
const [, t] = useLanguage()
|
|
10
14
|
const [segmentClient, setSegmentClient] = useState<any>({})
|
|
11
15
|
|
|
16
|
+
const handleProductsSearched = (query: any) => {
|
|
17
|
+
segmentClient.track('Products Searched', {
|
|
18
|
+
query: query
|
|
19
|
+
})
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
const handleProductListViewed = (category: any) => {
|
|
23
|
+
segmentClient.track('Product List Viewed', {
|
|
24
|
+
business_id: category?.business_id,
|
|
25
|
+
category_id: category?.id,
|
|
26
|
+
category: category?.name,
|
|
27
|
+
products: category?.products
|
|
28
|
+
})
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
const handlePromotionViewed = (promotion: any) => {
|
|
32
|
+
segmentClient.track('Promotion Viewed', {
|
|
33
|
+
promotion_id: (promotion?.id || '').toString(),
|
|
34
|
+
name: promotion.name,
|
|
35
|
+
position: promotion.position
|
|
36
|
+
})
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
const handlePromotionClicked = (promotion: any) => {
|
|
40
|
+
segmentClient.track('Promotion Clicked', {
|
|
41
|
+
promotion_id: (promotion?.id || '').toString(),
|
|
42
|
+
name: promotion.name,
|
|
43
|
+
position: promotion.position
|
|
44
|
+
})
|
|
45
|
+
}
|
|
46
|
+
|
|
12
47
|
const handleClickProduct = (product: any) => {
|
|
13
48
|
segmentClient.track('Product Clicked', {
|
|
14
49
|
id: product.id,
|
|
@@ -18,6 +53,15 @@ export const AnalyticsSegment = (props: any) => {
|
|
|
18
53
|
})
|
|
19
54
|
}
|
|
20
55
|
|
|
56
|
+
const handleProductViewed = (product: any) => {
|
|
57
|
+
segmentClient.track('Product Viewed', {
|
|
58
|
+
id: product.id,
|
|
59
|
+
name: product.name,
|
|
60
|
+
category: product.category_id,
|
|
61
|
+
price: product.price
|
|
62
|
+
})
|
|
63
|
+
}
|
|
64
|
+
|
|
21
65
|
const handleProductAdded = (product: any) => {
|
|
22
66
|
segmentClient.track('Product Added', {
|
|
23
67
|
id: product.id,
|
|
@@ -38,6 +82,23 @@ export const AnalyticsSegment = (props: any) => {
|
|
|
38
82
|
})
|
|
39
83
|
}
|
|
40
84
|
|
|
85
|
+
const handleCartViewed = (cart: any) => {
|
|
86
|
+
segmentClient.track('Cart Viewed', {
|
|
87
|
+
id: cart.uuid,
|
|
88
|
+
products: cart?.products
|
|
89
|
+
})
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
const handleCheckoutStarted = (cart: any) => {
|
|
93
|
+
segmentClient.track('Checkout Started', {
|
|
94
|
+
cart_id: cart?.uuid,
|
|
95
|
+
affiliation: cart?.business?.name,
|
|
96
|
+
revenue: cart?.total,
|
|
97
|
+
tax: cart?.tax_total,
|
|
98
|
+
shipping: cart?.delivery_zone_price
|
|
99
|
+
})
|
|
100
|
+
}
|
|
101
|
+
|
|
41
102
|
const handleOrderPlaced = (order: any) => {
|
|
42
103
|
segmentClient.track('Order Placed', {
|
|
43
104
|
id: order.id,
|
|
@@ -65,6 +126,35 @@ export const AnalyticsSegment = (props: any) => {
|
|
|
65
126
|
tax: order.tax_total,
|
|
66
127
|
shipping: order.delivery_zone_price
|
|
67
128
|
})
|
|
129
|
+
|
|
130
|
+
if (order?.history?.length) {
|
|
131
|
+
const lasthistory = order.history[order.history.length - 1]
|
|
132
|
+
if (lasthistory?.data) {
|
|
133
|
+
lasthistory.data.forEach(item => {
|
|
134
|
+
if (item.attribute === 'status') {
|
|
135
|
+
if (item.new === 15) {
|
|
136
|
+
segmentClient.track('Order Completed', {
|
|
137
|
+
id: order.id,
|
|
138
|
+
affiliation: order.business?.name,
|
|
139
|
+
revenue: order.total,
|
|
140
|
+
tax: order.tax_total,
|
|
141
|
+
shipping: order.delivery_zone_price
|
|
142
|
+
})
|
|
143
|
+
}
|
|
144
|
+
const orderCancelled = [2, 5, 6, 10, 12, 16, 17]
|
|
145
|
+
if (orderCancelled.includes(item.new)) {
|
|
146
|
+
segmentClient.track('Order Cancelled', {
|
|
147
|
+
id: order.id,
|
|
148
|
+
affiliation: order.business?.name,
|
|
149
|
+
revenue: order.total,
|
|
150
|
+
tax: order.tax_total,
|
|
151
|
+
shipping: order.delivery_zone_price
|
|
152
|
+
})
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
})
|
|
156
|
+
}
|
|
157
|
+
}
|
|
68
158
|
}
|
|
69
159
|
|
|
70
160
|
const handleAddOrder = (order: any) => {
|
|
@@ -77,6 +167,51 @@ export const AnalyticsSegment = (props: any) => {
|
|
|
77
167
|
})
|
|
78
168
|
}
|
|
79
169
|
|
|
170
|
+
const handleCouponEntered = (cart: any) => {
|
|
171
|
+
segmentClient.track('Coupon Entered', {
|
|
172
|
+
cart_id: cart.uuid,
|
|
173
|
+
coupon: cart.coupon
|
|
174
|
+
})
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
const handleCouponApplied = (cart: any) => {
|
|
178
|
+
const coupon: any = cart?.offers?.find(offer => offer.type === 2)
|
|
179
|
+
if (coupon) {
|
|
180
|
+
segmentClient.track('Coupon Applied', {
|
|
181
|
+
cart_id: cart.uuid,
|
|
182
|
+
coupon_id: coupon.id,
|
|
183
|
+
coupon_name: coupon?.name,
|
|
184
|
+
discount: coupon?.summary?.discount
|
|
185
|
+
})
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
const handleCouponDenied = (coupon: any) => {
|
|
190
|
+
segmentClient.track('Coupon Denied', {
|
|
191
|
+
business_id: coupon.business_id,
|
|
192
|
+
coupon: coupon.coupon,
|
|
193
|
+
user_id: coupon?.user_id,
|
|
194
|
+
reason: typeof coupon.reason === 'string' ? t(coupon.reason) : t(coupon.reason[0])
|
|
195
|
+
})
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
const handleCouponRemoved = (coupon: any) => {
|
|
199
|
+
segmentClient.track('Coupon Removed', {
|
|
200
|
+
business_id: coupon.business_id,
|
|
201
|
+
coupon_id: coupon.offer_id,
|
|
202
|
+
})
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
const handleProductReviewed = (products: any) => {
|
|
206
|
+
products.forEach((product: any) => {
|
|
207
|
+
segmentClient.track('Product Reviewed', {
|
|
208
|
+
product_id: product.product_id,
|
|
209
|
+
review_body: product.comment,
|
|
210
|
+
rating: product.qualification
|
|
211
|
+
})
|
|
212
|
+
})
|
|
213
|
+
}
|
|
214
|
+
|
|
80
215
|
const handleLogin = (data: any) => {
|
|
81
216
|
segmentClient.identify(data.id, {
|
|
82
217
|
email: data.email,
|
|
@@ -84,25 +219,74 @@ export const AnalyticsSegment = (props: any) => {
|
|
|
84
219
|
})
|
|
85
220
|
}
|
|
86
221
|
|
|
222
|
+
const handleProductAddedToWishlist = (product: any) => {
|
|
223
|
+
segmentClient.track('Product Added to Wishlist', product)
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
const handleProductRemovedFromWishlist = (product: any) => {
|
|
227
|
+
segmentClient.track('Product Removed from Wishlist', product)
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
const handleWishlistProductAddedToCart = (product: any, result: any) => {
|
|
231
|
+
segmentClient.track('Wishlist Product Added to Cart', {
|
|
232
|
+
cart_id: result.uuid,
|
|
233
|
+
product_id: product.id,
|
|
234
|
+
name: product.name,
|
|
235
|
+
category: product.categoryId,
|
|
236
|
+
price: product.price,
|
|
237
|
+
quantity: product.quantity
|
|
238
|
+
})
|
|
239
|
+
}
|
|
240
|
+
|
|
87
241
|
useEffect(() => {
|
|
88
242
|
if (segmentClient?.config?.writeKey) {
|
|
243
|
+
events.on('products_searched', handleProductsSearched)
|
|
244
|
+
events.on('product_list_viewed', handleProductListViewed)
|
|
245
|
+
events.on('promotion_viewed', handlePromotionViewed)
|
|
246
|
+
events.on('promotion_clicked', handlePromotionClicked)
|
|
89
247
|
events.on('product_clicked', handleClickProduct)
|
|
90
|
-
events.on('
|
|
248
|
+
events.on('product_viewed', handleProductViewed)
|
|
91
249
|
events.on('product_added', handleProductAdded)
|
|
92
|
-
events.on('
|
|
250
|
+
events.on('cart_product_removed', handleProductRemoved)
|
|
251
|
+
events.on('cart_viewed', handleCartViewed)
|
|
252
|
+
events.on('checkout_started', handleCheckoutStarted)
|
|
93
253
|
events.on('order_updated', handleUpdateOrder)
|
|
254
|
+
events.on('coupon_entered', handleCouponEntered)
|
|
255
|
+
events.on('offer_applied', handleCouponApplied)
|
|
256
|
+
events.on('offer_denied', handleCouponDenied)
|
|
257
|
+
events.on('offer_removed', handleCouponRemoved)
|
|
258
|
+
events.on('product_reviewed', handleProductReviewed)
|
|
259
|
+
events.on('userLogin', handleLogin)
|
|
260
|
+
events.on('order_placed', handleOrderPlaced)
|
|
94
261
|
events.on('order_added', handleAddOrder)
|
|
95
|
-
events.on('
|
|
262
|
+
events.on('product_added_to_wishlist', handleProductAddedToWishlist)
|
|
263
|
+
events.on('product_removed_from_wishlist', handleProductRemovedFromWishlist)
|
|
264
|
+
events.on('wishlist_product_added_to_cart', handleWishlistProductAddedToCart)
|
|
96
265
|
}
|
|
97
266
|
return () => {
|
|
98
267
|
if (segmentClient?.config?.writeKey) {
|
|
268
|
+
events.off('products_searched', handleProductsSearched)
|
|
269
|
+
events.off('product_list_viewed', handleProductListViewed)
|
|
270
|
+
events.off('promotion_viewed', handlePromotionViewed)
|
|
271
|
+
events.off('promotion_clicked', handlePromotionClicked)
|
|
99
272
|
events.off('product_clicked', handleClickProduct)
|
|
100
|
-
events.off('
|
|
273
|
+
events.off('product_viewed', handleProductViewed)
|
|
101
274
|
events.off('product_added', handleProductAdded)
|
|
102
|
-
events.off('
|
|
275
|
+
events.off('cart_product_removed', handleProductRemoved)
|
|
276
|
+
events.off('cart_viewed', handleCartViewed)
|
|
277
|
+
events.off('checkout_started', handleCheckoutStarted)
|
|
103
278
|
events.off('order_updated', handleUpdateOrder)
|
|
279
|
+
events.off('coupon_entered', handleCouponEntered)
|
|
280
|
+
events.off('offer_applied', handleCouponApplied)
|
|
281
|
+
events.off('offer_denied', handleCouponDenied)
|
|
282
|
+
events.off('offer_removed', handleCouponRemoved)
|
|
283
|
+
events.off('product_reviewed', handleProductReviewed)
|
|
284
|
+
events.off('userLogin', handleLogin)
|
|
285
|
+
events.off('order_placed', handleOrderPlaced)
|
|
104
286
|
events.off('order_added', handleAddOrder)
|
|
105
|
-
events.off('
|
|
287
|
+
events.off('product_added_to_wishlist', handleProductAddedToWishlist)
|
|
288
|
+
events.off('product_removed_from_wishlist', handleProductRemovedFromWishlist)
|
|
289
|
+
events.off('wishlist_product_added_to_cart', handleWishlistProductAddedToCart)
|
|
106
290
|
}
|
|
107
291
|
}
|
|
108
292
|
}, [segmentClient])
|
|
@@ -110,7 +294,7 @@ export const AnalyticsSegment = (props: any) => {
|
|
|
110
294
|
useEffect(() => {
|
|
111
295
|
if (configState?.configs?.segment_track_id?.value) {
|
|
112
296
|
const _segmentClient: any = createClient({
|
|
113
|
-
writeKey: configState?.configs?.segment_track_id?.value
|
|
297
|
+
writeKey: configState?.configs?.segment_track_id?.value,
|
|
114
298
|
});
|
|
115
299
|
setSegmentClient(_segmentClient)
|
|
116
300
|
}
|
|
@@ -122,6 +306,5 @@ export const AnalyticsSegment = (props: any) => {
|
|
|
122
306
|
{children}
|
|
123
307
|
</AnalyticsProvider>
|
|
124
308
|
</>
|
|
125
|
-
|
|
126
309
|
)
|
|
127
310
|
}
|
|
@@ -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 =>
|