@pisell/private-materials 6.2.36 → 6.2.37

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 (347) 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 +1 -1
  6. package/build/lowcode/preview.js +13 -29
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +6 -6
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +8 -8
  11. package/es/components/Sales/Summary/utils.d.ts +1 -1
  12. package/es/components/appointmentBooking/components/Cart/Item/index.d.ts +0 -1
  13. package/es/components/appointmentBooking/components/Content/index.d.ts +0 -1
  14. package/es/components/appointmentBooking/components/Content/index.js +1 -1
  15. package/es/components/appointmentBooking/components/Content/index.less +3 -3
  16. package/es/components/appointmentBooking/components/Footer/index.d.ts +1 -0
  17. package/es/components/appointmentBooking/components/Guest/components/InformationOptionsModal/index.d.ts +1 -0
  18. package/es/components/appointmentBooking/components/Header/index.d.ts +0 -1
  19. package/es/components/appointmentBooking/components/Services/index.js +2 -2
  20. package/es/components/appointmentBooking/index.d.ts +0 -1
  21. package/es/components/appointmentBooking/index.js +8 -2
  22. package/es/components/booking/components/TabProduct/productItem/index.d.ts +0 -1
  23. package/es/components/booking/components/TabProduct/selectProductItem/index.d.ts +0 -1
  24. package/es/components/booking/components/collapsibleList/utils.d.ts +0 -1
  25. package/es/components/booking/components/emptyBooking/index.d.ts +0 -1
  26. package/es/components/booking/components/footer/FooterMenus/index.d.ts +0 -1
  27. package/es/components/booking/deposit/index.d.ts +0 -1
  28. package/es/components/booking/forms/single/RenderValueById.d.ts +1 -0
  29. package/es/components/booking/forms/single/RenderValueById.js +68 -17
  30. package/es/components/booking/forms/single/index.d.ts +0 -1
  31. package/es/components/booking/forms/single/index.less +67 -1
  32. package/es/components/booking/info/clientVariant/hooks/useClientFn.d.ts +0 -1
  33. package/es/components/booking/info/date/index.d.ts +0 -1
  34. package/es/components/booking/info/dateRange/index.d.ts +1 -0
  35. package/es/components/booking/info/header/index.d.ts +0 -1
  36. package/es/components/booking/info/hooks/useInfoHolder.d.ts +0 -1
  37. package/es/components/booking/info/notes/index.d.ts +0 -1
  38. package/es/components/booking/info/service/Lists.d.ts +0 -1
  39. package/es/components/booking/info/service/actions/index.d.ts +0 -1
  40. package/es/components/booking/info/service/addService/index.d.ts +0 -1
  41. package/es/components/booking/info/service/addService/utils.d.ts +1 -1
  42. package/es/components/booking/info/service/editService/BookingList/index.d.ts +1 -0
  43. package/es/components/booking/info/service/serviceList/index.d.ts +0 -1
  44. package/es/components/booking/info/service2/utils.d.ts +1 -1
  45. package/es/components/booking/info2/service/actions/index.d.ts +0 -1
  46. package/es/components/booking/info2/service/addService/utils.d.ts +1 -1
  47. package/es/components/booking/info2/service/addTimeModal/index.d.ts +0 -1
  48. package/es/components/booking/info2/service/addTimeModal/index.js +0 -1
  49. package/es/components/booking/info2/service/serviceList/index.d.ts +0 -1
  50. package/es/components/booking/locales.d.ts +3 -0
  51. package/es/components/booking/locales.js +6 -3
  52. package/es/components/booking/materiels/contacts/index.d.ts +0 -1
  53. package/es/components/booking/materiels/duration/index.d.ts +0 -1
  54. package/es/components/booking/notes/NoteBlock/NoteItem/index.d.ts +0 -1
  55. package/es/components/booking/notes/NoteBlock/index.d.ts +0 -1
  56. package/es/components/booking/notes/addNote/index.d.ts +0 -1
  57. package/es/components/eftpos/index.d.ts +0 -1
  58. package/es/components/eftpos/pos.d.ts +0 -1
  59. package/es/components/eftposPay/amount.d.ts +1 -2
  60. package/es/components/eftposPay/component/fail/failCustom.d.ts +0 -1
  61. package/es/components/eftposPay/component/fail/index.d.ts +0 -1
  62. package/es/components/eftposPay/component/fail/network.d.ts +0 -1
  63. package/es/components/eftposPay/component/fail/unknow.d.ts +0 -1
  64. package/es/components/eftposPay/component/manual/index.d.ts +0 -1
  65. package/es/components/eftposPay/component/signature/index.d.ts +0 -1
  66. package/es/components/eftposPay/device.d.ts +1 -2
  67. package/es/components/eftposPay/hooks.d.ts +1 -1
  68. package/es/components/eftposPay/index.d.ts +0 -1
  69. package/es/components/eftposPay/linkly/index.d.ts +0 -1
  70. package/es/components/eftposPay/pay.d.ts +0 -1
  71. package/es/components/eftposPay/payo/config.d.ts +0 -1
  72. package/es/components/eftposPay/store/index.d.ts +4 -4
  73. package/es/components/eftposPay/tip.d.ts +0 -1
  74. package/es/components/eftposPay/windcave/receiptAction.d.ts +0 -1
  75. package/es/components/eftposPay/windcave/windcave.d.ts +0 -1
  76. package/es/components/eventBooking/components/ErrorTip/index.d.ts +1 -0
  77. package/es/components/eventBooking/components/Provider/Content/index.d.ts +0 -1
  78. package/es/components/eventBooking/components/Provider/Header/index.d.ts +0 -1
  79. package/es/components/eventBooking/components/Provider/InformationOptionsModal/index.d.ts +1 -0
  80. package/es/components/eventBooking/components/Provider/SelectHolderModal.d.ts +0 -1
  81. package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/CallToBook/index.d.ts +1 -0
  82. package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/WeekItem/index.d.ts +1 -0
  83. package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/index.d.ts +1 -0
  84. package/es/components/eventBooking/components/bookingDetailModal/components/Resource.d.ts +0 -1
  85. package/es/components/eventBooking/components/bookingDetailModal/components/Schedule.d.ts +0 -1
  86. package/es/components/eventBooking/components/scheduleCalendar/ProductItem/index.d.ts +0 -1
  87. package/es/components/eventBooking/components/scheduleCalendar/calendarItem.d.ts +1 -0
  88. package/es/components/eventBooking/index.d.ts +0 -1
  89. package/es/components/eventBooking/index.js +8 -1
  90. package/es/components/login/index.d.ts +0 -1
  91. package/es/components/pay/toC/PaymentMethods/MWCreditCard/TDSPay/ThreedsLoading/index.d.ts +0 -1
  92. package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/components/SetupForm/index.d.ts +1 -0
  93. package/es/components/pay/toC/WalletPassBlock/components/WalletUseList/index.d.ts +1 -0
  94. package/es/components/pisellSelectCustomerModal/RightPanel/Add/BirthdayField/index.d.ts +0 -1
  95. package/es/components/pisellSelectCustomerModal/RightPanel/Add/GenderField/index.d.ts +0 -1
  96. package/es/components/pisellSelectCustomerModal/RightPanel/Add/index.d.ts +0 -1
  97. package/es/components/pisellSelectCustomerModal/RightPanel/index.d.ts +0 -1
  98. package/es/components/productExtension/fields/SelectProducts/ProductItem/index.d.ts +0 -1
  99. package/es/components/productExtension/fields/SelectProducts/ProductItemPreview/index.d.ts +0 -1
  100. package/es/components/productExtension/fields/SelectProducts/index.d.ts +0 -1
  101. package/es/components/productExtension/fields/SelectResourcesTable/index.d.ts +0 -1
  102. package/es/components/productExtension/index.d.ts +0 -1
  103. package/es/components/productSelect/components/productGroup/index.d.ts +0 -1
  104. package/es/components/ruleSetting/index.d.ts +0 -1
  105. package/es/components/ruleSetting/ruleBorder/index.d.ts +0 -1
  106. package/es/components/schedules/calendar/index.d.ts +0 -1
  107. package/es/components/schedules/components/ScheduleDetailList/index.d.ts +0 -1
  108. package/es/components/schedules/components/ScheduleList/index.d.ts +0 -1
  109. package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/MaxParticipantsModule/index.d.ts +0 -1
  110. package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/ResourcesModule/index.d.ts +0 -1
  111. package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/SchedulesModule/AddSchedules/index.d.ts +0 -1
  112. package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/SchedulesModule/index.d.ts +0 -1
  113. package/es/components/schedules/products/ProductDetailDrawer/index.d.ts +0 -1
  114. package/es/components/schedules/products/list/ProductItem/index.d.ts +0 -1
  115. package/es/components/schedules/products/list/index.d.ts +0 -1
  116. package/es/components/schedules/resources/index.d.ts +0 -1
  117. package/es/components/schedules/resources/list/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/schedules/utils.d.ts +1 -1
  122. package/es/components/shoppingCart/components/Cart/Product.js +1 -0
  123. package/es/components/shoppingCart/index.d.ts +0 -1
  124. package/es/components/taxSelect/index.d.ts +0 -1
  125. package/es/components/ticketBooking/components/addServiceVariant/addService.js +2 -2
  126. package/es/components/wallet/hooks/useWalletCard.d.ts +0 -1
  127. package/es/components/workSpaceList/components/Modal/index.d.ts +1 -0
  128. package/es/components/workSpaceList/components/SearchWorkspaceAndBase/index.d.ts +1 -0
  129. package/es/hooks/useWindowSize.js +8 -1
  130. package/es/plus/clientName/index.d.ts +0 -1
  131. package/es/plus/clinetSearch/Add/BirthdayField/index.d.ts +0 -1
  132. package/es/plus/clinetSearch/Add/GenderField/index.d.ts +0 -1
  133. package/es/plus/clinetSearch/Add/PhoneField/index.d.ts +0 -1
  134. package/es/plus/productSelect/CategoryTabs/CategorySkeleton.d.ts +10 -0
  135. package/es/plus/productSelect/CategoryTabs/CategorySkeleton.js +29 -0
  136. package/es/plus/productSelect/CategoryTabs/CategorySkeleton.less +30 -0
  137. package/es/plus/productSelect/CategoryTabs/index.d.ts +18 -0
  138. package/es/plus/productSelect/CategoryTabs/index.js +171 -0
  139. package/es/plus/productSelect/ProductCard/ProductCardSkeleton.d.ts +10 -0
  140. package/es/plus/productSelect/ProductCard/ProductCardSkeleton.js +37 -0
  141. package/es/plus/productSelect/ProductCard/ProductCardSkeleton.less +81 -0
  142. package/es/plus/productSelect/ProductCard/index.d.ts +45 -0
  143. package/es/plus/productSelect/ProductCard/index.js +170 -0
  144. package/es/plus/productSelect/ProductCard/index.less +270 -0
  145. package/es/plus/productSelect/ProductList/gridComponents.d.ts +44 -0
  146. package/es/plus/productSelect/ProductList/gridComponents.js +149 -0
  147. package/es/plus/productSelect/ProductList/index.d.ts +22 -0
  148. package/es/plus/productSelect/ProductList/index.js +72 -0
  149. package/es/plus/productSelect/ProductList/index.less +0 -0
  150. package/es/plus/productSelect/components/IntersectionObserver.d.ts +42 -0
  151. package/es/plus/productSelect/components/IntersectionObserver.js +276 -0
  152. package/es/plus/productSelect/components/TabsStructure/TabsStructure.d.ts +30 -0
  153. package/es/plus/productSelect/components/TabsStructure/TabsStructure.js +357 -0
  154. package/es/plus/productSelect/components/TabsStructure/TabsStructure.less +224 -0
  155. package/es/plus/productSelect/components/TabsStructure/hooks.d.ts +22 -0
  156. package/es/plus/productSelect/components/TabsStructure/hooks.js +243 -0
  157. package/es/plus/productSelect/components/TabsStructure/index.d.ts +5 -0
  158. package/es/plus/productSelect/components/TabsStructure/index.js +13 -0
  159. package/es/plus/productSelect/components/TabsStructure/styles.d.ts +47 -0
  160. package/es/plus/productSelect/components/TabsStructure/styles.js +87 -0
  161. package/es/plus/productSelect/components/TabsStructure/types.d.ts +105 -0
  162. package/es/plus/productSelect/components/TabsStructure/types.js +1 -0
  163. package/es/plus/productSelect/components/TabsStructure/utils.d.ts +12 -0
  164. package/es/plus/productSelect/components/TabsStructure/utils.js +56 -0
  165. package/es/plus/productSelect/components/pisellPriceText/index.d.ts +11 -0
  166. package/es/plus/productSelect/components/pisellPriceText/index.js +43 -0
  167. package/es/plus/productSelect/hooks/useToken.d.ts +18 -0
  168. package/es/plus/productSelect/hooks/useToken.js +34 -0
  169. package/es/plus/productSelect/index.d.ts +31 -0
  170. package/es/plus/productSelect/index.js +270 -0
  171. package/es/plus/productSelect/index.less +56 -0
  172. package/es/plus/productSelect/locales.d.ts +18 -0
  173. package/es/plus/productSelect/locales.js +17 -0
  174. package/es/plus/productSelect/theme/token.d.ts +17 -0
  175. package/es/plus/productSelect/theme/token.js +19 -0
  176. package/es/plus/productSelect/utils.d.ts +39 -0
  177. package/es/plus/productSelect/utils.js +162 -0
  178. package/es/utils/index.d.ts +1 -1
  179. package/lib/components/Sales/Summary/utils.d.ts +1 -1
  180. package/lib/components/appointmentBooking/components/Cart/Item/index.d.ts +0 -1
  181. package/lib/components/appointmentBooking/components/Content/index.d.ts +0 -1
  182. package/lib/components/appointmentBooking/components/Content/index.js +1 -1
  183. package/lib/components/appointmentBooking/components/Content/index.less +3 -3
  184. package/lib/components/appointmentBooking/components/Footer/index.d.ts +1 -0
  185. package/lib/components/appointmentBooking/components/Guest/components/InformationOptionsModal/index.d.ts +1 -0
  186. package/lib/components/appointmentBooking/components/Header/index.d.ts +0 -1
  187. package/lib/components/appointmentBooking/components/Services/index.js +2 -2
  188. package/lib/components/appointmentBooking/index.d.ts +0 -1
  189. package/lib/components/appointmentBooking/index.js +6 -1
  190. package/lib/components/booking/components/TabProduct/productItem/index.d.ts +0 -1
  191. package/lib/components/booking/components/TabProduct/selectProductItem/index.d.ts +0 -1
  192. package/lib/components/booking/components/collapsibleList/utils.d.ts +0 -1
  193. package/lib/components/booking/components/emptyBooking/index.d.ts +0 -1
  194. package/lib/components/booking/components/footer/FooterMenus/index.d.ts +0 -1
  195. package/lib/components/booking/deposit/index.d.ts +0 -1
  196. package/lib/components/booking/forms/single/RenderValueById.d.ts +1 -0
  197. package/lib/components/booking/forms/single/RenderValueById.js +37 -9
  198. package/lib/components/booking/forms/single/index.d.ts +0 -1
  199. package/lib/components/booking/forms/single/index.less +67 -1
  200. package/lib/components/booking/info/clientVariant/hooks/useClientFn.d.ts +0 -1
  201. package/lib/components/booking/info/date/index.d.ts +0 -1
  202. package/lib/components/booking/info/dateRange/index.d.ts +1 -0
  203. package/lib/components/booking/info/header/index.d.ts +0 -1
  204. package/lib/components/booking/info/hooks/useInfoHolder.d.ts +0 -1
  205. package/lib/components/booking/info/notes/index.d.ts +0 -1
  206. package/lib/components/booking/info/service/Lists.d.ts +0 -1
  207. package/lib/components/booking/info/service/actions/index.d.ts +0 -1
  208. package/lib/components/booking/info/service/addService/index.d.ts +0 -1
  209. package/lib/components/booking/info/service/addService/utils.d.ts +1 -1
  210. package/lib/components/booking/info/service/editService/BookingList/index.d.ts +1 -0
  211. package/lib/components/booking/info/service/serviceList/index.d.ts +0 -1
  212. package/lib/components/booking/info/service2/utils.d.ts +1 -1
  213. package/lib/components/booking/info2/service/actions/index.d.ts +0 -1
  214. package/lib/components/booking/info2/service/addService/utils.d.ts +1 -1
  215. package/lib/components/booking/info2/service/addTimeModal/index.d.ts +0 -1
  216. package/lib/components/booking/info2/service/addTimeModal/index.js +0 -1
  217. package/lib/components/booking/info2/service/serviceList/index.d.ts +0 -1
  218. package/lib/components/booking/locales.d.ts +3 -0
  219. package/lib/components/booking/locales.js +6 -3
  220. package/lib/components/booking/materiels/contacts/index.d.ts +0 -1
  221. package/lib/components/booking/materiels/duration/index.d.ts +0 -1
  222. package/lib/components/booking/notes/NoteBlock/NoteItem/index.d.ts +0 -1
  223. package/lib/components/booking/notes/NoteBlock/index.d.ts +0 -1
  224. package/lib/components/booking/notes/addNote/index.d.ts +0 -1
  225. package/lib/components/eftpos/index.d.ts +0 -1
  226. package/lib/components/eftpos/pos.d.ts +0 -1
  227. package/lib/components/eftposPay/amount.d.ts +1 -2
  228. package/lib/components/eftposPay/component/fail/failCustom.d.ts +0 -1
  229. package/lib/components/eftposPay/component/fail/index.d.ts +0 -1
  230. package/lib/components/eftposPay/component/fail/network.d.ts +0 -1
  231. package/lib/components/eftposPay/component/fail/unknow.d.ts +0 -1
  232. package/lib/components/eftposPay/component/manual/index.d.ts +0 -1
  233. package/lib/components/eftposPay/component/signature/index.d.ts +0 -1
  234. package/lib/components/eftposPay/device.d.ts +1 -2
  235. package/lib/components/eftposPay/hooks.d.ts +1 -1
  236. package/lib/components/eftposPay/index.d.ts +0 -1
  237. package/lib/components/eftposPay/linkly/index.d.ts +0 -1
  238. package/lib/components/eftposPay/pay.d.ts +0 -1
  239. package/lib/components/eftposPay/payo/config.d.ts +0 -1
  240. package/lib/components/eftposPay/store/index.d.ts +4 -4
  241. package/lib/components/eftposPay/tip.d.ts +0 -1
  242. package/lib/components/eftposPay/windcave/receiptAction.d.ts +0 -1
  243. package/lib/components/eftposPay/windcave/windcave.d.ts +0 -1
  244. package/lib/components/eventBooking/components/ErrorTip/index.d.ts +1 -0
  245. package/lib/components/eventBooking/components/Provider/Content/index.d.ts +0 -1
  246. package/lib/components/eventBooking/components/Provider/Header/index.d.ts +0 -1
  247. package/lib/components/eventBooking/components/Provider/InformationOptionsModal/index.d.ts +1 -0
  248. package/lib/components/eventBooking/components/Provider/SelectHolderModal.d.ts +0 -1
  249. package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/CallToBook/index.d.ts +1 -0
  250. package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/WeekItem/index.d.ts +1 -0
  251. package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/index.d.ts +1 -0
  252. package/lib/components/eventBooking/components/bookingDetailModal/components/Resource.d.ts +0 -1
  253. package/lib/components/eventBooking/components/bookingDetailModal/components/Schedule.d.ts +0 -1
  254. package/lib/components/eventBooking/components/scheduleCalendar/ProductItem/index.d.ts +0 -1
  255. package/lib/components/eventBooking/components/scheduleCalendar/calendarItem.d.ts +1 -0
  256. package/lib/components/eventBooking/index.d.ts +0 -1
  257. package/lib/components/eventBooking/index.js +6 -1
  258. package/lib/components/login/index.d.ts +0 -1
  259. package/lib/components/pay/toC/PaymentMethods/MWCreditCard/TDSPay/ThreedsLoading/index.d.ts +0 -1
  260. package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/components/SetupForm/index.d.ts +1 -0
  261. package/lib/components/pay/toC/WalletPassBlock/components/WalletUseList/index.d.ts +1 -0
  262. package/lib/components/pisellSelectCustomerModal/RightPanel/Add/BirthdayField/index.d.ts +0 -1
  263. package/lib/components/pisellSelectCustomerModal/RightPanel/Add/GenderField/index.d.ts +0 -1
  264. package/lib/components/pisellSelectCustomerModal/RightPanel/Add/index.d.ts +0 -1
  265. package/lib/components/pisellSelectCustomerModal/RightPanel/index.d.ts +0 -1
  266. package/lib/components/productExtension/fields/SelectProducts/ProductItem/index.d.ts +0 -1
  267. package/lib/components/productExtension/fields/SelectProducts/ProductItemPreview/index.d.ts +0 -1
  268. package/lib/components/productExtension/fields/SelectProducts/index.d.ts +0 -1
  269. package/lib/components/productExtension/fields/SelectResourcesTable/index.d.ts +0 -1
  270. package/lib/components/productExtension/index.d.ts +0 -1
  271. package/lib/components/productSelect/components/productGroup/index.d.ts +0 -1
  272. package/lib/components/ruleSetting/index.d.ts +0 -1
  273. package/lib/components/ruleSetting/ruleBorder/index.d.ts +0 -1
  274. package/lib/components/schedules/calendar/index.d.ts +0 -1
  275. package/lib/components/schedules/components/ScheduleDetailList/index.d.ts +0 -1
  276. package/lib/components/schedules/components/ScheduleList/index.d.ts +0 -1
  277. package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/MaxParticipantsModule/index.d.ts +0 -1
  278. package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/ResourcesModule/index.d.ts +0 -1
  279. package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/SchedulesModule/AddSchedules/index.d.ts +0 -1
  280. package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/SchedulesModule/index.d.ts +0 -1
  281. package/lib/components/schedules/products/ProductDetailDrawer/index.d.ts +0 -1
  282. package/lib/components/schedules/products/list/ProductItem/index.d.ts +0 -1
  283. package/lib/components/schedules/products/list/index.d.ts +0 -1
  284. package/lib/components/schedules/resources/index.d.ts +0 -1
  285. package/lib/components/schedules/resources/list/index.d.ts +0 -1
  286. package/lib/components/schedules/schedules/AllSchedules/index.d.ts +0 -1
  287. package/lib/components/schedules/schedules/ScheduleDetailDrawer/index.d.ts +0 -1
  288. package/lib/components/schedules/schedules/index.d.ts +0 -1
  289. package/lib/components/schedules/utils.d.ts +1 -1
  290. package/lib/components/shoppingCart/components/Cart/Product.js +1 -0
  291. package/lib/components/shoppingCart/index.d.ts +0 -1
  292. package/lib/components/taxSelect/index.d.ts +0 -1
  293. package/lib/components/ticketBooking/components/addServiceVariant/addService.js +2 -2
  294. package/lib/components/wallet/hooks/useWalletCard.d.ts +0 -1
  295. package/lib/components/workSpaceList/components/Modal/index.d.ts +1 -0
  296. package/lib/components/workSpaceList/components/SearchWorkspaceAndBase/index.d.ts +1 -0
  297. package/lib/hooks/useWindowSize.js +6 -1
  298. package/lib/plus/clientName/index.d.ts +0 -1
  299. package/lib/plus/clinetSearch/Add/BirthdayField/index.d.ts +0 -1
  300. package/lib/plus/clinetSearch/Add/GenderField/index.d.ts +0 -1
  301. package/lib/plus/clinetSearch/Add/PhoneField/index.d.ts +0 -1
  302. package/lib/plus/productSelect/CategoryTabs/CategorySkeleton.d.ts +10 -0
  303. package/lib/plus/productSelect/CategoryTabs/CategorySkeleton.js +62 -0
  304. package/lib/plus/productSelect/CategoryTabs/CategorySkeleton.less +30 -0
  305. package/lib/plus/productSelect/CategoryTabs/index.d.ts +18 -0
  306. package/lib/plus/productSelect/CategoryTabs/index.js +183 -0
  307. package/lib/plus/productSelect/ProductCard/ProductCardSkeleton.d.ts +10 -0
  308. package/lib/plus/productSelect/ProductCard/ProductCardSkeleton.js +58 -0
  309. package/lib/plus/productSelect/ProductCard/ProductCardSkeleton.less +81 -0
  310. package/lib/plus/productSelect/ProductCard/index.d.ts +45 -0
  311. package/lib/plus/productSelect/ProductCard/index.js +184 -0
  312. package/lib/plus/productSelect/ProductCard/index.less +270 -0
  313. package/lib/plus/productSelect/ProductList/gridComponents.d.ts +44 -0
  314. package/lib/plus/productSelect/ProductList/gridComponents.js +148 -0
  315. package/lib/plus/productSelect/ProductList/index.d.ts +22 -0
  316. package/lib/plus/productSelect/ProductList/index.js +86 -0
  317. package/lib/plus/productSelect/ProductList/index.less +0 -0
  318. package/lib/plus/productSelect/components/IntersectionObserver.d.ts +42 -0
  319. package/lib/plus/productSelect/components/IntersectionObserver.js +269 -0
  320. package/lib/plus/productSelect/components/TabsStructure/TabsStructure.d.ts +30 -0
  321. package/lib/plus/productSelect/components/TabsStructure/TabsStructure.js +393 -0
  322. package/lib/plus/productSelect/components/TabsStructure/TabsStructure.less +224 -0
  323. package/lib/plus/productSelect/components/TabsStructure/hooks.d.ts +22 -0
  324. package/lib/plus/productSelect/components/TabsStructure/hooks.js +209 -0
  325. package/lib/plus/productSelect/components/TabsStructure/index.d.ts +5 -0
  326. package/lib/plus/productSelect/components/TabsStructure/index.js +92 -0
  327. package/lib/plus/productSelect/components/TabsStructure/styles.d.ts +47 -0
  328. package/lib/plus/productSelect/components/TabsStructure/styles.js +122 -0
  329. package/lib/plus/productSelect/components/TabsStructure/types.d.ts +105 -0
  330. package/lib/plus/productSelect/components/TabsStructure/types.js +17 -0
  331. package/lib/plus/productSelect/components/TabsStructure/utils.d.ts +12 -0
  332. package/lib/plus/productSelect/components/TabsStructure/utils.js +72 -0
  333. package/lib/plus/productSelect/components/pisellPriceText/index.d.ts +11 -0
  334. package/lib/plus/productSelect/components/pisellPriceText/index.js +72 -0
  335. package/lib/plus/productSelect/hooks/useToken.d.ts +18 -0
  336. package/lib/plus/productSelect/hooks/useToken.js +50 -0
  337. package/lib/plus/productSelect/index.d.ts +31 -0
  338. package/lib/plus/productSelect/index.js +299 -0
  339. package/lib/plus/productSelect/index.less +56 -0
  340. package/lib/plus/productSelect/locales.d.ts +18 -0
  341. package/lib/plus/productSelect/locales.js +41 -0
  342. package/lib/plus/productSelect/theme/token.d.ts +17 -0
  343. package/lib/plus/productSelect/theme/token.js +47 -0
  344. package/lib/plus/productSelect/utils.d.ts +39 -0
  345. package/lib/plus/productSelect/utils.js +138 -0
  346. package/lib/utils/index.d.ts +1 -1
  347. package/package.json +4 -4
@@ -0,0 +1,184 @@
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);
28
+
29
+ // src/plus/productSelect/ProductCard/index.tsx
30
+ var ProductCard_exports = {};
31
+ __export(ProductCard_exports, {
32
+ DefaultItemContent: () => DefaultItemContent,
33
+ ProductCard: () => ProductCard,
34
+ ProductCardSkeleton: () => import_ProductCardSkeleton.default,
35
+ default: () => ProductCard_default
36
+ });
37
+ module.exports = __toCommonJS(ProductCard_exports);
38
+ var import_react = __toESM(require("react"));
39
+ var import_classnames = __toESM(require("classnames"));
40
+ var import_utils = require("@pisell/utils");
41
+ var import_decimal = __toESM(require("decimal.js"));
42
+ var import_IntersectionObserver = require("../components/IntersectionObserver");
43
+ var import_pisellPriceText = __toESM(require("../components/pisellPriceText"));
44
+ var import_ProductCardSkeleton = __toESM(require("./ProductCardSkeleton"));
45
+ var import_index = require("./index.less");
46
+ var import__ = require("../index");
47
+ var defaultConfig = {
48
+ isProductCover: 1,
49
+ imgWidth: "180px",
50
+ imgHeight: "126px",
51
+ radius: 8,
52
+ isTitle: 1,
53
+ isSubtitle: 0,
54
+ showSpec: true,
55
+ isTag: 0,
56
+ isPrice: 0,
57
+ isOriginPrice: 0,
58
+ showZeroPrice: false,
59
+ showMarketingTag: true,
60
+ showRemark: true,
61
+ isStock: 0
62
+ };
63
+ var ProductCard = (0, import_react.memo)(
64
+ ({
65
+ item,
66
+ index,
67
+ context,
68
+ onSelect,
69
+ isSelected,
70
+ className,
71
+ decorateConfig = {}
72
+ }) => {
73
+ const finalConfig = { ...defaultConfig, ...decorateConfig };
74
+ const {
75
+ imgHeight,
76
+ imgWidth,
77
+ isOriginPrice,
78
+ isPrice,
79
+ isProductCover,
80
+ isStock,
81
+ isSubtitle,
82
+ isTitle,
83
+ radius,
84
+ showZeroPrice
85
+ } = finalConfig;
86
+ const { __typename } = item;
87
+ if (__typename === "category") {
88
+ return /* @__PURE__ */ import_react.default.createElement(
89
+ "div",
90
+ {
91
+ className: (0, import_classnames.default)(`${import__.PREFIX}__product-category`, className),
92
+ "data-index": index,
93
+ "data-item-index": index
94
+ },
95
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "category-title" }, item.name)
96
+ );
97
+ }
98
+ const getStockText = (item2) => {
99
+ if (item2.is_track === 0) {
100
+ return false;
101
+ }
102
+ return `${import_utils.locales.getText("pisell2.product-select.stock")}:${item2.stock_quantity}`;
103
+ };
104
+ const getTextCover = (title) => {
105
+ if (!title) return "";
106
+ const cleanTitle = title.trim();
107
+ if (cleanTitle.length === 0) return "";
108
+ return cleanTitle.substring(0, 2).toUpperCase();
109
+ };
110
+ const renderPrice = (item2) => {
111
+ const {
112
+ price: _price,
113
+ original_price: _original_price,
114
+ is_bundle,
115
+ minimum_markup_price
116
+ } = item2;
117
+ let price = _price;
118
+ let original_price = _original_price;
119
+ if (is_bundle) {
120
+ price = new import_decimal.default(price).plus(new import_decimal.default(minimum_markup_price)).toFixed(2);
121
+ original_price = new import_decimal.default(original_price).plus(new import_decimal.default(minimum_markup_price)).toFixed(2);
122
+ }
123
+ if (!showZeroPrice && !parseFloat(price)) return null;
124
+ return !!isPrice || !!isOriginPrice ? /* @__PURE__ */ import_react.default.createElement("div", { className: "price-info" }, isPrice ? /* @__PURE__ */ import_react.default.createElement("div", { className: "price" }, /* @__PURE__ */ import_react.default.createElement(import_pisellPriceText.default, { value: price, isMini: is_bundle })) : null, !!isOriginPrice && parseFloat(original_price) ? /* @__PURE__ */ import_react.default.createElement("div", { className: "original-price" }, /* @__PURE__ */ import_react.default.createElement(import_pisellPriceText.default, { value: original_price, isMini: is_bundle })) : null) : null;
125
+ };
126
+ const cardContent = /* @__PURE__ */ import_react.default.createElement(
127
+ "div",
128
+ {
129
+ className: (0, import_classnames.default)(`${import__.PREFIX}__product-card`, className, {
130
+ selected: isSelected
131
+ }),
132
+ onClick: () => {
133
+ onSelect == null ? void 0 : onSelect(item);
134
+ },
135
+ "data-index": index,
136
+ "data-item-index": index
137
+ },
138
+ isProductCover ? /* @__PURE__ */ import_react.default.createElement(
139
+ "div",
140
+ {
141
+ className: "card-left",
142
+ style: {
143
+ width: imgWidth || "auto",
144
+ height: imgHeight || "auto"
145
+ }
146
+ },
147
+ item.cover ? /* @__PURE__ */ import_react.default.createElement(
148
+ "img",
149
+ {
150
+ loading: "lazy",
151
+ src: import_utils.image.ali(item.cover, 360),
152
+ alt: item.title,
153
+ style: { borderRadius: radius }
154
+ }
155
+ ) : /* @__PURE__ */ import_react.default.createElement("div", { className: "text-cover", style: { borderRadius: radius } }, getTextCover(item.title))
156
+ ) : null,
157
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "card-right" }, !!isTitle ? /* @__PURE__ */ import_react.default.createElement("div", { className: "title" }, item.title) : null, !!isSubtitle && item.subtitle ? /* @__PURE__ */ import_react.default.createElement("div", { className: "subtitle" }, item.subtitle) : null, !!isStock && !!item.is_track ? /* @__PURE__ */ import_react.default.createElement("div", { className: "stock" }, getStockText(item)) : null, renderPrice(item))
158
+ );
159
+ if (context) {
160
+ return /* @__PURE__ */ import_react.default.createElement(
161
+ import_IntersectionObserver.IntersectionTrigger,
162
+ {
163
+ onShow: () => context.onItemIntersectionIn(item)
164
+ },
165
+ cardContent
166
+ );
167
+ }
168
+ return cardContent;
169
+ }
170
+ );
171
+ ProductCard.displayName = "ProductCard";
172
+ var DefaultItemContent = (0, import_react.memo)(
173
+ (props) => {
174
+ return /* @__PURE__ */ import_react.default.createElement(ProductCard, { ...props });
175
+ }
176
+ );
177
+ DefaultItemContent.displayName = "DefaultItemContent";
178
+ var ProductCard_default = ProductCard;
179
+ // Annotate the CommonJS export names for ESM import in node:
180
+ 0 && (module.exports = {
181
+ DefaultItemContent,
182
+ ProductCard,
183
+ ProductCardSkeleton
184
+ });
@@ -0,0 +1,270 @@
1
+ .pisell-product-select {
2
+ &__product-category {
3
+ padding: 4px 0;
4
+
5
+ &[data-index='0'] {
6
+ padding-top: 0px;
7
+ }
8
+ .category-title {
9
+ color: var(--ps-category-text-color, #000);
10
+ font-size: 18px;
11
+ font-style: normal;
12
+ font-weight: 600;
13
+ line-height: 24px;
14
+ }
15
+ }
16
+
17
+ &__product-card {
18
+ user-select: none;
19
+ cursor: pointer;
20
+ border-radius: 12px;
21
+ background: var(--ps-card-bg, #fff);
22
+ box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1),
23
+ 0px 1px 2px 0px rgba(0, 0, 0, 0.06);
24
+ padding: 8px;
25
+ display: flex;
26
+ gap: 20px;
27
+ position: relative;
28
+ overflow: hidden;
29
+ min-height: 142px;
30
+ height: 100%;
31
+ align-items: center;
32
+ box-sizing: border-box;
33
+
34
+ // 只在非触摸设备上启用hover效果
35
+ @media (hover: hover) {
36
+ &:hover {
37
+ background: var(--ps-card-hover-bg, #eaecf0);
38
+ }
39
+ }
40
+
41
+ &.selected {
42
+ background: var(--ps-card-selected-bg, #8157d5);
43
+
44
+ .card-right {
45
+ .title,
46
+ .subtitle,
47
+ .price {
48
+ color: var(--ps-card-selected-text-color, #ffffff);
49
+ }
50
+
51
+ .spec-item,
52
+ .original-price,
53
+ .stock {
54
+ color: var(
55
+ --ps-card-selected-secondary-text-color,
56
+ rgba(255, 255, 255, 0.7)
57
+ );
58
+ }
59
+ }
60
+ }
61
+
62
+ .marketing-tags-wrapper {
63
+ position: absolute;
64
+ top: 0;
65
+ left: 0;
66
+ pointer-events: none;
67
+ user-select: none;
68
+ z-index: 1;
69
+
70
+ .marketing-tags {
71
+ display: flex;
72
+ flex-direction: column;
73
+ row-gap: 6px;
74
+ }
75
+
76
+ .marketing-tag-item {
77
+ display: flex;
78
+ padding: 6px 10px;
79
+ justify-content: center;
80
+ align-items: center;
81
+ gap: 10px;
82
+ border-radius: 0 12px 12px 0;
83
+ background: var(--Error-100, #fee4e2);
84
+ color: var(--Error-700, #b42318);
85
+ text-align: center;
86
+ font-size: 14px;
87
+ font-style: normal;
88
+ font-weight: 500;
89
+ line-height: 20px;
90
+
91
+ &:nth-of-type(1) {
92
+ border-radius: 0 0 12px 0;
93
+ }
94
+ }
95
+ }
96
+
97
+ .card-left {
98
+ flex-shrink: 0;
99
+
100
+ img {
101
+ border-radius: 8px;
102
+ background: lightgray 50% / cover no-repeat;
103
+ width: 100%;
104
+ height: 100%;
105
+ object-fit: cover;
106
+ }
107
+
108
+ .text-cover {
109
+ width: 100%;
110
+ height: 100%;
111
+ display: flex;
112
+ align-items: center;
113
+ justify-content: center;
114
+ background: #dedede;
115
+ color: #6c6c6c;
116
+ font-size: 60px;
117
+ font-weight: 600;
118
+ text-align: center;
119
+ line-height: 1;
120
+ letter-spacing: 1px;
121
+ border-radius: 8px;
122
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
123
+ }
124
+ }
125
+
126
+ .card-right {
127
+ display: flex;
128
+ flex-direction: column;
129
+ row-gap: 8px;
130
+ min-height: 92px;
131
+ overflow: hidden;
132
+ flex: 1;
133
+
134
+ .title {
135
+ color: var(--ps-color-text, #1b1b1b);
136
+ font-size: 18px;
137
+ font-style: normal;
138
+ font-weight: 600;
139
+ line-height: 28px;
140
+ display: -webkit-box;
141
+ -webkit-line-clamp: 2;
142
+ -webkit-box-orient: vertical;
143
+ overflow: hidden;
144
+ text-overflow: ellipsis;
145
+ }
146
+
147
+ .subtitle {
148
+ color: var(--ps-color-text, #1b1b1b);
149
+ font-size: 16px;
150
+ font-style: normal;
151
+ font-weight: 500;
152
+ line-height: 24px;
153
+ display: -webkit-box;
154
+ -webkit-line-clamp: 2;
155
+ -webkit-box-orient: vertical;
156
+ overflow: hidden;
157
+ text-overflow: ellipsis;
158
+ }
159
+
160
+ .stock,
161
+ .specs {
162
+ overflow: hidden;
163
+ color: var(--ps-color-text-secondary, #4e4e4e);
164
+ text-overflow: ellipsis;
165
+ font-size: 14px;
166
+ font-style: normal;
167
+ font-weight: 500;
168
+ line-height: 20px;
169
+
170
+ .spec-item {
171
+ margin-top: 8px;
172
+
173
+ &:nth-of-type(1) {
174
+ margin-top: 0;
175
+ }
176
+ }
177
+ }
178
+
179
+ .tags {
180
+ display: flex;
181
+ gap: 8px;
182
+ flex-wrap: wrap;
183
+
184
+ .tag-item {
185
+ display: flex;
186
+ padding: 4px 12px;
187
+ align-items: center;
188
+ border-radius: 16px;
189
+ border: 1px solid var(--Error-200, #fecdca);
190
+ background: var(--Error-50, #fef3f2);
191
+ mix-blend-mode: multiply;
192
+ color: var(--Error-700, #b42318);
193
+ text-align: center;
194
+ font-size: 14px;
195
+ font-style: normal;
196
+ font-weight: 500;
197
+ line-height: 20px;
198
+ }
199
+ }
200
+
201
+ .price-info {
202
+ display: flex;
203
+ align-items: center;
204
+ gap: 8px;
205
+ }
206
+
207
+ .price {
208
+ color: var(--ps-color-text, #1b1b1b);
209
+ font-size: 18px;
210
+ font-style: normal;
211
+ font-weight: 600;
212
+ line-height: 28px;
213
+ }
214
+
215
+ .original-price {
216
+ color: var(--ps-color-text-secondary, #4e4e4e);
217
+ font-size: 16px;
218
+ font-style: normal;
219
+ font-weight: 400;
220
+ line-height: 24px;
221
+ position: relative;
222
+
223
+ &::before {
224
+ content: '';
225
+ display: block;
226
+ position: absolute;
227
+ top: 50%;
228
+ left: 0;
229
+ width: 100%;
230
+ height: 1px;
231
+ background-color: #4e4e4e;
232
+ transform: translateY(-50%);
233
+ }
234
+
235
+ > span {
236
+ vertical-align: middle;
237
+ }
238
+ }
239
+
240
+ .remark {
241
+ color: var(--Warning-600, #dc6803);
242
+ font-size: 14px;
243
+ font-style: normal;
244
+ font-weight: 600;
245
+ line-height: 20px;
246
+ }
247
+ }
248
+ }
249
+
250
+ // 网格布局中的产品卡片样式调整
251
+ .product-grid-wrapper {
252
+ .pisell-product-select__product-card {
253
+ min-width: unset;
254
+ width: 100%;
255
+ }
256
+ }
257
+
258
+ // 列表布局中的产品卡片样式调整
259
+ .product-list-wrapper {
260
+ .pisell-product-select__product-card {
261
+ min-width: 363px;
262
+ max-width: unset;
263
+ margin-top: 12px;
264
+
265
+ &:first-child {
266
+ margin-top: 0;
267
+ }
268
+ }
269
+ }
270
+ }
@@ -0,0 +1,44 @@
1
+ import React from 'react';
2
+ export interface GridConfig {
3
+ grid: boolean;
4
+ config: string;
5
+ }
6
+ export declare const parseGridConfig: (config: string) => number[];
7
+ export declare const createGridComponents: (layout?: GridConfig | null) => {
8
+ List: React.MemoExoticComponent<({ children, ...props }: any) => JSX.Element>;
9
+ Item: React.MemoExoticComponent<({ children, index, item, ...props }: any) => JSX.Element>;
10
+ };
11
+ export declare const GRID_LAYOUTS: {
12
+ readonly SINGLE_COLUMN: {
13
+ readonly grid: false;
14
+ readonly config: "12";
15
+ };
16
+ readonly TWO_COLUMNS: {
17
+ readonly grid: true;
18
+ readonly config: "12:12";
19
+ };
20
+ readonly THREE_COLUMNS: {
21
+ readonly grid: true;
22
+ readonly config: "8:8:8";
23
+ };
24
+ readonly FOUR_COLUMNS: {
25
+ readonly grid: true;
26
+ readonly config: "6:6:6:6";
27
+ };
28
+ readonly UNEQUAL_TWO: {
29
+ readonly grid: true;
30
+ readonly config: "8:16";
31
+ };
32
+ readonly UNEQUAL_THREE: {
33
+ readonly grid: true;
34
+ readonly config: "6:12:6";
35
+ };
36
+ };
37
+ export declare const createTwoColumnGrid: () => {
38
+ List: React.MemoExoticComponent<({ children, ...props }: any) => JSX.Element>;
39
+ Item: React.MemoExoticComponent<({ children, index, item, ...props }: any) => JSX.Element>;
40
+ };
41
+ export declare const createCustomGrid: (config: string) => {
42
+ List: React.MemoExoticComponent<({ children, ...props }: any) => JSX.Element>;
43
+ Item: React.MemoExoticComponent<({ children, index, item, ...props }: any) => JSX.Element>;
44
+ };
@@ -0,0 +1,148 @@
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);
28
+
29
+ // src/plus/productSelect/ProductList/gridComponents.tsx
30
+ var gridComponents_exports = {};
31
+ __export(gridComponents_exports, {
32
+ GRID_LAYOUTS: () => GRID_LAYOUTS,
33
+ createCustomGrid: () => createCustomGrid,
34
+ createGridComponents: () => createGridComponents,
35
+ createTwoColumnGrid: () => createTwoColumnGrid,
36
+ parseGridConfig: () => parseGridConfig
37
+ });
38
+ module.exports = __toCommonJS(gridComponents_exports);
39
+ var import_react = __toESM(require("react"));
40
+ var parseGridConfig = (config) => {
41
+ return config.split(":").map((num) => parseInt(num, 10)).filter((num) => !isNaN(num));
42
+ };
43
+ var calculateColumnWidth = (columns, index) => {
44
+ const total = columns.reduce((sum, col) => sum + col, 0);
45
+ const percentage = columns[index] / total * 100;
46
+ return `${percentage}%`;
47
+ };
48
+ var createGridComponents = (layout) => {
49
+ if (!layout) {
50
+ layout = GRID_LAYOUTS.SINGLE_COLUMN;
51
+ }
52
+ const columns = parseGridConfig(layout.config);
53
+ const isGrid = layout.grid && columns.length > 1;
54
+ const GridListComponent = (0, import_react.memo)(({ children, ...props }) => {
55
+ if (!isGrid) {
56
+ return /* @__PURE__ */ import_react.default.createElement(
57
+ "div",
58
+ {
59
+ className: "product-list-wrapper",
60
+ style: {
61
+ display: "flex",
62
+ flexDirection: "column",
63
+ gap: "12px"
64
+ },
65
+ ...props
66
+ },
67
+ children
68
+ );
69
+ }
70
+ return /* @__PURE__ */ import_react.default.createElement(
71
+ "div",
72
+ {
73
+ className: "product-grid-wrapper",
74
+ style: {
75
+ display: "flex",
76
+ flexWrap: "wrap",
77
+ gap: "12px",
78
+ ...props.style
79
+ },
80
+ ...props
81
+ },
82
+ children
83
+ );
84
+ });
85
+ const GridItemComponent = (0, import_react.memo)(({ children, index, item, ...props }) => {
86
+ if (!isGrid) {
87
+ if (item && item.__typename === "category") {
88
+ return /* @__PURE__ */ import_react.default.createElement("div", { id: `ps_category_${item.id}`, ...props }, children);
89
+ }
90
+ return /* @__PURE__ */ import_react.default.createElement("div", { ...props }, children);
91
+ }
92
+ if (item && item.__typename === "category") {
93
+ return /* @__PURE__ */ import_react.default.createElement(
94
+ "div",
95
+ {
96
+ id: `ps_category_${item.id}`,
97
+ style: {
98
+ width: "100%",
99
+ flexShrink: 0,
100
+ ...props.style
101
+ },
102
+ ...props
103
+ },
104
+ children
105
+ );
106
+ }
107
+ const columnIndex = index % columns.length;
108
+ const width = calculateColumnWidth(columns, columnIndex);
109
+ return /* @__PURE__ */ import_react.default.createElement(
110
+ "div",
111
+ {
112
+ style: {
113
+ width: `calc(${width} - ${(columns.length - 1) * 12 / columns.length}px)`,
114
+ flexShrink: 0,
115
+ ...props.style
116
+ },
117
+ ...props
118
+ },
119
+ children
120
+ );
121
+ });
122
+ GridListComponent.displayName = `GridListComponent_${layout.config}`;
123
+ GridItemComponent.displayName = `GridItemComponent_${layout.config}`;
124
+ return {
125
+ List: GridListComponent,
126
+ Item: GridItemComponent
127
+ };
128
+ };
129
+ var GRID_LAYOUTS = {
130
+ SINGLE_COLUMN: { grid: false, config: "12" },
131
+ TWO_COLUMNS: { grid: true, config: "12:12" },
132
+ THREE_COLUMNS: { grid: true, config: "8:8:8" },
133
+ FOUR_COLUMNS: { grid: true, config: "6:6:6:6" },
134
+ UNEQUAL_TWO: { grid: true, config: "8:16" },
135
+ // 1:2 比例
136
+ UNEQUAL_THREE: { grid: true, config: "6:12:6" }
137
+ // 1:2:1 比例
138
+ };
139
+ var createTwoColumnGrid = () => createGridComponents(GRID_LAYOUTS.TWO_COLUMNS);
140
+ var createCustomGrid = (config) => createGridComponents({ grid: true, config });
141
+ // Annotate the CommonJS export names for ESM import in node:
142
+ 0 && (module.exports = {
143
+ GRID_LAYOUTS,
144
+ createCustomGrid,
145
+ createGridComponents,
146
+ createTwoColumnGrid,
147
+ parseGridConfig
148
+ });
@@ -0,0 +1,22 @@
1
+ import React from 'react';
2
+ interface IProps {
3
+ className?: string;
4
+ loading?: boolean;
5
+ data: any[];
6
+ context: {
7
+ onItemIntersectionIn: (item: any) => void;
8
+ onItemIntersectionOut: (item: any) => void;
9
+ };
10
+ customScrollParent?: Element | null;
11
+ components?: {
12
+ List?: React.ComponentType<any>;
13
+ Item?: React.ComponentType<any>;
14
+ [key: string]: React.ComponentType<any> | undefined;
15
+ };
16
+ itemContent?: (index: number, data: any, context: any) => React.ReactNode;
17
+ itemSkeleton?: React.ReactNode;
18
+ [key: string]: any;
19
+ }
20
+ declare const ProductList: React.ForwardRefExoticComponent<Omit<IProps, "ref"> & React.RefAttributes<any>>;
21
+ export default ProductList;
22
+ export { createGridComponents, createTwoColumnGrid, createCustomGrid, GRID_LAYOUTS, type GridConfig, } from './gridComponents';