ordering-ui-react-native 0.17.23 → 0.17.24-test
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/OrderCreating/index.tsx +1 -21
- package/src/components/PaymentOptionsWebView/index.tsx +119 -120
- package/src/components/StripeMethodForm/index.tsx +108 -79
- package/src/components/VerifyPhone/styles.tsx +1 -2
- package/src/components/shared/OToast.tsx +4 -4
- package/src/types/index.tsx +5 -0
- package/src/utils/index.tsx +7 -1
- package/themes/business/index.tsx +2 -0
- package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +265 -240
- package/themes/business/src/components/AcceptOrRejectOrder/styles.tsx +6 -4
- package/themes/business/src/components/BusinessController/index.tsx +0 -1
- package/themes/business/src/components/Chat/index.tsx +118 -107
- package/themes/business/src/components/DriverMap/index.tsx +17 -6
- package/themes/business/src/components/GoogleMap/index.tsx +58 -57
- package/themes/business/src/components/LoginForm/Otp/index.tsx +120 -0
- package/themes/business/src/components/LoginForm/Otp/styles.tsx +7 -0
- package/themes/business/src/components/LoginForm/index.tsx +238 -80
- package/themes/business/src/components/LoginForm/styles.tsx +10 -0
- package/themes/business/src/components/MapView/index.tsx +10 -10
- package/themes/business/src/components/NewOrderNotification/index.tsx +43 -50
- package/themes/business/src/components/OrderDetails/Delivery.tsx +4 -3
- package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +90 -47
- package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +59 -62
- 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 +18 -17
- package/themes/business/src/components/OrderSummary/index.tsx +113 -121
- package/themes/business/src/components/OrdersOption/index.tsx +32 -75
- package/themes/business/src/components/PreviousOrders/OrderItem.tsx +250 -0
- package/themes/business/src/components/PreviousOrders/OrdersGroupedItem.tsx +115 -0
- package/themes/business/src/components/PreviousOrders/index.tsx +445 -243
- package/themes/business/src/components/PreviousOrders/styles.tsx +31 -3
- package/themes/business/src/components/ProductItemAccordion/index.tsx +27 -3
- package/themes/business/src/components/ReviewCustomer/index.tsx +41 -24
- package/themes/business/src/components/StoresList/index.tsx +2 -2
- package/themes/business/src/components/shared/OLink.tsx +33 -13
- package/themes/business/src/components/shared/OModal.tsx +16 -9
- package/themes/business/src/components/shared/OText.tsx +8 -2
- package/themes/business/src/types/index.tsx +32 -2
- package/themes/business/src/utils/index.tsx +44 -1
- package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
- package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
- package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
- package/themes/kiosk/src/components/BusinessesListing/index.tsx +2 -1
- package/themes/kiosk/src/components/Checkout/index.tsx +6 -0
- package/themes/kiosk/src/components/LoginForm/Otp/index.tsx +92 -0
- package/themes/kiosk/src/components/LoginForm/Otp/styles.tsx +7 -0
- package/themes/kiosk/src/components/LoginForm/index.tsx +473 -151
- package/themes/kiosk/src/components/LoginForm/styles.tsx +14 -1
- 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 +3 -2
- package/themes/kiosk/src/components/PhoneInputNumber/styles.tsx +1 -3
- package/themes/kiosk/src/components/ProductForm/index.tsx +1 -14
- package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
- package/themes/kiosk/src/components/shared/OModal.tsx +14 -11
- package/themes/kiosk/src/layouts/Container.tsx +7 -1
- package/themes/kiosk/src/types/index.d.ts +13 -0
- package/themes/kiosk/src/utils/index.tsx +15 -0
- package/themes/original/index.tsx +6 -0
- package/themes/original/src/components/AddressDetails/index.tsx +29 -11
- package/themes/original/src/components/AddressForm/index.tsx +49 -19
- package/themes/original/src/components/AddressList/index.tsx +26 -21
- 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/BusinessBasicInformation/index.tsx +166 -89
- package/themes/original/src/components/BusinessBasicInformation/styles.tsx +9 -7
- package/themes/original/src/components/BusinessController/index.tsx +145 -68
- package/themes/original/src/components/BusinessController/styles.tsx +22 -9
- 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 +10 -31
- package/themes/original/src/components/BusinessItemAccordion/index.tsx +23 -22
- package/themes/original/src/components/BusinessListingSearch/index.tsx +350 -323
- package/themes/original/src/components/BusinessPreorder/index.tsx +97 -16
- package/themes/original/src/components/BusinessProductsList/index.tsx +20 -11
- package/themes/original/src/components/BusinessProductsList/styles.tsx +8 -3
- package/themes/original/src/components/BusinessProductsListing/index.tsx +616 -495
- package/themes/original/src/components/BusinessProductsListing/styles.tsx +7 -9
- package/themes/original/src/components/BusinessReviews/index.tsx +3 -1
- package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +1 -1
- package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +105 -78
- package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +1 -9
- package/themes/original/src/components/BusinessesListing/index.tsx +5 -3
- package/themes/original/src/components/Cart/index.tsx +102 -69
- package/themes/original/src/components/CartContent/index.tsx +110 -19
- package/themes/original/src/components/CartContent/styles.tsx +15 -1
- package/themes/original/src/components/Checkout/index.tsx +323 -178
- package/themes/original/src/components/Checkout/styles.tsx +4 -2
- package/themes/original/src/components/CitiesControl/index.tsx +89 -0
- package/themes/original/src/components/CitiesControl/styles.tsx +17 -0
- 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/Favorite/index.tsx +7 -4
- package/themes/original/src/components/Favorite/styles.tsx +1 -1
- package/themes/original/src/components/FavoriteList/index.tsx +51 -80
- package/themes/original/src/components/FloatingButton/index.tsx +1 -2
- package/themes/original/src/components/FloatingButton/styles.tsx +1 -1
- package/themes/original/src/components/GPSButton/index.tsx +6 -4
- package/themes/original/src/components/GPSButton/styles.ts +3 -3
- 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 +178 -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/GoogleMap/index.tsx +4 -2
- package/themes/original/src/components/Help/index.tsx +8 -8
- package/themes/original/src/components/HelpAccountAndPayment/index.tsx +11 -22
- package/themes/original/src/components/HelpAccountAndPayment/styles.tsx +6 -0
- package/themes/original/src/components/HelpGuide/index.tsx +12 -16
- package/themes/original/src/components/HelpGuide/styles.tsx +6 -0
- package/themes/original/src/components/HelpOrder/index.tsx +12 -25
- 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/LanguageSelector/index.tsx +17 -13
- package/themes/original/src/components/LastOrder/index.tsx +1 -34
- package/themes/original/src/components/LoginForm/Otp/index.tsx +89 -73
- package/themes/original/src/components/LoginForm/Otp/styles.tsx +0 -1
- package/themes/original/src/components/LoginForm/index.tsx +59 -22
- package/themes/original/src/components/LottieAnimation/index.tsx +78 -0
- package/themes/original/src/components/MessageListing/index.tsx +16 -42
- package/themes/original/src/components/Messages/index.tsx +32 -10
- package/themes/original/src/components/MomentOption/index.tsx +195 -88
- package/themes/original/src/components/MultiCart/index.tsx +50 -0
- package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +197 -116
- package/themes/original/src/components/MultiCheckout/index.tsx +288 -86
- package/themes/original/src/components/MultiOrdersDetails/SingleOrderCard.tsx +37 -224
- package/themes/original/src/components/MultiOrdersDetails/index.tsx +67 -20
- package/themes/original/src/components/MultiOrdersDetails/styles.tsx +1 -1
- package/themes/original/src/components/MyOrders/index.tsx +55 -51
- package/themes/original/src/components/NavBar/index.tsx +6 -11
- package/themes/original/src/components/Notifications/index.tsx +46 -50
- package/themes/original/src/components/Notifications/styles.tsx +6 -3
- package/themes/original/src/components/OrderDetails/OrderEta.tsx +64 -0
- package/themes/original/src/components/OrderDetails/OrderHistory.tsx +15 -3
- package/themes/original/src/components/OrderDetails/index.tsx +262 -368
- package/themes/original/src/components/OrderDetails/styles.tsx +3 -4
- package/themes/original/src/components/OrderItAgain/index.tsx +3 -1
- package/themes/original/src/components/OrderProgress/index.tsx +74 -112
- package/themes/original/src/components/OrderProgress/styles.tsx +5 -0
- package/themes/original/src/components/OrderSummary/index.tsx +87 -59
- package/themes/original/src/components/OrderTypeSelector/index.tsx +3 -2
- package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/index.tsx +24 -19
- package/themes/original/src/components/OrdersOption/index.tsx +96 -88
- package/themes/original/src/components/PageBanner/index.tsx +171 -0
- package/themes/original/src/components/PageBanner/styles.tsx +11 -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 +34 -6
- package/themes/original/src/components/PhoneInputNumber/index.tsx +3 -3
- package/themes/original/src/components/PlaceSpot/index.tsx +12 -6
- package/themes/original/src/components/PreviousOrders/index.tsx +3 -2
- package/themes/original/src/components/ProductForm/index.tsx +230 -261
- package/themes/original/src/components/ProductForm/styles.tsx +4 -7
- package/themes/original/src/components/ProductItemAccordion/index.tsx +197 -138
- package/themes/original/src/components/ProductOptionSubOption/index.tsx +18 -10
- package/themes/original/src/components/ProductOptionSubOption/styles.tsx +1 -2
- 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 +234 -220
- package/themes/original/src/components/Promotions/styles.tsx +10 -3
- package/themes/original/src/components/ReviewDriver/index.tsx +3 -3
- package/themes/original/src/components/ReviewOrder/index.tsx +26 -9
- package/themes/original/src/components/ReviewOrder/styles.tsx +7 -0
- package/themes/original/src/components/ReviewProducts/index.tsx +23 -11
- package/themes/original/src/components/ReviewTrigger/index.tsx +27 -9
- package/themes/original/src/components/ReviewTrigger/styles.tsx +8 -1
- package/themes/original/src/components/ScheduleAccordion/index.tsx +68 -0
- package/themes/original/src/components/ScheduleAccordion/styles.tsx +14 -0
- package/themes/original/src/components/ServiceForm/index.tsx +366 -288
- 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 +82 -67
- package/themes/original/src/components/SingleOrderCard/index.tsx +149 -63
- package/themes/original/src/components/SingleOrderCard/styles.tsx +11 -9
- package/themes/original/src/components/SingleProductCard/index.tsx +99 -55
- package/themes/original/src/components/SingleProductCard/styles.tsx +27 -13
- package/themes/original/src/components/SingleProductReview/index.tsx +8 -2
- package/themes/original/src/components/SingleProductReview/styles.tsx +1 -1
- package/themes/original/src/components/StripeCardsList/index.tsx +9 -2
- package/themes/original/src/components/StripeElementsForm/index.tsx +28 -15
- 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 +8 -4
- package/themes/original/src/components/UserFormDetails/index.tsx +47 -7
- package/themes/original/src/components/UserProfile/index.tsx +9 -14
- package/themes/original/src/components/UserProfileForm/index.tsx +21 -28
- package/themes/original/src/components/UserProfileForm/styles.tsx +7 -0
- package/themes/original/src/components/WalletTransactionItem/index.tsx +2 -2
- package/themes/original/src/components/Wallets/index.tsx +94 -33
- package/themes/original/src/components/Wallets/styles.tsx +2 -0
- package/themes/original/src/components/shared/CardAnimation.tsx +47 -0
- package/themes/original/src/components/shared/HeaderTitle.tsx +8 -3
- package/themes/original/src/components/shared/OBottomPopup.tsx +1 -1
- package/themes/original/src/components/shared/OButton.tsx +6 -2
- package/themes/original/src/components/shared/OIcon.tsx +8 -1
- package/themes/original/src/components/shared/OInput.tsx +16 -2
- package/themes/original/src/components/shared/OModal.tsx +3 -3
- package/themes/original/src/layouts/Container.tsx +13 -9
- package/themes/original/src/types/index.tsx +38 -9
- package/themes/original/src/utils/index.tsx +375 -58
- 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,13 @@ 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
|
+
|
|
75
|
+
const [autoCompleteInputFocused, setAutoCompleteInputFocused] = useState(false)
|
|
68
76
|
|
|
69
77
|
const tagsName = [
|
|
70
78
|
{ icon: theme.images.general.tag_home, value: 'home' },
|
|
@@ -73,6 +81,8 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
73
81
|
{ icon: theme.images.general.tag_plus, value: 'other' },
|
|
74
82
|
];
|
|
75
83
|
|
|
84
|
+
const HEIGHT_SCREEN = orientationState?.dimensions?.height
|
|
85
|
+
|
|
76
86
|
const styles = StyleSheet.create({
|
|
77
87
|
iconContainer: {
|
|
78
88
|
display: 'flex',
|
|
@@ -83,7 +93,6 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
83
93
|
backgroundColor: theme.colors.clear
|
|
84
94
|
},
|
|
85
95
|
inputsStyle: {
|
|
86
|
-
borderColor: theme.colors.border,
|
|
87
96
|
borderRadius: 10,
|
|
88
97
|
marginBottom: 20,
|
|
89
98
|
height: 50,
|
|
@@ -92,7 +101,6 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
92
101
|
flex: 1,
|
|
93
102
|
},
|
|
94
103
|
textAreaStyles: {
|
|
95
|
-
borderColor: theme.colors.border,
|
|
96
104
|
borderRadius: 10,
|
|
97
105
|
marginBottom: 20,
|
|
98
106
|
height: 104,
|
|
@@ -106,10 +114,16 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
106
114
|
end: 0,
|
|
107
115
|
top: 12,
|
|
108
116
|
zIndex: 1002,
|
|
117
|
+
right: autoCompleteInputFocused && (
|
|
118
|
+
!!address?.address ||
|
|
119
|
+
!!formState.changes?.address ||
|
|
120
|
+
!!addressState.address.address
|
|
121
|
+
) ? 30 : 15,
|
|
122
|
+
width: 16
|
|
109
123
|
},
|
|
110
124
|
wrapperNavbar: Platform.OS === 'ios'
|
|
111
|
-
? { paddingVertical: 0,
|
|
112
|
-
: { paddingVertical:
|
|
125
|
+
? { paddingVertical: 0, paddingLeft: 40, paddingRight: 20 }
|
|
126
|
+
: { paddingVertical: 10, paddingLeft: 40, paddingRight: 20 }
|
|
113
127
|
});
|
|
114
128
|
|
|
115
129
|
const [, t] = useLanguage();
|
|
@@ -154,13 +168,14 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
154
168
|
'true';
|
|
155
169
|
const maxLimitLocation =
|
|
156
170
|
configState?.configs?.meters_to_change_address?.value;
|
|
157
|
-
|
|
158
|
-
const
|
|
171
|
+
const countryCode = configState?.configs?.country_autocomplete?.value
|
|
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 });
|
|
159
175
|
const goToBack = () => navigation?.canGoBack() && navigation.goBack();
|
|
160
176
|
|
|
161
177
|
const getAddressFormatted = (address: any) => {
|
|
162
178
|
const data: any = { address: null, error: null };
|
|
163
|
-
Geocoder.init(googleMapsApiKey);
|
|
164
179
|
Geocoder.from(address)
|
|
165
180
|
.then((json) => {
|
|
166
181
|
if (json.results && json.results?.length > 0) {
|
|
@@ -357,7 +372,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
357
372
|
if (
|
|
358
373
|
orderState.loading &&
|
|
359
374
|
!addressesList &&
|
|
360
|
-
orderState
|
|
375
|
+
orderState?.options?.address &&
|
|
361
376
|
auth &&
|
|
362
377
|
!afterSignup
|
|
363
378
|
) {
|
|
@@ -365,7 +380,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
365
380
|
? navigation.navigate('BottomTab')
|
|
366
381
|
: navigation.navigate('Business');
|
|
367
382
|
}
|
|
368
|
-
}, [orderState
|
|
383
|
+
}, [orderState?.options?.address]);
|
|
369
384
|
|
|
370
385
|
useEffect(() => {
|
|
371
386
|
if (alertState.open && alertState?.key !== 'ERROR_MAX_LIMIT_LOCATION') {
|
|
@@ -472,6 +487,10 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
472
487
|
}
|
|
473
488
|
}, []);
|
|
474
489
|
|
|
490
|
+
useEffect(() => {
|
|
491
|
+
Geocoder.init(googleMapsApiKey);
|
|
492
|
+
}, [googleMapsApiKey]);
|
|
493
|
+
|
|
475
494
|
useEffect(() => {
|
|
476
495
|
const keyboardDidShowListener = Keyboard.addListener(
|
|
477
496
|
'keyboardDidShow',
|
|
@@ -516,7 +535,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
516
535
|
/>
|
|
517
536
|
</View>
|
|
518
537
|
<TouchableWithoutFeedback onPress={Keyboard.dismiss}>
|
|
519
|
-
<AddressFormContainer style={{
|
|
538
|
+
<AddressFormContainer style={{ overflow: 'scroll' }}>
|
|
520
539
|
<View>
|
|
521
540
|
<FormInput>
|
|
522
541
|
<AutocompleteInput>
|
|
@@ -544,7 +563,10 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
544
563
|
onPress={(data, details: any) => {
|
|
545
564
|
handleChangeAddress(data, details);
|
|
546
565
|
}}
|
|
547
|
-
query={{
|
|
566
|
+
query={{
|
|
567
|
+
key: googleMapsApiKey,
|
|
568
|
+
components: countryCode && countryCode !== '*' ? `country:${countryCode}` : ''
|
|
569
|
+
}}
|
|
548
570
|
fetchDetails
|
|
549
571
|
ref={googleInput}
|
|
550
572
|
textInputProps={{
|
|
@@ -563,6 +585,8 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
563
585
|
autoCorrect: false,
|
|
564
586
|
blurOnSubmit: false,
|
|
565
587
|
returnKeyType: 'next',
|
|
588
|
+
onFocus: () => setAutoCompleteInputFocused(true),
|
|
589
|
+
onBlur: () => setAutoCompleteInputFocused(false)
|
|
566
590
|
}}
|
|
567
591
|
onFail={(error) =>
|
|
568
592
|
setAlertState({
|
|
@@ -586,13 +610,14 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
586
610
|
textInput: {
|
|
587
611
|
borderWidth: 1,
|
|
588
612
|
borderRadius: 7.6,
|
|
589
|
-
borderColor: theme.colors.border,
|
|
613
|
+
borderColor: autoCompleteInputFocused ? theme.colors.primary : theme.colors.border,
|
|
590
614
|
flexGrow: 1,
|
|
591
615
|
fontSize: 15,
|
|
592
|
-
|
|
616
|
+
paddingLeft: 16,
|
|
617
|
+
paddingRight: 32,
|
|
593
618
|
minHeight: 50,
|
|
594
619
|
fontFamily: 'Poppins-Regular',
|
|
595
|
-
marginBottom: 24
|
|
620
|
+
marginBottom: 24
|
|
596
621
|
},
|
|
597
622
|
}}
|
|
598
623
|
/>
|
|
@@ -600,10 +625,10 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
600
625
|
/>
|
|
601
626
|
|
|
602
627
|
{(
|
|
603
|
-
(!isEditing && !isGuestUser
|
|
604
|
-
|
|
605
|
-
(isGuestUser
|
|
606
|
-
|
|
628
|
+
((!isEditing && !isGuestUser) ||
|
|
629
|
+
(isEditing && !isGuestUser)) ||
|
|
630
|
+
(isGuestUser)) &&
|
|
631
|
+
(
|
|
607
632
|
<View style={styles.pinIcon}>
|
|
608
633
|
<GPSButton
|
|
609
634
|
apiKey={googleMapsApiKey}
|
|
@@ -615,9 +640,10 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
615
640
|
}
|
|
616
641
|
}}
|
|
617
642
|
IconButton={<OIcon src={theme.images.general.pin} width={16} />}
|
|
643
|
+
isIntGeoCoder
|
|
618
644
|
/>
|
|
619
645
|
</View>
|
|
620
|
-
|
|
646
|
+
)}
|
|
621
647
|
</AutocompleteInput>
|
|
622
648
|
|
|
623
649
|
{(locationChange || formState.changes?.location) && (
|
|
@@ -675,6 +701,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
675
701
|
addressState?.address?.internal_number ||
|
|
676
702
|
''
|
|
677
703
|
}
|
|
704
|
+
isFocusHighlight
|
|
678
705
|
style={{
|
|
679
706
|
...styles.inputsStyle,
|
|
680
707
|
marginRight: showField('internal_number') && showField('zipcode') ? 24 : 0
|
|
@@ -721,6 +748,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
721
748
|
addressState.address.zipcode ||
|
|
722
749
|
''
|
|
723
750
|
}
|
|
751
|
+
isFocusHighlight
|
|
724
752
|
style={styles.inputsStyle}
|
|
725
753
|
forwardRef={zipCodeRef}
|
|
726
754
|
returnKeyType="next"
|
|
@@ -766,6 +794,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
766
794
|
''
|
|
767
795
|
}
|
|
768
796
|
multiline
|
|
797
|
+
isFocusHighlight
|
|
769
798
|
style={styles.textAreaStyles}
|
|
770
799
|
returnKeyType="done"
|
|
771
800
|
forwardRef={addressNotesRef}
|
|
@@ -841,6 +870,7 @@ const AddressFormUI = (props: AddressFormParams) => {
|
|
|
841
870
|
saveLocation={saveMapLocation}
|
|
842
871
|
setSaveLocation={setSaveMapLocation}
|
|
843
872
|
handleToggleMap={handleToggleMap}
|
|
873
|
+
isIntGeoCoder
|
|
844
874
|
/>
|
|
845
875
|
</GoogleMapContainer>
|
|
846
876
|
)}
|
|
@@ -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,13 +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
|
-
<Container
|
|
142
|
-
noPadding
|
|
145
|
+
<Container
|
|
143
146
|
refreshControl={
|
|
144
147
|
<RefreshControl
|
|
145
148
|
refreshing={refreshing}
|
|
@@ -147,17 +150,18 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
147
150
|
/>
|
|
148
151
|
}
|
|
149
152
|
>
|
|
150
|
-
{isProfile && (
|
|
151
|
-
<NavBar
|
|
152
|
-
title={t('SAVED_PLACES', 'My saved places')}
|
|
153
|
-
titleAlign={'center'}
|
|
154
|
-
onActionLeft={goToBack}
|
|
155
|
-
showCall={false}
|
|
156
|
-
style={{ paddingHorizontal: 40, paddingVertical: Platform.OS === 'ios' ? 0 : 20, marginTop: Platform.OS === 'ios' ? 0 : 30 }}
|
|
157
|
-
/>
|
|
158
|
-
)}
|
|
159
153
|
{(!addressList.loading || (isFromProductsList || isFromBusinesses || isFromProfile || isProfile)) && (
|
|
160
|
-
|
|
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
|
+
)}
|
|
161
165
|
{
|
|
162
166
|
route &&
|
|
163
167
|
(
|
|
@@ -173,8 +177,8 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
173
177
|
onActionLeft={() => goToBack()}
|
|
174
178
|
showCall={false}
|
|
175
179
|
btnStyle={{ paddingLeft: 0 }}
|
|
176
|
-
paddingTop={
|
|
177
|
-
style={{ marginTop:
|
|
180
|
+
paddingTop={10}
|
|
181
|
+
style={{ marginTop: 0 }}
|
|
178
182
|
titleWrapStyle={{ paddingHorizontal: 0 }}
|
|
179
183
|
titleStyle={{ marginLeft: 0, marginRight: 0 }}
|
|
180
184
|
/>
|
|
@@ -323,7 +327,8 @@ const AddressListUI = (props: AddressListParams) => {
|
|
|
323
327
|
/>
|
|
324
328
|
</>
|
|
325
329
|
)}
|
|
326
|
-
|
|
330
|
+
</>
|
|
331
|
+
|
|
327
332
|
)}
|
|
328
333
|
</Container>
|
|
329
334
|
)
|
|
@@ -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 =>
|