ordering-ui-react-native 0.16.48 → 0.16.49-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 (208) hide show
  1. package/package.json +6 -5
  2. package/src/DeliveryApp.tsx +43 -1
  3. package/src/components/ActiveOrders/index.tsx +61 -63
  4. package/src/components/ActiveOrders/styles.tsx +8 -14
  5. package/src/components/BusinessBasicInformation/index.tsx +11 -19
  6. package/src/components/BusinessInformation/index.tsx +33 -4
  7. package/src/components/BusinessInformation/styles.tsx +2 -2
  8. package/src/components/BusinessProductsList/index.tsx +10 -10
  9. package/src/components/BusinessesListing/index.tsx +1 -1
  10. package/src/components/Checkout/index.tsx +2 -1
  11. package/src/components/LanguageSelector/index.tsx +21 -16
  12. package/src/components/Messages/index.tsx +2 -2
  13. package/src/components/NotificationSetting/index.tsx +85 -0
  14. package/src/components/OrdersOption/index.tsx +54 -56
  15. package/src/components/PaymentOptions/index.tsx +298 -345
  16. package/src/components/PaymentOptionsWebView/index.tsx +120 -121
  17. package/src/components/ReviewDriver/index.tsx +1 -1
  18. package/src/components/ReviewOrder/index.tsx +2 -2
  19. package/src/components/ReviewProducts/index.tsx +11 -0
  20. package/src/components/SingleProductReview/index.tsx +8 -5
  21. package/src/components/StripeElementsForm/index.tsx +25 -16
  22. package/src/components/VerifyPhone/styles.tsx +1 -2
  23. package/src/components/shared/OBottomPopup.tsx +6 -2
  24. package/src/components/shared/OToast.tsx +4 -4
  25. package/src/index.tsx +2 -0
  26. package/src/types/@fatnlazycat/react-native-recaptcha-v3/index.d.ts +1 -0
  27. package/src/utils/index.tsx +2 -1
  28. package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +259 -238
  29. package/themes/business/src/components/AcceptOrRejectOrder/styles.tsx +6 -4
  30. package/themes/business/src/components/BusinessController/index.tsx +2 -2
  31. package/themes/business/src/components/Chat/index.tsx +40 -32
  32. package/themes/business/src/components/DriverMap/index.tsx +7 -5
  33. package/themes/business/src/components/DriverSchedule/index.tsx +36 -19
  34. package/themes/business/src/components/LoginForm/index.tsx +111 -74
  35. package/themes/business/src/components/MapView/index.tsx +12 -1
  36. package/themes/business/src/components/MessagesOption/index.tsx +11 -1
  37. package/themes/business/src/components/NewOrderNotification/index.tsx +26 -41
  38. package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +40 -30
  39. package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +3 -3
  40. package/themes/business/src/components/OrdersListManager/index.tsx +10 -3
  41. package/themes/business/src/components/OrdersOption/index.tsx +76 -77
  42. package/themes/business/src/components/OrdersOption/styles.tsx +5 -1
  43. package/themes/business/src/components/OrdersOptionBusiness/index.tsx +15 -1
  44. package/themes/business/src/components/OrdersOptionCity/index.tsx +15 -1
  45. package/themes/business/src/components/OrdersOptionDate/index.tsx +19 -6
  46. package/themes/business/src/components/OrdersOptionDelivery/index.tsx +15 -1
  47. package/themes/business/src/components/OrdersOptionDriver/index.tsx +15 -1
  48. package/themes/business/src/components/OrdersOptionPaymethod/index.tsx +15 -1
  49. package/themes/business/src/components/OrdersOptionStatus/index.tsx +10 -1
  50. package/themes/business/src/components/PreviousMessages/index.tsx +17 -18
  51. package/themes/business/src/components/PreviousOrders/OrderItem.tsx +250 -0
  52. package/themes/business/src/components/PreviousOrders/OrdersGroupedItem.tsx +115 -0
  53. package/themes/business/src/components/PreviousOrders/index.tsx +332 -244
  54. package/themes/business/src/components/PreviousOrders/styles.tsx +30 -2
  55. package/themes/business/src/components/ProductItemAccordion/index.tsx +3 -2
  56. package/themes/business/src/components/ReviewCustomer/index.tsx +39 -15
  57. package/themes/business/src/components/ScheduleBlocked/index.tsx +2 -2
  58. package/themes/business/src/components/UserFormDetails/index.tsx +5 -2
  59. package/themes/business/src/components/UserProfileForm/index.tsx +2 -0
  60. package/themes/business/src/components/shared/ODropDown.tsx +42 -8
  61. package/themes/business/src/components/shared/ODropDownCalendar.tsx +36 -7
  62. package/themes/business/src/components/shared/OLink.tsx +24 -12
  63. package/themes/business/src/components/shared/OText.tsx +3 -2
  64. package/themes/business/src/types/index.tsx +25 -11
  65. package/themes/business/src/utils/index.tsx +10 -0
  66. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  67. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  68. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  69. package/themes/kiosk/src/components/BusinessesListing/index.tsx +2 -1
  70. package/themes/kiosk/src/components/Checkout/index.tsx +6 -0
  71. package/themes/kiosk/src/components/LoginForm/index.tsx +121 -10
  72. package/themes/kiosk/src/components/LoginForm/styles.tsx +5 -0
  73. package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
  74. package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
  75. package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
  76. package/themes/kiosk/src/components/ProductForm/index.tsx +1 -14
  77. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  78. package/themes/kiosk/src/types/index.d.ts +2 -0
  79. package/themes/original/index.tsx +8 -0
  80. package/themes/original/src/components/AddressDetails/index.tsx +10 -8
  81. package/themes/original/src/components/AddressForm/index.tsx +157 -140
  82. package/themes/original/src/components/AddressList/index.tsx +1 -1
  83. package/themes/original/src/components/AppleLogin/index.tsx +4 -4
  84. package/themes/original/src/components/BusinessBasicInformation/index.tsx +218 -147
  85. package/themes/original/src/components/BusinessBasicInformation/styles.tsx +2 -2
  86. package/themes/original/src/components/BusinessController/index.tsx +231 -114
  87. package/themes/original/src/components/BusinessController/styles.tsx +14 -9
  88. package/themes/original/src/components/BusinessInformation/index.tsx +10 -31
  89. package/themes/original/src/components/BusinessItemAccordion/index.tsx +12 -6
  90. package/themes/original/src/components/BusinessListingSearch/BusinessControllerSkeletons/index.tsx +57 -0
  91. package/themes/original/src/components/BusinessListingSearch/MaxSectionItem/index.tsx +59 -0
  92. package/themes/original/src/components/BusinessListingSearch/MaxSectionItem/styles.tsx +13 -0
  93. package/themes/original/src/components/BusinessListingSearch/index.tsx +109 -139
  94. package/themes/original/src/components/BusinessListingSearch/styles.tsx +10 -12
  95. package/themes/original/src/components/BusinessProductsList/SubcategoriesComponent/index.tsx +87 -0
  96. package/themes/original/src/components/BusinessProductsList/SubcategoriesComponent/styles.tsx +12 -0
  97. package/themes/original/src/components/BusinessProductsList/index.tsx +59 -60
  98. package/themes/original/src/components/BusinessProductsList/styles.tsx +0 -3
  99. package/themes/original/src/components/BusinessProductsListing/index.tsx +177 -80
  100. package/themes/original/src/components/BusinessProductsListing/styles.tsx +18 -11
  101. package/themes/original/src/components/BusinessTypeFilter/index.tsx +3 -2
  102. package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +35 -23
  103. package/themes/original/src/components/BusinessesListing/Layout/Appointment/styles.tsx +3 -2
  104. package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +275 -120
  105. package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +47 -10
  106. package/themes/original/src/components/BusinessesListing/index.tsx +80 -25
  107. package/themes/original/src/components/Cart/index.tsx +82 -15
  108. package/themes/original/src/components/Cart/styles.tsx +4 -0
  109. package/themes/original/src/components/CartContent/index.tsx +22 -16
  110. package/themes/original/src/components/Checkout/index.tsx +114 -118
  111. package/themes/original/src/components/Checkout/styles.tsx +4 -3
  112. package/themes/original/src/components/CitiesControl/index.tsx +89 -0
  113. package/themes/original/src/components/CitiesControl/styles.tsx +17 -0
  114. package/themes/original/src/components/DriverTips/index.tsx +4 -4
  115. package/themes/original/src/components/DriverTips/styles.tsx +2 -1
  116. package/themes/original/src/components/FavoriteList/index.tsx +69 -45
  117. package/themes/original/src/components/FloatingButton/index.tsx +13 -11
  118. package/themes/original/src/components/FloatingButton/styles.tsx +1 -1
  119. package/themes/original/src/components/GPSButton/index.tsx +20 -19
  120. package/themes/original/src/components/GPSButton/styles.ts +3 -3
  121. package/themes/original/src/components/GoogleMap/index.tsx +20 -12
  122. package/themes/original/src/components/HelpAccountAndPayment/index.tsx +25 -10
  123. package/themes/original/src/components/HelpAccountAndPayment/styles.tsx +4 -0
  124. package/themes/original/src/components/HelpGuide/index.tsx +9 -8
  125. package/themes/original/src/components/HelpOrder/index.tsx +9 -8
  126. package/themes/original/src/components/LanguageSelector/index.tsx +19 -14
  127. package/themes/original/src/components/LoginForm/Otp/index.tsx +89 -73
  128. package/themes/original/src/components/LoginForm/Otp/styles.tsx +0 -1
  129. package/themes/original/src/components/LoginForm/index.tsx +98 -41
  130. package/themes/original/src/components/LottieAnimation/index.tsx +69 -0
  131. package/themes/original/src/components/Messages/index.tsx +35 -20
  132. package/themes/original/src/components/MomentOption/index.tsx +8 -6
  133. package/themes/original/src/components/MultiCart/index.tsx +63 -0
  134. package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +92 -93
  135. package/themes/original/src/components/MultiCheckout/index.tsx +10 -2
  136. package/themes/original/src/components/MultiOrdersDetails/index.tsx +34 -16
  137. package/themes/original/src/components/MyOrders/index.tsx +88 -22
  138. package/themes/original/src/components/NavBar/index.tsx +11 -5
  139. package/themes/original/src/components/NetworkError/index.tsx +5 -3
  140. package/themes/original/src/components/NotFoundSource/index.tsx +2 -1
  141. package/themes/original/src/components/Notifications/index.tsx +148 -0
  142. package/themes/original/src/components/Notifications/styles.tsx +17 -0
  143. package/themes/original/src/components/OrderDetails/OrderHistory.tsx +167 -0
  144. package/themes/original/src/components/OrderDetails/index.tsx +200 -39
  145. package/themes/original/src/components/OrderDetails/styles.tsx +15 -2
  146. package/themes/original/src/components/OrderItAgain/index.tsx +75 -0
  147. package/themes/original/src/components/OrderItAgain/styles.tsx +10 -0
  148. package/themes/original/src/components/OrderProgress/index.tsx +77 -66
  149. package/themes/original/src/components/OrderProgress/styles.tsx +5 -0
  150. package/themes/original/src/components/OrderSummary/index.tsx +2 -35
  151. package/themes/original/src/components/OrderTypeSelector/index.tsx +85 -36
  152. package/themes/original/src/components/OrderTypeSelector/styles.tsx +19 -1
  153. package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/index.tsx +94 -98
  154. package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/index.tsx +3 -0
  155. package/themes/original/src/components/OrdersOption/index.tsx +101 -56
  156. package/themes/original/src/components/PaymentOptionWallet/index.tsx +56 -56
  157. package/themes/original/src/components/PaymentOptions/index.tsx +1 -2
  158. package/themes/original/src/components/PhoneInputNumber/index.tsx +1 -1
  159. package/themes/original/src/components/PlaceSpot/index.tsx +249 -47
  160. package/themes/original/src/components/PlaceSpot/styles.tsx +0 -2
  161. package/themes/original/src/components/PreviousOrders/index.tsx +3 -2
  162. package/themes/original/src/components/ProductForm/index.tsx +639 -664
  163. package/themes/original/src/components/ProductForm/styles.tsx +10 -11
  164. package/themes/original/src/components/ProductItemAccordion/index.tsx +199 -128
  165. package/themes/original/src/components/ProductOption/index.tsx +1 -1
  166. package/themes/original/src/components/ProductOptionSubOption/index.tsx +16 -8
  167. package/themes/original/src/components/ProductOptionSubOption/styles.tsx +0 -1
  168. package/themes/original/src/components/ProfessionalFilter/index.tsx +2 -1
  169. package/themes/original/src/components/ProfessionalProfile/index.tsx +19 -8
  170. package/themes/original/src/components/Promotions/index.tsx +232 -219
  171. package/themes/original/src/components/Promotions/styles.tsx +7 -2
  172. package/themes/original/src/components/ReviewDriver/index.tsx +3 -3
  173. package/themes/original/src/components/ReviewOrder/index.tsx +120 -108
  174. package/themes/original/src/components/ReviewOrder/styles.tsx +5 -7
  175. package/themes/original/src/components/ReviewProducts/index.tsx +8 -5
  176. package/themes/original/src/components/ReviewTrigger/index.tsx +136 -0
  177. package/themes/original/src/components/ReviewTrigger/styles.tsx +41 -0
  178. package/themes/original/src/components/ScheduleAccordion/index.tsx +68 -0
  179. package/themes/original/src/components/ScheduleAccordion/styles.tsx +14 -0
  180. package/themes/original/src/components/ServiceForm/index.tsx +341 -267
  181. package/themes/original/src/components/SignupForm/index.tsx +160 -113
  182. package/themes/original/src/components/SingleOrderCard/index.tsx +266 -183
  183. package/themes/original/src/components/SingleOrderCard/styles.tsx +10 -8
  184. package/themes/original/src/components/SingleProductCard/index.tsx +198 -112
  185. package/themes/original/src/components/SingleProductCard/styles.tsx +3 -10
  186. package/themes/original/src/components/SingleProductReview/index.tsx +38 -5
  187. package/themes/original/src/components/SingleProductReview/styles.tsx +12 -0
  188. package/themes/original/src/components/StripeElementsForm/index.tsx +13 -2
  189. package/themes/original/src/components/UpsellingProducts/index.tsx +15 -5
  190. package/themes/original/src/components/UserDetails/index.tsx +5 -3
  191. package/themes/original/src/components/UserFormDetails/index.tsx +6 -48
  192. package/themes/original/src/components/UserProfile/index.tsx +56 -31
  193. package/themes/original/src/components/UserProfile/styles.ts +17 -0
  194. package/themes/original/src/components/WalletTransactions/index.tsx +76 -0
  195. package/themes/original/src/components/WalletTransactions/styles.tsx +13 -0
  196. package/themes/original/src/components/Wallets/index.tsx +176 -164
  197. package/themes/original/src/components/Wallets/styles.tsx +12 -8
  198. package/themes/original/src/components/shared/CardAnimation.tsx +47 -0
  199. package/themes/original/src/components/shared/HeaderTitle.tsx +8 -3
  200. package/themes/original/src/components/shared/OBottomPopup.tsx +48 -15
  201. package/themes/original/src/components/shared/OButton.tsx +10 -3
  202. package/themes/original/src/components/shared/OIcon.tsx +8 -1
  203. package/themes/original/src/components/shared/OInput.tsx +10 -1
  204. package/themes/original/src/layouts/Container.tsx +13 -9
  205. package/themes/original/src/layouts/FloatingBottomContainer.tsx +5 -1
  206. package/themes/original/src/types/index.tsx +86 -28
  207. package/themes/original/src/utils/index.tsx +103 -58
  208. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
@@ -47,6 +47,10 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
47
47
  businessesSearchList,
48
48
  hideOrders,
49
49
  BusinessControllerSkeletons,
50
+ businesses,
51
+ businessPaginationProps,
52
+ handleUpdateProducts,
53
+ handleUpdateBusinesses
50
54
  } = props
51
55
 
52
56
  const theme = useTheme();
@@ -56,12 +60,41 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
56
60
  const [, { showToast }] = useToast()
57
61
  const { loading, error, orders: values } = orderList
58
62
  const [businessLoading, setBusinessLoading] = useState(true)
63
+ const [orders, setOrders] = useState([])
59
64
 
60
65
  const imageFails = activeOrders
61
66
  ? theme.images.general.emptyActiveOrders
62
67
  : theme.images.general.emptyPastOrders
63
68
 
64
- const orders = customArray || values || []
69
+ const _orders = customArray || values || []
70
+ const uniqueOrders: any = []
71
+
72
+
73
+ useEffect(() => {
74
+ if (loading || error) return
75
+ const orders = _orders.map((order: any) => order?.cart_group_id
76
+ ? _orders
77
+ .filter((_order : any) => _order?.cart_group_id === order?.cart_group_id)
78
+ ?.reduce((orderCompleted : any, currentOrder : any) => ({
79
+ ...orderCompleted,
80
+ total: orderCompleted.summary?.total + currentOrder?.summary?.total,
81
+ business: [orderCompleted.business, currentOrder.business].flat(),
82
+ business_id: [orderCompleted.business_id, currentOrder.business_id].flat(),
83
+ id: [orderCompleted.id, currentOrder.id].flat(),
84
+ review: orderCompleted.review && currentOrder.review,
85
+ user_review: orderCompleted.user_review && currentOrder.user_review,
86
+ products: [orderCompleted.products, currentOrder.products].flat()
87
+ })).filter((order: any) => {
88
+ const isDuplicate = uniqueOrders.includes(order?.cart_group_id)
89
+ if (!isDuplicate) {
90
+ uniqueOrders.push(order?.cart_group_id)
91
+ return true
92
+ }
93
+ return false
94
+ })
95
+ : order)
96
+ setOrders(orders)
97
+ }, [JSON.stringify(_orders)])
65
98
 
66
99
  const getOrderStatus = (s: string) => {
67
100
  const status = parseInt(s)
@@ -98,11 +131,18 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
98
131
  }
99
132
 
100
133
  const onProductClick = (product: any) => {
101
- if (product?.product_id && product?.category_id && product?.businessId) {
134
+ if (product?.product_id && product?.category_id && product?.businessId &&
135
+ product?.business.slug && product?.business.header && product?.business.logo) {
102
136
  onNavigationRedirect('ProductDetails', {
103
- productId: product?.product_id,
104
- categoryId: product?.category_id,
137
+ isRedirect: 'business',
105
138
  businessId: product?.businessId,
139
+ categoryId: product?.category_id,
140
+ productId: product?.product_id,
141
+ business: {
142
+ store: product?.business.slug,
143
+ header: product?.business.header,
144
+ logo: product?.business.logo,
145
+ }
106
146
  })
107
147
  } else {
108
148
  showToast(ToastType.Error, t('ERROR_FAILED_REDIRECT_IDS', 'Failed to redirect product for ids'))
@@ -134,7 +174,9 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
134
174
 
135
175
  useFocusEffect(
136
176
  React.useCallback(() => {
137
- loadOrders(false, false, false, true)
177
+ if (!businessesSearchList) {
178
+ loadOrders(false, false, false, true)
179
+ }
138
180
  }, [navigation])
139
181
  )
140
182
 
@@ -182,15 +224,18 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
182
224
  )}
183
225
  {(ordersLength?.activeOrdersLength > 0 || ordersLength?.previousOrdersLength > 0) && (
184
226
  <>
185
- <OptionTitle titleContent={!!titleContent} isBusinessesSearchList={!!businessesSearchList}>
186
- <OText size={16} lineHeight={24} weight={'500'} color={theme.colors.textNormal} mBottom={10} >
187
- {titleContent || (activeOrders
188
- ? t('ACTIVE', 'Active')
189
- : preOrders
190
- ? t('PREORDERS', 'Preorders')
191
- : t('PAST', 'Past'))}
192
- </OText>
193
- </OptionTitle>
227
+ {((titleContent && ((isBusiness && businessOrderIds?.length > 0) || isProducts)) || !titleContent) && (
228
+ <OptionTitle titleContent={!!titleContent} isBusinessesSearchList={!!businessesSearchList}>
229
+ <OText size={16} lineHeight={24} weight={'500'} color={theme.colors.textNormal} mBottom={10} >
230
+ {titleContent || (activeOrders
231
+ ? t('ACTIVE', 'Active')
232
+ : preOrders
233
+ ? t('PREORDERS', 'Preorders')
234
+ : t('PAST', 'Past'))}
235
+ </OText>
236
+ </OptionTitle>
237
+ )}
238
+
194
239
  {!(ordersLength?.activeOrdersLength === 0 && ordersLength?.previousOrdersLength === 0) &&
195
240
  !loading &&
196
241
  orders.filter((order: any) => orderStatus.includes(order.status)).length === 0 &&
@@ -203,34 +248,33 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
203
248
  )}
204
249
  </>
205
250
  )}
206
- {isBusiness && !!businessesSearchList && businessLoading && (
251
+ {isBusiness && !!businessesSearchList && businesses?.loading && (
207
252
  <ScrollView horizontal>
208
- <BusinessControllerSkeletons />
253
+ <BusinessControllerSkeletons paginationProps={businessPaginationProps} />
209
254
  </ScrollView>
210
255
  )}
211
- {isBusiness && businessOrderIds?.length > 0 && (
256
+ {isBusiness && (
212
257
  <PreviousBusinessOrdered
213
- businessId={businessOrderIds}
214
- businessLoading={businessLoading}
215
- setBusinessLoading={setBusinessLoading}
216
258
  onNavigationRedirect={onNavigationRedirect}
217
- isLoadingOrders={loading}
218
259
  isBusinessesSearchList={!!businessesSearchList}
260
+ businesses={businesses}
261
+ handleUpdateBusinesses={handleUpdateBusinesses}
219
262
  />
220
263
  )}
221
264
 
222
- {isProducts && (
265
+ {isProducts && !loading && (
223
266
  <PreviousProductsOrdered
224
267
  products={products}
225
268
  onProductClick={onProductClick}
269
+ handleUpdateProducts={handleUpdateProducts}
226
270
  isBusinessesSearchList={!!businessesSearchList}
227
271
  />
228
272
  )}
229
273
  {(loading && isProducts) && (
230
274
  <>
231
- {[...Array(4).keys()].map(
275
+ {[...Array(!!businessesSearchList ? 1 : 4).keys()].map(
232
276
  (item, i) => (
233
- <Placeholder key={i} style={{ padding: 5, paddingLeft: 40 }} Animation={Fade}>
277
+ <Placeholder key={i} style={{ padding: 5, paddingLeft: !!businessesSearchList ? 0 : 40, marginBottom: !!businessesSearchList ? 38 : 0 }} Animation={Fade}>
234
278
  <View style={{ flexDirection: 'row' }}>
235
279
  <PlaceholderLine
236
280
  width={24}
@@ -247,38 +291,7 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
247
291
  )}
248
292
  </>
249
293
  )}
250
- {loading && !hideOrders && (
251
- <>
252
- {!activeOrders ? (
253
- <Placeholder style={{ marginTop: 30 }} Animation={Fade}>
254
- <View style={{ width: '100%', flexDirection: 'row' }}>
255
- <PlaceholderLine width={20} height={70} style={{ marginRight: 20, marginBottom: 35 }} />
256
- <Placeholder>
257
- <PlaceholderLine width={30} style={{ marginTop: 5 }} />
258
- <PlaceholderLine width={50} />
259
- <PlaceholderLine width={70} />
260
- </Placeholder>
261
- </View>
262
- </Placeholder>
263
- ) : (
264
- <View style={{ marginTop: 30 }}>
265
- {[...Array(5)].map((item, i) => (
266
- <Placeholder key={i} Animation={Fade}>
267
- <View style={{ width: '100%', flexDirection: 'row' }}>
268
- <PlaceholderLine width={20} height={70} style={{ marginRight: 20, marginBottom: 20 }} />
269
- <Placeholder>
270
- <PlaceholderLine width={30} style={{ marginTop: 5 }} />
271
- <PlaceholderLine width={50} />
272
- <PlaceholderLine width={20} />
273
- </Placeholder>
274
- </View>
275
- </Placeholder>
276
- ))}
277
- </View>
278
- )}
279
- </>
280
- )}
281
- {!loading && !error && orders.length > 0 && !hideOrders && (
294
+ {!error && orders.length > 0 && !hideOrders && (
282
295
  preOrders ? (
283
296
  <ActiveOrders
284
297
  orders={orders.filter((order: any) => orderStatus.includes(order.status))}
@@ -310,9 +323,41 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
310
323
  onNavigationRedirect={onNavigationRedirect}
311
324
  handleReorder={handleReorder}
312
325
  handleUpdateOrderList={handleUpdateOrderList}
326
+ loading={loading}
313
327
  />
314
328
  )
315
329
  )}
330
+ {loading && !hideOrders && (
331
+ <>
332
+ {!activeOrders ? (
333
+ <Placeholder style={{ marginTop: 30 }} Animation={Fade}>
334
+ <View style={{ width: '100%', flexDirection: 'row' }}>
335
+ <PlaceholderLine width={20} height={70} style={{ marginRight: 20, marginBottom: 35 }} />
336
+ <Placeholder>
337
+ <PlaceholderLine width={30} style={{ marginTop: 5 }} />
338
+ <PlaceholderLine width={50} />
339
+ <PlaceholderLine width={70} />
340
+ </Placeholder>
341
+ </View>
342
+ </Placeholder>
343
+ ) : (
344
+ <View style={{ marginTop: 30 }}>
345
+ {[...Array(5)].map((item, i) => (
346
+ <Placeholder key={i} Animation={Fade}>
347
+ <View style={{ width: '100%', flexDirection: 'row' }}>
348
+ <PlaceholderLine width={20} height={70} style={{ marginRight: 20, marginBottom: 20 }} />
349
+ <Placeholder>
350
+ <PlaceholderLine width={30} style={{ marginTop: 5 }} />
351
+ <PlaceholderLine width={50} />
352
+ <PlaceholderLine width={20} />
353
+ </Placeholder>
354
+ </View>
355
+ </Placeholder>
356
+ ))}
357
+ </View>
358
+ )}
359
+ </>
360
+ )}
316
361
  </>
317
362
  )
318
363
  }
@@ -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>
@@ -160,7 +160,6 @@ const PaymentOptionsUI = (props: any) => {
160
160
  <TouchableOpacity
161
161
  onPress={() => handlePaymentMethodClick(item)}
162
162
  >
163
- {console.log(item?.gateway)}
164
163
  <PMItem
165
164
  key={item.id}
166
165
  isDisabled={isDisabled}
@@ -187,7 +186,7 @@ const PaymentOptionsUI = (props: any) => {
187
186
  )
188
187
  }
189
188
 
190
- const excludeIds: any = [32]; //exclude paypal & connect & redirect
189
+ const excludeIds: any = [32, 66]; //exclude paypal & connect & redirect
191
190
 
192
191
  return (
193
192
  <PMContainer>
@@ -124,7 +124,7 @@ export const PhoneInputNumber = (props: PhoneInputParams) => {
124
124
  flagButtonStyle={flagStyle}
125
125
  countryPickerButtonStyle={{ ...style.countryBtn, ...boxStyle ? boxStyle : {} }}
126
126
  placeholder={t('PHONE_NUMBER', 'Phone Number')}
127
- textInputProps={{ autoCompleteType: 'tel', ref: forwardRef, ...textInputProps }}
127
+ textInputProps={{ keyboardType: 'number-pad', autoCompleteType: 'tel', textContentType: 'telephoneNumber', dataDetectorTypes: 'phoneNumber', ref: forwardRef, ...textInputProps }}
128
128
  containerStyle={{ width: '100%' }}
129
129
  renderDropdownImage={noDropIcon ? <View /> : <OIcon src={theme.images.general.arrow_down} width={13} color={'#B1BCCC'}></OIcon>}
130
130
  />