element-pe 2.2.75 → 2.2.77

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 (542) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +22 -15
  3. package/dist/index.full.min.js +5 -5
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +5 -5
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +22 -15
  8. package/es/components/autocomplete/index.mjs +2 -2
  9. package/es/components/autocomplete/src/autocomplete.mjs +379 -99
  10. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  11. package/es/components/autocomplete/src/autocomplete2.mjs +99 -379
  12. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  13. package/es/components/backtop/index.mjs +2 -2
  14. package/es/components/backtop/src/backtop.mjs +23 -61
  15. package/es/components/backtop/src/backtop.mjs.map +1 -1
  16. package/es/components/backtop/src/backtop2.mjs +61 -23
  17. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  18. package/es/components/badge/index.mjs +2 -2
  19. package/es/components/badge/src/badge.mjs +17 -59
  20. package/es/components/badge/src/badge.mjs.map +1 -1
  21. package/es/components/badge/src/badge2.mjs +59 -17
  22. package/es/components/badge/src/badge2.mjs.map +1 -1
  23. package/es/components/breadcrumb/index.mjs +4 -4
  24. package/es/components/breadcrumb/src/breadcrumb-item.mjs +11 -56
  25. package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
  26. package/es/components/breadcrumb/src/breadcrumb-item2.mjs +56 -11
  27. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  28. package/es/components/breadcrumb/src/breadcrumb.mjs +11 -36
  29. package/es/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
  30. package/es/components/breadcrumb/src/breadcrumb2.mjs +36 -11
  31. package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  32. package/es/components/button/index.mjs +3 -3
  33. package/es/components/button/src/button-group.mjs +6 -30
  34. package/es/components/button/src/button-group.mjs.map +1 -1
  35. package/es/components/button/src/button-group2.mjs +30 -6
  36. package/es/components/button/src/button-group2.mjs.map +1 -1
  37. package/es/components/button/src/button.mjs +76 -57
  38. package/es/components/button/src/button.mjs.map +1 -1
  39. package/es/components/button/src/button2.mjs +57 -76
  40. package/es/components/button/src/button2.mjs.map +1 -1
  41. package/es/components/calendar/index.mjs +2 -2
  42. package/es/components/calendar/src/calendar.mjs +18 -131
  43. package/es/components/calendar/src/calendar.mjs.map +1 -1
  44. package/es/components/calendar/src/calendar2.mjs +131 -18
  45. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  46. package/es/components/calendar/src/date-table.mjs +33 -87
  47. package/es/components/calendar/src/date-table.mjs.map +1 -1
  48. package/es/components/calendar/src/date-table2.mjs +87 -33
  49. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  50. package/es/components/calendar/src/use-date-table.mjs +1 -1
  51. package/es/components/carousel/index.mjs +2 -2
  52. package/es/components/carousel/src/carousel-item.mjs +8 -69
  53. package/es/components/carousel/src/carousel-item.mjs.map +1 -1
  54. package/es/components/carousel/src/carousel-item2.mjs +69 -8
  55. package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
  56. package/es/components/cascader/index.d.ts +10 -0
  57. package/es/components/cascader/index.mjs +2 -2
  58. package/es/components/cascader/src/cascader.mjs +640 -82
  59. package/es/components/cascader/src/cascader.mjs.map +1 -1
  60. package/es/components/cascader/src/cascader.vue.d.ts +5 -0
  61. package/es/components/cascader/src/cascader2.mjs +82 -638
  62. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  63. package/es/components/cascader-panel/index.d.ts +4 -0
  64. package/es/components/cascader-panel/src/config.d.ts +1 -0
  65. package/es/components/cascader-panel/src/config.mjs +2 -1
  66. package/es/components/cascader-panel/src/config.mjs.map +1 -1
  67. package/es/components/cascader-panel/src/index.vue.d.ts +2 -0
  68. package/es/components/checkbox/index.mjs +2 -2
  69. package/es/components/checkbox/src/checkbox-button.mjs +1 -1
  70. package/es/components/checkbox/src/checkbox.mjs +54 -121
  71. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  72. package/es/components/checkbox/src/checkbox2.mjs +125 -54
  73. package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
  74. package/es/components/col/index.mjs +2 -2
  75. package/es/components/col/src/col.mjs +66 -43
  76. package/es/components/col/src/col.mjs.map +1 -1
  77. package/es/components/col/src/col2.mjs +43 -66
  78. package/es/components/col/src/col2.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/collection/index.mjs +1 -1
  85. package/es/components/collection/src/collection.mjs +66 -10
  86. package/es/components/collection/src/collection.mjs.map +1 -1
  87. package/es/components/collection/src/collection2.mjs +10 -66
  88. package/es/components/collection/src/collection2.mjs.map +1 -1
  89. package/es/components/countdown/index.mjs +2 -2
  90. package/es/components/countdown/src/countdown.mjs +76 -23
  91. package/es/components/countdown/src/countdown.mjs.map +1 -1
  92. package/es/components/countdown/src/countdown2.mjs +23 -76
  93. package/es/components/countdown/src/countdown2.mjs.map +1 -1
  94. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  95. package/es/components/dropdown/src/dropdown.mjs +1 -1
  96. package/es/components/empty/index.mjs +2 -2
  97. package/es/components/empty/src/empty.mjs +11 -55
  98. package/es/components/empty/src/empty.mjs.map +1 -1
  99. package/es/components/empty/src/empty2.mjs +55 -11
  100. package/es/components/empty/src/empty2.mjs.map +1 -1
  101. package/es/components/form/index.mjs +4 -4
  102. package/es/components/form/src/form-item.mjs +328 -46
  103. package/es/components/form/src/form-item.mjs.map +1 -1
  104. package/es/components/form/src/form-item2.mjs +46 -328
  105. package/es/components/form/src/form-item2.mjs.map +1 -1
  106. package/es/components/form/src/form.mjs +58 -150
  107. package/es/components/form/src/form.mjs.map +1 -1
  108. package/es/components/form/src/form2.mjs +150 -58
  109. package/es/components/form/src/form2.mjs.map +1 -1
  110. package/es/components/icon/index.mjs +2 -2
  111. package/es/components/icon/src/icon.mjs +36 -8
  112. package/es/components/icon/src/icon.mjs.map +1 -1
  113. package/es/components/icon/src/icon2.mjs +8 -36
  114. package/es/components/icon/src/icon2.mjs.map +1 -1
  115. package/es/components/image/index.mjs +2 -2
  116. package/es/components/image/src/image.mjs +56 -227
  117. package/es/components/image/src/image.mjs.map +1 -1
  118. package/es/components/image/src/image2.mjs +227 -56
  119. package/es/components/image/src/image2.mjs.map +1 -1
  120. package/es/components/image-viewer/index.mjs +2 -2
  121. package/es/components/image-viewer/src/image-viewer.mjs +32 -403
  122. package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
  123. package/es/components/image-viewer/src/image-viewer2.mjs +403 -32
  124. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  125. package/es/components/index.mjs +41 -41
  126. package/es/components/input/index.mjs +2 -2
  127. package/es/components/input/src/input.mjs +468 -114
  128. package/es/components/input/src/input.mjs.map +1 -1
  129. package/es/components/input/src/input2.mjs +114 -468
  130. package/es/components/input/src/input2.mjs.map +1 -1
  131. package/es/components/input-number/index.mjs +2 -2
  132. package/es/components/input-number/src/input-number.mjs +69 -335
  133. package/es/components/input-number/src/input-number.mjs.map +1 -1
  134. package/es/components/input-number/src/input-number2.mjs +335 -69
  135. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  136. package/es/components/link/index.mjs +2 -2
  137. package/es/components/link/src/link.mjs +50 -21
  138. package/es/components/link/src/link.mjs.map +1 -1
  139. package/es/components/link/src/link2.mjs +21 -50
  140. package/es/components/link/src/link2.mjs.map +1 -1
  141. package/es/components/menu/index.mjs +2 -2
  142. package/es/components/menu/src/menu-item-group.mjs +35 -4
  143. package/es/components/menu/src/menu-item-group.mjs.map +1 -1
  144. package/es/components/menu/src/menu-item-group2.mjs +4 -35
  145. package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
  146. package/es/components/message/index.mjs +1 -1
  147. package/es/components/message/src/message.mjs +86 -151
  148. package/es/components/message/src/message.mjs.map +1 -1
  149. package/es/components/message/src/message2.mjs +151 -86
  150. package/es/components/message/src/message2.mjs.map +1 -1
  151. package/es/components/message/src/method.mjs +2 -2
  152. package/es/components/page-header/index.mjs +2 -2
  153. package/es/components/page-header/src/page-header.mjs +103 -17
  154. package/es/components/page-header/src/page-header.mjs.map +1 -1
  155. package/es/components/page-header/src/page-header2.mjs +17 -103
  156. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  157. package/es/components/pagination/src/components/jumper.mjs +9 -60
  158. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  159. package/es/components/pagination/src/components/jumper2.mjs +60 -9
  160. package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
  161. package/es/components/pagination/src/components/total.mjs +7 -28
  162. package/es/components/pagination/src/components/total.mjs.map +1 -1
  163. package/es/components/pagination/src/components/total2.mjs +28 -7
  164. package/es/components/pagination/src/components/total2.mjs.map +1 -1
  165. package/es/components/pagination/src/pagination.mjs +2 -2
  166. package/es/components/popconfirm/index.mjs +2 -2
  167. package/es/components/popconfirm/src/popconfirm.mjs +110 -47
  168. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  169. package/es/components/popconfirm/src/popconfirm2.mjs +47 -110
  170. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  171. package/es/components/progress/index.mjs +2 -2
  172. package/es/components/progress/src/progress.mjs +59 -205
  173. package/es/components/progress/src/progress.mjs.map +1 -1
  174. package/es/components/progress/src/progress2.mjs +205 -59
  175. package/es/components/progress/src/progress2.mjs.map +1 -1
  176. package/es/components/radio/index.mjs +4 -4
  177. package/es/components/radio/src/radio-button.mjs +65 -9
  178. package/es/components/radio/src/radio-button.mjs.map +1 -1
  179. package/es/components/radio/src/radio-button2.mjs +9 -65
  180. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  181. package/es/components/radio/src/radio-group.mjs +70 -42
  182. package/es/components/radio/src/radio-group.mjs.map +1 -1
  183. package/es/components/radio/src/radio-group2.mjs +42 -70
  184. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  185. package/es/components/rate/index.mjs +2 -2
  186. package/es/components/rate/src/rate.mjs +258 -92
  187. package/es/components/rate/src/rate.mjs.map +1 -1
  188. package/es/components/rate/src/rate2.mjs +92 -258
  189. package/es/components/rate/src/rate2.mjs.map +1 -1
  190. package/es/components/result/index.mjs +2 -2
  191. package/es/components/result/src/result.mjs +63 -29
  192. package/es/components/result/src/result.mjs.map +1 -1
  193. package/es/components/result/src/result2.mjs +29 -63
  194. package/es/components/result/src/result2.mjs.map +1 -1
  195. package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
  196. package/es/components/row/index.mjs +2 -2
  197. package/es/components/row/src/row.mjs +45 -30
  198. package/es/components/row/src/row.mjs.map +1 -1
  199. package/es/components/row/src/row2.mjs +30 -45
  200. package/es/components/row/src/row2.mjs.map +1 -1
  201. package/es/components/skeleton/index.mjs +2 -2
  202. package/es/components/skeleton/src/skeleton.mjs +22 -49
  203. package/es/components/skeleton/src/skeleton.mjs.map +1 -1
  204. package/es/components/skeleton/src/skeleton2.mjs +49 -22
  205. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  206. package/es/components/slider/index.mjs +2 -2
  207. package/es/components/slider/src/slider.mjs +237 -96
  208. package/es/components/slider/src/slider.mjs.map +1 -1
  209. package/es/components/slider/src/slider2.mjs +96 -237
  210. package/es/components/slider/src/slider2.mjs.map +1 -1
  211. package/es/components/steps/index.mjs +2 -2
  212. package/es/components/steps/src/item.mjs +19 -193
  213. package/es/components/steps/src/item.mjs.map +1 -1
  214. package/es/components/steps/src/item2.mjs +193 -19
  215. package/es/components/steps/src/item2.mjs.map +1 -1
  216. package/es/components/text/index.mjs +2 -2
  217. package/es/components/text/src/text.mjs +35 -22
  218. package/es/components/text/src/text.mjs.map +1 -1
  219. package/es/components/text/src/text2.mjs +22 -35
  220. package/es/components/text/src/text2.mjs.map +1 -1
  221. package/es/components/time-select/index.mjs +1 -1
  222. package/es/components/time-select/src/time-select.mjs +132 -55
  223. package/es/components/time-select/src/time-select.mjs.map +1 -1
  224. package/es/components/time-select/src/time-select2.mjs +55 -132
  225. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  226. package/es/components/timeline/index.mjs +2 -2
  227. package/es/components/timeline/src/timeline-item.mjs +42 -72
  228. package/es/components/timeline/src/timeline-item.mjs.map +1 -1
  229. package/es/components/timeline/src/timeline-item2.mjs +72 -42
  230. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  231. package/es/components/tooltip/index.mjs +2 -2
  232. package/es/components/tooltip/src/tooltip.mjs +31 -174
  233. package/es/components/tooltip/src/tooltip.mjs.map +1 -1
  234. package/es/components/tooltip/src/tooltip2.mjs +174 -31
  235. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  236. package/es/components/tooltip-v2/index.mjs +2 -2
  237. package/es/components/tooltip-v2/src/content.mjs +114 -50
  238. package/es/components/tooltip-v2/src/content.mjs.map +1 -1
  239. package/es/components/tooltip-v2/src/content2.mjs +50 -114
  240. package/es/components/tooltip-v2/src/content2.mjs.map +1 -1
  241. package/es/components/tooltip-v2/src/root.mjs +82 -17
  242. package/es/components/tooltip-v2/src/root.mjs.map +1 -1
  243. package/es/components/tooltip-v2/src/root2.mjs +17 -82
  244. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  245. package/es/components/tooltip-v2/src/tooltip.mjs +4 -4
  246. package/es/components/tooltip-v2/src/tooltip2.mjs +2 -2
  247. package/es/components/transfer/index.mjs +2 -2
  248. package/es/components/transfer/src/composables/use-checked-change.mjs +1 -1
  249. package/es/components/transfer/src/transfer-panel.mjs +1 -1
  250. package/es/components/transfer/src/transfer.mjs +162 -69
  251. package/es/components/transfer/src/transfer.mjs.map +1 -1
  252. package/es/components/transfer/src/transfer2.mjs +69 -162
  253. package/es/components/transfer/src/transfer2.mjs.map +1 -1
  254. package/es/components/upload/index.mjs +2 -2
  255. package/es/components/upload/src/upload-content.mjs +196 -33
  256. package/es/components/upload/src/upload-content.mjs.map +1 -1
  257. package/es/components/upload/src/upload-content2.mjs +33 -196
  258. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  259. package/es/components/upload/src/upload-dragger.mjs +11 -72
  260. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  261. package/es/components/upload/src/upload-dragger2.mjs +72 -11
  262. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  263. package/es/components/upload/src/upload.mjs +1 -1
  264. package/es/components/visual-hidden/index.mjs +3 -3
  265. package/es/components/visual-hidden/src/visual-hidden.mjs +7 -35
  266. package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
  267. package/es/components/visual-hidden/src/visual-hidden2.mjs +35 -7
  268. package/es/components/visual-hidden/src/visual-hidden2.mjs.map +1 -1
  269. package/es/index.mjs +41 -41
  270. package/lib/components/autocomplete/index.js +2 -2
  271. package/lib/components/autocomplete/src/autocomplete.js +378 -99
  272. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  273. package/lib/components/autocomplete/src/autocomplete2.js +99 -378
  274. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  275. package/lib/components/backtop/index.js +2 -2
  276. package/lib/components/backtop/src/backtop.js +24 -61
  277. package/lib/components/backtop/src/backtop.js.map +1 -1
  278. package/lib/components/backtop/src/backtop2.js +61 -24
  279. package/lib/components/backtop/src/backtop2.js.map +1 -1
  280. package/lib/components/badge/index.js +2 -2
  281. package/lib/components/badge/src/badge.js +17 -59
  282. package/lib/components/badge/src/badge.js.map +1 -1
  283. package/lib/components/badge/src/badge2.js +59 -17
  284. package/lib/components/badge/src/badge2.js.map +1 -1
  285. package/lib/components/breadcrumb/index.js +4 -4
  286. package/lib/components/breadcrumb/src/breadcrumb-item.js +11 -56
  287. package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
  288. package/lib/components/breadcrumb/src/breadcrumb-item2.js +56 -11
  289. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  290. package/lib/components/breadcrumb/src/breadcrumb.js +11 -36
  291. package/lib/components/breadcrumb/src/breadcrumb.js.map +1 -1
  292. package/lib/components/breadcrumb/src/breadcrumb2.js +36 -11
  293. package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  294. package/lib/components/button/index.js +3 -3
  295. package/lib/components/button/src/button-group.js +6 -30
  296. package/lib/components/button/src/button-group.js.map +1 -1
  297. package/lib/components/button/src/button-group2.js +30 -6
  298. package/lib/components/button/src/button-group2.js.map +1 -1
  299. package/lib/components/button/src/button.js +76 -60
  300. package/lib/components/button/src/button.js.map +1 -1
  301. package/lib/components/button/src/button2.js +60 -76
  302. package/lib/components/button/src/button2.js.map +1 -1
  303. package/lib/components/calendar/index.js +2 -2
  304. package/lib/components/calendar/src/calendar.js +19 -131
  305. package/lib/components/calendar/src/calendar.js.map +1 -1
  306. package/lib/components/calendar/src/calendar2.js +131 -19
  307. package/lib/components/calendar/src/calendar2.js.map +1 -1
  308. package/lib/components/calendar/src/date-table.js +37 -87
  309. package/lib/components/calendar/src/date-table.js.map +1 -1
  310. package/lib/components/calendar/src/date-table2.js +87 -37
  311. package/lib/components/calendar/src/date-table2.js.map +1 -1
  312. package/lib/components/calendar/src/use-date-table.js +1 -1
  313. package/lib/components/carousel/index.js +2 -2
  314. package/lib/components/carousel/src/carousel-item.js +8 -69
  315. package/lib/components/carousel/src/carousel-item.js.map +1 -1
  316. package/lib/components/carousel/src/carousel-item2.js +69 -8
  317. package/lib/components/carousel/src/carousel-item2.js.map +1 -1
  318. package/lib/components/cascader/index.d.ts +10 -0
  319. package/lib/components/cascader/index.js +2 -2
  320. package/lib/components/cascader/src/cascader.js +640 -83
  321. package/lib/components/cascader/src/cascader.js.map +1 -1
  322. package/lib/components/cascader/src/cascader.vue.d.ts +5 -0
  323. package/lib/components/cascader/src/cascader2.js +83 -638
  324. package/lib/components/cascader/src/cascader2.js.map +1 -1
  325. package/lib/components/cascader-panel/index.d.ts +4 -0
  326. package/lib/components/cascader-panel/src/config.d.ts +1 -0
  327. package/lib/components/cascader-panel/src/config.js +2 -1
  328. package/lib/components/cascader-panel/src/config.js.map +1 -1
  329. package/lib/components/cascader-panel/src/index.vue.d.ts +2 -0
  330. package/lib/components/checkbox/index.js +2 -2
  331. package/lib/components/checkbox/src/checkbox-button.js +1 -1
  332. package/lib/components/checkbox/src/checkbox.js +55 -121
  333. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  334. package/lib/components/checkbox/src/checkbox2.js +125 -55
  335. package/lib/components/checkbox/src/checkbox2.js.map +1 -1
  336. package/lib/components/col/index.js +2 -2
  337. package/lib/components/col/src/col.js +66 -43
  338. package/lib/components/col/src/col.js.map +1 -1
  339. package/lib/components/col/src/col2.js +43 -66
  340. package/lib/components/col/src/col2.js.map +1 -1
  341. package/lib/components/collapse/index.js +2 -2
  342. package/lib/components/collapse/src/collapse-item.js +14 -99
  343. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  344. package/lib/components/collapse/src/collapse-item2.js +99 -14
  345. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  346. package/lib/components/collection/index.js +1 -1
  347. package/lib/components/collection/src/collection.js +66 -9
  348. package/lib/components/collection/src/collection.js.map +1 -1
  349. package/lib/components/collection/src/collection2.js +9 -66
  350. package/lib/components/collection/src/collection2.js.map +1 -1
  351. package/lib/components/countdown/index.js +2 -2
  352. package/lib/components/countdown/src/countdown.js +76 -24
  353. package/lib/components/countdown/src/countdown.js.map +1 -1
  354. package/lib/components/countdown/src/countdown2.js +24 -76
  355. package/lib/components/countdown/src/countdown2.js.map +1 -1
  356. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  357. package/lib/components/dropdown/src/dropdown.js +1 -1
  358. package/lib/components/empty/index.js +2 -2
  359. package/lib/components/empty/src/empty.js +11 -55
  360. package/lib/components/empty/src/empty.js.map +1 -1
  361. package/lib/components/empty/src/empty2.js +55 -11
  362. package/lib/components/empty/src/empty2.js.map +1 -1
  363. package/lib/components/form/index.js +4 -4
  364. package/lib/components/form/src/form-item.js +332 -47
  365. package/lib/components/form/src/form-item.js.map +1 -1
  366. package/lib/components/form/src/form-item2.js +47 -332
  367. package/lib/components/form/src/form-item2.js.map +1 -1
  368. package/lib/components/form/src/form.js +58 -149
  369. package/lib/components/form/src/form.js.map +1 -1
  370. package/lib/components/form/src/form2.js +149 -58
  371. package/lib/components/form/src/form2.js.map +1 -1
  372. package/lib/components/icon/index.js +2 -2
  373. package/lib/components/icon/src/icon.js +36 -8
  374. package/lib/components/icon/src/icon.js.map +1 -1
  375. package/lib/components/icon/src/icon2.js +8 -36
  376. package/lib/components/icon/src/icon2.js.map +1 -1
  377. package/lib/components/image/index.js +2 -2
  378. package/lib/components/image/src/image.js +56 -226
  379. package/lib/components/image/src/image.js.map +1 -1
  380. package/lib/components/image/src/image2.js +226 -56
  381. package/lib/components/image/src/image2.js.map +1 -1
  382. package/lib/components/image-viewer/index.js +2 -2
  383. package/lib/components/image-viewer/src/image-viewer.js +33 -403
  384. package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
  385. package/lib/components/image-viewer/src/image-viewer2.js +403 -33
  386. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  387. package/lib/components/index.js +41 -41
  388. package/lib/components/input/index.js +2 -2
  389. package/lib/components/input/src/input.js +467 -114
  390. package/lib/components/input/src/input.js.map +1 -1
  391. package/lib/components/input/src/input2.js +114 -467
  392. package/lib/components/input/src/input2.js.map +1 -1
  393. package/lib/components/input-number/index.js +2 -2
  394. package/lib/components/input-number/src/input-number.js +68 -333
  395. package/lib/components/input-number/src/input-number.js.map +1 -1
  396. package/lib/components/input-number/src/input-number2.js +333 -68
  397. package/lib/components/input-number/src/input-number2.js.map +1 -1
  398. package/lib/components/link/index.js +2 -2
  399. package/lib/components/link/src/link.js +50 -22
  400. package/lib/components/link/src/link.js.map +1 -1
  401. package/lib/components/link/src/link2.js +22 -50
  402. package/lib/components/link/src/link2.js.map +1 -1
  403. package/lib/components/menu/index.js +2 -2
  404. package/lib/components/menu/src/menu-item-group.js +35 -4
  405. package/lib/components/menu/src/menu-item-group.js.map +1 -1
  406. package/lib/components/menu/src/menu-item-group2.js +4 -35
  407. package/lib/components/menu/src/menu-item-group2.js.map +1 -1
  408. package/lib/components/message/index.js +1 -1
  409. package/lib/components/message/src/message.js +88 -150
  410. package/lib/components/message/src/message.js.map +1 -1
  411. package/lib/components/message/src/message2.js +150 -88
  412. package/lib/components/message/src/message2.js.map +1 -1
  413. package/lib/components/message/src/method.js +2 -2
  414. package/lib/components/page-header/index.js +2 -2
  415. package/lib/components/page-header/src/page-header.js +103 -18
  416. package/lib/components/page-header/src/page-header.js.map +1 -1
  417. package/lib/components/page-header/src/page-header2.js +18 -103
  418. package/lib/components/page-header/src/page-header2.js.map +1 -1
  419. package/lib/components/pagination/src/components/jumper.js +9 -60
  420. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  421. package/lib/components/pagination/src/components/jumper2.js +60 -9
  422. package/lib/components/pagination/src/components/jumper2.js.map +1 -1
  423. package/lib/components/pagination/src/components/total.js +7 -28
  424. package/lib/components/pagination/src/components/total.js.map +1 -1
  425. package/lib/components/pagination/src/components/total2.js +28 -7
  426. package/lib/components/pagination/src/components/total2.js.map +1 -1
  427. package/lib/components/pagination/src/pagination.js +2 -2
  428. package/lib/components/popconfirm/index.js +2 -2
  429. package/lib/components/popconfirm/src/popconfirm.js +110 -48
  430. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  431. package/lib/components/popconfirm/src/popconfirm2.js +48 -110
  432. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  433. package/lib/components/progress/index.js +2 -2
  434. package/lib/components/progress/src/progress.js +59 -205
  435. package/lib/components/progress/src/progress.js.map +1 -1
  436. package/lib/components/progress/src/progress2.js +205 -59
  437. package/lib/components/progress/src/progress2.js.map +1 -1
  438. package/lib/components/radio/index.js +4 -4
  439. package/lib/components/radio/src/radio-button.js +65 -9
  440. package/lib/components/radio/src/radio-button.js.map +1 -1
  441. package/lib/components/radio/src/radio-button2.js +9 -65
  442. package/lib/components/radio/src/radio-button2.js.map +1 -1
  443. package/lib/components/radio/src/radio-group.js +70 -43
  444. package/lib/components/radio/src/radio-group.js.map +1 -1
  445. package/lib/components/radio/src/radio-group2.js +43 -70
  446. package/lib/components/radio/src/radio-group2.js.map +1 -1
  447. package/lib/components/rate/index.js +2 -2
  448. package/lib/components/rate/src/rate.js +257 -92
  449. package/lib/components/rate/src/rate.js.map +1 -1
  450. package/lib/components/rate/src/rate2.js +92 -257
  451. package/lib/components/rate/src/rate2.js.map +1 -1
  452. package/lib/components/result/index.js +2 -2
  453. package/lib/components/result/src/result.js +63 -31
  454. package/lib/components/result/src/result.js.map +1 -1
  455. package/lib/components/result/src/result2.js +31 -63
  456. package/lib/components/result/src/result2.js.map +1 -1
  457. package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
  458. package/lib/components/row/index.js +2 -2
  459. package/lib/components/row/src/row.js +45 -32
  460. package/lib/components/row/src/row.js.map +1 -1
  461. package/lib/components/row/src/row2.js +32 -45
  462. package/lib/components/row/src/row2.js.map +1 -1
  463. package/lib/components/skeleton/index.js +2 -2
  464. package/lib/components/skeleton/src/skeleton.js +22 -49
  465. package/lib/components/skeleton/src/skeleton.js.map +1 -1
  466. package/lib/components/skeleton/src/skeleton2.js +49 -22
  467. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  468. package/lib/components/slider/index.js +2 -2
  469. package/lib/components/slider/src/slider.js +237 -97
  470. package/lib/components/slider/src/slider.js.map +1 -1
  471. package/lib/components/slider/src/slider2.js +97 -237
  472. package/lib/components/slider/src/slider2.js.map +1 -1
  473. package/lib/components/steps/index.js +2 -2
  474. package/lib/components/steps/src/item.js +19 -193
  475. package/lib/components/steps/src/item.js.map +1 -1
  476. package/lib/components/steps/src/item2.js +193 -19
  477. package/lib/components/steps/src/item2.js.map +1 -1
  478. package/lib/components/text/index.js +2 -2
  479. package/lib/components/text/src/text.js +35 -22
  480. package/lib/components/text/src/text.js.map +1 -1
  481. package/lib/components/text/src/text2.js +22 -35
  482. package/lib/components/text/src/text2.js.map +1 -1
  483. package/lib/components/time-select/index.js +1 -1
  484. package/lib/components/time-select/src/time-select.js +137 -55
  485. package/lib/components/time-select/src/time-select.js.map +1 -1
  486. package/lib/components/time-select/src/time-select2.js +55 -137
  487. package/lib/components/time-select/src/time-select2.js.map +1 -1
  488. package/lib/components/timeline/index.js +2 -2
  489. package/lib/components/timeline/src/timeline-item.js +42 -72
  490. package/lib/components/timeline/src/timeline-item.js.map +1 -1
  491. package/lib/components/timeline/src/timeline-item2.js +72 -42
  492. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  493. package/lib/components/tooltip/index.js +2 -2
  494. package/lib/components/tooltip/src/tooltip.js +35 -174
  495. package/lib/components/tooltip/src/tooltip.js.map +1 -1
  496. package/lib/components/tooltip/src/tooltip2.js +174 -35
  497. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  498. package/lib/components/tooltip-v2/index.js +2 -2
  499. package/lib/components/tooltip-v2/src/content.js +114 -50
  500. package/lib/components/tooltip-v2/src/content.js.map +1 -1
  501. package/lib/components/tooltip-v2/src/content2.js +50 -114
  502. package/lib/components/tooltip-v2/src/content2.js.map +1 -1
  503. package/lib/components/tooltip-v2/src/root.js +82 -17
  504. package/lib/components/tooltip-v2/src/root.js.map +1 -1
  505. package/lib/components/tooltip-v2/src/root2.js +17 -82
  506. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  507. package/lib/components/tooltip-v2/src/tooltip.js +4 -4
  508. package/lib/components/tooltip-v2/src/tooltip2.js +2 -2
  509. package/lib/components/transfer/index.js +2 -2
  510. package/lib/components/transfer/src/composables/use-checked-change.js +1 -1
  511. package/lib/components/transfer/src/transfer-panel.js +1 -1
  512. package/lib/components/transfer/src/transfer.js +162 -73
  513. package/lib/components/transfer/src/transfer.js.map +1 -1
  514. package/lib/components/transfer/src/transfer2.js +73 -162
  515. package/lib/components/transfer/src/transfer2.js.map +1 -1
  516. package/lib/components/upload/index.js +2 -2
  517. package/lib/components/upload/src/upload-content.js +194 -31
  518. package/lib/components/upload/src/upload-content.js.map +1 -1
  519. package/lib/components/upload/src/upload-content2.js +31 -194
  520. package/lib/components/upload/src/upload-content2.js.map +1 -1
  521. package/lib/components/upload/src/upload-dragger.js +12 -72
  522. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  523. package/lib/components/upload/src/upload-dragger2.js +72 -12
  524. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  525. package/lib/components/upload/src/upload.js +1 -1
  526. package/lib/components/visual-hidden/index.js +2 -2
  527. package/lib/components/visual-hidden/src/visual-hidden.js +7 -35
  528. package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
  529. package/lib/components/visual-hidden/src/visual-hidden2.js +35 -7
  530. package/lib/components/visual-hidden/src/visual-hidden2.js.map +1 -1
  531. package/lib/index.js +41 -41
  532. package/package.json +1 -1
  533. package/theme-chalk/el-date-picker.css +1 -1
  534. package/theme-chalk/el-input-number.css +1 -1
  535. package/theme-chalk/el-input.css +1 -1
  536. package/theme-chalk/el-time-picker.css +1 -1
  537. package/theme-chalk/el-time-select.css +1 -1
  538. package/theme-chalk/index.css +1 -1
  539. package/theme-chalk/src/date-picker/picker.scss +42 -0
  540. package/theme-chalk/src/input-number.scss +6 -0
  541. package/theme-chalk/src/input.scss +0 -5
  542. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"radio-group.mjs","sources":["../../../../../../packages/components/radio/src/radio-group.ts"],"sourcesContent":["import { buildProps } from '@element-plus/utils'\nimport { useSizeProp } from '@element-plus/hooks'\nimport { radioEmits } from './radio'\nimport type { ExtractPropTypes } from '@vue/runtime-core'\nimport type RadioGroup from './radio-group.vue'\nimport { viewModes } from '../../../constants'\n\nexport const radioGroupProps = buildProps({\n /**\n * @description native `id` attribute\n */\n id: {\n type: String,\n default: undefined,\n },\n /**\n * @description the size of radio buttons or bordered radios\n */\n size: useSizeProp,\n /**\n * @description whether the nesting radios are disabled\n */\n disabled: Boolean,\n /**\n * @description 浏览模式\n */\n viewMode: {\n type: String,\n values: viewModes\n },\n /**\n * @description binding value\n */\n modelValue: {\n type: [String, Number, Boolean],\n default: '',\n },\n /**\n * @description border and background color when button is active\n */\n fill: {\n type: String,\n default: '',\n },\n /**\n * @description same as `aria-label` in RadioGroup\n */\n label: {\n type: String,\n default: undefined,\n },\n /**\n * @description font color when button is active\n */\n textColor: {\n type: String,\n default: '',\n },\n /**\n * @description native `name` attribute\n */\n name: {\n type: String,\n default: undefined,\n },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n} as const)\nexport type RadioGroupProps = ExtractPropTypes<typeof radioGroupProps>\n\nexport const radioGroupEmits = radioEmits\nexport type RadioGroupEmits = typeof radioGroupEmits\nexport type RadioGroupInstance = InstanceType<typeof RadioGroup>\n"],"names":[],"mappings":";;;;;;;;AAIY,MAAC,eAAe,GAAG,UAAU,CAAC;AAC1C,EAAE,EAAE,EAAE;AACN,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,SAAS;AACrB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;AACnC,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,eAAe,GAAG;;;;"}
1
+ {"version":3,"file":"radio-group.mjs","sources":["../../../../../../packages/components/radio/src/radio-group.vue"],"sourcesContent":["<template>\n <div\n :id=\"groupId\"\n ref=\"radioGroupRef\"\n :class=\"ns.b('group')\"\n role=\"radiogroup\"\n :aria-label=\"!isLabeledByFormItem ? label || 'radio-group' : undefined\"\n :aria-labelledby=\"isLabeledByFormItem ? formItem!.labelId : undefined\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onMounted,\n provide,\n reactive,\n ref,\n toRefs,\n} from 'vue'\nimport { watch } from '../../config-provider'\nimport { useFormItem, useFormItemInputId } from '@element-plus/components/form'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { useId, useNamespace } from '@element-plus/hooks'\nimport { debugWarn } from '@element-plus/utils'\nimport { radioGroupEmits, radioGroupProps } from './radio-group'\nimport { radioGroupKey } from './constants'\n\nimport type { RadioGroupProps } from './radio-group'\n\ndefineOptions({\n name: 'ElRadioGroup',\n})\n\nconst props = defineProps(radioGroupProps)\nconst emit = defineEmits(radioGroupEmits)\n\nconst ns = useNamespace('radio')\nconst radioId = useId()\nconst radioGroupRef = ref<HTMLDivElement>()\nconst { formItem } = useFormItem()\nconst { inputId: groupId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext: formItem,\n})\n\nconst changeEvent = (value: RadioGroupProps['modelValue']) => {\n emit(UPDATE_MODEL_EVENT, value)\n nextTick(() => emit('change', value))\n}\n\nonMounted(() => {\n const radios =\n radioGroupRef.value!.querySelectorAll<HTMLInputElement>('[type=radio]')\n const firstLabel = radios[0]\n if (!Array.from(radios).some((radio) => radio.checked) && firstLabel) {\n firstLabel.tabIndex = 0\n }\n})\n\nconst name = computed(() => {\n return props.name || radioId.value\n})\n\nprovide(\n radioGroupKey,\n reactive({\n ...toRefs(props),\n changeEvent,\n name,\n })\n)\n\nwatch(\n () => props.modelValue,\n () => {\n if (props.validateEvent) {\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n }\n)\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;mCAiCc,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAM,MAAA,EAAA,GAAK,aAAa,OAAO,CAAA,CAAA;AAC/B,IAAA,MAAM,UAAU,KAAM,EAAA,CAAA;AACtB,IAAA,MAAM,gBAAgB,GAAoB,EAAA,CAAA;AAC1C,IAAM,MAAA,EAAE,aAAa,WAAY,EAAA,CAAA;AACjC,IAAA,MAAM,EAAE,OAAA,EAAS,OAAS,EAAA,mBAAA,EAAA,GAAwB,mBAAmB,KAAO,EAAA;AAAA,MAC1E,eAAiB,EAAA,QAAA;AAAA,KAClB,CAAA,CAAA;AAED,IAAM,MAAA,WAAA,GAAc,CAAC,KAAyC,KAAA;AAC5D,MAAA,IAAA,CAAK,oBAAoB,KAAK,CAAA,CAAA;AAC9B,MAAA,QAAA,CAAS,MAAM,IAAA,CAAK,QAAU,EAAA,KAAK,CAAC,CAAA,CAAA;AAAA,KACtC,CAAA;AAEA,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,MAAM,MACJ,GAAA,aAAA,CAAc,KAAO,CAAA,gBAAA,CAAmC,cAAc,CAAA,CAAA;AACxE,MAAA,MAAM,aAAa,MAAO,CAAA,CAAA,CAAA,CAAA;AAC1B,MAAI,IAAA,CAAC,KAAM,CAAA,IAAA,CAAK,MAAM,CAAA,CAAE,IAAK,CAAA,CAAC,KAAU,KAAA,KAAA,CAAM,OAAO,CAAA,IAAK,UAAY,EAAA;AACpE,QAAA,UAAA,CAAW,QAAW,GAAA,CAAA,CAAA;AAAA,OACxB;AAAA,KACD,CAAA,CAAA;AAED,IAAM,MAAA,IAAA,GAAO,SAAS,MAAM;AAC1B,MAAO,OAAA,KAAA,CAAM,QAAQ,OAAQ,CAAA,KAAA,CAAA;AAAA,KAC9B,CAAA,CAAA;AAED,IAAA,OAAA,CACE,eACA,QAAS,CAAA;AAAA,MACP,GAAG,OAAO,KAAK,CAAA;AAAA,MACf,WAAA;AAAA,MACA,IAAA;AAAA,KACD,CACH,CAAA,CAAA;AAEA,IACE,KAAA,CAAA,MAAM,KAAM,CAAA,UAAA,EACZ,MAAM;AACJ,MAAA,IAAI,MAAM,aAAe,EAAA;AACvB,QAAU,QAAA,IAAA,IAAA,GAAS,SAAU,QAAO,CAAQ,QAAA,CAAA,QAAU,OAAI,CAAA,CAAA,GAAA,KAAA,SAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AAAA,OAC5D;AAAA,KAEJ,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;"}
@@ -1,76 +1,48 @@
1
- import { defineComponent, ref, nextTick, onMounted, computed, provide, reactive, toRefs, openBlock, createElementBlock, unref, normalizeClass, renderSlot } from 'vue';
2
- import '../../config-provider/index.mjs';
3
- import '../../form/index.mjs';
4
- import '../../../constants/index.mjs';
5
- import '../../../hooks/index.mjs';
6
1
  import '../../../utils/index.mjs';
7
- import { radioGroupProps, radioGroupEmits } from './radio-group.mjs';
8
- import { radioGroupKey } from './constants.mjs';
9
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
10
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
11
- import { useId } from '../../../hooks/use-id/index.mjs';
12
- import { useFormItem, useFormItemInputId } from '../../form/src/hooks/use-form-item.mjs';
13
- import { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
14
- import { watch } from '../../config-provider/src/for-editor.mjs';
15
- import { debugWarn } from '../../../utils/error.mjs';
2
+ import '../../../hooks/index.mjs';
3
+ import { radioEmits } from './radio.mjs';
4
+ import '../../../constants/index.mjs';
5
+ import { buildProps } from '../../../utils/vue/props/runtime.mjs';
6
+ import { useSizeProp } from '../../../hooks/use-size/index.mjs';
7
+ import { viewModes } from '../../../constants/size.mjs';
16
8
 
17
- const _hoisted_1 = ["id", "aria-label", "aria-labelledby"];
18
- const __default__ = defineComponent({
19
- name: "ElRadioGroup"
20
- });
21
- const _sfc_main = /* @__PURE__ */ defineComponent({
22
- ...__default__,
23
- props: radioGroupProps,
24
- emits: radioGroupEmits,
25
- setup(__props, { emit }) {
26
- const props = __props;
27
- const ns = useNamespace("radio");
28
- const radioId = useId();
29
- const radioGroupRef = ref();
30
- const { formItem } = useFormItem();
31
- const { inputId: groupId, isLabeledByFormItem } = useFormItemInputId(props, {
32
- formItemContext: formItem
33
- });
34
- const changeEvent = (value) => {
35
- emit(UPDATE_MODEL_EVENT, value);
36
- nextTick(() => emit("change", value));
37
- };
38
- onMounted(() => {
39
- const radios = radioGroupRef.value.querySelectorAll("[type=radio]");
40
- const firstLabel = radios[0];
41
- if (!Array.from(radios).some((radio) => radio.checked) && firstLabel) {
42
- firstLabel.tabIndex = 0;
43
- }
44
- });
45
- const name = computed(() => {
46
- return props.name || radioId.value;
47
- });
48
- provide(radioGroupKey, reactive({
49
- ...toRefs(props),
50
- changeEvent,
51
- name
52
- }));
53
- watch(() => props.modelValue, () => {
54
- if (props.validateEvent) {
55
- formItem == null ? void 0 : formItem.validate("change").catch((err) => debugWarn(err));
56
- }
57
- });
58
- return (_ctx, _cache) => {
59
- return openBlock(), createElementBlock("div", {
60
- id: unref(groupId),
61
- ref_key: "radioGroupRef",
62
- ref: radioGroupRef,
63
- class: normalizeClass(unref(ns).b("group")),
64
- role: "radiogroup",
65
- "aria-label": !unref(isLabeledByFormItem) ? _ctx.label || "radio-group" : void 0,
66
- "aria-labelledby": unref(isLabeledByFormItem) ? unref(formItem).labelId : void 0
67
- }, [
68
- renderSlot(_ctx.$slots, "default")
69
- ], 10, _hoisted_1);
70
- };
9
+ const radioGroupProps = buildProps({
10
+ id: {
11
+ type: String,
12
+ default: void 0
13
+ },
14
+ size: useSizeProp,
15
+ disabled: Boolean,
16
+ viewMode: {
17
+ type: String,
18
+ values: viewModes
19
+ },
20
+ modelValue: {
21
+ type: [String, Number, Boolean],
22
+ default: ""
23
+ },
24
+ fill: {
25
+ type: String,
26
+ default: ""
27
+ },
28
+ label: {
29
+ type: String,
30
+ default: void 0
31
+ },
32
+ textColor: {
33
+ type: String,
34
+ default: ""
35
+ },
36
+ name: {
37
+ type: String,
38
+ default: void 0
39
+ },
40
+ validateEvent: {
41
+ type: Boolean,
42
+ default: true
71
43
  }
72
44
  });
73
- var RadioGroup = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "D:\\workspace\\element-pe\\packages\\components\\radio\\src\\radio-group.vue"]]);
45
+ const radioGroupEmits = radioEmits;
74
46
 
75
- export { RadioGroup as default };
47
+ export { radioGroupEmits, radioGroupProps };
76
48
  //# sourceMappingURL=radio-group2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio-group2.mjs","sources":["../../../../../../packages/components/radio/src/radio-group.vue"],"sourcesContent":["<template>\n <div\n :id=\"groupId\"\n ref=\"radioGroupRef\"\n :class=\"ns.b('group')\"\n role=\"radiogroup\"\n :aria-label=\"!isLabeledByFormItem ? label || 'radio-group' : undefined\"\n :aria-labelledby=\"isLabeledByFormItem ? formItem!.labelId : undefined\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onMounted,\n provide,\n reactive,\n ref,\n toRefs,\n} from 'vue'\nimport { watch } from '../../config-provider'\nimport { useFormItem, useFormItemInputId } from '@element-plus/components/form'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { useId, useNamespace } from '@element-plus/hooks'\nimport { debugWarn } from '@element-plus/utils'\nimport { radioGroupEmits, radioGroupProps } from './radio-group'\nimport { radioGroupKey } from './constants'\n\nimport type { RadioGroupProps } from './radio-group'\n\ndefineOptions({\n name: 'ElRadioGroup',\n})\n\nconst props = defineProps(radioGroupProps)\nconst emit = defineEmits(radioGroupEmits)\n\nconst ns = useNamespace('radio')\nconst radioId = useId()\nconst radioGroupRef = ref<HTMLDivElement>()\nconst { formItem } = useFormItem()\nconst { inputId: groupId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext: formItem,\n})\n\nconst changeEvent = (value: RadioGroupProps['modelValue']) => {\n emit(UPDATE_MODEL_EVENT, value)\n nextTick(() => emit('change', value))\n}\n\nonMounted(() => {\n const radios =\n radioGroupRef.value!.querySelectorAll<HTMLInputElement>('[type=radio]')\n const firstLabel = radios[0]\n if (!Array.from(radios).some((radio) => radio.checked) && firstLabel) {\n firstLabel.tabIndex = 0\n }\n})\n\nconst name = computed(() => {\n return props.name || radioId.value\n})\n\nprovide(\n radioGroupKey,\n reactive({\n ...toRefs(props),\n changeEvent,\n name,\n })\n)\n\nwatch(\n () => props.modelValue,\n () => {\n if (props.validateEvent) {\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n }\n)\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;mCAiCc,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAM,MAAA,EAAA,GAAK,aAAa,OAAO,CAAA,CAAA;AAC/B,IAAA,MAAM,UAAU,KAAM,EAAA,CAAA;AACtB,IAAA,MAAM,gBAAgB,GAAoB,EAAA,CAAA;AAC1C,IAAM,MAAA,EAAE,aAAa,WAAY,EAAA,CAAA;AACjC,IAAA,MAAM,EAAE,OAAA,EAAS,OAAS,EAAA,mBAAA,EAAA,GAAwB,mBAAmB,KAAO,EAAA;AAAA,MAC1E,eAAiB,EAAA,QAAA;AAAA,KAClB,CAAA,CAAA;AAED,IAAM,MAAA,WAAA,GAAc,CAAC,KAAyC,KAAA;AAC5D,MAAA,IAAA,CAAK,oBAAoB,KAAK,CAAA,CAAA;AAC9B,MAAA,QAAA,CAAS,MAAM,IAAA,CAAK,QAAU,EAAA,KAAK,CAAC,CAAA,CAAA;AAAA,KACtC,CAAA;AAEA,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,MAAM,MACJ,GAAA,aAAA,CAAc,KAAO,CAAA,gBAAA,CAAmC,cAAc,CAAA,CAAA;AACxE,MAAA,MAAM,aAAa,MAAO,CAAA,CAAA,CAAA,CAAA;AAC1B,MAAI,IAAA,CAAC,KAAM,CAAA,IAAA,CAAK,MAAM,CAAA,CAAE,IAAK,CAAA,CAAC,KAAU,KAAA,KAAA,CAAM,OAAO,CAAA,IAAK,UAAY,EAAA;AACpE,QAAA,UAAA,CAAW,QAAW,GAAA,CAAA,CAAA;AAAA,OACxB;AAAA,KACD,CAAA,CAAA;AAED,IAAM,MAAA,IAAA,GAAO,SAAS,MAAM;AAC1B,MAAO,OAAA,KAAA,CAAM,QAAQ,OAAQ,CAAA,KAAA,CAAA;AAAA,KAC9B,CAAA,CAAA;AAED,IAAA,OAAA,CACE,eACA,QAAS,CAAA;AAAA,MACP,GAAG,OAAO,KAAK,CAAA;AAAA,MACf,WAAA;AAAA,MACA,IAAA;AAAA,KACD,CACH,CAAA,CAAA;AAEA,IACE,KAAA,CAAA,MAAM,KAAM,CAAA,UAAA,EACZ,MAAM;AACJ,MAAA,IAAI,MAAM,aAAe,EAAA;AACvB,QAAU,QAAA,IAAA,IAAA,GAAS,SAAU,QAAO,CAAQ,QAAA,CAAA,QAAU,OAAI,CAAA,CAAA,GAAA,KAAA,SAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AAAA,OAC5D;AAAA,KAEJ,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"radio-group2.mjs","sources":["../../../../../../packages/components/radio/src/radio-group.ts"],"sourcesContent":["import { buildProps } from '@element-plus/utils'\nimport { useSizeProp } from '@element-plus/hooks'\nimport { radioEmits } from './radio'\nimport type { ExtractPropTypes } from '@vue/runtime-core'\nimport type RadioGroup from './radio-group.vue'\nimport { viewModes } from '../../../constants'\n\nexport const radioGroupProps = buildProps({\n /**\n * @description native `id` attribute\n */\n id: {\n type: String,\n default: undefined,\n },\n /**\n * @description the size of radio buttons or bordered radios\n */\n size: useSizeProp,\n /**\n * @description whether the nesting radios are disabled\n */\n disabled: Boolean,\n /**\n * @description 浏览模式\n */\n viewMode: {\n type: String,\n values: viewModes\n },\n /**\n * @description binding value\n */\n modelValue: {\n type: [String, Number, Boolean],\n default: '',\n },\n /**\n * @description border and background color when button is active\n */\n fill: {\n type: String,\n default: '',\n },\n /**\n * @description same as `aria-label` in RadioGroup\n */\n label: {\n type: String,\n default: undefined,\n },\n /**\n * @description font color when button is active\n */\n textColor: {\n type: String,\n default: '',\n },\n /**\n * @description native `name` attribute\n */\n name: {\n type: String,\n default: undefined,\n },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n} as const)\nexport type RadioGroupProps = ExtractPropTypes<typeof radioGroupProps>\n\nexport const radioGroupEmits = radioEmits\nexport type RadioGroupEmits = typeof radioGroupEmits\nexport type RadioGroupInstance = InstanceType<typeof RadioGroup>\n"],"names":[],"mappings":";;;;;;;;AAIY,MAAC,eAAe,GAAG,UAAU,CAAC;AAC1C,EAAE,EAAE,EAAE;AACN,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,SAAS;AACrB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;AACnC,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,eAAe,GAAG;;;;"}
@@ -1,6 +1,6 @@
1
1
  import '../../utils/index.mjs';
2
- import Rate from './src/rate2.mjs';
3
- export { rateEmits, rateProps } from './src/rate.mjs';
2
+ import Rate from './src/rate.mjs';
3
+ export { rateEmits, rateProps } from './src/rate2.mjs';
4
4
  import { withInstall } from '../../utils/vue/install.mjs';
5
5
 
6
6
  const ElRate = withInstall(Rate);
@@ -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 './rate2.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=rate.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"rate.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":"rate.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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"}