@pisell/pisellos 0.10.15 → 0.10.17

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 (331) hide show
  1. package/dist/core/index.js +6 -9
  2. package/dist/model/strategy/adapter/promotion/index.js +0 -9
  3. package/dist/model/strategy/adapter/walletPass/example.js +3 -26
  4. package/dist/model/strategy/strategy-example.js +5 -19
  5. package/dist/modules/Cart/index.js +0 -3
  6. package/dist/modules/Cart/utils/cartProduct.js +0 -1
  7. package/dist/modules/Date/index.js +1 -5
  8. package/dist/modules/Discount/index.js +2 -4
  9. package/dist/modules/OpenData/index.d.ts +5 -2
  10. package/dist/modules/OpenData/index.js +27 -14
  11. package/dist/modules/OpenData/types.d.ts +42 -0
  12. package/dist/modules/OpenData/types.js +7 -1
  13. package/dist/modules/OpenData/utils.d.ts +15 -1
  14. package/dist/modules/OpenData/utils.js +85 -0
  15. package/dist/modules/Order/index.d.ts +4 -2
  16. package/dist/modules/Order/index.js +131 -123
  17. package/dist/modules/Order/types.d.ts +8 -1
  18. package/dist/modules/Order/types.js +1 -0
  19. package/dist/modules/Order/utils.js +7 -1
  20. package/dist/modules/Payment/index.js +97 -162
  21. package/dist/modules/Product/types.d.ts +2 -0
  22. package/dist/modules/ProductList/index.js +96 -74
  23. package/dist/modules/Rules/index.js +12 -12
  24. package/dist/modules/SalesSummary/index.js +6 -4
  25. package/dist/modules/Schedule/index.js +0 -1
  26. package/dist/modules/Schedule/utils.js +0 -1
  27. package/dist/modules/Step/index.js +0 -1
  28. package/dist/plugins/request.js +1 -4
  29. package/dist/plugins/window.js +2 -6
  30. package/dist/server/index.d.ts +11 -0
  31. package/dist/server/index.js +977 -641
  32. package/dist/server/modules/menu/index.js +32 -41
  33. package/dist/server/modules/order/index.d.ts +8 -0
  34. package/dist/server/modules/order/index.js +253 -219
  35. package/dist/server/modules/products/index.js +24 -42
  36. package/dist/server/modules/quotation/index.js +29 -38
  37. package/dist/server/modules/resource/index.js +3 -4
  38. package/dist/server/modules/schedule/index.js +27 -35
  39. package/dist/server/utils/product.js +0 -1
  40. package/dist/server/utils/small-ticket.d.ts +9 -1
  41. package/dist/server/utils/small-ticket.js +117 -43
  42. package/dist/solution/BaseSales/index.d.ts +7 -0
  43. package/dist/solution/BaseSales/index.js +350 -215
  44. package/dist/solution/BaseSales/types.d.ts +2 -0
  45. package/dist/solution/BaseSales/utils/cartPromotion.d.ts +5 -0
  46. package/dist/solution/BaseSales/utils/cartPromotion.js +15 -6
  47. package/dist/solution/BaseSales/utils/transformBaseProductToOrderProduct.d.ts +3 -0
  48. package/dist/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +7 -1
  49. package/dist/solution/BaseSales/utils.js +6 -3
  50. package/dist/solution/BookingByStep/index.d.ts +2 -2
  51. package/dist/solution/BookingByStep/index.js +7 -59
  52. package/dist/solution/BookingByStep/utils/capacity.js +1 -11
  53. package/dist/solution/BookingByStep/utils/resources.js +1 -3
  54. package/dist/solution/BookingByStep/utils/timeslots.js +2 -43
  55. package/dist/solution/BookingTicket/index.d.ts +14 -19
  56. package/dist/solution/BookingTicket/index.js +553 -433
  57. package/dist/solution/BookingTicket/utils/addProductDecision.js +3 -1
  58. package/dist/solution/BookingTicket/utils/scan/cloudSearch.js +6 -7
  59. package/dist/solution/BookingTicket/utils/scan/handleScan.js +25 -31
  60. package/dist/solution/BookingTicket/utils/scan/index.js +6 -10
  61. package/dist/solution/BuyTickets/index.js +9 -12
  62. package/dist/solution/Checkout/index.js +177 -252
  63. package/dist/solution/Checkout/utils/index.js +4 -16
  64. package/dist/solution/RegisterAndLogin/index.js +30 -76
  65. package/dist/solution/Sales/index.d.ts +20 -4
  66. package/dist/solution/Sales/index.js +348 -75
  67. package/dist/solution/Sales/types.d.ts +10 -0
  68. package/dist/solution/ScanOrder/index.js +50 -60
  69. package/dist/solution/ScanOrder/types.d.ts +2 -0
  70. package/dist/solution/ScanOrder/utils.js +6 -3
  71. package/dist/solution/ShopDiscount/index.js +2 -7
  72. package/dist/solution/UnifiedBookingSales/index.d.ts +5 -4
  73. package/dist/solution/UnifiedBookingSales/index.js +495 -422
  74. package/dist/solution/UnifiedBookingSales/types.d.ts +7 -1
  75. package/dist/solution/VenueBooking/index.js +45 -55
  76. package/dist/utils/task.js +15 -18
  77. package/dist/utils/watch.js +0 -1
  78. package/lib/apis/picoding.js +2 -0
  79. package/lib/core/index.js +131 -131
  80. package/lib/effects/index.js +46 -57
  81. package/lib/index.js +82 -49
  82. package/lib/model/index.js +14 -21
  83. package/lib/model/strategy/adapter/dataVariant/adapter.js +38 -50
  84. package/lib/model/strategy/adapter/dataVariant/evaluator.js +209 -315
  85. package/lib/model/strategy/adapter/dataVariant/examples.js +229 -237
  86. package/lib/model/strategy/adapter/dataVariant/index.js +39 -34
  87. package/lib/model/strategy/adapter/dataVariant/type.js +57 -28
  88. package/lib/model/strategy/adapter/index.js +100 -64
  89. package/lib/model/strategy/adapter/itemRule/adapter.js +156 -144
  90. package/lib/model/strategy/adapter/itemRule/evaluator.js +36 -48
  91. package/lib/model/strategy/adapter/itemRule/examples.js +295 -225
  92. package/lib/model/strategy/adapter/itemRule/index.js +83 -57
  93. package/lib/model/strategy/adapter/itemRule/type.js +97 -36
  94. package/lib/model/strategy/adapter/promotion/adapter.js +91 -69
  95. package/lib/model/strategy/adapter/promotion/evaluator.js +444 -310
  96. package/lib/model/strategy/adapter/promotion/examples.js +222 -234
  97. package/lib/model/strategy/adapter/promotion/index.js +1 -51
  98. package/lib/model/strategy/adapter/promotion/type.js +243 -36
  99. package/lib/model/strategy/adapter/type.js +4 -16
  100. package/lib/model/strategy/adapter/walletPass/evaluator.js +180 -150
  101. package/lib/model/strategy/adapter/walletPass/example.js +217 -190
  102. package/lib/model/strategy/adapter/walletPass/index.js +75 -51
  103. package/lib/model/strategy/adapter/walletPass/locales.js +36 -58
  104. package/lib/model/strategy/adapter/walletPass/type.js +4 -16
  105. package/lib/model/strategy/adapter/walletPass/utils.js +588 -378
  106. package/lib/model/strategy/engine.js +270 -168
  107. package/lib/model/strategy/index.js +49 -34
  108. package/lib/model/strategy/strategy-example.js +243 -239
  109. package/lib/model/strategy/type.js +100 -40
  110. package/lib/modules/Account/index.js +39 -53
  111. package/lib/modules/Account/types.js +20 -33
  112. package/lib/modules/AccountList/index.js +116 -154
  113. package/lib/modules/AccountList/types.js +30 -31
  114. package/lib/modules/AccountList/utils.js +18 -30
  115. package/lib/modules/BaseModule.js +23 -42
  116. package/lib/modules/BookingContext/index.js +158 -136
  117. package/lib/modules/BookingContext/types.js +46 -32
  118. package/lib/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +138 -146
  119. package/lib/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.js +78 -83
  120. package/lib/modules/BookingContext/utils/cacheItemToBookingInput.js +170 -150
  121. package/lib/modules/BookingContext/utils/flexible.js +38 -55
  122. package/lib/modules/BookingContext/utils/formatResourceList.js +19 -34
  123. package/lib/modules/BookingContext/utils/index.js +124 -41
  124. package/lib/modules/BookingContext/utils/noResource.js +58 -70
  125. package/lib/modules/BookingContext/utils/orderLineDisplay.js +14 -41
  126. package/lib/modules/BookingContext/utils/productExtend.js +202 -155
  127. package/lib/modules/BookingContext/utils/resourceErrors.js +53 -53
  128. package/lib/modules/BookingContext/utils/resourceSelection.js +19 -41
  129. package/lib/modules/BookingContext/utils/resources.js +209 -167
  130. package/lib/modules/BookingContext/utils/serviceTimes.js +115 -116
  131. package/lib/modules/BookingContext/utils/timeSlices.js +76 -86
  132. package/lib/modules/Cart/index.js +170 -124
  133. package/lib/modules/Cart/types.js +46 -51
  134. package/lib/modules/Cart/utils/cartAccount.js +40 -39
  135. package/lib/modules/Cart/utils/cartDate.js +56 -61
  136. package/lib/modules/Cart/utils/cartDiscount.js +28 -33
  137. package/lib/modules/Cart/utils/cartNote.js +27 -32
  138. package/lib/modules/Cart/utils/cartProduct.js +321 -251
  139. package/lib/modules/Cart/utils/cartRelationForms.js +29 -35
  140. package/lib/modules/Cart/utils/cartResource.js +70 -78
  141. package/lib/modules/Cart/utils/changePrice.js +22 -50
  142. package/lib/modules/Cart/utils/index.js +106 -48
  143. package/lib/modules/Customer/constants.js +13 -34
  144. package/lib/modules/Customer/index.js +235 -172
  145. package/lib/modules/Customer/types.js +38 -35
  146. package/lib/modules/Date/index.js +116 -115
  147. package/lib/modules/Date/types.js +16 -28
  148. package/lib/modules/Date/utils.js +174 -123
  149. package/lib/modules/Discount/index.js +133 -143
  150. package/lib/modules/Discount/types.js +9 -31
  151. package/lib/modules/Guests/index.js +30 -56
  152. package/lib/modules/Guests/types.js +23 -33
  153. package/lib/modules/Holder/index.js +209 -189
  154. package/lib/modules/Holder/types.js +4 -16
  155. package/lib/modules/Holder/utils.js +20 -49
  156. package/lib/modules/OpenData/index.d.ts +5 -2
  157. package/lib/modules/OpenData/index.js +119 -78
  158. package/lib/modules/OpenData/types.d.ts +42 -0
  159. package/lib/modules/OpenData/types.js +12 -16
  160. package/lib/modules/OpenData/utils.d.ts +15 -1
  161. package/lib/modules/OpenData/utils.js +129 -78
  162. package/lib/modules/Order/index.d.ts +4 -2
  163. package/lib/modules/Order/index.js +1843 -2251
  164. package/lib/modules/Order/payment-utils.js +77 -120
  165. package/lib/modules/Order/types.d.ts +8 -1
  166. package/lib/modules/Order/types.js +88 -35
  167. package/lib/modules/Order/utils/bundleDiscountHydration.js +41 -74
  168. package/lib/modules/Order/utils/discountProductLineIdentity.js +142 -100
  169. package/lib/modules/Order/utils/manualProductDiscount.js +124 -123
  170. package/lib/modules/Order/utils/orderCollectionIdentity.js +184 -244
  171. package/lib/modules/Order/utils/virtualSettlement.js +120 -171
  172. package/lib/modules/Order/utils.js +834 -668
  173. package/lib/modules/Payment/cash.js +20 -33
  174. package/lib/modules/Payment/cashRecommendationAlgorithm.js +145 -76
  175. package/lib/modules/Payment/eftpos.js +16 -30
  176. package/lib/modules/Payment/index.js +532 -399
  177. package/lib/modules/Payment/mx51.js +1 -0
  178. package/lib/modules/Payment/types.js +230 -108
  179. package/lib/modules/Payment/utils.js +52 -51
  180. package/lib/modules/Payment/walletpass.js +485 -660
  181. package/lib/modules/Product/index.js +51 -46
  182. package/lib/modules/Product/types.d.ts +2 -0
  183. package/lib/modules/Product/types.js +4 -16
  184. package/lib/modules/Product/utils.js +32 -33
  185. package/lib/modules/ProductList/index.js +141 -161
  186. package/lib/modules/ProductList/types.js +9 -31
  187. package/lib/modules/Quotation/index.js +66 -100
  188. package/lib/modules/Quotation/types.js +4 -16
  189. package/lib/modules/Resource/index.js +27 -59
  190. package/lib/modules/Resource/types.js +22 -32
  191. package/lib/modules/Resource/utils.js +30 -38
  192. package/lib/modules/ResourcePlanner/index.js +25 -23
  193. package/lib/modules/ResourcePlanner/localClock.js +54 -119
  194. package/lib/modules/ResourcePlanner/planner.js +591 -772
  195. package/lib/modules/ResourcePlanner/types.js +10 -29
  196. package/lib/modules/Rules/index.js +1224 -963
  197. package/lib/modules/Rules/types.js +17 -40
  198. package/lib/modules/SalesSummary/index.js +80 -89
  199. package/lib/modules/SalesSummary/types.js +4 -16
  200. package/lib/modules/SalesSummary/utils.js +359 -442
  201. package/lib/modules/ScanOrderLogger/index.js +59 -79
  202. package/lib/modules/ScanOrderLogger/providers/feishu.js +54 -78
  203. package/lib/modules/ScanOrderLogger/providers/grafana.js +13 -36
  204. package/lib/modules/ScanOrderLogger/types.js +4 -16
  205. package/lib/modules/Schedule/getDateIsInSchedule.js +334 -163
  206. package/lib/modules/Schedule/index.js +100 -114
  207. package/lib/modules/Schedule/type.js +4 -16
  208. package/lib/modules/Schedule/types.js +4 -16
  209. package/lib/modules/Schedule/utils.js +433 -291
  210. package/lib/modules/Step/index.js +40 -52
  211. package/lib/modules/Step/tyeps.js +4 -16
  212. package/lib/modules/Summary/index.js +66 -71
  213. package/lib/modules/Summary/types.js +4 -16
  214. package/lib/modules/Summary/utils.js +773 -418
  215. package/lib/modules/SurchargeList/index.js +46 -60
  216. package/lib/modules/SurchargeList/types.js +4 -16
  217. package/lib/modules/index.js +245 -63
  218. package/lib/plugins/app.js +4 -16
  219. package/lib/plugins/index.js +36 -25
  220. package/lib/plugins/request.js +137 -126
  221. package/lib/plugins/shopStore.js +4 -16
  222. package/lib/plugins/user.js +4 -16
  223. package/lib/plugins/window.js +171 -179
  224. package/lib/server/index.d.ts +11 -0
  225. package/lib/server/index.js +3432 -2757
  226. package/lib/server/modules/floor-plan/index.js +102 -123
  227. package/lib/server/modules/floor-plan/types.js +15 -30
  228. package/lib/server/modules/index.js +106 -68
  229. package/lib/server/modules/menu/index.js +146 -122
  230. package/lib/server/modules/menu/types.js +18 -31
  231. package/lib/server/modules/order/index.d.ts +8 -0
  232. package/lib/server/modules/order/index.js +781 -956
  233. package/lib/server/modules/order/types.js +122 -33
  234. package/lib/server/modules/order/utils/filterBookings.js +219 -194
  235. package/lib/server/modules/order/utils/filterOrders.js +118 -92
  236. package/lib/server/modules/payment/index.js +59 -83
  237. package/lib/server/modules/payment/types.js +4 -16
  238. package/lib/server/modules/products/index.js +575 -459
  239. package/lib/server/modules/products/types.js +44 -34
  240. package/lib/server/modules/quotation/index.js +137 -172
  241. package/lib/server/modules/quotation/types.js +21 -31
  242. package/lib/server/modules/resource/index.js +213 -184
  243. package/lib/server/modules/resource/types.js +42 -33
  244. package/lib/server/modules/schedule/index.js +135 -123
  245. package/lib/server/modules/schedule/types.js +14 -21
  246. package/lib/server/modules/schedule/utils.js +334 -163
  247. package/lib/server/types.js +4 -16
  248. package/lib/server/utils/index.js +25 -23
  249. package/lib/server/utils/product.js +196 -139
  250. package/lib/server/utils/schedule.js +34 -41
  251. package/lib/server/utils/small-ticket.d.ts +9 -1
  252. package/lib/server/utils/small-ticket.js +565 -470
  253. package/lib/server/utils/time.js +40 -49
  254. package/lib/solution/BaseSales/index.d.ts +7 -0
  255. package/lib/solution/BaseSales/index.js +1385 -1503
  256. package/lib/solution/BaseSales/types.d.ts +2 -0
  257. package/lib/solution/BaseSales/types.js +42 -38
  258. package/lib/solution/BaseSales/utils/cartPromotion.d.ts +5 -0
  259. package/lib/solution/BaseSales/utils/cartPromotion.js +652 -498
  260. package/lib/solution/BaseSales/utils/parseSalesResponse.js +85 -105
  261. package/lib/solution/BaseSales/utils/quotationPrice.js +56 -114
  262. package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.d.ts +3 -0
  263. package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +138 -180
  264. package/lib/solution/BaseSales/utils.js +161 -143
  265. package/lib/solution/BookingByStep/index.d.ts +2 -2
  266. package/lib/solution/BookingByStep/index.js +1527 -1340
  267. package/lib/solution/BookingByStep/types.js +40 -99
  268. package/lib/solution/BookingByStep/utils/capacity.js +192 -160
  269. package/lib/solution/BookingByStep/utils/products.js +42 -52
  270. package/lib/solution/BookingByStep/utils/resources.js +527 -330
  271. package/lib/solution/BookingByStep/utils/stock.js +65 -44
  272. package/lib/solution/BookingByStep/utils/timeslots.js +129 -131
  273. package/lib/solution/BookingTicket/index.d.ts +14 -19
  274. package/lib/solution/BookingTicket/index.js +663 -526
  275. package/lib/solution/BookingTicket/types.js +99 -77
  276. package/lib/solution/BookingTicket/utils/addProductDecision.js +229 -190
  277. package/lib/solution/BookingTicket/utils/addTimeAvailability.js +58 -89
  278. package/lib/solution/BookingTicket/utils/bookingStatus.js +107 -78
  279. package/lib/solution/BookingTicket/utils/cartView.js +114 -99
  280. package/lib/solution/BookingTicket/utils/exampleData.js +185 -0
  281. package/lib/solution/BookingTicket/utils/orderCustomer.js +18 -41
  282. package/lib/solution/BookingTicket/utils/resolveBestAddTimePlan.js +219 -86
  283. package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.js +168 -116
  284. package/lib/solution/BookingTicket/utils/scan/cloudSearch.js +79 -91
  285. package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.js +54 -41
  286. package/lib/solution/BookingTicket/utils/scan/handleScan.js +84 -81
  287. package/lib/solution/BookingTicket/utils/scan/index.js +98 -104
  288. package/lib/solution/BookingTicket/utils/scan/scanCache.js +90 -43
  289. package/lib/solution/BookingTicket/utils/scan/scanProductValues.js +52 -64
  290. package/lib/solution/BookingTicket/utils/sessionCatalogStale.js +56 -58
  291. package/lib/solution/BookingTicket/utils/weighingProductSku.js +34 -48
  292. package/lib/solution/BuyTickets/index.js +67 -70
  293. package/lib/solution/BuyTickets/types.js +22 -38
  294. package/lib/solution/Checkout/index.js +1451 -1158
  295. package/lib/solution/Checkout/types.js +91 -61
  296. package/lib/solution/Checkout/utils/index.js +228 -156
  297. package/lib/solution/PlaceOrder/index.js +55 -0
  298. package/lib/solution/RegisterAndLogin/config.js +493 -460
  299. package/lib/solution/RegisterAndLogin/index.js +633 -630
  300. package/lib/solution/RegisterAndLogin/types.js +189 -76
  301. package/lib/solution/RegisterAndLogin/utils.js +183 -125
  302. package/lib/solution/Sales/index.d.ts +20 -4
  303. package/lib/solution/Sales/index.js +502 -330
  304. package/lib/solution/Sales/types.d.ts +10 -0
  305. package/lib/solution/Sales/types.js +27 -33
  306. package/lib/solution/ScanOrder/index.js +822 -852
  307. package/lib/solution/ScanOrder/types.d.ts +2 -0
  308. package/lib/solution/ScanOrder/types.js +33 -34
  309. package/lib/solution/ScanOrder/utils.js +412 -374
  310. package/lib/solution/ShopDiscount/index.js +226 -232
  311. package/lib/solution/ShopDiscount/types.js +15 -37
  312. package/lib/solution/ShopDiscount/utils.js +300 -172
  313. package/lib/solution/UnifiedBookingSales/index.d.ts +5 -4
  314. package/lib/solution/UnifiedBookingSales/index.js +1087 -1222
  315. package/lib/solution/UnifiedBookingSales/remoteOccupancyCache.js +99 -159
  316. package/lib/solution/UnifiedBookingSales/types.d.ts +7 -1
  317. package/lib/solution/UnifiedBookingSales/types.js +10 -32
  318. package/lib/solution/VenueBooking/index.js +811 -879
  319. package/lib/solution/VenueBooking/types.js +19 -39
  320. package/lib/solution/VenueBooking/utils/dateSummary.js +27 -56
  321. package/lib/solution/VenueBooking/utils/resource.js +31 -54
  322. package/lib/solution/VenueBooking/utils/slotMerge.js +94 -107
  323. package/lib/solution/VenueBooking/utils/timeSlot.js +132 -132
  324. package/lib/solution/VenueBooking/utils.js +130 -67
  325. package/lib/solution/index.js +124 -41
  326. package/lib/store/createStore.js +32 -29
  327. package/lib/types/index.js +4 -16
  328. package/lib/utils/payment-number.js +26 -46
  329. package/lib/utils/task.js +36 -36
  330. package/lib/utils/watch.js +81 -47
  331. package/package.json +2 -1
@@ -1,57 +1,41 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ "use strict";
18
2
 
19
- // src/modules/Quotation/index.ts
20
- var Quotation_exports = {};
21
- __export(Quotation_exports, {
22
- QuotationModule: () => QuotationModule
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
23
5
  });
24
- module.exports = __toCommonJS(Quotation_exports);
25
- var import_BaseModule = require("../BaseModule");
26
- var import_getDateIsInSchedule = require("../Schedule/getDateIsInSchedule");
27
- var QuotationModule = class extends import_BaseModule.BaseModule {
6
+ exports.QuotationModule = void 0;
7
+ var _BaseModule = require("../BaseModule");
8
+ var _getDateIsInSchedule = require("../Schedule/getDateIsInSchedule");
9
+ class QuotationModule extends _BaseModule.BaseModule {
10
+ defaultName = 'quotation';
11
+ defaultVersion = '1.0.0';
12
+ request;
13
+ store = {
14
+ list: []
15
+ };
16
+ scheduleResolver;
28
17
  constructor(name, version) {
29
18
  super(name, version);
30
- this.defaultName = "quotation";
31
- this.defaultVersion = "1.0.0";
32
- this.store = { list: [] };
33
19
  }
34
20
  async initialize(core, options) {
35
21
  this.core = core;
36
- this.request = core.getPlugin("request");
37
- if (!this.request)
38
- throw new Error("QuotationModule 需要 request 插件支持");
39
- this.store = { list: [] };
22
+ this.request = core.getPlugin('request');
23
+ if (!this.request) throw new Error('QuotationModule 需要 request 插件支持');
24
+ this.store = {
25
+ list: []
26
+ };
40
27
  }
41
28
  async loadQuotations(params) {
42
- var _a;
43
29
  const query = {};
44
- if (params == null ? void 0 : params.channel)
45
- query.channel = params.channel;
46
- if ((params == null ? void 0 : params.channel) === "online_store") {
47
- query.channel = "online-store";
30
+ if (params?.channel) query.channel = params.channel;
31
+ if (params?.channel === 'online_store') {
32
+ query.channel = 'online-store';
48
33
  }
49
- const res = await this.request.get(
50
- "/quotation/available",
51
- query,
52
- { useCache: false, osServer: true }
53
- );
54
- const list = ((_a = res == null ? void 0 : res.data) == null ? void 0 : _a.list) || (res == null ? void 0 : res.list) || [];
34
+ const res = await this.request.get('/quotation/available', query, {
35
+ useCache: false,
36
+ osServer: true
37
+ });
38
+ const list = res?.data?.list || res?.list || [];
55
39
  list.sort((a, b) => b.sort - a.sort);
56
40
  this.store.list = list;
57
41
  }
@@ -59,21 +43,19 @@ var QuotationModule = class extends import_BaseModule.BaseModule {
59
43
  return this.store.list;
60
44
  }
61
45
  getQuotationCustomerScopeInfo() {
62
- const customerById = /* @__PURE__ */ new Map();
63
- const quotationScopes = this.store.list.filter((quotation) => Array.isArray(quotation.customer) && quotation.customer.length > 0).map((quotation) => {
46
+ const customerById = new Map();
47
+ const quotationScopes = this.store.list.filter(quotation => Array.isArray(quotation.customer) && quotation.customer.length > 0).map(quotation => {
64
48
  const customerIds = [];
65
49
  const customers = [];
66
- const localSeen = /* @__PURE__ */ new Set();
50
+ const localSeen = new Set();
67
51
  const quotationCustomers = quotation.customer || [];
68
- quotationCustomers.forEach((customer) => {
69
- const customerId = this.normalizeCustomerId(customer == null ? void 0 : customer.id);
70
- if (!customerId || localSeen.has(customerId))
71
- return;
52
+ quotationCustomers.forEach(customer => {
53
+ const customerId = this.normalizeCustomerId(customer?.id);
54
+ if (!customerId || localSeen.has(customerId)) return;
72
55
  localSeen.add(customerId);
73
56
  customerIds.push(customerId);
74
57
  customers.push(customer);
75
- if (!customerById.has(customerId))
76
- customerById.set(customerId, customer);
58
+ if (!customerById.has(customerId)) customerById.set(customerId, customer);
77
59
  });
78
60
  return {
79
61
  quotationId: quotation.id,
@@ -92,6 +74,7 @@ var QuotationModule = class extends import_BaseModule.BaseModule {
92
74
  };
93
75
  return result;
94
76
  }
77
+
95
78
  /**
96
79
  * Look up the quotation price for a specific product (+ optional variant) at a given datetime.
97
80
  * Returns the price as a string (e.g. "300.00"), or null if no quotation applies.
@@ -101,23 +84,23 @@ var QuotationModule = class extends import_BaseModule.BaseModule {
101
84
  * the requested productId wins.
102
85
  */
103
86
  getPriceForProduct(params) {
104
- var _a;
105
- return ((_a = this.getQuotationMatchForProduct(params)) == null ? void 0 : _a.price) ?? null;
87
+ return this.getQuotationMatchForProduct(params)?.price ?? null;
106
88
  }
107
89
  getQuotationMatchForProduct(params) {
108
- const { productId, variantId, datetime, customer_id } = params;
90
+ const {
91
+ productId,
92
+ variantId,
93
+ datetime,
94
+ customer_id
95
+ } = params;
109
96
  for (const quotation of this.store.list) {
110
97
  const visible = this.isQuotationVisibleForCustomer(quotation, customer_id);
111
- if (!visible)
112
- continue;
98
+ if (!visible) continue;
113
99
  const active = this.isQuotationActiveAt(quotation, datetime);
114
- if (!active)
115
- continue;
100
+ if (!active) continue;
116
101
  const match = this.findProductData(quotation.product_data, productId, variantId);
117
- if (!match)
118
- continue;
119
- if (match.value === 0)
120
- continue;
102
+ if (!match) continue;
103
+ if (match.value === 0) continue;
121
104
  return {
122
105
  price: String(match.value),
123
106
  quotationShelfId: quotation.id
@@ -126,18 +109,17 @@ var QuotationModule = class extends import_BaseModule.BaseModule {
126
109
  return null;
127
110
  }
128
111
  getQuotationShelfId(params) {
129
- var _a;
130
- return ((_a = this.getQuotationMatchForProduct(params)) == null ? void 0 : _a.quotationShelfId) ?? 0;
112
+ return this.getQuotationMatchForProduct(params)?.quotationShelfId ?? 0;
131
113
  }
114
+
132
115
  /**
133
116
  * Batch pre-compute quotation prices for a set of products across multiple time points.
134
117
  * Key format: `${productId}:${timePoint}`
135
118
  * This avoids repeated schedule matching when the same product appears in multiple resource rows.
136
119
  */
137
120
  buildProductPriceMap(params) {
138
- const map = /* @__PURE__ */ new Map();
139
- if (!this.store.list.length)
140
- return map;
121
+ const map = new Map();
122
+ if (!this.store.list.length) return map;
141
123
  for (const productId of params.productIds) {
142
124
  for (const timePoint of params.timePoints) {
143
125
  const key = `${productId}:${timePoint}`;
@@ -158,30 +140,23 @@ var QuotationModule = class extends import_BaseModule.BaseModule {
158
140
  }
159
141
  isQuotationVisibleForCustomer(quotation, customerId) {
160
142
  const customers = quotation.customer || [];
161
- if (customers.length === 0)
162
- return true;
163
- if (!this.hasValidCustomerId(customerId))
164
- return false;
165
- return customers.some((customer) => String(customer.id) === String(customerId));
143
+ if (customers.length === 0) return true;
144
+ if (!this.hasValidCustomerId(customerId)) return false;
145
+ return customers.some(customer => String(customer.id) === String(customerId));
166
146
  }
167
147
  hasValidCustomerId(customerId) {
168
- if (customerId === void 0 || customerId === null || customerId === "")
169
- return false;
148
+ if (customerId === undefined || customerId === null || customerId === '') return false;
170
149
  return Number(customerId) > 0;
171
150
  }
172
151
  normalizeCustomerId(customerId) {
173
- if (customerId === void 0 || customerId === null || customerId === "")
174
- return null;
152
+ if (customerId === undefined || customerId === null || customerId === '') return null;
175
153
  return String(customerId);
176
154
  }
177
155
  isQuotationActiveAt(quotation, datetime) {
178
- var _a;
179
- if (!((_a = quotation.schedule) == null ? void 0 : _a.length))
180
- return false;
156
+ if (!quotation.schedule?.length) return false;
181
157
  const scheduleItems = [];
182
- quotation.schedule.forEach((s) => {
183
- var _a2;
184
- const full = (_a2 = this.scheduleResolver) == null ? void 0 : _a2.call(this, s.id);
158
+ quotation.schedule.forEach(s => {
159
+ const full = this.scheduleResolver?.(s.id);
185
160
  if (full) {
186
161
  scheduleItems.push(full);
187
162
  return;
@@ -191,30 +166,21 @@ var QuotationModule = class extends import_BaseModule.BaseModule {
191
166
  }
192
167
  const fallbackSchedule = {
193
168
  ...s,
194
- repeat_type: s.repeat_type || "none",
169
+ repeat_type: s.repeat_type || 'none',
195
170
  repeat_rule: s.repeat_rule || null,
196
171
  time_slot: s.time_slot || []
197
172
  };
198
173
  scheduleItems.push(fallbackSchedule);
199
174
  });
200
- if (!scheduleItems.length)
201
- return false;
202
- return (0, import_getDateIsInSchedule.getDateIsInSchedule)(datetime, scheduleItems);
175
+ if (!scheduleItems.length) return false;
176
+ return (0, _getDateIsInSchedule.getDateIsInSchedule)(datetime, scheduleItems);
203
177
  }
204
178
  findProductData(productData, productId, variantId) {
205
179
  if (variantId && variantId !== 0) {
206
- const variantMatch = productData.find(
207
- (p) => p.product_id === productId && p.variant_id === variantId
208
- );
209
- if (variantMatch)
210
- return variantMatch;
180
+ const variantMatch = productData.find(p => p.product_id === productId && p.variant_id === variantId);
181
+ if (variantMatch) return variantMatch;
211
182
  }
212
- return productData.find(
213
- (p) => p.product_id === productId && p.variant_id === 0
214
- );
183
+ return productData.find(p => p.product_id === productId && p.variant_id === 0);
215
184
  }
216
- };
217
- // Annotate the CommonJS export names for ESM import in node:
218
- 0 && (module.exports = {
219
- QuotationModule
220
- });
185
+ }
186
+ exports.QuotationModule = QuotationModule;
@@ -1,17 +1,5 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __copyProps = (to, from, except, desc) => {
6
- if (from && typeof from === "object" || typeof from === "function") {
7
- for (let key of __getOwnPropNames(from))
8
- if (!__hasOwnProp.call(to, key) && key !== except)
9
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
- }
11
- return to;
12
- };
13
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ "use strict";
14
2
 
15
- // src/modules/Quotation/types.ts
16
- var types_exports = {};
17
- module.exports = __toCommonJS(types_exports);
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -1,34 +1,17 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ "use strict";
18
2
 
19
- // src/modules/Resource/index.ts
20
- var Resource_exports = {};
21
- __export(Resource_exports, {
22
- ResourceListModule: () => ResourceListModule
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
23
5
  });
24
- module.exports = __toCommonJS(Resource_exports);
25
- var import_BaseModule = require("../BaseModule");
26
- var import_types = require("./types");
27
- var ResourceListModule = class extends import_BaseModule.BaseModule {
6
+ exports.ResourceListModule = void 0;
7
+ var _BaseModule = require("../BaseModule");
8
+ var _types = require("./types");
9
+ class ResourceListModule extends _BaseModule.BaseModule {
10
+ defaultName = 'resourceList';
11
+ defaultVersion = '1.0.0';
12
+ store;
28
13
  constructor(name, version) {
29
14
  super(name, version);
30
- this.defaultName = "resourceList";
31
- this.defaultVersion = "1.0.0";
32
15
  }
33
16
  async initialize(core, options) {
34
17
  this.core = core;
@@ -38,9 +21,8 @@ var ResourceListModule = class extends import_BaseModule.BaseModule {
38
21
  return this.store.list;
39
22
  }
40
23
  async selectResource(resourceId) {
41
- const resource = this.store.list.find((r) => r.id === resourceId);
42
- if (!resource)
43
- return;
24
+ const resource = this.store.list.find(r => r.id === resourceId);
25
+ if (!resource) return;
44
26
  this.store.selectedResource = resource;
45
27
  await this.core.effects.emit(`${this.name}:onResourceSelect`, resource);
46
28
  }
@@ -48,43 +30,29 @@ var ResourceListModule = class extends import_BaseModule.BaseModule {
48
30
  return this.store.selectedResource;
49
31
  }
50
32
  async checkAvailability(resourceId, start, end) {
51
- const resource = this.store.list.find((r) => r.id === resourceId);
52
- if (!resource)
53
- return false;
54
- return resource.timeSlots.some(
55
- (slot) => slot.start.getTime() <= start.getTime() && slot.end.getTime() >= end.getTime() && slot.availableCapacity > 0
56
- );
33
+ const resource = this.store.list.find(r => r.id === resourceId);
34
+ if (!resource) return false;
35
+ return resource.timeSlots.some(slot => slot.start.getTime() <= start.getTime() && slot.end.getTime() >= end.getTime() && slot.availableCapacity > 0);
57
36
  }
58
37
  async getAvailableTimeSlots(resourceId) {
59
- const resource = this.store.list.find((r) => r.id === resourceId);
60
- if (!resource)
61
- return [];
62
- return resource.timeSlots.filter((slot) => slot.availableCapacity > 0);
38
+ const resource = this.store.list.find(r => r.id === resourceId);
39
+ if (!resource) return [];
40
+ return resource.timeSlots.filter(slot => slot.availableCapacity > 0);
63
41
  }
64
42
  getAvailableCapacity(resourceId, timeSlot) {
65
- const resource = this.store.list.find((r) => r.id === resourceId);
66
- if (!resource)
67
- return 0;
68
- const slot = resource.timeSlots.find(
69
- (s) => s.start.getTime() === timeSlot.start.getTime() && s.end.getTime() === timeSlot.end.getTime()
70
- );
71
- return (slot == null ? void 0 : slot.availableCapacity) || 0;
43
+ const resource = this.store.list.find(r => r.id === resourceId);
44
+ if (!resource) return 0;
45
+ const slot = resource.timeSlots.find(s => s.start.getTime() === timeSlot.start.getTime() && s.end.getTime() === timeSlot.end.getTime());
46
+ return slot?.availableCapacity || 0;
72
47
  }
73
48
  async updateResource(resourceId, updates) {
74
- const index = this.store.list.findIndex((r) => r.id === resourceId);
75
- if (index === -1)
76
- return;
49
+ const index = this.store.list.findIndex(r => r.id === resourceId);
50
+ if (index === -1) return;
77
51
  this.store.list[index] = {
78
52
  ...this.store.list[index],
79
53
  ...updates
80
54
  };
81
- await this.core.effects.emit(
82
- import_types.ResourceHooks.OnResourceChange,
83
- this.store.list[index]
84
- );
55
+ await this.core.effects.emit(_types.ResourceHooks.OnResourceChange, this.store.list[index]);
85
56
  }
86
- };
87
- // Annotate the CommonJS export names for ESM import in node:
88
- 0 && (module.exports = {
89
- ResourceListModule
90
- });
57
+ }
58
+ exports.ResourceListModule = ResourceListModule;
@@ -1,34 +1,24 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ "use strict";
18
2
 
19
- // src/modules/Resource/types.ts
20
- var types_exports = {};
21
- __export(types_exports, {
22
- ResourceHooks: () => ResourceHooks
23
- });
24
- module.exports = __toCommonJS(types_exports);
25
- var ResourceHooks = /* @__PURE__ */ ((ResourceHooks2) => {
26
- ResourceHooks2["OnResourceSelect"] = "resource:onResourceSelect";
27
- ResourceHooks2["OnResourceChange"] = "resource:onResourceChange";
28
- ResourceHooks2["OnAvailabilityCheck"] = "resource:onAvailabilityCheck";
29
- return ResourceHooks2;
30
- })(ResourceHooks || {});
31
- // Annotate the CommonJS export names for ESM import in node:
32
- 0 && (module.exports = {
33
- ResourceHooks
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
34
5
  });
6
+ exports.ResourceHooks = void 0;
7
+ let ResourceHooks = exports.ResourceHooks = /*#__PURE__*/function (ResourceHooks) {
8
+ ResourceHooks["OnResourceSelect"] = "resource:onResourceSelect";
9
+ ResourceHooks["OnResourceChange"] = "resource:onResourceChange";
10
+ ResourceHooks["OnAvailabilityCheck"] = "resource:onAvailabilityCheck";
11
+ return ResourceHooks;
12
+ }({});
13
+ /**
14
+ * 资源可用时间段
15
+ */
16
+ /**
17
+ * 资源信息
18
+ */
19
+ /**
20
+ * 资源列表状态
21
+ */
22
+ /**
23
+ * 资源列表模块 API
24
+ */
@@ -1,42 +1,34 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ "use strict";
18
2
 
19
- // src/modules/Resource/utils.ts
20
- var utils_exports = {};
21
- __export(utils_exports, {
22
- getResourcesByIds: () => getResourcesByIds,
23
- getResourcesMap: () => getResourcesMap
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
24
5
  });
25
- module.exports = __toCommonJS(utils_exports);
26
- var getResourcesMap = (resourceList) => {
27
- return resourceList.reduce(
28
- (pre, item) => {
29
- pre[item.id] = item;
30
- return pre;
31
- },
32
- {}
33
- );
6
+ exports.getResourcesMap = exports.getResourcesByIds = void 0;
7
+ /**
8
+ * @title: 获取资源map
9
+ * @description:
10
+ * @param {any} resourceList
11
+ * @return {*}
12
+ * @Author: zhiwei.Wang
13
+ */
14
+ const getResourcesMap = resourceList => {
15
+ return resourceList.reduce((pre, item) => {
16
+ pre[item.id] = item;
17
+ return pre;
18
+ }, {});
34
19
  };
35
- var getResourcesByIds = (resourcesMap, ids) => {
36
- return (ids || []).map((id) => resourcesMap[id]);
20
+
21
+ /**
22
+ * @title: 根据ids筛选资源列表
23
+ * @description:
24
+ * @param {any} resourcesMap
25
+ * @param {any} ids
26
+ * @return {*}
27
+ * @Author: zhiwei.Wang
28
+ * @Date: 2024-09-19 20:23
29
+ */
30
+ exports.getResourcesMap = getResourcesMap;
31
+ const getResourcesByIds = (resourcesMap, ids) => {
32
+ return (ids || []).map(id => resourcesMap[id]);
37
33
  };
38
- // Annotate the CommonJS export names for ESM import in node:
39
- 0 && (module.exports = {
40
- getResourcesByIds,
41
- getResourcesMap
42
- });
34
+ exports.getResourcesByIds = getResourcesByIds;
@@ -1,25 +1,27 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __copyProps = (to, from, except, desc) => {
6
- if (from && typeof from === "object" || typeof from === "function") {
7
- for (let key of __getOwnPropNames(from))
8
- if (!__hasOwnProp.call(to, key) && key !== except)
9
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
- }
11
- return to;
12
- };
13
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
14
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ "use strict";
15
2
 
16
- // src/modules/ResourcePlanner/index.ts
17
- var ResourcePlanner_exports = {};
18
- module.exports = __toCommonJS(ResourcePlanner_exports);
19
- __reExport(ResourcePlanner_exports, require("./types"), module.exports);
20
- __reExport(ResourcePlanner_exports, require("./planner"), module.exports);
21
- // Annotate the CommonJS export names for ESM import in node:
22
- 0 && (module.exports = {
23
- ...require("./types"),
24
- ...require("./planner")
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
25
5
  });
6
+ var _types = require("./types");
7
+ Object.keys(_types).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _types[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _types[key];
14
+ }
15
+ });
16
+ });
17
+ var _planner = require("./planner");
18
+ Object.keys(_planner).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _planner[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _planner[key];
25
+ }
26
+ });
27
+ });