@open-tender/store 0.1.2

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 (423) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +3 -0
  3. package/dist/cjs/app/hooks.d.ts +34 -0
  4. package/dist/cjs/app/hooks.js +9 -0
  5. package/dist/cjs/app/hooks.js.map +1 -0
  6. package/dist/cjs/app/index.d.ts +1 -0
  7. package/dist/cjs/app/index.js +5 -0
  8. package/dist/cjs/app/index.js.map +1 -0
  9. package/dist/cjs/app/store.d.ts +98 -0
  10. package/dist/cjs/app/store.js +48 -0
  11. package/dist/cjs/app/store.js.map +1 -0
  12. package/dist/cjs/index.d.ts +5 -0
  13. package/dist/cjs/index.js +10 -0
  14. package/dist/cjs/index.js.map +1 -0
  15. package/dist/cjs/services/api.d.ts +71 -0
  16. package/dist/cjs/services/api.js +324 -0
  17. package/dist/cjs/services/api.js.map +1 -0
  18. package/dist/cjs/services/errors.d.ts +50 -0
  19. package/dist/cjs/services/errors.js +54 -0
  20. package/dist/cjs/services/errors.js.map +1 -0
  21. package/dist/cjs/services/index.d.ts +2 -0
  22. package/dist/cjs/services/index.js +7 -0
  23. package/dist/cjs/services/index.js.map +1 -0
  24. package/dist/cjs/slices/alerts.d.ts +5 -0
  25. package/dist/cjs/slices/alerts.js +33 -0
  26. package/dist/cjs/slices/alerts.js.map +1 -0
  27. package/dist/cjs/slices/arrivals.d.ts +22 -0
  28. package/dist/cjs/slices/arrivals.js +98 -0
  29. package/dist/cjs/slices/arrivals.js.map +1 -0
  30. package/dist/cjs/slices/checkout.d.ts +84 -0
  31. package/dist/cjs/slices/checkout.js +676 -0
  32. package/dist/cjs/slices/checkout.js.map +1 -0
  33. package/dist/cjs/slices/completedOrders.d.ts +22 -0
  34. package/dist/cjs/slices/completedOrders.js +105 -0
  35. package/dist/cjs/slices/completedOrders.js.map +1 -0
  36. package/dist/cjs/slices/config.d.ts +38 -0
  37. package/dist/cjs/slices/config.js +166 -0
  38. package/dist/cjs/slices/config.js.map +1 -0
  39. package/dist/cjs/slices/discounts.d.ts +18 -0
  40. package/dist/cjs/slices/discounts.js +64 -0
  41. package/dist/cjs/slices/discounts.js.map +1 -0
  42. package/dist/cjs/slices/errorAlerts.d.ts +22 -0
  43. package/dist/cjs/slices/errorAlerts.js +92 -0
  44. package/dist/cjs/slices/errorAlerts.js.map +1 -0
  45. package/dist/cjs/slices/index.d.ts +22 -0
  46. package/dist/cjs/slices/index.js +26 -0
  47. package/dist/cjs/slices/index.js.map +1 -0
  48. package/dist/cjs/slices/kds.d.ts +106 -0
  49. package/dist/cjs/slices/kds.js +54 -0
  50. package/dist/cjs/slices/kds.js.map +1 -0
  51. package/dist/cjs/slices/menu.d.ts +19 -0
  52. package/dist/cjs/slices/menu.js +65 -0
  53. package/dist/cjs/slices/menu.js.map +1 -0
  54. package/dist/cjs/slices/menuPages.d.ts +18 -0
  55. package/dist/cjs/slices/menuPages.js +68 -0
  56. package/dist/cjs/slices/menuPages.js.map +1 -0
  57. package/dist/cjs/slices/modal.d.ts +9 -0
  58. package/dist/cjs/slices/modal.js +31 -0
  59. package/dist/cjs/slices/modal.js.map +1 -0
  60. package/dist/cjs/slices/notifications.d.ts +5 -0
  61. package/dist/cjs/slices/notifications.js +26 -0
  62. package/dist/cjs/slices/notifications.js.map +1 -0
  63. package/dist/cjs/slices/offlineAuths.d.ts +23 -0
  64. package/dist/cjs/slices/offlineAuths.js +94 -0
  65. package/dist/cjs/slices/offlineAuths.js.map +1 -0
  66. package/dist/cjs/slices/order.d.ts +60 -0
  67. package/dist/cjs/slices/order.js +278 -0
  68. package/dist/cjs/slices/order.js.map +1 -0
  69. package/dist/cjs/slices/orders.d.ts +78 -0
  70. package/dist/cjs/slices/orders.js +415 -0
  71. package/dist/cjs/slices/orders.js.map +1 -0
  72. package/dist/cjs/slices/pos.d.ts +35 -0
  73. package/dist/cjs/slices/pos.js +139 -0
  74. package/dist/cjs/slices/pos.js.map +1 -0
  75. package/dist/cjs/slices/punches.d.ts +19 -0
  76. package/dist/cjs/slices/punches.js +72 -0
  77. package/dist/cjs/slices/punches.js.map +1 -0
  78. package/dist/cjs/slices/refund.d.ts +29 -0
  79. package/dist/cjs/slices/refund.js +131 -0
  80. package/dist/cjs/slices/refund.js.map +1 -0
  81. package/dist/cjs/slices/settings.d.ts +21 -0
  82. package/dist/cjs/slices/settings.js +98 -0
  83. package/dist/cjs/slices/settings.js.map +1 -0
  84. package/dist/cjs/slices/sidebar.d.ts +7 -0
  85. package/dist/cjs/slices/sidebar.js +29 -0
  86. package/dist/cjs/slices/sidebar.js.map +1 -0
  87. package/dist/cjs/slices/surcharges.d.ts +22 -0
  88. package/dist/cjs/slices/surcharges.js +70 -0
  89. package/dist/cjs/slices/surcharges.js.map +1 -0
  90. package/dist/cjs/slices/taxes.d.ts +18 -0
  91. package/dist/cjs/slices/taxes.js +66 -0
  92. package/dist/cjs/slices/taxes.js.map +1 -0
  93. package/dist/cjs/slices/types.d.ts +24 -0
  94. package/dist/cjs/slices/types.js +29 -0
  95. package/dist/cjs/slices/types.js.map +1 -0
  96. package/dist/cjs/types/api/alerts.d.ts +5 -0
  97. package/dist/cjs/types/api/alerts.js +3 -0
  98. package/dist/cjs/types/api/alerts.js.map +1 -0
  99. package/dist/cjs/types/api/arrivals.d.ts +14 -0
  100. package/dist/cjs/types/api/arrivals.js +3 -0
  101. package/dist/cjs/types/api/arrivals.js.map +1 -0
  102. package/dist/cjs/types/api/cart.d.ts +76 -0
  103. package/dist/cjs/types/api/cart.js +3 -0
  104. package/dist/cjs/types/api/cart.js.map +1 -0
  105. package/dist/cjs/types/api/checkout.d.ts +114 -0
  106. package/dist/cjs/types/api/checkout.js +3 -0
  107. package/dist/cjs/types/api/checkout.js.map +1 -0
  108. package/dist/cjs/types/api/config.d.ts +45 -0
  109. package/dist/cjs/types/api/config.js +3 -0
  110. package/dist/cjs/types/api/config.js.map +1 -0
  111. package/dist/cjs/types/api/customer.d.ts +58 -0
  112. package/dist/cjs/types/api/customer.js +3 -0
  113. package/dist/cjs/types/api/customer.js.map +1 -0
  114. package/dist/cjs/types/api/device.d.ts +3 -0
  115. package/dist/cjs/types/api/device.js +3 -0
  116. package/dist/cjs/types/api/device.js.map +1 -0
  117. package/dist/cjs/types/api/discounts.d.ts +20 -0
  118. package/dist/cjs/types/api/discounts.js +3 -0
  119. package/dist/cjs/types/api/discounts.js.map +1 -0
  120. package/dist/cjs/types/api/employee.d.ts +51 -0
  121. package/dist/cjs/types/api/employee.js +3 -0
  122. package/dist/cjs/types/api/employee.js.map +1 -0
  123. package/dist/cjs/types/api/errorAlerts.d.ts +9 -0
  124. package/dist/cjs/types/api/errorAlerts.js +3 -0
  125. package/dist/cjs/types/api/errorAlerts.js.map +1 -0
  126. package/dist/cjs/types/api/favorite.d.ts +69 -0
  127. package/dist/cjs/types/api/favorite.js +3 -0
  128. package/dist/cjs/types/api/favorite.js.map +1 -0
  129. package/dist/cjs/types/api/giftCard.d.ts +11 -0
  130. package/dist/cjs/types/api/giftCard.js +3 -0
  131. package/dist/cjs/types/api/giftCard.js.map +1 -0
  132. package/dist/cjs/types/api/index.d.ts +24 -0
  133. package/dist/cjs/types/api/index.js +28 -0
  134. package/dist/cjs/types/api/index.js.map +1 -0
  135. package/dist/cjs/types/api/menu.d.ts +135 -0
  136. package/dist/cjs/types/api/menu.js +3 -0
  137. package/dist/cjs/types/api/menu.js.map +1 -0
  138. package/dist/cjs/types/api/menuPages.d.ts +15 -0
  139. package/dist/cjs/types/api/menuPages.js +3 -0
  140. package/dist/cjs/types/api/menuPages.js.map +1 -0
  141. package/dist/cjs/types/api/messages.d.ts +5 -0
  142. package/dist/cjs/types/api/messages.js +3 -0
  143. package/dist/cjs/types/api/messages.js.map +1 -0
  144. package/dist/cjs/types/api/notifications.d.ts +5 -0
  145. package/dist/cjs/types/api/notifications.js +3 -0
  146. package/dist/cjs/types/api/notifications.js.map +1 -0
  147. package/dist/cjs/types/api/offlineAuths.d.ts +12 -0
  148. package/dist/cjs/types/api/offlineAuths.js +3 -0
  149. package/dist/cjs/types/api/offlineAuths.js.map +1 -0
  150. package/dist/cjs/types/api/order.d.ts +348 -0
  151. package/dist/cjs/types/api/order.js +3 -0
  152. package/dist/cjs/types/api/order.js.map +1 -0
  153. package/dist/cjs/types/api/refund.d.ts +22 -0
  154. package/dist/cjs/types/api/refund.js +3 -0
  155. package/dist/cjs/types/api/refund.js.map +1 -0
  156. package/dist/cjs/types/api/revenueCenter.d.ts +52 -0
  157. package/dist/cjs/types/api/revenueCenter.js +3 -0
  158. package/dist/cjs/types/api/revenueCenter.js.map +1 -0
  159. package/dist/cjs/types/api/settings.d.ts +10 -0
  160. package/dist/cjs/types/api/settings.js +3 -0
  161. package/dist/cjs/types/api/settings.js.map +1 -0
  162. package/dist/cjs/types/api/store.d.ts +111 -0
  163. package/dist/cjs/types/api/store.js +3 -0
  164. package/dist/cjs/types/api/store.js.map +1 -0
  165. package/dist/cjs/types/api/surcharges.d.ts +15 -0
  166. package/dist/cjs/types/api/surcharges.js +3 -0
  167. package/dist/cjs/types/api/surcharges.js.map +1 -0
  168. package/dist/cjs/types/api/taxes.d.ts +15 -0
  169. package/dist/cjs/types/api/taxes.js +3 -0
  170. package/dist/cjs/types/api/taxes.js.map +1 -0
  171. package/dist/cjs/types/datetimes.d.ts +37 -0
  172. package/dist/cjs/types/datetimes.js +3 -0
  173. package/dist/cjs/types/datetimes.js.map +1 -0
  174. package/dist/cjs/types/global.d.ts +33 -0
  175. package/dist/cjs/types/global.js +3 -0
  176. package/dist/cjs/types/global.js.map +1 -0
  177. package/dist/cjs/types/index.d.ts +5 -0
  178. package/dist/cjs/types/index.js +9 -0
  179. package/dist/cjs/types/index.js.map +1 -0
  180. package/dist/cjs/types/request.d.ts +14 -0
  181. package/dist/cjs/types/request.js +3 -0
  182. package/dist/cjs/types/request.js.map +1 -0
  183. package/dist/cjs/types/theme.d.ts +68 -0
  184. package/dist/cjs/types/theme.js +3 -0
  185. package/dist/cjs/types/theme.js.map +1 -0
  186. package/dist/cjs/utils/datetimes.d.ts +28 -0
  187. package/dist/cjs/utils/datetimes.js +133 -0
  188. package/dist/cjs/utils/datetimes.js.map +1 -0
  189. package/dist/cjs/utils/helpers.d.ts +27 -0
  190. package/dist/cjs/utils/helpers.js +102 -0
  191. package/dist/cjs/utils/helpers.js.map +1 -0
  192. package/dist/cjs/utils/index.d.ts +7 -0
  193. package/dist/cjs/utils/index.js +11 -0
  194. package/dist/cjs/utils/index.js.map +1 -0
  195. package/dist/cjs/utils/keypad.d.ts +9 -0
  196. package/dist/cjs/utils/keypad.js +107 -0
  197. package/dist/cjs/utils/keypad.js.map +1 -0
  198. package/dist/cjs/utils/menu.d.ts +9 -0
  199. package/dist/cjs/utils/menu.js +32 -0
  200. package/dist/cjs/utils/menu.js.map +1 -0
  201. package/dist/cjs/utils/order.d.ts +155 -0
  202. package/dist/cjs/utils/order.js +342 -0
  203. package/dist/cjs/utils/order.js.map +1 -0
  204. package/dist/cjs/utils/orders.d.ts +54 -0
  205. package/dist/cjs/utils/orders.js +284 -0
  206. package/dist/cjs/utils/orders.js.map +1 -0
  207. package/dist/cjs/utils/refunds.d.ts +17 -0
  208. package/dist/cjs/utils/refunds.js +117 -0
  209. package/dist/cjs/utils/refunds.js.map +1 -0
  210. package/dist/cjs/utils/theme.d.ts +2 -0
  211. package/dist/cjs/utils/theme.js +254 -0
  212. package/dist/cjs/utils/theme.js.map +1 -0
  213. package/dist/esm/app/hooks.d.ts +34 -0
  214. package/dist/esm/app/hooks.js +5 -0
  215. package/dist/esm/app/hooks.js.map +1 -0
  216. package/dist/esm/app/index.d.ts +1 -0
  217. package/dist/esm/app/index.js +2 -0
  218. package/dist/esm/app/index.js.map +1 -0
  219. package/dist/esm/app/store.d.ts +98 -0
  220. package/dist/esm/app/store.js +45 -0
  221. package/dist/esm/app/store.js.map +1 -0
  222. package/dist/esm/index.d.ts +5 -0
  223. package/dist/esm/index.js +6 -0
  224. package/dist/esm/index.js.map +1 -0
  225. package/dist/esm/services/api.d.ts +71 -0
  226. package/dist/esm/services/api.js +322 -0
  227. package/dist/esm/services/api.js.map +1 -0
  228. package/dist/esm/services/errors.d.ts +50 -0
  229. package/dist/esm/services/errors.js +51 -0
  230. package/dist/esm/services/errors.js.map +1 -0
  231. package/dist/esm/services/index.d.ts +2 -0
  232. package/dist/esm/services/index.js +3 -0
  233. package/dist/esm/services/index.js.map +1 -0
  234. package/dist/esm/slices/alerts.d.ts +5 -0
  235. package/dist/esm/slices/alerts.js +29 -0
  236. package/dist/esm/slices/alerts.js.map +1 -0
  237. package/dist/esm/slices/arrivals.d.ts +22 -0
  238. package/dist/esm/slices/arrivals.js +94 -0
  239. package/dist/esm/slices/arrivals.js.map +1 -0
  240. package/dist/esm/slices/checkout.d.ts +84 -0
  241. package/dist/esm/slices/checkout.js +665 -0
  242. package/dist/esm/slices/checkout.js.map +1 -0
  243. package/dist/esm/slices/completedOrders.d.ts +22 -0
  244. package/dist/esm/slices/completedOrders.js +101 -0
  245. package/dist/esm/slices/completedOrders.js.map +1 -0
  246. package/dist/esm/slices/config.d.ts +38 -0
  247. package/dist/esm/slices/config.js +154 -0
  248. package/dist/esm/slices/config.js.map +1 -0
  249. package/dist/esm/slices/discounts.d.ts +18 -0
  250. package/dist/esm/slices/discounts.js +60 -0
  251. package/dist/esm/slices/discounts.js.map +1 -0
  252. package/dist/esm/slices/errorAlerts.d.ts +22 -0
  253. package/dist/esm/slices/errorAlerts.js +88 -0
  254. package/dist/esm/slices/errorAlerts.js.map +1 -0
  255. package/dist/esm/slices/index.d.ts +22 -0
  256. package/dist/esm/slices/index.js +23 -0
  257. package/dist/esm/slices/index.js.map +1 -0
  258. package/dist/esm/slices/kds.d.ts +106 -0
  259. package/dist/esm/slices/kds.js +45 -0
  260. package/dist/esm/slices/kds.js.map +1 -0
  261. package/dist/esm/slices/menu.d.ts +19 -0
  262. package/dist/esm/slices/menu.js +60 -0
  263. package/dist/esm/slices/menu.js.map +1 -0
  264. package/dist/esm/slices/menuPages.d.ts +18 -0
  265. package/dist/esm/slices/menuPages.js +63 -0
  266. package/dist/esm/slices/menuPages.js.map +1 -0
  267. package/dist/esm/slices/modal.d.ts +9 -0
  268. package/dist/esm/slices/modal.js +26 -0
  269. package/dist/esm/slices/modal.js.map +1 -0
  270. package/dist/esm/slices/notifications.d.ts +5 -0
  271. package/dist/esm/slices/notifications.js +22 -0
  272. package/dist/esm/slices/notifications.js.map +1 -0
  273. package/dist/esm/slices/offlineAuths.d.ts +23 -0
  274. package/dist/esm/slices/offlineAuths.js +90 -0
  275. package/dist/esm/slices/offlineAuths.js.map +1 -0
  276. package/dist/esm/slices/order.d.ts +60 -0
  277. package/dist/esm/slices/order.js +255 -0
  278. package/dist/esm/slices/order.js.map +1 -0
  279. package/dist/esm/slices/orders.d.ts +78 -0
  280. package/dist/esm/slices/orders.js +405 -0
  281. package/dist/esm/slices/orders.js.map +1 -0
  282. package/dist/esm/slices/pos.d.ts +35 -0
  283. package/dist/esm/slices/pos.js +128 -0
  284. package/dist/esm/slices/pos.js.map +1 -0
  285. package/dist/esm/slices/punches.d.ts +19 -0
  286. package/dist/esm/slices/punches.js +67 -0
  287. package/dist/esm/slices/punches.js.map +1 -0
  288. package/dist/esm/slices/refund.d.ts +29 -0
  289. package/dist/esm/slices/refund.js +127 -0
  290. package/dist/esm/slices/refund.js.map +1 -0
  291. package/dist/esm/slices/settings.d.ts +21 -0
  292. package/dist/esm/slices/settings.js +94 -0
  293. package/dist/esm/slices/settings.js.map +1 -0
  294. package/dist/esm/slices/sidebar.d.ts +7 -0
  295. package/dist/esm/slices/sidebar.js +25 -0
  296. package/dist/esm/slices/sidebar.js.map +1 -0
  297. package/dist/esm/slices/surcharges.d.ts +22 -0
  298. package/dist/esm/slices/surcharges.js +66 -0
  299. package/dist/esm/slices/surcharges.js.map +1 -0
  300. package/dist/esm/slices/taxes.d.ts +18 -0
  301. package/dist/esm/slices/taxes.js +62 -0
  302. package/dist/esm/slices/taxes.js.map +1 -0
  303. package/dist/esm/slices/types.d.ts +24 -0
  304. package/dist/esm/slices/types.js +26 -0
  305. package/dist/esm/slices/types.js.map +1 -0
  306. package/dist/esm/types/api/alerts.d.ts +5 -0
  307. package/dist/esm/types/api/alerts.js +2 -0
  308. package/dist/esm/types/api/alerts.js.map +1 -0
  309. package/dist/esm/types/api/arrivals.d.ts +14 -0
  310. package/dist/esm/types/api/arrivals.js +2 -0
  311. package/dist/esm/types/api/arrivals.js.map +1 -0
  312. package/dist/esm/types/api/cart.d.ts +76 -0
  313. package/dist/esm/types/api/cart.js +2 -0
  314. package/dist/esm/types/api/cart.js.map +1 -0
  315. package/dist/esm/types/api/checkout.d.ts +114 -0
  316. package/dist/esm/types/api/checkout.js +2 -0
  317. package/dist/esm/types/api/checkout.js.map +1 -0
  318. package/dist/esm/types/api/config.d.ts +45 -0
  319. package/dist/esm/types/api/config.js +2 -0
  320. package/dist/esm/types/api/config.js.map +1 -0
  321. package/dist/esm/types/api/customer.d.ts +58 -0
  322. package/dist/esm/types/api/customer.js +2 -0
  323. package/dist/esm/types/api/customer.js.map +1 -0
  324. package/dist/esm/types/api/device.d.ts +3 -0
  325. package/dist/esm/types/api/device.js +2 -0
  326. package/dist/esm/types/api/device.js.map +1 -0
  327. package/dist/esm/types/api/discounts.d.ts +20 -0
  328. package/dist/esm/types/api/discounts.js +2 -0
  329. package/dist/esm/types/api/discounts.js.map +1 -0
  330. package/dist/esm/types/api/employee.d.ts +51 -0
  331. package/dist/esm/types/api/employee.js +2 -0
  332. package/dist/esm/types/api/employee.js.map +1 -0
  333. package/dist/esm/types/api/errorAlerts.d.ts +9 -0
  334. package/dist/esm/types/api/errorAlerts.js +2 -0
  335. package/dist/esm/types/api/errorAlerts.js.map +1 -0
  336. package/dist/esm/types/api/favorite.d.ts +69 -0
  337. package/dist/esm/types/api/favorite.js +2 -0
  338. package/dist/esm/types/api/favorite.js.map +1 -0
  339. package/dist/esm/types/api/giftCard.d.ts +11 -0
  340. package/dist/esm/types/api/giftCard.js +2 -0
  341. package/dist/esm/types/api/giftCard.js.map +1 -0
  342. package/dist/esm/types/api/index.d.ts +24 -0
  343. package/dist/esm/types/api/index.js +25 -0
  344. package/dist/esm/types/api/index.js.map +1 -0
  345. package/dist/esm/types/api/menu.d.ts +135 -0
  346. package/dist/esm/types/api/menu.js +2 -0
  347. package/dist/esm/types/api/menu.js.map +1 -0
  348. package/dist/esm/types/api/menuPages.d.ts +15 -0
  349. package/dist/esm/types/api/menuPages.js +2 -0
  350. package/dist/esm/types/api/menuPages.js.map +1 -0
  351. package/dist/esm/types/api/messages.d.ts +5 -0
  352. package/dist/esm/types/api/messages.js +2 -0
  353. package/dist/esm/types/api/messages.js.map +1 -0
  354. package/dist/esm/types/api/notifications.d.ts +5 -0
  355. package/dist/esm/types/api/notifications.js +2 -0
  356. package/dist/esm/types/api/notifications.js.map +1 -0
  357. package/dist/esm/types/api/offlineAuths.d.ts +12 -0
  358. package/dist/esm/types/api/offlineAuths.js +2 -0
  359. package/dist/esm/types/api/offlineAuths.js.map +1 -0
  360. package/dist/esm/types/api/order.d.ts +348 -0
  361. package/dist/esm/types/api/order.js +2 -0
  362. package/dist/esm/types/api/order.js.map +1 -0
  363. package/dist/esm/types/api/refund.d.ts +22 -0
  364. package/dist/esm/types/api/refund.js +2 -0
  365. package/dist/esm/types/api/refund.js.map +1 -0
  366. package/dist/esm/types/api/revenueCenter.d.ts +52 -0
  367. package/dist/esm/types/api/revenueCenter.js +2 -0
  368. package/dist/esm/types/api/revenueCenter.js.map +1 -0
  369. package/dist/esm/types/api/settings.d.ts +10 -0
  370. package/dist/esm/types/api/settings.js +2 -0
  371. package/dist/esm/types/api/settings.js.map +1 -0
  372. package/dist/esm/types/api/store.d.ts +111 -0
  373. package/dist/esm/types/api/store.js +2 -0
  374. package/dist/esm/types/api/store.js.map +1 -0
  375. package/dist/esm/types/api/surcharges.d.ts +15 -0
  376. package/dist/esm/types/api/surcharges.js +2 -0
  377. package/dist/esm/types/api/surcharges.js.map +1 -0
  378. package/dist/esm/types/api/taxes.d.ts +15 -0
  379. package/dist/esm/types/api/taxes.js +2 -0
  380. package/dist/esm/types/api/taxes.js.map +1 -0
  381. package/dist/esm/types/datetimes.d.ts +37 -0
  382. package/dist/esm/types/datetimes.js +2 -0
  383. package/dist/esm/types/datetimes.js.map +1 -0
  384. package/dist/esm/types/global.d.ts +33 -0
  385. package/dist/esm/types/global.js +2 -0
  386. package/dist/esm/types/global.js.map +1 -0
  387. package/dist/esm/types/index.d.ts +5 -0
  388. package/dist/esm/types/index.js +6 -0
  389. package/dist/esm/types/index.js.map +1 -0
  390. package/dist/esm/types/request.d.ts +14 -0
  391. package/dist/esm/types/request.js +2 -0
  392. package/dist/esm/types/request.js.map +1 -0
  393. package/dist/esm/types/theme.d.ts +68 -0
  394. package/dist/esm/types/theme.js +2 -0
  395. package/dist/esm/types/theme.js.map +1 -0
  396. package/dist/esm/utils/datetimes.d.ts +28 -0
  397. package/dist/esm/utils/datetimes.js +113 -0
  398. package/dist/esm/utils/datetimes.js.map +1 -0
  399. package/dist/esm/utils/helpers.d.ts +27 -0
  400. package/dist/esm/utils/helpers.js +87 -0
  401. package/dist/esm/utils/helpers.js.map +1 -0
  402. package/dist/esm/utils/index.d.ts +7 -0
  403. package/dist/esm/utils/index.js +8 -0
  404. package/dist/esm/utils/index.js.map +1 -0
  405. package/dist/esm/utils/keypad.d.ts +9 -0
  406. package/dist/esm/utils/keypad.js +99 -0
  407. package/dist/esm/utils/keypad.js.map +1 -0
  408. package/dist/esm/utils/menu.d.ts +9 -0
  409. package/dist/esm/utils/menu.js +26 -0
  410. package/dist/esm/utils/menu.js.map +1 -0
  411. package/dist/esm/utils/order.d.ts +155 -0
  412. package/dist/esm/utils/order.js +326 -0
  413. package/dist/esm/utils/order.js.map +1 -0
  414. package/dist/esm/utils/orders.d.ts +54 -0
  415. package/dist/esm/utils/orders.js +264 -0
  416. package/dist/esm/utils/orders.js.map +1 -0
  417. package/dist/esm/utils/refunds.d.ts +17 -0
  418. package/dist/esm/utils/refunds.js +112 -0
  419. package/dist/esm/utils/refunds.js.map +1 -0
  420. package/dist/esm/utils/theme.d.ts +2 -0
  421. package/dist/esm/utils/theme.js +251 -0
  422. package/dist/esm/utils/theme.js.map +1 -0
  423. package/package.json +64 -0
@@ -0,0 +1,7 @@
1
+ export * from './datetimes';
2
+ export * from './helpers';
3
+ export * from './keypad';
4
+ export * from './menu';
5
+ export * from './order';
6
+ export * from './orders';
7
+ export * from './theme';
@@ -0,0 +1,8 @@
1
+ export * from './datetimes';
2
+ export * from './helpers';
3
+ export * from './keypad';
4
+ export * from './menu';
5
+ export * from './order';
6
+ export * from './orders';
7
+ export * from './theme';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA"}
@@ -0,0 +1,9 @@
1
+ export declare const centsToDollars: (cents: number) => string;
2
+ export declare const buttonsKeypad: string[][];
3
+ export declare const buttonsNumpad: string[][];
4
+ export declare const buttonsDollars: string[][];
5
+ export declare const buttonsCheckout: string[][];
6
+ export declare const reduceKeypad: (value: string, key: string) => string;
7
+ export declare const reduceNumpad: (value: string, key: string, clear: boolean) => string;
8
+ export declare const reduceDollars: (value: string, key: string, clear: boolean) => string;
9
+ export declare const reduceCheckout: (value: string, key: string, clear: boolean) => string;
@@ -0,0 +1,99 @@
1
+ import { __spreadArray } from "tslib";
2
+ export var centsToDollars = function (cents) { return (cents / 100).toFixed(2); };
3
+ export var buttonsKeypad = [
4
+ '1234567890'.split(''),
5
+ 'qwertyuiop'.split(''),
6
+ 'asdfghjkl'.split(''),
7
+ __spreadArray(__spreadArray(['Clr'], 'zxcvbnm'.split(''), true), ['Del'], false)
8
+ ];
9
+ export var buttonsNumpad = [
10
+ '123'.split(''),
11
+ '456'.split(''),
12
+ '789'.split(''),
13
+ ['Clr', '0', 'Del']
14
+ ];
15
+ export var buttonsDollars = [
16
+ '123'.split(''),
17
+ '456'.split(''),
18
+ '789'.split(''),
19
+ ['Clr', '0', '00']
20
+ ];
21
+ export var buttonsCheckout = [
22
+ ['1', '2', '3', '$5'],
23
+ ['4', '5', '6', '$10'],
24
+ ['7', '8', '9', '$20'],
25
+ ['Clr', '0', '00', 'Next $']
26
+ ];
27
+ export var reduceKeypad = function (value, key) {
28
+ switch (key) {
29
+ case 'Clear':
30
+ case 'Clr':
31
+ return '';
32
+ case 'Delete':
33
+ case 'Del':
34
+ return value.slice(0, -1);
35
+ case 'Space':
36
+ return value + ' ';
37
+ default:
38
+ return value + key;
39
+ }
40
+ };
41
+ export var reduceNumpad = function (value, key, clear) {
42
+ var current = clear ? '' : value;
43
+ switch (key) {
44
+ case 'Clear':
45
+ case 'Clr':
46
+ return '';
47
+ case 'Delete':
48
+ case 'Del':
49
+ return value.slice(0, -1);
50
+ default:
51
+ return current + key;
52
+ }
53
+ };
54
+ export var reduceDollars = function (value, key, clear) {
55
+ var current = clear ? '' : value;
56
+ switch (key) {
57
+ case 'Clear':
58
+ case 'Clr':
59
+ return '0.00';
60
+ default: {
61
+ var val = parseInt(current.replace('.', '') + key);
62
+ return centsToDollars(val);
63
+ }
64
+ }
65
+ };
66
+ export var reduceCheckout = function (value, key, clear) {
67
+ var current = !key.toString().includes('$') && clear ? '' : value;
68
+ switch (key) {
69
+ case 'Clear':
70
+ case 'Clr':
71
+ return '0.00';
72
+ case 'Next $': {
73
+ var dollars = current.split('.')[0];
74
+ var val = (parseInt(dollars) + 1) * 100;
75
+ return centsToDollars(val);
76
+ }
77
+ case '$5':
78
+ case '$10':
79
+ case '$20': {
80
+ var keyValue = parseInt(key.replace('$', '')) * 100;
81
+ var _a = current.split('.').map(function (n) { return parseInt(n); }), dollars = _a[0], cents = _a[1];
82
+ var val = void 0;
83
+ if (cents > 0 || dollars % 10 > 0) {
84
+ val =
85
+ Math.floor(parseInt(current.replace('.', '')) / keyValue) * keyValue +
86
+ keyValue;
87
+ }
88
+ else {
89
+ val = dollars * 100 + keyValue;
90
+ }
91
+ return centsToDollars(val);
92
+ }
93
+ default: {
94
+ var val = parseInt(current.replace('.', '') + key);
95
+ return centsToDollars(val);
96
+ }
97
+ }
98
+ };
99
+ //# sourceMappingURL=keypad.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keypad.js","sourceRoot":"","sources":["../../../src/utils/keypad.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { MenuCategories, MenuSections } from '../types';
2
+ export declare const flattenCategories: (categories: MenuCategories) => import("../types").MenuCategory[];
3
+ export declare const flattenItems: (categories: MenuCategories) => import("../types").MenuItem[];
4
+ export declare const makeMenuSections: (sections: MenuSections, categories: MenuCategories) => {
5
+ items: import("../types").MenuItem[];
6
+ name: string;
7
+ pos_section_id: number;
8
+ position: number;
9
+ }[];
@@ -0,0 +1,26 @@
1
+ import { __assign, __spreadArray } from "tslib";
2
+ export var flattenCategories = function (categories) {
3
+ return categories.reduce(function (arr, i) {
4
+ var cats = __spreadArray([i], i.children, true);
5
+ return __spreadArray(__spreadArray([], arr, true), cats, true);
6
+ }, []);
7
+ };
8
+ export var flattenItems = function (categories) {
9
+ return categories.reduce(function (arr, i) {
10
+ var items = i.items.map(function (item) { return (__assign(__assign({}, item), { color: i.pos_display_color })); });
11
+ return __spreadArray(__spreadArray([], arr, true), items, true);
12
+ }, []);
13
+ };
14
+ export var makeMenuSections = function (sections, categories) {
15
+ var flatCategories = flattenCategories(categories);
16
+ return sections
17
+ .map(function (s) {
18
+ var cats = flatCategories
19
+ .filter(function (i) { return i.pos_section_id === s.pos_section_id; })
20
+ .sort(function (a, b) { return a.pos_display_order - b.pos_display_order; });
21
+ var items = flattenItems(cats);
22
+ return __assign(__assign({}, s), { items: items });
23
+ })
24
+ .filter(function (i) { return i.items.length; });
25
+ };
26
+ //# sourceMappingURL=menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.js","sourceRoot":"","sources":["../../../src/utils/menu.ts"],"names":[],"mappings":";AAEA,MAAM,CAAC,IAAM,iBAAiB,GAAG,UAAC,UAA0B;IAC1D,OAAO,UAAU,CAAC,MAAM,CAAC,UAAC,GAAmB,EAAE,CAAC;QAC9C,IAAM,IAAI,kBAAI,CAAC,GAAK,CAAC,CAAC,QAAQ,OAAC,CAAA;QAC/B,uCAAW,GAAG,SAAK,IAAI,QAAC;IAC1B,CAAC,EAAE,EAAE,CAAC,CAAA;AACR,CAAC,CAAA;AAED,MAAM,CAAC,IAAM,YAAY,GAAG,UAAC,UAA0B;IACrD,OAAO,UAAU,CAAC,MAAM,CAAC,UAAC,GAAc,EAAE,CAAC;QACzC,IAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,uBAC7B,IAAI,KACP,KAAK,EAAE,CAAC,CAAC,iBAAiB,IAC1B,EAHgC,CAGhC,CAAC,CAAA;QACH,uCAAW,GAAG,SAAK,KAAK,QAAC;IAC3B,CAAC,EAAE,EAAE,CAAC,CAAA;AACR,CAAC,CAAA;AAED,MAAM,CAAC,IAAM,gBAAgB,GAAG,UAC9B,QAAsB,EACtB,UAA0B;IAE1B,IAAM,cAAc,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACpD,OAAO,QAAQ;SACZ,GAAG,CAAC,UAAA,CAAC;QACJ,IAAM,IAAI,GAAG,cAAc;aACxB,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,cAAc,KAAK,CAAC,CAAC,cAAc,EAArC,CAAqC,CAAC;aAClD,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC,iBAAiB,EAAzC,CAAyC,CAAC,CAAA;QAC5D,IAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QAChC,6BAAY,CAAC,KAAE,KAAK,OAAA,IAAE;IACxB,CAAC,CAAC;SACD,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,KAAK,CAAC,MAAM,EAAd,CAAc,CAAC,CAAA;AAChC,CAAC,CAAA"}
@@ -0,0 +1,155 @@
1
+ import { Cart, CartItem, CartItemOption, GuestItem, MenuItem, NutritionalInfo, OrderChannel, OrderTypeMap, ServiceTypeMap, SimpleCart, TenderType, TenderTypeMap } from '../types';
2
+ export declare const orderTypeNamesMap: OrderTypeMap;
3
+ export declare const serviceTypeNamesMap: ServiceTypeMap;
4
+ export declare const tenderTypeNamesMap: TenderTypeMap;
5
+ export declare const makeTenderTypeName: (tenderType: TenderType) => string;
6
+ export declare const makeChannelName: (channel: OrderChannel) => string | null | undefined;
7
+ export declare const calcPrices: (item: CartItem) => {
8
+ groups: {
9
+ quantity: number;
10
+ options: {
11
+ totalPrice: number;
12
+ totalPoints: number;
13
+ totalCals: number;
14
+ id: number;
15
+ name: string;
16
+ shortName: string;
17
+ description: string | null;
18
+ imageUrl: string | null;
19
+ allergens: string[];
20
+ tags: string[];
21
+ ingredients: string | null;
22
+ nutritionalInfo: NutritionalInfo | null;
23
+ cals: number | null;
24
+ price: number;
25
+ quantity: number;
26
+ isDefault: boolean;
27
+ increment: number;
28
+ max: number;
29
+ min: number;
30
+ isSoldOut: boolean;
31
+ points: number;
32
+ }[];
33
+ id: number;
34
+ name: string;
35
+ description: string | null;
36
+ imageUrl: string | null;
37
+ included: number;
38
+ max: number;
39
+ min: number;
40
+ isSize: boolean;
41
+ }[];
42
+ totalPrice: number;
43
+ totalPoints: number | null;
44
+ totalCals: number | null;
45
+ index?: number | undefined;
46
+ id: number;
47
+ name: string;
48
+ shortName: string;
49
+ cart_guest_id?: number | null | undefined;
50
+ category: string;
51
+ customer_id?: number | null | undefined;
52
+ description: string | null;
53
+ imageUrl: string | null;
54
+ slug: string;
55
+ allergens: string[];
56
+ tags: string[];
57
+ ingredients: string | null;
58
+ madeFor?: string | null | undefined;
59
+ notes?: string | null | undefined;
60
+ nutritionalInfo: NutritionalInfo | null;
61
+ cals: number | null;
62
+ quantity: number;
63
+ price: number;
64
+ increment: number;
65
+ max: number;
66
+ min: number;
67
+ points: number | null;
68
+ upsellItems: number[];
69
+ similarItems: number[];
70
+ };
71
+ export declare const calcNutrition: (item: CartItem) => NutritionalInfo | null;
72
+ export declare const makeCartItem: (item: MenuItem, isEdit?: boolean, soldOut?: never[], simpleItem?: GuestItem, hasPoints?: boolean) => {
73
+ groups: {
74
+ quantity: number;
75
+ options: {
76
+ totalPrice: number;
77
+ totalPoints: number;
78
+ totalCals: number;
79
+ id: number;
80
+ name: string;
81
+ shortName: string;
82
+ description: string | null;
83
+ imageUrl: string | null;
84
+ allergens: string[];
85
+ tags: string[];
86
+ ingredients: string | null;
87
+ nutritionalInfo: NutritionalInfo | null;
88
+ cals: number | null;
89
+ price: number;
90
+ quantity: number;
91
+ isDefault: boolean;
92
+ increment: number;
93
+ max: number;
94
+ min: number;
95
+ isSoldOut: boolean;
96
+ points: number;
97
+ }[];
98
+ id: number;
99
+ name: string;
100
+ description: string | null;
101
+ imageUrl: string | null;
102
+ included: number;
103
+ max: number;
104
+ min: number;
105
+ isSize: boolean;
106
+ }[];
107
+ totalPrice: number;
108
+ totalPoints: number | null;
109
+ totalCals: number | null;
110
+ index?: number | undefined;
111
+ id: number;
112
+ name: string;
113
+ shortName: string;
114
+ cart_guest_id?: number | null | undefined;
115
+ category: string;
116
+ customer_id?: number | null | undefined;
117
+ description: string | null;
118
+ imageUrl: string | null;
119
+ slug: string;
120
+ allergens: string[];
121
+ tags: string[];
122
+ ingredients: string | null;
123
+ madeFor?: string | null | undefined;
124
+ notes?: string | null | undefined;
125
+ nutritionalInfo: NutritionalInfo | null;
126
+ cals: number | null;
127
+ quantity: number;
128
+ price: number;
129
+ increment: number;
130
+ max: number;
131
+ min: number;
132
+ points: number | null;
133
+ upsellItems: number[];
134
+ similarItems: number[];
135
+ };
136
+ export declare const makeCartItemSignature: (item: CartItem) => string;
137
+ export declare const addItem: (cart: Cart, item: CartItem) => {
138
+ cart: Cart;
139
+ cartCounts: {};
140
+ };
141
+ export declare const removeItem: (cart: Cart, index: number) => {
142
+ cart: Cart;
143
+ cartCounts: {};
144
+ };
145
+ export declare const incrementItem: (cart: Cart, index: number) => {
146
+ cart: Cart;
147
+ cartCounts: {};
148
+ };
149
+ export declare const decrementItem: (cart: Cart, index: number) => {
150
+ cart: Cart;
151
+ cartCounts: {};
152
+ };
153
+ export declare const makeSimpleCart: (cart: Cart) => SimpleCart;
154
+ export declare const calcCartCounts: (cart: Cart) => {};
155
+ export declare const getItemOptions: (item: CartItem) => Array<CartItemOption>;
@@ -0,0 +1,326 @@
1
+ import { __assign, __spreadArray } from "tslib";
2
+ import { capitalize, convertStringToArray } from './helpers';
3
+ export var orderTypeNamesMap = {
4
+ OLO: 'Regular',
5
+ CATERING: 'Catering',
6
+ MERCH: 'Merch'
7
+ };
8
+ export var serviceTypeNamesMap = {
9
+ WALKIN: 'Dine-In',
10
+ PICKUP: 'Pickup',
11
+ DELIVERY: 'Delivery',
12
+ PORTAL: '3rd Party'
13
+ };
14
+ export var tenderTypeNamesMap = {
15
+ CASH: 'Cash',
16
+ CREDIT: 'Credit',
17
+ HOUSE_ACCOUNT: 'House Account',
18
+ GIFT_CARD: 'Gift Card',
19
+ COMP: 'Comp'
20
+ };
21
+ export var makeTenderTypeName = function (tenderType) {
22
+ var name = tenderTypeNamesMap[tenderType];
23
+ return name || capitalize(tenderType.replace('_', ' '));
24
+ };
25
+ export var makeChannelName = function (channel) {
26
+ switch (channel.type) {
27
+ case 'ONLINE':
28
+ return 'Web';
29
+ case 'APP':
30
+ return 'App';
31
+ case 'PORTAL':
32
+ return channel.ext_name;
33
+ default:
34
+ return channel.type;
35
+ }
36
+ };
37
+ var makeCartItemGroups = function (optionGroups, isEdit, soldOut) {
38
+ if (isEdit === void 0) { isEdit = false; }
39
+ if (soldOut === void 0) { soldOut = []; }
40
+ if (!optionGroups)
41
+ return [];
42
+ var groups = optionGroups.map(function (g) {
43
+ var options = g.option_items.map(function (o) {
44
+ var _a;
45
+ var isSoldOut = soldOut.includes(o.id);
46
+ var quantity = isSoldOut
47
+ ? 0
48
+ : o.opt_is_default && !isEdit
49
+ ? o.min_quantity || 1
50
+ : 0;
51
+ var cals = ((_a = o.nutritional_info) === null || _a === void 0 ? void 0 : _a.calories)
52
+ ? parseInt(o.nutritional_info.calories.toString())
53
+ : null;
54
+ var option = {
55
+ id: o.id,
56
+ name: o.name,
57
+ shortName: o.short_name,
58
+ description: o.description,
59
+ imageUrl: o.small_image_url,
60
+ allergens: convertStringToArray(o.allergens),
61
+ tags: convertStringToArray(o.tags),
62
+ ingredients: o.ingredients,
63
+ nutritionalInfo: o.nutritional_info,
64
+ cals: cals,
65
+ price: parseFloat(o.price),
66
+ quantity: quantity,
67
+ isDefault: o.opt_is_default ? true : false,
68
+ increment: o.increment,
69
+ max: isSoldOut ? 0 : o.max_quantity,
70
+ min: o.min_quantity,
71
+ isSoldOut: isSoldOut,
72
+ points: o.points || 0,
73
+ totalPrice: 0.0,
74
+ totalPoints: 0.0,
75
+ totalCals: 0.0
76
+ };
77
+ return option;
78
+ });
79
+ var group = {
80
+ id: g.id,
81
+ name: g.name,
82
+ description: g.description,
83
+ imageUrl: g.small_image_url,
84
+ included: g.included_options,
85
+ max: g.max_options,
86
+ min: g.min_options,
87
+ isSize: !!g.is_size,
88
+ options: options
89
+ };
90
+ return group;
91
+ });
92
+ return groups;
93
+ };
94
+ export var calcPrices = function (item) {
95
+ var groups = item.groups.map(function (g) {
96
+ var groupQuantity = 0;
97
+ var options = g.options.map(function (o) {
98
+ var includedRemaining = Math.max(g.included - groupQuantity, 0);
99
+ var priceQuantity = Math.max(o.quantity - includedRemaining, 0);
100
+ var option = __assign(__assign({}, o), { totalPrice: priceQuantity * o.price, totalPoints: priceQuantity * o.points, totalCals: o.cals ? o.quantity * o.cals : 0 });
101
+ groupQuantity += o.quantity || 0;
102
+ return option;
103
+ });
104
+ return __assign(__assign({}, g), { quantity: groupQuantity, options: options });
105
+ });
106
+ var optionsPrice = groups.reduce(function (t, g) {
107
+ return t + g.options.reduce(function (ot, o) { return ot + o.totalPrice; }, 0.0);
108
+ }, 0.0);
109
+ var totalPrice = item.quantity * (item.price + optionsPrice);
110
+ var optionsPoints = groups.reduce(function (t, g) {
111
+ return t + g.options.reduce(function (ot, o) { return ot + o.totalPoints; }, 0);
112
+ }, 0.0);
113
+ var totalPoints = item.points
114
+ ? item.quantity * (item.points + optionsPoints)
115
+ : null;
116
+ var optionsCals = groups.reduce(function (t, g) {
117
+ return t + g.options.reduce(function (ot, o) { return ot + o.totalCals; }, 0);
118
+ }, 0.0);
119
+ var totalCals = item.cals || item.cals === 0
120
+ ? item.quantity * (item.cals + optionsCals)
121
+ : null;
122
+ return __assign(__assign({}, item), { groups: groups, totalPrice: totalPrice, totalPoints: totalPoints, totalCals: totalCals });
123
+ };
124
+ var nutritionKeys = [
125
+ 'calories',
126
+ 'cholesterol',
127
+ 'dietary_fiber',
128
+ 'protein',
129
+ 'saturated_fat',
130
+ 'sodium',
131
+ 'sugars',
132
+ 'total_carbs',
133
+ 'total_fat',
134
+ 'trans_fat'
135
+ ];
136
+ export var calcNutrition = function (item) {
137
+ var nutritionalInfo = item.nutritionalInfo, groups = item.groups;
138
+ if (!nutritionalInfo)
139
+ return null;
140
+ var nutrition = __assign({}, nutritionalInfo);
141
+ var options = groups.reduce(function (arr, g) {
142
+ return __spreadArray(__spreadArray([], arr, true), g.options.filter(function (o) { return o.quantity > 0; }), true);
143
+ }, []);
144
+ options.forEach(function (o) {
145
+ nutritionKeys.forEach(function (key) {
146
+ var _a;
147
+ var optionVal = o.nutritionalInfo
148
+ ? o.nutritionalInfo[key] || 0
149
+ : 0;
150
+ optionVal =
151
+ typeof optionVal === 'string' ? parseInt(optionVal) : optionVal;
152
+ var itemVal = nutrition[key] || 0;
153
+ itemVal = typeof itemVal === 'string' ? parseInt(itemVal) : optionVal;
154
+ nutrition = __assign(__assign({}, nutrition), (_a = {}, _a[key] = itemVal + optionVal, _a));
155
+ });
156
+ });
157
+ return nutrition;
158
+ };
159
+ export var makeCartItem = function (item, isEdit, soldOut, simpleItem, hasPoints) {
160
+ if (isEdit === void 0) { isEdit = false; }
161
+ if (soldOut === void 0) { soldOut = []; }
162
+ if (hasPoints === void 0) { hasPoints = false; }
163
+ var groups = item.option_groups
164
+ ? makeCartItemGroups(item.option_groups, isEdit, soldOut)
165
+ : [];
166
+ var nutritional_info = item.nutritional_info;
167
+ var cals = (nutritional_info === null || nutritional_info === void 0 ? void 0 : nutritional_info.calories)
168
+ ? parseInt(nutritional_info.calories.toString())
169
+ : null;
170
+ var nutritionalInfo = (nutritional_info === null || nutritional_info === void 0 ? void 0 : nutritional_info.calories) ? nutritional_info : null;
171
+ var orderItem = {
172
+ id: item.id,
173
+ name: item.name,
174
+ shortName: item.short_name,
175
+ category: item.category_name,
176
+ description: item.description,
177
+ imageUrl: item.large_image_url,
178
+ slug: item.slug,
179
+ allergens: convertStringToArray(item.allergens),
180
+ tags: convertStringToArray(item.tags),
181
+ ingredients: item.ingredients,
182
+ nutritionalInfo: nutritionalInfo,
183
+ cals: cals,
184
+ groups: groups,
185
+ quantity: item.min_quantity || 1 * item.increment,
186
+ price: parseFloat(item.price),
187
+ increment: item.increment,
188
+ max: item.max_quantity,
189
+ min: item.min_quantity,
190
+ points: hasPoints ? item.points || null : null,
191
+ upsellItems: item.upsell_items || [],
192
+ similarItems: item.similar_items || [],
193
+ totalPrice: 0.0,
194
+ totalPoints: 0.0,
195
+ totalCals: 0.0
196
+ };
197
+ if (simpleItem) {
198
+ var cart_guest_id = simpleItem.cart_guest_id, customer_id = simpleItem.customer_id, made_for = simpleItem.made_for, notes = simpleItem.notes;
199
+ if (cart_guest_id)
200
+ orderItem.cart_guest_id = cart_guest_id;
201
+ if (customer_id)
202
+ orderItem.customer_id = customer_id;
203
+ if (made_for)
204
+ orderItem.madeFor = made_for;
205
+ if (notes)
206
+ orderItem.notes = notes;
207
+ }
208
+ var pricedItem = calcPrices(orderItem);
209
+ return pricedItem;
210
+ };
211
+ export var makeCartItemSignature = function (item) {
212
+ var optionIds = item.groups
213
+ .reduce(function (arr, group) {
214
+ var ids = group.options
215
+ .filter(function (o) { return o.quantity > 0; })
216
+ .reduce(function (optionsArr, o) {
217
+ var optionArr = new Array(o.quantity);
218
+ optionArr.fill(o.id);
219
+ return __spreadArray(__spreadArray([], optionsArr, true), optionArr, true);
220
+ }, []);
221
+ return __spreadArray(__spreadArray([], arr, true), ids, true);
222
+ }, [])
223
+ .sort(function (a, b) { return a - b; });
224
+ var itemIds = __spreadArray([item.id], optionIds, true).join('.');
225
+ var signature = "".concat(itemIds, ".").concat(item.madeFor, ".").concat(item.notes);
226
+ return signature;
227
+ };
228
+ export var addItem = function (cart, item) {
229
+ if (typeof item.index === 'undefined') {
230
+ var itemSignature_1 = makeCartItemSignature(item);
231
+ var itemSignatures = cart.map(function (i) { return (__assign({ signature: makeCartItemSignature(i) }, i)); });
232
+ var match = itemSignatures.find(function (i) { return i.signature === itemSignature_1; });
233
+ if (match && match.index) {
234
+ var quantity = item.quantity + match.quantity;
235
+ var newItem = __assign(__assign({}, item), { quantity: quantity });
236
+ var updated = calcPrices(newItem);
237
+ cart[match.index] = __assign(__assign({}, updated), { index: match.index });
238
+ }
239
+ else {
240
+ cart.push(__assign(__assign({}, item), { index: cart.length }));
241
+ }
242
+ }
243
+ else {
244
+ cart[item.index] = item;
245
+ }
246
+ var cartCounts = calcCartCounts(cart);
247
+ return { cart: cart, cartCounts: cartCounts };
248
+ };
249
+ var getItemRealIndex = function (cart, index) {
250
+ return cart.findIndex(function (item) { return item.index === index; });
251
+ };
252
+ export var removeItem = function (cart, index) {
253
+ var realIndex = getItemRealIndex(cart, index);
254
+ if (realIndex > -1) {
255
+ cart.splice(realIndex, 1);
256
+ cart = cart.map(function (i, _index) { return (__assign(__assign({}, i), { index: _index })); });
257
+ }
258
+ var cartCounts = calcCartCounts(cart);
259
+ return { cart: cart, cartCounts: cartCounts };
260
+ };
261
+ export var incrementItem = function (cart, index) {
262
+ var realIndex = getItemRealIndex(cart, index);
263
+ if (realIndex > -1) {
264
+ var item = cart[realIndex];
265
+ if (item.max === 0 || item.quantity < item.max) {
266
+ var newQuantity = item.quantity + item.increment;
267
+ newQuantity =
268
+ item.max === 0 ? newQuantity : Math.min(item.max, newQuantity);
269
+ var newItem = calcPrices(__assign(__assign({}, item), { quantity: newQuantity }));
270
+ cart[realIndex] = newItem;
271
+ }
272
+ }
273
+ var cartCounts = calcCartCounts(cart);
274
+ return { cart: cart, cartCounts: cartCounts };
275
+ };
276
+ export var decrementItem = function (cart, index) {
277
+ var realIndex = getItemRealIndex(cart, index);
278
+ if (realIndex > -1) {
279
+ var item = cart[realIndex];
280
+ var newQuantity = Math.max(item.quantity - item.increment, 0);
281
+ if (newQuantity === 0 || newQuantity < item.min) {
282
+ cart.splice(realIndex, 1);
283
+ cart = cart.map(function (i, _index) { return (__assign(__assign({}, i), { index: _index })); });
284
+ }
285
+ else {
286
+ var newItem = calcPrices(__assign(__assign({}, item), { quantity: newQuantity }));
287
+ cart[realIndex] = newItem;
288
+ }
289
+ }
290
+ var cartCounts = calcCartCounts(cart);
291
+ return { cart: cart, cartCounts: cartCounts };
292
+ };
293
+ export var makeSimpleCart = function (cart) {
294
+ var simpleCart = cart.map(function (i) {
295
+ var groups = i.groups.map(function (g) {
296
+ var options = g.options
297
+ .filter(function (o) { return o.quantity !== 0; })
298
+ .map(function (o) { return ({ id: o.id, quantity: o.quantity }); });
299
+ return { id: g.id, options: options };
300
+ });
301
+ return {
302
+ id: i.id,
303
+ quantity: i.quantity,
304
+ groups: groups,
305
+ made_for: i.madeFor || '',
306
+ notes: i.notes || ''
307
+ };
308
+ });
309
+ return simpleCart;
310
+ };
311
+ export var calcCartCounts = function (cart) {
312
+ return cart.reduce(function (obj, item) {
313
+ var _a;
314
+ var newCount = (obj[item.id] || 0) + item.quantity;
315
+ return __assign(__assign({}, obj), (_a = {}, _a[item.id] = newCount, _a));
316
+ }, {});
317
+ };
318
+ export var getItemOptions = function (item) {
319
+ if (!item.groups || !item.groups.length)
320
+ return [];
321
+ var options = item.groups
322
+ .map(function (group) { return group.options.filter(function (option) { return option.quantity > 0; }); })
323
+ .reduce(function (arr, i) { return __spreadArray(__spreadArray([], arr, true), i, true); }, []);
324
+ return options;
325
+ };
326
+ //# sourceMappingURL=order.js.map