ordering-ui-react-native 0.12.71 → 0.12.75

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ordering-ui-react-native",
3
- "version": "0.12.71",
3
+ "version": "0.12.75",
4
4
  "description": "Reusable components made in react native",
5
5
  "main": "src/index.tsx",
6
6
  "author": "ordering.inc",
@@ -2,7 +2,7 @@ import styled from 'styled-components/native'
2
2
 
3
3
  export const ActiveOrdersContainer = styled.ScrollView`
4
4
  margin-bottom: 20px;
5
- height: ${({ isMiniCards }: { isMiniCards: boolean }) => !isMiniCards ? '150px' : '500px'};
5
+ height: ${({ isMiniCards }: { isMiniCards: boolean }) => !isMiniCards ? '150px' : '220px'};
6
6
  max-height: ${({ isMiniCards }: { isMiniCards: boolean }) => !isMiniCards ? '150px' : '220px'};
7
7
  `
8
8
 
@@ -118,7 +118,7 @@ const MessagesUI = (props: MessagesParams) => {
118
118
  const messageConsole = (message: any) => {
119
119
  return message.change?.attribute !== 'driver_id'
120
120
  ?
121
- `${t('ORDER', 'Order')} ${message.change.attribute} ${t('CHANGED_FROM', 'Changed from')} ${message.change.old !== null && t(ORDER_STATUS[parseInt(message.change.old, 10)])} ${t('TO', 'to')} ${t(ORDER_STATUS[parseInt(message.change.new, 10)])}`
121
+ `${t('ORDER', 'Order')} ${t(message.change.attribute.toUpperCase(), message.change.attribute.replace('_', ' '))} ${t('CHANGED_FROM', 'Changed from')} ${message.change.old !== null && t(ORDER_STATUS[parseInt(message.change.old, 10)])} ${t('TO', 'to')} ${t(ORDER_STATUS[parseInt(message.change.new, 10)])}`
122
122
  : message.change.new
123
123
  ?
124
124
  `${message.driver?.name} ${message.driver?.lastname !== null ? message.driver.lastname : ''} ${t('WAS_ASSIGNED_AS_DRIVER', 'Was assigned as driver')} ${message.comment ? message.comment.length : ''}`
package/src/config.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "app_id": "react-native-app",
3
3
  "notification_app": "orderingapp",
4
4
  "app_name": "Ordering",
5
- "project": "reactdemo",
5
+ "project": "demologistic",
6
6
  "api": {
7
7
  "url": "https://apiv4.ordering.co",
8
8
  "language": "en",
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
2
  import FontAwesome from 'react-native-vector-icons/FontAwesome';
3
3
  import {CODES} from 'ordering-components/native'
4
+ import { useLanguage } from 'ordering-components/native'
4
5
 
5
6
  export const flatArray = (arr: any) => [].concat(...arr)
6
7
 
@@ -42,10 +43,11 @@ export const getTraduction = (key: string, t: any) => {
42
43
  * @param {string} time business delivery time
43
44
  */
44
45
  export const convertHoursToMinutes = (time: any) => {
46
+ const [, t] = useLanguage()
45
47
  if (!time) return '0min'
46
48
  const [hour, minute] = time.split(':')
47
49
  const result = (parseInt(hour, 10) * 60) + parseInt(minute, 10)
48
- return `${result}min`
50
+ return `${result}${t('MIN', 'min')}`
49
51
  }
50
52
 
51
53
  export const getIconCard = (brand: string, size: number) => {
@@ -36,6 +36,7 @@ import { UserProfileForm } from './src/components/UserProfileForm';
36
36
  import { VerifyPhone } from './src/components/VerifyPhone';
37
37
  import { DriverMap } from './src/components/DriverMap';
38
38
  import { MapViewUI as MapView } from './src/components/MapView'
39
+ import { NewOrderNotification } from './src/components/NewOrderNotification';
39
40
  //OComponents
40
41
  import {
41
42
  OText,
@@ -74,8 +75,9 @@ export {
74
75
  LoginForm,
75
76
  LogoutButton,
76
77
  MessagesOption,
77
- NotFoundSource,
78
78
  MapView,
79
+ NewOrderNotification,
80
+ NotFoundSource,
79
81
  OrderDetailsBusiness,
80
82
  OrderDetailsDelivery,
81
83
  OrderMessage,
@@ -59,19 +59,19 @@ export const NewOrderNotification = (props: any) => {
59
59
  setModalOpen(false)
60
60
  }
61
61
 
62
- const handleNotification = useCallback((order: any) => {
62
+ const handleNotification = (order: any) => {
63
+ setModalOpen(true)
63
64
  clearInterval(soundTimeout)
64
65
  handlePlayNotificationSound()
65
66
  setNewOrderId(order.id)
66
- setModalOpen(true)
67
- }, [newOrderId, notificationSound, soundTimeout])
67
+ }
68
68
 
69
69
  useEffect(() => {
70
70
  events.on('order_added', handleNotification)
71
71
  return () => {
72
72
  events.off('order_added', handleNotification)
73
73
  }
74
- }, [handleNotification])
74
+ }, [])
75
75
 
76
76
  const handleUpdateOrder = useCallback(async (order: any) => {
77
77
  if (order?.driver) {
@@ -161,7 +161,7 @@ export const OrderHeaderComponent = (props: OrderHeader) => {
161
161
 
162
162
  <OText numberOfLines={2} size={20} weight="600">
163
163
  <>
164
- {`${t('INVOICE_ORDER_NO', 'Order No.')} ${order.id} `}
164
+ {`${t('INVOICE_ORDER_NO', 'Order No.')} ${order?.id} `}
165
165
  {!order?.isLogistic && (!order?.order_group_id || !logisticOrderStatus?.includes(order?.status)) && (
166
166
  <>
167
167
  {t('IS', 'is')}{' '}
@@ -20,7 +20,6 @@ import {
20
20
  } from './styles';
21
21
  import { PreviousOrders } from '../PreviousOrders';
22
22
  import { OrdersOptionParams } from '../../types';
23
- import { NewOrderNotification } from '../NewOrderNotification';
24
23
 
25
24
  import { TouchableOpacity } from 'react-native-gesture-handler';
26
25
  import GestureRecognizer from 'react-native-swipe-gestures';
@@ -549,7 +548,6 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
549
548
  </View>
550
549
  {/* </GestureRecognizer> */}
551
550
 
552
- <NewOrderNotification />
553
551
  {openModal && (
554
552
  <OModal open={openModal} entireModal customClose>
555
553
  <ModalContainer
@@ -26,7 +26,7 @@ const BusinessProductsCategoriesUI = (props: any) => {
26
26
 
27
27
  const [tabLayouts, setTabLayouts] = useState<any>({});
28
28
  const [scrollOffsetX, setScrollOffsetX] = useState<any>(0);
29
- const tabsRef = useRef<any>(null);
29
+ const tabsRef = useRef<any>(null);
30
30
 
31
31
 
32
32
  const theme = useTheme();
@@ -56,47 +56,47 @@ const BusinessProductsCategoriesUI = (props: any) => {
56
56
  const handleCategoryScroll = (category: any) => {
57
57
  setCategoryClicked(true);
58
58
  setSelectedCategoryId(`cat_${category?.id}`);
59
-
60
- if (!lazyLoadProductsRecommended) {
61
- if (category?.id) {
62
- scrollViewRef.current.scrollTo({
63
- y: categoriesLayout[`cat_${category?.id}`]?.y + productListLayout?.y + 270,
64
- animated: true
65
- })
66
- } else {
67
- scrollViewRef.current.scrollTo({
68
- y: productListLayout?.y - 70,
69
- animated: true
70
- })
71
- }
72
- } else {
73
- handlerClickCategory(category)
74
- }
75
- }
76
59
 
77
-
78
- const handleOnLayout = (event: any, categoryId: any) => {
60
+ if (!lazyLoadProductsRecommended) {
61
+ if (category?.id) {
62
+ scrollViewRef.current.scrollTo({
63
+ y: categoriesLayout[`cat_${category?.id}`]?.y + productListLayout?.y + 270,
64
+ animated: true
65
+ })
66
+ } else {
67
+ scrollViewRef.current.scrollTo({
68
+ y: productListLayout?.y - 70,
69
+ animated: true
70
+ })
71
+ }
72
+ } else {
73
+ handlerClickCategory(category)
74
+ }
75
+ }
76
+
77
+
78
+ const handleOnLayout = (event: any, categoryId: any) => {
79
79
  const _tabLayouts = { ...tabLayouts }
80
80
  const categoryKey = 'cat_' + categoryId
81
81
  _tabLayouts[categoryKey] = event.nativeEvent.layout
82
82
  setTabLayouts(_tabLayouts)
83
83
  }
84
84
 
85
- useEffect(() => {
86
- if (!selectedCategoryId || Object.keys(tabLayouts).length === 0) return
87
- tabsRef.current.scrollTo({
88
- x: tabLayouts[selectedCategoryId]?.x - 40,
89
- animated: true
90
- })
91
- }, [selectedCategoryId, tabLayouts])
85
+ useEffect(() => {
86
+ if (!selectedCategoryId || Object.keys(tabLayouts).length === 0) return
87
+ tabsRef.current.scrollTo({
88
+ x: tabLayouts[selectedCategoryId]?.x - 40,
89
+ animated: true
90
+ })
91
+ }, [selectedCategoryId, tabLayouts])
92
92
 
93
93
 
94
94
  return (
95
- <ScrollView ref={tabsRef} horizontal contentContainerStyle={contentStyle}
95
+ <ScrollView ref={tabsRef} horizontal contentContainerStyle={contentStyle}
96
96
  style={{ ...styles.container, borderBottomWidth: loading ? 0 : 1 }} showsHorizontalScrollIndicator={false}
97
97
  onScroll={(e: any) => setScrollOffsetX(e.nativeEvent.contentOffset.x)}
98
- scrollEventThrottle={16}
99
- >
98
+ scrollEventThrottle={16}
99
+ >
100
100
  {loading && (
101
101
  <Placeholder Animation={Fade}>
102
102
  <View style={{ flexDirection: 'row' }}>
@@ -2,7 +2,7 @@ import styled from 'styled-components/native'
2
2
 
3
3
  export const ActiveOrdersContainer = styled.ScrollView`
4
4
  margin-bottom: 20px;
5
- height: ${({ isMiniCards }: { isMiniCards: boolean }) => !isMiniCards ? '150px' : '500px'};
5
+ height: ${({ isMiniCards }: { isMiniCards: boolean }) => !isMiniCards ? '150px' : '220px'};
6
6
  max-height: ${({ isMiniCards }: { isMiniCards: boolean }) => !isMiniCards ? '150px' : '220px'};
7
7
  `
8
8
 
@@ -117,10 +117,8 @@ export const ActiveOrders = (props: ActiveOrdersParams) => {
117
117
  {pagination?.totalPages && pagination?.currentPage < pagination?.totalPages && (
118
118
  <LoadMore>
119
119
  <OButton
120
- bgColor={theme.colors.white}
121
- textStyle={{ color: theme.colors.primary, fontSize: 14 }}
120
+ textStyle={{ color: '#fff' }}
122
121
  text={t('LOAD_MORE_ORDERS', 'Load more orders')}
123
- borderColor={theme.colors.primary}
124
122
  onClick={loadMoreOrders}
125
123
  style={styles.loadMoreButton}
126
124
  />
@@ -154,9 +152,9 @@ const styles = StyleSheet.create({
154
152
  minWidth: 230,
155
153
  },
156
154
  loadMoreButton: {
157
- width: 200,
158
- height: 46,
155
+ width: '100%',
159
156
  marginLeft: 'auto',
160
157
  marginRight: 'auto',
158
+ borderRadius: 7.6
161
159
  },
162
160
  });
@@ -18,7 +18,9 @@ const BusinessProductsCategoriesUI = (props: any) => {
18
18
  categoriesLayout,
19
19
  selectedCategoryId,
20
20
  handlerClickCategory,
21
- lazyLoadProductsRecommended
21
+ lazyLoadProductsRecommended,
22
+ setCategoryClicked,
23
+ setSelectedCategoryId
22
24
  } = props;
23
25
 
24
26
  const theme = useTheme();
@@ -36,9 +38,23 @@ const BusinessProductsCategoriesUI = (props: any) => {
36
38
  featuredStyle: {
37
39
  display: 'none',
38
40
  },
41
+ tabStyle: {
42
+ marginTop: 10,
43
+ height: 4,
44
+ borderTopStartRadius: 4,
45
+ borderTopEndRadius: 4,
46
+ backgroundColor: theme.colors.textPrimary,
47
+ },
48
+ tabDeactived: {
49
+ marginTop: 10,
50
+ height: 4
51
+ }
39
52
  });
40
53
 
41
54
  const handleCategoryScroll = (category: any) => {
55
+ setCategoryClicked(true);
56
+ setSelectedCategoryId(`cat_${category?.id}`);
57
+
42
58
  if (!lazyLoadProductsRecommended) {
43
59
  if (category?.id) {
44
60
  scrollViewRef.current.scrollTo({
@@ -57,11 +73,11 @@ const BusinessProductsCategoriesUI = (props: any) => {
57
73
  }
58
74
 
59
75
  const handleOnLayout = (event: any, categoryId: any) => {
60
- const _tabLayouts = { ...tabLayouts }
61
- const categoryKey = 'cat_' + categoryId
62
- _tabLayouts[categoryKey] = event.nativeEvent.layout
63
- setTabLayouts(_tabLayouts)
64
- }
76
+ const _tabLayouts = { ...tabLayouts }
77
+ const categoryKey = 'cat_' + categoryId
78
+ _tabLayouts[categoryKey] = event.nativeEvent.layout
79
+ setTabLayouts(_tabLayouts)
80
+ }
65
81
 
66
82
  useEffect(() => {
67
83
  if (!selectedCategoryId || Object.keys(tabLayouts).length === 0) return
@@ -102,39 +118,20 @@ const BusinessProductsCategoriesUI = (props: any) => {
102
118
  {
103
119
  borderColor:
104
120
  (!lazyLoadProductsRecommended
105
- ? (selectedCategoryId === (category.id ? `cat_${category.id}` : null))
106
- : (categorySelected?.id === category.id))
107
- ? theme.colors.textNormal
108
- : theme.colors.border,
121
+ ? (selectedCategoryId === (category.id ? `cat_${category.id}` : null))
122
+ : (categorySelected?.id === category.id))
123
+ ? theme.colors.textNormal
124
+ : theme.colors.border,
109
125
  },
110
126
  ]}
111
127
  onLayout={(event: any) => handleOnLayout(event, category.id)}
112
128
  >
113
129
  <OText
114
- size={
115
- (!lazyLoadProductsRecommended
116
- ? (selectedCategoryId === (category.id ? `cat_${category.id}` : null))
117
- : (categorySelected?.id === category.id))
118
- ? 14
119
- : 12
120
- }
121
- weight={
122
- (!lazyLoadProductsRecommended
123
- ? (selectedCategoryId === (category.id ? `cat_${category.id}` : null))
124
- : (categorySelected?.id === category.id))
125
- ? '600'
126
- : '400'
127
- }
128
- color={
129
- (!lazyLoadProductsRecommended
130
- ? (selectedCategoryId === (category.id ? `cat_${category.id}` : null))
131
- : (categorySelected?.id === category.id))
132
- ? theme.colors.textNormal
133
- : theme.colors.textSecondary
134
- }
135
- style={{ alignSelf: 'center' }}>
130
+ color={selectedCategoryId === `cat_${category.id}` ? theme.colors.textPrimary : theme.colors.textSecondary}
131
+ >
136
132
  {category.name}
137
133
  </OText>
134
+ <View style={selectedCategoryId === `cat_${category.id}` ? styles.tabStyle : styles.tabDeactived} />
138
135
  </Tab>
139
136
  ))}
140
137
  </ScrollView>
@@ -1,4 +1,4 @@
1
- import React, { useEffect, useRef, useState } from 'react'
1
+ import React, { useCallback, useEffect, useRef, useState } from 'react'
2
2
  import { View, TouchableOpacity, StyleSheet, SafeAreaView, Platform } from 'react-native'
3
3
  import { useTheme } from 'styled-components/native';
4
4
  import {
@@ -27,6 +27,8 @@ import {
27
27
  import { FloatingButton } from '../FloatingButton'
28
28
  import { ProductForm } from '../ProductForm'
29
29
  import { UpsellingProducts } from '../UpsellingProducts'
30
+ import { useSafeAreaInsets } from 'react-native-safe-area-context';
31
+ import Animated from 'react-native-reanimated'
30
32
 
31
33
  const PIXELS_TO_SCROLL = 1000
32
34
 
@@ -53,7 +55,8 @@ const BusinessProductsListingUI = (props: BusinessProductsListingParams) => {
53
55
  const [{ auth }] = useSession()
54
56
  const [orderState] = useOrder()
55
57
  const [{ parsePrice }] = useUtils()
56
- const [ ,{showToast}] = useToast()
58
+ const [, { showToast }] = useToast()
59
+ const { top } = useSafeAreaInsets();
57
60
 
58
61
  const styles = StyleSheet.create({
59
62
  mainContainer: {
@@ -90,6 +93,7 @@ const BusinessProductsListingUI = (props: BusinessProductsListingParams) => {
90
93
  const scrollViewRef = useRef<any>(null)
91
94
  const [categoriesLayout, setCategoriesLayout] = useState<any>({})
92
95
  const [productListLayout, setProductListLayout] = useState<any>(null)
96
+ const [isCategoryClicked, setCategoryClicked] = useState(false)
93
97
 
94
98
  const currentCart: any = Object.values(orderState.carts).find((cart: any) => cart?.business?.slug === business?.slug) ?? {}
95
99
 
@@ -131,7 +135,7 @@ const BusinessProductsListingUI = (props: BusinessProductsListingParams) => {
131
135
 
132
136
  const [selectedCategoryId, setSelectedCategoryId] = useState<any>(null)
133
137
 
134
- const handleScroll = ({ nativeEvent }: any) => {
138
+ const handlePageScroll = useCallback(({ nativeEvent }: any) => {
135
139
  const scrollOffset = nativeEvent.contentOffset.y
136
140
  if (businessState?.business?.lazy_load_products_recommended) {
137
141
  const height = nativeEvent.contentSize.height
@@ -141,9 +145,14 @@ const BusinessProductsListingUI = (props: BusinessProductsListingParams) => {
141
145
  showToast(ToastType.Info, t('LOADING_MORE_PRODUCTS', 'Loading more products'))
142
146
  }
143
147
  } else {
144
- if (!scrollOffset || !categoriesLayout || !productListLayout) return
148
+ if (!scrollOffset || !categoriesLayout || !productListLayout || isCategoryClicked) return
149
+
145
150
  for (const key in categoriesLayout) {
146
151
  const categoryOffset = categoriesLayout[key].y + productListLayout?.y - 70
152
+ if (scrollOffset < 10) {
153
+ setSelectedCategoryId('cat_all');
154
+ return;
155
+ }
147
156
  if (categoryOffset - 50 <= scrollOffset && scrollOffset <= categoryOffset + 50) {
148
157
  if (selectedCategoryId !== key) {
149
158
  setSelectedCategoryId(key)
@@ -151,7 +160,12 @@ const BusinessProductsListingUI = (props: BusinessProductsListingParams) => {
151
160
  }
152
161
  }
153
162
  }
154
- }
163
+ }, [isCategoryClicked, selectedCategoryId, productListLayout])
164
+
165
+ const handleTouchDrag = useCallback(() => {
166
+ setCategoryClicked(false);
167
+ }, []);
168
+
155
169
 
156
170
  useEffect(() => {
157
171
  if (!orderState.loading) {
@@ -163,7 +177,7 @@ const BusinessProductsListingUI = (props: BusinessProductsListingParams) => {
163
177
  <SafeAreaView
164
178
  style={{ flex: 1 }}
165
179
  >
166
- <WrapHeader>
180
+ <Animated.View style={{ position: 'relative' }}>
167
181
  <TopHeader>
168
182
  {!isOpenSearchBar && (
169
183
  <>
@@ -201,13 +215,14 @@ const BusinessProductsListingUI = (props: BusinessProductsListingParams) => {
201
215
  </WrapSearchBar>
202
216
  )}
203
217
  </TopHeader>
204
- </WrapHeader>
218
+ </Animated.View>
205
219
  <BusinessProductsListingContainer
206
220
  stickyHeaderIndices={[2]}
207
221
  style={styles.mainContainer}
208
222
  ref={scrollViewRef}
209
223
  isActiveFloatingButtom={currentCart?.products?.length > 0 && categoryState.products.length !== 0}
210
- onScroll={(e: any) => handleScroll(e)}
224
+ onScroll={handlePageScroll}
225
+ onScrollBeginDrag={handleTouchDrag}
211
226
  scrollEventThrottle={16}
212
227
  >
213
228
  <BusinessBasicInformation
@@ -232,6 +247,8 @@ const BusinessProductsListingUI = (props: BusinessProductsListingParams) => {
232
247
  categoriesLayout={categoriesLayout}
233
248
  selectedCategoryId={selectedCategoryId}
234
249
  lazyLoadProductsRecommended={business?.lazy_load_products_recommended}
250
+ setSelectedCategoryId={setSelectedCategoryId}
251
+ setCategoryClicked={setCategoryClicked}
235
252
  />
236
253
  )}
237
254
  </>
@@ -5,7 +5,7 @@ export const BCContainer = styled.View`
5
5
  width: 100%;
6
6
  justify-content: flex-start;
7
7
  text-align: center;
8
- min-height: 45px;
8
+ min-height: 60px;
9
9
  `
10
10
 
11
11
  export const BusinessCategories = styled.View`
@@ -203,7 +203,7 @@ export const OrdersOption = (props: OrdersOptionParams) => {
203
203
  useDefualtSessionManager: true,
204
204
  paginationSettings: {
205
205
  initialPage: 1,
206
- pageSize: props.activeOrders || props.preOrders ? -1 : 10,
206
+ pageSize: 10,
207
207
  controlType: 'infinity'
208
208
  }
209
209
  }
@@ -170,7 +170,7 @@ export interface BusinessProductsListingParams {
170
170
  getNextProducts?: () => {};
171
171
  handleChangeCategory: (value: any) => {};
172
172
  setProductLogin?: () => {};
173
- updateProductModal?: (value: any) => {}
173
+ updateProductModal?: (value: any) => {};
174
174
  }
175
175
  export interface BusinessBasicInformationParams {
176
176
  navigation?: any;
@@ -193,6 +193,8 @@ export interface BusinessProductsCategoriesParams {
193
193
  categoriesLayout?: any;
194
194
  selectedCategoryId?: any;
195
195
  lazyLoadProductsRecommended?: any;
196
+ setSelectedCategoryId?: any
197
+ setCategoryClicked?: any
196
198
  }
197
199
  export interface BusinessProductsListParams {
198
200
  errors?: any;
@@ -73,8 +73,9 @@ const AccountUI = (props: AccountParams) => {
73
73
  console.log('ImagePicker Error: ', response.errorMessage);
74
74
  showToast(ToastType.Error, response.errorMessage);
75
75
  } else {
76
- if (response.uri) {
77
- const url = `data:${response.type};base64,${response.base64}`
76
+ if (response?.assets?.[0]?.uri) {
77
+ const image = response?.assets?.[0]
78
+ const url = `data:${image?.type};base64,${image?.base64}`;
78
79
  handleButtonUpdateClick(null, true, url);
79
80
  } else {
80
81
  showToast(ToastType.Error, t('IMAGE_NOT_FOUND', 'Image not found'));
@@ -2,7 +2,7 @@ import styled from 'styled-components/native'
2
2
 
3
3
  export const ActiveOrdersContainer = styled.ScrollView`
4
4
  margin-bottom: 20px;
5
- height: ${({ isMiniCards }: { isMiniCards: boolean }) => !isMiniCards ? '150px' : '500px'};
5
+ height: ${({ isMiniCards }: { isMiniCards: boolean }) => !isMiniCards ? '150px' : '220px'};
6
6
  max-height: ${({ isMiniCards }: { isMiniCards: boolean }) => !isMiniCards ? '150px' : '220px'};
7
7
  `
8
8
 
@@ -300,14 +300,6 @@ const AddressListUI = (props: AddressListParams) => {
300
300
  />
301
301
  </>
302
302
  )}
303
- {!isFromProfile && addressList?.addresses?.length > 0 && (
304
- <OButton
305
- text={t('CONTINUE', 'Continue')}
306
- style={styles.button}
307
- onClick={() => onNavigatorRedirect()}
308
- textStyle={{ color: theme.colors.white }}
309
- />
310
- )}
311
303
  </AddressListContainer>
312
304
  )}
313
305
  </Container>
@@ -1,8 +1,13 @@
1
1
  import React from 'react';
2
- import styled from 'styled-components/native';
2
+ import { Platform } from 'react-native';
3
+ import styled, { css } from 'styled-components/native';
3
4
 
4
5
  const ContainerStyled = styled.ScrollView`
5
6
  flex: 1;
7
+ ${(props: any) => !props.nopadding && css`
8
+ padding: ${Platform.OS === 'ios' ? '0px 30px 0px' : '30px'};
9
+ `}
10
+ background-color: ${(props: any) => props.theme.colors.backgroundPage};
6
11
  `;
7
12
 
8
13
  const SafeAreaStyled = styled.SafeAreaView`
@@ -10,19 +15,13 @@ const SafeAreaStyled = styled.SafeAreaView`
10
15
  background-color: ${(props: any) => props.theme.colors.backgroundPage};
11
16
  `;
12
17
 
13
- const ContentView = styled.View`
14
- padding-horizontal: 30px;
15
- `
16
-
17
18
 
18
19
  export const Container = (props: any) => {
19
20
  return (
20
21
  <SafeAreaStyled>
21
- <ContainerStyled ref={props?.forwardRef} keyboardShouldPersistTaps='handled'>
22
- <ContentView>
22
+ <ContainerStyled ref={props?.forwardRef} style={props?.style} {...props} keyboardShouldPersistTaps='handled'>
23
23
  {props.children}
24
- </ContentView>
25
24
  </ContainerStyled>
26
25
  </SafeAreaStyled>
27
26
  )
28
- }
27
+ }