element-pe 2.2.86 → 2.2.87

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 (620) hide show
  1. package/dist/index.css +1 -1
  2. package/es/components/affix/index.mjs +2 -2
  3. package/es/components/affix/src/affix.mjs +119 -26
  4. package/es/components/affix/src/affix.mjs.map +1 -1
  5. package/es/components/affix/src/affix2.mjs +26 -119
  6. package/es/components/affix/src/affix2.mjs.map +1 -1
  7. package/es/components/alert/index.d.ts +4 -4
  8. package/es/components/alert/src/alert.d.ts +1 -1
  9. package/es/components/alert/src/alert.vue.d.ts +4 -4
  10. package/es/components/autocomplete/index.d.ts +65 -65
  11. package/es/components/autocomplete/index.mjs +2 -2
  12. package/es/components/autocomplete/src/autocomplete.mjs +379 -99
  13. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  14. package/es/components/autocomplete/src/autocomplete.vue.d.ts +65 -65
  15. package/es/components/autocomplete/src/autocomplete2.mjs +99 -379
  16. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  17. package/es/components/avatar/index.mjs +2 -2
  18. package/es/components/avatar/src/avatar.mjs +76 -35
  19. package/es/components/avatar/src/avatar.mjs.map +1 -1
  20. package/es/components/avatar/src/avatar2.mjs +35 -76
  21. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  22. package/es/components/backtop/index.mjs +2 -2
  23. package/es/components/backtop/src/backtop.mjs +23 -61
  24. package/es/components/backtop/src/backtop.mjs.map +1 -1
  25. package/es/components/backtop/src/backtop2.mjs +61 -23
  26. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  27. package/es/components/badge/index.mjs +2 -2
  28. package/es/components/badge/src/badge.mjs +59 -17
  29. package/es/components/badge/src/badge.mjs.map +1 -1
  30. package/es/components/badge/src/badge2.mjs +17 -59
  31. package/es/components/badge/src/badge2.mjs.map +1 -1
  32. package/es/components/breadcrumb/index.mjs +2 -2
  33. package/es/components/breadcrumb/src/breadcrumb.mjs +36 -11
  34. package/es/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
  35. package/es/components/breadcrumb/src/breadcrumb2.mjs +11 -36
  36. package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  37. package/es/components/button/index.d.ts +5 -5
  38. package/es/components/button/index.mjs +2 -2
  39. package/es/components/button/src/button-group.mjs +1 -1
  40. package/es/components/button/src/button.d.ts +1 -1
  41. package/es/components/button/src/button.mjs +57 -76
  42. package/es/components/button/src/button.mjs.map +1 -1
  43. package/es/components/button/src/button.vue.d.ts +5 -5
  44. package/es/components/button/src/button2.mjs +76 -57
  45. package/es/components/button/src/button2.mjs.map +1 -1
  46. package/es/components/button/src/use-button.d.ts +1 -1
  47. package/es/components/calendar/index.d.ts +5 -5
  48. package/es/components/calendar/index.mjs +2 -2
  49. package/es/components/calendar/src/calendar.mjs +131 -18
  50. package/es/components/calendar/src/calendar.mjs.map +1 -1
  51. package/es/components/calendar/src/calendar.vue.d.ts +5 -5
  52. package/es/components/calendar/src/calendar2.mjs +18 -131
  53. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  54. package/es/components/carousel/index.d.ts +5 -5
  55. package/es/components/carousel/index.mjs +2 -2
  56. package/es/components/carousel/src/carousel.d.ts +1 -1
  57. package/es/components/carousel/src/carousel.mjs +56 -169
  58. package/es/components/carousel/src/carousel.mjs.map +1 -1
  59. package/es/components/carousel/src/carousel.vue.d.ts +5 -5
  60. package/es/components/carousel/src/carousel2.mjs +169 -56
  61. package/es/components/carousel/src/carousel2.mjs.map +1 -1
  62. package/es/components/cascader/index.d.ts +128 -128
  63. package/es/components/cascader/index.mjs +2 -2
  64. package/es/components/cascader/src/cascader.mjs +86 -647
  65. package/es/components/cascader/src/cascader.mjs.map +1 -1
  66. package/es/components/cascader/src/cascader.vue.d.ts +64 -64
  67. package/es/components/cascader/src/cascader2.mjs +647 -86
  68. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  69. package/es/components/check-tag/index.mjs +2 -2
  70. package/es/components/check-tag/src/check-tag.mjs +12 -31
  71. package/es/components/check-tag/src/check-tag.mjs.map +1 -1
  72. package/es/components/check-tag/src/check-tag2.mjs +31 -12
  73. package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
  74. package/es/components/checkbox/index.mjs +2 -2
  75. package/es/components/checkbox/src/checkbox-group.mjs +33 -72
  76. package/es/components/checkbox/src/checkbox-group.mjs.map +1 -1
  77. package/es/components/checkbox/src/checkbox-group2.mjs +72 -33
  78. package/es/components/checkbox/src/checkbox-group2.mjs.map +1 -1
  79. package/es/components/collapse/index.mjs +2 -2
  80. package/es/components/collapse/src/collapse-item.mjs +14 -99
  81. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  82. package/es/components/collapse/src/collapse-item2.mjs +99 -14
  83. package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
  84. package/es/components/color-picker/index.d.ts +35 -35
  85. package/es/components/color-picker/src/color-picker.vue.d.ts +35 -35
  86. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +17 -17
  87. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +17 -17
  88. package/es/components/date-picker/src/panel-utils.d.ts +34 -34
  89. package/es/components/descriptions/index.mjs +2 -2
  90. package/es/components/descriptions/src/description.mjs +120 -27
  91. package/es/components/descriptions/src/description.mjs.map +1 -1
  92. package/es/components/descriptions/src/description2.mjs +27 -120
  93. package/es/components/descriptions/src/description2.mjs.map +1 -1
  94. package/es/components/descriptions/src/descriptions-row.mjs +7 -64
  95. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  96. package/es/components/descriptions/src/descriptions-row2.mjs +64 -7
  97. package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
  98. package/es/components/dialog/index.d.ts +1 -1
  99. package/es/components/dialog/src/dialog.vue.d.ts +1 -1
  100. package/es/components/drawer/index.mjs +2 -2
  101. package/es/components/drawer/src/drawer.mjs +29 -187
  102. package/es/components/drawer/src/drawer.mjs.map +1 -1
  103. package/es/components/drawer/src/drawer2.mjs +187 -29
  104. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  105. package/es/components/dropdown/index.d.ts +14 -14
  106. package/es/components/dropdown/src/dropdown-item-impl.vue.d.ts +1 -1
  107. package/es/components/dropdown/src/dropdown-item.vue.d.ts +1 -1
  108. package/es/components/dropdown/src/dropdown.vue.d.ts +12 -12
  109. package/es/components/empty/index.mjs +2 -2
  110. package/es/components/empty/src/empty.mjs +55 -11
  111. package/es/components/empty/src/empty.mjs.map +1 -1
  112. package/es/components/empty/src/empty2.mjs +11 -55
  113. package/es/components/empty/src/empty2.mjs.map +1 -1
  114. package/es/components/focus-trap/src/focus-trap.vue.d.ts +1 -1
  115. package/es/components/form/index.d.ts +12 -12
  116. package/es/components/form/src/form-item.d.ts +1 -1
  117. package/es/components/form/src/form-item.vue.d.ts +5 -5
  118. package/es/components/image/index.d.ts +1 -1
  119. package/es/components/image/index.mjs +2 -2
  120. package/es/components/image/src/image.mjs +227 -56
  121. package/es/components/image/src/image.mjs.map +1 -1
  122. package/es/components/image/src/image.vue.d.ts +1 -1
  123. package/es/components/image/src/image2.mjs +56 -227
  124. package/es/components/image/src/image2.mjs.map +1 -1
  125. package/es/components/index.mjs +33 -33
  126. package/es/components/input/index.d.ts +12 -12
  127. package/es/components/input/src/input.vue.d.ts +12 -12
  128. package/es/components/input-number/index.d.ts +45 -45
  129. package/es/components/input-number/index.mjs +2 -2
  130. package/es/components/input-number/src/input-number.mjs +335 -69
  131. package/es/components/input-number/src/input-number.mjs.map +1 -1
  132. package/es/components/input-number/src/input-number.vue.d.ts +45 -45
  133. package/es/components/input-number/src/input-number2.mjs +69 -335
  134. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  135. package/es/components/menu/index.d.ts +3 -3
  136. package/es/components/menu/src/menu.d.ts +4 -4
  137. package/es/components/message/index.mjs +1 -1
  138. package/es/components/message/src/message.d.ts +1 -1
  139. package/es/components/message/src/message.mjs +86 -151
  140. package/es/components/message/src/message.mjs.map +1 -1
  141. package/es/components/message/src/message.vue.d.ts +4 -4
  142. package/es/components/message/src/message2.mjs +151 -86
  143. package/es/components/message/src/message2.mjs.map +1 -1
  144. package/es/components/message/src/method.mjs +2 -2
  145. package/es/components/notification/src/notification.d.ts +1 -1
  146. package/es/components/notification/src/notification.vue.d.ts +4 -4
  147. package/es/components/page-header/index.mjs +2 -2
  148. package/es/components/page-header/src/page-header.mjs +17 -103
  149. package/es/components/page-header/src/page-header.mjs.map +1 -1
  150. package/es/components/page-header/src/page-header2.mjs +103 -17
  151. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  152. package/es/components/pagination/src/components/jumper.mjs +9 -60
  153. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  154. package/es/components/pagination/src/components/jumper.vue.d.ts +12 -12
  155. package/es/components/pagination/src/components/jumper2.mjs +60 -9
  156. package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
  157. package/es/components/pagination/src/components/pager.mjs +17 -218
  158. package/es/components/pagination/src/components/pager.mjs.map +1 -1
  159. package/es/components/pagination/src/components/pager2.mjs +218 -17
  160. package/es/components/pagination/src/components/pager2.mjs.map +1 -1
  161. package/es/components/pagination/src/components/sizes.vue.d.ts +26 -26
  162. package/es/components/pagination/src/components/total.mjs +28 -7
  163. package/es/components/pagination/src/components/total.mjs.map +1 -1
  164. package/es/components/pagination/src/components/total2.mjs +7 -28
  165. package/es/components/pagination/src/components/total2.mjs.map +1 -1
  166. package/es/components/pagination/src/pagination.mjs +3 -3
  167. package/es/components/popconfirm/index.d.ts +23 -23
  168. package/es/components/popconfirm/src/popconfirm.mjs +1 -1
  169. package/es/components/popconfirm/src/popconfirm.vue.d.ts +23 -23
  170. package/es/components/popover/index.d.ts +18 -18
  171. package/es/components/popover/index.mjs +2 -2
  172. package/es/components/popover/src/popover.mjs +111 -66
  173. package/es/components/popover/src/popover.mjs.map +1 -1
  174. package/es/components/popover/src/popover.vue.d.ts +18 -18
  175. package/es/components/popover/src/popover2.mjs +66 -111
  176. package/es/components/popover/src/popover2.mjs.map +1 -1
  177. package/es/components/popper/index.mjs +4 -4
  178. package/es/components/popper/src/content.mjs +139 -94
  179. package/es/components/popper/src/content.mjs.map +1 -1
  180. package/es/components/popper/src/content.vue.d.ts +6 -6
  181. package/es/components/popper/src/content2.mjs +94 -139
  182. package/es/components/popper/src/content2.mjs.map +1 -1
  183. package/es/components/popper/src/popper.mjs +25 -32
  184. package/es/components/popper/src/popper.mjs.map +1 -1
  185. package/es/components/popper/src/popper2.mjs +32 -25
  186. package/es/components/popper/src/popper2.mjs.map +1 -1
  187. package/es/components/radio/index.mjs +2 -2
  188. package/es/components/radio/src/radio-button.mjs +1 -1
  189. package/es/components/radio/src/radio-group.mjs +1 -1
  190. package/es/components/radio/src/radio.mjs +35 -76
  191. package/es/components/radio/src/radio.mjs.map +1 -1
  192. package/es/components/radio/src/radio2.mjs +76 -35
  193. package/es/components/radio/src/radio2.mjs.map +1 -1
  194. package/es/components/rate/index.mjs +2 -2
  195. package/es/components/rate/src/rate.mjs +92 -258
  196. package/es/components/rate/src/rate.mjs.map +1 -1
  197. package/es/components/rate/src/rate2.mjs +258 -92
  198. package/es/components/rate/src/rate2.mjs.map +1 -1
  199. package/es/components/resizable-columns/index.mjs +4 -4
  200. package/es/components/resizable-columns/src/resizable-column.mjs +145 -8
  201. package/es/components/resizable-columns/src/resizable-column.mjs.map +1 -1
  202. package/es/components/resizable-columns/src/resizable-column2.mjs +8 -145
  203. package/es/components/resizable-columns/src/resizable-column2.mjs.map +1 -1
  204. package/es/components/resizable-columns/src/resizable-columns.mjs +248 -21
  205. package/es/components/resizable-columns/src/resizable-columns.mjs.map +1 -1
  206. package/es/components/resizable-columns/src/resizable-columns2.mjs +21 -248
  207. package/es/components/resizable-columns/src/resizable-columns2.mjs.map +1 -1
  208. package/es/components/result/index.d.ts +4 -4
  209. package/es/components/result/src/result.d.ts +1 -1
  210. package/es/components/result/src/result.vue.d.ts +4 -4
  211. package/es/components/roving-focus-group/src/roving-focus-item.vue.d.ts +1 -1
  212. package/es/components/scrollbar/index.mjs +1 -1
  213. package/es/components/scrollbar/src/bar.mjs +17 -42
  214. package/es/components/scrollbar/src/bar.mjs.map +1 -1
  215. package/es/components/scrollbar/src/bar2.mjs +42 -17
  216. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  217. package/es/components/scrollbar/src/scrollbar2.mjs +1 -1
  218. package/es/components/scrollbar/src/thumb.mjs +134 -11
  219. package/es/components/scrollbar/src/thumb.mjs.map +1 -1
  220. package/es/components/scrollbar/src/thumb2.mjs +11 -134
  221. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  222. package/es/components/select/index.d.ts +26 -26
  223. package/es/components/select/src/select.mjs +1 -1
  224. package/es/components/select/src/select.vue.d.ts +26 -26
  225. package/es/components/select/src/useSelect.d.ts +24 -24
  226. package/es/components/select-v2/index.d.ts +30 -30
  227. package/es/components/select-v2/src/option-item.vue.d.ts +1 -1
  228. package/es/components/select-v2/src/select.vue.d.ts +15 -15
  229. package/es/components/select-v2/src/useSelect.d.ts +13 -13
  230. package/es/components/slider/index.d.ts +75 -75
  231. package/es/components/slider/index.mjs +2 -2
  232. package/es/components/slider/src/button.mjs +94 -21
  233. package/es/components/slider/src/button.mjs.map +1 -1
  234. package/es/components/slider/src/button.vue.d.ts +6 -6
  235. package/es/components/slider/src/button2.mjs +21 -94
  236. package/es/components/slider/src/button2.mjs.map +1 -1
  237. package/es/components/slider/src/composables/use-slide.d.ts +24 -24
  238. package/es/components/slider/src/slider.mjs +96 -237
  239. package/es/components/slider/src/slider.mjs.map +1 -1
  240. package/es/components/slider/src/slider.vue.d.ts +75 -75
  241. package/es/components/slider/src/slider2.mjs +237 -96
  242. package/es/components/slider/src/slider2.mjs.map +1 -1
  243. package/es/components/steps/index.d.ts +16 -16
  244. package/es/components/steps/index.mjs +2 -2
  245. package/es/components/steps/src/item.d.ts +1 -1
  246. package/es/components/steps/src/item.mjs +193 -19
  247. package/es/components/steps/src/item.mjs.map +1 -1
  248. package/es/components/steps/src/item.vue.d.ts +4 -4
  249. package/es/components/steps/src/item2.mjs +19 -193
  250. package/es/components/steps/src/item2.mjs.map +1 -1
  251. package/es/components/steps/src/steps.d.ts +2 -2
  252. package/es/components/steps/src/steps.vue.d.ts +8 -8
  253. package/es/components/table/index.d.ts +1 -1
  254. package/es/components/table/src/filter-panel.vue.d.ts +12 -12
  255. package/es/components/table/src/table.vue.d.ts +1 -1
  256. package/es/components/tag/index.d.ts +1 -1
  257. package/es/components/tag/index.mjs +2 -2
  258. package/es/components/tag/src/tag.mjs +98 -33
  259. package/es/components/tag/src/tag.mjs.map +1 -1
  260. package/es/components/tag/src/tag.vue.d.ts +1 -1
  261. package/es/components/tag/src/tag2.mjs +33 -98
  262. package/es/components/tag/src/tag2.mjs.map +1 -1
  263. package/es/components/teleport/index.mjs +2 -2
  264. package/es/components/teleport/src/teleport.mjs +18 -44
  265. package/es/components/teleport/src/teleport.mjs.map +1 -1
  266. package/es/components/teleport/src/teleport2.mjs +44 -18
  267. package/es/components/teleport/src/teleport2.mjs.map +1 -1
  268. package/es/components/time-picker/src/common/picker.vue.d.ts +34 -34
  269. package/es/components/time-select/index.d.ts +110 -110
  270. package/es/components/time-select/src/time-select.vue.d.ts +55 -55
  271. package/es/components/tooltip/index.d.ts +6 -6
  272. package/es/components/tooltip/src/content.mjs +1 -1
  273. package/es/components/tooltip/src/content.vue.d.ts +6 -6
  274. package/es/components/tooltip/src/content2.mjs +1 -1
  275. package/es/components/tooltip/src/tooltip.mjs +1 -1
  276. package/es/components/tooltip/src/tooltip.vue.d.ts +6 -6
  277. package/es/components/tooltip-v2/index.d.ts +4 -4
  278. package/es/components/tooltip-v2/index.mjs +4 -4
  279. package/es/components/tooltip-v2/src/content.mjs +114 -50
  280. package/es/components/tooltip-v2/src/content.mjs.map +1 -1
  281. package/es/components/tooltip-v2/src/content2.mjs +50 -114
  282. package/es/components/tooltip-v2/src/content2.mjs.map +1 -1
  283. package/es/components/tooltip-v2/src/root.mjs +17 -82
  284. package/es/components/tooltip-v2/src/root.mjs.map +1 -1
  285. package/es/components/tooltip-v2/src/root2.mjs +82 -17
  286. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  287. package/es/components/tooltip-v2/src/tooltip.mjs +21 -78
  288. package/es/components/tooltip-v2/src/tooltip.mjs.map +1 -1
  289. package/es/components/tooltip-v2/src/tooltip.vue.d.ts +4 -4
  290. package/es/components/tooltip-v2/src/tooltip2.mjs +78 -21
  291. package/es/components/tooltip-v2/src/tooltip2.mjs.map +1 -1
  292. package/es/components/transfer/index.d.ts +65 -65
  293. package/es/components/transfer/index.mjs +2 -2
  294. package/es/components/transfer/src/composables/use-checked-change.mjs +1 -1
  295. package/es/components/transfer/src/transfer-panel.vue.d.ts +12 -12
  296. package/es/components/transfer/src/transfer-panel2.mjs +1 -1
  297. package/es/components/transfer/src/transfer.mjs +162 -69
  298. package/es/components/transfer/src/transfer.mjs.map +1 -1
  299. package/es/components/transfer/src/transfer.vue.d.ts +65 -65
  300. package/es/components/transfer/src/transfer2.mjs +69 -162
  301. package/es/components/transfer/src/transfer2.mjs.map +1 -1
  302. package/es/components/tree-v2/index.d.ts +1 -1
  303. package/es/components/tree-v2/src/tree-node.vue.d.ts +1 -1
  304. package/es/components/tree-v2/src/tree.vue.d.ts +1 -1
  305. package/es/components/upload/index.d.ts +5 -5
  306. package/es/components/upload/src/upload-content.vue.d.ts +1 -1
  307. package/es/components/upload/src/upload.vue.d.ts +5 -5
  308. package/es/index.mjs +33 -33
  309. package/lib/components/affix/index.js +2 -2
  310. package/lib/components/affix/src/affix.js +119 -27
  311. package/lib/components/affix/src/affix.js.map +1 -1
  312. package/lib/components/affix/src/affix2.js +27 -119
  313. package/lib/components/affix/src/affix2.js.map +1 -1
  314. package/lib/components/alert/index.d.ts +4 -4
  315. package/lib/components/alert/src/alert.d.ts +1 -1
  316. package/lib/components/alert/src/alert.vue.d.ts +4 -4
  317. package/lib/components/autocomplete/index.d.ts +65 -65
  318. package/lib/components/autocomplete/index.js +2 -2
  319. package/lib/components/autocomplete/src/autocomplete.js +378 -99
  320. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  321. package/lib/components/autocomplete/src/autocomplete.vue.d.ts +65 -65
  322. package/lib/components/autocomplete/src/autocomplete2.js +99 -378
  323. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  324. package/lib/components/avatar/index.js +2 -2
  325. package/lib/components/avatar/src/avatar.js +75 -35
  326. package/lib/components/avatar/src/avatar.js.map +1 -1
  327. package/lib/components/avatar/src/avatar2.js +35 -75
  328. package/lib/components/avatar/src/avatar2.js.map +1 -1
  329. package/lib/components/backtop/index.js +2 -2
  330. package/lib/components/backtop/src/backtop.js +24 -61
  331. package/lib/components/backtop/src/backtop.js.map +1 -1
  332. package/lib/components/backtop/src/backtop2.js +61 -24
  333. package/lib/components/backtop/src/backtop2.js.map +1 -1
  334. package/lib/components/badge/index.js +2 -2
  335. package/lib/components/badge/src/badge.js +59 -17
  336. package/lib/components/badge/src/badge.js.map +1 -1
  337. package/lib/components/badge/src/badge2.js +17 -59
  338. package/lib/components/badge/src/badge2.js.map +1 -1
  339. package/lib/components/breadcrumb/index.js +2 -2
  340. package/lib/components/breadcrumb/src/breadcrumb.js +36 -11
  341. package/lib/components/breadcrumb/src/breadcrumb.js.map +1 -1
  342. package/lib/components/breadcrumb/src/breadcrumb2.js +11 -36
  343. package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  344. package/lib/components/button/index.d.ts +5 -5
  345. package/lib/components/button/index.js +2 -2
  346. package/lib/components/button/src/button-group.js +1 -1
  347. package/lib/components/button/src/button.d.ts +1 -1
  348. package/lib/components/button/src/button.js +60 -76
  349. package/lib/components/button/src/button.js.map +1 -1
  350. package/lib/components/button/src/button.vue.d.ts +5 -5
  351. package/lib/components/button/src/button2.js +76 -60
  352. package/lib/components/button/src/button2.js.map +1 -1
  353. package/lib/components/button/src/use-button.d.ts +1 -1
  354. package/lib/components/calendar/index.d.ts +5 -5
  355. package/lib/components/calendar/index.js +2 -2
  356. package/lib/components/calendar/src/calendar.js +131 -19
  357. package/lib/components/calendar/src/calendar.js.map +1 -1
  358. package/lib/components/calendar/src/calendar.vue.d.ts +5 -5
  359. package/lib/components/calendar/src/calendar2.js +19 -131
  360. package/lib/components/calendar/src/calendar2.js.map +1 -1
  361. package/lib/components/carousel/index.d.ts +5 -5
  362. package/lib/components/carousel/index.js +2 -2
  363. package/lib/components/carousel/src/carousel.d.ts +1 -1
  364. package/lib/components/carousel/src/carousel.js +57 -169
  365. package/lib/components/carousel/src/carousel.js.map +1 -1
  366. package/lib/components/carousel/src/carousel.vue.d.ts +5 -5
  367. package/lib/components/carousel/src/carousel2.js +169 -57
  368. package/lib/components/carousel/src/carousel2.js.map +1 -1
  369. package/lib/components/cascader/index.d.ts +128 -128
  370. package/lib/components/cascader/index.js +2 -2
  371. package/lib/components/cascader/src/cascader.js +87 -647
  372. package/lib/components/cascader/src/cascader.js.map +1 -1
  373. package/lib/components/cascader/src/cascader.vue.d.ts +64 -64
  374. package/lib/components/cascader/src/cascader2.js +647 -87
  375. package/lib/components/cascader/src/cascader2.js.map +1 -1
  376. package/lib/components/check-tag/index.js +2 -2
  377. package/lib/components/check-tag/src/check-tag.js +13 -31
  378. package/lib/components/check-tag/src/check-tag.js.map +1 -1
  379. package/lib/components/check-tag/src/check-tag2.js +31 -13
  380. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  381. package/lib/components/checkbox/index.js +2 -2
  382. package/lib/components/checkbox/src/checkbox-group.js +34 -72
  383. package/lib/components/checkbox/src/checkbox-group.js.map +1 -1
  384. package/lib/components/checkbox/src/checkbox-group2.js +72 -34
  385. package/lib/components/checkbox/src/checkbox-group2.js.map +1 -1
  386. package/lib/components/collapse/index.js +2 -2
  387. package/lib/components/collapse/src/collapse-item.js +14 -99
  388. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  389. package/lib/components/collapse/src/collapse-item2.js +99 -14
  390. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  391. package/lib/components/color-picker/index.d.ts +35 -35
  392. package/lib/components/color-picker/src/color-picker.vue.d.ts +35 -35
  393. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +17 -17
  394. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +17 -17
  395. package/lib/components/date-picker/src/panel-utils.d.ts +34 -34
  396. package/lib/components/descriptions/index.js +2 -2
  397. package/lib/components/descriptions/src/description.js +120 -27
  398. package/lib/components/descriptions/src/description.js.map +1 -1
  399. package/lib/components/descriptions/src/description2.js +27 -120
  400. package/lib/components/descriptions/src/description2.js.map +1 -1
  401. package/lib/components/descriptions/src/descriptions-row.js +7 -64
  402. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  403. package/lib/components/descriptions/src/descriptions-row2.js +64 -7
  404. package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
  405. package/lib/components/dialog/index.d.ts +1 -1
  406. package/lib/components/dialog/src/dialog.vue.d.ts +1 -1
  407. package/lib/components/drawer/index.js +2 -2
  408. package/lib/components/drawer/src/drawer.js +30 -187
  409. package/lib/components/drawer/src/drawer.js.map +1 -1
  410. package/lib/components/drawer/src/drawer2.js +187 -30
  411. package/lib/components/drawer/src/drawer2.js.map +1 -1
  412. package/lib/components/dropdown/index.d.ts +14 -14
  413. package/lib/components/dropdown/src/dropdown-item-impl.vue.d.ts +1 -1
  414. package/lib/components/dropdown/src/dropdown-item.vue.d.ts +1 -1
  415. package/lib/components/dropdown/src/dropdown.vue.d.ts +12 -12
  416. package/lib/components/empty/index.js +2 -2
  417. package/lib/components/empty/src/empty.js +55 -11
  418. package/lib/components/empty/src/empty.js.map +1 -1
  419. package/lib/components/empty/src/empty2.js +11 -55
  420. package/lib/components/empty/src/empty2.js.map +1 -1
  421. package/lib/components/focus-trap/src/focus-trap.vue.d.ts +1 -1
  422. package/lib/components/form/index.d.ts +12 -12
  423. package/lib/components/form/src/form-item.d.ts +1 -1
  424. package/lib/components/form/src/form-item.vue.d.ts +5 -5
  425. package/lib/components/image/index.d.ts +1 -1
  426. package/lib/components/image/index.js +2 -2
  427. package/lib/components/image/src/image.js +226 -56
  428. package/lib/components/image/src/image.js.map +1 -1
  429. package/lib/components/image/src/image.vue.d.ts +1 -1
  430. package/lib/components/image/src/image2.js +56 -226
  431. package/lib/components/image/src/image2.js.map +1 -1
  432. package/lib/components/index.js +33 -33
  433. package/lib/components/input/index.d.ts +12 -12
  434. package/lib/components/input/src/input.vue.d.ts +12 -12
  435. package/lib/components/input-number/index.d.ts +45 -45
  436. package/lib/components/input-number/index.js +2 -2
  437. package/lib/components/input-number/src/input-number.js +333 -68
  438. package/lib/components/input-number/src/input-number.js.map +1 -1
  439. package/lib/components/input-number/src/input-number.vue.d.ts +45 -45
  440. package/lib/components/input-number/src/input-number2.js +68 -333
  441. package/lib/components/input-number/src/input-number2.js.map +1 -1
  442. package/lib/components/menu/index.d.ts +3 -3
  443. package/lib/components/menu/src/menu.d.ts +4 -4
  444. package/lib/components/message/index.js +1 -1
  445. package/lib/components/message/src/message.d.ts +1 -1
  446. package/lib/components/message/src/message.js +88 -150
  447. package/lib/components/message/src/message.js.map +1 -1
  448. package/lib/components/message/src/message.vue.d.ts +4 -4
  449. package/lib/components/message/src/message2.js +150 -88
  450. package/lib/components/message/src/message2.js.map +1 -1
  451. package/lib/components/message/src/method.js +2 -2
  452. package/lib/components/notification/src/notification.d.ts +1 -1
  453. package/lib/components/notification/src/notification.vue.d.ts +4 -4
  454. package/lib/components/page-header/index.js +2 -2
  455. package/lib/components/page-header/src/page-header.js +18 -103
  456. package/lib/components/page-header/src/page-header.js.map +1 -1
  457. package/lib/components/page-header/src/page-header2.js +103 -18
  458. package/lib/components/page-header/src/page-header2.js.map +1 -1
  459. package/lib/components/pagination/src/components/jumper.js +9 -60
  460. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  461. package/lib/components/pagination/src/components/jumper.vue.d.ts +12 -12
  462. package/lib/components/pagination/src/components/jumper2.js +60 -9
  463. package/lib/components/pagination/src/components/jumper2.js.map +1 -1
  464. package/lib/components/pagination/src/components/pager.js +17 -218
  465. package/lib/components/pagination/src/components/pager.js.map +1 -1
  466. package/lib/components/pagination/src/components/pager2.js +218 -17
  467. package/lib/components/pagination/src/components/pager2.js.map +1 -1
  468. package/lib/components/pagination/src/components/sizes.vue.d.ts +26 -26
  469. package/lib/components/pagination/src/components/total.js +28 -7
  470. package/lib/components/pagination/src/components/total.js.map +1 -1
  471. package/lib/components/pagination/src/components/total2.js +7 -28
  472. package/lib/components/pagination/src/components/total2.js.map +1 -1
  473. package/lib/components/pagination/src/pagination.js +3 -3
  474. package/lib/components/popconfirm/index.d.ts +23 -23
  475. package/lib/components/popconfirm/src/popconfirm.js +1 -1
  476. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +23 -23
  477. package/lib/components/popover/index.d.ts +18 -18
  478. package/lib/components/popover/index.js +2 -2
  479. package/lib/components/popover/src/popover.js +111 -67
  480. package/lib/components/popover/src/popover.js.map +1 -1
  481. package/lib/components/popover/src/popover.vue.d.ts +18 -18
  482. package/lib/components/popover/src/popover2.js +67 -111
  483. package/lib/components/popover/src/popover2.js.map +1 -1
  484. package/lib/components/popper/index.js +4 -4
  485. package/lib/components/popper/src/content.js +139 -99
  486. package/lib/components/popper/src/content.js.map +1 -1
  487. package/lib/components/popper/src/content.vue.d.ts +6 -6
  488. package/lib/components/popper/src/content2.js +99 -139
  489. package/lib/components/popper/src/content2.js.map +1 -1
  490. package/lib/components/popper/src/popper.js +28 -32
  491. package/lib/components/popper/src/popper.js.map +1 -1
  492. package/lib/components/popper/src/popper2.js +32 -28
  493. package/lib/components/popper/src/popper2.js.map +1 -1
  494. package/lib/components/radio/index.js +2 -2
  495. package/lib/components/radio/src/radio-button.js +1 -1
  496. package/lib/components/radio/src/radio-group.js +1 -1
  497. package/lib/components/radio/src/radio.js +37 -76
  498. package/lib/components/radio/src/radio.js.map +1 -1
  499. package/lib/components/radio/src/radio2.js +76 -37
  500. package/lib/components/radio/src/radio2.js.map +1 -1
  501. package/lib/components/rate/index.js +2 -2
  502. package/lib/components/rate/src/rate.js +92 -257
  503. package/lib/components/rate/src/rate.js.map +1 -1
  504. package/lib/components/rate/src/rate2.js +257 -92
  505. package/lib/components/rate/src/rate2.js.map +1 -1
  506. package/lib/components/resizable-columns/index.js +4 -4
  507. package/lib/components/resizable-columns/src/resizable-column.js +145 -8
  508. package/lib/components/resizable-columns/src/resizable-column.js.map +1 -1
  509. package/lib/components/resizable-columns/src/resizable-column2.js +8 -145
  510. package/lib/components/resizable-columns/src/resizable-column2.js.map +1 -1
  511. package/lib/components/resizable-columns/src/resizable-columns.js +248 -21
  512. package/lib/components/resizable-columns/src/resizable-columns.js.map +1 -1
  513. package/lib/components/resizable-columns/src/resizable-columns2.js +21 -248
  514. package/lib/components/resizable-columns/src/resizable-columns2.js.map +1 -1
  515. package/lib/components/result/index.d.ts +4 -4
  516. package/lib/components/result/src/result.d.ts +1 -1
  517. package/lib/components/result/src/result.vue.d.ts +4 -4
  518. package/lib/components/roving-focus-group/src/roving-focus-item.vue.d.ts +1 -1
  519. package/lib/components/scrollbar/index.js +1 -1
  520. package/lib/components/scrollbar/src/bar.js +17 -42
  521. package/lib/components/scrollbar/src/bar.js.map +1 -1
  522. package/lib/components/scrollbar/src/bar2.js +42 -17
  523. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  524. package/lib/components/scrollbar/src/scrollbar2.js +1 -1
  525. package/lib/components/scrollbar/src/thumb.js +134 -11
  526. package/lib/components/scrollbar/src/thumb.js.map +1 -1
  527. package/lib/components/scrollbar/src/thumb2.js +11 -134
  528. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  529. package/lib/components/select/index.d.ts +26 -26
  530. package/lib/components/select/src/select.js +1 -1
  531. package/lib/components/select/src/select.vue.d.ts +26 -26
  532. package/lib/components/select/src/useSelect.d.ts +24 -24
  533. package/lib/components/select-v2/index.d.ts +30 -30
  534. package/lib/components/select-v2/src/option-item.vue.d.ts +1 -1
  535. package/lib/components/select-v2/src/select.vue.d.ts +15 -15
  536. package/lib/components/select-v2/src/useSelect.d.ts +13 -13
  537. package/lib/components/slider/index.d.ts +75 -75
  538. package/lib/components/slider/index.js +2 -2
  539. package/lib/components/slider/src/button.js +94 -22
  540. package/lib/components/slider/src/button.js.map +1 -1
  541. package/lib/components/slider/src/button.vue.d.ts +6 -6
  542. package/lib/components/slider/src/button2.js +22 -94
  543. package/lib/components/slider/src/button2.js.map +1 -1
  544. package/lib/components/slider/src/composables/use-slide.d.ts +24 -24
  545. package/lib/components/slider/src/slider.js +97 -237
  546. package/lib/components/slider/src/slider.js.map +1 -1
  547. package/lib/components/slider/src/slider.vue.d.ts +75 -75
  548. package/lib/components/slider/src/slider2.js +237 -97
  549. package/lib/components/slider/src/slider2.js.map +1 -1
  550. package/lib/components/steps/index.d.ts +16 -16
  551. package/lib/components/steps/index.js +2 -2
  552. package/lib/components/steps/src/item.d.ts +1 -1
  553. package/lib/components/steps/src/item.js +193 -19
  554. package/lib/components/steps/src/item.js.map +1 -1
  555. package/lib/components/steps/src/item.vue.d.ts +4 -4
  556. package/lib/components/steps/src/item2.js +19 -193
  557. package/lib/components/steps/src/item2.js.map +1 -1
  558. package/lib/components/steps/src/steps.d.ts +2 -2
  559. package/lib/components/steps/src/steps.vue.d.ts +8 -8
  560. package/lib/components/table/index.d.ts +1 -1
  561. package/lib/components/table/src/filter-panel.vue.d.ts +12 -12
  562. package/lib/components/table/src/table.vue.d.ts +1 -1
  563. package/lib/components/tag/index.d.ts +1 -1
  564. package/lib/components/tag/index.js +2 -2
  565. package/lib/components/tag/src/tag.js +98 -34
  566. package/lib/components/tag/src/tag.js.map +1 -1
  567. package/lib/components/tag/src/tag.vue.d.ts +1 -1
  568. package/lib/components/tag/src/tag2.js +34 -98
  569. package/lib/components/tag/src/tag2.js.map +1 -1
  570. package/lib/components/teleport/index.js +2 -2
  571. package/lib/components/teleport/src/teleport.js +18 -44
  572. package/lib/components/teleport/src/teleport.js.map +1 -1
  573. package/lib/components/teleport/src/teleport2.js +44 -18
  574. package/lib/components/teleport/src/teleport2.js.map +1 -1
  575. package/lib/components/time-picker/src/common/picker.vue.d.ts +34 -34
  576. package/lib/components/time-select/index.d.ts +110 -110
  577. package/lib/components/time-select/src/time-select.vue.d.ts +55 -55
  578. package/lib/components/tooltip/index.d.ts +6 -6
  579. package/lib/components/tooltip/src/content.js +1 -1
  580. package/lib/components/tooltip/src/content.vue.d.ts +6 -6
  581. package/lib/components/tooltip/src/content2.js +1 -1
  582. package/lib/components/tooltip/src/tooltip.js +1 -1
  583. package/lib/components/tooltip/src/tooltip.vue.d.ts +6 -6
  584. package/lib/components/tooltip-v2/index.d.ts +4 -4
  585. package/lib/components/tooltip-v2/index.js +4 -4
  586. package/lib/components/tooltip-v2/src/content.js +114 -50
  587. package/lib/components/tooltip-v2/src/content.js.map +1 -1
  588. package/lib/components/tooltip-v2/src/content2.js +50 -114
  589. package/lib/components/tooltip-v2/src/content2.js.map +1 -1
  590. package/lib/components/tooltip-v2/src/root.js +17 -82
  591. package/lib/components/tooltip-v2/src/root.js.map +1 -1
  592. package/lib/components/tooltip-v2/src/root2.js +82 -17
  593. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  594. package/lib/components/tooltip-v2/src/tooltip.js +21 -78
  595. package/lib/components/tooltip-v2/src/tooltip.js.map +1 -1
  596. package/lib/components/tooltip-v2/src/tooltip.vue.d.ts +4 -4
  597. package/lib/components/tooltip-v2/src/tooltip2.js +78 -21
  598. package/lib/components/tooltip-v2/src/tooltip2.js.map +1 -1
  599. package/lib/components/transfer/index.d.ts +65 -65
  600. package/lib/components/transfer/index.js +2 -2
  601. package/lib/components/transfer/src/composables/use-checked-change.js +1 -1
  602. package/lib/components/transfer/src/transfer-panel.vue.d.ts +12 -12
  603. package/lib/components/transfer/src/transfer-panel2.js +1 -1
  604. package/lib/components/transfer/src/transfer.js +162 -73
  605. package/lib/components/transfer/src/transfer.js.map +1 -1
  606. package/lib/components/transfer/src/transfer.vue.d.ts +65 -65
  607. package/lib/components/transfer/src/transfer2.js +73 -162
  608. package/lib/components/transfer/src/transfer2.js.map +1 -1
  609. package/lib/components/tree-v2/index.d.ts +1 -1
  610. package/lib/components/tree-v2/src/tree-node.vue.d.ts +1 -1
  611. package/lib/components/tree-v2/src/tree.vue.d.ts +1 -1
  612. package/lib/components/upload/index.d.ts +5 -5
  613. package/lib/components/upload/src/upload-content.vue.d.ts +1 -1
  614. package/lib/components/upload/src/upload.vue.d.ts +5 -5
  615. package/lib/index.js +33 -33
  616. package/package.json +1 -1
  617. package/theme-chalk/el-resizable-columns.css +1 -1
  618. package/theme-chalk/index.css +1 -1
  619. package/theme-chalk/src/resizable-columns.scss +2 -2
  620. package/web-types.json +1 -1
@@ -1,100 +1,266 @@
1
- import { StarFilled, Star } from '@element-plus/icons-vue';
1
+ import { defineComponent, inject, ref, computed, markRaw, openBlock, createElementBlock, unref, normalizeClass, normalizeStyle, Fragment, renderList, createVNode, withCtx, withDirectives, createBlock, resolveDynamicComponent, vShow, createCommentVNode, toDisplayString } from 'vue';
2
+ import '../../config-provider/index.mjs';
2
3
  import '../../../constants/index.mjs';
3
4
  import '../../../utils/index.mjs';
5
+ import '../../form/index.mjs';
6
+ import { ElIcon } from '../../icon/index.mjs';
4
7
  import '../../../hooks/index.mjs';
5
- import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
6
- import { mutable } from '../../../utils/typescript.mjs';
7
- import { iconPropType } from '../../../utils/vue/icon.mjs';
8
- import { viewModes } from '../../../constants/size.mjs';
9
- import { useSizeProp } from '../../../hooks/use-size/index.mjs';
10
- import { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
11
- import { isNumber } from '../../../utils/types.mjs';
8
+ import { rateProps, rateEmits } from './rate.mjs';
9
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
10
+ import { isObject, isArray, isString } from '@vue/shared';
11
+ import { formContextKey, formItemContextKey } from '../../form/src/constants.mjs';
12
+ import { useFormSize } from '../../form/src/hooks/use-form-common-props.mjs';
13
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
14
+ import { useFormItemInputId } from '../../form/src/hooks/use-form-item.mjs';
15
+ import { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
16
+ import { EVENT_CODE } from '../../../constants/aria.mjs';
17
+ import { hasClass } from '../../../utils/dom/style.mjs';
18
+ import { watch } from '../../config-provider/src/for-editor.mjs';
12
19
 
13
- const rateProps = buildProps({
14
- modelValue: {
15
- type: Number,
16
- default: 0
17
- },
18
- id: {
19
- type: String,
20
- default: void 0
21
- },
22
- lowThreshold: {
23
- type: Number,
24
- default: 2
25
- },
26
- highThreshold: {
27
- type: Number,
28
- default: 4
29
- },
30
- max: {
31
- type: Number,
32
- default: 5
33
- },
34
- colors: {
35
- type: definePropType([Array, Object]),
36
- default: () => mutable(["", "", ""])
37
- },
38
- voidColor: {
39
- type: String,
40
- default: ""
41
- },
42
- disabledVoidColor: {
43
- type: String,
44
- default: ""
45
- },
46
- icons: {
47
- type: definePropType([Array, Object]),
48
- default: () => [StarFilled, StarFilled, StarFilled]
49
- },
50
- voidIcon: {
51
- type: iconPropType,
52
- default: () => Star
53
- },
54
- disabledVoidIcon: {
55
- type: iconPropType,
56
- default: () => StarFilled
57
- },
58
- disabled: Boolean,
59
- viewMode: {
60
- type: String,
61
- values: viewModes
62
- },
63
- allowHalf: Boolean,
64
- showText: Boolean,
65
- showScore: Boolean,
66
- textColor: {
67
- type: String,
68
- default: ""
69
- },
70
- texts: {
71
- type: definePropType(Array),
72
- default: () => mutable([
73
- "Extremely bad",
74
- "Disappointed",
75
- "Fair",
76
- "Satisfied",
77
- "Surprise"
78
- ])
79
- },
80
- scoreTemplate: {
81
- type: String,
82
- default: "{value}"
83
- },
84
- size: useSizeProp,
85
- label: {
86
- type: String,
87
- default: void 0
88
- },
89
- clearable: {
90
- type: Boolean,
91
- default: false
20
+ const _hoisted_1 = ["id", "aria-label", "aria-labelledby", "aria-valuenow", "aria-valuetext", "aria-valuemax"];
21
+ const _hoisted_2 = ["onMousemove", "onClick"];
22
+ const __default__ = defineComponent({
23
+ name: "ElRate"
24
+ });
25
+ const _sfc_main = /* @__PURE__ */ defineComponent({
26
+ ...__default__,
27
+ props: rateProps,
28
+ emits: rateEmits,
29
+ setup(__props, { expose, emit }) {
30
+ const props = __props;
31
+ function getValueFromMap(value, map) {
32
+ const isExcludedObject = (val) => isObject(val);
33
+ const matchedKeys = Object.keys(map).map((key) => +key).filter((key) => {
34
+ const val = map[key];
35
+ const excluded = isExcludedObject(val) ? val.excluded : false;
36
+ return excluded ? value < key : value <= key;
37
+ }).sort((a, b) => a - b);
38
+ const matchedValue = map[matchedKeys[0]];
39
+ return isExcludedObject(matchedValue) && matchedValue.value || matchedValue;
40
+ }
41
+ const formContext = inject(formContextKey, void 0);
42
+ const formItemContext = inject(formItemContextKey, void 0);
43
+ const rateSize = useFormSize();
44
+ const ns = useNamespace("rate");
45
+ const { inputId, isLabeledByFormItem } = useFormItemInputId(props, {
46
+ formItemContext
47
+ });
48
+ const currentValue = ref(props.modelValue);
49
+ const hoverIndex = ref(-1);
50
+ const pointerAtLeftHalf = ref(true);
51
+ const rateClasses = computed(() => [ns.b(), ns.m(rateSize.value)]);
52
+ const rateDisabled = computed(() => props.disabled || (formContext == null ? void 0 : formContext.disabled));
53
+ const rateViewMode = computed(() => props.viewMode || (formContext == null ? void 0 : formContext.viewMode));
54
+ const rateStyles = computed(() => {
55
+ return ns.cssVarBlock({
56
+ "void-color": props.voidColor,
57
+ "disabled-void-color": props.disabledVoidColor,
58
+ "fill-color": activeColor.value
59
+ });
60
+ });
61
+ const text = computed(() => {
62
+ let result = "";
63
+ if (props.showScore) {
64
+ result = props.scoreTemplate.replace(/\{\s*value\s*\}/, rateDisabled.value || rateViewMode.value ? `${props.modelValue}` : `${currentValue.value}`);
65
+ } else if (props.showText) {
66
+ result = props.texts[Math.ceil(currentValue.value) - 1];
67
+ }
68
+ return result;
69
+ });
70
+ const valueDecimal = computed(() => props.modelValue * 100 - Math.floor(props.modelValue) * 100);
71
+ const colorMap = computed(() => isArray(props.colors) ? {
72
+ [props.lowThreshold]: props.colors[0],
73
+ [props.highThreshold]: { value: props.colors[1], excluded: true },
74
+ [props.max]: props.colors[2]
75
+ } : props.colors);
76
+ const activeColor = computed(() => {
77
+ const color = getValueFromMap(currentValue.value, colorMap.value);
78
+ return isObject(color) ? "" : color;
79
+ });
80
+ const decimalStyle = computed(() => {
81
+ let width = "";
82
+ if (rateDisabled.value || rateViewMode.value) {
83
+ width = `${valueDecimal.value}%`;
84
+ } else if (props.allowHalf) {
85
+ width = "50%";
86
+ }
87
+ return {
88
+ color: activeColor.value,
89
+ width
90
+ };
91
+ });
92
+ const componentMap = computed(() => {
93
+ let icons = isArray(props.icons) ? [...props.icons] : { ...props.icons };
94
+ icons = markRaw(icons);
95
+ return isArray(icons) ? {
96
+ [props.lowThreshold]: icons[0],
97
+ [props.highThreshold]: {
98
+ value: icons[1],
99
+ excluded: true
100
+ },
101
+ [props.max]: icons[2]
102
+ } : icons;
103
+ });
104
+ const decimalIconComponent = computed(() => getValueFromMap(props.modelValue, componentMap.value));
105
+ const voidComponent = computed(() => rateDisabled.value || rateViewMode.value ? isString(props.disabledVoidIcon) ? props.disabledVoidIcon : markRaw(props.disabledVoidIcon) : isString(props.voidIcon) ? props.voidIcon : markRaw(props.voidIcon));
106
+ const activeComponent = computed(() => getValueFromMap(currentValue.value, componentMap.value));
107
+ function showDecimalIcon(item) {
108
+ const showWhenDisabled = (rateDisabled.value || rateViewMode.value) && valueDecimal.value > 0 && item - 1 < props.modelValue && item > props.modelValue;
109
+ const showWhenAllowHalf = props.allowHalf && pointerAtLeftHalf.value && item - 0.5 <= currentValue.value && item > currentValue.value;
110
+ return showWhenDisabled || showWhenAllowHalf;
111
+ }
112
+ function emitValue(value) {
113
+ if (props.clearable && value === props.modelValue) {
114
+ value = 0;
115
+ }
116
+ emit(UPDATE_MODEL_EVENT, value);
117
+ if (props.modelValue !== value) {
118
+ emit("change", value);
119
+ }
120
+ }
121
+ function selectValue(value) {
122
+ if (rateDisabled.value || rateViewMode.value) {
123
+ return;
124
+ }
125
+ if (props.allowHalf && pointerAtLeftHalf.value) {
126
+ emitValue(currentValue.value);
127
+ } else {
128
+ emitValue(value);
129
+ }
130
+ }
131
+ function handleKey(e) {
132
+ if (rateDisabled.value || rateViewMode.value) {
133
+ return;
134
+ }
135
+ let _currentValue = currentValue.value;
136
+ const code = e.code;
137
+ if (code === EVENT_CODE.up || code === EVENT_CODE.right) {
138
+ if (props.allowHalf) {
139
+ _currentValue += 0.5;
140
+ } else {
141
+ _currentValue += 1;
142
+ }
143
+ e.stopPropagation();
144
+ e.preventDefault();
145
+ } else if (code === EVENT_CODE.left || code === EVENT_CODE.down) {
146
+ if (props.allowHalf) {
147
+ _currentValue -= 0.5;
148
+ } else {
149
+ _currentValue -= 1;
150
+ }
151
+ e.stopPropagation();
152
+ e.preventDefault();
153
+ }
154
+ _currentValue = _currentValue < 0 ? 0 : _currentValue;
155
+ _currentValue = _currentValue > props.max ? props.max : _currentValue;
156
+ emit(UPDATE_MODEL_EVENT, _currentValue);
157
+ emit("change", _currentValue);
158
+ return _currentValue;
159
+ }
160
+ function setCurrentValue(value, event) {
161
+ if (rateDisabled.value || rateViewMode.value) {
162
+ return;
163
+ }
164
+ if (props.allowHalf && event) {
165
+ let target = event.target;
166
+ if (hasClass(target, ns.e("item"))) {
167
+ target = target.querySelector(`.${ns.e("icon")}`);
168
+ }
169
+ if (target.clientWidth === 0 || hasClass(target, ns.e("decimal"))) {
170
+ target = target.parentNode;
171
+ }
172
+ pointerAtLeftHalf.value = event.offsetX * 2 <= target.clientWidth;
173
+ currentValue.value = pointerAtLeftHalf.value ? value - 0.5 : value;
174
+ } else {
175
+ currentValue.value = value;
176
+ }
177
+ hoverIndex.value = value;
178
+ }
179
+ function resetCurrentValue() {
180
+ if (rateDisabled.value || rateViewMode.value) {
181
+ return;
182
+ }
183
+ if (props.allowHalf) {
184
+ pointerAtLeftHalf.value = props.modelValue !== Math.floor(props.modelValue);
185
+ }
186
+ currentValue.value = props.modelValue;
187
+ hoverIndex.value = -1;
188
+ }
189
+ watch(() => props.modelValue, (val) => {
190
+ currentValue.value = val;
191
+ pointerAtLeftHalf.value = props.modelValue !== Math.floor(props.modelValue);
192
+ });
193
+ if (!props.modelValue) {
194
+ emit(UPDATE_MODEL_EVENT, 0);
195
+ }
196
+ expose({
197
+ setCurrentValue,
198
+ resetCurrentValue
199
+ });
200
+ return (_ctx, _cache) => {
201
+ var _a;
202
+ return openBlock(), createElementBlock("div", {
203
+ id: unref(inputId),
204
+ class: normalizeClass([unref(rateClasses), unref(ns).is("disabled", unref(rateDisabled)), unref(ns).is("view-mode", !!unref(rateViewMode))]),
205
+ role: "slider",
206
+ "aria-label": !unref(isLabeledByFormItem) ? _ctx.label || "rating" : void 0,
207
+ "aria-labelledby": unref(isLabeledByFormItem) ? (_a = unref(formItemContext)) == null ? void 0 : _a.labelId : void 0,
208
+ "aria-valuenow": currentValue.value,
209
+ "aria-valuetext": unref(text) || void 0,
210
+ "aria-valuemin": "0",
211
+ "aria-valuemax": _ctx.max,
212
+ tabindex: "0",
213
+ style: normalizeStyle(unref(rateStyles)),
214
+ onKeydown: handleKey
215
+ }, [
216
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.max, (item, key) => {
217
+ return openBlock(), createElementBlock("span", {
218
+ key,
219
+ class: normalizeClass(unref(ns).e("item")),
220
+ onMousemove: ($event) => setCurrentValue(item, $event),
221
+ onMouseleave: resetCurrentValue,
222
+ onClick: ($event) => selectValue(item)
223
+ }, [
224
+ createVNode(unref(ElIcon), {
225
+ class: normalizeClass([
226
+ unref(ns).e("icon"),
227
+ { hover: hoverIndex.value === item },
228
+ unref(ns).is("active", item <= currentValue.value)
229
+ ])
230
+ }, {
231
+ default: withCtx(() => [
232
+ !showDecimalIcon(item) ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
233
+ withDirectives((openBlock(), createBlock(resolveDynamicComponent(unref(activeComponent)), null, null, 512)), [
234
+ [vShow, item <= currentValue.value]
235
+ ]),
236
+ withDirectives((openBlock(), createBlock(resolveDynamicComponent(unref(voidComponent)), null, null, 512)), [
237
+ [vShow, !(item <= currentValue.value)]
238
+ ])
239
+ ], 64)) : createCommentVNode("v-if", true),
240
+ showDecimalIcon(item) ? (openBlock(), createBlock(unref(ElIcon), {
241
+ key: 1,
242
+ style: normalizeStyle(unref(decimalStyle)),
243
+ class: normalizeClass([unref(ns).e("icon"), unref(ns).e("decimal")])
244
+ }, {
245
+ default: withCtx(() => [
246
+ (openBlock(), createBlock(resolveDynamicComponent(unref(decimalIconComponent))))
247
+ ]),
248
+ _: 1
249
+ }, 8, ["style", "class"])) : createCommentVNode("v-if", true)
250
+ ]),
251
+ _: 2
252
+ }, 1032, ["class"])
253
+ ], 42, _hoisted_2);
254
+ }), 128)),
255
+ _ctx.showText || _ctx.showScore ? (openBlock(), createElementBlock("span", {
256
+ key: 0,
257
+ class: normalizeClass(unref(ns).e("text"))
258
+ }, toDisplayString(unref(text)), 3)) : createCommentVNode("v-if", true)
259
+ ], 46, _hoisted_1);
260
+ };
92
261
  }
93
262
  });
94
- const rateEmits = {
95
- [CHANGE_EVENT]: (value) => isNumber(value),
96
- [UPDATE_MODEL_EVENT]: (value) => isNumber(value)
97
- };
263
+ var Rate = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "D:\\workspace\\element-pe\\packages\\components\\rate\\src\\rate.vue"]]);
98
264
 
99
- export { rateEmits, rateProps };
265
+ export { Rate as default };
100
266
  //# sourceMappingURL=rate2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"rate2.mjs","sources":["../../../../../../packages/components/rate/src/rate.ts"],"sourcesContent":["import { Star, StarFilled } from '@element-plus/icons-vue'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT, viewModes } from '@element-plus/constants'\nimport {\n buildProps,\n definePropType,\n iconPropType,\n isNumber,\n mutable,\n} from '@element-plus/utils'\nimport { useSizeProp } from '@element-plus/hooks'\nimport type { Component, ExtractPropTypes } from 'vue'\nimport type Rate from './rate.vue'\n\nexport const rateProps = buildProps({\n /**\n * @description binding value\n */\n modelValue: {\n type: Number,\n default: 0,\n },\n /**\n * @description native `id` attribute\n */\n id: {\n type: String,\n default: undefined,\n },\n /**\n * @description threshold value between low and medium level. The value itself will be included in low level\n */\n lowThreshold: {\n type: Number,\n default: 2,\n },\n /**\n * @description threshold value between medium and high level. The value itself will be included in high level\n */\n highThreshold: {\n type: Number,\n default: 4,\n },\n /**\n * @description max rating score\n */\n max: {\n type: Number,\n default: 5,\n },\n /**\n * @description colors for icons. If array, it should have 3 elements, each of which corresponds with a score level, else if object, the key should be threshold value between two levels, and the value should be corresponding color\n */\n colors: {\n type: definePropType<string[] | Record<number, string>>([Array, Object]),\n default: () => mutable(['', '', ''] as const),\n },\n /**\n * @description color of unselected icons\n */\n voidColor: {\n type: String,\n default: '',\n },\n /**\n * @description color of unselected read-only icons\n */\n disabledVoidColor: {\n type: String,\n default: '',\n },\n /**\n * @description icon components. If array, it should have 3 elements, each of which corresponds with a score level, else if object, the key should be threshold value between two levels, and the value should be corresponding icon component\n */\n icons: {\n type: definePropType<\n Array<string | Component> | Record<number, string | Component>\n >([Array, Object]),\n default: () => [StarFilled, StarFilled, StarFilled],\n },\n /**\n * @description component of unselected icons\n */\n voidIcon: {\n type: iconPropType,\n default: () => Star,\n },\n /**\n * @description component of unselected read-only icons\n */\n disabledVoidIcon: {\n type: iconPropType,\n default: () => StarFilled,\n },\n /**\n * @description whether Rate is read-only\n */\n disabled: Boolean,\n /**\n * @description 浏览模式\n */\n viewMode: {\n type: String,\n values: viewModes\n },\n /**\n * @description whether picking half start is allowed\n */\n allowHalf: Boolean,\n /**\n * @description whether to display texts\n */\n showText: Boolean,\n /**\n * @description whether to display current score. show-score and show-text cannot be true at the same time\n */\n showScore: Boolean,\n /**\n * @description color of texts\n */\n textColor: {\n type: String,\n default: '',\n },\n /**\n * @description text array\n */\n texts: {\n type: definePropType<string[]>(Array),\n default: () =>\n mutable([\n 'Extremely bad',\n 'Disappointed',\n 'Fair',\n 'Satisfied',\n 'Surprise',\n ] as const),\n },\n /**\n * @description score template\n */\n scoreTemplate: {\n type: String,\n default: '{value}',\n },\n /**\n * @description size of Rate\n */\n size: useSizeProp,\n /**\n * @description same as `aria-label` in Rate\n */\n label: {\n type: String,\n default: undefined,\n },\n /**\n * @description whether value can be reset to `0`\n */\n clearable: {\n type: Boolean,\n default: false,\n },\n} as const)\n\nexport type RateProps = ExtractPropTypes<typeof rateProps>\n\nexport const rateEmits = {\n [CHANGE_EVENT]: (value: number) => isNumber(value),\n [UPDATE_MODEL_EVENT]: (value: number) => isNumber(value),\n}\nexport type RateEmits = typeof rateEmits\n\nexport type RateInstance = InstanceType<typeof Rate>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rate2.mjs","sources":["../../../../../../packages/components/rate/src/rate.vue"],"sourcesContent":["<template>\n <div\n :id=\"inputId\"\n :class=\"[rateClasses, ns.is('disabled', rateDisabled), ns.is('view-mode', !!rateViewMode)]\"\n role=\"slider\"\n :aria-label=\"!isLabeledByFormItem ? label || 'rating' : undefined\"\n :aria-labelledby=\"\n isLabeledByFormItem ? formItemContext?.labelId : undefined\n \"\n :aria-valuenow=\"currentValue\"\n :aria-valuetext=\"text || undefined\"\n aria-valuemin=\"0\"\n :aria-valuemax=\"max\"\n tabindex=\"0\"\n :style=\"rateStyles\"\n @keydown=\"handleKey\"\n >\n <span\n v-for=\"(item, key) in max\"\n :key=\"key\"\n :class=\"ns.e('item')\"\n @mousemove=\"setCurrentValue(item, $event)\"\n @mouseleave=\"resetCurrentValue\"\n @click=\"selectValue(item)\"\n >\n <el-icon\n :class=\"[\n ns.e('icon'),\n { hover: hoverIndex === item },\n ns.is('active', item <= currentValue),\n ]\"\n >\n <template v-if=\"!showDecimalIcon(item)\">\n <component :is=\"activeComponent\" v-show=\"item <= currentValue\" />\n <component :is=\"voidComponent\" v-show=\"!(item <= currentValue)\" />\n </template>\n <el-icon\n v-if=\"showDecimalIcon(item)\"\n :style=\"decimalStyle\"\n :class=\"[ns.e('icon'), ns.e('decimal')]\"\n >\n <component :is=\"decimalIconComponent\" />\n </el-icon>\n </el-icon>\n </span>\n <span v-if=\"showText || showScore\" :class=\"ns.e('text')\">\n {{ text }}\n </span>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, inject, markRaw, ref } from 'vue'\nimport { watch } from '../../config-provider'\nimport { EVENT_CODE, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { hasClass, isArray, isObject, isString } from '@element-plus/utils'\nimport {\n formContextKey,\n formItemContextKey,\n useFormItemInputId,\n useFormSize,\n} from '@element-plus/components/form'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { rateEmits, rateProps } from './rate'\nimport type { iconPropType } from '@element-plus/utils'\nimport type { CSSProperties, Component } from 'vue'\n\nfunction getValueFromMap<T>(\n value: number,\n map: Record<string, T | { excluded?: boolean; value: T }>\n) {\n const isExcludedObject = (\n val: unknown\n ): val is { excluded?: boolean } & Record<any, unknown> => isObject(val)\n\n const matchedKeys = Object.keys(map)\n .map((key) => +key)\n .filter((key) => {\n const val = map[key]\n const excluded = isExcludedObject(val) ? val.excluded : false\n return excluded ? value < key : value <= key\n })\n .sort((a, b) => a - b)\n const matchedValue = map[matchedKeys[0]]\n return (isExcludedObject(matchedValue) && matchedValue.value) || matchedValue\n}\n\ndefineOptions({\n name: 'ElRate',\n})\n\nconst props = defineProps(rateProps)\nconst emit = defineEmits(rateEmits)\n\nconst formContext = inject(formContextKey, undefined)\nconst formItemContext = inject(formItemContextKey, undefined)\nconst rateSize = useFormSize()\nconst ns = useNamespace('rate')\nconst { inputId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext,\n})\n\nconst currentValue = ref(props.modelValue)\nconst hoverIndex = ref(-1)\nconst pointerAtLeftHalf = ref(true)\n\nconst rateClasses = computed(() => [ns.b(), ns.m(rateSize.value)])\nconst rateDisabled = computed(() => props.disabled || formContext?.disabled)\nconst rateViewMode = computed(() => props.viewMode || formContext?.viewMode)\nconst rateStyles = computed(() => {\n return ns.cssVarBlock({\n 'void-color': props.voidColor,\n 'disabled-void-color': props.disabledVoidColor,\n 'fill-color': activeColor.value,\n }) as CSSProperties\n})\n\nconst text = computed(() => {\n let result = ''\n if (props.showScore) {\n result = props.scoreTemplate.replace(\n /\\{\\s*value\\s*\\}/,\n rateDisabled.value || rateViewMode.value ? `${props.modelValue}` : `${currentValue.value}`\n )\n } else if (props.showText) {\n result = props.texts[Math.ceil(currentValue.value) - 1]\n }\n return result\n})\nconst valueDecimal = computed(\n () => props.modelValue * 100 - Math.floor(props.modelValue) * 100\n)\nconst colorMap = computed(() =>\n isArray(props.colors)\n ? {\n [props.lowThreshold]: props.colors[0],\n [props.highThreshold]: { value: props.colors[1], excluded: true },\n [props.max]: props.colors[2],\n }\n : props.colors\n)\nconst activeColor = computed(() => {\n const color = getValueFromMap(currentValue.value, colorMap.value)\n // {value: '', excluded: true} returned\n return isObject(color) ? '' : color\n})\nconst decimalStyle = computed(() => {\n let width = ''\n if (rateDisabled.value || rateViewMode.value) {\n width = `${valueDecimal.value}%`\n } else if (props.allowHalf) {\n width = '50%'\n }\n return {\n color: activeColor.value,\n width,\n }\n})\nconst componentMap = computed(() => {\n let icons = isArray(props.icons) ? [...props.icons] : { ...props.icons }\n icons = markRaw(icons) as\n | Array<string | Component>\n | Record<number, string | Component>\n return isArray(icons)\n ? {\n [props.lowThreshold]: icons[0],\n [props.highThreshold]: {\n value: icons[1],\n excluded: true,\n },\n [props.max]: icons[2],\n }\n : icons\n})\nconst decimalIconComponent = computed(() =>\n getValueFromMap(props.modelValue, componentMap.value)\n)\nconst voidComponent = computed(() =>\n (rateDisabled.value || rateViewMode.value)\n ? isString(props.disabledVoidIcon)\n ? props.disabledVoidIcon\n : (markRaw(props.disabledVoidIcon) as typeof iconPropType)\n : isString(props.voidIcon)\n ? props.voidIcon\n : (markRaw(props.voidIcon) as typeof iconPropType)\n)\nconst activeComponent = computed(() =>\n getValueFromMap(currentValue.value, componentMap.value)\n)\n\nfunction showDecimalIcon(item: number) {\n const showWhenDisabled =\n (rateDisabled.value || rateViewMode.value) &&\n valueDecimal.value > 0 &&\n item - 1 < props.modelValue &&\n item > props.modelValue\n const showWhenAllowHalf =\n props.allowHalf &&\n pointerAtLeftHalf.value &&\n item - 0.5 <= currentValue.value &&\n item > currentValue.value\n return showWhenDisabled || showWhenAllowHalf\n}\n\nfunction emitValue(value: number) {\n // if allow clear, and selected value is same as modelValue, reset value to 0\n if (props.clearable && value === props.modelValue) {\n value = 0\n }\n\n emit(UPDATE_MODEL_EVENT, value)\n if (props.modelValue !== value) {\n emit('change', value)\n }\n}\n\nfunction selectValue(value: number) {\n if (rateDisabled.value || rateViewMode.value) {\n return\n }\n if (props.allowHalf && pointerAtLeftHalf.value) {\n emitValue(currentValue.value)\n } else {\n emitValue(value)\n }\n}\n\nfunction handleKey(e: KeyboardEvent) {\n if (rateDisabled.value || rateViewMode.value) {\n return\n }\n let _currentValue = currentValue.value\n const code = e.code\n if (code === EVENT_CODE.up || code === EVENT_CODE.right) {\n if (props.allowHalf) {\n _currentValue += 0.5\n } else {\n _currentValue += 1\n }\n e.stopPropagation()\n e.preventDefault()\n } else if (code === EVENT_CODE.left || code === EVENT_CODE.down) {\n if (props.allowHalf) {\n _currentValue -= 0.5\n } else {\n _currentValue -= 1\n }\n e.stopPropagation()\n e.preventDefault()\n }\n _currentValue = _currentValue < 0 ? 0 : _currentValue\n _currentValue = _currentValue > props.max ? props.max : _currentValue\n emit(UPDATE_MODEL_EVENT, _currentValue)\n emit('change', _currentValue)\n return _currentValue\n}\n\nfunction setCurrentValue(value: number, event?: MouseEvent) {\n if (rateDisabled.value || rateViewMode.value) {\n return\n }\n if (props.allowHalf && event) {\n // TODO: use cache via computed https://github.com/element-plus/element-plus/pull/5456#discussion_r786472092\n let target = event.target as HTMLElement\n if (hasClass(target, ns.e('item'))) {\n target = target.querySelector(`.${ns.e('icon')}`)!\n }\n if (target.clientWidth === 0 || hasClass(target, ns.e('decimal'))) {\n target = target.parentNode as HTMLElement\n }\n pointerAtLeftHalf.value = event.offsetX * 2 <= target.clientWidth\n currentValue.value = pointerAtLeftHalf.value ? value - 0.5 : value\n } else {\n currentValue.value = value\n }\n hoverIndex.value = value\n}\n\nfunction resetCurrentValue() {\n if (rateDisabled.value || rateViewMode.value) {\n return\n }\n if (props.allowHalf) {\n pointerAtLeftHalf.value = props.modelValue !== Math.floor(props.modelValue)\n }\n currentValue.value = props.modelValue\n hoverIndex.value = -1\n}\n\nwatch(\n () => props.modelValue,\n (val) => {\n currentValue.value = val\n pointerAtLeftHalf.value = props.modelValue !== Math.floor(props.modelValue)\n }\n)\n\nif (!props.modelValue) {\n emit(UPDATE_MODEL_EVENT, 0)\n}\n\ndefineExpose({\n /** @description set current value */\n setCurrentValue,\n /** @description reset current value */\n resetCurrentValue,\n})\n</script>\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import '../../utils/index.mjs';
2
- import ResizableColumns from './src/resizable-columns2.mjs';
3
- import ResizableColumn from './src/resizable-column2.mjs';
4
- export { resizableColumnsProps } from './src/resizable-columns.mjs';
2
+ import ResizableColumns from './src/resizable-columns.mjs';
3
+ import ResizableColumn from './src/resizable-column.mjs';
4
+ export { resizableColumnsProps } from './src/resizable-columns2.mjs';
5
5
  export { resizableColumnsRootContextKey } from './src/constants.mjs';
6
- export { resizableColumnProps } from './src/resizable-column.mjs';
6
+ export { resizableColumnProps } from './src/resizable-column2.mjs';
7
7
  import { withInstall, withNoopInstall } from '../../utils/vue/install.mjs';
8
8
 
9
9
  const ElResizableColumns = withInstall(ResizableColumns, {
@@ -1,13 +1,150 @@
1
+ import '../../../hooks/index.mjs';
2
+ import { resizableColumnProps } from './resizable-column2.mjs';
3
+ import { defineComponent, getCurrentInstance, inject, computed, ref, reactive, onMounted, onUnmounted, resolveComponent, openBlock, createElementBlock, Fragment, createElementVNode, normalizeClass, normalizeStyle, renderSlot, withDirectives, createBlock, withCtx, createVNode, vShow, createCommentVNode } from 'vue';
1
4
  import '../../../utils/index.mjs';
2
- import { buildProps } from '../../../utils/vue/props/runtime.mjs';
5
+ import { resizableColumnsRootContextKey } from './constants.mjs';
6
+ import { ArrowLeft, ArrowRight } from '@element-plus/icons-vue';
7
+ import '../../config-provider/index.mjs';
8
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
9
+ import { useGlobalConfig } from '../../config-provider/src/hooks/use-global-config.mjs';
10
+ import { throwError } from '../../../utils/error.mjs';
11
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
3
12
 
4
- const resizableColumnProps = buildProps({
5
- collapsable: Boolean,
6
- showCollapse: Boolean,
7
- widget: String,
8
- maxWidth: String,
9
- width: String
13
+ const _sfc_main = defineComponent({
14
+ name: "ElResizableColumn",
15
+ components: { ArrowLeft, ArrowRight },
16
+ props: resizableColumnProps,
17
+ setup(props, { slots }) {
18
+ const forEditor = useGlobalConfig("forEditor");
19
+ const instance = getCurrentInstance();
20
+ const columnsRoot = inject(resizableColumnsRootContextKey);
21
+ if (!columnsRoot)
22
+ throwError("ElResizableColumn", "usage: <el-resizable-columns><el-resizable-column /></el-resizable-columns/>");
23
+ const collapsable = computed(() => props.collapsable || columnsRoot.props.collapsable);
24
+ const showCollapse = computed(() => props.showCollapse || columnsRoot.props.showCollapse);
25
+ const collapsed = ref(false);
26
+ const column = reactive({
27
+ uid: instance.uid,
28
+ slots,
29
+ props,
30
+ maxWidth: 0,
31
+ parentWidth: 0,
32
+ index: 0,
33
+ width: 0,
34
+ left: 0,
35
+ collapsable,
36
+ showCollapse,
37
+ collapsed
38
+ });
39
+ const columnStyle = computed(() => {
40
+ if (instance.parent && instance.parent.type.name === "ElResizableColumns" && instance.parent.props.direction === "vertical") {
41
+ return { height: `${column.width}px`, top: `${column.left}px`, display: column.collapsed ? "none" : "unset", width: "100%" };
42
+ } else {
43
+ return { width: `${column.width}px`, left: `${column.left}px`, display: column.collapsed ? "none" : "unset" };
44
+ }
45
+ });
46
+ const resizerStyle = computed(() => {
47
+ if (instance.parent && instance.parent.type.name === "ElResizableColumns" && instance.parent.props.direction === "vertical") {
48
+ return { top: `${column.left + (column.collapsed ? 0 : column.width)}px`, width: "100%" };
49
+ } else {
50
+ return { left: `${column.left + (column.collapsed ? 0 : column.width)}px` };
51
+ }
52
+ });
53
+ onMounted(() => {
54
+ columnsRoot.registerColumn(column);
55
+ columnsRoot.initColumnSize();
56
+ });
57
+ onUnmounted(() => {
58
+ columnsRoot.unregisterColumn(column.uid);
59
+ columnsRoot.initColumnSize();
60
+ });
61
+ const columnsCount = computed(() => columnsRoot.columns.value.length);
62
+ const ns = useNamespace("resizable-column");
63
+ const handleCollapse = () => {
64
+ if (forEditor.value) {
65
+ return;
66
+ }
67
+ columnsRoot.handleCollapse(column);
68
+ };
69
+ const handleExpand = () => {
70
+ if (forEditor.value) {
71
+ return;
72
+ }
73
+ columnsRoot.handleExpand(column);
74
+ };
75
+ return {
76
+ ns,
77
+ column,
78
+ columnsCount,
79
+ columnStyle,
80
+ resizerStyle,
81
+ handleCollapse,
82
+ handleExpand
83
+ };
84
+ }
10
85
  });
86
+ const _hoisted_1 = ["widget"];
87
+ const _hoisted_2 = ["data-index"];
88
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
89
+ const _component_ArrowLeft = resolveComponent("ArrowLeft");
90
+ const _component_el_icon = resolveComponent("el-icon");
91
+ const _component_el_button = resolveComponent("el-button");
92
+ const _component_ArrowRight = resolveComponent("ArrowRight");
93
+ return openBlock(), createElementBlock(Fragment, null, [
94
+ createElementVNode("div", {
95
+ class: normalizeClass(_ctx.ns.b()),
96
+ widget: _ctx.widget,
97
+ style: normalizeStyle(_ctx.columnStyle)
98
+ }, [
99
+ renderSlot(_ctx.$slots, "default")
100
+ ], 14, _hoisted_1),
101
+ _ctx.column.index < _ctx.columnsCount - 1 ? (openBlock(), createElementBlock("div", {
102
+ key: 0,
103
+ class: normalizeClass(["resizer", { "collapsed": _ctx.column.collapsed }]),
104
+ style: normalizeStyle(_ctx.resizerStyle),
105
+ "data-index": _ctx.column.index
106
+ }, [
107
+ !_ctx.column.collapsed ? withDirectives((openBlock(), createBlock(_component_el_button, {
108
+ key: 0,
109
+ class: "left",
110
+ size: "small",
111
+ onClick: _ctx.handleCollapse,
112
+ disabled: !_ctx.column.collapsable
113
+ }, {
114
+ default: withCtx(() => [
115
+ createVNode(_component_el_icon, null, {
116
+ default: withCtx(() => [
117
+ createVNode(_component_ArrowLeft)
118
+ ]),
119
+ _: 1
120
+ })
121
+ ]),
122
+ _: 1
123
+ }, 8, ["onClick", "disabled"])), [
124
+ [vShow, _ctx.column.showCollapse]
125
+ ]) : withDirectives((openBlock(), createBlock(_component_el_button, {
126
+ key: 1,
127
+ class: "right",
128
+ size: "small",
129
+ onClick: _ctx.handleExpand,
130
+ disabled: !_ctx.column.collapsable
131
+ }, {
132
+ default: withCtx(() => [
133
+ createVNode(_component_el_icon, null, {
134
+ default: withCtx(() => [
135
+ createVNode(_component_ArrowRight)
136
+ ]),
137
+ _: 1
138
+ })
139
+ ]),
140
+ _: 1
141
+ }, 8, ["onClick", "disabled"])), [
142
+ [vShow, _ctx.column.showCollapse]
143
+ ])
144
+ ], 14, _hoisted_2)) : createCommentVNode("v-if", true)
145
+ ], 64);
146
+ }
147
+ var ResizableColumn = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "D:\\workspace\\element-pe\\packages\\components\\resizable-columns\\src\\resizable-column.vue"]]);
11
148
 
12
- export { resizableColumnProps };
149
+ export { ResizableColumn as default };
13
150
  //# sourceMappingURL=resizable-column.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"resizable-column.mjs","sources":["../../../../../../packages/components/resizable-columns/src/resizable-column.ts"],"sourcesContent":["import { buildProps } from '@element-plus/utils'\nimport type { ExtractPropTypes } from 'vue'\nimport type ResizableColumn from './resizable-column.vue'\n\nexport const resizableColumnProps = buildProps({\n collapsable: Boolean,\n showCollapse: Boolean,\n widget: String,\n maxWidth: String,\n width: String\n} as const)\n\nexport type ResizableColumnProps = ExtractPropTypes<typeof resizableColumnProps>\n\nexport type ResizableColumnInstance = InstanceType<typeof ResizableColumn>\n"],"names":[],"mappings":";;;AACY,MAAC,oBAAoB,GAAG,UAAU,CAAC;AAC/C,EAAE,WAAW,EAAE,OAAO;AACtB,EAAE,YAAY,EAAE,OAAO;AACvB,EAAE,MAAM,EAAE,MAAM;AAChB,EAAE,QAAQ,EAAE,MAAM;AAClB,EAAE,KAAK,EAAE,MAAM;AACf,CAAC;;;;"}
1
+ {"version":3,"file":"resizable-column.mjs","sources":["../../../../../../packages/components/resizable-columns/src/resizable-column.vue"],"sourcesContent":["<template>\n <div\n :class=\"ns.b()\"\n :widget=\"widget\"\n :style=\"columnStyle\"\n >\n <slot />\n </div>\n <div v-if=\"column.index < columnsCount - 1\"\n class=\"resizer\"\n :class=\"{ 'collapsed': column.collapsed }\"\n :style=\"resizerStyle\"\n :data-index=\"column.index\">\n <el-button v-if=\"!column.collapsed\"\n class=\"left\" size=\"small\"\n @click=\"handleCollapse\"\n :disabled=\"!column.collapsable\"\n v-show=\"column.showCollapse\"\n ><el-icon><ArrowLeft /></el-icon></el-button>\n <el-button v-else\n class=\"right\" size=\"small\"\n @click=\"handleExpand\"\n :disabled=\"!column.collapsable\"\n v-show=\"column.showCollapse\"\n ><el-icon><ArrowRight /></el-icon></el-button>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { useNamespace } from '@element-plus/hooks'\nimport { resizableColumnProps } from './resizable-column'\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n inject,\n onMounted,\n onUnmounted,\n reactive,\n ref\n} from 'vue'\nimport { throwError } from '../../../utils'\nimport { resizableColumnsRootContextKey } from './constants'\nimport { ArrowLeft, ArrowRight } from '@element-plus/icons-vue'\nimport { useGlobalConfig } from '../../config-provider'\n\n\nexport default defineComponent({\n name: 'ElResizableColumn',\n components: { ArrowLeft, ArrowRight },\n props: resizableColumnProps,\n setup(props, { slots }) {\n const forEditor = useGlobalConfig('forEditor')\n const instance = getCurrentInstance()!\n\n const columnsRoot = inject(resizableColumnsRootContextKey)\n if (!columnsRoot)\n throwError('ElResizableColumn', 'usage: <el-resizable-columns><el-resizable-column /></el-resizable-columns/>')\n\n const collapsable = computed(() => props.collapsable || columnsRoot.props.collapsable)\n const showCollapse = computed(() => props.showCollapse || columnsRoot.props.showCollapse)\n const collapsed = ref(false)\n\n const column = reactive({\n uid: instance.uid,\n slots,\n props,\n maxWidth: 0,\n parentWidth: 0,\n index: 0,\n width: 0,\n left: 0,\n collapsable,\n showCollapse,\n collapsed,\n })\n\n const columnStyle = computed(() => {\n if (instance.parent && instance.parent.type.name === 'ElResizableColumns' && instance.parent.props.direction === 'vertical') {\n return { height: `${column.width}px`, top: `${column.left}px`, display: column.collapsed ? 'none' : 'unset', width: '100%' }\n } else {\n return { width: `${column.width}px`, left: `${column.left}px`, display: column.collapsed ? 'none' : 'unset' }\n }\n })\n const resizerStyle = computed(() => {\n if (instance.parent && instance.parent.type.name === 'ElResizableColumns' && instance.parent.props.direction === 'vertical') {\n return { top: `${column.left + (column.collapsed ? 0 : column.width)}px`, width: '100%' }\n } else {\n return { left: `${column.left + (column.collapsed ? 0 : column.width)}px` }\n }\n })\n\n onMounted(() => {\n columnsRoot.registerColumn(column)\n columnsRoot.initColumnSize()\n })\n\n onUnmounted(() => {\n columnsRoot.unregisterColumn(column.uid)\n columnsRoot.initColumnSize()\n })\n\n const columnsCount = computed(() => columnsRoot.columns.value.length)\n\n const ns = useNamespace('resizable-column')\n\n const handleCollapse = () => {\n if (forEditor.value) {\n return\n }\n columnsRoot.handleCollapse(column)\n }\n const handleExpand = () => {\n if (forEditor.value) {\n return\n }\n columnsRoot.handleExpand(column)\n }\n\n return {\n ns,\n column,\n columnsCount,\n columnStyle,\n resizerStyle,\n\n handleCollapse,\n handleExpand\n }\n }\n})\n</script>\n"],"names":["_createElementVNode","_normalizeClass","_normalizeStyle","_renderSlot","_openBlock","_createElementBlock","_createBlock","_createVNode","_withCtx","_vShow","_withDirectives"],"mappings":"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"}