@pisell/private-materials 6.4.55 → 6.4.57

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 (448) hide show
  1. package/build/lowcode/assets-daily.json +11 -11
  2. package/build/lowcode/assets-dev.json +2 -2
  3. package/build/lowcode/assets-prod.json +11 -11
  4. package/build/lowcode/index.js +1 -1
  5. package/build/lowcode/meta.js +2 -2
  6. package/build/lowcode/preview.js +7 -7
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +7 -7
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +7 -7
  11. package/es/components/appointmentBooking/components/Cart/Item/Total.d.ts +0 -1
  12. package/es/components/appointmentBooking/components/Cart/Item/index.d.ts +0 -1
  13. package/es/components/appointmentBooking/components/Cart/index.d.ts +0 -1
  14. package/es/components/appointmentBooking/components/Deposit/index.d.ts +0 -1
  15. package/es/components/appointmentBooking/components/Footer/index.d.ts +0 -1
  16. package/es/components/appointmentBooking/deposit/components/PolicyModal/index.d.ts +0 -1
  17. package/es/components/booking/components/TabProduct/index.d.ts +0 -1
  18. package/es/components/booking/components/TabProduct/productItem/index.d.ts +0 -1
  19. package/es/components/booking/components/actionButtons/index.js +15 -7
  20. package/es/components/booking/components/footer/amount.js +1 -1
  21. package/es/components/booking/components/footer/index.js +2 -2
  22. package/es/components/booking/components/footer/utils.js +8 -1
  23. package/es/components/booking/components/reloadResourceModal/index.d.ts +0 -1
  24. package/es/components/booking/components/voucher/index.js +23 -19
  25. package/es/components/booking/forms/footer.d.ts +0 -1
  26. package/es/components/booking/forms/sendModal/useSendModal.d.ts +0 -1
  27. package/es/components/booking/forms/single/index.d.ts +0 -1
  28. package/es/components/booking/info2/cartClientCard/index.js +7 -3
  29. package/es/components/booking/materiels/contacts/index.d.ts +0 -1
  30. package/es/components/checkout/PaymentModal.js +34 -28
  31. package/es/components/checkout/hooks/useWalletPass.js +36 -21
  32. package/es/components/eftpos/form/index.d.ts +0 -1
  33. package/es/components/eftpos/hooks.d.ts +0 -1
  34. package/es/components/eftpos/index.d.ts +0 -1
  35. package/es/components/eftpos/pos.d.ts +0 -1
  36. package/es/components/eftposPay/amount.d.ts +0 -1
  37. package/es/components/eftposPay/component/fail/failCustom.d.ts +0 -1
  38. package/es/components/eftposPay/component/fail/index.d.ts +0 -1
  39. package/es/components/eftposPay/component/fail/network.d.ts +0 -1
  40. package/es/components/eftposPay/component/fail/unknow.d.ts +0 -1
  41. package/es/components/eftposPay/component/manual/index.d.ts +0 -1
  42. package/es/components/eftposPay/component/signature/index.d.ts +0 -1
  43. package/es/components/eftposPay/hooks.d.ts +1 -1
  44. package/es/components/eftposPay/pay.d.ts +0 -1
  45. package/es/components/eftposPay/store/index.d.ts +2 -2
  46. package/es/components/eventBooking/components/Provider/Cart/Deposit/index.d.ts +0 -1
  47. package/es/components/eventBooking/components/Provider/Cart/Item/index.d.ts +0 -1
  48. package/es/components/eventBooking/components/Provider/Cart/index.d.ts +0 -1
  49. package/es/components/eventBooking/components/Provider/Content/index.d.ts +0 -1
  50. package/es/components/eventBooking/components/Provider/Event/index.d.ts +0 -1
  51. package/es/components/eventBooking/components/Provider/Footer/index.d.ts +0 -1
  52. package/es/components/eventBooking/components/Provider/Header/index.d.ts +0 -1
  53. package/es/components/eventBooking/components/Provider/Information/index.d.ts +0 -1
  54. package/es/components/eventBooking/components/Provider/Resource/index.d.ts +0 -1
  55. package/es/components/eventBooking/components/Provider/SelectHolderModal.d.ts +0 -1
  56. package/es/components/eventBooking/components/bookingDetailModal/components/BookingOptions.d.ts +0 -1
  57. package/es/components/eventBooking/components/bookingDetailModal/components/Resource.d.ts +0 -1
  58. package/es/components/eventBooking/components/bookingDetailModal/components/Schedule.d.ts +0 -1
  59. package/es/components/eventBooking/components/scheduleCalendar/ProductItem/index.d.ts +0 -1
  60. package/es/components/list/List.js +957 -0
  61. package/es/components/list/List.less +2 -0
  62. package/es/components/list/ResponsiveWrapper.js +130 -0
  63. package/es/components/list/TestResponsiveWrapper.js +816 -0
  64. package/es/components/list/TestResponsiveWrapper.less +968 -0
  65. package/es/components/list/components/EmptyState/EmptyState.js +75 -0
  66. package/es/components/list/components/EmptyState/EmptyState.less +121 -0
  67. package/es/components/list/components/EmptyState/index.js +1 -0
  68. package/es/components/list/components/ListItemSkeleton/ListItemSkeleton.js +39 -0
  69. package/es/components/list/components/ListItemSkeleton/ListItemSkeleton.less +29 -0
  70. package/es/components/list/components/ListItemSkeleton/index.js +2 -0
  71. package/es/components/list/components/Pagination/Pagination.js +240 -0
  72. package/es/components/list/components/Pagination/Pagination.less +439 -0
  73. package/es/components/list/components/Pagination/index.js +1 -0
  74. package/es/components/list/components/ScrollLoader/ScrollLoader.js +18 -0
  75. package/es/components/list/components/ScrollLoader/ScrollLoader.less +3 -0
  76. package/es/components/list/components/ScrollLoader/index.js +1 -0
  77. package/es/components/list/components/Tab/Tab.js +43 -0
  78. package/es/components/list/components/Tab/Tab.less +139 -0
  79. package/es/components/list/components/Tab/index.js +1 -0
  80. package/es/components/list/components/Tab/types.js +1 -0
  81. package/es/components/list/components/TabSkeleton/TabSkeleton.js +28 -0
  82. package/es/components/list/components/TabSkeleton/TabSkeleton.less +38 -0
  83. package/es/components/list/components/TabSkeleton/index.js +2 -0
  84. package/es/components/list/components/WaterfallList/WaterfallList.js +191 -0
  85. package/es/components/list/components/WaterfallList/WaterfallList.less +201 -0
  86. package/es/components/list/components/WaterfallList/index.js +1 -0
  87. package/es/components/list/examples/GroupedListExample.js +207 -0
  88. package/es/components/list/hooks/index.js +3 -0
  89. package/es/components/list/hooks/useDevice.js +102 -0
  90. package/es/components/list/hooks/useListState.js +176 -0
  91. package/es/components/list/hooks/useWaterfall.js +161 -0
  92. package/es/components/list/index.js +7 -0
  93. package/es/components/list/locales.js +107 -0
  94. package/es/components/list/styles/base.less +39 -0
  95. package/es/components/list/styles/content.less +416 -0
  96. package/es/components/list/styles/floatButton.less +107 -0
  97. package/es/components/list/styles/footer.less +49 -0
  98. package/es/components/list/styles/header.less +69 -0
  99. package/es/components/list/styles/responsive.less +166 -0
  100. package/es/components/list/types.js +1 -0
  101. package/es/components/list/utils/getText.js +150 -0
  102. package/es/components/list/utils/index.js +5 -0
  103. package/es/components/pay/toB/store/hooks.js +19 -5
  104. package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/StripeSDK/index.d.ts +0 -1
  105. package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/index.d.ts +0 -1
  106. package/es/components/pisellSelectCustomerModal/RightPanel/Add/index.d.ts +0 -1
  107. package/es/components/productExtension/fields/Actor/index.d.ts +0 -1
  108. package/es/components/productExtension/fields/Forms/index.d.ts +0 -1
  109. package/es/components/productExtension/fields/SelectProducts/ProductItem/index.d.ts +0 -1
  110. package/es/components/productExtension/fields/SelectProducts/index.d.ts +0 -1
  111. package/es/components/schedules/components/ScheduleList/index.d.ts +0 -1
  112. package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/MaxParticipantsModule/index.d.ts +0 -1
  113. package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/index.d.ts +0 -1
  114. package/es/components/schedules/products/ProductDetailDrawer/index.d.ts +0 -1
  115. package/es/components/schedules/products/index.d.ts +0 -1
  116. package/es/components/schedules/resources/index.d.ts +0 -1
  117. package/es/components/schedules/resources/relationProduct/index.d.ts +0 -1
  118. package/es/components/schedules/schedules/AllSchedules/index.d.ts +0 -1
  119. package/es/components/schedules/schedules/ScheduleDetailDrawer/index.d.ts +0 -1
  120. package/es/components/schedules/schedules/index.d.ts +0 -1
  121. package/es/components/shoppingCart/components/Render/index.d.ts +0 -1
  122. package/es/components/shoppingCart/index.d.ts +0 -1
  123. package/es/components/ticketBooking/components/ProductDisplayAdapter/ProductDisplayAdapter.js +143 -0
  124. package/es/components/ticketBooking/components/ProductDisplayAdapter/index.js +7 -0
  125. package/es/components/ticketBooking/components/ProductDisplayAdapter/index.less +41 -0
  126. package/es/components/ticketBooking/components/ProductDisplayAdapter/types.js +273 -0
  127. package/es/components/ticketBooking/components/ProductDisplayAdapter/utils.js +130 -0
  128. package/es/components/ticketBooking/components/addServiceVariant/addService.d.ts +20 -0
  129. package/es/components/ticketBooking/components/addServiceVariant/addService.js +46 -11
  130. package/es/components/ticketBooking/components/addServiceVariant/index.js +4 -2
  131. package/es/components/ticketBooking/components/menuBar/index.js +40 -17
  132. package/es/components/ticketBooking/components/menuBar/index.less +27 -1
  133. package/es/components/ticketBooking/components/ticketBooking/index.d.ts +6 -1
  134. package/es/components/ticketBooking/components/ticketBooking/index.js +66 -23
  135. package/es/components/ticketBooking/components/timeBar/index.less +1 -0
  136. package/es/components/ticketBooking/context/IsActiveContext.js +37 -0
  137. package/es/components/ticketBooking/context/OsKeyContext.js +37 -0
  138. package/es/components/ticketBooking/context/index.js +2 -0
  139. package/es/components/ticketBooking/hooks/pisellos/bookingTicket.js +13 -1
  140. package/es/components/ticketBooking/hooks/pisellos/index.js +2 -1
  141. package/es/components/ticketBooking/hooks/pisellos/useActiveExecute.js +50 -0
  142. package/es/components/ticketBooking/hooks/pisellos/useCustomer.js +12 -4
  143. package/es/components/ticketBooking/hooks/pisellos/useProducts.js +43 -9
  144. package/es/components/ticketBooking/hooks/pisellos/useScanCustomer.js +5 -2
  145. package/es/components/ticketBooking/hooks/pisellos/useScanGlobal.js +7 -2
  146. package/es/components/ticketBooking/hooks/pisellos/useShopDiscountModule.js +17 -0
  147. package/es/components/ticketBooking/index.d.ts +6 -0
  148. package/es/components/ticketBooking/index.js +86 -11
  149. package/es/components/ticketBooking/utils/index.js +50 -1
  150. package/es/components/ticketBooking/utils/productCache.js +184 -0
  151. package/es/components/wallet/hooks/useWalletCard.d.ts +0 -1
  152. package/es/index.js +3 -1
  153. package/es/plus/productSelect/ProductCard/SkuCard/SkuCardA1/index.js +11 -0
  154. package/es/plus/productSelect/ProductCard/SkuCard/SkuCardA1/index.less +8 -0
  155. package/es/plus/productSelect/ProductCard/SkuCard/SkuCardA2/index.js +11 -0
  156. package/es/plus/productSelect/ProductCard/SkuCard/SkuCardA2/index.less +17 -0
  157. package/es/plus/productSelect/ProductCard/SkuCard/SkuCardA5/index.js +11 -0
  158. package/es/plus/productSelect/ProductCard/SkuCard/SkuCardA5/index.less +17 -0
  159. package/es/plus/productSelect/ProductCard/SkuCard/SkuCardA9/index.js +11 -0
  160. package/es/plus/productSelect/ProductCard/SkuCard/SkuCardA9/index.less +17 -0
  161. package/es/plus/productSelect/ProductCard/SkuCard/SkuCardCustom/index.js +11 -0
  162. package/es/plus/productSelect/ProductCard/SkuCard/SkuCardCustom/index.less +2 -0
  163. package/es/plus/productSelect/ProductCard/SkuCard/components/Action/index.js +100 -0
  164. package/es/plus/productSelect/ProductCard/SkuCard/components/Action/index.less +8 -0
  165. package/es/plus/productSelect/ProductCard/SkuCard/components/Capacity/index.js +32 -0
  166. package/es/plus/productSelect/ProductCard/SkuCard/components/Capacity/index.less +3 -0
  167. package/es/plus/productSelect/ProductCard/SkuCard/components/CardCom/index.js +239 -0
  168. package/es/plus/productSelect/ProductCard/SkuCard/components/CardCom/index.less +44 -0
  169. package/es/plus/productSelect/ProductCard/SkuCard/components/CardMask/index.js +34 -0
  170. package/es/plus/productSelect/ProductCard/SkuCard/components/CardMask/index.less +14 -0
  171. package/es/plus/productSelect/ProductCard/SkuCard/components/CardMoreText/index.js +33 -0
  172. package/es/plus/productSelect/ProductCard/SkuCard/components/CardMoreText/index.less +30 -0
  173. package/es/plus/productSelect/ProductCard/SkuCard/components/CardWrapper/index.js +75 -0
  174. package/es/plus/productSelect/ProductCard/SkuCard/components/CardWrapper/index.less +46 -0
  175. package/es/plus/productSelect/ProductCard/SkuCard/components/Countdown/index.js +39 -0
  176. package/es/plus/productSelect/ProductCard/SkuCard/components/Countdown/index.less +9 -0
  177. package/es/plus/productSelect/ProductCard/SkuCard/components/Cover/index.js +53 -0
  178. package/es/plus/productSelect/ProductCard/SkuCard/components/Cover/index.less +31 -0
  179. package/es/plus/productSelect/ProductCard/SkuCard/components/Duration/index.js +31 -0
  180. package/es/plus/productSelect/ProductCard/SkuCard/components/Duration/index.less +3 -0
  181. package/es/plus/productSelect/ProductCard/SkuCard/components/Favorite/index.js +58 -0
  182. package/es/plus/productSelect/ProductCard/SkuCard/components/Favorite/index.less +11 -0
  183. package/es/plus/productSelect/ProductCard/SkuCard/components/MemberPrice/index.js +85 -0
  184. package/es/plus/productSelect/ProductCard/SkuCard/components/MemberPrice/index.less +24 -0
  185. package/es/plus/productSelect/ProductCard/SkuCard/components/Price/index.js +121 -0
  186. package/es/plus/productSelect/ProductCard/SkuCard/components/Price/index.less +57 -0
  187. package/es/plus/productSelect/ProductCard/SkuCard/components/Promotions/index.js +95 -0
  188. package/es/plus/productSelect/ProductCard/SkuCard/components/Promotions/index.less +18 -0
  189. package/es/plus/productSelect/ProductCard/SkuCard/components/Resource/index.js +31 -0
  190. package/es/plus/productSelect/ProductCard/SkuCard/components/Resource/index.less +3 -0
  191. package/es/plus/productSelect/ProductCard/SkuCard/components/Stock/index.js +47 -0
  192. package/es/plus/productSelect/ProductCard/SkuCard/components/Stock/index.less +3 -0
  193. package/es/plus/productSelect/ProductCard/SkuCard/components/SubTitle/index.js +34 -0
  194. package/es/plus/productSelect/ProductCard/SkuCard/components/SubTitle/index.less +13 -0
  195. package/es/plus/productSelect/ProductCard/SkuCard/components/Tags/index.js +95 -0
  196. package/es/plus/productSelect/ProductCard/SkuCard/components/Tags/index.less +18 -0
  197. package/es/plus/productSelect/ProductCard/SkuCard/components/Time/index.js +31 -0
  198. package/es/plus/productSelect/ProductCard/SkuCard/components/Time/index.less +3 -0
  199. package/es/plus/productSelect/ProductCard/SkuCard/components/Title/index.js +34 -0
  200. package/es/plus/productSelect/ProductCard/SkuCard/components/Title/index.less +13 -0
  201. package/es/plus/productSelect/ProductCard/SkuCard/components/TooltipTags/index.js +39 -0
  202. package/es/plus/productSelect/ProductCard/SkuCard/components/TooltipTags/index.less +22 -0
  203. package/es/plus/productSelect/ProductCard/SkuCard/components/WarningLists/index.js +20 -0
  204. package/es/plus/productSelect/ProductCard/SkuCard/components/WarningLists/index.less +20 -0
  205. package/es/plus/productSelect/ProductCard/SkuCard/hooks/useDynamicComponents.js +55 -0
  206. package/es/plus/productSelect/ProductCard/SkuCard/index.js +38 -0
  207. package/es/plus/productSelect/ProductCard/SkuCard/locales.js +41 -0
  208. package/es/plus/productSelect/ProductCard/SkuCard/status.js +481 -0
  209. package/es/plus/productSelect/ProductCard/SkuCard/type.js +1 -0
  210. package/es/plus/productSelect/ProductCard/SkuCard/utils.js +21 -0
  211. package/es/plus/productSelect/components/pisellPriceText/index.js +7 -5
  212. package/lib/components/appointmentBooking/components/Cart/Item/Total.d.ts +0 -1
  213. package/lib/components/appointmentBooking/components/Cart/Item/index.d.ts +0 -1
  214. package/lib/components/appointmentBooking/components/Cart/index.d.ts +0 -1
  215. package/lib/components/appointmentBooking/components/Deposit/index.d.ts +0 -1
  216. package/lib/components/appointmentBooking/components/Footer/index.d.ts +0 -1
  217. package/lib/components/appointmentBooking/deposit/components/PolicyModal/index.d.ts +0 -1
  218. package/lib/components/booking/components/TabProduct/index.d.ts +0 -1
  219. package/lib/components/booking/components/TabProduct/productItem/index.d.ts +0 -1
  220. package/lib/components/booking/components/actionButtons/index.js +22 -15
  221. package/lib/components/booking/components/footer/amount.js +1 -1
  222. package/lib/components/booking/components/footer/index.js +2 -2
  223. package/lib/components/booking/components/footer/utils.js +8 -1
  224. package/lib/components/booking/components/reloadResourceModal/index.d.ts +0 -1
  225. package/lib/components/booking/components/voucher/index.js +33 -40
  226. package/lib/components/booking/forms/footer.d.ts +0 -1
  227. package/lib/components/booking/forms/sendModal/useSendModal.d.ts +0 -1
  228. package/lib/components/booking/forms/single/index.d.ts +0 -1
  229. package/lib/components/booking/info2/cartClientCard/index.js +7 -3
  230. package/lib/components/booking/materiels/contacts/index.d.ts +0 -1
  231. package/lib/components/checkout/PaymentModal.js +20 -16
  232. package/lib/components/checkout/hooks/useWalletPass.js +57 -45
  233. package/lib/components/eftpos/form/index.d.ts +0 -1
  234. package/lib/components/eftpos/hooks.d.ts +0 -1
  235. package/lib/components/eftpos/index.d.ts +0 -1
  236. package/lib/components/eftpos/pos.d.ts +0 -1
  237. package/lib/components/eftposPay/amount.d.ts +0 -1
  238. package/lib/components/eftposPay/component/fail/failCustom.d.ts +0 -1
  239. package/lib/components/eftposPay/component/fail/index.d.ts +0 -1
  240. package/lib/components/eftposPay/component/fail/network.d.ts +0 -1
  241. package/lib/components/eftposPay/component/fail/unknow.d.ts +0 -1
  242. package/lib/components/eftposPay/component/manual/index.d.ts +0 -1
  243. package/lib/components/eftposPay/component/signature/index.d.ts +0 -1
  244. package/lib/components/eftposPay/hooks.d.ts +1 -1
  245. package/lib/components/eftposPay/pay.d.ts +0 -1
  246. package/lib/components/eftposPay/store/index.d.ts +2 -2
  247. package/lib/components/eventBooking/components/Provider/Cart/Deposit/index.d.ts +0 -1
  248. package/lib/components/eventBooking/components/Provider/Cart/Item/index.d.ts +0 -1
  249. package/lib/components/eventBooking/components/Provider/Cart/index.d.ts +0 -1
  250. package/lib/components/eventBooking/components/Provider/Content/index.d.ts +0 -1
  251. package/lib/components/eventBooking/components/Provider/Event/index.d.ts +0 -1
  252. package/lib/components/eventBooking/components/Provider/Footer/index.d.ts +0 -1
  253. package/lib/components/eventBooking/components/Provider/Header/index.d.ts +0 -1
  254. package/lib/components/eventBooking/components/Provider/Information/index.d.ts +0 -1
  255. package/lib/components/eventBooking/components/Provider/Resource/index.d.ts +0 -1
  256. package/lib/components/eventBooking/components/Provider/SelectHolderModal.d.ts +0 -1
  257. package/lib/components/eventBooking/components/bookingDetailModal/components/BookingOptions.d.ts +0 -1
  258. package/lib/components/eventBooking/components/bookingDetailModal/components/Resource.d.ts +0 -1
  259. package/lib/components/eventBooking/components/bookingDetailModal/components/Schedule.d.ts +0 -1
  260. package/lib/components/eventBooking/components/scheduleCalendar/ProductItem/index.d.ts +0 -1
  261. package/lib/components/list/List.js +771 -0
  262. package/lib/components/list/List.less +2 -0
  263. package/lib/components/list/ResponsiveWrapper.js +145 -0
  264. package/lib/components/list/TestResponsiveWrapper.js +493 -0
  265. package/lib/components/list/TestResponsiveWrapper.less +968 -0
  266. package/lib/components/list/components/EmptyState/EmptyState.js +75 -0
  267. package/lib/components/list/components/EmptyState/EmptyState.less +121 -0
  268. package/lib/components/list/components/EmptyState/index.js +35 -0
  269. package/lib/components/list/components/ListItemSkeleton/ListItemSkeleton.js +75 -0
  270. package/lib/components/list/components/ListItemSkeleton/ListItemSkeleton.less +29 -0
  271. package/lib/components/list/components/ListItemSkeleton/index.js +41 -0
  272. package/lib/components/list/components/Pagination/Pagination.js +205 -0
  273. package/lib/components/list/components/Pagination/Pagination.less +439 -0
  274. package/lib/components/list/components/Pagination/index.js +35 -0
  275. package/lib/components/list/components/ScrollLoader/ScrollLoader.js +37 -0
  276. package/lib/components/list/components/ScrollLoader/ScrollLoader.less +3 -0
  277. package/lib/components/list/components/ScrollLoader/index.js +35 -0
  278. package/lib/components/list/components/Tab/Tab.js +72 -0
  279. package/lib/components/list/components/Tab/Tab.less +139 -0
  280. package/lib/components/list/components/Tab/index.js +35 -0
  281. package/lib/components/list/components/Tab/types.js +17 -0
  282. package/lib/components/list/components/TabSkeleton/TabSkeleton.js +61 -0
  283. package/lib/components/list/components/TabSkeleton/TabSkeleton.less +38 -0
  284. package/lib/components/list/components/TabSkeleton/index.js +41 -0
  285. package/lib/components/list/components/WaterfallList/WaterfallList.js +178 -0
  286. package/lib/components/list/components/WaterfallList/WaterfallList.less +201 -0
  287. package/lib/components/list/components/WaterfallList/index.js +35 -0
  288. package/lib/components/list/examples/GroupedListExample.js +210 -0
  289. package/lib/components/list/hooks/index.js +47 -0
  290. package/lib/components/list/hooks/useDevice.js +96 -0
  291. package/lib/components/list/hooks/useListState.js +149 -0
  292. package/lib/components/list/hooks/useWaterfall.js +124 -0
  293. package/lib/components/list/index.js +60 -0
  294. package/lib/components/list/locales.js +113 -0
  295. package/lib/components/list/styles/base.less +39 -0
  296. package/lib/components/list/styles/content.less +416 -0
  297. package/lib/components/list/styles/floatButton.less +107 -0
  298. package/lib/components/list/styles/footer.less +49 -0
  299. package/lib/components/list/styles/header.less +69 -0
  300. package/lib/components/list/styles/responsive.less +166 -0
  301. package/lib/components/list/types.js +17 -0
  302. package/lib/components/list/utils/getText.js +95 -0
  303. package/lib/components/list/utils/index.js +43 -0
  304. package/lib/components/pay/toB/store/hooks.js +16 -8
  305. package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/StripeSDK/index.d.ts +0 -1
  306. package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/index.d.ts +0 -1
  307. package/lib/components/pisellSelectCustomerModal/RightPanel/Add/index.d.ts +0 -1
  308. package/lib/components/productExtension/fields/Actor/index.d.ts +0 -1
  309. package/lib/components/productExtension/fields/Forms/index.d.ts +0 -1
  310. package/lib/components/productExtension/fields/SelectProducts/ProductItem/index.d.ts +0 -1
  311. package/lib/components/productExtension/fields/SelectProducts/index.d.ts +0 -1
  312. package/lib/components/schedules/components/ScheduleList/index.d.ts +0 -1
  313. package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/MaxParticipantsModule/index.d.ts +0 -1
  314. package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/index.d.ts +0 -1
  315. package/lib/components/schedules/products/ProductDetailDrawer/index.d.ts +0 -1
  316. package/lib/components/schedules/products/index.d.ts +0 -1
  317. package/lib/components/schedules/resources/index.d.ts +0 -1
  318. package/lib/components/schedules/resources/relationProduct/index.d.ts +0 -1
  319. package/lib/components/schedules/schedules/AllSchedules/index.d.ts +0 -1
  320. package/lib/components/schedules/schedules/ScheduleDetailDrawer/index.d.ts +0 -1
  321. package/lib/components/schedules/schedules/index.d.ts +0 -1
  322. package/lib/components/shoppingCart/components/Render/index.d.ts +0 -1
  323. package/lib/components/shoppingCart/index.d.ts +0 -1
  324. package/lib/components/ticketBooking/components/ProductDisplayAdapter/ProductDisplayAdapter.js +165 -0
  325. package/lib/components/ticketBooking/components/ProductDisplayAdapter/index.js +45 -0
  326. package/lib/components/ticketBooking/components/ProductDisplayAdapter/index.less +41 -0
  327. package/lib/components/ticketBooking/components/ProductDisplayAdapter/types.js +247 -0
  328. package/lib/components/ticketBooking/components/ProductDisplayAdapter/utils.js +100 -0
  329. package/lib/components/ticketBooking/components/addServiceVariant/addService.d.ts +20 -0
  330. package/lib/components/ticketBooking/components/addServiceVariant/addService.js +45 -11
  331. package/lib/components/ticketBooking/components/addServiceVariant/index.js +3 -2
  332. package/lib/components/ticketBooking/components/menuBar/index.js +24 -18
  333. package/lib/components/ticketBooking/components/menuBar/index.less +27 -1
  334. package/lib/components/ticketBooking/components/ticketBooking/index.d.ts +6 -1
  335. package/lib/components/ticketBooking/components/ticketBooking/index.js +56 -25
  336. package/lib/components/ticketBooking/components/timeBar/index.less +1 -0
  337. package/lib/components/ticketBooking/context/IsActiveContext.js +56 -0
  338. package/lib/components/ticketBooking/context/OsKeyContext.js +56 -0
  339. package/lib/components/ticketBooking/context/index.js +44 -0
  340. package/lib/components/ticketBooking/hooks/pisellos/bookingTicket.js +5 -1
  341. package/lib/components/ticketBooking/hooks/pisellos/index.js +3 -1
  342. package/lib/components/ticketBooking/hooks/pisellos/useActiveExecute.js +47 -0
  343. package/lib/components/ticketBooking/hooks/pisellos/useCustomer.js +17 -10
  344. package/lib/components/ticketBooking/hooks/pisellos/useProducts.js +26 -4
  345. package/lib/components/ticketBooking/hooks/pisellos/useScanCustomer.js +4 -2
  346. package/lib/components/ticketBooking/hooks/pisellos/useScanGlobal.js +6 -2
  347. package/lib/components/ticketBooking/hooks/pisellos/useShopDiscountModule.js +37 -0
  348. package/lib/components/ticketBooking/index.d.ts +6 -0
  349. package/lib/components/ticketBooking/index.js +64 -8
  350. package/lib/components/ticketBooking/utils/index.js +70 -2
  351. package/lib/components/ticketBooking/utils/productCache.js +144 -0
  352. package/lib/components/wallet/hooks/useWalletCard.d.ts +0 -1
  353. package/lib/index.js +6 -0
  354. package/lib/plus/productSelect/ProductCard/SkuCard/SkuCardA1/index.js +42 -0
  355. package/lib/plus/productSelect/ProductCard/SkuCard/SkuCardA1/index.less +8 -0
  356. package/lib/plus/productSelect/ProductCard/SkuCard/SkuCardA2/index.js +42 -0
  357. package/lib/plus/productSelect/ProductCard/SkuCard/SkuCardA2/index.less +17 -0
  358. package/lib/plus/productSelect/ProductCard/SkuCard/SkuCardA5/index.js +42 -0
  359. package/lib/plus/productSelect/ProductCard/SkuCard/SkuCardA5/index.less +17 -0
  360. package/lib/plus/productSelect/ProductCard/SkuCard/SkuCardA9/index.js +42 -0
  361. package/lib/plus/productSelect/ProductCard/SkuCard/SkuCardA9/index.less +17 -0
  362. package/lib/plus/productSelect/ProductCard/SkuCard/SkuCardCustom/index.js +42 -0
  363. package/lib/plus/productSelect/ProductCard/SkuCard/SkuCardCustom/index.less +2 -0
  364. package/lib/plus/productSelect/ProductCard/SkuCard/components/Action/index.js +129 -0
  365. package/lib/plus/productSelect/ProductCard/SkuCard/components/Action/index.less +8 -0
  366. package/lib/plus/productSelect/ProductCard/SkuCard/components/Capacity/index.js +52 -0
  367. package/lib/plus/productSelect/ProductCard/SkuCard/components/Capacity/index.less +3 -0
  368. package/lib/plus/productSelect/ProductCard/SkuCard/components/CardCom/index.js +178 -0
  369. package/lib/plus/productSelect/ProductCard/SkuCard/components/CardCom/index.less +44 -0
  370. package/lib/plus/productSelect/ProductCard/SkuCard/components/CardMask/index.js +52 -0
  371. package/lib/plus/productSelect/ProductCard/SkuCard/components/CardMask/index.less +14 -0
  372. package/lib/plus/productSelect/ProductCard/SkuCard/components/CardMoreText/index.js +63 -0
  373. package/lib/plus/productSelect/ProductCard/SkuCard/components/CardMoreText/index.less +30 -0
  374. package/lib/plus/productSelect/ProductCard/SkuCard/components/CardWrapper/index.js +131 -0
  375. package/lib/plus/productSelect/ProductCard/SkuCard/components/CardWrapper/index.less +46 -0
  376. package/lib/plus/productSelect/ProductCard/SkuCard/components/Countdown/index.js +62 -0
  377. package/lib/plus/productSelect/ProductCard/SkuCard/components/Countdown/index.less +9 -0
  378. package/lib/plus/productSelect/ProductCard/SkuCard/components/Cover/index.js +78 -0
  379. package/lib/plus/productSelect/ProductCard/SkuCard/components/Cover/index.less +31 -0
  380. package/lib/plus/productSelect/ProductCard/SkuCard/components/Duration/index.js +51 -0
  381. package/lib/plus/productSelect/ProductCard/SkuCard/components/Duration/index.less +3 -0
  382. package/lib/plus/productSelect/ProductCard/SkuCard/components/Favorite/index.js +94 -0
  383. package/lib/plus/productSelect/ProductCard/SkuCard/components/Favorite/index.less +11 -0
  384. package/lib/plus/productSelect/ProductCard/SkuCard/components/MemberPrice/index.js +115 -0
  385. package/lib/plus/productSelect/ProductCard/SkuCard/components/MemberPrice/index.less +24 -0
  386. package/lib/plus/productSelect/ProductCard/SkuCard/components/Price/index.js +139 -0
  387. package/lib/plus/productSelect/ProductCard/SkuCard/components/Price/index.less +57 -0
  388. package/lib/plus/productSelect/ProductCard/SkuCard/components/Promotions/index.js +97 -0
  389. package/lib/plus/productSelect/ProductCard/SkuCard/components/Promotions/index.less +18 -0
  390. package/lib/plus/productSelect/ProductCard/SkuCard/components/Resource/index.js +51 -0
  391. package/lib/plus/productSelect/ProductCard/SkuCard/components/Resource/index.less +3 -0
  392. package/lib/plus/productSelect/ProductCard/SkuCard/components/Stock/index.js +58 -0
  393. package/lib/plus/productSelect/ProductCard/SkuCard/components/Stock/index.less +3 -0
  394. package/lib/plus/productSelect/ProductCard/SkuCard/components/SubTitle/index.js +56 -0
  395. package/lib/plus/productSelect/ProductCard/SkuCard/components/SubTitle/index.less +13 -0
  396. package/lib/plus/productSelect/ProductCard/SkuCard/components/Tags/index.js +97 -0
  397. package/lib/plus/productSelect/ProductCard/SkuCard/components/Tags/index.less +18 -0
  398. package/lib/plus/productSelect/ProductCard/SkuCard/components/Time/index.js +51 -0
  399. package/lib/plus/productSelect/ProductCard/SkuCard/components/Time/index.less +3 -0
  400. package/lib/plus/productSelect/ProductCard/SkuCard/components/Title/index.js +56 -0
  401. package/lib/plus/productSelect/ProductCard/SkuCard/components/Title/index.less +13 -0
  402. package/lib/plus/productSelect/ProductCard/SkuCard/components/TooltipTags/index.js +58 -0
  403. package/lib/plus/productSelect/ProductCard/SkuCard/components/TooltipTags/index.less +22 -0
  404. package/lib/plus/productSelect/ProductCard/SkuCard/components/WarningLists/index.js +49 -0
  405. package/lib/plus/productSelect/ProductCard/SkuCard/components/WarningLists/index.less +20 -0
  406. package/lib/plus/productSelect/ProductCard/SkuCard/hooks/useDynamicComponents.js +83 -0
  407. package/lib/plus/productSelect/ProductCard/SkuCard/index.js +68 -0
  408. package/lib/plus/productSelect/ProductCard/SkuCard/locales.js +65 -0
  409. package/lib/plus/productSelect/ProductCard/SkuCard/status.js +501 -0
  410. package/lib/plus/productSelect/ProductCard/SkuCard/type.js +17 -0
  411. package/lib/plus/productSelect/ProductCard/SkuCard/utils.js +37 -0
  412. package/lib/plus/productSelect/components/pisellPriceText/index.js +6 -5
  413. package/lowcode/sku-card/meta.ts +1812 -0
  414. package/lowcode/sku-card/snippets.ts +372 -0
  415. package/lowcode/sku-list/meta.ts +410 -0
  416. package/package.json +1 -1
  417. package/es/components/booking/components/actionButtons/index.d.ts +0 -31
  418. package/es/components/booking/components/footer/index.d.ts +0 -11
  419. package/es/components/booking/components/voucher/index.d.ts +0 -3
  420. package/es/components/booking/info2/cartClientCard/index.d.ts +0 -6
  421. package/es/components/checkout/hooks/useWalletPass.d.ts +0 -40
  422. package/es/components/pay/toB/store/hooks.d.ts +0 -15
  423. package/es/components/ticketBooking/components/addServiceVariant/index.d.ts +0 -6
  424. package/es/components/ticketBooking/components/menuBar/index.d.ts +0 -3
  425. package/es/components/ticketBooking/hooks/pisellos/bookingTicket.d.ts +0 -1
  426. package/es/components/ticketBooking/hooks/pisellos/index.d.ts +0 -3
  427. package/es/components/ticketBooking/hooks/pisellos/useCustomer.d.ts +0 -25
  428. package/es/components/ticketBooking/hooks/pisellos/useScanCustomer.d.ts +0 -5
  429. package/es/components/ticketBooking/hooks/pisellos/useScanGlobal.d.ts +0 -5
  430. package/es/components/ticketBooking/utils/index.d.ts +0 -62
  431. package/es/index.d.ts +0 -63
  432. package/es/plus/productSelect/components/pisellPriceText/index.d.ts +0 -12
  433. package/lib/components/booking/components/actionButtons/index.d.ts +0 -31
  434. package/lib/components/booking/components/footer/index.d.ts +0 -11
  435. package/lib/components/booking/components/voucher/index.d.ts +0 -3
  436. package/lib/components/booking/info2/cartClientCard/index.d.ts +0 -6
  437. package/lib/components/checkout/hooks/useWalletPass.d.ts +0 -40
  438. package/lib/components/pay/toB/store/hooks.d.ts +0 -15
  439. package/lib/components/ticketBooking/components/addServiceVariant/index.d.ts +0 -6
  440. package/lib/components/ticketBooking/components/menuBar/index.d.ts +0 -3
  441. package/lib/components/ticketBooking/hooks/pisellos/bookingTicket.d.ts +0 -1
  442. package/lib/components/ticketBooking/hooks/pisellos/index.d.ts +0 -3
  443. package/lib/components/ticketBooking/hooks/pisellos/useCustomer.d.ts +0 -25
  444. package/lib/components/ticketBooking/hooks/pisellos/useScanCustomer.d.ts +0 -5
  445. package/lib/components/ticketBooking/hooks/pisellos/useScanGlobal.d.ts +0 -5
  446. package/lib/components/ticketBooking/utils/index.d.ts +0 -62
  447. package/lib/index.d.ts +0 -63
  448. package/lib/plus/productSelect/components/pisellPriceText/index.d.ts +0 -12
@@ -0,0 +1,41 @@
1
+ .sku-list-container {
2
+ height: 100%;
3
+ background-color: #4e4e4e;
4
+ .sku-list {
5
+ background-color: #4e4e4e;
6
+ overflow: auto;
7
+ border-radius: 0;
8
+ .list-group-items {
9
+ .list-item {
10
+ height: 100% !important;
11
+ .pisell-product-sku__card-wrapper {
12
+ height: 100% ;
13
+ .pisell-lowcode-card {
14
+ height: 100% !important;
15
+ }
16
+ }
17
+ }
18
+ }
19
+ &::-webkit-scrollbar {
20
+ display: none;
21
+ width: 0;
22
+ height: 0;
23
+ }
24
+ }
25
+ .list-content {
26
+ &::-webkit-scrollbar {
27
+ display: none;
28
+ width: 0;
29
+ height: 0;
30
+ }
31
+ }
32
+ .pisell-list-header {
33
+ overflow: auto;
34
+
35
+ &::-webkit-scrollbar {
36
+ display: none;
37
+ width: 0;
38
+ height: 0;
39
+ }
40
+ }
41
+ }
@@ -0,0 +1,273 @@
1
+ /**
2
+ * 产品展示配置类型定义
3
+ */
4
+
5
+ // 导入 SkuCard 的完整类型定义
6
+
7
+ /** 预设配置的字符串键 */
8
+
9
+ // 同 'product-select'
10
+
11
+ /** ProductSelect 布局配置 */
12
+
13
+ /** ProductSelect 列表设置 */
14
+
15
+ /** ProductSelect 模式配置 */
16
+
17
+ /** SkuCard 显示模式 */
18
+
19
+ /**
20
+ * SkuCard 配置
21
+ * 直接使用 ProductCardConfig 类型,保持类型同步
22
+ *
23
+ * @see packages/private-materials/src/plus/productSelect/ProductCard/SkuCard/type.ts ProductCardConfig
24
+ */
25
+
26
+ /** List 布局类型 */
27
+
28
+ /** Tab 样式类型 */
29
+
30
+ /** List 组件配置 */
31
+
32
+ /** SkuList 模式配置 */
33
+
34
+ /** 展示模式类型 */
35
+
36
+ /**
37
+ * 产品展示配置
38
+ * 用于配置化控制产品展示的方式
39
+ */
40
+
41
+ /**
42
+ * 产品展示配置预设
43
+ * 支持通过字符串键或直接使用配置对象
44
+ */
45
+ export var ProductDisplayPresets = {
46
+ // 默认配置
47
+ default: {
48
+ displayMode: 'product-select',
49
+ productSelectConfig: {
50
+ showSearch: true,
51
+ showTab: true,
52
+ layout: {
53
+ grid: true,
54
+ config: '12:12'
55
+ },
56
+ productListSetting: {
57
+ isProductCover: 1,
58
+ isTitle: 1,
59
+ isSubtitle: 1,
60
+ isPrice: 1,
61
+ isOriginPrice: 0,
62
+ isStock: 0
63
+ }
64
+ }
65
+ },
66
+ // 别名:product-select
67
+ 'product-select': {
68
+ displayMode: 'product-select',
69
+ productSelectConfig: {
70
+ showSearch: true,
71
+ showTab: true,
72
+ layout: {
73
+ grid: true,
74
+ config: '12:12'
75
+ },
76
+ productListSetting: {
77
+ isProductCover: 1,
78
+ isTitle: 1,
79
+ isSubtitle: 1,
80
+ isPrice: 1,
81
+ isOriginPrice: 0,
82
+ isStock: 0
83
+ }
84
+ }
85
+ },
86
+ // SkuList A1
87
+ 'sku-list-a1': {
88
+ displayMode: 'sku-list',
89
+ skuListConfig: {
90
+ listConfig: {
91
+ layout: 'grid',
92
+ showPagination: false,
93
+ showTab: false
94
+ },
95
+ skuCardAllConfig: {
96
+ skuCardConfig: {
97
+ displayMode: 'display_a1',
98
+ isFavorite: false,
99
+ layoutDirection: 'column'
100
+ }
101
+ }
102
+ }
103
+ },
104
+ // SkuList A2 - 详细信息卡片
105
+ 'sku-list-a2': {
106
+ displayMode: 'sku-list',
107
+ skuListConfig: {
108
+ listConfig: {
109
+ layout: 'grid',
110
+ showPagination: false,
111
+ showTab: false
112
+ },
113
+ skuCardAllConfig: {
114
+ skuCardConfig: {
115
+ displayMode: 'display_a2',
116
+ layoutDirection: 'row',
117
+ radius: 12,
118
+ paddingX: 12,
119
+ paddingY: 12,
120
+ skuImageConfig: {
121
+ isCover: true,
122
+ width: '140px',
123
+ height: '140px',
124
+ radius: 8
125
+ },
126
+ skuNameConfig: {
127
+ isOpen: true,
128
+ fontSize: 16,
129
+ fontWeight: 600,
130
+ color: '#101828',
131
+ ellipsisCount: 2
132
+ },
133
+ skuSubtitleConfig: {
134
+ isOpen: true,
135
+ fontSize: 14,
136
+ color: '#667085',
137
+ ellipsisCount: 1
138
+ },
139
+ skuPriceConfig: {
140
+ isOpen: true,
141
+ isPrice: true,
142
+ priceFontSize: 18,
143
+ priceFontWeight: 600,
144
+ priceColor: '#101828',
145
+ isOriginPrice: true,
146
+ originPriceFontSize: 14,
147
+ originPriceColor: '#98A2B3'
148
+ },
149
+ skuStockConfig: {
150
+ isOpen: true,
151
+ fontSize: 12,
152
+ color: '#667085'
153
+ }
154
+ }
155
+ }
156
+ }
157
+ },
158
+ // SkuList A5
159
+ 'sku-list-a5': {
160
+ displayMode: 'sku-list',
161
+ skuListConfig: {
162
+ listConfig: {
163
+ layout: 'grid',
164
+ showPagination: false,
165
+ showTab: true,
166
+ // 启用 Tab
167
+ tabStyle: 'switch',
168
+ // 使用 switch 模式
169
+ stickyTop: true,
170
+ // Tab 吸顶
171
+ columns: 5,
172
+ tabGroup: 'category'
173
+ },
174
+ skuCardAllConfig: {
175
+ skuCardConfig: {
176
+ displayMode: 'display_a5',
177
+ layoutDirection: 'column',
178
+ background: '#ffffff',
179
+ paddingY: 8,
180
+ paddingX: 8,
181
+ marginY: 0,
182
+ marginX: 0,
183
+ radius: 12,
184
+ isBorderVisible: false,
185
+ borderWidth: 1,
186
+ borderColor: '#ffffff',
187
+ isFoldable: true
188
+ },
189
+ skuActionConfig: {
190
+ isOpen: false
191
+ },
192
+ skuTextConfig: {
193
+ skuSubtitleConfig: {
194
+ isOpen: false
195
+ },
196
+ skuNameConfig: {
197
+ isOpen: true
198
+ // fontSize: 18,
199
+ // fontWeight: 600,
200
+ // color: '#101828',
201
+ // ellipsisCount: 1,
202
+ },
203
+ skuPriceConfig: {
204
+ isOpen: true,
205
+ isPrice: true,
206
+ priceFontSize: 18,
207
+ priceFontWeight: 600,
208
+ priceColor: '#101828',
209
+ isShowZeroPrice: true,
210
+ isShowFreePrice: false,
211
+ isOriginPrice: true,
212
+ originPriceFontSize: 16,
213
+ originPriceFontWeight: 400,
214
+ originPriceColor: '#667085',
215
+ isTaxPrice: true,
216
+ isCustomText: false
217
+ }
218
+ },
219
+ skuImageConfig: {
220
+ isCover: true,
221
+ width: '100%',
222
+ height: '126px',
223
+ isTextFallback: true,
224
+ background: '#ffffff',
225
+ skuImageRadius: 12,
226
+ slotPosition: 'left_top',
227
+ radius: 12
228
+ },
229
+ skuExtraConfig: {
230
+ isOpen: false
231
+ }
232
+ }
233
+ }
234
+ }
235
+ };
236
+
237
+ /**
238
+ * 兼容性:保持原有的导出方式
239
+ * @deprecated 建议使用 ProductDisplayPresets['product-select'] 或字符串键访问
240
+ */
241
+ export var LegacyProductDisplayPresets = {
242
+ /** @deprecated 使用 ProductDisplayPresets['product-select'] */
243
+ DEFAULT_PRODUCT_SELECT: ProductDisplayPresets['product-select'],
244
+ /** @deprecated 使用 ProductDisplayPresets['sku-list-a1'] */
245
+ DEFAULT_SKU_LIST_A1: ProductDisplayPresets['sku-list-a1'],
246
+ /** @deprecated 使用 ProductDisplayPresets['sku-list-a2'] */
247
+ DEFAULT_SKU_LIST_A2: ProductDisplayPresets['sku-list-a2'],
248
+ /** @deprecated 使用 ProductDisplayPresets['sku-list-a5'] */
249
+ DEFAULT_SKU_LIST_A5: ProductDisplayPresets['sku-list-a5']
250
+ };
251
+
252
+ /**
253
+ * 工具函数:将字符串键或配置对象解析为配置对象
254
+ */
255
+ export function resolveProductDisplayConfig(config) {
256
+ // 未传配置,使用默认
257
+ if (!config) {
258
+ return ProductDisplayPresets['default'];
259
+ }
260
+
261
+ // 如果是字符串,从预设中获取
262
+ if (typeof config === 'string') {
263
+ var preset = ProductDisplayPresets[config];
264
+ if (!preset) {
265
+ console.warn("Unknown preset key: \"".concat(config, "\", falling back to default"));
266
+ return ProductDisplayPresets['default'];
267
+ }
268
+ return preset;
269
+ }
270
+
271
+ // 如果是对象,直接返回
272
+ return config;
273
+ }
@@ -0,0 +1,130 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
5
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
+ /**
8
+ * 格式化 SKU 数据源,适配 SkuCard 组件
9
+ */
10
+ export var formatSkuDataSource = function formatSkuDataSource(dataSource) {
11
+ return {
12
+ id: dataSource.id,
13
+ title: dataSource.title,
14
+ subtitle: dataSource.subtitle,
15
+ cover: dataSource.cover,
16
+ price: dataSource.price,
17
+ original_price: dataSource.original_price,
18
+ stock: dataSource.stock_quantity,
19
+ sortKeys: ['title', 'subtitle', 'price']
20
+ };
21
+ };
22
+
23
+ /**
24
+ * Tab 项接口定义(与 List 组件保持一致)
25
+ */
26
+
27
+ /**
28
+ * 产品分类信息接口
29
+ */
30
+
31
+ /**
32
+ * 产品项接口
33
+ */
34
+
35
+ /**
36
+ * 根据产品数据生成分类 Tabs(Switch 模式)
37
+ * 参考 TestResponsiveWrapper 的 generateSimpleTabItems 函数
38
+ *
39
+ * @param products 产品列表
40
+ * @param tabStyle tab 样式类型
41
+ * @returns TabItem 数组
42
+ */
43
+ export var generateProductTabs = function generateProductTabs(products) {
44
+ var tabStyle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'switch';
45
+ if (!products || products.length === 0) {
46
+ return [{
47
+ key: 'all',
48
+ label: '全部'
49
+ }];
50
+ }
51
+ if (tabStyle === 'switch') {
52
+ // 切换模式:提取产品的分类信息,不显示动态数量
53
+ var categoryMap = new Map();
54
+
55
+ // 收集所有分类
56
+ products.forEach(function (product) {
57
+ if (product.category && Array.isArray(product.category)) {
58
+ product.category.forEach(function (cat) {
59
+ if (!categoryMap.has(cat.id)) {
60
+ categoryMap.set(cat.id, cat);
61
+ }
62
+ });
63
+ }
64
+ });
65
+
66
+ // 按 sort 字段排序(降序,sort 越大越靠前)
67
+ var sortedCategories = Array.from(categoryMap.values()).sort(function (a, b) {
68
+ return (b.sort || 0) - (a.sort || 0);
69
+ });
70
+
71
+ // 生成 tabs
72
+ var tabs = [{
73
+ key: 'all',
74
+ label: '全部'
75
+ }];
76
+ sortedCategories.forEach(function (category) {
77
+ tabs.push({
78
+ key: String(category.id),
79
+ label: category.name,
80
+ group: String(category.id)
81
+ });
82
+ });
83
+ return tabs;
84
+ } else {
85
+ // 锚点模式:基于实际数据统计数量
86
+ var categoryCount = products.reduce(function (acc, product) {
87
+ if (product.category && Array.isArray(product.category)) {
88
+ product.category.forEach(function (cat) {
89
+ var key = String(cat.id);
90
+ if (!acc[key]) {
91
+ acc[key] = {
92
+ count: 0,
93
+ category: cat
94
+ };
95
+ }
96
+ acc[key].count += 1;
97
+ });
98
+ }
99
+ return acc;
100
+ }, {});
101
+
102
+ // 生成 tabs
103
+ var _tabs = [{
104
+ key: 'all',
105
+ label: "\u5168\u90E8 (".concat(products.length, ")")
106
+ }];
107
+
108
+ // 按 sort 排序
109
+ var sortedEntries = Object.entries(categoryCount).sort(function (_ref, _ref2) {
110
+ var _ref3 = _slicedToArray(_ref, 2),
111
+ a = _ref3[1];
112
+ var _ref4 = _slicedToArray(_ref2, 2),
113
+ b = _ref4[1];
114
+ return (b.category.sort || 0) - (a.category.sort || 0);
115
+ });
116
+ sortedEntries.forEach(function (_ref5) {
117
+ var _ref6 = _slicedToArray(_ref5, 2),
118
+ key = _ref6[0],
119
+ _ref6$ = _ref6[1],
120
+ count = _ref6$.count,
121
+ category = _ref6$.category;
122
+ _tabs.push({
123
+ key: key,
124
+ label: "".concat(category.name, " (").concat(count, ")"),
125
+ group: key
126
+ });
127
+ });
128
+ return _tabs;
129
+ }
130
+ };
@@ -1,9 +1,29 @@
1
+ import { ProductDisplayConfig, ProductDisplayPresetKey } from '../ProductDisplayAdapter';
1
2
  import './index.less';
2
3
  interface AddServiceProps {
3
4
  onEdit?: any;
4
5
  dispatch?: any;
5
6
  state?: any;
6
7
  renderMode?: 'current' | 'drawer';
8
+ /**
9
+ * 产品展示配置
10
+ *
11
+ * 支持两种方式:
12
+ * 1. 简易模式:传入预设字符串,如 'product-select', 'sku-list-a1', 'sku-list-a2', 'sku-list-a5'
13
+ * 2. 完整配置模式:传入完整的配置对象
14
+ *
15
+ * @example
16
+ * // 简易模式
17
+ * <AddService productDisplayConfig="sku-list-a1" />
18
+ *
19
+ * @example
20
+ * // 完整配置模式
21
+ * <AddService productDisplayConfig={{
22
+ * displayMode: 'sku-list',
23
+ * skuListConfig: { ... }
24
+ * }} />
25
+ */
26
+ productDisplayConfig?: ProductDisplayPresetKey | ProductDisplayConfig;
7
27
  }
8
28
  declare const AddSerivce: (props: AddServiceProps) => JSX.Element | null;
9
29
  export default AddSerivce;
@@ -26,7 +26,7 @@ import { getProductExtend } from "../../../booking/info2/service/addService/util
26
26
  import { holderId, isDaysBooking, isNormalProductByDurationSchedule } from "../../../booking/info/service2/utils";
27
27
  import { isBooking4Shop } from "../../../booking/info/utils";
28
28
  import { useService } from "../../../booking/info/service/serviceManager";
29
- import ProductSelect from "../../../../plus/productSelect";
29
+ import ProductDisplayAdapter, { resolveProductDisplayConfig } from "../ProductDisplayAdapter";
30
30
  import "./index.less";
31
31
  import { addService, addServiceScroll, createSimpleCacheItem, genServiceKey, getIsShowNumber, isSameProduct } from "../../utils";
32
32
  import NotAvailable from "../notAvailable";
@@ -34,6 +34,7 @@ import dayjs from 'dayjs';
34
34
  import { useProducts } from "../../hooks/pisellos";
35
35
  import { createCacheItem, genValues, isBundle, isOption, setHandleSetService } from "./utils";
36
36
  import { useToast } from '@pisell/materials';
37
+ import { useIsActive } from "../../context/IsActiveContext";
37
38
  var productListLayout = {
38
39
  grid: true,
39
40
  config: '12:12'
@@ -52,11 +53,13 @@ var AddSerivce = function AddSerivce(props) {
52
53
  state = props.state,
53
54
  dispatch = props.dispatch,
54
55
  _props$renderMode = props.renderMode,
55
- renderMode = _props$renderMode === void 0 ? 'current' : _props$renderMode;
56
+ renderMode = _props$renderMode === void 0 ? 'current' : _props$renderMode,
57
+ productDisplayConfig = props.productDisplayConfig;
56
58
  var context = useEngineContext();
57
59
  var notAvailableRef = useRef(null);
58
60
  var isLoadedServiceRef = useRef(false);
59
61
  request.setRequest(context.appHelper.utils.request);
62
+ var isActive = useIsActive();
60
63
  var Toast = useToast();
61
64
  var _useService = useService({
62
65
  renderMode: renderMode,
@@ -71,12 +74,25 @@ var AddSerivce = function AddSerivce(props) {
71
74
  _useState2 = _slicedToArray(_useState, 2),
72
75
  currentProduct = _useState2[0],
73
76
  setCurrentProduct = _useState2[1];
77
+ var _useState3 = useState(true),
78
+ _useState4 = _slicedToArray(_useState3, 2),
79
+ firstLoading = _useState4[0],
80
+ setFirstLoading = _useState4[1];
74
81
  var stateRef = useRef(state);
75
82
  stateRef.current = state;
76
83
  var _useProducts = useProducts(),
77
84
  getProducts = _useProducts.getProducts,
78
85
  products = _useProducts.products,
79
86
  loading = _useProducts.loading;
87
+ useEffect(function () {
88
+ var timer = setTimeout(function () {
89
+ setFirstLoading(false);
90
+ }, 300);
91
+ return function () {
92
+ clearTimeout(timer);
93
+ };
94
+ }, []);
95
+
80
96
  // 组件卸载时清理所有定时器
81
97
  useEffect(function () {
82
98
  return function () {
@@ -140,8 +156,10 @@ var AddSerivce = function AddSerivce(props) {
140
156
  });
141
157
  });
142
158
  useMemo(function () {
143
- setHandleSetService(scanAddService);
144
- }, []);
159
+ if (isActive) {
160
+ setHandleSetService(scanAddService);
161
+ }
162
+ }, [isActive]);
145
163
 
146
164
  /*
147
165
  const removeNotAvailableService = (list: any) => {
@@ -543,20 +561,37 @@ var AddSerivce = function AddSerivce(props) {
543
561
  });
544
562
  }
545
563
  }, [renderMode, currentDate, customerId, menuList, currentDatetime]);
564
+
565
+ // 产品展示配置,支持字符串预设或完整配置对象
566
+ var finalDisplayConfig = useMemo(function () {
567
+ // 解析配置(支持字符串或对象)
568
+ var resolvedConfig = resolveProductDisplayConfig(productDisplayConfig);
569
+
570
+ // 如果是 ProductSelect 模式,合并默认的 layout 和 setting
571
+ if (resolvedConfig.displayMode === 'product-select') {
572
+ var _resolvedConfig$produ, _resolvedConfig$produ2;
573
+ return _objectSpread(_objectSpread({}, resolvedConfig), {}, {
574
+ productSelectConfig: _objectSpread(_objectSpread({}, resolvedConfig.productSelectConfig), {}, {
575
+ layout: ((_resolvedConfig$produ = resolvedConfig.productSelectConfig) === null || _resolvedConfig$produ === void 0 ? void 0 : _resolvedConfig$produ.layout) || productListLayout,
576
+ productListSetting: ((_resolvedConfig$produ2 = resolvedConfig.productSelectConfig) === null || _resolvedConfig$produ2 === void 0 ? void 0 : _resolvedConfig$produ2.productListSetting) || productListSetting
577
+ })
578
+ });
579
+ }
580
+ return resolvedConfig;
581
+ }, [productDisplayConfig]);
546
582
  return useMemo(function () {
547
583
  if (renderMode === 'current') {
548
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ProductSelect, {
584
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ProductDisplayAdapter, {
585
+ config: finalDisplayConfig,
549
586
  dataSource: renderList,
550
- layout: productListLayout,
551
- onChange: handleSelectProduct,
552
- value: currentProduct === null || currentProduct === void 0 ? void 0 : currentProduct.id,
553
- loading: !renderList.length && loading,
554
- productListSetting: productListSetting
587
+ loading: !renderList.length && loading || firstLoading,
588
+ currentProductId: currentProduct === null || currentProduct === void 0 ? void 0 : currentProduct.id,
589
+ onSelectProduct: handleSelectProduct
555
590
  }), /*#__PURE__*/React.createElement(NotAvailable, {
556
591
  ref: notAvailableRef
557
592
  }));
558
593
  }
559
594
  return null;
560
- }, [state.service.addModal, locales, renderList, state.amountSymbol, state.renderType, state === null || state === void 0 ? void 0 : state.activeCartId, holderId(state), loading, currentProduct, isBooking4]);
595
+ }, [state.service.addModal, locales, renderList, state.amountSymbol, state.renderType, state === null || state === void 0 ? void 0 : state.activeCartId, holderId(state), loading, currentProduct, isBooking4, finalDisplayConfig]);
561
596
  };
562
597
  export default AddSerivce;
@@ -8,7 +8,8 @@ import React, { useRef } from 'react';
8
8
  import AddService from "./addService";
9
9
  var AddServiceVariant = function AddServiceVariant(props) {
10
10
  var globalState = props.globalState,
11
- setGlobalState = props.setGlobalState;
11
+ setGlobalState = props.setGlobalState,
12
+ productDisplayConfig = props.productDisplayConfig;
12
13
  var stateRef = useRef(globalState);
13
14
  stateRef.current = globalState;
14
15
  var dispatch = function dispatch(_ref) {
@@ -22,7 +23,8 @@ var AddServiceVariant = function AddServiceVariant(props) {
22
23
  };
23
24
  return /*#__PURE__*/React.createElement(AddService, {
24
25
  state: globalState,
25
- dispatch: dispatch
26
+ dispatch: dispatch,
27
+ productDisplayConfig: productDisplayConfig
26
28
  });
27
29
  };
28
30
  export default AddServiceVariant;
@@ -4,9 +4,33 @@ import "./index.less";
4
4
  import { Menu } from 'antd';
5
5
  import { SettingOutlined } from '@ant-design/icons';
6
6
  import { locales } from '@pisell/utils';
7
- import { ConfigProvider } from '@pisell/materials';
8
- var index = function index() {
7
+ import { ConfigProvider, Iconfont } from '@pisell/materials';
8
+ var index = function index(props) {
9
+ var _props$activeNavKey = props.activeNavKey,
10
+ activeNavKey = _props$activeNavKey === void 0 ? 'ticket' : _props$activeNavKey,
11
+ onNavChange = props.onNavChange;
9
12
  var status = useNetworkStatus();
13
+
14
+ // 导航项配置
15
+ var navItems = [{
16
+ key: 'ticket',
17
+ icon: /*#__PURE__*/React.createElement(Iconfont, {
18
+ type: "pisell2-ticket",
19
+ style: {
20
+ fontSize: 32
21
+ }
22
+ }),
23
+ label: ''
24
+ }, {
25
+ key: 'food',
26
+ label: '',
27
+ icon: /*#__PURE__*/React.createElement(Iconfont, {
28
+ type: "pisell2-food",
29
+ style: {
30
+ fontSize: 32
31
+ }
32
+ })
33
+ }];
10
34
  var items = [{
11
35
  key: '1',
12
36
  icon: /*#__PURE__*/React.createElement(SettingOutlined, null),
@@ -43,6 +67,11 @@ var index = function index() {
43
67
  window.location.href = '/login';
44
68
  }
45
69
  };
70
+
71
+ // 处理导航项点击
72
+ var handleNavClick = function handleNavClick(key) {
73
+ onNavChange === null || onNavChange === void 0 || onNavChange(key);
74
+ };
46
75
  return /*#__PURE__*/React.createElement("div", {
47
76
  className: "pisell-ticket-booking-menu-bar"
48
77
  }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
@@ -58,21 +87,15 @@ var index = function index() {
58
87
  fill: "#8157D5"
59
88
  }))), /*#__PURE__*/React.createElement("div", {
60
89
  className: "nav-wrapper"
61
- }, /*#__PURE__*/React.createElement("div", {
62
- className: "nav-item active"
63
- }, /*#__PURE__*/React.createElement("svg", {
64
- xmlns: "http://www.w3.org/2000/svg",
65
- width: "32",
66
- height: "25",
67
- viewBox: "0 0 34 27",
68
- fill: "none"
69
- }, /*#__PURE__*/React.createElement("path", {
70
- d: "M13.8 7.05078V5.48828M13.8 14.082V12.5195M13.8 21.1133V19.5508M6.12 0.800781H27.88C29.6722 0.800781 30.5683 0.800781 31.2528 1.14139C31.8549 1.44099 32.3444 1.91905 32.6512 2.50706C33 3.17554 33 4.05062 33 5.80078V7.83203C29.9072 7.83203 27.4 10.2805 27.4 13.3008C27.4 16.3211 29.9072 18.7695 33 18.7695V20.8008C33 22.5509 33 23.426 32.6512 24.0945C32.3444 24.6825 31.8549 25.1606 31.2528 25.4602C30.5683 25.8008 29.6722 25.8008 27.88 25.8008H6.12C4.32783 25.8008 3.43175 25.8008 2.74723 25.4602C2.14511 25.1606 1.65557 24.6825 1.34878 24.0945C1 23.426 1 22.5509 1 20.8008V18.7695C4.09279 18.7695 6.6 16.3211 6.6 13.3008C6.6 10.2805 4.09279 7.83203 1 7.83203V5.80078C1 4.05062 1 3.17554 1.34878 2.50706C1.65557 1.91905 2.14511 1.44099 2.74723 1.14139C3.43175 0.800781 4.32783 0.800781 6.12 0.800781Z",
71
- stroke: "white",
72
- "stroke-width": "1.5",
73
- "stroke-linecap": "round",
74
- "stroke-linejoin": "round"
75
- }))))), /*#__PURE__*/React.createElement("div", {
90
+ }, navItems.map(function (navItem) {
91
+ return /*#__PURE__*/React.createElement("div", {
92
+ key: navItem.key,
93
+ className: "nav-item ".concat(activeNavKey === navItem.key ? 'active' : ''),
94
+ onClick: function onClick() {
95
+ return handleNavClick(navItem.key);
96
+ }
97
+ }, navItem.icon && navItem.icon, navItem.label && navItem.label);
98
+ }))), /*#__PURE__*/React.createElement("div", {
76
99
  className: "menu-wrapper"
77
100
  }, /*#__PURE__*/React.createElement(ConfigProvider, {
78
101
  theme: {