ordering-components-external 13.0.33 → 13.0.34

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 (554) hide show
  1. package/.babelrc +22 -22
  2. package/.vscode/settings.json +3 -3
  3. package/_bundles/0.ordering-component.3760baa5b9906f197b42.js +1 -0
  4. package/_bundles/{1.ordering-component.ddd8b5557b901fb64803.js → 1.ordering-component.3760baa5b9906f197b42.js} +1 -1
  5. package/_bundles/{2.ordering-component.ddd8b5557b901fb64803.js → 2.ordering-component.3760baa5b9906f197b42.js} +1 -1
  6. package/_bundles/{4.ordering-component.ddd8b5557b901fb64803.js → 4.ordering-component.3760baa5b9906f197b42.js} +1 -1
  7. package/_bundles/{5.ordering-component.ddd8b5557b901fb64803.js → 5.ordering-component.3760baa5b9906f197b42.js} +1 -1
  8. package/_bundles/{6.ordering-component.ddd8b5557b901fb64803.js → 6.ordering-component.3760baa5b9906f197b42.js} +1 -1
  9. package/_bundles/7.ordering-component.3760baa5b9906f197b42.js +2 -0
  10. package/_bundles/{8.ordering-component.ddd8b5557b901fb64803.js → 8.ordering-component.3760baa5b9906f197b42.js} +1 -1
  11. package/_bundles/ordering-component.3760baa5b9906f197b42.js +2 -0
  12. package/_bundles/{ordering-component.ddd8b5557b901fb64803.js.LICENSE.txt → ordering-component.3760baa5b9906f197b42.js.LICENSE.txt} +0 -2
  13. package/_modules/components/AddressDetails/index.js +44 -45
  14. package/_modules/components/AddressForm/index.js +67 -68
  15. package/_modules/components/AddressList/index.js +52 -53
  16. package/_modules/components/Analitycs/index.js +11 -13
  17. package/_modules/components/AnalyticsSegment/index.js +9 -10
  18. package/_modules/components/AppleLogin/index.js +38 -40
  19. package/_modules/components/BaseComponent/index.js +15 -16
  20. package/_modules/components/BusinessAndProductList/index.js +114 -124
  21. package/_modules/components/BusinessBasicInformation/index.js +31 -32
  22. package/_modules/components/BusinessController/index.js +73 -74
  23. package/_modules/components/BusinessInformation/BusinessOption/index.js +21 -22
  24. package/_modules/components/BusinessInformation/index.js +25 -26
  25. package/_modules/components/BusinessList/index.js +77 -78
  26. package/_modules/components/BusinessMenuListing/index.js +30 -31
  27. package/_modules/components/BusinessProductsCategories/index.js +17 -18
  28. package/_modules/components/BusinessProductsSearch/index.js +15 -16
  29. package/_modules/components/BusinessReviews/index.js +38 -39
  30. package/_modules/components/BusinessSearchList/index.js +39 -40
  31. package/_modules/components/BusinessSortControl/index.js +33 -34
  32. package/_modules/components/BusinessTypeFilter/index.js +36 -37
  33. package/_modules/components/BusinessesMap/index.js +35 -36
  34. package/_modules/components/Cart/index.js +52 -53
  35. package/_modules/components/CartStoresListing/index.js +17 -18
  36. package/_modules/components/Checkout/index.js +101 -102
  37. package/_modules/components/CmsContent/index.js +31 -32
  38. package/_modules/components/Contacts/index.js +46 -47
  39. package/_modules/components/CouponControl/index.js +33 -34
  40. package/_modules/components/DragAndDrop/index.js +6 -7
  41. package/_modules/components/DriverList/index.js +32 -33
  42. package/_modules/components/DriverTips/index.js +44 -45
  43. package/_modules/components/Emitter/index.js +5 -6
  44. package/_modules/components/ExamineClick/index.js +5 -6
  45. package/_modules/components/FacebookLoginButton/index.js +51 -52
  46. package/_modules/components/FacebookPixel/index.js +13 -14
  47. package/_modules/components/FavoriteList/index.js +46 -47
  48. package/_modules/components/FirebaseGoogleLoginButton/index.js +23 -24
  49. package/_modules/components/FloatingButton/index.js +21 -22
  50. package/_modules/components/ForgotPasswordForm/index.js +55 -56
  51. package/_modules/components/GiftCard/GiftCardOrdersList/index.js +16 -17
  52. package/_modules/components/GiftCard/PurchaseGiftCard/index.js +16 -17
  53. package/_modules/components/GiftCard/RedeemGiftCard/index.js +15 -16
  54. package/_modules/components/GiftCard/SendGiftCard/index.js +15 -16
  55. package/_modules/components/GoogleAutocompleteInput/index.js +28 -29
  56. package/_modules/components/GoogleIdentity/index.js +39 -40
  57. package/_modules/components/GoogleLoginButton/index.js +61 -64
  58. package/_modules/components/GoogleMaps/index.js +50 -52
  59. package/_modules/components/GpsButton/index.js +27 -29
  60. package/_modules/components/LanguageSelector/index.js +40 -41
  61. package/_modules/components/LoginForm/index.js +86 -87
  62. package/_modules/components/LogoutAction/index.js +31 -32
  63. package/_modules/components/MainSearch/index.js +42 -43
  64. package/_modules/components/MapView/index.js +8 -10
  65. package/_modules/components/MenuControl/index.js +66 -67
  66. package/_modules/components/Messages/index.js +34 -35
  67. package/_modules/components/MomentOption/index.js +57 -58
  68. package/_modules/components/MultiCartCreate/index.js +8 -9
  69. package/_modules/components/MultiCartsPaymethodsAndWallets/index.js +18 -19
  70. package/_modules/components/MultiCheckout/index.js +44 -45
  71. package/_modules/components/MultiOrdersDetails/index.js +21 -22
  72. package/_modules/components/MyOrders/index.js +34 -35
  73. package/_modules/components/MyOrdersList/index.js +32 -33
  74. package/_modules/components/NewOrderNotification/index.js +6 -7
  75. package/_modules/components/OrderChange/index.js +30 -31
  76. package/_modules/components/OrderDetails/index.js +70 -71
  77. package/_modules/components/OrderList/index.js +86 -90
  78. package/_modules/components/OrderListGroups/index.js +97 -99
  79. package/_modules/components/OrderReview/index.js +38 -39
  80. package/_modules/components/OrderTypeControl/index.js +23 -24
  81. package/_modules/components/OrderVerticalList/index.js +18 -19
  82. package/_modules/components/OrdersControlFilters/index.js +16 -17
  83. package/_modules/components/OrdersDashboardComponents/Appointments/index.js +14 -15
  84. package/_modules/components/OrdersDashboardComponents/BusinessProductsListing/index.js +54 -55
  85. package/_modules/components/OrdersDashboardComponents/CheckPassword/index.js +35 -36
  86. package/_modules/components/OrdersDashboardComponents/CityList/index.js +31 -32
  87. package/_modules/components/OrdersDashboardComponents/CountryList/index.js +31 -32
  88. package/_modules/components/OrdersDashboardComponents/CustomOrderDetails/index.js +25 -26
  89. package/_modules/components/OrdersDashboardComponents/DashboardBusinessList/index.js +78 -79
  90. package/_modules/components/OrdersDashboardComponents/DashboardOrdersList/index.js +79 -80
  91. package/_modules/components/OrdersDashboardComponents/DriversList/index.js +70 -71
  92. package/_modules/components/OrdersDashboardComponents/ExportCSV/index.js +27 -28
  93. package/_modules/components/OrdersDashboardComponents/GiftCardsList/index.js +17 -18
  94. package/_modules/components/OrdersDashboardComponents/GoogleMapsApiKeySetting/index.js +17 -18
  95. package/_modules/components/OrdersDashboardComponents/LogisticInformation/index.js +30 -31
  96. package/_modules/components/OrdersDashboardComponents/Logistics/index.js +30 -31
  97. package/_modules/components/OrdersDashboardComponents/Messages/index.js +41 -42
  98. package/_modules/components/OrdersDashboardComponents/MetaFields/index.js +38 -39
  99. package/_modules/components/OrdersDashboardComponents/OrderDetails/index.js +55 -56
  100. package/_modules/components/OrdersDashboardComponents/OrderNotification/index.js +19 -20
  101. package/_modules/components/OrdersDashboardComponents/OrdersFilter/index.js +72 -73
  102. package/_modules/components/OrdersDashboardComponents/OrdersManage/index.js +78 -79
  103. package/_modules/components/OrdersDashboardComponents/PointsWalletLevels/index.js +36 -37
  104. package/_modules/components/OrdersDashboardComponents/ReviewCustomer/index.js +26 -27
  105. package/_modules/components/OrdersDashboardComponents/Schedule/index.js +55 -56
  106. package/_modules/components/OrdersDashboardComponents/SettingsList/index.js +53 -54
  107. package/_modules/components/OrdersDashboardComponents/UserFormDetails/index.js +77 -78
  108. package/_modules/components/OrdersDashboardComponents/UsersList/index.js +77 -78
  109. package/_modules/components/OrdersDashboardComponents/WebsocketStatus/index.js +9 -10
  110. package/_modules/components/PageBanner/index.js +22 -23
  111. package/_modules/components/PaymentOptionCash/index.js +25 -26
  112. package/_modules/components/PaymentOptionPaypal/index.js +35 -36
  113. package/_modules/components/PaymentOptionSquare/index.js +13 -14
  114. package/_modules/components/PaymentOptionStripe/index.js +45 -46
  115. package/_modules/components/PaymentOptionStripeDirect/index.js +30 -31
  116. package/_modules/components/PaymentOptionStripeRedirect/StripeRedirectForm/index.js +22 -23
  117. package/_modules/components/PaymentOptionStripeRedirect/index.js +36 -37
  118. package/_modules/components/PaymentOptionWallet/index.js +12 -13
  119. package/_modules/components/PaymentOptions/index.js +40 -41
  120. package/_modules/components/PaymethodList/index.js +30 -31
  121. package/_modules/components/PhoneAutocomplete/index.js +37 -38
  122. package/_modules/components/PlaceSpot/index.js +16 -17
  123. package/_modules/components/Popup/index.js +38 -39
  124. package/_modules/components/ProductComponent/index.js +32 -33
  125. package/_modules/components/ProductForm/index.js +172 -173
  126. package/_modules/components/ProductImages/index.js +19 -20
  127. package/_modules/components/ProductIngredient/index.js +18 -19
  128. package/_modules/components/ProductOption/index.js +9 -10
  129. package/_modules/components/ProductOptionSuboption/index.js +42 -43
  130. package/_modules/components/ProductShare/index.js +25 -27
  131. package/_modules/components/ProductsList/index.js +25 -26
  132. package/_modules/components/ProductsListing/index.js +49 -50
  133. package/_modules/components/ProfessionalInfo/index.js +34 -35
  134. package/_modules/components/PromotionsController/index.js +11 -12
  135. package/_modules/components/QueryLoginSpoonity/index.js +34 -35
  136. package/_modules/components/ReCaptcha/index.js +9 -10
  137. package/_modules/components/ResetPassword/index.js +30 -31
  138. package/_modules/components/ReviewCustomer/index.js +26 -27
  139. package/_modules/components/ReviewDriver/index.js +35 -36
  140. package/_modules/components/ReviewProduct/index.js +37 -38
  141. package/_modules/components/SearchOptions/index.js +22 -23
  142. package/_modules/components/Sessions/index.js +32 -33
  143. package/_modules/components/SignupForm/index.js +83 -84
  144. package/_modules/components/SingleBusinessCard/index.js +29 -30
  145. package/_modules/components/SingleOrderCard/index.js +32 -33
  146. package/_modules/components/SingleProductCard/index.js +28 -29
  147. package/_modules/components/SingleProfessionalCard/index.js +28 -29
  148. package/_modules/components/SmartAppBanner/index.js +16 -17
  149. package/_modules/components/StoreProductList/index.js +50 -51
  150. package/_modules/components/StripeElementsForm/CardForm/index.js +45 -46
  151. package/_modules/components/StripeElementsForm/index.js +22 -23
  152. package/_modules/components/UpsellingPage/index.js +27 -28
  153. package/_modules/components/UserFormDetails/index.js +97 -98
  154. package/_modules/components/UserVerification/index.js +31 -32
  155. package/_modules/components/WalletList/index.js +11 -12
  156. package/_modules/components/WebsocketStatus/index.js +9 -10
  157. package/_modules/components/WrapperGoogleMaps/index.js +8 -9
  158. package/_modules/constants/code-numbers.js +2 -3
  159. package/_modules/constants/timezones.js +2 -3
  160. package/_modules/contexts/ApiContext/index.js +20 -23
  161. package/_modules/contexts/BillingContext/index.js +13 -15
  162. package/_modules/contexts/BusinessContext/index.js +24 -27
  163. package/_modules/contexts/ConfigContext/index.js +27 -39
  164. package/_modules/contexts/CustomerContext/index.js +15 -18
  165. package/_modules/contexts/EventContext/index.js +16 -19
  166. package/_modules/contexts/LanguageContext/index.js +29 -32
  167. package/_modules/contexts/OptimizationLoadContext/index.js +23 -26
  168. package/_modules/contexts/OrderContext/index.js +135 -139
  169. package/_modules/contexts/OrderingContext/index.js +13 -15
  170. package/_modules/contexts/OrderingThemeContext/index.js +24 -27
  171. package/_modules/contexts/ProductContext/index.js +25 -29
  172. package/_modules/contexts/SessionContext/index.js +24 -27
  173. package/_modules/contexts/SiteContext/index.js +22 -25
  174. package/_modules/contexts/ToastContext/index.js +8 -10
  175. package/_modules/contexts/UtilsContext/index.js +26 -29
  176. package/_modules/contexts/ValidationsFieldsContext/index.js +16 -19
  177. package/_modules/contexts/WebsocketContext/index.js +23 -26
  178. package/_modules/contexts/WebsocketContext/socket.js +5 -6
  179. package/_modules/native/src/NativeStrategy/index.js +6 -7
  180. package/_modules/native/src/contexts/OrderingContext/index.js +13 -15
  181. package/_modules/utils/index.js +3 -5
  182. package/_modules/webStrategy/index.js +6 -7
  183. package/cypress/fixtures/example.json +4 -4
  184. package/cypress/integration/naked/BusinessProductsCategories.spec.js +9 -9
  185. package/cypress/integration/naked/PhoneAutocomplete.spec.js +22 -22
  186. package/cypress/integration/naked/activeOrders.spec.js +15 -15
  187. package/cypress/integration/naked/addressDetails.spec.js +10 -10
  188. package/cypress/integration/naked/appleLogin.spec.js +14 -14
  189. package/cypress/integration/naked/businessBasicInformation.spec.js +14 -14
  190. package/cypress/integration/naked/businessController.spec.js +9 -9
  191. package/cypress/integration/naked/businessInformation.spec.js +19 -19
  192. package/cypress/integration/naked/businessProductsSearch.spec.js +9 -9
  193. package/cypress/integration/naked/businessReviews.spec.js +16 -16
  194. package/cypress/integration/naked/businessSortControl.spec.js +9 -9
  195. package/cypress/integration/naked/businessTypeFilter.spec.js +10 -10
  196. package/cypress/integration/naked/businessesMap.spec.js +13 -13
  197. package/cypress/integration/naked/cms.spec.js +9 -9
  198. package/cypress/integration/naked/config.spec.js +34 -34
  199. package/cypress/integration/naked/driverTips.spec.js +10 -10
  200. package/cypress/integration/naked/events.spec.js +13 -13
  201. package/cypress/integration/naked/facebookLogin.spec.js +13 -13
  202. package/cypress/integration/naked/floatingButton.spec.js +13 -13
  203. package/cypress/integration/naked/forgotPassword.spec.js +20 -20
  204. package/cypress/integration/naked/googleLogin.spec.js +11 -11
  205. package/cypress/integration/naked/languageExamples.spec.js +25 -25
  206. package/cypress/integration/naked/languageSelector.spec.js +10 -10
  207. package/cypress/integration/naked/login.spec.js +38 -38
  208. package/cypress/integration/naked/logout.spec.js +15 -15
  209. package/cypress/integration/naked/mainSearch.spec.js +9 -9
  210. package/cypress/integration/naked/menuControl.spec.js +9 -9
  211. package/cypress/integration/naked/messages.spec.js +25 -25
  212. package/cypress/integration/naked/momentOption.spec.js +10 -10
  213. package/cypress/integration/naked/myOrders.spec.js +11 -11
  214. package/cypress/integration/naked/myOrdersList.spec.js +9 -9
  215. package/cypress/integration/naked/orderContextAdvanced.spec.js +23 -23
  216. package/cypress/integration/naked/orderDetails.spec.js +11 -11
  217. package/cypress/integration/naked/paymentOptionCash.spec.js +21 -21
  218. package/cypress/integration/naked/paymentOptionStripe.spec.js +11 -11
  219. package/cypress/integration/naked/paymentOptionStripeDirect.spec.js +11 -11
  220. package/cypress/integration/naked/paymentOptions.spec.js +9 -9
  221. package/cypress/integration/naked/popupExample.spec.js +17 -17
  222. package/cypress/integration/naked/productImages.spec.js +11 -11
  223. package/cypress/integration/naked/productOptionExample.spec.js +21 -21
  224. package/cypress/integration/naked/productShare.spec.js +9 -9
  225. package/cypress/integration/naked/productsList.spec.js +9 -9
  226. package/cypress/integration/naked/resetPassword.spec.js +11 -11
  227. package/cypress/integration/naked/reviewOrders.spec.js +13 -13
  228. package/cypress/integration/naked/searchOptions.spec.js +18 -18
  229. package/cypress/integration/naked/signup.spec.js +31 -31
  230. package/cypress/integration/naked/upselling.spec.js +13 -13
  231. package/cypress/integration/naked/userDetails.spec.js +12 -12
  232. package/cypress/plugins/index.js +21 -21
  233. package/cypress/support/commands.js +35 -35
  234. package/cypress/support/index.js +20 -20
  235. package/cypress.json +12 -12
  236. package/example/App.js +263 -263
  237. package/example/components/ActiveOrdersUI/index.js +72 -72
  238. package/example/components/AddressDetailsUI/index.js +101 -101
  239. package/example/components/AddressFormUI/index.js +161 -161
  240. package/example/components/AddressListUI/index.js +33 -33
  241. package/example/components/AlertPopup/index.js +10 -10
  242. package/example/components/AlertUI/index.js +49 -49
  243. package/example/components/AlertUI/style.css +5 -5
  244. package/example/components/AppleLoginUI/index.js +40 -40
  245. package/example/components/BaseComponentUI/index.js +34 -34
  246. package/example/components/BusinessBasicInformationUI/index.js +118 -118
  247. package/example/components/BusinessControllerUI/index.js +89 -89
  248. package/example/components/BusinessInformationUI/BusinessOptionUI/index.js +83 -83
  249. package/example/components/BusinessInformationUI/index.js +83 -83
  250. package/example/components/BusinessProductsCategoriesUI/index.js +42 -42
  251. package/example/components/BusinessProductsSearchUI/index.js +38 -38
  252. package/example/components/BusinessReviewsUI/index.js +77 -77
  253. package/example/components/BusinessSortControlUI/index.js +47 -47
  254. package/example/components/BusinessTypeFilterUI/index.js +53 -53
  255. package/example/components/BusinessesMapUI/index.js +57 -57
  256. package/example/components/CartUI/index.js +154 -154
  257. package/example/components/ChangeView/index.js +19 -19
  258. package/example/components/CheckoutUI/index.js +206 -206
  259. package/example/components/CmsContentUI/index.js +52 -52
  260. package/example/components/ConfigsExample/index.js +118 -118
  261. package/example/components/CouponControlUI/index.js +63 -63
  262. package/example/components/DriverTipsUI/index.js +58 -58
  263. package/example/components/FacebookLoginButtonUI/index.js +48 -48
  264. package/example/components/FloatingButtonUI/index.js +145 -145
  265. package/example/components/ForgotPasswordFormUI/index.js +93 -93
  266. package/example/components/GoogleLoginUI/index.js +30 -30
  267. package/example/components/GpsButtonUI/index.js +22 -22
  268. package/example/components/Header/index.js +18 -18
  269. package/example/components/LanguageSelectorUI/index.js +57 -57
  270. package/example/components/LanguagesExample/index.js +51 -51
  271. package/example/components/LoginFormUI/index.js +159 -159
  272. package/example/components/LogoutButtonUI/index.js +21 -21
  273. package/example/components/MainSearchUI/index.js +131 -131
  274. package/example/components/MenuControlUI/index.js +103 -103
  275. package/example/components/MessagesUI/index.js +162 -162
  276. package/example/components/ModalUI/index.js +36 -36
  277. package/example/components/ModalUI/style.css +5 -5
  278. package/example/components/MomentOptionUI/index.js +68 -68
  279. package/example/components/MyOrdersListUI/index.js +51 -51
  280. package/example/components/MyOrdersUI/index.js +52 -52
  281. package/example/components/OrderChangeUI/index.js +54 -54
  282. package/example/components/OrderDetailsUI/index.js +174 -174
  283. package/example/components/OrderReviewUI/index.js +125 -125
  284. package/example/components/OrderTypeControlUI/index.js +32 -32
  285. package/example/components/PaymentOptionCashUI/index.js +60 -60
  286. package/example/components/PaymentOptionPaypalUI/index.js +50 -50
  287. package/example/components/PaymentOptionStripeDirectUI/index.js +89 -89
  288. package/example/components/PaymentOptionStripeRedirectUI/index.js +97 -97
  289. package/example/components/PaymentOptionStripeUI/index.js +129 -129
  290. package/example/components/PaymentOptionsUI/index.js +169 -169
  291. package/example/components/PhoneAutocompleteUI/index.js +67 -67
  292. package/example/components/PhoneAutocompleteUI/styles.css +49 -49
  293. package/example/components/ProductComponentUI/index.js +113 -113
  294. package/example/components/ProductFormUI/index.js +131 -131
  295. package/example/components/ProductImagesUI/index.js +82 -82
  296. package/example/components/ProductIngredientUI/index.js +21 -21
  297. package/example/components/ProductOptionSuboptionUI/index.js +65 -65
  298. package/example/components/ProductOptionUI/index.js +31 -31
  299. package/example/components/ProductShareUI/index.js +48 -48
  300. package/example/components/ProductsListUI/index.js +108 -108
  301. package/example/components/ProductsListingUI/index.js +42 -42
  302. package/example/components/ResetPasswordUI/index.js +121 -121
  303. package/example/components/SearchOptionsUI/index.js +82 -82
  304. package/example/components/SignupFormUI/index.js +117 -117
  305. package/example/components/SingleBusinessCardUI/index.js +82 -82
  306. package/example/components/SingleOrderCardUI/index.js +52 -52
  307. package/example/components/SingleProductCardUI/index.js +47 -47
  308. package/example/components/StripeElementsFormUI/CardFormUI/index.js +51 -51
  309. package/example/components/StripeElementsFormUI/CardFormUI/style.css +118 -118
  310. package/example/components/StripeElementsFormUI/index.js +38 -38
  311. package/example/components/StripeRedirectFormUI/index.js +99 -99
  312. package/example/components/TestComponent/index.js +5 -5
  313. package/example/components/UpsellingPageUI/index.js +26 -26
  314. package/example/components/UserDetailsUI/index.js +94 -94
  315. package/example/components/UserProfileUI/index.js +156 -156
  316. package/example/views/ActiveOrders/index.js +86 -86
  317. package/example/views/AddressDetailsExample/index.js +57 -57
  318. package/example/views/AppleLoginExample/index.js +51 -51
  319. package/example/views/BaseComponentExample/index.js +35 -35
  320. package/example/views/BusinessBasicInformationExample/index.js +43 -43
  321. package/example/views/BusinessControllerExample/index.js +55 -55
  322. package/example/views/BusinessInformationExample/index.js +68 -68
  323. package/example/views/BusinessProductsCategoriesExample/index.js +50 -50
  324. package/example/views/BusinessProductsSearchExample/index.js +39 -39
  325. package/example/views/BusinessReviewsExample/index.js +43 -43
  326. package/example/views/BusinessSortControlExample/index.js +53 -53
  327. package/example/views/BusinessTypeFilterExample/index.js +53 -53
  328. package/example/views/BusinessesMapExample/index.js +57 -57
  329. package/example/views/CheckoutExample/index.js +143 -143
  330. package/example/views/CmsContentExample/index.js +44 -44
  331. package/example/views/DriverTipsExample/index.js +47 -47
  332. package/example/views/EventsExample/index.js +26 -26
  333. package/example/views/FacebookLogin/index.js +63 -63
  334. package/example/views/FloatingButtonExample/index.js +47 -47
  335. package/example/views/ForgotPassword/index.js +77 -77
  336. package/example/views/GoogleLoginExample/index.js +85 -85
  337. package/example/views/Home/index.js +200 -200
  338. package/example/views/LanguageSelectorExample/index.js +55 -55
  339. package/example/views/Login/index.js +84 -84
  340. package/example/views/MainSearchExample/index.js +43 -43
  341. package/example/views/MenuControlExample/index.js +68 -68
  342. package/example/views/MessagesExample/index.js +58 -58
  343. package/example/views/MomentOptionExample/index.js +52 -52
  344. package/example/views/MyOrdersExample/index.js +35 -35
  345. package/example/views/MyOrdersListExample/index.js +50 -50
  346. package/example/views/OrderChangeExample/index.js +46 -46
  347. package/example/views/OrderContextExample/index.js +139 -139
  348. package/example/views/OrderDetailsExample/index.js +50 -50
  349. package/example/views/OrderReviewExample/index.js +64 -64
  350. package/example/views/PaymentOptionCashExample/index.js +51 -51
  351. package/example/views/PaymentOptionPaypalExample/index.js +71 -71
  352. package/example/views/PaymentOptionStripeDirectExample/index.js +43 -43
  353. package/example/views/PaymentOptionStripeExample/index.js +47 -47
  354. package/example/views/PaymentOptionStripeRedirectExample/index.js +56 -56
  355. package/example/views/PaymentOptionsExample/index.js +47 -47
  356. package/example/views/PhoneAutocompleteExample/index.js +34 -34
  357. package/example/views/PlacesExample/index.js +94 -94
  358. package/example/views/PopupExample/index.js +78 -78
  359. package/example/views/PopupExample/style.css +18 -18
  360. package/example/views/ProductDetail/index.js +323 -323
  361. package/example/views/ProductImagesExample/index.js +43 -43
  362. package/example/views/ProductOptionExample/index.js +88 -88
  363. package/example/views/ProductShareExample/index.js +51 -51
  364. package/example/views/ProductsListExample/index.js +77 -77
  365. package/example/views/ProductsListingExample/index.js +47 -47
  366. package/example/views/ResetPasswordExample/index.js +60 -60
  367. package/example/views/SearchOptionsExample/index.js +42 -42
  368. package/example/views/SessionManager/index.js +122 -122
  369. package/example/views/Signup/index.js +64 -64
  370. package/example/views/UpsellingPageExample/index.js +35 -35
  371. package/example/views/UserDetailsExample/index.js +69 -69
  372. package/example/views/UserProfile/index.js +73 -73
  373. package/index-example.js +37 -37
  374. package/index.html +13 -13
  375. package/native/index.js +255 -255
  376. package/native/src/NativeStrategy/index.js +20 -20
  377. package/native/src/contexts/OrderingContext/index.js +85 -85
  378. package/package.json +94 -94
  379. package/src/components/AddressDetails/index.js +149 -149
  380. package/src/components/AddressForm/index.js +333 -333
  381. package/src/components/AddressList/index.js +212 -212
  382. package/src/components/Analitycs/index.js +119 -119
  383. package/src/components/AnalyticsSegment/index.js +136 -136
  384. package/src/components/AppleLogin/index.js +164 -164
  385. package/src/components/BaseComponent/index.js +52 -52
  386. package/src/components/BusinessAndProductList/index.js +981 -981
  387. package/src/components/BusinessBasicInformation/index.js +119 -119
  388. package/src/components/BusinessController/index.js +351 -351
  389. package/src/components/BusinessInformation/BusinessOption/index.js +86 -86
  390. package/src/components/BusinessInformation/index.js +93 -93
  391. package/src/components/BusinessList/index.js +670 -670
  392. package/src/components/BusinessMenuListing/index.js +99 -99
  393. package/src/components/BusinessProductsCategories/index.js +60 -60
  394. package/src/components/BusinessProductsSearch/index.js +54 -54
  395. package/src/components/BusinessReviews/index.js +187 -187
  396. package/src/components/BusinessSearchList/index.js +363 -363
  397. package/src/components/BusinessSortControl/index.js +100 -100
  398. package/src/components/BusinessTypeFilter/index.js +142 -142
  399. package/src/components/BusinessesMap/index.js +110 -110
  400. package/src/components/Cart/index.js +210 -210
  401. package/src/components/CartStoresListing/index.js +157 -157
  402. package/src/components/Checkout/index.js +618 -618
  403. package/src/components/CmsContent/index.js +97 -97
  404. package/src/components/Contacts/index.js +512 -512
  405. package/src/components/CouponControl/index.js +171 -171
  406. package/src/components/DragAndDrop/index.js +41 -41
  407. package/src/components/DriverList/index.js +112 -112
  408. package/src/components/DriverTips/index.js +141 -141
  409. package/src/components/Emitter/index.js +36 -36
  410. package/src/components/ExamineClick/index.js +40 -40
  411. package/src/components/FacebookLoginButton/index.js +214 -214
  412. package/src/components/FacebookPixel/index.js +148 -148
  413. package/src/components/FavoriteList/index.js +268 -268
  414. package/src/components/FirebaseGoogleLoginButton/index.js +93 -93
  415. package/src/components/FloatingButton/index.js +70 -70
  416. package/src/components/ForgotPasswordForm/index.js +180 -180
  417. package/src/components/GiftCard/GiftCardOrdersList/index.js +155 -155
  418. package/src/components/GiftCard/PurchaseGiftCard/index.js +123 -123
  419. package/src/components/GiftCard/RedeemGiftCard/index.js +73 -73
  420. package/src/components/GiftCard/SendGiftCard/index.js +78 -78
  421. package/src/components/GoogleAutocompleteInput/index.js +154 -154
  422. package/src/components/GoogleIdentity/index.js +144 -144
  423. package/src/components/GoogleLoginButton/index.js +276 -276
  424. package/src/components/GoogleMaps/index.js +489 -489
  425. package/src/components/GpsButton/index.js +127 -127
  426. package/src/components/LanguageSelector/index.js +163 -163
  427. package/src/components/LoginForm/index.js +521 -521
  428. package/src/components/LogoutAction/index.js +165 -165
  429. package/src/components/MainSearch/index.js +149 -149
  430. package/src/components/MapView/index.js +110 -110
  431. package/src/components/MenuControl/index.js +238 -238
  432. package/src/components/Messages/index.js +166 -166
  433. package/src/components/MomentOption/index.js +322 -322
  434. package/src/components/MultiCartCreate/index.js +70 -70
  435. package/src/components/MultiCartsPaymethodsAndWallets/index.js +201 -201
  436. package/src/components/MultiCheckout/index.js +371 -371
  437. package/src/components/MultiOrdersDetails/index.js +109 -109
  438. package/src/components/MyOrders/index.js +150 -150
  439. package/src/components/MyOrdersList/index.js +104 -104
  440. package/src/components/NewOrderNotification/index.js +30 -30
  441. package/src/components/OrderChange/index.js +128 -128
  442. package/src/components/OrderDetails/index.js +684 -684
  443. package/src/components/OrderList/index.js +781 -781
  444. package/src/components/OrderListGroups/index.js +1168 -1168
  445. package/src/components/OrderReview/index.js +180 -180
  446. package/src/components/OrderTypeControl/index.js +75 -75
  447. package/src/components/OrderVerticalList/index.js +422 -422
  448. package/src/components/OrdersControlFilters/index.js +75 -75
  449. package/src/components/OrdersDashboardComponents/Appointments/index.js +72 -72
  450. package/src/components/OrdersDashboardComponents/BusinessProductsListing/index.js +629 -629
  451. package/src/components/OrdersDashboardComponents/CheckPassword/index.js +177 -177
  452. package/src/components/OrdersDashboardComponents/CityList/index.js +98 -98
  453. package/src/components/OrdersDashboardComponents/CountryList/index.js +162 -162
  454. package/src/components/OrdersDashboardComponents/CustomOrderDetails/index.js +238 -238
  455. package/src/components/OrdersDashboardComponents/DashboardBusinessList/index.js +617 -617
  456. package/src/components/OrdersDashboardComponents/DashboardOrdersList/index.js +943 -943
  457. package/src/components/OrdersDashboardComponents/DriversList/index.js +448 -448
  458. package/src/components/OrdersDashboardComponents/ExportCSV/index.js +192 -192
  459. package/src/components/OrdersDashboardComponents/GiftCardsList/index.js +189 -189
  460. package/src/components/OrdersDashboardComponents/GoogleMapsApiKeySetting/index.js +77 -77
  461. package/src/components/OrdersDashboardComponents/LogisticInformation/index.js +97 -97
  462. package/src/components/OrdersDashboardComponents/Logistics/index.js +174 -174
  463. package/src/components/OrdersDashboardComponents/Messages/index.js +384 -384
  464. package/src/components/OrdersDashboardComponents/MetaFields/index.js +186 -186
  465. package/src/components/OrdersDashboardComponents/OrderDetails/index.js +404 -404
  466. package/src/components/OrdersDashboardComponents/OrderNotification/index.js +70 -70
  467. package/src/components/OrdersDashboardComponents/OrdersFilter/index.js +362 -362
  468. package/src/components/OrdersDashboardComponents/OrdersManage/index.js +873 -873
  469. package/src/components/OrdersDashboardComponents/PointsWalletLevels/index.js +123 -123
  470. package/src/components/OrdersDashboardComponents/ReviewCustomer/index.js +113 -113
  471. package/src/components/OrdersDashboardComponents/Schedule/index.js +315 -315
  472. package/src/components/OrdersDashboardComponents/SettingsList/index.js +298 -298
  473. package/src/components/OrdersDashboardComponents/UserFormDetails/index.js +463 -463
  474. package/src/components/OrdersDashboardComponents/UsersList/index.js +944 -944
  475. package/src/components/OrdersDashboardComponents/WebsocketStatus/index.js +77 -77
  476. package/src/components/OrdersDashboardComponents/index.js +57 -57
  477. package/src/components/PageBanner/index.js +107 -107
  478. package/src/components/PaymentOptionCash/index.js +74 -74
  479. package/src/components/PaymentOptionPaypal/index.js +146 -146
  480. package/src/components/PaymentOptionSquare/index.js +336 -336
  481. package/src/components/PaymentOptionStripe/index.js +289 -289
  482. package/src/components/PaymentOptionStripeDirect/index.js +116 -116
  483. package/src/components/PaymentOptionStripeRedirect/StripeRedirectForm/index.js +71 -71
  484. package/src/components/PaymentOptionStripeRedirect/index.js +122 -122
  485. package/src/components/PaymentOptionWallet/index.js +185 -185
  486. package/src/components/PaymentOptions/index.js +248 -248
  487. package/src/components/PaymethodList/index.js +119 -119
  488. package/src/components/PhoneAutocomplete/index.js +311 -311
  489. package/src/components/PlaceSpot/index.js +176 -176
  490. package/src/components/Popup/index.js +169 -169
  491. package/src/components/ProductComponent/index.js +269 -269
  492. package/src/components/ProductForm/index.js +1090 -1090
  493. package/src/components/ProductImages/index.js +64 -64
  494. package/src/components/ProductIngredient/index.js +72 -72
  495. package/src/components/ProductOption/index.js +42 -42
  496. package/src/components/ProductOptionSuboption/index.js +180 -180
  497. package/src/components/ProductShare/index.js +97 -97
  498. package/src/components/ProductsList/index.js +74 -74
  499. package/src/components/ProductsListing/index.js +166 -166
  500. package/src/components/ProfessionalInfo/index.js +156 -156
  501. package/src/components/PromotionsController/index.js +123 -123
  502. package/src/components/QueryLoginSpoonity/index.js +159 -159
  503. package/src/components/ReCaptcha/index.js +53 -53
  504. package/src/components/ResetPassword/index.js +111 -111
  505. package/src/components/ReviewCustomer/index.js +117 -117
  506. package/src/components/ReviewDriver/index.js +157 -157
  507. package/src/components/ReviewProduct/index.js +162 -162
  508. package/src/components/SearchOptions/index.js +69 -69
  509. package/src/components/Sessions/index.js +217 -217
  510. package/src/components/SignupForm/index.js +547 -547
  511. package/src/components/SingleBusinessCard/index.js +80 -80
  512. package/src/components/SingleOrderCard/index.js +160 -160
  513. package/src/components/SingleProductCard/index.js +130 -130
  514. package/src/components/SingleProfessionalCard/index.js +121 -121
  515. package/src/components/SmartAppBanner/index.js +71 -71
  516. package/src/components/StoreProductList/index.js +303 -303
  517. package/src/components/StripeElementsForm/CardForm/index.js +248 -248
  518. package/src/components/StripeElementsForm/index.js +78 -78
  519. package/src/components/UpsellingPage/index.js +120 -120
  520. package/src/components/UserFormDetails/index.js +688 -688
  521. package/src/components/UserVerification/index.js +242 -242
  522. package/src/components/WalletList/index.js +160 -160
  523. package/src/components/WebsocketStatus/index.js +80 -80
  524. package/src/components/WrapperGoogleMaps/index.js +67 -67
  525. package/src/constants/code-numbers.js +218 -218
  526. package/src/constants/timezones.js +427 -427
  527. package/src/contexts/ApiContext/index.js +59 -59
  528. package/src/contexts/BillingContext/index.js +28 -28
  529. package/src/contexts/BusinessContext/index.js +71 -71
  530. package/src/contexts/ConfigContext/index.js +215 -215
  531. package/src/contexts/CustomerContext/index.js +69 -69
  532. package/src/contexts/EventContext/index.js +31 -31
  533. package/src/contexts/LanguageContext/index.js +144 -144
  534. package/src/contexts/OptimizationLoadContext/index.js +95 -95
  535. package/src/contexts/OrderContext/index.js +1448 -1448
  536. package/src/contexts/OrderingContext/index.js +86 -86
  537. package/src/contexts/OrderingThemeContext/index.js +107 -107
  538. package/src/contexts/ProductContext/index.js +62 -62
  539. package/src/contexts/SessionContext/index.js +172 -172
  540. package/src/contexts/SiteContext/index.js +79 -79
  541. package/src/contexts/ToastContext/index.js +42 -42
  542. package/src/contexts/UtilsContext/index.js +352 -352
  543. package/src/contexts/ValidationsFieldsContext/index.js +65 -65
  544. package/src/contexts/WebsocketContext/index.js +91 -91
  545. package/src/contexts/WebsocketContext/socket.js +92 -92
  546. package/src/index.js +369 -369
  547. package/src/utils/index.js +32 -32
  548. package/src/webStrategy/index.js +18 -18
  549. package/webpack.dev.js +41 -41
  550. package/webpack.prod.js +64 -64
  551. package/_bundles/0.ordering-component.ddd8b5557b901fb64803.js +0 -1
  552. package/_bundles/7.ordering-component.ddd8b5557b901fb64803.js +0 -2
  553. package/_bundles/ordering-component.ddd8b5557b901fb64803.js +0 -2
  554. /package/_bundles/{7.ordering-component.ddd8b5557b901fb64803.js.LICENSE.txt → 7.ordering-component.3760baa5b9906f197b42.js.LICENSE.txt} +0 -0
@@ -1,136 +1,136 @@
1
- import React, { useEffect, useState } from 'react'
2
- import { useEvent } from '../../contexts/EventContext'
3
- import { AnalyticsBrowser } from '@segment/analytics-next'
4
- import PropTypes from 'prop-types'
5
-
6
- export const AnalyticsSegment = (props) => {
7
- const {
8
- writeKey,
9
- children
10
- } = props
11
-
12
- const [events] = useEvent()
13
- const [analytics, setAnalytics] = useState(undefined)
14
-
15
- const handleClickProduct = (product) => {
16
- analytics.track('Product Clicked', {
17
- id: product.id,
18
- name: product.name,
19
- category: product.category_id,
20
- price: product.price
21
- })
22
- }
23
-
24
- const handleProductAdded = (product) => {
25
- analytics.track('Product Added', {
26
- id: product.id,
27
- name: product.name,
28
- category: product.category_id,
29
- price: product.price,
30
- quantity: product.quantity
31
- })
32
- }
33
-
34
- const handleProductRemoved = (product) => {
35
- analytics.track('Product Removed', {
36
- id: product.id,
37
- name: product.name,
38
- category: product.category_id,
39
- price: product.price,
40
- quantity: product.quantity
41
- })
42
- }
43
-
44
- const handleOrderPlaced = (order) => {
45
- analytics.track('Order Placed', {
46
- id: order.id,
47
- affiliation: order.business?.name,
48
- revenue: order.total,
49
- tax: order.tax_total,
50
- shipping: order.delivery_zone_price
51
- })
52
- analytics.track('Payment Info Entered', {
53
- order: order.id,
54
- business: order.business?.name,
55
- business_id: order.business_id,
56
- total: order.total,
57
- tax: order.tax_total,
58
- delivery: order.delivery_zone_price,
59
- paymethod: order.paymethod
60
- })
61
- }
62
-
63
- const handleUpdateOrder = (order) => {
64
- analytics.track('Order Updated', {
65
- id: order.id,
66
- affiliation: order.business?.name,
67
- revenue: order.total,
68
- tax: order.tax_total,
69
- shipping: order.delivery_zone_price
70
- })
71
- }
72
-
73
- const handleAddOrder = (order) => {
74
- analytics.track('Order Added', {
75
- id: order.id,
76
- affiliation: order.business?.name,
77
- revenue: order.total,
78
- tax: order.tax_total,
79
- shipping: order.delivery_zone_price
80
- })
81
- }
82
-
83
- const handleLogin = (data) => {
84
- analytics.identify(data.id, {
85
- email: data.email,
86
- name: data.name
87
- })
88
- }
89
-
90
- useEffect(() => {
91
- if (analytics) {
92
- events.on('product_clicked', handleClickProduct)
93
- events.on('product_added', handleProductAdded)
94
- events.on('userLogin', handleLogin)
95
- events.on('order_placed', handleOrderPlaced)
96
- events.on('order_updated', handleUpdateOrder)
97
- events.on('order_added', handleAddOrder)
98
- events.on('cart_product_removed', handleProductRemoved)
99
- }
100
- return () => {
101
- if (analytics) {
102
- events.off('product_clicked', handleClickProduct)
103
- events.off('product_added', handleProductAdded)
104
- events.off('userLogin', handleLogin)
105
- events.off('order_placed', handleOrderPlaced)
106
- events.off('order_updated', handleUpdateOrder)
107
- events.off('order_added', handleAddOrder)
108
- events.off('cart_product_removed', handleProductRemoved)
109
- }
110
- }
111
- }, [analytics])
112
-
113
- useEffect(() => {
114
- const loadAnalytics = async () => {
115
- const [response] = await AnalyticsBrowser.load({ writeKey })
116
- setAnalytics(response)
117
- }
118
- loadAnalytics()
119
- }, [writeKey])
120
-
121
- return (
122
- <>
123
- {children}
124
- </>
125
- )
126
- }
127
-
128
- AnalyticsSegment.propTypes = {
129
- /**
130
- * Your Segment Write Key
131
- * @see writeKey What is Write Key ? https://segment.com/docs/getting-started/02-simple-install/#find-your-write-key
132
- */
133
- writeKey: PropTypes.string.isRequired
134
- }
135
-
136
- AnalyticsSegment.defaultProps = {}
1
+ import React, { useEffect, useState } from 'react'
2
+ import { useEvent } from '../../contexts/EventContext'
3
+ import { AnalyticsBrowser } from '@segment/analytics-next'
4
+ import PropTypes from 'prop-types'
5
+
6
+ export const AnalyticsSegment = (props) => {
7
+ const {
8
+ writeKey,
9
+ children
10
+ } = props
11
+
12
+ const [events] = useEvent()
13
+ const [analytics, setAnalytics] = useState(undefined)
14
+
15
+ const handleClickProduct = (product) => {
16
+ analytics.track('Product Clicked', {
17
+ id: product.id,
18
+ name: product.name,
19
+ category: product.category_id,
20
+ price: product.price
21
+ })
22
+ }
23
+
24
+ const handleProductAdded = (product) => {
25
+ analytics.track('Product Added', {
26
+ id: product.id,
27
+ name: product.name,
28
+ category: product.category_id,
29
+ price: product.price,
30
+ quantity: product.quantity
31
+ })
32
+ }
33
+
34
+ const handleProductRemoved = (product) => {
35
+ analytics.track('Product Removed', {
36
+ id: product.id,
37
+ name: product.name,
38
+ category: product.category_id,
39
+ price: product.price,
40
+ quantity: product.quantity
41
+ })
42
+ }
43
+
44
+ const handleOrderPlaced = (order) => {
45
+ analytics.track('Order Placed', {
46
+ id: order.id,
47
+ affiliation: order.business?.name,
48
+ revenue: order.total,
49
+ tax: order.tax_total,
50
+ shipping: order.delivery_zone_price
51
+ })
52
+ analytics.track('Payment Info Entered', {
53
+ order: order.id,
54
+ business: order.business?.name,
55
+ business_id: order.business_id,
56
+ total: order.total,
57
+ tax: order.tax_total,
58
+ delivery: order.delivery_zone_price,
59
+ paymethod: order.paymethod
60
+ })
61
+ }
62
+
63
+ const handleUpdateOrder = (order) => {
64
+ analytics.track('Order Updated', {
65
+ id: order.id,
66
+ affiliation: order.business?.name,
67
+ revenue: order.total,
68
+ tax: order.tax_total,
69
+ shipping: order.delivery_zone_price
70
+ })
71
+ }
72
+
73
+ const handleAddOrder = (order) => {
74
+ analytics.track('Order Added', {
75
+ id: order.id,
76
+ affiliation: order.business?.name,
77
+ revenue: order.total,
78
+ tax: order.tax_total,
79
+ shipping: order.delivery_zone_price
80
+ })
81
+ }
82
+
83
+ const handleLogin = (data) => {
84
+ analytics.identify(data.id, {
85
+ email: data.email,
86
+ name: data.name
87
+ })
88
+ }
89
+
90
+ useEffect(() => {
91
+ if (analytics) {
92
+ events.on('product_clicked', handleClickProduct)
93
+ events.on('product_added', handleProductAdded)
94
+ events.on('userLogin', handleLogin)
95
+ events.on('order_placed', handleOrderPlaced)
96
+ events.on('order_updated', handleUpdateOrder)
97
+ events.on('order_added', handleAddOrder)
98
+ events.on('cart_product_removed', handleProductRemoved)
99
+ }
100
+ return () => {
101
+ if (analytics) {
102
+ events.off('product_clicked', handleClickProduct)
103
+ events.off('product_added', handleProductAdded)
104
+ events.off('userLogin', handleLogin)
105
+ events.off('order_placed', handleOrderPlaced)
106
+ events.off('order_updated', handleUpdateOrder)
107
+ events.off('order_added', handleAddOrder)
108
+ events.off('cart_product_removed', handleProductRemoved)
109
+ }
110
+ }
111
+ }, [analytics])
112
+
113
+ useEffect(() => {
114
+ const loadAnalytics = async () => {
115
+ const [response] = await AnalyticsBrowser.load({ writeKey })
116
+ setAnalytics(response)
117
+ }
118
+ loadAnalytics()
119
+ }, [writeKey])
120
+
121
+ return (
122
+ <>
123
+ {children}
124
+ </>
125
+ )
126
+ }
127
+
128
+ AnalyticsSegment.propTypes = {
129
+ /**
130
+ * Your Segment Write Key
131
+ * @see writeKey What is Write Key ? https://segment.com/docs/getting-started/02-simple-install/#find-your-write-key
132
+ */
133
+ writeKey: PropTypes.string.isRequired
134
+ }
135
+
136
+ AnalyticsSegment.defaultProps = {}
@@ -1,164 +1,164 @@
1
- import React, { useState, useEffect } from 'react'
2
- import PropTypes from 'prop-types'
3
- import { useApi } from '../../contexts/ApiContext'
4
- import { useConfig } from '../../contexts/ConfigContext'
5
- import { useWebsocket } from '../../contexts/WebsocketContext'
6
-
7
- export const AppleLogin = (props) => {
8
- const { UIComponent, onSuccess, onFailure, initParams: initParamsCustom, handleButtonAppleLoginClick } = props
9
-
10
- const [ordering] = useApi()
11
- const socket = useWebsocket()
12
- const [formState, setFormState] = useState({ loading: false, result: { error: false } })
13
- const [{ configs }] = useConfig()
14
-
15
- const initParams = initParamsCustom || {
16
- clientId: configs?.apple_login_client_id?.value,
17
- redirectURI: !window.location.origin.includes('localhost') ? `${window.location.href}login/apple/callback` : 'https://example-app.com/redirect',
18
- response_mode: 'form_post',
19
- response_type: 'code',
20
- state: 'state',
21
- scope: 'name email',
22
- nonce: 'nonce',
23
- usePopup: true // or true defaults to false
24
- }
25
-
26
- useEffect(() => {
27
- const AppleIDSignInOnFailure = document.addEventListener('AppleIDSignInOnFailure', (error) => {
28
- onFailure(error)
29
- })
30
- createScriptApple()
31
-
32
- return () => {
33
- document.removeEventListener('AppleIDSignInOnFailure', AppleIDSignInOnFailure)
34
- }
35
- }, [])
36
-
37
- /**
38
- * loading script of de Apple login sdk
39
- */
40
- const createScriptApple = () => {
41
- if (window.document.getElementById('apple-login')) {
42
- return
43
- }
44
- const js = window.document.createElement('script')
45
- js.id = 'apple-login'
46
- js.src =
47
- 'https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js'
48
- js.async = true
49
- js.defer = true
50
-
51
- window.document.body.appendChild(js)
52
- }
53
-
54
- const handleAppleLoginClick = async (data) => {
55
- if (handleButtonAppleLoginClick) {
56
- handleButtonAppleLoginClick(data)
57
- return
58
- }
59
-
60
- try {
61
- setFormState({ ...formState, loading: true })
62
- const response = await fetch(`${ordering.root}/auth/apple`, {
63
- method: 'POST',
64
- headers: {
65
- 'Content-Type': 'application/json',
66
- 'X-App-X': ordering.appId,
67
- 'X-Socket-Id-X': socket?.getId()
68
- },
69
- body: JSON.stringify({
70
- code: data.code
71
- })
72
- })
73
- const { result, error } = await response.json()
74
- setFormState({
75
- result: result,
76
- loading: false
77
- })
78
- if (onSuccess && !error && result?.session) {
79
- onSuccess(result)
80
- } else {
81
- if (onFailure) {
82
- onFailure(result)
83
- }
84
- }
85
- } catch (err) {
86
- setFormState({
87
- result: {
88
- error: true,
89
- result: err.message
90
- },
91
- loading: false
92
- })
93
- }
94
- }
95
-
96
- /**
97
- * start Login Apple
98
- */
99
- const initLoginApple = () => {
100
- window.AppleID.auth.init(initParams)
101
-
102
- handleLoginApple()
103
- }
104
-
105
- /**
106
- * handilng the response of login apple when login
107
- */
108
- const handleLoginApple = async () => {
109
- try {
110
- const data = await window.AppleID.auth.signIn()
111
- handleAppleLoginClick(data?.authorization)
112
- } catch (err) {
113
- console.log('error', err)
114
- }
115
- }
116
-
117
- return <>{UIComponent && <UIComponent {...props} initLoginApple={initLoginApple} />}</>
118
- }
119
-
120
- AppleLogin.propTypes = {
121
- /**
122
- * UI Component, this must be containt all graphic elements and use parent props
123
- */
124
- UIComponent: PropTypes.elementType,
125
- /**
126
- * loading script of de Apple login sdk
127
- */
128
- createScriptApple: PropTypes.func,
129
- /**
130
- * start Login Apple
131
- */
132
- initLoginApple: PropTypes.func,
133
- /**
134
- * handilng the response of login apple when login
135
- */
136
- handleLoginApple: PropTypes.func,
137
- /**
138
- * Components types before Facebook login button
139
- * Array of type components, the parent props will pass to these components
140
- */
141
- beforeComponents: PropTypes.arrayOf(PropTypes.elementType),
142
- /**
143
- * Components types after Facebook login button
144
- * Array of type components, the parent props will pass to these components
145
- */
146
- afterComponents: PropTypes.arrayOf(PropTypes.elementType),
147
- /**
148
- * Elements before Facebook login button
149
- * Array of HTML/Components elements, these components will not get the parent props
150
- */
151
- beforeElements: PropTypes.arrayOf(PropTypes.element),
152
- /**
153
- * Elements after Facebook login button
154
- * Array of HTML/Components elements, these components will not get the parent props
155
- */
156
- afterElements: PropTypes.arrayOf(PropTypes.element)
157
- }
158
-
159
- AppleLogin.defaultProps = {
160
- beforeComponents: [],
161
- afterComponents: [],
162
- beforeElements: [],
163
- afterElements: []
164
- }
1
+ import React, { useState, useEffect } from 'react'
2
+ import PropTypes from 'prop-types'
3
+ import { useApi } from '../../contexts/ApiContext'
4
+ import { useConfig } from '../../contexts/ConfigContext'
5
+ import { useWebsocket } from '../../contexts/WebsocketContext'
6
+
7
+ export const AppleLogin = (props) => {
8
+ const { UIComponent, onSuccess, onFailure, initParams: initParamsCustom, handleButtonAppleLoginClick } = props
9
+
10
+ const [ordering] = useApi()
11
+ const socket = useWebsocket()
12
+ const [formState, setFormState] = useState({ loading: false, result: { error: false } })
13
+ const [{ configs }] = useConfig()
14
+
15
+ const initParams = initParamsCustom || {
16
+ clientId: configs?.apple_login_client_id?.value,
17
+ redirectURI: !window.location.origin.includes('localhost') ? `${window.location.href}login/apple/callback` : 'https://example-app.com/redirect',
18
+ response_mode: 'form_post',
19
+ response_type: 'code',
20
+ state: 'state',
21
+ scope: 'name email',
22
+ nonce: 'nonce',
23
+ usePopup: true // or true defaults to false
24
+ }
25
+
26
+ useEffect(() => {
27
+ const AppleIDSignInOnFailure = document.addEventListener('AppleIDSignInOnFailure', (error) => {
28
+ onFailure(error)
29
+ })
30
+ createScriptApple()
31
+
32
+ return () => {
33
+ document.removeEventListener('AppleIDSignInOnFailure', AppleIDSignInOnFailure)
34
+ }
35
+ }, [])
36
+
37
+ /**
38
+ * loading script of de Apple login sdk
39
+ */
40
+ const createScriptApple = () => {
41
+ if (window.document.getElementById('apple-login')) {
42
+ return
43
+ }
44
+ const js = window.document.createElement('script')
45
+ js.id = 'apple-login'
46
+ js.src =
47
+ 'https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js'
48
+ js.async = true
49
+ js.defer = true
50
+
51
+ window.document.body.appendChild(js)
52
+ }
53
+
54
+ const handleAppleLoginClick = async (data) => {
55
+ if (handleButtonAppleLoginClick) {
56
+ handleButtonAppleLoginClick(data)
57
+ return
58
+ }
59
+
60
+ try {
61
+ setFormState({ ...formState, loading: true })
62
+ const response = await fetch(`${ordering.root}/auth/apple`, {
63
+ method: 'POST',
64
+ headers: {
65
+ 'Content-Type': 'application/json',
66
+ 'X-App-X': ordering.appId,
67
+ 'X-Socket-Id-X': socket?.getId()
68
+ },
69
+ body: JSON.stringify({
70
+ code: data.code
71
+ })
72
+ })
73
+ const { result, error } = await response.json()
74
+ setFormState({
75
+ result: result,
76
+ loading: false
77
+ })
78
+ if (onSuccess && !error && result?.session) {
79
+ onSuccess(result)
80
+ } else {
81
+ if (onFailure) {
82
+ onFailure(result)
83
+ }
84
+ }
85
+ } catch (err) {
86
+ setFormState({
87
+ result: {
88
+ error: true,
89
+ result: err.message
90
+ },
91
+ loading: false
92
+ })
93
+ }
94
+ }
95
+
96
+ /**
97
+ * start Login Apple
98
+ */
99
+ const initLoginApple = () => {
100
+ window.AppleID.auth.init(initParams)
101
+
102
+ handleLoginApple()
103
+ }
104
+
105
+ /**
106
+ * handilng the response of login apple when login
107
+ */
108
+ const handleLoginApple = async () => {
109
+ try {
110
+ const data = await window.AppleID.auth.signIn()
111
+ handleAppleLoginClick(data?.authorization)
112
+ } catch (err) {
113
+ console.log('error', err)
114
+ }
115
+ }
116
+
117
+ return <>{UIComponent && <UIComponent {...props} initLoginApple={initLoginApple} />}</>
118
+ }
119
+
120
+ AppleLogin.propTypes = {
121
+ /**
122
+ * UI Component, this must be containt all graphic elements and use parent props
123
+ */
124
+ UIComponent: PropTypes.elementType,
125
+ /**
126
+ * loading script of de Apple login sdk
127
+ */
128
+ createScriptApple: PropTypes.func,
129
+ /**
130
+ * start Login Apple
131
+ */
132
+ initLoginApple: PropTypes.func,
133
+ /**
134
+ * handilng the response of login apple when login
135
+ */
136
+ handleLoginApple: PropTypes.func,
137
+ /**
138
+ * Components types before Facebook login button
139
+ * Array of type components, the parent props will pass to these components
140
+ */
141
+ beforeComponents: PropTypes.arrayOf(PropTypes.elementType),
142
+ /**
143
+ * Components types after Facebook login button
144
+ * Array of type components, the parent props will pass to these components
145
+ */
146
+ afterComponents: PropTypes.arrayOf(PropTypes.elementType),
147
+ /**
148
+ * Elements before Facebook login button
149
+ * Array of HTML/Components elements, these components will not get the parent props
150
+ */
151
+ beforeElements: PropTypes.arrayOf(PropTypes.element),
152
+ /**
153
+ * Elements after Facebook login button
154
+ * Array of HTML/Components elements, these components will not get the parent props
155
+ */
156
+ afterElements: PropTypes.arrayOf(PropTypes.element)
157
+ }
158
+
159
+ AppleLogin.defaultProps = {
160
+ beforeComponents: [],
161
+ afterComponents: [],
162
+ beforeElements: [],
163
+ afterElements: []
164
+ }