@pisell/pisellos 0.10.14 → 0.10.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (301) hide show
  1. package/dist/core/index.js +6 -9
  2. package/dist/model/strategy/adapter/walletPass/example.js +3 -26
  3. package/dist/model/strategy/strategy-example.js +5 -19
  4. package/dist/modules/Cart/index.js +0 -3
  5. package/dist/modules/Cart/utils/cartProduct.js +0 -1
  6. package/dist/modules/Date/index.js +1 -5
  7. package/dist/modules/Discount/index.js +2 -4
  8. package/dist/modules/OpenData/index.js +0 -2
  9. package/dist/modules/Order/index.d.ts +1 -1
  10. package/dist/modules/Order/index.js +75 -91
  11. package/dist/modules/Order/types.d.ts +5 -1
  12. package/dist/modules/Order/utils/virtualSettlement.d.ts +8 -1
  13. package/dist/modules/Order/utils/virtualSettlement.js +15 -2
  14. package/dist/modules/Order/utils.js +7 -1
  15. package/dist/modules/Payment/index.js +97 -162
  16. package/dist/modules/Product/types.d.ts +2 -0
  17. package/dist/modules/Rules/index.js +1 -4
  18. package/dist/modules/Schedule/index.js +0 -1
  19. package/dist/modules/Schedule/utils.js +0 -1
  20. package/dist/modules/Step/index.js +0 -1
  21. package/dist/plugins/request.js +1 -4
  22. package/dist/plugins/window.js +2 -6
  23. package/dist/server/index.js +97 -129
  24. package/dist/server/modules/menu/index.js +32 -41
  25. package/dist/server/modules/order/index.js +2 -4
  26. package/dist/server/modules/products/index.js +24 -42
  27. package/dist/server/modules/quotation/index.js +29 -38
  28. package/dist/server/modules/resource/index.js +3 -4
  29. package/dist/server/modules/schedule/index.js +27 -35
  30. package/dist/server/utils/product.js +0 -1
  31. package/dist/solution/BaseSales/index.js +107 -76
  32. package/dist/solution/BaseSales/types.d.ts +2 -0
  33. package/dist/solution/BaseSales/utils/cartPromotion.d.ts +5 -0
  34. package/dist/solution/BaseSales/utils/cartPromotion.js +15 -6
  35. package/dist/solution/BaseSales/utils/transformBaseProductToOrderProduct.d.ts +3 -0
  36. package/dist/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +7 -1
  37. package/dist/solution/BaseSales/utils.js +6 -3
  38. package/dist/solution/BookingByStep/index.d.ts +2 -2
  39. package/dist/solution/BookingByStep/index.js +7 -59
  40. package/dist/solution/BookingByStep/utils/capacity.js +1 -11
  41. package/dist/solution/BookingByStep/utils/resources.js +1 -3
  42. package/dist/solution/BookingByStep/utils/timeslots.js +2 -43
  43. package/dist/solution/BookingTicket/index.js +8 -4
  44. package/dist/solution/BookingTicket/utils/addProductDecision.js +3 -1
  45. package/dist/solution/BookingTicket/utils/scan/cloudSearch.js +6 -7
  46. package/dist/solution/BookingTicket/utils/scan/handleScan.js +25 -31
  47. package/dist/solution/BookingTicket/utils/scan/index.js +6 -10
  48. package/dist/solution/BuyTickets/index.js +9 -12
  49. package/dist/solution/Checkout/index.js +177 -252
  50. package/dist/solution/Checkout/utils/index.js +4 -16
  51. package/dist/solution/RegisterAndLogin/index.js +30 -76
  52. package/dist/solution/ScanOrder/index.js +50 -60
  53. package/dist/solution/ScanOrder/types.d.ts +2 -0
  54. package/dist/solution/ScanOrder/utils.js +6 -3
  55. package/dist/solution/ShopDiscount/index.js +2 -7
  56. package/dist/solution/VenueBooking/index.js +45 -55
  57. package/dist/utils/task.js +15 -18
  58. package/dist/utils/watch.js +0 -1
  59. package/lib/apis/picoding.js +2 -0
  60. package/lib/core/index.js +131 -131
  61. package/lib/effects/index.js +46 -57
  62. package/lib/index.js +82 -49
  63. package/lib/model/index.js +14 -21
  64. package/lib/model/strategy/adapter/dataVariant/adapter.js +38 -50
  65. package/lib/model/strategy/adapter/dataVariant/evaluator.js +209 -315
  66. package/lib/model/strategy/adapter/dataVariant/examples.js +229 -237
  67. package/lib/model/strategy/adapter/dataVariant/index.js +39 -34
  68. package/lib/model/strategy/adapter/dataVariant/type.js +57 -28
  69. package/lib/model/strategy/adapter/index.js +100 -64
  70. package/lib/model/strategy/adapter/itemRule/adapter.js +156 -144
  71. package/lib/model/strategy/adapter/itemRule/evaluator.js +36 -48
  72. package/lib/model/strategy/adapter/itemRule/examples.js +295 -225
  73. package/lib/model/strategy/adapter/itemRule/index.js +83 -57
  74. package/lib/model/strategy/adapter/itemRule/type.js +97 -36
  75. package/lib/model/strategy/adapter/promotion/adapter.js +91 -69
  76. package/lib/model/strategy/adapter/promotion/evaluator.js +444 -310
  77. package/lib/model/strategy/adapter/promotion/examples.js +222 -234
  78. package/lib/model/strategy/adapter/promotion/index.js +43 -48
  79. package/lib/model/strategy/adapter/promotion/type.js +243 -36
  80. package/lib/model/strategy/adapter/type.js +4 -16
  81. package/lib/model/strategy/adapter/walletPass/evaluator.js +180 -150
  82. package/lib/model/strategy/adapter/walletPass/example.js +217 -190
  83. package/lib/model/strategy/adapter/walletPass/index.js +75 -51
  84. package/lib/model/strategy/adapter/walletPass/locales.js +36 -58
  85. package/lib/model/strategy/adapter/walletPass/type.js +4 -16
  86. package/lib/model/strategy/adapter/walletPass/utils.js +588 -378
  87. package/lib/model/strategy/engine.js +270 -168
  88. package/lib/model/strategy/index.js +49 -34
  89. package/lib/model/strategy/strategy-example.js +243 -239
  90. package/lib/model/strategy/type.js +100 -40
  91. package/lib/modules/Account/index.js +39 -53
  92. package/lib/modules/Account/types.js +20 -33
  93. package/lib/modules/AccountList/index.js +116 -154
  94. package/lib/modules/AccountList/types.js +30 -31
  95. package/lib/modules/AccountList/utils.js +18 -30
  96. package/lib/modules/BaseModule.js +23 -42
  97. package/lib/modules/BookingContext/index.js +158 -136
  98. package/lib/modules/BookingContext/types.js +46 -32
  99. package/lib/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +138 -146
  100. package/lib/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.js +78 -83
  101. package/lib/modules/BookingContext/utils/cacheItemToBookingInput.js +170 -150
  102. package/lib/modules/BookingContext/utils/flexible.js +38 -55
  103. package/lib/modules/BookingContext/utils/formatResourceList.js +19 -34
  104. package/lib/modules/BookingContext/utils/index.js +124 -41
  105. package/lib/modules/BookingContext/utils/noResource.js +58 -70
  106. package/lib/modules/BookingContext/utils/orderLineDisplay.js +14 -41
  107. package/lib/modules/BookingContext/utils/productExtend.js +202 -155
  108. package/lib/modules/BookingContext/utils/resourceErrors.js +53 -53
  109. package/lib/modules/BookingContext/utils/resourceSelection.js +19 -41
  110. package/lib/modules/BookingContext/utils/resources.js +209 -167
  111. package/lib/modules/BookingContext/utils/serviceTimes.js +115 -116
  112. package/lib/modules/BookingContext/utils/timeSlices.js +76 -86
  113. package/lib/modules/Cart/index.js +170 -124
  114. package/lib/modules/Cart/types.js +46 -51
  115. package/lib/modules/Cart/utils/cartAccount.js +40 -39
  116. package/lib/modules/Cart/utils/cartDate.js +56 -61
  117. package/lib/modules/Cart/utils/cartDiscount.js +28 -33
  118. package/lib/modules/Cart/utils/cartNote.js +27 -32
  119. package/lib/modules/Cart/utils/cartProduct.js +321 -251
  120. package/lib/modules/Cart/utils/cartRelationForms.js +29 -35
  121. package/lib/modules/Cart/utils/cartResource.js +70 -78
  122. package/lib/modules/Cart/utils/changePrice.js +22 -50
  123. package/lib/modules/Cart/utils/index.js +106 -48
  124. package/lib/modules/Customer/constants.js +13 -34
  125. package/lib/modules/Customer/index.js +235 -172
  126. package/lib/modules/Customer/types.js +38 -35
  127. package/lib/modules/Date/index.js +116 -115
  128. package/lib/modules/Date/types.js +16 -28
  129. package/lib/modules/Date/utils.js +174 -123
  130. package/lib/modules/Discount/index.js +133 -143
  131. package/lib/modules/Discount/types.js +9 -31
  132. package/lib/modules/Guests/index.js +30 -56
  133. package/lib/modules/Guests/types.js +23 -33
  134. package/lib/modules/Holder/index.js +209 -189
  135. package/lib/modules/Holder/types.js +4 -16
  136. package/lib/modules/Holder/utils.js +20 -49
  137. package/lib/modules/OpenData/index.js +70 -76
  138. package/lib/modules/OpenData/types.js +4 -16
  139. package/lib/modules/OpenData/utils.js +44 -78
  140. package/lib/modules/Order/index.d.ts +1 -1
  141. package/lib/modules/Order/index.js +1810 -2238
  142. package/lib/modules/Order/payment-utils.js +77 -120
  143. package/lib/modules/Order/types.d.ts +5 -1
  144. package/lib/modules/Order/types.js +87 -35
  145. package/lib/modules/Order/utils/bundleDiscountHydration.js +41 -74
  146. package/lib/modules/Order/utils/discountProductLineIdentity.js +142 -100
  147. package/lib/modules/Order/utils/manualProductDiscount.js +124 -123
  148. package/lib/modules/Order/utils/orderCollectionIdentity.js +184 -244
  149. package/lib/modules/Order/utils/virtualSettlement.d.ts +8 -1
  150. package/lib/modules/Order/utils/virtualSettlement.js +126 -164
  151. package/lib/modules/Order/utils.js +834 -668
  152. package/lib/modules/Payment/cash.js +20 -33
  153. package/lib/modules/Payment/cashRecommendationAlgorithm.js +145 -76
  154. package/lib/modules/Payment/eftpos.js +16 -30
  155. package/lib/modules/Payment/index.js +532 -399
  156. package/lib/modules/Payment/mx51.js +1 -0
  157. package/lib/modules/Payment/types.js +230 -108
  158. package/lib/modules/Payment/utils.js +52 -51
  159. package/lib/modules/Payment/walletpass.js +485 -660
  160. package/lib/modules/Product/index.js +51 -46
  161. package/lib/modules/Product/types.d.ts +2 -0
  162. package/lib/modules/Product/types.js +4 -16
  163. package/lib/modules/Product/utils.js +32 -33
  164. package/lib/modules/ProductList/index.js +138 -161
  165. package/lib/modules/ProductList/types.js +9 -31
  166. package/lib/modules/Quotation/index.js +66 -100
  167. package/lib/modules/Quotation/types.js +4 -16
  168. package/lib/modules/Resource/index.js +27 -59
  169. package/lib/modules/Resource/types.js +22 -32
  170. package/lib/modules/Resource/utils.js +30 -38
  171. package/lib/modules/ResourcePlanner/index.js +25 -23
  172. package/lib/modules/ResourcePlanner/localClock.js +54 -119
  173. package/lib/modules/ResourcePlanner/planner.js +591 -772
  174. package/lib/modules/ResourcePlanner/types.js +10 -29
  175. package/lib/modules/Rules/index.js +1218 -959
  176. package/lib/modules/Rules/types.js +17 -40
  177. package/lib/modules/SalesSummary/index.js +78 -89
  178. package/lib/modules/SalesSummary/types.js +4 -16
  179. package/lib/modules/SalesSummary/utils.js +359 -442
  180. package/lib/modules/ScanOrderLogger/index.js +59 -79
  181. package/lib/modules/ScanOrderLogger/providers/feishu.js +54 -78
  182. package/lib/modules/ScanOrderLogger/providers/grafana.js +13 -36
  183. package/lib/modules/ScanOrderLogger/types.js +4 -16
  184. package/lib/modules/Schedule/getDateIsInSchedule.js +334 -163
  185. package/lib/modules/Schedule/index.js +100 -114
  186. package/lib/modules/Schedule/type.js +4 -16
  187. package/lib/modules/Schedule/types.js +4 -16
  188. package/lib/modules/Schedule/utils.js +433 -291
  189. package/lib/modules/Step/index.js +40 -52
  190. package/lib/modules/Step/tyeps.js +4 -16
  191. package/lib/modules/Summary/index.js +66 -71
  192. package/lib/modules/Summary/types.js +4 -16
  193. package/lib/modules/Summary/utils.js +773 -418
  194. package/lib/modules/SurchargeList/index.js +46 -60
  195. package/lib/modules/SurchargeList/types.js +4 -16
  196. package/lib/modules/index.js +245 -63
  197. package/lib/plugins/app.js +4 -16
  198. package/lib/plugins/index.js +36 -25
  199. package/lib/plugins/request.js +137 -126
  200. package/lib/plugins/shopStore.js +4 -16
  201. package/lib/plugins/user.js +4 -16
  202. package/lib/plugins/window.js +171 -179
  203. package/lib/server/index.js +3027 -2655
  204. package/lib/server/modules/floor-plan/index.js +102 -123
  205. package/lib/server/modules/floor-plan/types.js +15 -30
  206. package/lib/server/modules/index.js +106 -68
  207. package/lib/server/modules/menu/index.js +146 -122
  208. package/lib/server/modules/menu/types.js +18 -31
  209. package/lib/server/modules/order/index.js +758 -956
  210. package/lib/server/modules/order/types.js +122 -33
  211. package/lib/server/modules/order/utils/filterBookings.js +219 -194
  212. package/lib/server/modules/order/utils/filterOrders.js +118 -92
  213. package/lib/server/modules/payment/index.js +59 -83
  214. package/lib/server/modules/payment/types.js +4 -16
  215. package/lib/server/modules/products/index.js +575 -459
  216. package/lib/server/modules/products/types.js +44 -34
  217. package/lib/server/modules/quotation/index.js +137 -172
  218. package/lib/server/modules/quotation/types.js +21 -31
  219. package/lib/server/modules/resource/index.js +213 -184
  220. package/lib/server/modules/resource/types.js +42 -33
  221. package/lib/server/modules/schedule/index.js +135 -123
  222. package/lib/server/modules/schedule/types.js +14 -21
  223. package/lib/server/modules/schedule/utils.js +334 -163
  224. package/lib/server/types.js +4 -16
  225. package/lib/server/utils/index.js +25 -23
  226. package/lib/server/utils/product.js +196 -139
  227. package/lib/server/utils/schedule.js +34 -41
  228. package/lib/server/utils/small-ticket.js +479 -456
  229. package/lib/server/utils/time.js +40 -49
  230. package/lib/solution/BaseSales/index.js +1276 -1485
  231. package/lib/solution/BaseSales/types.d.ts +2 -0
  232. package/lib/solution/BaseSales/types.js +42 -38
  233. package/lib/solution/BaseSales/utils/cartPromotion.d.ts +5 -0
  234. package/lib/solution/BaseSales/utils/cartPromotion.js +652 -498
  235. package/lib/solution/BaseSales/utils/parseSalesResponse.js +85 -105
  236. package/lib/solution/BaseSales/utils/quotationPrice.js +56 -114
  237. package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.d.ts +3 -0
  238. package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +138 -180
  239. package/lib/solution/BaseSales/utils.js +161 -143
  240. package/lib/solution/BookingByStep/index.d.ts +2 -2
  241. package/lib/solution/BookingByStep/index.js +1527 -1340
  242. package/lib/solution/BookingByStep/types.js +40 -99
  243. package/lib/solution/BookingByStep/utils/capacity.js +192 -160
  244. package/lib/solution/BookingByStep/utils/products.js +42 -52
  245. package/lib/solution/BookingByStep/utils/resources.js +527 -330
  246. package/lib/solution/BookingByStep/utils/stock.js +65 -44
  247. package/lib/solution/BookingByStep/utils/timeslots.js +129 -131
  248. package/lib/solution/BookingTicket/index.js +598 -514
  249. package/lib/solution/BookingTicket/types.js +99 -77
  250. package/lib/solution/BookingTicket/utils/addProductDecision.js +229 -190
  251. package/lib/solution/BookingTicket/utils/addTimeAvailability.js +58 -89
  252. package/lib/solution/BookingTicket/utils/bookingStatus.js +107 -78
  253. package/lib/solution/BookingTicket/utils/cartView.js +114 -99
  254. package/lib/solution/BookingTicket/utils/exampleData.js +185 -0
  255. package/lib/solution/BookingTicket/utils/orderCustomer.js +18 -41
  256. package/lib/solution/BookingTicket/utils/resolveBestAddTimePlan.js +219 -86
  257. package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.js +168 -116
  258. package/lib/solution/BookingTicket/utils/scan/cloudSearch.js +79 -91
  259. package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.js +54 -41
  260. package/lib/solution/BookingTicket/utils/scan/handleScan.js +84 -81
  261. package/lib/solution/BookingTicket/utils/scan/index.js +98 -104
  262. package/lib/solution/BookingTicket/utils/scan/scanCache.js +90 -43
  263. package/lib/solution/BookingTicket/utils/scan/scanProductValues.js +52 -64
  264. package/lib/solution/BookingTicket/utils/sessionCatalogStale.js +56 -58
  265. package/lib/solution/BookingTicket/utils/weighingProductSku.js +34 -48
  266. package/lib/solution/BuyTickets/index.js +67 -70
  267. package/lib/solution/BuyTickets/types.js +22 -38
  268. package/lib/solution/Checkout/index.js +1451 -1158
  269. package/lib/solution/Checkout/types.js +91 -61
  270. package/lib/solution/Checkout/utils/index.js +228 -156
  271. package/lib/solution/PlaceOrder/index.js +55 -0
  272. package/lib/solution/RegisterAndLogin/config.js +493 -460
  273. package/lib/solution/RegisterAndLogin/index.js +633 -630
  274. package/lib/solution/RegisterAndLogin/types.js +189 -76
  275. package/lib/solution/RegisterAndLogin/utils.js +183 -125
  276. package/lib/solution/Sales/index.js +328 -324
  277. package/lib/solution/Sales/types.js +27 -33
  278. package/lib/solution/ScanOrder/index.js +822 -852
  279. package/lib/solution/ScanOrder/types.d.ts +2 -0
  280. package/lib/solution/ScanOrder/types.js +33 -34
  281. package/lib/solution/ScanOrder/utils.js +412 -374
  282. package/lib/solution/ShopDiscount/index.js +226 -232
  283. package/lib/solution/ShopDiscount/types.js +15 -37
  284. package/lib/solution/ShopDiscount/utils.js +300 -172
  285. package/lib/solution/UnifiedBookingSales/index.js +1052 -1213
  286. package/lib/solution/UnifiedBookingSales/remoteOccupancyCache.js +99 -159
  287. package/lib/solution/UnifiedBookingSales/types.js +10 -32
  288. package/lib/solution/VenueBooking/index.js +811 -879
  289. package/lib/solution/VenueBooking/types.js +19 -39
  290. package/lib/solution/VenueBooking/utils/dateSummary.js +27 -56
  291. package/lib/solution/VenueBooking/utils/resource.js +31 -54
  292. package/lib/solution/VenueBooking/utils/slotMerge.js +94 -107
  293. package/lib/solution/VenueBooking/utils/timeSlot.js +132 -132
  294. package/lib/solution/VenueBooking/utils.js +130 -67
  295. package/lib/solution/index.js +124 -41
  296. package/lib/store/createStore.js +32 -29
  297. package/lib/types/index.js +4 -16
  298. package/lib/utils/payment-number.js +26 -46
  299. package/lib/utils/task.js +36 -36
  300. package/lib/utils/watch.js +81 -47
  301. package/package.json +2 -1
@@ -1,43 +1,31 @@
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/BookingContext/utils/flexible.ts
20
- var flexible_exports = {};
21
- __export(flexible_exports, {
22
- flexibleObj: () => flexibleObj,
23
- getDurationValue: () => getDurationValue,
24
- isProductFlexibleDuration: () => isProductFlexibleDuration
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
25
5
  });
26
- module.exports = __toCommonJS(flexible_exports);
27
- var PREFIX = "flexible_";
28
- var flexibleObj = {
6
+ exports.flexibleObj = void 0;
7
+ exports.getDurationValue = getDurationValue;
8
+ exports.isProductFlexibleDuration = isProductFlexibleDuration;
9
+ /**
10
+ * 灵活时长(flexible duration)协议工具。
11
+ *
12
+ * info2 用 `flexible_<minutes>` 字符串前缀标记"灵活时长",对外用同名 API 暴露 create / getValue / isFlexible / add。
13
+ * OS 这边一比一搬运,无外部依赖。
14
+ */
15
+
16
+ const PREFIX = 'flexible_';
17
+ const flexibleObj = exports.flexibleObj = {
29
18
  create(num) {
30
19
  return `${PREFIX}${num}`;
31
20
  },
32
21
  getValue(str) {
33
- if (typeof str === "string" && flexibleObj.isFlexible(str)) {
34
- return Number(str.replace(PREFIX, ""));
22
+ if (typeof str === 'string' && flexibleObj.isFlexible(str)) {
23
+ return Number(str.replace(PREFIX, ''));
35
24
  }
36
25
  return Number(str);
37
26
  },
38
27
  isFlexible(str) {
39
- if (typeof str !== "string")
40
- return false;
28
+ if (typeof str !== 'string') return false;
41
29
  return str.indexOf(PREFIX) > -1;
42
30
  },
43
31
  add(current, duration) {
@@ -47,34 +35,29 @@ var flexibleObj = {
47
35
  return Number(current) + duration;
48
36
  }
49
37
  };
38
+
39
+ /**
40
+ * 取 duration 数值(兼容 number / { type, value } / 灵活时长字符串)。
41
+ * 与 info2 `getDuration` 行为等价。
42
+ */
43
+ /**
44
+ * 商品定义是否为「灵活时长」类型(仅看 product.duration 对象,不把 flexible_423 字符串当类型)。
45
+ * 与 info2 `getDuration({ type: 'flexible' }) === 'flexible'` 判定对齐。
46
+ */
50
47
  function isProductFlexibleDuration(duration) {
51
- return Boolean(
52
- duration && typeof duration === "object" && duration.type === "flexible"
53
- );
48
+ return Boolean(duration && typeof duration === 'object' && duration.type === 'flexible');
54
49
  }
55
50
  function getDurationValue(duration) {
56
- if (duration === void 0 || duration === null)
57
- return void 0;
58
- if (typeof duration === "number")
59
- return duration;
60
- if (typeof duration === "string") {
61
- if (flexibleObj.isFlexible(duration))
62
- return "flexible";
51
+ if (duration === undefined || duration === null) return undefined;
52
+ if (typeof duration === 'number') return duration;
53
+ if (typeof duration === 'string') {
54
+ if (flexibleObj.isFlexible(duration)) return 'flexible';
63
55
  return Number(duration);
64
56
  }
65
- if (typeof duration === "object") {
66
- if (duration.type === "minutes")
67
- return duration.value;
68
- if (duration.type === "flexible")
69
- return "flexible";
70
- if (duration.type === "days")
71
- return duration.value;
57
+ if (typeof duration === 'object') {
58
+ if (duration.type === 'minutes') return duration.value;
59
+ if (duration.type === 'flexible') return 'flexible';
60
+ if (duration.type === 'days') return duration.value;
72
61
  }
73
- return void 0;
74
- }
75
- // Annotate the CommonJS export names for ESM import in node:
76
- 0 && (module.exports = {
77
- flexibleObj,
78
- getDurationValue,
79
- isProductFlexibleDuration
80
- });
62
+ return undefined;
63
+ }
@@ -1,50 +1,35 @@
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/BookingContext/utils/formatResourceList.ts
20
- var formatResourceList_exports = {};
21
- __export(formatResourceList_exports, {
22
- formatResourceListAndMap: () => formatResourceListAndMap
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
23
5
  });
24
- module.exports = __toCommonJS(formatResourceList_exports);
25
- var import_noResource = require("./noResource");
6
+ exports.formatResourceListAndMap = formatResourceListAndMap;
7
+ var _noResource = require("./noResource");
8
+ /**
9
+ * 将 `/schedule/resource/list` 原始数组格式化为 `list + listMap`。
10
+ * 逻辑与 info2 [`getFormatResourceListAndMap`] 对齐:追加无资源占位行、按 id 建 map。
11
+ */
26
12
  function formatResourceListAndMap(data, _bookingIds = []) {
27
- const resourceList = (Array.isArray(data) ? data : []).concat([(0, import_noResource.getNoResource2)({})]);
13
+ const resourceList = (Array.isArray(data) ? data : []).concat([(0, _noResource.getNoResource2)({})]);
28
14
  const map = resourceList.reduce((prev, item) => {
29
- if ((item == null ? void 0 : item.id) !== void 0 && (item == null ? void 0 : item.id) !== null) {
15
+ if (item?.id !== undefined && item?.id !== null) {
30
16
  prev[String(item.id)] = item;
31
17
  }
32
18
  return prev;
33
19
  }, {});
34
- const getCapacity = (item) => item.capacity;
35
- const list = resourceList.map((item) => {
20
+ const getCapacity = item => item.capacity;
21
+ const list = resourceList.map(item => {
36
22
  const newItem = {
37
23
  ...item,
38
24
  capacity: getCapacity(item)
39
25
  };
40
- if (newItem.id !== void 0 && newItem.id !== null) {
26
+ if (newItem.id !== undefined && newItem.id !== null) {
41
27
  map[String(newItem.id)] = newItem;
42
28
  }
43
29
  return newItem;
44
30
  });
45
- return { list, listMap: map };
46
- }
47
- // Annotate the CommonJS export names for ESM import in node:
48
- 0 && (module.exports = {
49
- formatResourceListAndMap
50
- });
31
+ return {
32
+ list,
33
+ listMap: map
34
+ };
35
+ }
@@ -1,43 +1,126 @@
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/BookingContext/utils/index.ts
17
- var utils_exports = {};
18
- module.exports = __toCommonJS(utils_exports);
19
- __reExport(utils_exports, require("./flexible"), module.exports);
20
- __reExport(utils_exports, require("./serviceTimes"), module.exports);
21
- __reExport(utils_exports, require("./timeSlices"), module.exports);
22
- __reExport(utils_exports, require("./noResource"), module.exports);
23
- __reExport(utils_exports, require("./resources"), module.exports);
24
- __reExport(utils_exports, require("./resourceSelection"), module.exports);
25
- __reExport(utils_exports, require("./resourceErrors"), module.exports);
26
- __reExport(utils_exports, require("./productExtend"), module.exports);
27
- __reExport(utils_exports, require("./cacheItemToBookingInput"), module.exports);
28
- __reExport(utils_exports, require("./buildCacheItemFromOrderLine"), module.exports);
29
- __reExport(utils_exports, require("./buildNormalProductCacheItemFromOrderLine"), module.exports);
30
- // Annotate the CommonJS export names for ESM import in node:
31
- 0 && (module.exports = {
32
- ...require("./flexible"),
33
- ...require("./serviceTimes"),
34
- ...require("./timeSlices"),
35
- ...require("./noResource"),
36
- ...require("./resources"),
37
- ...require("./resourceSelection"),
38
- ...require("./resourceErrors"),
39
- ...require("./productExtend"),
40
- ...require("./cacheItemToBookingInput"),
41
- ...require("./buildCacheItemFromOrderLine"),
42
- ...require("./buildNormalProductCacheItemFromOrderLine")
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
43
5
  });
6
+ var _flexible = require("./flexible");
7
+ Object.keys(_flexible).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _flexible[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _flexible[key];
14
+ }
15
+ });
16
+ });
17
+ var _serviceTimes = require("./serviceTimes");
18
+ Object.keys(_serviceTimes).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _serviceTimes[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _serviceTimes[key];
25
+ }
26
+ });
27
+ });
28
+ var _timeSlices = require("./timeSlices");
29
+ Object.keys(_timeSlices).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _timeSlices[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function () {
35
+ return _timeSlices[key];
36
+ }
37
+ });
38
+ });
39
+ var _noResource = require("./noResource");
40
+ Object.keys(_noResource).forEach(function (key) {
41
+ if (key === "default" || key === "__esModule") return;
42
+ if (key in exports && exports[key] === _noResource[key]) return;
43
+ Object.defineProperty(exports, key, {
44
+ enumerable: true,
45
+ get: function () {
46
+ return _noResource[key];
47
+ }
48
+ });
49
+ });
50
+ var _resources = require("./resources");
51
+ Object.keys(_resources).forEach(function (key) {
52
+ if (key === "default" || key === "__esModule") return;
53
+ if (key in exports && exports[key] === _resources[key]) return;
54
+ Object.defineProperty(exports, key, {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _resources[key];
58
+ }
59
+ });
60
+ });
61
+ var _resourceSelection = require("./resourceSelection");
62
+ Object.keys(_resourceSelection).forEach(function (key) {
63
+ if (key === "default" || key === "__esModule") return;
64
+ if (key in exports && exports[key] === _resourceSelection[key]) return;
65
+ Object.defineProperty(exports, key, {
66
+ enumerable: true,
67
+ get: function () {
68
+ return _resourceSelection[key];
69
+ }
70
+ });
71
+ });
72
+ var _resourceErrors = require("./resourceErrors");
73
+ Object.keys(_resourceErrors).forEach(function (key) {
74
+ if (key === "default" || key === "__esModule") return;
75
+ if (key in exports && exports[key] === _resourceErrors[key]) return;
76
+ Object.defineProperty(exports, key, {
77
+ enumerable: true,
78
+ get: function () {
79
+ return _resourceErrors[key];
80
+ }
81
+ });
82
+ });
83
+ var _productExtend = require("./productExtend");
84
+ Object.keys(_productExtend).forEach(function (key) {
85
+ if (key === "default" || key === "__esModule") return;
86
+ if (key in exports && exports[key] === _productExtend[key]) return;
87
+ Object.defineProperty(exports, key, {
88
+ enumerable: true,
89
+ get: function () {
90
+ return _productExtend[key];
91
+ }
92
+ });
93
+ });
94
+ var _cacheItemToBookingInput = require("./cacheItemToBookingInput");
95
+ Object.keys(_cacheItemToBookingInput).forEach(function (key) {
96
+ if (key === "default" || key === "__esModule") return;
97
+ if (key in exports && exports[key] === _cacheItemToBookingInput[key]) return;
98
+ Object.defineProperty(exports, key, {
99
+ enumerable: true,
100
+ get: function () {
101
+ return _cacheItemToBookingInput[key];
102
+ }
103
+ });
104
+ });
105
+ var _buildCacheItemFromOrderLine = require("./buildCacheItemFromOrderLine");
106
+ Object.keys(_buildCacheItemFromOrderLine).forEach(function (key) {
107
+ if (key === "default" || key === "__esModule") return;
108
+ if (key in exports && exports[key] === _buildCacheItemFromOrderLine[key]) return;
109
+ Object.defineProperty(exports, key, {
110
+ enumerable: true,
111
+ get: function () {
112
+ return _buildCacheItemFromOrderLine[key];
113
+ }
114
+ });
115
+ });
116
+ var _buildNormalProductCacheItemFromOrderLine = require("./buildNormalProductCacheItemFromOrderLine");
117
+ Object.keys(_buildNormalProductCacheItemFromOrderLine).forEach(function (key) {
118
+ if (key === "default" || key === "__esModule") return;
119
+ if (key in exports && exports[key] === _buildNormalProductCacheItemFromOrderLine[key]) return;
120
+ Object.defineProperty(exports, key, {
121
+ enumerable: true,
122
+ get: function () {
123
+ return _buildNormalProductCacheItemFromOrderLine[key];
124
+ }
125
+ });
126
+ });
@@ -1,90 +1,78 @@
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/BookingContext/utils/noResource.ts
20
- var noResource_exports = {};
21
- __export(noResource_exports, {
22
- getNoResource2: () => getNoResource2
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
23
5
  });
24
- module.exports = __toCommonJS(noResource_exports);
6
+ exports.getNoResource2 = getNoResource2;
7
+ /**
8
+ * 「无资源」占位资源行的数据骨架。
9
+ *
10
+ * 与 info2 [`booking/mock.ts#getNoResource2`] 一比一对齐,区别仅在于:
11
+ * - `main_field / room_name / labelText` 三个 i18n 文案字段在 OS 这边**置空**,
12
+ * 调用方(UI)在 `id === 0` 时自行渲染本地化的「无资源 / No resource」。
13
+ *
14
+ * 用途:`getResourceByIds` 在拼装 `optional_resource` 列表时,会在末尾 concat 一行此占位,
15
+ * 让用户能选择「不指定资源」。
16
+ */
25
17
  function getNoResource2(other) {
26
18
  return {
27
19
  form_tag: null,
28
20
  policy: 148,
29
- partyroom_package: { type: "product_all" },
30
- sort: "2",
31
- status: "active",
32
- description: "",
33
- media: "",
34
- main_field: "",
35
- subtitle: "",
36
- room_name: "",
37
- labelText: "",
21
+ partyroom_package: {
22
+ type: 'product_all'
23
+ },
24
+ sort: '2',
25
+ status: 'active',
26
+ description: '',
27
+ media: '',
28
+ main_field: '',
29
+ subtitle: '',
30
+ room_name: '',
31
+ labelText: '',
38
32
  form_record_id: 0,
39
- item_type: "resources",
33
+ item_type: 'resources',
40
34
  form_id: 0,
41
35
  id: 0,
42
36
  form_resource_sort: 0,
43
- form_title: "",
37
+ form_title: '',
44
38
  capacity: 999999,
45
39
  form: {
46
40
  id: 0,
47
41
  shop_id: 0,
48
- title: "",
42
+ title: '',
49
43
  navigation_display: 1,
50
- button: "",
51
- describe: "",
52
- status: "published",
44
+ button: '',
45
+ describe: '',
46
+ status: 'published',
53
47
  resource_sort: 0,
54
- code: "resources",
55
- type: "manual",
48
+ code: 'resources',
49
+ type: 'manual',
56
50
  version: 1,
57
51
  setting: null,
58
- created_at: "2000-01-01 00:00:00",
59
- updated_at: "2000-01-01 00:00:00"
52
+ created_at: '2000-01-01 00:00:00',
53
+ updated_at: '2000-01-01 00:00:00'
60
54
  },
61
- times: [
62
- {
63
- keys: "noResource2-placeholder",
64
- schedule_id: 0,
65
- item_type: "resources",
66
- item_id: 0,
67
- start_date: "2000-01-01",
68
- end_date: "2300-01-01",
69
- start_time: "00:00",
70
- end_time: "23:59",
71
- is_all: 1,
72
- max_participants_type: "custom-limit",
73
- max_participants_limit: 0,
74
- relation_type: "form",
75
- start_at: "2000-01-01 00:00",
76
- end_at: "2300-01-05 23:59",
77
- is_blocked: 0,
78
- blocked_times: [],
79
- order_event_count: 0,
80
- unique: "noResource2-unique",
81
- event_list: []
82
- }
83
- ],
84
- ...other || {}
55
+ times: [{
56
+ keys: 'noResource2-placeholder',
57
+ schedule_id: 0,
58
+ item_type: 'resources',
59
+ item_id: 0,
60
+ start_date: '2000-01-01',
61
+ end_date: '2300-01-01',
62
+ start_time: '00:00',
63
+ end_time: '23:59',
64
+ is_all: 1,
65
+ max_participants_type: 'custom-limit',
66
+ max_participants_limit: 0,
67
+ relation_type: 'form',
68
+ start_at: '2000-01-01 00:00',
69
+ end_at: '2300-01-05 23:59',
70
+ is_blocked: 0,
71
+ blocked_times: [],
72
+ order_event_count: 0,
73
+ unique: 'noResource2-unique',
74
+ event_list: []
75
+ }],
76
+ ...(other || {})
85
77
  };
86
- }
87
- // Annotate the CommonJS export names for ESM import in node:
88
- 0 && (module.exports = {
89
- getNoResource2
90
- });
78
+ }
@@ -1,56 +1,29 @@
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/BookingContext/utils/orderLineDisplay.ts
20
- var orderLineDisplay_exports = {};
21
- __export(orderLineDisplay_exports, {
22
- buildProductOptionStringFromOrderLine: () => buildProductOptionStringFromOrderLine
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
23
5
  });
24
- module.exports = __toCommonJS(orderLineDisplay_exports);
6
+ exports.buildProductOptionStringFromOrderLine = buildProductOptionStringFromOrderLine;
25
7
  function pickDisplayText(value) {
26
- if (value === void 0 || value === null)
27
- return "";
28
- if (typeof value === "string")
29
- return value;
30
- if (typeof value !== "object")
31
- return String(value);
32
- return value.auto || value.original || value.en || value["zh-CN"] || value["zh-HK"] || "";
8
+ if (value === undefined || value === null) return '';
9
+ if (typeof value === 'string') return value;
10
+ if (typeof value !== 'object') return String(value);
11
+ return value.auto || value.original || value.en || value['zh-CN'] || value['zh-HK'] || '';
33
12
  }
34
13
  function formatNamePair(group, item) {
35
14
  const groupText = pickDisplayText(group);
36
15
  const itemText = pickDisplayText(item);
37
- if (groupText && itemText)
38
- return `${groupText}:${itemText}`;
16
+ if (groupText && itemText) return `${groupText}:${itemText}`;
39
17
  return groupText || itemText;
40
18
  }
41
19
  function buildProductOptionStringFromOrderLine(product) {
42
20
  const segments = [];
43
- const sku = (product == null ? void 0 : product.product_sku) || {};
21
+ const sku = product?.product_sku || {};
44
22
  if (Array.isArray(sku.variant)) {
45
23
  for (const variant of sku.variant) {
46
- const segment = formatNamePair(variant == null ? void 0 : variant.group, variant == null ? void 0 : variant.item);
47
- if (segment)
48
- segments.push(segment);
24
+ const segment = formatNamePair(variant?.group, variant?.item);
25
+ if (segment) segments.push(segment);
49
26
  }
50
27
  }
51
- return segments.join(", ");
52
- }
53
- // Annotate the CommonJS export names for ESM import in node:
54
- 0 && (module.exports = {
55
- buildProductOptionStringFromOrderLine
56
- });
28
+ return segments.join(', ');
29
+ }