ordering-ui-react-native 0.15.96 → 0.15.97-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 -3
- package/src/DeliveryApp.tsx +43 -1
- package/src/components/ActiveOrders/index.tsx +61 -63
- package/src/components/ActiveOrders/styles.tsx +8 -14
- package/src/components/AddressForm/index.tsx +18 -2
- package/src/components/BusinessBasicInformation/index.tsx +11 -19
- package/src/components/BusinessController/index.tsx +16 -8
- package/src/components/BusinessInformation/index.tsx +14 -0
- package/src/components/BusinessTypeFilter/index.tsx +1 -2
- package/src/components/BusinessesListing/index.tsx +1 -1
- package/src/components/Checkout/index.tsx +2 -1
- package/src/components/DriverTips/index.tsx +11 -6
- package/src/components/LanguageSelector/index.tsx +21 -16
- package/src/components/LoginForm/index.tsx +120 -30
- package/src/components/LoginForm/styles.tsx +6 -0
- package/src/components/Messages/index.tsx +2 -2
- package/src/components/NotificationSetting/index.tsx +85 -0
- package/src/components/OrderDetails/index.tsx +7 -21
- package/src/components/OrdersOption/index.tsx +54 -56
- package/src/components/PaymentOptions/index.tsx +335 -365
- package/src/components/PaymentOptionsWebView/index.tsx +120 -121
- package/src/components/ReviewDriver/index.tsx +1 -1
- package/src/components/ReviewOrder/index.tsx +2 -1
- package/src/components/ReviewProducts/index.tsx +11 -0
- package/src/components/SignupForm/index.tsx +145 -61
- package/src/components/SingleProductReview/index.tsx +1 -1
- package/src/components/StripeElementsForm/index.tsx +25 -16
- package/src/components/StripeMethodForm/index.tsx +22 -24
- package/src/components/UpsellingProducts/index.tsx +1 -1
- package/src/components/UserProfileForm/index.tsx +63 -6
- package/src/components/UserProfileForm/styles.tsx +8 -0
- package/src/components/VerifyPhone/styles.tsx +1 -2
- package/src/components/shared/OBottomPopup.tsx +6 -2
- package/src/components/shared/OModal.tsx +1 -1
- package/src/index.tsx +2 -0
- package/src/navigators/CheckoutNavigator.tsx +6 -0
- package/src/navigators/HomeNavigator.tsx +6 -0
- package/src/pages/BusinessesListing.tsx +7 -6
- package/src/pages/MultiCheckout.tsx +31 -0
- package/src/pages/MultiOrdersDetails.tsx +27 -0
- package/src/pages/OrderDetails.tsx +1 -1
- package/src/pages/ReviewDriver.tsx +2 -2
- package/src/pages/ReviewOrder.tsx +2 -2
- package/src/theme.json +0 -1
- package/src/types/@fatnlazycat/react-native-recaptcha-v3/index.d.ts +1 -0
- package/src/types/index.tsx +18 -11
- package/src/utils/index.tsx +1 -2
- package/themes/business/index.tsx +4 -0
- package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +1 -1
- package/themes/business/src/components/Chat/index.tsx +14 -6
- package/themes/business/src/components/DriverMap/index.tsx +6 -5
- package/themes/business/src/components/DriverSchedule/index.tsx +71 -0
- package/themes/business/src/components/DriverSchedule/styles.tsx +6 -0
- package/themes/business/src/components/LoginForm/index.tsx +110 -74
- package/themes/business/src/components/LogoutButton/index.tsx +1 -1
- package/themes/business/src/components/MapView/index.tsx +1 -1
- package/themes/business/src/components/MessagesOption/index.tsx +11 -1
- package/themes/business/src/components/OrderDetails/Business.tsx +1 -1
- package/themes/business/src/components/OrderDetails/Delivery.tsx +3 -3
- package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +25 -18
- package/themes/business/src/components/OrdersListManager/index.tsx +10 -3
- package/themes/business/src/components/OrdersOption/index.tsx +65 -21
- package/themes/business/src/components/OrdersOption/styles.tsx +5 -1
- package/themes/business/src/components/OrdersOptionBusiness/index.tsx +15 -1
- package/themes/business/src/components/OrdersOptionCity/index.tsx +15 -1
- package/themes/business/src/components/OrdersOptionDate/index.tsx +19 -6
- package/themes/business/src/components/OrdersOptionDelivery/index.tsx +15 -1
- package/themes/business/src/components/OrdersOptionDriver/index.tsx +15 -1
- package/themes/business/src/components/OrdersOptionPaymethod/index.tsx +15 -1
- package/themes/business/src/components/OrdersOptionStatus/index.tsx +10 -1
- package/themes/business/src/components/PreviousMessages/index.tsx +1 -0
- package/themes/business/src/components/PreviousOrders/index.tsx +7 -7
- package/themes/business/src/components/ProductItemAccordion/index.tsx +5 -4
- package/themes/business/src/components/ReviewCustomer/index.tsx +1 -1
- package/themes/business/src/components/ScheduleBlocked/index.tsx +53 -0
- package/themes/business/src/components/UserFormDetails/index.tsx +5 -2
- package/themes/business/src/components/UserProfileForm/index.tsx +28 -4
- package/themes/business/src/components/shared/ODropDown.tsx +42 -8
- package/themes/business/src/components/shared/ODropDownCalendar.tsx +36 -7
- package/themes/business/src/components/shared/OModal.tsx +41 -38
- package/themes/business/src/types/index.tsx +14 -9
- 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/BusinessMenu/index.tsx +2 -1
- package/themes/kiosk/src/components/CartBottomSheet/index.tsx +9 -2
- package/themes/kiosk/src/components/CartContent/index.tsx +0 -11
- package/themes/kiosk/src/components/CartItem/index.tsx +4 -3
- package/themes/kiosk/src/components/CategoriesMenu/index.tsx +70 -31
- package/themes/kiosk/src/components/Checkout/index.tsx +18 -3
- package/themes/kiosk/src/components/CustomerName/index.tsx +0 -6
- package/themes/kiosk/src/components/DrawerView/index.tsx +1 -0
- package/themes/kiosk/src/components/DrawerView/styles.tsx +2 -2
- package/themes/kiosk/src/components/LoginForm/index.tsx +121 -10
- package/themes/kiosk/src/components/LoginForm/styles.tsx +5 -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/OrderDetails/index.tsx +2 -2
- package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
- package/themes/kiosk/src/components/PaymentOptions/index.tsx +1 -1
- package/themes/kiosk/src/components/ProductForm/index.tsx +6 -7
- package/themes/kiosk/src/components/UpsellingProducts/index.tsx +16 -5
- package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
- package/themes/kiosk/src/types/index.d.ts +3 -0
- package/themes/original/index.tsx +22 -0
- package/themes/original/src/components/ActiveOrders/index.tsx +15 -132
- package/themes/original/src/components/ActiveOrders/styles.tsx +0 -54
- package/themes/original/src/components/AddressForm/index.tsx +137 -134
- package/themes/original/src/components/AddressList/index.tsx +2 -2
- package/themes/original/src/components/AppleLogin/index.tsx +4 -4
- package/themes/original/src/components/BusinessBasicInformation/index.tsx +302 -160
- package/themes/original/src/components/BusinessBasicInformation/styles.tsx +6 -2
- package/themes/original/src/components/BusinessController/index.tsx +179 -96
- package/themes/original/src/components/BusinessController/styles.tsx +5 -0
- package/themes/original/src/components/BusinessItemAccordion/index.tsx +11 -8
- package/themes/original/src/components/BusinessItemAccordion/styles.tsx +3 -1
- package/themes/original/src/components/BusinessListingSearch/BusinessControllerSkeletons/index.tsx +57 -0
- package/themes/original/src/components/BusinessListingSearch/MaxSectionItem/index.tsx +59 -0
- package/themes/original/src/components/BusinessListingSearch/MaxSectionItem/styles.tsx +13 -0
- package/themes/original/src/components/BusinessListingSearch/index.tsx +106 -126
- package/themes/original/src/components/BusinessListingSearch/styles.tsx +18 -13
- package/themes/original/src/components/BusinessPreorder/index.tsx +1 -1
- package/themes/original/src/components/BusinessProductsCategories/index.tsx +2 -2
- package/themes/original/src/components/BusinessProductsList/CategoryDescription/index.tsx +44 -0
- package/themes/original/src/components/BusinessProductsList/SubcategoriesComponent/index.tsx +87 -0
- package/themes/original/src/components/BusinessProductsList/SubcategoriesComponent/styles.tsx +12 -0
- package/themes/original/src/components/BusinessProductsList/index.tsx +66 -73
- package/themes/original/src/components/BusinessProductsList/styles.tsx +0 -3
- package/themes/original/src/components/BusinessProductsListing/index.tsx +296 -178
- package/themes/original/src/components/BusinessProductsListing/styles.tsx +18 -0
- package/themes/original/src/components/BusinessReviews/index.tsx +6 -1
- package/themes/original/src/components/BusinessTypeFilter/index.tsx +106 -38
- package/themes/original/src/components/BusinessTypeFilter/styles.tsx +2 -0
- package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +561 -0
- package/themes/original/src/components/BusinessesListing/{styles.tsx → Layout/Appointment/styles.tsx} +24 -2
- package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +673 -0
- package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +137 -0
- package/themes/original/src/components/BusinessesListing/index.tsx +102 -464
- package/themes/original/src/components/Cart/index.tsx +82 -37
- package/themes/original/src/components/Cart/styles.tsx +4 -0
- package/themes/original/src/components/CartContent/index.tsx +22 -16
- package/themes/original/src/components/Checkout/index.tsx +107 -67
- package/themes/original/src/components/Checkout/styles.tsx +0 -1
- package/themes/original/src/components/DriverTips/index.tsx +11 -6
- package/themes/original/src/components/Favorite/index.tsx +92 -0
- package/themes/original/src/components/Favorite/styles.tsx +22 -0
- package/themes/original/src/components/FavoriteList/index.tsx +317 -0
- package/themes/original/src/components/FavoriteList/styles.tsx +5 -0
- package/themes/original/src/components/GPSButton/index.tsx +25 -17
- package/themes/original/src/components/GoogleMap/index.tsx +21 -12
- package/themes/original/src/components/HelpAccountAndPayment/index.tsx +8 -3
- package/themes/original/src/components/HelpGuide/index.tsx +8 -3
- package/themes/original/src/components/HelpOrder/index.tsx +8 -3
- package/themes/original/src/components/HighestRatedBusinesses/index.tsx +18 -1
- package/themes/original/src/components/LoginForm/Otp/index.tsx +3 -2
- package/themes/original/src/components/LoginForm/index.tsx +86 -43
- package/themes/original/src/components/Messages/index.tsx +17 -17
- package/themes/original/src/components/MomentSelector/index.tsx +197 -0
- package/themes/original/src/components/MomentSelector/styles.tsx +6 -0
- package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +243 -0
- package/themes/original/src/components/MultiCartsPaymethodsAndWallets/styles.tsx +46 -0
- package/themes/original/src/components/MultiCheckout/index.tsx +304 -0
- package/themes/original/src/components/MultiCheckout/styles.tsx +59 -0
- package/themes/original/src/components/MultiOrdersDetails/SingleOrderCard.tsx +372 -0
- package/themes/original/src/components/MultiOrdersDetails/index.tsx +262 -0
- package/themes/original/src/components/MultiOrdersDetails/styles.tsx +50 -0
- package/themes/original/src/components/MyOrders/index.tsx +132 -27
- package/themes/original/src/components/MyOrders/styles.tsx +8 -1
- package/themes/original/src/components/NavBar/index.tsx +11 -5
- package/themes/original/src/components/NotFoundSource/index.tsx +2 -1
- package/themes/original/src/components/OrderDetails/OrderHistory.tsx +167 -0
- package/themes/original/src/components/OrderDetails/index.tsx +138 -58
- package/themes/original/src/components/OrderDetails/styles.tsx +5 -2
- package/themes/original/src/components/OrderItAgain/index.tsx +73 -0
- package/themes/original/src/components/OrderItAgain/styles.tsx +10 -0
- package/themes/original/src/components/OrderProgress/index.tsx +8 -2
- package/themes/original/src/components/OrderSummary/index.tsx +2 -35
- package/themes/original/src/components/OrderTypeSelector/index.tsx +84 -36
- package/themes/original/src/components/OrderTypeSelector/styles.tsx +19 -1
- package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/index.tsx +140 -0
- package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/styles.tsx +6 -0
- package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/index.tsx +56 -0
- package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/styles.tsx +6 -0
- package/themes/original/src/components/OrdersOption/index.tsx +140 -46
- package/themes/original/src/components/OrdersOption/styles.tsx +4 -1
- package/themes/original/src/components/PaymentOptionWallet/index.tsx +15 -23
- package/themes/original/src/components/PaymentOptions/index.tsx +57 -37
- package/themes/original/src/components/PhoneInputNumber/index.tsx +4 -10
- package/themes/original/src/components/PlaceSpot/index.tsx +243 -47
- package/themes/original/src/components/PlaceSpot/styles.tsx +0 -2
- package/themes/original/src/components/PreviousOrders/index.tsx +18 -147
- package/themes/original/src/components/ProductForm/index.tsx +694 -647
- package/themes/original/src/components/ProductForm/styles.tsx +9 -7
- package/themes/original/src/components/ProductItemAccordion/index.tsx +38 -25
- package/themes/original/src/components/ProductOption/index.tsx +1 -1
- package/themes/original/src/components/ProfessionalFilter/index.tsx +128 -0
- package/themes/original/src/components/ProfessionalFilter/styles.tsx +0 -0
- package/themes/original/src/components/ProfessionalProfile/index.tsx +298 -0
- package/themes/original/src/components/ProfessionalProfile/styles.tsx +46 -0
- package/themes/original/src/components/ReviewDriver/index.tsx +6 -6
- package/themes/original/src/components/ReviewOrder/index.tsx +1 -1
- package/themes/original/src/components/ReviewTrigger/index.tsx +118 -0
- package/themes/original/src/components/ReviewTrigger/styles.tsx +34 -0
- package/themes/original/src/components/SearchBar/index.tsx +13 -5
- package/themes/original/src/components/ServiceForm/index.tsx +579 -0
- package/themes/original/src/components/ServiceForm/styles.tsx +50 -0
- package/themes/original/src/components/SignupForm/index.tsx +307 -159
- package/themes/original/src/components/SingleOrderCard/index.tsx +316 -0
- package/themes/original/src/components/SingleOrderCard/styles.tsx +54 -0
- package/themes/original/src/components/SingleProductCard/index.tsx +204 -95
- package/themes/original/src/components/SingleProductCard/styles.tsx +2 -2
- package/themes/original/src/components/StripeElementsForm/index.tsx +25 -9
- package/themes/original/src/components/StripeElementsForm/naked.tsx +2 -2
- package/themes/original/src/components/UpsellingProducts/index.tsx +7 -3
- package/themes/original/src/components/UserDetails/index.tsx +32 -18
- package/themes/original/src/components/UserFormDetails/index.tsx +108 -74
- package/themes/original/src/components/UserProfile/index.tsx +4 -0
- package/themes/original/src/components/UserProfileForm/index.tsx +15 -10
- package/themes/original/src/components/UserVerification/index.tsx +178 -192
- package/themes/original/src/components/WalletTransactions/index.tsx +76 -0
- package/themes/original/src/components/WalletTransactions/styles.tsx +13 -0
- package/themes/original/src/components/Wallets/index.tsx +176 -162
- package/themes/original/src/components/Wallets/styles.tsx +10 -8
- package/themes/original/src/components/shared/OBottomPopup.tsx +47 -14
- package/themes/original/src/components/shared/OButton.tsx +10 -3
- package/themes/original/src/components/shared/OInput.tsx +3 -2
- package/themes/original/src/components/shared/OModal.tsx +4 -2
- package/themes/original/src/layouts/FloatingBottomContainer.tsx +5 -1
- package/themes/original/src/types/index.tsx +200 -47
- package/themes/original/src/utils/index.tsx +77 -0
- package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
|
@@ -7,7 +7,6 @@ import {
|
|
|
7
7
|
useConfirmSetupIntent,
|
|
8
8
|
createPaymentMethod
|
|
9
9
|
} from '@stripe/stripe-react-native';
|
|
10
|
-
import configs from '../../config.json'
|
|
11
10
|
import { ErrorMessage } from './styles';
|
|
12
11
|
|
|
13
12
|
import { StripeElementsForm as StripeFormController } from './naked';
|
|
@@ -26,7 +25,8 @@ const StripeElementsFormUI = (props: any) => {
|
|
|
26
25
|
methodsPay,
|
|
27
26
|
paymethod,
|
|
28
27
|
onCancel,
|
|
29
|
-
cart
|
|
28
|
+
cart,
|
|
29
|
+
merchantId
|
|
30
30
|
} = props;
|
|
31
31
|
|
|
32
32
|
const theme = useTheme();
|
|
@@ -54,17 +54,25 @@ const StripeElementsFormUI = (props: any) => {
|
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
if (user?.address) {
|
|
57
|
-
|
|
58
|
-
|
|
57
|
+
billingDetails.address = {
|
|
58
|
+
line1: user?.address
|
|
59
|
+
}
|
|
60
|
+
}
|
|
59
61
|
|
|
60
62
|
const createPayMethod = async () => {
|
|
61
|
-
const params: any = {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
63
|
+
const params: any = { paymentMethodType: 'Card', paymentMethodData: {} }
|
|
64
|
+
if (Object.keys(billingDetails).length > 0) {
|
|
65
|
+
params.paymentMethodData.billingDetails = {...billingDetails, token: card?.last4}
|
|
66
|
+
}
|
|
65
67
|
try {
|
|
66
68
|
setCreatePmLoading(true)
|
|
67
|
-
const { paymentMethod } = await createPaymentMethod(params);
|
|
69
|
+
const { paymentMethod, error } = await createPaymentMethod(params);
|
|
70
|
+
|
|
71
|
+
if (error) {
|
|
72
|
+
setErrors(error?.message);
|
|
73
|
+
setCreatePmLoading(false)
|
|
74
|
+
return
|
|
75
|
+
}
|
|
68
76
|
|
|
69
77
|
setCreatePmLoading(false)
|
|
70
78
|
handleSource && handleSource({
|
|
@@ -87,10 +95,10 @@ const StripeElementsFormUI = (props: any) => {
|
|
|
87
95
|
createPayMethod();
|
|
88
96
|
return
|
|
89
97
|
}
|
|
90
|
-
const params: any = {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
98
|
+
const params: any = { paymentMethodType: 'Card', paymentMethodData: {} }
|
|
99
|
+
if (Object.keys(billingDetails).length > 0) {
|
|
100
|
+
params.paymentMethodData.billingDetails = {...billingDetails, token: card?.last4}
|
|
101
|
+
}
|
|
94
102
|
try {
|
|
95
103
|
const { setupIntent, error } = await confirmSetupIntent(requirements, params);
|
|
96
104
|
|
|
@@ -126,12 +134,13 @@ const StripeElementsFormUI = (props: any) => {
|
|
|
126
134
|
<View style={styles.container}>
|
|
127
135
|
{publicKey ? (
|
|
128
136
|
<View style={{ flex: 1 }}>
|
|
129
|
-
<StripeProvider
|
|
137
|
+
<StripeProvider
|
|
130
138
|
publishableKey={publicKey}
|
|
131
|
-
merchantIdentifier={`merchant.${
|
|
139
|
+
merchantIdentifier={`merchant.${merchantId}`}
|
|
140
|
+
urlScheme={merchantId}
|
|
132
141
|
>
|
|
133
142
|
{methodsPay?.includes(paymethod) ? (
|
|
134
|
-
<StripeMethodForm
|
|
143
|
+
<StripeMethodForm
|
|
135
144
|
handleSource={handleSource}
|
|
136
145
|
onCancel={onCancel}
|
|
137
146
|
cart={cart}
|
|
@@ -102,7 +102,7 @@ export const StripeMethodForm = (props: StripeMethodFormParams) => {
|
|
|
102
102
|
shippingMethods: [
|
|
103
103
|
{
|
|
104
104
|
amount: cart?.balance?.toString() ?? cart?.total?.toString?.(),
|
|
105
|
-
identifier: '
|
|
105
|
+
identifier: 'standard',
|
|
106
106
|
label: 'Courier',
|
|
107
107
|
detail: 'Delivery',
|
|
108
108
|
type: 'final',
|
|
@@ -125,13 +125,12 @@ export const StripeMethodForm = (props: StripeMethodFormParams) => {
|
|
|
125
125
|
last4: paymentMethod.Card.last4
|
|
126
126
|
}
|
|
127
127
|
})
|
|
128
|
-
onCancel()
|
|
129
128
|
}
|
|
130
129
|
}
|
|
131
130
|
|
|
132
131
|
return (
|
|
133
132
|
<>
|
|
134
|
-
{paymethod === 'google_pay'
|
|
133
|
+
{paymethod === 'google_pay' ? (
|
|
135
134
|
<View>
|
|
136
135
|
<OButton
|
|
137
136
|
textStyle={{
|
|
@@ -145,27 +144,26 @@ export const StripeMethodForm = (props: StripeMethodFormParams) => {
|
|
|
145
144
|
style={{ marginTop: 20 }}
|
|
146
145
|
/>
|
|
147
146
|
</View>
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
// )}
|
|
147
|
+
) : (
|
|
148
|
+
<View>
|
|
149
|
+
{isApplePaySupported ? (
|
|
150
|
+
<>
|
|
151
|
+
<OText>{t('APPLE_PAY_PAYMENT', 'Apple pay payment')}</OText>
|
|
152
|
+
<ApplePayButton
|
|
153
|
+
onPress={pay}
|
|
154
|
+
type="plain"
|
|
155
|
+
buttonStyle="black"
|
|
156
|
+
borderRadius={4}
|
|
157
|
+
style={{
|
|
158
|
+
width: '100%',
|
|
159
|
+
height: 50,
|
|
160
|
+
}}
|
|
161
|
+
/>
|
|
162
|
+
</>
|
|
163
|
+
) : (
|
|
164
|
+
<OText>{t('APPLE_PAY_NOT_SUPPORTED', 'Apple pay not supported')}</OText>
|
|
165
|
+
)}
|
|
166
|
+
</View>
|
|
169
167
|
)}
|
|
170
168
|
<Spinner
|
|
171
169
|
visible={loadingGooglePayment}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React, { useEffect, useState } from 'react';
|
|
2
2
|
import {
|
|
3
|
+
UserFormDetails as UserProfileController,
|
|
3
4
|
useSession,
|
|
4
5
|
useLanguage,
|
|
5
6
|
} from 'ordering-components/native';
|
|
@@ -13,6 +14,7 @@ import MaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityI
|
|
|
13
14
|
import Ionicons from 'react-native-vector-icons/Ionicons'
|
|
14
15
|
|
|
15
16
|
import {
|
|
17
|
+
OAlert,
|
|
16
18
|
OIcon,
|
|
17
19
|
OText
|
|
18
20
|
} from '../shared';
|
|
@@ -20,18 +22,24 @@ import {
|
|
|
20
22
|
Container,
|
|
21
23
|
Names,
|
|
22
24
|
UserInfoContainer,
|
|
23
|
-
LanguageContainer
|
|
25
|
+
LanguageContainer,
|
|
26
|
+
RemoveAccountContainer
|
|
24
27
|
} from './styles';
|
|
25
28
|
|
|
26
|
-
export const
|
|
29
|
+
export const UserProfileFormUI = (props: ProfileParams) => {
|
|
27
30
|
const {
|
|
28
|
-
navigation
|
|
31
|
+
navigation,
|
|
32
|
+
handleRemoveAccount,
|
|
33
|
+
removeAccountState
|
|
29
34
|
} = props;
|
|
30
35
|
|
|
31
36
|
const theme = useTheme();
|
|
32
|
-
const [{ user }] = useSession();
|
|
37
|
+
const [{ user }, { logout }] = useSession();
|
|
33
38
|
const [, t] = useLanguage();
|
|
34
39
|
|
|
40
|
+
const isAdmin = user?.level === 0
|
|
41
|
+
const [confirm, setConfirm] = useState<any>({ open: false, content: null, handleOnAccept: null, id: null, title: null })
|
|
42
|
+
|
|
35
43
|
const styles = StyleSheet.create({
|
|
36
44
|
linkStyle: {
|
|
37
45
|
color: theme.colors.primary,
|
|
@@ -44,6 +52,9 @@ export const UserProfileForm = (props: ProfileParams) => {
|
|
|
44
52
|
},
|
|
45
53
|
iconStyle: {
|
|
46
54
|
fontSize: 24
|
|
55
|
+
},
|
|
56
|
+
removeAccount: {
|
|
57
|
+
flexDirection: 'row'
|
|
47
58
|
}
|
|
48
59
|
});
|
|
49
60
|
|
|
@@ -78,13 +89,31 @@ export const UserProfileForm = (props: ProfileParams) => {
|
|
|
78
89
|
},
|
|
79
90
|
chevronUp: {
|
|
80
91
|
display: 'none'
|
|
81
|
-
}
|
|
92
|
+
},
|
|
82
93
|
})
|
|
83
94
|
|
|
84
95
|
const onRedirect = (route: string, params?: any) => {
|
|
85
96
|
navigation.navigate(route, params)
|
|
86
97
|
}
|
|
87
98
|
|
|
99
|
+
const onRemoveAccount = () => {
|
|
100
|
+
setConfirm({
|
|
101
|
+
open: true,
|
|
102
|
+
content: [t('QUESTION_REMOVE_ACCOUNT', 'Are you sure that you want to remove your account?')],
|
|
103
|
+
title: t('ACCOUNT_ALERT', 'Account alert'),
|
|
104
|
+
handleOnAccept: () => {
|
|
105
|
+
setConfirm({ ...confirm, open: false })
|
|
106
|
+
handleRemoveAccount && handleRemoveAccount(user?.id)
|
|
107
|
+
}
|
|
108
|
+
})
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
useEffect(() => {
|
|
112
|
+
if (removeAccountState?.result === 'OK') {
|
|
113
|
+
logout()
|
|
114
|
+
}
|
|
115
|
+
}, [removeAccountState])
|
|
116
|
+
|
|
88
117
|
return (
|
|
89
118
|
<Container>
|
|
90
119
|
<View>
|
|
@@ -134,7 +163,35 @@ export const UserProfileForm = (props: ProfileParams) => {
|
|
|
134
163
|
<LanguageSelector pickerStyle={_pickerStyle} />
|
|
135
164
|
</LanguageContainer>
|
|
136
165
|
<LogoutButton />
|
|
166
|
+
<RemoveAccountContainer>
|
|
167
|
+
<TouchableOpacity
|
|
168
|
+
disabled={isAdmin}
|
|
169
|
+
style={styles.removeAccount}
|
|
170
|
+
onPress={() => onRemoveAccount()}
|
|
171
|
+
activeOpacity={0.7}
|
|
172
|
+
>
|
|
173
|
+
<OIcon src={theme.images.general.user} width={20} color={theme.colors.black} style={{ marginEnd: 14 }} />
|
|
174
|
+
<OText size={14} weight={'400'} style={{ opacity: isAdmin ? 0.5 : 1, top: 1 }} color={theme.colors.red}>{t('REMOVE_ACCOUNT', 'Remove account')}</OText>
|
|
175
|
+
</TouchableOpacity>
|
|
176
|
+
</RemoveAccountContainer>
|
|
137
177
|
</View>
|
|
178
|
+
<OAlert
|
|
179
|
+
open={confirm.open}
|
|
180
|
+
title={confirm.title}
|
|
181
|
+
content={confirm.content}
|
|
182
|
+
onAccept={confirm.handleOnAccept}
|
|
183
|
+
onCancel={() => setConfirm({ ...confirm, open: false, title: null })}
|
|
184
|
+
onClose={() => setConfirm({ ...confirm, open: false, title: null })}
|
|
185
|
+
/>
|
|
138
186
|
</Container>
|
|
139
187
|
);
|
|
140
188
|
};
|
|
189
|
+
|
|
190
|
+
export const UserProfileForm = (props: any) => {
|
|
191
|
+
const profileProps = {
|
|
192
|
+
...props,
|
|
193
|
+
UIComponent: UserProfileFormUI,
|
|
194
|
+
useSessionUser: true
|
|
195
|
+
};
|
|
196
|
+
return <UserProfileController {...profileProps} />;
|
|
197
|
+
};
|
|
@@ -35,3 +35,11 @@ export const LanguageContainer = styled.View`
|
|
|
35
35
|
align-items: center;
|
|
36
36
|
margin-bottom: 10px;
|
|
37
37
|
`
|
|
38
|
+
|
|
39
|
+
export const RemoveAccountContainer = styled.View`
|
|
40
|
+
flex-direction: row;
|
|
41
|
+
justify-content: flex-start;
|
|
42
|
+
align-items: center;
|
|
43
|
+
margin-bottom: 10px;
|
|
44
|
+
margin-top: 15px;
|
|
45
|
+
`
|
|
@@ -2,7 +2,7 @@ import styled from 'styled-components/native';
|
|
|
2
2
|
|
|
3
3
|
export const Container = styled.View`
|
|
4
4
|
width: 100%;
|
|
5
|
-
padding: 0
|
|
5
|
+
padding: 0 30px;
|
|
6
6
|
`
|
|
7
7
|
|
|
8
8
|
export const CountDownContainer = styled.View`
|
|
@@ -20,7 +20,6 @@ export const ResendSection = styled.View`
|
|
|
20
20
|
display: flex;
|
|
21
21
|
flex-direction: row;
|
|
22
22
|
justify-content: center;
|
|
23
|
-
flex-wrap: wrap;
|
|
24
23
|
`
|
|
25
24
|
|
|
26
25
|
export const WrappCountdown = styled.View`
|
|
@@ -4,14 +4,18 @@ const deviceHeight = Dimensions.get('window').height
|
|
|
4
4
|
|
|
5
5
|
interface Props {
|
|
6
6
|
open: boolean;
|
|
7
|
+
containerStyle: any;
|
|
7
8
|
title?: string;
|
|
9
|
+
titleStyle?: any;
|
|
8
10
|
children?: any;
|
|
9
11
|
onClose?: any;
|
|
10
12
|
}
|
|
11
13
|
const OBottomPopup = (props: Props) => {
|
|
12
14
|
const {
|
|
13
15
|
open,
|
|
16
|
+
containerStyle,
|
|
14
17
|
title,
|
|
18
|
+
titleStyle,
|
|
15
19
|
onClose,
|
|
16
20
|
children
|
|
17
21
|
} = props
|
|
@@ -29,9 +33,9 @@ const OBottomPopup = (props: Props) => {
|
|
|
29
33
|
>
|
|
30
34
|
<View style={styles.touchableOutsideStyle} />
|
|
31
35
|
</TouchableWithoutFeedback>
|
|
32
|
-
<View style={styles.bottomContainer}>
|
|
36
|
+
<View style={{ ...styles.bottomContainer, ...containerStyle }}>
|
|
33
37
|
<View>
|
|
34
|
-
<Text style={styles.titleStyle}>
|
|
38
|
+
<Text style={{ ...styles.titleStyle, ...titleStyle }}>
|
|
35
39
|
{title}
|
|
36
40
|
</Text>
|
|
37
41
|
{children}
|
|
@@ -78,7 +78,7 @@ const OModal = (props: Props): React.ReactElement => {
|
|
|
78
78
|
animationType="slide"
|
|
79
79
|
transparent={isTransparent}
|
|
80
80
|
visible={open}
|
|
81
|
-
onRequestClose={() => { onClose() }}
|
|
81
|
+
onRequestClose={() => { onClose && onClose() }}
|
|
82
82
|
style={{ height: '100%', flex: 1, position: 'absolute', ...style, zIndex: 9999 }}
|
|
83
83
|
>
|
|
84
84
|
{isAvoidKeyBoardView ? (
|
package/src/index.tsx
CHANGED
|
@@ -36,6 +36,7 @@ import { LogoutButton } from './components/LogoutButton';
|
|
|
36
36
|
import { Messages } from './components/Messages';
|
|
37
37
|
import { MomentOption } from './components/MomentOption';
|
|
38
38
|
import NavBar from './components/NavBar';
|
|
39
|
+
import { NotificationSetting } from './components/NotificationSetting'
|
|
39
40
|
import { NotFoundSource } from './components/NotFoundSource';
|
|
40
41
|
import { OrderCreating } from './components/OrderCreating';
|
|
41
42
|
import { OrderDetails } from './components/OrderDetails';
|
|
@@ -136,6 +137,7 @@ export {
|
|
|
136
137
|
Messages,
|
|
137
138
|
MomentOption,
|
|
138
139
|
NavBar,
|
|
140
|
+
NotificationSetting,
|
|
139
141
|
NotFoundSource,
|
|
140
142
|
OrderCreating,
|
|
141
143
|
OrderDetails,
|
|
@@ -6,6 +6,7 @@ import AddressForm from '../pages/AddressForm'
|
|
|
6
6
|
import CartList from '../pages/CartList'
|
|
7
7
|
import CheckoutPage from '../pages/Checkout';
|
|
8
8
|
import BusinessProductsList from '../pages/BusinessProductsList';
|
|
9
|
+
import MultiCheckout from '../pages/MultiCheckout';
|
|
9
10
|
|
|
10
11
|
const Stack = createStackNavigator();
|
|
11
12
|
|
|
@@ -53,6 +54,11 @@ const CheckoutNavigator = (props: any) => {
|
|
|
53
54
|
component={AddressForm}
|
|
54
55
|
options={{ headerShown: false }}
|
|
55
56
|
/>
|
|
57
|
+
<Stack.Screen
|
|
58
|
+
name="MultiCheckout"
|
|
59
|
+
children={() => <MultiCheckout {...checkoutProps} />}
|
|
60
|
+
options={{ headerShown: false }}
|
|
61
|
+
/>
|
|
56
62
|
</Stack.Navigator>
|
|
57
63
|
);
|
|
58
64
|
}
|
|
@@ -23,6 +23,7 @@ import HelpAccountAndPayment from '../pages/HelpAccountAndPayment'
|
|
|
23
23
|
import Sessions from '../pages/Sessions';
|
|
24
24
|
import Splash from '../pages/Splash';
|
|
25
25
|
import ProductDetails from '../pages/ProductDetails';
|
|
26
|
+
import MultiOrdersDetails from '../pages/MultiOrdersDetails';
|
|
26
27
|
const Stack = createStackNavigator();
|
|
27
28
|
|
|
28
29
|
const HomeNavigator = (e : any) => {
|
|
@@ -170,6 +171,11 @@ const HomeNavigator = (e : any) => {
|
|
|
170
171
|
component={Sessions}
|
|
171
172
|
options={{ headerShown: false }}
|
|
172
173
|
/>
|
|
174
|
+
<Stack.Screen
|
|
175
|
+
name="MultiOrdersDetails"
|
|
176
|
+
component={MultiOrdersDetails}
|
|
177
|
+
options={{ headerShown: false }}
|
|
178
|
+
/>
|
|
173
179
|
</>
|
|
174
180
|
)}
|
|
175
181
|
</>
|
|
@@ -1,24 +1,25 @@
|
|
|
1
|
-
import React, {useEffect} from 'react'
|
|
1
|
+
import React, { useEffect } from 'react'
|
|
2
2
|
import { BusinessesListing as BusinessListingController } from '../components/BusinessesListing'
|
|
3
3
|
import styled from 'styled-components/native'
|
|
4
4
|
import { useTheme } from 'styled-components/native'
|
|
5
5
|
|
|
6
6
|
const BusinessesListing = (props: any) => {
|
|
7
7
|
const theme = useTheme()
|
|
8
|
-
const businessId =
|
|
8
|
+
const businessId = props.route.params?.businessId
|
|
9
9
|
const categoryId = props.route.params?.categoryId
|
|
10
|
-
const productId =
|
|
11
|
-
const store =
|
|
10
|
+
const productId = props.route.params?.productId
|
|
11
|
+
const store = props.route.params?.store
|
|
12
12
|
|
|
13
13
|
useEffect(() => {
|
|
14
|
-
if(store){
|
|
15
|
-
props.navigation.navigate('Business', {store,businessId,categoryId,productId})
|
|
14
|
+
if (store) {
|
|
15
|
+
props.navigation.navigate('Business', { store, businessId, categoryId, productId })
|
|
16
16
|
return
|
|
17
17
|
}
|
|
18
18
|
}, [businessId, categoryId, productId, store])
|
|
19
19
|
|
|
20
20
|
const BusinessesListingProps = {
|
|
21
21
|
...props,
|
|
22
|
+
navigation: props?.navigation,
|
|
22
23
|
isSearchByName: true,
|
|
23
24
|
isSearchByDescription: true,
|
|
24
25
|
propsToFetch: ['id', 'name', 'header', 'logo', 'ribbon', 'location', 'schedule', 'open', 'delivery_price', 'distance', 'delivery_time', 'pickup_time', 'reviews', 'featured', 'offers', 'food', 'laundry', 'alcohol', 'groceries', 'slug'],
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { Platform, KeyboardAvoidingView, StyleSheet } from 'react-native'
|
|
3
|
+
import { MultiCheckout as MultiCheckoutController } from '../../themes/original/src/components/MultiCheckout'
|
|
4
|
+
|
|
5
|
+
const MultiCheckout = (props: any) => {
|
|
6
|
+
const multiCheckoutProps = {
|
|
7
|
+
...props,
|
|
8
|
+
onPlaceOrderClick: (orderUuids: any) => {
|
|
9
|
+
props.navigation.navigate('MultiOrdersDetails', { orderUuids: orderUuids, isFromMultiCheckout: true })
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
return (
|
|
14
|
+
<KeyboardAvoidingView
|
|
15
|
+
enabled
|
|
16
|
+
behavior={Platform.OS === 'ios' ? 'padding' : 'height'}
|
|
17
|
+
style={styles.container}
|
|
18
|
+
>
|
|
19
|
+
<MultiCheckoutController {...multiCheckoutProps} />
|
|
20
|
+
</KeyboardAvoidingView>
|
|
21
|
+
)
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const styles = StyleSheet.create({
|
|
25
|
+
container: {
|
|
26
|
+
flexGrow: 1,
|
|
27
|
+
paddingBottom: 70,
|
|
28
|
+
},
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
export default MultiCheckout
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { Platform } from 'react-native'
|
|
3
|
+
import { MultiOrdersDetails as MultiOrdersDetailsController } from '../../themes/original/src/components/MultiOrdersDetails'
|
|
4
|
+
import styled from 'styled-components/native';
|
|
5
|
+
|
|
6
|
+
const SafeAreaContainer = styled.SafeAreaView`
|
|
7
|
+
flex: 1;
|
|
8
|
+
background-color: ${(props: any) => props.theme.colors.backgroundPage};
|
|
9
|
+
padding-top: ${Platform.OS === 'ios' ? '0px' : '24px'};
|
|
10
|
+
`;
|
|
11
|
+
|
|
12
|
+
const MultiOrdersDetails = ({ navigation, route }: any) => {
|
|
13
|
+
const multiOrdersDetailsProps = {
|
|
14
|
+
navigation,
|
|
15
|
+
orderUuids: route.params?.orderUuids || [],
|
|
16
|
+
isFromMultiCheckout: route.params?.isFromMultiCheckout,
|
|
17
|
+
onRedirectPage: () => navigation.navigate('BusinessList')
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
return (
|
|
21
|
+
<SafeAreaContainer>
|
|
22
|
+
<MultiOrdersDetailsController {...multiOrdersDetailsProps} />
|
|
23
|
+
</SafeAreaContainer>
|
|
24
|
+
)
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export default MultiOrdersDetails
|
|
@@ -2,7 +2,7 @@ import React from 'react'
|
|
|
2
2
|
import { OrderDetails as OrderDetailsController } from '../components/OrderDetails'
|
|
3
3
|
import { SafeAreaContainer } from '../layouts/SafeAreaContainer'
|
|
4
4
|
|
|
5
|
-
const OrderDetails = ({ navigation, route }
|
|
5
|
+
const OrderDetails = ({ navigation, route }: any) => {
|
|
6
6
|
const orderDetailsProps = {
|
|
7
7
|
navigation,
|
|
8
8
|
orderId: route.params?.orderId,
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
import { Platform } from 'react-native';
|
|
3
3
|
import styled from 'styled-components/native';
|
|
4
|
-
import {ReviewDriver as ReviewDriverController} from '../components/ReviewDriver'
|
|
4
|
+
import { ReviewDriver as ReviewDriverController } from '../components/ReviewDriver'
|
|
5
5
|
import { SafeAreaContainer } from '../layouts/SafeAreaContainer';
|
|
6
6
|
|
|
7
7
|
const KeyboardView = styled.KeyboardAvoidingView`
|
|
8
8
|
flex: 1;
|
|
9
9
|
`;
|
|
10
10
|
|
|
11
|
-
const ReviewDriver = ({navigation, route}
|
|
11
|
+
const ReviewDriver = ({ navigation, route }: any) => {
|
|
12
12
|
const reviewDriverProps = {
|
|
13
13
|
navigation,
|
|
14
14
|
order: route?.params?.order,
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
import { Platform } from 'react-native';
|
|
3
3
|
import styled from 'styled-components/native';
|
|
4
|
-
import {ReviewOrder as ReviewOrderController} from '../components/ReviewOrder'
|
|
4
|
+
import { ReviewOrder as ReviewOrderController } from '../components/ReviewOrder'
|
|
5
5
|
import { SafeAreaContainer } from '../layouts/SafeAreaContainer';
|
|
6
6
|
|
|
7
7
|
const KeyboardView = styled.KeyboardAvoidingView`
|
|
8
8
|
flex: 1;
|
|
9
9
|
`;
|
|
10
10
|
|
|
11
|
-
const ReviewOrder = ({navigation, route}
|
|
11
|
+
const ReviewOrder = ({ navigation, route }: any) => {
|
|
12
12
|
const reviewOrderProps = {
|
|
13
13
|
navigation,
|
|
14
14
|
order: route?.params?.order,
|
package/src/theme.json
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
declare module '@fatnlazycat/react-native-recaptcha-v3'
|
package/src/types/index.tsx
CHANGED
|
@@ -17,6 +17,8 @@ export interface LoginParams {
|
|
|
17
17
|
handleSendVerifyCode?: any;
|
|
18
18
|
handleCheckPhoneCode?: any;
|
|
19
19
|
notificationState?: any;
|
|
20
|
+
handleReCaptcha?: (token: string) => void;
|
|
21
|
+
enableReCaptcha?: any;
|
|
20
22
|
}
|
|
21
23
|
export interface ProfileParams {
|
|
22
24
|
navigation?: any;
|
|
@@ -31,6 +33,8 @@ export interface ProfileParams {
|
|
|
31
33
|
validationFields?: any;
|
|
32
34
|
showField?: any;
|
|
33
35
|
isRequiredField?: any;
|
|
36
|
+
handleRemoveAccount?: any,
|
|
37
|
+
removeAccountState?: any
|
|
34
38
|
}
|
|
35
39
|
|
|
36
40
|
export interface AddressListParams {
|
|
@@ -97,6 +101,8 @@ export interface SignupParams {
|
|
|
97
101
|
handleSendVerifyCode?: any;
|
|
98
102
|
handleCheckPhoneCode?: any;
|
|
99
103
|
notificationState?: any;
|
|
104
|
+
enableReCaptcha?: boolean;
|
|
105
|
+
handleReCaptcha?: (token: string) => void;
|
|
100
106
|
}
|
|
101
107
|
|
|
102
108
|
export interface PhoneInputParams {
|
|
@@ -143,8 +149,9 @@ export interface BusinessControllerParams {
|
|
|
143
149
|
orderType?: any;
|
|
144
150
|
handleClick?: any;
|
|
145
151
|
isBusinessOpen?: boolean;
|
|
146
|
-
businessWillCloseSoonMinutes?: number
|
|
147
|
-
isBusinessClose?: number
|
|
152
|
+
businessWillCloseSoonMinutes?: number;
|
|
153
|
+
isBusinessClose?: number;
|
|
154
|
+
getBusinessOffer: any;
|
|
148
155
|
}
|
|
149
156
|
export interface BusinessProductsListingParams {
|
|
150
157
|
navigation?: any;
|
|
@@ -245,8 +252,8 @@ export interface OrdersOptionParams {
|
|
|
245
252
|
navigation?: any,
|
|
246
253
|
loadOrders?: any,
|
|
247
254
|
setOrderList?: any,
|
|
248
|
-
setOrdersLength?: ({activeOrdersLength, previousOrdersLength}
|
|
249
|
-
ordersLength: {activeOrdersLength: number, previousOrdersLength: number}
|
|
255
|
+
setOrdersLength?: ({ activeOrdersLength, previousOrdersLength }: { activeOrdersLength: number, previousOrdersLength: number }) => void,
|
|
256
|
+
ordersLength: { activeOrdersLength: number, previousOrdersLength: number }
|
|
250
257
|
}
|
|
251
258
|
export interface ActiveOrdersParams {
|
|
252
259
|
orders?: any,
|
|
@@ -344,7 +351,7 @@ export interface MessagesParams {
|
|
|
344
351
|
messages?: any,
|
|
345
352
|
message?: string,
|
|
346
353
|
image?: string,
|
|
347
|
-
messagesToShow?: any
|
|
354
|
+
messagesToShow?: any,
|
|
348
355
|
sendMessage?: any,
|
|
349
356
|
handleSend?: () => {},
|
|
350
357
|
setImage?: (image: string | null) => {},
|
|
@@ -413,7 +420,7 @@ export interface UpsellingProductsParams {
|
|
|
413
420
|
setOpenUpselling?: any;
|
|
414
421
|
onRedirect?: any;
|
|
415
422
|
businessId?: number;
|
|
416
|
-
cartProducts?: Array<any>;
|
|
423
|
+
cartProducts?: Array<any>;
|
|
417
424
|
handleUpsellingPage: () => void;
|
|
418
425
|
openUpselling: boolean;
|
|
419
426
|
canOpenUpselling?: boolean;
|
|
@@ -421,16 +428,16 @@ export interface UpsellingProductsParams {
|
|
|
421
428
|
}
|
|
422
429
|
|
|
423
430
|
export interface GoogleMapsParams {
|
|
424
|
-
location: {lat: number, lng: number}
|
|
425
|
-
handleChangeAddressMap?: (address
|
|
426
|
-
setErrors?: (error
|
|
431
|
+
location: { lat: number, lng: number }
|
|
432
|
+
handleChangeAddressMap?: (address: any, details: any) => void
|
|
433
|
+
setErrors?: (error: string) => void
|
|
427
434
|
maxLimitLocation?: number
|
|
428
435
|
readOnly?: boolean
|
|
429
436
|
markerTitle?: string,
|
|
430
437
|
saveLocation?: boolean,
|
|
431
438
|
isSetInputs?: boolean,
|
|
432
439
|
locations?: Array<any>,
|
|
433
|
-
setSaveLocation?: (val
|
|
440
|
+
setSaveLocation?: (val: boolean) => void,
|
|
434
441
|
handleToggleMap?: () => void
|
|
435
442
|
}
|
|
436
443
|
|
|
@@ -478,7 +485,7 @@ export interface HelpAccountAndPaymentParams {
|
|
|
478
485
|
|
|
479
486
|
export interface StripeMethodFormParams {
|
|
480
487
|
cart: any;
|
|
481
|
-
handleSource: ({id, card}
|
|
488
|
+
handleSource: ({ id, card }: { id: string, card: any }) => void;
|
|
482
489
|
onCancel: () => void;
|
|
483
490
|
setErrors: (error: string) => void;
|
|
484
491
|
paymethod: string;
|