@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,39 +1,72 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.handleVariantProduct = exports.handleProductDeposit = exports.getProductTotalPrice = exports.getProductOriginTotalPrice = exports.getProductDeposit = exports.formatProductToCartItemOrigin = exports.formatProductToCartItem = exports.formatOptionsToOrigin = exports.formatOptions = exports.formatBundleToOrigin = exports.formatBundle = void 0;
7
- var _decimal = _interopRequireDefault(require("decimal.js"));
8
- var _utils = require("../../Product/utils");
9
- var _utils2 = require("../../../solution/ShopDiscount/utils");
10
- var _utils3 = require("../../Summary/utils");
11
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
- /** 与 Rules / ShopDiscount 一致的折扣入参,用于主价与 option 单价 */
13
- const toDiscountPayload = discountItem => ({
14
- amount: discountItem.amount,
15
- tag: discountItem.type,
16
- par_value: discountItem.discount?.percent,
17
- config: discountItem.config,
18
- metadata: {
19
- discount_card_type: discountItem?.discount?.discount_card_type
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 });
20
16
  }
21
- });
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);
22
28
 
23
- /**
24
- * @title 处理组合商品
25
- * @description 组合商品需要直接修改 product 里的价格和 is_charge_tax
26
- * @param product 商品
27
- * @returns 处理后的商品
28
- */
29
- const handleVariantProduct = product => {
30
- // 判断组合商品,然后直接修改 product 里的价格和 is_charge_tax
31
- if (product?.product_variant_id) {
32
- // 还需要判断 能从 variant 里找到对应的组合规格信息,才可以替换
33
- const targetVariant = product?.variant?.find(n => n.id === product.product_variant_id);
29
+ // src/modules/Cart/utils/cartProduct.ts
30
+ var cartProduct_exports = {};
31
+ __export(cartProduct_exports, {
32
+ formatBundle: () => formatBundle,
33
+ formatBundleToOrigin: () => formatBundleToOrigin,
34
+ formatOptions: () => formatOptions,
35
+ formatOptionsToOrigin: () => formatOptionsToOrigin,
36
+ formatProductToCartItem: () => formatProductToCartItem,
37
+ formatProductToCartItemOrigin: () => formatProductToCartItemOrigin,
38
+ getProductDeposit: () => getProductDeposit,
39
+ getProductOriginTotalPrice: () => getProductOriginTotalPrice,
40
+ getProductTotalPrice: () => getProductTotalPrice,
41
+ handleProductDeposit: () => handleProductDeposit,
42
+ handleVariantProduct: () => handleVariantProduct
43
+ });
44
+ module.exports = __toCommonJS(cartProduct_exports);
45
+ var import_decimal = __toESM(require("decimal.js"));
46
+ var import_utils = require("../../Product/utils");
47
+ var import_utils2 = require("../../../solution/ShopDiscount/utils");
48
+ var import_utils3 = require("../../Summary/utils");
49
+ var import_utils4 = require("../../Order/utils");
50
+ var toDiscountPayload = (discountItem) => {
51
+ var _a, _b;
52
+ return {
53
+ amount: discountItem.amount,
54
+ tag: discountItem.type,
55
+ par_value: (_a = discountItem.discount) == null ? void 0 : _a.percent,
56
+ config: discountItem.config,
57
+ metadata: {
58
+ discount_card_type: (_b = discountItem == null ? void 0 : discountItem.discount) == null ? void 0 : _b.discount_card_type
59
+ }
60
+ };
61
+ };
62
+ var handleVariantProduct = (product) => {
63
+ var _a;
64
+ if (product == null ? void 0 : product.product_variant_id) {
65
+ const targetVariant = (_a = product == null ? void 0 : product.variant) == null ? void 0 : _a.find(
66
+ (n) => n.id === product.product_variant_id
67
+ );
34
68
  if (targetVariant) {
35
69
  product.price = targetVariant.price;
36
- // 如果 original_price 为 0,就不改了
37
70
  if (Number(targetVariant.original_price) > 0) {
38
71
  product.original_price = targetVariant.original_price;
39
72
  }
@@ -42,14 +75,9 @@ const handleVariantProduct = product => {
42
75
  }
43
76
  return product;
44
77
  };
45
-
46
- /**
47
- * 格式化商品到购物车
48
- * @param product 商品
49
- * @returns 格式化后的商品
50
- */
51
- exports.handleVariantProduct = handleVariantProduct;
52
- const formatProductToCartItem = params => {
78
+ var formatProductToCartItem = (params) => {
79
+ var _a, _b, _c;
80
+ console.log("formatProductToCartItem>>>>>>", params);
53
81
  const {
54
82
  cartItem,
55
83
  product,
@@ -59,25 +87,14 @@ const formatProductToCartItem = params => {
59
87
  quantity = 1,
60
88
  discounts
61
89
  } = params;
62
- const num = quantity; // 当前按照单个商品加入购物车
63
-
90
+ const num = quantity;
64
91
  if (product) {
65
- cartItem.id = product?.id;
66
- cartItem.name = product?.title;
67
- cartItem.price = product?.price;
92
+ cartItem.id = product == null ? void 0 : product.id;
93
+ cartItem.name = product == null ? void 0 : product.title;
94
+ cartItem.price = product == null ? void 0 : product.price;
68
95
  cartItem.num = num;
69
- cartItem.total = getProductTotalPrice({
70
- product,
71
- bundle,
72
- options,
73
- num,
74
- discounts
75
- });
76
- cartItem.totalDifference = getTotalDifference({
77
- product,
78
- bundle,
79
- discounts
80
- });
96
+ cartItem.total = getProductTotalPrice({ product, bundle, options, num, discounts });
97
+ cartItem.totalDifference = getTotalDifference({ product, bundle, discounts });
81
98
  cartItem.summaryTotal = cartItem.total * (num || 1);
82
99
  cartItem.origin_total = getProductOriginTotalPrice({
83
100
  product,
@@ -86,7 +103,6 @@ const formatProductToCartItem = params => {
86
103
  num,
87
104
  discounts
88
105
  });
89
- // 不包含折扣卡商品券的总价
90
106
  const origin_total = getProductTotalPrice({
91
107
  product: cartItem._productInit || cartItem._productOrigin,
92
108
  bundle,
@@ -95,38 +111,44 @@ const formatProductToCartItem = params => {
95
111
  discounts: []
96
112
  });
97
113
  cartItem.summaryOriginTotal = (origin_total || 0) * (num || 1);
98
- cartItem.image = product?.cover;
99
- cartItem.like_status = 'common';
100
- cartItem.duration = product?.duration;
101
- cartItem.isNormalProduct = (0, _utils.isNormalProduct)(product);
102
- cartItem.is_charge_tax = product?.is_charge_tax;
114
+ cartItem.image = product == null ? void 0 : product.cover;
115
+ cartItem.like_status = "common";
116
+ cartItem.duration = product == null ? void 0 : product.duration;
117
+ cartItem.isNormalProduct = (0, import_utils.isNormalProduct)(product);
118
+ cartItem.is_charge_tax = product == null ? void 0 : product.is_charge_tax;
103
119
  }
104
- if (bundle?.length) {
120
+ if (bundle == null ? void 0 : bundle.length) {
105
121
  cartItem.bundle = formatBundle(bundle);
106
122
  }
107
- if (options?.length) {
123
+ if (options == null ? void 0 : options.length) {
108
124
  cartItem.options = formatOptions(options);
109
125
  }
110
- // 拼装出 product_option_string
111
126
  if (product_variant_id) {
112
- const sku_key = product?.variant?.find(n => n.id === product_variant_id)?.sku_key;
127
+ const sku_key = (_b = (_a = product == null ? void 0 : product.variant) == null ? void 0 : _a.find(
128
+ (n) => n.id === product_variant_id
129
+ )) == null ? void 0 : _b.sku_key;
113
130
  if (sku_key) {
114
- const sku_key_arr = sku_key.split('_');
131
+ const sku_key_arr = sku_key.split("_");
115
132
  const product_option_string = [];
116
- sku_key_arr.forEach(item => {
117
- const keyMap = item.split(':');
118
- const targetVariantGroup = product?.variant_group?.find(n => String(n.position_id) === keyMap[0]);
119
- const targetVariantItem = targetVariantGroup?.variant_item?.find(n => String(n.position_id) === keyMap[1]);
133
+ sku_key_arr.forEach((item) => {
134
+ var _a2, _b2;
135
+ const keyMap = item.split(":");
136
+ const targetVariantGroup = (_a2 = product == null ? void 0 : product.variant_group) == null ? void 0 : _a2.find(
137
+ (n) => String(n.position_id) === keyMap[0]
138
+ );
139
+ const targetVariantItem = (_b2 = targetVariantGroup == null ? void 0 : targetVariantGroup.variant_item) == null ? void 0 : _b2.find(
140
+ (n) => String(n.position_id) === keyMap[1]
141
+ );
120
142
  if (targetVariantGroup && targetVariantItem) {
121
- product_option_string.push(`${targetVariantGroup.name}:${targetVariantItem.name}`);
143
+ product_option_string.push(
144
+ `${targetVariantGroup.name}:${targetVariantItem.name}`
145
+ );
122
146
  }
123
147
  });
124
- cartItem.product_option_string = product_option_string.join(', ');
148
+ cartItem.product_option_string = product_option_string.join(", ");
125
149
  }
126
150
  }
127
-
128
- // 如果商品有定金规则,则计算定金
129
- if (product?.custom_deposit_data?.has_deposit == 1) {
151
+ if (((_c = product == null ? void 0 : product.custom_deposit_data) == null ? void 0 : _c.has_deposit) == 1) {
130
152
  cartItem.deposit = getProductDeposit({
131
153
  cartItem,
132
154
  product,
@@ -139,8 +161,8 @@ const formatProductToCartItem = params => {
139
161
  cartItem._origin = oringin;
140
162
  return cartItem;
141
163
  };
142
- exports.formatProductToCartItem = formatProductToCartItem;
143
- const formatProductToCartItemOrigin = params => {
164
+ var formatProductToCartItemOrigin = (params) => {
165
+ var _a, _b, _c, _d, _e;
144
166
  const {
145
167
  cartItem,
146
168
  product,
@@ -150,220 +172,193 @@ const formatProductToCartItemOrigin = params => {
150
172
  quantity = 1
151
173
  } = params;
152
174
  let origin = cartItem._origin;
153
- const product_discount_difference = (origin.product?.discount_list || []).filter(item => !item?.metadata?.custom_product_bundle_map_id).reduce((pre, cur) => {
154
- return pre + (cur?.metadata?.product_discount_difference || 0);
175
+ const product_discount_difference = (((_a = origin.product) == null ? void 0 : _a.discount_list) || []).filter((item) => {
176
+ var _a2;
177
+ return !((_a2 = item == null ? void 0 : item.metadata) == null ? void 0 : _a2.custom_product_bundle_map_id);
178
+ }).reduce((pre, cur) => {
179
+ var _a2;
180
+ return pre + (((_a2 = cur == null ? void 0 : cur.metadata) == null ? void 0 : _a2.product_discount_difference) || 0);
155
181
  }, 0);
156
182
  if (product) {
157
183
  origin.product = {
158
- ...(origin.product || {}),
184
+ ...origin.product || {},
159
185
  num: quantity,
160
186
  product_id: product.id,
161
187
  product_variant_id: product_variant_id || 0,
162
- product_bundle: origin.product?.product_bundle || [],
163
- product_option_item: origin.product?.product_option_item || [],
188
+ product_bundle: ((_b = origin.product) == null ? void 0 : _b.product_bundle) || [],
189
+ product_sku: ((_c = origin.product) == null ? void 0 : _c.product_sku) || { option: [] },
164
190
  metadata: {
165
191
  product_discount_difference
166
192
  }
167
193
  };
168
- // 时长类型
169
- origin.sub_type = product?.duration?.type;
170
- // 时长
171
- origin.duration = product?.duration?.value;
172
- if (bundle?.length) {
194
+ origin.sub_type = (_d = product == null ? void 0 : product.duration) == null ? void 0 : _d.type;
195
+ origin.duration = (_e = product == null ? void 0 : product.duration) == null ? void 0 : _e.value;
196
+ if (bundle == null ? void 0 : bundle.length) {
173
197
  origin.product.product_bundle = formatBundleToOrigin(bundle);
174
198
  }
175
- if (options?.length) {
176
- origin.product.product_option_item = formatOptionsToOrigin(options);
199
+ if (options == null ? void 0 : options.length) {
200
+ origin.product.product_sku = {
201
+ ...origin.product.product_sku || {},
202
+ option: formatOptionsToOrigin(options).map((option) => {
203
+ const next = { ...option, add_price: option.add_price ?? option.price };
204
+ delete next.price;
205
+ return next;
206
+ })
207
+ };
177
208
  }
178
209
  }
179
210
  return origin;
180
211
  };
181
-
182
- /**
183
- * 获取商品总价
184
- * @description 当前总价计算基于商品数量为1
185
- * @param item 商品
186
- * @returns 商品总价
187
- */
188
- exports.formatProductToCartItemOrigin = formatProductToCartItemOrigin;
189
- const getProductTotalPrice = params => {
190
- const {
191
- product,
192
- bundle,
193
- options,
194
- discounts
195
- } = params;
196
- // const num = params.num || 1;
212
+ var getProductTotalPrice = (params) => {
213
+ const { product, bundle, options, discounts } = params;
197
214
  let price = Number(product.price);
198
-
199
- // option 行:unit 折后价在循环中与主商品使用同一套 getDiscountAmount(含 deductOptionPrice)
200
- const optionRows = options?.map(currentValue => ({
215
+ const optionRows = (options == null ? void 0 : options.map((currentValue) => ({
201
216
  unit: Number(currentValue.price ?? currentValue.add_price ?? 0),
202
217
  num: Number(currentValue.num ?? currentValue.quantity ?? 1)
203
- })) ?? [];
204
-
205
- // 如果商品有折扣,则计算折扣
206
- if (discounts?.length) {
207
- discounts.forEach(currentValue => {
218
+ }))) ?? [];
219
+ if (discounts == null ? void 0 : discounts.length) {
220
+ discounts.forEach((currentValue) => {
221
+ var _a;
208
222
  const payload = toDiscountPayload(currentValue);
209
- price = (0, _utils2.getDiscountAmount)(payload, price, price);
210
- if (currentValue?.config?.deductOptionPrice && optionRows.length) {
223
+ price = (0, import_utils2.getDiscountAmount)(payload, price, price);
224
+ if (((_a = currentValue == null ? void 0 : currentValue.config) == null ? void 0 : _a.deductOptionPrice) && optionRows.length) {
211
225
  for (let i = 0; i < optionRows.length; i++) {
212
226
  const row = optionRows[i];
213
227
  optionRows[i] = {
214
228
  ...row,
215
- unit: (0, _utils2.getDiscountAmount)(payload, row.unit, row.unit)
229
+ unit: (0, import_utils2.getDiscountAmount)(payload, row.unit, row.unit)
216
230
  };
217
231
  }
218
232
  }
219
233
  });
220
234
  }
221
- if (bundle?.length) {
235
+ if (bundle == null ? void 0 : bundle.length) {
222
236
  price = bundle.reduce((accumulator, currentValue) => {
223
237
  return accumulator + Number(currentValue.price) * Number(currentValue.num);
224
238
  }, price);
225
239
  }
226
-
227
- // 单规格 / 加购 option
228
240
  if (optionRows.length) {
229
- price = optionRows.reduce((accumulator, row) => accumulator + row.unit * row.num, price);
241
+ price = optionRows.reduce(
242
+ (accumulator, row) => accumulator + row.unit * row.num,
243
+ price
244
+ );
230
245
  }
231
246
  return Math.max(0, price);
232
247
  };
233
- exports.getProductTotalPrice = getProductTotalPrice;
234
- const getTotalDifference = params => {
235
- const {
236
- bundle,
237
- discounts
238
- } = params;
248
+ var getTotalDifference = (params) => {
249
+ const { bundle, discounts } = params;
239
250
  const bundleDiscountList = [];
240
- if (bundle?.length) {
241
- bundle.forEach(currentValue => {
242
- bundleDiscountList.push(...(currentValue?.discount_list || []));
251
+ if (bundle == null ? void 0 : bundle.length) {
252
+ bundle.forEach((currentValue) => {
253
+ bundleDiscountList.push(...(currentValue == null ? void 0 : currentValue.discount_list) || []);
243
254
  });
244
255
  }
245
- const allDiscounts = [...(discounts || []), ...bundleDiscountList];
246
- const productDiscountProductDiscountDifference = (0, _utils3.calcDiscountListDifference)(allDiscounts);
256
+ const allDiscounts = [...discounts || [], ...bundleDiscountList];
257
+ const productDiscountProductDiscountDifference = (0, import_utils3.calcDiscountListDifference)(allDiscounts);
247
258
  return productDiscountProductDiscountDifference || 0;
248
259
  };
249
-
250
- /**
251
- * 获取商品原始总价
252
- * @description 当前总价计算基于商品数量为1
253
- * @param item 商品
254
- * @returns 商品原始总价
255
- */
256
- const getProductOriginTotalPrice = params => {
257
- const {
258
- product,
259
- bundle,
260
- options,
261
- discounts
262
- } = params;
263
- const num = params?.num || 1;
260
+ var getProductOriginTotalPrice = (params) => {
261
+ const { product, bundle, options, discounts } = params;
262
+ const num = (params == null ? void 0 : params.num) || 1;
264
263
  let price = Number(product.original_price);
265
- if ((isNaN(price) || price === 0) && !discounts?.length) {
266
- return undefined;
264
+ if ((isNaN(price) || price === 0) && !(discounts == null ? void 0 : discounts.length)) {
265
+ return void 0;
267
266
  }
268
- if (bundle?.length) {
267
+ if (bundle == null ? void 0 : bundle.length) {
269
268
  price = bundle.reduce((accumulator, currentValue) => {
270
269
  return accumulator + Number(currentValue.price) * Number(currentValue.num);
271
270
  }, price);
272
271
  }
273
-
274
- // 单规格
275
- if (options?.length) {
272
+ if (options == null ? void 0 : options.length) {
276
273
  price = options.reduce((accumulator, currentValue) => {
277
274
  return accumulator + Number(currentValue.price) * Number(currentValue.num);
278
275
  }, price);
279
276
  }
280
277
  return price;
281
278
  };
282
-
283
- /**
284
- * 格式化套餐规格信息
285
- * @param options 套餐规格信息
286
- * @returns 格式化后的套餐规格信息
287
- */
288
- exports.getProductOriginTotalPrice = getProductOriginTotalPrice;
289
- const formatOptions = options => {
290
- if (!options?.length) return [];
291
- return options.map(item => {
279
+ var formatOptions = (options) => {
280
+ if (!(options == null ? void 0 : options.length))
281
+ return [];
282
+ return options.map((item) => {
292
283
  return {
293
- id: item?.id,
294
- name: item?.name,
295
- num: item?.num,
296
- price: item?.price,
297
- total: item?.price,
298
- origin_total: item?.original_price
284
+ id: item == null ? void 0 : item.id,
285
+ name: item == null ? void 0 : item.name,
286
+ num: item == null ? void 0 : item.num,
287
+ price: item == null ? void 0 : item.price,
288
+ total: item == null ? void 0 : item.price,
289
+ origin_total: item == null ? void 0 : item.original_price
299
290
  };
300
291
  });
301
292
  };
302
- exports.formatOptions = formatOptions;
303
- const formatOptionsToOrigin = options => {
304
- if (!options?.length) {
293
+ var formatOptionsToOrigin = (options) => {
294
+ if (!(options == null ? void 0 : options.length)) {
305
295
  return [];
306
296
  }
307
- return options.map(d => {
297
+ return options.map((d) => {
308
298
  return {
309
299
  num: d.num,
310
- option_group_item_id: d.product_option_item_id,
300
+ option_group_item_id: d.option_group_item_id,
311
301
  option_group_id: d.option_group_id
312
302
  };
313
303
  });
314
304
  };
315
-
316
- /**
317
- * 格式化商品套餐信息
318
- * @param bundle 商品套餐信息
319
- * @returns 格式化后的商品套餐信息
320
- */
321
- exports.formatOptionsToOrigin = formatOptionsToOrigin;
322
- const formatBundle = bundle => {
323
- if (!bundle?.length) return [];
324
- return bundle.map(item => {
305
+ var formatBundle = (bundle) => {
306
+ if (!(bundle == null ? void 0 : bundle.length))
307
+ return [];
308
+ return bundle.map((item) => {
325
309
  return {
326
- id: item?.id,
327
- title: item?.title,
328
- num: item?.num,
329
- price: item?.price,
330
- total: item?.price,
331
- price_type: item?.price_type,
332
- original_price: item?.original_price,
333
- original_total: item?.original_total,
334
- price_type_ext: item?.price_type_ext,
335
- bundle_sum_price: item?.bundle_sum_price,
336
- bundle_sum_type: item?.bundle_sum_type,
337
- options: formatOptions(item?.option),
310
+ id: item == null ? void 0 : item.id,
311
+ title: item == null ? void 0 : item.title,
312
+ num: item == null ? void 0 : item.num,
313
+ price: item == null ? void 0 : item.price,
314
+ total: item == null ? void 0 : item.price,
315
+ price_type: item == null ? void 0 : item.price_type,
316
+ original_price: item == null ? void 0 : item.original_price,
317
+ original_total: item == null ? void 0 : item.original_total,
318
+ price_type_ext: item == null ? void 0 : item.price_type_ext,
319
+ bundle_sum_price: item == null ? void 0 : item.bundle_sum_price,
320
+ bundle_sum_type: item == null ? void 0 : item.bundle_sum_type,
321
+ options: formatOptions(item == null ? void 0 : item.option),
338
322
  _bundle_product_id: item._bundle_product_id,
339
323
  discount_list: item.discount_list,
340
324
  originBundleItem: item.originBundleItem || item,
341
- is_charge_tax: item?.is_charge_tax
325
+ is_charge_tax: item == null ? void 0 : item.is_charge_tax
342
326
  };
343
327
  });
344
328
  };
345
- exports.formatBundle = formatBundle;
346
- const formatBundleToOrigin = bundle => {
347
- if (!bundle?.length) return [];
348
- return bundle.map(d => {
349
- const getBundleValueByKey = key => {
350
- return d?.[key] || d?.originBundleItem?.[key];
329
+ var formatBundleToOrigin = (bundle) => {
330
+ if (!(bundle == null ? void 0 : bundle.length))
331
+ return [];
332
+ return bundle.map((d) => {
333
+ const getBundleValueByKey = (key) => {
334
+ var _a;
335
+ return (d == null ? void 0 : d[key]) || ((_a = d == null ? void 0 : d.originBundleItem) == null ? void 0 : _a[key]);
351
336
  };
352
- const product_discount_difference = (d?.discount_list || []).reduce((pre, cur) => {
353
- return pre + (cur?.metadata?.product_discount_difference || 0);
337
+ const product_discount_difference = ((d == null ? void 0 : d.discount_list) || []).reduce((pre, cur) => {
338
+ var _a;
339
+ return pre + (((_a = cur == null ? void 0 : cur.metadata) == null ? void 0 : _a.product_discount_difference) || 0);
354
340
  }, 0);
341
+ const normalizedBundle = {
342
+ ...d,
343
+ // 计算 markdown 净额时只传真实毛价;若仅有 bundle_selling_price,则由 helper 当历史净额兜底。
344
+ price: (d == null ? void 0 : d.price) ?? (d == null ? void 0 : d.custom_price),
345
+ bundle_selling_price: d == null ? void 0 : d.bundle_selling_price,
346
+ price_type: (d == null ? void 0 : d.price_type) ?? (d == null ? void 0 : d.custom_price_type),
347
+ price_type_ext: (d == null ? void 0 : d.price_type_ext) ?? (d == null ? void 0 : d.custom_price_type_ext),
348
+ option: getBundleValueByKey("option")
349
+ };
355
350
  return {
356
- bundle_group_id: getBundleValueByKey('group_id'),
351
+ bundle_group_id: getBundleValueByKey("group_id"),
357
352
  bundle_id: d.id,
358
- bundle_product_id: getBundleValueByKey('_bundle_product_id') || getBundleValueByKey('product_id'),
359
- bundle_variant_id: getBundleValueByKey('bundle_variant_id'),
353
+ bundle_product_id: getBundleValueByKey("_bundle_product_id") || getBundleValueByKey("product_id"),
354
+ bundle_variant_id: getBundleValueByKey("bundle_variant_id"),
360
355
  num: d.num,
361
- extension_id: getBundleValueByKey('extension_id'),
362
- extension_type: getBundleValueByKey('extension_type'),
363
- option: formatOptionsToOrigin(getBundleValueByKey('option')),
356
+ extension_id: getBundleValueByKey("extension_id"),
357
+ extension_type: getBundleValueByKey("extension_type"),
358
+ option: formatOptionsToOrigin(getBundleValueByKey("option")),
364
359
  discount_list: d.discount_list,
365
- "bundle_selling_price": d?.price,
366
- // "custom_price": d?.price,
360
+ "bundle_selling_price": (0, import_utils4.getBundleSellingMagnitude)(normalizedBundle).toFixed(2),
361
+ "custom_price": d == null ? void 0 : d.price,
367
362
  metadata: {
368
363
  custom_product_bundle_map_id: d._id,
369
364
  product_discount_difference
@@ -371,146 +366,103 @@ const formatBundleToOrigin = bundle => {
371
366
  };
372
367
  });
373
368
  };
374
-
375
- /**
376
- * 获取商品定金
377
- * @description 定金基于商品售价来算,最终乘商品数量
378
- * 1、如果套餐主商品有定金规则,则定金为:(套餐商品总售价 * 定金百分比 + 定金固定金额)* 商品数量
379
- * 2、如果套餐主商品没有定金规则,子商品有定金规则,则定金为:(套餐子商品售价 * 套餐子商品定金百分比 + 套餐子商品定金固定金额)* 商品数量,最终将所有子商品定金相加
380
- * 3、普通商品/单规格商品/组合规则商品,定金规则:(商品总售价 * 定金百分比 + 定金固定金额)* 商品数量
381
- * @param params 参数
382
- * @returns 商品定金
383
- */
384
- exports.formatBundleToOrigin = formatBundleToOrigin;
385
- const getProductDeposit = params => {
386
- const {
387
- cartItem,
388
- product,
389
- bundle,
390
- options
391
- } = params;
392
- const num = params?.num || 1;
393
-
394
- // 判定商品是否有定金规则
395
- if (product?.custom_deposit_data?.has_deposit == 1) {
396
- let total = new _decimal.default(0);
369
+ var getProductDeposit = (params) => {
370
+ var _a, _b;
371
+ const { cartItem, product, bundle, options } = params;
372
+ const num = (params == null ? void 0 : params.num) || 1;
373
+ if (((_a = product == null ? void 0 : product.custom_deposit_data) == null ? void 0 : _a.has_deposit) == 1) {
374
+ let total = new import_decimal.default(0);
397
375
  const {
398
376
  deposit_fixed,
399
377
  deposit_percentage,
400
378
  deposit_policy_data,
401
379
  self_deposit_policy_ids
402
- } = product?.custom_deposit_data || {};
403
- // 所有协议数据
380
+ } = (product == null ? void 0 : product.custom_deposit_data) || {};
404
381
  const allProtocols = deposit_policy_data || [];
405
- // 是否存在定金,主商品has_deposit为1,但是自身没有定金设置,需要判定子商品是否存在定金,如果不存在最终判定也是不存在定金
406
382
  let productHasDeposit = false;
407
- // 关联的定金协议id
408
383
  const protocolIds = [];
409
-
410
- // 判断主商品是否有定金规则
411
- if (typeof deposit_fixed === 'string' && typeof deposit_percentage === 'string') {
412
- const {
413
- depositTotal,
414
- result
415
- } = handleProductDeposit({
416
- depositData: product?.custom_deposit_data,
384
+ if (typeof deposit_fixed === "string" && typeof deposit_percentage === "string") {
385
+ const { depositTotal, result } = handleProductDeposit({
386
+ depositData: product == null ? void 0 : product.custom_deposit_data,
417
387
  total: cartItem.total || 0,
418
388
  num
419
389
  });
420
390
  if (result) {
421
391
  total = depositTotal;
422
- protocolIds.push(...(self_deposit_policy_ids || []));
392
+ protocolIds.push(...self_deposit_policy_ids || []);
423
393
  productHasDeposit = true;
424
394
  }
425
395
  } else {
426
- // 组合规格商品
427
- if (product?.product_variant_id) {
428
- const variantProduct = product?.variant?.find(item => item?.id === product?.product_variant_id);
396
+ if (product == null ? void 0 : product.product_variant_id) {
397
+ const variantProduct = (_b = product == null ? void 0 : product.variant) == null ? void 0 : _b.find(
398
+ (item) => (item == null ? void 0 : item.id) === (product == null ? void 0 : product.product_variant_id)
399
+ );
429
400
  if (variantProduct) {
430
- const depositData = variantProduct?.custom_deposit_data;
431
- const {
432
- depositTotal,
433
- result
434
- } = handleProductDeposit({
401
+ const depositData = variantProduct == null ? void 0 : variantProduct.custom_deposit_data;
402
+ const { depositTotal, result } = handleProductDeposit({
435
403
  depositData,
436
- total: cartItem?.total || 0,
404
+ total: (cartItem == null ? void 0 : cartItem.total) || 0,
437
405
  num
438
406
  });
439
407
  if (result) {
440
408
  total = depositTotal;
441
- protocolIds.push(...(depositData?.self_deposit_policy_ids || []));
409
+ protocolIds.push(...(depositData == null ? void 0 : depositData.self_deposit_policy_ids) || []);
442
410
  productHasDeposit = true;
443
411
  }
444
412
  }
445
413
  }
446
- if (bundle?.length) {
414
+ if (bundle == null ? void 0 : bundle.length) {
447
415
  total = bundle.reduce((accumulator, currBundleProduct) => {
448
- const depositData = currBundleProduct?.custom_deposit_data;
449
- const {
450
- depositTotal,
451
- result
452
- } = handleProductDeposit({
416
+ const depositData = currBundleProduct == null ? void 0 : currBundleProduct.custom_deposit_data;
417
+ const { depositTotal, result } = handleProductDeposit({
453
418
  depositData,
454
- total: currBundleProduct?.price,
455
- num: currBundleProduct?.num || 1
419
+ total: currBundleProduct == null ? void 0 : currBundleProduct.price,
420
+ num: (currBundleProduct == null ? void 0 : currBundleProduct.num) || 1
456
421
  });
457
422
  if (result) {
458
- protocolIds.push(...(depositData?.self_deposit_policy_ids || []));
423
+ protocolIds.push(...(depositData == null ? void 0 : depositData.self_deposit_policy_ids) || []);
459
424
  productHasDeposit = true;
460
425
  return accumulator.plus(depositTotal);
461
426
  }
462
427
  return accumulator;
463
- }, new _decimal.default(0));
428
+ }, new import_decimal.default(0));
464
429
  }
465
430
  }
466
431
  if (productHasDeposit) {
467
432
  const ids = new Set(protocolIds);
468
- const protocols = allProtocols.filter(item => ids.has(item.id));
469
- return {
470
- total: total.toNumber(),
471
- protocols
472
- };
433
+ const protocols = allProtocols.filter((item) => ids.has(item.id));
434
+ return { total: total.toNumber(), protocols };
473
435
  }
474
436
  return null;
475
437
  }
476
438
  return null;
477
439
  };
478
-
479
- /**
480
- * 计算商品定金
481
- * @param params 参数
482
- * @returns 商品定金
483
- */
484
- exports.getProductDeposit = getProductDeposit;
485
- const handleProductDeposit = params => {
486
- const {
487
- depositData,
488
- total,
489
- num
490
- } = params;
440
+ var handleProductDeposit = (params) => {
441
+ const { depositData, total, num } = params;
491
442
  if (!depositData) {
492
- return {
493
- result: false,
494
- depositTotal: new _decimal.default(0)
495
- };
443
+ return { result: false, depositTotal: new import_decimal.default(0) };
496
444
  }
497
- const {
498
- deposit_fixed,
499
- deposit_percentage
500
- } = depositData || {};
501
- if (typeof deposit_fixed === 'string' && typeof deposit_percentage === 'string') {
502
- const depositFixed = (0, _decimal.default)(deposit_fixed || 0);
503
- const depositPercent = (0, _decimal.default)(deposit_percentage || 0);
504
- const productTotalPrice = (0, _decimal.default)(total || 0);
445
+ const { deposit_fixed, deposit_percentage } = depositData || {};
446
+ if (typeof deposit_fixed === "string" && typeof deposit_percentage === "string") {
447
+ const depositFixed = (0, import_decimal.default)(deposit_fixed || 0);
448
+ const depositPercent = (0, import_decimal.default)(deposit_percentage || 0);
449
+ const productTotalPrice = (0, import_decimal.default)(total || 0);
505
450
  const deposit = depositFixed.plus(depositPercent.times(productTotalPrice));
506
- return {
507
- depositTotal: deposit.times(num),
508
- result: true
509
- };
451
+ return { depositTotal: deposit.times(num), result: true };
510
452
  }
511
- return {
512
- result: false,
513
- depositTotal: new _decimal.default(0)
514
- };
453
+ return { result: false, depositTotal: new import_decimal.default(0) };
515
454
  };
516
- exports.handleProductDeposit = handleProductDeposit;
455
+ // Annotate the CommonJS export names for ESM import in node:
456
+ 0 && (module.exports = {
457
+ formatBundle,
458
+ formatBundleToOrigin,
459
+ formatOptions,
460
+ formatOptionsToOrigin,
461
+ formatProductToCartItem,
462
+ formatProductToCartItemOrigin,
463
+ getProductDeposit,
464
+ getProductOriginTotalPrice,
465
+ getProductTotalPrice,
466
+ handleProductDeposit,
467
+ handleVariantProduct
468
+ });