@pisell/pisellos 0.0.568 → 0.10.1

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 (588) 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/evaluator.js +3 -2
  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 +24 -96
  11. package/dist/model/strategy/strategy-example.js +19 -5
  12. package/dist/modules/BaseModule.d.ts +2 -2
  13. package/dist/modules/BaseModule.js +12 -14
  14. package/dist/modules/BookingContext/index.d.ts +48 -0
  15. package/dist/modules/BookingContext/index.js +566 -0
  16. package/dist/modules/BookingContext/types.d.ts +102 -0
  17. package/dist/modules/BookingContext/types.js +51 -0
  18. package/dist/modules/BookingContext/utils/buildCacheItemFromOrderLine.d.ts +16 -0
  19. package/dist/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +302 -0
  20. package/dist/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.d.ts +8 -0
  21. package/dist/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.js +149 -0
  22. package/dist/modules/BookingContext/utils/cacheItemToBookingInput.d.ts +76 -0
  23. package/dist/modules/BookingContext/utils/cacheItemToBookingInput.js +249 -0
  24. package/dist/modules/BookingContext/utils/flexible.d.ts +28 -0
  25. package/dist/modules/BookingContext/utils/flexible.js +56 -0
  26. package/dist/modules/BookingContext/utils/formatResourceList.d.ts +8 -0
  27. package/dist/modules/BookingContext/utils/formatResourceList.js +38 -0
  28. package/dist/modules/BookingContext/utils/index.d.ts +11 -0
  29. package/dist/modules/BookingContext/utils/index.js +11 -0
  30. package/dist/modules/BookingContext/utils/noResource.d.ts +13 -0
  31. package/dist/modules/BookingContext/utils/noResource.js +77 -0
  32. package/dist/modules/BookingContext/utils/orderLineDisplay.d.ts +1 -0
  33. package/dist/modules/BookingContext/utils/orderLineDisplay.js +36 -0
  34. package/dist/modules/BookingContext/utils/productExtend.d.ts +72 -0
  35. package/dist/modules/BookingContext/utils/productExtend.js +339 -0
  36. package/dist/modules/BookingContext/utils/resourceErrors.d.ts +41 -0
  37. package/dist/modules/BookingContext/utils/resourceErrors.js +74 -0
  38. package/dist/modules/BookingContext/utils/resourceSelection.d.ts +7 -0
  39. package/dist/modules/BookingContext/utils/resourceSelection.js +24 -0
  40. package/dist/modules/BookingContext/utils/resources.d.ts +80 -0
  41. package/dist/modules/BookingContext/utils/resources.js +486 -0
  42. package/dist/modules/BookingContext/utils/serviceTimes.d.ts +55 -0
  43. package/dist/modules/BookingContext/utils/serviceTimes.js +151 -0
  44. package/dist/modules/BookingContext/utils/timeSlices.d.ts +42 -0
  45. package/dist/modules/BookingContext/utils/timeSlices.js +100 -0
  46. package/dist/modules/Cart/index.js +3 -0
  47. package/dist/modules/Cart/utils/cartProduct.js +27 -5
  48. package/dist/modules/Cart/utils/cartResource.js +0 -2
  49. package/dist/modules/Cart/utils/changePrice.js +11 -11
  50. package/dist/modules/Customer/index.d.ts +20 -0
  51. package/dist/modules/Customer/index.js +172 -83
  52. package/dist/modules/Customer/types.d.ts +2 -0
  53. package/dist/modules/Date/index.js +5 -1
  54. package/dist/modules/Discount/index.d.ts +2 -2
  55. package/dist/modules/Discount/index.js +43 -30
  56. package/dist/modules/Discount/types.d.ts +1 -1
  57. package/dist/modules/OpenData/index.d.ts +8 -0
  58. package/dist/modules/OpenData/index.js +38 -16
  59. package/dist/modules/Order/index.d.ts +449 -24
  60. package/dist/modules/Order/index.js +5460 -574
  61. package/dist/modules/Order/types.d.ts +693 -88
  62. package/dist/modules/Order/types.js +68 -1
  63. package/dist/modules/Order/utils/bundleDiscountHydration.d.ts +5 -0
  64. package/dist/modules/Order/utils/bundleDiscountHydration.js +144 -0
  65. package/dist/modules/Order/utils/manualProductDiscount.d.ts +106 -0
  66. package/dist/modules/Order/utils/manualProductDiscount.js +210 -0
  67. package/dist/modules/Order/utils/orderCollectionIdentity.d.ts +53 -0
  68. package/dist/modules/Order/utils/orderCollectionIdentity.js +405 -0
  69. package/dist/modules/Order/utils.d.ts +167 -18
  70. package/dist/modules/Order/utils.js +960 -165
  71. package/dist/modules/Payment/index.d.ts +10 -9
  72. package/dist/modules/Payment/index.js +573 -746
  73. package/dist/modules/Payment/types.d.ts +44 -24
  74. package/dist/modules/Payment/utils.d.ts +1 -1
  75. package/dist/modules/Payment/utils.js +4 -3
  76. package/dist/modules/Payment/walletpass.d.ts +0 -2
  77. package/dist/modules/Payment/walletpass.js +49 -33
  78. package/dist/modules/Product/types.d.ts +29 -7
  79. package/dist/modules/ProductList/index.d.ts +17 -13
  80. package/dist/modules/ProductList/index.js +182 -81
  81. package/dist/modules/ProductList/types.d.ts +16 -0
  82. package/dist/modules/Quotation/index.d.ts +22 -2
  83. package/dist/modules/Quotation/index.js +108 -42
  84. package/dist/modules/Quotation/types.d.ts +19 -0
  85. package/dist/modules/ResourcePlanner/index.d.ts +24 -0
  86. package/dist/modules/ResourcePlanner/index.js +181 -0
  87. package/dist/modules/ResourcePlanner/planner.d.ts +14 -0
  88. package/dist/modules/ResourcePlanner/planner.js +1069 -0
  89. package/dist/modules/ResourcePlanner/types.d.ts +227 -0
  90. package/dist/modules/ResourcePlanner/types.js +1 -0
  91. package/dist/modules/Rules/index.d.ts +8 -10
  92. package/dist/modules/Rules/index.js +324 -513
  93. package/dist/modules/Rules/types.d.ts +14 -3
  94. package/dist/modules/SalesSummary/index.d.ts +23 -26
  95. package/dist/modules/SalesSummary/index.js +152 -46
  96. package/dist/modules/SalesSummary/types.d.ts +9 -1
  97. package/dist/modules/SalesSummary/utils.d.ts +3 -22
  98. package/dist/modules/SalesSummary/utils.js +804 -165
  99. package/dist/modules/Schedule/getDateIsInSchedule.js +14 -12
  100. package/dist/modules/Schedule/index.d.ts +18 -5
  101. package/dist/modules/Schedule/index.js +79 -24
  102. package/dist/modules/Schedule/types.d.ts +2 -0
  103. package/dist/modules/Schedule/utils.js +1 -0
  104. package/dist/modules/Step/index.js +1 -0
  105. package/dist/modules/Summary/index.js +4 -3
  106. package/dist/modules/Summary/utils.js +22 -43
  107. package/dist/modules/SurchargeList/index.d.ts +18 -0
  108. package/dist/modules/SurchargeList/index.js +185 -0
  109. package/dist/modules/SurchargeList/types.d.ts +15 -0
  110. package/dist/modules/SurchargeList/types.js +1 -0
  111. package/dist/modules/index.d.ts +3 -0
  112. package/dist/modules/index.js +4 -1
  113. package/dist/plugins/app.d.ts +2 -0
  114. package/dist/plugins/request.d.ts +1 -0
  115. package/dist/plugins/request.js +4 -1
  116. package/dist/plugins/window.js +6 -2
  117. package/dist/server/index.d.ts +462 -8
  118. package/dist/server/index.js +6168 -680
  119. package/dist/server/modules/floor-plan/index.d.ts +39 -0
  120. package/dist/server/modules/floor-plan/index.js +595 -0
  121. package/dist/server/modules/floor-plan/types.d.ts +43 -0
  122. package/dist/server/modules/floor-plan/types.js +13 -0
  123. package/dist/server/modules/index.d.ts +7 -2
  124. package/dist/server/modules/index.js +6 -0
  125. package/dist/server/modules/menu/index.js +41 -32
  126. package/dist/server/modules/order/index.d.ts +207 -14
  127. package/dist/server/modules/order/index.js +2328 -379
  128. package/dist/server/modules/order/types.d.ts +76 -5
  129. package/dist/server/modules/order/types.js +14 -1
  130. package/dist/server/modules/order/utils/filterBookings.d.ts +7 -1
  131. package/dist/server/modules/order/utils/filterBookings.js +118 -11
  132. package/dist/server/modules/order/utils/filterOrders.js +242 -14
  133. package/dist/server/modules/payment/index.d.ts +28 -0
  134. package/dist/server/modules/payment/index.js +305 -0
  135. package/dist/server/modules/payment/types.d.ts +9 -0
  136. package/dist/server/modules/payment/types.js +1 -0
  137. package/dist/server/modules/products/index.d.ts +105 -14
  138. package/dist/server/modules/products/index.js +1416 -521
  139. package/dist/server/modules/products/types.d.ts +34 -1
  140. package/dist/server/modules/products/types.js +4 -0
  141. package/dist/server/modules/quotation/index.d.ts +39 -0
  142. package/dist/server/modules/quotation/index.js +298 -77
  143. package/dist/server/modules/resource/index.d.ts +2 -3
  144. package/dist/server/modules/resource/index.js +109 -86
  145. package/dist/server/modules/schedule/index.d.ts +6 -4
  146. package/dist/server/modules/schedule/index.js +145 -106
  147. package/dist/server/test.json +713 -0
  148. package/dist/server/types.d.ts +2 -0
  149. package/dist/server/utils/product.js +3 -2
  150. package/dist/server/utils/small-ticket.d.ts +71 -0
  151. package/dist/server/utils/small-ticket.js +963 -0
  152. package/dist/solution/BaseSales/index.d.ts +378 -0
  153. package/dist/solution/BaseSales/index.js +4009 -0
  154. package/dist/solution/BaseSales/types.d.ts +394 -0
  155. package/dist/solution/BaseSales/types.js +40 -0
  156. package/dist/solution/BaseSales/utils/cartPromotion.d.ts +287 -0
  157. package/dist/solution/BaseSales/utils/cartPromotion.js +1450 -0
  158. package/dist/solution/BaseSales/utils/parseSalesResponse.d.ts +144 -0
  159. package/dist/solution/BaseSales/utils/parseSalesResponse.js +157 -0
  160. package/dist/solution/BaseSales/utils/quotationPrice.d.ts +18 -0
  161. package/dist/solution/BaseSales/utils/quotationPrice.js +250 -0
  162. package/dist/solution/BaseSales/utils/transformBaseProductToOrderProduct.d.ts +63 -0
  163. package/dist/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +218 -0
  164. package/dist/solution/BaseSales/utils.d.ts +40 -0
  165. package/dist/solution/BaseSales/utils.js +263 -0
  166. package/dist/solution/BookingByStep/index.d.ts +1 -1
  167. package/dist/solution/BookingByStep/index.js +60 -11
  168. package/dist/solution/BookingByStep/utils/capacity.js +11 -1
  169. package/dist/solution/BookingByStep/utils/resources.js +3 -1
  170. package/dist/solution/BookingByStep/utils/timeslots.js +43 -2
  171. package/dist/solution/BookingTicket/index.d.ts +393 -24
  172. package/dist/solution/BookingTicket/index.js +2508 -443
  173. package/dist/solution/BookingTicket/types.d.ts +191 -6
  174. package/dist/solution/BookingTicket/types.js +83 -10
  175. package/dist/solution/BookingTicket/utils/addProductDecision.d.ts +117 -0
  176. package/dist/solution/BookingTicket/utils/addProductDecision.js +346 -0
  177. package/dist/solution/BookingTicket/utils/addTimeAvailability.d.ts +35 -0
  178. package/dist/solution/BookingTicket/utils/addTimeAvailability.js +95 -0
  179. package/dist/solution/BookingTicket/utils/bookingStatus.d.ts +77 -0
  180. package/dist/solution/BookingTicket/utils/bookingStatus.js +136 -0
  181. package/dist/solution/BookingTicket/utils/cartView.d.ts +29 -0
  182. package/dist/solution/BookingTicket/utils/cartView.js +209 -0
  183. package/dist/solution/BookingTicket/utils/exampleData.d.ts +123 -0
  184. package/dist/solution/BookingTicket/utils/exampleData.js +183 -0
  185. package/dist/solution/BookingTicket/utils/orderCustomer.d.ts +4 -0
  186. package/dist/solution/BookingTicket/utils/orderCustomer.js +31 -0
  187. package/dist/solution/BookingTicket/utils/resolveBestAddTimePlan.d.ts +185 -0
  188. package/dist/solution/BookingTicket/utils/resolveBestAddTimePlan.js +438 -0
  189. package/dist/solution/BookingTicket/utils/scan/applyGlobalScan.d.ts +36 -0
  190. package/dist/solution/BookingTicket/utils/scan/applyGlobalScan.js +400 -0
  191. package/dist/solution/BookingTicket/utils/scan/cloudSearch.d.ts +4 -0
  192. package/dist/solution/BookingTicket/utils/scan/cloudSearch.js +42 -1
  193. package/dist/solution/BookingTicket/utils/scan/formatGlobalScan.d.ts +32 -0
  194. package/dist/solution/BookingTicket/utils/scan/formatGlobalScan.js +56 -0
  195. package/dist/solution/BookingTicket/utils/scan/handleScan.d.ts +3 -1
  196. package/dist/solution/BookingTicket/utils/scan/handleScan.js +42 -28
  197. package/dist/solution/BookingTicket/utils/scan/index.d.ts +5 -0
  198. package/dist/solution/BookingTicket/utils/scan/index.js +30 -14
  199. package/dist/solution/BookingTicket/utils/scan/scanProductValues.d.ts +21 -0
  200. package/dist/solution/BookingTicket/utils/scan/scanProductValues.js +150 -0
  201. package/dist/solution/BookingTicket/utils/sessionCatalogStale.d.ts +23 -0
  202. package/dist/solution/BookingTicket/utils/sessionCatalogStale.js +78 -0
  203. package/dist/solution/BuyTickets/index.js +12 -9
  204. package/dist/solution/Checkout/index.d.ts +1 -0
  205. package/dist/solution/Checkout/index.js +275 -209
  206. package/dist/solution/Checkout/utils/index.js +20 -8
  207. package/dist/solution/RegisterAndLogin/config.js +2 -10
  208. package/dist/solution/RegisterAndLogin/index.js +76 -30
  209. package/dist/solution/Sales/index.d.ts +50 -5
  210. package/dist/solution/Sales/index.js +484 -92
  211. package/dist/solution/Sales/types.d.ts +26 -2
  212. package/dist/solution/ScanOrder/index.d.ts +27 -21
  213. package/dist/solution/ScanOrder/index.js +519 -444
  214. package/dist/solution/ScanOrder/types.d.ts +33 -11
  215. package/dist/solution/ScanOrder/types.js +4 -5
  216. package/dist/solution/ScanOrder/utils.d.ts +4 -1
  217. package/dist/solution/ScanOrder/utils.js +109 -34
  218. package/dist/solution/ShopDiscount/index.js +18 -19
  219. package/dist/solution/ShopDiscount/types.d.ts +4 -5
  220. package/dist/solution/ShopDiscount/utils.d.ts +0 -9
  221. package/dist/solution/ShopDiscount/utils.js +0 -9
  222. package/dist/solution/UnifiedBookingSales/index.d.ts +183 -0
  223. package/dist/solution/UnifiedBookingSales/index.js +1871 -0
  224. package/dist/solution/UnifiedBookingSales/types.d.ts +143 -0
  225. package/dist/solution/UnifiedBookingSales/types.js +11 -0
  226. package/dist/solution/VenueBooking/index.d.ts +32 -51
  227. package/dist/solution/VenueBooking/index.js +741 -808
  228. package/dist/solution/VenueBooking/sales-section-4-annotated.json +0 -2
  229. package/dist/solution/VenueBooking/types.d.ts +1 -3
  230. package/dist/solution/VenueBooking/types.js +0 -1
  231. package/dist/solution/VenueBooking/utils/dateSummary.d.ts +2 -2
  232. package/dist/solution/VenueBooking/utils/dateSummary.js +25 -12
  233. package/dist/solution/VenueBooking/utils/slotMerge.d.ts +6 -0
  234. package/dist/solution/VenueBooking/utils/slotMerge.js +9 -3
  235. package/dist/solution/VenueBooking/utils/timeSlot.d.ts +0 -2
  236. package/dist/solution/VenueBooking/utils/timeSlot.js +4 -9
  237. package/dist/solution/index.d.ts +2 -0
  238. package/dist/solution/index.js +3 -1
  239. package/dist/types/index.d.ts +12 -2
  240. package/dist/utils/task.js +18 -15
  241. package/dist/utils/watch.js +1 -0
  242. package/lib/apis/picoding.js +0 -2
  243. package/lib/core/index.js +132 -130
  244. package/lib/effects/index.js +57 -46
  245. package/lib/index.d.ts +0 -1
  246. package/lib/index.js +50 -92
  247. package/lib/model/index.js +21 -14
  248. package/lib/model/strategy/adapter/dataVariant/adapter.js +50 -38
  249. package/lib/model/strategy/adapter/dataVariant/evaluator.js +236 -162
  250. package/lib/model/strategy/adapter/dataVariant/examples.js +237 -229
  251. package/lib/model/strategy/adapter/dataVariant/index.js +34 -39
  252. package/lib/model/strategy/adapter/dataVariant/type.js +28 -57
  253. package/lib/model/strategy/adapter/index.js +64 -100
  254. package/lib/model/strategy/adapter/itemRule/adapter.js +144 -156
  255. package/lib/model/strategy/adapter/itemRule/evaluator.js +48 -36
  256. package/lib/model/strategy/adapter/itemRule/examples.js +225 -295
  257. package/lib/model/strategy/adapter/itemRule/index.js +57 -83
  258. package/lib/model/strategy/adapter/itemRule/type.js +36 -97
  259. package/lib/model/strategy/adapter/promotion/adapter.js +63 -84
  260. package/lib/model/strategy/adapter/promotion/evaluator.js +233 -382
  261. package/lib/model/strategy/adapter/promotion/examples.js +159 -139
  262. package/lib/model/strategy/adapter/promotion/index.js +0 -1
  263. package/lib/model/strategy/adapter/promotion/type.js +35 -199
  264. package/lib/model/strategy/adapter/type.js +16 -4
  265. package/lib/model/strategy/adapter/walletPass/evaluator.js +152 -180
  266. package/lib/model/strategy/adapter/walletPass/example.js +190 -217
  267. package/lib/model/strategy/adapter/walletPass/index.js +51 -75
  268. package/lib/model/strategy/adapter/walletPass/locales.js +58 -36
  269. package/lib/model/strategy/adapter/walletPass/type.d.ts +0 -3
  270. package/lib/model/strategy/adapter/walletPass/type.js +16 -4
  271. package/lib/model/strategy/adapter/walletPass/utils.d.ts +0 -26
  272. package/lib/model/strategy/adapter/walletPass/utils.js +383 -676
  273. package/lib/model/strategy/engine.js +168 -270
  274. package/lib/model/strategy/index.js +34 -49
  275. package/lib/model/strategy/strategy-example.js +239 -243
  276. package/lib/model/strategy/type.js +40 -100
  277. package/lib/modules/Account/index.js +53 -39
  278. package/lib/modules/Account/types.js +33 -20
  279. package/lib/modules/AccountList/index.js +154 -116
  280. package/lib/modules/AccountList/types.js +31 -30
  281. package/lib/modules/AccountList/utils.js +30 -18
  282. package/lib/modules/BaseModule.d.ts +2 -2
  283. package/lib/modules/BaseModule.js +50 -29
  284. package/lib/modules/BookingContext/index.d.ts +48 -0
  285. package/lib/modules/BookingContext/index.js +368 -0
  286. package/lib/modules/BookingContext/types.d.ts +102 -0
  287. package/lib/modules/BookingContext/types.js +34 -0
  288. package/lib/modules/BookingContext/utils/buildCacheItemFromOrderLine.d.ts +16 -0
  289. package/lib/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +298 -0
  290. package/lib/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.d.ts +8 -0
  291. package/lib/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.js +155 -0
  292. package/lib/modules/BookingContext/utils/cacheItemToBookingInput.d.ts +76 -0
  293. package/lib/modules/BookingContext/utils/cacheItemToBookingInput.js +222 -0
  294. package/lib/modules/BookingContext/utils/flexible.d.ts +28 -0
  295. package/lib/modules/BookingContext/utils/flexible.js +80 -0
  296. package/lib/modules/BookingContext/utils/formatResourceList.d.ts +8 -0
  297. package/lib/modules/BookingContext/utils/formatResourceList.js +50 -0
  298. package/lib/modules/BookingContext/utils/index.d.ts +11 -0
  299. package/lib/modules/BookingContext/utils/index.js +43 -0
  300. package/lib/modules/BookingContext/utils/noResource.d.ts +13 -0
  301. package/lib/modules/BookingContext/utils/noResource.js +90 -0
  302. package/lib/modules/BookingContext/utils/orderLineDisplay.d.ts +1 -0
  303. package/lib/modules/BookingContext/utils/orderLineDisplay.js +56 -0
  304. package/lib/modules/BookingContext/utils/productExtend.d.ts +72 -0
  305. package/lib/modules/BookingContext/utils/productExtend.js +283 -0
  306. package/lib/modules/BookingContext/utils/resourceErrors.d.ts +41 -0
  307. package/lib/modules/BookingContext/utils/resourceErrors.js +80 -0
  308. package/lib/modules/BookingContext/utils/resourceSelection.d.ts +7 -0
  309. package/lib/modules/BookingContext/utils/resourceSelection.js +46 -0
  310. package/lib/modules/BookingContext/utils/resources.d.ts +80 -0
  311. package/lib/modules/BookingContext/utils/resources.js +377 -0
  312. package/lib/modules/BookingContext/utils/serviceTimes.d.ts +55 -0
  313. package/lib/modules/BookingContext/utils/serviceTimes.js +162 -0
  314. package/lib/modules/BookingContext/utils/timeSlices.d.ts +42 -0
  315. package/lib/modules/BookingContext/utils/timeSlices.js +124 -0
  316. package/lib/modules/Cart/index.js +124 -170
  317. package/lib/modules/Cart/types.js +51 -46
  318. package/lib/modules/Cart/utils/cartAccount.js +39 -40
  319. package/lib/modules/Cart/utils/cartDate.js +61 -56
  320. package/lib/modules/Cart/utils/cartDiscount.js +33 -28
  321. package/lib/modules/Cart/utils/cartNote.js +32 -27
  322. package/lib/modules/Cart/utils/cartProduct.js +261 -309
  323. package/lib/modules/Cart/utils/cartRelationForms.js +35 -29
  324. package/lib/modules/Cart/utils/cartResource.js +78 -72
  325. package/lib/modules/Cart/utils/changePrice.js +59 -31
  326. package/lib/modules/Cart/utils/index.js +48 -106
  327. package/lib/modules/Customer/constants.js +34 -13
  328. package/lib/modules/Customer/index.d.ts +20 -0
  329. package/lib/modules/Customer/index.js +207 -217
  330. package/lib/modules/Customer/types.d.ts +2 -0
  331. package/lib/modules/Customer/types.js +35 -38
  332. package/lib/modules/Date/index.js +115 -116
  333. package/lib/modules/Date/types.js +28 -16
  334. package/lib/modules/Date/utils.js +123 -174
  335. package/lib/modules/Discount/index.d.ts +2 -2
  336. package/lib/modules/Discount/index.js +133 -119
  337. package/lib/modules/Discount/types.d.ts +1 -1
  338. package/lib/modules/Discount/types.js +31 -9
  339. package/lib/modules/Guests/index.js +56 -30
  340. package/lib/modules/Guests/types.js +33 -23
  341. package/lib/modules/Holder/index.js +189 -209
  342. package/lib/modules/Holder/types.js +16 -4
  343. package/lib/modules/Holder/utils.js +49 -20
  344. package/lib/modules/OpenData/index.d.ts +8 -0
  345. package/lib/modules/OpenData/index.js +88 -63
  346. package/lib/modules/OpenData/types.js +16 -4
  347. package/lib/modules/OpenData/utils.js +78 -44
  348. package/lib/modules/Order/index.d.ts +449 -24
  349. package/lib/modules/Order/index.js +4184 -514
  350. package/lib/modules/Order/types.d.ts +693 -88
  351. package/lib/modules/Order/types.js +35 -24
  352. package/lib/modules/Order/utils/bundleDiscountHydration.d.ts +5 -0
  353. package/lib/modules/Order/utils/bundleDiscountHydration.js +139 -0
  354. package/lib/modules/Order/utils/manualProductDiscount.d.ts +106 -0
  355. package/lib/modules/Order/utils/manualProductDiscount.js +206 -0
  356. package/lib/modules/Order/utils/orderCollectionIdentity.d.ts +53 -0
  357. package/lib/modules/Order/utils/orderCollectionIdentity.js +415 -0
  358. package/lib/modules/Order/utils.d.ts +167 -18
  359. package/lib/modules/Order/utils.js +1085 -414
  360. package/lib/modules/Payment/cash.js +33 -20
  361. package/lib/modules/Payment/cashRecommendationAlgorithm.js +76 -145
  362. package/lib/modules/Payment/eftpos.js +30 -16
  363. package/lib/modules/Payment/index.d.ts +10 -9
  364. package/lib/modules/Payment/index.js +402 -636
  365. package/lib/modules/Payment/mx51.js +0 -1
  366. package/lib/modules/Payment/types.d.ts +44 -24
  367. package/lib/modules/Payment/types.js +107 -216
  368. package/lib/modules/Payment/utils.d.ts +1 -1
  369. package/lib/modules/Payment/utils.js +50 -52
  370. package/lib/modules/Payment/walletpass.d.ts +0 -2
  371. package/lib/modules/Payment/walletpass.js +216 -221
  372. package/lib/modules/Product/index.js +46 -51
  373. package/lib/modules/Product/types.d.ts +29 -7
  374. package/lib/modules/Product/types.js +16 -4
  375. package/lib/modules/Product/utils.js +33 -32
  376. package/lib/modules/ProductList/index.d.ts +17 -13
  377. package/lib/modules/ProductList/index.js +161 -120
  378. package/lib/modules/ProductList/types.d.ts +16 -0
  379. package/lib/modules/ProductList/types.js +31 -9
  380. package/lib/modules/Quotation/index.d.ts +22 -2
  381. package/lib/modules/Quotation/index.js +154 -64
  382. package/lib/modules/Quotation/types.d.ts +19 -0
  383. package/lib/modules/Quotation/types.js +16 -4
  384. package/lib/modules/Resource/index.js +59 -27
  385. package/lib/modules/Resource/types.js +32 -22
  386. package/lib/modules/Resource/utils.js +38 -30
  387. package/lib/modules/ResourcePlanner/index.d.ts +24 -0
  388. package/lib/modules/ResourcePlanner/index.js +148 -0
  389. package/lib/modules/ResourcePlanner/planner.d.ts +14 -0
  390. package/lib/modules/ResourcePlanner/planner.js +933 -0
  391. package/lib/modules/ResourcePlanner/types.d.ts +227 -0
  392. package/lib/modules/ResourcePlanner/types.js +17 -0
  393. package/lib/modules/Rules/index.d.ts +8 -10
  394. package/lib/modules/Rules/index.js +960 -1440
  395. package/lib/modules/Rules/types.d.ts +14 -3
  396. package/lib/modules/Rules/types.js +40 -17
  397. package/lib/modules/SalesSummary/index.d.ts +23 -26
  398. package/lib/modules/SalesSummary/index.js +134 -61
  399. package/lib/modules/SalesSummary/types.d.ts +9 -1
  400. package/lib/modules/SalesSummary/types.js +16 -4
  401. package/lib/modules/SalesSummary/utils.d.ts +3 -22
  402. package/lib/modules/SalesSummary/utils.js +814 -233
  403. package/lib/modules/ScanOrderLogger/index.js +79 -59
  404. package/lib/modules/ScanOrderLogger/providers/feishu.js +78 -54
  405. package/lib/modules/ScanOrderLogger/providers/grafana.js +36 -13
  406. package/lib/modules/ScanOrderLogger/types.js +16 -4
  407. package/lib/modules/Schedule/getDateIsInSchedule.js +169 -338
  408. package/lib/modules/Schedule/index.d.ts +18 -5
  409. package/lib/modules/Schedule/index.js +153 -104
  410. package/lib/modules/Schedule/type.js +16 -4
  411. package/lib/modules/Schedule/types.d.ts +2 -0
  412. package/lib/modules/Schedule/types.js +16 -4
  413. package/lib/modules/Schedule/utils.js +291 -433
  414. package/lib/modules/Step/index.js +52 -40
  415. package/lib/modules/Step/tyeps.js +16 -4
  416. package/lib/modules/Summary/index.js +71 -66
  417. package/lib/modules/Summary/types.js +16 -4
  418. package/lib/modules/Summary/utils.js +418 -791
  419. package/lib/modules/SurchargeList/index.d.ts +18 -0
  420. package/lib/modules/SurchargeList/index.js +109 -0
  421. package/lib/modules/SurchargeList/types.d.ts +15 -0
  422. package/lib/modules/SurchargeList/types.js +17 -0
  423. package/lib/modules/index.d.ts +3 -0
  424. package/lib/modules/index.js +63 -212
  425. package/lib/plugins/app.d.ts +2 -0
  426. package/lib/plugins/app.js +16 -4
  427. package/lib/plugins/index.js +25 -36
  428. package/lib/plugins/request.d.ts +1 -0
  429. package/lib/plugins/request.js +126 -137
  430. package/lib/plugins/shopStore.js +16 -4
  431. package/lib/plugins/user.js +16 -4
  432. package/lib/plugins/window.js +179 -171
  433. package/lib/server/index.d.ts +462 -8
  434. package/lib/server/index.js +4520 -1162
  435. package/lib/server/modules/floor-plan/index.d.ts +39 -0
  436. package/lib/server/modules/floor-plan/index.js +327 -0
  437. package/lib/server/modules/floor-plan/types.d.ts +43 -0
  438. package/lib/server/modules/floor-plan/types.js +34 -0
  439. package/lib/server/modules/index.d.ts +7 -2
  440. package/lib/server/modules/index.js +67 -84
  441. package/lib/server/modules/menu/index.js +122 -146
  442. package/lib/server/modules/menu/types.js +31 -18
  443. package/lib/server/modules/order/index.d.ts +207 -14
  444. package/lib/server/modules/order/index.js +1543 -285
  445. package/lib/server/modules/order/types.d.ts +76 -5
  446. package/lib/server/modules/order/types.js +32 -107
  447. package/lib/server/modules/order/utils/filterBookings.d.ts +7 -1
  448. package/lib/server/modules/order/utils/filterBookings.js +259 -176
  449. package/lib/server/modules/order/utils/filterOrders.js +293 -94
  450. package/lib/server/modules/payment/index.d.ts +28 -0
  451. package/lib/server/modules/payment/index.js +192 -0
  452. package/lib/server/modules/payment/types.d.ts +9 -0
  453. package/lib/server/modules/payment/types.js +17 -0
  454. package/lib/server/modules/products/index.d.ts +105 -14
  455. package/lib/server/modules/products/index.js +850 -475
  456. package/lib/server/modules/products/types.d.ts +34 -1
  457. package/lib/server/modules/products/types.js +34 -41
  458. package/lib/server/modules/quotation/index.d.ts +39 -0
  459. package/lib/server/modules/quotation/index.js +254 -75
  460. package/lib/server/modules/quotation/types.js +31 -21
  461. package/lib/server/modules/resource/index.d.ts +2 -3
  462. package/lib/server/modules/resource/index.js +240 -243
  463. package/lib/server/modules/resource/types.js +33 -42
  464. package/lib/server/modules/schedule/index.d.ts +6 -4
  465. package/lib/server/modules/schedule/index.js +146 -147
  466. package/lib/server/modules/schedule/types.js +21 -14
  467. package/lib/server/modules/schedule/utils.js +163 -334
  468. package/lib/server/test.json +713 -0
  469. package/lib/server/types.d.ts +2 -0
  470. package/lib/server/types.js +16 -4
  471. package/lib/server/utils/index.js +23 -25
  472. package/lib/server/utils/product.js +140 -197
  473. package/lib/server/utils/schedule.js +41 -34
  474. package/lib/server/utils/small-ticket.d.ts +71 -0
  475. package/lib/server/utils/small-ticket.js +904 -0
  476. package/lib/server/utils/time.js +49 -40
  477. package/lib/solution/BaseSales/index.d.ts +378 -0
  478. package/lib/solution/BaseSales/index.js +2533 -0
  479. package/lib/solution/BaseSales/types.d.ts +394 -0
  480. package/lib/solution/BaseSales/types.js +43 -0
  481. package/lib/solution/BaseSales/utils/cartPromotion.d.ts +287 -0
  482. package/lib/solution/BaseSales/utils/cartPromotion.js +1004 -0
  483. package/lib/solution/BaseSales/utils/parseSalesResponse.d.ts +144 -0
  484. package/lib/solution/BaseSales/utils/parseSalesResponse.js +160 -0
  485. package/lib/solution/BaseSales/utils/quotationPrice.d.ts +18 -0
  486. package/lib/solution/BaseSales/utils/quotationPrice.js +289 -0
  487. package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.d.ts +63 -0
  488. package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +256 -0
  489. package/lib/solution/BaseSales/utils.d.ts +40 -0
  490. package/lib/solution/BaseSales/utils.js +244 -0
  491. package/lib/solution/BookingByStep/index.d.ts +1 -1
  492. package/lib/solution/BookingByStep/index.js +1340 -1530
  493. package/lib/solution/BookingByStep/types.js +99 -40
  494. package/lib/solution/BookingByStep/utils/capacity.js +160 -192
  495. package/lib/solution/BookingByStep/utils/products.js +52 -42
  496. package/lib/solution/BookingByStep/utils/resources.js +330 -527
  497. package/lib/solution/BookingByStep/utils/stock.js +44 -65
  498. package/lib/solution/BookingByStep/utils/timeslots.js +131 -129
  499. package/lib/solution/BookingTicket/index.d.ts +393 -24
  500. package/lib/solution/BookingTicket/index.js +1374 -184
  501. package/lib/solution/BookingTicket/types.d.ts +191 -6
  502. package/lib/solution/BookingTicket/types.js +79 -40
  503. package/lib/solution/BookingTicket/utils/addProductDecision.d.ts +117 -0
  504. package/lib/solution/BookingTicket/utils/addProductDecision.js +318 -0
  505. package/lib/solution/BookingTicket/utils/addTimeAvailability.d.ts +35 -0
  506. package/lib/solution/BookingTicket/utils/addTimeAvailability.js +125 -0
  507. package/lib/solution/BookingTicket/utils/bookingStatus.d.ts +77 -0
  508. package/lib/solution/BookingTicket/utils/bookingStatus.js +107 -0
  509. package/lib/solution/BookingTicket/utils/cartView.d.ts +29 -0
  510. package/lib/solution/BookingTicket/utils/cartView.js +184 -0
  511. package/lib/solution/BookingTicket/utils/exampleData.d.ts +123 -0
  512. package/lib/solution/BookingTicket/utils/exampleData.js +0 -0
  513. package/lib/solution/BookingTicket/utils/orderCustomer.d.ts +4 -0
  514. package/lib/solution/BookingTicket/utils/orderCustomer.js +58 -0
  515. package/lib/solution/BookingTicket/utils/resolveBestAddTimePlan.d.ts +185 -0
  516. package/lib/solution/BookingTicket/utils/resolveBestAddTimePlan.js +254 -0
  517. package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.d.ts +36 -0
  518. package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.js +169 -0
  519. package/lib/solution/BookingTicket/utils/scan/cloudSearch.d.ts +4 -0
  520. package/lib/solution/BookingTicket/utils/scan/cloudSearch.js +97 -64
  521. package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.d.ts +32 -0
  522. package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.js +51 -0
  523. package/lib/solution/BookingTicket/utils/scan/handleScan.d.ts +3 -1
  524. package/lib/solution/BookingTicket/utils/scan/handleScan.js +81 -82
  525. package/lib/solution/BookingTicket/utils/scan/index.d.ts +5 -0
  526. package/lib/solution/BookingTicket/utils/scan/index.js +109 -91
  527. package/lib/solution/BookingTicket/utils/scan/scanCache.js +43 -90
  528. package/lib/solution/BookingTicket/utils/scan/scanProductValues.d.ts +21 -0
  529. package/lib/solution/BookingTicket/utils/scan/scanProductValues.js +127 -0
  530. package/lib/solution/BookingTicket/utils/sessionCatalogStale.d.ts +23 -0
  531. package/lib/solution/BookingTicket/utils/sessionCatalogStale.js +85 -0
  532. package/lib/solution/BuyTickets/index.js +70 -67
  533. package/lib/solution/BuyTickets/types.js +38 -22
  534. package/lib/solution/Checkout/index.d.ts +1 -0
  535. package/lib/solution/Checkout/index.js +1169 -1463
  536. package/lib/solution/Checkout/types.js +61 -91
  537. package/lib/solution/Checkout/utils/index.js +156 -228
  538. package/lib/solution/PlaceOrder/index.js +0 -55
  539. package/lib/solution/RegisterAndLogin/config.js +462 -503
  540. package/lib/solution/RegisterAndLogin/index.js +630 -633
  541. package/lib/solution/RegisterAndLogin/types.js +76 -189
  542. package/lib/solution/RegisterAndLogin/utils.js +125 -183
  543. package/lib/solution/Sales/index.d.ts +50 -5
  544. package/lib/solution/Sales/index.js +498 -238
  545. package/lib/solution/Sales/types.d.ts +26 -2
  546. package/lib/solution/Sales/types.js +33 -27
  547. package/lib/solution/ScanOrder/index.d.ts +27 -21
  548. package/lib/solution/ScanOrder/index.js +936 -864
  549. package/lib/solution/ScanOrder/types.d.ts +33 -11
  550. package/lib/solution/ScanOrder/types.js +34 -34
  551. package/lib/solution/ScanOrder/utils.d.ts +4 -1
  552. package/lib/solution/ScanOrder/utils.js +422 -385
  553. package/lib/solution/ShopDiscount/index.js +233 -235
  554. package/lib/solution/ShopDiscount/types.d.ts +4 -5
  555. package/lib/solution/ShopDiscount/types.js +37 -15
  556. package/lib/solution/ShopDiscount/utils.d.ts +0 -9
  557. package/lib/solution/ShopDiscount/utils.js +172 -309
  558. package/lib/solution/UnifiedBookingSales/index.d.ts +183 -0
  559. package/lib/solution/UnifiedBookingSales/index.js +1076 -0
  560. package/lib/solution/UnifiedBookingSales/types.d.ts +143 -0
  561. package/lib/solution/UnifiedBookingSales/types.js +33 -0
  562. package/lib/solution/VenueBooking/index.d.ts +32 -51
  563. package/lib/solution/VenueBooking/index.js +1008 -984
  564. package/lib/solution/VenueBooking/sales-section-4-annotated.json +0 -2
  565. package/lib/solution/VenueBooking/types.d.ts +1 -3
  566. package/lib/solution/VenueBooking/types.js +39 -20
  567. package/lib/solution/VenueBooking/utils/dateSummary.d.ts +2 -2
  568. package/lib/solution/VenueBooking/utils/dateSummary.js +62 -25
  569. package/lib/solution/VenueBooking/utils/resource.js +54 -31
  570. package/lib/solution/VenueBooking/utils/slotMerge.d.ts +6 -0
  571. package/lib/solution/VenueBooking/utils/slotMerge.js +109 -90
  572. package/lib/solution/VenueBooking/utils/timeSlot.d.ts +0 -2
  573. package/lib/solution/VenueBooking/utils/timeSlot.js +133 -138
  574. package/lib/solution/VenueBooking/utils.js +67 -130
  575. package/lib/solution/index.d.ts +2 -0
  576. package/lib/solution/index.js +41 -102
  577. package/lib/store/createStore.js +29 -32
  578. package/lib/types/index.d.ts +12 -2
  579. package/lib/types/index.js +16 -4
  580. package/lib/utils/task.js +36 -36
  581. package/lib/utils/watch.js +47 -81
  582. package/package.json +2 -4
  583. package/dist/solution/Checkout/appointmentDemo.json +0 -1
  584. package/dist/solution/VenueBooking/utils/smartPricing.d.ts +0 -70
  585. package/dist/solution/VenueBooking/utils/smartPricing.js +0 -233
  586. package/lib/solution/Checkout/appointmentDemo.json +0 -1
  587. package/lib/solution/VenueBooking/utils/smartPricing.d.ts +0 -70
  588. package/lib/solution/VenueBooking/utils/smartPricing.js +0 -192
@@ -1,48 +1,107 @@
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/solution/BookingByStep/types.ts
20
+ var types_exports = {};
21
+ __export(types_exports, {
22
+ BookingByStepHooks: () => BookingByStepHooks,
23
+ createModule: () => createModule
5
24
  });
6
- exports.BookingByStepHooks = void 0;
7
- exports.createModule = createModule;
8
- var _modules = require("../../modules");
25
+ module.exports = __toCommonJS(types_exports);
26
+ var import_modules = require("../../modules");
9
27
  function createModule(moduleName, solutionName, name, version) {
10
28
  switch (moduleName) {
11
- case 'cart':
12
- return new _modules.CartModule(`${solutionName}_${name || moduleName}`, version);
13
- case 'summary':
14
- return new _modules.SummaryModule(`${solutionName}_${name || moduleName}`, version);
15
- case 'salesSummary':
16
- return new _modules.SalesSummaryModule(`${solutionName}_${name || moduleName}`, version);
17
- case 'step':
18
- return new _modules.StepModule(`${solutionName}_${name || moduleName}`, version);
19
- case 'products':
20
- return new _modules.ProductList(`${solutionName}_${name || moduleName}`, version);
21
- case 'date':
22
- return new _modules.DateModule(`${solutionName}_${name || moduleName}`, version);
23
- case 'accountList':
24
- return new _modules.AccountListModule(`${solutionName}_${name || moduleName}`, version);
25
- case 'order':
26
- return new _modules.OrderModule(`${solutionName}_${name || moduleName}`, version);
27
- case 'payment':
28
- return new _modules.PaymentModule(`${solutionName}_${name || moduleName}`, version);
29
- case 'schedule':
30
- return new _modules.ScheduleModule(`${solutionName}_${name || moduleName}`, version);
31
- case 'scanOrderLogger':
32
- return new _modules.ScanOrderLoggerModule(`${solutionName}_${name || moduleName}`, version);
33
- case 'holder':
34
- return new _modules.HolderModule(`${solutionName}_${name || moduleName}`, version);
29
+ case "cart":
30
+ return new import_modules.CartModule(
31
+ `${solutionName}_${name || moduleName}`,
32
+ version
33
+ );
34
+ case "summary":
35
+ return new import_modules.SummaryModule(
36
+ `${solutionName}_${name || moduleName}`,
37
+ version
38
+ );
39
+ case "salesSummary":
40
+ return new import_modules.SalesSummaryModule(
41
+ `${solutionName}_${name || moduleName}`,
42
+ version
43
+ );
44
+ case "step":
45
+ return new import_modules.StepModule(
46
+ `${solutionName}_${name || moduleName}`,
47
+ version
48
+ );
49
+ case "products":
50
+ return new import_modules.ProductList(
51
+ `${solutionName}_${name || moduleName}`,
52
+ version
53
+ );
54
+ case "date":
55
+ return new import_modules.DateModule(
56
+ `${solutionName}_${name || moduleName}`,
57
+ version
58
+ );
59
+ case "accountList":
60
+ return new import_modules.AccountListModule(
61
+ `${solutionName}_${name || moduleName}`,
62
+ version
63
+ );
64
+ case "order":
65
+ return new import_modules.OrderModule(
66
+ `${solutionName}_${name || moduleName}`,
67
+ version
68
+ );
69
+ case "payment":
70
+ return new import_modules.PaymentModule(
71
+ `${solutionName}_${name || moduleName}`,
72
+ version
73
+ );
74
+ case "schedule":
75
+ return new import_modules.ScheduleModule(
76
+ `${solutionName}_${name || moduleName}`,
77
+ version
78
+ );
79
+ case "scanOrderLogger":
80
+ return new import_modules.ScanOrderLoggerModule(
81
+ `${solutionName}_${name || moduleName}`,
82
+ version
83
+ );
84
+ case "holder":
85
+ return new import_modules.HolderModule(
86
+ `${solutionName}_${name || moduleName}`,
87
+ version
88
+ );
35
89
  default:
36
90
  throw new Error(`Unknown module type: ${moduleName}`);
37
91
  }
38
92
  }
39
- let BookingByStepHooks = exports.BookingByStepHooks = /*#__PURE__*/function (BookingByStepHooks) {
40
- BookingByStepHooks["onInited"] = "bookingByStep:onInited";
41
- BookingByStepHooks["onDestroy"] = "bookingByStep:onDestroy";
42
- BookingByStepHooks["onProductsLoaded"] = "bookingByStep:onProductsLoaded";
43
- BookingByStepHooks["onGuestsLoaded"] = "bookingByStep:onGuestsLoaded";
44
- BookingByStepHooks["onDateLoaded"] = "bookingByStep:onDateLoaded";
45
- BookingByStepHooks["onResourcesLoaded"] = "bookingByStep:onResourcesLoaded";
46
- BookingByStepHooks["onAccountLoaded"] = "bookingByStep:onAccountLoaded";
47
- return BookingByStepHooks;
48
- }({});
93
+ var BookingByStepHooks = /* @__PURE__ */ ((BookingByStepHooks2) => {
94
+ BookingByStepHooks2["onInited"] = "bookingByStep:onInited";
95
+ BookingByStepHooks2["onDestroy"] = "bookingByStep:onDestroy";
96
+ BookingByStepHooks2["onProductsLoaded"] = "bookingByStep:onProductsLoaded";
97
+ BookingByStepHooks2["onGuestsLoaded"] = "bookingByStep:onGuestsLoaded";
98
+ BookingByStepHooks2["onDateLoaded"] = "bookingByStep:onDateLoaded";
99
+ BookingByStepHooks2["onResourcesLoaded"] = "bookingByStep:onResourcesLoaded";
100
+ BookingByStepHooks2["onAccountLoaded"] = "bookingByStep:onAccountLoaded";
101
+ return BookingByStepHooks2;
102
+ })(BookingByStepHooks || {});
103
+ // Annotate the CommonJS export names for ESM import in node:
104
+ 0 && (module.exports = {
105
+ BookingByStepHooks,
106
+ createModule
107
+ });
@@ -1,57 +1,84 @@
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/solution/BookingByStep/utils/capacity.ts
30
+ var capacity_exports = {};
31
+ __export(capacity_exports, {
32
+ calculateCartItemsCapacityUsageByResourceType: () => calculateCartItemsCapacityUsageByResourceType,
33
+ checkResourceCanUseByCapacity: () => checkResourceCanUseByCapacity,
34
+ checkSubResourcesCapacity: () => checkSubResourcesCapacity,
35
+ checkTimeSlotCapacity: () => checkTimeSlotCapacity,
36
+ formatDefaultCapacitys: () => formatDefaultCapacitys,
37
+ getCapacityInfoByCartItem: () => getCapacityInfoByCartItem,
38
+ getResourcesIdsByProduct: () => getResourcesIdsByProduct,
39
+ getSumCapacity: () => getSumCapacity
5
40
  });
6
- exports.calculateCartItemsCapacityUsageByResourceType = calculateCartItemsCapacityUsageByResourceType;
7
- exports.checkSubResourcesCapacity = exports.checkResourceCanUseByCapacity = void 0;
8
- exports.checkTimeSlotCapacity = checkTimeSlotCapacity;
9
- exports.formatDefaultCapacitys = void 0;
10
- exports.getCapacityInfoByCartItem = getCapacityInfoByCartItem;
11
- exports.getResourcesIdsByProduct = getResourcesIdsByProduct;
12
- exports.getSumCapacity = void 0;
13
- var _dayjs = _interopRequireDefault(require("dayjs"));
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
- /**
16
- * @title: 基于选择的商品格式化容量
17
- * @description:
18
- * @param {any} param1
19
- * @return {*}
20
- * @Author: zhiwei.Wang
21
- */
22
- const formatDefaultCapacitys = ({
41
+ module.exports = __toCommonJS(capacity_exports);
42
+ var import_dayjs = __toESM(require("dayjs"));
43
+ var formatDefaultCapacitys = ({
23
44
  capacity,
24
45
  product_bundle
25
46
  }) => {
26
- if (capacity?.type === 'package') {
27
- return (product_bundle || []).map(d => {
47
+ if ((capacity == null ? void 0 : capacity.type) === "package") {
48
+ return (product_bundle || []).map((d) => {
28
49
  const id = d.bundle_product_id;
29
50
  const variantId = d.bundle_variant_id;
30
- const item = (capacity?.package || []).find(item => item.product_id == id || item.product_id == variantId);
31
- if (!item && window?.sendWarningLog) {
51
+ const item = ((capacity == null ? void 0 : capacity.package) || []).find(
52
+ (item2) => item2.product_id == id || item2.product_id == variantId
53
+ );
54
+ if (!item && (window == null ? void 0 : window.sendWarningLog)) {
32
55
  window.sendWarningLog({
33
- title: '未找到套餐 capacity 配置',
34
- content: [{
35
- key: 'product_id',
36
- value: id
37
- }, {
38
- key: 'variant_id',
39
- value: variantId
40
- }, {
41
- key: 'package',
42
- value: JSON.stringify(capacity?.package || [])
43
- }]
56
+ title: "未找到套餐 capacity 配置",
57
+ content: [
58
+ {
59
+ key: "product_id",
60
+ value: id
61
+ },
62
+ {
63
+ key: "variant_id",
64
+ value: variantId
65
+ },
66
+ {
67
+ key: "package",
68
+ value: JSON.stringify((capacity == null ? void 0 : capacity.package) || [])
69
+ }
70
+ ]
44
71
  });
45
72
  }
46
73
  return {
47
- id: id,
74
+ id,
48
75
  value: item ? d.num || 0 : 0,
49
- name: item?.name || d?.title
76
+ name: (item == null ? void 0 : item.name) || (d == null ? void 0 : d.title)
50
77
  };
51
78
  });
52
79
  }
53
- if (capacity?.type === 'custom') {
54
- return (capacity?.custom || []).map(d => {
80
+ if ((capacity == null ? void 0 : capacity.type) === "custom") {
81
+ return ((capacity == null ? void 0 : capacity.custom) || []).map((d) => {
55
82
  return {
56
83
  id: d.id,
57
84
  value: d.min,
@@ -59,248 +86,178 @@ const formatDefaultCapacitys = ({
59
86
  };
60
87
  });
61
88
  }
62
-
63
- // 默认为1
64
- return [{
65
- id: 0,
66
- value: 1,
67
- name: ''
68
- }];
89
+ return [{ id: 0, value: 1, name: "" }];
69
90
  };
70
-
71
- /**
72
- * @title: 获取总容量
73
- * @description:
74
- * @param {object} capacity 为 formatDefaultCapacitys()的结果
75
- * @return {*}
76
- * @Author: zhiwei.Wang
77
- */
78
- exports.formatDefaultCapacitys = formatDefaultCapacitys;
79
- const getSumCapacity = ({
80
- capacity,
81
- num = 1
82
- }) => {
91
+ var getSumCapacity = ({ capacity, num = 1 }) => {
83
92
  let sum = 0;
84
93
  for (let item of capacity || []) {
85
94
  sum += item.value;
86
95
  }
87
96
  return sum * num;
88
97
  };
89
-
90
- /**
91
- * 给定购物车数据,返回对应的 capacity 信息和套餐 capacity
92
- *
93
- * @export
94
- * @param {CartItem} targetCartItem
95
- * @return {*}
96
- */
97
- exports.getSumCapacity = getSumCapacity;
98
98
  function getCapacityInfoByCartItem(targetCartItem) {
99
+ var _a;
99
100
  const formatCapacity = formatDefaultCapacitys({
100
- capacity: targetCartItem._productOrigin?.capacity,
101
+ capacity: (_a = targetCartItem._productOrigin) == null ? void 0 : _a.capacity,
101
102
  product_bundle: targetCartItem._origin.product.product_bundle
102
103
  });
103
- const currentCapacity = getSumCapacity({
104
- capacity: formatCapacity,
105
- num: targetCartItem?.num || 1
106
- });
104
+ const currentCapacity = getSumCapacity({ capacity: formatCapacity, num: (targetCartItem == null ? void 0 : targetCartItem.num) || 1 });
107
105
  return {
108
106
  formatCapacity,
109
107
  currentCapacity
110
108
  };
111
109
  }
112
-
113
- /**
114
- * @title: 传入资源,如果有子资源,会根据组合资源的 capacity 计算修改子资源的 capacity
115
- * @description:
116
- * @param {object} resource
117
- * @return {*}
118
- * @Author: jinglin.tan
119
- */
120
- const checkSubResourcesCapacity = resource => {
110
+ var checkSubResourcesCapacity = (resource) => {
121
111
  if (resource.children && resource.children.length) {
122
- let countCapacity = resource.capacity; // 100
112
+ let countCapacity = resource.capacity;
123
113
  resource.children.forEach((child, index) => {
124
114
  if (index === resource.children.length - 1) {
125
- // 如果是最后一个资源,直接拿剩余未分配完的容量去占用
126
- // 哪怕这个东西会超过资源本身的 capacity也得让他占,PRD 里有写
127
115
  child.capacity = countCapacity;
128
116
  return;
129
117
  }
130
118
  if (child.capacity <= countCapacity) {
131
- countCapacity -= child.capacity; // 100 - = 90
119
+ countCapacity -= child.capacity;
132
120
  } else {
133
- child.capacity = countCapacity; // 10
134
- countCapacity = 0; // 0
121
+ child.capacity = countCapacity;
122
+ countCapacity = 0;
135
123
  }
136
124
  });
137
125
  }
138
126
  };
139
-
140
- /**
141
- * 检查资源是否有足够的容量供额外使用
142
- * @param currentCapacity - 当前已使用的容量
143
- * @param requiredCapacity - 需要的额外容量
144
- * @param maxCapacity - 最大允许容量
145
- * @returns 如果资源可以容纳额外的容量则返回 true
146
- */
147
- exports.checkSubResourcesCapacity = checkSubResourcesCapacity;
148
- const checkResourceCanUseByCapacity = (currentCapacity, requiredCapacity, maxCapacity) => {
149
- // Handle edge cases early
127
+ var checkResourceCanUseByCapacity = (currentCapacity, requiredCapacity, maxCapacity) => {
150
128
  if (currentCapacity < 0 || requiredCapacity < 0 || maxCapacity <= 0) {
151
129
  return false;
152
130
  }
153
131
  return currentCapacity + requiredCapacity <= maxCapacity;
154
132
  };
155
-
156
- /**
157
- * 计算按资源类型分组的容量占用情况
158
- *
159
- * @param {CartItem[]} cartItems 购物车商品列表
160
- * @param {string} timeSlotStart 时间段开始时间
161
- * @param {string} timeSlotEnd 时间段结束时间
162
- * @param {ResourceItem[]} allProductResources 当前商品的所有资源列表
163
- * @return {Record<string, number>} 返回每种资源类型(form_id)的容量占用
164
- */
165
- exports.checkResourceCanUseByCapacity = checkResourceCanUseByCapacity;
166
133
  function calculateCartItemsCapacityUsageByResourceType({
167
134
  cartItems,
168
135
  timeSlotStart,
169
136
  timeSlotEnd,
170
137
  allProductResources
171
138
  }) {
172
- // 按 form_id 分组当前商品的资源
173
139
  const resourceTypeMap = {};
174
- allProductResources.forEach(resource => {
175
- const formId = resource.form_id?.toString() || 'default';
140
+ allProductResources.forEach((resource) => {
141
+ var _a;
142
+ const formId = ((_a = resource.form_id) == null ? void 0 : _a.toString()) || "default";
176
143
  if (!resourceTypeMap[formId]) {
177
144
  resourceTypeMap[formId] = [];
178
145
  }
179
146
  resourceTypeMap[formId].push(resource);
180
147
  });
181
-
182
- // 计算每种资源类型的容量占用
183
148
  const capacityUsageByType = {};
184
- Object.keys(resourceTypeMap).forEach(formId => {
149
+ Object.keys(resourceTypeMap).forEach((formId) => {
185
150
  let totalUsage = 0;
186
151
  const resourcesInThisType = resourceTypeMap[formId];
187
- const resourceIdsInThisType = resourcesInThisType.map(r => r.id);
188
- cartItems.forEach(cartItem => {
189
- // 检查该商品是否已经选定了时间
190
- if (!cartItem.start_time || !cartItem.end_time) return;
191
-
192
- // 构建该商品的时间段
152
+ const resourceIdsInThisType = resourcesInThisType.map((r) => r.id);
153
+ cartItems.forEach((cartItem) => {
154
+ if (!cartItem.start_time || !cartItem.end_time)
155
+ return;
193
156
  const itemStart = `${cartItem.start_date} ${cartItem.start_time}`;
194
157
  const itemEnd = `${cartItem.end_date || cartItem.start_date} ${cartItem.end_time}`;
195
-
196
- // 检查时间段是否有重叠
197
- const hasTimeOverlap = !((0, _dayjs.default)(itemEnd).isBefore((0, _dayjs.default)(timeSlotStart)) || (0, _dayjs.default)(itemStart).isAfter((0, _dayjs.default)(timeSlotEnd)));
198
- if (!hasTimeOverlap) return;
199
-
200
- // 检查该商品的资源配置中是否需要这种类型的资源
201
- // 由于购物车商品只选定了时间,没有选定具体资源,我们需要看商品的资源配置
158
+ const hasTimeOverlap = !((0, import_dayjs.default)(itemEnd).isBefore((0, import_dayjs.default)(timeSlotStart)) || (0, import_dayjs.default)(itemStart).isAfter((0, import_dayjs.default)(timeSlotEnd)));
159
+ if (!hasTimeOverlap)
160
+ return;
202
161
  const productResourceIds = getResourcesIdsByProduct(cartItem._productOrigin);
203
- const hasResourceTypeOverlap = productResourceIds.some(id => resourceIdsInThisType.includes(id));
204
- if (!hasResourceTypeOverlap) return;
205
-
206
- // 计算该商品的容量占用
207
- const {
208
- currentCapacity
209
- } = getCapacityInfoByCartItem(cartItem);
162
+ const hasResourceTypeOverlap = productResourceIds.some(
163
+ (id) => resourceIdsInThisType.includes(id)
164
+ );
165
+ if (!hasResourceTypeOverlap)
166
+ return;
167
+ const { currentCapacity } = getCapacityInfoByCartItem(cartItem);
210
168
  totalUsage += currentCapacity;
211
169
  });
212
170
  capacityUsageByType[formId] = totalUsage;
213
171
  });
214
172
  return capacityUsageByType;
215
173
  }
216
-
217
- /**
218
- * 获取商品的资源ID列表
219
- */
220
174
  function getResourcesIdsByProduct(product) {
175
+ var _a, _b, _c;
221
176
  const tempResourceIds = [];
222
- product?.product_resource?.resources?.forEach?.(resource => {
223
- if (resource?.status == 1) {
224
- if (resource?.default_resource?.length) {
225
- tempResourceIds.push(...resource?.default_resource);
226
- } else if (resource?.optional_resource?.length) {
227
- tempResourceIds.push(...resource?.optional_resource);
177
+ (_c = (_b = (_a = product == null ? void 0 : product.product_resource) == null ? void 0 : _a.resources) == null ? void 0 : _b.forEach) == null ? void 0 : _c.call(_b, (resource) => {
178
+ var _a2, _b2;
179
+ if ((resource == null ? void 0 : resource.status) == 1) {
180
+ if ((_a2 = resource == null ? void 0 : resource.default_resource) == null ? void 0 : _a2.length) {
181
+ tempResourceIds.push(...resource == null ? void 0 : resource.default_resource);
182
+ } else if ((_b2 = resource == null ? void 0 : resource.optional_resource) == null ? void 0 : _b2.length) {
183
+ tempResourceIds.push(...resource == null ? void 0 : resource.optional_resource);
228
184
  }
229
185
  }
230
186
  });
231
187
  return tempResourceIds;
232
188
  }
233
-
234
- /**
235
- * 检查特定时间段的容量是否足够
236
- */
237
189
  function checkTimeSlotCapacity(timeSlotStart, timeSlotEnd, cartItems, allResources) {
238
- // 按资源类型分组
190
+ var _a, _b;
239
191
  const resourceTypeMap = {};
240
- allResources.forEach(resource => {
241
- const formId = resource.form_id?.toString() || 'default';
192
+ allResources.forEach((resource) => {
193
+ var _a2;
194
+ const formId = ((_a2 = resource.form_id) == null ? void 0 : _a2.toString()) || "default";
242
195
  if (!resourceTypeMap[formId]) {
243
196
  resourceTypeMap[formId] = [];
244
197
  }
245
198
  resourceTypeMap[formId].push(resource);
246
199
  });
247
-
248
- // 计算每种资源类型需要的总容量
249
200
  const requiredCapacityByType = {};
250
- cartItems.forEach(cartItem => {
201
+ cartItems.forEach((cartItem) => {
251
202
  const productResourceIds = getResourcesIdsByProduct(cartItem._productOrigin);
252
- const {
253
- currentCapacity
254
- } = getCapacityInfoByCartItem(cartItem);
255
- Object.keys(resourceTypeMap).forEach(formId => {
203
+ const { currentCapacity } = getCapacityInfoByCartItem(cartItem);
204
+ Object.keys(resourceTypeMap).forEach((formId) => {
205
+ var _a2, _b2, _c, _d;
256
206
  const resourcesInType = resourceTypeMap[formId];
257
- const resourceIdsInType = resourcesInType.map(r => r.id);
258
- const selectType = cartItem._productOrigin?.product_resource?.resources?.find(r => r.id?.toString() === formId)?.type;
259
-
260
- // 检查该商品是否需要这种类型的资源
261
- const needsThisResourceType = productResourceIds.some(id => resourceIdsInType.includes(id));
207
+ const resourceIdsInType = resourcesInType.map((r) => r.id);
208
+ const selectType = (_d = (_c = (_b2 = (_a2 = cartItem._productOrigin) == null ? void 0 : _a2.product_resource) == null ? void 0 : _b2.resources) == null ? void 0 : _c.find((r) => {
209
+ var _a3;
210
+ return ((_a3 = r.id) == null ? void 0 : _a3.toString()) === formId;
211
+ })) == null ? void 0 : _d.type;
212
+ const needsThisResourceType = productResourceIds.some(
213
+ (id) => resourceIdsInType.includes(id)
214
+ );
262
215
  if (needsThisResourceType) {
263
- // 需要判断是单个预约还是多个预约,如果是单个预约,不用加 capacity,只用+1
264
- if (selectType === 'single') {
265
- requiredCapacityByType[formId] = (requiredCapacityByType[formId] || 0) + (cartItem?.num || 1);
216
+ if (selectType === "single") {
217
+ requiredCapacityByType[formId] = (requiredCapacityByType[formId] || 0) + ((cartItem == null ? void 0 : cartItem.num) || 1);
266
218
  } else {
267
219
  requiredCapacityByType[formId] = (requiredCapacityByType[formId] || 0) + currentCapacity;
268
220
  }
269
- // requiredCapacityByType[formId] = (requiredCapacityByType[formId] || 0) + currentCapacity;
270
221
  }
271
222
  });
272
223
  });
273
-
274
- // 检查每种资源类型是否有足够的容量
275
224
  for (const [formId, requiredCapacity] of Object.entries(requiredCapacityByType)) {
276
225
  const resourcesInType = resourceTypeMap[formId];
277
- if (resourcesInType.length === 0) continue;
278
-
279
- // 从购物车商品中获取正确的资源类型配置
226
+ if (resourcesInType.length === 0)
227
+ continue;
280
228
  let resourceTypeConfig = null;
281
229
  for (const cartItem of cartItems) {
282
- if (cartItem._productOrigin?.product_resource?.resources) {
283
- resourceTypeConfig = cartItem._productOrigin.product_resource.resources.find(r => r.id?.toString() === formId && r.status === 1);
284
- if (resourceTypeConfig) break;
230
+ if ((_b = (_a = cartItem._productOrigin) == null ? void 0 : _a.product_resource) == null ? void 0 : _b.resources) {
231
+ resourceTypeConfig = cartItem._productOrigin.product_resource.resources.find(
232
+ (r) => {
233
+ var _a2;
234
+ return ((_a2 = r.id) == null ? void 0 : _a2.toString()) === formId && r.status === 1;
235
+ }
236
+ );
237
+ if (resourceTypeConfig)
238
+ break;
285
239
  }
286
240
  }
287
-
288
- // 确定这种资源类型的预约类型
289
- const isMultipleBooking = resourceTypeConfig?.type === 'multiple';
241
+ const isMultipleBooking = (resourceTypeConfig == null ? void 0 : resourceTypeConfig.type) === "multiple";
242
+ console.log(`capacity.ts - 资源类型 ${formId} 配置:`, {
243
+ resourceTypeConfig,
244
+ type: resourceTypeConfig == null ? void 0 : resourceTypeConfig.type,
245
+ isMultipleBooking,
246
+ requiredCapacity
247
+ });
290
248
  if (isMultipleBooking) {
291
- // 多个预约:计算总可用容量
292
249
  let totalAvailableCapacity = 0;
293
- resourcesInType.forEach(resource => {
294
- // 过滤出在时间段内的资源时间片
295
- const availableTimes = resource.times.filter(time => {
296
- return !(0, _dayjs.default)(time.start_at).isAfter((0, _dayjs.default)(timeSlotStart), 'minute') && !(0, _dayjs.default)(time.end_at).isBefore((0, _dayjs.default)(timeSlotEnd), 'minute') || resource.onlyComputed && (0, _dayjs.default)(time.start_at).isBefore((0, _dayjs.default)(timeSlotEnd), 'minute') && (0, _dayjs.default)(time.end_at).isAfter((0, _dayjs.default)(timeSlotStart), 'minute');
250
+ resourcesInType.forEach((resource) => {
251
+ const availableTimes = resource.times.filter((time) => {
252
+ return !(0, import_dayjs.default)(time.start_at).isAfter((0, import_dayjs.default)(timeSlotStart), "minute") && !(0, import_dayjs.default)(time.end_at).isBefore((0, import_dayjs.default)(timeSlotEnd), "minute") || resource.onlyComputed && (0, import_dayjs.default)(time.start_at).isBefore((0, import_dayjs.default)(timeSlotEnd), "minute") && (0, import_dayjs.default)(time.end_at).isAfter((0, import_dayjs.default)(timeSlotStart), "minute");
297
253
  });
298
254
  if (availableTimes.length > 0) {
299
- // 简化逻辑:如果资源在时间段内有可用时间,就计算其容量
300
255
  totalAvailableCapacity += resource.capacity || 0;
301
256
  }
302
257
  });
258
+ console.log(`capacity.ts - 资源类型 ${formId} 多个预约检查: 总容量 ${totalAvailableCapacity}, 需求 ${requiredCapacity}`);
303
259
  if (totalAvailableCapacity < requiredCapacity) {
260
+ console.log(`资源类型 ${formId} 容量不足: 需要 ${requiredCapacity}, 可用 ${totalAvailableCapacity}`);
304
261
  return {
305
262
  success: false,
306
263
  required: requiredCapacity,
@@ -308,18 +265,18 @@ function checkTimeSlotCapacity(timeSlotStart, timeSlotEnd, cartItems, allResourc
308
265
  };
309
266
  }
310
267
  } else {
311
- // 单个预约:计算可用资源数量
312
268
  let availableResourceCount = 0;
313
- resourcesInType.forEach(resource => {
314
- // 过滤出在时间段内的资源时间片
315
- const availableTimes = resource.times.filter(time => {
316
- return !(0, _dayjs.default)(time.start_at).isAfter((0, _dayjs.default)(timeSlotStart), 'minute') && !(0, _dayjs.default)(time.end_at).isBefore((0, _dayjs.default)(timeSlotEnd), 'minute') || (0, _dayjs.default)(time.start_at).isBefore((0, _dayjs.default)(timeSlotEnd), 'minute') && (0, _dayjs.default)(time.end_at).isAfter((0, _dayjs.default)(timeSlotStart), 'minute');
269
+ resourcesInType.forEach((resource) => {
270
+ const availableTimes = resource.times.filter((time) => {
271
+ return !(0, import_dayjs.default)(time.start_at).isAfter((0, import_dayjs.default)(timeSlotStart), "minute") && !(0, import_dayjs.default)(time.end_at).isBefore((0, import_dayjs.default)(timeSlotEnd), "minute") || (0, import_dayjs.default)(time.start_at).isBefore((0, import_dayjs.default)(timeSlotEnd), "minute") && (0, import_dayjs.default)(time.end_at).isAfter((0, import_dayjs.default)(timeSlotStart), "minute");
317
272
  });
318
273
  if (availableTimes.length > 0) {
319
274
  availableResourceCount++;
320
275
  }
321
276
  });
277
+ console.log(`capacity.ts - 资源类型 ${formId} 单个预约检查: 可用资源数 ${availableResourceCount}, 需求 ${requiredCapacity}`);
322
278
  if (availableResourceCount < requiredCapacity) {
279
+ console.log(`资源类型 ${formId} 数量不足: 需要 ${requiredCapacity}, 可用 ${availableResourceCount}`);
323
280
  return {
324
281
  success: false,
325
282
  required: requiredCapacity,
@@ -333,4 +290,15 @@ function checkTimeSlotCapacity(timeSlotStart, timeSlotEnd, cartItems, allResourc
333
290
  required: 0,
334
291
  available: 0
335
292
  };
336
- }
293
+ }
294
+ // Annotate the CommonJS export names for ESM import in node:
295
+ 0 && (module.exports = {
296
+ calculateCartItemsCapacityUsageByResourceType,
297
+ checkResourceCanUseByCapacity,
298
+ checkSubResourcesCapacity,
299
+ checkTimeSlotCapacity,
300
+ formatDefaultCapacitys,
301
+ getCapacityInfoByCartItem,
302
+ getResourcesIdsByProduct,
303
+ getSumCapacity
304
+ });