@pisell/pisellos 0.0.569 → 0.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (328) hide show
  1. package/dist/core/index.js +10 -6
  2. package/dist/index.d.ts +0 -1
  3. package/dist/index.js +0 -3
  4. package/dist/model/strategy/adapter/promotion/index.js +9 -0
  5. package/dist/model/strategy/adapter/walletPass/evaluator.js +7 -5
  6. package/dist/model/strategy/adapter/walletPass/example.js +26 -3
  7. package/dist/model/strategy/adapter/walletPass/index.js +5 -5
  8. package/dist/model/strategy/adapter/walletPass/type.d.ts +0 -3
  9. package/dist/model/strategy/adapter/walletPass/utils.d.ts +0 -26
  10. package/dist/model/strategy/adapter/walletPass/utils.js +17 -92
  11. package/dist/model/strategy/strategy-example.js +19 -5
  12. package/dist/modules/BaseModule.d.ts +1 -1
  13. package/dist/modules/BaseModule.js +8 -10
  14. package/dist/modules/Cart/index.js +3 -0
  15. package/dist/modules/Cart/utils/cartProduct.js +1 -0
  16. package/dist/modules/Cart/utils/cartResource.js +0 -2
  17. package/dist/modules/Cart/utils/changePrice.js +9 -16
  18. package/dist/modules/Date/index.js +5 -1
  19. package/dist/modules/Discount/index.d.ts +0 -1
  20. package/dist/modules/Discount/index.js +7 -22
  21. package/dist/modules/Discount/types.d.ts +0 -1
  22. package/dist/modules/OpenData/index.js +2 -0
  23. package/dist/modules/Order/index.js +70 -40
  24. package/dist/modules/Payment/index.js +162 -97
  25. package/dist/modules/Payment/types.d.ts +4 -8
  26. package/dist/modules/Payment/walletpass.d.ts +0 -2
  27. package/dist/modules/Payment/walletpass.js +5 -4
  28. package/dist/modules/ProductList/index.d.ts +1 -1
  29. package/dist/modules/ProductList/index.js +3 -12
  30. package/dist/modules/ProductList/types.d.ts +0 -1
  31. package/dist/modules/Rules/index.js +126 -427
  32. package/dist/modules/SalesSummary/utils.js +1 -2
  33. package/dist/modules/Schedule/getDateIsInSchedule.js +0 -5
  34. package/dist/modules/Schedule/index.js +1 -0
  35. package/dist/modules/Schedule/utils.js +1 -0
  36. package/dist/modules/Step/index.js +1 -0
  37. package/dist/modules/Summary/utils.js +22 -43
  38. package/dist/plugins/request.js +4 -1
  39. package/dist/plugins/window.js +6 -2
  40. package/dist/server/index.js +129 -97
  41. package/dist/server/modules/menu/index.js +41 -32
  42. package/dist/server/modules/order/index.js +4 -2
  43. package/dist/server/modules/products/index.js +42 -24
  44. package/dist/server/modules/quotation/index.js +38 -29
  45. package/dist/server/modules/resource/index.js +4 -3
  46. package/dist/server/modules/schedule/index.js +35 -27
  47. package/dist/server/utils/product.js +1 -0
  48. package/dist/solution/BaseSales/index.js +41 -38
  49. package/dist/solution/BookingByStep/index.d.ts +1 -1
  50. package/dist/solution/BookingByStep/index.js +60 -11
  51. package/dist/solution/BookingByStep/utils/capacity.js +11 -1
  52. package/dist/solution/BookingByStep/utils/resources.js +3 -1
  53. package/dist/solution/BookingByStep/utils/timeslots.js +43 -2
  54. package/dist/solution/BookingTicket/index.d.ts +1 -1
  55. package/dist/solution/BookingTicket/index.js +2 -0
  56. package/dist/solution/BookingTicket/utils/scan/cloudSearch.js +7 -6
  57. package/dist/solution/BookingTicket/utils/scan/handleScan.js +31 -25
  58. package/dist/solution/BookingTicket/utils/scan/index.js +10 -6
  59. package/dist/solution/BuyTickets/index.js +12 -9
  60. package/dist/solution/Checkout/index.js +252 -177
  61. package/dist/solution/Checkout/utils/index.js +16 -4
  62. package/dist/solution/RegisterAndLogin/index.js +76 -30
  63. package/dist/solution/ScanOrder/index.js +60 -50
  64. package/dist/solution/ShopDiscount/index.js +14 -15
  65. package/dist/solution/ShopDiscount/types.d.ts +4 -5
  66. package/dist/solution/ShopDiscount/utils.d.ts +0 -9
  67. package/dist/solution/ShopDiscount/utils.js +0 -9
  68. package/dist/solution/VenueBooking/index.d.ts +3 -31
  69. package/dist/solution/VenueBooking/index.js +496 -651
  70. package/dist/solution/VenueBooking/types.d.ts +1 -3
  71. package/dist/solution/VenueBooking/types.js +0 -1
  72. package/dist/solution/VenueBooking/utils/dateSummary.d.ts +2 -2
  73. package/dist/solution/VenueBooking/utils/dateSummary.js +25 -12
  74. package/dist/solution/VenueBooking/utils/timeSlot.d.ts +0 -2
  75. package/dist/solution/VenueBooking/utils/timeSlot.js +4 -9
  76. package/dist/types/index.d.ts +1 -1
  77. package/dist/utils/task.js +18 -15
  78. package/dist/utils/watch.js +1 -0
  79. package/lib/apis/picoding.js +0 -2
  80. package/lib/core/index.js +132 -130
  81. package/lib/effects/index.js +57 -46
  82. package/lib/index.d.ts +0 -1
  83. package/lib/index.js +50 -92
  84. package/lib/model/index.js +21 -14
  85. package/lib/model/strategy/adapter/dataVariant/adapter.js +50 -38
  86. package/lib/model/strategy/adapter/dataVariant/evaluator.js +236 -162
  87. package/lib/model/strategy/adapter/dataVariant/examples.js +237 -229
  88. package/lib/model/strategy/adapter/dataVariant/index.js +34 -39
  89. package/lib/model/strategy/adapter/dataVariant/type.js +28 -57
  90. package/lib/model/strategy/adapter/index.js +64 -100
  91. package/lib/model/strategy/adapter/itemRule/adapter.js +144 -156
  92. package/lib/model/strategy/adapter/itemRule/evaluator.js +48 -36
  93. package/lib/model/strategy/adapter/itemRule/examples.js +225 -295
  94. package/lib/model/strategy/adapter/itemRule/index.js +57 -83
  95. package/lib/model/strategy/adapter/itemRule/type.js +36 -97
  96. package/lib/model/strategy/adapter/promotion/adapter.js +63 -84
  97. package/lib/model/strategy/adapter/promotion/evaluator.js +231 -381
  98. package/lib/model/strategy/adapter/promotion/examples.js +159 -139
  99. package/lib/model/strategy/adapter/promotion/index.js +49 -1
  100. package/lib/model/strategy/adapter/promotion/type.js +35 -199
  101. package/lib/model/strategy/adapter/type.js +16 -4
  102. package/lib/model/strategy/adapter/walletPass/evaluator.js +152 -180
  103. package/lib/model/strategy/adapter/walletPass/example.js +190 -217
  104. package/lib/model/strategy/adapter/walletPass/index.js +51 -75
  105. package/lib/model/strategy/adapter/walletPass/locales.js +58 -36
  106. package/lib/model/strategy/adapter/walletPass/type.d.ts +0 -3
  107. package/lib/model/strategy/adapter/walletPass/type.js +16 -4
  108. package/lib/model/strategy/adapter/walletPass/utils.d.ts +0 -26
  109. package/lib/model/strategy/adapter/walletPass/utils.js +383 -678
  110. package/lib/model/strategy/engine.js +168 -270
  111. package/lib/model/strategy/index.js +34 -49
  112. package/lib/model/strategy/strategy-example.js +239 -243
  113. package/lib/model/strategy/type.js +40 -100
  114. package/lib/modules/Account/index.js +53 -39
  115. package/lib/modules/Account/types.js +33 -20
  116. package/lib/modules/AccountList/index.js +154 -116
  117. package/lib/modules/AccountList/types.js +31 -30
  118. package/lib/modules/AccountList/utils.js +30 -18
  119. package/lib/modules/BaseModule.d.ts +1 -1
  120. package/lib/modules/BaseModule.js +46 -25
  121. package/lib/modules/BookingContext/index.js +136 -158
  122. package/lib/modules/BookingContext/types.js +32 -46
  123. package/lib/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +143 -131
  124. package/lib/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.js +82 -75
  125. package/lib/modules/BookingContext/utils/cacheItemToBookingInput.js +150 -170
  126. package/lib/modules/BookingContext/utils/flexible.js +55 -38
  127. package/lib/modules/BookingContext/utils/formatResourceList.js +34 -19
  128. package/lib/modules/BookingContext/utils/index.js +41 -124
  129. package/lib/modules/BookingContext/utils/noResource.js +70 -58
  130. package/lib/modules/BookingContext/utils/orderLineDisplay.js +41 -14
  131. package/lib/modules/BookingContext/utils/productExtend.js +155 -202
  132. package/lib/modules/BookingContext/utils/resourceErrors.js +53 -53
  133. package/lib/modules/BookingContext/utils/resourceSelection.js +41 -19
  134. package/lib/modules/BookingContext/utils/resources.js +167 -209
  135. package/lib/modules/BookingContext/utils/serviceTimes.js +116 -115
  136. package/lib/modules/BookingContext/utils/timeSlices.js +80 -70
  137. package/lib/modules/Cart/index.js +124 -170
  138. package/lib/modules/Cart/types.js +51 -46
  139. package/lib/modules/Cart/utils/cartAccount.js +39 -40
  140. package/lib/modules/Cart/utils/cartDate.js +61 -56
  141. package/lib/modules/Cart/utils/cartDiscount.js +33 -28
  142. package/lib/modules/Cart/utils/cartNote.js +32 -27
  143. package/lib/modules/Cart/utils/cartProduct.js +251 -321
  144. package/lib/modules/Cart/utils/cartRelationForms.js +35 -29
  145. package/lib/modules/Cart/utils/cartResource.js +78 -72
  146. package/lib/modules/Cart/utils/changePrice.js +50 -28
  147. package/lib/modules/Cart/utils/index.js +48 -106
  148. package/lib/modules/Customer/constants.js +34 -13
  149. package/lib/modules/Customer/index.js +169 -232
  150. package/lib/modules/Customer/types.js +35 -38
  151. package/lib/modules/Date/index.js +115 -116
  152. package/lib/modules/Date/types.js +28 -16
  153. package/lib/modules/Date/utils.js +123 -174
  154. package/lib/modules/Discount/index.d.ts +0 -1
  155. package/lib/modules/Discount/index.js +128 -130
  156. package/lib/modules/Discount/types.d.ts +0 -1
  157. package/lib/modules/Discount/types.js +31 -9
  158. package/lib/modules/Guests/index.js +56 -30
  159. package/lib/modules/Guests/types.js +33 -23
  160. package/lib/modules/Holder/index.js +189 -209
  161. package/lib/modules/Holder/types.js +16 -4
  162. package/lib/modules/Holder/utils.js +49 -20
  163. package/lib/modules/OpenData/index.js +76 -69
  164. package/lib/modules/OpenData/types.js +16 -4
  165. package/lib/modules/OpenData/utils.js +78 -44
  166. package/lib/modules/Order/index.js +1909 -1572
  167. package/lib/modules/Order/types.js +35 -78
  168. package/lib/modules/Order/utils/bundleDiscountHydration.js +74 -41
  169. package/lib/modules/Order/utils/manualProductDiscount.js +123 -124
  170. package/lib/modules/Order/utils/orderCollectionIdentity.js +210 -148
  171. package/lib/modules/Order/utils.js +634 -799
  172. package/lib/modules/Payment/cash.js +33 -20
  173. package/lib/modules/Payment/cashRecommendationAlgorithm.js +76 -145
  174. package/lib/modules/Payment/eftpos.js +30 -16
  175. package/lib/modules/Payment/index.js +378 -518
  176. package/lib/modules/Payment/mx51.js +0 -1
  177. package/lib/modules/Payment/types.d.ts +4 -8
  178. package/lib/modules/Payment/types.js +107 -216
  179. package/lib/modules/Payment/utils.js +48 -51
  180. package/lib/modules/Payment/walletpass.d.ts +0 -2
  181. package/lib/modules/Payment/walletpass.js +211 -226
  182. package/lib/modules/Product/index.js +46 -51
  183. package/lib/modules/Product/types.js +16 -4
  184. package/lib/modules/Product/utils.js +33 -32
  185. package/lib/modules/ProductList/index.d.ts +1 -1
  186. package/lib/modules/ProductList/index.js +117 -117
  187. package/lib/modules/ProductList/types.d.ts +0 -1
  188. package/lib/modules/ProductList/types.js +31 -9
  189. package/lib/modules/Quotation/index.js +100 -66
  190. package/lib/modules/Quotation/types.js +16 -4
  191. package/lib/modules/Resource/index.js +59 -27
  192. package/lib/modules/Resource/types.js +32 -22
  193. package/lib/modules/Resource/utils.js +38 -30
  194. package/lib/modules/ResourcePlanner/index.js +61 -60
  195. package/lib/modules/ResourcePlanner/planner.js +384 -346
  196. package/lib/modules/ResourcePlanner/types.js +16 -4
  197. package/lib/modules/Rules/index.js +903 -1475
  198. package/lib/modules/Rules/types.js +40 -17
  199. package/lib/modules/SalesSummary/index.js +90 -85
  200. package/lib/modules/SalesSummary/types.js +16 -4
  201. package/lib/modules/SalesSummary/utils.js +427 -351
  202. package/lib/modules/ScanOrderLogger/index.js +79 -59
  203. package/lib/modules/ScanOrderLogger/providers/feishu.js +78 -54
  204. package/lib/modules/ScanOrderLogger/providers/grafana.js +36 -13
  205. package/lib/modules/ScanOrderLogger/types.js +16 -4
  206. package/lib/modules/Schedule/getDateIsInSchedule.js +163 -339
  207. package/lib/modules/Schedule/index.js +114 -100
  208. package/lib/modules/Schedule/type.js +16 -4
  209. package/lib/modules/Schedule/types.js +16 -4
  210. package/lib/modules/Schedule/utils.js +291 -433
  211. package/lib/modules/Step/index.js +52 -40
  212. package/lib/modules/Step/tyeps.js +16 -4
  213. package/lib/modules/Summary/index.js +71 -66
  214. package/lib/modules/Summary/types.js +16 -4
  215. package/lib/modules/Summary/utils.js +418 -791
  216. package/lib/modules/SurchargeList/index.js +60 -46
  217. package/lib/modules/SurchargeList/types.js +16 -4
  218. package/lib/modules/index.js +63 -245
  219. package/lib/plugins/app.js +16 -4
  220. package/lib/plugins/index.js +25 -36
  221. package/lib/plugins/request.js +126 -137
  222. package/lib/plugins/shopStore.js +16 -4
  223. package/lib/plugins/user.js +16 -4
  224. package/lib/plugins/window.js +179 -171
  225. package/lib/server/index.js +2337 -2675
  226. package/lib/server/modules/floor-plan/index.js +123 -102
  227. package/lib/server/modules/floor-plan/types.js +30 -15
  228. package/lib/server/modules/index.js +68 -106
  229. package/lib/server/modules/menu/index.js +122 -146
  230. package/lib/server/modules/menu/types.js +31 -18
  231. package/lib/server/modules/order/index.js +642 -567
  232. package/lib/server/modules/order/types.js +32 -117
  233. package/lib/server/modules/order/utils/filterBookings.js +194 -219
  234. package/lib/server/modules/order/utils/filterOrders.js +92 -118
  235. package/lib/server/modules/payment/index.js +83 -59
  236. package/lib/server/modules/payment/types.js +16 -4
  237. package/lib/server/modules/products/index.js +459 -575
  238. package/lib/server/modules/products/types.js +34 -44
  239. package/lib/server/modules/quotation/index.js +172 -137
  240. package/lib/server/modules/quotation/types.js +31 -21
  241. package/lib/server/modules/resource/index.js +184 -213
  242. package/lib/server/modules/resource/types.js +33 -42
  243. package/lib/server/modules/schedule/index.js +123 -135
  244. package/lib/server/modules/schedule/types.js +21 -14
  245. package/lib/server/modules/schedule/utils.js +163 -334
  246. package/lib/server/types.js +16 -4
  247. package/lib/server/utils/index.js +23 -25
  248. package/lib/server/utils/product.js +139 -196
  249. package/lib/server/utils/schedule.js +41 -34
  250. package/lib/server/utils/small-ticket.js +456 -478
  251. package/lib/server/utils/time.js +49 -40
  252. package/lib/solution/BaseSales/index.js +1016 -850
  253. package/lib/solution/BaseSales/types.js +37 -41
  254. package/lib/solution/BaseSales/utils/cartPromotion.js +460 -611
  255. package/lib/solution/BaseSales/utils/parseSalesResponse.js +105 -85
  256. package/lib/solution/BaseSales/utils/quotationPrice.js +114 -56
  257. package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +143 -102
  258. package/lib/solution/BaseSales/utils.js +140 -155
  259. package/lib/solution/BookingByStep/index.d.ts +1 -1
  260. package/lib/solution/BookingByStep/index.js +1340 -1530
  261. package/lib/solution/BookingByStep/types.js +99 -40
  262. package/lib/solution/BookingByStep/utils/capacity.js +160 -192
  263. package/lib/solution/BookingByStep/utils/products.js +52 -42
  264. package/lib/solution/BookingByStep/utils/resources.js +330 -527
  265. package/lib/solution/BookingByStep/utils/stock.js +44 -65
  266. package/lib/solution/BookingByStep/utils/timeslots.js +131 -129
  267. package/lib/solution/BookingTicket/index.d.ts +1 -1
  268. package/lib/solution/BookingTicket/index.js +459 -543
  269. package/lib/solution/BookingTicket/types.js +77 -99
  270. package/lib/solution/BookingTicket/utils/addProductDecision.js +184 -219
  271. package/lib/solution/BookingTicket/utils/addTimeAvailability.js +89 -58
  272. package/lib/solution/BookingTicket/utils/bookingStatus.js +78 -107
  273. package/lib/solution/BookingTicket/utils/cartView.js +94 -110
  274. package/lib/solution/BookingTicket/utils/exampleData.js +0 -185
  275. package/lib/solution/BookingTicket/utils/orderCustomer.js +41 -18
  276. package/lib/solution/BookingTicket/utils/resolveBestAddTimePlan.js +86 -219
  277. package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.js +93 -144
  278. package/lib/solution/BookingTicket/utils/scan/cloudSearch.js +91 -79
  279. package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.js +41 -54
  280. package/lib/solution/BookingTicket/utils/scan/handleScan.js +81 -84
  281. package/lib/solution/BookingTicket/utils/scan/index.js +104 -98
  282. package/lib/solution/BookingTicket/utils/scan/scanCache.js +43 -90
  283. package/lib/solution/BookingTicket/utils/scan/scanProductValues.js +64 -52
  284. package/lib/solution/BookingTicket/utils/sessionCatalogStale.js +58 -56
  285. package/lib/solution/BuyTickets/index.js +70 -67
  286. package/lib/solution/BuyTickets/types.js +38 -22
  287. package/lib/solution/Checkout/index.js +1158 -1451
  288. package/lib/solution/Checkout/types.js +61 -91
  289. package/lib/solution/Checkout/utils/index.js +156 -228
  290. package/lib/solution/PlaceOrder/index.js +0 -55
  291. package/lib/solution/RegisterAndLogin/config.js +460 -493
  292. package/lib/solution/RegisterAndLogin/index.js +630 -633
  293. package/lib/solution/RegisterAndLogin/types.js +76 -189
  294. package/lib/solution/RegisterAndLogin/utils.js +125 -183
  295. package/lib/solution/Sales/index.js +320 -317
  296. package/lib/solution/Sales/types.js +33 -27
  297. package/lib/solution/ScanOrder/index.js +862 -831
  298. package/lib/solution/ScanOrder/types.js +34 -33
  299. package/lib/solution/ScanOrder/utils.js +371 -406
  300. package/lib/solution/ShopDiscount/index.js +233 -235
  301. package/lib/solution/ShopDiscount/types.d.ts +4 -5
  302. package/lib/solution/ShopDiscount/types.js +37 -15
  303. package/lib/solution/ShopDiscount/utils.d.ts +0 -9
  304. package/lib/solution/ShopDiscount/utils.js +172 -309
  305. package/lib/solution/UnifiedBookingSales/index.js +405 -379
  306. package/lib/solution/UnifiedBookingSales/types.js +31 -12
  307. package/lib/solution/VenueBooking/index.d.ts +3 -31
  308. package/lib/solution/VenueBooking/index.js +916 -967
  309. package/lib/solution/VenueBooking/types.d.ts +1 -3
  310. package/lib/solution/VenueBooking/types.js +39 -20
  311. package/lib/solution/VenueBooking/utils/dateSummary.d.ts +2 -2
  312. package/lib/solution/VenueBooking/utils/dateSummary.js +62 -25
  313. package/lib/solution/VenueBooking/utils/resource.js +54 -31
  314. package/lib/solution/VenueBooking/utils/slotMerge.js +107 -94
  315. package/lib/solution/VenueBooking/utils/timeSlot.d.ts +0 -2
  316. package/lib/solution/VenueBooking/utils/timeSlot.js +133 -138
  317. package/lib/solution/VenueBooking/utils.js +67 -130
  318. package/lib/solution/index.js +41 -124
  319. package/lib/store/createStore.js +29 -32
  320. package/lib/types/index.d.ts +1 -1
  321. package/lib/types/index.js +16 -4
  322. package/lib/utils/task.js +36 -36
  323. package/lib/utils/watch.js +47 -81
  324. package/package.json +2 -4
  325. package/dist/solution/VenueBooking/utils/smartPricing.d.ts +0 -70
  326. package/dist/solution/VenueBooking/utils/smartPricing.js +0 -233
  327. package/lib/solution/VenueBooking/utils/smartPricing.d.ts +0 -70
  328. package/lib/solution/VenueBooking/utils/smartPricing.js +0 -192
@@ -1,44 +1,67 @@
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/VenueBooking/utils/timeSlot.ts
30
+ var timeSlot_exports = {};
31
+ __export(timeSlot_exports, {
32
+ buildTimeSlotGrid: () => buildTimeSlotGrid,
33
+ collectEventsForDate: () => collectEventsForDate,
34
+ computeSlotStatus: () => computeSlotStatus,
35
+ generateTimeLabels: () => generateTimeLabels,
36
+ isBusinessHoursCrossDay: () => isBusinessHoursCrossDay,
37
+ isSlotOccupied: () => isSlotOccupied
5
38
  });
6
- exports.buildTimeSlotGrid = buildTimeSlotGrid;
7
- exports.collectEventsForDate = collectEventsForDate;
8
- exports.computeSlotStatus = computeSlotStatus;
9
- exports.generateTimeLabels = generateTimeLabels;
10
- exports.isBusinessHoursCrossDay = isBusinessHoursCrossDay;
11
- exports.isSlotOccupied = isSlotOccupied;
12
- var _dayjs = _interopRequireDefault(require("dayjs"));
13
- var _decimal = _interopRequireDefault(require("decimal.js"));
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
39
+ module.exports = __toCommonJS(timeSlot_exports);
40
+ var import_dayjs = __toESM(require("dayjs"));
41
+ var import_decimal = __toESM(require("decimal.js"));
15
42
  function isBusinessHoursCrossDay(config) {
16
- const [startH, startM] = config.businessStartTime.split(':').map(Number);
17
- const [endH, endM] = config.businessEndTime.split(':').map(Number);
43
+ const [startH, startM] = config.businessStartTime.split(":").map(Number);
44
+ const [endH, endM] = config.businessEndTime.split(":").map(Number);
18
45
  return endH < startH || endH === startH && endM <= startM;
19
46
  }
20
47
  function generateTimeLabels(config) {
21
- const {
22
- slotDurationMinutes,
23
- businessStartTime,
24
- businessEndTime
25
- } = config;
48
+ const { slotDurationMinutes, businessStartTime, businessEndTime } = config;
26
49
  const labels = [];
27
- const baseDate = '2000-01-01';
28
- let cursor = (0, _dayjs.default)(`${baseDate} ${businessStartTime}`);
50
+ const baseDate = "2000-01-01";
51
+ let cursor = (0, import_dayjs.default)(`${baseDate} ${businessStartTime}`);
29
52
  const crossDay = isBusinessHoursCrossDay(config);
30
- const endBase = crossDay ? '2000-01-02' : baseDate;
31
- const end = (0, _dayjs.default)(`${endBase} ${businessEndTime}`);
53
+ const endBase = crossDay ? "2000-01-02" : baseDate;
54
+ const end = (0, import_dayjs.default)(`${endBase} ${businessEndTime}`);
32
55
  while (cursor.isBefore(end)) {
33
- labels.push(cursor.format('HH:mm'));
34
- cursor = cursor.add(slotDurationMinutes, 'minute');
56
+ labels.push(cursor.format("HH:mm"));
57
+ cursor = cursor.add(slotDurationMinutes, "minute");
35
58
  }
36
59
  return labels;
37
60
  }
38
61
  function isSlotOccupied(slotStart, slotEnd, occupiedTimes) {
39
62
  for (const occupied of occupiedTimes) {
40
- const occStart = (0, _dayjs.default)(occupied.start_at);
41
- const occEnd = (0, _dayjs.default)(occupied.end_at);
63
+ const occStart = (0, import_dayjs.default)(occupied.start_at);
64
+ const occEnd = (0, import_dayjs.default)(occupied.end_at);
42
65
  if (slotStart.isBefore(occEnd) && slotEnd.isAfter(occStart)) {
43
66
  return true;
44
67
  }
@@ -47,19 +70,20 @@ function isSlotOccupied(slotStart, slotEnd, occupiedTimes) {
47
70
  }
48
71
  function isSlotWithinResourceTimes(slotStart, slotEnd, resourceTimes) {
49
72
  for (const t of resourceTimes) {
50
- const tStart = (0, _dayjs.default)(t.start_at);
51
- const tEnd = (0, _dayjs.default)(t.end_at);
52
- if (slotStart.isBefore(tEnd) && slotEnd.isAfter(tStart)) return true;
73
+ const tStart = (0, import_dayjs.default)(t.start_at);
74
+ const tEnd = (0, import_dayjs.default)(t.end_at);
75
+ if (slotStart.isBefore(tEnd) && slotEnd.isAfter(tStart))
76
+ return true;
53
77
  }
54
78
  return false;
55
79
  }
56
80
  function getResourceTimesForDate(resource, date, config) {
57
81
  const crossDay = isBusinessHoursCrossDay(config);
58
- const dayStart = (0, _dayjs.default)(`${date} ${config.businessStartTime}`);
59
- const dayEnd = crossDay ? (0, _dayjs.default)(`${date} ${config.businessEndTime}`).add(1, 'day') : (0, _dayjs.default)(`${date} ${config.businessEndTime}`);
60
- return resource.times.filter(t => {
61
- const tStart = (0, _dayjs.default)(t.start_at);
62
- const tEnd = (0, _dayjs.default)(t.end_at);
82
+ const dayStart = (0, import_dayjs.default)(`${date} ${config.businessStartTime}`);
83
+ const dayEnd = crossDay ? (0, import_dayjs.default)(`${date} ${config.businessEndTime}`).add(1, "day") : (0, import_dayjs.default)(`${date} ${config.businessEndTime}`);
84
+ return resource.times.filter((t) => {
85
+ const tStart = (0, import_dayjs.default)(t.start_at);
86
+ const tEnd = (0, import_dayjs.default)(t.end_at);
63
87
  return tStart.isBefore(dayEnd) && tEnd.isAfter(dayStart);
64
88
  });
65
89
  }
@@ -80,50 +104,25 @@ function collectEventsForDate(resource, date, config) {
80
104
  return events;
81
105
  }
82
106
  function computeSlotStatus(params) {
83
- const {
84
- slotStart,
85
- slotEnd,
86
- events,
87
- resourceType,
88
- capacity
89
- } = params;
90
- const overlapping = events.filter(evt => {
91
- const evtStart = (0, _dayjs.default)(evt.start_at);
92
- const evtEnd = (0, _dayjs.default)(evt.end_at);
107
+ const { slotStart, slotEnd, events, resourceType, capacity } = params;
108
+ const overlapping = events.filter((evt) => {
109
+ const evtStart = (0, import_dayjs.default)(evt.start_at);
110
+ const evtEnd = (0, import_dayjs.default)(evt.end_at);
93
111
  return slotStart.isBefore(evtEnd) && slotEnd.isAfter(evtStart);
94
112
  });
95
- if (resourceType === 'single') {
96
- if (overlapping.length > 0) return {
97
- status: 'occupied',
98
- remainingCapacity: 0
99
- };
100
- return {
101
- status: 'available',
102
- remainingCapacity: 1
103
- };
113
+ if (resourceType === "single") {
114
+ if (overlapping.length > 0)
115
+ return { status: "occupied", remainingCapacity: 0 };
116
+ return { status: "available", remainingCapacity: 1 };
104
117
  }
105
118
  const usedCapacity = overlapping.reduce((sum, evt) => sum + evt.pax, 0);
106
119
  const remaining = Math.max(0, capacity - usedCapacity);
107
- if (remaining <= 0) return {
108
- status: 'occupied',
109
- remainingCapacity: 0
110
- };
111
- if (remaining < capacity) return {
112
- status: 'partially_occupied',
113
- remainingCapacity: remaining
114
- };
115
- return {
116
- status: 'available',
117
- remainingCapacity: remaining
118
- };
120
+ if (remaining <= 0)
121
+ return { status: "occupied", remainingCapacity: 0 };
122
+ if (remaining < capacity)
123
+ return { status: "partially_occupied", remainingCapacity: remaining };
124
+ return { status: "available", remainingCapacity: remaining };
119
125
  }
120
-
121
- /**
122
- * 合并多个子商品的同一个时段为一个"外层 slot"。
123
- * - status 取优先级最高的(available > partially_occupied > occupied > unavailable / past)
124
- * - price 取非空子 slot 中最小的那个
125
- * - 其它字段使用第一个参考子 slot(外层 slot 不带 productId)
126
- */
127
126
  function mergeSubSlots(subSlots) {
128
127
  const priority = {
129
128
  available: 5,
@@ -134,13 +133,16 @@ function mergeSubSlots(subSlots) {
134
133
  };
135
134
  let best = subSlots[0];
136
135
  for (const slot of subSlots) {
137
- if ((priority[slot.status] ?? 0) > (priority[best.status] ?? 0)) best = slot;
136
+ if ((priority[slot.status] ?? 0) > (priority[best.status] ?? 0))
137
+ best = slot;
138
138
  }
139
139
  let minPrice = null;
140
140
  for (const slot of subSlots) {
141
- if (slot.price == null) continue;
142
- const decimal = new _decimal.default(slot.price || '0');
143
- if (!minPrice || decimal.lt(minPrice)) minPrice = decimal;
141
+ if (slot.price == null)
142
+ continue;
143
+ const decimal = new import_decimal.default(slot.price || "0");
144
+ if (!minPrice || decimal.lt(minPrice))
145
+ minPrice = decimal;
144
146
  }
145
147
  return {
146
148
  startTime: best.startTime,
@@ -166,7 +168,6 @@ function buildProductSlots(params) {
166
168
  now,
167
169
  crossDay,
168
170
  quotationPriceMap,
169
- slotPriceMap,
170
171
  childRawResources,
171
172
  childTimesCache,
172
173
  childEventsCache,
@@ -174,17 +175,17 @@ function buildProductSlots(params) {
174
175
  } = params;
175
176
  const slots = [];
176
177
  for (const label of timeLabels) {
177
- const [h] = label.split(':').map(Number);
178
+ const [h] = label.split(":").map(Number);
178
179
  const isNextDay = crossDay && h < config_businessStartHour;
179
- const slotDate = isNextDay ? (0, _dayjs.default)(date).add(1, 'day').format('YYYY-MM-DD') : date;
180
- const slotStart = (0, _dayjs.default)(`${slotDate} ${label}`);
181
- const slotEnd = slotStart.add(config.slotDurationMinutes, 'minute');
180
+ const slotDate = isNextDay ? (0, import_dayjs.default)(date).add(1, "day").format("YYYY-MM-DD") : date;
181
+ const slotStart = (0, import_dayjs.default)(`${slotDate} ${label}`);
182
+ const slotEnd = slotStart.add(config.slotDurationMinutes, "minute");
182
183
  let status;
183
184
  let remainingCapacity = null;
184
185
  if (slotStart.isBefore(now)) {
185
- status = 'past';
186
+ status = "past";
186
187
  } else if (!isSlotWithinResourceTimes(slotStart, slotEnd, timesForDate)) {
187
- status = 'unavailable';
188
+ status = "unavailable";
188
189
  } else {
189
190
  const result = computeSlotStatus({
190
191
  slotStart,
@@ -195,17 +196,17 @@ function buildProductSlots(params) {
195
196
  });
196
197
  status = result.status;
197
198
  remainingCapacity = result.remainingCapacity;
198
- if (status !== 'occupied' && childRawResources && childRawResources.length) {
199
+ if (status !== "occupied" && childRawResources && childRawResources.length) {
199
200
  for (let i = 0; i < childRawResources.length; i++) {
200
201
  const child = childRawResources[i];
201
- const childTimes = childTimesCache?.[i] ?? getResourceTimesForDate(child, date, config);
202
- const childEvents = childEventsCache?.[i] ?? collectEventsForDate(child, date, config);
202
+ const childTimes = (childTimesCache == null ? void 0 : childTimesCache[i]) ?? getResourceTimesForDate(child, date, config);
203
+ const childEvents = (childEventsCache == null ? void 0 : childEventsCache[i]) ?? collectEventsForDate(child, date, config);
203
204
  if (!isSlotWithinResourceTimes(slotStart, slotEnd, childTimes)) {
204
- status = 'unavailable';
205
+ status = "unavailable";
205
206
  remainingCapacity = null;
206
207
  break;
207
208
  }
208
- const childType = child.type || 'single';
209
+ const childType = child.type || "single";
209
210
  const childResult = computeSlotStatus({
210
211
  slotStart,
211
212
  slotEnd,
@@ -213,29 +214,31 @@ function buildProductSlots(params) {
213
214
  resourceType: childType,
214
215
  capacity: child.capacity ?? 1
215
216
  });
216
- if (childResult.status === 'occupied') {
217
- status = 'occupied';
217
+ if (childResult.status === "occupied") {
218
+ status = "occupied";
218
219
  remainingCapacity = 0;
219
220
  break;
220
221
  }
221
- if (childResult.status === 'partially_occupied' && status === 'available') {
222
- status = 'partially_occupied';
223
- remainingCapacity = Math.min(remainingCapacity ?? childResult.remainingCapacity, childResult.remainingCapacity);
222
+ if (childResult.status === "partially_occupied" && status === "available") {
223
+ status = "partially_occupied";
224
+ remainingCapacity = Math.min(
225
+ remainingCapacity ?? childResult.remainingCapacity,
226
+ childResult.remainingCapacity
227
+ );
224
228
  }
225
229
  }
226
230
  }
227
231
  }
228
- const isBookable = status === 'available' || status === 'partially_occupied';
229
- const slotStartStr = slotStart.format('YYYY-MM-DD HH:mm');
230
- const resolvedPriceMap = slotPriceMap ?? quotationPriceMap;
232
+ const isBookable = status === "available" || status === "partially_occupied";
233
+ const slotStartStr = slotStart.format("YYYY-MM-DD HH:mm");
231
234
  slots.push({
232
235
  startTime: slotStartStr,
233
- endTime: slotEnd.format('YYYY-MM-DD HH:mm'),
236
+ endTime: slotEnd.format("YYYY-MM-DD HH:mm"),
234
237
  status,
235
- price: isBookable ? resolvedPriceMap?.get(`${mapping.productId}:${slotStartStr}`) ?? mapping.price : null,
238
+ price: isBookable ? (quotationPriceMap == null ? void 0 : quotationPriceMap.get(`${mapping.productId}:${slotStartStr}`)) ?? mapping.price : null,
236
239
  resourceId: resource.resourceId,
237
240
  resourceFormId: resource.formId,
238
- capacity: status === 'past' || status === 'unavailable' ? null : resCapacity,
241
+ capacity: status === "past" || status === "unavailable" ? null : resCapacity,
239
242
  remainingCapacity,
240
243
  productId: mapping.productId
241
244
  });
@@ -243,34 +246,28 @@ function buildProductSlots(params) {
243
246
  return slots;
244
247
  }
245
248
  function buildTimeSlotGrid(params) {
246
- const {
247
- date,
248
- config,
249
- rawResources,
250
- resourceProductMap,
251
- quotationPriceMap,
252
- slotPriceMap
253
- } = params;
254
- const resolvedPriceMap = slotPriceMap ?? quotationPriceMap;
249
+ const { date, config, rawResources, resourceProductMap, quotationPriceMap } = params;
255
250
  const timeLabels = generateTimeLabels(config);
256
- const now = (0, _dayjs.default)();
251
+ const now = (0, import_dayjs.default)();
257
252
  const crossDay = isBusinessHoursCrossDay(config);
258
- const config_businessStartHour = Number(config.businessStartTime.split(':')[0]);
259
- const rawResourceById = new Map();
260
- for (const item of rawResources) rawResourceById.set(item.resourceId, item);
253
+ const config_businessStartHour = Number(config.businessStartTime.split(":")[0]);
254
+ const rawResourceById = /* @__PURE__ */ new Map();
255
+ for (const item of rawResources)
256
+ rawResourceById.set(item.resourceId, item);
261
257
  const resources = [];
262
258
  for (const resource of rawResources) {
263
259
  const mappings = resourceProductMap.get(resource.resourceId);
264
- if (!mappings || !mappings.length) continue;
260
+ if (!mappings || !mappings.length)
261
+ continue;
265
262
  const timesForDate = getResourceTimesForDate(resource, date, config);
266
263
  const events = collectEventsForDate(resource, date, config);
267
264
  const resCapacity = resource.capacity ?? 1;
268
265
  const combined = resource.combined_resource;
269
266
  const isCombined = !!(combined && combined.status === 1 && Array.isArray(combined.resource_ids) && combined.resource_ids.length);
270
- const childRawResources = isCombined ? combined.resource_ids.map(id => rawResourceById.get(id)).filter(r => !!r) : undefined;
271
- const childTimesCache = childRawResources?.map(child => getResourceTimesForDate(child, date, config));
272
- const childEventsCache = childRawResources?.map(child => collectEventsForDate(child, date, config));
273
- const subRows = mappings.map(mapping => {
267
+ const childRawResources = isCombined ? combined.resource_ids.map((id) => rawResourceById.get(id)).filter((r) => !!r) : void 0;
268
+ const childTimesCache = childRawResources == null ? void 0 : childRawResources.map((child) => getResourceTimesForDate(child, date, config));
269
+ const childEventsCache = childRawResources == null ? void 0 : childRawResources.map((child) => collectEventsForDate(child, date, config));
270
+ const subRows = mappings.map((mapping) => {
274
271
  const productSlots = buildProductSlots({
275
272
  date,
276
273
  config,
@@ -282,8 +279,7 @@ function buildTimeSlotGrid(params) {
282
279
  resCapacity,
283
280
  now,
284
281
  crossDay,
285
- quotationPriceMap: resolvedPriceMap,
286
- slotPriceMap: resolvedPriceMap,
282
+ quotationPriceMap,
287
283
  childRawResources,
288
284
  childTimesCache,
289
285
  childEventsCache,
@@ -301,14 +297,11 @@ function buildTimeSlotGrid(params) {
301
297
  let outerSlots;
302
298
  if (hasMultipleProducts) {
303
299
  outerSlots = timeLabels.map((_label, slotIndex) => {
304
- const group = subRows.map(row => row.slots[slotIndex]);
300
+ const group = subRows.map((row2) => row2.slots[slotIndex]);
305
301
  return mergeSubSlots(group);
306
302
  });
307
303
  } else {
308
- outerSlots = subRows[0].slots.map(slot => ({
309
- ...slot,
310
- productId: undefined
311
- }));
304
+ outerSlots = subRows[0].slots.map((slot) => ({ ...slot, productId: void 0 }));
312
305
  }
313
306
  const row = {
314
307
  resourceId: resource.resourceId,
@@ -323,22 +316,24 @@ function buildTimeSlotGrid(params) {
323
316
  row.hasMultipleProducts = true;
324
317
  }
325
318
  if (isCombined && combined) {
326
- row.combinedResource = {
327
- resourceIds: [...combined.resource_ids]
328
- };
319
+ row.combinedResource = { resourceIds: [...combined.resource_ids] };
329
320
  }
330
321
  resources.push(row);
331
322
  }
332
-
333
- // 按 productId 分组排序,确保同一商品的场地连续排列
334
- const productOrder = new Map();
323
+ const productOrder = /* @__PURE__ */ new Map();
335
324
  for (const row of resources) {
336
- if (!productOrder.has(row.productId)) productOrder.set(row.productId, productOrder.size);
325
+ if (!productOrder.has(row.productId))
326
+ productOrder.set(row.productId, productOrder.size);
337
327
  }
338
328
  resources.sort((a, b) => (productOrder.get(a.productId) ?? 0) - (productOrder.get(b.productId) ?? 0));
339
- return {
340
- date,
341
- timeLabels,
342
- resources
343
- };
344
- }
329
+ return { date, timeLabels, resources };
330
+ }
331
+ // Annotate the CommonJS export names for ESM import in node:
332
+ 0 && (module.exports = {
333
+ buildTimeSlotGrid,
334
+ collectEventsForDate,
335
+ computeSlotStatus,
336
+ generateTimeLabels,
337
+ isBusinessHoursCrossDay,
338
+ isSlotOccupied
339
+ });
@@ -1,132 +1,69 @@
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/VenueBooking/utils.ts
20
+ var utils_exports = {};
21
+ __export(utils_exports, {
22
+ aggregateItemRuleLimit: () => import_utils.aggregateItemRuleLimit,
23
+ attachItemRuleLimitsToTopLevelProducts: () => import_utils.attachItemRuleLimitsToTopLevelProducts,
24
+ buildItemRuleBusinessData: () => import_utils.buildItemRuleBusinessData,
25
+ buildProductKey: () => import_utils.buildProductKey,
26
+ buildQuantityLimitIndex: () => import_utils.buildQuantityLimitIndex,
27
+ createEmptySummary: () => import_utils.createEmptySummary,
28
+ extractStrategyModelIdsFromTableConfig: () => import_utils.extractStrategyModelIdsFromTableConfig,
29
+ getProductIdentityIndex: () => import_utils.getProductIdentityIndex,
30
+ getSafeProductNum: () => import_utils.getSafeProductNum,
31
+ getTopLevelProductId: () => import_utils.getTopLevelProductId,
32
+ getTopLevelVariantId: () => import_utils.getTopLevelVariantId,
33
+ isIdentityMatch: () => import_utils.isIdentityMatch,
34
+ normalizeEnabledItemRuleIds: () => import_utils.normalizeEnabledItemRuleIds,
35
+ normalizeItemRuleStrategies: () => import_utils.normalizeItemRuleStrategies,
36
+ normalizeOrderProduct: () => import_utils.normalizeOrderProduct,
37
+ resolveSkuMatchedQuantityLimits: () => import_utils.resolveSkuMatchedQuantityLimits,
38
+ toBoolean: () => import_utils.toBoolean,
39
+ toNonNegativeInt: () => import_utils.toNonNegativeInt,
40
+ toNonNegativeNumber: () => import_utils.toNonNegativeNumber,
41
+ toPositiveString: () => import_utils.toPositiveString,
42
+ toPriceString: () => import_utils.toPriceString
43
+ });
44
+ module.exports = __toCommonJS(utils_exports);
45
+ var import_utils = require("../ScanOrder/utils");
46
+ // Annotate the CommonJS export names for ESM import in node:
47
+ 0 && (module.exports = {
48
+ aggregateItemRuleLimit,
49
+ attachItemRuleLimitsToTopLevelProducts,
50
+ buildItemRuleBusinessData,
51
+ buildProductKey,
52
+ buildQuantityLimitIndex,
53
+ createEmptySummary,
54
+ extractStrategyModelIdsFromTableConfig,
55
+ getProductIdentityIndex,
56
+ getSafeProductNum,
57
+ getTopLevelProductId,
58
+ getTopLevelVariantId,
59
+ isIdentityMatch,
60
+ normalizeEnabledItemRuleIds,
61
+ normalizeItemRuleStrategies,
62
+ normalizeOrderProduct,
63
+ resolveSkuMatchedQuantityLimits,
64
+ toBoolean,
65
+ toNonNegativeInt,
66
+ toNonNegativeNumber,
67
+ toPositiveString,
68
+ toPriceString
5
69
  });
6
- Object.defineProperty(exports, "aggregateItemRuleLimit", {
7
- enumerable: true,
8
- get: function () {
9
- return _utils.aggregateItemRuleLimit;
10
- }
11
- });
12
- Object.defineProperty(exports, "attachItemRuleLimitsToTopLevelProducts", {
13
- enumerable: true,
14
- get: function () {
15
- return _utils.attachItemRuleLimitsToTopLevelProducts;
16
- }
17
- });
18
- Object.defineProperty(exports, "buildItemRuleBusinessData", {
19
- enumerable: true,
20
- get: function () {
21
- return _utils.buildItemRuleBusinessData;
22
- }
23
- });
24
- Object.defineProperty(exports, "buildProductKey", {
25
- enumerable: true,
26
- get: function () {
27
- return _utils.buildProductKey;
28
- }
29
- });
30
- Object.defineProperty(exports, "buildQuantityLimitIndex", {
31
- enumerable: true,
32
- get: function () {
33
- return _utils.buildQuantityLimitIndex;
34
- }
35
- });
36
- Object.defineProperty(exports, "createEmptySummary", {
37
- enumerable: true,
38
- get: function () {
39
- return _utils.createEmptySummary;
40
- }
41
- });
42
- Object.defineProperty(exports, "extractStrategyModelIdsFromTableConfig", {
43
- enumerable: true,
44
- get: function () {
45
- return _utils.extractStrategyModelIdsFromTableConfig;
46
- }
47
- });
48
- Object.defineProperty(exports, "getProductIdentityIndex", {
49
- enumerable: true,
50
- get: function () {
51
- return _utils.getProductIdentityIndex;
52
- }
53
- });
54
- Object.defineProperty(exports, "getSafeProductNum", {
55
- enumerable: true,
56
- get: function () {
57
- return _utils.getSafeProductNum;
58
- }
59
- });
60
- Object.defineProperty(exports, "getTopLevelProductId", {
61
- enumerable: true,
62
- get: function () {
63
- return _utils.getTopLevelProductId;
64
- }
65
- });
66
- Object.defineProperty(exports, "getTopLevelVariantId", {
67
- enumerable: true,
68
- get: function () {
69
- return _utils.getTopLevelVariantId;
70
- }
71
- });
72
- Object.defineProperty(exports, "isIdentityMatch", {
73
- enumerable: true,
74
- get: function () {
75
- return _utils.isIdentityMatch;
76
- }
77
- });
78
- Object.defineProperty(exports, "normalizeEnabledItemRuleIds", {
79
- enumerable: true,
80
- get: function () {
81
- return _utils.normalizeEnabledItemRuleIds;
82
- }
83
- });
84
- Object.defineProperty(exports, "normalizeItemRuleStrategies", {
85
- enumerable: true,
86
- get: function () {
87
- return _utils.normalizeItemRuleStrategies;
88
- }
89
- });
90
- Object.defineProperty(exports, "normalizeOrderProduct", {
91
- enumerable: true,
92
- get: function () {
93
- return _utils.normalizeOrderProduct;
94
- }
95
- });
96
- Object.defineProperty(exports, "resolveSkuMatchedQuantityLimits", {
97
- enumerable: true,
98
- get: function () {
99
- return _utils.resolveSkuMatchedQuantityLimits;
100
- }
101
- });
102
- Object.defineProperty(exports, "toBoolean", {
103
- enumerable: true,
104
- get: function () {
105
- return _utils.toBoolean;
106
- }
107
- });
108
- Object.defineProperty(exports, "toNonNegativeInt", {
109
- enumerable: true,
110
- get: function () {
111
- return _utils.toNonNegativeInt;
112
- }
113
- });
114
- Object.defineProperty(exports, "toNonNegativeNumber", {
115
- enumerable: true,
116
- get: function () {
117
- return _utils.toNonNegativeNumber;
118
- }
119
- });
120
- Object.defineProperty(exports, "toPositiveString", {
121
- enumerable: true,
122
- get: function () {
123
- return _utils.toPositiveString;
124
- }
125
- });
126
- Object.defineProperty(exports, "toPriceString", {
127
- enumerable: true,
128
- get: function () {
129
- return _utils.toPriceString;
130
- }
131
- });
132
- var _utils = require("../ScanOrder/utils");