ordering-ui-react-native 0.21.5 → 0.21.6-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 (239) 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 +4 -4
  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/Business.tsx +47 -1
  28. package/themes/business/src/components/OrderDetails/Delivery.tsx +21 -11
  29. package/themes/business/src/components/OrderDetails/OrderContentComponent.tsx +56 -50
  30. package/themes/business/src/components/OrderDetails/OrderHeaderComponent.tsx +54 -23
  31. package/themes/business/src/components/OrderDetails/usePrinterCommands.tsx +196 -0
  32. package/themes/business/src/components/OrderDetailsLogistic/index.tsx +6 -1
  33. package/themes/business/src/components/OrderSummary/index.tsx +244 -82
  34. package/themes/business/src/components/OrdersListManager/index.tsx +7 -2
  35. package/themes/business/src/components/OrdersListManager/utils.tsx +1 -1
  36. package/themes/business/src/components/OrdersOption/index.tsx +125 -48
  37. package/themes/business/src/components/PreviousMessages/FooterMessageComponent.tsx +103 -0
  38. package/themes/business/src/components/PreviousMessages/index.tsx +97 -55
  39. package/themes/business/src/components/PreviousOrders/OrderItem.tsx +27 -35
  40. package/themes/business/src/components/PreviousOrders/OrderList.tsx +93 -0
  41. package/themes/business/src/components/PreviousOrders/OrdersGroupedItem.tsx +1 -1
  42. package/themes/business/src/components/PreviousOrders/index.tsx +192 -220
  43. package/themes/business/src/components/PreviousOrders/styles.tsx +10 -0
  44. package/themes/business/src/components/PrinterSettings/index.tsx +279 -0
  45. package/themes/business/src/components/PrinterSettings/styles.tsx +17 -0
  46. package/themes/business/src/components/ProductItemAccordion/index.tsx +2 -2
  47. package/themes/business/src/components/ReviewCustomer/index.tsx +2 -0
  48. package/themes/business/src/components/SearchBar/index.tsx +2 -1
  49. package/themes/business/src/components/Sessions/index.tsx +187 -0
  50. package/themes/business/src/components/Sessions/styles.tsx +20 -0
  51. package/themes/business/src/components/StoresList/index.tsx +5 -3
  52. package/themes/business/src/components/UserProfileForm/index.tsx +98 -44
  53. package/themes/business/src/components/WebsocketStatus/index.tsx +171 -0
  54. package/themes/business/src/components/WebsocketStatus/styles.tsx +28 -0
  55. package/themes/business/src/components/shared/OInput.tsx +2 -0
  56. package/themes/business/src/hooks/useLocation.tsx +5 -4
  57. package/themes/business/src/types/index.tsx +21 -1
  58. package/themes/doordash/src/components/BusinessesListing/index.tsx +1 -1
  59. package/themes/doordash/src/components/LoginForm/index.tsx +1 -2
  60. package/themes/instacart/src/components/BusinessesListing/index.tsx +1 -1
  61. package/themes/kiosk/src/components/Checkout/index.tsx +6 -0
  62. package/themes/kiosk/src/components/LoginForm/index.tsx +124 -96
  63. package/themes/kiosk/src/components/NavBar/index.tsx +14 -14
  64. package/themes/kiosk/src/components/OptionCard/index.tsx +1 -1
  65. package/themes/kiosk/src/components/OrderTypeCardSelector/index.tsx +8 -10
  66. package/themes/kiosk/src/components/shared/OButton.tsx +5 -18
  67. package/themes/original/index.tsx +9 -4
  68. package/themes/original/src/components/AddressDetails/index.tsx +20 -10
  69. package/themes/original/src/components/AddressForm/index.tsx +2 -2
  70. package/themes/original/src/components/AddressForm/styles.tsx +1 -1
  71. package/themes/original/src/components/AddressList/index.tsx +4 -7
  72. package/themes/original/src/components/AddressList/styles.tsx +4 -4
  73. package/themes/original/src/components/AppleLogin/index.tsx +4 -4
  74. package/themes/original/src/components/BusinessBasicInformation/index.tsx +4 -4
  75. package/themes/original/src/components/BusinessBasicInformation/styles.tsx +1 -1
  76. package/themes/original/src/components/BusinessController/index.tsx +18 -10
  77. package/themes/original/src/components/BusinessController/styles.tsx +8 -7
  78. package/themes/original/src/components/BusinessInformation/styles.tsx +2 -2
  79. package/themes/original/src/components/BusinessItemAccordion/index.tsx +11 -7
  80. package/themes/original/src/components/BusinessListingSearch/BusinessSearchFooter.tsx +317 -0
  81. package/themes/original/src/components/BusinessListingSearch/BusinessSearchHeader.tsx +96 -0
  82. package/themes/original/src/components/BusinessListingSearch/MaxSectionItem/index.tsx +1 -1
  83. package/themes/original/src/components/BusinessListingSearch/index.tsx +56 -361
  84. package/themes/original/src/components/BusinessListingSearch/styles.tsx +1 -1
  85. package/themes/original/src/components/BusinessPreorder/index.tsx +2 -3
  86. package/themes/original/src/components/BusinessProductsCategories/index.tsx +1 -1
  87. package/themes/original/src/components/BusinessProductsList/index.tsx +3 -3
  88. package/themes/original/src/components/BusinessProductsList/styles.tsx +0 -3
  89. package/themes/original/src/components/BusinessProductsListing/index.tsx +43 -20
  90. package/themes/original/src/components/BusinessProductsListing/styles.tsx +3 -4
  91. package/themes/original/src/components/BusinessReviews/index.tsx +1 -1
  92. package/themes/original/src/components/BusinessesListing/Layout/Appointment/index.tsx +1 -1
  93. package/themes/original/src/components/BusinessesListing/Layout/Appointment/styles.tsx +5 -5
  94. package/themes/original/src/components/BusinessesListing/Layout/Original/FlatListBusinessListFooter.tsx +69 -0
  95. package/themes/original/src/components/BusinessesListing/Layout/Original/FlatListBusinessListHeader.tsx +406 -0
  96. package/themes/original/src/components/BusinessesListing/Layout/Original/FlatListBusinessListing.tsx +76 -0
  97. package/themes/original/src/components/BusinessesListing/Layout/Original/index.tsx +29 -403
  98. package/themes/original/src/components/BusinessesListing/Layout/Original/styles.tsx +1 -1
  99. package/themes/original/src/components/BusinessesListing/index.tsx +0 -1
  100. package/themes/original/src/components/Cart/index.tsx +32 -9
  101. package/themes/original/src/components/CartContent/index.tsx +96 -58
  102. package/themes/original/src/components/CartStoresListing/styles.tsx +2 -2
  103. package/themes/original/src/components/Checkout/index.tsx +190 -66
  104. package/themes/original/src/components/Checkout/styles.tsx +17 -0
  105. package/themes/original/src/components/CitiesControl/styles.tsx +1 -1
  106. package/themes/original/src/components/DatePicker/index.tsx +17 -0
  107. package/themes/original/src/components/DatePicker/styles.tsx +20 -0
  108. package/themes/original/src/components/Favorite/index.tsx +4 -9
  109. package/themes/original/src/components/Favorite/styles.tsx +0 -2
  110. package/themes/original/src/components/FloatingButton/styles.tsx +1 -1
  111. package/themes/original/src/components/GPSButton/index.tsx +1 -1
  112. package/themes/original/src/components/GiftCard/GiftCardOrdersList/index.tsx +64 -0
  113. package/themes/original/src/components/GiftCard/GiftCardOrdersList/styles.tsx +8 -0
  114. package/themes/original/src/components/GiftCard/GiftCardUI/index.tsx +8 -3
  115. package/themes/original/src/components/GiftCard/PurchaseGiftCard/index.tsx +36 -3
  116. package/themes/original/src/components/GiftCard/PurchaseGiftCard/styles.tsx +1 -1
  117. package/themes/original/src/components/GiftCard/RedeemGiftCard/index.tsx +67 -4
  118. package/themes/original/src/components/GiftCard/RedeemGiftCard/styles.tsx +1 -1
  119. package/themes/original/src/components/GiftCard/SendGiftCard/index.tsx +2 -2
  120. package/themes/original/src/components/GiftCard/SendGiftCard/styles.tsx +1 -1
  121. package/themes/original/src/components/GiftCard/SingleGiftCard/index.tsx +101 -0
  122. package/themes/original/src/components/GiftCard/SingleGiftCard/styles.tsx +4 -0
  123. package/themes/original/src/components/GiftCard/VerticalGiftCardOrdersLayout/index.tsx +83 -0
  124. package/themes/original/src/components/GiftCard/VerticalGiftCardOrdersLayout/styles.tsx +9 -0
  125. package/themes/original/src/components/GoogleMap/index.tsx +6 -5
  126. package/themes/original/src/components/HighestRatedBusinesses/index.tsx +2 -2
  127. package/themes/original/src/components/HighestRatedBusinesses/styles.tsx +1 -1
  128. package/themes/original/src/components/Home/index.tsx +1 -1
  129. package/themes/original/src/components/LastOrder/index.tsx +2 -1
  130. package/themes/original/src/components/LastOrders/index.tsx +2 -1
  131. package/themes/original/src/components/LoginForm/Otp/index.tsx +53 -47
  132. package/themes/original/src/components/LoginForm/index.tsx +6 -1
  133. package/themes/original/src/components/Messages/index.tsx +9 -4
  134. package/themes/original/src/components/Messages/styles.tsx +1 -1
  135. package/themes/original/src/components/MomentOption/index.tsx +3 -3
  136. package/themes/original/src/components/MultiCart/index.tsx +1 -1
  137. package/themes/original/src/components/MultiCheckout/index.tsx +251 -53
  138. package/themes/original/src/components/MultiCheckout/styles.tsx +17 -0
  139. package/themes/original/src/components/MultiOrdersDetails/index.tsx +20 -15
  140. package/themes/original/src/components/MyOrders/index.tsx +24 -29
  141. package/themes/original/src/components/NavBar/index.tsx +3 -1
  142. package/themes/original/src/components/NetworkError/index.tsx +2 -3
  143. package/themes/original/src/components/NetworkError/styles.tsx +2 -2
  144. package/themes/original/src/components/Notifications/index.tsx +4 -8
  145. package/themes/original/src/components/Notifications/styles.tsx +0 -1
  146. package/themes/original/src/components/OrderDetails/OrderHistory.tsx +7 -3
  147. package/themes/original/src/components/OrderDetails/index.tsx +716 -667
  148. package/themes/original/src/components/OrderDetails/styles.tsx +24 -8
  149. package/themes/original/src/components/OrderProgress/index.tsx +28 -9
  150. package/themes/original/src/components/OrderProgress/styles.tsx +1 -1
  151. package/themes/original/src/components/OrderSummary/index.tsx +3 -1
  152. package/themes/original/src/components/OrderTypeSelector/index.tsx +5 -6
  153. package/themes/original/src/components/OrdersOption/PreviousBusinessOrdered/styles.tsx +1 -1
  154. package/themes/original/src/components/OrdersOption/PreviousProductsOrdered/styles.tsx +1 -1
  155. package/themes/original/src/components/OrdersOption/index.tsx +2 -1
  156. package/themes/original/src/components/OrdersOption/styles.tsx +1 -1
  157. package/themes/original/src/components/PageBanner/index.tsx +3 -0
  158. package/themes/original/src/components/PaymentOptionCard/index.tsx +4 -2
  159. package/themes/original/src/components/PaymentOptionStripe/styles.tsx +3 -0
  160. package/themes/original/src/components/PaymentOptionWallet/index.tsx +56 -56
  161. package/themes/original/src/components/PaymentOptions/index.tsx +72 -6
  162. package/themes/original/src/components/PhoneInputNumber/index.tsx +15 -1
  163. package/themes/original/src/components/ProductForm/ActionButton.tsx +120 -0
  164. package/themes/original/src/components/ProductForm/ExtraOptions.tsx +56 -0
  165. package/themes/original/src/components/ProductForm/index.tsx +75 -166
  166. package/themes/original/src/components/ProductItemAccordion/index.tsx +13 -9
  167. package/themes/original/src/components/ProductItemAccordion/styles.tsx +3 -1
  168. package/themes/original/src/components/ProductOptionSubOption/index.tsx +123 -82
  169. package/themes/original/src/components/ProductOptionSubOption/styles.tsx +6 -1
  170. package/themes/original/src/components/ProfessionalProfile/styles.tsx +3 -3
  171. package/themes/original/src/components/Promotions/index.tsx +4 -4
  172. package/themes/original/src/components/Promotions/styles.tsx +0 -2
  173. package/themes/original/src/components/ReviewDriver/styles.tsx +1 -1
  174. package/themes/original/src/components/ReviewOrder/styles.tsx +1 -1
  175. package/themes/original/src/components/ReviewProducts/styles.tsx +1 -1
  176. package/themes/original/src/components/ServiceForm/index.tsx +2 -2
  177. package/themes/original/src/components/ServiceForm/styles.tsx +4 -4
  178. package/themes/original/src/components/SingleOrderCard/index.tsx +5 -4
  179. package/themes/original/src/components/SingleProductCard/index.tsx +2 -2
  180. package/themes/original/src/components/SingleProductCard/styles.tsx +0 -3
  181. package/themes/original/src/components/StripeCardsList/index.tsx +17 -36
  182. package/themes/original/src/components/StripeElementsForm/index.tsx +9 -4
  183. package/themes/original/src/components/UpsellingProducts/UpsellingContent.tsx +170 -0
  184. package/themes/original/src/components/UpsellingProducts/UpsellingLayout.tsx +86 -0
  185. package/themes/original/src/components/UpsellingProducts/index.tsx +15 -199
  186. package/themes/original/src/components/UpsellingProducts/styles.tsx +19 -0
  187. package/themes/original/src/components/UserFormDetails/index.tsx +53 -7
  188. package/themes/original/src/components/UserProfile/index.tsx +3 -2
  189. package/themes/original/src/components/UserProfileForm/index.tsx +30 -36
  190. package/themes/original/src/components/UserVerification/index.tsx +55 -50
  191. package/themes/original/src/components/WalletTransactions/styles.tsx +1 -0
  192. package/themes/original/src/components/Wallets/index.tsx +8 -9
  193. package/themes/original/src/components/Wallets/styles.tsx +1 -1
  194. package/themes/original/src/components/WebsocketStatus/index.tsx +172 -0
  195. package/themes/original/src/components/WebsocketStatus/styles.tsx +28 -0
  196. package/themes/original/src/components/shared/HeaderTitle.tsx +1 -1
  197. package/themes/original/src/components/shared/OButton.tsx +5 -5
  198. package/themes/original/src/components/shared/OInput.tsx +1 -4
  199. package/themes/original/src/components/shared/OModal.tsx +12 -14
  200. package/themes/original/src/layouts/Container.tsx +5 -3
  201. package/themes/original/src/types/index.tsx +6 -1
  202. package/themes/original/src/utils/index.tsx +124 -0
  203. package/themes/uber-eats/src/components/BusinessesListing/index.tsx +1 -1
  204. package/src/navigators/BottomNavigator.tsx +0 -117
  205. package/src/navigators/CheckoutNavigator.tsx +0 -66
  206. package/src/navigators/HomeNavigator.tsx +0 -202
  207. package/src/navigators/NavigationRef.tsx +0 -7
  208. package/src/navigators/RootNavigator.tsx +0 -269
  209. package/src/pages/Account.tsx +0 -34
  210. package/src/pages/AddressForm.tsx +0 -62
  211. package/src/pages/AddressList.tsx +0 -24
  212. package/src/pages/BusinessProductsList.tsx +0 -81
  213. package/src/pages/BusinessesListing.tsx +0 -43
  214. package/src/pages/CartList.tsx +0 -49
  215. package/src/pages/Checkout.tsx +0 -101
  216. package/src/pages/ForgotPassword.tsx +0 -24
  217. package/src/pages/Help.tsx +0 -23
  218. package/src/pages/HelpAccountAndPayment.tsx +0 -23
  219. package/src/pages/HelpGuide.tsx +0 -23
  220. package/src/pages/HelpOrder.tsx +0 -23
  221. package/src/pages/Home.tsx +0 -36
  222. package/src/pages/IntroductoryTutorial.tsx +0 -170
  223. package/src/pages/Login.tsx +0 -47
  224. package/src/pages/MomentOption.tsx +0 -30
  225. package/src/pages/MultiCheckout.tsx +0 -31
  226. package/src/pages/MultiOrdersDetails.tsx +0 -27
  227. package/src/pages/MyOrders.tsx +0 -40
  228. package/src/pages/NetworkError.tsx +0 -24
  229. package/src/pages/NotFound.tsx +0 -22
  230. package/src/pages/OrderDetails.tsx +0 -25
  231. package/src/pages/ProductDetails.tsx +0 -55
  232. package/src/pages/Profile.tsx +0 -36
  233. package/src/pages/ReviewDriver.tsx +0 -30
  234. package/src/pages/ReviewOrder.tsx +0 -32
  235. package/src/pages/ReviewProducts.tsx +0 -30
  236. package/src/pages/Sessions.tsx +0 -22
  237. package/src/pages/Signup.tsx +0 -53
  238. package/src/pages/SpinnerLoader.tsx +0 -10
  239. package/src/pages/Splash.tsx +0 -21
@@ -10,6 +10,7 @@ import {
10
10
  useLanguage,
11
11
  OrderDetails as OrderDetailsConTableoller,
12
12
  useSession,
13
+ useConfig
13
14
  } from 'ordering-components/native';
14
15
 
15
16
  //Components
@@ -34,6 +35,8 @@ export const OrderDetailsLogisticUI = (props: OrderDetailsLogisticParams) => {
34
35
  const theme = useTheme();
35
36
  const [, t] = useLanguage();
36
37
  const [session] = useSession();
38
+ const [{ configs }] = useConfig();
39
+
37
40
  const [alertState, setAlertState] = useState<{
38
41
  open: boolean;
39
42
  content: Array<string>;
@@ -41,6 +44,7 @@ export const OrderDetailsLogisticUI = (props: OrderDetailsLogisticParams) => {
41
44
  }>({ open: false, content: [], key: null });
42
45
 
43
46
  const logisticOrderStatus = [4, 6, 7]
47
+ const isHideRejectButtons = configs?.reject_orders_enabled && configs?.reject_orders_enabled?.value !== '1'
44
48
 
45
49
  const showFloatButtonsAcceptOrReject: any = {
46
50
  0: true,
@@ -166,7 +170,8 @@ export const OrderDetailsLogisticUI = (props: OrderDetailsLogisticParams) => {
166
170
  secondButton={true}
167
171
  firstColorCustom={theme.colors.red}
168
172
  secondColorCustom={theme.colors.green}
169
- widthButton={'45%'}
173
+ widthButton={isHideRejectButtons ? '100%': '45%'}
174
+ isHideRejectButtons={isHideRejectButtons}
170
175
  />
171
176
  )}
172
177
  </>
@@ -33,6 +33,7 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
33
33
  const [state, setState] = useState({
34
34
  selectedPrinter: { url: undefined },
35
35
  });
36
+ const paymethodsLength = order?.payment_events?.filter((item: any) => item.event === 'payment')?.length
36
37
 
37
38
  const getFormattedSubOptionName = ({ quantity, name, position, price }: any) => {
38
39
  if (name !== 'No') {
@@ -74,12 +75,71 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
74
75
  return array.join('')
75
76
  }
76
77
 
78
+ const getIngredients = (ingredients: any) => {
79
+ const _ingredients: any = (ingredients.length > 0 && ingredients.filter((i: any) => !i.selected)) || []
80
+ const texts: any = []
81
+
82
+ _ingredients.map((ingredient: any) => {
83
+ texts.push(`&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;${t('NO', 'No')} ${ingredient.name} <br/>`)
84
+ })
85
+
86
+ if (_ingredients.length) {
87
+ return `
88
+ <div style="font-size: 26px;width:100%">
89
+ <div style=width:90%;display:flex;justifyContent:center;margin:auto;">
90
+ <div>
91
+ ${t('INGREDIENTS', 'Ingredients')}:
92
+ </div>
93
+ </div>
94
+ ${texts.join('')}
95
+ </div>
96
+ `
97
+ }
98
+ return ''
99
+ }
100
+
101
+ const deliveryDate = (order: any) => {
102
+ const dateString = order?.delivery_datetime_utc ?? order?.delivery_datetime
103
+ const currentDate = new Date();
104
+ const receivedDate: any = new Date(dateString);
105
+
106
+ const formattedDate = receivedDate <= currentDate
107
+ ? `${t('ASAP_ABBREVIATION', 'ASAP')}(${parseDate(dateString, { utc: !!order?.delivery_datetime_utc })})`
108
+ : parseDate(dateString, { utc: !!order?.delivery_datetime_utc })
109
+ return formattedDate
110
+ }
111
+
77
112
  const theme = useTheme();
78
113
  const percentTip =
79
114
  parseInt(configs?.driver_tip_type?.value, 10) === 2 &&
80
115
  !parseInt(configs?.driver_tip_use_custom?.value, 10) &&
81
116
  verifyDecimals(order?.summary?.driver_tip, parseNumber);
82
117
 
118
+ const customerName = `${order?.customer?.name ?? ''} ${order?.customer?.middle_name ?? ''} ${order?.customer?.lastname ?? ''} ${order?.customer?.second_lastname ?? ''
119
+ }`?.replace(' ', ' ')?.trim() ?? ''
120
+
121
+ const walletName: any = {
122
+ cash: {
123
+ name: t('CASH_WALLET', 'Cash Wallet')
124
+ },
125
+ credit_point: {
126
+ name: t('POINTS_WALLET', 'Points Wallet')
127
+ }
128
+ }
129
+
130
+ const handlePaymethodsListString = () => {
131
+ const paymethodsList = order?.payment_events?.filter((item: any) => item.event === 'payment').map((paymethod: any) => {
132
+ return paymethod?.wallet_event
133
+ ? walletName[paymethod?.wallet_event?.wallet?.type]?.name
134
+ : paymethod?.paymethod?.gateway && paymethod?.paymethod?.gateway === 'cash' && order?.cash > 0
135
+ ? `${t(paymethod?.paymethod?.gateway?.toUpperCase(), paymethod?.paymethod?.name)} (${t('CASH_CHANGE_OF', 'Change of :amount:').replace(':amount:', parsePrice(order?.cash))})`
136
+ : paymethod?.paymethod?.gateway
137
+ ? t(paymethod?.paymethod?.gateway?.toUpperCase(), paymethod?.paymethod?.name)
138
+ : t(order?.paymethod?.gateway?.toUpperCase(), order?.paymethod?.name)
139
+ })
140
+ return paymethodsList.join(', ')
141
+ }
142
+
83
143
  const orderSummary = () => {
84
144
  return `
85
145
  <div>
@@ -88,56 +148,65 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
88
148
 
89
149
  ${orderStatus} </br>
90
150
 
91
- ${t('DELIVERY_TYPE', 'Delivery Type')}: ${deliveryStatus[order?.delivery_type]
92
- }
151
+ ${t('ORDER_TYPE', 'Order Type')}: ${deliveryStatus[order?.delivery_type]}
93
152
  </br>
94
- ${t('DELIVERY_DATE', 'Delivery Date')}: ${order?.delivery_datetime_utc
95
- ? parseDate(order?.delivery_datetime_utc)
96
- : parseDate(order?.delivery_datetime, { utc: false })
97
- }
153
+
154
+ ${!!order?.delivery_option
155
+ ? `${t('DELIVERY_PREFERENCE', 'Delivery Preference')}: ${t(order?.delivery_option?.name?.toUpperCase()?.replace(/ /g, '_'), order?.delivery_option?.name)
156
+ } </br>`
157
+ : ''
158
+ }
159
+
160
+ ${t('DELIVERY_DATE', 'Delivery Date')}: ${deliveryDate(order)}
98
161
  </br>
99
- ${t('PAYMENT_METHOD')}: ${order?.paymethod?.name}
162
+ ${t(paymethodsLength > 1 ? 'PAYMENT_METHODS' : 'PAYMENT_METHOD', paymethodsLength > 1 ? 'Payment methods' : 'Payment method')}: ${handlePaymethodsListString()}
100
163
  </p>
101
164
 
102
165
  <h1>${t('CUSTOMER_DETAILS', 'Customer details')}</h1>
103
- <p style="font-size: 27px"> ${t('FULL_NAME', 'Full Name')}: ${order?.customer?.name
104
- } ${order?.customer?.middle_name} ${order?.customer?.lastname} ${order?.customer?.second_lastname
105
- }
166
+ <p style="font-size: 27px"> ${t('FULL_NAME', 'Full Name')}: ${customerName}
106
167
  </br>
107
168
  ${t('EMAIL', 'Email')}: ${order?.customer?.email}
108
169
  </br>
109
- ${t('MOBILE_PHONE', 'Mobile Phone')}: ${order?.customer?.cellphone}
110
- </br>
170
+ ${!!order?.customer?.cellphone
171
+ ? `${t('MOBILE_PHONE', 'Mobile Phone')}: ${order?.customer?.cellphone
172
+ } </br>`
173
+ : ''}
174
+
111
175
  ${!!order?.customer?.phone
112
176
  ? `${t('MOBILE_PHONE', 'Mobile Phone')}: ${order?.customer?.phone
113
177
  } </br>`
114
178
  : ''
115
179
  }
116
- ${t('FULL_ADDRESS', 'Full Addres')}: ${order?.customer?.address}
117
- </br>
180
+ ${t('FULL_ADDRESS', 'Full Addres')}: ${order?.customer?.address}
181
+ </br>
118
182
  ${!!order?.customer?.internal_number
119
183
  ? `${t('INTERNAL_NUMBER', 'Internal Number')}: ${order?.customer?.internal_number
120
184
  } </br>`
121
185
  : ''
122
186
  }
123
- ${t('ZIPCODE', 'Zipcode')}: ${order?.customer.zipcode}
124
- </p>
187
+ ${order?.customer.zipcode ?
188
+ `${t('ZIPCODE', 'Zipcode')}: ${order?.customer.zipcode}`
189
+ : ''}
190
+ </p>
125
191
 
126
192
  <h1>${t('BUSINESS_DETAILS', 'Business details')}</h1>
127
- <p style="font-size: 27px">
128
- ${order?.business?.name}
129
- </br>
193
+ <p style="font-size: 27px">
194
+ ${order?.business?.name}
195
+ </br>
130
196
  ${order?.business?.email}
131
- </br>
132
- ${t('BUSINESS_PHONE', 'Business Phone')}: ${order?.business?.cellphone}
133
- </br>
197
+ </br>
198
+ ${!!order?.business?.cellphone
199
+ ? `${t('BUSINESS_PHONE', 'Business Phone')}: ${order?.business?.cellphone
200
+ } </br>`
201
+ : ''
202
+ }
134
203
  ${!!order?.business?.phone
135
204
  ? `${t('BUSINESS_PHONE', 'Business Phone')}: ${order?.business?.phone
136
205
  } </br>`
137
206
  : ''
138
- }
207
+ }
139
208
 
140
- ${t('ADDRESS', 'Address')}: ${order?.business?.address}
209
+ ${t('ADDRESS', 'Address')}: ${order?.business?.address}
141
210
  </br>
142
211
  ${!!order?.business?.address_notes
143
212
  ? `${t('SPECIAL_ADDRESS', 'Special Address')}: ${order?.business?.address_notes
@@ -147,6 +216,8 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
147
216
  </p>
148
217
  <h1> ${t('ORDER_DETAILS', 'Order Details')}</h1>
149
218
 
219
+ ${order?.comment ? ('</br>'+ t('ORDER_COMMENT', 'Order Comment') + ':' + order?.comment) : ''}
220
+
150
221
  ${order?.products.length &&
151
222
  order?.products.map(
152
223
  (product: any, i: number) =>
@@ -161,6 +232,8 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
161
232
  </div>
162
233
  </div>
163
234
 
235
+ ${getIngredients(product?.ingredients)}
236
+
164
237
  <div style="font-size: 26px;width:100%">
165
238
  <div style="width:90%;display:flex;justifyContent:center;margin:auto;">
166
239
  ${getOptions(product.options, product.comment)}
@@ -221,18 +294,21 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
221
294
  : ''
222
295
  }
223
296
 
224
- ${order?.summary?.delivery_price > 0
225
- ? `<div style="font-size: 25px;"> ${t(
226
- 'DELIVERY_FEE',
227
- 'Delivery Fee',
228
- )}
229
- </div>`
230
- : ''
231
- }
297
+ ${order?.summary?.delivery_price > 0 && order.delivery_type !== 2 ?
298
+ ` <div style="display: flex">
299
+ <div style="font-size: 26px; width: 70%; display: flex; justify-content: flex-start">
300
+ ${t('DELIVERY_FEE', 'Delivery Fee')}
301
+ </div>
232
302
 
303
+ <div style="font-size: 26px; width: 30%; display: flex; justify-content: flex-end">
304
+ ${parsePrice(order?.summary?.delivery_price ?? 0)}
305
+ </div>` :
306
+ ''}
307
+
308
+ </div>
233
309
  <div style="display: flex">
234
310
 
235
- <div style="font-size: 26px; width: 70%; display: flex; justify-content: flex-start">
311
+ <div style="font-size: 26px; width: 70%; display: flex; justify-content: flex-start">
236
312
  ${t('DRIVER_TIP', 'Driver tip')}
237
313
  ${percentTip ? `(${percentTip}%)` : ''}
238
314
  </div>
@@ -243,22 +319,23 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
243
319
 
244
320
  </div>
245
321
 
246
- <div style="display: flex">
322
+ ${order?.summary?.service_fee > 0 && `
323
+ <div style="display: flex">
324
+ <div style="font-size: 26px; width: 70%; display: flex; justify-content: flex-start">
325
+ ${t('SERVICE_FEE', 'Service Fee')}
326
+ (${verifyDecimals(order?.summary?.service_fee, parseNumber)}%)
327
+ </div>
247
328
 
248
- <div style="font-size: 26px; width: 70%; display: flex; justify-content: flex-start">
249
- ${t('SERVICE_FEE', 'Service Fee')}
250
- (${verifyDecimals(order?.summary?.service_fee, parseNumber)}%)
251
- </div>
329
+ <div style="font-size: 26px; width: 30%; display: flex; justify-content: flex-end">
330
+ ${parsePrice(order?.summary?.service_fee ?? 0)}
331
+ </div>
252
332
 
253
- <div style="font-size: 26px; width: 30%; display: flex; justify-content: flex-end">
254
- ${parsePrice(order?.summary?.service_fee ?? 0)}
255
333
  </div>
256
-
257
- </div>
334
+ `}
258
335
 
259
336
  <div style="display: flex">
260
337
 
261
- <div style="font-size: 26px; width: 70%; display: flex; justify-content: flex-start; font-weight: bold">
338
+ <div style="font-size: 26px; width: 70%; display: flex; justify-content: flex-start; font-weight: bold">
262
339
  ${t('TOTAL', 'Total')}
263
340
  </div>
264
341
 
@@ -267,7 +344,36 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
267
344
  </div>
268
345
 
269
346
  </div>
270
-
347
+
348
+ ${order?.payment_events.length && `
349
+ <div style="font-size: 26px; width: 70%; display: flex; justify-content: flex-start; font-weight: bold">
350
+ ${t('PAYMENTS', 'Payments')}
351
+ </div>
352
+ `}
353
+
354
+ ${order?.payment_events.length &&
355
+ order?.payment_events.map(
356
+ (event: any, i: number) =>
357
+ `<div style="display: flex;flexDirection:row;flex-wrap:wrap">
358
+ <div style="display:flex;width:100%">
359
+ <div style="display:flex; justify-content: flex-start; font-size: 26px; width: 70%">
360
+ ${event?.wallet_event
361
+ ? walletName[event?.wallet_event?.wallet?.type]?.name
362
+ : event?.paymethod?.gateway && event?.paymethod?.gateway === 'cash' && order?.cash > 0
363
+ ? `${t(event?.paymethod?.gateway?.toUpperCase(), event?.paymethod?.name)} (${t('CASH_CHANGE_OF', 'Change of :amount:').replace(':amount:', parsePrice(order?.cash))})`
364
+ : event?.paymethod?.gateway
365
+ ? t(event?.paymethod?.gateway?.toUpperCase(), event?.paymethod?.name)
366
+ : t(order?.paymethod?.gateway?.toUpperCase(), order?.paymethod?.name)}
367
+ </div>
368
+
369
+ <div style="display:flex; justify-content: flex-end; font-size: 26px; width: 30%">
370
+ ${(event?.paymethod?.gateway === 'cash' && order?.cash)
371
+ ? parsePrice(order?.cash, { currency: order?.currency })
372
+ : `-${parsePrice(event?.amount, { currency: order?.currency })}`}
373
+ </div>
374
+ </div>
375
+ </div>`
376
+ )}
271
377
  </div>`;
272
378
  };
273
379
 
@@ -339,9 +445,6 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
339
445
  }
340
446
  };
341
447
 
342
- const customerName = `${order?.customer?.name ?? ''} ${order?.customer?.middle_name ?? ''} ${order?.customer?.lastname ?? ''} ${order?.customer?.second_lastname ?? ''
343
- }`?.replace(' ', ' ')?.trim() ?? ''
344
-
345
448
  return (
346
449
  <>
347
450
  <Content>
@@ -370,21 +473,23 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
370
473
  </OText>
371
474
 
372
475
  <OText style={{ marginBottom: 5 }}>
373
- {`${t('DELIVERY_TYPE', 'Delivery Type')}: ${deliveryStatus[order?.delivery_type]
476
+ {`${t('ORDER_TYPE', 'Order Type')}: ${deliveryStatus[order?.delivery_type]
374
477
  }`}
375
478
  </OText>
376
479
 
480
+ {order?.delivery_option && (
481
+ <OText size={13}>
482
+ <OText size={13} weight='bold'>{`${t('DELIVERY_PREFERENCE', 'Delivery Preference')}: `}</OText>
483
+ {t(order?.delivery_option?.name?.toUpperCase()?.replace(/ /g, '_'), order?.delivery_option?.name)}
484
+ </OText>
485
+ )}
486
+
377
487
  <OText style={{ marginBottom: 5 }}>
378
- {`${t('DELIVERY_DATE', 'Delivery Date')}: ${order?.delivery_datetime_utc
379
- ? parseDate(order?.delivery_datetime_utc)
380
- : parseDate(order?.delivery_datetime, { utc: false })
381
- }`}
488
+ {`${t('DELIVERY_DATE', 'Delivery Date')}: ${deliveryDate(order)}`}
382
489
  </OText>
383
490
 
384
- <OText style={{ marginBottom: 5 }}>{`${t('PAYMENT_METHOD')}: ${t(
385
- order?.paymethod?.name.toUpperCase(),
386
- order?.paymethod?.name,
387
- )}`}</OText>
491
+ <OText style={{ marginBottom: 5 }}>{`${t(`${paymethodsLength > 1 ? 'PAYMENT_METHODS' : 'PAYMENT_METHOD'}`, `${paymethodsLength > 1 ? 'Payment methods' : 'Payment method'}`)}: ${handlePaymethodsListString()}`}</OText>
492
+
388
493
  </OrderHeader>
389
494
 
390
495
  <OrderCustomer>
@@ -416,16 +521,18 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
416
521
  {`${t('EMAIL', 'Email')}: ${order?.customer?.email}`}
417
522
  </OText>
418
523
 
419
- <OText
420
- style={{ marginBottom: 5 }}
421
- size={14}
422
- numberOfLines={2}
423
- adjustsFontSizeToFit
424
- ellipsizeMode="tail"
425
- color={theme.colors.textGray}>
426
- {`${t('MOBILE_PHONE', 'Mobile Phone')}: ${order?.customer?.cellphone
427
- }`}
428
- </OText>
524
+ {!!order?.customer?.cellphone && (
525
+ <OText
526
+ style={{ marginBottom: 5 }}
527
+ size={14}
528
+ numberOfLines={2}
529
+ adjustsFontSizeToFit
530
+ ellipsizeMode="tail"
531
+ color={theme.colors.textGray}>
532
+ {`${t('MOBILE_PHONE', 'Mobile Phone')}: ${order?.customer?.cellphone
533
+ }`}
534
+ </OText>
535
+ )}
429
536
 
430
537
  {!!order?.customer?.phone && (
431
538
  <OText
@@ -556,6 +663,12 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
556
663
  {t('ORDER_DETAILS', 'Order Details')}
557
664
  </OText>
558
665
 
666
+ {order?.comment && (
667
+ <OText style={{ marginBottom: 5 }}>
668
+ {`${t('ORDER_COMMENT', 'Order Comment')}: ${order?.comment}`}
669
+ </OText>
670
+ )}
671
+
559
672
  {order?.products.length &&
560
673
  order?.products.map((product: any, i: number) => (
561
674
  <View key={i}>
@@ -623,7 +736,7 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
623
736
  </Table>
624
737
  )}
625
738
 
626
- {order?.summary?.delivery_price > 0 && (
739
+ {order?.summary?.delivery_price > 0 && order.delivery_type !== 2 && (
627
740
  <Table>
628
741
  <OText style={{ marginBottom: 5 }}>
629
742
  {t('DELIVERY_FEE', 'Delivery Fee')}
@@ -633,22 +746,24 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
633
746
  </Table>
634
747
  )}
635
748
 
636
- <Table>
637
- <OText style={{ marginBottom: 5 }}>
638
- {t('DRIVER_TIP', 'Driver tip')}
639
- {order?.summary?.driver_tip > 0 &&
640
- parseInt(configs?.driver_tip_type?.value, 10) === 2 &&
641
- !parseInt(configs?.driver_tip_use_custom?.value, 10) &&
642
- `(${verifyDecimals(
643
- order?.summary?.driver_tip,
644
- parseNumber,
645
- )}%)`}
646
- </OText>
749
+ {(order?.summary?.driver_tip > 0 || order?.driver_tip > 0) && order.delivery_type !== 2 && (
750
+ <Table>
751
+ <OText style={{ marginBottom: 5 }}>
752
+ {t('DRIVER_TIP', 'Driver tip')}
753
+ {order?.summary?.driver_tip > 0 &&
754
+ parseInt(configs?.driver_tip_type?.value, 10) === 2 &&
755
+ !parseInt(configs?.driver_tip_use_custom?.value, 10) &&
756
+ `(${verifyDecimals(
757
+ order?.summary?.driver_tip,
758
+ parseNumber,
759
+ )}%)`}
760
+ </OText>
647
761
 
648
- <OText style={{ marginBottom: 5 }}>
649
- {parsePrice(order?.summary?.driver_tip ?? 0)}
650
- </OText>
651
- </Table>
762
+ <OText style={{ marginBottom: 5 }}>
763
+ {parsePrice(order?.summary?.driver_tip ?? 0)}
764
+ </OText>
765
+ </Table>
766
+ )}
652
767
 
653
768
  {order?.summary?.service_fee > 0 && (
654
769
  <Table>
@@ -674,6 +789,53 @@ export const OrderSummary = ({ order, navigation, orderStatus, askBluetoothPermi
674
789
  </OText>
675
790
  </Table>
676
791
  </Total>
792
+
793
+ {order?.payment_events?.length > 0 && (
794
+ <View>
795
+ <OText size={14} color={theme.colors.textNormal}>{t('PAYMENTS', 'Payments')}</OText>
796
+ <View
797
+ style={{
798
+ width: '100%',
799
+ marginTop: 5
800
+ }}
801
+ >
802
+ {order?.payment_events?.map((event: any) => (
803
+ <View
804
+ key={event.id}
805
+ style={{
806
+ display: 'flex',
807
+ flexDirection: 'row',
808
+ justifyContent: 'space-between',
809
+ alignItems: 'center',
810
+ marginBottom: 10
811
+ }}
812
+ >
813
+ <View
814
+ style={{
815
+ display: 'flex',
816
+ flexDirection: 'column',
817
+ }}
818
+ >
819
+ <OText>
820
+ {event?.wallet_event
821
+ ? walletName[event?.wallet_event?.wallet?.type]?.name
822
+ : event?.paymethod?.gateway
823
+ ? t(event?.paymethod?.gateway?.toUpperCase(), event?.paymethod?.name)
824
+ : order?.paymethod?.id === event?.paymethod_id
825
+ ? t(order?.paymethod?.gateway?.toUpperCase(), order?.paymethod?.name)
826
+ : ''}
827
+ </OText>
828
+ </View>
829
+ <OText>
830
+ {(event?.paymethod?.gateway === 'cash' && order?.cash)
831
+ ? parsePrice(order?.cash, { currency: order?.currency })
832
+ : `-${parsePrice(event?.amount, { currency: order?.currency })}`}
833
+ </OText>
834
+ </View>
835
+ ))}
836
+ </View>
837
+ </View>
838
+ )}
677
839
  </OrderBill>
678
840
  </OrderContent>
679
841
  <View style={{ height: 40 }} />
@@ -40,6 +40,7 @@ import { OrdersOptionPaymethod } from '../OrdersOptionPaymethod';
40
40
  import { OrdersOptionDriver } from '../OrdersOptionDriver';
41
41
  import { OrdersOptionDate } from '../OrdersOptionDate';
42
42
  import { OrderDetailsBusiness } from '../OrderDetails/Business';
43
+ import { WebsocketStatus } from '../WebsocketStatus'
43
44
 
44
45
  const { useDeviceOrientation, PORTRAIT } = DeviceOrientationMethods
45
46
 
@@ -314,7 +315,11 @@ const OrdersListManagerUI = (props: OrdersOptionParams) => {
314
315
  </View>
315
316
  {configState?.configs?.order_deadlines_enabled?.value === '1' && (
316
317
  <View style={styles.SLAwrapper}>
317
- <View style={{ flex: 0.5 }}>
318
+ <View style={{ flex: 1 }}>
319
+ <WebsocketStatus />
320
+ </View>
321
+ <View style={{ width: 10, height: '100%' }} />
322
+ <View style={{ flex: 1 }}>
318
323
  <OButton
319
324
  text={t('SLA_SETTING', 'SLA’s Settings')}
320
325
  textStyle={{ color: theme.colors.backArrow }}
@@ -330,7 +335,7 @@ const OrdersListManagerUI = (props: OrdersOptionParams) => {
330
335
  />
331
336
  </View>
332
337
  <View style={{ width: 10, height: '100%' }} />
333
- <View style={{ flex: 0.5, justifyContent: 'center' }}>
338
+ <View style={{ flex: 1, justifyContent: 'center' }}>
334
339
  <SelectDropdown
335
340
  defaultButtonText={t('SLA', 'SLA\'s')}
336
341
  data={preorderTypeList}
@@ -209,7 +209,7 @@ export const Timer = () => {
209
209
  return (
210
210
  <TimerInputWrapper>
211
211
  <OText style={styles.settingTime} color={theme.colors.disabled}>{configs?.order_deadlines_delayed_time?.value}</OText>
212
- <OText>{t('MIN', 'min')}</OText>
212
+ <OText>{t('TIME_MIN', 'min')}</OText>
213
213
  </TimerInputWrapper>
214
214
  )
215
215
  }