@pisell/pisellos 2.2.282 → 2.2.284

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 (285) hide show
  1. package/dist/core/index.js +6 -9
  2. package/dist/model/strategy/adapter/promotion/index.js +9 -0
  3. package/dist/model/strategy/adapter/walletPass/example.js +3 -26
  4. package/dist/model/strategy/strategy-example.js +5 -19
  5. package/dist/modules/Cart/index.js +0 -3
  6. package/dist/modules/Cart/utils/cartProduct.js +0 -1
  7. package/dist/modules/Date/index.js +1 -5
  8. package/dist/modules/Discount/index.js +2 -4
  9. package/dist/modules/OpenData/index.js +0 -2
  10. package/dist/modules/Order/index.d.ts +2 -2
  11. package/dist/modules/Order/index.js +75 -91
  12. package/dist/modules/Order/types.d.ts +3 -1
  13. package/dist/modules/Payment/index.js +97 -162
  14. package/dist/modules/Rules/index.js +1 -4
  15. package/dist/modules/Schedule/index.js +0 -1
  16. package/dist/modules/Schedule/utils.js +0 -1
  17. package/dist/modules/Step/index.js +0 -1
  18. package/dist/modules/Summary/utils.d.ts +1 -1
  19. package/dist/plugins/request.js +1 -4
  20. package/dist/plugins/window.js +2 -6
  21. package/dist/server/index.js +97 -129
  22. package/dist/server/modules/menu/index.js +32 -41
  23. package/dist/server/modules/order/index.js +2 -4
  24. package/dist/server/modules/products/index.js +24 -42
  25. package/dist/server/modules/quotation/index.js +29 -38
  26. package/dist/server/modules/resource/index.js +3 -4
  27. package/dist/server/modules/schedule/index.js +27 -35
  28. package/dist/server/utils/product.js +0 -1
  29. package/dist/solution/BaseSales/index.js +100 -72
  30. package/dist/solution/BaseSales/utils/cartPromotion.d.ts +5 -0
  31. package/dist/solution/BaseSales/utils/cartPromotion.js +15 -6
  32. package/dist/solution/BookingByStep/index.d.ts +1 -1
  33. package/dist/solution/BookingByStep/index.js +7 -59
  34. package/dist/solution/BookingByStep/utils/capacity.js +1 -11
  35. package/dist/solution/BookingByStep/utils/resources.js +1 -3
  36. package/dist/solution/BookingByStep/utils/timeslots.js +2 -43
  37. package/dist/solution/BookingTicket/index.js +8 -4
  38. package/dist/solution/BookingTicket/utils/scan/cloudSearch.js +6 -7
  39. package/dist/solution/BookingTicket/utils/scan/handleScan.js +25 -31
  40. package/dist/solution/BookingTicket/utils/scan/index.js +6 -10
  41. package/dist/solution/BuyTickets/index.js +9 -12
  42. package/dist/solution/Checkout/index.js +177 -252
  43. package/dist/solution/Checkout/utils/index.js +4 -16
  44. package/dist/solution/RegisterAndLogin/index.js +30 -76
  45. package/dist/solution/ScanOrder/index.js +50 -60
  46. package/dist/solution/ShopDiscount/index.js +2 -7
  47. package/dist/solution/VenueBooking/index.js +45 -55
  48. package/dist/utils/task.js +15 -18
  49. package/dist/utils/watch.js +0 -1
  50. package/lib/apis/picoding.js +2 -0
  51. package/lib/core/index.js +131 -131
  52. package/lib/effects/index.js +46 -57
  53. package/lib/index.js +82 -49
  54. package/lib/model/index.js +14 -21
  55. package/lib/model/strategy/adapter/dataVariant/adapter.js +38 -50
  56. package/lib/model/strategy/adapter/dataVariant/evaluator.js +162 -236
  57. package/lib/model/strategy/adapter/dataVariant/examples.js +229 -237
  58. package/lib/model/strategy/adapter/dataVariant/index.js +39 -34
  59. package/lib/model/strategy/adapter/dataVariant/type.js +57 -28
  60. package/lib/model/strategy/adapter/index.js +100 -64
  61. package/lib/model/strategy/adapter/itemRule/adapter.js +156 -144
  62. package/lib/model/strategy/adapter/itemRule/evaluator.js +36 -48
  63. package/lib/model/strategy/adapter/itemRule/examples.js +295 -225
  64. package/lib/model/strategy/adapter/itemRule/index.js +83 -57
  65. package/lib/model/strategy/adapter/itemRule/type.js +97 -36
  66. package/lib/model/strategy/adapter/promotion/adapter.js +91 -69
  67. package/lib/model/strategy/adapter/promotion/evaluator.js +444 -310
  68. package/lib/model/strategy/adapter/promotion/examples.js +222 -234
  69. package/lib/model/strategy/adapter/promotion/index.js +1 -51
  70. package/lib/model/strategy/adapter/promotion/type.js +243 -36
  71. package/lib/model/strategy/adapter/type.js +4 -16
  72. package/lib/model/strategy/adapter/walletPass/evaluator.js +180 -150
  73. package/lib/model/strategy/adapter/walletPass/example.js +217 -190
  74. package/lib/model/strategy/adapter/walletPass/index.js +75 -51
  75. package/lib/model/strategy/adapter/walletPass/locales.js +36 -58
  76. package/lib/model/strategy/adapter/walletPass/type.js +4 -16
  77. package/lib/model/strategy/adapter/walletPass/utils.js +588 -378
  78. package/lib/model/strategy/engine.js +270 -168
  79. package/lib/model/strategy/index.js +49 -34
  80. package/lib/model/strategy/strategy-example.js +243 -239
  81. package/lib/model/strategy/type.js +100 -40
  82. package/lib/modules/Account/index.js +39 -53
  83. package/lib/modules/Account/types.js +20 -33
  84. package/lib/modules/AccountList/index.js +116 -154
  85. package/lib/modules/AccountList/types.js +30 -31
  86. package/lib/modules/AccountList/utils.js +18 -30
  87. package/lib/modules/BaseModule.js +23 -42
  88. package/lib/modules/BookingContext/index.js +158 -136
  89. package/lib/modules/BookingContext/types.js +46 -32
  90. package/lib/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +138 -146
  91. package/lib/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.js +78 -83
  92. package/lib/modules/BookingContext/utils/cacheItemToBookingInput.js +170 -150
  93. package/lib/modules/BookingContext/utils/flexible.js +38 -55
  94. package/lib/modules/BookingContext/utils/formatResourceList.js +19 -34
  95. package/lib/modules/BookingContext/utils/index.js +124 -41
  96. package/lib/modules/BookingContext/utils/noResource.js +58 -70
  97. package/lib/modules/BookingContext/utils/orderLineDisplay.js +14 -41
  98. package/lib/modules/BookingContext/utils/productExtend.js +202 -155
  99. package/lib/modules/BookingContext/utils/resourceErrors.js +53 -53
  100. package/lib/modules/BookingContext/utils/resourceSelection.js +19 -41
  101. package/lib/modules/BookingContext/utils/resources.js +209 -167
  102. package/lib/modules/BookingContext/utils/serviceTimes.js +115 -116
  103. package/lib/modules/BookingContext/utils/timeSlices.js +76 -86
  104. package/lib/modules/Cart/index.js +170 -124
  105. package/lib/modules/Cart/types.js +46 -51
  106. package/lib/modules/Cart/utils/cartAccount.js +40 -39
  107. package/lib/modules/Cart/utils/cartDate.js +56 -61
  108. package/lib/modules/Cart/utils/cartDiscount.js +28 -33
  109. package/lib/modules/Cart/utils/cartNote.js +27 -32
  110. package/lib/modules/Cart/utils/cartProduct.js +321 -251
  111. package/lib/modules/Cart/utils/cartRelationForms.js +29 -35
  112. package/lib/modules/Cart/utils/cartResource.js +70 -78
  113. package/lib/modules/Cart/utils/changePrice.js +22 -50
  114. package/lib/modules/Cart/utils/index.js +106 -48
  115. package/lib/modules/Customer/constants.js +13 -34
  116. package/lib/modules/Customer/index.js +235 -172
  117. package/lib/modules/Customer/types.js +38 -35
  118. package/lib/modules/Date/index.js +116 -115
  119. package/lib/modules/Date/types.js +16 -28
  120. package/lib/modules/Date/utils.js +174 -123
  121. package/lib/modules/Discount/index.js +122 -127
  122. package/lib/modules/Discount/types.js +9 -31
  123. package/lib/modules/Guests/index.js +30 -56
  124. package/lib/modules/Guests/types.js +23 -33
  125. package/lib/modules/Holder/index.js +209 -189
  126. package/lib/modules/Holder/types.js +4 -16
  127. package/lib/modules/Holder/utils.js +20 -49
  128. package/lib/modules/OpenData/index.js +70 -76
  129. package/lib/modules/OpenData/types.js +4 -16
  130. package/lib/modules/OpenData/utils.js +44 -78
  131. package/lib/modules/Order/index.d.ts +2 -2
  132. package/lib/modules/Order/index.js +1733 -2121
  133. package/lib/modules/Order/payment-utils.js +77 -120
  134. package/lib/modules/Order/types.d.ts +3 -1
  135. package/lib/modules/Order/types.js +87 -35
  136. package/lib/modules/Order/utils/bundleDiscountHydration.js +41 -74
  137. package/lib/modules/Order/utils/discountProductLineIdentity.js +142 -100
  138. package/lib/modules/Order/utils/manualProductDiscount.js +124 -123
  139. package/lib/modules/Order/utils/orderCollectionIdentity.js +184 -244
  140. package/lib/modules/Order/utils.js +814 -647
  141. package/lib/modules/Payment/cash.js +20 -33
  142. package/lib/modules/Payment/cashRecommendationAlgorithm.js +145 -76
  143. package/lib/modules/Payment/eftpos.js +16 -30
  144. package/lib/modules/Payment/index.js +532 -399
  145. package/lib/modules/Payment/mx51.js +1 -0
  146. package/lib/modules/Payment/types.js +230 -108
  147. package/lib/modules/Payment/utils.js +52 -51
  148. package/lib/modules/Payment/walletpass.js +485 -660
  149. package/lib/modules/Product/index.js +51 -46
  150. package/lib/modules/Product/types.js +4 -16
  151. package/lib/modules/Product/utils.js +32 -33
  152. package/lib/modules/ProductList/index.js +113 -123
  153. package/lib/modules/ProductList/types.js +9 -31
  154. package/lib/modules/Quotation/index.js +66 -100
  155. package/lib/modules/Quotation/types.js +4 -16
  156. package/lib/modules/Resource/index.js +27 -59
  157. package/lib/modules/Resource/types.js +22 -32
  158. package/lib/modules/Resource/utils.js +30 -38
  159. package/lib/modules/ResourcePlanner/index.js +60 -61
  160. package/lib/modules/ResourcePlanner/planner.js +346 -384
  161. package/lib/modules/ResourcePlanner/types.js +4 -16
  162. package/lib/modules/Rules/index.js +1218 -959
  163. package/lib/modules/Rules/types.js +17 -40
  164. package/lib/modules/SalesSummary/index.js +85 -90
  165. package/lib/modules/SalesSummary/types.js +4 -16
  166. package/lib/modules/SalesSummary/utils.js +355 -430
  167. package/lib/modules/ScanOrderLogger/index.js +59 -79
  168. package/lib/modules/ScanOrderLogger/providers/feishu.js +54 -78
  169. package/lib/modules/ScanOrderLogger/providers/grafana.js +13 -36
  170. package/lib/modules/ScanOrderLogger/types.js +4 -16
  171. package/lib/modules/Schedule/getDateIsInSchedule.js +334 -163
  172. package/lib/modules/Schedule/index.js +100 -114
  173. package/lib/modules/Schedule/type.js +4 -16
  174. package/lib/modules/Schedule/types.js +4 -16
  175. package/lib/modules/Schedule/utils.js +433 -291
  176. package/lib/modules/Step/index.js +40 -52
  177. package/lib/modules/Step/tyeps.js +4 -16
  178. package/lib/modules/Summary/index.js +66 -71
  179. package/lib/modules/Summary/types.js +4 -16
  180. package/lib/modules/Summary/utils.d.ts +1 -1
  181. package/lib/modules/Summary/utils.js +773 -418
  182. package/lib/modules/SurchargeList/index.js +46 -60
  183. package/lib/modules/SurchargeList/types.js +4 -16
  184. package/lib/modules/index.js +245 -63
  185. package/lib/plugins/app.js +4 -16
  186. package/lib/plugins/index.js +36 -25
  187. package/lib/plugins/request.js +137 -126
  188. package/lib/plugins/shopStore.js +4 -16
  189. package/lib/plugins/user.js +4 -16
  190. package/lib/plugins/window.js +171 -179
  191. package/lib/server/index.js +3027 -2655
  192. package/lib/server/modules/floor-plan/index.js +102 -123
  193. package/lib/server/modules/floor-plan/types.js +15 -30
  194. package/lib/server/modules/index.js +106 -68
  195. package/lib/server/modules/menu/index.js +146 -122
  196. package/lib/server/modules/menu/types.js +18 -31
  197. package/lib/server/modules/order/index.js +758 -956
  198. package/lib/server/modules/order/types.js +122 -33
  199. package/lib/server/modules/order/utils/filterBookings.js +219 -194
  200. package/lib/server/modules/order/utils/filterOrders.js +118 -92
  201. package/lib/server/modules/payment/index.js +59 -83
  202. package/lib/server/modules/payment/types.js +4 -16
  203. package/lib/server/modules/products/index.js +575 -459
  204. package/lib/server/modules/products/types.js +44 -34
  205. package/lib/server/modules/quotation/index.js +137 -172
  206. package/lib/server/modules/quotation/types.js +21 -31
  207. package/lib/server/modules/resource/index.js +213 -184
  208. package/lib/server/modules/resource/types.js +42 -33
  209. package/lib/server/modules/schedule/index.js +135 -123
  210. package/lib/server/modules/schedule/types.js +14 -21
  211. package/lib/server/modules/schedule/utils.js +334 -163
  212. package/lib/server/types.js +4 -16
  213. package/lib/server/utils/index.js +25 -23
  214. package/lib/server/utils/product.js +196 -139
  215. package/lib/server/utils/schedule.js +34 -41
  216. package/lib/server/utils/small-ticket.js +479 -456
  217. package/lib/server/utils/time.js +40 -49
  218. package/lib/solution/BaseSales/index.js +1209 -1412
  219. package/lib/solution/BaseSales/types.js +42 -38
  220. package/lib/solution/BaseSales/utils/cartPromotion.d.ts +5 -0
  221. package/lib/solution/BaseSales/utils/cartPromotion.js +652 -498
  222. package/lib/solution/BaseSales/utils/parseSalesResponse.js +85 -105
  223. package/lib/solution/BaseSales/utils/quotationPrice.js +56 -114
  224. package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +108 -145
  225. package/lib/solution/BaseSales/utils.js +158 -143
  226. package/lib/solution/BookingByStep/index.d.ts +1 -1
  227. package/lib/solution/BookingByStep/index.js +1527 -1340
  228. package/lib/solution/BookingByStep/types.js +40 -99
  229. package/lib/solution/BookingByStep/utils/capacity.js +192 -160
  230. package/lib/solution/BookingByStep/utils/products.js +42 -52
  231. package/lib/solution/BookingByStep/utils/resources.js +527 -330
  232. package/lib/solution/BookingByStep/utils/stock.js +65 -44
  233. package/lib/solution/BookingByStep/utils/timeslots.js +129 -131
  234. package/lib/solution/BookingTicket/index.js +598 -514
  235. package/lib/solution/BookingTicket/types.js +99 -77
  236. package/lib/solution/BookingTicket/utils/addProductDecision.js +225 -187
  237. package/lib/solution/BookingTicket/utils/addTimeAvailability.js +58 -89
  238. package/lib/solution/BookingTicket/utils/bookingStatus.js +107 -78
  239. package/lib/solution/BookingTicket/utils/cartView.js +114 -99
  240. package/lib/solution/BookingTicket/utils/exampleData.js +185 -0
  241. package/lib/solution/BookingTicket/utils/orderCustomer.js +18 -41
  242. package/lib/solution/BookingTicket/utils/resolveBestAddTimePlan.js +219 -86
  243. package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.js +168 -116
  244. package/lib/solution/BookingTicket/utils/scan/cloudSearch.js +79 -91
  245. package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.js +54 -41
  246. package/lib/solution/BookingTicket/utils/scan/handleScan.js +84 -81
  247. package/lib/solution/BookingTicket/utils/scan/index.js +98 -104
  248. package/lib/solution/BookingTicket/utils/scan/scanCache.js +90 -43
  249. package/lib/solution/BookingTicket/utils/scan/scanProductValues.js +52 -64
  250. package/lib/solution/BookingTicket/utils/sessionCatalogStale.js +56 -58
  251. package/lib/solution/BookingTicket/utils/weighingProductSku.js +34 -48
  252. package/lib/solution/BuyTickets/index.js +67 -70
  253. package/lib/solution/BuyTickets/types.js +22 -38
  254. package/lib/solution/Checkout/index.js +1451 -1158
  255. package/lib/solution/Checkout/types.js +91 -61
  256. package/lib/solution/Checkout/utils/index.js +228 -156
  257. package/lib/solution/PlaceOrder/index.js +55 -0
  258. package/lib/solution/RegisterAndLogin/config.js +493 -460
  259. package/lib/solution/RegisterAndLogin/index.js +633 -630
  260. package/lib/solution/RegisterAndLogin/types.js +189 -76
  261. package/lib/solution/RegisterAndLogin/utils.js +183 -125
  262. package/lib/solution/Sales/index.js +328 -324
  263. package/lib/solution/Sales/types.js +27 -33
  264. package/lib/solution/ScanOrder/index.js +832 -864
  265. package/lib/solution/ScanOrder/types.js +33 -34
  266. package/lib/solution/ScanOrder/utils.js +409 -374
  267. package/lib/solution/ShopDiscount/index.js +226 -232
  268. package/lib/solution/ShopDiscount/types.js +15 -37
  269. package/lib/solution/ShopDiscount/utils.js +300 -172
  270. package/lib/solution/UnifiedBookingSales/index.js +437 -487
  271. package/lib/solution/UnifiedBookingSales/types.js +12 -31
  272. package/lib/solution/VenueBooking/index.js +811 -879
  273. package/lib/solution/VenueBooking/types.js +19 -39
  274. package/lib/solution/VenueBooking/utils/dateSummary.js +27 -56
  275. package/lib/solution/VenueBooking/utils/resource.js +31 -54
  276. package/lib/solution/VenueBooking/utils/slotMerge.js +94 -107
  277. package/lib/solution/VenueBooking/utils/timeSlot.js +132 -132
  278. package/lib/solution/VenueBooking/utils.js +130 -67
  279. package/lib/solution/index.js +124 -41
  280. package/lib/store/createStore.js +32 -29
  281. package/lib/types/index.js +4 -16
  282. package/lib/utils/payment-number.js +26 -46
  283. package/lib/utils/task.js +36 -36
  284. package/lib/utils/watch.js +81 -47
  285. package/package.json +2 -1
@@ -1,44 +1,22 @@
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/Holder/utils.ts
20
- var utils_exports = {};
21
- __export(utils_exports, {
22
- createEmptyFormItemData: () => createEmptyFormItemData,
23
- getFormIdFromHolderConfig: () => getFormIdFromHolderConfig,
24
- getProductHolderConfig: () => getProductHolderConfig,
25
- normalizeFormId: () => normalizeFormId,
26
- resolveFormMetaFromHolderItem: () => resolveFormMetaFromHolderItem
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
27
5
  });
28
- module.exports = __toCommonJS(utils_exports);
6
+ exports.createEmptyFormItemData = createEmptyFormItemData;
7
+ exports.getFormIdFromHolderConfig = getFormIdFromHolderConfig;
8
+ exports.getProductHolderConfig = getProductHolderConfig;
9
+ exports.normalizeFormId = normalizeFormId;
10
+ exports.resolveFormMetaFromHolderItem = resolveFormMetaFromHolderItem;
29
11
  function getProductHolderConfig(product) {
30
- var _a;
31
- if (!product)
32
- return null;
33
- const config = (product == null ? void 0 : product.holder_config) ?? ((_a = product == null ? void 0 : product.origin) == null ? void 0 : _a.holder_config);
34
- if ((config == null ? void 0 : config.status) && (config == null ? void 0 : config.status) !== "enable")
35
- return null;
36
- if (!(config == null ? void 0 : config.resource_id))
37
- return null;
12
+ if (!product) return null;
13
+ const config = product?.holder_config ?? product?.origin?.holder_config;
14
+ if (config?.status && config?.status !== 'enable') return null;
15
+ if (!config?.resource_id) return null;
38
16
  return config;
39
17
  }
40
18
  function getFormIdFromHolderConfig(config) {
41
- return Number(config == null ? void 0 : config.resource_id);
19
+ return Number(config?.resource_id);
42
20
  }
43
21
  function normalizeFormId(formId) {
44
22
  return Number(formId);
@@ -52,20 +30,13 @@ function createEmptyFormItemData() {
52
30
  function resolveFormMetaFromHolderItem(mapKey, item) {
53
31
  const formInfo = item.form || {};
54
32
  const nestedForm = formInfo.form || {};
55
- const form_id = normalizeFormId(
56
- nestedForm.id ?? formInfo.form_id ?? formInfo.id ?? mapKey
57
- );
33
+ const form_id = normalizeFormId(nestedForm.id ?? formInfo.form_id ?? formInfo.id ?? mapKey);
58
34
  const shop_id = nestedForm.shop_id ?? formInfo.shop_id;
59
- if (shop_id === void 0 || shop_id === null || shop_id === "") {
35
+ if (shop_id === undefined || shop_id === null || shop_id === '') {
60
36
  return null;
61
37
  }
62
- return { form_id, shop_id };
63
- }
64
- // Annotate the CommonJS export names for ESM import in node:
65
- 0 && (module.exports = {
66
- createEmptyFormItemData,
67
- getFormIdFromHolderConfig,
68
- getProductHolderConfig,
69
- normalizeFormId,
70
- resolveFormMetaFromHolderItem
71
- });
38
+ return {
39
+ form_id,
40
+ shop_id
41
+ };
42
+ }
@@ -1,47 +1,52 @@
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 });
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _exportNames = {
7
+ OpenDataModule: true,
8
+ computeAvailability: true
8
9
  };
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 });
10
+ exports.OpenDataModule = void 0;
11
+ Object.defineProperty(exports, "computeAvailability", {
12
+ enumerable: true,
13
+ get: function () {
14
+ return _utils.computeAvailability;
14
15
  }
15
- return to;
16
- };
17
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/modules/OpenData/index.ts
21
- var OpenData_exports = {};
22
- __export(OpenData_exports, {
23
- OpenDataModule: () => OpenDataModule,
24
- computeAvailability: () => import_utils2.computeAvailability
25
16
  });
26
- module.exports = __toCommonJS(OpenData_exports);
27
- var import_BaseModule = require("../BaseModule");
28
- var import_utils = require("./utils");
29
- __reExport(OpenData_exports, require("./types"), module.exports);
30
- var import_utils2 = require("./utils");
31
- var OpenDataModule = class extends import_BaseModule.BaseModule {
17
+ var _BaseModule = require("../BaseModule");
18
+ var _utils = require("./utils");
19
+ var _types = require("./types");
20
+ Object.keys(_types).forEach(function (key) {
21
+ if (key === "default" || key === "__esModule") return;
22
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
23
+ if (key in exports && exports[key] === _types[key]) return;
24
+ Object.defineProperty(exports, key, {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _types[key];
28
+ }
29
+ });
30
+ });
31
+ class OpenDataModule extends _BaseModule.BaseModule {
32
+ defaultName = 'openData';
33
+ defaultVersion = '1.0.0';
34
+ request;
35
+ window;
36
+ appPlugin;
37
+ store;
38
+ cacheId;
39
+ openCache = false;
40
+ fatherModule;
41
+ otherParams = {};
32
42
  constructor(name, version) {
33
43
  super(name, version);
34
- this.defaultName = "openData";
35
- this.defaultVersion = "1.0.0";
36
- this.openCache = false;
37
- this.otherParams = {};
38
44
  }
39
45
  async initialize(core, options) {
40
- var _a, _b;
41
46
  this.core = core;
42
47
  this.store = options.store;
43
- this.store.data = ((_a = options.initialState) == null ? void 0 : _a.data) ?? null;
44
- this.store.lastFetchedAt = ((_b = options.initialState) == null ? void 0 : _b.lastFetchedAt) ?? null;
48
+ this.store.data = options.initialState?.data ?? null;
49
+ this.store.lastFetchedAt = options.initialState?.lastFetchedAt ?? null;
45
50
  this.otherParams = options.otherParams || {};
46
51
  if (this.otherParams.cacheId) {
47
52
  this.openCache = this.otherParams.openCache ?? false;
@@ -50,15 +55,13 @@ var OpenDataModule = class extends import_BaseModule.BaseModule {
50
55
  if (this.otherParams.fatherModule) {
51
56
  this.fatherModule = this.otherParams.fatherModule;
52
57
  }
53
- this.request = core.getPlugin("request");
54
- this.window = core.getPlugin("window");
55
- this.appPlugin = core.getPlugin("app");
56
- if (!this.request)
57
- throw new Error("OpenDataModule 需要 request 插件支持");
58
- if (!this.window)
59
- throw new Error("OpenDataModule 需要 window 插件支持");
60
- console.log("[OpenDataModule] 初始化完成");
58
+ this.request = core.getPlugin('request');
59
+ this.window = core.getPlugin('window');
60
+ this.appPlugin = core.getPlugin('app');
61
+ if (!this.request) throw new Error('OpenDataModule 需要 request 插件支持');
62
+ if (!this.window) throw new Error('OpenDataModule 需要 window 插件支持');
61
63
  }
64
+
62
65
  /**
63
66
  * 更新父级解决方案透传的运行态参数,并刷新 OpenData 缓存配置。
64
67
  *
@@ -72,28 +75,26 @@ var OpenDataModule = class extends import_BaseModule.BaseModule {
72
75
  this.fatherModule = this.otherParams.fatherModule;
73
76
  }
74
77
  async fetchOpenData(params) {
75
- var _a, _b;
76
- const getData = (_b = (_a = this.appPlugin) == null ? void 0 : _a.getData) == null ? void 0 : _b.call(_a);
77
- const shopId = getData == null ? void 0 : getData("shop_id");
78
- if (!shopId)
79
- throw new Error("[OpenDataModule] 无法获取 shop_id");
80
- const tenantId = getData == null ? void 0 : getData("tenant_id");
78
+ const getData = this.appPlugin?.getData?.();
79
+ const shopId = getData?.('shop_id');
80
+ if (!shopId) throw new Error('[OpenDataModule] 无法获取 shop_id');
81
+ const tenantId = getData?.('tenant_id');
81
82
  const headers = {};
82
- if (tenantId)
83
- headers["Tenant-Id"] = String(tenantId);
84
- const response = await this.request.post(
85
- `/open/my-pisell/${shopId}/setting`,
86
- {
87
- scope: params.scope,
88
- target: params.target,
89
- section_code: params.section_code
90
- },
91
- { pisell2: true, isPisell2: true, prefix: false, headers }
92
- );
93
- if ((response == null ? void 0 : response.status) === false) {
94
- throw new Error((response == null ? void 0 : response.message) || "获取 OpenData 配置失败");
83
+ if (tenantId) headers['Tenant-Id'] = String(tenantId);
84
+ const response = await this.request.post(`/open/my-pisell/${shopId}/setting`, {
85
+ scope: params.scope,
86
+ target: params.target,
87
+ section_code: params.section_code
88
+ }, {
89
+ pisell2: true,
90
+ isPisell2: true,
91
+ prefix: false,
92
+ headers
93
+ });
94
+ if (response?.status === false) {
95
+ throw new Error(response?.message || '获取 OpenData 配置失败');
95
96
  }
96
- const data = (response == null ? void 0 : response.data) || {};
97
+ const data = response?.data || {};
97
98
  this.store.data = data;
98
99
  this.store.lastFetchedAt = Date.now();
99
100
  return data;
@@ -104,17 +105,15 @@ var OpenDataModule = class extends import_BaseModule.BaseModule {
104
105
  getLastFetchedAt() {
105
106
  return this.store.lastFetchedAt ?? null;
106
107
  }
108
+
107
109
  /** 清除内存与 sessionStorage 镜像中的 OpenData,供宿主切店时调用。 */
108
110
  clearCache() {
109
111
  this.store.data = null;
110
112
  this.store.lastFetchedAt = null;
111
113
  }
112
114
  checkAvailability(scheduleModule) {
113
- var _a;
114
- const scheduleList = scheduleModule ? scheduleModule == null ? void 0 : scheduleModule.getScheduleListByIds(
115
- ((_a = this.store.data) == null ? void 0 : _a["availability.operating_hours"]) || []
116
- ) : void 0;
117
- return (0, import_utils.computeAvailability)({
115
+ const scheduleList = scheduleModule ? scheduleModule?.getScheduleListByIds(this.store.data?.['availability.operating_hours'] || []) : undefined;
116
+ return (0, _utils.computeAvailability)({
118
117
  config: this.store.data,
119
118
  scheduleList
120
119
  });
@@ -125,14 +124,9 @@ var OpenDataModule = class extends import_BaseModule.BaseModule {
125
124
  cacheId: this.cacheId,
126
125
  fatherModule: this.fatherModule,
127
126
  store: this.store,
128
- cacheKey: ["data", "lastFetchedAt"]
127
+ cacheKey: ['data', 'lastFetchedAt']
129
128
  });
130
129
  }
131
130
  }
132
- };
133
- // Annotate the CommonJS export names for ESM import in node:
134
- 0 && (module.exports = {
135
- OpenDataModule,
136
- computeAvailability,
137
- ...require("./types")
138
- });
131
+ }
132
+ exports.OpenDataModule = OpenDataModule;
@@ -1,17 +1,5 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __copyProps = (to, from, except, desc) => {
6
- if (from && typeof from === "object" || typeof from === "function") {
7
- for (let key of __getOwnPropNames(from))
8
- if (!__hasOwnProp.call(to, key) && key !== except)
9
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
- }
11
- return to;
12
- };
13
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ "use strict";
14
2
 
15
- // src/modules/OpenData/types.ts
16
- var types_exports = {};
17
- module.exports = __toCommonJS(types_exports);
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -1,111 +1,77 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1
+ "use strict";
28
2
 
29
- // src/modules/OpenData/utils.ts
30
- var utils_exports = {};
31
- __export(utils_exports, {
32
- computeAvailability: () => computeAvailability
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
33
5
  });
34
- module.exports = __toCommonJS(utils_exports);
35
- var import_dayjs = __toESM(require("dayjs"));
36
- var import_getDateIsInSchedule = require("../Schedule/getDateIsInSchedule");
6
+ exports.computeAvailability = computeAvailability;
7
+ var _dayjs = _interopRequireDefault(require("dayjs"));
8
+ var _getDateIsInSchedule = require("../Schedule/getDateIsInSchedule");
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
37
10
  function toBoolean(value) {
38
- if (typeof value === "boolean")
39
- return value;
40
- if (typeof value === "string")
41
- return value === "true" || value === "1";
42
- if (typeof value === "number")
43
- return value !== 0;
11
+ if (typeof value === 'boolean') return value;
12
+ if (typeof value === 'string') return value === 'true' || value === '1';
13
+ if (typeof value === 'number') return value !== 0;
44
14
  return false;
45
15
  }
46
16
  function resolveMessage(...candidates) {
47
17
  for (const val of candidates) {
48
- if (!val)
49
- continue;
50
- if (typeof val === "string" && val.length > 0)
51
- return val;
52
- if (typeof val === "object" && val !== null && !Array.isArray(val))
53
- return val;
18
+ if (!val) continue;
19
+ if (typeof val === 'string' && val.length > 0) return val;
20
+ if (typeof val === 'object' && val !== null && !Array.isArray(val)) return val;
54
21
  }
55
22
  return null;
56
23
  }
57
24
  function computeAvailability(params) {
58
- const { config, scheduleList } = params;
25
+ const {
26
+ config,
27
+ scheduleList
28
+ } = params;
59
29
  if (!config) {
60
- return { available: true, reason: null, message: null };
30
+ return {
31
+ available: true,
32
+ reason: null,
33
+ message: null
34
+ };
61
35
  }
62
- if (config["basic.enable"] === false) {
36
+ if (config['basic.enable'] === false) {
63
37
  return {
64
38
  available: false,
65
- reason: "shop_disabled",
66
- message: resolveMessage(
67
- config["basic.unavailable_message"],
68
- config["availability.closed_message"]
69
- )
39
+ reason: 'shop_disabled',
40
+ message: resolveMessage(config['basic.unavailable_message'], config['availability.closed_message'])
70
41
  };
71
42
  }
72
- if (toBoolean(config["availability.paused"])) {
43
+ if (toBoolean(config['availability.paused'])) {
73
44
  return {
74
45
  available: false,
75
- reason: "paused",
76
- message: resolveMessage(
77
- config["availability.pause_message"],
78
- config["availability.closed_message"]
79
- )
46
+ reason: 'paused',
47
+ message: resolveMessage(config['availability.pause_message'], config['availability.closed_message'])
80
48
  };
81
49
  }
82
- const operatingHourIds = config["availability.operating_hours"];
83
- if (Array.isArray(operatingHourIds) && operatingHourIds.length > 0 && (scheduleList == null ? void 0 : scheduleList.length)) {
84
- const relevantSchedules = scheduleList.filter(
85
- (s) => operatingHourIds.includes(s.id)
86
- );
50
+ const operatingHourIds = config['availability.operating_hours'];
51
+ if (Array.isArray(operatingHourIds) && operatingHourIds.length > 0 && scheduleList?.length) {
52
+ const relevantSchedules = scheduleList.filter(s => operatingHourIds.includes(s.id));
87
53
  if (relevantSchedules.length > 0) {
88
- const now = (0, import_dayjs.default)().format("YYYY-MM-DD HH:mm:ss");
89
- const isOpen = (0, import_getDateIsInSchedule.getDateIsInSchedule)(now, relevantSchedules);
54
+ const now = (0, _dayjs.default)().format('YYYY-MM-DD HH:mm:ss');
55
+ const isOpen = (0, _getDateIsInSchedule.getDateIsInSchedule)(now, relevantSchedules);
90
56
  if (!isOpen) {
91
57
  return {
92
58
  available: false,
93
- reason: "closed",
94
- message: resolveMessage(config["availability.closed_message"])
59
+ reason: 'closed',
60
+ message: resolveMessage(config['availability.closed_message'])
95
61
  };
96
62
  }
97
63
  }
98
64
  }
99
- if (config["reservation.enable"] === false) {
65
+ if (config['reservation.enable'] === false) {
100
66
  return {
101
67
  available: false,
102
- reason: "reservation_disabled",
103
- message: resolveMessage(config["availability.closed_message"])
68
+ reason: 'reservation_disabled',
69
+ message: resolveMessage(config['availability.closed_message'])
104
70
  };
105
71
  }
106
- return { available: true, reason: null, message: null };
107
- }
108
- // Annotate the CommonJS export names for ESM import in node:
109
- 0 && (module.exports = {
110
- computeAvailability
111
- });
72
+ return {
73
+ available: true,
74
+ reason: null,
75
+ message: null
76
+ };
77
+ }
@@ -512,7 +512,7 @@ export declare class OrderModule extends BaseModule implements Module, OrderModu
512
512
  generateIdempotencyToken(): string;
513
513
  syncPaymentsToOrder<T = any>(params: SyncPaymentsToOrderParams): Promise<SyncPaymentsToOrderResult<T>>;
514
514
  createOrder(params: CommitOrderParams['query']): {
515
- type: "virtual" | "appointment_booking";
515
+ type: "appointment_booking" | "virtual";
516
516
  platform: string;
517
517
  sales_channel: string;
518
518
  order_sales_channel: string;
@@ -562,7 +562,7 @@ export declare class OrderModule extends BaseModule implements Module, OrderModu
562
562
  */
563
563
  hydrateTempOrderFromRecord(record: Record<string, any>, options?: {
564
564
  recalcOnHydrate?: boolean;
565
- source?: 'salesDetail' | 'sessionStorage';
565
+ source?: 'salesDetail' | 'mergedSalesDetail' | 'sessionStorage';
566
566
  }): Promise<OrderTempOrder>;
567
567
  /**
568
568
  * 兼容后端详情将 holder 放在 metadata.holder 的历史形态,统一补到运行时展示路径。