@open-tender/cloud 0.5.8 → 0.5.9

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 (283) hide show
  1. package/LICENSE.md +21 -21
  2. package/README.md +3 -3
  3. package/dist/cjs/app/hooks.d.ts +67 -67
  4. package/dist/cjs/app/hooks.js +8 -8
  5. package/dist/cjs/app/index.d.ts +2 -2
  6. package/dist/cjs/app/index.js +5 -5
  7. package/dist/cjs/app/store.d.ts +197 -197
  8. package/dist/cjs/app/store.js +65 -65
  9. package/dist/cjs/index.d.ts +5 -5
  10. package/dist/cjs/index.js +11 -11
  11. package/dist/cjs/services/api.d.ts +173 -173
  12. package/dist/cjs/services/api.js +741 -741
  13. package/dist/cjs/services/errors.d.ts +50 -50
  14. package/dist/cjs/services/errors.js +53 -53
  15. package/dist/cjs/services/index.d.ts +3 -3
  16. package/dist/cjs/services/index.js +7 -7
  17. package/dist/cjs/slices/alerts.d.ts +5 -5
  18. package/dist/cjs/slices/alerts.js +29 -29
  19. package/dist/cjs/slices/allergens.d.ts +101 -101
  20. package/dist/cjs/slices/allergens.js +83 -83
  21. package/dist/cjs/slices/announcements.d.ts +180 -180
  22. package/dist/cjs/slices/announcements.js +81 -81
  23. package/dist/cjs/slices/checkout.d.ts +69 -69
  24. package/dist/cjs/slices/checkout.js +326 -326
  25. package/dist/cjs/slices/completedOrders.d.ts +31 -31
  26. package/dist/cjs/slices/completedOrders.js +61 -61
  27. package/dist/cjs/slices/config.d.ts +317 -317
  28. package/dist/cjs/slices/config.js +195 -195
  29. package/dist/cjs/slices/confirmation.d.ts +8 -8
  30. package/dist/cjs/slices/confirmation.js +23 -23
  31. package/dist/cjs/slices/customer/account.d.ts +128 -128
  32. package/dist/cjs/slices/customer/account.js +351 -351
  33. package/dist/cjs/slices/customer/addresses.d.ts +55 -55
  34. package/dist/cjs/slices/customer/addresses.js +132 -132
  35. package/dist/cjs/slices/customer/allergens.d.ts +37 -37
  36. package/dist/cjs/slices/customer/allergens.js +94 -94
  37. package/dist/cjs/slices/customer/communicationPreferences.d.ts +69 -69
  38. package/dist/cjs/slices/customer/communicationPreferences.js +164 -164
  39. package/dist/cjs/slices/customer/creditCards.d.ts +137 -137
  40. package/dist/cjs/slices/customer/creditCards.js +170 -170
  41. package/dist/cjs/slices/customer/favorites.d.ts +68 -68
  42. package/dist/cjs/slices/customer/favorites.js +173 -173
  43. package/dist/cjs/slices/customer/fcmToken.d.ts +49 -49
  44. package/dist/cjs/slices/customer/fcmToken.js +110 -110
  45. package/dist/cjs/slices/customer/giftCards.d.ts +98 -98
  46. package/dist/cjs/slices/customer/giftCards.js +222 -222
  47. package/dist/cjs/slices/customer/groupOrders.d.ts +118 -118
  48. package/dist/cjs/slices/customer/groupOrders.js +262 -262
  49. package/dist/cjs/slices/customer/history.d.ts +23 -23
  50. package/dist/cjs/slices/customer/history.js +57 -57
  51. package/dist/cjs/slices/customer/houseAccounts.d.ts +26 -26
  52. package/dist/cjs/slices/customer/houseAccounts.js +67 -67
  53. package/dist/cjs/slices/customer/index.d.ts +42 -42
  54. package/dist/cjs/slices/customer/index.js +68 -68
  55. package/dist/cjs/slices/customer/loyalty.d.ts +251 -251
  56. package/dist/cjs/slices/customer/loyalty.js +110 -110
  57. package/dist/cjs/slices/customer/order.d.ts +116 -116
  58. package/dist/cjs/slices/customer/order.js +98 -98
  59. package/dist/cjs/slices/customer/orders.d.ts +27 -27
  60. package/dist/cjs/slices/customer/orders.js +69 -69
  61. package/dist/cjs/slices/customer/pointsShop.d.ts +35 -35
  62. package/dist/cjs/slices/customer/pointsShop.js +86 -86
  63. package/dist/cjs/slices/customer/qrCode.d.ts +23 -23
  64. package/dist/cjs/slices/customer/qrCode.js +57 -57
  65. package/dist/cjs/slices/customer/rewards.d.ts +26 -26
  66. package/dist/cjs/slices/customer/rewards.js +67 -67
  67. package/dist/cjs/slices/customer/thanx.d.ts +23 -23
  68. package/dist/cjs/slices/customer/thanx.js +56 -56
  69. package/dist/cjs/slices/customer/tpls.d.ts +238 -238
  70. package/dist/cjs/slices/customer/tpls.js +102 -102
  71. package/dist/cjs/slices/customer/tplsPointsShop.d.ts +38 -38
  72. package/dist/cjs/slices/customer/tplsPointsShop.js +88 -88
  73. package/dist/cjs/slices/deals.d.ts +25 -25
  74. package/dist/cjs/slices/deals.js +96 -96
  75. package/dist/cjs/slices/donations.d.ts +27 -27
  76. package/dist/cjs/slices/donations.js +57 -57
  77. package/dist/cjs/slices/geolocation.d.ts +11 -11
  78. package/dist/cjs/slices/geolocation.js +36 -36
  79. package/dist/cjs/slices/giftCards.d.ts +27 -27
  80. package/dist/cjs/slices/giftCards.js +58 -58
  81. package/dist/cjs/slices/groupOrder.d.ts +418 -418
  82. package/dist/cjs/slices/groupOrder.js +266 -266
  83. package/dist/cjs/slices/guest.d.ts +51 -51
  84. package/dist/cjs/slices/guest.js +91 -91
  85. package/dist/cjs/slices/index.d.ts +41 -41
  86. package/dist/cjs/slices/index.js +44 -44
  87. package/dist/cjs/slices/loader.d.ts +9 -9
  88. package/dist/cjs/slices/loader.js +25 -25
  89. package/dist/cjs/slices/menu.d.ts +31 -31
  90. package/dist/cjs/slices/menu.js +97 -97
  91. package/dist/cjs/slices/menuDisplay.d.ts +32 -32
  92. package/dist/cjs/slices/menuDisplay.js +59 -59
  93. package/dist/cjs/slices/menuItems.d.ts +26 -26
  94. package/dist/cjs/slices/menuItems.js +57 -57
  95. package/dist/cjs/slices/misc.d.ts +17 -17
  96. package/dist/cjs/slices/misc.js +51 -51
  97. package/dist/cjs/slices/modal.d.ts +5 -5
  98. package/dist/cjs/slices/modal.js +30 -30
  99. package/dist/cjs/slices/nav.d.ts +7 -7
  100. package/dist/cjs/slices/nav.js +23 -23
  101. package/dist/cjs/slices/navSite.d.ts +7 -7
  102. package/dist/cjs/slices/navSite.js +23 -23
  103. package/dist/cjs/slices/notifications.d.ts +5 -5
  104. package/dist/cjs/slices/notifications.js +27 -27
  105. package/dist/cjs/slices/oneTimePasscode.d.ts +40 -40
  106. package/dist/cjs/slices/oneTimePasscode.js +91 -91
  107. package/dist/cjs/slices/order.d.ts +372 -372
  108. package/dist/cjs/slices/order.js +528 -528
  109. package/dist/cjs/slices/orderFulfillment.d.ts +37 -37
  110. package/dist/cjs/slices/orderFulfillment.js +77 -77
  111. package/dist/cjs/slices/orderRating.d.ts +52 -52
  112. package/dist/cjs/slices/orderRating.js +105 -105
  113. package/dist/cjs/slices/posts.d.ts +24 -24
  114. package/dist/cjs/slices/posts.js +55 -55
  115. package/dist/cjs/slices/pushNotifications.d.ts +9 -9
  116. package/dist/cjs/slices/pushNotifications.js +29 -29
  117. package/dist/cjs/slices/qr.d.ts +11 -11
  118. package/dist/cjs/slices/qr.js +34 -34
  119. package/dist/cjs/slices/quote.d.ts +102 -102
  120. package/dist/cjs/slices/quote.js +65 -65
  121. package/dist/cjs/slices/resetPassword.d.ts +41 -41
  122. package/dist/cjs/slices/resetPassword.js +80 -80
  123. package/dist/cjs/slices/revenueCenters.d.ts +35 -35
  124. package/dist/cjs/slices/revenueCenters.js +95 -96
  125. package/dist/cjs/slices/sidebar.d.ts +7 -7
  126. package/dist/cjs/slices/sidebar.js +23 -23
  127. package/dist/cjs/slices/sidebarModal.d.ts +7 -7
  128. package/dist/cjs/slices/sidebarModal.js +23 -23
  129. package/dist/cjs/slices/signUp.d.ts +25 -25
  130. package/dist/cjs/slices/signUp.js +60 -60
  131. package/dist/cjs/slices/tags.d.ts +101 -101
  132. package/dist/cjs/slices/tags.js +90 -90
  133. package/dist/cjs/slices/terms.d.ts +20 -20
  134. package/dist/cjs/slices/terms.js +51 -51
  135. package/dist/cjs/slices/types.d.ts +62 -62
  136. package/dist/cjs/slices/types.js +66 -66
  137. package/dist/cjs/slices/unsubscribe.d.ts +39 -39
  138. package/dist/cjs/slices/unsubscribe.js +78 -78
  139. package/dist/cjs/slices/validTimes.d.ts +23 -23
  140. package/dist/cjs/slices/validTimes.js +57 -57
  141. package/dist/cjs/slices/verifyAccount.d.ts +23 -23
  142. package/dist/cjs/slices/verifyAccount.js +54 -54
  143. package/dist/esm/app/hooks.d.ts +67 -67
  144. package/dist/esm/app/hooks.js +4 -4
  145. package/dist/esm/app/index.d.ts +2 -2
  146. package/dist/esm/app/index.js +2 -2
  147. package/dist/esm/app/store.d.ts +197 -197
  148. package/dist/esm/app/store.js +62 -62
  149. package/dist/esm/index.d.ts +5 -5
  150. package/dist/esm/index.js +5 -5
  151. package/dist/esm/services/api.d.ts +173 -173
  152. package/dist/esm/services/api.js +739 -739
  153. package/dist/esm/services/errors.d.ts +50 -50
  154. package/dist/esm/services/errors.js +50 -50
  155. package/dist/esm/services/index.d.ts +3 -3
  156. package/dist/esm/services/index.js +3 -3
  157. package/dist/esm/slices/alerts.d.ts +5 -5
  158. package/dist/esm/slices/alerts.js +24 -24
  159. package/dist/esm/slices/allergens.d.ts +101 -101
  160. package/dist/esm/slices/allergens.js +77 -77
  161. package/dist/esm/slices/announcements.d.ts +180 -180
  162. package/dist/esm/slices/announcements.js +75 -75
  163. package/dist/esm/slices/checkout.d.ts +69 -69
  164. package/dist/esm/slices/checkout.js +318 -318
  165. package/dist/esm/slices/completedOrders.d.ts +31 -31
  166. package/dist/esm/slices/completedOrders.js +57 -57
  167. package/dist/esm/slices/config.d.ts +317 -317
  168. package/dist/esm/slices/config.js +168 -168
  169. package/dist/esm/slices/confirmation.d.ts +8 -8
  170. package/dist/esm/slices/confirmation.js +18 -18
  171. package/dist/esm/slices/customer/account.d.ts +128 -128
  172. package/dist/esm/slices/customer/account.js +344 -344
  173. package/dist/esm/slices/customer/addresses.d.ts +55 -55
  174. package/dist/esm/slices/customer/addresses.js +127 -127
  175. package/dist/esm/slices/customer/allergens.d.ts +37 -37
  176. package/dist/esm/slices/customer/allergens.js +89 -89
  177. package/dist/esm/slices/customer/communicationPreferences.d.ts +69 -69
  178. package/dist/esm/slices/customer/communicationPreferences.js +159 -159
  179. package/dist/esm/slices/customer/creditCards.d.ts +137 -137
  180. package/dist/esm/slices/customer/creditCards.js +165 -165
  181. package/dist/esm/slices/customer/favorites.d.ts +68 -68
  182. package/dist/esm/slices/customer/favorites.js +168 -168
  183. package/dist/esm/slices/customer/fcmToken.d.ts +49 -49
  184. package/dist/esm/slices/customer/fcmToken.js +106 -106
  185. package/dist/esm/slices/customer/giftCards.d.ts +98 -98
  186. package/dist/esm/slices/customer/giftCards.js +217 -217
  187. package/dist/esm/slices/customer/groupOrders.d.ts +118 -118
  188. package/dist/esm/slices/customer/groupOrders.js +256 -256
  189. package/dist/esm/slices/customer/history.d.ts +23 -23
  190. package/dist/esm/slices/customer/history.js +53 -53
  191. package/dist/esm/slices/customer/houseAccounts.d.ts +26 -26
  192. package/dist/esm/slices/customer/houseAccounts.js +62 -62
  193. package/dist/esm/slices/customer/index.d.ts +42 -42
  194. package/dist/esm/slices/customer/index.js +64 -64
  195. package/dist/esm/slices/customer/loyalty.d.ts +251 -251
  196. package/dist/esm/slices/customer/loyalty.js +102 -102
  197. package/dist/esm/slices/customer/order.d.ts +116 -116
  198. package/dist/esm/slices/customer/order.js +94 -94
  199. package/dist/esm/slices/customer/orders.d.ts +27 -27
  200. package/dist/esm/slices/customer/orders.js +63 -63
  201. package/dist/esm/slices/customer/pointsShop.d.ts +35 -35
  202. package/dist/esm/slices/customer/pointsShop.js +82 -82
  203. package/dist/esm/slices/customer/qrCode.d.ts +23 -23
  204. package/dist/esm/slices/customer/qrCode.js +53 -53
  205. package/dist/esm/slices/customer/rewards.d.ts +26 -26
  206. package/dist/esm/slices/customer/rewards.js +62 -62
  207. package/dist/esm/slices/customer/thanx.d.ts +23 -23
  208. package/dist/esm/slices/customer/thanx.js +52 -52
  209. package/dist/esm/slices/customer/tpls.d.ts +238 -238
  210. package/dist/esm/slices/customer/tpls.js +98 -98
  211. package/dist/esm/slices/customer/tplsPointsShop.d.ts +38 -38
  212. package/dist/esm/slices/customer/tplsPointsShop.js +84 -84
  213. package/dist/esm/slices/deals.d.ts +25 -25
  214. package/dist/esm/slices/deals.js +90 -90
  215. package/dist/esm/slices/donations.d.ts +27 -27
  216. package/dist/esm/slices/donations.js +53 -53
  217. package/dist/esm/slices/geolocation.d.ts +11 -11
  218. package/dist/esm/slices/geolocation.js +30 -30
  219. package/dist/esm/slices/giftCards.d.ts +27 -27
  220. package/dist/esm/slices/giftCards.js +54 -54
  221. package/dist/esm/slices/groupOrder.d.ts +418 -418
  222. package/dist/esm/slices/groupOrder.js +259 -259
  223. package/dist/esm/slices/guest.d.ts +51 -51
  224. package/dist/esm/slices/guest.js +86 -86
  225. package/dist/esm/slices/index.d.ts +41 -41
  226. package/dist/esm/slices/index.js +41 -41
  227. package/dist/esm/slices/loader.d.ts +9 -9
  228. package/dist/esm/slices/loader.js +21 -21
  229. package/dist/esm/slices/menu.d.ts +31 -31
  230. package/dist/esm/slices/menu.js +90 -90
  231. package/dist/esm/slices/menuDisplay.d.ts +32 -32
  232. package/dist/esm/slices/menuDisplay.js +55 -55
  233. package/dist/esm/slices/menuItems.d.ts +26 -26
  234. package/dist/esm/slices/menuItems.js +52 -52
  235. package/dist/esm/slices/misc.d.ts +17 -17
  236. package/dist/esm/slices/misc.js +41 -41
  237. package/dist/esm/slices/modal.d.ts +5 -5
  238. package/dist/esm/slices/modal.js +25 -25
  239. package/dist/esm/slices/nav.d.ts +7 -7
  240. package/dist/esm/slices/nav.js +19 -19
  241. package/dist/esm/slices/navSite.d.ts +7 -7
  242. package/dist/esm/slices/navSite.js +19 -19
  243. package/dist/esm/slices/notifications.d.ts +5 -5
  244. package/dist/esm/slices/notifications.js +22 -22
  245. package/dist/esm/slices/oneTimePasscode.d.ts +40 -40
  246. package/dist/esm/slices/oneTimePasscode.js +86 -86
  247. package/dist/esm/slices/order.d.ts +372 -372
  248. package/dist/esm/slices/order.js +508 -508
  249. package/dist/esm/slices/orderFulfillment.d.ts +37 -37
  250. package/dist/esm/slices/orderFulfillment.js +73 -73
  251. package/dist/esm/slices/orderRating.d.ts +52 -52
  252. package/dist/esm/slices/orderRating.js +101 -101
  253. package/dist/esm/slices/posts.d.ts +24 -24
  254. package/dist/esm/slices/posts.js +51 -51
  255. package/dist/esm/slices/pushNotifications.d.ts +9 -9
  256. package/dist/esm/slices/pushNotifications.js +23 -23
  257. package/dist/esm/slices/qr.d.ts +11 -11
  258. package/dist/esm/slices/qr.js +29 -29
  259. package/dist/esm/slices/quote.d.ts +102 -102
  260. package/dist/esm/slices/quote.js +61 -61
  261. package/dist/esm/slices/resetPassword.d.ts +41 -41
  262. package/dist/esm/slices/resetPassword.js +76 -76
  263. package/dist/esm/slices/revenueCenters.d.ts +35 -35
  264. package/dist/esm/slices/revenueCenters.js +89 -90
  265. package/dist/esm/slices/sidebar.d.ts +7 -7
  266. package/dist/esm/slices/sidebar.js +19 -19
  267. package/dist/esm/slices/sidebarModal.d.ts +7 -7
  268. package/dist/esm/slices/sidebarModal.js +19 -19
  269. package/dist/esm/slices/signUp.d.ts +25 -25
  270. package/dist/esm/slices/signUp.js +56 -56
  271. package/dist/esm/slices/tags.d.ts +101 -101
  272. package/dist/esm/slices/tags.js +84 -84
  273. package/dist/esm/slices/terms.d.ts +20 -20
  274. package/dist/esm/slices/terms.js +47 -47
  275. package/dist/esm/slices/types.d.ts +62 -62
  276. package/dist/esm/slices/types.js +63 -63
  277. package/dist/esm/slices/unsubscribe.d.ts +39 -39
  278. package/dist/esm/slices/unsubscribe.js +74 -74
  279. package/dist/esm/slices/validTimes.d.ts +23 -23
  280. package/dist/esm/slices/validTimes.js +52 -52
  281. package/dist/esm/slices/verifyAccount.d.ts +23 -23
  282. package/dist/esm/slices/verifyAccount.js +50 -50
  283. package/package.json +61 -61
@@ -1,351 +1,351 @@
1
- "use strict";
2
- var _a;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.accountReducer = exports.selectCustomer = exports.selectToken = exports.setCustomerAuth = exports.resetLoginError = exports.resetCustomer = exports.deleteCustomer = exports.authCustomerThanx = exports.loginCustomerThanx = exports.sendCustomerVerificationEmail = exports.updateCustomer = exports.linkPosToken = exports.logoutCustomer = exports.loginCustomer = exports.fetchCustomer = exports.checkAuth = exports.AccountActionType = void 0;
5
- const tslib_1 = require("tslib");
6
- const toolkit_1 = require("@reduxjs/toolkit");
7
- const types_1 = require("../types");
8
- const types_2 = require("@open-tender/types");
9
- const utils_1 = require("@open-tender/utils");
10
- const notifications_1 = require("../notifications");
11
- const allergens_1 = require("./allergens");
12
- const allergens_2 = require("../allergens");
13
- const favorites_1 = require("./favorites");
14
- const creditCards_1 = require("./creditCards");
15
- const addresses_1 = require("./addresses");
16
- const houseAccounts_1 = require("./houseAccounts");
17
- const loyalty_1 = require("./loyalty");
18
- const order_1 = require("./order");
19
- const orders_1 = require("./orders");
20
- const rewards_1 = require("./rewards");
21
- const communicationPreferences_1 = require("./communicationPreferences");
22
- const giftCards_1 = require("./giftCards");
23
- const order_2 = require("../order");
24
- const checkout_1 = require("../checkout");
25
- const groupOrder_1 = require("../groupOrder");
26
- const guest_1 = require("../guest");
27
- const tpls_1 = require("./tpls");
28
- const initialState = {
29
- auth: null,
30
- profile: null,
31
- loading: 'idle',
32
- error: null
33
- };
34
- var AccountActionType;
35
- (function (AccountActionType) {
36
- AccountActionType["LoginCustomer"] = "customer/loginCustomer";
37
- AccountActionType["LogoutCustomer"] = "customer/logoutCustomer";
38
- AccountActionType["FetchCustomer"] = "customer/fetchCustomer";
39
- AccountActionType["UpdateCustomer"] = "customer/updateCustomer";
40
- AccountActionType["VerifyCustomer"] = "customer/verifyCustomer";
41
- AccountActionType["LinkPosToken"] = "customer/linkPosToken";
42
- AccountActionType["DeleteCustomer"] = "customer/deleteCustomer";
43
- AccountActionType["LoginCustomerThanx"] = "customer/loginCustomerThanx";
44
- AccountActionType["AuthCustomerThanx"] = "customer/authCustomerThanx";
45
- })(AccountActionType = exports.AccountActionType || (exports.AccountActionType = {}));
46
- const checkAuth = (err, dispatch, rejectWithValue) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
47
- if ((err === null || err === void 0 ? void 0 : err.status) === 401) {
48
- yield dispatch((0, exports.logoutCustomer)());
49
- dispatch((0, order_2.addMessage)('Please login to reauthenticate your account'));
50
- return null;
51
- }
52
- else {
53
- return rejectWithValue();
54
- }
55
- });
56
- exports.checkAuth = checkAuth;
57
- exports.fetchCustomer = (0, toolkit_1.createAsyncThunk)(AccountActionType.FetchCustomer,
58
- // eslint-disable-next-line no-unused-vars
59
- (_, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
60
- try {
61
- const api = getState().config.api;
62
- const token = (0, exports.selectToken)(getState());
63
- if (!token)
64
- throw new Error(types_2.MISSING_CUSTOMER);
65
- const customer = yield api.getCustomer(token);
66
- const { allergens, gift_cards, favorites } = customer;
67
- dispatch((0, allergens_1.setCustomerAllergens)(allergens || []));
68
- dispatch((0, allergens_2.setSelectedAllergens)(allergens || []));
69
- dispatch((0, giftCards_1.setCustomerGiftCards)(gift_cards || []));
70
- dispatch((0, favorites_1.setCustomerFavorites)(favorites || []));
71
- const lookup = (0, utils_1.makeFavoritesLookup)(favorites);
72
- dispatch((0, favorites_1.setCustomerFavoritesLookup)(lookup || {}));
73
- const profile = (0, utils_1.makeCustomerProfile)(customer);
74
- return profile;
75
- }
76
- catch (err) {
77
- const error = err;
78
- return (0, exports.checkAuth)(error, dispatch, () => rejectWithValue(error));
79
- }
80
- }));
81
- exports.loginCustomer = (0, toolkit_1.createAsyncThunk)(AccountActionType.LoginCustomer, ({ email, password }, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
82
- try {
83
- const api = getState().config.api;
84
- const auth = yield api.postLogin(email, password);
85
- dispatch((0, exports.setCustomerAuth)(auth));
86
- yield dispatch((0, exports.fetchCustomer)());
87
- return;
88
- }
89
- catch (err) {
90
- return rejectWithValue(err);
91
- }
92
- }));
93
- exports.logoutCustomer = (0, toolkit_1.createAsyncThunk)(AccountActionType.LogoutCustomer, (isReset, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
94
- try {
95
- const { api } = getState().config;
96
- const token = (0, exports.selectToken)(getState());
97
- if (!token)
98
- throw new Error(undefined);
99
- if (isReset) {
100
- dispatch((0, order_2.resetOrder)());
101
- dispatch((0, checkout_1.resetCheckout)());
102
- dispatch((0, allergens_2.setSelectedAllergens)(null));
103
- }
104
- yield api.postLogout(token);
105
- dispatch((0, checkout_1.updateCheckoutCustomer)(null));
106
- dispatch((0, addresses_1.resetCustomerAddresses)());
107
- dispatch((0, allergens_1.resetCustomerAllergens)());
108
- dispatch((0, creditCards_1.resetCustomerCreditCards)());
109
- dispatch((0, favorites_1.resetCustomerFavorites)());
110
- dispatch((0, giftCards_1.resetCustomerGiftCards)());
111
- dispatch((0, houseAccounts_1.resetCustomerHouseAccounts)());
112
- dispatch((0, loyalty_1.resetCustomerLoyalty)());
113
- dispatch((0, order_1.resetCustomerOrder)());
114
- dispatch((0, orders_1.resetCustomerOrders)());
115
- dispatch((0, groupOrder_1.resetGroupOrder)());
116
- dispatch((0, rewards_1.resetCustomerRewards)());
117
- dispatch((0, communicationPreferences_1.resetCustomerCommunicationPreferences)());
118
- dispatch((0, guest_1.resetGuest)());
119
- dispatch((0, tpls_1.resetCustomerTpls)());
120
- return null;
121
- }
122
- catch (err) {
123
- return rejectWithValue(err);
124
- }
125
- }));
126
- exports.linkPosToken = (0, toolkit_1.createAsyncThunk)(AccountActionType.LinkPosToken, (posToken, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
127
- try {
128
- const api = getState().config.api;
129
- const token = (0, exports.selectToken)(getState());
130
- if (!token)
131
- throw new Error(types_2.MISSING_CUSTOMER);
132
- yield api.postCustomerPosToken(token, posToken);
133
- dispatch((0, notifications_1.showNotification)('Order successfully linked!'));
134
- dispatch((0, exports.fetchCustomer)());
135
- return;
136
- }
137
- catch (err) {
138
- const error = err;
139
- dispatch((0, order_2.addMessage)((error === null || error === void 0 ? void 0 : error.detail) || (error === null || error === void 0 ? void 0 : error.message)));
140
- return rejectWithValue(error);
141
- }
142
- }));
143
- exports.updateCustomer = (0, toolkit_1.createAsyncThunk)(AccountActionType.UpdateCustomer, ({ data, callback }, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
144
- try {
145
- const token = (0, exports.selectToken)(getState());
146
- const api = getState().config.api;
147
- if (!token)
148
- throw new Error(types_2.MISSING_CUSTOMER);
149
- const customer = yield api.putCustomer(token, data);
150
- const profile = (0, utils_1.makeCustomerProfile)(customer);
151
- dispatch((0, notifications_1.showNotification)('Account updated!'));
152
- if (callback)
153
- callback(data);
154
- return profile;
155
- }
156
- catch (err) {
157
- const error = err;
158
- return (0, exports.checkAuth)(error, dispatch, () => rejectWithValue(error));
159
- }
160
- }));
161
- exports.sendCustomerVerificationEmail = (0, toolkit_1.createAsyncThunk)(AccountActionType.VerifyCustomer, (linkUrl, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
162
- try {
163
- const api = getState().config.api;
164
- const token = (0, exports.selectToken)(getState());
165
- if (!token) {
166
- dispatch((0, order_2.addMessage)('Missing customer token'));
167
- throw new Error(types_2.MISSING_CUSTOMER_TOKEN);
168
- }
169
- yield api.postSendVerificationEmail(token, linkUrl);
170
- dispatch((0, notifications_1.showNotification)('Verification email sent!'));
171
- return;
172
- }
173
- catch (err) {
174
- dispatch((0, order_2.addMessage)(err.detail || err.message));
175
- return rejectWithValue(err);
176
- }
177
- }));
178
- exports.loginCustomerThanx = (0, toolkit_1.createAsyncThunk)(AccountActionType.LoginCustomerThanx, ({ email, origin }, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
179
- try {
180
- const api = getState().config.api;
181
- yield api.postThanxLogin(email, origin);
182
- dispatch((0, order_2.setAlert)({ type: 'close' }));
183
- dispatch((0, order_2.addMessage)('Thanks! Please check your email on this device.'));
184
- return;
185
- }
186
- catch (err) {
187
- const errr = err;
188
- if (errr) {
189
- const error = (errr === null || errr === void 0 ? void 0 : errr.params) ? errr.params['$.email'] : null;
190
- if (error && error.includes("'email'")) {
191
- errr.detail = 'Please enter a valid email address';
192
- }
193
- }
194
- return rejectWithValue(errr);
195
- }
196
- }));
197
- exports.authCustomerThanx = (0, toolkit_1.createAsyncThunk)(AccountActionType.AuthCustomerThanx, (data, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
198
- try {
199
- const api = getState().config.api;
200
- const auth = yield api.postThanxAuth(data.code, data.path, data.origin);
201
- dispatch((0, exports.setCustomerAuth)(auth));
202
- yield dispatch((0, exports.fetchCustomer)());
203
- return;
204
- }
205
- catch (err) {
206
- return rejectWithValue(err);
207
- }
208
- }));
209
- exports.deleteCustomer = (0, toolkit_1.createAsyncThunk)(AccountActionType.DeleteCustomer, ({ data, callback }, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
210
- try {
211
- const token = (0, exports.selectToken)(getState());
212
- const api = getState().config.api;
213
- if (!token)
214
- throw new Error(types_2.MISSING_CUSTOMER);
215
- yield api.deleteCustomer(token);
216
- yield api.postLogout(token);
217
- dispatch((0, checkout_1.updateCheckoutCustomer)(null));
218
- dispatch((0, addresses_1.resetCustomerAddresses)());
219
- dispatch((0, allergens_1.resetCustomerAllergens)());
220
- dispatch((0, creditCards_1.resetCustomerCreditCards)());
221
- dispatch((0, favorites_1.resetCustomerFavorites)());
222
- dispatch((0, giftCards_1.resetCustomerGiftCards)());
223
- dispatch((0, houseAccounts_1.resetCustomerHouseAccounts)());
224
- dispatch((0, loyalty_1.resetCustomerLoyalty)());
225
- dispatch((0, order_1.resetCustomerOrder)());
226
- dispatch((0, orders_1.resetCustomerOrders)());
227
- dispatch((0, groupOrder_1.resetGroupOrder)());
228
- dispatch((0, rewards_1.resetCustomerRewards)());
229
- dispatch((0, communicationPreferences_1.resetCustomerCommunicationPreferences)());
230
- dispatch((0, guest_1.resetGuest)());
231
- dispatch((0, notifications_1.showNotification)('Account deleted!'));
232
- if (callback)
233
- callback(data);
234
- return;
235
- }
236
- catch (err) {
237
- const error = err;
238
- return (0, exports.checkAuth)(error, dispatch, () => rejectWithValue(error));
239
- }
240
- }));
241
- const accountSlice = (0, toolkit_1.createSlice)({
242
- name: types_1.ReducerType.Account,
243
- initialState,
244
- reducers: {
245
- resetCustomer: () => initialState,
246
- resetLoginError: state => {
247
- state.loading = 'idle';
248
- state.error = null;
249
- },
250
- setCustomerAuth: (state, action) => {
251
- state.auth = action.payload;
252
- // state.loading = 'idle'
253
- // state.error = null
254
- }
255
- },
256
- extraReducers: builder => {
257
- builder
258
- .addCase(exports.loginCustomer.fulfilled, state => {
259
- // state.auth = action.payload
260
- state.loading = 'idle';
261
- state.error = null;
262
- })
263
- .addCase(exports.loginCustomer.pending, state => {
264
- state.loading = 'pending';
265
- })
266
- .addCase(exports.loginCustomer.rejected, (state, action) => {
267
- state.loading = 'idle';
268
- state.error = action.payload;
269
- })
270
- .addCase(exports.fetchCustomer.fulfilled, (state, action) => {
271
- state.profile = action.payload;
272
- state.loading = 'idle';
273
- state.error = null;
274
- })
275
- .addCase(exports.fetchCustomer.pending, state => {
276
- state.loading = 'pending';
277
- })
278
- .addCase(exports.fetchCustomer.rejected, (state, action) => {
279
- state.loading = 'idle';
280
- state.error = action.payload;
281
- })
282
- .addCase(exports.updateCustomer.fulfilled, (state, action) => {
283
- state.profile = action.payload;
284
- state.loading = 'idle';
285
- state.error = null;
286
- })
287
- .addCase(exports.updateCustomer.pending, state => {
288
- state.loading = 'pending';
289
- })
290
- .addCase(exports.updateCustomer.rejected, (state, action) => {
291
- state.loading = 'idle';
292
- state.error = action.payload;
293
- })
294
- .addCase(exports.logoutCustomer.fulfilled, () => initialState)
295
- .addCase(exports.logoutCustomer.pending, state => {
296
- state.loading = 'pending';
297
- })
298
- .addCase(exports.logoutCustomer.rejected, () => initialState)
299
- .addCase(exports.sendCustomerVerificationEmail.fulfilled, state => {
300
- state.loading = 'idle';
301
- })
302
- .addCase(exports.sendCustomerVerificationEmail.pending, state => {
303
- state.loading = 'pending';
304
- })
305
- .addCase(exports.sendCustomerVerificationEmail.rejected, state => {
306
- state.loading = 'idle';
307
- })
308
- .addCase(exports.linkPosToken.fulfilled, () => {
309
- //do nothing
310
- })
311
- .addCase(exports.linkPosToken.pending, () => {
312
- //do nothing
313
- })
314
- .addCase(exports.linkPosToken.rejected, () => {
315
- //do nothing
316
- })
317
- .addCase(exports.deleteCustomer.fulfilled, () => initialState)
318
- .addCase(exports.deleteCustomer.pending, state => {
319
- state.loading = 'pending';
320
- })
321
- .addCase(exports.deleteCustomer.rejected, () => initialState)
322
- .addCase(exports.loginCustomerThanx.fulfilled, state => {
323
- state.loading = 'idle';
324
- state.error = null;
325
- })
326
- .addCase(exports.loginCustomerThanx.pending, state => {
327
- state.loading = 'pending';
328
- })
329
- .addCase(exports.loginCustomerThanx.rejected, (state, action) => {
330
- state.loading = 'idle';
331
- state.error = action.payload;
332
- })
333
- .addCase(exports.authCustomerThanx.fulfilled, state => {
334
- state.loading = 'idle';
335
- state.error = null;
336
- })
337
- .addCase(exports.authCustomerThanx.pending, state => {
338
- state.loading = 'pending';
339
- })
340
- .addCase(exports.authCustomerThanx.rejected, (state, action) => {
341
- state.loading = 'idle';
342
- state.error = action.payload;
343
- });
344
- }
345
- });
346
- _a = accountSlice.actions, exports.resetCustomer = _a.resetCustomer, exports.resetLoginError = _a.resetLoginError, exports.setCustomerAuth = _a.setCustomerAuth;
347
- const selectToken = (state) => state.customer.account.auth ? state.customer.account.auth.access_token : null;
348
- exports.selectToken = selectToken;
349
- const selectCustomer = (state) => state.customer.account;
350
- exports.selectCustomer = selectCustomer;
351
- exports.accountReducer = accountSlice.reducer;
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.accountReducer = exports.selectCustomer = exports.selectToken = exports.setCustomerAuth = exports.resetLoginError = exports.resetCustomer = exports.deleteCustomer = exports.authCustomerThanx = exports.loginCustomerThanx = exports.sendCustomerVerificationEmail = exports.updateCustomer = exports.linkPosToken = exports.logoutCustomer = exports.loginCustomer = exports.fetchCustomer = exports.checkAuth = exports.AccountActionType = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const toolkit_1 = require("@reduxjs/toolkit");
7
+ const types_1 = require("../types");
8
+ const types_2 = require("@open-tender/types");
9
+ const utils_1 = require("@open-tender/utils");
10
+ const notifications_1 = require("../notifications");
11
+ const allergens_1 = require("./allergens");
12
+ const allergens_2 = require("../allergens");
13
+ const favorites_1 = require("./favorites");
14
+ const creditCards_1 = require("./creditCards");
15
+ const addresses_1 = require("./addresses");
16
+ const houseAccounts_1 = require("./houseAccounts");
17
+ const loyalty_1 = require("./loyalty");
18
+ const order_1 = require("./order");
19
+ const orders_1 = require("./orders");
20
+ const rewards_1 = require("./rewards");
21
+ const communicationPreferences_1 = require("./communicationPreferences");
22
+ const giftCards_1 = require("./giftCards");
23
+ const order_2 = require("../order");
24
+ const checkout_1 = require("../checkout");
25
+ const groupOrder_1 = require("../groupOrder");
26
+ const guest_1 = require("../guest");
27
+ const tpls_1 = require("./tpls");
28
+ const initialState = {
29
+ auth: null,
30
+ profile: null,
31
+ loading: 'idle',
32
+ error: null
33
+ };
34
+ var AccountActionType;
35
+ (function (AccountActionType) {
36
+ AccountActionType["LoginCustomer"] = "customer/loginCustomer";
37
+ AccountActionType["LogoutCustomer"] = "customer/logoutCustomer";
38
+ AccountActionType["FetchCustomer"] = "customer/fetchCustomer";
39
+ AccountActionType["UpdateCustomer"] = "customer/updateCustomer";
40
+ AccountActionType["VerifyCustomer"] = "customer/verifyCustomer";
41
+ AccountActionType["LinkPosToken"] = "customer/linkPosToken";
42
+ AccountActionType["DeleteCustomer"] = "customer/deleteCustomer";
43
+ AccountActionType["LoginCustomerThanx"] = "customer/loginCustomerThanx";
44
+ AccountActionType["AuthCustomerThanx"] = "customer/authCustomerThanx";
45
+ })(AccountActionType = exports.AccountActionType || (exports.AccountActionType = {}));
46
+ const checkAuth = (err, dispatch, rejectWithValue) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
47
+ if ((err === null || err === void 0 ? void 0 : err.status) === 401) {
48
+ yield dispatch((0, exports.logoutCustomer)());
49
+ dispatch((0, order_2.addMessage)('Please login to reauthenticate your account'));
50
+ return null;
51
+ }
52
+ else {
53
+ return rejectWithValue();
54
+ }
55
+ });
56
+ exports.checkAuth = checkAuth;
57
+ exports.fetchCustomer = (0, toolkit_1.createAsyncThunk)(AccountActionType.FetchCustomer,
58
+ // eslint-disable-next-line no-unused-vars
59
+ (_, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
60
+ try {
61
+ const api = getState().config.api;
62
+ const token = (0, exports.selectToken)(getState());
63
+ if (!token)
64
+ throw new Error(types_2.MISSING_CUSTOMER);
65
+ const customer = yield api.getCustomer(token);
66
+ const { allergens, gift_cards, favorites } = customer;
67
+ dispatch((0, allergens_1.setCustomerAllergens)(allergens || []));
68
+ dispatch((0, allergens_2.setSelectedAllergens)(allergens || []));
69
+ dispatch((0, giftCards_1.setCustomerGiftCards)(gift_cards || []));
70
+ dispatch((0, favorites_1.setCustomerFavorites)(favorites || []));
71
+ const lookup = (0, utils_1.makeFavoritesLookup)(favorites);
72
+ dispatch((0, favorites_1.setCustomerFavoritesLookup)(lookup || {}));
73
+ const profile = (0, utils_1.makeCustomerProfile)(customer);
74
+ return profile;
75
+ }
76
+ catch (err) {
77
+ const error = err;
78
+ return (0, exports.checkAuth)(error, dispatch, () => rejectWithValue(error));
79
+ }
80
+ }));
81
+ exports.loginCustomer = (0, toolkit_1.createAsyncThunk)(AccountActionType.LoginCustomer, ({ email, password }, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
82
+ try {
83
+ const api = getState().config.api;
84
+ const auth = yield api.postLogin(email, password);
85
+ dispatch((0, exports.setCustomerAuth)(auth));
86
+ yield dispatch((0, exports.fetchCustomer)());
87
+ return;
88
+ }
89
+ catch (err) {
90
+ return rejectWithValue(err);
91
+ }
92
+ }));
93
+ exports.logoutCustomer = (0, toolkit_1.createAsyncThunk)(AccountActionType.LogoutCustomer, (isReset, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
94
+ try {
95
+ const { api } = getState().config;
96
+ const token = (0, exports.selectToken)(getState());
97
+ if (!token)
98
+ throw new Error(undefined);
99
+ if (isReset) {
100
+ dispatch((0, order_2.resetOrder)());
101
+ dispatch((0, checkout_1.resetCheckout)());
102
+ dispatch((0, allergens_2.setSelectedAllergens)(null));
103
+ }
104
+ yield api.postLogout(token);
105
+ dispatch((0, checkout_1.updateCheckoutCustomer)(null));
106
+ dispatch((0, addresses_1.resetCustomerAddresses)());
107
+ dispatch((0, allergens_1.resetCustomerAllergens)());
108
+ dispatch((0, creditCards_1.resetCustomerCreditCards)());
109
+ dispatch((0, favorites_1.resetCustomerFavorites)());
110
+ dispatch((0, giftCards_1.resetCustomerGiftCards)());
111
+ dispatch((0, houseAccounts_1.resetCustomerHouseAccounts)());
112
+ dispatch((0, loyalty_1.resetCustomerLoyalty)());
113
+ dispatch((0, order_1.resetCustomerOrder)());
114
+ dispatch((0, orders_1.resetCustomerOrders)());
115
+ dispatch((0, groupOrder_1.resetGroupOrder)());
116
+ dispatch((0, rewards_1.resetCustomerRewards)());
117
+ dispatch((0, communicationPreferences_1.resetCustomerCommunicationPreferences)());
118
+ dispatch((0, guest_1.resetGuest)());
119
+ dispatch((0, tpls_1.resetCustomerTpls)());
120
+ return null;
121
+ }
122
+ catch (err) {
123
+ return rejectWithValue(err);
124
+ }
125
+ }));
126
+ exports.linkPosToken = (0, toolkit_1.createAsyncThunk)(AccountActionType.LinkPosToken, (posToken, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
127
+ try {
128
+ const api = getState().config.api;
129
+ const token = (0, exports.selectToken)(getState());
130
+ if (!token)
131
+ throw new Error(types_2.MISSING_CUSTOMER);
132
+ yield api.postCustomerPosToken(token, posToken);
133
+ dispatch((0, notifications_1.showNotification)('Order successfully linked!'));
134
+ dispatch((0, exports.fetchCustomer)());
135
+ return;
136
+ }
137
+ catch (err) {
138
+ const error = err;
139
+ dispatch((0, order_2.addMessage)((error === null || error === void 0 ? void 0 : error.detail) || (error === null || error === void 0 ? void 0 : error.message)));
140
+ return rejectWithValue(error);
141
+ }
142
+ }));
143
+ exports.updateCustomer = (0, toolkit_1.createAsyncThunk)(AccountActionType.UpdateCustomer, ({ data, callback }, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
144
+ try {
145
+ const token = (0, exports.selectToken)(getState());
146
+ const api = getState().config.api;
147
+ if (!token)
148
+ throw new Error(types_2.MISSING_CUSTOMER);
149
+ const customer = yield api.putCustomer(token, data);
150
+ const profile = (0, utils_1.makeCustomerProfile)(customer);
151
+ dispatch((0, notifications_1.showNotification)('Account updated!'));
152
+ if (callback)
153
+ callback(data);
154
+ return profile;
155
+ }
156
+ catch (err) {
157
+ const error = err;
158
+ return (0, exports.checkAuth)(error, dispatch, () => rejectWithValue(error));
159
+ }
160
+ }));
161
+ exports.sendCustomerVerificationEmail = (0, toolkit_1.createAsyncThunk)(AccountActionType.VerifyCustomer, (linkUrl, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
162
+ try {
163
+ const api = getState().config.api;
164
+ const token = (0, exports.selectToken)(getState());
165
+ if (!token) {
166
+ dispatch((0, order_2.addMessage)('Missing customer token'));
167
+ throw new Error(types_2.MISSING_CUSTOMER_TOKEN);
168
+ }
169
+ yield api.postSendVerificationEmail(token, linkUrl);
170
+ dispatch((0, notifications_1.showNotification)('Verification email sent!'));
171
+ return;
172
+ }
173
+ catch (err) {
174
+ dispatch((0, order_2.addMessage)(err.detail || err.message));
175
+ return rejectWithValue(err);
176
+ }
177
+ }));
178
+ exports.loginCustomerThanx = (0, toolkit_1.createAsyncThunk)(AccountActionType.LoginCustomerThanx, ({ email, origin }, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
179
+ try {
180
+ const api = getState().config.api;
181
+ yield api.postThanxLogin(email, origin);
182
+ dispatch((0, order_2.setAlert)({ type: 'close' }));
183
+ dispatch((0, order_2.addMessage)('Thanks! Please check your email on this device.'));
184
+ return;
185
+ }
186
+ catch (err) {
187
+ const errr = err;
188
+ if (errr) {
189
+ const error = (errr === null || errr === void 0 ? void 0 : errr.params) ? errr.params['$.email'] : null;
190
+ if (error && error.includes("'email'")) {
191
+ errr.detail = 'Please enter a valid email address';
192
+ }
193
+ }
194
+ return rejectWithValue(errr);
195
+ }
196
+ }));
197
+ exports.authCustomerThanx = (0, toolkit_1.createAsyncThunk)(AccountActionType.AuthCustomerThanx, (data, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
198
+ try {
199
+ const api = getState().config.api;
200
+ const auth = yield api.postThanxAuth(data.code, data.path, data.origin);
201
+ dispatch((0, exports.setCustomerAuth)(auth));
202
+ yield dispatch((0, exports.fetchCustomer)());
203
+ return;
204
+ }
205
+ catch (err) {
206
+ return rejectWithValue(err);
207
+ }
208
+ }));
209
+ exports.deleteCustomer = (0, toolkit_1.createAsyncThunk)(AccountActionType.DeleteCustomer, ({ data, callback }, { dispatch, getState, rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
210
+ try {
211
+ const token = (0, exports.selectToken)(getState());
212
+ const api = getState().config.api;
213
+ if (!token)
214
+ throw new Error(types_2.MISSING_CUSTOMER);
215
+ yield api.deleteCustomer(token);
216
+ yield api.postLogout(token);
217
+ dispatch((0, checkout_1.updateCheckoutCustomer)(null));
218
+ dispatch((0, addresses_1.resetCustomerAddresses)());
219
+ dispatch((0, allergens_1.resetCustomerAllergens)());
220
+ dispatch((0, creditCards_1.resetCustomerCreditCards)());
221
+ dispatch((0, favorites_1.resetCustomerFavorites)());
222
+ dispatch((0, giftCards_1.resetCustomerGiftCards)());
223
+ dispatch((0, houseAccounts_1.resetCustomerHouseAccounts)());
224
+ dispatch((0, loyalty_1.resetCustomerLoyalty)());
225
+ dispatch((0, order_1.resetCustomerOrder)());
226
+ dispatch((0, orders_1.resetCustomerOrders)());
227
+ dispatch((0, groupOrder_1.resetGroupOrder)());
228
+ dispatch((0, rewards_1.resetCustomerRewards)());
229
+ dispatch((0, communicationPreferences_1.resetCustomerCommunicationPreferences)());
230
+ dispatch((0, guest_1.resetGuest)());
231
+ dispatch((0, notifications_1.showNotification)('Account deleted!'));
232
+ if (callback)
233
+ callback(data);
234
+ return;
235
+ }
236
+ catch (err) {
237
+ const error = err;
238
+ return (0, exports.checkAuth)(error, dispatch, () => rejectWithValue(error));
239
+ }
240
+ }));
241
+ const accountSlice = (0, toolkit_1.createSlice)({
242
+ name: types_1.ReducerType.Account,
243
+ initialState,
244
+ reducers: {
245
+ resetCustomer: () => initialState,
246
+ resetLoginError: state => {
247
+ state.loading = 'idle';
248
+ state.error = null;
249
+ },
250
+ setCustomerAuth: (state, action) => {
251
+ state.auth = action.payload;
252
+ // state.loading = 'idle'
253
+ // state.error = null
254
+ }
255
+ },
256
+ extraReducers: builder => {
257
+ builder
258
+ .addCase(exports.loginCustomer.fulfilled, state => {
259
+ // state.auth = action.payload
260
+ state.loading = 'idle';
261
+ state.error = null;
262
+ })
263
+ .addCase(exports.loginCustomer.pending, state => {
264
+ state.loading = 'pending';
265
+ })
266
+ .addCase(exports.loginCustomer.rejected, (state, action) => {
267
+ state.loading = 'idle';
268
+ state.error = action.payload;
269
+ })
270
+ .addCase(exports.fetchCustomer.fulfilled, (state, action) => {
271
+ state.profile = action.payload;
272
+ state.loading = 'idle';
273
+ state.error = null;
274
+ })
275
+ .addCase(exports.fetchCustomer.pending, state => {
276
+ state.loading = 'pending';
277
+ })
278
+ .addCase(exports.fetchCustomer.rejected, (state, action) => {
279
+ state.loading = 'idle';
280
+ state.error = action.payload;
281
+ })
282
+ .addCase(exports.updateCustomer.fulfilled, (state, action) => {
283
+ state.profile = action.payload;
284
+ state.loading = 'idle';
285
+ state.error = null;
286
+ })
287
+ .addCase(exports.updateCustomer.pending, state => {
288
+ state.loading = 'pending';
289
+ })
290
+ .addCase(exports.updateCustomer.rejected, (state, action) => {
291
+ state.loading = 'idle';
292
+ state.error = action.payload;
293
+ })
294
+ .addCase(exports.logoutCustomer.fulfilled, () => initialState)
295
+ .addCase(exports.logoutCustomer.pending, state => {
296
+ state.loading = 'pending';
297
+ })
298
+ .addCase(exports.logoutCustomer.rejected, () => initialState)
299
+ .addCase(exports.sendCustomerVerificationEmail.fulfilled, state => {
300
+ state.loading = 'idle';
301
+ })
302
+ .addCase(exports.sendCustomerVerificationEmail.pending, state => {
303
+ state.loading = 'pending';
304
+ })
305
+ .addCase(exports.sendCustomerVerificationEmail.rejected, state => {
306
+ state.loading = 'idle';
307
+ })
308
+ .addCase(exports.linkPosToken.fulfilled, () => {
309
+ //do nothing
310
+ })
311
+ .addCase(exports.linkPosToken.pending, () => {
312
+ //do nothing
313
+ })
314
+ .addCase(exports.linkPosToken.rejected, () => {
315
+ //do nothing
316
+ })
317
+ .addCase(exports.deleteCustomer.fulfilled, () => initialState)
318
+ .addCase(exports.deleteCustomer.pending, state => {
319
+ state.loading = 'pending';
320
+ })
321
+ .addCase(exports.deleteCustomer.rejected, () => initialState)
322
+ .addCase(exports.loginCustomerThanx.fulfilled, state => {
323
+ state.loading = 'idle';
324
+ state.error = null;
325
+ })
326
+ .addCase(exports.loginCustomerThanx.pending, state => {
327
+ state.loading = 'pending';
328
+ })
329
+ .addCase(exports.loginCustomerThanx.rejected, (state, action) => {
330
+ state.loading = 'idle';
331
+ state.error = action.payload;
332
+ })
333
+ .addCase(exports.authCustomerThanx.fulfilled, state => {
334
+ state.loading = 'idle';
335
+ state.error = null;
336
+ })
337
+ .addCase(exports.authCustomerThanx.pending, state => {
338
+ state.loading = 'pending';
339
+ })
340
+ .addCase(exports.authCustomerThanx.rejected, (state, action) => {
341
+ state.loading = 'idle';
342
+ state.error = action.payload;
343
+ });
344
+ }
345
+ });
346
+ _a = accountSlice.actions, exports.resetCustomer = _a.resetCustomer, exports.resetLoginError = _a.resetLoginError, exports.setCustomerAuth = _a.setCustomerAuth;
347
+ const selectToken = (state) => state.customer.account.auth ? state.customer.account.auth.access_token : null;
348
+ exports.selectToken = selectToken;
349
+ const selectCustomer = (state) => state.customer.account;
350
+ exports.selectCustomer = selectCustomer;
351
+ exports.accountReducer = accountSlice.reducer;