@pisell/pisellos 0.0.569 → 0.10.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 (328) hide show
  1. package/dist/core/index.js +10 -6
  2. package/dist/index.d.ts +0 -1
  3. package/dist/index.js +0 -3
  4. package/dist/model/strategy/adapter/promotion/index.js +9 -0
  5. package/dist/model/strategy/adapter/walletPass/evaluator.js +7 -5
  6. package/dist/model/strategy/adapter/walletPass/example.js +26 -3
  7. package/dist/model/strategy/adapter/walletPass/index.js +5 -5
  8. package/dist/model/strategy/adapter/walletPass/type.d.ts +0 -3
  9. package/dist/model/strategy/adapter/walletPass/utils.d.ts +0 -26
  10. package/dist/model/strategy/adapter/walletPass/utils.js +17 -92
  11. package/dist/model/strategy/strategy-example.js +19 -5
  12. package/dist/modules/BaseModule.d.ts +1 -1
  13. package/dist/modules/BaseModule.js +8 -10
  14. package/dist/modules/Cart/index.js +3 -0
  15. package/dist/modules/Cart/utils/cartProduct.js +1 -0
  16. package/dist/modules/Cart/utils/cartResource.js +0 -2
  17. package/dist/modules/Cart/utils/changePrice.js +9 -16
  18. package/dist/modules/Date/index.js +5 -1
  19. package/dist/modules/Discount/index.d.ts +0 -1
  20. package/dist/modules/Discount/index.js +7 -22
  21. package/dist/modules/Discount/types.d.ts +0 -1
  22. package/dist/modules/OpenData/index.js +2 -0
  23. package/dist/modules/Order/index.js +70 -40
  24. package/dist/modules/Payment/index.js +162 -97
  25. package/dist/modules/Payment/types.d.ts +4 -8
  26. package/dist/modules/Payment/walletpass.d.ts +0 -2
  27. package/dist/modules/Payment/walletpass.js +5 -4
  28. package/dist/modules/ProductList/index.d.ts +1 -1
  29. package/dist/modules/ProductList/index.js +3 -12
  30. package/dist/modules/ProductList/types.d.ts +0 -1
  31. package/dist/modules/Rules/index.js +126 -427
  32. package/dist/modules/SalesSummary/utils.js +1 -2
  33. package/dist/modules/Schedule/getDateIsInSchedule.js +0 -5
  34. package/dist/modules/Schedule/index.js +1 -0
  35. package/dist/modules/Schedule/utils.js +1 -0
  36. package/dist/modules/Step/index.js +1 -0
  37. package/dist/modules/Summary/utils.js +22 -43
  38. package/dist/plugins/request.js +4 -1
  39. package/dist/plugins/window.js +6 -2
  40. package/dist/server/index.js +129 -97
  41. package/dist/server/modules/menu/index.js +41 -32
  42. package/dist/server/modules/order/index.js +4 -2
  43. package/dist/server/modules/products/index.js +42 -24
  44. package/dist/server/modules/quotation/index.js +38 -29
  45. package/dist/server/modules/resource/index.js +4 -3
  46. package/dist/server/modules/schedule/index.js +35 -27
  47. package/dist/server/utils/product.js +1 -0
  48. package/dist/solution/BaseSales/index.js +41 -38
  49. package/dist/solution/BookingByStep/index.d.ts +1 -1
  50. package/dist/solution/BookingByStep/index.js +60 -11
  51. package/dist/solution/BookingByStep/utils/capacity.js +11 -1
  52. package/dist/solution/BookingByStep/utils/resources.js +3 -1
  53. package/dist/solution/BookingByStep/utils/timeslots.js +43 -2
  54. package/dist/solution/BookingTicket/index.d.ts +1 -1
  55. package/dist/solution/BookingTicket/index.js +2 -0
  56. package/dist/solution/BookingTicket/utils/scan/cloudSearch.js +7 -6
  57. package/dist/solution/BookingTicket/utils/scan/handleScan.js +31 -25
  58. package/dist/solution/BookingTicket/utils/scan/index.js +10 -6
  59. package/dist/solution/BuyTickets/index.js +12 -9
  60. package/dist/solution/Checkout/index.js +252 -177
  61. package/dist/solution/Checkout/utils/index.js +16 -4
  62. package/dist/solution/RegisterAndLogin/index.js +76 -30
  63. package/dist/solution/ScanOrder/index.js +60 -50
  64. package/dist/solution/ShopDiscount/index.js +14 -15
  65. package/dist/solution/ShopDiscount/types.d.ts +4 -5
  66. package/dist/solution/ShopDiscount/utils.d.ts +0 -9
  67. package/dist/solution/ShopDiscount/utils.js +0 -9
  68. package/dist/solution/VenueBooking/index.d.ts +3 -31
  69. package/dist/solution/VenueBooking/index.js +496 -651
  70. package/dist/solution/VenueBooking/types.d.ts +1 -3
  71. package/dist/solution/VenueBooking/types.js +0 -1
  72. package/dist/solution/VenueBooking/utils/dateSummary.d.ts +2 -2
  73. package/dist/solution/VenueBooking/utils/dateSummary.js +25 -12
  74. package/dist/solution/VenueBooking/utils/timeSlot.d.ts +0 -2
  75. package/dist/solution/VenueBooking/utils/timeSlot.js +4 -9
  76. package/dist/types/index.d.ts +1 -1
  77. package/dist/utils/task.js +18 -15
  78. package/dist/utils/watch.js +1 -0
  79. package/lib/apis/picoding.js +0 -2
  80. package/lib/core/index.js +132 -130
  81. package/lib/effects/index.js +57 -46
  82. package/lib/index.d.ts +0 -1
  83. package/lib/index.js +50 -92
  84. package/lib/model/index.js +21 -14
  85. package/lib/model/strategy/adapter/dataVariant/adapter.js +50 -38
  86. package/lib/model/strategy/adapter/dataVariant/evaluator.js +236 -162
  87. package/lib/model/strategy/adapter/dataVariant/examples.js +237 -229
  88. package/lib/model/strategy/adapter/dataVariant/index.js +34 -39
  89. package/lib/model/strategy/adapter/dataVariant/type.js +28 -57
  90. package/lib/model/strategy/adapter/index.js +64 -100
  91. package/lib/model/strategy/adapter/itemRule/adapter.js +144 -156
  92. package/lib/model/strategy/adapter/itemRule/evaluator.js +48 -36
  93. package/lib/model/strategy/adapter/itemRule/examples.js +225 -295
  94. package/lib/model/strategy/adapter/itemRule/index.js +57 -83
  95. package/lib/model/strategy/adapter/itemRule/type.js +36 -97
  96. package/lib/model/strategy/adapter/promotion/adapter.js +63 -84
  97. package/lib/model/strategy/adapter/promotion/evaluator.js +231 -381
  98. package/lib/model/strategy/adapter/promotion/examples.js +159 -139
  99. package/lib/model/strategy/adapter/promotion/index.js +49 -1
  100. package/lib/model/strategy/adapter/promotion/type.js +35 -199
  101. package/lib/model/strategy/adapter/type.js +16 -4
  102. package/lib/model/strategy/adapter/walletPass/evaluator.js +152 -180
  103. package/lib/model/strategy/adapter/walletPass/example.js +190 -217
  104. package/lib/model/strategy/adapter/walletPass/index.js +51 -75
  105. package/lib/model/strategy/adapter/walletPass/locales.js +58 -36
  106. package/lib/model/strategy/adapter/walletPass/type.d.ts +0 -3
  107. package/lib/model/strategy/adapter/walletPass/type.js +16 -4
  108. package/lib/model/strategy/adapter/walletPass/utils.d.ts +0 -26
  109. package/lib/model/strategy/adapter/walletPass/utils.js +383 -678
  110. package/lib/model/strategy/engine.js +168 -270
  111. package/lib/model/strategy/index.js +34 -49
  112. package/lib/model/strategy/strategy-example.js +239 -243
  113. package/lib/model/strategy/type.js +40 -100
  114. package/lib/modules/Account/index.js +53 -39
  115. package/lib/modules/Account/types.js +33 -20
  116. package/lib/modules/AccountList/index.js +154 -116
  117. package/lib/modules/AccountList/types.js +31 -30
  118. package/lib/modules/AccountList/utils.js +30 -18
  119. package/lib/modules/BaseModule.d.ts +1 -1
  120. package/lib/modules/BaseModule.js +46 -25
  121. package/lib/modules/BookingContext/index.js +136 -158
  122. package/lib/modules/BookingContext/types.js +32 -46
  123. package/lib/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +143 -131
  124. package/lib/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.js +82 -75
  125. package/lib/modules/BookingContext/utils/cacheItemToBookingInput.js +150 -170
  126. package/lib/modules/BookingContext/utils/flexible.js +55 -38
  127. package/lib/modules/BookingContext/utils/formatResourceList.js +34 -19
  128. package/lib/modules/BookingContext/utils/index.js +41 -124
  129. package/lib/modules/BookingContext/utils/noResource.js +70 -58
  130. package/lib/modules/BookingContext/utils/orderLineDisplay.js +41 -14
  131. package/lib/modules/BookingContext/utils/productExtend.js +155 -202
  132. package/lib/modules/BookingContext/utils/resourceErrors.js +53 -53
  133. package/lib/modules/BookingContext/utils/resourceSelection.js +41 -19
  134. package/lib/modules/BookingContext/utils/resources.js +167 -209
  135. package/lib/modules/BookingContext/utils/serviceTimes.js +116 -115
  136. package/lib/modules/BookingContext/utils/timeSlices.js +80 -70
  137. package/lib/modules/Cart/index.js +124 -170
  138. package/lib/modules/Cart/types.js +51 -46
  139. package/lib/modules/Cart/utils/cartAccount.js +39 -40
  140. package/lib/modules/Cart/utils/cartDate.js +61 -56
  141. package/lib/modules/Cart/utils/cartDiscount.js +33 -28
  142. package/lib/modules/Cart/utils/cartNote.js +32 -27
  143. package/lib/modules/Cart/utils/cartProduct.js +251 -321
  144. package/lib/modules/Cart/utils/cartRelationForms.js +35 -29
  145. package/lib/modules/Cart/utils/cartResource.js +78 -72
  146. package/lib/modules/Cart/utils/changePrice.js +50 -28
  147. package/lib/modules/Cart/utils/index.js +48 -106
  148. package/lib/modules/Customer/constants.js +34 -13
  149. package/lib/modules/Customer/index.js +169 -232
  150. package/lib/modules/Customer/types.js +35 -38
  151. package/lib/modules/Date/index.js +115 -116
  152. package/lib/modules/Date/types.js +28 -16
  153. package/lib/modules/Date/utils.js +123 -174
  154. package/lib/modules/Discount/index.d.ts +0 -1
  155. package/lib/modules/Discount/index.js +128 -130
  156. package/lib/modules/Discount/types.d.ts +0 -1
  157. package/lib/modules/Discount/types.js +31 -9
  158. package/lib/modules/Guests/index.js +56 -30
  159. package/lib/modules/Guests/types.js +33 -23
  160. package/lib/modules/Holder/index.js +189 -209
  161. package/lib/modules/Holder/types.js +16 -4
  162. package/lib/modules/Holder/utils.js +49 -20
  163. package/lib/modules/OpenData/index.js +76 -69
  164. package/lib/modules/OpenData/types.js +16 -4
  165. package/lib/modules/OpenData/utils.js +78 -44
  166. package/lib/modules/Order/index.js +1909 -1572
  167. package/lib/modules/Order/types.js +35 -78
  168. package/lib/modules/Order/utils/bundleDiscountHydration.js +74 -41
  169. package/lib/modules/Order/utils/manualProductDiscount.js +123 -124
  170. package/lib/modules/Order/utils/orderCollectionIdentity.js +210 -148
  171. package/lib/modules/Order/utils.js +634 -799
  172. package/lib/modules/Payment/cash.js +33 -20
  173. package/lib/modules/Payment/cashRecommendationAlgorithm.js +76 -145
  174. package/lib/modules/Payment/eftpos.js +30 -16
  175. package/lib/modules/Payment/index.js +378 -518
  176. package/lib/modules/Payment/mx51.js +0 -1
  177. package/lib/modules/Payment/types.d.ts +4 -8
  178. package/lib/modules/Payment/types.js +107 -216
  179. package/lib/modules/Payment/utils.js +48 -51
  180. package/lib/modules/Payment/walletpass.d.ts +0 -2
  181. package/lib/modules/Payment/walletpass.js +211 -226
  182. package/lib/modules/Product/index.js +46 -51
  183. package/lib/modules/Product/types.js +16 -4
  184. package/lib/modules/Product/utils.js +33 -32
  185. package/lib/modules/ProductList/index.d.ts +1 -1
  186. package/lib/modules/ProductList/index.js +117 -117
  187. package/lib/modules/ProductList/types.d.ts +0 -1
  188. package/lib/modules/ProductList/types.js +31 -9
  189. package/lib/modules/Quotation/index.js +100 -66
  190. package/lib/modules/Quotation/types.js +16 -4
  191. package/lib/modules/Resource/index.js +59 -27
  192. package/lib/modules/Resource/types.js +32 -22
  193. package/lib/modules/Resource/utils.js +38 -30
  194. package/lib/modules/ResourcePlanner/index.js +61 -60
  195. package/lib/modules/ResourcePlanner/planner.js +384 -346
  196. package/lib/modules/ResourcePlanner/types.js +16 -4
  197. package/lib/modules/Rules/index.js +903 -1475
  198. package/lib/modules/Rules/types.js +40 -17
  199. package/lib/modules/SalesSummary/index.js +90 -85
  200. package/lib/modules/SalesSummary/types.js +16 -4
  201. package/lib/modules/SalesSummary/utils.js +427 -351
  202. package/lib/modules/ScanOrderLogger/index.js +79 -59
  203. package/lib/modules/ScanOrderLogger/providers/feishu.js +78 -54
  204. package/lib/modules/ScanOrderLogger/providers/grafana.js +36 -13
  205. package/lib/modules/ScanOrderLogger/types.js +16 -4
  206. package/lib/modules/Schedule/getDateIsInSchedule.js +163 -339
  207. package/lib/modules/Schedule/index.js +114 -100
  208. package/lib/modules/Schedule/type.js +16 -4
  209. package/lib/modules/Schedule/types.js +16 -4
  210. package/lib/modules/Schedule/utils.js +291 -433
  211. package/lib/modules/Step/index.js +52 -40
  212. package/lib/modules/Step/tyeps.js +16 -4
  213. package/lib/modules/Summary/index.js +71 -66
  214. package/lib/modules/Summary/types.js +16 -4
  215. package/lib/modules/Summary/utils.js +418 -791
  216. package/lib/modules/SurchargeList/index.js +60 -46
  217. package/lib/modules/SurchargeList/types.js +16 -4
  218. package/lib/modules/index.js +63 -245
  219. package/lib/plugins/app.js +16 -4
  220. package/lib/plugins/index.js +25 -36
  221. package/lib/plugins/request.js +126 -137
  222. package/lib/plugins/shopStore.js +16 -4
  223. package/lib/plugins/user.js +16 -4
  224. package/lib/plugins/window.js +179 -171
  225. package/lib/server/index.js +2337 -2675
  226. package/lib/server/modules/floor-plan/index.js +123 -102
  227. package/lib/server/modules/floor-plan/types.js +30 -15
  228. package/lib/server/modules/index.js +68 -106
  229. package/lib/server/modules/menu/index.js +122 -146
  230. package/lib/server/modules/menu/types.js +31 -18
  231. package/lib/server/modules/order/index.js +642 -567
  232. package/lib/server/modules/order/types.js +32 -117
  233. package/lib/server/modules/order/utils/filterBookings.js +194 -219
  234. package/lib/server/modules/order/utils/filterOrders.js +92 -118
  235. package/lib/server/modules/payment/index.js +83 -59
  236. package/lib/server/modules/payment/types.js +16 -4
  237. package/lib/server/modules/products/index.js +459 -575
  238. package/lib/server/modules/products/types.js +34 -44
  239. package/lib/server/modules/quotation/index.js +172 -137
  240. package/lib/server/modules/quotation/types.js +31 -21
  241. package/lib/server/modules/resource/index.js +184 -213
  242. package/lib/server/modules/resource/types.js +33 -42
  243. package/lib/server/modules/schedule/index.js +123 -135
  244. package/lib/server/modules/schedule/types.js +21 -14
  245. package/lib/server/modules/schedule/utils.js +163 -334
  246. package/lib/server/types.js +16 -4
  247. package/lib/server/utils/index.js +23 -25
  248. package/lib/server/utils/product.js +139 -196
  249. package/lib/server/utils/schedule.js +41 -34
  250. package/lib/server/utils/small-ticket.js +456 -478
  251. package/lib/server/utils/time.js +49 -40
  252. package/lib/solution/BaseSales/index.js +1016 -850
  253. package/lib/solution/BaseSales/types.js +37 -41
  254. package/lib/solution/BaseSales/utils/cartPromotion.js +460 -611
  255. package/lib/solution/BaseSales/utils/parseSalesResponse.js +105 -85
  256. package/lib/solution/BaseSales/utils/quotationPrice.js +114 -56
  257. package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +143 -102
  258. package/lib/solution/BaseSales/utils.js +140 -155
  259. package/lib/solution/BookingByStep/index.d.ts +1 -1
  260. package/lib/solution/BookingByStep/index.js +1340 -1530
  261. package/lib/solution/BookingByStep/types.js +99 -40
  262. package/lib/solution/BookingByStep/utils/capacity.js +160 -192
  263. package/lib/solution/BookingByStep/utils/products.js +52 -42
  264. package/lib/solution/BookingByStep/utils/resources.js +330 -527
  265. package/lib/solution/BookingByStep/utils/stock.js +44 -65
  266. package/lib/solution/BookingByStep/utils/timeslots.js +131 -129
  267. package/lib/solution/BookingTicket/index.d.ts +1 -1
  268. package/lib/solution/BookingTicket/index.js +459 -543
  269. package/lib/solution/BookingTicket/types.js +77 -99
  270. package/lib/solution/BookingTicket/utils/addProductDecision.js +184 -219
  271. package/lib/solution/BookingTicket/utils/addTimeAvailability.js +89 -58
  272. package/lib/solution/BookingTicket/utils/bookingStatus.js +78 -107
  273. package/lib/solution/BookingTicket/utils/cartView.js +94 -110
  274. package/lib/solution/BookingTicket/utils/exampleData.js +0 -185
  275. package/lib/solution/BookingTicket/utils/orderCustomer.js +41 -18
  276. package/lib/solution/BookingTicket/utils/resolveBestAddTimePlan.js +86 -219
  277. package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.js +93 -144
  278. package/lib/solution/BookingTicket/utils/scan/cloudSearch.js +91 -79
  279. package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.js +41 -54
  280. package/lib/solution/BookingTicket/utils/scan/handleScan.js +81 -84
  281. package/lib/solution/BookingTicket/utils/scan/index.js +104 -98
  282. package/lib/solution/BookingTicket/utils/scan/scanCache.js +43 -90
  283. package/lib/solution/BookingTicket/utils/scan/scanProductValues.js +64 -52
  284. package/lib/solution/BookingTicket/utils/sessionCatalogStale.js +58 -56
  285. package/lib/solution/BuyTickets/index.js +70 -67
  286. package/lib/solution/BuyTickets/types.js +38 -22
  287. package/lib/solution/Checkout/index.js +1158 -1451
  288. package/lib/solution/Checkout/types.js +61 -91
  289. package/lib/solution/Checkout/utils/index.js +156 -228
  290. package/lib/solution/PlaceOrder/index.js +0 -55
  291. package/lib/solution/RegisterAndLogin/config.js +460 -493
  292. package/lib/solution/RegisterAndLogin/index.js +630 -633
  293. package/lib/solution/RegisterAndLogin/types.js +76 -189
  294. package/lib/solution/RegisterAndLogin/utils.js +125 -183
  295. package/lib/solution/Sales/index.js +320 -317
  296. package/lib/solution/Sales/types.js +33 -27
  297. package/lib/solution/ScanOrder/index.js +862 -831
  298. package/lib/solution/ScanOrder/types.js +34 -33
  299. package/lib/solution/ScanOrder/utils.js +371 -406
  300. package/lib/solution/ShopDiscount/index.js +233 -235
  301. package/lib/solution/ShopDiscount/types.d.ts +4 -5
  302. package/lib/solution/ShopDiscount/types.js +37 -15
  303. package/lib/solution/ShopDiscount/utils.d.ts +0 -9
  304. package/lib/solution/ShopDiscount/utils.js +172 -309
  305. package/lib/solution/UnifiedBookingSales/index.js +405 -379
  306. package/lib/solution/UnifiedBookingSales/types.js +31 -12
  307. package/lib/solution/VenueBooking/index.d.ts +3 -31
  308. package/lib/solution/VenueBooking/index.js +916 -967
  309. package/lib/solution/VenueBooking/types.d.ts +1 -3
  310. package/lib/solution/VenueBooking/types.js +39 -20
  311. package/lib/solution/VenueBooking/utils/dateSummary.d.ts +2 -2
  312. package/lib/solution/VenueBooking/utils/dateSummary.js +62 -25
  313. package/lib/solution/VenueBooking/utils/resource.js +54 -31
  314. package/lib/solution/VenueBooking/utils/slotMerge.js +107 -94
  315. package/lib/solution/VenueBooking/utils/timeSlot.d.ts +0 -2
  316. package/lib/solution/VenueBooking/utils/timeSlot.js +133 -138
  317. package/lib/solution/VenueBooking/utils.js +67 -130
  318. package/lib/solution/index.js +41 -124
  319. package/lib/store/createStore.js +29 -32
  320. package/lib/types/index.d.ts +1 -1
  321. package/lib/types/index.js +16 -4
  322. package/lib/utils/task.js +36 -36
  323. package/lib/utils/watch.js +47 -81
  324. package/package.json +2 -4
  325. package/dist/solution/VenueBooking/utils/smartPricing.d.ts +0 -70
  326. package/dist/solution/VenueBooking/utils/smartPricing.js +0 -233
  327. package/lib/solution/VenueBooking/utils/smartPricing.d.ts +0 -70
  328. package/lib/solution/VenueBooking/utils/smartPricing.js +0 -192
@@ -1,289 +1,282 @@
1
- "use strict";
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
2
28
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
29
+ // src/modules/Discount/index.ts
30
+ var Discount_exports = {};
31
+ __export(Discount_exports, {
32
+ DiscountModule: () => DiscountModule
5
33
  });
6
- exports.DiscountModule = void 0;
7
- var _utils = require("../../solution/ShopDiscount/utils");
8
- var _BaseModule = require("../BaseModule");
9
- var _types = require("./types");
10
- var _decimal = _interopRequireDefault(require("decimal.js"));
11
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
- class DiscountModule extends _BaseModule.BaseModule {
13
- defaultName = 'discount';
14
- defaultVersion = '1.0.0';
15
- request;
16
- window;
17
- store;
18
- cacheId;
19
- openCache = false;
20
- fatherModule;
34
+ module.exports = __toCommonJS(Discount_exports);
35
+ var import_utils = require("../../solution/ShopDiscount/utils");
36
+ var import_BaseModule = require("../BaseModule");
37
+ var import_types = require("./types");
38
+ var import_decimal = __toESM(require("decimal.js"));
39
+ var DiscountModule = class extends import_BaseModule.BaseModule {
21
40
  constructor(name, version) {
22
41
  super(name, version);
42
+ this.defaultName = "discount";
43
+ this.defaultVersion = "1.0.0";
44
+ this.openCache = false;
23
45
  }
24
46
  async initialize(core, options) {
47
+ var _a, _b, _c, _d;
25
48
  this.core = core;
26
- this.store = options?.store;
27
- if (Array.isArray(options?.initialState?.discountList)) {
28
- this.store.discountList = options?.initialState.discountList;
49
+ this.store = options == null ? void 0 : options.store;
50
+ if (Array.isArray((_a = options == null ? void 0 : options.initialState) == null ? void 0 : _a.discountList)) {
51
+ this.store.discountList = options == null ? void 0 : options.initialState.discountList;
29
52
  } else {
30
53
  this.store.discountList = [];
31
54
  }
32
- if (Array.isArray(options?.initialState?.originalDiscountList)) {
33
- this.store.originalDiscountList = options?.initialState.originalDiscountList;
55
+ if (Array.isArray((_b = options == null ? void 0 : options.initialState) == null ? void 0 : _b.originalDiscountList)) {
56
+ this.store.originalDiscountList = options == null ? void 0 : options.initialState.originalDiscountList;
34
57
  } else {
35
58
  this.store.originalDiscountList = [];
36
59
  }
37
- if (options?.otherParams?.cacheId) {
60
+ if ((_c = options == null ? void 0 : options.otherParams) == null ? void 0 : _c.cacheId) {
38
61
  this.openCache = options.otherParams.openCache;
39
62
  this.cacheId = options.otherParams.cacheId;
40
63
  }
41
- if (options?.otherParams?.fatherModule) {
64
+ if ((_d = options == null ? void 0 : options.otherParams) == null ? void 0 : _d.fatherModule) {
42
65
  this.fatherModule = options.otherParams.fatherModule;
43
66
  }
44
-
45
- // 获取依赖的插件
46
- this.request = core.getPlugin('request');
47
- this.window = core.getPlugin('window');
67
+ this.request = core.getPlugin("request");
68
+ this.window = core.getPlugin("window");
48
69
  if (!this.request) {
49
- throw new Error('discount模块需要 request 插件支持');
70
+ throw new Error("discount模块需要 request 插件支持");
50
71
  }
51
72
  if (!this.window) {
52
- throw new Error('discount模块需要 window 插件支持');
73
+ throw new Error("discount模块需要 window 插件支持");
53
74
  }
54
75
  }
55
76
  async setDiscountList(discountList) {
56
77
  this.store.discountList = discountList;
57
- await this.core.effects.emit(_types.DiscountHooks.OnDiscountListChange, discountList);
78
+ await this.core.effects.emit(
79
+ import_types.DiscountHooks.OnDiscountListChange,
80
+ discountList
81
+ );
58
82
  }
59
83
  getDiscountList() {
60
84
  return this.store.discountList;
61
85
  }
62
-
63
86
  // 设置原始优惠券列表
64
87
  async setOriginalDiscountList(originalDiscountList) {
65
88
  this.store.originalDiscountList = originalDiscountList;
66
89
  }
67
-
68
90
  // 获取原始优惠券列表
69
91
  getOriginalDiscountList() {
70
92
  return this.store.originalDiscountList || [];
71
93
  }
72
94
  normalizePositiveNumberIds(values) {
73
- const ids = values.map(value => Number(value)).filter(value => Number.isFinite(value) && value > 0);
95
+ const ids = values.map((value) => Number(value)).filter((value) => Number.isFinite(value) && value > 0);
74
96
  return Array.from(new Set(ids));
75
97
  }
76
98
  async loadPrepareConfig(params) {
77
- if (typeof params.order_id === 'string' && params.order_id.startsWith('LOCAL_')) {
78
- params.order_id = undefined;
99
+ var _a, _b, _c, _d, _e;
100
+ if (typeof params.order_id === "string" && params.order_id.startsWith("LOCAL_")) {
101
+ params.order_id = void 0;
79
102
  }
80
- const prepareConfig = await this.request.post(`/order/prepare/config`, {
81
- ...params,
82
- with_available_wallet_flag: params.with_available_wallet_flag ?? 1,
83
- with_available_wallet_pass_flag: params.with_available_wallet_pass_flag ?? 1
84
- });
85
- const rawDiscountList = [...(prepareConfig?.data?.good_pass_list || []), ...(prepareConfig?.data?.discount_card_list || [])];
86
- const availableWalletList = [...(prepareConfig?.data?.avaiable_wallet_list || []), ...(prepareConfig?.data?.available_wallet_list || [])];
87
- const availableWalletPassList = prepareConfig?.data?.available_wallet_pass_list || [];
88
- const availableWalletIds = this.normalizePositiveNumberIds([...availableWalletList.map(item => item?.wallet_id), ...availableWalletPassList.map(item => item?.product_id)]);
89
- const goodPassList = this.filterEnabledDiscountList(rawDiscountList) || [];
90
-
91
- // this.setDiscountList(goodPassList);
92
-
103
+ const prepareConfig = await this.request.post(
104
+ `/order/prepare/config`,
105
+ {
106
+ ...params,
107
+ with_available_wallet_flag: params.with_available_wallet_flag ?? 1,
108
+ with_available_wallet_pass_flag: params.with_available_wallet_pass_flag ?? 1
109
+ }
110
+ );
111
+ const rawDiscountList = [
112
+ ...((_a = prepareConfig == null ? void 0 : prepareConfig.data) == null ? void 0 : _a.good_pass_list) || [],
113
+ ...((_b = prepareConfig == null ? void 0 : prepareConfig.data) == null ? void 0 : _b.discount_card_list) || []
114
+ ];
115
+ const availableWalletList = [
116
+ ...((_c = prepareConfig == null ? void 0 : prepareConfig.data) == null ? void 0 : _c.avaiable_wallet_list) || [],
117
+ ...((_d = prepareConfig == null ? void 0 : prepareConfig.data) == null ? void 0 : _d.available_wallet_list) || []
118
+ ];
119
+ const availableWalletPassList = ((_e = prepareConfig == null ? void 0 : prepareConfig.data) == null ? void 0 : _e.available_wallet_pass_list) || [];
120
+ const availableWalletIds = this.normalizePositiveNumberIds([
121
+ ...availableWalletList.map((item) => item == null ? void 0 : item.wallet_id),
122
+ ...availableWalletPassList.map((item) => item == null ? void 0 : item.product_id)
123
+ ]);
124
+ const goodPassList = this.filterEnabledDiscountList(
125
+ rawDiscountList
126
+ ) || [];
93
127
  return {
94
128
  discountList: goodPassList,
95
- availableWalletIds: this.extractAvailableWalletIds(prepareConfig?.data)
129
+ availableWalletIds
96
130
  };
97
131
  }
98
- extractAvailableWalletIds(data) {
99
- const availableWalletList = Array.isArray(data?.avaiable_wallet_list) ? data.avaiable_wallet_list : Array.isArray(data?.available_wallet_list) ? data.available_wallet_list : [];
100
- const availableWalletPassList = Array.isArray(data?.available_wallet_pass_list) ? data.available_wallet_pass_list : [];
101
- const walletIds = availableWalletList.map(item => Number(item?.id)).filter(id => Number.isFinite(id) && id > 0);
102
- const walletPassProductIds = availableWalletPassList.map(item => Number(item?.product_id)).filter(id => Number.isFinite(id) && id > 0);
103
- return Array.from(new Set([...walletIds, ...walletPassProductIds]));
104
- }
105
132
  async batchSearch(code, options) {
106
- const {
107
- customerId,
108
- orderId
109
- } = options || {};
133
+ const { customerId, orderId } = options || {};
110
134
  const result = await this.request.get(`/machinecode/batch-search`, {
111
135
  code,
112
136
  translate_flag: 1,
113
- tags: ['good_pass', 'product_discount_card'],
137
+ tags: ["good_pass", "product_discount_card"],
114
138
  // available: 1,
115
139
  relation_product: 1,
116
- with: ['extensionData', 'customScheduleSnapshot', 'holder.detail'],
140
+ with: ["extensionData", "customScheduleSnapshot", "holder.detail"],
117
141
  order_behavior_count: 1,
118
142
  order_behavior_count_customer_id: customerId || 1,
143
+ ...orderId ? { order_behavior_count_order_id: orderId } : {},
119
144
  unified_status_info_flag: 1,
120
- ...(orderId ? {
121
- order_behavior_count_order_id: orderId
122
- } : {}),
123
145
  request_timezone: Intl.DateTimeFormat().resolvedOptions().timeZone
124
146
  });
125
- const resultDiscountWithReason = this.filterEnabledDiscountListWithReason(result?.data || []) || [];
147
+ const resultDiscountWithReason = this.filterEnabledDiscountListWithReason((result == null ? void 0 : result.data) || []) || [];
126
148
  return resultDiscountWithReason;
127
149
  }
128
150
  async batchSearchByProductIds(productIds) {
129
151
  const result = await this.request.get(`/machinecode/batch-search`, {
130
152
  ids: productIds,
131
153
  translate_flag: 1,
132
- tags: ['good_pass', 'product_discount_card'],
154
+ tags: ["good_pass", "product_discount_card"],
133
155
  relation_product: 1
134
156
  });
135
- return result?.data || [];
157
+ return (result == null ? void 0 : result.data) || [];
136
158
  }
137
159
  filterEnabledDiscountList(discountList) {
138
- return discountList.filter(discount => discount.limit_status === 'enable' && new _decimal.default(discount?.par_value || 0).minus(new _decimal.default(discount?.used_par_value || 0)).greaterThan(0) && this.checkUsageCreditsLimit(discount));
160
+ return discountList.filter(
161
+ (discount) => discount.limit_status === "enable" && new import_decimal.default((discount == null ? void 0 : discount.par_value) || 0).minus(new import_decimal.default((discount == null ? void 0 : discount.used_par_value) || 0)).greaterThan(0) && this.checkUsageCreditsLimit(discount)
162
+ );
139
163
  }
140
-
141
164
  // 检查使用次数限制
142
165
  checkUsageCreditsLimit(discount) {
143
- // 如果没有 extension_data,则不需要限制
144
166
  if (!discount.extension_data || discount.extension_data.length === 0) {
145
167
  return true;
146
168
  }
147
-
148
- // 查找 field_key 为 usage_credits 的数据
149
- const usageCreditsData = discount.extension_data.find(data => data.field_key === 'usage_credits');
150
-
151
- // 如果没有找到 usage_credits 数据,则不需要限制
169
+ const usageCreditsData = discount.extension_data.find(
170
+ (data) => data.field_key === "usage_credits"
171
+ );
152
172
  if (!usageCreditsData) {
153
173
  return true;
154
174
  }
155
175
  const value = usageCreditsData.value;
156
-
157
- // 检查总次数限制
158
176
  if (value.total_credits && value.total_credits > 0) {
159
177
  if ((discount.total_order_behavior_count || 0) >= value.total_credits) {
160
178
  return false;
161
179
  }
162
180
  }
163
-
164
- // 检查单用户限制
165
181
  if (value.per_user_limit && value.per_user_limit > 0) {
166
182
  if ((discount.customer_order_behavior_count || 0) >= value.per_user_limit) {
167
183
  return false;
168
184
  }
169
185
  }
170
-
171
- // 检查单日限制
172
186
  if (value.max_per_day && value.max_per_day > 0) {
173
187
  if ((discount.today_order_behavior_count || 0) >= value.max_per_day) {
174
188
  return false;
175
189
  }
176
190
  }
177
-
178
- // 检查单周限制
179
191
  if (value.max_per_week && value.max_per_week > 0) {
180
192
  if ((discount.week_order_behavior_count || 0) >= value.max_per_week) {
181
193
  return false;
182
194
  }
183
195
  }
184
-
185
- // 检查单月限制
186
196
  if (value.max_per_month && value.max_per_month > 0) {
187
197
  if ((discount.month_order_behavior_count || 0) >= value.max_per_month) {
188
198
  return false;
189
199
  }
190
200
  }
191
-
192
- // 所有检查都通过
193
201
  return true;
194
202
  }
195
-
196
203
  // 过滤启用且可用的优惠券,并返回校验失败原因
197
204
  filterEnabledDiscountListWithReason(discountList) {
198
- let lists = discountList.filter(discount => discount.limit_status === 'enable').filter(discount => {
199
- const remaining = new _decimal.default(discount?.par_value || 0).minus(new _decimal.default(discount?.used_par_value || 0)).greaterThan(0);
205
+ let lists = discountList.filter((discount) => discount.limit_status === "enable").filter((discount) => {
206
+ const remaining = new import_decimal.default((discount == null ? void 0 : discount.par_value) || 0).minus(new import_decimal.default((discount == null ? void 0 : discount.used_par_value) || 0)).greaterThan(0);
200
207
  return remaining;
201
- }).map(discount => {
208
+ }).map((discount) => {
202
209
  const limitFailKey = this.checkUsageCreditsLimitWithFailKey(discount);
203
210
  return {
204
211
  ...discount,
205
212
  usageLimitFailKey: limitFailKey
206
213
  };
207
214
  });
208
-
209
- // 可用的列表
210
- const availableLists = lists.filter(item => !item.usageLimitFailKey && item.unified_available_status !== 0);
211
- // 不可用数据
212
- const currentFailDiscount = lists.find(item => item.usageLimitFailKey);
215
+ const availableLists = lists.filter((item) => !item.usageLimitFailKey && item.unified_available_status !== 0);
216
+ const currentFailDiscount = lists.find((item) => item.usageLimitFailKey);
213
217
  return {
214
218
  discountList: availableLists,
215
- unavailableReasonKey: currentFailDiscount?.usageLimitFailKey
219
+ unavailableReasonKey: currentFailDiscount == null ? void 0 : currentFailDiscount.usageLimitFailKey
216
220
  };
217
221
  }
218
-
219
222
  // 检查使用次数限制,并返回校验失败原因
220
223
  checkUsageCreditsLimitWithFailKey(discount) {
221
224
  if (!discount.extension_data || discount.extension_data.length === 0) {
222
225
  return null;
223
226
  }
224
- const usageCreditsData = discount.extension_data.find(data => data.field_key === 'usage_credits');
227
+ const usageCreditsData = discount.extension_data.find(
228
+ (data) => data.field_key === "usage_credits"
229
+ );
225
230
  if (!usageCreditsData) {
226
231
  return null;
227
232
  }
228
233
  const value = usageCreditsData.value;
229
-
230
- // 总次数限制
231
234
  if (value.total_credits && value.total_credits > 0) {
232
235
  if ((discount.total_order_behavior_count || 0) >= value.total_credits) {
233
- return 'total_credits';
236
+ return "total_credits";
234
237
  }
235
238
  }
236
-
237
- // 单用户限制
238
239
  if (value.per_user_limit && value.per_user_limit > 0) {
239
240
  if ((discount.customer_order_behavior_count || 0) >= value.per_user_limit) {
240
- return 'per_user_limit';
241
+ return "per_user_limit";
241
242
  }
242
243
  }
243
-
244
- // 单日限制
245
244
  if (value.max_per_day && value.max_per_day > 0) {
246
245
  if ((discount.today_order_behavior_count || 0) >= value.max_per_day) {
247
- return 'max_per_day';
246
+ return "max_per_day";
248
247
  }
249
248
  }
250
-
251
- // 单周限制
252
249
  if (value.max_per_week && value.max_per_week > 0) {
253
250
  if ((discount.week_order_behavior_count || 0) >= value.max_per_week) {
254
- return 'max_per_week';
251
+ return "max_per_week";
255
252
  }
256
253
  }
257
-
258
- // 单月限制
259
254
  if (value.max_per_month && value.max_per_month > 0) {
260
255
  if ((discount.month_order_behavior_count || 0) >= value.max_per_month) {
261
- return 'max_per_month';
256
+ return "max_per_month";
262
257
  }
263
258
  }
264
-
265
- // 全部通过
266
259
  return null;
267
260
  }
268
-
269
261
  // 根据productIds去重
270
262
  uniqueByProductId(discountList) {
271
- return (0, _utils.uniqueById)(discountList, 'product_id');
263
+ return (0, import_utils.uniqueById)(discountList, "product_id");
272
264
  }
273
265
  filterDiscountListByProductIds(discountList, productIds) {
274
- return discountList.filter(discount => {
266
+ return discountList.filter((discount) => {
275
267
  const applicableProductIds = discount.applicableProductIds || [];
276
- return applicableProductIds.some(id => productIds.includes(id));
268
+ return applicableProductIds.some((id) => productIds.includes(id));
277
269
  });
278
270
  }
279
271
  calcDiscountApplicableProductTotalPrice(discount) {
280
- if (discount?.savedAmount) {
281
- return discount?.savedAmount || 0;
272
+ if (discount == null ? void 0 : discount.savedAmount) {
273
+ return (discount == null ? void 0 : discount.savedAmount) || 0;
282
274
  }
283
275
  if (discount.appliedProductDetails) {
284
276
  return discount.appliedProductDetails.reduce((total, product) => {
285
- const price = new _decimal.default(product?.discount?.fixed_amount || 0).mul(product?._num || 1);
286
- return new _decimal.default(total).plus(price).add(product?.metadata?.product_discount_difference || 0).toNumber();
277
+ var _a, _b;
278
+ const price = new import_decimal.default(((_a = product == null ? void 0 : product.discount) == null ? void 0 : _a.fixed_amount) || 0).mul((product == null ? void 0 : product._num) || 1);
279
+ return new import_decimal.default(total).plus(price).add(((_b = product == null ? void 0 : product.metadata) == null ? void 0 : _b.product_discount_difference) || 0).toNumber();
287
280
  }, 0);
288
281
  }
289
282
  }
@@ -291,11 +284,13 @@ class DiscountModule extends _BaseModule.BaseModule {
291
284
  this.store.discountList = [];
292
285
  this.core.effects.offByModuleDestroy(this.name);
293
286
  await this.core.effects.emit(`${this.name}:onDestroy`, {});
287
+ console.log("[Discount] 已销毁");
294
288
  super.destroy();
295
289
  }
296
290
  async clear() {
297
291
  this.store.discountList = [];
298
292
  this.store.originalDiscountList = [];
293
+ console.log("[Discount] clear");
299
294
  }
300
295
  storeChange() {
301
296
  if (this.openCache) {
@@ -303,9 +298,12 @@ class DiscountModule extends _BaseModule.BaseModule {
303
298
  cacheId: this.cacheId,
304
299
  fatherModule: this.fatherModule,
305
300
  store: this.store,
306
- cacheKey: ['discountList']
301
+ cacheKey: ["discountList"]
307
302
  });
308
303
  }
309
304
  }
310
- }
311
- exports.DiscountModule = DiscountModule;
305
+ };
306
+ // Annotate the CommonJS export names for ESM import in node:
307
+ 0 && (module.exports = {
308
+ DiscountModule
309
+ });
@@ -100,7 +100,6 @@ export interface Discount {
100
100
  balance: string;
101
101
  format_title: Formattitle;
102
102
  metadata?: {
103
- num?: number;
104
103
  discount_card_type?: 'fixed_amount' | 'percent';
105
104
  custom_product_bundle_map_id?: string;
106
105
  validity_type?: "custom_schedule_validity" | "fixed_validity";
@@ -1,11 +1,33 @@
1
- "use strict";
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
2
18
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
19
+ // src/modules/Discount/types.ts
20
+ var types_exports = {};
21
+ __export(types_exports, {
22
+ DiscountHooks: () => DiscountHooks
23
+ });
24
+ module.exports = __toCommonJS(types_exports);
25
+ var DiscountHooks = /* @__PURE__ */ ((DiscountHooks2) => {
26
+ DiscountHooks2["OnDiscountListChange"] = "discount:onDiscountListChange";
27
+ DiscountHooks2["OnDestroy"] = "discount:onDestroy";
28
+ return DiscountHooks2;
29
+ })(DiscountHooks || {});
30
+ // Annotate the CommonJS export names for ESM import in node:
31
+ 0 && (module.exports = {
32
+ DiscountHooks
5
33
  });
6
- exports.DiscountHooks = void 0;
7
- let DiscountHooks = exports.DiscountHooks = /*#__PURE__*/function (DiscountHooks) {
8
- DiscountHooks["OnDiscountListChange"] = "discount:onDiscountListChange";
9
- DiscountHooks["OnDestroy"] = "discount:onDestroy";
10
- return DiscountHooks;
11
- }({});
@@ -1,27 +1,42 @@
1
- "use strict";
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
2
18
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
19
+ // src/modules/Guests/index.ts
20
+ var Guests_exports = {};
21
+ __export(Guests_exports, {
22
+ GuestListModule: () => GuestListModule
5
23
  });
6
- exports.GuestListModule = void 0;
7
- var _BaseModule = require("../BaseModule");
8
- var _types = require("./types");
9
- class GuestListModule extends _BaseModule.BaseModule {
10
- defaultName = 'guestList';
11
- defaultVersion = '1.0.0';
12
- state = {
13
- list: []
14
- };
24
+ module.exports = __toCommonJS(Guests_exports);
25
+ var import_BaseModule = require("../BaseModule");
26
+ var import_types = require("./types");
27
+ var GuestListModule = class extends import_BaseModule.BaseModule {
15
28
  constructor(name, version) {
16
29
  super(name, version);
30
+ this.defaultName = "guestList";
31
+ this.defaultVersion = "1.0.0";
32
+ this.state = {
33
+ list: []
34
+ };
17
35
  }
18
36
  async initialize(core, options) {
19
37
  this.core = core;
20
- if (options?.initialState) {
21
- this.state = {
22
- ...this.state,
23
- ...options.initialState
24
- };
38
+ if (options == null ? void 0 : options.initialState) {
39
+ this.state = { ...this.state, ...options.initialState };
25
40
  }
26
41
  }
27
42
  async addGuest(guest) {
@@ -30,18 +45,23 @@ class GuestListModule extends _BaseModule.BaseModule {
30
45
  await this.core.effects.emit(`${this.name}:onGuestChange`, this.state.list);
31
46
  }
32
47
  async updateGuest(id, updates) {
33
- const index = this.state.list.findIndex(g => g.id === id);
34
- if (index === -1) return;
48
+ const index = this.state.list.findIndex((g) => g.id === id);
49
+ if (index === -1)
50
+ return;
35
51
  this.state.list[index] = {
36
52
  ...this.state.list[index],
37
53
  ...updates
38
54
  };
39
- await this.core.effects.emit(_types.GuestHooks.OnGuestUpdate, this.state.list[index]);
55
+ await this.core.effects.emit(
56
+ import_types.GuestHooks.OnGuestUpdate,
57
+ this.state.list[index]
58
+ );
40
59
  await this.core.effects.emit(`${this.name}:onGuestChange`, this.state.list);
41
60
  }
42
61
  async removeGuest(id) {
43
- const index = this.state.list.findIndex(g => g.id === id);
44
- if (index === -1) return;
62
+ const index = this.state.list.findIndex((g) => g.id === id);
63
+ if (index === -1)
64
+ return;
45
65
  const [removed] = this.state.list.splice(index, 1);
46
66
  await this.core.effects.emit(`${this.name}:onGuestRemove`, removed);
47
67
  await this.core.effects.emit(`${this.name}:onGuestChange`, this.state.list);
@@ -53,20 +73,26 @@ class GuestListModule extends _BaseModule.BaseModule {
53
73
  return this.state.list.length;
54
74
  }
55
75
  async addItemToGuest(guestId, item) {
56
- const guest = this.state.list.find(g => g.id === guestId);
57
- if (!guest) return;
76
+ const guest = this.state.list.find((g) => g.id === guestId);
77
+ if (!guest)
78
+ return;
58
79
  guest.items.push(item);
59
80
  await this.core.effects.emit(`${this.name}:onGuestUpdate`, guest);
60
81
  await this.core.effects.emit(`${this.name}:onGuestChange`, this.state.list);
61
82
  }
62
83
  async removeItemFromGuest(guestId, itemId) {
63
- const guest = this.state.list.find(g => g.id === guestId);
64
- if (!guest) return;
65
- const index = guest.items.findIndex(i => i.id === itemId);
66
- if (index === -1) return;
84
+ const guest = this.state.list.find((g) => g.id === guestId);
85
+ if (!guest)
86
+ return;
87
+ const index = guest.items.findIndex((i) => i.id === itemId);
88
+ if (index === -1)
89
+ return;
67
90
  guest.items.splice(index, 1);
68
91
  await this.core.effects.emit(`${this.name}:onGuestUpdate`, guest);
69
92
  await this.core.effects.emit(`${this.name}:onGuestChange`, this.state.list);
70
93
  }
71
- }
72
- exports.GuestListModule = GuestListModule;
94
+ };
95
+ // Annotate the CommonJS export names for ESM import in node:
96
+ 0 && (module.exports = {
97
+ GuestListModule
98
+ });