@pisell/pisellos 0.10.15 → 0.10.16

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