element-ps 2.0.15 → 2.0.18

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 (454) hide show
  1. package/dist/index.full.js +5 -24
  2. package/dist/index.full.min.js +5 -5
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +5 -5
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +5 -24
  7. package/es/components/alert/index.mjs +2 -2
  8. package/es/components/alert/src/alert.mjs +83 -33
  9. package/es/components/alert/src/alert.mjs.map +1 -1
  10. package/es/components/alert/src/alert2.mjs +33 -83
  11. package/es/components/alert/src/alert2.mjs.map +1 -1
  12. package/es/components/autocomplete/index.d.ts +5 -5
  13. package/es/components/autocomplete/index.mjs +2 -2
  14. package/es/components/autocomplete/src/autocomplete.mjs +94 -58
  15. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  16. package/es/components/autocomplete/src/autocomplete.vue.d.ts +5 -5
  17. package/es/components/autocomplete/src/autocomplete2.mjs +58 -94
  18. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  19. package/es/components/breadcrumb/index.mjs +2 -2
  20. package/es/components/breadcrumb/src/breadcrumb-item.mjs +11 -46
  21. package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
  22. package/es/components/breadcrumb/src/breadcrumb-item2.mjs +46 -11
  23. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  24. package/es/components/button/index.mjs +2 -2
  25. package/es/components/button/src/button-group.mjs +1 -1
  26. package/es/components/button/src/button.mjs +96 -48
  27. package/es/components/button/src/button.mjs.map +1 -1
  28. package/es/components/button/src/button2.mjs +48 -96
  29. package/es/components/button/src/button2.mjs.map +1 -1
  30. package/es/components/calendar/index.mjs +2 -2
  31. package/es/components/calendar/src/calendar.mjs +188 -9
  32. package/es/components/calendar/src/calendar.mjs.map +1 -1
  33. package/es/components/calendar/src/calendar2.mjs +9 -188
  34. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  35. package/es/components/carousel/index.mjs +2 -2
  36. package/es/components/carousel/src/carousel-item.mjs +7 -148
  37. package/es/components/carousel/src/carousel-item.mjs.map +1 -1
  38. package/es/components/carousel/src/carousel-item2.mjs +148 -7
  39. package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
  40. package/es/components/cascader/src/index.mjs +1 -1
  41. package/es/components/collapse/index.mjs +2 -2
  42. package/es/components/collapse/src/collapse.mjs +61 -14
  43. package/es/components/collapse/src/collapse.mjs.map +1 -1
  44. package/es/components/collapse/src/collapse2.mjs +14 -61
  45. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  46. package/es/components/dialog/src/dialog-content.mjs +34 -79
  47. package/es/components/dialog/src/dialog-content.mjs.map +1 -1
  48. package/es/components/dialog/src/dialog-content2.mjs +79 -34
  49. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  50. package/es/components/dialog/src/dialog.mjs +1 -1
  51. package/es/components/dialog/src/dialog2.mjs +1 -1
  52. package/es/components/divider/index.mjs +2 -2
  53. package/es/components/divider/src/divider.mjs +34 -17
  54. package/es/components/divider/src/divider.mjs.map +1 -1
  55. package/es/components/divider/src/divider2.mjs +17 -34
  56. package/es/components/divider/src/divider2.mjs.map +1 -1
  57. package/es/components/drawer/index.mjs +2 -2
  58. package/es/components/drawer/src/drawer.mjs +23 -117
  59. package/es/components/drawer/src/drawer.mjs.map +1 -1
  60. package/es/components/drawer/src/drawer2.mjs +117 -23
  61. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  62. package/es/components/dropdown/index.d.ts +3 -3
  63. package/es/components/dropdown/index.mjs +2 -2
  64. package/es/components/dropdown/src/dropdown-item-impl.mjs +4 -15
  65. package/es/components/dropdown/src/dropdown-item-impl.mjs.map +1 -1
  66. package/es/components/dropdown/src/dropdown-item-impl.vue.d.ts +0 -2
  67. package/es/components/dropdown/src/dropdown-item.mjs +1 -1
  68. package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
  69. package/es/components/dropdown/src/dropdown.d.ts +1 -1
  70. package/es/components/dropdown/src/dropdown.mjs +100 -109
  71. package/es/components/dropdown/src/dropdown.mjs.map +1 -1
  72. package/es/components/dropdown/src/dropdown.vue.d.ts +3 -3
  73. package/es/components/dropdown/src/dropdown2.mjs +109 -100
  74. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  75. package/es/components/empty/index.mjs +2 -2
  76. package/es/components/empty/src/empty.mjs +56 -11
  77. package/es/components/empty/src/empty.mjs.map +1 -1
  78. package/es/components/empty/src/empty2.mjs +11 -56
  79. package/es/components/empty/src/empty2.mjs.map +1 -1
  80. package/es/components/form/index.mjs +2 -2
  81. package/es/components/form/src/form-item2.mjs +1 -4
  82. package/es/components/form/src/form-item2.mjs.map +1 -1
  83. package/es/components/form/src/form.mjs +45 -40
  84. package/es/components/form/src/form.mjs.map +1 -1
  85. package/es/components/form/src/form2.mjs +40 -45
  86. package/es/components/form/src/form2.mjs.map +1 -1
  87. package/es/components/icon/index.mjs +2 -2
  88. package/es/components/icon/src/icon.mjs +35 -8
  89. package/es/components/icon/src/icon.mjs.map +1 -1
  90. package/es/components/icon/src/icon2.mjs +8 -35
  91. package/es/components/icon/src/icon2.mjs.map +1 -1
  92. package/es/components/image/index.mjs +2 -2
  93. package/es/components/image/src/image.mjs +170 -46
  94. package/es/components/image/src/image.mjs.map +1 -1
  95. package/es/components/image/src/image2.mjs +46 -170
  96. package/es/components/image/src/image2.mjs.map +1 -1
  97. package/es/components/index.mjs +33 -33
  98. package/es/components/input/index.mjs +2 -2
  99. package/es/components/input/src/input.mjs +85 -296
  100. package/es/components/input/src/input.mjs.map +1 -1
  101. package/es/components/input/src/input2.mjs +296 -85
  102. package/es/components/input/src/input2.mjs.map +1 -1
  103. package/es/components/input-number/index.mjs +2 -2
  104. package/es/components/input-number/src/input-number.mjs +171 -46
  105. package/es/components/input-number/src/input-number.mjs.map +1 -1
  106. package/es/components/input-number/src/input-number2.mjs +46 -171
  107. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  108. package/es/components/link/index.mjs +2 -2
  109. package/es/components/link/src/link.mjs +19 -43
  110. package/es/components/link/src/link.mjs.map +1 -1
  111. package/es/components/link/src/link2.mjs +43 -19
  112. package/es/components/link/src/link2.mjs.map +1 -1
  113. package/es/components/menu/index.d.ts +3 -3
  114. package/es/components/menu/index.mjs +2 -2
  115. package/es/components/menu/src/menu-item.mjs +65 -15
  116. package/es/components/menu/src/menu-item.mjs.map +1 -1
  117. package/es/components/menu/src/menu-item2.mjs +15 -65
  118. package/es/components/menu/src/menu-item2.mjs.map +1 -1
  119. package/es/components/menu/src/menu.d.ts +4 -4
  120. package/es/components/page-header/index.mjs +2 -2
  121. package/es/components/page-header/src/page-header.mjs +14 -55
  122. package/es/components/page-header/src/page-header.mjs.map +1 -1
  123. package/es/components/page-header/src/page-header2.mjs +55 -14
  124. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  125. package/es/components/popconfirm/src/popconfirm2.mjs +1 -1
  126. package/es/components/popover/index.d.ts +6 -6
  127. package/es/components/popover/src/index.vue.d.ts +3 -3
  128. package/es/components/popover/src/popover.d.ts +1 -1
  129. package/es/components/popover/src/popover.mjs +1 -1
  130. package/es/components/popper/index.mjs +4 -4
  131. package/es/components/popper/src/content.mjs +64 -52
  132. package/es/components/popper/src/content.mjs.map +1 -1
  133. package/es/components/popper/src/content2.mjs +52 -64
  134. package/es/components/popper/src/content2.mjs.map +1 -1
  135. package/es/components/popper/src/trigger.mjs +17 -28
  136. package/es/components/popper/src/trigger.mjs.map +1 -1
  137. package/es/components/popper/src/trigger2.mjs +28 -17
  138. package/es/components/popper/src/trigger2.mjs.map +1 -1
  139. package/es/components/progress/index.mjs +2 -2
  140. package/es/components/progress/src/progress.mjs +57 -230
  141. package/es/components/progress/src/progress.mjs.map +1 -1
  142. package/es/components/progress/src/progress2.mjs +230 -57
  143. package/es/components/progress/src/progress2.mjs.map +1 -1
  144. package/es/components/radio/index.mjs +2 -2
  145. package/es/components/radio/src/radio-button.mjs +1 -1
  146. package/es/components/radio/src/radio-button2.mjs +1 -1
  147. package/es/components/radio/src/radio.mjs +62 -74
  148. package/es/components/radio/src/radio.mjs.map +1 -1
  149. package/es/components/radio/src/radio2.mjs +74 -62
  150. package/es/components/radio/src/radio2.mjs.map +1 -1
  151. package/es/components/rate/index.mjs +2 -2
  152. package/es/components/rate/src/rate.mjs +84 -169
  153. package/es/components/rate/src/rate.mjs.map +1 -1
  154. package/es/components/rate/src/rate2.mjs +169 -84
  155. package/es/components/rate/src/rate2.mjs.map +1 -1
  156. package/es/components/result/index.mjs +2 -2
  157. package/es/components/result/src/result.mjs +28 -73
  158. package/es/components/result/src/result.mjs.map +1 -1
  159. package/es/components/result/src/result2.mjs +73 -28
  160. package/es/components/result/src/result2.mjs.map +1 -1
  161. package/es/components/roving-focus-group/src/roving-focus-item.mjs +1 -9
  162. package/es/components/roving-focus-group/src/roving-focus-item.mjs.map +1 -1
  163. package/es/components/scrollbar/index.mjs +2 -2
  164. package/es/components/scrollbar/src/scrollbar.mjs +42 -112
  165. package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
  166. package/es/components/scrollbar/src/scrollbar2.mjs +112 -42
  167. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  168. package/es/components/select/index.d.ts +9 -9
  169. package/es/components/select/src/select.mjs +1 -1
  170. package/es/components/select/src/select.vue.d.ts +9 -9
  171. package/es/components/select/src/useSelect.d.ts +5 -5
  172. package/es/components/select-v2/index.d.ts +20 -20
  173. package/es/components/select-v2/src/option-item.vue.d.ts +1 -1
  174. package/es/components/select-v2/src/select.vue.d.ts +10 -10
  175. package/es/components/select-v2/src/useSelect.d.ts +5 -5
  176. package/es/components/skeleton/index.mjs +2 -2
  177. package/es/components/skeleton/src/skeleton-item.mjs +23 -18
  178. package/es/components/skeleton/src/skeleton-item.mjs.map +1 -1
  179. package/es/components/skeleton/src/skeleton-item2.mjs +18 -23
  180. package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
  181. package/es/components/skeleton/src/skeleton.mjs +1 -1
  182. package/es/components/switch/index.mjs +2 -2
  183. package/es/components/switch/src/switch.mjs +81 -176
  184. package/es/components/switch/src/switch.mjs.map +1 -1
  185. package/es/components/switch/src/switch2.mjs +176 -81
  186. package/es/components/switch/src/switch2.mjs.map +1 -1
  187. package/es/components/table/index.d.ts +1 -1
  188. package/es/components/table/src/filter-panel.vue.d.ts +5 -5
  189. package/es/components/table/src/table.vue.d.ts +1 -1
  190. package/es/components/tabs/index.mjs +1 -1
  191. package/es/components/tabs/src/tab-bar.mjs +76 -7
  192. package/es/components/tabs/src/tab-bar.mjs.map +1 -1
  193. package/es/components/tabs/src/tab-bar2.mjs +7 -76
  194. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  195. package/es/components/tabs/src/tab-nav.mjs +1 -1
  196. package/es/components/tag/index.mjs +2 -2
  197. package/es/components/tag/src/tag.mjs +81 -33
  198. package/es/components/tag/src/tag.mjs.map +1 -1
  199. package/es/components/tag/src/tag2.mjs +33 -81
  200. package/es/components/tag/src/tag2.mjs.map +1 -1
  201. package/es/components/time-picker/src/common/picker.vue.d.ts +5 -5
  202. package/es/components/tooltip/index.d.ts +3 -3
  203. package/es/components/tooltip/src/tooltip.d.ts +1 -1
  204. package/es/components/tooltip/src/tooltip.mjs +2 -2
  205. package/es/components/tooltip/src/tooltip.vue.d.ts +3 -3
  206. package/es/components/tooltip/src/trigger.mjs +1 -1
  207. package/es/components/tooltip/src/trigger.vue.d.ts +3 -3
  208. package/es/components/tooltip-v2/index.mjs +3 -3
  209. package/es/components/tooltip-v2/src/content.mjs +50 -113
  210. package/es/components/tooltip-v2/src/content.mjs.map +1 -1
  211. package/es/components/tooltip-v2/src/content2.mjs +113 -50
  212. package/es/components/tooltip-v2/src/content2.mjs.map +1 -1
  213. package/es/components/tooltip-v2/src/root.mjs +17 -81
  214. package/es/components/tooltip-v2/src/root.mjs.map +1 -1
  215. package/es/components/tooltip-v2/src/root2.mjs +81 -17
  216. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  217. package/es/components/tooltip-v2/src/tooltip.mjs +3 -3
  218. package/es/components/tooltip-v2/src/tooltip2.mjs +6 -6
  219. package/es/components/tooltip-v2/src/trigger.mjs +11 -89
  220. package/es/components/tooltip-v2/src/trigger.mjs.map +1 -1
  221. package/es/components/tooltip-v2/src/trigger2.mjs +89 -11
  222. package/es/components/tooltip-v2/src/trigger2.mjs.map +1 -1
  223. package/es/components/upload/index.mjs +1 -1
  224. package/es/components/upload/src/upload-content.mjs +1 -1
  225. package/es/components/upload/src/upload-dragger.mjs +11 -32
  226. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  227. package/es/components/upload/src/upload-dragger2.mjs +32 -11
  228. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  229. package/es/index.mjs +33 -33
  230. package/lib/components/alert/index.js +2 -2
  231. package/lib/components/alert/src/alert.js +82 -33
  232. package/lib/components/alert/src/alert.js.map +1 -1
  233. package/lib/components/alert/src/alert2.js +33 -82
  234. package/lib/components/alert/src/alert2.js.map +1 -1
  235. package/lib/components/autocomplete/index.d.ts +5 -5
  236. package/lib/components/autocomplete/index.js +2 -2
  237. package/lib/components/autocomplete/src/autocomplete.js +94 -58
  238. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  239. package/lib/components/autocomplete/src/autocomplete.vue.d.ts +5 -5
  240. package/lib/components/autocomplete/src/autocomplete2.js +58 -94
  241. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  242. package/lib/components/breadcrumb/index.js +2 -2
  243. package/lib/components/breadcrumb/src/breadcrumb-item.js +11 -46
  244. package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
  245. package/lib/components/breadcrumb/src/breadcrumb-item2.js +46 -11
  246. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  247. package/lib/components/button/index.js +2 -2
  248. package/lib/components/button/src/button-group.js +1 -1
  249. package/lib/components/button/src/button.js +96 -50
  250. package/lib/components/button/src/button.js.map +1 -1
  251. package/lib/components/button/src/button2.js +50 -96
  252. package/lib/components/button/src/button2.js.map +1 -1
  253. package/lib/components/calendar/index.js +2 -2
  254. package/lib/components/calendar/src/calendar.js +192 -9
  255. package/lib/components/calendar/src/calendar.js.map +1 -1
  256. package/lib/components/calendar/src/calendar2.js +9 -192
  257. package/lib/components/calendar/src/calendar2.js.map +1 -1
  258. package/lib/components/carousel/index.js +2 -2
  259. package/lib/components/carousel/src/carousel-item.js +7 -148
  260. package/lib/components/carousel/src/carousel-item.js.map +1 -1
  261. package/lib/components/carousel/src/carousel-item2.js +148 -7
  262. package/lib/components/carousel/src/carousel-item2.js.map +1 -1
  263. package/lib/components/cascader/src/index.js +1 -1
  264. package/lib/components/collapse/index.js +2 -2
  265. package/lib/components/collapse/src/collapse.js +61 -16
  266. package/lib/components/collapse/src/collapse.js.map +1 -1
  267. package/lib/components/collapse/src/collapse2.js +16 -61
  268. package/lib/components/collapse/src/collapse2.js.map +1 -1
  269. package/lib/components/dialog/src/dialog-content.js +33 -78
  270. package/lib/components/dialog/src/dialog-content.js.map +1 -1
  271. package/lib/components/dialog/src/dialog-content2.js +78 -33
  272. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  273. package/lib/components/dialog/src/dialog.js +1 -1
  274. package/lib/components/dialog/src/dialog2.js +1 -1
  275. package/lib/components/divider/index.js +2 -2
  276. package/lib/components/divider/src/divider.js +34 -17
  277. package/lib/components/divider/src/divider.js.map +1 -1
  278. package/lib/components/divider/src/divider2.js +17 -34
  279. package/lib/components/divider/src/divider2.js.map +1 -1
  280. package/lib/components/drawer/index.js +2 -2
  281. package/lib/components/drawer/src/drawer.js +23 -117
  282. package/lib/components/drawer/src/drawer.js.map +1 -1
  283. package/lib/components/drawer/src/drawer2.js +117 -23
  284. package/lib/components/drawer/src/drawer2.js.map +1 -1
  285. package/lib/components/dropdown/index.d.ts +3 -3
  286. package/lib/components/dropdown/index.js +2 -2
  287. package/lib/components/dropdown/src/dropdown-item-impl.js +4 -15
  288. package/lib/components/dropdown/src/dropdown-item-impl.js.map +1 -1
  289. package/lib/components/dropdown/src/dropdown-item-impl.vue.d.ts +0 -2
  290. package/lib/components/dropdown/src/dropdown-item.js +1 -1
  291. package/lib/components/dropdown/src/dropdown-menu.js +1 -1
  292. package/lib/components/dropdown/src/dropdown.d.ts +1 -1
  293. package/lib/components/dropdown/src/dropdown.js +109 -109
  294. package/lib/components/dropdown/src/dropdown.js.map +1 -1
  295. package/lib/components/dropdown/src/dropdown.vue.d.ts +3 -3
  296. package/lib/components/dropdown/src/dropdown2.js +109 -109
  297. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  298. package/lib/components/empty/index.js +2 -2
  299. package/lib/components/empty/src/empty.js +56 -11
  300. package/lib/components/empty/src/empty.js.map +1 -1
  301. package/lib/components/empty/src/empty2.js +11 -56
  302. package/lib/components/empty/src/empty2.js.map +1 -1
  303. package/lib/components/form/index.js +2 -2
  304. package/lib/components/form/src/form-item2.js +0 -3
  305. package/lib/components/form/src/form-item2.js.map +1 -1
  306. package/lib/components/form/src/form.js +45 -40
  307. package/lib/components/form/src/form.js.map +1 -1
  308. package/lib/components/form/src/form2.js +40 -45
  309. package/lib/components/form/src/form2.js.map +1 -1
  310. package/lib/components/icon/index.js +2 -2
  311. package/lib/components/icon/src/icon.js +35 -8
  312. package/lib/components/icon/src/icon.js.map +1 -1
  313. package/lib/components/icon/src/icon2.js +8 -35
  314. package/lib/components/icon/src/icon2.js.map +1 -1
  315. package/lib/components/image/index.js +2 -2
  316. package/lib/components/image/src/image.js +170 -46
  317. package/lib/components/image/src/image.js.map +1 -1
  318. package/lib/components/image/src/image2.js +46 -170
  319. package/lib/components/image/src/image2.js.map +1 -1
  320. package/lib/components/index.js +33 -33
  321. package/lib/components/input/index.js +2 -2
  322. package/lib/components/input/src/input.js +84 -295
  323. package/lib/components/input/src/input.js.map +1 -1
  324. package/lib/components/input/src/input2.js +295 -84
  325. package/lib/components/input/src/input2.js.map +1 -1
  326. package/lib/components/input-number/index.js +2 -2
  327. package/lib/components/input-number/src/input-number.js +171 -46
  328. package/lib/components/input-number/src/input-number.js.map +1 -1
  329. package/lib/components/input-number/src/input-number2.js +46 -171
  330. package/lib/components/input-number/src/input-number2.js.map +1 -1
  331. package/lib/components/link/index.js +2 -2
  332. package/lib/components/link/src/link.js +19 -43
  333. package/lib/components/link/src/link.js.map +1 -1
  334. package/lib/components/link/src/link2.js +43 -19
  335. package/lib/components/link/src/link2.js.map +1 -1
  336. package/lib/components/menu/index.d.ts +3 -3
  337. package/lib/components/menu/index.js +2 -2
  338. package/lib/components/menu/src/menu-item.js +65 -16
  339. package/lib/components/menu/src/menu-item.js.map +1 -1
  340. package/lib/components/menu/src/menu-item2.js +16 -65
  341. package/lib/components/menu/src/menu-item2.js.map +1 -1
  342. package/lib/components/menu/src/menu.d.ts +4 -4
  343. package/lib/components/page-header/index.js +2 -2
  344. package/lib/components/page-header/src/page-header.js +14 -55
  345. package/lib/components/page-header/src/page-header.js.map +1 -1
  346. package/lib/components/page-header/src/page-header2.js +55 -14
  347. package/lib/components/page-header/src/page-header2.js.map +1 -1
  348. package/lib/components/popconfirm/src/popconfirm2.js +1 -1
  349. package/lib/components/popover/index.d.ts +6 -6
  350. package/lib/components/popover/src/index.vue.d.ts +3 -3
  351. package/lib/components/popover/src/popover.d.ts +1 -1
  352. package/lib/components/popover/src/popover.js +1 -1
  353. package/lib/components/popper/index.js +4 -4
  354. package/lib/components/popper/src/content.js +65 -52
  355. package/lib/components/popper/src/content.js.map +1 -1
  356. package/lib/components/popper/src/content2.js +52 -65
  357. package/lib/components/popper/src/content2.js.map +1 -1
  358. package/lib/components/popper/src/trigger.js +17 -28
  359. package/lib/components/popper/src/trigger.js.map +1 -1
  360. package/lib/components/popper/src/trigger2.js +28 -17
  361. package/lib/components/popper/src/trigger2.js.map +1 -1
  362. package/lib/components/progress/index.js +2 -2
  363. package/lib/components/progress/src/progress.js +57 -230
  364. package/lib/components/progress/src/progress.js.map +1 -1
  365. package/lib/components/progress/src/progress2.js +230 -57
  366. package/lib/components/progress/src/progress2.js.map +1 -1
  367. package/lib/components/radio/index.js +2 -2
  368. package/lib/components/radio/src/radio-button.js +1 -1
  369. package/lib/components/radio/src/radio-button2.js +1 -1
  370. package/lib/components/radio/src/radio.js +64 -73
  371. package/lib/components/radio/src/radio.js.map +1 -1
  372. package/lib/components/radio/src/radio2.js +73 -64
  373. package/lib/components/radio/src/radio2.js.map +1 -1
  374. package/lib/components/rate/index.js +2 -2
  375. package/lib/components/rate/src/rate.js +84 -169
  376. package/lib/components/rate/src/rate.js.map +1 -1
  377. package/lib/components/rate/src/rate2.js +169 -84
  378. package/lib/components/rate/src/rate2.js.map +1 -1
  379. package/lib/components/result/index.js +2 -2
  380. package/lib/components/result/src/result.js +30 -73
  381. package/lib/components/result/src/result.js.map +1 -1
  382. package/lib/components/result/src/result2.js +73 -30
  383. package/lib/components/result/src/result2.js.map +1 -1
  384. package/lib/components/roving-focus-group/src/roving-focus-item.js +0 -8
  385. package/lib/components/roving-focus-group/src/roving-focus-item.js.map +1 -1
  386. package/lib/components/scrollbar/index.js +2 -2
  387. package/lib/components/scrollbar/src/scrollbar.js +42 -112
  388. package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
  389. package/lib/components/scrollbar/src/scrollbar2.js +112 -42
  390. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  391. package/lib/components/select/index.d.ts +9 -9
  392. package/lib/components/select/src/select.js +1 -1
  393. package/lib/components/select/src/select.vue.d.ts +9 -9
  394. package/lib/components/select/src/useSelect.d.ts +5 -5
  395. package/lib/components/select-v2/index.d.ts +20 -20
  396. package/lib/components/select-v2/src/option-item.vue.d.ts +1 -1
  397. package/lib/components/select-v2/src/select.vue.d.ts +10 -10
  398. package/lib/components/select-v2/src/useSelect.d.ts +5 -5
  399. package/lib/components/skeleton/index.js +2 -2
  400. package/lib/components/skeleton/src/skeleton-item.js +23 -18
  401. package/lib/components/skeleton/src/skeleton-item.js.map +1 -1
  402. package/lib/components/skeleton/src/skeleton-item2.js +18 -23
  403. package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
  404. package/lib/components/skeleton/src/skeleton.js +1 -1
  405. package/lib/components/switch/index.js +2 -2
  406. package/lib/components/switch/src/switch.js +81 -176
  407. package/lib/components/switch/src/switch.js.map +1 -1
  408. package/lib/components/switch/src/switch2.js +176 -81
  409. package/lib/components/switch/src/switch2.js.map +1 -1
  410. package/lib/components/table/index.d.ts +1 -1
  411. package/lib/components/table/src/filter-panel.vue.d.ts +5 -5
  412. package/lib/components/table/src/table.vue.d.ts +1 -1
  413. package/lib/components/tabs/index.js +1 -1
  414. package/lib/components/tabs/src/tab-bar.js +76 -7
  415. package/lib/components/tabs/src/tab-bar.js.map +1 -1
  416. package/lib/components/tabs/src/tab-bar2.js +7 -76
  417. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  418. package/lib/components/tabs/src/tab-nav.js +1 -1
  419. package/lib/components/tag/index.js +2 -2
  420. package/lib/components/tag/src/tag.js +81 -34
  421. package/lib/components/tag/src/tag.js.map +1 -1
  422. package/lib/components/tag/src/tag2.js +34 -81
  423. package/lib/components/tag/src/tag2.js.map +1 -1
  424. package/lib/components/time-picker/src/common/picker.vue.d.ts +5 -5
  425. package/lib/components/tooltip/index.d.ts +3 -3
  426. package/lib/components/tooltip/src/tooltip.d.ts +1 -1
  427. package/lib/components/tooltip/src/tooltip.js +2 -2
  428. package/lib/components/tooltip/src/tooltip.vue.d.ts +3 -3
  429. package/lib/components/tooltip/src/trigger.js +1 -1
  430. package/lib/components/tooltip/src/trigger.vue.d.ts +3 -3
  431. package/lib/components/tooltip-v2/index.js +3 -3
  432. package/lib/components/tooltip-v2/src/content.js +50 -113
  433. package/lib/components/tooltip-v2/src/content.js.map +1 -1
  434. package/lib/components/tooltip-v2/src/content2.js +113 -50
  435. package/lib/components/tooltip-v2/src/content2.js.map +1 -1
  436. package/lib/components/tooltip-v2/src/root.js +17 -81
  437. package/lib/components/tooltip-v2/src/root.js.map +1 -1
  438. package/lib/components/tooltip-v2/src/root2.js +81 -17
  439. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  440. package/lib/components/tooltip-v2/src/tooltip.js +3 -3
  441. package/lib/components/tooltip-v2/src/tooltip2.js +6 -6
  442. package/lib/components/tooltip-v2/src/trigger.js +11 -89
  443. package/lib/components/tooltip-v2/src/trigger.js.map +1 -1
  444. package/lib/components/tooltip-v2/src/trigger2.js +89 -11
  445. package/lib/components/tooltip-v2/src/trigger2.js.map +1 -1
  446. package/lib/components/upload/index.js +1 -1
  447. package/lib/components/upload/src/upload-content.js +1 -1
  448. package/lib/components/upload/src/upload-dragger.js +12 -32
  449. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  450. package/lib/components/upload/src/upload-dragger2.js +32 -12
  451. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  452. package/lib/index.js +33 -33
  453. package/package.json +1 -1
  454. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.js","sources":["../../../../../../packages/components/calendar/src/calendar.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-ps/utils'\nimport { UPDATE_MODEL_EVENT } from '@element-ps/constants'\nimport type { ExtractPropTypes } from 'vue'\nimport type Calendar from './calendar.vue'\n\nexport type CalendarDateType =\n | 'prev-month'\n | 'next-month'\n | 'prev-year'\n | 'next-year'\n | 'today'\n\nexport const calendarProps = buildProps({\n modelValue: {\n type: Date,\n },\n range: {\n type: definePropType<[Date, Date]>(Array),\n validator: (range: unknown): range is [Date, Date] =>\n Array.isArray(range) &&\n range.length === 2 &&\n range.every((item) => item instanceof Date),\n },\n} as const)\nexport type CalendarProps = ExtractPropTypes<typeof calendarProps>\n\nexport type CalendarInstance = InstanceType<typeof Calendar>\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;;AACY,MAAC,aAAa,GAAGA,gBAAU,CAAC;AACxC,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,IAAI;AACd,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEC,oBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,SAAS,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,YAAY,IAAI,CAAC;AACnH,GAAG;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"calendar.js","sources":["../../../../../../packages/components/calendar/src/calendar.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('header')\">\n <slot name=\"header\" :date=\"i18nDate\">\n <div :class=\"ns.e('title')\">{{ i18nDate }}</div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('button-group')\">\n <ps-button-group>\n <ps-button size=\"small\">\n {{ t('el.datepicker.prevMonth') }}\n </ps-button>\n <ps-button size=\"small\">\n {{ t('el.datepicker.today') }}\n </ps-button>\n <ps-button size=\"small\">\n {{ t('el.datepicker.nextMonth') }}\n </ps-button>\n </ps-button-group>\n </div>\n </slot>\n </div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('body')\">\n <date-table :date=\"date\" :selected-day=\"realSelectedDay\">\n <template v-if=\"$slots.dateCell\" #dateCell=\"data\">\n <slot name=\"dateCell\" v-bind=\"data\" />\n </template>\n </date-table>\n </div>\n <div v-else :class=\"ns.e('body')\">\n <date-table\n v-for=\"(range_, index) in validatedRange\"\n :key=\"index\"\n :date=\"range_[0]\"\n :selected-day=\"realSelectedDay\"\n :range=\"range_\"\n :hide-header=\"index !== 0\"\n >\n <template v-if=\"$slots.dateCell\" #dateCell=\"data\">\n <slot name=\"dateCell\" v-bind=\"data\" />\n </template>\n </date-table>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport { PsButton, PsButtonGroup } from '@element-ps/components/button'\nimport { useLocale, useNamespace } from '@element-ps/hooks'\nimport { debugWarn } from '@element-ps/utils'\nimport DateTable from './date-table.vue'\nimport { calendarProps } from './calendar'\n\nimport type { ComputedRef } from 'vue'\nimport type { Dayjs } from 'dayjs'\n\nconst COMPONENT_NAME = 'PsCalendar'\n\ndefineOptions({\n name: 'PsCalendar',\n})\n\nconst props = defineProps(calendarProps)\n\nconst ns = useNamespace('calendar')\n\nconst { t, lang } = useLocale()\nconst selectedDay = ref<Dayjs>()\nconst now = dayjs().locale(lang.value)\n\nconst i18nDate = computed(() => {\n const pickedMonth = `el.datepicker.month${date.value.format('M')}`\n return `${date.value.year()} ${t('el.datepicker.year')} ${t(pickedMonth)}`\n})\n\nconst realSelectedDay = computed<Dayjs | undefined>({\n get() {\n if (!props.modelValue) return selectedDay.value\n return date.value\n },\n set(val) {\n if (!val) return\n selectedDay.value = val\n },\n})\n\nconst date: ComputedRef<Dayjs> = computed(() => {\n if (!props.modelValue) {\n if (realSelectedDay.value) {\n return realSelectedDay.value\n } else if (validatedRange.value.length) {\n return validatedRange.value[0][0]\n }\n return now\n } else {\n return dayjs(props.modelValue).locale(lang.value)\n }\n})\n\n// https://github.com/element-ps/element-ps/issues/3155\n// Calculate the validate date range according to the start and end dates\nconst calculateValidatedDateRange = (\n startDayjs: Dayjs,\n endDayjs: Dayjs\n): [Dayjs, Dayjs][] => {\n const firstDay = startDayjs.startOf('week')\n const lastDay = endDayjs.endOf('week')\n const firstMonth = firstDay.get('month')\n const lastMonth = lastDay.get('month')\n\n // Current mouth\n if (firstMonth === lastMonth) {\n return [[firstDay, lastDay]]\n }\n // Two adjacent months\n else if (firstMonth + 1 === lastMonth) {\n const firstMonthLastDay = firstDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the first month and the first day of the last month is in the same week\n const isSameWeek = firstMonthLastDay.isSame(lastMonthFirstDay, 'week')\n const lastMonthStartDay = isSameWeek\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Three consecutive months (compatible: 2021-01-30 to 2021-02-28)\n else if (\n firstMonth + 2 === lastMonth ||\n (firstMonth + 1) % 11 === lastMonth\n ) {\n const firstMonthLastDay = firstDay.endOf('month')\n const secondMonthFirstDay = firstDay.add(1, 'month').startOf('month')\n\n // Whether the last day of the first month and the second month is in the same week\n const secondMonthStartDay = firstMonthLastDay.isSame(\n secondMonthFirstDay,\n 'week'\n )\n ? secondMonthFirstDay.add(1, 'week')\n : secondMonthFirstDay\n\n const secondMonthLastDay = secondMonthStartDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the second month and the last day of the last month is in the same week\n const lastMonthStartDay = secondMonthLastDay.isSame(\n lastMonthFirstDay,\n 'week'\n )\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [secondMonthStartDay.startOf('week'), secondMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Other cases\n else {\n debugWarn(\n COMPONENT_NAME,\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n}\n\n// if range is valid, we get a two-digit array\nconst validatedRange = computed(() => {\n if (!props.range) return []\n const rangeArrDayjs = props.range.map((_) => dayjs(_).locale(lang.value))\n const [startDayjs, endDayjs] = rangeArrDayjs\n if (startDayjs.isAfter(endDayjs)) {\n debugWarn(COMPONENT_NAME, 'end time should be greater than start time')\n return []\n }\n if (startDayjs.isSame(endDayjs, 'month')) {\n // same month\n return calculateValidatedDateRange(startDayjs, endDayjs)\n } else {\n // two months\n if (startDayjs.add(1, 'month').month() !== endDayjs.month()) {\n debugWarn(\n COMPONENT_NAME,\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n return calculateValidatedDateRange(startDayjs, endDayjs)\n }\n})\n\ndefineExpose({\n /** @description currently selected date */\n selectedDay: realSelectedDay,\n /** @description Calculate the validate date range according to the start and end dates */\n calculateValidatedDateRange,\n})\n</script>\n"],"names":["useNamespace","useLocale","ref","dayjs","computed","debugWarn"],"mappings":"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"}
@@ -2,201 +2,18 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var dayjs = require('dayjs');
7
- var index$2 = require('../../button/index.js');
8
- require('../../../hooks/index.js');
9
5
  require('../../../utils/index.js');
10
- var dateTable = require('./date-table2.js');
11
- var calendar = require('./calendar.js');
12
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
13
- var index = require('../../../hooks/use-namespace/index.js');
14
- var index$1 = require('../../../hooks/use-locale/index.js');
15
- var error = require('../../../utils/error.js');
6
+ var props = require('../../../utils/vue/props.js');
16
7
 
17
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
18
-
19
- var dayjs__default = /*#__PURE__*/_interopDefaultLegacy(dayjs);
20
-
21
- const __default__ = {
22
- name: "PsCalendar"
23
- };
24
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
25
- ...__default__,
26
- props: calendar.calendarProps,
27
- setup(__props, { expose }) {
28
- const props = __props;
29
- const COMPONENT_NAME = "PsCalendar";
30
- const ns = index.useNamespace("calendar");
31
- const { t, lang } = index$1.useLocale();
32
- const selectedDay = vue.ref();
33
- const now = dayjs__default["default"]().locale(lang.value);
34
- const i18nDate = vue.computed(() => {
35
- const pickedMonth = `el.datepicker.month${date.value.format("M")}`;
36
- return `${date.value.year()} ${t("el.datepicker.year")} ${t(pickedMonth)}`;
37
- });
38
- const realSelectedDay = vue.computed({
39
- get() {
40
- if (!props.modelValue)
41
- return selectedDay.value;
42
- return date.value;
43
- },
44
- set(val) {
45
- if (!val)
46
- return;
47
- selectedDay.value = val;
48
- }
49
- });
50
- const date = vue.computed(() => {
51
- if (!props.modelValue) {
52
- if (realSelectedDay.value) {
53
- return realSelectedDay.value;
54
- } else if (validatedRange.value.length) {
55
- return validatedRange.value[0][0];
56
- }
57
- return now;
58
- } else {
59
- return dayjs__default["default"](props.modelValue).locale(lang.value);
60
- }
61
- });
62
- const calculateValidatedDateRange = (startDayjs, endDayjs) => {
63
- const firstDay = startDayjs.startOf("week");
64
- const lastDay = endDayjs.endOf("week");
65
- const firstMonth = firstDay.get("month");
66
- const lastMonth = lastDay.get("month");
67
- if (firstMonth === lastMonth) {
68
- return [[firstDay, lastDay]];
69
- } else if (firstMonth + 1 === lastMonth) {
70
- const firstMonthLastDay = firstDay.endOf("month");
71
- const lastMonthFirstDay = lastDay.startOf("month");
72
- const isSameWeek = firstMonthLastDay.isSame(lastMonthFirstDay, "week");
73
- const lastMonthStartDay = isSameWeek ? lastMonthFirstDay.add(1, "week") : lastMonthFirstDay;
74
- return [
75
- [firstDay, firstMonthLastDay],
76
- [lastMonthStartDay.startOf("week"), lastDay]
77
- ];
78
- } else if (firstMonth + 2 === lastMonth || (firstMonth + 1) % 11 === lastMonth) {
79
- const firstMonthLastDay = firstDay.endOf("month");
80
- const secondMonthFirstDay = firstDay.add(1, "month").startOf("month");
81
- const secondMonthStartDay = firstMonthLastDay.isSame(secondMonthFirstDay, "week") ? secondMonthFirstDay.add(1, "week") : secondMonthFirstDay;
82
- const secondMonthLastDay = secondMonthStartDay.endOf("month");
83
- const lastMonthFirstDay = lastDay.startOf("month");
84
- const lastMonthStartDay = secondMonthLastDay.isSame(lastMonthFirstDay, "week") ? lastMonthFirstDay.add(1, "week") : lastMonthFirstDay;
85
- return [
86
- [firstDay, firstMonthLastDay],
87
- [secondMonthStartDay.startOf("week"), secondMonthLastDay],
88
- [lastMonthStartDay.startOf("week"), lastDay]
89
- ];
90
- } else {
91
- error.debugWarn(COMPONENT_NAME, "start time and end time interval must not exceed two months");
92
- return [];
93
- }
94
- };
95
- const validatedRange = vue.computed(() => {
96
- if (!props.range)
97
- return [];
98
- const rangeArrDayjs = props.range.map((_) => dayjs__default["default"](_).locale(lang.value));
99
- const [startDayjs, endDayjs] = rangeArrDayjs;
100
- if (startDayjs.isAfter(endDayjs)) {
101
- error.debugWarn(COMPONENT_NAME, "end time should be greater than start time");
102
- return [];
103
- }
104
- if (startDayjs.isSame(endDayjs, "month")) {
105
- return calculateValidatedDateRange(startDayjs, endDayjs);
106
- } else {
107
- if (startDayjs.add(1, "month").month() !== endDayjs.month()) {
108
- error.debugWarn(COMPONENT_NAME, "start time and end time interval must not exceed two months");
109
- return [];
110
- }
111
- return calculateValidatedDateRange(startDayjs, endDayjs);
112
- }
113
- });
114
- expose({
115
- selectedDay: realSelectedDay,
116
- calculateValidatedDateRange
117
- });
118
- return (_ctx, _cache) => {
119
- return vue.openBlock(), vue.createElementBlock("div", {
120
- class: vue.normalizeClass(vue.unref(ns).b())
121
- }, [
122
- vue.createElementVNode("div", {
123
- class: vue.normalizeClass(vue.unref(ns).e("header"))
124
- }, [
125
- vue.renderSlot(_ctx.$slots, "header", { date: vue.unref(i18nDate) }, () => [
126
- vue.createElementVNode("div", {
127
- class: vue.normalizeClass(vue.unref(ns).e("title"))
128
- }, vue.toDisplayString(vue.unref(i18nDate)), 3),
129
- vue.unref(validatedRange).length === 0 ? (vue.openBlock(), vue.createElementBlock("div", {
130
- key: 0,
131
- class: vue.normalizeClass(vue.unref(ns).e("button-group"))
132
- }, [
133
- vue.createVNode(vue.unref(index$2.PsButtonGroup), null, {
134
- default: vue.withCtx(() => [
135
- vue.createVNode(vue.unref(index$2.PsButton), { size: "small" }, {
136
- default: vue.withCtx(() => [
137
- vue.createTextVNode(vue.toDisplayString(vue.unref(t)("el.datepicker.prevMonth")), 1)
138
- ]),
139
- _: 1
140
- }),
141
- vue.createVNode(vue.unref(index$2.PsButton), { size: "small" }, {
142
- default: vue.withCtx(() => [
143
- vue.createTextVNode(vue.toDisplayString(vue.unref(t)("el.datepicker.today")), 1)
144
- ]),
145
- _: 1
146
- }),
147
- vue.createVNode(vue.unref(index$2.PsButton), { size: "small" }, {
148
- default: vue.withCtx(() => [
149
- vue.createTextVNode(vue.toDisplayString(vue.unref(t)("el.datepicker.nextMonth")), 1)
150
- ]),
151
- _: 1
152
- })
153
- ]),
154
- _: 1
155
- })
156
- ], 2)) : vue.createCommentVNode("v-if", true)
157
- ])
158
- ], 2),
159
- vue.unref(validatedRange).length === 0 ? (vue.openBlock(), vue.createElementBlock("div", {
160
- key: 0,
161
- class: vue.normalizeClass(vue.unref(ns).e("body"))
162
- }, [
163
- vue.createVNode(dateTable["default"], {
164
- date: vue.unref(date),
165
- "selected-day": vue.unref(realSelectedDay)
166
- }, vue.createSlots({ _: 2 }, [
167
- _ctx.$slots.dateCell ? {
168
- name: "dateCell",
169
- fn: vue.withCtx((data) => [
170
- vue.renderSlot(_ctx.$slots, "dateCell", vue.normalizeProps(vue.guardReactiveProps(data)))
171
- ])
172
- } : void 0
173
- ]), 1032, ["date", "selected-day"])
174
- ], 2)) : (vue.openBlock(), vue.createElementBlock("div", {
175
- key: 1,
176
- class: vue.normalizeClass(vue.unref(ns).e("body"))
177
- }, [
178
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(validatedRange), (range_, index) => {
179
- return vue.openBlock(), vue.createBlock(dateTable["default"], {
180
- key: index,
181
- date: range_[0],
182
- "selected-day": vue.unref(realSelectedDay),
183
- range: range_,
184
- "hide-header": index !== 0
185
- }, vue.createSlots({ _: 2 }, [
186
- _ctx.$slots.dateCell ? {
187
- name: "dateCell",
188
- fn: vue.withCtx((data) => [
189
- vue.renderSlot(_ctx.$slots, "dateCell", vue.normalizeProps(vue.guardReactiveProps(data)))
190
- ])
191
- } : void 0
192
- ]), 1032, ["date", "selected-day", "range", "hide-header"]);
193
- }), 128))
194
- ], 2))
195
- ], 2);
196
- };
8
+ const calendarProps = props.buildProps({
9
+ modelValue: {
10
+ type: Date
11
+ },
12
+ range: {
13
+ type: props.definePropType(Array),
14
+ validator: (range) => Array.isArray(range) && range.length === 2 && range.every((item) => item instanceof Date)
197
15
  }
198
16
  });
199
- var Calendar = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/Users/meng/workspace/element-ps/packages/components/calendar/src/calendar.vue"]]);
200
17
 
201
- exports["default"] = Calendar;
18
+ exports.calendarProps = calendarProps;
202
19
  //# sourceMappingURL=calendar2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"calendar2.js","sources":["../../../../../../packages/components/calendar/src/calendar.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('header')\">\n <slot name=\"header\" :date=\"i18nDate\">\n <div :class=\"ns.e('title')\">{{ i18nDate }}</div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('button-group')\">\n <ps-button-group>\n <ps-button size=\"small\">\n {{ t('el.datepicker.prevMonth') }}\n </ps-button>\n <ps-button size=\"small\">\n {{ t('el.datepicker.today') }}\n </ps-button>\n <ps-button size=\"small\">\n {{ t('el.datepicker.nextMonth') }}\n </ps-button>\n </ps-button-group>\n </div>\n </slot>\n </div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('body')\">\n <date-table :date=\"date\" :selected-day=\"realSelectedDay\">\n <template v-if=\"$slots.dateCell\" #dateCell=\"data\">\n <slot name=\"dateCell\" v-bind=\"data\" />\n </template>\n </date-table>\n </div>\n <div v-else :class=\"ns.e('body')\">\n <date-table\n v-for=\"(range_, index) in validatedRange\"\n :key=\"index\"\n :date=\"range_[0]\"\n :selected-day=\"realSelectedDay\"\n :range=\"range_\"\n :hide-header=\"index !== 0\"\n >\n <template v-if=\"$slots.dateCell\" #dateCell=\"data\">\n <slot name=\"dateCell\" v-bind=\"data\" />\n </template>\n </date-table>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport { PsButton, PsButtonGroup } from '@element-ps/components/button'\nimport { useLocale, useNamespace } from '@element-ps/hooks'\nimport { debugWarn } from '@element-ps/utils'\nimport DateTable from './date-table.vue'\nimport { calendarProps } from './calendar'\n\nimport type { ComputedRef } from 'vue'\nimport type { Dayjs } from 'dayjs'\n\nconst COMPONENT_NAME = 'PsCalendar'\n\ndefineOptions({\n name: 'PsCalendar',\n})\n\nconst props = defineProps(calendarProps)\n\nconst ns = useNamespace('calendar')\n\nconst { t, lang } = useLocale()\nconst selectedDay = ref<Dayjs>()\nconst now = dayjs().locale(lang.value)\n\nconst i18nDate = computed(() => {\n const pickedMonth = `el.datepicker.month${date.value.format('M')}`\n return `${date.value.year()} ${t('el.datepicker.year')} ${t(pickedMonth)}`\n})\n\nconst realSelectedDay = computed<Dayjs | undefined>({\n get() {\n if (!props.modelValue) return selectedDay.value\n return date.value\n },\n set(val) {\n if (!val) return\n selectedDay.value = val\n },\n})\n\nconst date: ComputedRef<Dayjs> = computed(() => {\n if (!props.modelValue) {\n if (realSelectedDay.value) {\n return realSelectedDay.value\n } else if (validatedRange.value.length) {\n return validatedRange.value[0][0]\n }\n return now\n } else {\n return dayjs(props.modelValue).locale(lang.value)\n }\n})\n\n// https://github.com/element-ps/element-ps/issues/3155\n// Calculate the validate date range according to the start and end dates\nconst calculateValidatedDateRange = (\n startDayjs: Dayjs,\n endDayjs: Dayjs\n): [Dayjs, Dayjs][] => {\n const firstDay = startDayjs.startOf('week')\n const lastDay = endDayjs.endOf('week')\n const firstMonth = firstDay.get('month')\n const lastMonth = lastDay.get('month')\n\n // Current mouth\n if (firstMonth === lastMonth) {\n return [[firstDay, lastDay]]\n }\n // Two adjacent months\n else if (firstMonth + 1 === lastMonth) {\n const firstMonthLastDay = firstDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the first month and the first day of the last month is in the same week\n const isSameWeek = firstMonthLastDay.isSame(lastMonthFirstDay, 'week')\n const lastMonthStartDay = isSameWeek\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Three consecutive months (compatible: 2021-01-30 to 2021-02-28)\n else if (\n firstMonth + 2 === lastMonth ||\n (firstMonth + 1) % 11 === lastMonth\n ) {\n const firstMonthLastDay = firstDay.endOf('month')\n const secondMonthFirstDay = firstDay.add(1, 'month').startOf('month')\n\n // Whether the last day of the first month and the second month is in the same week\n const secondMonthStartDay = firstMonthLastDay.isSame(\n secondMonthFirstDay,\n 'week'\n )\n ? secondMonthFirstDay.add(1, 'week')\n : secondMonthFirstDay\n\n const secondMonthLastDay = secondMonthStartDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the second month and the last day of the last month is in the same week\n const lastMonthStartDay = secondMonthLastDay.isSame(\n lastMonthFirstDay,\n 'week'\n )\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [secondMonthStartDay.startOf('week'), secondMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Other cases\n else {\n debugWarn(\n COMPONENT_NAME,\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n}\n\n// if range is valid, we get a two-digit array\nconst validatedRange = computed(() => {\n if (!props.range) return []\n const rangeArrDayjs = props.range.map((_) => dayjs(_).locale(lang.value))\n const [startDayjs, endDayjs] = rangeArrDayjs\n if (startDayjs.isAfter(endDayjs)) {\n debugWarn(COMPONENT_NAME, 'end time should be greater than start time')\n return []\n }\n if (startDayjs.isSame(endDayjs, 'month')) {\n // same month\n return calculateValidatedDateRange(startDayjs, endDayjs)\n } else {\n // two months\n if (startDayjs.add(1, 'month').month() !== endDayjs.month()) {\n debugWarn(\n COMPONENT_NAME,\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n return calculateValidatedDateRange(startDayjs, endDayjs)\n }\n})\n\ndefineExpose({\n /** @description currently selected date */\n selectedDay: realSelectedDay,\n /** @description Calculate the validate date range according to the start and end dates */\n calculateValidatedDateRange,\n})\n</script>\n"],"names":["useNamespace","useLocale","ref","dayjs","computed","debugWarn"],"mappings":"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"}
1
+ {"version":3,"file":"calendar2.js","sources":["../../../../../../packages/components/calendar/src/calendar.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-ps/utils'\nimport { UPDATE_MODEL_EVENT } from '@element-ps/constants'\nimport type { ExtractPropTypes } from 'vue'\nimport type Calendar from './calendar.vue'\n\nexport type CalendarDateType =\n | 'prev-month'\n | 'next-month'\n | 'prev-year'\n | 'next-year'\n | 'today'\n\nexport const calendarProps = buildProps({\n modelValue: {\n type: Date,\n },\n range: {\n type: definePropType<[Date, Date]>(Array),\n validator: (range: unknown): range is [Date, Date] =>\n Array.isArray(range) &&\n range.length === 2 &&\n range.every((item) => item instanceof Date),\n },\n} as const)\nexport type CalendarProps = ExtractPropTypes<typeof calendarProps>\n\nexport type CalendarInstance = InstanceType<typeof Calendar>\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;;AACY,MAAC,aAAa,GAAGA,gBAAU,CAAC;AACxC,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,IAAI;AACd,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEC,oBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,SAAS,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,YAAY,IAAI,CAAC;AACnH,GAAG;AACH,CAAC;;;;"}
@@ -4,9 +4,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('../../utils/index.js');
6
6
  var carousel$1 = require('./src/carousel.js');
7
- var carouselItem$1 = require('./src/carousel-item.js');
7
+ var carouselItem$1 = require('./src/carousel-item2.js');
8
8
  var carousel = require('./src/carousel2.js');
9
- var carouselItem = require('./src/carousel-item2.js');
9
+ var carouselItem = require('./src/carousel-item.js');
10
10
  var install = require('../../utils/vue/install.js');
11
11
 
12
12
  const PsCarousel = install.withInstall(carousel$1["default"], {
@@ -2,157 +2,16 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
5
  require('../../../utils/index.js');
7
- require('../../../hooks/index.js');
8
- require('../../../tokens/index.js');
9
- var carouselItem = require('./carousel-item2.js');
10
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
11
- var index = require('../../../hooks/use-namespace/index.js');
12
- var carousel = require('../../../tokens/carousel.js');
13
- var error = require('../../../utils/error.js');
14
- var types = require('../../../utils/types.js');
6
+ var props = require('../../../utils/vue/props.js');
15
7
 
16
- const __default__ = {
17
- name: "PsCarouselItem"
18
- };
19
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
20
- ...__default__,
21
- props: carouselItem.carouselItemProps,
22
- setup(__props) {
23
- const props = __props;
24
- const ns = index.useNamespace("carousel");
25
- const COMPONENT_NAME = "PsCarouselItem";
26
- const carouselContext = vue.inject(carousel.carouselContextKey);
27
- const instance = vue.getCurrentInstance();
28
- if (!carouselContext) {
29
- error.debugWarn(COMPONENT_NAME, "usage: <ps-carousel></ps-carousel-item></ps-carousel>");
30
- }
31
- if (!instance) {
32
- error.debugWarn(COMPONENT_NAME, "compositional hook can only be invoked inside setups");
33
- }
34
- const CARD_SCALE = 0.83;
35
- const hover = vue.ref(false);
36
- const translate = vue.ref(0);
37
- const scale = vue.ref(1);
38
- const active = vue.ref(false);
39
- const ready = vue.ref(false);
40
- const inStage = vue.ref(false);
41
- const animating = vue.ref(false);
42
- const { isCardType, isVertical } = carouselContext;
43
- const itemStyle = vue.computed(() => {
44
- const translateType = `translate${vue.unref(isVertical) ? "Y" : "X"}`;
45
- const _translate = `${translateType}(${vue.unref(translate)}px)`;
46
- const _scale = `scale(${vue.unref(scale)})`;
47
- const transform = [_translate, _scale].join(" ");
48
- return {
49
- transform
50
- };
51
- });
52
- function processIndex(index, activeIndex, length) {
53
- const lastItemIndex = length - 1;
54
- const prevItemIndex = activeIndex - 1;
55
- const nextItemIndex = activeIndex + 1;
56
- const halfItemIndex = length / 2;
57
- if (activeIndex === 0 && index === lastItemIndex) {
58
- return -1;
59
- } else if (activeIndex === lastItemIndex && index === 0) {
60
- return length;
61
- } else if (index < prevItemIndex && activeIndex - index >= halfItemIndex) {
62
- return length + 1;
63
- } else if (index > nextItemIndex && index - activeIndex >= halfItemIndex) {
64
- return -2;
65
- }
66
- return index;
67
- }
68
- function calcCardTranslate(index, activeIndex) {
69
- var _a;
70
- const parentWidth = ((_a = carouselContext.root.value) == null ? void 0 : _a.offsetWidth) || 0;
71
- if (inStage.value) {
72
- return parentWidth * ((2 - CARD_SCALE) * (index - activeIndex) + 1) / 4;
73
- } else if (index < activeIndex) {
74
- return -(1 + CARD_SCALE) * parentWidth / 4;
75
- } else {
76
- return (3 + CARD_SCALE) * parentWidth / 4;
77
- }
78
- }
79
- function calcTranslate(index, activeIndex, isVertical2) {
80
- const rootEl = carouselContext.root.value;
81
- if (!rootEl)
82
- return 0;
83
- const distance = (isVertical2 ? rootEl.offsetHeight : rootEl.offsetWidth) || 0;
84
- return distance * (index - activeIndex);
85
- }
86
- const translateItem = (index, activeIndex, oldIndex) => {
87
- var _a;
88
- const _isCardType = vue.unref(isCardType);
89
- const carouselItemLength = (_a = carouselContext.items.value.length) != null ? _a : Number.NaN;
90
- const isActive = index === activeIndex;
91
- if (!_isCardType && !types.isUndefined(oldIndex)) {
92
- animating.value = isActive || index === oldIndex;
93
- }
94
- if (!isActive && carouselItemLength > 2 && carouselContext.loop) {
95
- index = processIndex(index, activeIndex, carouselItemLength);
96
- }
97
- const _isVertical = vue.unref(isVertical);
98
- active.value = isActive;
99
- if (_isCardType) {
100
- if (_isVertical) {
101
- error.debugWarn("Carousel", "vertical direction is not supported for card mode");
102
- }
103
- inStage.value = Math.round(Math.abs(index - activeIndex)) <= 1;
104
- translate.value = calcCardTranslate(index, activeIndex);
105
- scale.value = vue.unref(active) ? 1 : CARD_SCALE;
106
- } else {
107
- translate.value = calcTranslate(index, activeIndex, _isVertical);
108
- }
109
- ready.value = true;
110
- };
111
- vue.onMounted(() => {
112
- carouselContext.addItem({
113
- props,
114
- states: vue.reactive({
115
- hover,
116
- translate,
117
- scale,
118
- active,
119
- ready,
120
- inStage,
121
- animating
122
- }),
123
- uid: instance.uid,
124
- translateItem
125
- });
126
- });
127
- vue.onUnmounted(() => {
128
- carouselContext.removeItem(instance.uid);
129
- });
130
- return (_ctx, _cache) => {
131
- return vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
132
- class: vue.normalizeClass([
133
- vue.unref(ns).e("item"),
134
- vue.unref(ns).is("active", active.value),
135
- vue.unref(ns).is("in-stage", inStage.value),
136
- vue.unref(ns).is("hover", hover.value),
137
- vue.unref(ns).is("animating", animating.value),
138
- { [vue.unref(ns).em("item", "card")]: vue.unref(isCardType) }
139
- ]),
140
- style: vue.normalizeStyle(vue.unref(itemStyle))
141
- }, [
142
- vue.unref(isCardType) ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
143
- key: 0,
144
- class: vue.normalizeClass(vue.unref(ns).e("mask"))
145
- }, null, 2)), [
146
- [vue.vShow, !active.value]
147
- ]) : vue.createCommentVNode("v-if", true),
148
- vue.renderSlot(_ctx.$slots, "default")
149
- ], 6)), [
150
- [vue.vShow, ready.value]
151
- ]);
152
- };
8
+ const carouselItemProps = props.buildProps({
9
+ name: { type: String, default: "" },
10
+ label: {
11
+ type: [String, Number],
12
+ default: ""
153
13
  }
154
14
  });
155
- var CarouselItem = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/Users/meng/workspace/element-ps/packages/components/carousel/src/carousel-item.vue"]]);
156
15
 
157
- exports["default"] = CarouselItem;
16
+ exports.carouselItemProps = carouselItemProps;
158
17
  //# sourceMappingURL=carousel-item.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"carousel-item.js","sources":["../../../../../../packages/components/carousel/src/carousel-item.vue"],"sourcesContent":["<template>\n <div\n v-show=\"ready\"\n :class=\"[\n ns.e('item'),\n ns.is('active', active),\n ns.is('in-stage', inStage),\n ns.is('hover', hover),\n ns.is('animating', animating),\n { [ns.em('item', 'card')]: isCardType },\n ]\"\n :style=\"itemStyle\"\n >\n <div v-if=\"isCardType\" v-show=\"!active\" :class=\"ns.e('mask')\" />\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n getCurrentInstance,\n inject,\n onMounted,\n onUnmounted,\n reactive,\n ref,\n unref,\n} from 'vue'\nimport { debugWarn, isUndefined } from '@element-ps/utils'\nimport { useNamespace } from '@element-ps/hooks'\nimport { carouselContextKey } from '@element-ps/tokens'\nimport { carouselItemProps } from './carousel-item'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'PsCarouselItem',\n})\n\nconst props = defineProps(carouselItemProps)\nconst ns = useNamespace('carousel')\nconst COMPONENT_NAME = 'PsCarouselItem'\n// inject\nconst carouselContext = inject(carouselContextKey)!\n// instance\nconst instance = getCurrentInstance()!\nif (!carouselContext) {\n debugWarn(\n COMPONENT_NAME,\n 'usage: <ps-carousel></ps-carousel-item></ps-carousel>'\n )\n}\n\nif (!instance) {\n debugWarn(\n COMPONENT_NAME,\n 'compositional hook can only be invoked inside setups'\n )\n}\n\nconst CARD_SCALE = 0.83\n\nconst hover = ref(false)\nconst translate = ref(0)\nconst scale = ref(1)\nconst active = ref(false)\nconst ready = ref(false)\nconst inStage = ref(false)\nconst animating = ref(false)\n\n// computed\nconst { isCardType, isVertical } = carouselContext\n\nconst itemStyle = computed<CSSProperties>(() => {\n const translateType = `translate${unref(isVertical) ? 'Y' : 'X'}`\n const _translate = `${translateType}(${unref(translate)}px)`\n const _scale = `scale(${unref(scale)})`\n const transform = [_translate, _scale].join(' ')\n\n return {\n transform,\n }\n})\n\n// methods\n\nfunction processIndex(index: number, activeIndex: number, length: number) {\n const lastItemIndex = length - 1\n const prevItemIndex = activeIndex - 1\n const nextItemIndex = activeIndex + 1\n const halfItemIndex = length / 2\n\n if (activeIndex === 0 && index === lastItemIndex) {\n return -1\n } else if (activeIndex === lastItemIndex && index === 0) {\n return length\n } else if (index < prevItemIndex && activeIndex - index >= halfItemIndex) {\n return length + 1\n } else if (index > nextItemIndex && index - activeIndex >= halfItemIndex) {\n return -2\n }\n return index\n}\n\nfunction calcCardTranslate(index: number, activeIndex: number) {\n const parentWidth = carouselContext.root.value?.offsetWidth || 0\n if (inStage.value) {\n return (parentWidth * ((2 - CARD_SCALE) * (index - activeIndex) + 1)) / 4\n } else if (index < activeIndex) {\n return (-(1 + CARD_SCALE) * parentWidth) / 4\n } else {\n return ((3 + CARD_SCALE) * parentWidth) / 4\n }\n}\n\nfunction calcTranslate(\n index: number,\n activeIndex: number,\n isVertical: boolean\n) {\n const rootEl = carouselContext.root.value\n if (!rootEl) return 0\n\n const distance = (isVertical ? rootEl.offsetHeight : rootEl.offsetWidth) || 0\n return distance * (index - activeIndex)\n}\n\nconst translateItem = (\n index: number,\n activeIndex: number,\n oldIndex?: number\n) => {\n const _isCardType = unref(isCardType)\n const carouselItemLength = carouselContext.items.value.length ?? Number.NaN\n\n const isActive = index === activeIndex\n if (!_isCardType && !isUndefined(oldIndex)) {\n animating.value = isActive || index === oldIndex\n }\n\n if (!isActive && carouselItemLength > 2 && carouselContext.loop) {\n index = processIndex(index, activeIndex, carouselItemLength)\n }\n\n const _isVertical = unref(isVertical)\n active.value = isActive\n\n if (_isCardType) {\n if (_isVertical) {\n debugWarn('Carousel', 'vertical direction is not supported for card mode')\n }\n inStage.value = Math.round(Math.abs(index - activeIndex)) <= 1\n translate.value = calcCardTranslate(index, activeIndex)\n scale.value = unref(active) ? 1 : CARD_SCALE\n } else {\n translate.value = calcTranslate(index, activeIndex, _isVertical)\n }\n\n ready.value = true\n}\n\n// lifecycle\nonMounted(() => {\n carouselContext.addItem({\n props,\n states: reactive({\n hover,\n translate,\n scale,\n active,\n ready,\n inStage,\n animating,\n }),\n uid: instance.uid,\n translateItem,\n })\n})\n\nonUnmounted(() => {\n carouselContext.removeItem(instance.uid)\n})\n</script>\n"],"names":["useNamespace","inject","carouselContextKey","getCurrentInstance","debugWarn","ref","computed","unref","isUndefined","onMounted","reactive","onUnmounted"],"mappings":"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"}
1
+ {"version":3,"file":"carousel-item.js","sources":["../../../../../../packages/components/carousel/src/carousel-item.ts"],"sourcesContent":["import { buildProps } from '@element-ps/utils'\nimport type { ExtractPropTypes } from 'vue'\nimport type CarouselItem from './carousel-item.vue'\n\nexport const carouselItemProps = buildProps({\n name: { type: String, default: '' },\n label: {\n type: [String, Number],\n default: '',\n },\n} as const)\n\nexport type CarouselItemProps = ExtractPropTypes<typeof carouselItemProps>\n\nexport type CarouselItemInstance = InstanceType<typeof CarouselItem>\n"],"names":["buildProps"],"mappings":";;;;;;;AACY,MAAC,iBAAiB,GAAGA,gBAAU,CAAC;AAC5C,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE;AACrC,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,CAAC;;;;"}
@@ -2,16 +2,157 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var vue = require('vue');
5
6
  require('../../../utils/index.js');
6
- var props = require('../../../utils/vue/props.js');
7
+ require('../../../hooks/index.js');
8
+ require('../../../tokens/index.js');
9
+ var carouselItem = require('./carousel-item.js');
10
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
11
+ var index = require('../../../hooks/use-namespace/index.js');
12
+ var carousel = require('../../../tokens/carousel.js');
13
+ var error = require('../../../utils/error.js');
14
+ var types = require('../../../utils/types.js');
7
15
 
8
- const carouselItemProps = props.buildProps({
9
- name: { type: String, default: "" },
10
- label: {
11
- type: [String, Number],
12
- default: ""
16
+ const __default__ = {
17
+ name: "PsCarouselItem"
18
+ };
19
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
20
+ ...__default__,
21
+ props: carouselItem.carouselItemProps,
22
+ setup(__props) {
23
+ const props = __props;
24
+ const ns = index.useNamespace("carousel");
25
+ const COMPONENT_NAME = "PsCarouselItem";
26
+ const carouselContext = vue.inject(carousel.carouselContextKey);
27
+ const instance = vue.getCurrentInstance();
28
+ if (!carouselContext) {
29
+ error.debugWarn(COMPONENT_NAME, "usage: <ps-carousel></ps-carousel-item></ps-carousel>");
30
+ }
31
+ if (!instance) {
32
+ error.debugWarn(COMPONENT_NAME, "compositional hook can only be invoked inside setups");
33
+ }
34
+ const CARD_SCALE = 0.83;
35
+ const hover = vue.ref(false);
36
+ const translate = vue.ref(0);
37
+ const scale = vue.ref(1);
38
+ const active = vue.ref(false);
39
+ const ready = vue.ref(false);
40
+ const inStage = vue.ref(false);
41
+ const animating = vue.ref(false);
42
+ const { isCardType, isVertical } = carouselContext;
43
+ const itemStyle = vue.computed(() => {
44
+ const translateType = `translate${vue.unref(isVertical) ? "Y" : "X"}`;
45
+ const _translate = `${translateType}(${vue.unref(translate)}px)`;
46
+ const _scale = `scale(${vue.unref(scale)})`;
47
+ const transform = [_translate, _scale].join(" ");
48
+ return {
49
+ transform
50
+ };
51
+ });
52
+ function processIndex(index, activeIndex, length) {
53
+ const lastItemIndex = length - 1;
54
+ const prevItemIndex = activeIndex - 1;
55
+ const nextItemIndex = activeIndex + 1;
56
+ const halfItemIndex = length / 2;
57
+ if (activeIndex === 0 && index === lastItemIndex) {
58
+ return -1;
59
+ } else if (activeIndex === lastItemIndex && index === 0) {
60
+ return length;
61
+ } else if (index < prevItemIndex && activeIndex - index >= halfItemIndex) {
62
+ return length + 1;
63
+ } else if (index > nextItemIndex && index - activeIndex >= halfItemIndex) {
64
+ return -2;
65
+ }
66
+ return index;
67
+ }
68
+ function calcCardTranslate(index, activeIndex) {
69
+ var _a;
70
+ const parentWidth = ((_a = carouselContext.root.value) == null ? void 0 : _a.offsetWidth) || 0;
71
+ if (inStage.value) {
72
+ return parentWidth * ((2 - CARD_SCALE) * (index - activeIndex) + 1) / 4;
73
+ } else if (index < activeIndex) {
74
+ return -(1 + CARD_SCALE) * parentWidth / 4;
75
+ } else {
76
+ return (3 + CARD_SCALE) * parentWidth / 4;
77
+ }
78
+ }
79
+ function calcTranslate(index, activeIndex, isVertical2) {
80
+ const rootEl = carouselContext.root.value;
81
+ if (!rootEl)
82
+ return 0;
83
+ const distance = (isVertical2 ? rootEl.offsetHeight : rootEl.offsetWidth) || 0;
84
+ return distance * (index - activeIndex);
85
+ }
86
+ const translateItem = (index, activeIndex, oldIndex) => {
87
+ var _a;
88
+ const _isCardType = vue.unref(isCardType);
89
+ const carouselItemLength = (_a = carouselContext.items.value.length) != null ? _a : Number.NaN;
90
+ const isActive = index === activeIndex;
91
+ if (!_isCardType && !types.isUndefined(oldIndex)) {
92
+ animating.value = isActive || index === oldIndex;
93
+ }
94
+ if (!isActive && carouselItemLength > 2 && carouselContext.loop) {
95
+ index = processIndex(index, activeIndex, carouselItemLength);
96
+ }
97
+ const _isVertical = vue.unref(isVertical);
98
+ active.value = isActive;
99
+ if (_isCardType) {
100
+ if (_isVertical) {
101
+ error.debugWarn("Carousel", "vertical direction is not supported for card mode");
102
+ }
103
+ inStage.value = Math.round(Math.abs(index - activeIndex)) <= 1;
104
+ translate.value = calcCardTranslate(index, activeIndex);
105
+ scale.value = vue.unref(active) ? 1 : CARD_SCALE;
106
+ } else {
107
+ translate.value = calcTranslate(index, activeIndex, _isVertical);
108
+ }
109
+ ready.value = true;
110
+ };
111
+ vue.onMounted(() => {
112
+ carouselContext.addItem({
113
+ props,
114
+ states: vue.reactive({
115
+ hover,
116
+ translate,
117
+ scale,
118
+ active,
119
+ ready,
120
+ inStage,
121
+ animating
122
+ }),
123
+ uid: instance.uid,
124
+ translateItem
125
+ });
126
+ });
127
+ vue.onUnmounted(() => {
128
+ carouselContext.removeItem(instance.uid);
129
+ });
130
+ return (_ctx, _cache) => {
131
+ return vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
132
+ class: vue.normalizeClass([
133
+ vue.unref(ns).e("item"),
134
+ vue.unref(ns).is("active", active.value),
135
+ vue.unref(ns).is("in-stage", inStage.value),
136
+ vue.unref(ns).is("hover", hover.value),
137
+ vue.unref(ns).is("animating", animating.value),
138
+ { [vue.unref(ns).em("item", "card")]: vue.unref(isCardType) }
139
+ ]),
140
+ style: vue.normalizeStyle(vue.unref(itemStyle))
141
+ }, [
142
+ vue.unref(isCardType) ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
143
+ key: 0,
144
+ class: vue.normalizeClass(vue.unref(ns).e("mask"))
145
+ }, null, 2)), [
146
+ [vue.vShow, !active.value]
147
+ ]) : vue.createCommentVNode("v-if", true),
148
+ vue.renderSlot(_ctx.$slots, "default")
149
+ ], 6)), [
150
+ [vue.vShow, ready.value]
151
+ ]);
152
+ };
13
153
  }
14
154
  });
155
+ var CarouselItem = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/Users/meng/workspace/element-ps/packages/components/carousel/src/carousel-item.vue"]]);
15
156
 
16
- exports.carouselItemProps = carouselItemProps;
157
+ exports["default"] = CarouselItem;
17
158
  //# sourceMappingURL=carousel-item2.js.map