ordering-ui-react-native 0.15.91 → 0.15.92-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 (236) hide show
  1. package/package.json +7 -3
  2. package/src/DeliveryApp.tsx +43 -1
  3. package/src/components/ActiveOrders/index.tsx +61 -63
  4. package/src/components/ActiveOrders/styles.tsx +1 -1
  5. package/src/components/AddressForm/index.tsx +18 -2
  6. package/src/components/BusinessBasicInformation/index.tsx +11 -19
  7. package/src/components/BusinessController/index.tsx +16 -8
  8. package/src/components/BusinessInformation/index.tsx +14 -0
  9. package/src/components/BusinessTypeFilter/index.tsx +1 -2
  10. package/src/components/BusinessesListing/index.tsx +1 -1
  11. package/src/components/Checkout/index.tsx +25 -3
  12. package/src/components/DriverTips/index.tsx +11 -6
  13. package/src/components/LanguageSelector/index.tsx +21 -16
  14. package/src/components/LoginForm/index.tsx +120 -30
  15. package/src/components/LoginForm/styles.tsx +6 -0
  16. package/src/components/Messages/index.tsx +2 -2
  17. package/src/components/NotificationSetting/index.tsx +85 -0
  18. package/src/components/OrderDetails/index.tsx +7 -21
  19. package/src/components/PaymentOptions/index.tsx +335 -365
  20. package/src/components/PaymentOptionsWebView/index.tsx +120 -121
  21. package/src/components/ReviewDriver/index.tsx +1 -1
  22. package/src/components/ReviewOrder/index.tsx +2 -1
  23. package/src/components/ReviewProducts/index.tsx +11 -0
  24. package/src/components/SignupForm/index.tsx +145 -61
  25. package/src/components/SingleProductCard/index.tsx +16 -4
  26. package/src/components/SingleProductReview/index.tsx +1 -1
  27. package/src/components/StripeElementsForm/index.tsx +25 -16
  28. package/src/components/StripeMethodForm/index.tsx +22 -24
  29. package/src/components/UpsellingProducts/index.tsx +1 -1
  30. package/src/components/UserProfileForm/index.tsx +63 -6
  31. package/src/components/UserProfileForm/styles.tsx +8 -0
  32. package/src/components/VerifyPhone/styles.tsx +1 -2
  33. package/src/components/shared/OBottomPopup.tsx +6 -2
  34. package/src/components/shared/OModal.tsx +1 -1
  35. package/src/index.tsx +2 -0
  36. package/src/navigators/CheckoutNavigator.tsx +6 -0
  37. package/src/navigators/HomeNavigator.tsx +6 -0
  38. package/src/pages/BusinessesListing.tsx +7 -6
  39. package/src/pages/MultiCheckout.tsx +31 -0
  40. package/src/pages/MultiOrdersDetails.tsx +27 -0
  41. package/src/pages/OrderDetails.tsx +1 -1
  42. package/src/pages/ReviewDriver.tsx +2 -2
  43. package/src/pages/ReviewOrder.tsx +2 -2
  44. package/src/theme.json +0 -1
  45. package/src/types/index.tsx +18 -11
  46. package/src/utils/index.tsx +1 -2
  47. package/themes/business/index.tsx +4 -0
  48. package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +1 -1
  49. package/themes/business/src/components/Chat/index.tsx +14 -6
  50. package/themes/business/src/components/DriverMap/index.tsx +6 -5
  51. package/themes/business/src/components/DriverSchedule/index.tsx +71 -0
  52. package/themes/business/src/components/DriverSchedule/styles.tsx +6 -0
  53. package/themes/business/src/components/LoginForm/index.tsx +6 -4
  54. package/themes/business/src/components/LogoutButton/index.tsx +1 -1
  55. package/themes/business/src/components/MapView/index.tsx +1 -1
  56. package/themes/business/src/components/MessagesOption/index.tsx +11 -1
  57. package/themes/business/src/components/NewOrderNotification/index.tsx +24 -13
  58. package/themes/business/src/components/OrderDetails/Business.tsx +1 -1
  59. package/themes/business/src/components/OrderDetails/Delivery.tsx +6 -4
  60. package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +26 -18
  61. package/themes/business/src/components/OrdersListManager/index.tsx +10 -3
  62. package/themes/business/src/components/OrdersOption/index.tsx +67 -20
  63. package/themes/business/src/components/OrdersOption/styles.tsx +5 -1
  64. package/themes/business/src/components/OrdersOptionBusiness/index.tsx +15 -1
  65. package/themes/business/src/components/OrdersOptionCity/index.tsx +15 -1
  66. package/themes/business/src/components/OrdersOptionDate/index.tsx +19 -6
  67. package/themes/business/src/components/OrdersOptionDelivery/index.tsx +15 -1
  68. package/themes/business/src/components/OrdersOptionDriver/index.tsx +15 -1
  69. package/themes/business/src/components/OrdersOptionPaymethod/index.tsx +15 -1
  70. package/themes/business/src/components/OrdersOptionStatus/index.tsx +10 -1
  71. package/themes/business/src/components/PreviousMessages/index.tsx +1 -0
  72. package/themes/business/src/components/PreviousOrders/index.tsx +7 -7
  73. package/themes/business/src/components/ProductItemAccordion/index.tsx +5 -4
  74. package/themes/business/src/components/ReviewCustomer/index.tsx +1 -1
  75. package/themes/business/src/components/ScheduleBlocked/index.tsx +53 -0
  76. package/themes/business/src/components/UserFormDetails/index.tsx +5 -2
  77. package/themes/business/src/components/UserProfileForm/index.tsx +28 -4
  78. package/themes/business/src/components/shared/ODropDown.tsx +42 -8
  79. package/themes/business/src/components/shared/ODropDownCalendar.tsx +36 -7
  80. package/themes/business/src/components/shared/OModal.tsx +41 -38
  81. package/themes/business/src/types/index.tsx +14 -9
  82. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  83. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  84. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  85. package/themes/kiosk/src/components/BusinessMenu/index.tsx +25 -26
  86. package/themes/kiosk/src/components/BusinessesListing/index.tsx +2 -3
  87. package/themes/kiosk/src/components/Cart/index.tsx +10 -11
  88. package/themes/kiosk/src/components/CartBottomSheet/index.tsx +9 -2
  89. package/themes/kiosk/src/components/CartContent/index.tsx +0 -11
  90. package/themes/kiosk/src/components/CartItem/index.tsx +4 -3
  91. package/themes/kiosk/src/components/CategoriesMenu/index.tsx +107 -62
  92. package/themes/kiosk/src/components/Checkout/index.tsx +40 -22
  93. package/themes/kiosk/src/components/CustomerName/index.tsx +0 -6
  94. package/themes/kiosk/src/components/DrawerView/index.tsx +1 -0
  95. package/themes/kiosk/src/components/DrawerView/styles.tsx +2 -2
  96. package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
  97. package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
  98. package/themes/kiosk/src/components/OrderDetails/index.tsx +2 -2
  99. package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +9 -11
  100. package/themes/kiosk/src/components/PaymentOptions/index.tsx +55 -53
  101. package/themes/kiosk/src/components/ProductForm/index.tsx +6 -7
  102. package/themes/kiosk/src/components/ProductOptionSubOption/index.tsx +3 -1
  103. package/themes/kiosk/src/components/UpsellingProducts/index.tsx +16 -5
  104. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  105. package/themes/kiosk/src/types/index.d.ts +1 -0
  106. package/themes/original/index.tsx +22 -0
  107. package/themes/original/src/components/ActiveOrders/index.tsx +15 -132
  108. package/themes/original/src/components/ActiveOrders/styles.tsx +0 -54
  109. package/themes/original/src/components/AddressForm/index.tsx +137 -134
  110. package/themes/original/src/components/AddressList/index.tsx +2 -2
  111. package/themes/original/src/components/AppleLogin/index.tsx +4 -4
  112. package/themes/original/src/components/BusinessBasicInformation/index.tsx +302 -160
  113. package/themes/original/src/components/BusinessBasicInformation/styles.tsx +6 -2
  114. package/themes/original/src/components/BusinessController/index.tsx +179 -96
  115. package/themes/original/src/components/BusinessController/styles.tsx +5 -0
  116. package/themes/original/src/components/BusinessItemAccordion/index.tsx +11 -8
  117. package/themes/original/src/components/BusinessItemAccordion/styles.tsx +3 -1
  118. package/themes/original/src/components/BusinessListingSearch/BusinessControllerSkeletons/index.tsx +57 -0
  119. package/themes/original/src/components/BusinessListingSearch/MaxSectionItem/index.tsx +59 -0
  120. package/themes/original/src/components/BusinessListingSearch/MaxSectionItem/styles.tsx +13 -0
  121. package/themes/original/src/components/BusinessListingSearch/index.tsx +158 -126
  122. package/themes/original/src/components/BusinessListingSearch/styles.tsx +22 -13
  123. package/themes/original/src/components/BusinessPreorder/index.tsx +1 -1
  124. package/themes/original/src/components/BusinessProductsCategories/index.tsx +2 -2
  125. package/themes/original/src/components/BusinessProductsList/CategoryDescription/index.tsx +44 -0
  126. package/themes/original/src/components/BusinessProductsList/SubcategoriesComponent/index.tsx +87 -0
  127. package/themes/original/src/components/BusinessProductsList/SubcategoriesComponent/styles.tsx +12 -0
  128. package/themes/original/src/components/BusinessProductsList/index.tsx +66 -73
  129. package/themes/original/src/components/BusinessProductsList/styles.tsx +0 -3
  130. package/themes/original/src/components/BusinessProductsListing/index.tsx +296 -178
  131. package/themes/original/src/components/BusinessProductsListing/styles.tsx +18 -0
  132. package/themes/original/src/components/BusinessReviews/index.tsx +6 -1
  133. package/themes/original/src/components/BusinessTypeFilter/index.tsx +106 -38
  134. package/themes/original/src/components/BusinessTypeFilter/styles.tsx +2 -0
  135. package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +561 -0
  136. package/themes/original/src/components/BusinessesListing/{styles.tsx → Layout/Appointment/styles.tsx} +24 -2
  137. package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +673 -0
  138. package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +137 -0
  139. package/themes/original/src/components/BusinessesListing/index.tsx +102 -462
  140. package/themes/original/src/components/Cart/index.tsx +82 -37
  141. package/themes/original/src/components/Cart/styles.tsx +4 -0
  142. package/themes/original/src/components/CartContent/index.tsx +22 -16
  143. package/themes/original/src/components/Checkout/index.tsx +141 -93
  144. package/themes/original/src/components/Checkout/styles.tsx +0 -1
  145. package/themes/original/src/components/DriverTips/index.tsx +17 -12
  146. package/themes/original/src/components/Favorite/index.tsx +92 -0
  147. package/themes/original/src/components/Favorite/styles.tsx +22 -0
  148. package/themes/original/src/components/FavoriteList/index.tsx +298 -0
  149. package/themes/original/src/components/FavoriteList/styles.tsx +5 -0
  150. package/themes/original/src/components/GPSButton/index.tsx +25 -17
  151. package/themes/original/src/components/GoogleMap/index.tsx +21 -12
  152. package/themes/original/src/components/Help/index.tsx +21 -4
  153. package/themes/original/src/components/HelpAccountAndPayment/index.tsx +8 -3
  154. package/themes/original/src/components/HelpGuide/index.tsx +8 -3
  155. package/themes/original/src/components/HelpOrder/index.tsx +8 -3
  156. package/themes/original/src/components/HighestRatedBusinesses/index.tsx +18 -1
  157. package/themes/original/src/components/LastOrders/index.tsx +12 -1
  158. package/themes/original/src/components/LoginForm/Otp/index.tsx +3 -2
  159. package/themes/original/src/components/LoginForm/index.tsx +50 -11
  160. package/themes/original/src/components/Messages/index.tsx +17 -17
  161. package/themes/original/src/components/MomentSelector/index.tsx +197 -0
  162. package/themes/original/src/components/MomentSelector/styles.tsx +6 -0
  163. package/themes/original/src/components/MultiCartsPaymethodsAndWallets/index.tsx +243 -0
  164. package/themes/original/src/components/MultiCartsPaymethodsAndWallets/styles.tsx +46 -0
  165. package/themes/original/src/components/MultiCheckout/index.tsx +304 -0
  166. package/themes/original/src/components/MultiCheckout/styles.tsx +59 -0
  167. package/themes/original/src/components/MultiOrdersDetails/SingleOrderCard.tsx +372 -0
  168. package/themes/original/src/components/MultiOrdersDetails/index.tsx +262 -0
  169. package/themes/original/src/components/MultiOrdersDetails/styles.tsx +50 -0
  170. package/themes/original/src/components/MyOrders/index.tsx +132 -27
  171. package/themes/original/src/components/MyOrders/styles.tsx +8 -1
  172. package/themes/original/src/components/NavBar/index.tsx +11 -5
  173. package/themes/original/src/components/NotFoundSource/index.tsx +2 -1
  174. package/themes/original/src/components/OrderDetails/OrderHistory.tsx +167 -0
  175. package/themes/original/src/components/OrderDetails/index.tsx +154 -77
  176. package/themes/original/src/components/OrderDetails/styles.tsx +5 -2
  177. package/themes/original/src/components/OrderItAgain/index.tsx +73 -0
  178. package/themes/original/src/components/OrderItAgain/styles.tsx +10 -0
  179. package/themes/original/src/components/OrderProgress/index.tsx +8 -2
  180. package/themes/original/src/components/OrderSummary/index.tsx +2 -35
  181. package/themes/original/src/components/OrderTypeSelector/index.tsx +84 -36
  182. package/themes/original/src/components/OrderTypeSelector/styles.tsx +19 -1
  183. package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/index.tsx +140 -0
  184. package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/styles.tsx +6 -0
  185. package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/index.tsx +53 -0
  186. package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/styles.tsx +6 -0
  187. package/themes/original/src/components/OrdersOption/index.tsx +138 -46
  188. package/themes/original/src/components/OrdersOption/styles.tsx +4 -1
  189. package/themes/original/src/components/PaymentOptionCash/index.tsx +2 -2
  190. package/themes/original/src/components/PaymentOptionWallet/index.tsx +15 -22
  191. package/themes/original/src/components/PaymentOptions/index.tsx +57 -37
  192. package/themes/original/src/components/PhoneInputNumber/index.tsx +4 -10
  193. package/themes/original/src/components/PlaceSpot/index.tsx +243 -47
  194. package/themes/original/src/components/PlaceSpot/styles.tsx +0 -2
  195. package/themes/original/src/components/PreviousOrders/index.tsx +18 -147
  196. package/themes/original/src/components/ProductForm/index.tsx +694 -647
  197. package/themes/original/src/components/ProductForm/styles.tsx +9 -7
  198. package/themes/original/src/components/ProductItemAccordion/index.tsx +2 -2
  199. package/themes/original/src/components/ProductOption/index.tsx +1 -1
  200. package/themes/original/src/components/ProfessionalFilter/index.tsx +128 -0
  201. package/themes/original/src/components/ProfessionalFilter/styles.tsx +0 -0
  202. package/themes/original/src/components/ProfessionalProfile/index.tsx +298 -0
  203. package/themes/original/src/components/ProfessionalProfile/styles.tsx +46 -0
  204. package/themes/original/src/components/Promotions/index.tsx +22 -6
  205. package/themes/original/src/components/ReviewDriver/index.tsx +6 -6
  206. package/themes/original/src/components/ReviewOrder/index.tsx +1 -1
  207. package/themes/original/src/components/ReviewTrigger/index.tsx +118 -0
  208. package/themes/original/src/components/ReviewTrigger/styles.tsx +34 -0
  209. package/themes/original/src/components/SearchBar/index.tsx +13 -5
  210. package/themes/original/src/components/ServiceForm/index.tsx +579 -0
  211. package/themes/original/src/components/ServiceForm/styles.tsx +50 -0
  212. package/themes/original/src/components/SignupForm/index.tsx +237 -127
  213. package/themes/original/src/components/SingleOrderCard/index.tsx +316 -0
  214. package/themes/original/src/components/SingleOrderCard/styles.tsx +54 -0
  215. package/themes/original/src/components/SingleProductCard/index.tsx +204 -95
  216. package/themes/original/src/components/SingleProductCard/styles.tsx +2 -2
  217. package/themes/original/src/components/StripeElementsForm/index.tsx +25 -9
  218. package/themes/original/src/components/StripeElementsForm/naked.tsx +2 -2
  219. package/themes/original/src/components/UpsellingProducts/index.tsx +7 -3
  220. package/themes/original/src/components/UserDetails/index.tsx +32 -18
  221. package/themes/original/src/components/UserFormDetails/index.tsx +108 -74
  222. package/themes/original/src/components/UserProfile/index.tsx +4 -0
  223. package/themes/original/src/components/UserProfileForm/index.tsx +15 -10
  224. package/themes/original/src/components/UserVerification/index.tsx +178 -192
  225. package/themes/original/src/components/WalletTransactions/index.tsx +76 -0
  226. package/themes/original/src/components/WalletTransactions/styles.tsx +13 -0
  227. package/themes/original/src/components/Wallets/index.tsx +176 -162
  228. package/themes/original/src/components/Wallets/styles.tsx +10 -8
  229. package/themes/original/src/components/shared/OBottomPopup.tsx +47 -14
  230. package/themes/original/src/components/shared/OButton.tsx +10 -3
  231. package/themes/original/src/components/shared/OInput.tsx +3 -2
  232. package/themes/original/src/components/shared/OModal.tsx +4 -2
  233. package/themes/original/src/layouts/FloatingBottomContainer.tsx +5 -1
  234. package/themes/original/src/types/index.tsx +198 -47
  235. package/themes/original/src/utils/index.tsx +77 -0
  236. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
@@ -5,8 +5,10 @@ import SelectDropdown from 'react-native-select-dropdown'
5
5
  import { Placeholder, PlaceholderLine, Fade } from 'rn-placeholder';
6
6
  import FeatherIcon from 'react-native-vector-icons/Feather';
7
7
  import FontistoIcon from 'react-native-vector-icons/Fontisto'
8
+ import AntDesignIcon from 'react-native-vector-icons/AntDesign'
8
9
  import { useTheme } from 'styled-components/native';
9
10
  import { DeviceOrientationMethods } from '../../../../../src/hooks/DeviceOrientation'
11
+ import { NotificationSetting } from '../../../../../src/components/NotificationSetting'
10
12
  import { NewOrderNotification } from '../NewOrderNotification';
11
13
 
12
14
  import { OText, OButton, OModal, OIconButton, OInput, OIcon } from '../shared';
@@ -32,7 +34,8 @@ import {
32
34
  ItemContent,
33
35
  TimerInputWrapper,
34
36
  OverLine,
35
- Actions
37
+ Actions,
38
+ InputContainer
36
39
  } from './styles';
37
40
  import { PreviousOrders } from '../PreviousOrders';
38
41
  import { OrdersOptionParams } from '../../types';
@@ -47,7 +50,7 @@ import { OrdersOptionDelivery } from '../OrdersOptionDelivery';
47
50
  import { OrdersOptionPaymethod } from '../OrdersOptionPaymethod';
48
51
  import { OrdersOptionDriver } from '../OrdersOptionDriver';
49
52
  import { OrdersOptionDate } from '../OrdersOptionDate';
50
-
53
+ import { GestureEvent, GestureDetector } from 'react-native-gesture-handler'
51
54
  const tabsList: any = {
52
55
  pending: 1,
53
56
  inProgress: 2,
@@ -88,7 +91,8 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
88
91
  handleClickLogisticOrder,
89
92
  logisticOrders,
90
93
  loadLogisticOrders,
91
- isLogisticActivated
94
+ isLogisticActivated,
95
+ isAlsea
92
96
  } = props;
93
97
 
94
98
  const defaultSearchList = {
@@ -121,7 +125,7 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
121
125
  const [selectedTabStatus, setSelectedTabStatus] = useState([])
122
126
  const [hour, setHour] = useState(0)
123
127
  const [minute, setMinute] = useState(0)
124
-
128
+ const [openedSelect, setOpenedSelect] = useState('')
125
129
  const WIDTH_SCREEN = orientationState?.dimensions?.width
126
130
  const HEIGHT_SCREEN = orientationState?.dimensions?.height
127
131
  const IS_PORTRAIT = orientationState.orientation === PORTRAIT
@@ -401,19 +405,21 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
401
405
  setOpenSLASettingModal(false)
402
406
  }
403
407
 
404
- useEffect(() => {
405
- setCurrentFilters(null)
406
- onFiltered && onFiltered(null)
408
+ const handleClearFilters = () => {
407
409
  setSearch(defaultSearchList)
410
+ }
411
+
412
+ useEffect(() => {
408
413
  scrollRefTab.current?.scrollTo({ animated: true });
409
414
  scrollListRef.current?.scrollTo({ animated: true });
410
415
  scrollRef.current?.scrollTo({ y: 0, animated: true });
416
+ setTags({ values: [] })
411
417
  }, [currentTabSelected])
412
418
 
413
419
  useEffect(() => {
414
420
  setSelectedTabStatus(deliveryStatus)
415
421
  }, [])
416
-
422
+
417
423
  return (
418
424
  // <GestureRecognizer
419
425
  // onSwipeLeft={onSwipeLeft}
@@ -545,7 +551,7 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
545
551
  </ScrollView>
546
552
  </FiltersTab>
547
553
  <View style={{ flex: 1, minHeight: HEIGHT_SCREEN - 450 }}>
548
- {currentTabSelected !== 'logisticOrders' && (
554
+ {currentTabSelected !== 'logisticOrders' && !isAlsea && (
549
555
  <View
550
556
  style={{
551
557
  display: 'flex',
@@ -726,7 +732,10 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
726
732
  </View>
727
733
  {/* </GestureRecognizer> */}
728
734
 
729
- <NewOrderNotification isBusinessApp={isBusinessApp} />
735
+ {isBusinessApp && (
736
+ <NewOrderNotification isBusinessApp={isBusinessApp} />
737
+ )}
738
+
730
739
  {(openSearchModal || openSLASettingModal) && (
731
740
  <OModal open={openSearchModal || openSLASettingModal} entireModal customClose>
732
741
  <ModalContainer
@@ -749,22 +758,34 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
749
758
  {openSearchModal && (
750
759
  <SearchModalContent>
751
760
  <ModalTitle>{t('SEARCH_ORDERS', 'Search orders')}</ModalTitle>
752
- <OInput
753
- value={search.id}
754
- onChange={(value: any) => setSearch({ ...search, id: value })}
755
- style={styles.inputStyle}
756
- placeholder={t('ORDER_NUMBER', 'Order number')}
757
- autoCorrect={false}
758
- />
761
+ <InputContainer>
762
+ <OInput
763
+ value={search.id}
764
+ onChange={(value: any) => setSearch({ ...search, id: value })}
765
+ style={styles.inputStyle}
766
+ placeholder={t('ORDER_NUMBER', 'Order number')}
767
+ autoCorrect={false}
768
+ />
769
+ <AntDesignIcon
770
+ name='close'
771
+ size={20}
772
+ style={{ position: 'absolute', right: 12, top: 13 }}
773
+ onPress={() => setSearch({ ...search, id: '' })}
774
+ />
775
+ </InputContainer>
759
776
  <OrdersOptionDate
760
777
  {...props}
761
778
  search={search}
762
779
  onSearch={setSearch}
780
+ setOpenedSelect={setOpenedSelect}
781
+ openedSelect={openedSelect}
763
782
  />
764
783
  <OrdersOptionCity
765
784
  {...props}
766
785
  search={search}
767
786
  onSearch={setSearch}
787
+ setOpenedSelect={setOpenedSelect}
788
+ openedSelect={openedSelect}
768
789
  />
769
790
  {isBusinessApp && (
770
791
  <>
@@ -772,21 +793,29 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
772
793
  {...props}
773
794
  search={search}
774
795
  onSearch={setSearch}
796
+ setOpenedSelect={setOpenedSelect}
797
+ openedSelect={openedSelect}
775
798
  />
776
799
  <OrdersOptionDelivery
777
800
  {...props}
778
801
  search={search}
779
802
  onSearch={setSearch}
803
+ setOpenedSelect={setOpenedSelect}
804
+ openedSelect={openedSelect}
780
805
  />
781
806
  <OrdersOptionDriver
782
807
  {...props}
783
808
  search={search}
784
809
  onSearch={setSearch}
810
+ setOpenedSelect={setOpenedSelect}
811
+ openedSelect={openedSelect}
785
812
  />
786
813
  <OrdersOptionPaymethod
787
814
  {...props}
788
815
  search={search}
789
816
  onSearch={setSearch}
817
+ setOpenedSelect={setOpenedSelect}
818
+ openedSelect={openedSelect}
790
819
  />
791
820
  </>
792
821
  )}
@@ -796,13 +825,24 @@ const OrdersOptionUI = (props: OrdersOptionParams) => {
796
825
  imgRightSrc={null}
797
826
  style={{
798
827
  borderRadius: 7.6,
799
- marginBottom: 70,
828
+ marginBottom: 10,
800
829
  marginTop: 60,
801
830
  zIndex: 12
802
831
  }}
803
832
  onClick={applyFilters}
804
833
  />
805
-
834
+ <OButton
835
+ text={t('CLEAR_SEARCh', 'Clear search')}
836
+ imgRightSrc={null}
837
+ bgColor='#fff'
838
+ style={{
839
+ borderRadius: 7.6,
840
+ marginBottom: 0,
841
+ marginTop: 0,
842
+ zIndex: 12
843
+ }}
844
+ onClick={handleClearFilters}
845
+ />
806
846
  </SearchModalContent>
807
847
  )}
808
848
  {openSLASettingModal && (
@@ -931,6 +971,7 @@ export const OrdersOption = (props: OrdersOptionParams) => {
931
971
  const [, t] = useLanguage();
932
972
  const [configState] = useConfig()
933
973
  const theme = useTheme()
974
+ const [checkNotificationStatus, setCheckNotificationStatus] = useState({ open: false, checked: false })
934
975
  const ordersProps = {
935
976
  ...props,
936
977
  UIComponent: OrdersOptionUI,
@@ -1045,5 +1086,11 @@ export const OrdersOption = (props: OrdersOptionParams) => {
1045
1086
  ]
1046
1087
  };
1047
1088
 
1048
- return <OrderListGroups {...ordersProps} />;
1089
+ return (<>
1090
+ <OrderListGroups {...ordersProps} />
1091
+ {props?.checkNotification && (
1092
+ <NotificationSetting checkNotificationStatus={checkNotificationStatus}
1093
+ setCheckNotificationStatus={setCheckNotificationStatus} />
1094
+ )}
1095
+ </>);
1049
1096
  };
@@ -149,4 +149,8 @@ export const OverLine = styled.View`
149
149
  `
150
150
  export const Actions = styled.View`
151
151
 
152
- `
152
+ `
153
+
154
+ export const InputContainer = styled.View`
155
+ position: relative;
156
+ `
@@ -10,7 +10,9 @@ export const OrdersOptionBusinessUI = (props: any) => {
10
10
  const {
11
11
  search,
12
12
  onSearch,
13
- businessesList
13
+ businessesList,
14
+ setOpenedSelect,
15
+ openedSelect
14
16
  } = props
15
17
 
16
18
  const theme = useTheme();
@@ -25,6 +27,14 @@ export const OrdersOptionBusinessUI = (props: any) => {
25
27
  setOptionsList(businesses)
26
28
  }, [businessesList?.businesses])
27
29
 
30
+ const handleClear = () => {
31
+ onSearch({ ...search, option: '' })
32
+ }
33
+
34
+ const handleOpenSelect = () => {
35
+ setOpenedSelect('business')
36
+ }
37
+
28
38
  return (
29
39
  <Container isIos={Platform.OS === 'ios'}>
30
40
  <ODropDown
@@ -36,6 +46,10 @@ export const OrdersOptionBusinessUI = (props: any) => {
36
46
  textcolor={theme.colors.unselectText}
37
47
  placeholder={t('SELECT_BUSINESS', 'Select Business')}
38
48
  dropViewMaxHeight={200}
49
+ handleClear={handleClear}
50
+ handleOpenSelect={handleOpenSelect}
51
+ openedSelect={openedSelect}
52
+ selectType='business'
39
53
  />
40
54
  </Container>
41
55
  );
@@ -10,7 +10,9 @@ export const OrdersOptionCityUI = (props: any) => {
10
10
  const {
11
11
  search,
12
12
  onSearch,
13
- allListValues
13
+ allListValues,
14
+ setOpenedSelect,
15
+ openedSelect
14
16
  } = props
15
17
 
16
18
  const theme = useTheme();
@@ -27,6 +29,14 @@ export const OrdersOptionCityUI = (props: any) => {
27
29
  setOptionsList(cities)
28
30
  }, [allListValues?.countries])
29
31
 
32
+ const handleClear = () => {
33
+ onSearch({ ...search, city: '' })
34
+ }
35
+
36
+ const handleOpenSelect = () => {
37
+ setOpenedSelect('city')
38
+ }
39
+
30
40
  return (
31
41
  <Container isIos={Platform.OS === 'ios'}>
32
42
  <ODropDown
@@ -38,6 +48,10 @@ export const OrdersOptionCityUI = (props: any) => {
38
48
  textcolor={theme.colors.unselectText}
39
49
  placeholder={t('SELECT_CITY', 'Select City')}
40
50
  dropViewMaxHeight={200}
51
+ handleClear={handleClear}
52
+ handleOpenSelect={handleOpenSelect}
53
+ openedSelect={openedSelect}
54
+ selectType='city'
41
55
  />
42
56
  </Container>
43
57
  );
@@ -3,12 +3,16 @@ import { useLanguage } from 'ordering-components/native';
3
3
  import { useTheme } from 'styled-components/native';
4
4
  import { Container } from './styles';
5
5
  import ODropDownCalendar from '../shared/ODropDownCalendar';
6
- import { Platform } from 'react-native'
7
-
6
+ import { Button, Platform, Touchable, TouchableOpacity, View } from 'react-native'
7
+ import DoubleClick from 'react-native-double-tap'
8
+ import { OText } from '../shared';
9
+ import DoubleTap from 'react-native-double-tap';
8
10
  export const OrdersOptionDate = (props: any) => {
9
11
  const {
10
12
  search,
11
- onSearch
13
+ onSearch,
14
+ setOpenedSelect,
15
+ openedSelect
12
16
  } = props
13
17
 
14
18
  const theme = useTheme();
@@ -22,18 +26,23 @@ export const OrdersOptionDate = (props: any) => {
22
26
 
23
27
  const handleChangeOption = (option: any) => {
24
28
  if (option === 'calendar') {
25
- onSearch({...search, date: {...search.date, type: option}})
29
+ onSearch({ ...search, date: { ...search.date, type: option } })
26
30
  } else {
27
- onSearch({...search, date: {from: '', to: '', type: option}})
31
+ onSearch({ ...search, date: { from: '', to: '', type: option } })
28
32
  }
29
33
  }
30
34
 
31
35
  const handleChangeDate = (from: any, to: any) => {
32
- onSearch({...search, date: {...search.date, from: from, to: to}})
36
+ onSearch({ ...search, date: { ...search.date, from: from, to: to } })
37
+ }
38
+
39
+ const handleOpenSelect = () => {
40
+ setOpenedSelect('calendar')
33
41
  }
34
42
 
35
43
  return (
36
44
  <Container isIos={Platform.OS === 'ios'}>
45
+
37
46
  <ODropDownCalendar
38
47
  options={optionsList}
39
48
  defaultValue={search.date.type}
@@ -47,6 +56,10 @@ export const OrdersOptionDate = (props: any) => {
47
56
  rangeDate={search.date}
48
57
  handleChangeDate={handleChangeDate}
49
58
  isCalendarAlwaysVisible
59
+ handleClear={() => onSearch({ ...search, date: { from: '', to: '', type: '' } })}
60
+ handleOpenSelect={handleOpenSelect}
61
+ openedSelect={openedSelect}
62
+ selectType='calendar'
50
63
  />
51
64
  </Container>
52
65
  );
@@ -8,7 +8,9 @@ import { Platform } from 'react-native'
8
8
  export const OrdersOptionDelivery = (props: any) => {
9
9
  const {
10
10
  search,
11
- onSearch
11
+ onSearch,
12
+ setOpenedSelect,
13
+ openedSelect
12
14
  } = props
13
15
 
14
16
  const theme = useTheme();
@@ -18,6 +20,14 @@ export const OrdersOptionDelivery = (props: any) => {
18
20
  { value: '2', content: t('PICKUP', 'Pickup') }
19
21
  ]
20
22
 
23
+ const handleClear = () => {
24
+ onSearch({ ...search, delivery_type: '' })
25
+ }
26
+
27
+ const handleOpenSelect = () => {
28
+ setOpenedSelect('delivery_type')
29
+ }
30
+
21
31
  return (
22
32
  <Container isIos={Platform.OS === 'ios'}>
23
33
  <ODropDown
@@ -29,6 +39,10 @@ export const OrdersOptionDelivery = (props: any) => {
29
39
  textcolor={theme.colors.unselectText}
30
40
  placeholder={t('SELECT_DELIVERY_TYPE', 'Select Delivery type')}
31
41
  dropViewMaxHeight={200}
42
+ handleClear={handleClear}
43
+ handleOpenSelect={handleOpenSelect}
44
+ openedSelect={openedSelect}
45
+ selectType='delivery_type'
32
46
  />
33
47
  </Container>
34
48
  );
@@ -9,7 +9,9 @@ export const OrdersOptionDriverUI = (props: any) => {
9
9
  const {
10
10
  search,
11
11
  onSearch,
12
- driverList
12
+ driverList,
13
+ setOpenedSelect,
14
+ openedSelect
13
15
  } = props
14
16
 
15
17
  const theme = useTheme();
@@ -24,6 +26,14 @@ export const OrdersOptionDriverUI = (props: any) => {
24
26
  setOptionsList(drivers)
25
27
  }, [driverList?.drivers])
26
28
 
29
+ const handleClear = () => {
30
+ onSearch({ ...search, driver: '' })
31
+ }
32
+
33
+ const handleOpenSelect = () => {
34
+ setOpenedSelect('driver')
35
+ }
36
+
27
37
  return (
28
38
  <Container isIos={Platform.OS === 'ios'}>
29
39
  <ODropDown
@@ -35,6 +45,10 @@ export const OrdersOptionDriverUI = (props: any) => {
35
45
  textcolor={theme.colors.unselectText}
36
46
  placeholder={t('SELECT_DRIVER', 'Select Driver')}
37
47
  dropViewMaxHeight={165}
48
+ handleClear={handleClear}
49
+ handleOpenSelect={handleOpenSelect}
50
+ openedSelect={openedSelect}
51
+ selectType='driver'
38
52
  />
39
53
  </Container>
40
54
  );
@@ -9,7 +9,9 @@ export const OrdersOptionPaymethodUI = (props: any) => {
9
9
  const {
10
10
  search,
11
11
  onSearch,
12
- paymethodList
12
+ paymethodList,
13
+ setOpenedSelect,
14
+ openedSelect
13
15
  } = props
14
16
 
15
17
  const theme = useTheme();
@@ -24,6 +26,14 @@ export const OrdersOptionPaymethodUI = (props: any) => {
24
26
  setOptionsList(paymethods)
25
27
  }, [paymethodList?.paymethods])
26
28
 
29
+ const handleClear = () => {
30
+ onSearch({ ...search, paymethod: '' })
31
+ }
32
+
33
+ const handleOpenSelect = () => {
34
+ setOpenedSelect('paymethod')
35
+ }
36
+
27
37
  return (
28
38
  <Container isIos={Platform.OS === 'ios'}>
29
39
  <ODropDown
@@ -35,6 +45,10 @@ export const OrdersOptionPaymethodUI = (props: any) => {
35
45
  textcolor={theme.colors.unselectText}
36
46
  placeholder={t('SELECT_PAYMETHOD', 'Select Paymethod')}
37
47
  dropViewMaxHeight={200}
48
+ handleClear={handleClear}
49
+ handleOpenSelect={handleOpenSelect}
50
+ openedSelect={openedSelect}
51
+ selectType='paymethod'
38
52
  />
39
53
  </Container>
40
54
  );
@@ -11,7 +11,9 @@ export const OrdersOptionStatus = (props: any) => {
11
11
  tabs,
12
12
  orderStatus,
13
13
  search,
14
- onSearch
14
+ onSearch,
15
+ setOpenedSelect,
16
+ openedSelect
15
17
  } = props
16
18
 
17
19
  const theme = useTheme();
@@ -29,6 +31,10 @@ export const OrdersOptionStatus = (props: any) => {
29
31
  setOptionsList(_optionList)
30
32
  }, [currentTabSelected, tabs, orderStatus])
31
33
 
34
+ const handleOpenSelect = () => {
35
+ setOpenedSelect('state')
36
+ }
37
+
32
38
  return (
33
39
  <Container isIos={Platform.OS === 'ios'}>
34
40
  <ODropDown
@@ -40,6 +46,9 @@ export const OrdersOptionStatus = (props: any) => {
40
46
  textcolor={theme.colors.unselectText}
41
47
  placeholder={t('SELECT_STATUS', 'Select Status')}
42
48
  dropViewMaxHeight={200}
49
+ handleOpenSelect={handleOpenSelect}
50
+ openedSelect={openedSelect}
51
+ selectType='state'
43
52
  />
44
53
  </Container>
45
54
  );
@@ -230,6 +230,7 @@ export const PreviousMessages = (props: PreviousMessagesParams) => {
230
230
  fontWeight: '600',
231
231
  fontSize: 16,
232
232
  color: theme.colors.textGray,
233
+ width: '85%'
233
234
  },
234
235
  badge: {
235
236
  marginBottom: 6,
@@ -31,8 +31,8 @@ export const PreviousOrders = (props: any) => {
31
31
  const theme = useTheme();
32
32
  const [, setCurrentTime] = useState()
33
33
  const [allowColumns, setAllowColumns] = useState({
34
- timer: true,
35
- slaBar: true,
34
+ timer: configState?.configs?.order_deadlines_enabled?.value === '1',
35
+ slaBar: configState?.configs?.order_deadlines_enabled?.value === '1',
36
36
  })
37
37
 
38
38
  const [orientationState] = useDeviceOrientation();
@@ -104,8 +104,8 @@ export const PreviousOrders = (props: any) => {
104
104
  const offset = 300
105
105
  const cdtToutc = moment(order?.delivery_datetime).add(offset, 'minutes').format('YYYY-MM-DD HH:mm:ss')
106
106
  const _delivery = order?.delivery_datetime_utc
107
- ? parseDate(order?.delivery_datetime_utc)
108
- : parseDate(cdtToutc)
107
+ ? parseDate(order?.delivery_datetime_utc, { outputFormat: 'YYYY-MM-DD hh:mm A' })
108
+ : parseDate(cdtToutc, { outputFormat: 'YYYY-MM-DD hh:mm A' })
109
109
  const _eta = order?.eta_time
110
110
  const diffTimeAsSeconds = moment(_delivery, 'YYYY-MM-DD hh:mm A').add(_eta, 'minutes').diff(moment().utc(), 'seconds')
111
111
  return Math.ceil(diffTimeAsSeconds / 60)
@@ -178,9 +178,9 @@ export const PreviousOrders = (props: any) => {
178
178
  activeOpacity={1}
179
179
  >
180
180
  <Card key={order.id}>
181
- {allowColumns?.slaBar && (
182
- <Timestatus style={{ backgroundColor: getStatusClassName(getDelayMinutes(order)) === 'in_time' ? '#00D27A' : getStatusClassName(getDelayMinutes(order)) === 'at_risk' ? '#FFC700' : getStatusClassName(getDelayMinutes(order)) === 'delayed' ? '#E63757' : '' }} />
183
- )}
181
+ {allowColumns?.slaBar && (
182
+ <Timestatus style={{ backgroundColor: getStatusClassName(getDelayMinutes(order)) === 'in_time' ? '#00D27A' : getStatusClassName(getDelayMinutes(order)) === 'at_risk' ? '#FFC700' : getStatusClassName(getDelayMinutes(order)) === 'delayed' ? '#E63757' : '' }} />
183
+ )}
184
184
  {
185
185
  order.business?.logo && (
186
186
  <Logo style={styles.logo}>
@@ -28,6 +28,7 @@ export const ProductItemAccordion = (props: ProductItemAccordionParams) => {
28
28
  getProductMax,
29
29
  onDeleteProduct,
30
30
  onEditProduct,
31
+ currency
31
32
  } = props;
32
33
 
33
34
  const [, t] = useLanguage();
@@ -147,13 +148,13 @@ export const ProductItemAccordion = (props: ProductItemAccordionParams) => {
147
148
  }}>
148
149
  <View style={{ flexDirection: 'row' }}>
149
150
  <OText size={12} color={theme.colors.textGray}>
150
- {parsePrice(getProductPrice(product))}
151
+ {parsePrice(getProductPrice(product), { currency })}
151
152
  </OText>
152
153
 
153
154
  {(
154
155
  productInfo?.()?.ingredients?.length > 0 ||
155
156
  productInfo?.()?.options?.length > 0 ||
156
- product.comment
157
+ !!product.comment
157
158
  ) && !isClickableEvent && (
158
159
  <MaterialCommunityIcon name="chevron-down" size={12} />
159
160
  )}
@@ -268,7 +269,7 @@ export const ProductItemAccordion = (props: ProductItemAccordionParams) => {
268
269
  suboption.position,
269
270
  )
270
271
  : '',
271
- price: parsePrice(suboption.price),
272
+ price: parsePrice(suboption.price, { currency }),
272
273
  })}
273
274
  </OText>
274
275
  </ProductSubOption>
@@ -278,7 +279,7 @@ export const ProductItemAccordion = (props: ProductItemAccordionParams) => {
278
279
  </ProductOptionsList>
279
280
  )}
280
281
 
281
- {product.comment && (
282
+ {!!product.comment && (
282
283
  <ProductComment>
283
284
  <OText
284
285
  size={12}
@@ -270,7 +270,7 @@ const ReviewCustomerUI = (props: ReviewCustomerParams) => {
270
270
  }}
271
271
  style={{ height: 35, paddingLeft: 5, paddingRight: 5, marginHorizontal: 3, marginVertical: 10 }}
272
272
  imgRightSrc={isSelectedComment(commentItem.key) ? theme.images.general.close : null}
273
- imgRightStyle={{ tintColor: theme.colors.white, right: 5, margin: 5 }}
273
+ imgRightStyle={{ right: 5, margin: 5 }}
274
274
  onClick={() => handleChangeComment(commentItem) }
275
275
  />
276
276
  ))}
@@ -0,0 +1,53 @@
1
+ import React from 'react'
2
+ import { Dimensions, View } from 'react-native'
3
+ import { OButton, OIcon, OText } from '../shared'
4
+ import { useLanguage, useSession } from 'ordering-components/native'
5
+ import { useTheme } from 'styled-components/native'
6
+
7
+ export const ScheduleBlocked = (props : any) => {
8
+ const { nextSchedule } = props
9
+ const [, t] = useLanguage()
10
+ const [, {logout}] = useSession()
11
+ const theme = useTheme()
12
+ const deviceWidth = Dimensions.get('screen').width
13
+
14
+ const daysOfWeek = [
15
+ t('SUNDAY', 'Sunday'),
16
+ t('MONDAY', 'Monday'),
17
+ t('TUESDAY', 'Tuesday'),
18
+ t('WEDNESDAY', 'Wednesday'),
19
+ t('THURSDAY', 'Thurday'),
20
+ t('FRIDAY', 'Friday'),
21
+ t('SATURDAY', 'Saturday'),
22
+ ]
23
+
24
+ const scheduleFormatted = ({ hour, minute }: any) => {
25
+ const checkTime = (val: number) => val < 10 ? `0${val}` : val
26
+ return `${checkTime(hour)}:${checkTime(minute)}`
27
+ }
28
+
29
+ const goBack = () => {
30
+ logout()
31
+ }
32
+
33
+ return (
34
+ <View style={{ alignItems: 'center', padding: 40 }}>
35
+ <OText size={20}>{t('YOU_CANT_LOGIN', 'You can\'t login')}</OText>
36
+ <OIcon
37
+ src={theme.images?.general?.deliveryWaiting}
38
+ width={(deviceWidth - 80) * 0.9}
39
+ height={(deviceWidth - 80) * 0.8}
40
+ />
41
+ <OText>{t('OUTSIDE_ESTABLISHED_SCHEDULE', 'You are outside the established schedule')}</OText>
42
+ <View style={{ flexDirection: 'row', marginBottom: 20 }}>
43
+ <OText color={theme.colors.primary}>{t('NEXT_TIME', 'Next time')}: </OText>
44
+ <OText>{daysOfWeek[nextSchedule?.day]} {scheduleFormatted(nextSchedule?.schedule?.open)}</OText>
45
+ </View>
46
+ <OButton
47
+ text={t('GO_BACK', 'Go back')}
48
+ textStyle={{ color: theme.colors.white }}
49
+ onClick={goBack}
50
+ />
51
+ </View>
52
+ )
53
+ }
@@ -36,6 +36,7 @@ export const UserFormDetailsUI = (props: any) => {
36
36
  handleCancelEdit,
37
37
  toggleIsEdit,
38
38
  isCheckout,
39
+ isAlsea
39
40
  } = props;
40
41
 
41
42
  const theme = useTheme();
@@ -265,7 +266,9 @@ export const UserFormDetailsUI = (props: any) => {
265
266
  }).map(
266
267
  (field: any) =>
267
268
  showField &&
268
- showField(field.code) && (
269
+ showField(field.code) &&
270
+ !isAlsea
271
+ && (
269
272
  <React.Fragment key={field.id}>
270
273
  <OText style={styles.label}>
271
274
  {t(field?.code.toUpperCase(), field?.name)}
@@ -442,7 +445,7 @@ export const UserFormDetailsUI = (props: any) => {
442
445
  </OText>
443
446
  )}
444
447
 
445
- {!!showInputPhoneNumber && (
448
+ {!!showInputPhoneNumber && !isAlsea && (
446
449
  <WrapperPhone>
447
450
  <PhoneInputNumber
448
451
  data={phoneInputData}