@open-tender/store 1.1.4 → 1.1.6

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 (276) hide show
  1. package/LICENSE.md +21 -21
  2. package/README.md +3 -3
  3. package/dist/cjs/components/Allergen.d.ts +8 -0
  4. package/dist/cjs/components/Allergen.js +11 -0
  5. package/dist/cjs/components/Applied.d.ts +6 -0
  6. package/dist/cjs/components/Applied.js +11 -0
  7. package/dist/cjs/components/ButtonLink.d.ts +9 -0
  8. package/dist/cjs/components/ButtonLink.js +11 -0
  9. package/dist/cjs/components/Card.d.ts +7 -0
  10. package/dist/cjs/components/Card.js +11 -0
  11. package/dist/cjs/components/Cart.d.ts +7 -0
  12. package/dist/cjs/components/Cart.js +41 -0
  13. package/dist/cjs/components/CartItem.d.ts +11 -0
  14. package/dist/cjs/components/CartItem.js +31 -0
  15. package/dist/cjs/components/CartUpsellItem.d.ts +10 -0
  16. package/dist/cjs/components/CartUpsellItem.js +25 -0
  17. package/dist/cjs/components/CartUpsells.d.ts +6 -0
  18. package/dist/cjs/components/CartUpsells.js +25 -0
  19. package/dist/cjs/components/CategoryItem.d.ts +11 -0
  20. package/dist/cjs/components/CategoryItem.js +28 -0
  21. package/dist/cjs/components/CategoryNav.d.ts +7 -0
  22. package/dist/cjs/components/CategoryNav.js +26 -0
  23. package/dist/cjs/components/CategoryNavItem.d.ts +9 -0
  24. package/dist/cjs/components/CategoryNavItem.js +27 -0
  25. package/dist/cjs/components/CategoryNavOther.d.ts +9 -0
  26. package/dist/cjs/components/CategoryNavOther.js +20 -0
  27. package/dist/cjs/components/CheckTotals.d.ts +8 -0
  28. package/dist/cjs/components/CheckTotals.js +11 -0
  29. package/dist/cjs/components/Discount.d.ts +8 -0
  30. package/dist/cjs/components/Discount.js +13 -0
  31. package/dist/cjs/components/ErrorMessage.d.ts +9 -0
  32. package/dist/cjs/components/ErrorMessage.js +11 -0
  33. package/dist/cjs/components/Header.d.ts +9 -0
  34. package/dist/cjs/components/Header.js +26 -0
  35. package/dist/cjs/components/Ingredients.d.ts +10 -0
  36. package/dist/cjs/components/Ingredients.js +12 -0
  37. package/dist/cjs/components/Input.d.ts +11 -0
  38. package/dist/cjs/components/Input.js +23 -0
  39. package/dist/cjs/components/ItemGroup.d.ts +9 -0
  40. package/dist/cjs/components/ItemGroup.js +19 -0
  41. package/dist/cjs/components/ItemGroups.d.ts +11 -0
  42. package/dist/cjs/components/ItemGroups.js +25 -0
  43. package/dist/cjs/components/ItemOption.d.ts +11 -0
  44. package/dist/cjs/components/ItemOption.js +31 -0
  45. package/dist/cjs/components/ItemSelections.d.ts +11 -0
  46. package/dist/cjs/components/ItemSelections.js +23 -0
  47. package/dist/cjs/components/Label.d.ts +10 -0
  48. package/dist/cjs/components/Label.js +11 -0
  49. package/dist/cjs/components/Loader.d.ts +8 -0
  50. package/dist/cjs/components/Loader.js +11 -0
  51. package/dist/cjs/components/MadeForNotes.d.ts +14 -0
  52. package/dist/cjs/components/MadeForNotes.js +29 -0
  53. package/dist/cjs/components/MenuCategory.d.ts +3 -3
  54. package/dist/cjs/components/MenuCategory.js +7 -6
  55. package/dist/cjs/components/MenuOther.d.ts +12 -0
  56. package/dist/cjs/components/MenuOther.js +17 -0
  57. package/dist/cjs/components/Modal.d.ts +9 -0
  58. package/dist/cjs/components/Modal.js +17 -0
  59. package/dist/cjs/components/ModalContent.d.ts +14 -0
  60. package/dist/cjs/components/ModalContent.js +21 -0
  61. package/dist/cjs/components/ModalHeader.d.ts +8 -0
  62. package/dist/cjs/components/ModalHeader.js +11 -0
  63. package/dist/cjs/components/NutritionalInfo.d.ts +11 -0
  64. package/dist/cjs/components/NutritionalInfo.js +19 -0
  65. package/dist/cjs/components/Option.d.ts +11 -0
  66. package/dist/cjs/components/Option.js +24 -0
  67. package/dist/cjs/components/OrderCard.d.ts +9 -0
  68. package/dist/cjs/components/OrderCard.js +56 -0
  69. package/dist/cjs/components/PointsReward.d.ts +10 -0
  70. package/dist/cjs/components/PointsReward.js +62 -0
  71. package/dist/cjs/components/PointsRewards.d.ts +6 -0
  72. package/dist/cjs/components/PointsRewards.js +24 -0
  73. package/dist/cjs/components/PromoCode.d.ts +7 -0
  74. package/dist/cjs/components/PromoCode.js +52 -0
  75. package/dist/cjs/components/Quantity.d.ts +13 -0
  76. package/dist/cjs/components/Quantity.js +19 -0
  77. package/dist/cjs/components/Reward.d.ts +10 -0
  78. package/dist/cjs/components/Reward.js +39 -0
  79. package/dist/cjs/components/Rewards.d.ts +10 -0
  80. package/dist/cjs/components/Rewards.js +15 -0
  81. package/dist/cjs/components/SignIn.d.ts +11 -0
  82. package/dist/cjs/components/SignIn.js +37 -0
  83. package/dist/cjs/components/SignInButton.d.ts +8 -0
  84. package/dist/cjs/components/SignInButton.js +41 -0
  85. package/dist/cjs/components/SignInCheckout.d.ts +9 -0
  86. package/dist/cjs/components/SignInCheckout.js +38 -0
  87. package/dist/cjs/components/SignInOptions.d.ts +7 -0
  88. package/dist/cjs/components/SignInOptions.js +28 -0
  89. package/dist/cjs/components/SignInPhone.d.ts +7 -0
  90. package/dist/cjs/components/SignInPhone.js +59 -0
  91. package/dist/cjs/components/SignInQr.d.ts +7 -0
  92. package/dist/cjs/components/SignInQr.js +61 -0
  93. package/dist/cjs/components/SuccessMessage.d.ts +9 -0
  94. package/dist/cjs/components/SuccessMessage.js +10 -0
  95. package/dist/cjs/components/Tag.d.ts +8 -0
  96. package/dist/cjs/components/Tag.js +10 -0
  97. package/dist/cjs/components/TextArea.d.ts +11 -0
  98. package/dist/cjs/components/TextArea.js +22 -0
  99. package/dist/cjs/components/UpsellItem.d.ts +10 -0
  100. package/dist/cjs/components/UpsellItem.js +24 -0
  101. package/dist/cjs/components/Upsells.d.ts +8 -0
  102. package/dist/cjs/components/Upsells.js +25 -0
  103. package/dist/cjs/components/index.d.ts +48 -1
  104. package/dist/cjs/components/index.js +95 -1
  105. package/dist/cjs/config/index.js +1 -1
  106. package/dist/cjs/hooks/useBarcode.js +1 -1
  107. package/dist/cjs/hooks/useChipDNATender/useChipDNATender.js +1 -1
  108. package/dist/cjs/hooks/useEmployee.js +8 -4
  109. package/dist/cjs/hooks/useGiftCardBalance.js +1 -1
  110. package/dist/cjs/hooks/useOrderValidate.js +1 -1
  111. package/dist/cjs/hooks/usePunch.js +1 -1
  112. package/dist/cjs/slices/alerts.js +1 -1
  113. package/dist/cjs/slices/arrivals.js +32 -36
  114. package/dist/cjs/slices/checkout.d.ts +1 -1
  115. package/dist/cjs/slices/checkout.js +329 -351
  116. package/dist/cjs/slices/config.js +79 -81
  117. package/dist/cjs/slices/customer.js +17 -19
  118. package/dist/cjs/slices/customerIdentify.js +16 -18
  119. package/dist/cjs/slices/deals.js +16 -18
  120. package/dist/cjs/slices/discounts.js +19 -21
  121. package/dist/cjs/slices/errorAlerts.d.ts +1 -1
  122. package/dist/cjs/slices/errorAlerts.js +34 -38
  123. package/dist/cjs/slices/kds.js +253 -275
  124. package/dist/cjs/slices/kiosk.d.ts +1 -1
  125. package/dist/cjs/slices/kiosk.js +50 -52
  126. package/dist/cjs/slices/menu.js +24 -26
  127. package/dist/cjs/slices/menuPages.js +16 -18
  128. package/dist/cjs/slices/notifications.js +1 -1
  129. package/dist/cjs/slices/offlineAuths.js +32 -36
  130. package/dist/cjs/slices/order.js +25 -27
  131. package/dist/cjs/slices/pos.js +59 -65
  132. package/dist/cjs/slices/punches.d.ts +1 -1
  133. package/dist/cjs/slices/punches.js +16 -18
  134. package/dist/cjs/slices/refund.js +54 -60
  135. package/dist/cjs/slices/settings.js +56 -62
  136. package/dist/cjs/slices/surcharges.js +19 -21
  137. package/dist/cjs/slices/taxes.js +19 -21
  138. package/dist/cjs/utils/punches.js +1 -1
  139. package/dist/esm/components/Allergen.d.ts +8 -0
  140. package/dist/esm/components/Allergen.js +9 -0
  141. package/dist/esm/components/Applied.d.ts +6 -0
  142. package/dist/esm/components/Applied.js +9 -0
  143. package/dist/esm/components/ButtonLink.d.ts +9 -0
  144. package/dist/esm/components/ButtonLink.js +9 -0
  145. package/dist/esm/components/Card.d.ts +7 -0
  146. package/dist/esm/components/Card.js +9 -0
  147. package/dist/esm/components/Cart.d.ts +7 -0
  148. package/dist/esm/components/Cart.js +38 -0
  149. package/dist/esm/components/CartItem.d.ts +11 -0
  150. package/dist/esm/components/CartItem.js +28 -0
  151. package/dist/esm/components/CartUpsellItem.d.ts +10 -0
  152. package/dist/esm/components/CartUpsellItem.js +23 -0
  153. package/dist/esm/components/CartUpsells.d.ts +6 -0
  154. package/dist/esm/components/CartUpsells.js +22 -0
  155. package/dist/esm/components/CategoryItem.d.ts +11 -0
  156. package/dist/esm/components/CategoryItem.js +26 -0
  157. package/dist/esm/components/CategoryNav.d.ts +7 -0
  158. package/dist/esm/components/CategoryNav.js +23 -0
  159. package/dist/esm/components/CategoryNavItem.d.ts +9 -0
  160. package/dist/esm/components/CategoryNavItem.js +25 -0
  161. package/dist/esm/components/CategoryNavOther.d.ts +9 -0
  162. package/dist/esm/components/CategoryNavOther.js +18 -0
  163. package/dist/esm/components/CheckTotals.d.ts +8 -0
  164. package/dist/esm/components/CheckTotals.js +9 -0
  165. package/dist/esm/components/Discount.d.ts +8 -0
  166. package/dist/esm/components/Discount.js +11 -0
  167. package/dist/esm/components/ErrorMessage.d.ts +9 -0
  168. package/dist/esm/components/ErrorMessage.js +9 -0
  169. package/dist/esm/components/Header.d.ts +9 -0
  170. package/dist/esm/components/Header.js +23 -0
  171. package/dist/esm/components/Ingredients.d.ts +10 -0
  172. package/dist/esm/components/Ingredients.js +10 -0
  173. package/dist/esm/components/Input.d.ts +11 -0
  174. package/dist/esm/components/Input.js +21 -0
  175. package/dist/esm/components/ItemGroup.d.ts +9 -0
  176. package/dist/esm/components/ItemGroup.js +17 -0
  177. package/dist/esm/components/ItemGroups.d.ts +11 -0
  178. package/dist/esm/components/ItemGroups.js +22 -0
  179. package/dist/esm/components/ItemOption.d.ts +11 -0
  180. package/dist/esm/components/ItemOption.js +29 -0
  181. package/dist/esm/components/ItemSelections.d.ts +11 -0
  182. package/dist/esm/components/ItemSelections.js +20 -0
  183. package/dist/esm/components/Label.d.ts +10 -0
  184. package/dist/esm/components/Label.js +9 -0
  185. package/dist/esm/components/Loader.d.ts +8 -0
  186. package/dist/esm/components/Loader.js +9 -0
  187. package/dist/esm/components/MadeForNotes.d.ts +14 -0
  188. package/dist/esm/components/MadeForNotes.js +26 -0
  189. package/dist/esm/components/MenuCategory.d.ts +3 -3
  190. package/dist/esm/components/MenuCategory.js +3 -2
  191. package/dist/esm/components/MenuOther.d.ts +12 -0
  192. package/dist/esm/components/MenuOther.js +15 -0
  193. package/dist/esm/components/Modal.d.ts +9 -0
  194. package/dist/esm/components/Modal.js +14 -0
  195. package/dist/esm/components/ModalContent.d.ts +14 -0
  196. package/dist/esm/components/ModalContent.js +19 -0
  197. package/dist/esm/components/ModalHeader.d.ts +8 -0
  198. package/dist/esm/components/ModalHeader.js +9 -0
  199. package/dist/esm/components/NutritionalInfo.d.ts +11 -0
  200. package/dist/esm/components/NutritionalInfo.js +17 -0
  201. package/dist/esm/components/Option.d.ts +11 -0
  202. package/dist/esm/components/Option.js +22 -0
  203. package/dist/esm/components/OrderCard.d.ts +9 -0
  204. package/dist/esm/components/OrderCard.js +53 -0
  205. package/dist/esm/components/PointsReward.d.ts +10 -0
  206. package/dist/esm/components/PointsReward.js +60 -0
  207. package/dist/esm/components/PointsRewards.d.ts +6 -0
  208. package/dist/esm/components/PointsRewards.js +21 -0
  209. package/dist/esm/components/PromoCode.d.ts +7 -0
  210. package/dist/esm/components/PromoCode.js +49 -0
  211. package/dist/esm/components/Quantity.d.ts +13 -0
  212. package/dist/esm/components/Quantity.js +17 -0
  213. package/dist/esm/components/Reward.d.ts +10 -0
  214. package/dist/esm/components/Reward.js +36 -0
  215. package/dist/esm/components/Rewards.d.ts +10 -0
  216. package/dist/esm/components/Rewards.js +12 -0
  217. package/dist/esm/components/SignIn.d.ts +11 -0
  218. package/dist/esm/components/SignIn.js +35 -0
  219. package/dist/esm/components/SignInButton.d.ts +8 -0
  220. package/dist/esm/components/SignInButton.js +39 -0
  221. package/dist/esm/components/SignInCheckout.d.ts +9 -0
  222. package/dist/esm/components/SignInCheckout.js +36 -0
  223. package/dist/esm/components/SignInOptions.d.ts +7 -0
  224. package/dist/esm/components/SignInOptions.js +25 -0
  225. package/dist/esm/components/SignInPhone.d.ts +7 -0
  226. package/dist/esm/components/SignInPhone.js +56 -0
  227. package/dist/esm/components/SignInQr.d.ts +7 -0
  228. package/dist/esm/components/SignInQr.js +59 -0
  229. package/dist/esm/components/SuccessMessage.d.ts +9 -0
  230. package/dist/esm/components/SuccessMessage.js +8 -0
  231. package/dist/esm/components/Tag.d.ts +8 -0
  232. package/dist/esm/components/Tag.js +8 -0
  233. package/dist/esm/components/TextArea.d.ts +11 -0
  234. package/dist/esm/components/TextArea.js +20 -0
  235. package/dist/esm/components/UpsellItem.d.ts +10 -0
  236. package/dist/esm/components/UpsellItem.js +22 -0
  237. package/dist/esm/components/Upsells.d.ts +8 -0
  238. package/dist/esm/components/Upsells.js +22 -0
  239. package/dist/esm/components/index.d.ts +48 -1
  240. package/dist/esm/components/index.js +48 -1
  241. package/dist/esm/config/index.js +1 -1
  242. package/dist/esm/hooks/useBarcode.js +1 -1
  243. package/dist/esm/hooks/useChipDNATender/useChipDNATender.js +1 -1
  244. package/dist/esm/hooks/useEmployee.js +9 -5
  245. package/dist/esm/hooks/useGiftCardBalance.js +1 -1
  246. package/dist/esm/hooks/useOrderValidate.js +1 -1
  247. package/dist/esm/hooks/usePunch.js +1 -1
  248. package/dist/esm/slices/alerts.js +1 -1
  249. package/dist/esm/slices/arrivals.js +32 -36
  250. package/dist/esm/slices/checkout.d.ts +1 -1
  251. package/dist/esm/slices/checkout.js +329 -351
  252. package/dist/esm/slices/config.js +79 -81
  253. package/dist/esm/slices/customer.js +17 -19
  254. package/dist/esm/slices/customerIdentify.js +16 -18
  255. package/dist/esm/slices/deals.js +16 -18
  256. package/dist/esm/slices/discounts.js +19 -21
  257. package/dist/esm/slices/errorAlerts.d.ts +1 -1
  258. package/dist/esm/slices/errorAlerts.js +34 -38
  259. package/dist/esm/slices/kds.js +253 -275
  260. package/dist/esm/slices/kiosk.d.ts +1 -1
  261. package/dist/esm/slices/kiosk.js +50 -52
  262. package/dist/esm/slices/menu.js +24 -26
  263. package/dist/esm/slices/menuPages.js +16 -18
  264. package/dist/esm/slices/notifications.js +1 -1
  265. package/dist/esm/slices/offlineAuths.js +32 -36
  266. package/dist/esm/slices/order.js +25 -27
  267. package/dist/esm/slices/pos.js +59 -65
  268. package/dist/esm/slices/punches.d.ts +1 -1
  269. package/dist/esm/slices/punches.js +16 -18
  270. package/dist/esm/slices/refund.js +54 -60
  271. package/dist/esm/slices/settings.js +56 -62
  272. package/dist/esm/slices/surcharges.js +19 -21
  273. package/dist/esm/slices/taxes.js +19 -21
  274. package/dist/esm/utils/punches.js +1 -1
  275. package/package.json +82 -75
  276. package/dist/.DS_Store +0 -0
@@ -0,0 +1,9 @@
1
+ import { CartItemGroup } from '@open-tender/types';
2
+ import { ItemGroupProps } from '@open-tender/ui';
3
+ import { ReactNode } from 'react';
4
+ declare const ItemGroup: ({ group, content, children }: {
5
+ group: CartItemGroup;
6
+ content: ReactNode;
7
+ children?: (props: ItemGroupProps) => ReactNode;
8
+ }) => ReactNode;
9
+ export default ItemGroup;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var ui_1 = require("@open-tender/ui");
4
+ var utils_1 = require("@open-tender/utils");
5
+ var hooks_1 = require("../app/hooks");
6
+ var slices_1 = require("../slices");
7
+ var ItemGroup = function (_a) {
8
+ var group = _a.group, content = _a.content, _b = _a.children, children = _b === void 0 ? ui_1.ItemGroup : _b;
9
+ var _c = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig), config = _c.itemGroup, errorMessageConfig = _c.errorMessage, successMessageConfig = _c.successMessage;
10
+ var modifierGroup = (0, utils_1.useModifierGroup)(group);
11
+ return children({
12
+ config: config,
13
+ group: modifierGroup,
14
+ children: content,
15
+ errorMessageConfig: errorMessageConfig,
16
+ successMessageConfig: successMessageConfig
17
+ });
18
+ };
19
+ exports.default = ItemGroup;
@@ -0,0 +1,11 @@
1
+ import { CartItemGroups, CartLevels } from '@open-tender/types';
2
+ import { Handlers, ItemGroupsProps } from '@open-tender/ui';
3
+ import React, { ReactNode } from 'react';
4
+ declare const ItemGroups: ({ handlers, groups, levels, excludeSize, children }: {
5
+ handlers: Handlers;
6
+ groups: CartItemGroups;
7
+ levels: CartLevels;
8
+ excludeSize?: boolean;
9
+ children?: (props: ItemGroupsProps) => ReactNode;
10
+ }) => React.ReactNode;
11
+ export default ItemGroups;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ var ui_1 = require("@open-tender/ui");
5
+ var react_1 = tslib_1.__importDefault(require("react"));
6
+ var hooks_1 = require("../app/hooks");
7
+ var slices_1 = require("../slices");
8
+ var ItemGroup_1 = tslib_1.__importDefault(require("./ItemGroup"));
9
+ var ItemOption_1 = tslib_1.__importDefault(require("./ItemOption"));
10
+ var ItemGroups = function (_a) {
11
+ var handlers = _a.handlers, groups = _a.groups, levels = _a.levels, _b = _a.excludeSize, excludeSize = _b === void 0 ? true : _b, _c = _a.children, children = _c === void 0 ? ui_1.ItemGroups : _c;
12
+ var config = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig).itemGroups;
13
+ var renderItemOption = function (group, option) { return (react_1.default.createElement(ItemOption_1.default, { levels: levels, handlers: handlers, group: group, option: option, children: ui_1.ItemOption })); };
14
+ var renderItemGroup = function (group, content) { return (react_1.default.createElement(ItemGroup_1.default, { group: group, content: content, children: ui_1.ItemGroup })); };
15
+ if (!config)
16
+ return null;
17
+ return children({
18
+ config: config,
19
+ groups: groups,
20
+ excludeSize: excludeSize,
21
+ renderItemOption: renderItemOption,
22
+ renderItemGroup: renderItemGroup
23
+ });
24
+ };
25
+ exports.default = ItemGroups;
@@ -0,0 +1,11 @@
1
+ import { CartItemGroup, CartItemOption, CartLevels } from '@open-tender/types';
2
+ import { Handlers, ItemOptionProps } from '@open-tender/ui';
3
+ import { ReactNode } from 'react';
4
+ declare const ItemOption: ({ handlers, group, option, levels, children }: {
5
+ handlers: Handlers;
6
+ group: CartItemGroup;
7
+ option: CartItemOption;
8
+ levels: CartLevels;
9
+ children?: (props: ItemOptionProps) => ReactNode;
10
+ }) => ReactNode;
11
+ export default ItemOption;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var ui_1 = require("@open-tender/ui");
4
+ var utils_1 = require("@open-tender/utils");
5
+ var hooks_1 = require("../app/hooks");
6
+ var slices_1 = require("../slices");
7
+ var ItemOption = function (_a) {
8
+ var handlers = _a.handlers, group = _a.group, option = _a.option, levels = _a.levels, _b = _a.children, children = _b === void 0 ? ui_1.ItemOption : _b;
9
+ var dispatch = (0, hooks_1.useAppDispatch)();
10
+ var _c = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig), config = _c.itemOption, cardConfig = _c.card;
11
+ var toggleOption = handlers.toggleOption, incrementOption = handlers.incrementOption, decrementOption = handlers.decrementOption, setOptionQuantity = handlers.setOptionQuantity;
12
+ var allergenAlerts = [];
13
+ var modifier = (0, utils_1.useModifier)(group, option, levels, toggleOption, incrementOption, decrementOption, setOptionQuantity, allergenAlerts);
14
+ var showNested = function () {
15
+ // dispatch(setCurrentOption(modifier))
16
+ var currentOption = {
17
+ groupId: group.id,
18
+ optionId: option.id,
19
+ levels: modifier.updatedLevels
20
+ };
21
+ dispatch((0, slices_1.setCurrentOption)(currentOption));
22
+ };
23
+ return children({
24
+ config: config,
25
+ handlers: { showNested: showNested },
26
+ group: group,
27
+ option: modifier,
28
+ cardConfig: cardConfig
29
+ });
30
+ };
31
+ exports.default = ItemOption;
@@ -0,0 +1,11 @@
1
+ import { CartItemGroups, CartLevels } from '@open-tender/types';
2
+ import { Handlers, ItemSelectionsProps } from '@open-tender/ui';
3
+ import React, { ReactNode } from 'react';
4
+ declare const ItemSelections: ({ handlers, groups, levels, isIncomplete, children }: {
5
+ handlers: Handlers;
6
+ groups: CartItemGroups;
7
+ levels: CartLevels;
8
+ isIncomplete: boolean;
9
+ children?: (props: ItemSelectionsProps) => ReactNode;
10
+ }) => React.ReactNode;
11
+ export default ItemSelections;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ var ui_1 = require("@open-tender/ui");
5
+ var react_1 = tslib_1.__importDefault(require("react"));
6
+ var hooks_1 = require("../app/hooks");
7
+ var slices_1 = require("../slices");
8
+ var ErrorMessage_1 = tslib_1.__importDefault(require("./ErrorMessage"));
9
+ var ItemOption_1 = tslib_1.__importDefault(require("./ItemOption"));
10
+ var ItemSelections = function (_a) {
11
+ var handlers = _a.handlers, groups = _a.groups, levels = _a.levels, isIncomplete = _a.isIncomplete, _b = _a.children, children = _b === void 0 ? ui_1.ItemSelections : _b;
12
+ var config = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig).itemSelections;
13
+ var renderErrorMessage = function (icon, children) { return (react_1.default.createElement(ErrorMessage_1.default, { icon: icon, content: children, children: ui_1.ErrorMessage })); };
14
+ var renderItemOption = function (group, option) { return (react_1.default.createElement(ItemOption_1.default, { levels: levels, handlers: handlers, group: group, option: option, children: ui_1.ItemOption })); };
15
+ return children({
16
+ config: config,
17
+ groups: groups,
18
+ isIncomplete: isIncomplete,
19
+ renderErrorMessage: renderErrorMessage,
20
+ renderItemOption: renderItemOption
21
+ });
22
+ };
23
+ exports.default = ItemSelections;
@@ -0,0 +1,10 @@
1
+ import { LabelProps, Styles } from '@open-tender/ui';
2
+ import { ReactNode } from 'react';
3
+ declare const Label: ({ content, label, isRequired, style, children }: {
4
+ content: ReactNode;
5
+ label?: string;
6
+ isRequired?: boolean;
7
+ style?: Styles;
8
+ children?: (props: LabelProps) => ReactNode;
9
+ }) => ReactNode;
10
+ export default Label;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var ui_1 = require("@open-tender/ui");
4
+ var hooks_1 = require("../app/hooks");
5
+ var slices_1 = require("../slices");
6
+ var Label = function (_a) {
7
+ var content = _a.content, label = _a.label, isRequired = _a.isRequired, style = _a.style, _b = _a.children, children = _b === void 0 ? ui_1.Label : _b;
8
+ var config = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig).label;
9
+ return children({ config: config, label: label, isRequired: isRequired, style: style, children: content });
10
+ };
11
+ exports.default = Label;
@@ -0,0 +1,8 @@
1
+ import { LoaderProps, Styles } from '@open-tender/ui';
2
+ import { ReactNode } from 'react';
3
+ declare const Loader: ({ text, style, children }: {
4
+ text?: string;
5
+ style?: Styles;
6
+ children?: (props: LoaderProps) => ReactNode;
7
+ }) => ReactNode;
8
+ export default Loader;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var ui_1 = require("@open-tender/ui");
4
+ var hooks_1 = require("../app/hooks");
5
+ var slices_1 = require("../slices");
6
+ var Loader = function (_a) {
7
+ var text = _a.text, style = _a.style, _b = _a.children, children = _b === void 0 ? ui_1.Loader : _b;
8
+ var config = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig).loader;
9
+ return children({ config: config, text: text, style: style });
10
+ };
11
+ exports.default = Loader;
@@ -0,0 +1,14 @@
1
+ import { MadeForNotesProps } from '@open-tender/ui';
2
+ import React, { ReactNode } from 'react';
3
+ declare const MadeForNotes: ({ subtitle, hasMadeFor, madeFor, setMadeFor, hasNotes, notes, setNotes, close, children }: {
4
+ subtitle: string;
5
+ hasMadeFor: boolean;
6
+ madeFor: string | null;
7
+ setMadeFor: (madeFor: string) => void;
8
+ hasNotes: boolean;
9
+ notes: string | null;
10
+ setNotes: (notes: string) => void;
11
+ close: () => void;
12
+ children?: (props: MadeForNotesProps) => ReactNode;
13
+ }) => React.ReactNode;
14
+ export default MadeForNotes;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ var ui_1 = require("@open-tender/ui");
5
+ var react_1 = tslib_1.__importDefault(require("react"));
6
+ var hooks_1 = require("../app/hooks");
7
+ var slices_1 = require("../slices");
8
+ var Input_1 = tslib_1.__importDefault(require("./Input"));
9
+ var TextArea_1 = tslib_1.__importDefault(require("./TextArea"));
10
+ var MadeForNotes = function (_a) {
11
+ var subtitle = _a.subtitle, hasMadeFor = _a.hasMadeFor, madeFor = _a.madeFor, setMadeFor = _a.setMadeFor, hasNotes = _a.hasNotes, notes = _a.notes, setNotes = _a.setNotes, close = _a.close, _b = _a.children, children = _b === void 0 ? ui_1.MadeForNotes : _b;
12
+ var _c = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig), config = _c.madeForNotes, modalContentConfig = _c.modalContent;
13
+ var handlers = { submit: close };
14
+ var renderInput = function (label, value, isRequired, style) { return (react_1.default.createElement(Input_1.default, { label: label, setValue: setMadeFor, value: value, isRequired: isRequired, style: style, children: ui_1.Input })); };
15
+ var renderTextArea = function (label, value, isRequired, style) { return (react_1.default.createElement(TextArea_1.default, { label: label, setValue: setNotes, value: value, isRequired: isRequired, style: style, children: ui_1.Input })); };
16
+ return children({
17
+ config: config,
18
+ handlers: handlers,
19
+ subtitle: subtitle,
20
+ hasMadeFor: hasMadeFor,
21
+ madeFor: madeFor,
22
+ hasNotes: hasNotes,
23
+ notes: notes,
24
+ modalContentConfig: modalContentConfig,
25
+ renderInput: renderInput,
26
+ renderTextArea: renderTextArea
27
+ });
28
+ };
29
+ exports.default = MadeForNotes;
@@ -1,9 +1,9 @@
1
- /// <reference types="react" />
2
1
  import { MenuCategory as MenuCategoryType } from '@open-tender/types';
3
2
  import { MenuCategoryProps } from '@open-tender/ui';
3
+ import { ReactNode } from 'react';
4
4
  declare const MenuCategory: ({ category, navigate, children }: {
5
5
  category: MenuCategoryType;
6
6
  navigate: (route: string) => void;
7
- children: (props: MenuCategoryProps) => React.ReactNode;
8
- }) => import("react").ReactNode;
7
+ children?: (props: MenuCategoryProps) => ReactNode;
8
+ }) => ReactNode;
9
9
  export default MenuCategory;
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var hooks_1 = require("../hooks");
4
- var hooks_2 = require("../app/hooks");
3
+ var ui_1 = require("@open-tender/ui");
4
+ var hooks_1 = require("../app/hooks");
5
+ var hooks_2 = require("../hooks");
5
6
  var slices_1 = require("../slices");
6
7
  var MenuCategory = function (_a) {
7
- var category = _a.category, navigate = _a.navigate, children = _a.children;
8
- var dispatch = (0, hooks_2.useAppDispatch)();
9
- var config = (0, hooks_2.useAppSelector)(slices_1.selectKioskConfig).menuCategory;
10
- var imageUrl = (0, hooks_1.useKioskImageUrl)(category);
8
+ var category = _a.category, navigate = _a.navigate, _b = _a.children, children = _b === void 0 ? ui_1.MenuCategory : _b;
9
+ var dispatch = (0, hooks_1.useAppDispatch)();
10
+ var config = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig).menuCategory;
11
+ var imageUrl = (0, hooks_2.useKioskImageUrl)(category);
11
12
  var browse = function () {
12
13
  dispatch((0, slices_1.setCurrentCategory)(category));
13
14
  navigate('/menu/category');
@@ -0,0 +1,12 @@
1
+ import { MenuItem } from '@open-tender/types';
2
+ import { MenuOtherProps } from '@open-tender/ui';
3
+ import { ReactNode } from 'react';
4
+ declare const MenuOther: ({ title, subtitle, path, item, children, navigate }: {
5
+ title: string;
6
+ subtitle: string;
7
+ path: string;
8
+ item: MenuItem;
9
+ navigate: (route: string) => void;
10
+ children?: (props: MenuOtherProps) => ReactNode;
11
+ }) => ReactNode;
12
+ export default MenuOther;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var ui_1 = require("@open-tender/ui");
4
+ var hooks_1 = require("../app/hooks");
5
+ var slices_1 = require("../slices");
6
+ var MenuOther = function (_a) {
7
+ var title = _a.title, subtitle = _a.subtitle, path = _a.path, item = _a.item, _b = _a.children, children = _b === void 0 ? ui_1.MenuOther : _b, navigate = _a.navigate;
8
+ var dispatch = (0, hooks_1.useAppDispatch)();
9
+ var menuCategory = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig).menuCategory;
10
+ var browse = function () {
11
+ dispatch((0, slices_1.setCurrentCategory)(null));
12
+ navigate(path);
13
+ };
14
+ var handlers = { browse: browse };
15
+ return children({ config: menuCategory, handlers: handlers, title: title, subtitle: subtitle, item: item });
16
+ };
17
+ exports.default = MenuOther;
@@ -0,0 +1,9 @@
1
+ import { ModalProps } from '@open-tender/ui';
2
+ import React, { ReactNode } from 'react';
3
+ declare const Modal: ({ show, close, content, children }: {
4
+ show: boolean;
5
+ close: () => void;
6
+ content: ReactNode;
7
+ children?: (props: ModalProps) => ReactNode;
8
+ }) => React.JSX.Element | null;
9
+ export default Modal;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ var ui_1 = require("@open-tender/ui");
5
+ var react_1 = tslib_1.__importDefault(require("react"));
6
+ var react_transition_group_1 = require("react-transition-group");
7
+ var hooks_1 = require("../app/hooks");
8
+ var slices_1 = require("../slices");
9
+ var Modal = function (_a) {
10
+ var show = _a.show, close = _a.close, content = _a.content, _b = _a.children, children = _b === void 0 ? ui_1.Modal : _b;
11
+ var config = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig).modal;
12
+ var handlers = { close: close };
13
+ if (!config)
14
+ return null;
15
+ return (react_1.default.createElement(react_transition_group_1.TransitionGroup, { component: null }, show ? (react_1.default.createElement(react_transition_group_1.CSSTransition, { key: "modal", classNames: "md", timeout: { enter: 250, exit: 250 } }, children({ config: config, handlers: handlers, children: content }))) : null));
16
+ };
17
+ exports.default = Modal;
@@ -0,0 +1,14 @@
1
+ import { ModalContentProps, Styles } from '@open-tender/ui';
2
+ import { ReactNode } from 'react';
3
+ declare const ModalContent: ({ title, subtitle, content, submit, submitText, cancel, cancelText, style, children }: {
4
+ title: string;
5
+ subtitle?: string | null;
6
+ content: ReactNode;
7
+ submit?: () => void;
8
+ submitText?: string;
9
+ cancel: () => void;
10
+ cancelText?: string;
11
+ style?: Styles;
12
+ children?: (props: ModalContentProps) => ReactNode;
13
+ }) => ReactNode;
14
+ export default ModalContent;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var ui_1 = require("@open-tender/ui");
4
+ var hooks_1 = require("../app/hooks");
5
+ var slices_1 = require("../slices");
6
+ var ModalContent = function (_a) {
7
+ var title = _a.title, subtitle = _a.subtitle, content = _a.content, submit = _a.submit, submitText = _a.submitText, cancel = _a.cancel, cancelText = _a.cancelText, style = _a.style, _b = _a.children, children = _b === void 0 ? ui_1.ModalContent : _b;
8
+ var config = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig).modalContent;
9
+ return children({
10
+ config: config,
11
+ title: title,
12
+ subtitle: subtitle,
13
+ children: content,
14
+ submit: submit,
15
+ submitText: submitText,
16
+ cancel: cancel,
17
+ cancelText: cancelText,
18
+ style: style
19
+ });
20
+ };
21
+ exports.default = ModalContent;
@@ -0,0 +1,8 @@
1
+ import { ModalHeaderProps } from '@open-tender/ui';
2
+ import { ReactNode } from 'react';
3
+ declare const ModalHeader: ({ title, subtitle, children }: {
4
+ title: string;
5
+ subtitle?: string;
6
+ children?: (props: ModalHeaderProps) => ReactNode;
7
+ }) => ReactNode;
8
+ export default ModalHeader;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var ui_1 = require("@open-tender/ui");
4
+ var hooks_1 = require("../app/hooks");
5
+ var slices_1 = require("../slices");
6
+ var ModalHeader = function (_a) {
7
+ var title = _a.title, subtitle = _a.subtitle, _b = _a.children, children = _b === void 0 ? ui_1.ModalHeader : _b;
8
+ var config = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig).modalHeader;
9
+ return children({ config: config, title: title, subtitle: subtitle });
10
+ };
11
+ exports.default = ModalHeader;
@@ -0,0 +1,11 @@
1
+ import { NutritionalInfo as NutritionalInfoType } from '@open-tender/types';
2
+ import { NutritionalInfoProps } from '@open-tender/ui';
3
+ import { ReactNode } from 'react';
4
+ declare const NutritionalInfo: ({ title, subtitle, nutritionalInfo, close, children }: {
5
+ title: string;
6
+ subtitle?: string;
7
+ nutritionalInfo: NutritionalInfoType;
8
+ close: () => void;
9
+ children?: (props: NutritionalInfoProps) => ReactNode;
10
+ }) => ReactNode;
11
+ export default NutritionalInfo;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var ui_1 = require("@open-tender/ui");
4
+ var hooks_1 = require("../app/hooks");
5
+ var slices_1 = require("../slices");
6
+ var NutritionalInfo = function (_a) {
7
+ var title = _a.title, subtitle = _a.subtitle, nutritionalInfo = _a.nutritionalInfo, close = _a.close, _b = _a.children, children = _b === void 0 ? ui_1.NutritionalInfo : _b;
8
+ var _c = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig), config = _c.nutritionalInfo, modalContentConfig = _c.modalContent;
9
+ var handlers = { close: close };
10
+ return children({
11
+ config: config,
12
+ handlers: handlers,
13
+ title: title,
14
+ subtitle: subtitle,
15
+ nutritionalInfo: nutritionalInfo,
16
+ modalContentConfig: modalContentConfig
17
+ });
18
+ };
19
+ exports.default = NutritionalInfo;
@@ -0,0 +1,11 @@
1
+ import { CartItemOption, CartLevels } from '@open-tender/types';
2
+ import { Handlers, OptionProps } from '@open-tender/ui';
3
+ import React, { ReactNode } from 'react';
4
+ declare const Option: ({ option, levels, handlers, close, children }: {
5
+ option: CartItemOption | null;
6
+ levels: CartLevels | null;
7
+ handlers: Handlers;
8
+ close: () => void;
9
+ children?: (props: OptionProps) => ReactNode;
10
+ }) => React.ReactNode;
11
+ export default Option;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ var ui_1 = require("@open-tender/ui");
5
+ var react_1 = tslib_1.__importDefault(require("react"));
6
+ var hooks_1 = require("../app/hooks");
7
+ var slices_1 = require("../slices");
8
+ var ItemGroups_1 = tslib_1.__importDefault(require("./ItemGroups"));
9
+ var Option = function (_a) {
10
+ var option = _a.option, levels = _a.levels, handlers = _a.handlers, close = _a.close, _b = _a.children, children = _b === void 0 ? ui_1.Option : _b;
11
+ var _c = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig), config = _c.option, modalContentConfig = _c.modalContent;
12
+ var handlersOption = tslib_1.__assign(tslib_1.__assign({}, handlers), { close: close });
13
+ if (!config || !option || !levels)
14
+ return null;
15
+ var renderItemGroups = function (excludeSize) { return (react_1.default.createElement(ItemGroups_1.default, { levels: levels, handlers: handlersOption, groups: option.groups, excludeSize: excludeSize, children: ui_1.ItemGroups })); };
16
+ return children({
17
+ config: config,
18
+ handlers: handlersOption,
19
+ option: option,
20
+ modalContentConfig: modalContentConfig,
21
+ renderItemGroups: renderItemGroups
22
+ });
23
+ };
24
+ exports.default = Option;
@@ -0,0 +1,9 @@
1
+ import { Order } from '@open-tender/types';
2
+ import { OrderCardProps } from '@open-tender/ui';
3
+ import React, { ReactNode } from 'react';
4
+ declare const OrderCard: ({ order, navigate, children }: {
5
+ order: Order;
6
+ navigate: (route: string) => void;
7
+ children?: (props: OrderCardProps) => ReactNode;
8
+ }) => React.ReactNode;
9
+ export default OrderCard;
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ var ui_1 = require("@open-tender/ui");
5
+ var react_1 = tslib_1.__importStar(require("react"));
6
+ var hooks_1 = require("../app/hooks");
7
+ var hooks_2 = require("../hooks");
8
+ var slices_1 = require("../slices");
9
+ var ErrorMessage_1 = tslib_1.__importDefault(require("./ErrorMessage"));
10
+ var OrderCard = function (_a) {
11
+ var order = _a.order, navigate = _a.navigate, _b = _a.children, children = _b === void 0 ? ui_1.OrderCard : _b;
12
+ var dispatch = (0, hooks_1.useAppDispatch)();
13
+ var _c = (0, react_1.useState)(null), errMsg = _c[0], setErrMsg = _c[1];
14
+ var _d = (0, react_1.useState)(false), isReordering = _d[0], setIsReordering = _d[1];
15
+ var _e = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig), config = _e.orderCard, cardConfig = _e.card;
16
+ var _f = (0, hooks_1.useAppSelector)(slices_1.selectOrder), loading = _f.loading, error = _f.error;
17
+ var isLoading = loading === 'pending';
18
+ var _g = (0, hooks_2.useOrder)(order), itemImages = _g.itemImages, itemNames = _g.itemNames, orderNo = _g.orderNo, title = _g.title, subtitle = _g.subtitle;
19
+ var view = function () {
20
+ return;
21
+ };
22
+ var reorder = function () {
23
+ setErrMsg(null);
24
+ setIsReordering(true);
25
+ dispatch((0, slices_1.reorder)(order.cart));
26
+ };
27
+ var handlers = { view: view, reorder: reorder };
28
+ (0, react_1.useEffect)(function () {
29
+ if (isReordering && !isLoading) {
30
+ setIsReordering(false);
31
+ if (error) {
32
+ setErrMsg(error.detail);
33
+ }
34
+ else {
35
+ navigate('/checkout/details');
36
+ }
37
+ }
38
+ }, [isLoading, isReordering, error, navigate]);
39
+ var renderErrorMessage = function (errMsg) { return (react_1.default.createElement(ErrorMessage_1.default, { content: errMsg, children: ui_1.ErrorMessage })); };
40
+ if (!config)
41
+ return null;
42
+ return children({
43
+ config: config,
44
+ handlers: handlers,
45
+ isReordering: isReordering,
46
+ errMsg: errMsg,
47
+ cardConfig: cardConfig,
48
+ subtitle: subtitle,
49
+ title: title,
50
+ orderNo: orderNo,
51
+ itemNames: itemNames,
52
+ itemImages: itemImages,
53
+ renderErrorMessage: renderErrorMessage
54
+ });
55
+ };
56
+ exports.default = OrderCard;
@@ -0,0 +1,10 @@
1
+ import { OrderItem } from '@open-tender/types';
2
+ import { PointsRewardProps } from '@open-tender/ui';
3
+ import React, { ReactNode } from 'react';
4
+ declare const PointsReward: ({ item, callback, children }: {
5
+ item: OrderItem;
6
+ callback?: () => void;
7
+ isLast?: boolean;
8
+ children?: (props: PointsRewardProps) => ReactNode;
9
+ }) => React.ReactNode;
10
+ export default PointsReward;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ var ui_1 = require("@open-tender/ui");
5
+ var react_1 = tslib_1.__importDefault(require("react"));
6
+ var hooks_1 = require("../app/hooks");
7
+ var hooks_2 = require("../hooks");
8
+ var slices_1 = require("../slices");
9
+ var Quantity_1 = tslib_1.__importDefault(require("./Quantity"));
10
+ var PointsReward = function (_a) {
11
+ var _b;
12
+ var item = _a.item, callback = _a.callback, _c = _a.children, children = _c === void 0 ? ui_1.PointsReward : _c;
13
+ var dispatch = (0, hooks_1.useAppDispatch)();
14
+ var _d = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig), config = _d.pointsReward, successMessageConfig = _d.successMessage, cardConfig = _d.card;
15
+ var checkPoints = (0, hooks_1.useAppSelector)(slices_1.selectPosCheckout).points;
16
+ var _e = (0, hooks_2.useCustomerRewards)(), points = _e.points, pointsRemaining = _e.pointsRemaining;
17
+ if (!item.points || item.points.index === undefined || !points)
18
+ return null;
19
+ var _f = item.points, index = _f.index, per = _f.per;
20
+ // const appliedIndices = checkPoints.map(i => i.index)
21
+ // const isApplied = appliedIndices.includes(index)
22
+ var itemPointsApplied = ((_b = checkPoints.find(function (i) { return i.index === index; })) === null || _b === void 0 ? void 0 : _b.points) || 0;
23
+ var apply = function () {
24
+ var currentItem = checkPoints.find(function (i) { return i.index === index; });
25
+ var currentPoints = currentItem ? currentItem.points : 0;
26
+ var updatedItem = {
27
+ index: index,
28
+ points: currentPoints + per
29
+ };
30
+ var otherItems = checkPoints.filter(function (i) { return i.index !== index; });
31
+ var updatedPoints = tslib_1.__spreadArray(tslib_1.__spreadArray([], otherItems, true), [updatedItem], false);
32
+ dispatch((0, slices_1.setPoints)(updatedPoints));
33
+ // dispatch(validatePosOrder())
34
+ if (callback)
35
+ callback();
36
+ };
37
+ var remove = function () {
38
+ var currentItem = checkPoints.find(function (i) { return i.index === index; });
39
+ var currentPoints = currentItem ? currentItem.points : 0;
40
+ var updatedItem = {
41
+ index: index,
42
+ points: currentPoints - per
43
+ };
44
+ var otherItems = checkPoints.filter(function (i) { return i.index !== index; });
45
+ var updatedPoints = updatedItem.points > 0 ? tslib_1.__spreadArray(tslib_1.__spreadArray([], otherItems, true), [updatedItem], false) : otherItems;
46
+ dispatch((0, slices_1.setPoints)(updatedPoints));
47
+ // dispatch(validatePosOrder())
48
+ if (callback)
49
+ callback();
50
+ };
51
+ var renderQuantity = function (quantity, incrementDisabled) { return (react_1.default.createElement(Quantity_1.default, { quantity: quantity, increment: apply, incrementDisabled: incrementDisabled, decrement: remove, fontSize: 24, iconSize: 28, children: ui_1.Quantity })); };
52
+ return children({
53
+ config: config,
54
+ item: item,
55
+ itemPointsApplied: itemPointsApplied,
56
+ pointsRemaining: pointsRemaining,
57
+ successMessageConfig: successMessageConfig,
58
+ cardConfig: cardConfig,
59
+ renderQuantity: renderQuantity
60
+ });
61
+ };
62
+ exports.default = PointsReward;
@@ -0,0 +1,6 @@
1
+ import { PointsRewardsProps } from '@open-tender/ui';
2
+ import React, { ReactNode } from 'react';
3
+ declare const PointsRewards: ({ children }: {
4
+ children?: (props: PointsRewardsProps) => ReactNode;
5
+ }) => React.ReactNode;
6
+ export default PointsRewards;