ordering-ui-react-native 0.22.75 → 0.22.76-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 (137) hide show
  1. package/package.json +5 -7
  2. package/src/components/BusinessesListing/index.tsx +1 -1
  3. package/src/components/Checkout/index.tsx +40 -39
  4. package/src/components/VerifyPhone/styles.tsx +1 -2
  5. package/src/context/OfflineActions/index.tsx +236 -0
  6. package/src/providers/AlertProvider.tsx +3 -1
  7. package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +5 -3
  8. package/themes/business/src/components/AcceptOrRejectOrder/styles.tsx +1 -0
  9. package/themes/business/src/components/BusinessController/index.tsx +8 -3
  10. package/themes/business/src/components/BusinessProductList/index.tsx +3 -2
  11. package/themes/business/src/components/Chat/index.tsx +15 -3
  12. package/themes/business/src/components/DriverMap/index.tsx +44 -33
  13. package/themes/business/src/components/FloatingButton/index.tsx +3 -2
  14. package/themes/business/src/components/LanguageSelector/index.tsx +1 -1
  15. package/themes/business/src/components/LoginForm/index.tsx +123 -98
  16. package/themes/business/src/components/LogoutButton/index.tsx +13 -4
  17. package/themes/business/src/components/MapView/RenderMarker.tsx +146 -0
  18. package/themes/business/src/components/MapView/index.tsx +68 -142
  19. package/themes/business/src/components/NewOrderNotification/index.tsx +38 -54
  20. package/themes/business/src/components/OrderDetails/Business.tsx +56 -20
  21. package/themes/business/src/components/OrderDetails/Delivery.tsx +111 -42
  22. package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +146 -36
  23. package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +51 -28
  24. package/themes/business/src/components/OrderDetails/styles.tsx +39 -3
  25. package/themes/business/src/components/OrderDetails/usePrinterCommands.tsx +17 -16
  26. package/themes/business/src/components/OrderDetailsLogistic/index.tsx +3 -2
  27. package/themes/business/src/components/OrderSummary/index.tsx +271 -176
  28. package/themes/business/src/components/OrdersListManager/index.tsx +13 -1
  29. package/themes/business/src/components/OrdersOption/index.tsx +207 -144
  30. package/themes/business/src/components/OrdersOption/styles.tsx +14 -0
  31. package/themes/business/src/components/PreviousMessages/index.tsx +26 -3
  32. package/themes/business/src/components/PreviousOrders/OrderItem.tsx +20 -8
  33. package/themes/business/src/components/PreviousOrders/index.tsx +74 -66
  34. package/themes/business/src/components/PreviousOrders/styles.tsx +2 -1
  35. package/themes/business/src/components/PrinterEdition/MessageAlert.tsx +33 -0
  36. package/themes/business/src/components/PrinterEdition/index.tsx +143 -75
  37. package/themes/business/src/components/PrinterEdition/printerList.tsx +23 -0
  38. package/themes/business/src/components/PrinterSettings/index.tsx +1 -1
  39. package/themes/business/src/components/ProductItemAccordion/index.tsx +15 -16
  40. package/themes/business/src/components/ReviewCustomer/index.tsx +2 -0
  41. package/themes/business/src/components/StoresList/index.tsx +2 -2
  42. package/themes/business/src/components/UserProfileForm/index.tsx +48 -10
  43. package/themes/business/src/components/UserProfileForm/styles.tsx +7 -0
  44. package/themes/business/src/components/WebsocketStatus/index.tsx +2 -2
  45. package/themes/business/src/config/currency.tsx +1010 -0
  46. package/themes/business/src/hooks/useLocation.tsx +16 -12
  47. package/themes/business/src/layouts/SafeAreaContainer.tsx +35 -19
  48. package/themes/business/src/types/index.tsx +26 -4
  49. package/themes/business/src/utils/index.tsx +26 -2
  50. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  51. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  52. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  53. package/themes/kiosk/src/components/Checkout/index.tsx +9 -5
  54. package/themes/kiosk/src/components/CustomerName/index.tsx +1 -1
  55. package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
  56. package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
  57. package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
  58. package/themes/kiosk/src/components/PaymentOptions/index.tsx +121 -57
  59. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  60. package/themes/original/index.tsx +223 -219
  61. package/themes/original/src/components/AddressForm/index.tsx +56 -17
  62. package/themes/original/src/components/AppleLogin/index.tsx +3 -4
  63. package/themes/original/src/components/BusinessController/index.tsx +4 -2
  64. package/themes/original/src/components/BusinessItemAccordion/index.tsx +8 -3
  65. package/themes/original/src/components/BusinessListingSearch/BusinessSearchFooter.tsx +102 -90
  66. package/themes/original/src/components/BusinessListingSearch/BusinessSearchHeader.tsx +7 -3
  67. package/themes/original/src/components/BusinessListingSearch/index.tsx +8 -13
  68. package/themes/original/src/components/BusinessPreorder/index.tsx +30 -17
  69. package/themes/original/src/components/BusinessProductsList/SubcategoriesComponent/index.tsx +72 -69
  70. package/themes/original/src/components/BusinessProductsList/index.tsx +4 -5
  71. package/themes/original/src/components/BusinessProductsList/styles.tsx +0 -3
  72. package/themes/original/src/components/BusinessProductsListing/index.tsx +5 -4
  73. package/themes/original/src/components/BusinessesListing/Layout/Appointment/styles.tsx +1 -0
  74. package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +2 -1
  75. package/themes/original/src/components/Cart/index.tsx +43 -12
  76. package/themes/original/src/components/Checkout/index.tsx +126 -98
  77. package/themes/original/src/components/FloatingButton/index.tsx +1 -1
  78. package/themes/original/src/components/GPSButton/index.tsx +2 -1
  79. package/themes/original/src/components/GoogleMap/index.tsx +3 -2
  80. package/themes/original/src/components/Help/functions.tsx +76 -0
  81. package/themes/original/src/components/Help/index.tsx +74 -29
  82. package/themes/original/src/components/Help/styles.tsx +4 -1
  83. package/themes/original/src/components/HelpOptions/index.tsx +53 -0
  84. package/themes/original/src/components/HighestRatedBusinesses/index.tsx +1 -1
  85. package/themes/original/src/components/Home/index.tsx +36 -11
  86. package/themes/original/src/components/LastOrder/index.tsx +1 -1
  87. package/themes/original/src/components/LoginForm/index.tsx +11 -5
  88. package/themes/original/src/components/MessageListing/index.tsx +1 -1
  89. package/themes/original/src/components/Messages/index.tsx +562 -555
  90. package/themes/original/src/components/MomentOption/TimeListItem.tsx +56 -0
  91. package/themes/original/src/components/MomentOption/index.tsx +141 -61
  92. package/themes/original/src/components/MomentOption/styles.tsx +1 -1
  93. package/themes/original/src/components/MomentSelector/index.tsx +5 -2
  94. package/themes/original/src/components/MultiCheckout/index.tsx +78 -33
  95. package/themes/original/src/components/MultiOrdersDetails/SingleOrderCard.tsx +2 -2
  96. package/themes/original/src/components/MultiOrdersDetails/index.tsx +2 -2
  97. package/themes/original/src/components/NavBar/index.tsx +6 -2
  98. package/themes/original/src/components/NotFoundSource/index.tsx +40 -39
  99. package/themes/original/src/components/NotFoundSource/styles.tsx +18 -9
  100. package/themes/original/src/components/OrderDetails/OrderEta.tsx +4 -3
  101. package/themes/original/src/components/OrderDetails/OrderHistory.tsx +11 -4
  102. package/themes/original/src/components/OrderDetails/index.tsx +44 -20
  103. package/themes/original/src/components/OrderDetails/styles.tsx +0 -1
  104. package/themes/original/src/components/OrderProgress/index.tsx +5 -4
  105. package/themes/original/src/components/OrderSummary/index.tsx +32 -11
  106. package/themes/original/src/components/OrderTypeSelector/index.tsx +120 -120
  107. package/themes/original/src/components/OrdersOption/index.tsx +325 -325
  108. package/themes/original/src/components/PaymentOptionWallet/index.tsx +1 -0
  109. package/themes/original/src/components/PaymentOptions/index.tsx +471 -459
  110. package/themes/original/src/components/PhoneInputNumber/index.tsx +92 -7
  111. package/themes/original/src/components/ProductItemAccordion/index.tsx +28 -37
  112. package/themes/original/src/components/ProductOptionSubOption/index.tsx +15 -14
  113. package/themes/original/src/components/ServiceForm/index.tsx +2 -2
  114. package/themes/original/src/components/SignupForm/index.tsx +40 -24
  115. package/themes/original/src/components/SingleOrderCard/index.tsx +8 -5
  116. package/themes/original/src/components/SingleProductCard/index.tsx +2 -1
  117. package/themes/original/src/components/SingleProductCard/styles.tsx +0 -3
  118. package/themes/original/src/components/StripeCardsList/index.tsx +7 -1
  119. package/themes/original/src/components/StripeElementsForm/index.tsx +2 -2
  120. package/themes/original/src/components/TaxInformation/index.tsx +3 -2
  121. package/themes/original/src/components/UpsellingProducts/UpsellingContent.tsx +7 -2
  122. package/themes/original/src/components/UserDetails/index.tsx +17 -16
  123. package/themes/original/src/components/UserFormDetails/index.tsx +109 -67
  124. package/themes/original/src/components/UserVerification/index.tsx +18 -5
  125. package/themes/original/src/components/VerifyPhone/index.tsx +1 -1
  126. package/themes/original/src/components/shared/OInput.tsx +97 -97
  127. package/themes/original/src/components/shared/OModal.tsx +7 -2
  128. package/themes/original/src/providers/AlertProvider.tsx +1 -1
  129. package/themes/original/src/types/index.tsx +700 -695
  130. package/themes/original/src/utils/index.tsx +50 -34
  131. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
  132. package/themes/original/src/components/HelpAccountAndPayment/index.tsx +0 -62
  133. package/themes/original/src/components/HelpAccountAndPayment/styles.tsx +0 -12
  134. package/themes/original/src/components/HelpGuide/index.tsx +0 -68
  135. package/themes/original/src/components/HelpGuide/styles.tsx +0 -12
  136. package/themes/original/src/components/HelpOrder/index.tsx +0 -71
  137. package/themes/original/src/components/HelpOrder/styles.tsx +0 -13
@@ -1,8 +1,8 @@
1
1
  import React, { useEffect } from 'react'
2
2
  import {
3
- OrderTypeControl,
4
- useLanguage,
5
- useOrder,
3
+ OrderTypeControl,
4
+ useLanguage,
5
+ useOrder,
6
6
  } from 'ordering-components/native'
7
7
  import { useTheme } from 'styled-components/native';
8
8
  import { Platform, View } from 'react-native'
@@ -14,132 +14,132 @@ import { ORDER_TYPES } from '../../config/constants';
14
14
  import AntDesignIcon from 'react-native-vector-icons/AntDesign'
15
15
 
16
16
  const OrderTypeSelectorUI = (props: OrderTypeSelectParams) => {
17
- const {
18
- navigation,
19
- handleChangeOrderType,
20
- handleChangeType,
21
- typeSelected,
22
- defaultValue,
23
- configTypes,
24
- orderTypes,
25
- setOrderTypeValue,
26
- isChewLayout,
27
- chewOrderTypes
28
- } = props
17
+ const {
18
+ navigation,
19
+ handleChangeOrderType,
20
+ handleChangeType,
21
+ typeSelected,
22
+ defaultValue,
23
+ configTypes,
24
+ orderTypes,
25
+ setOrderTypeValue,
26
+ isChewLayout,
27
+ chewOrderTypes
28
+ } = props
29
29
 
30
- const theme = useTheme();
31
- const [orderState] = useOrder();
32
- const [, t] = useLanguage();
33
- const _orderTypes = orderTypes.filter((type: any) => configTypes?.includes(type.value));
34
- const orderTypeTitle = (type: string) => theme?.header?.components?.order_types?.components?.[type]?.components?.title
35
- const orderTypeDescription = (type: string) => theme?.header?.components?.order_types?.components?.[type]?.components?.description
36
- const orderTypeCallAction = (type: string) => theme?.header?.components?.order_types?.components?.[type]?.components?.call_to_action
37
- const items = _orderTypes.map((type) => {
38
- return {
39
- value: type.value,
40
- label: orderTypeTitle(type.value) || t(type.content, type.content),
41
- description: orderTypeDescription(type.value) || t(type.description, 'Lorem ipsum dolor sit amet, consectetur.')
42
- }
43
- })
30
+ const theme = useTheme();
31
+ const [orderState] = useOrder();
32
+ const [, t] = useLanguage();
33
+ const _orderTypes = orderTypes.filter((type: any) => configTypes?.includes(type.value));
34
+ const orderTypeTitle = (type: string) => theme?.header?.components?.order_types?.components?.[type]?.components?.title
35
+ const orderTypeDescription = (type: string) => theme?.header?.components?.order_types?.components?.[type]?.components?.description
36
+ const orderTypeCallAction = (type: string) => theme?.header?.components?.order_types?.components?.[type]?.components?.call_to_action
37
+ const items = _orderTypes.map((type) => {
38
+ return {
39
+ value: type.value,
40
+ label: orderTypeTitle(type.value) || t(type.content, type.content),
41
+ description: orderTypeDescription(type.value) || t(type.description, 'Lorem ipsum dolor sit amet, consectetur.')
42
+ }
43
+ })
44
44
 
45
- const goToBack = () => !orderState?.loading && navigation?.canGoBack() && navigation.goBack();
45
+ const goToBack = () => !orderState?.loading && navigation?.canGoBack() && navigation.goBack();
46
46
 
47
- const handleChangeOrderTypeCallback = (orderType: number) => {
48
- if (!orderState.loading) {
49
- setOrderTypeValue && setOrderTypeValue(orderType)
50
- handleChangeOrderType(orderType)
51
- if (!isChewLayout) {
52
- goToBack();
53
- }
54
- }
55
- }
47
+ const handleChangeOrderTypeCallback = (orderType: number) => {
48
+ if (!orderState.loading) {
49
+ setOrderTypeValue && setOrderTypeValue(orderType)
50
+ handleChangeOrderType(orderType)
51
+ if (!isChewLayout) {
52
+ goToBack();
53
+ }
54
+ }
55
+ }
56
56
 
57
- useEffect(() => {
58
- handleChangeType && handleChangeType(typeSelected)
59
- }, [typeSelected])
57
+ useEffect(() => {
58
+ handleChangeType && handleChangeType(typeSelected)
59
+ }, [typeSelected])
60
60
 
61
- return (
62
- <Wrapper>
63
- {isChewLayout ? (
64
- <View>
65
- <OTabs
66
- horizontal
67
- showsHorizontalScrollIndicator={false}
68
- >
69
- {chewOrderTypes?.map((type: any) => (
70
- <TabBtn
71
- key={type.value}
72
- onPress={() => handleChangeOrderTypeCallback(type.value)}
73
- >
74
- <OTab
75
- style={{
76
- borderBottomColor:
77
- type.value === typeSelected
78
- ? theme.colors.textNormal
79
- : theme.colors.border,
80
- }}>
81
- <OText
82
- size={14}
83
- color={
84
- type.value === typeSelected
85
- ? theme.colors.textNormal
86
- : theme.colors.disabled
87
- }
88
- weight={type.value === typeSelected ? 'bold' : 'normal'}>
89
- {type.name}
90
- </OText>
91
- </OTab>
92
- </TabBtn>
93
- ))}
94
- </OTabs>
95
- </View>
96
- ) : (
97
- <>
98
- <NavBar
99
- onActionLeft={() => goToBack()}
100
- btnStyle={{ paddingLeft: 0, width: 50 }}
101
- paddingTop={Platform.OS === 'ios' ? 10 : 0}
102
- style={{ paddingBottom: 0 }}
103
- title={t('HOW_WILL_YOU_DELIVERY_TYPE', 'How will your order type?')}
104
- titleAlign={'center'}
105
- noMargin
106
- />
107
- {
108
- items.length > 0 && (
109
- <ListWrapper>
110
- {
111
- items && items.map((item: any, idx: number) =>
112
- <OrderTypeWrapper activeOpacity={0.8} key={idx} disabled={orderState.loading} onPress={() => handleChangeOrderTypeCallback(item.value)}>
113
- <BgImage source={theme.images.orderTypes[`type${item?.value || 1}`]} resizeMode={'cover'} style={{ opacity: item?.value == typeSelected || typeSelected === undefined ? 1 : 0.4 }}>
114
- <MaskCont>
115
- <OText size={12} lineHeight={18} color={theme.colors.white} weight={Platform.OS === 'android' ? 'bold' : '600'}>{item?.label}</OText>
116
- <OText size={10} lineHeight={15} color={theme.colors.white}>{item?.description}</OText>
117
- <View style={{ flexDirection: 'row', alignItems: 'center' }}>
118
- <OText size={10} lineHeight={15} color={theme.colors.white}>{orderTypeCallAction(item?.value) || t('START_MY_ORDER', 'Start my order')}</OText>
119
- <AntDesignIcon name='arrowleft' size={26} color={theme.colors.white} style={{ transform: [{ rotate: '180deg' }], marginStart: 4 }} />
120
- </View>
121
- </MaskCont>
122
- </BgImage>
123
- </OrderTypeWrapper>
124
- )
125
- }
126
- </ListWrapper>
127
- )
128
- }
129
- </>
130
- )}
61
+ return (
62
+ <Wrapper>
63
+ {isChewLayout ? (
64
+ <View>
65
+ <OTabs
66
+ horizontal
67
+ showsHorizontalScrollIndicator={false}
68
+ >
69
+ {chewOrderTypes?.map((type: any) => (
70
+ <TabBtn
71
+ key={type.value}
72
+ onPress={() => handleChangeOrderTypeCallback(type.value)}
73
+ >
74
+ <OTab
75
+ style={{
76
+ borderBottomColor:
77
+ type.value === typeSelected
78
+ ? theme.colors.textNormal
79
+ : theme.colors.border,
80
+ }}>
81
+ <OText
82
+ size={14}
83
+ color={
84
+ type.value === typeSelected
85
+ ? theme.colors.textNormal
86
+ : theme.colors.disabled
87
+ }
88
+ weight={type.value === typeSelected ? 'bold' : 'normal'}>
89
+ {type.name}
90
+ </OText>
91
+ </OTab>
92
+ </TabBtn>
93
+ ))}
94
+ </OTabs>
95
+ </View>
96
+ ) : (
97
+ <>
98
+ <NavBar
99
+ onActionLeft={() => goToBack()}
100
+ btnStyle={{ paddingLeft: 0, width: 50 }}
101
+ paddingTop={Platform.OS === 'ios' ? 10 : 0}
102
+ style={{ paddingBottom: 0 }}
103
+ title={t('HOW_WILL_YOU_DELIVERY_TYPE', 'How will your order type?')}
104
+ titleAlign={'center'}
105
+ noMargin
106
+ />
107
+ {
108
+ items.length > 0 && (
109
+ <ListWrapper>
110
+ {
111
+ items && items.map((item: any, idx: number) =>
112
+ <OrderTypeWrapper activeOpacity={0.8} key={idx} disabled={orderState.loading} onPress={() => handleChangeOrderTypeCallback(item.value)}>
113
+ <BgImage source={theme.images.orderTypes[`type${item?.value || 1}`]} resizeMode={'cover'} style={{ opacity: item?.value == typeSelected || typeSelected === undefined ? 1 : 0.4 }}>
114
+ <MaskCont>
115
+ <OText size={12} lineHeight={18} color={theme.colors.white} weight={Platform.OS === 'android' ? 'bold' : '600'}>{item?.label}</OText>
116
+ <OText size={10} lineHeight={15} color={theme.colors.white}>{item?.description}</OText>
117
+ <View style={{ flexDirection: 'row', alignItems: 'center' }}>
118
+ <OText size={10} lineHeight={15} color={theme.colors.white}>{orderTypeCallAction(item?.value) || t('START_MY_ORDER', 'Start my order')}</OText>
119
+ <AntDesignIcon name='arrowleft' size={26} color={theme.colors.white} style={{ transform: [{ rotate: '180deg' }], marginStart: 4 }} />
120
+ </View>
121
+ </MaskCont>
122
+ </BgImage>
123
+ </OrderTypeWrapper>
124
+ )
125
+ }
126
+ </ListWrapper>
127
+ )
128
+ }
129
+ </>
130
+ )}
131
131
 
132
- </Wrapper>
133
- )
132
+ </Wrapper>
133
+ )
134
134
  }
135
135
 
136
136
  export const OrderTypeSelector = (props: any) => {
137
137
 
138
- const orderTypeProps = {
139
- ...props,
140
- UIComponent: OrderTypeSelectorUI,
141
- orderTypes: props.orderTypes || ORDER_TYPES
142
- }
138
+ const orderTypeProps = {
139
+ ...props,
140
+ UIComponent: OrderTypeSelectorUI,
141
+ orderTypes: props.orderTypes || ORDER_TYPES
142
+ }
143
143
 
144
- return <OrderTypeControl {...orderTypeProps} />
144
+ return <OrderTypeControl {...orderTypeProps} />
145
145
  }