ordering-ui-react-native 0.17.56 → 0.17.57-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.
Files changed (211) hide show
  1. package/package.json +8 -7
  2. package/src/DeliveryApp.tsx +43 -1
  3. package/src/components/BusinessesListing/index.tsx +1 -1
  4. package/src/components/OrderCreating/index.tsx +1 -21
  5. package/src/components/PaymentOptionsWebView/index.tsx +29 -8
  6. package/src/components/PhoneInputNumber/index.tsx +6 -2
  7. package/src/components/StripeMethodForm/index.tsx +136 -102
  8. package/src/components/VerifyPhone/styles.tsx +1 -2
  9. package/src/components/shared/OToast.tsx +4 -4
  10. package/src/types/index.tsx +5 -0
  11. package/src/utils/index.tsx +5 -0
  12. package/themes/business/index.tsx +2 -0
  13. package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +265 -240
  14. package/themes/business/src/components/AcceptOrRejectOrder/styles.tsx +6 -4
  15. package/themes/business/src/components/BusinessController/index.tsx +0 -1
  16. package/themes/business/src/components/Chat/index.tsx +125 -113
  17. package/themes/business/src/components/DriverMap/index.tsx +17 -6
  18. package/themes/business/src/components/DriverSchedule/index.tsx +42 -5
  19. package/themes/business/src/components/GoogleMap/index.tsx +58 -57
  20. package/themes/business/src/components/LoginForm/Otp/index.tsx +31 -3
  21. package/themes/business/src/components/LoginForm/index.tsx +15 -22
  22. package/themes/business/src/components/MapView/index.tsx +10 -10
  23. package/themes/business/src/components/NewOrderNotification/index.tsx +35 -21
  24. package/themes/business/src/components/NotFoundSource/index.tsx +2 -2
  25. package/themes/business/src/components/OrderDetails/Business.tsx +1 -1
  26. package/themes/business/src/components/OrderDetails/Delivery.tsx +191 -6
  27. package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +93 -50
  28. package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +64 -63
  29. package/themes/business/src/components/OrderDetailsLogistic/index.tsx +195 -0
  30. package/themes/business/src/components/OrderDetailsLogistic/styles.tsx +5 -0
  31. package/themes/business/src/components/OrderMessage/index.tsx +19 -18
  32. package/themes/business/src/components/OrderSummary/index.tsx +113 -121
  33. package/themes/business/src/components/OrdersOption/index.tsx +32 -75
  34. package/themes/business/src/components/PreviousOrders/OrderItem.tsx +249 -0
  35. package/themes/business/src/components/PreviousOrders/OrdersGroupedItem.tsx +115 -0
  36. package/themes/business/src/components/PreviousOrders/index.tsx +445 -243
  37. package/themes/business/src/components/PreviousOrders/styles.tsx +31 -3
  38. package/themes/business/src/components/ProductItemAccordion/index.tsx +27 -3
  39. package/themes/business/src/components/ReviewCustomer/index.tsx +30 -15
  40. package/themes/business/src/components/StoresList/index.tsx +3 -4
  41. package/themes/business/src/components/UserProfileForm/index.tsx +11 -13
  42. package/themes/business/src/components/shared/OLink.tsx +33 -13
  43. package/themes/business/src/components/shared/OModal.tsx +16 -9
  44. package/themes/business/src/components/shared/OText.tsx +8 -2
  45. package/themes/business/src/types/index.tsx +28 -12
  46. package/themes/business/src/utils/index.tsx +29 -2
  47. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  48. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  49. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  50. package/themes/kiosk/src/components/Checkout/index.tsx +6 -0
  51. package/themes/kiosk/src/components/Intro/index.tsx +16 -1
  52. package/themes/kiosk/src/components/LoginForm/index.tsx +7 -9
  53. package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
  54. package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
  55. package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
  56. package/themes/kiosk/src/components/PhoneInputNumber/index.tsx +2 -2
  57. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  58. package/themes/original/index.tsx +4 -0
  59. package/themes/original/src/components/AddressDetails/index.tsx +28 -10
  60. package/themes/original/src/components/AddressForm/index.tsx +68 -40
  61. package/themes/original/src/components/AddressList/index.tsx +27 -22
  62. package/themes/original/src/components/AddressList/styles.tsx +4 -2
  63. package/themes/original/src/components/AnalyticsSegment/index.tsx +193 -10
  64. package/themes/original/src/components/AppleLogin/index.tsx +4 -4
  65. package/themes/original/src/components/AppleLogin/styles.tsx +3 -1
  66. package/themes/original/src/components/BusinessBasicInformation/index.tsx +153 -96
  67. package/themes/original/src/components/BusinessBasicInformation/styles.tsx +10 -12
  68. package/themes/original/src/components/BusinessController/index.tsx +122 -68
  69. package/themes/original/src/components/BusinessController/styles.tsx +23 -4
  70. package/themes/original/src/components/BusinessFeaturedController/index.tsx +21 -54
  71. package/themes/original/src/components/BusinessFeaturedController/styles.tsx +8 -0
  72. package/themes/original/src/components/BusinessInformation/index.tsx +110 -108
  73. package/themes/original/src/components/BusinessItemAccordion/index.tsx +15 -20
  74. package/themes/original/src/components/BusinessListingSearch/index.tsx +352 -326
  75. package/themes/original/src/components/BusinessListingSearch/styles.tsx +0 -18
  76. package/themes/original/src/components/BusinessPreorder/index.tsx +103 -19
  77. package/themes/original/src/components/BusinessProductsCategories/index.tsx +1 -2
  78. package/themes/original/src/components/BusinessProductsList/index.tsx +25 -15
  79. package/themes/original/src/components/BusinessProductsList/styles.tsx +8 -3
  80. package/themes/original/src/components/BusinessProductsListing/UpsellingRedirect.tsx +1 -1
  81. package/themes/original/src/components/BusinessProductsListing/index.tsx +683 -555
  82. package/themes/original/src/components/BusinessProductsListing/styles.tsx +2 -2
  83. package/themes/original/src/components/BusinessReviews/index.tsx +3 -1
  84. package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +1 -1
  85. package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +96 -91
  86. package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +1 -4
  87. package/themes/original/src/components/BusinessesListing/index.tsx +0 -1
  88. package/themes/original/src/components/Cart/index.tsx +77 -50
  89. package/themes/original/src/components/CartContent/index.tsx +117 -20
  90. package/themes/original/src/components/CartContent/styles.tsx +17 -7
  91. package/themes/original/src/components/Checkout/index.tsx +359 -171
  92. package/themes/original/src/components/Checkout/styles.tsx +4 -2
  93. package/themes/original/src/components/CitiesControl/index.tsx +89 -0
  94. package/themes/original/src/components/CitiesControl/styles.tsx +17 -0
  95. package/themes/original/src/components/CouponControl/index.tsx +10 -3
  96. package/themes/original/src/components/DriverTips/index.tsx +52 -34
  97. package/themes/original/src/components/FacebookLogin/styles.tsx +3 -1
  98. package/themes/original/src/components/Favorite/index.tsx +8 -9
  99. package/themes/original/src/components/Favorite/styles.tsx +1 -1
  100. package/themes/original/src/components/FavoriteList/index.tsx +51 -80
  101. package/themes/original/src/components/FloatingButton/index.tsx +1 -2
  102. package/themes/original/src/components/FloatingButton/styles.tsx +1 -1
  103. package/themes/original/src/components/GPSButton/index.tsx +6 -4
  104. package/themes/original/src/components/GPSButton/styles.ts +3 -3
  105. package/themes/original/src/components/GiftCard/GiftCardUI/index.tsx +96 -0
  106. package/themes/original/src/components/GiftCard/GiftCardUI/styles.tsx +5 -0
  107. package/themes/original/src/components/GiftCard/PurchaseGiftCard/index.tsx +100 -0
  108. package/themes/original/src/components/GiftCard/PurchaseGiftCard/styles.tsx +8 -0
  109. package/themes/original/src/components/GiftCard/RedeemGiftCard/index.tsx +191 -0
  110. package/themes/original/src/components/GiftCard/RedeemGiftCard/styles.tsx +8 -0
  111. package/themes/original/src/components/GiftCard/SendGiftCard/index.tsx +165 -0
  112. package/themes/original/src/components/GiftCard/SendGiftCard/styles.tsx +9 -0
  113. package/themes/original/src/components/GoogleLogin/styles.tsx +1 -1
  114. package/themes/original/src/components/GoogleMap/index.tsx +15 -4
  115. package/themes/original/src/components/Help/index.tsx +8 -8
  116. package/themes/original/src/components/HelpAccountAndPayment/index.tsx +10 -31
  117. package/themes/original/src/components/HelpAccountAndPayment/styles.tsx +5 -3
  118. package/themes/original/src/components/HelpGuide/index.tsx +6 -6
  119. package/themes/original/src/components/HelpGuide/styles.tsx +6 -0
  120. package/themes/original/src/components/HelpOrder/index.tsx +6 -15
  121. package/themes/original/src/components/HelpOrder/styles.tsx +8 -1
  122. package/themes/original/src/components/Home/index.tsx +13 -4
  123. package/themes/original/src/components/LastOrder/index.tsx +1 -34
  124. package/themes/original/src/components/LoginForm/Otp/index.tsx +55 -13
  125. package/themes/original/src/components/LoginForm/Otp/styles.tsx +0 -1
  126. package/themes/original/src/components/LoginForm/index.tsx +64 -26
  127. package/themes/original/src/components/LottieAnimation/index.tsx +89 -55
  128. package/themes/original/src/components/MessageListing/index.tsx +16 -42
  129. package/themes/original/src/components/Messages/index.tsx +32 -10
  130. package/themes/original/src/components/MomentOption/index.tsx +194 -89
  131. package/themes/original/src/components/MultiCart/index.tsx +50 -0
  132. package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +153 -49
  133. package/themes/original/src/components/MultiCheckout/index.tsx +308 -88
  134. package/themes/original/src/components/MultiCheckout/styles.tsx +3 -1
  135. package/themes/original/src/components/MultiOrdersDetails/SingleOrderCard.tsx +37 -224
  136. package/themes/original/src/components/MultiOrdersDetails/index.tsx +68 -21
  137. package/themes/original/src/components/MultiOrdersDetails/styles.tsx +1 -1
  138. package/themes/original/src/components/MyOrders/index.tsx +65 -52
  139. package/themes/original/src/components/NavBar/index.tsx +18 -18
  140. package/themes/original/src/components/NotFoundSource/index.tsx +14 -10
  141. package/themes/original/src/components/Notifications/index.tsx +46 -50
  142. package/themes/original/src/components/Notifications/styles.tsx +6 -3
  143. package/themes/original/src/components/OrderDetails/OrderEta.tsx +76 -0
  144. package/themes/original/src/components/OrderDetails/OrderHistory.tsx +15 -3
  145. package/themes/original/src/components/OrderDetails/index.tsx +190 -358
  146. package/themes/original/src/components/OrderDetails/styles.tsx +0 -1
  147. package/themes/original/src/components/OrderItAgain/index.tsx +3 -1
  148. package/themes/original/src/components/OrderProgress/index.tsx +33 -59
  149. package/themes/original/src/components/OrderSummary/index.tsx +85 -57
  150. package/themes/original/src/components/OrderTypeSelector/index.tsx +1 -1
  151. package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/index.tsx +24 -19
  152. package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/index.tsx +14 -14
  153. package/themes/original/src/components/OrdersOption/index.tsx +78 -67
  154. package/themes/original/src/components/OrdersOption/styles.tsx +1 -1
  155. package/themes/original/src/components/PageBanner/index.tsx +106 -31
  156. package/themes/original/src/components/PageBanner/styles.tsx +4 -4
  157. package/themes/original/src/components/PaymentOptionCard/index.tsx +180 -0
  158. package/themes/original/src/components/PaymentOptionStripe/styles.tsx +1 -1
  159. package/themes/original/src/components/PaymentOptionWallet/index.tsx +56 -56
  160. package/themes/original/src/components/PaymentOptions/index.tsx +68 -9
  161. package/themes/original/src/components/PhoneInputNumber/index.tsx +3 -3
  162. package/themes/original/src/components/PlaceSpot/index.tsx +12 -6
  163. package/themes/original/src/components/ProductForm/index.tsx +109 -33
  164. package/themes/original/src/components/ProductForm/styles.tsx +5 -7
  165. package/themes/original/src/components/ProductItemAccordion/index.tsx +22 -19
  166. package/themes/original/src/components/ProductOptionSubOption/index.tsx +24 -14
  167. package/themes/original/src/components/ProductOptionSubOption/styles.tsx +3 -4
  168. package/themes/original/src/components/ProfessionalFilter/SingleProfessionalCard/index.tsx +108 -0
  169. package/themes/original/src/components/ProfessionalFilter/index.tsx +20 -50
  170. package/themes/original/src/components/ProfessionalProfile/index.tsx +36 -7
  171. package/themes/original/src/components/Promotions/index.tsx +234 -220
  172. package/themes/original/src/components/Promotions/styles.tsx +10 -3
  173. package/themes/original/src/components/ReviewDriver/index.tsx +3 -3
  174. package/themes/original/src/components/ReviewOrder/index.tsx +26 -9
  175. package/themes/original/src/components/ReviewOrder/styles.tsx +7 -0
  176. package/themes/original/src/components/ReviewProducts/index.tsx +23 -11
  177. package/themes/original/src/components/ReviewTrigger/index.tsx +27 -9
  178. package/themes/original/src/components/ReviewTrigger/styles.tsx +8 -1
  179. package/themes/original/src/components/ScheduleAccordion/index.tsx +68 -0
  180. package/themes/original/src/components/ScheduleAccordion/styles.tsx +14 -0
  181. package/themes/original/src/components/ServiceForm/index.tsx +66 -17
  182. package/themes/original/src/components/Sessions/index.tsx +11 -8
  183. package/themes/original/src/components/Sessions/styles.tsx +5 -0
  184. package/themes/original/src/components/SignupForm/index.tsx +43 -20
  185. package/themes/original/src/components/SingleOrderCard/index.tsx +130 -52
  186. package/themes/original/src/components/SingleOrderCard/styles.tsx +11 -2
  187. package/themes/original/src/components/SingleProductCard/index.tsx +71 -34
  188. package/themes/original/src/components/SingleProductCard/styles.tsx +21 -4
  189. package/themes/original/src/components/SingleProductReview/styles.tsx +1 -1
  190. package/themes/original/src/components/StripeCardsList/index.tsx +13 -3
  191. package/themes/original/src/components/StripeElementsForm/index.tsx +48 -34
  192. package/themes/original/src/components/UpsellingProducts/index.tsx +238 -224
  193. package/themes/original/src/components/UpsellingProducts/styles.tsx +12 -1
  194. package/themes/original/src/components/UserDetails/index.tsx +8 -4
  195. package/themes/original/src/components/UserFormDetails/index.tsx +76 -7
  196. package/themes/original/src/components/UserFormDetails/styles.tsx +1 -1
  197. package/themes/original/src/components/UserProfile/index.tsx +88 -79
  198. package/themes/original/src/components/UserProfileForm/index.tsx +27 -29
  199. package/themes/original/src/components/UserProfileForm/styles.tsx +7 -0
  200. package/themes/original/src/components/WalletTransactionItem/index.tsx +2 -2
  201. package/themes/original/src/components/WalletTransactions/index.tsx +3 -3
  202. package/themes/original/src/components/Wallets/index.tsx +67 -24
  203. package/themes/original/src/components/Wallets/styles.tsx +3 -4
  204. package/themes/original/src/components/shared/HeaderTitle.tsx +8 -3
  205. package/themes/original/src/components/shared/OButton.tsx +6 -2
  206. package/themes/original/src/components/shared/OInput.tsx +6 -1
  207. package/themes/original/src/components/shared/OModal.tsx +3 -3
  208. package/themes/original/src/layouts/Container.tsx +1 -1
  209. package/themes/original/src/types/index.tsx +41 -11
  210. package/themes/original/src/utils/index.tsx +273 -1
  211. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
@@ -1,5 +1,5 @@
1
1
  import React, { useState } from 'react'
2
- import { RefreshControl } from 'react-native'
2
+ import { Platform, RefreshControl } from 'react-native'
3
3
  import { HelpParams } from '../../types'
4
4
  import { useLanguage } from 'ordering-components/native'
5
5
  import NavBar from '../NavBar'
@@ -31,20 +31,20 @@ export const Help = (props: HelpParams) => {
31
31
 
32
32
  return (
33
33
  <Container
34
+ pt={Platform.OS === 'ios' ? 20 : 10}
34
35
  noPadding
35
36
  refreshControl={
36
- <RefreshControl
37
- refreshing={refreshing}
38
- onRefresh={() => handleOnRefresh()}
39
- />
40
- }
37
+ <RefreshControl
38
+ refreshing={refreshing}
39
+ onRefresh={() => handleOnRefresh()}
40
+ />
41
+ }
41
42
  >
42
43
  <NavBar
43
44
  title={t('HELP', 'Help')}
44
45
  titleAlign={'center'}
45
46
  onActionLeft={goToBack}
46
47
  showCall={false}
47
- paddingTop={10}
48
48
  btnStyle={{ paddingLeft: 0 }}
49
49
  />
50
50
  <HelpSubItem
@@ -53,7 +53,7 @@ export const Help = (props: HelpParams) => {
53
53
  <OText size={14}>{t('HELP_WITH_ORDER', 'Help with an order')}</OText>
54
54
  </HelpSubItem>
55
55
  <HelpSubItem
56
- onPress={() => onRedirect('HelpAccountAndPayment')}
56
+ onPress={() => onRedirect('HelpAccountAndPayment')}
57
57
  >
58
58
  <OText size={14}>{t('ACCOUNT_PAYMENT_OPTIONS', 'Account and Payment Options')}</OText>
59
59
  </HelpSubItem>
@@ -9,8 +9,9 @@ import AntDesignIcon from 'react-native-vector-icons/AntDesign'
9
9
 
10
10
  import {
11
11
  Content,
12
- HeaderWrapper
12
+ Container
13
13
  } from './styles'
14
+ import NavBar from '../NavBar'
14
15
 
15
16
  export const HelpAccountAndPayment = (props: HelpAccountAndPaymentParams) => {
16
17
  const {
@@ -20,15 +21,6 @@ export const HelpAccountAndPayment = (props: HelpAccountAndPaymentParams) => {
20
21
  const theme = useTheme()
21
22
 
22
23
  const styles = StyleSheet.create({
23
- btnBackArrow: {
24
- borderWidth: 0,
25
- backgroundColor: theme.colors.white,
26
- borderColor: theme.colors.white,
27
- shadowColor: theme.colors.white,
28
- display: 'flex',
29
- justifyContent: 'flex-start',
30
- paddingLeft: 0,
31
- },
32
24
  imageStyle: {
33
25
  width: '100%',
34
26
  height: 300,
@@ -39,26 +31,13 @@ export const HelpAccountAndPayment = (props: HelpAccountAndPaymentParams) => {
39
31
  const goToBack = () => navigation?.canGoBack() && navigation.goBack()
40
32
 
41
33
  return (
42
- <>
43
- <HeaderWrapper>
44
- <OButton
45
- imgRightSrc={null}
46
- style={styles.btnBackArrow}
47
- onClick={() => goToBack()}
48
- icon={AntDesignIcon}
49
- iconProps={{
50
- name: 'arrowleft',
51
- size: 26
52
- }}
53
- />
54
- <OText
55
- size={24}
56
- weight={Platform.OS === 'ios' ? '600' : 'bold'}
57
- color={theme.colors.textNormal}
58
- >
59
- {t('ACCOUNT_PAYMENT_OPTIONS', 'Account and Payment Options')}
60
- </OText>
61
- </HeaderWrapper>
34
+ <Container>
35
+ <NavBar
36
+ title={t('ACCOUNT_PAYMENT_OPTIONS', 'Account and Payment Options')}
37
+ onActionLeft={goToBack}
38
+ btnStyle={{ paddingLeft: 0 }}
39
+ showCall={false}
40
+ />
62
41
  <Content>
63
42
  <OText mBottom={20}>
64
43
  -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vel in congue nisl, nisi. Mauris, condimentum auctor sed cras cursus arcu pellentesque.
@@ -78,6 +57,6 @@ export const HelpAccountAndPayment = (props: HelpAccountAndPaymentParams) => {
78
57
  cover
79
58
  />
80
59
  </Content>
81
- </>
60
+ </Container>
82
61
  )
83
62
  }
@@ -4,7 +4,9 @@ export const Content = styled.View`
4
4
  padding-vertical: 20px;
5
5
  margin-bottom: 20px;
6
6
  `
7
- export const HeaderWrapper = styled.View`
8
- padding: 10px 20px 20px 0;
9
- flex-direction: row;
7
+
8
+ export const Container = styled.ScrollView`
9
+ position: relative;
10
+ flex: 1;
11
+ margin: 10px 0;
10
12
  `
@@ -1,14 +1,14 @@
1
1
  import React from 'react'
2
2
  import { useLanguage } from 'ordering-components/native'
3
3
  import { HelpGuideParams } from '../../types'
4
- import { OText, OButton, OIcon } from '../shared'
4
+ import { OText, OIcon } from '../shared'
5
5
  import { useTheme } from 'styled-components/native'
6
- import { StyleSheet, TouchableOpacity } from 'react-native'
6
+ import { Platform, StyleSheet } from 'react-native'
7
7
  import NavBar from '../NavBar'
8
8
  import {
9
- Content
9
+ Content,
10
+ Container
10
11
  } from './styles'
11
- import AntDesignIcon from 'react-native-vector-icons/AntDesign'
12
12
 
13
13
  export const HelpGuide = (props: HelpGuideParams) => {
14
14
  const {
@@ -37,7 +37,7 @@ export const HelpGuide = (props: HelpGuideParams) => {
37
37
  const goToBack = () => navigation?.canGoBack() && navigation.goBack()
38
38
 
39
39
  return (
40
- <>
40
+ <Container pdng={Platform.OS === 'ios' ? '10px' : '0px'}>
41
41
  <NavBar
42
42
  title={t('GUIDE_TO_ORDERING', 'Guide to Ordering')}
43
43
  onActionLeft={goToBack}
@@ -63,6 +63,6 @@ export const HelpGuide = (props: HelpGuideParams) => {
63
63
  cover
64
64
  />
65
65
  </Content>
66
- </>
66
+ </Container>
67
67
  )
68
68
  }
@@ -4,3 +4,9 @@ export const Content = styled.View`
4
4
  padding-vertical: 20px;
5
5
  margin-bottom: 20px;
6
6
  `
7
+ export const Container = styled.ScrollView`
8
+ position: relative;
9
+ flex: 1;
10
+ margin: 10px 0;
11
+ padding-top: ${(props: any) => props.pdng}
12
+ `
@@ -1,15 +1,15 @@
1
1
  import React from 'react'
2
2
  import { useLanguage } from 'ordering-components/native'
3
3
  import { HelpOrderParams } from '../../types'
4
- import { OText, OButton, OIcon } from '../shared'
4
+ import { OText, OIcon } from '../shared'
5
5
  import { useTheme } from 'styled-components/native'
6
- import { StyleSheet, TouchableOpacity } from 'react-native'
6
+ import { StyleSheet } from 'react-native'
7
7
  import { WebView } from 'react-native-webview'
8
- import AntDesignIcon from 'react-native-vector-icons/AntDesign'
9
8
  import NavBar from '../NavBar'
10
9
 
11
10
  import {
12
- Content
11
+ Content,
12
+ Container
13
13
  } from './styles'
14
14
 
15
15
  export const HelpOrder = (props: HelpOrderParams) => {
@@ -20,15 +20,6 @@ export const HelpOrder = (props: HelpOrderParams) => {
20
20
  const theme = useTheme()
21
21
 
22
22
  const styles = StyleSheet.create({
23
- btnBackArrow: {
24
- borderWidth: 0,
25
- backgroundColor: theme.colors.white,
26
- borderColor: theme.colors.white,
27
- shadowColor: theme.colors.white,
28
- display: 'flex',
29
- justifyContent: 'flex-start',
30
- paddingLeft: 0,
31
- },
32
23
  imageStyle: {
33
24
  width: '100%',
34
25
  height: 120
@@ -42,7 +33,7 @@ export const HelpOrder = (props: HelpOrderParams) => {
42
33
  const goToBack = () => navigation?.canGoBack() && navigation.goBack()
43
34
 
44
35
  return (
45
- <>
36
+ <Container>
46
37
  <NavBar
47
38
  title={t('HELP_WITH_ORDER', 'Help with an order')}
48
39
  onActionLeft={goToBack}
@@ -75,6 +66,6 @@ export const HelpOrder = (props: HelpOrderParams) => {
75
66
  style={styles.videoStyle}
76
67
  />
77
68
  </Content>
78
- </>
69
+ </Container>
79
70
  )
80
71
  }
@@ -3,4 +3,11 @@ import styled from 'styled-components/native'
3
3
  export const Content = styled.View`
4
4
  padding-vertical: 20px;
5
5
  margin-bottom: 20px;
6
- `
6
+ `
7
+
8
+ export const Container = styled.ScrollView`
9
+ position: relative;
10
+ flex: 1;
11
+ margin: 10px 0;
12
+ `
13
+
@@ -1,5 +1,5 @@
1
- import React from 'react';
2
- import { useLanguage, useOrder } from 'ordering-components/native';
1
+ import React, { useEffect } from 'react';
2
+ import { useLanguage, useOrder, useConfig } from 'ordering-components/native';
3
3
  import { useTheme } from 'styled-components/native';
4
4
  import { StyleSheet, View } from 'react-native';
5
5
  import { OButton, OIcon, OText } from '../shared';
@@ -8,12 +8,21 @@ import { TouchableOpacity } from 'react-native-gesture-handler';
8
8
  import { useWindowDimensions, Platform } from 'react-native';
9
9
 
10
10
  export const Home = (props: any) => {
11
- const { onNavigationRedirect } = props;
11
+ const { onNavigationRedirect, businessSlug } = props;
12
12
  const { width, height } = useWindowDimensions();
13
13
  const [, t] = useLanguage();
14
14
  const [orderState] = useOrder();
15
+ const [{ configs }] = useConfig()
15
16
 
16
17
  const theme = useTheme();
18
+ const unaddressedTypes = configs?.unaddressed_order_types_allowed?.value.split('|').map((value: any) => Number(value)) || []
19
+ const isAllowUnaddressOrderType = unaddressedTypes.includes(orderState?.options?.type)
20
+
21
+ useEffect(() => {
22
+ if (isAllowUnaddressOrderType) {
23
+ onNavigationRedirect(!!businessSlug ? 'Business' : 'BusinessList')
24
+ }
25
+ }, [isAllowUnaddressOrderType])
17
26
 
18
27
  return (
19
28
  <View style={styles.container}>
@@ -60,7 +69,7 @@ export const Home = (props: any) => {
60
69
  style={{ ...styles.textLink, marginTop: 12 }}
61
70
  onPress={() =>
62
71
  orderState?.options?.address?.address
63
- ? onNavigationRedirect('BusinessList', { isGuestUser: true })
72
+ ? onNavigationRedirect(!!businessSlug ? 'Business' : 'BusinessList', { isGuestUser: true })
64
73
  : onNavigationRedirect('AddressForm', { isGuestUser: true })
65
74
  }>
66
75
  <OText weight="normal" size={18} color={theme.colors.white}>
@@ -6,6 +6,7 @@ import { NotFoundSource } from '../NotFoundSource'
6
6
 
7
7
  import { ItemWrap } from './styles'
8
8
  import { OrdersOptionParams } from '../../types'
9
+ import { getOrderStatus } from '../../utils'
9
10
 
10
11
  import {
11
12
  Placeholder,
@@ -67,40 +68,6 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
67
68
  return moment(dateStr).format('MMMM DD,YYYY - hh:mm a');
68
69
  }
69
70
 
70
- const getOrderStatus = (s: string) => {
71
- const status = parseInt(s)
72
- const orderStatus = [
73
- { key: 0, value: t('PENDING', 'Pending') },
74
- { key: 1, value: t('COMPLETED', 'Completed') },
75
- { key: 2, value: t('REJECTED', 'Rejected') },
76
- { key: 3, value: t('DRIVER_IN_BUSINESS', 'Driver in business') },
77
- { key: 4, value: t('PREPARATION_COMPLETED', 'Preparation Completed') },
78
- { key: 5, value: t('REJECTED_BY_BUSINESS', 'Rejected by business') },
79
- { key: 6, value: t('REJECTED_BY_DRIVER', 'Rejected by Driver') },
80
- { key: 7, value: t('ACCEPTED_BY_BUSINESS', 'Accepted by business') },
81
- { key: 8, value: t('ACCEPTED_BY_DRIVER', 'Accepted by driver') },
82
- { key: 9, value: t('PICK_UP_COMPLETED_BY_DRIVER', 'Pick up completed by driver') },
83
- { key: 10, value: t('PICK_UP_FAILED_BY_DRIVER', 'Pick up Failed by driver') },
84
- { key: 11, value: t('DELIVERY_COMPLETED_BY_DRIVER', 'Delivery completed by driver') },
85
- { key: 12, value: t('DELIVERY_FAILED_BY_DRIVER', 'Delivery Failed by driver') },
86
- { key: 13, value: t('PREORDER', 'PreOrder') },
87
- { key: 14, value: t('ORDER_NOT_READY', 'Order not ready') },
88
- { key: 15, value: t('ORDER_PICKEDUP_COMPLETED_BY_CUSTOMER', 'Order picked up completed by customer') },
89
- { key: 16, value: t('CANCELLED_BY_CUSTOMER', 'Cancelled by customer') },
90
- { key: 17, value: t('ORDER_NOT_PICKEDUP_BY_CUSTOMER', 'Order not picked up by customer') },
91
- { key: 18, value: t('DRIVER_ALMOST_ARRIVED_TO_BUSINESS', 'Driver almost arrived to business') },
92
- { key: 19, value: t('DRIVER_ALMOST_ARRIVED_TO_CUSTOMER', 'Driver almost arrived to customer') },
93
- { key: 20, value: t('ORDER_CUSTOMER_ALMOST_ARRIVED_BUSINESS', 'Customer almost arrived to business') },
94
- { key: 21, value: t('ORDER_CUSTOMER_ARRIVED_BUSINESS', 'Customer arrived to business') },
95
- { key: 22, value: t('ORDER_LOOKING_FOR_DRIVER', 'Looking for driver') },
96
- { key: 23, value: t('ORDER_DRIVER_ON_WAY', 'Driver on way') }
97
- ]
98
-
99
- const objectStatus = orderStatus.find((o) => o.key === status)
100
-
101
- return objectStatus && objectStatus
102
- }
103
-
104
71
  return (
105
72
  <>
106
73
  {/* {(orders.length > 0) && (
@@ -1,10 +1,10 @@
1
- import React, { useEffect, useState } from 'react'
1
+ import React, { useEffect, useRef, useState } from 'react'
2
2
  import { formatSeconds } from '../../../utils'
3
- import { StyleSheet, TouchableOpacity } from 'react-native';
3
+ import { StyleSheet, TouchableOpacity, View, Platform } from 'react-native';
4
4
  import { useCountdownTimer } from '../../../../../../src/hooks/useCountdownTimer';
5
5
  import { useLanguage } from 'ordering-components/native';
6
6
  import { OTPContainer } from './styles';
7
- import { OText, OButton } from '../../shared';
7
+ import { OText, OButton, OIcon } from '../../shared';
8
8
  import OtpInputs from 'react-native-otp-inputs';
9
9
  import { useTheme } from 'styled-components/native';
10
10
  import { otpParams } from '../../../types'
@@ -16,7 +16,9 @@ export const Otp = (props: otpParams) => {
16
16
  onSubmit,
17
17
  handleLoginOtp,
18
18
  setAlertState,
19
- pinCount
19
+ pinCount,
20
+ otpError,
21
+ setOtpError
20
22
  } = props
21
23
 
22
24
  const theme = useTheme();
@@ -25,7 +27,7 @@ export const Otp = (props: otpParams) => {
25
27
  600, willVerifyOtpState)
26
28
 
27
29
  const [code, setCode] = useState('')
28
-
30
+ const inputRef = useRef<any>()
29
31
 
30
32
  const handleOnSubmit = () => {
31
33
  setAlertState({
@@ -36,6 +38,16 @@ export const Otp = (props: otpParams) => {
36
38
  onSubmit()
37
39
  }
38
40
 
41
+ const handleChangeCode = (code : string) => {
42
+ setCode(code)
43
+ setOtpError(null)
44
+ }
45
+
46
+ const handleCloseOtp = () => {
47
+ setWillVerifyOtpState(false)
48
+ setOtpError(null)
49
+ }
50
+
39
51
  useEffect(() => {
40
52
  if (otpLeftTime === 0) {
41
53
  setAlertState({
@@ -49,6 +61,7 @@ export const Otp = (props: otpParams) => {
49
61
  useEffect(() => {
50
62
  if (code?.length === (pinCount || 6)) {
51
63
  handleLoginOtp(code)
64
+ inputRef?.current?.reset()
52
65
  }
53
66
  }, [code])
54
67
 
@@ -59,11 +72,6 @@ export const Otp = (props: otpParams) => {
59
72
  justifyContent: 'space-between',
60
73
  marginVertical: 30
61
74
  },
62
- focusStyles: {
63
- borderColor: theme.colors.primary,
64
- borderWidth: 1,
65
- borderRadius: 8
66
- },
67
75
  underlineStyleBase: {
68
76
  width: 45,
69
77
  height: 50,
@@ -78,29 +86,63 @@ export const Otp = (props: otpParams) => {
78
86
  color: theme.colors.primary,
79
87
  fontSize: 16
80
88
  },
89
+ wrapperIcon: {
90
+ marginTop: Platform.OS === 'ios' ? 40 : 12,
91
+ marginBottom: 20,
92
+ alignItems: 'center',
93
+ justifyContent: 'center',
94
+ paddingRight: 35
95
+ },
96
+ closeContainer: {
97
+ width: '100%',
98
+ flexDirection: 'row',
99
+ }
81
100
  });
82
101
 
83
102
  return (
84
103
  <>
85
104
  <OTPContainer>
105
+ <View
106
+ style={loginStyle.closeContainer}>
107
+ <TouchableOpacity onPress={() => handleCloseOtp()} style={loginStyle.wrapperIcon}>
108
+ <OIcon
109
+ src={theme.images.general.close}
110
+ width={22}
111
+ />
112
+ </TouchableOpacity>
113
+ <OText size={22} style={{
114
+ marginTop: 5
115
+ }}>
116
+ {t('ENTER_VERIFICATION_CODE', 'Enter verification code')}
117
+ </OText>
118
+ </View>
86
119
  <OText size={24}>
87
120
  {formatSeconds(otpLeftTime)}
88
121
  </OText>
89
122
  <OtpInputs
123
+ ref={inputRef}
90
124
  autofillFromClipboard
91
125
  numberOfInputs={pinCount || 6}
92
126
  style={loginStyle.container}
93
127
  inputStyles={loginStyle.underlineStyleBase}
94
- focusStyles={loginStyle.focusStyles}
95
- handleChange={setCode}
128
+ handleChange={handleChangeCode}
96
129
  />
130
+ {!!otpError && (
131
+ <OText
132
+ color={theme?.colors?.error}
133
+ size={20}
134
+ mBottom={10}
135
+ >
136
+ {t(otpError, otpError)}
137
+ </OText>
138
+ )}
97
139
  <TouchableOpacity onPress={() => handleOnSubmit()} disabled={otpLeftTime > 520}>
98
140
  <OText size={16} mBottom={30} color={otpLeftTime > 520 ? theme.colors.disabled : theme.colors.primary}>
99
141
  {t('RESEND_CODE', 'Resend code')}
100
142
  </OText>
101
143
  </TouchableOpacity>
102
144
  <OButton
103
- onClick={() => setWillVerifyOtpState(false)}
145
+ onClick={() => handleCloseOtp()}
104
146
  bgColor={theme.colors.white}
105
147
  borderColor={theme.colors.primary}
106
148
  textStyle={{ color: theme.colors.primary }}
@@ -3,5 +3,4 @@ import styled from 'styled-components/native';
3
3
  export const OTPContainer = styled.View`
4
4
  padding: 20px;
5
5
  align-items: center;
6
- flex: 1
7
6
  `