@open-tender/cloud 0.5.7 → 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 -95
  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 -89
  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,195 +1,195 @@
1
- "use strict";
2
- var _a;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.configReducer = exports.selectCategoryType = exports.selectHasCatering = exports.selectOutpostName = exports.selectHeaderHeight = exports.selectSoldOutMsg = exports.selectBottomTabsTitles = exports.selectBottomTabsDisplayed = exports.selectPage = exports.selectContentSection = exports.selectRecaptcha = exports.selectFulfillment = exports.selectShowLoyalty = exports.selectOptIns = exports.selectLightColor = exports.selectConfigRetries = exports.selectDisplaySettings = exports.selectCateringOnly = exports.selectAccountConfig = exports.selectApi = exports.selectPages = exports.selectStylesheet = exports.selectSettings = exports.selectContent = exports.selectTheme = exports.selectBrand = exports.selectConfig = exports.incrementRetries = exports.resetRetries = exports.resetConfig = exports.fetchConfig = exports.ConfigActionType = void 0;
5
- const tslib_1 = require("tslib");
6
- const toolkit_1 = require("@reduxjs/toolkit");
7
- const utils_1 = require("@open-tender/utils");
8
- const types_1 = require("./types");
9
- const api_1 = tslib_1.__importDefault(require("../services/api"));
10
- const initialState = {
11
- api: null,
12
- app: null,
13
- appTheme: null,
14
- brand: null,
15
- content: null,
16
- error: null,
17
- isApp: false,
18
- isBackgroundFetch: false,
19
- loading: 'idle',
20
- pages: null,
21
- retries: 0,
22
- settings: null,
23
- stylesheet: null,
24
- theme: null
25
- };
26
- var ConfigActionType;
27
- (function (ConfigActionType) {
28
- ConfigActionType["FetchConfig"] = "config/getConfig";
29
- })(ConfigActionType = exports.ConfigActionType || (exports.ConfigActionType = {}));
30
- exports.fetchConfig = (0, toolkit_1.createAsyncThunk)(ConfigActionType.FetchConfig, (options, { rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
31
- try {
32
- const api = new api_1.default(options);
33
- const response = yield api.getConfig();
34
- const { baseUrl, authUrl, clientId, brandId, callback, isApp } = options;
35
- const app = { baseUrl, authUrl, clientId, brandId };
36
- if (!app.clientId)
37
- app.clientId = response.clientId;
38
- if (!app.brandId)
39
- app.brandId = response.brand.brandId;
40
- if (callback)
41
- callback();
42
- return Object.assign(Object.assign({}, response), { isApp, app });
43
- }
44
- catch (err) {
45
- return rejectWithValue(err);
46
- }
47
- }));
48
- const configSlice = (0, toolkit_1.createSlice)({
49
- name: types_1.ReducerType.Config,
50
- initialState: initialState,
51
- reducers: {
52
- resetConfig: () => initialState,
53
- resetRetries: state => {
54
- state.retries = 0;
55
- },
56
- incrementRetries: state => {
57
- state.retries = state.retries + 1;
58
- }
59
- },
60
- extraReducers: builder => {
61
- builder
62
- .addCase(exports.fetchConfig.fulfilled, (state, action) => {
63
- const { app, isApp, brand, content, theme, settings, stylesheet, pages } = action.payload;
64
- state.app = app;
65
- state.brand = brand;
66
- state.content = content;
67
- state.theme = !isApp && theme ? theme : null;
68
- state.appTheme = isApp && theme ? (0, utils_1.decorateTheme)(theme) : null;
69
- state.settings = settings;
70
- state.stylesheet = stylesheet;
71
- state.pages = pages;
72
- state.loading = 'idle';
73
- state.api = new api_1.default(app);
74
- state.error = null;
75
- state.retries = 0;
76
- })
77
- .addCase(exports.fetchConfig.pending, (state, action) => {
78
- var _a;
79
- state.loading = 'pending';
80
- state.isBackgroundFetch = ((_a = action === null || action === void 0 ? void 0 : action.meta) === null || _a === void 0 ? void 0 : _a.arg) !== undefined ? true : false;
81
- })
82
- .addCase(exports.fetchConfig.rejected, (state, action) => {
83
- state.error = action.payload;
84
- state.loading = 'idle';
85
- });
86
- }
87
- });
88
- _a = configSlice.actions, exports.resetConfig = _a.resetConfig, exports.resetRetries = _a.resetRetries, exports.incrementRetries = _a.incrementRetries;
89
- const selectConfig = (state) => state.config;
90
- exports.selectConfig = selectConfig;
91
- const selectBrand = (state) => state.config.brand;
92
- exports.selectBrand = selectBrand;
93
- const selectTheme = (state) => state.config.theme;
94
- exports.selectTheme = selectTheme;
95
- const selectContent = (state) => state.config.content;
96
- exports.selectContent = selectContent;
97
- const selectSettings = (state) => state.config.settings;
98
- exports.selectSettings = selectSettings;
99
- const selectStylesheet = (state) => state.config.stylesheet;
100
- exports.selectStylesheet = selectStylesheet;
101
- const selectPages = (state) => state.config.pages;
102
- exports.selectPages = selectPages;
103
- const selectApi = (state) => state.config.api;
104
- exports.selectApi = selectApi;
105
- const selectAccountConfig = (state) => { var _a; return (_a = state.config.content) === null || _a === void 0 ? void 0 : _a.account; };
106
- exports.selectAccountConfig = selectAccountConfig;
107
- const selectCateringOnly = (state) => {
108
- const { orderTypes } = state.config.settings || {};
109
- return !!((orderTypes === null || orderTypes === void 0 ? void 0 : orderTypes.includes('CATERING')) && orderTypes.length === 1);
110
- };
111
- exports.selectCateringOnly = selectCateringOnly;
112
- const selectDisplaySettings = (state) => {
113
- var _a;
114
- const orderType = state.order.orderType || 'OLO';
115
- return (_a = state.config.settings) === null || _a === void 0 ? void 0 : _a.displaySettings[orderType];
116
- };
117
- exports.selectDisplaySettings = selectDisplaySettings;
118
- const selectConfigRetries = (state) => state.config.retries;
119
- exports.selectConfigRetries = selectConfigRetries;
120
- const selectLightColor = (state) => state.config.theme ? state.config.theme.colors.light : '#ffffff';
121
- exports.selectLightColor = selectLightColor;
122
- exports.selectOptIns = (0, toolkit_1.createSelector)((state) => {
123
- const { accepts_marketing, order_notifications } = state.config.brand || {};
124
- return { accepts_marketing, order_notifications };
125
- }, ({ accepts_marketing, order_notifications }) => {
126
- return { accepts_marketing, order_notifications };
127
- });
128
- exports.selectShowLoyalty = (0, toolkit_1.createSelector)((state) => {
129
- const { has_loyalty, tpls } = state.config.brand || {};
130
- return { has_loyalty, tpls };
131
- }, ({ has_loyalty, tpls }) => {
132
- if (has_loyalty)
133
- return true;
134
- if (tpls === 'PUNCHH' || tpls === 'COMO')
135
- return true;
136
- return false;
137
- });
138
- const selectFulfillment = (state) => { var _a; return (_a = state.config.brand) === null || _a === void 0 ? void 0 : _a.fulfillment; };
139
- exports.selectFulfillment = selectFulfillment;
140
- const selectRecaptcha = (state) => { var _a; return (_a = state.config.settings) === null || _a === void 0 ? void 0 : _a.recaptcha; };
141
- exports.selectRecaptcha = selectRecaptcha;
142
- const selectContentSection = (page) => (state) => state.config.content ? state.config.content[page] : undefined;
143
- exports.selectContentSection = selectContentSection;
144
- const selectPage = (page) => (state) => state.config.pages ? state.config.pages[page] : undefined;
145
- exports.selectPage = selectPage;
146
- const selectBottomTabsDisplayed = (state) => { var _a; return ((_a = state.config.content) === null || _a === void 0 ? void 0 : _a.bottomTabs.displayed) || []; };
147
- exports.selectBottomTabsDisplayed = selectBottomTabsDisplayed;
148
- exports.selectBottomTabsTitles = (0, toolkit_1.createSelector)((state) => {
149
- const { bottomTabs } = state.config.content || {};
150
- return bottomTabs;
151
- }, bottomTabs => {
152
- if (!bottomTabs)
153
- return {};
154
- return Object.entries(bottomTabs).reduce((obj, [key, value]) => {
155
- if (key === 'displayed')
156
- return obj;
157
- return Object.assign(Object.assign({}, obj), { [key]: value.title });
158
- }, {});
159
- });
160
- const selectSoldOutMsg = (state) => {
161
- var _a;
162
- const { soldOutMessage } = ((_a = state.config.content) === null || _a === void 0 ? void 0 : _a.menu) || {};
163
- return soldOutMessage || 'Sold out for day';
164
- };
165
- exports.selectSoldOutMsg = selectSoldOutMsg;
166
- const selectHeaderHeight = (state) => (isBrowser) => {
167
- if (!state.config.theme)
168
- return 0;
169
- const { navHeight, navHeightMobile } = state.config.theme.layout;
170
- const height = isBrowser ? navHeight : navHeightMobile;
171
- return parseInt(height.replace('rem', '')) * 10;
172
- };
173
- exports.selectHeaderHeight = selectHeaderHeight;
174
- const selectOutpostName = (state) => {
175
- var _a, _b, _c;
176
- return ((_a = state.config.settings) === null || _a === void 0 ? void 0 : _a.locationName.OUTPOST)
177
- ? (0, utils_1.capitalize)((_c = (_b = state.config.settings) === null || _b === void 0 ? void 0 : _b.locationName.OUTPOST[0]) !== null && _c !== void 0 ? _c : '')
178
- : undefined;
179
- };
180
- exports.selectOutpostName = selectOutpostName;
181
- const selectHasCatering = (state) => {
182
- var _a;
183
- const { orderTypes } = state.config.settings || {};
184
- return (_a = orderTypes === null || orderTypes === void 0 ? void 0 : orderTypes.includes('CATERING')) !== null && _a !== void 0 ? _a : false;
185
- };
186
- exports.selectHasCatering = selectHasCatering;
187
- const selectCategoryType = (isMobile) => (state) => {
188
- const { categories } = state.config.theme || {};
189
- if (!categories)
190
- return 'LIST';
191
- const { desktop, mobile } = categories;
192
- return isMobile ? mobile.displayType : desktop.displayType;
193
- };
194
- exports.selectCategoryType = selectCategoryType;
195
- exports.configReducer = configSlice.reducer;
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.configReducer = exports.selectCategoryType = exports.selectHasCatering = exports.selectOutpostName = exports.selectHeaderHeight = exports.selectSoldOutMsg = exports.selectBottomTabsTitles = exports.selectBottomTabsDisplayed = exports.selectPage = exports.selectContentSection = exports.selectRecaptcha = exports.selectFulfillment = exports.selectShowLoyalty = exports.selectOptIns = exports.selectLightColor = exports.selectConfigRetries = exports.selectDisplaySettings = exports.selectCateringOnly = exports.selectAccountConfig = exports.selectApi = exports.selectPages = exports.selectStylesheet = exports.selectSettings = exports.selectContent = exports.selectTheme = exports.selectBrand = exports.selectConfig = exports.incrementRetries = exports.resetRetries = exports.resetConfig = exports.fetchConfig = exports.ConfigActionType = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const toolkit_1 = require("@reduxjs/toolkit");
7
+ const utils_1 = require("@open-tender/utils");
8
+ const types_1 = require("./types");
9
+ const api_1 = tslib_1.__importDefault(require("../services/api"));
10
+ const initialState = {
11
+ api: null,
12
+ app: null,
13
+ appTheme: null,
14
+ brand: null,
15
+ content: null,
16
+ error: null,
17
+ isApp: false,
18
+ isBackgroundFetch: false,
19
+ loading: 'idle',
20
+ pages: null,
21
+ retries: 0,
22
+ settings: null,
23
+ stylesheet: null,
24
+ theme: null
25
+ };
26
+ var ConfigActionType;
27
+ (function (ConfigActionType) {
28
+ ConfigActionType["FetchConfig"] = "config/getConfig";
29
+ })(ConfigActionType = exports.ConfigActionType || (exports.ConfigActionType = {}));
30
+ exports.fetchConfig = (0, toolkit_1.createAsyncThunk)(ConfigActionType.FetchConfig, (options, { rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
31
+ try {
32
+ const api = new api_1.default(options);
33
+ const response = yield api.getConfig();
34
+ const { baseUrl, authUrl, clientId, brandId, callback, isApp } = options;
35
+ const app = { baseUrl, authUrl, clientId, brandId };
36
+ if (!app.clientId)
37
+ app.clientId = response.clientId;
38
+ if (!app.brandId)
39
+ app.brandId = response.brand.brandId;
40
+ if (callback)
41
+ callback();
42
+ return Object.assign(Object.assign({}, response), { isApp, app });
43
+ }
44
+ catch (err) {
45
+ return rejectWithValue(err);
46
+ }
47
+ }));
48
+ const configSlice = (0, toolkit_1.createSlice)({
49
+ name: types_1.ReducerType.Config,
50
+ initialState: initialState,
51
+ reducers: {
52
+ resetConfig: () => initialState,
53
+ resetRetries: state => {
54
+ state.retries = 0;
55
+ },
56
+ incrementRetries: state => {
57
+ state.retries = state.retries + 1;
58
+ }
59
+ },
60
+ extraReducers: builder => {
61
+ builder
62
+ .addCase(exports.fetchConfig.fulfilled, (state, action) => {
63
+ const { app, isApp, brand, content, theme, settings, stylesheet, pages } = action.payload;
64
+ state.app = app;
65
+ state.brand = brand;
66
+ state.content = content;
67
+ state.theme = !isApp && theme ? theme : null;
68
+ state.appTheme = isApp && theme ? (0, utils_1.decorateTheme)(theme) : null;
69
+ state.settings = settings;
70
+ state.stylesheet = stylesheet;
71
+ state.pages = pages;
72
+ state.loading = 'idle';
73
+ state.api = new api_1.default(app);
74
+ state.error = null;
75
+ state.retries = 0;
76
+ })
77
+ .addCase(exports.fetchConfig.pending, (state, action) => {
78
+ var _a;
79
+ state.loading = 'pending';
80
+ state.isBackgroundFetch = ((_a = action === null || action === void 0 ? void 0 : action.meta) === null || _a === void 0 ? void 0 : _a.arg) !== undefined ? true : false;
81
+ })
82
+ .addCase(exports.fetchConfig.rejected, (state, action) => {
83
+ state.error = action.payload;
84
+ state.loading = 'idle';
85
+ });
86
+ }
87
+ });
88
+ _a = configSlice.actions, exports.resetConfig = _a.resetConfig, exports.resetRetries = _a.resetRetries, exports.incrementRetries = _a.incrementRetries;
89
+ const selectConfig = (state) => state.config;
90
+ exports.selectConfig = selectConfig;
91
+ const selectBrand = (state) => state.config.brand;
92
+ exports.selectBrand = selectBrand;
93
+ const selectTheme = (state) => state.config.theme;
94
+ exports.selectTheme = selectTheme;
95
+ const selectContent = (state) => state.config.content;
96
+ exports.selectContent = selectContent;
97
+ const selectSettings = (state) => state.config.settings;
98
+ exports.selectSettings = selectSettings;
99
+ const selectStylesheet = (state) => state.config.stylesheet;
100
+ exports.selectStylesheet = selectStylesheet;
101
+ const selectPages = (state) => state.config.pages;
102
+ exports.selectPages = selectPages;
103
+ const selectApi = (state) => state.config.api;
104
+ exports.selectApi = selectApi;
105
+ const selectAccountConfig = (state) => { var _a; return (_a = state.config.content) === null || _a === void 0 ? void 0 : _a.account; };
106
+ exports.selectAccountConfig = selectAccountConfig;
107
+ const selectCateringOnly = (state) => {
108
+ const { orderTypes } = state.config.settings || {};
109
+ return !!((orderTypes === null || orderTypes === void 0 ? void 0 : orderTypes.includes('CATERING')) && orderTypes.length === 1);
110
+ };
111
+ exports.selectCateringOnly = selectCateringOnly;
112
+ const selectDisplaySettings = (state) => {
113
+ var _a;
114
+ const orderType = state.order.orderType || 'OLO';
115
+ return (_a = state.config.settings) === null || _a === void 0 ? void 0 : _a.displaySettings[orderType];
116
+ };
117
+ exports.selectDisplaySettings = selectDisplaySettings;
118
+ const selectConfigRetries = (state) => state.config.retries;
119
+ exports.selectConfigRetries = selectConfigRetries;
120
+ const selectLightColor = (state) => state.config.theme ? state.config.theme.colors.light : '#ffffff';
121
+ exports.selectLightColor = selectLightColor;
122
+ exports.selectOptIns = (0, toolkit_1.createSelector)((state) => {
123
+ const { accepts_marketing, order_notifications } = state.config.brand || {};
124
+ return { accepts_marketing, order_notifications };
125
+ }, ({ accepts_marketing, order_notifications }) => {
126
+ return { accepts_marketing, order_notifications };
127
+ });
128
+ exports.selectShowLoyalty = (0, toolkit_1.createSelector)((state) => {
129
+ const { has_loyalty, tpls } = state.config.brand || {};
130
+ return { has_loyalty, tpls };
131
+ }, ({ has_loyalty, tpls }) => {
132
+ if (has_loyalty)
133
+ return true;
134
+ if (tpls === 'PUNCHH' || tpls === 'COMO')
135
+ return true;
136
+ return false;
137
+ });
138
+ const selectFulfillment = (state) => { var _a; return (_a = state.config.brand) === null || _a === void 0 ? void 0 : _a.fulfillment; };
139
+ exports.selectFulfillment = selectFulfillment;
140
+ const selectRecaptcha = (state) => { var _a; return (_a = state.config.settings) === null || _a === void 0 ? void 0 : _a.recaptcha; };
141
+ exports.selectRecaptcha = selectRecaptcha;
142
+ const selectContentSection = (page) => (state) => state.config.content ? state.config.content[page] : undefined;
143
+ exports.selectContentSection = selectContentSection;
144
+ const selectPage = (page) => (state) => state.config.pages ? state.config.pages[page] : undefined;
145
+ exports.selectPage = selectPage;
146
+ const selectBottomTabsDisplayed = (state) => { var _a; return ((_a = state.config.content) === null || _a === void 0 ? void 0 : _a.bottomTabs.displayed) || []; };
147
+ exports.selectBottomTabsDisplayed = selectBottomTabsDisplayed;
148
+ exports.selectBottomTabsTitles = (0, toolkit_1.createSelector)((state) => {
149
+ const { bottomTabs } = state.config.content || {};
150
+ return bottomTabs;
151
+ }, bottomTabs => {
152
+ if (!bottomTabs)
153
+ return {};
154
+ return Object.entries(bottomTabs).reduce((obj, [key, value]) => {
155
+ if (key === 'displayed')
156
+ return obj;
157
+ return Object.assign(Object.assign({}, obj), { [key]: value.title });
158
+ }, {});
159
+ });
160
+ const selectSoldOutMsg = (state) => {
161
+ var _a;
162
+ const { soldOutMessage } = ((_a = state.config.content) === null || _a === void 0 ? void 0 : _a.menu) || {};
163
+ return soldOutMessage || 'Sold out for day';
164
+ };
165
+ exports.selectSoldOutMsg = selectSoldOutMsg;
166
+ const selectHeaderHeight = (state) => (isBrowser) => {
167
+ if (!state.config.theme)
168
+ return 0;
169
+ const { navHeight, navHeightMobile } = state.config.theme.layout;
170
+ const height = isBrowser ? navHeight : navHeightMobile;
171
+ return parseInt(height.replace('rem', '')) * 10;
172
+ };
173
+ exports.selectHeaderHeight = selectHeaderHeight;
174
+ const selectOutpostName = (state) => {
175
+ var _a, _b, _c;
176
+ return ((_a = state.config.settings) === null || _a === void 0 ? void 0 : _a.locationName.OUTPOST)
177
+ ? (0, utils_1.capitalize)((_c = (_b = state.config.settings) === null || _b === void 0 ? void 0 : _b.locationName.OUTPOST[0]) !== null && _c !== void 0 ? _c : '')
178
+ : undefined;
179
+ };
180
+ exports.selectOutpostName = selectOutpostName;
181
+ const selectHasCatering = (state) => {
182
+ var _a;
183
+ const { orderTypes } = state.config.settings || {};
184
+ return (_a = orderTypes === null || orderTypes === void 0 ? void 0 : orderTypes.includes('CATERING')) !== null && _a !== void 0 ? _a : false;
185
+ };
186
+ exports.selectHasCatering = selectHasCatering;
187
+ const selectCategoryType = (isMobile) => (state) => {
188
+ const { categories } = state.config.theme || {};
189
+ if (!categories)
190
+ return 'LIST';
191
+ const { desktop, mobile } = categories;
192
+ return isMobile ? mobile.displayType : desktop.displayType;
193
+ };
194
+ exports.selectCategoryType = selectCategoryType;
195
+ exports.configReducer = configSlice.reducer;
@@ -1,8 +1,8 @@
1
- import { Order } from '@open-tender/types';
2
- import { AppState } from '../app';
3
- export interface ConfirmationState {
4
- order: Order | null;
5
- }
6
- export declare const resetConfirmation: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"confirmation/resetConfirmation">, setConfirmationOrder: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "confirmation/setConfirmationOrder">;
7
- export declare const selectConfirmationOrder: (state: AppState) => Order | null;
8
- export declare const confirmationReducer: import("redux").Reducer<ConfirmationState, import("redux").AnyAction>;
1
+ import { Order } from '@open-tender/types';
2
+ import { AppState } from '../app';
3
+ export interface ConfirmationState {
4
+ order: Order | null;
5
+ }
6
+ export declare const resetConfirmation: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"confirmation/resetConfirmation">, setConfirmationOrder: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "confirmation/setConfirmationOrder">;
7
+ export declare const selectConfirmationOrder: (state: AppState) => Order | null;
8
+ export declare const confirmationReducer: import("redux").Reducer<ConfirmationState, import("redux").AnyAction>;
@@ -1,23 +1,23 @@
1
- "use strict";
2
- var _a;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.confirmationReducer = exports.selectConfirmationOrder = exports.setConfirmationOrder = exports.resetConfirmation = void 0;
5
- const toolkit_1 = require("@reduxjs/toolkit");
6
- const types_1 = require("./types");
7
- const initialState = {
8
- order: null
9
- };
10
- const confirmationSlice = (0, toolkit_1.createSlice)({
11
- name: types_1.ReducerType.Confirmation,
12
- initialState,
13
- reducers: {
14
- resetConfirmation: () => initialState,
15
- setConfirmationOrder: (state, action) => {
16
- state.order = action.payload;
17
- }
18
- }
19
- });
20
- _a = confirmationSlice.actions, exports.resetConfirmation = _a.resetConfirmation, exports.setConfirmationOrder = _a.setConfirmationOrder;
21
- const selectConfirmationOrder = (state) => state.confirmation.order;
22
- exports.selectConfirmationOrder = selectConfirmationOrder;
23
- exports.confirmationReducer = confirmationSlice.reducer;
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.confirmationReducer = exports.selectConfirmationOrder = exports.setConfirmationOrder = exports.resetConfirmation = void 0;
5
+ const toolkit_1 = require("@reduxjs/toolkit");
6
+ const types_1 = require("./types");
7
+ const initialState = {
8
+ order: null
9
+ };
10
+ const confirmationSlice = (0, toolkit_1.createSlice)({
11
+ name: types_1.ReducerType.Confirmation,
12
+ initialState,
13
+ reducers: {
14
+ resetConfirmation: () => initialState,
15
+ setConfirmationOrder: (state, action) => {
16
+ state.order = action.payload;
17
+ }
18
+ }
19
+ });
20
+ _a = confirmationSlice.actions, exports.resetConfirmation = _a.resetConfirmation, exports.setConfirmationOrder = _a.setConfirmationOrder;
21
+ const selectConfirmationOrder = (state) => state.confirmation.order;
22
+ exports.selectConfirmationOrder = selectConfirmationOrder;
23
+ exports.confirmationReducer = confirmationSlice.reducer;