ordering-ui-react-native 0.21.1 → 0.21.2-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 (238) hide show
  1. package/package.json +6 -5
  2. package/src/DeliveryApp.tsx +43 -1
  3. package/src/components/BusinessInformation/index.tsx +10 -9
  4. package/src/components/BusinessesListing/index.tsx +1 -1
  5. package/src/components/PaymentOptionsWebView/index.tsx +1 -0
  6. package/src/components/StripeMethodForm/index.tsx +3 -3
  7. package/src/components/VerifyPhone/styles.tsx +1 -2
  8. package/src/components/shared/OToast.tsx +3 -2
  9. package/src/types/index.tsx +2 -1
  10. package/src/utils/index.tsx +2 -2
  11. package/themes/business/index.tsx +4 -0
  12. package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +9 -2
  13. package/themes/business/src/components/BusinessController/index.tsx +19 -17
  14. package/themes/business/src/components/BusinessProductList/AccordionDropdown.tsx +63 -0
  15. package/themes/business/src/components/BusinessProductList/IterateCategories.tsx +108 -0
  16. package/themes/business/src/components/BusinessProductList/ProductList.tsx +196 -0
  17. package/themes/business/src/components/BusinessProductList/index.tsx +196 -0
  18. package/themes/business/src/components/BusinessProductList/styles.tsx +10 -0
  19. package/themes/business/src/components/Chat/index.tsx +41 -13
  20. package/themes/business/src/components/DriverMap/index.tsx +4 -2
  21. package/themes/business/src/components/DriverSchedule/index.tsx +5 -5
  22. package/themes/business/src/components/FloatingButton/index.tsx +34 -31
  23. package/themes/business/src/components/Home/index.tsx +5 -1
  24. package/themes/business/src/components/MapView/index.tsx +11 -7
  25. package/themes/business/src/components/MessagesOption/index.tsx +22 -94
  26. package/themes/business/src/components/NewOrderNotification/index.tsx +161 -106
  27. package/themes/business/src/components/OrderDetails/Delivery.tsx +21 -12
  28. package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +90 -55
  29. package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +36 -16
  30. package/themes/business/src/components/OrderDetailsLogistic/index.tsx +6 -1
  31. package/themes/business/src/components/OrderSummary/index.tsx +42 -23
  32. package/themes/business/src/components/OrdersListManager/index.tsx +7 -2
  33. package/themes/business/src/components/OrdersListManager/utils.tsx +1 -1
  34. package/themes/business/src/components/OrdersOption/index.tsx +125 -48
  35. package/themes/business/src/components/PreviousMessages/FooterMessageComponent.tsx +103 -0
  36. package/themes/business/src/components/PreviousMessages/index.tsx +97 -55
  37. package/themes/business/src/components/PreviousOrders/OrderItem.tsx +27 -35
  38. package/themes/business/src/components/PreviousOrders/OrderList.tsx +93 -0
  39. package/themes/business/src/components/PreviousOrders/OrdersGroupedItem.tsx +1 -1
  40. package/themes/business/src/components/PreviousOrders/index.tsx +192 -220
  41. package/themes/business/src/components/PreviousOrders/styles.tsx +10 -0
  42. package/themes/business/src/components/ProductItemAccordion/index.tsx +2 -2
  43. package/themes/business/src/components/ReviewCustomer/index.tsx +2 -0
  44. package/themes/business/src/components/SearchBar/index.tsx +2 -1
  45. package/themes/business/src/components/Sessions/index.tsx +187 -0
  46. package/themes/business/src/components/Sessions/styles.tsx +20 -0
  47. package/themes/business/src/components/StoresList/index.tsx +5 -3
  48. package/themes/business/src/components/UserProfileForm/index.tsx +76 -41
  49. package/themes/business/src/components/WebsocketStatus/index.tsx +171 -0
  50. package/themes/business/src/components/WebsocketStatus/styles.tsx +28 -0
  51. package/themes/business/src/components/shared/OInput.tsx +2 -0
  52. package/themes/business/src/hooks/useLocation.tsx +5 -4
  53. package/themes/business/src/types/index.tsx +19 -0
  54. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  55. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  56. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  57. package/themes/kiosk/src/components/Checkout/index.tsx +6 -0
  58. package/themes/kiosk/src/components/LoginForm/index.tsx +124 -96
  59. package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
  60. package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
  61. package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
  62. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  63. package/themes/original/index.tsx +9 -4
  64. package/themes/original/src/components/AddressDetails/index.tsx +20 -10
  65. package/themes/original/src/components/AddressForm/index.tsx +2 -2
  66. package/themes/original/src/components/AddressForm/styles.tsx +1 -1
  67. package/themes/original/src/components/AddressList/index.tsx +4 -7
  68. package/themes/original/src/components/AddressList/styles.tsx +4 -4
  69. package/themes/original/src/components/AppleLogin/index.tsx +4 -4
  70. package/themes/original/src/components/BusinessBasicInformation/index.tsx +4 -4
  71. package/themes/original/src/components/BusinessBasicInformation/styles.tsx +1 -1
  72. package/themes/original/src/components/BusinessController/index.tsx +18 -10
  73. package/themes/original/src/components/BusinessController/styles.tsx +8 -7
  74. package/themes/original/src/components/BusinessInformation/index.tsx +35 -3
  75. package/themes/original/src/components/BusinessInformation/styles.tsx +2 -2
  76. package/themes/original/src/components/BusinessItemAccordion/index.tsx +11 -7
  77. package/themes/original/src/components/BusinessListingSearch/BusinessSearchFooter.tsx +317 -0
  78. package/themes/original/src/components/BusinessListingSearch/BusinessSearchHeader.tsx +96 -0
  79. package/themes/original/src/components/BusinessListingSearch/MaxSectionItem/index.tsx +1 -1
  80. package/themes/original/src/components/BusinessListingSearch/index.tsx +56 -361
  81. package/themes/original/src/components/BusinessListingSearch/styles.tsx +1 -1
  82. package/themes/original/src/components/BusinessPreorder/index.tsx +3 -4
  83. package/themes/original/src/components/BusinessProductsCategories/index.tsx +1 -1
  84. package/themes/original/src/components/BusinessProductsList/index.tsx +3 -3
  85. package/themes/original/src/components/BusinessProductsList/styles.tsx +0 -3
  86. package/themes/original/src/components/BusinessProductsListing/index.tsx +45 -21
  87. package/themes/original/src/components/BusinessProductsListing/styles.tsx +3 -4
  88. package/themes/original/src/components/BusinessReviews/index.tsx +1 -1
  89. package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +1 -1
  90. package/themes/original/src/components/BusinessesListing/Layout/Appointment/styles.tsx +5 -5
  91. package/themes/original/src/components/BusinessesListing/Layout/Original/FlatListBusinessListFooter.tsx +69 -0
  92. package/themes/original/src/components/BusinessesListing/Layout/Original/FlatListBusinessListHeader.tsx +406 -0
  93. package/themes/original/src/components/BusinessesListing/Layout/Original/FlatListBusinessListing.tsx +76 -0
  94. package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +29 -402
  95. package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +1 -1
  96. package/themes/original/src/components/BusinessesListing/index.tsx +0 -1
  97. package/themes/original/src/components/Cart/index.tsx +32 -9
  98. package/themes/original/src/components/CartContent/index.tsx +96 -58
  99. package/themes/original/src/components/CartStoresListing/styles.tsx +2 -2
  100. package/themes/original/src/components/Checkout/index.tsx +219 -66
  101. package/themes/original/src/components/Checkout/styles.tsx +17 -0
  102. package/themes/original/src/components/CitiesControl/styles.tsx +1 -1
  103. package/themes/original/src/components/DatePicker/index.tsx +17 -0
  104. package/themes/original/src/components/DatePicker/styles.tsx +20 -0
  105. package/themes/original/src/components/Favorite/index.tsx +4 -9
  106. package/themes/original/src/components/Favorite/styles.tsx +0 -2
  107. package/themes/original/src/components/FloatingButton/styles.tsx +1 -1
  108. package/themes/original/src/components/GPSButton/index.tsx +1 -1
  109. package/themes/original/src/components/GiftCard/GiftCardOrdersList/index.tsx +64 -0
  110. package/themes/original/src/components/GiftCard/GiftCardOrdersList/styles.tsx +8 -0
  111. package/themes/original/src/components/GiftCard/GiftCardUI/index.tsx +8 -3
  112. package/themes/original/src/components/GiftCard/PurchaseGiftCard/index.tsx +36 -3
  113. package/themes/original/src/components/GiftCard/PurchaseGiftCard/styles.tsx +1 -1
  114. package/themes/original/src/components/GiftCard/RedeemGiftCard/index.tsx +67 -4
  115. package/themes/original/src/components/GiftCard/RedeemGiftCard/styles.tsx +1 -1
  116. package/themes/original/src/components/GiftCard/SendGiftCard/index.tsx +2 -2
  117. package/themes/original/src/components/GiftCard/SendGiftCard/styles.tsx +1 -1
  118. package/themes/original/src/components/GiftCard/SingleGiftCard/index.tsx +101 -0
  119. package/themes/original/src/components/GiftCard/SingleGiftCard/styles.tsx +4 -0
  120. package/themes/original/src/components/GiftCard/VerticalGiftCardOrdersLayout/index.tsx +83 -0
  121. package/themes/original/src/components/GiftCard/VerticalGiftCardOrdersLayout/styles.tsx +9 -0
  122. package/themes/original/src/components/GoogleMap/index.tsx +50 -5
  123. package/themes/original/src/components/HighestRatedBusinesses/index.tsx +2 -2
  124. package/themes/original/src/components/HighestRatedBusinesses/styles.tsx +1 -1
  125. package/themes/original/src/components/Home/index.tsx +1 -1
  126. package/themes/original/src/components/LastOrder/index.tsx +2 -1
  127. package/themes/original/src/components/LastOrders/index.tsx +2 -1
  128. package/themes/original/src/components/LoginForm/Otp/index.tsx +53 -47
  129. package/themes/original/src/components/LoginForm/index.tsx +6 -1
  130. package/themes/original/src/components/Messages/index.tsx +9 -4
  131. package/themes/original/src/components/Messages/styles.tsx +1 -1
  132. package/themes/original/src/components/MomentOption/index.tsx +4 -4
  133. package/themes/original/src/components/MomentSelector/index.tsx +1 -1
  134. package/themes/original/src/components/MultiCart/index.tsx +1 -1
  135. package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +3 -1
  136. package/themes/original/src/components/MultiCheckout/index.tsx +251 -53
  137. package/themes/original/src/components/MultiCheckout/styles.tsx +17 -0
  138. package/themes/original/src/components/MultiOrdersDetails/index.tsx +20 -15
  139. package/themes/original/src/components/MyOrders/index.tsx +24 -29
  140. package/themes/original/src/components/NavBar/index.tsx +3 -1
  141. package/themes/original/src/components/NetworkError/index.tsx +2 -3
  142. package/themes/original/src/components/NetworkError/styles.tsx +2 -2
  143. package/themes/original/src/components/Notifications/index.tsx +4 -8
  144. package/themes/original/src/components/Notifications/styles.tsx +0 -1
  145. package/themes/original/src/components/OrderDetails/OrderHistory.tsx +7 -3
  146. package/themes/original/src/components/OrderDetails/index.tsx +716 -667
  147. package/themes/original/src/components/OrderDetails/styles.tsx +24 -8
  148. package/themes/original/src/components/OrderProgress/index.tsx +28 -9
  149. package/themes/original/src/components/OrderProgress/styles.tsx +1 -1
  150. package/themes/original/src/components/OrderSummary/index.tsx +3 -1
  151. package/themes/original/src/components/OrderTypeSelector/index.tsx +5 -6
  152. package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/styles.tsx +1 -1
  153. package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/styles.tsx +1 -1
  154. package/themes/original/src/components/OrdersOption/index.tsx +2 -1
  155. package/themes/original/src/components/OrdersOption/styles.tsx +1 -1
  156. package/themes/original/src/components/PageBanner/index.tsx +3 -0
  157. package/themes/original/src/components/PaymentOptionCard/index.tsx +4 -2
  158. package/themes/original/src/components/PaymentOptionStripe/styles.tsx +3 -0
  159. package/themes/original/src/components/PaymentOptionWallet/index.tsx +56 -56
  160. package/themes/original/src/components/PaymentOptions/index.tsx +69 -5
  161. package/themes/original/src/components/PhoneInputNumber/index.tsx +15 -1
  162. package/themes/original/src/components/ProductForm/ActionButton.tsx +120 -0
  163. package/themes/original/src/components/ProductForm/ExtraOptions.tsx +56 -0
  164. package/themes/original/src/components/ProductForm/index.tsx +75 -166
  165. package/themes/original/src/components/ProductForm/styles.tsx +1 -1
  166. package/themes/original/src/components/ProductItemAccordion/index.tsx +12 -8
  167. package/themes/original/src/components/ProductOptionSubOption/index.tsx +120 -79
  168. package/themes/original/src/components/ProductOptionSubOption/styles.tsx +7 -4
  169. package/themes/original/src/components/ProfessionalProfile/styles.tsx +3 -3
  170. package/themes/original/src/components/Promotions/index.tsx +4 -4
  171. package/themes/original/src/components/Promotions/styles.tsx +0 -2
  172. package/themes/original/src/components/ReviewDriver/styles.tsx +1 -1
  173. package/themes/original/src/components/ReviewOrder/styles.tsx +1 -1
  174. package/themes/original/src/components/ReviewProducts/styles.tsx +1 -1
  175. package/themes/original/src/components/ServiceForm/index.tsx +2 -2
  176. package/themes/original/src/components/ServiceForm/styles.tsx +4 -4
  177. package/themes/original/src/components/SingleOrderCard/index.tsx +5 -4
  178. package/themes/original/src/components/SingleProductCard/index.tsx +2 -2
  179. package/themes/original/src/components/SingleProductCard/styles.tsx +0 -3
  180. package/themes/original/src/components/StripeCardsList/index.tsx +16 -35
  181. package/themes/original/src/components/StripeElementsForm/index.tsx +9 -4
  182. package/themes/original/src/components/UpsellingProducts/UpsellingContent.tsx +170 -0
  183. package/themes/original/src/components/UpsellingProducts/UpsellingLayout.tsx +86 -0
  184. package/themes/original/src/components/UpsellingProducts/index.tsx +15 -199
  185. package/themes/original/src/components/UpsellingProducts/styles.tsx +19 -0
  186. package/themes/original/src/components/UserFormDetails/index.tsx +53 -7
  187. package/themes/original/src/components/UserProfile/index.tsx +3 -2
  188. package/themes/original/src/components/UserProfileForm/index.tsx +30 -36
  189. package/themes/original/src/components/UserVerification/index.tsx +55 -50
  190. package/themes/original/src/components/WalletTransactions/styles.tsx +1 -0
  191. package/themes/original/src/components/Wallets/index.tsx +8 -9
  192. package/themes/original/src/components/Wallets/styles.tsx +1 -1
  193. package/themes/original/src/components/WebsocketStatus/index.tsx +172 -0
  194. package/themes/original/src/components/WebsocketStatus/styles.tsx +28 -0
  195. package/themes/original/src/components/shared/HeaderTitle.tsx +1 -1
  196. package/themes/original/src/components/shared/OButton.tsx +5 -5
  197. package/themes/original/src/components/shared/OInput.tsx +1 -4
  198. package/themes/original/src/components/shared/OModal.tsx +12 -14
  199. package/themes/original/src/layouts/Container.tsx +5 -3
  200. package/themes/original/src/types/index.tsx +8 -2
  201. package/themes/original/src/utils/index.tsx +124 -0
  202. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
  203. package/src/navigators/BottomNavigator.tsx +0 -117
  204. package/src/navigators/CheckoutNavigator.tsx +0 -66
  205. package/src/navigators/HomeNavigator.tsx +0 -202
  206. package/src/navigators/NavigationRef.tsx +0 -7
  207. package/src/navigators/RootNavigator.tsx +0 -269
  208. package/src/pages/Account.tsx +0 -34
  209. package/src/pages/AddressForm.tsx +0 -62
  210. package/src/pages/AddressList.tsx +0 -24
  211. package/src/pages/BusinessProductsList.tsx +0 -81
  212. package/src/pages/BusinessesListing.tsx +0 -43
  213. package/src/pages/CartList.tsx +0 -49
  214. package/src/pages/Checkout.tsx +0 -101
  215. package/src/pages/ForgotPassword.tsx +0 -24
  216. package/src/pages/Help.tsx +0 -23
  217. package/src/pages/HelpAccountAndPayment.tsx +0 -23
  218. package/src/pages/HelpGuide.tsx +0 -23
  219. package/src/pages/HelpOrder.tsx +0 -23
  220. package/src/pages/Home.tsx +0 -36
  221. package/src/pages/IntroductoryTutorial.tsx +0 -170
  222. package/src/pages/Login.tsx +0 -47
  223. package/src/pages/MomentOption.tsx +0 -30
  224. package/src/pages/MultiCheckout.tsx +0 -31
  225. package/src/pages/MultiOrdersDetails.tsx +0 -27
  226. package/src/pages/MyOrders.tsx +0 -40
  227. package/src/pages/NetworkError.tsx +0 -24
  228. package/src/pages/NotFound.tsx +0 -22
  229. package/src/pages/OrderDetails.tsx +0 -25
  230. package/src/pages/ProductDetails.tsx +0 -55
  231. package/src/pages/Profile.tsx +0 -36
  232. package/src/pages/ReviewDriver.tsx +0 -30
  233. package/src/pages/ReviewOrder.tsx +0 -32
  234. package/src/pages/ReviewProducts.tsx +0 -30
  235. package/src/pages/Sessions.tsx +0 -22
  236. package/src/pages/Signup.tsx +0 -53
  237. package/src/pages/SpinnerLoader.tsx +0 -10
  238. package/src/pages/Splash.tsx +0 -21
@@ -5,12 +5,11 @@ export const OrderDetailsContainer = styled.ScrollView`
5
5
  `
6
6
 
7
7
  export const NavBack = styled.TouchableOpacity`
8
-
9
8
  `
10
9
 
11
10
 
12
11
  export const Header = styled.View`
13
- padding: 10px 40px;
12
+ padding: 10px 20px;
14
13
  flex: 1;
15
14
  `
16
15
 
@@ -24,7 +23,7 @@ export const OrderContent = styled.View`
24
23
  export const OrderBusiness = styled.View`
25
24
  position: relative;
26
25
  padding-vertical: 10px;
27
- padding-horizontal: 40px;
26
+ padding-horizontal: 20px;
28
27
  background-color: ${(props: any) => props.theme.colors.white};
29
28
  align-items: flex-start;
30
29
  `
@@ -64,7 +63,7 @@ export const SectionTitle = styled.View`
64
63
  `
65
64
 
66
65
  export const OrderCustomer = styled.View`
67
- padding: 20px 40px 10px;
66
+ padding: 20px 20px 10px;
68
67
  background-color: ${(props: any) => props.theme.colors.white};
69
68
  `
70
69
 
@@ -86,7 +85,7 @@ export const InfoBlock = styled.View`
86
85
  export const HeaderInfo = styled.View`
87
86
  flex: 1;
88
87
  background-color: ${(props: any) => props.theme.colors.backgroundGray100};
89
- padding: 20px 40px;
88
+ padding: 20px 20px;
90
89
  `
91
90
 
92
91
  export const OrderProducts = styled(OrderCustomer)``
@@ -100,7 +99,7 @@ export const Table = styled.View`
100
99
  `
101
100
 
102
101
  export const OrderBill = styled.View`
103
- padding-horizontal: 40px;
102
+ padding-horizontal: 20px;
104
103
  padding-vertical: 10px;
105
104
  flex: 1;
106
105
  background-color: ${(props: any) => props.theme.colors.white};
@@ -130,7 +129,7 @@ export const OrderAction = styled.View`
130
129
  `
131
130
 
132
131
  export const PlaceSpotWrapper = styled.View`
133
- padding-horizontal: 40px;
132
+ padding-horizontal: 20px;
134
133
  `
135
134
 
136
135
  export const ProfessionalPhoto = styled.ImageBackground`
@@ -141,4 +140,21 @@ export const ProfessionalPhoto = styled.ImageBackground`
141
140
  width: 80px;
142
141
  resize-mode: cover;
143
142
  margin-right: 10px;
144
- `;
143
+ `;
144
+
145
+ export const TopActions = styled.TouchableOpacity`
146
+ height: 60px;
147
+ justify-content: center;
148
+ min-width: 30px;
149
+ padding-right: 15px;
150
+ `;
151
+
152
+ export const TopHeader = styled.View`
153
+ width: 100%;
154
+ flex-direction: row;
155
+ align-items: center;
156
+ justify-content: space-between;
157
+ z-index: 1;
158
+ height: 60px;
159
+ min-height: 60px;
160
+ `
@@ -22,7 +22,8 @@ import {
22
22
  OrderInfoWrapper,
23
23
  OrderProgressWrapper
24
24
  } from './styles'
25
- import { getOrderStatus } from '../../utils'
25
+ import { getOrderStatuPickUp, getOrderStatus } from '../../utils'
26
+ import DeviceInfo from 'react-native-device-info'
26
27
 
27
28
  const OrderProgressUI = (props: any) => {
28
29
  const {
@@ -56,7 +57,9 @@ const OrderProgressUI = (props: any) => {
56
57
  shadowColor: '#000',
57
58
  shadowOpacity: 0.2,
58
59
  shadowRadius: 2,
59
- elevation: 3
60
+ elevation: 3,
61
+ borderWidth: 1,
62
+ borderColor: 'rgba(0,0,0,0.1)'
60
63
  },
61
64
  logoWrapper: {
62
65
  overflow: 'hidden',
@@ -110,6 +113,8 @@ const OrderProgressUI = (props: any) => {
110
113
  setInitialLoaded(true)
111
114
  }, [orderList.loading, initialLoaded])
112
115
 
116
+ const progressBarObjt = (s: any) => lastOrder?.delivery_type && lastOrder?.delivery_type === 2 ? getOrderStatuPickUp(s) : getOrderStatus(s)
117
+
113
118
  return (
114
119
  <>
115
120
  {(orderList?.loading && !initialLoaded) && (
@@ -128,7 +133,7 @@ const OrderProgressUI = (props: any) => {
128
133
  <View style={styles.logoWrapper}>
129
134
  <FastImage
130
135
  style={{ width: 50, height: 50 }}
131
- source={orderList?.orders.length === 1 ? {
136
+ source={orderList?.orders.length === 1 && lastOrder?.business?.logo.includes('http') ? {
132
137
  uri: optimizeImage(lastOrder?.business?.logo, 'h_50,c_limit'),
133
138
  priority: FastImage.priority.normal,
134
139
  } : theme.images.logos.logotype}
@@ -147,9 +152,6 @@ const OrderProgressUI = (props: any) => {
147
152
  marginBottom: 3
148
153
  }}
149
154
  >{statusToShow.includes(lastOrder?.status) ? t('ORDER_IN_PROGRESS', 'Order in progress') : t('ORDER', 'Order')}</OText>
150
- {statusToShow.includes(lastOrder?.status) && (
151
- <OText size={11} numberOfLines={1} ellipsizeMode='tail'>{t('RESTAURANT_PREPARING_YOUR_ORDER', 'The restaurant is preparing your order')}</OText>
152
- )}
153
155
  <TouchableOpacity onPress={() => handleGoToOrder('MyOrders')}>
154
156
  <View style={styles.navigationButton}>
155
157
  <OText size={11} color={theme.colors.primary}>{t('GO_TO_MY_ORDERS', 'Go to my orders')}</OText>
@@ -165,10 +167,10 @@ const OrderProgressUI = (props: any) => {
165
167
  </OrderInfoWrapper>
166
168
  <View style={{ flex: 1 }}>
167
169
  <ProgressContentWrapper>
168
- <ProgressBar style={{ width: getOrderStatus(lastOrder.status)?.percentage ? `${(getOrderStatus(lastOrder.status) as any).percentage * 100}%` : '0%' }} />
170
+ <ProgressBar style={{ width: progressBarObjt(lastOrder.status)?.percentage ? `${(progressBarObjt(lastOrder.status) as any).percentage * 100}%` : '0%' }} />
169
171
  </ProgressContentWrapper>
170
172
  <ProgressTextWrapper>
171
- <OText size={12} style={{ width: '50%' }}>{getOrderStatus(lastOrder.status)?.value}</OText>
173
+ <OText size={12} style={{ width: '50%' }}>{progressBarObjt(lastOrder.status)?.value}</OText>
172
174
  <TimeWrapper>
173
175
  <OText size={11}>{lastOrder?.delivery_type === 1 ? t('ESTIMATED_DELIVERY', 'Estimated delivery') : t('ESTIMATED_TIME', 'Estimated time')}</OText>
174
176
  <OText size={11}>
@@ -209,7 +211,24 @@ export const OrderProgress = (props: any) => {
209
211
  initialPage: 1,
210
212
  pageSize: 10,
211
213
  controlType: 'infinity'
212
- }
214
+ },
215
+ propsToFetch: [
216
+ 'id',
217
+ 'name',
218
+ 'business',
219
+ 'status',
220
+ 'delivery_type',
221
+ 'delivery_datetime_utc',
222
+ 'delivery_datetime',
223
+ 'reporting_data',
224
+ 'eta_current_status_time',
225
+ 'eta_previous_status_times',
226
+ 'eta_time',
227
+ 'delivered_in',
228
+ 'prepared_in',
229
+ 'eta_drive_time'
230
+ ],
231
+ noGiftCardOrders: true
213
232
  }
214
233
 
215
234
  return <OrderList {...orderProgressProps} />
@@ -32,5 +32,5 @@ export const OrderInfoWrapper = styled.View`
32
32
  export const OrderProgressWrapper = styled.View`
33
33
  margin-top: 37px;
34
34
  margin-bottom: 20px;
35
- padding-horizontal: 40px;
35
+ padding-horizontal: 20px;
36
36
  `
@@ -1,4 +1,4 @@
1
- import React, { useState } from 'react';
1
+ import React, { useState, useRef } from 'react';
2
2
  import { ActivityIndicator, View } from 'react-native'
3
3
  import {
4
4
  Cart,
@@ -56,6 +56,7 @@ const OrderSummaryUI = (props: any) => {
56
56
  const [orderState] = useOrder();
57
57
  const [{ parsePrice, parseNumber }] = useUtils();
58
58
  const [validationFields] = useValidationFields();
59
+ const commentRef = useRef()
59
60
  const [openTaxModal, setOpenTaxModal] = useState<any>({ open: false, data: null, type: '' })
60
61
  const isCouponEnabled = validationFields?.fields?.checkout?.coupon?.enabled;
61
62
  const hideCartComments = !validationFields?.fields?.checkout?.comments?.enabled
@@ -341,6 +342,7 @@ const OrderSummaryUI = (props: any) => {
341
342
  marginTop: 10,
342
343
  borderRadius: 8
343
344
  }}
345
+ forwardRef={commentRef}
344
346
  multiline
345
347
  />
346
348
  {commentState?.loading && (
@@ -31,14 +31,12 @@ const OrderTypeSelectorUI = (props: OrderTypeSelectParams) => {
31
31
  const [orderState] = useOrder();
32
32
  const [, t] = useLanguage();
33
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
34
+
37
35
  const items = _orderTypes.map((type) => {
38
36
  return {
39
37
  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.')
38
+ label: t(type.content, type.content),
39
+ description: t(type.description, 'Lorem ipsum dolor sit amet, consectetur.')
42
40
  }
43
41
  })
44
42
 
@@ -102,6 +100,7 @@ const OrderTypeSelectorUI = (props: OrderTypeSelectParams) => {
102
100
  style={{ paddingBottom: 0 }}
103
101
  title={t('HOW_WILL_YOU_DELIVERY_TYPE', 'How will your order type?')}
104
102
  titleAlign={'center'}
103
+ titleStyle={{ fontSize: 14 }}
105
104
  noMargin
106
105
  />
107
106
  {
@@ -115,7 +114,7 @@ const OrderTypeSelectorUI = (props: OrderTypeSelectParams) => {
115
114
  <OText size={12} lineHeight={18} color={theme.colors.white} weight={Platform.OS === 'android' ? 'bold' : '600'}>{item?.label}</OText>
116
115
  <OText size={10} lineHeight={15} color={theme.colors.white}>{item?.description}</OText>
117
116
  <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>
117
+ <OText size={10} lineHeight={15} color={theme.colors.white}>{t('START_MY_ORDER', 'Start my order')}</OText>
119
118
  <AntDesignIcon name='arrowleft' size={26} color={theme.colors.white} style={{ transform: [{ rotate: '180deg' }], marginStart: 4 }} />
120
119
  </View>
121
120
  </MaskCont>
@@ -2,5 +2,5 @@ import styled, { css } from 'styled-components/native'
2
2
 
3
3
  export const ListWrapper = styled.View`
4
4
  background-color: ${(props: any) => props.theme.colors.backgroundLight};
5
- padding-horizontal: ${(props : any) => props.isBusinessesSearchList ? '0' : '40px'};
5
+ padding-horizontal: ${(props : any) => props.isBusinessesSearchList ? '0' : '20px'};
6
6
  `;
@@ -2,5 +2,5 @@ import styled from 'styled-components/native'
2
2
 
3
3
  export const ListWrapper = styled.View`
4
4
  background-color: ${(props: any) => props.theme.colors.backgroundLight};
5
- padding-horizontal: ${(props : any) => props.isBusinessesSearchList ? '0' : '40px'};
5
+ padding-horizontal: ${(props : any) => props.isBusinessesSearchList ? '0' : '20px'};
6
6
  `;
@@ -309,7 +309,7 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
309
309
  />
310
310
  )
311
311
  )}
312
- {loading && !hideOrders && (
312
+ {loading && !hideOrders && !preOrders && (
313
313
  <>
314
314
  {!activeOrders ? (
315
315
  <Placeholder style={{ marginTop: 30 }} Animation={Fade}>
@@ -350,6 +350,7 @@ export const OrdersOption = (props: OrdersOptionParams) => {
350
350
  const MyOrdersProps = {
351
351
  ...props,
352
352
  UIComponent: OrdersOptionUI,
353
+ noGiftCardOrders: true,
353
354
  orderStatus: getAllOrders
354
355
  ? [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23]
355
356
  : props.preOrders ? [13] : props.activeOrders
@@ -3,7 +3,7 @@ import styled, { css } from 'styled-components/native'
3
3
  export const OptionTitle = styled.View`
4
4
  margin-top: 24px;
5
5
  ${(props : any) => props.titleContent && css`
6
- margin-left: ${() => props.isBusinessesSearchList ? '0' : '40px'};
6
+ margin-left: ${() => props.isBusinessesSearchList ? '0' : '20px'};
7
7
  `}
8
8
  `
9
9
 
@@ -77,6 +77,7 @@ const PageBannerUI = (props: any) => {
77
77
  const renderItem = ({ item, index }) => {
78
78
  return (
79
79
  <TouchableOpacity
80
+ activeOpacity={1}
80
81
  onPress={() => handleGoToPage(item)}
81
82
  >
82
83
  <View style={styles.sliderWrapper}>
@@ -128,6 +129,7 @@ const PageBannerUI = (props: any) => {
128
129
  {pageBannerState.banner?.items.length > 1 && (
129
130
  <>
130
131
  <TouchableOpacity
132
+ activeOpacity={1}
131
133
  style={[styles.swiperButton, { left: 25 }]}
132
134
  onPress={() => carouselRef.current.snapToPrev()}
133
135
  >
@@ -138,6 +140,7 @@ const PageBannerUI = (props: any) => {
138
140
  />
139
141
  </TouchableOpacity>
140
142
  <TouchableOpacity
143
+ activeOpacity={1}
141
144
  style={[styles.swiperButton, { right: 25 }]}
142
145
  onPress={() => carouselRef.current.snapToNext()}
143
146
  >
@@ -26,7 +26,7 @@ const PaymentOptionCardUI = (props: any) => {
26
26
  const [alertState, setAlertState] = useState<{ open: boolean, content: Array<string> }>({ open: false, content: [] })
27
27
  const [newCard, setNewCard] = useState<any>(null)
28
28
 
29
- const onChangeCardForm = (values : any) => {
29
+ const onChangeCardForm = (values: any) => {
30
30
  if (values?.valid) {
31
31
  const expiry = values?.values?.expiry?.split('/')
32
32
  const expiryMonth = expiry[0]
@@ -107,6 +107,8 @@ const PaymentOptionCardUI = (props: any) => {
107
107
  cardsList={cardsList}
108
108
  noShowErrors
109
109
  gateway={gateway}
110
+ onOpen={() => setAddCardOpen({ ...addCardOpen, stripe: true })}
111
+ onCancel={() => setAddCardOpen({ ...addCardOpen, stripe: false })}
110
112
  />
111
113
  </>
112
114
  <Modal
@@ -169,7 +171,7 @@ const PaymentOptionCardUI = (props: any) => {
169
171
  )
170
172
  }
171
173
 
172
- export const PaymentOptionCard = (props : any) => {
174
+ export const PaymentOptionCard = (props: any) => {
173
175
  const paymentOptions = {
174
176
  ...props,
175
177
  UIComponent: PaymentOptionCardUI
@@ -40,6 +40,9 @@ export const OSItem = styled.View`
40
40
  justify-content: space-between;
41
41
  align-items: center;
42
42
  padding: 10px 0px;
43
+ ${({ isInvalid } : any) => isInvalid && css`
44
+ opacity: 0.7;
45
+ `}
43
46
  `;
44
47
 
45
48
  export const OSItemContent = styled.TouchableOpacity`
@@ -45,7 +45,7 @@ const PaymentOptionWalletUI = (props: any) => {
45
45
  new Array(walletsState.result?.length).fill(false)
46
46
  );
47
47
 
48
- const creditBalance: any = (wallet: any) => ` = ${parsePrice(wallet.balance / wallet.redemption_rate, { isTruncable: true })}`
48
+ const creditBalance: any = (wallet: any) => ` = ${parsePrice(wallet.balance / wallet.redemption_rate)}`
49
49
 
50
50
  const walletName: any = {
51
51
  cash: {
@@ -87,65 +87,65 @@ const PaymentOptionWalletUI = (props: any) => {
87
87
  {!walletsState.loading &&
88
88
  !walletsState.error &&
89
89
  walletsState.result?.length > 0 &&
90
- (
91
- <>
92
- {walletsState.result?.map((wallet: any, idx: any) => wallet.valid && wallet.balance >= 0 && walletName[wallet.type]?.isActive && (
93
- <Container
94
- key={wallet.id}
95
- isBottomBorder={idx === walletsState.result?.filter((wallet: any) => wallet.valid)?.length - 1}
96
- onPress={() => handleOnChange(idx, wallet)}
97
- disabled={(cart?.balance === 0 && !checkedState[idx]) || wallet.balance === 0}
98
- >
99
- <SectionLeft>
100
- {checkedState[idx] ? (
101
- <MaterialCommunityIcons
102
- name="checkbox-marked"
103
- size={25}
104
- color={theme.colors.primary}
105
- />
106
- ) : (
107
- <MaterialCommunityIcons
108
- name="checkbox-blank-outline"
109
- size={25}
110
- color={theme.colors.disabled}
111
- />
112
- )}
113
- <View style={{ alignItems: 'baseline', marginLeft: 5 }}>
114
- <View>
115
- <OText
116
- style={((cart?.balance === 0 && !checkedState[idx]) || wallet.balance === 0) ? {
117
- color: theme.colors.disabled
118
- } : {}}
119
- >
120
- {walletName[wallet.type]?.name}
121
- </OText>
122
- </View>
90
+ (
91
+ <>
92
+ {walletsState.result?.map((wallet: any, idx: any) => wallet.valid && wallet.balance >= 0 && walletName[wallet.type]?.isActive && (
93
+ <Container
94
+ key={wallet.id}
95
+ isBottomBorder={idx === walletsState.result?.filter((wallet: any) => wallet.valid)?.length - 1}
96
+ onPress={() => handleOnChange(idx, wallet)}
97
+ disabled={(cart?.balance === 0 && !checkedState[idx]) || wallet.balance === 0}
98
+ >
99
+ <SectionLeft>
100
+ {checkedState[idx] ? (
101
+ <MaterialCommunityIcons
102
+ name="checkbox-marked"
103
+ size={25}
104
+ color={theme.colors.primary}
105
+ />
106
+ ) : (
107
+ <MaterialCommunityIcons
108
+ name="checkbox-blank-outline"
109
+ size={25}
110
+ color={theme.colors.disabled}
111
+ />
112
+ )}
113
+ <View style={{ alignItems: 'baseline', marginLeft: 5 }}>
114
+ <View>
115
+ <OText
116
+ style={((cart?.balance === 0 && !checkedState[idx]) || wallet.balance === 0) ?{
117
+ color: theme.colors.disabled
118
+ } : {}}
119
+ >
120
+ {walletName[wallet.type]?.name}
121
+ </OText>
123
122
  </View>
124
- </SectionLeft>
125
-
126
- <View style={{ maxWidth: '35%', alignItems: 'flex-end' }}>
127
- {wallet.type === 'cash' && (
128
- <OText>
129
- {parsePrice(wallet?.balance, { isTruncable: true })}
123
+ </View>
124
+ </SectionLeft>
125
+
126
+ <View style={{maxWidth: '35%', alignItems: 'flex-end' }}>
127
+ {wallet.type === 'cash' && (
128
+ <OText>
129
+ {parsePrice(wallet?.balance)}
130
+ </OText>
131
+ )}
132
+ {wallet.type === 'credit_point' && (
133
+ <OText>
134
+ <OText color={theme.colors.primary} weight='bold'>
135
+ {`${wallet?.balance} ${t('POINTS', 'Points')}`}
130
136
  </OText>
131
- )}
132
- {wallet.type === 'credit_point' && (
133
137
  <OText>
134
- <OText color={theme.colors.primary} weight='bold'>
135
- {`${wallet?.balance} ${t('POINTS', 'Points')}`}
136
- </OText>
137
- <OText>
138
- {wallet?.balance > 0
139
- ? creditBalance(wallet)
140
- : null}
141
- </OText>
138
+ {wallet?.balance > 0
139
+ ? creditBalance(wallet)
140
+ : null}
142
141
  </OText>
143
- )}
144
- </View>
145
- </Container>
146
- ))}
147
- </>
148
- )}
142
+ </OText>
143
+ )}
144
+ </View>
145
+ </Container>
146
+ ))}
147
+ </>
148
+ )}
149
149
 
150
150
  {walletsState?.loading && (
151
151
  <View>
@@ -11,6 +11,7 @@ import {
11
11
  useLanguage,
12
12
  ToastType,
13
13
  useToast,
14
+ useSession
14
15
  } from 'ordering-components/native';
15
16
  import { useTheme } from 'styled-components/native';
16
17
  import { PaymentOptionCash } from '../PaymentOptionCash';
@@ -64,16 +65,23 @@ const PaymentOptionsUI = (props: any) => {
64
65
  handlePaymentMethodClickCustom,
65
66
  handlePlaceOrder,
66
67
  merchantId,
68
+ urlscheme,
67
69
  setMethodPaySupported,
68
70
  placeByMethodPay,
69
71
  methodPaySupported,
70
72
  setPlaceByMethodPay,
71
73
  setCardList,
72
- onPaymentChange
74
+ onPaymentChange,
75
+ requiredFields,
76
+ openUserModal,
77
+ paymethodClicked,
78
+ setPaymethodClicked,
79
+ androidAppId
73
80
  } = props
74
81
 
75
82
  const theme = useTheme();
76
83
  const [, { showToast }] = useToast();
84
+ const [{ user }] = useSession()
77
85
  const { confirmApplePayPayment } = useApplePay()
78
86
 
79
87
  const getPayIcon = (method: string) => {
@@ -94,6 +102,8 @@ const PaymentOptionsUI = (props: any) => {
94
102
  return theme.images.general.stripesb
95
103
  case 'apple_pay':
96
104
  return theme.images.general.applePayMark
105
+ case 'google_pay':
106
+ return theme.images.general.googlePayMark
97
107
  default:
98
108
  return theme.images.general.creditCard
99
109
  }
@@ -111,8 +121,18 @@ const PaymentOptionsUI = (props: any) => {
111
121
  // { name: t('SELECT_A_PAYMENT_METHOD', 'Select a payment method'), value: '-1' },
112
122
  // ]
113
123
 
124
+ const paymethodsFieldRequired = ['paypal', 'apple_pay', 'global_apple_pay']
125
+
114
126
  const handlePaymentMethodClick = (paymethod: any) => {
115
- if (cart?.balance > 0) {
127
+ if (cart?.balance > 0 || !!user?.guest_id) {
128
+ if (paymethodsFieldRequired.includes(paymethod?.gateway) && requiredFields.length > 0) {
129
+ openUserModal && openUserModal(true)
130
+ setPaymethodClicked({
131
+ confirmed: false,
132
+ paymethod
133
+ })
134
+ return
135
+ }
116
136
  const isPopupMethod = ['stripe', 'stripe_direct', 'stripe_connect', 'stripe_redirect', 'paypal'].includes(paymethod?.gateway)
117
137
  if (webViewPaymentGateway.includes(paymethod?.gateway)) {
118
138
  handlePaymentMethodClickCustom(paymethod)
@@ -158,10 +178,17 @@ const PaymentOptionsUI = (props: any) => {
158
178
  }
159
179
  }, [paymethodData, paymethodSelected])
160
180
 
181
+ useEffect(() => {
182
+ if (paymethodClicked?.confirmed) {
183
+ handlePaymentMethodClickCustom(paymethodClicked?.paymethod)
184
+ }
185
+ }, [paymethodClicked?.confirmed])
186
+
187
+
161
188
  const renderPaymethods = ({ item }: any) => {
162
189
  return (
163
190
  <>
164
- {item?.gateway === 'apple_pay' ? (
191
+ {methodsPay.includes(item?.gateway) ? (
165
192
  <TouchableOpacity
166
193
  onPress={() => handlePaymentMethodClick(item)}
167
194
  >
@@ -192,7 +219,7 @@ const PaymentOptionsUI = (props: any) => {
192
219
  style={{ margin: 0, marginTop: 4 }}
193
220
  color={paymethodSelected?.id === item.id ? theme.colors.white : '#000'}
194
221
  >
195
- {t(item.gateway.toUpperCase(), item.name)}
222
+ {t(item?.gateway?.toUpperCase(), item.name)}
196
223
  </OText>
197
224
  </PMItem>
198
225
  </TouchableOpacity>
@@ -335,10 +362,13 @@ const PaymentOptionsUI = (props: any) => {
335
362
  handleSource={handlePaymethodDataChange}
336
363
  onCancel={() => handlePaymethodClick(null)}
337
364
  merchantId={merchantId}
365
+ urlscheme={urlscheme}
366
+ androidAppId={androidAppId}
338
367
  setMethodPaySupported={setMethodPaySupported}
339
368
  methodPaySupported={methodPaySupported}
340
369
  placeByMethodPay={placeByMethodPay}
341
370
  setPlaceByMethodPay={setPlaceByMethodPay}
371
+ publicKeyAddCard={isOpenMethod?.paymethod?.credentials?.stripe?.publishable}
342
372
  />
343
373
  )}
344
374
 
@@ -381,6 +411,9 @@ const PaymentOptionsUI = (props: any) => {
381
411
  handleSource={handlePaymethodDataChange}
382
412
  onCancel={() => handlePaymethodClick(null)}
383
413
  merchantId={merchantId}
414
+ urlscheme={urlscheme}
415
+ androidAppId={androidAppId}
416
+ publicKeyAddCard={isOpenMethod?.paymethod?.credentials?.stripe?.publishable}
384
417
  />
385
418
  </KeyboardAvoidingView>
386
419
  </OModal>
@@ -400,11 +433,12 @@ const PaymentOptionsUI = (props: any) => {
400
433
  <StripeCardsList
401
434
  paymethod={isOpenMethod?.paymethod}
402
435
  businessId={props.businessId}
403
- publicKey={isOpenMethod?.paymethod?.credentials.publishable}
404
436
  payType={paymethodsList?.name}
405
437
  onSelectCard={handlePaymethodDataChange}
406
438
  onNavigationRedirect={onNavigationRedirect}
407
439
  onCancel={() => handlePaymethodClick(null)}
440
+ publicKey={isOpenMethod?.paymethod?.credentials.publishable}
441
+ publicKeyAddCard={isOpenMethod?.paymethod?.credentials?.stripe?.publishable}
408
442
  />
409
443
  </View>
410
444
  )}
@@ -421,6 +455,7 @@ const PaymentOptionsUI = (props: any) => {
421
455
  enabled={Platform.OS === 'ios' ? true : false}
422
456
  >
423
457
  <StripeElementsForm
458
+ openCarts={props.openCarts}
424
459
  toSave
425
460
  businessId={props.businessId}
426
461
  publicKey={isOpenMethod?.paymethod?.credentials?.stripe?.publishable}
@@ -428,6 +463,35 @@ const PaymentOptionsUI = (props: any) => {
428
463
  accountId={isOpenMethod?.paymethod?.credentials?.user}
429
464
  onSelectCard={handlePaymethodDataChange}
430
465
  onCancel={() => setAddCardOpen({ ...addCardOpen, stripeConnect: false })}
466
+ publicKeyAddCard={isOpenMethod?.paymethod?.credentials?.stripe?.publishable}
467
+ />
468
+ </KeyboardAvoidingView>
469
+ </OModal>
470
+
471
+ {/* Stripe Add card */}
472
+ <OModal
473
+ entireModal
474
+ title={t('ADD_CREDIT_OR_DEBIT_CARD', 'Add credit or debit card')}
475
+ open={addCardOpen?.stripe}
476
+ onClose={() => setAddCardOpen({ ...addCardOpen, stripe: false })}
477
+ style={{ backgroundColor: 'red' }}
478
+ >
479
+ <KeyboardAvoidingView
480
+ behavior={Platform.OS == 'ios' ? 'padding' : 'height'}
481
+ keyboardVerticalOffset={Platform.OS == 'ios' ? 0 : 0}
482
+ enabled={Platform.OS === 'ios' ? true : false}
483
+ >
484
+ <StripeElementsForm
485
+ openCarts={props.openCarts}
486
+ toSave
487
+ businessId={props.businessId}
488
+ businessIds={props.businessIds}
489
+ publicKey={props.publicKey || isOpenMethod?.paymethod?.credentials?.publishable}
490
+ setCardsList={setCardList}
491
+ requirements={props.clientSecret}
492
+ onSelectCard={handlePaymethodDataChange}
493
+ onCancel={() => setAddCardOpen({ ...addCardOpen, stripe: false })}
494
+ publicKeyAddCard={isOpenMethod?.paymethod?.credentials?.stripe?.publishable}
431
495
  />
432
496
  </KeyboardAvoidingView>
433
497
  </OModal>
@@ -24,7 +24,8 @@ export const PhoneInputNumber = (props: PhoneInputParams) => {
24
24
  noDropIcon,
25
25
  isDisabled,
26
26
  isStartValidation,
27
- changeCountry
27
+ changeCountry,
28
+ updateStateWithSubmit
28
29
  } = props
29
30
 
30
31
  const theme = useTheme();
@@ -95,6 +96,19 @@ export const PhoneInputNumber = (props: PhoneInputParams) => {
95
96
  }
96
97
  }, [userphoneNumber])
97
98
 
99
+ useEffect(() => {
100
+ if (defaultValue && updateStateWithSubmit) {
101
+ phoneInput.current?.setState({
102
+ number: defaultValue,
103
+ countryCode: defaultCode ?
104
+ !isNaN(defaultCode)
105
+ ? transformCountryCode(defaultCode)
106
+ : findExitingCode(defaultCode)
107
+ : findExitingCode(configs?.default_country_code?.value?.toUpperCase())
108
+ })
109
+ }
110
+ }, [defaultValue])
111
+
98
112
  return (
99
113
  <Wrapper onPress={() => forwardRef?.current?.focus?.()}>
100
114
  {(isStartValidation && userphoneNumber === '') && (