ordering-ui-react-native 0.22.75 → 0.22.76-release

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/package.json +5 -7
  2. package/src/components/BusinessesListing/index.tsx +1 -1
  3. package/src/components/Checkout/index.tsx +40 -39
  4. package/src/components/VerifyPhone/styles.tsx +1 -2
  5. package/src/context/OfflineActions/index.tsx +236 -0
  6. package/src/providers/AlertProvider.tsx +3 -1
  7. package/themes/business/src/components/AcceptOrRejectOrder/index.tsx +5 -3
  8. package/themes/business/src/components/AcceptOrRejectOrder/styles.tsx +1 -0
  9. package/themes/business/src/components/BusinessController/index.tsx +8 -3
  10. package/themes/business/src/components/BusinessProductList/index.tsx +3 -2
  11. package/themes/business/src/components/Chat/index.tsx +15 -3
  12. package/themes/business/src/components/DriverMap/index.tsx +44 -33
  13. package/themes/business/src/components/FloatingButton/index.tsx +3 -2
  14. package/themes/business/src/components/LanguageSelector/index.tsx +1 -1
  15. package/themes/business/src/components/LoginForm/index.tsx +123 -98
  16. package/themes/business/src/components/LogoutButton/index.tsx +13 -4
  17. package/themes/business/src/components/MapView/RenderMarker.tsx +146 -0
  18. package/themes/business/src/components/MapView/index.tsx +68 -142
  19. package/themes/business/src/components/NewOrderNotification/index.tsx +38 -54
  20. package/themes/business/src/components/OrderDetails/Business.tsx +56 -20
  21. package/themes/business/src/components/OrderDetails/Delivery.tsx +111 -42
  22. package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +146 -36
  23. package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +51 -28
  24. package/themes/business/src/components/OrderDetails/styles.tsx +39 -3
  25. package/themes/business/src/components/OrderDetails/usePrinterCommands.tsx +17 -16
  26. package/themes/business/src/components/OrderDetailsLogistic/index.tsx +3 -2
  27. package/themes/business/src/components/OrderSummary/index.tsx +271 -176
  28. package/themes/business/src/components/OrdersListManager/index.tsx +13 -1
  29. package/themes/business/src/components/OrdersOption/index.tsx +207 -144
  30. package/themes/business/src/components/OrdersOption/styles.tsx +14 -0
  31. package/themes/business/src/components/PreviousMessages/index.tsx +26 -3
  32. package/themes/business/src/components/PreviousOrders/OrderItem.tsx +20 -8
  33. package/themes/business/src/components/PreviousOrders/index.tsx +74 -66
  34. package/themes/business/src/components/PreviousOrders/styles.tsx +2 -1
  35. package/themes/business/src/components/PrinterEdition/MessageAlert.tsx +33 -0
  36. package/themes/business/src/components/PrinterEdition/index.tsx +143 -75
  37. package/themes/business/src/components/PrinterEdition/printerList.tsx +23 -0
  38. package/themes/business/src/components/PrinterSettings/index.tsx +1 -1
  39. package/themes/business/src/components/ProductItemAccordion/index.tsx +15 -16
  40. package/themes/business/src/components/ReviewCustomer/index.tsx +2 -0
  41. package/themes/business/src/components/StoresList/index.tsx +2 -2
  42. package/themes/business/src/components/UserProfileForm/index.tsx +48 -10
  43. package/themes/business/src/components/UserProfileForm/styles.tsx +7 -0
  44. package/themes/business/src/components/WebsocketStatus/index.tsx +2 -2
  45. package/themes/business/src/config/currency.tsx +1010 -0
  46. package/themes/business/src/hooks/useLocation.tsx +16 -12
  47. package/themes/business/src/layouts/SafeAreaContainer.tsx +35 -19
  48. package/themes/business/src/types/index.tsx +26 -4
  49. package/themes/business/src/utils/index.tsx +26 -2
  50. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  51. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  52. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  53. package/themes/kiosk/src/components/Checkout/index.tsx +9 -5
  54. package/themes/kiosk/src/components/CustomerName/index.tsx +1 -1
  55. package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
  56. package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
  57. package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
  58. package/themes/kiosk/src/components/PaymentOptions/index.tsx +121 -57
  59. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  60. package/themes/original/index.tsx +223 -219
  61. package/themes/original/src/components/AddressForm/index.tsx +56 -17
  62. package/themes/original/src/components/AppleLogin/index.tsx +3 -4
  63. package/themes/original/src/components/BusinessController/index.tsx +4 -2
  64. package/themes/original/src/components/BusinessItemAccordion/index.tsx +8 -3
  65. package/themes/original/src/components/BusinessListingSearch/BusinessSearchFooter.tsx +102 -90
  66. package/themes/original/src/components/BusinessListingSearch/BusinessSearchHeader.tsx +7 -3
  67. package/themes/original/src/components/BusinessListingSearch/index.tsx +8 -13
  68. package/themes/original/src/components/BusinessPreorder/index.tsx +30 -17
  69. package/themes/original/src/components/BusinessProductsList/SubcategoriesComponent/index.tsx +72 -69
  70. package/themes/original/src/components/BusinessProductsList/index.tsx +4 -5
  71. package/themes/original/src/components/BusinessProductsList/styles.tsx +0 -3
  72. package/themes/original/src/components/BusinessProductsListing/index.tsx +5 -4
  73. package/themes/original/src/components/BusinessesListing/Layout/Appointment/styles.tsx +1 -0
  74. package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +2 -1
  75. package/themes/original/src/components/Cart/index.tsx +43 -12
  76. package/themes/original/src/components/Checkout/index.tsx +126 -98
  77. package/themes/original/src/components/FloatingButton/index.tsx +1 -1
  78. package/themes/original/src/components/GPSButton/index.tsx +2 -1
  79. package/themes/original/src/components/GoogleMap/index.tsx +3 -2
  80. package/themes/original/src/components/Help/functions.tsx +76 -0
  81. package/themes/original/src/components/Help/index.tsx +74 -29
  82. package/themes/original/src/components/Help/styles.tsx +4 -1
  83. package/themes/original/src/components/HelpOptions/index.tsx +53 -0
  84. package/themes/original/src/components/HighestRatedBusinesses/index.tsx +1 -1
  85. package/themes/original/src/components/Home/index.tsx +36 -11
  86. package/themes/original/src/components/LastOrder/index.tsx +1 -1
  87. package/themes/original/src/components/LoginForm/index.tsx +11 -5
  88. package/themes/original/src/components/MessageListing/index.tsx +1 -1
  89. package/themes/original/src/components/Messages/index.tsx +562 -555
  90. package/themes/original/src/components/MomentOption/TimeListItem.tsx +56 -0
  91. package/themes/original/src/components/MomentOption/index.tsx +141 -61
  92. package/themes/original/src/components/MomentOption/styles.tsx +1 -1
  93. package/themes/original/src/components/MomentSelector/index.tsx +5 -2
  94. package/themes/original/src/components/MultiCheckout/index.tsx +78 -33
  95. package/themes/original/src/components/MultiOrdersDetails/SingleOrderCard.tsx +2 -2
  96. package/themes/original/src/components/MultiOrdersDetails/index.tsx +2 -2
  97. package/themes/original/src/components/NavBar/index.tsx +6 -2
  98. package/themes/original/src/components/NotFoundSource/index.tsx +40 -39
  99. package/themes/original/src/components/NotFoundSource/styles.tsx +18 -9
  100. package/themes/original/src/components/OrderDetails/OrderEta.tsx +4 -3
  101. package/themes/original/src/components/OrderDetails/OrderHistory.tsx +11 -4
  102. package/themes/original/src/components/OrderDetails/index.tsx +44 -20
  103. package/themes/original/src/components/OrderDetails/styles.tsx +0 -1
  104. package/themes/original/src/components/OrderProgress/index.tsx +5 -4
  105. package/themes/original/src/components/OrderSummary/index.tsx +32 -11
  106. package/themes/original/src/components/OrderTypeSelector/index.tsx +120 -120
  107. package/themes/original/src/components/OrdersOption/index.tsx +325 -325
  108. package/themes/original/src/components/PaymentOptionWallet/index.tsx +1 -0
  109. package/themes/original/src/components/PaymentOptions/index.tsx +471 -459
  110. package/themes/original/src/components/PhoneInputNumber/index.tsx +92 -7
  111. package/themes/original/src/components/ProductItemAccordion/index.tsx +28 -37
  112. package/themes/original/src/components/ProductOptionSubOption/index.tsx +15 -14
  113. package/themes/original/src/components/ServiceForm/index.tsx +2 -2
  114. package/themes/original/src/components/SignupForm/index.tsx +40 -24
  115. package/themes/original/src/components/SingleOrderCard/index.tsx +8 -5
  116. package/themes/original/src/components/SingleProductCard/index.tsx +2 -1
  117. package/themes/original/src/components/SingleProductCard/styles.tsx +0 -3
  118. package/themes/original/src/components/StripeCardsList/index.tsx +7 -1
  119. package/themes/original/src/components/StripeElementsForm/index.tsx +2 -2
  120. package/themes/original/src/components/TaxInformation/index.tsx +3 -2
  121. package/themes/original/src/components/UpsellingProducts/UpsellingContent.tsx +7 -2
  122. package/themes/original/src/components/UserDetails/index.tsx +17 -16
  123. package/themes/original/src/components/UserFormDetails/index.tsx +109 -67
  124. package/themes/original/src/components/UserVerification/index.tsx +18 -5
  125. package/themes/original/src/components/VerifyPhone/index.tsx +1 -1
  126. package/themes/original/src/components/shared/OInput.tsx +97 -97
  127. package/themes/original/src/components/shared/OModal.tsx +7 -2
  128. package/themes/original/src/providers/AlertProvider.tsx +1 -1
  129. package/themes/original/src/types/index.tsx +700 -695
  130. package/themes/original/src/utils/index.tsx +50 -34
  131. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
  132. package/themes/original/src/components/HelpAccountAndPayment/index.tsx +0 -62
  133. package/themes/original/src/components/HelpAccountAndPayment/styles.tsx +0 -12
  134. package/themes/original/src/components/HelpGuide/index.tsx +0 -68
  135. package/themes/original/src/components/HelpGuide/styles.tsx +0 -12
  136. package/themes/original/src/components/HelpOrder/index.tsx +0 -71
  137. package/themes/original/src/components/HelpOrder/styles.tsx +0 -13
@@ -1,3 +1,5 @@
1
+
2
+
1
3
  import React, { useState, useEffect, useRef } from 'react'
2
4
  import {
3
5
  useLanguage,
@@ -149,10 +149,10 @@ const StoresListUI = (props: BusinessesListingParams) => {
149
149
  width={12}
150
150
  height={12}
151
151
  color={theme.colors.skyBlue}
152
- style={{ marginRight: 5, marginTop: 3 }}
152
+ style={{ marginRight: 5 }}
153
153
  />
154
154
  <OText size={12}>
155
- {t('MORE_SETTINGS_GO_TO', 'For more settings go to')}{' '}
155
+ {t('MORE_SETTINGS_GO_TO', 'For more settings go to ')}
156
156
  </OText>
157
157
  <TouchableOpacity onPress={() => { Linking.openURL(t('LINK_MORE_SETTINGS_GO_TO', 'https://app.ordering.co')) }}>
158
158
  <OText size={12} color={theme.colors.skyBlue}>
@@ -1,5 +1,6 @@
1
1
  import React, { useEffect, useState } from 'react';
2
2
  import { View, StyleSheet, ScrollView, ActivityIndicator, Pressable } from 'react-native';
3
+ import { _retrieveStoreData, _clearStoreData } from '../../providers/StoreUtil';
3
4
  import { useForm } from 'react-hook-form';
4
5
  import { launchImageLibrary } from 'react-native-image-picker';
5
6
  import { Placeholder, PlaceholderLine, Fade } from 'rn-placeholder';
@@ -20,6 +21,7 @@ import {
20
21
  UserData,
21
22
  EditButton,
22
23
  EnabledStatusDriver,
24
+ RemoveAccount
23
25
  } from './styles';
24
26
  import { LogoutButton } from '../LogoutButton';
25
27
  import { LanguageSelector } from '../LanguageSelector';
@@ -36,6 +38,8 @@ import {
36
38
  OInput,
37
39
  OModal,
38
40
  } from '../../components/shared';
41
+ import { OAlert } from '../../../../../src/components/shared'
42
+
39
43
  import { sortInputFields, getTraduction } from '../../utils';
40
44
  import { ProfileParams } from '../../types';
41
45
  import { NotFoundSource } from '../NotFoundSource';
@@ -49,6 +53,7 @@ const ProfileUI = (props: ProfileParams) => {
49
53
  toggleIsEdit,
50
54
  cleanFormState,
51
55
  handleToggleAvalaibleStatusDriver,
56
+ handleRemoveAccount,
52
57
  isAlsea,
53
58
  isShowDriverStatus,
54
59
  navigation
@@ -62,6 +67,7 @@ const ProfileUI = (props: ProfileParams) => {
62
67
  const [{ loading }, { loadOriginalValidationFields }] = useValidationFields()
63
68
  const { errors } = useForm();
64
69
  const theme = useTheme();
70
+ const [confirm, setConfirm] = useState<any>({ open: false, content: null, handleOnAccept: null, id: null, title: null })
65
71
 
66
72
  const [phoneInputData, setPhoneInputData] = useState<any>({
67
73
  error: '',
@@ -76,13 +82,8 @@ const ProfileUI = (props: ProfileParams) => {
76
82
  const [phoneToShow, setPhoneToShow] = useState('');
77
83
  const [openModal, setOpenModal] = useState(false)
78
84
  const allowDriverUpdateData = user?.level !== 4 || configs?.allow_driver_update_data?.value === "1"
79
- useEffect(() => {
80
- if (phoneInputData.phone.cellphone) {
81
- const codeNumberPhone = phoneInputData.phone.country_phone_code
82
- const numberPhone = phoneInputData.phone.cellphone
83
- setPhoneToShow(`(${codeNumberPhone}) ${numberPhone}`);
84
- }
85
- }, [phoneInputData.phone.cellphone]);
85
+ const allowDeleteDriverAccount = user?.level !== 4 || configs?.allow_delete_driver_account?.value === "1"
86
+ const isAdmin = user?.level === 0
86
87
 
87
88
  const setUserCellPhone = (isEdit = false) => {
88
89
  if (userPhoneNumber && !userPhoneNumber.includes('null') && !isEdit) {
@@ -148,6 +149,28 @@ const ProfileUI = (props: ProfileParams) => {
148
149
  });
149
150
  };
150
151
 
152
+ const onRemoveAccount = async () => {
153
+ setConfirm({
154
+ open: true,
155
+ content: [t('QUESTION_REMOVE_ACCOUNT', 'Are you sure that you want to remove your account?')],
156
+ title: t('ACCOUNT_ALERT', 'Account alert'),
157
+ handleOnAccept: () => {
158
+ setConfirm({ ...confirm, open: false })
159
+ handleRemoveAccount && handleRemoveAccount(user?.id)
160
+ _clearStoreData({ excludedKeys: ['isTutorial', 'language'] });
161
+ props?.setRootState && props?.setRootState({ isAuth: false, token: null })
162
+ }
163
+ })
164
+ }
165
+
166
+ useEffect(() => {
167
+ if (phoneInputData.phone.cellphone) {
168
+ const codeNumberPhone = phoneInputData.phone.country_phone_code
169
+ const numberPhone = phoneInputData.phone.cellphone
170
+ setPhoneToShow(`(${codeNumberPhone}) ${numberPhone}`);
171
+ }
172
+ }, [phoneInputData.phone.cellphone]);
173
+
151
174
  useEffect(() => {
152
175
  const isLoadingDriver = userState?.loadingDriver ?? true;
153
176
 
@@ -155,8 +178,8 @@ const ProfileUI = (props: ProfileParams) => {
155
178
  if (userState?.result?.error) {
156
179
  const messageError =
157
180
  userState.result.error || userState.result.error[0];
158
- showToast(ToastType.Error, getTraduction(messageError, t));
159
- } else {
181
+ showToast(ToastType.Error, typeof messageError === 'string' ? getTraduction(messageError, t) : t('CANNOT_UPDATE_AVAILABLE_STATE', 'Cannot update available state'));
182
+ } else {
160
183
  showToast(
161
184
  ToastType.Success,
162
185
  t('AVAILABLE_STATE_IS_UPDATED', 'Available state is updated'),
@@ -486,10 +509,11 @@ const ProfileUI = (props: ProfileParams) => {
486
509
  handleCancelEdit={handleCancelEdit}
487
510
  toggleIsEdit={toggleIsEdit}
488
511
  isAlsea={isAlsea}
512
+ allowDriverUpdateData={allowDriverUpdateData}
489
513
  />
490
514
  </View>
491
515
  )}
492
- {!validationFields.loading && !isEdit && allowDriverUpdateData && (
516
+ {!validationFields.loading && !isEdit && (
493
517
  <EditButton>
494
518
  <OButton
495
519
  text={t('EDIT', 'Edit')}
@@ -544,6 +568,12 @@ const ProfileUI = (props: ProfileParams) => {
544
568
 
545
569
  <LogoutButton />
546
570
  </Actions>
571
+ {allowDeleteDriverAccount && (
572
+ <RemoveAccount disabled={isAdmin} onPress={() => onRemoveAccount()} activeOpacity={0.7}>
573
+ <AntDesignIcon size={16} name='close' color={theme.colors.textNormal} style={{ marginEnd: 14 }} />
574
+ <OText size={14} lineHeight={24} weight={'400'} style={{ opacity: isAdmin ? 0.5 : 1 }} color={theme.colors.danger500}>{t('REMOVE_ACCOUNT', 'Remove account')}</OText>
575
+ </RemoveAccount>
576
+ )}
547
577
  <OModal
548
578
  open={openModal}
549
579
  onClose={() => setOpenModal(false)}
@@ -554,6 +584,14 @@ const ProfileUI = (props: ProfileParams) => {
554
584
  <DriverSchedule schedule={user?.schedule} />
555
585
  )}
556
586
  </OModal>
587
+ <OAlert
588
+ open={confirm.open}
589
+ title={confirm.title}
590
+ content={confirm.content}
591
+ onAccept={confirm.handleOnAccept}
592
+ onCancel={() => setConfirm({ ...confirm, open: false, title: null })}
593
+ onClose={() => setConfirm({ ...confirm, open: false, title: null })}
594
+ />
557
595
  </ScrollView>
558
596
  )}
559
597
  </>
@@ -34,3 +34,10 @@ export const Actions = styled.View`
34
34
  justify-content: space-between;
35
35
  align-items: flex-start;
36
36
  `;
37
+
38
+ export const RemoveAccount = styled.TouchableOpacity`
39
+ flex-direction: row;
40
+ justify-content: flex-start;
41
+ align-items: center;
42
+ margin-bottom: 24px;
43
+ `
@@ -1,6 +1,6 @@
1
1
  import React, { useState } from 'react'
2
2
  import { useLanguage, useUtils, WebsocketStatus as WebsocketStatusController } from 'ordering-components/native'
3
- import { TouchableOpacity, View, StyleSheet } from 'react-native'
3
+ import { TouchableOpacity, View, StyleSheet, Platform } from 'react-native'
4
4
  import MaterialIcon from 'react-native-vector-icons/MaterialCommunityIcons';
5
5
  import { useTheme } from 'styled-components/native'
6
6
  import RNRestart from 'react-native-restart'
@@ -37,7 +37,7 @@ const SocketStatusUI = (props: any) => {
37
37
  paddingLeft: 0,
38
38
  paddingRight: 0,
39
39
  marginBottom: 30,
40
- marginTop: 30
40
+ marginTop: Platform.OS === 'ios' ? 60 : 30
41
41
  },
42
42
  })
43
43