ordering-ui-react-native 0.14.89 → 0.14.90-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 (135) hide show
  1. package/package.json +6 -3
  2. package/src/DeliveryApp.tsx +34 -2
  3. package/src/assets/images/no-network.png +0 -0
  4. package/src/components/BusinessTypeFilter/index.tsx +9 -2
  5. package/src/components/BusinessTypeFilter/styles.tsx +1 -1
  6. package/src/components/BusinessesListing/index.tsx +1 -1
  7. package/src/components/Cart/index.tsx +1 -1
  8. package/src/components/Checkout/index.tsx +0 -1
  9. package/src/components/Home/index.tsx +3 -5
  10. package/src/components/LanguageSelector/index.tsx +65 -97
  11. package/src/components/LanguageSelector/styles.tsx +4 -17
  12. package/src/components/Messages/index.tsx +38 -30
  13. package/src/components/MomentOption/index.tsx +3 -1
  14. package/src/components/OrderDetails/index.tsx +26 -5
  15. package/src/components/PaymentOptions/index.tsx +7 -16
  16. package/src/components/PaymentOptionsWebView/index.tsx +123 -124
  17. package/src/components/ProductForm/index.tsx +1 -1
  18. package/src/components/ProductForm/styles.tsx +1 -0
  19. package/src/components/StripeElementsForm/index.tsx +27 -48
  20. package/src/components/UserProfileForm/index.tsx +35 -1
  21. package/src/components/VerifyPhone/styles.tsx +1 -2
  22. package/src/config.json +0 -2
  23. package/src/pages/Checkout.tsx +1 -1
  24. package/src/providers/AlertProvider.tsx +4 -1
  25. package/src/theme.json +2 -1
  26. package/src/types/index.tsx +2 -9
  27. package/src/utils/index.tsx +2 -1
  28. package/themes/business/index.tsx +4 -0
  29. package/themes/business/src/components/Chat/index.tsx +32 -31
  30. package/themes/business/src/components/NetworkError/index.tsx +61 -0
  31. package/themes/business/src/components/NetworkError/styles.tsx +11 -0
  32. package/themes/business/src/components/OrderDetails/Business.tsx +1 -0
  33. package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +85 -17
  34. package/themes/business/src/components/OrdersListManager/index.tsx +871 -0
  35. package/themes/business/src/components/OrdersListManager/styles.tsx +123 -0
  36. package/themes/business/src/components/OrdersListManager/utils.tsx +216 -0
  37. package/themes/business/src/components/OrdersOption/index.tsx +18 -68
  38. package/themes/business/src/components/OrdersOption/styles.tsx +2 -5
  39. package/themes/business/src/components/PreviousOrders/index.tsx +34 -11
  40. package/themes/business/src/components/ReviewCustomer/index.tsx +5 -1
  41. package/themes/business/src/types/index.tsx +4 -0
  42. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  43. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  44. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  45. package/themes/kiosk/index.tsx +2 -0
  46. package/themes/kiosk/src/components/BusinessController/index.tsx +27 -6
  47. package/themes/kiosk/src/components/BusinessController/styles.tsx +1 -1
  48. package/themes/kiosk/src/components/BusinessProductsListing/index.tsx +51 -24
  49. package/themes/kiosk/src/components/Cart/index.tsx +1 -1
  50. package/themes/kiosk/src/components/CartBottomSheet/index.tsx +1 -1
  51. package/themes/kiosk/src/components/CartBottomSheet/styles.tsx +1 -1
  52. package/themes/kiosk/src/components/CartContent/index.tsx +13 -3
  53. package/themes/kiosk/src/components/CartItem/index.tsx +20 -8
  54. package/themes/kiosk/src/components/CategoriesMenu/index.tsx +7 -5
  55. package/themes/kiosk/src/components/CustomerName/index.tsx +89 -88
  56. package/themes/kiosk/src/components/Intro/index.tsx +13 -13
  57. package/themes/kiosk/src/components/LanguageSelector/index.tsx +12 -8
  58. package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
  59. package/themes/kiosk/src/components/NetworkError/index.tsx +60 -0
  60. package/themes/kiosk/src/components/NetworkError/styles.tsx +11 -0
  61. package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
  62. package/themes/kiosk/src/components/OrderDetails/index.tsx +2 -2
  63. package/themes/kiosk/src/components/OrderSummary/index.tsx +1 -1
  64. package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +10 -12
  65. package/themes/kiosk/src/components/ProductForm/index.tsx +172 -124
  66. package/themes/kiosk/src/components/ProductForm/styles.tsx +1 -1
  67. package/themes/kiosk/src/components/ProductOption/index.tsx +1 -0
  68. package/themes/kiosk/src/components/ProductOption/styles.tsx +1 -0
  69. package/themes/kiosk/src/components/UpsellingProducts/index.tsx +48 -34
  70. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  71. package/themes/kiosk/src/components/shared/OCard.tsx +112 -78
  72. package/themes/kiosk/src/types/index.d.ts +4 -0
  73. package/themes/original/index.tsx +36 -6
  74. package/themes/original/src/components/AddressForm/index.tsx +15 -10
  75. package/themes/original/src/components/AddressList/index.tsx +27 -1
  76. package/themes/original/src/components/AnalyticsSegment/index.tsx +127 -0
  77. package/themes/original/src/components/BusinessBasicInformation/index.tsx +11 -7
  78. package/themes/original/src/components/BusinessController/index.tsx +5 -4
  79. package/themes/original/src/components/BusinessMenuList/index.tsx +4 -2
  80. package/themes/original/src/components/BusinessPreorder/index.tsx +142 -121
  81. package/themes/original/src/components/BusinessProductsCategories/index.tsx +1 -1
  82. package/themes/original/src/components/BusinessProductsList/index.tsx +50 -6
  83. package/themes/original/src/components/BusinessProductsListing/index.tsx +13 -10
  84. package/themes/original/src/components/BusinessReviews/index.tsx +4 -3
  85. package/themes/original/src/components/BusinessesListing/index.tsx +23 -22
  86. package/themes/original/src/components/Cart/index.tsx +43 -10
  87. package/themes/original/src/components/CartContent/index.tsx +2 -2
  88. package/themes/original/src/components/Checkout/index.tsx +54 -30
  89. package/themes/original/src/components/Checkout/styles.tsx +7 -0
  90. package/themes/original/src/components/CouponControl/index.tsx +1 -0
  91. package/themes/original/src/components/DriverTips/index.tsx +1 -1
  92. package/themes/original/src/components/ForgotPasswordForm/index.tsx +8 -12
  93. package/themes/original/src/components/HighestRatedBusinesses/index.tsx +9 -2
  94. package/themes/original/src/components/LoginForm/index.tsx +83 -68
  95. package/themes/original/src/components/Messages/index.tsx +24 -21
  96. package/themes/original/src/components/Messages/styles.tsx +1 -3
  97. package/themes/original/src/components/MomentOption/index.tsx +127 -152
  98. package/themes/original/src/components/MomentOption/styles.tsx +42 -18
  99. package/themes/original/src/components/NetworkError/index.tsx +61 -0
  100. package/themes/original/src/components/NetworkError/styles.tsx +11 -0
  101. package/themes/original/src/components/OrderDetails/index.tsx +103 -124
  102. package/themes/original/src/components/OrderDetails/styles.tsx +3 -1
  103. package/themes/original/src/components/OrderProgress/index.tsx +2 -3
  104. package/themes/original/src/components/OrderSummary/index.tsx +35 -2
  105. package/themes/original/src/components/OrdersOption/index.tsx +16 -40
  106. package/themes/original/src/components/OrdersOption/styles.tsx +0 -5
  107. package/themes/original/src/components/PaymentOptionWallet/index.tsx +1 -1
  108. package/themes/original/src/components/PaymentOptions/index.tsx +21 -24
  109. package/themes/original/src/components/PhoneInputNumber/index.tsx +15 -8
  110. package/themes/original/src/components/PlaceSpot/index.tsx +114 -0
  111. package/themes/original/src/components/PlaceSpot/styles.tsx +11 -0
  112. package/themes/original/src/components/PreviousOrders/index.tsx +4 -0
  113. package/themes/original/src/components/ProductForm/index.tsx +154 -105
  114. package/themes/original/src/components/ProductForm/styles.tsx +5 -3
  115. package/themes/original/src/components/ProductOptionSubOption/index.tsx +6 -1
  116. package/themes/original/src/components/ReviewDriver/index.tsx +2 -1
  117. package/themes/original/src/components/ReviewOrder/index.tsx +2 -17
  118. package/themes/original/src/components/SignupForm/index.tsx +173 -154
  119. package/themes/original/src/components/SingleProductCard/index.tsx +6 -13
  120. package/themes/original/src/components/SingleProductCard/styles.tsx +1 -1
  121. package/themes/original/src/components/SingleProductReview/index.tsx +4 -0
  122. package/themes/original/src/components/StripeElementsForm/index.tsx +55 -72
  123. package/themes/original/src/components/UpsellingProducts/index.tsx +6 -6
  124. package/themes/original/src/components/UserDetails/index.tsx +4 -95
  125. package/themes/original/src/components/UserFormDetails/index.tsx +2 -14
  126. package/themes/original/src/components/UserProfile/index.tsx +16 -9
  127. package/themes/original/src/components/UserProfileForm/index.tsx +16 -8
  128. package/themes/original/src/components/VerifyPhone/index.tsx +10 -7
  129. package/themes/original/src/components/VerifyPhone/styles.tsx +2 -1
  130. package/themes/original/src/components/shared/HeaderTitle.tsx +20 -0
  131. package/themes/original/src/components/shared/index.tsx +2 -0
  132. package/themes/original/src/types/index.tsx +18 -8
  133. package/themes/single-business/src/components/OrderTypeSelector/index.tsx +5 -5
  134. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
  135. package/src/components/StripeMethodForm/index.tsx +0 -163
@@ -40,7 +40,7 @@ export const ProductTitle = styled.View`
40
40
  `
41
41
 
42
42
  export const ProductDescription = styled.View`
43
- margin-bottom: 30px;
43
+ margin-top: 10px;
44
44
  `
45
45
 
46
46
  export const ProductEditions = styled.View`
@@ -32,6 +32,7 @@ const ProductOptionUI = (props: any) => {
32
32
  <OText
33
33
  size={26}
34
34
  weight="bold"
35
+ style={{ width: '80%' }}
35
36
  >
36
37
  {option.name}
37
38
  </OText>
@@ -12,4 +12,5 @@ export const WrapHeader = styled.View`
12
12
  background-color: ${(props: any) => props.theme.colors.paleGray};
13
13
  border-top-left-radius: 10px;
14
14
  border-top-right-radius: 10px;
15
+ width: 100%;
15
16
  `
@@ -1,6 +1,6 @@
1
1
  import React,{ useState, useEffect } from 'react'
2
2
  import Spinner from 'react-native-loading-spinner-overlay';
3
- import { StyleSheet, View, Platform } from 'react-native'
3
+ import { StyleSheet, View, Platform, ImageBackground } from 'react-native'
4
4
  import {
5
5
  UpsellingPage as UpsellingPageController,
6
6
  useUtils,
@@ -20,6 +20,7 @@ import { Container } from '../../layouts/Container';
20
20
  import GridContainer from '../../layouts/GridContainer';
21
21
  import { PORTRAIT, useDeviceOrientation } from "../../../../../src/hooks/DeviceOrientation";
22
22
  import { useTheme } from 'styled-components/native';
23
+ import FastImage from 'react-native-fast-image';
23
24
 
24
25
  const UpsellingProductsUI = (props: UpsellingProductsParams) => {
25
26
  const {
@@ -114,7 +115,24 @@ const UpsellingProductsUI = (props: UpsellingProductsParams) => {
114
115
  {
115
116
  !upsellingProducts.error ? upsellingProducts.products.map((product: any) => (
116
117
  <Item key={product.id}>
117
- <OImage source={{ uri: product.images }} style={styles.imageStyle} />
118
+ {product?.images ? (
119
+ <FastImage
120
+ style={styles.imageStyle}
121
+ source={{
122
+ uri: product?.images,
123
+ priority: FastImage.priority.normal,
124
+ // cache:FastImage.cacheControl.web
125
+ }}
126
+ resizeMode={FastImage.resizeMode.cover}
127
+ />
128
+ ) : (
129
+ <ImageBackground
130
+ style={styles.imageStyle}
131
+ source={theme.images.dummies.product}
132
+ imageStyle={{ borderRadius: 10 }}
133
+ resizeMode='cover'
134
+ />
135
+ )}
118
136
  <Details>
119
137
  <OText
120
138
  weight="500"
@@ -125,24 +143,22 @@ const UpsellingProductsUI = (props: UpsellingProductsParams) => {
125
143
  {product.name}
126
144
  </OText>
127
145
 
128
- {!!product?.price && (
129
- <OText>
130
- <OText
131
- color={theme.colors.primary}
132
- weight="500"
133
- >
134
- {parsePrice(product.price)}
135
- </OText>
146
+ <OText>
147
+ <OText
148
+ color={theme.colors.primary}
149
+ weight="500"
150
+ >
151
+ {parsePrice(product.price)}
152
+ </OText>
136
153
 
137
- <OText
138
- color={theme.colors.mediumGray}
139
- size={12}
140
- style={{textDecorationLine: 'line-through', textDecorationStyle: 'solid'}}
141
- >
142
- {product?.offer_price ? ` ${parsePrice(product?.offer_price)} ` : ''}
143
- </OText>
154
+ <OText
155
+ color={theme.colors.mediumGray}
156
+ size={12}
157
+ style={{textDecorationLine: 'line-through', textDecorationStyle: 'solid'}}
158
+ >
159
+ {product?.offer_price ? ` ${parsePrice(product?.offer_price)} ` : ''}
144
160
  </OText>
145
- )}
161
+ </OText>
146
162
  </Details>
147
163
 
148
164
  <OButton
@@ -200,24 +216,22 @@ const UpsellingProductsUI = (props: UpsellingProductsParams) => {
200
216
  {product.name}
201
217
  </OText>
202
218
 
203
- {!!product?.price && (
204
- <OText>
205
- <OText
206
- color={theme.colors.primary}
207
- weight="500"
208
- >
209
- {parsePrice(product.price)}
210
- </OText>
219
+ <OText>
220
+ <OText
221
+ color={theme.colors.primary}
222
+ weight="500"
223
+ >
224
+ {parsePrice(product.price)}
225
+ </OText>
211
226
 
212
- <OText
213
- color={theme.colors.mediumGray}
214
- size={12}
215
- style={{textDecorationLine: 'line-through', textDecorationStyle: 'solid'}}
216
- >
217
- {product?.offer_price ? parsePrice(product?.offer_price) : ''}
218
- </OText>
227
+ <OText
228
+ color={theme.colors.mediumGray}
229
+ size={12}
230
+ style={{textDecorationLine: 'line-through', textDecorationStyle: 'solid'}}
231
+ >
232
+ {product?.offer_price ? parsePrice(product?.offer_price) : ''}
219
233
  </OText>
220
- )}
234
+ </OText>
221
235
  </Details>
222
236
  <OButton
223
237
  text={t('ADD_PRODUCT', 'add product')}
@@ -10,8 +10,6 @@ import {
10
10
 
11
11
  import * as React from 'react';
12
12
  import styled from 'styled-components/native';
13
- import AntDesignIcon from 'react-native-vector-icons/AntDesign'
14
- import { Icon, IconProps } from 'react-native-vector-icons/Icon';
15
13
 
16
14
  const StyledButton = styled.View<Props>`
17
15
  background-color: ${(props: any) => props.theme.colors.primary};
@@ -79,19 +77,17 @@ interface Props {
79
77
  isCircle?: boolean;
80
78
  bgColor?: string;
81
79
  borderColor?: string;
82
- iconProps?: IconProps;
83
- IconCustom?: React.FunctionComponent
84
80
  }
85
81
 
86
82
  const OButton = (props: Props): React.ReactElement => {
87
83
  if (props.isDisabled) {
88
84
  return (
89
85
  <View style={props.parentStyle}>
90
- <StyledButtonDisabled style={props.style}>
91
- <StyledTextDisabled style={props.disabledTextStyle ? props.disabledTextStyle : props.textStyle}>
92
- {props.text}
93
- </StyledTextDisabled>
94
- </StyledButtonDisabled>
86
+ <StyledButtonDisabled style={props.style}>
87
+ <StyledTextDisabled style={props.disabledTextStyle ? props.disabledTextStyle : props.textStyle}>
88
+ {props.text}
89
+ </StyledTextDisabled>
90
+ </StyledButtonDisabled>
95
91
  </View>
96
92
  );
97
93
  }
@@ -115,15 +111,6 @@ const OButton = (props: Props): React.ReactElement => {
115
111
  {props.imgLeftSrc ? (
116
112
  <StyledImage style={props.imgLeftStyle} source={props.imgLeftSrc} />
117
113
  ) : null}
118
- {props.iconProps ? (
119
- <>
120
- {props?.IconCustom ? (
121
- <props.IconCustom {...props.iconProps} />
122
- ) : (
123
- <AntDesignIcon {...props.iconProps} />
124
- )}
125
- </>
126
- ) : null}
127
114
  {props.text ? (
128
115
  <StyledText style={props.textStyle}>{props.text}</StyledText>
129
116
  ) : null}
@@ -1,110 +1,144 @@
1
1
  import React from 'react';
2
- import { TextStyle, ViewStyle, Platform } from 'react-native';
2
+ import { TextStyle, ImageBackground, StyleSheet } from 'react-native';
3
3
  import { useTheme } from 'styled-components/native';
4
+ import FastImage from 'react-native-fast-image'
4
5
 
5
- import styled from 'styled-components/native';
6
- import OImage from './OImage';
6
+ import styled, { css } from 'styled-components/native';
7
7
  import OText from './OText';
8
8
 
9
9
  const CardContainer = styled.TouchableOpacity`
10
- width: 21%;
11
- margin: 10px 20px;
12
- overflow: hidden;
10
+ position: relative;
11
+ flex-direction: column;
12
+ border-radius: 10px;
13
+ position: relative;
14
+ margin: 0 30px 30px 0;
15
+ align-self: flex-start;
13
16
  `
14
17
 
15
- const CardBody = styled.View`
16
- padding: 4%;
18
+ const WrapPrice = styled.View`
19
+ display: flex;
20
+ flex-direction: row;
21
+ align-items: center;
22
+ margin-top: 10px;
17
23
  `
18
24
 
19
- const CardBadge = styled.Text`
20
- padding: 2% 4%;
21
- position: absolute;
22
- background-color: ${(props: any) => props.theme.theme.colors.primary};
23
- z-index: 100;
24
- border-radius: 5px;
25
- color: #fff;
26
- font-weight: bold;
27
- margin: 10px 0;
25
+ const WrapImage = styled.View`
26
+ width: 100%;
27
+ height: 120px;
28
+ `
29
+
30
+ const WrapContent = styled.View`
31
+ display: flex;
32
+ flex-direction: column;
33
+ ${(props: any) => props.isCentered && css`
34
+ align-items: center;
35
+ `}
28
36
  `
29
37
 
30
38
  const OCard = (props: Props): React.ReactElement => {
31
39
  const theme = useTheme()
32
40
 
41
+ const styles = StyleSheet.create({
42
+ textStyle: {
43
+ marginTop: 10
44
+ },
45
+ image: {
46
+ width: '100%',
47
+ height: '100%',
48
+ borderBottomLeftRadius: 0,
49
+ borderBottomRightRadius: 0,
50
+ }
51
+ })
52
+
33
53
  return (
34
54
  <CardContainer
35
- style={{...props.style}}
36
- onPress={props?.onPress}
37
- disabled={!props?.onPress}
38
- activeOpacity={1}
39
- >
40
- {props?.badgeText && (
41
- <CardBadge>
42
- {props?.badgeText}
43
- </CardBadge>
44
- )}
45
- <OImage
46
- source={props.image}
47
- height={120}
48
- resizeMode="cover"
49
- borderRadius={16}
50
- />
51
- <CardBody>
52
- <OText
53
- mLeft={0}
54
- size={18}
55
- numberOfLines={2}
56
- mBottom={8}
57
- style={{...props?.titleStyle}}
58
- >
59
- {props.title}
60
- </OText>
61
-
62
- {props?.description && (
63
- <OText
64
- color={theme.colors.mediumGray}
65
- numberOfLines={3}
66
- mBottom={8}
67
- style={{...props?.descriptionStyle}}
68
- >
69
- {props.description}
70
- </OText>
55
+ activeOpacity={1}
56
+ style={props.style}
57
+ onPress={props?.onPress}
58
+ disabled={!props?.onPress}
59
+ >
60
+ <WrapImage>
61
+ {props.isUri ? (
62
+ <FastImage
63
+ style={[styles.image, props.style]}
64
+ source={{
65
+ uri: props.image?.uri,
66
+ priority: FastImage.priority.normal,
67
+ // cache:FastImage.cacheControl.web
68
+ }}
69
+ resizeMode={FastImage.resizeMode.cover}
70
+ />
71
+ ) : (
72
+ <ImageBackground
73
+ style={[styles.image, props.style]}
74
+ source={props.image}
75
+ imageStyle={{
76
+ borderBottomLeftRadius: 0,
77
+ borderBottomRightRadius: 0,
78
+ borderRadius: 10
79
+ }}
80
+ resizeMode='cover'
81
+ />
71
82
  )}
72
-
73
- {props?.price && (
74
- <OText>
75
- <OText
76
- color={theme.colors.primary}
77
- weight="bold"
78
- >
79
- {props.price}
80
- </OText>
81
-
82
- <OText
83
- color={theme.colors.mediumGray}
84
- size={12}
85
- style={{textDecorationLine: 'line-through', textDecorationStyle: 'solid'}}
86
- >
87
- {props?.prevPrice ? ` ${props?.prevPrice} ` : ''}
88
- </OText>
89
- </OText>
90
- )}
91
-
92
- </CardBody>
93
- </CardContainer>
94
- );
83
+ </WrapImage>
84
+ <WrapContent isCentered={props.isCentered}>
85
+ <OText
86
+ size={18}
87
+ numberOfLines={1}
88
+ ellipsizeMode='tail'
89
+ style={styles.textStyle}
90
+ >
91
+ {props.title}
92
+ </OText>
93
+ {!!props?.description && (
94
+ <OText
95
+ color={theme.colors.mediumGray}
96
+ size={18}
97
+ numberOfLines={3}
98
+ ellipsizeMode='tail'
99
+ style={styles.textStyle}
100
+ >
101
+ {props?.description}
102
+ </OText>
103
+ )}
104
+ <WrapPrice>
105
+ <OText
106
+ size={18}
107
+ >
108
+ {props.price}
109
+ </OText>
110
+ {props?.prevPrice && (
111
+ <OText
112
+ size={18}
113
+ color={theme.colors.mediumGray}
114
+ style={{
115
+ textDecorationLine: 'line-through',
116
+ textDecorationStyle: 'solid',
117
+ marginLeft: 20,
118
+ }}
119
+ >
120
+ {props?.prevPrice}
121
+ </OText>
122
+ )}
123
+ </WrapPrice>
124
+ </WrapContent>
125
+ </CardContainer>
126
+ )
95
127
  }
96
128
 
97
129
  interface Props {
98
130
  badgeText?: string;
131
+ isUri?: boolean;
99
132
  onPress?(): void;
100
- image: string | { uri: string };
133
+ image: any;
134
+ isCentered?: any;
101
135
  title: string;
102
136
  titleStyle?: TextStyle;
103
137
  description?: string;
104
138
  descriptionStyle?: TextStyle;
105
139
  price?: string;
106
140
  prevPrice?: string;
107
- style?: ViewStyle;
141
+ style?: any;
108
142
  }
109
143
 
110
144
  export default OCard;
@@ -473,3 +473,7 @@ export interface Cart {
473
473
  total: number;
474
474
  clearInactivityTimeout: any;
475
475
  }
476
+
477
+ export interface NoNetworkParams {
478
+ image?: any;
479
+ }
@@ -1,16 +1,21 @@
1
1
  import { AddressForm } from './src/components/AddressForm';
2
2
  import { AddressDetails } from './src/components/AddressDetails';
3
+ import { AnalyticsSegment } from './src/components/AnalyticsSegment';
3
4
  import { Home } from './src/components/Home';
4
5
  import { LoginForm } from './src/components/LoginForm';
5
6
  import { SignupForm } from './src/components/SignupForm';
6
7
  import { ActiveOrders } from './src/components/ActiveOrders';
7
8
  import { AddressList } from './src/components/AddressList';
8
9
  import { AppleLogin } from './src/components/AppleLogin';
10
+ import { BusinessBasicInformation } from './src/components/BusinessBasicInformation';
11
+ import { BusinessProductsCategories } from './src/components/BusinessProductsCategories';
12
+ import { BusinessProductsList } from './src/components/BusinessProductsList';
9
13
  import { BusinessesListing } from './src/components/BusinessesListing';
10
14
  import { BusinessProductsListing } from './src/components/BusinessProductsListing';
11
15
  import { CartContent } from './src/components/CartContent';
12
16
  import { BusinessCart } from './src/components/BusinessCart';
13
17
  import { Checkout } from './src/components/Checkout';
18
+ import { FloatingButton } from './src/components/FloatingButton';
14
19
  import { ForgotPasswordForm } from './src/components/ForgotPasswordForm';
15
20
  import { MomentOption } from './src/components/MomentOption';
16
21
  import { OrdersOption } from './src/components/OrdersOption';
@@ -24,17 +29,26 @@ import { ReviewProducts } from './src/components/ReviewProducts';
24
29
  import { ReviewDriver } from './src/components/ReviewDriver';
25
30
  import { UserProfile } from './src/components/UserProfile';
26
31
  import { MessageListing } from './src/components/MessageListing';
32
+ import { Messages } from './src/components/Messages';
27
33
  import { Help } from './src/components/Help';
28
34
  import { HelpAccountAndPayment } from './src/components/HelpAccountAndPayment';
29
35
  import { HelpGuide } from './src/components/HelpGuide';
30
36
  import { HelpOrder } from './src/components/HelpOrder';
37
+ import { NetworkError } from './src/components/NetworkError';
31
38
  import { NotFoundSource } from './src/components/NotFoundSource';
32
39
  import { OrderTypeSelector } from './src/components/OrderTypeSelector';
40
+ import { SearchBar } from './src/components/SearchBar';
33
41
  import { Wallets } from './src/components/Wallets';
34
42
  import { PaymentOptionWallet } from './src/components/PaymentOptionWallet';
35
43
  import { ProductForm } from './src/components/ProductForm';
36
44
  import { UpsellingProducts } from './src/components/UpsellingProducts';
37
45
  import { UserVerification } from './src/components/UserVerification';
46
+ import { LastOrders } from './src/components/LastOrders';
47
+ import NavBar from './src/components/NavBar';
48
+ import { BusinessTypeFilter } from './src/components/BusinessTypeFilter';
49
+ import { BusinessController } from './src/components/BusinessController';
50
+ import { BusinessFeaturedController } from './src/components/BusinessFeaturedController';
51
+ import { HighestRatedBusinesses } from './src/components/HighestRatedBusinesses';
38
52
 
39
53
  import { Toast } from './src/components/shared/OToast';
40
54
  import {
@@ -51,6 +65,7 @@ import {
51
65
  OAlert,
52
66
  OModal,
53
67
  OBottomPopup,
68
+ HeaderTitle
54
69
  } from './src/components/shared';
55
70
 
56
71
  import { Container } from './src/layouts/Container';
@@ -65,6 +80,7 @@ import {
65
80
  export {
66
81
  AddressForm,
67
82
  AddressDetails,
83
+ AnalyticsSegment,
68
84
  Home as HomeView,
69
85
  SignupForm,
70
86
  LoginForm,
@@ -74,7 +90,7 @@ export {
74
90
  BusinessesListing,
75
91
  BusinessProductsListing,
76
92
  CartContent,
77
- BusinessCart,
93
+ BusinessCart,
78
94
  Checkout,
79
95
  ForgotPasswordForm,
80
96
  MomentOption,
@@ -89,17 +105,29 @@ export {
89
105
  BusinessMenuList,
90
106
  UserProfile,
91
107
  MessageListing,
108
+ Messages,
92
109
  Help,
93
110
  HelpAccountAndPayment,
94
111
  HelpGuide,
95
112
  HelpOrder,
113
+ NetworkError,
96
114
  NotFoundSource,
97
115
  OrderTypeSelector,
98
- Wallets,
99
- PaymentOptionWallet,
100
- ProductForm,
101
- UpsellingProducts,
102
- UserVerification,
116
+ Wallets,
117
+ PaymentOptionWallet,
118
+ ProductForm,
119
+ UpsellingProducts,
120
+ UserVerification,
121
+ BusinessBasicInformation,
122
+ BusinessProductsCategories,
123
+ BusinessProductsList,
124
+ FloatingButton,
125
+ SearchBar,
126
+ LastOrders,
127
+ BusinessTypeFilter,
128
+ BusinessController,
129
+ BusinessFeaturedController,
130
+ HighestRatedBusinesses,
103
131
 
104
132
  // OComponents
105
133
  Toast,
@@ -116,10 +144,12 @@ export {
116
144
  OAlert,
117
145
  OModal,
118
146
  OBottomPopup,
147
+ HeaderTitle,
119
148
 
120
149
  // layout
121
150
  Container,
122
151
  SafeAreaContainer,
152
+ NavBar,
123
153
 
124
154
  // utils
125
155
  _retrieveStoreData,
@@ -108,6 +108,9 @@ const AddressFormUI = (props: AddressFormParams) => {
108
108
  top: 12,
109
109
  zIndex: 1002,
110
110
  },
111
+ wrapperNavbar: Platform.OS === 'ios'
112
+ ? { paddingVertical: 0, paddingHorizontal: 40 }
113
+ : { paddingVertical: 20, paddingHorizontal: 40 }
111
114
  });
112
115
 
113
116
  const [, t] = useLanguage();
@@ -500,16 +503,18 @@ const AddressFormUI = (props: AddressFormParams) => {
500
503
  keyboardShouldPersistTaps='always'
501
504
  listViewDisplayed={false}
502
505
  >
503
- <NavBar
504
- title={t('WHERE_DO_WE_DELIVERY', 'Where do we delivery?')}
505
- titleAlign={'center'}
506
- onActionLeft={goToBack}
507
- showCall={false}
508
- paddingTop={20}
509
- btnStyle={{ paddingLeft: 40 }}
510
- titleStyle={{ fontSize: 14 }}
511
- titleWrapStyle={{ paddingHorizontal: 0 }}
512
- />
506
+ <View style={styles.wrapperNavbar}>
507
+ <NavBar
508
+ title={t('WHERE_DO_WE_DELIVERY', 'Where do we delivery?')}
509
+ titleAlign={'center'}
510
+ onActionLeft={goToBack}
511
+ showCall={false}
512
+ btnStyle={{ paddingLeft: 0 }}
513
+ style={{ flexDirection: 'column', alignItems: 'flex-start' }}
514
+ titleWrapStyle={{ paddingHorizontal: 0 }}
515
+ titleStyle={{ marginRight: 0, marginLeft: 0 }}
516
+ />
517
+ </View>
513
518
  <TouchableWithoutFeedback onPress={Keyboard.dismiss}>
514
519
  <AddressFormContainer style={{ height: 600, overflow: 'scroll' }}>
515
520
  <View>
@@ -1,7 +1,7 @@
1
1
  import React, { useEffect } from 'react'
2
2
  import { AddressList as AddressListController, useLanguage, useOrder, useSession } from 'ordering-components/native'
3
3
  import { AddressListContainer, AddressItem } from './styles'
4
- import { StyleSheet, View } from 'react-native'
4
+ import { Platform, StyleSheet, View } from 'react-native'
5
5
  import { OButton, OText, OAlert, OModal, OIcon } from '../shared'
6
6
  import { Container } from '../../layouts/Container'
7
7
  import { AddressListParams } from '../../types'
@@ -261,6 +261,32 @@ const AddressListUI = (props: AddressListParams) => {
261
261
  )}
262
262
  {!addressList.loading && !addressList.error && (
263
263
  <>
264
+ {addressList?.addresses?.length === 0 && (
265
+ <View
266
+ style={{
267
+ flexDirection: 'column',
268
+ paddingHorizontal: 10,
269
+ paddingTop: 20
270
+ }}
271
+ >
272
+ <OText
273
+ size={24}
274
+ lineHeight={36}
275
+ weight={Platform.OS === 'ios' ? '600' : 'bold'}
276
+ style={{
277
+ textAlign: 'center',
278
+ marginRight: 40,
279
+ color: theme.colors.textNormal,
280
+ paddingHorizontal: 0,
281
+ width: '100%',
282
+ marginLeft: 0
283
+ }}
284
+ >
285
+ {t('ADDRESS_LIST', 'Address List')}
286
+ </OText>
287
+ </View>
288
+ )}
289
+
264
290
  <OButton
265
291
  text={t('ADD_NEW_ADDRESS', 'Add new Address')}
266
292
  imgRightSrc=''