@element-plus/nightly 0.0.20250522 → 0.0.20250524

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 (590) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.full.js +74 -52
  3. package/dist/index.full.min.js +11 -11
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +15 -15
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +75 -53
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar-eg.js +1 -1
  13. package/dist/locale/ar-eg.min.js +1 -1
  14. package/dist/locale/ar-eg.min.mjs +1 -1
  15. package/dist/locale/ar-eg.mjs +1 -1
  16. package/dist/locale/ar.js +1 -1
  17. package/dist/locale/ar.min.js +1 -1
  18. package/dist/locale/ar.min.mjs +1 -1
  19. package/dist/locale/ar.mjs +1 -1
  20. package/dist/locale/az.js +1 -1
  21. package/dist/locale/az.min.js +1 -1
  22. package/dist/locale/az.min.mjs +1 -1
  23. package/dist/locale/az.mjs +1 -1
  24. package/dist/locale/bg.js +1 -1
  25. package/dist/locale/bg.min.js +1 -1
  26. package/dist/locale/bg.min.mjs +1 -1
  27. package/dist/locale/bg.mjs +1 -1
  28. package/dist/locale/bn.js +1 -1
  29. package/dist/locale/bn.min.js +1 -1
  30. package/dist/locale/bn.min.mjs +1 -1
  31. package/dist/locale/bn.mjs +1 -1
  32. package/dist/locale/ca.js +1 -1
  33. package/dist/locale/ca.min.js +1 -1
  34. package/dist/locale/ca.min.mjs +1 -1
  35. package/dist/locale/ca.mjs +1 -1
  36. package/dist/locale/ckb.js +1 -1
  37. package/dist/locale/ckb.min.js +1 -1
  38. package/dist/locale/ckb.min.mjs +1 -1
  39. package/dist/locale/ckb.mjs +1 -1
  40. package/dist/locale/cs.js +1 -1
  41. package/dist/locale/cs.min.js +1 -1
  42. package/dist/locale/cs.min.mjs +1 -1
  43. package/dist/locale/cs.mjs +1 -1
  44. package/dist/locale/da.js +1 -1
  45. package/dist/locale/da.min.js +1 -1
  46. package/dist/locale/da.min.mjs +1 -1
  47. package/dist/locale/da.mjs +1 -1
  48. package/dist/locale/de.js +1 -1
  49. package/dist/locale/de.min.js +1 -1
  50. package/dist/locale/de.min.mjs +1 -1
  51. package/dist/locale/de.mjs +1 -1
  52. package/dist/locale/el.js +1 -1
  53. package/dist/locale/el.min.js +1 -1
  54. package/dist/locale/el.min.mjs +1 -1
  55. package/dist/locale/el.mjs +1 -1
  56. package/dist/locale/en.js +1 -1
  57. package/dist/locale/en.min.js +1 -1
  58. package/dist/locale/en.min.mjs +1 -1
  59. package/dist/locale/en.mjs +1 -1
  60. package/dist/locale/eo.js +1 -1
  61. package/dist/locale/eo.min.js +1 -1
  62. package/dist/locale/eo.min.mjs +1 -1
  63. package/dist/locale/eo.mjs +1 -1
  64. package/dist/locale/es.js +1 -1
  65. package/dist/locale/es.min.js +1 -1
  66. package/dist/locale/es.min.mjs +1 -1
  67. package/dist/locale/es.mjs +1 -1
  68. package/dist/locale/et.js +1 -1
  69. package/dist/locale/et.min.js +1 -1
  70. package/dist/locale/et.min.mjs +1 -1
  71. package/dist/locale/et.mjs +1 -1
  72. package/dist/locale/eu.js +1 -1
  73. package/dist/locale/eu.min.js +1 -1
  74. package/dist/locale/eu.min.mjs +1 -1
  75. package/dist/locale/eu.mjs +1 -1
  76. package/dist/locale/fa.js +1 -1
  77. package/dist/locale/fa.min.js +1 -1
  78. package/dist/locale/fa.min.mjs +1 -1
  79. package/dist/locale/fa.mjs +1 -1
  80. package/dist/locale/fi.js +1 -1
  81. package/dist/locale/fi.min.js +1 -1
  82. package/dist/locale/fi.min.mjs +1 -1
  83. package/dist/locale/fi.mjs +1 -1
  84. package/dist/locale/fr.js +1 -1
  85. package/dist/locale/fr.min.js +1 -1
  86. package/dist/locale/fr.min.mjs +1 -1
  87. package/dist/locale/fr.mjs +1 -1
  88. package/dist/locale/he.js +1 -1
  89. package/dist/locale/he.min.js +1 -1
  90. package/dist/locale/he.min.mjs +1 -1
  91. package/dist/locale/he.mjs +1 -1
  92. package/dist/locale/hi.js +1 -1
  93. package/dist/locale/hi.min.js +1 -1
  94. package/dist/locale/hi.min.mjs +1 -1
  95. package/dist/locale/hi.mjs +1 -1
  96. package/dist/locale/hr.js +1 -1
  97. package/dist/locale/hr.min.js +1 -1
  98. package/dist/locale/hr.min.mjs +1 -1
  99. package/dist/locale/hr.mjs +1 -1
  100. package/dist/locale/hu.js +1 -1
  101. package/dist/locale/hu.min.js +1 -1
  102. package/dist/locale/hu.min.mjs +1 -1
  103. package/dist/locale/hu.mjs +1 -1
  104. package/dist/locale/hy-am.js +1 -1
  105. package/dist/locale/hy-am.min.js +1 -1
  106. package/dist/locale/hy-am.min.mjs +1 -1
  107. package/dist/locale/hy-am.mjs +1 -1
  108. package/dist/locale/id.js +1 -1
  109. package/dist/locale/id.min.js +1 -1
  110. package/dist/locale/id.min.mjs +1 -1
  111. package/dist/locale/id.mjs +1 -1
  112. package/dist/locale/it.js +1 -1
  113. package/dist/locale/it.min.js +1 -1
  114. package/dist/locale/it.min.mjs +1 -1
  115. package/dist/locale/it.mjs +1 -1
  116. package/dist/locale/ja.js +1 -1
  117. package/dist/locale/ja.min.js +1 -1
  118. package/dist/locale/ja.min.mjs +1 -1
  119. package/dist/locale/ja.mjs +1 -1
  120. package/dist/locale/kk.js +1 -1
  121. package/dist/locale/kk.min.js +1 -1
  122. package/dist/locale/kk.min.mjs +1 -1
  123. package/dist/locale/kk.mjs +1 -1
  124. package/dist/locale/km.js +1 -1
  125. package/dist/locale/km.min.js +1 -1
  126. package/dist/locale/km.min.mjs +1 -1
  127. package/dist/locale/km.mjs +1 -1
  128. package/dist/locale/ko.js +1 -1
  129. package/dist/locale/ko.min.js +1 -1
  130. package/dist/locale/ko.min.mjs +1 -1
  131. package/dist/locale/ko.mjs +1 -1
  132. package/dist/locale/ku.js +1 -1
  133. package/dist/locale/ku.min.js +1 -1
  134. package/dist/locale/ku.min.mjs +1 -1
  135. package/dist/locale/ku.mjs +1 -1
  136. package/dist/locale/ky.js +1 -1
  137. package/dist/locale/ky.min.js +1 -1
  138. package/dist/locale/ky.min.mjs +1 -1
  139. package/dist/locale/ky.mjs +1 -1
  140. package/dist/locale/lo.js +1 -1
  141. package/dist/locale/lo.min.js +1 -1
  142. package/dist/locale/lo.min.mjs +1 -1
  143. package/dist/locale/lo.mjs +1 -1
  144. package/dist/locale/lt.js +1 -1
  145. package/dist/locale/lt.min.js +1 -1
  146. package/dist/locale/lt.min.mjs +1 -1
  147. package/dist/locale/lt.mjs +1 -1
  148. package/dist/locale/lv.js +1 -1
  149. package/dist/locale/lv.min.js +1 -1
  150. package/dist/locale/lv.min.mjs +1 -1
  151. package/dist/locale/lv.mjs +1 -1
  152. package/dist/locale/mg.js +1 -1
  153. package/dist/locale/mg.min.js +1 -1
  154. package/dist/locale/mg.min.mjs +1 -1
  155. package/dist/locale/mg.mjs +1 -1
  156. package/dist/locale/mn.js +1 -1
  157. package/dist/locale/mn.min.js +1 -1
  158. package/dist/locale/mn.min.mjs +1 -1
  159. package/dist/locale/mn.mjs +1 -1
  160. package/dist/locale/ms.js +1 -1
  161. package/dist/locale/ms.min.js +1 -1
  162. package/dist/locale/ms.min.mjs +1 -1
  163. package/dist/locale/ms.mjs +1 -1
  164. package/dist/locale/my.js +1 -1
  165. package/dist/locale/my.min.js +1 -1
  166. package/dist/locale/my.min.mjs +1 -1
  167. package/dist/locale/my.mjs +1 -1
  168. package/dist/locale/nb-no.js +1 -1
  169. package/dist/locale/nb-no.min.js +1 -1
  170. package/dist/locale/nb-no.min.mjs +1 -1
  171. package/dist/locale/nb-no.mjs +1 -1
  172. package/dist/locale/nl.js +1 -1
  173. package/dist/locale/nl.min.js +1 -1
  174. package/dist/locale/nl.min.mjs +1 -1
  175. package/dist/locale/nl.mjs +1 -1
  176. package/dist/locale/no.js +1 -1
  177. package/dist/locale/no.min.js +1 -1
  178. package/dist/locale/no.min.mjs +1 -1
  179. package/dist/locale/no.mjs +1 -1
  180. package/dist/locale/pa.js +1 -1
  181. package/dist/locale/pa.min.js +1 -1
  182. package/dist/locale/pa.min.mjs +1 -1
  183. package/dist/locale/pa.mjs +1 -1
  184. package/dist/locale/pl.js +1 -1
  185. package/dist/locale/pl.min.js +1 -1
  186. package/dist/locale/pl.min.mjs +1 -1
  187. package/dist/locale/pl.mjs +1 -1
  188. package/dist/locale/pt-br.js +1 -1
  189. package/dist/locale/pt-br.min.js +1 -1
  190. package/dist/locale/pt-br.min.mjs +1 -1
  191. package/dist/locale/pt-br.mjs +1 -1
  192. package/dist/locale/pt.js +1 -1
  193. package/dist/locale/pt.min.js +1 -1
  194. package/dist/locale/pt.min.mjs +1 -1
  195. package/dist/locale/pt.mjs +1 -1
  196. package/dist/locale/ro.js +1 -1
  197. package/dist/locale/ro.min.js +1 -1
  198. package/dist/locale/ro.min.mjs +1 -1
  199. package/dist/locale/ro.mjs +1 -1
  200. package/dist/locale/ru.js +1 -1
  201. package/dist/locale/ru.min.js +1 -1
  202. package/dist/locale/ru.min.mjs +1 -1
  203. package/dist/locale/ru.mjs +1 -1
  204. package/dist/locale/sk.js +1 -1
  205. package/dist/locale/sk.min.js +1 -1
  206. package/dist/locale/sk.min.mjs +1 -1
  207. package/dist/locale/sk.mjs +1 -1
  208. package/dist/locale/sl.js +1 -1
  209. package/dist/locale/sl.min.js +1 -1
  210. package/dist/locale/sl.min.mjs +1 -1
  211. package/dist/locale/sl.mjs +1 -1
  212. package/dist/locale/sr.js +1 -1
  213. package/dist/locale/sr.min.js +1 -1
  214. package/dist/locale/sr.min.mjs +1 -1
  215. package/dist/locale/sr.mjs +1 -1
  216. package/dist/locale/sv.js +1 -1
  217. package/dist/locale/sv.min.js +1 -1
  218. package/dist/locale/sv.min.mjs +1 -1
  219. package/dist/locale/sv.mjs +1 -1
  220. package/dist/locale/sw.js +1 -1
  221. package/dist/locale/sw.min.js +1 -1
  222. package/dist/locale/sw.min.mjs +1 -1
  223. package/dist/locale/sw.mjs +1 -1
  224. package/dist/locale/ta.js +1 -1
  225. package/dist/locale/ta.min.js +1 -1
  226. package/dist/locale/ta.min.mjs +1 -1
  227. package/dist/locale/ta.mjs +1 -1
  228. package/dist/locale/te.js +1 -1
  229. package/dist/locale/te.min.js +1 -1
  230. package/dist/locale/te.min.mjs +1 -1
  231. package/dist/locale/te.mjs +1 -1
  232. package/dist/locale/th.js +1 -1
  233. package/dist/locale/th.min.js +1 -1
  234. package/dist/locale/th.min.mjs +1 -1
  235. package/dist/locale/th.mjs +1 -1
  236. package/dist/locale/tk.js +1 -1
  237. package/dist/locale/tk.min.js +1 -1
  238. package/dist/locale/tk.min.mjs +1 -1
  239. package/dist/locale/tk.mjs +1 -1
  240. package/dist/locale/tr.js +1 -1
  241. package/dist/locale/tr.min.js +1 -1
  242. package/dist/locale/tr.min.mjs +1 -1
  243. package/dist/locale/tr.mjs +1 -1
  244. package/dist/locale/ug-cn.js +1 -1
  245. package/dist/locale/ug-cn.min.js +1 -1
  246. package/dist/locale/ug-cn.min.mjs +1 -1
  247. package/dist/locale/ug-cn.mjs +1 -1
  248. package/dist/locale/uk.js +1 -1
  249. package/dist/locale/uk.min.js +1 -1
  250. package/dist/locale/uk.min.mjs +1 -1
  251. package/dist/locale/uk.mjs +1 -1
  252. package/dist/locale/uz-uz.js +1 -1
  253. package/dist/locale/uz-uz.min.js +1 -1
  254. package/dist/locale/uz-uz.min.mjs +1 -1
  255. package/dist/locale/uz-uz.mjs +1 -1
  256. package/dist/locale/vi.js +1 -1
  257. package/dist/locale/vi.min.js +1 -1
  258. package/dist/locale/vi.min.mjs +1 -1
  259. package/dist/locale/vi.mjs +1 -1
  260. package/dist/locale/zh-cn.js +1 -1
  261. package/dist/locale/zh-cn.min.js +1 -1
  262. package/dist/locale/zh-cn.min.mjs +1 -1
  263. package/dist/locale/zh-cn.mjs +1 -1
  264. package/dist/locale/zh-hk.js +1 -1
  265. package/dist/locale/zh-hk.min.js +1 -1
  266. package/dist/locale/zh-hk.min.mjs +1 -1
  267. package/dist/locale/zh-hk.mjs +1 -1
  268. package/dist/locale/zh-mo.js +1 -1
  269. package/dist/locale/zh-mo.min.js +1 -1
  270. package/dist/locale/zh-mo.min.mjs +1 -1
  271. package/dist/locale/zh-mo.mjs +1 -1
  272. package/dist/locale/zh-tw.js +1 -1
  273. package/dist/locale/zh-tw.min.js +1 -1
  274. package/dist/locale/zh-tw.min.mjs +1 -1
  275. package/dist/locale/zh-tw.mjs +1 -1
  276. package/es/components/alert/src/alert.d.ts +5 -1
  277. package/es/components/alert/src/alert.mjs +6 -2
  278. package/es/components/alert/src/alert.mjs.map +1 -1
  279. package/es/components/alert/src/alert.vue.d.ts +13 -2
  280. package/es/components/alert/src/alert2.mjs +22 -6
  281. package/es/components/alert/src/alert2.mjs.map +1 -1
  282. package/es/components/avatar/index.mjs +2 -2
  283. package/es/components/avatar/src/avatar.mjs +31 -65
  284. package/es/components/avatar/src/avatar.mjs.map +1 -1
  285. package/es/components/avatar/src/avatar2.mjs +65 -31
  286. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  287. package/es/components/calendar/index.mjs +2 -2
  288. package/es/components/calendar/src/calendar.mjs +134 -16
  289. package/es/components/calendar/src/calendar.mjs.map +1 -1
  290. package/es/components/calendar/src/calendar2.mjs +16 -134
  291. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  292. package/es/components/cascader/index.mjs +2 -2
  293. package/es/components/cascader/src/cascader.mjs +639 -80
  294. package/es/components/cascader/src/cascader.mjs.map +1 -1
  295. package/es/components/cascader/src/cascader2.mjs +80 -639
  296. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  297. package/es/components/cascader-panel/src/store.d.ts +1 -1
  298. package/es/components/cascader-panel/src/store.mjs +2 -1
  299. package/es/components/cascader-panel/src/store.mjs.map +1 -1
  300. package/es/components/col/index.mjs +2 -2
  301. package/es/components/col/src/col.mjs +64 -43
  302. package/es/components/col/src/col.mjs.map +1 -1
  303. package/es/components/col/src/col2.mjs +43 -64
  304. package/es/components/col/src/col2.mjs.map +1 -1
  305. package/es/components/color-picker/src/color-picker2.mjs +6 -0
  306. package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
  307. package/es/components/date-picker/src/composables/use-panel-date-range.mjs +1 -1
  308. package/es/components/date-picker/src/composables/use-panel-date-range.mjs.map +1 -1
  309. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs +2 -2
  310. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs.map +1 -1
  311. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs +2 -2
  312. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  313. package/es/components/date-picker/src/utils.d.ts +2 -2
  314. package/es/components/date-picker/src/utils.mjs +10 -10
  315. package/es/components/date-picker/src/utils.mjs.map +1 -1
  316. package/es/components/dialog/src/dialog-content.mjs +88 -29
  317. package/es/components/dialog/src/dialog-content.mjs.map +1 -1
  318. package/es/components/dialog/src/dialog-content2.mjs +29 -88
  319. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  320. package/es/components/dialog/src/dialog.mjs +1 -1
  321. package/es/components/dialog/src/dialog.vue.d.ts +1 -1
  322. package/es/components/dialog/src/dialog2.mjs +1 -1
  323. package/es/components/drawer/src/drawer.vue.d.ts +1 -1
  324. package/es/components/dropdown/index.mjs +2 -2
  325. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  326. package/es/components/dropdown/src/dropdown-item.mjs +1 -1
  327. package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
  328. package/es/components/dropdown/src/dropdown.mjs +299 -108
  329. package/es/components/dropdown/src/dropdown.mjs.map +1 -1
  330. package/es/components/dropdown/src/dropdown2.mjs +108 -299
  331. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  332. package/es/components/form/src/form.d.ts +1 -6
  333. package/es/components/form/src/form.mjs +2 -1
  334. package/es/components/form/src/form.mjs.map +1 -1
  335. package/es/components/form/src/form.vue.d.ts +3 -12
  336. package/es/components/form/src/form2.mjs +8 -2
  337. package/es/components/form/src/form2.mjs.map +1 -1
  338. package/es/components/image-viewer/src/image-viewer.mjs +15 -15
  339. package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
  340. package/es/components/index.mjs +16 -16
  341. package/es/components/input-number/index.mjs +2 -2
  342. package/es/components/input-number/src/input-number.mjs +349 -62
  343. package/es/components/input-number/src/input-number.mjs.map +1 -1
  344. package/es/components/input-number/src/input-number2.mjs +62 -349
  345. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  346. package/es/components/input-tag/index.mjs +2 -2
  347. package/es/components/input-tag/src/input-tag.mjs +73 -215
  348. package/es/components/input-tag/src/input-tag.mjs.map +1 -1
  349. package/es/components/input-tag/src/input-tag2.mjs +215 -73
  350. package/es/components/input-tag/src/input-tag2.mjs.map +1 -1
  351. package/es/components/menu/src/menu.d.ts +1 -1
  352. package/es/components/message/index.mjs +1 -1
  353. package/es/components/message/src/message.mjs +153 -92
  354. package/es/components/message/src/message.mjs.map +1 -1
  355. package/es/components/message/src/message2.mjs +92 -153
  356. package/es/components/message/src/message2.mjs.map +1 -1
  357. package/es/components/message/src/method.mjs +2 -2
  358. package/es/components/pagination/src/components/total.mjs +6 -26
  359. package/es/components/pagination/src/components/total.mjs.map +1 -1
  360. package/es/components/pagination/src/components/total2.mjs +26 -6
  361. package/es/components/pagination/src/components/total2.mjs.map +1 -1
  362. package/es/components/pagination/src/pagination.mjs +1 -1
  363. package/es/components/popover/src/popover.mjs +1 -1
  364. package/es/components/popper/index.mjs +2 -2
  365. package/es/components/popper/src/arrow.mjs +30 -7
  366. package/es/components/popper/src/arrow.mjs.map +1 -1
  367. package/es/components/popper/src/arrow2.mjs +7 -30
  368. package/es/components/popper/src/arrow2.mjs.map +1 -1
  369. package/es/components/popper/src/content.mjs +1 -1
  370. package/es/components/radio/index.mjs +2 -2
  371. package/es/components/radio/src/radio-group.mjs +65 -34
  372. package/es/components/radio/src/radio-group.mjs.map +1 -1
  373. package/es/components/radio/src/radio-group2.mjs +34 -65
  374. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  375. package/es/components/scrollbar/index.mjs +1 -1
  376. package/es/components/scrollbar/src/bar2.mjs +1 -1
  377. package/es/components/scrollbar/src/thumb.mjs +11 -131
  378. package/es/components/scrollbar/src/thumb.mjs.map +1 -1
  379. package/es/components/scrollbar/src/thumb2.mjs +131 -11
  380. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  381. package/es/components/select/index.mjs +2 -2
  382. package/es/components/select/src/select.mjs +130 -450
  383. package/es/components/select/src/select.mjs.map +1 -1
  384. package/es/components/select/src/select2.mjs +450 -130
  385. package/es/components/select/src/select2.mjs.map +1 -1
  386. package/es/components/skeleton/index.mjs +2 -2
  387. package/es/components/skeleton/src/skeleton-item.mjs +17 -22
  388. package/es/components/skeleton/src/skeleton-item.mjs.map +1 -1
  389. package/es/components/skeleton/src/skeleton-item2.mjs +22 -17
  390. package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
  391. package/es/components/skeleton/src/skeleton2.mjs +1 -1
  392. package/es/components/steps/index.mjs +2 -2
  393. package/es/components/steps/src/item.mjs +19 -190
  394. package/es/components/steps/src/item.mjs.map +1 -1
  395. package/es/components/steps/src/item2.mjs +190 -19
  396. package/es/components/steps/src/item2.mjs.map +1 -1
  397. package/es/components/table/src/store/helper.d.ts +1 -435
  398. package/es/components/table/src/store/index.d.ts +2 -872
  399. package/es/components/table/src/store/tree.d.ts +1 -19
  400. package/es/components/table/src/store/tree.mjs +4 -11
  401. package/es/components/table/src/store/tree.mjs.map +1 -1
  402. package/es/components/table/src/store/watcher.d.ts +1 -78
  403. package/es/components/table/src/table/utils-helper.d.ts +1 -1
  404. package/es/components/table/src/table-footer/index.d.ts +1 -1
  405. package/es/components/table/src/table-footer/mapState-helper.d.ts +6 -6
  406. package/es/components/table/src/table-footer/style-helper.d.ts +1 -1
  407. package/es/components/table/src/table-header/utils-helper.d.ts +1 -1
  408. package/es/components/table/src/table.vue.d.ts +3 -437
  409. package/es/components/tooltip/src/content.mjs +1 -1
  410. package/es/components/tooltip/src/tooltip.mjs +1 -1
  411. package/es/components/tooltip/src/tooltip2.mjs +2 -2
  412. package/es/components/tooltip-v2/index.mjs +1 -1
  413. package/es/components/tooltip-v2/src/arrow.mjs +37 -21
  414. package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
  415. package/es/components/tooltip-v2/src/arrow2.mjs +21 -37
  416. package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
  417. package/es/components/tooltip-v2/src/tooltip.mjs +1 -1
  418. package/es/components/tooltip-v2/src/tooltip2.mjs +2 -2
  419. package/es/components/tour/index.mjs +1 -1
  420. package/es/components/tour/src/content.mjs +67 -43
  421. package/es/components/tour/src/content.mjs.map +1 -1
  422. package/es/components/tour/src/content2.mjs +43 -67
  423. package/es/components/tour/src/content2.mjs.map +1 -1
  424. package/es/components/tour/src/step.mjs +1 -1
  425. package/es/components/tour/src/tour.mjs +1 -1
  426. package/es/components/tour/src/tour2.mjs +1 -1
  427. package/es/index.d.ts +41 -906
  428. package/es/index.mjs +16 -16
  429. package/es/version.d.ts +1 -1
  430. package/es/version.mjs +1 -1
  431. package/es/version.mjs.map +1 -1
  432. package/lib/components/alert/src/alert.d.ts +5 -1
  433. package/lib/components/alert/src/alert.js +6 -2
  434. package/lib/components/alert/src/alert.js.map +1 -1
  435. package/lib/components/alert/src/alert.vue.d.ts +13 -2
  436. package/lib/components/alert/src/alert2.js +24 -8
  437. package/lib/components/alert/src/alert2.js.map +1 -1
  438. package/lib/components/avatar/index.js +2 -2
  439. package/lib/components/avatar/src/avatar.js +32 -65
  440. package/lib/components/avatar/src/avatar.js.map +1 -1
  441. package/lib/components/avatar/src/avatar2.js +65 -32
  442. package/lib/components/avatar/src/avatar2.js.map +1 -1
  443. package/lib/components/calendar/index.js +2 -2
  444. package/lib/components/calendar/src/calendar.js +134 -17
  445. package/lib/components/calendar/src/calendar.js.map +1 -1
  446. package/lib/components/calendar/src/calendar2.js +17 -134
  447. package/lib/components/calendar/src/calendar2.js.map +1 -1
  448. package/lib/components/cascader/index.js +2 -2
  449. package/lib/components/cascader/src/cascader.js +639 -81
  450. package/lib/components/cascader/src/cascader.js.map +1 -1
  451. package/lib/components/cascader/src/cascader2.js +81 -639
  452. package/lib/components/cascader/src/cascader2.js.map +1 -1
  453. package/lib/components/cascader-panel/src/store.d.ts +1 -1
  454. package/lib/components/cascader-panel/src/store.js +2 -1
  455. package/lib/components/cascader-panel/src/store.js.map +1 -1
  456. package/lib/components/col/index.js +2 -2
  457. package/lib/components/col/src/col.js +64 -43
  458. package/lib/components/col/src/col.js.map +1 -1
  459. package/lib/components/col/src/col2.js +43 -64
  460. package/lib/components/col/src/col2.js.map +1 -1
  461. package/lib/components/color-picker/src/color-picker2.js +6 -0
  462. package/lib/components/color-picker/src/color-picker2.js.map +1 -1
  463. package/lib/components/date-picker/src/composables/use-panel-date-range.js +1 -1
  464. package/lib/components/date-picker/src/composables/use-panel-date-range.js.map +1 -1
  465. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js +2 -2
  466. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js.map +1 -1
  467. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js +2 -2
  468. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
  469. package/lib/components/date-picker/src/utils.d.ts +2 -2
  470. package/lib/components/date-picker/src/utils.js +10 -10
  471. package/lib/components/date-picker/src/utils.js.map +1 -1
  472. package/lib/components/dialog/src/dialog-content.js +87 -29
  473. package/lib/components/dialog/src/dialog-content.js.map +1 -1
  474. package/lib/components/dialog/src/dialog-content2.js +29 -87
  475. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  476. package/lib/components/dialog/src/dialog.js +1 -1
  477. package/lib/components/dialog/src/dialog.vue.d.ts +1 -1
  478. package/lib/components/dialog/src/dialog2.js +1 -1
  479. package/lib/components/drawer/src/drawer.vue.d.ts +1 -1
  480. package/lib/components/dropdown/index.js +2 -2
  481. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  482. package/lib/components/dropdown/src/dropdown-item.js +1 -1
  483. package/lib/components/dropdown/src/dropdown-menu.js +1 -1
  484. package/lib/components/dropdown/src/dropdown.js +299 -117
  485. package/lib/components/dropdown/src/dropdown.js.map +1 -1
  486. package/lib/components/dropdown/src/dropdown2.js +117 -299
  487. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  488. package/lib/components/form/src/form.d.ts +1 -6
  489. package/lib/components/form/src/form.js +2 -1
  490. package/lib/components/form/src/form.js.map +1 -1
  491. package/lib/components/form/src/form.vue.d.ts +3 -12
  492. package/lib/components/form/src/form2.js +7 -1
  493. package/lib/components/form/src/form2.js.map +1 -1
  494. package/lib/components/image-viewer/src/image-viewer.js +14 -14
  495. package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
  496. package/lib/components/index.js +16 -16
  497. package/lib/components/input-number/index.js +2 -2
  498. package/lib/components/input-number/src/input-number.js +347 -61
  499. package/lib/components/input-number/src/input-number.js.map +1 -1
  500. package/lib/components/input-number/src/input-number2.js +61 -347
  501. package/lib/components/input-number/src/input-number2.js.map +1 -1
  502. package/lib/components/input-tag/index.js +2 -2
  503. package/lib/components/input-tag/src/input-tag.js +73 -214
  504. package/lib/components/input-tag/src/input-tag.js.map +1 -1
  505. package/lib/components/input-tag/src/input-tag2.js +214 -73
  506. package/lib/components/input-tag/src/input-tag2.js.map +1 -1
  507. package/lib/components/menu/src/menu.d.ts +1 -1
  508. package/lib/components/message/index.js +1 -1
  509. package/lib/components/message/src/message.js +152 -94
  510. package/lib/components/message/src/message.js.map +1 -1
  511. package/lib/components/message/src/message2.js +94 -152
  512. package/lib/components/message/src/message2.js.map +1 -1
  513. package/lib/components/message/src/method.js +2 -2
  514. package/lib/components/pagination/src/components/total.js +6 -26
  515. package/lib/components/pagination/src/components/total.js.map +1 -1
  516. package/lib/components/pagination/src/components/total2.js +26 -6
  517. package/lib/components/pagination/src/components/total2.js.map +1 -1
  518. package/lib/components/pagination/src/pagination.js +1 -1
  519. package/lib/components/popover/src/popover.js +1 -1
  520. package/lib/components/popper/index.js +2 -2
  521. package/lib/components/popper/src/arrow.js +30 -8
  522. package/lib/components/popper/src/arrow.js.map +1 -1
  523. package/lib/components/popper/src/arrow2.js +8 -30
  524. package/lib/components/popper/src/arrow2.js.map +1 -1
  525. package/lib/components/popper/src/content.js +1 -1
  526. package/lib/components/radio/index.js +2 -2
  527. package/lib/components/radio/src/radio-group.js +65 -35
  528. package/lib/components/radio/src/radio-group.js.map +1 -1
  529. package/lib/components/radio/src/radio-group2.js +35 -65
  530. package/lib/components/radio/src/radio-group2.js.map +1 -1
  531. package/lib/components/scrollbar/index.js +1 -1
  532. package/lib/components/scrollbar/src/bar2.js +1 -1
  533. package/lib/components/scrollbar/src/thumb.js +11 -131
  534. package/lib/components/scrollbar/src/thumb.js.map +1 -1
  535. package/lib/components/scrollbar/src/thumb2.js +131 -11
  536. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  537. package/lib/components/select/index.js +2 -2
  538. package/lib/components/select/src/select.js +131 -450
  539. package/lib/components/select/src/select.js.map +1 -1
  540. package/lib/components/select/src/select2.js +450 -131
  541. package/lib/components/select/src/select2.js.map +1 -1
  542. package/lib/components/skeleton/index.js +2 -2
  543. package/lib/components/skeleton/src/skeleton-item.js +17 -22
  544. package/lib/components/skeleton/src/skeleton-item.js.map +1 -1
  545. package/lib/components/skeleton/src/skeleton-item2.js +22 -17
  546. package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
  547. package/lib/components/skeleton/src/skeleton2.js +1 -1
  548. package/lib/components/steps/index.js +2 -2
  549. package/lib/components/steps/src/item.js +19 -190
  550. package/lib/components/steps/src/item.js.map +1 -1
  551. package/lib/components/steps/src/item2.js +190 -19
  552. package/lib/components/steps/src/item2.js.map +1 -1
  553. package/lib/components/table/src/store/helper.d.ts +1 -435
  554. package/lib/components/table/src/store/index.d.ts +2 -872
  555. package/lib/components/table/src/store/tree.d.ts +1 -19
  556. package/lib/components/table/src/store/tree.js +4 -11
  557. package/lib/components/table/src/store/tree.js.map +1 -1
  558. package/lib/components/table/src/store/watcher.d.ts +1 -78
  559. package/lib/components/table/src/table/utils-helper.d.ts +1 -1
  560. package/lib/components/table/src/table-footer/index.d.ts +1 -1
  561. package/lib/components/table/src/table-footer/mapState-helper.d.ts +6 -6
  562. package/lib/components/table/src/table-footer/style-helper.d.ts +1 -1
  563. package/lib/components/table/src/table-header/utils-helper.d.ts +1 -1
  564. package/lib/components/table/src/table.vue.d.ts +3 -437
  565. package/lib/components/tooltip/src/content.js +1 -1
  566. package/lib/components/tooltip/src/tooltip.js +1 -1
  567. package/lib/components/tooltip/src/tooltip2.js +2 -2
  568. package/lib/components/tooltip-v2/index.js +1 -1
  569. package/lib/components/tooltip-v2/src/arrow.js +37 -22
  570. package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
  571. package/lib/components/tooltip-v2/src/arrow2.js +22 -37
  572. package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
  573. package/lib/components/tooltip-v2/src/tooltip.js +1 -1
  574. package/lib/components/tooltip-v2/src/tooltip2.js +2 -2
  575. package/lib/components/tour/index.js +1 -1
  576. package/lib/components/tour/src/content.js +67 -46
  577. package/lib/components/tour/src/content.js.map +1 -1
  578. package/lib/components/tour/src/content2.js +46 -67
  579. package/lib/components/tour/src/content2.js.map +1 -1
  580. package/lib/components/tour/src/step.js +1 -1
  581. package/lib/components/tour/src/tour.js +1 -1
  582. package/lib/components/tour/src/tour2.js +1 -1
  583. package/lib/index.d.ts +41 -906
  584. package/lib/index.js +16 -16
  585. package/lib/version.d.ts +1 -1
  586. package/lib/version.js +1 -1
  587. package/lib/version.js.map +1 -1
  588. package/package.json +2 -2
  589. package/tags.json +1 -1
  590. package/web-types.json +1 -1
@@ -1,305 +1,114 @@
1
- import { defineComponent, getCurrentInstance, ref, computed, watch, onBeforeUnmount, provide, toRef, unref, resolveComponent, openBlock, createElementBlock, normalizeClass, createVNode, createSlots, withCtx, renderSlot, createBlock, mergeProps, createCommentVNode } from 'vue';
2
- import { ElButton } from '../../button/index.mjs';
3
- import { ElTooltip } from '../../tooltip/index.mjs';
4
- import { ElScrollbar } from '../../scrollbar/index.mjs';
5
- import { ElIcon } from '../../icon/index.mjs';
6
- import ElRovingFocusGroup from '../../roving-focus-group/src/roving-focus-group2.mjs';
7
- import { ArrowDown } from '@element-plus/icons-vue';
8
- import { ElCollection, dropdownProps } from './dropdown.mjs';
9
- import { DROPDOWN_INJECTION_KEY } from './tokens.mjs';
10
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
11
- import { OnlyChild } from '../../slot/src/only-child.mjs';
12
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
13
- import { useLocale } from '../../../hooks/use-locale/index.mjs';
14
- import { addUnit } from '../../../utils/dom/style.mjs';
15
- import { castArray } from 'lodash-unified';
16
- import { useId } from '../../../hooks/use-id/index.mjs';
17
- import { useFormSize } from '../../form/src/hooks/use-form-common-props.mjs';
1
+ import { useTooltipTriggerProps } from '../../tooltip/src/trigger.mjs';
2
+ import { roleTypes } from '../../popper/src/popper.mjs';
3
+ import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
4
+ import { EVENT_CODE } from '../../../constants/aria.mjs';
5
+ import { useTooltipContentProps } from '../../tooltip/src/content.mjs';
6
+ import { iconPropType } from '../../../utils/vue/icon.mjs';
7
+ import { createCollectionWithScope } from '../../collection/src/collection.mjs';
18
8
 
19
- const { ButtonGroup: ElButtonGroup } = ElButton;
20
- const _sfc_main = defineComponent({
21
- name: "ElDropdown",
22
- components: {
23
- ElButton,
24
- ElButtonGroup,
25
- ElScrollbar,
26
- ElDropdownCollection: ElCollection,
27
- ElTooltip,
28
- ElRovingFocusGroup,
29
- ElOnlyChild: OnlyChild,
30
- ElIcon,
31
- ArrowDown
9
+ const dropdownProps = buildProps({
10
+ trigger: useTooltipTriggerProps.trigger,
11
+ triggerKeys: {
12
+ type: definePropType(Array),
13
+ default: () => [
14
+ EVENT_CODE.enter,
15
+ EVENT_CODE.numpadEnter,
16
+ EVENT_CODE.space,
17
+ EVENT_CODE.down
18
+ ]
32
19
  },
33
- props: dropdownProps,
34
- emits: ["visible-change", "click", "command"],
35
- setup(props, { emit }) {
36
- const _instance = getCurrentInstance();
37
- const ns = useNamespace("dropdown");
38
- const { t } = useLocale();
39
- const triggeringElementRef = ref();
40
- const referenceElementRef = ref();
41
- const popperRef = ref();
42
- const contentRef = ref();
43
- const scrollbar = ref(null);
44
- const currentTabId = ref(null);
45
- const isUsingKeyboard = ref(false);
46
- const wrapStyle = computed(() => ({
47
- maxHeight: addUnit(props.maxHeight)
48
- }));
49
- const dropdownTriggerKls = computed(() => [ns.m(dropdownSize.value)]);
50
- const trigger = computed(() => castArray(props.trigger));
51
- const defaultTriggerId = useId().value;
52
- const triggerId = computed(() => props.id || defaultTriggerId);
53
- watch([triggeringElementRef, trigger], ([triggeringElement, trigger2], [prevTriggeringElement]) => {
54
- var _a, _b, _c;
55
- if ((_a = prevTriggeringElement == null ? void 0 : prevTriggeringElement.$el) == null ? void 0 : _a.removeEventListener) {
56
- prevTriggeringElement.$el.removeEventListener("pointerenter", onAutofocusTriggerEnter);
57
- }
58
- if ((_b = triggeringElement == null ? void 0 : triggeringElement.$el) == null ? void 0 : _b.removeEventListener) {
59
- triggeringElement.$el.removeEventListener("pointerenter", onAutofocusTriggerEnter);
60
- }
61
- if (((_c = triggeringElement == null ? void 0 : triggeringElement.$el) == null ? void 0 : _c.addEventListener) && trigger2.includes("hover")) {
62
- triggeringElement.$el.addEventListener("pointerenter", onAutofocusTriggerEnter);
63
- }
64
- }, { immediate: true });
65
- onBeforeUnmount(() => {
66
- var _a, _b;
67
- if ((_b = (_a = triggeringElementRef.value) == null ? void 0 : _a.$el) == null ? void 0 : _b.removeEventListener) {
68
- triggeringElementRef.value.$el.removeEventListener("pointerenter", onAutofocusTriggerEnter);
69
- }
70
- });
71
- function handleClick() {
72
- handleClose();
73
- }
74
- function handleClose() {
75
- var _a;
76
- (_a = popperRef.value) == null ? void 0 : _a.onClose();
77
- }
78
- function handleOpen() {
79
- var _a;
80
- (_a = popperRef.value) == null ? void 0 : _a.onOpen();
81
- }
82
- const dropdownSize = useFormSize();
83
- function commandHandler(...args) {
84
- emit("command", ...args);
85
- }
86
- function onAutofocusTriggerEnter() {
87
- var _a, _b;
88
- (_b = (_a = triggeringElementRef.value) == null ? void 0 : _a.$el) == null ? void 0 : _b.focus();
89
- }
90
- function onItemEnter() {
91
- }
92
- function onItemLeave() {
93
- const contentEl = unref(contentRef);
94
- trigger.value.includes("hover") && (contentEl == null ? void 0 : contentEl.focus());
95
- currentTabId.value = null;
96
- }
97
- function handleCurrentTabIdChange(id) {
98
- currentTabId.value = id;
99
- }
100
- function handleEntryFocus(e) {
101
- if (!isUsingKeyboard.value) {
102
- e.preventDefault();
103
- e.stopImmediatePropagation();
104
- }
105
- }
106
- function handleBeforeShowTooltip() {
107
- emit("visible-change", true);
108
- }
109
- function handleShowTooltip(event) {
110
- var _a;
111
- if ((event == null ? void 0 : event.type) === "keydown") {
112
- (_a = contentRef.value) == null ? void 0 : _a.focus();
113
- }
114
- }
115
- function handleBeforeHideTooltip() {
116
- emit("visible-change", false);
117
- }
118
- provide(DROPDOWN_INJECTION_KEY, {
119
- contentRef,
120
- role: computed(() => props.role),
121
- triggerId,
122
- isUsingKeyboard,
123
- onItemEnter,
124
- onItemLeave
125
- });
126
- provide("elDropdown", {
127
- instance: _instance,
128
- dropdownSize,
129
- handleClick,
130
- commandHandler,
131
- trigger: toRef(props, "trigger"),
132
- hideOnClick: toRef(props, "hideOnClick")
133
- });
134
- const onFocusAfterTrapped = (e) => {
135
- var _a, _b;
136
- e.preventDefault();
137
- (_b = (_a = contentRef.value) == null ? void 0 : _a.focus) == null ? void 0 : _b.call(_a, {
138
- preventScroll: true
139
- });
140
- };
141
- const handlerMainButtonClick = (event) => {
142
- emit("click", event);
143
- };
144
- return {
145
- t,
146
- ns,
147
- scrollbar,
148
- wrapStyle,
149
- dropdownTriggerKls,
150
- dropdownSize,
151
- triggerId,
152
- currentTabId,
153
- handleCurrentTabIdChange,
154
- handlerMainButtonClick,
155
- handleEntryFocus,
156
- handleClose,
157
- handleOpen,
158
- handleBeforeShowTooltip,
159
- handleShowTooltip,
160
- handleBeforeHideTooltip,
161
- onFocusAfterTrapped,
162
- popperRef,
163
- contentRef,
164
- triggeringElementRef,
165
- referenceElementRef
166
- };
20
+ effect: {
21
+ ...useTooltipContentProps.effect,
22
+ default: "light"
23
+ },
24
+ type: {
25
+ type: definePropType(String)
26
+ },
27
+ placement: {
28
+ type: definePropType(String),
29
+ default: "bottom"
30
+ },
31
+ popperOptions: {
32
+ type: definePropType(Object),
33
+ default: () => ({})
34
+ },
35
+ id: String,
36
+ size: {
37
+ type: String,
38
+ default: ""
39
+ },
40
+ splitButton: Boolean,
41
+ hideOnClick: {
42
+ type: Boolean,
43
+ default: true
44
+ },
45
+ loop: {
46
+ type: Boolean,
47
+ default: true
48
+ },
49
+ showTimeout: {
50
+ type: Number,
51
+ default: 150
52
+ },
53
+ hideTimeout: {
54
+ type: Number,
55
+ default: 150
56
+ },
57
+ tabindex: {
58
+ type: definePropType([Number, String]),
59
+ default: 0
60
+ },
61
+ maxHeight: {
62
+ type: definePropType([Number, String]),
63
+ default: ""
64
+ },
65
+ popperClass: {
66
+ type: String,
67
+ default: ""
68
+ },
69
+ disabled: Boolean,
70
+ role: {
71
+ type: String,
72
+ values: roleTypes,
73
+ default: "menu"
74
+ },
75
+ buttonProps: {
76
+ type: definePropType(Object)
77
+ },
78
+ teleported: useTooltipContentProps.teleported,
79
+ persistent: {
80
+ type: Boolean,
81
+ default: true
167
82
  }
168
83
  });
169
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
170
- var _a;
171
- const _component_el_dropdown_collection = resolveComponent("el-dropdown-collection");
172
- const _component_el_roving_focus_group = resolveComponent("el-roving-focus-group");
173
- const _component_el_scrollbar = resolveComponent("el-scrollbar");
174
- const _component_el_only_child = resolveComponent("el-only-child");
175
- const _component_el_tooltip = resolveComponent("el-tooltip");
176
- const _component_el_button = resolveComponent("el-button");
177
- const _component_arrow_down = resolveComponent("arrow-down");
178
- const _component_el_icon = resolveComponent("el-icon");
179
- const _component_el_button_group = resolveComponent("el-button-group");
180
- return openBlock(), createElementBlock("div", {
181
- class: normalizeClass([_ctx.ns.b(), _ctx.ns.is("disabled", _ctx.disabled)])
182
- }, [
183
- createVNode(_component_el_tooltip, {
184
- ref: "popperRef",
185
- role: _ctx.role,
186
- effect: _ctx.effect,
187
- "fallback-placements": ["bottom", "top"],
188
- "popper-options": _ctx.popperOptions,
189
- "gpu-acceleration": false,
190
- "hide-after": _ctx.trigger === "hover" ? _ctx.hideTimeout : 0,
191
- "manual-mode": true,
192
- placement: _ctx.placement,
193
- "popper-class": [_ctx.ns.e("popper"), _ctx.popperClass],
194
- "reference-element": (_a = _ctx.referenceElementRef) == null ? void 0 : _a.$el,
195
- trigger: _ctx.trigger,
196
- "trigger-keys": _ctx.triggerKeys,
197
- "trigger-target-el": _ctx.contentRef,
198
- "show-after": _ctx.trigger === "hover" ? _ctx.showTimeout : 0,
199
- "stop-popper-mouse-event": false,
200
- "virtual-ref": _ctx.triggeringElementRef,
201
- "virtual-triggering": _ctx.splitButton,
202
- disabled: _ctx.disabled,
203
- transition: `${_ctx.ns.namespace.value}-zoom-in-top`,
204
- teleported: _ctx.teleported,
205
- pure: "",
206
- persistent: _ctx.persistent,
207
- onBeforeShow: _ctx.handleBeforeShowTooltip,
208
- onShow: _ctx.handleShowTooltip,
209
- onBeforeHide: _ctx.handleBeforeHideTooltip
210
- }, createSlots({
211
- content: withCtx(() => [
212
- createVNode(_component_el_scrollbar, {
213
- ref: "scrollbar",
214
- "wrap-style": _ctx.wrapStyle,
215
- tag: "div",
216
- "view-class": _ctx.ns.e("list")
217
- }, {
218
- default: withCtx(() => [
219
- createVNode(_component_el_roving_focus_group, {
220
- loop: _ctx.loop,
221
- "current-tab-id": _ctx.currentTabId,
222
- orientation: "horizontal",
223
- onCurrentTabIdChange: _ctx.handleCurrentTabIdChange,
224
- onEntryFocus: _ctx.handleEntryFocus
225
- }, {
226
- default: withCtx(() => [
227
- createVNode(_component_el_dropdown_collection, null, {
228
- default: withCtx(() => [
229
- renderSlot(_ctx.$slots, "dropdown")
230
- ]),
231
- _: 3
232
- })
233
- ]),
234
- _: 3
235
- }, 8, ["loop", "current-tab-id", "onCurrentTabIdChange", "onEntryFocus"])
236
- ]),
237
- _: 3
238
- }, 8, ["wrap-style", "view-class"])
239
- ]),
240
- _: 2
241
- }, [
242
- !_ctx.splitButton ? {
243
- name: "default",
244
- fn: withCtx(() => [
245
- createVNode(_component_el_only_child, {
246
- id: _ctx.triggerId,
247
- ref: "triggeringElementRef",
248
- role: "button",
249
- tabindex: _ctx.tabindex
250
- }, {
251
- default: withCtx(() => [
252
- renderSlot(_ctx.$slots, "default")
253
- ]),
254
- _: 3
255
- }, 8, ["id", "tabindex"])
256
- ])
257
- } : void 0
258
- ]), 1032, ["role", "effect", "popper-options", "hide-after", "placement", "popper-class", "reference-element", "trigger", "trigger-keys", "trigger-target-el", "show-after", "virtual-ref", "virtual-triggering", "disabled", "transition", "teleported", "persistent", "onBeforeShow", "onShow", "onBeforeHide"]),
259
- _ctx.splitButton ? (openBlock(), createBlock(_component_el_button_group, { key: 0 }, {
260
- default: withCtx(() => [
261
- createVNode(_component_el_button, mergeProps({ ref: "referenceElementRef" }, _ctx.buttonProps, {
262
- size: _ctx.dropdownSize,
263
- type: _ctx.type,
264
- disabled: _ctx.disabled,
265
- tabindex: _ctx.tabindex,
266
- onClick: _ctx.handlerMainButtonClick
267
- }), {
268
- default: withCtx(() => [
269
- renderSlot(_ctx.$slots, "default")
270
- ]),
271
- _: 3
272
- }, 16, ["size", "type", "disabled", "tabindex", "onClick"]),
273
- createVNode(_component_el_button, mergeProps({
274
- id: _ctx.triggerId,
275
- ref: "triggeringElementRef"
276
- }, _ctx.buttonProps, {
277
- role: "button",
278
- size: _ctx.dropdownSize,
279
- type: _ctx.type,
280
- class: _ctx.ns.e("caret-button"),
281
- disabled: _ctx.disabled,
282
- tabindex: _ctx.tabindex,
283
- "aria-label": _ctx.t("el.dropdown.toggleDropdown")
284
- }), {
285
- default: withCtx(() => [
286
- createVNode(_component_el_icon, {
287
- class: normalizeClass(_ctx.ns.e("icon"))
288
- }, {
289
- default: withCtx(() => [
290
- createVNode(_component_arrow_down)
291
- ]),
292
- _: 1
293
- }, 8, ["class"])
294
- ]),
295
- _: 1
296
- }, 16, ["id", "size", "type", "class", "disabled", "tabindex", "aria-label"])
297
- ]),
298
- _: 3
299
- })) : createCommentVNode("v-if", true)
300
- ], 2);
301
- }
302
- var Dropdown = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "dropdown.vue"]]);
84
+ const dropdownItemProps = buildProps({
85
+ command: {
86
+ type: [Object, String, Number],
87
+ default: () => ({})
88
+ },
89
+ disabled: Boolean,
90
+ divided: Boolean,
91
+ textValue: String,
92
+ icon: {
93
+ type: iconPropType
94
+ }
95
+ });
96
+ const dropdownMenuProps = buildProps({
97
+ onKeydown: { type: definePropType(Function) }
98
+ });
99
+ const FIRST_KEYS = [
100
+ EVENT_CODE.down,
101
+ EVENT_CODE.pageDown,
102
+ EVENT_CODE.home
103
+ ];
104
+ const LAST_KEYS = [EVENT_CODE.up, EVENT_CODE.pageUp, EVENT_CODE.end];
105
+ const FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS];
106
+ const {
107
+ ElCollection,
108
+ ElCollectionItem,
109
+ COLLECTION_INJECTION_KEY,
110
+ COLLECTION_ITEM_INJECTION_KEY
111
+ } = createCollectionWithScope("Dropdown");
303
112
 
304
- export { Dropdown as default };
113
+ export { COLLECTION_INJECTION_KEY as DROPDOWN_COLLECTION_INJECTION_KEY, COLLECTION_ITEM_INJECTION_KEY as DROPDOWN_COLLECTION_ITEM_INJECTION_KEY, ElCollection, ElCollectionItem, FIRST_KEYS, FIRST_LAST_KEYS, LAST_KEYS, dropdownItemProps, dropdownMenuProps, dropdownProps };
305
114
  //# sourceMappingURL=dropdown2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown2.mjs","sources":["../../../../../../packages/components/dropdown/src/dropdown.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.b(), ns.is('disabled', disabled)]\">\n <el-tooltip\n ref=\"popperRef\"\n :role=\"role\"\n :effect=\"effect\"\n :fallback-placements=\"['bottom', 'top']\"\n :popper-options=\"popperOptions\"\n :gpu-acceleration=\"false\"\n :hide-after=\"trigger === 'hover' ? hideTimeout : 0\"\n :manual-mode=\"true\"\n :placement=\"placement\"\n :popper-class=\"[ns.e('popper'), popperClass]\"\n :reference-element=\"referenceElementRef?.$el\"\n :trigger=\"trigger\"\n :trigger-keys=\"triggerKeys\"\n :trigger-target-el=\"contentRef\"\n :show-after=\"trigger === 'hover' ? showTimeout : 0\"\n :stop-popper-mouse-event=\"false\"\n :virtual-ref=\"triggeringElementRef\"\n :virtual-triggering=\"splitButton\"\n :disabled=\"disabled\"\n :transition=\"`${ns.namespace.value}-zoom-in-top`\"\n :teleported=\"teleported\"\n pure\n :persistent=\"persistent\"\n @before-show=\"handleBeforeShowTooltip\"\n @show=\"handleShowTooltip\"\n @before-hide=\"handleBeforeHideTooltip\"\n >\n <template #content>\n <el-scrollbar\n ref=\"scrollbar\"\n :wrap-style=\"wrapStyle\"\n tag=\"div\"\n :view-class=\"ns.e('list')\"\n >\n <el-roving-focus-group\n :loop=\"loop\"\n :current-tab-id=\"currentTabId\"\n orientation=\"horizontal\"\n @current-tab-id-change=\"handleCurrentTabIdChange\"\n @entry-focus=\"handleEntryFocus\"\n >\n <el-dropdown-collection>\n <slot name=\"dropdown\" />\n </el-dropdown-collection>\n </el-roving-focus-group>\n </el-scrollbar>\n </template>\n <template v-if=\"!splitButton\" #default>\n <el-only-child\n :id=\"triggerId\"\n ref=\"triggeringElementRef\"\n role=\"button\"\n :tabindex=\"tabindex\"\n >\n <slot name=\"default\" />\n </el-only-child>\n </template>\n </el-tooltip>\n <template v-if=\"splitButton\">\n <el-button-group>\n <el-button\n ref=\"referenceElementRef\"\n v-bind=\"buttonProps\"\n :size=\"dropdownSize\"\n :type=\"type\"\n :disabled=\"disabled\"\n :tabindex=\"tabindex\"\n @click=\"handlerMainButtonClick\"\n >\n <slot name=\"default\" />\n </el-button>\n <el-button\n :id=\"triggerId\"\n ref=\"triggeringElementRef\"\n v-bind=\"buttonProps\"\n role=\"button\"\n :size=\"dropdownSize\"\n :type=\"type\"\n :class=\"ns.e('caret-button')\"\n :disabled=\"disabled\"\n :tabindex=\"tabindex\"\n :aria-label=\"t('el.dropdown.toggleDropdown')\"\n >\n <el-icon :class=\"ns.e('icon')\"><arrow-down /></el-icon>\n </el-button>\n </el-button-group>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n ref,\n toRef,\n unref,\n watch,\n} from 'vue'\nimport ElButton from '@element-plus/components/button'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElIcon from '@element-plus/components/icon'\nimport ElRovingFocusGroup from '@element-plus/components/roving-focus-group'\nimport { ElOnlyChild } from '@element-plus/components/slot'\nimport { useFormSize } from '@element-plus/components/form'\nimport { addUnit, ensureArray } from '@element-plus/utils'\nimport { ArrowDown } from '@element-plus/icons-vue'\nimport { useId, useLocale, useNamespace } from '@element-plus/hooks'\nimport { ElCollection as ElDropdownCollection, dropdownProps } from './dropdown'\nimport { DROPDOWN_INJECTION_KEY } from './tokens'\n\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type { CSSProperties } from 'vue'\n\nconst { ButtonGroup: ElButtonGroup } = ElButton\n\nexport default defineComponent({\n name: 'ElDropdown',\n components: {\n ElButton,\n ElButtonGroup,\n ElScrollbar,\n ElDropdownCollection,\n ElTooltip,\n ElRovingFocusGroup,\n ElOnlyChild,\n ElIcon,\n ArrowDown,\n },\n props: dropdownProps,\n emits: ['visible-change', 'click', 'command'],\n setup(props, { emit }) {\n const _instance = getCurrentInstance()\n const ns = useNamespace('dropdown')\n const { t } = useLocale()\n\n const triggeringElementRef = ref()\n const referenceElementRef = ref()\n const popperRef = ref<TooltipInstance>()\n const contentRef = ref<HTMLElement>()\n const scrollbar = ref(null)\n const currentTabId = ref<string | null>(null)\n const isUsingKeyboard = ref(false)\n\n const wrapStyle = computed<CSSProperties>(() => ({\n maxHeight: addUnit(props.maxHeight),\n }))\n const dropdownTriggerKls = computed(() => [ns.m(dropdownSize.value)])\n const trigger = computed(() => ensureArray(props.trigger))\n\n const defaultTriggerId = useId().value\n const triggerId = computed<string>(() => props.id || defaultTriggerId)\n\n // The goal of this code is to focus on the tooltip triggering element when it is hovered.\n // This is a temporary fix for where closing the dropdown through pointerleave event focuses on a\n // completely different element. For a permanent solution, remove all calls to any \"element.focus()\"\n // that are triggered through pointer enter/leave events.\n watch(\n [triggeringElementRef, trigger],\n ([triggeringElement, trigger], [prevTriggeringElement]) => {\n if (prevTriggeringElement?.$el?.removeEventListener) {\n prevTriggeringElement.$el.removeEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n if (triggeringElement?.$el?.removeEventListener) {\n triggeringElement.$el.removeEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n if (\n triggeringElement?.$el?.addEventListener &&\n trigger.includes('hover')\n ) {\n triggeringElement.$el.addEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n },\n { immediate: true }\n )\n\n onBeforeUnmount(() => {\n if (triggeringElementRef.value?.$el?.removeEventListener) {\n triggeringElementRef.value.$el.removeEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n })\n\n function handleClick() {\n handleClose()\n }\n\n function handleClose() {\n popperRef.value?.onClose()\n }\n\n function handleOpen() {\n popperRef.value?.onOpen()\n }\n\n const dropdownSize = useFormSize()\n\n function commandHandler(...args: any[]) {\n emit('command', ...args)\n }\n\n function onAutofocusTriggerEnter() {\n triggeringElementRef.value?.$el?.focus()\n }\n\n function onItemEnter() {\n // NOOP for now\n }\n\n function onItemLeave() {\n const contentEl = unref(contentRef)\n\n trigger.value.includes('hover') && contentEl?.focus()\n currentTabId.value = null\n }\n\n function handleCurrentTabIdChange(id: string) {\n currentTabId.value = id\n }\n\n function handleEntryFocus(e: Event) {\n if (!isUsingKeyboard.value) {\n e.preventDefault()\n e.stopImmediatePropagation()\n }\n }\n\n function handleBeforeShowTooltip() {\n emit('visible-change', true)\n }\n\n function handleShowTooltip(event?: Event) {\n if (event?.type === 'keydown') {\n contentRef.value?.focus()\n }\n }\n\n function handleBeforeHideTooltip() {\n emit('visible-change', false)\n }\n\n provide(DROPDOWN_INJECTION_KEY, {\n contentRef,\n role: computed(() => props.role),\n triggerId,\n isUsingKeyboard,\n onItemEnter,\n onItemLeave,\n })\n\n provide('elDropdown', {\n instance: _instance,\n dropdownSize,\n handleClick,\n commandHandler,\n trigger: toRef(props, 'trigger'),\n hideOnClick: toRef(props, 'hideOnClick'),\n })\n\n const onFocusAfterTrapped = (e: Event) => {\n e.preventDefault()\n contentRef.value?.focus?.({\n preventScroll: true,\n })\n }\n\n const handlerMainButtonClick = (event: MouseEvent) => {\n emit('click', event)\n }\n\n return {\n t,\n ns,\n scrollbar,\n wrapStyle,\n dropdownTriggerKls,\n dropdownSize,\n triggerId,\n currentTabId,\n handleCurrentTabIdChange,\n handlerMainButtonClick,\n handleEntryFocus,\n handleClose,\n handleOpen,\n handleBeforeShowTooltip,\n handleShowTooltip,\n handleBeforeHideTooltip,\n onFocusAfterTrapped,\n popperRef,\n contentRef,\n triggeringElementRef,\n referenceElementRef,\n }\n },\n})\n</script>\n"],"names":["ElDropdownCollection","ElOnlyChild","ensureArray","_resolveComponent","_createSlots","_withCtx","_createVNode","_openBlock","_createBlock","_mergeProps","_createCommentVNode"],"mappings":"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"}
1
+ {"version":3,"file":"dropdown2.mjs","sources":["../../../../../../packages/components/dropdown/src/dropdown.ts"],"sourcesContent":["import { buildProps, definePropType, iconPropType } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { createCollectionWithScope } from '@element-plus/components/collection'\nimport {\n useTooltipContentProps,\n useTooltipTriggerProps,\n} from '@element-plus/components/tooltip'\n\nimport { type Placement, roleTypes } from '@element-plus/components/popper'\nimport type { Options } from '@popperjs/core'\nimport type { ButtonProps, ButtonType } from '@element-plus/components/button'\nimport type { ComponentInternalInstance, ComputedRef } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\n\nexport interface IElDropdownInstance {\n instance?: ComponentInternalInstance\n dropdownSize?: ComputedRef<string>\n handleClick?: () => void\n commandHandler?: (...arg: any[]) => void\n show?: () => void\n hide?: () => void\n trigger?: ComputedRef<string>\n hideOnClick?: ComputedRef<boolean>\n triggerElm?: ComputedRef<Nullable<HTMLButtonElement>>\n}\n\nexport const dropdownProps = buildProps({\n /**\n * @description how to trigger\n */\n trigger: useTooltipTriggerProps.trigger,\n triggerKeys: {\n type: definePropType<string[]>(Array),\n default: () => [\n EVENT_CODE.enter,\n EVENT_CODE.numpadEnter,\n EVENT_CODE.space,\n EVENT_CODE.down,\n ],\n },\n effect: {\n ...useTooltipContentProps.effect,\n default: 'light',\n },\n /**\n * @description menu button type, refer to `Button` Component, only works when `split-button` is true\n */\n type: {\n type: definePropType<ButtonType>(String),\n },\n /**\n * @description placement of pop menu\n */\n placement: {\n type: definePropType<Placement>(String),\n default: 'bottom',\n },\n /**\n * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n */\n popperOptions: {\n type: definePropType<Partial<Options>>(Object),\n default: () => ({}),\n },\n id: String,\n /**\n * @description menu size, also works on the split button\n */\n size: {\n type: String,\n default: '',\n },\n /**\n * @description whether a button group is displayed\n */\n splitButton: Boolean,\n /**\n * @description whether to hide menu after clicking menu-item\n */\n hideOnClick: {\n type: Boolean,\n default: true,\n },\n loop: {\n type: Boolean,\n default: true,\n },\n /**\n * @description delay time before show a dropdown (only works when trigger is `hover`)\n */\n showTimeout: {\n type: Number,\n default: 150,\n },\n /**\n * @description delay time before hide a dropdown (only works when trigger is `hover`)\n */\n hideTimeout: {\n type: Number,\n default: 150,\n },\n /**\n * @description [tabindex](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) of Dropdown\n */\n tabindex: {\n type: definePropType<number | string>([Number, String]),\n default: 0,\n },\n /**\n * @description the max height of menu\n */\n maxHeight: {\n type: definePropType<number | string>([Number, String]),\n default: '',\n },\n /**\n * @description custom class name for Dropdown's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description whether to disable\n */\n disabled: Boolean,\n /**\n * @description the ARIA role attribute for the dropdown menu. Depending on the use case, you may want to change this to 'navigation'\n */\n role: {\n type: String,\n values: roleTypes,\n default: 'menu',\n },\n buttonProps: {\n type: definePropType<Partial<ButtonProps>>(Object),\n },\n /**\n * @description whether the dropdown popup is teleported to the body\n */\n teleported: useTooltipContentProps.teleported,\n /**\n * @description when dropdown inactive and `persistent` is `false` , dropdown menu will be destroyed\n */\n persistent: {\n type: Boolean,\n default: true,\n },\n} as const)\n\nexport const dropdownItemProps = buildProps({\n /**\n * @description a command to be dispatched to Dropdown's `command` callback\n */\n command: {\n type: [Object, String, Number],\n default: () => ({}),\n },\n /**\n * @description whether the item is disabled\n */\n disabled: Boolean,\n /**\n * @description whether a divider is displayed\n */\n divided: Boolean,\n textValue: String,\n /**\n * @description custom icon\n */\n icon: {\n type: iconPropType,\n },\n} as const)\n\nexport const dropdownMenuProps = buildProps({\n onKeydown: { type: definePropType<(e: KeyboardEvent) => void>(Function) },\n})\n\nexport const FIRST_KEYS = [\n EVENT_CODE.down,\n EVENT_CODE.pageDown,\n EVENT_CODE.home,\n]\n\nexport const LAST_KEYS = [EVENT_CODE.up, EVENT_CODE.pageUp, EVENT_CODE.end]\n\nexport const FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS]\n\nconst {\n ElCollection,\n ElCollectionItem,\n COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY,\n} = createCollectionWithScope('Dropdown')\n\nexport {\n ElCollection,\n ElCollectionItem,\n COLLECTION_INJECTION_KEY as DROPDOWN_COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY as DROPDOWN_COLLECTION_ITEM_INJECTION_KEY,\n}\n"],"names":[],"mappings":"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"}
@@ -28,12 +28,7 @@ export declare const formProps: {
28
28
  readonly validateOnRuleChange: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
29
29
  readonly hideRequiredAsterisk: BooleanConstructor;
30
30
  readonly scrollToError: BooleanConstructor;
31
- readonly scrollIntoViewOptions: {
32
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown>>;
33
- readonly required: false;
34
- readonly validator: ((val: unknown) => boolean) | undefined;
35
- __epPropKey: true;
36
- };
31
+ readonly scrollIntoViewOptions: import("@element-plus/nightly/es/utils").EpPropFinalized<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown, true, boolean>;
37
32
  readonly size: {
38
33
  readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", unknown>>;
39
34
  readonly required: false;
@@ -48,7 +48,8 @@ const formProps = buildProps({
48
48
  hideRequiredAsterisk: Boolean,
49
49
  scrollToError: Boolean,
50
50
  scrollIntoViewOptions: {
51
- type: [Object, Boolean]
51
+ type: [Object, Boolean],
52
+ default: true
52
53
  }
53
54
  });
54
55
  const formEmits = {
@@ -1 +1 @@
1
- {"version":3,"file":"form.mjs","sources":["../../../../../../packages/components/form/src/form.ts"],"sourcesContent":["import { componentSizes } from '@element-plus/constants'\nimport {\n buildProps,\n definePropType,\n isArray,\n isBoolean,\n isString,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { FormItemProp } from './form-item'\nimport type { FormRules } from './types'\n\nexport const formMetaProps = buildProps({\n /**\n * @description Control the size of components in this form.\n */\n size: {\n type: String,\n values: componentSizes,\n },\n /**\n * @description Whether to disable all components in this form. If set to `true`, it will override the `disabled` prop of the inner component.\n */\n disabled: Boolean,\n} as const)\n\nexport const formProps = buildProps({\n ...formMetaProps,\n /**\n * @description Data of form component.\n */\n model: Object,\n /**\n * @description Validation rules of form.\n */\n rules: {\n type: definePropType<FormRules>(Object),\n },\n /**\n * @description Position of label. If set to `'left'` or `'right'`, `label-width` prop is also required.\n */\n labelPosition: {\n type: String,\n values: ['left', 'right', 'top'],\n default: 'right',\n },\n /**\n * @description Position of asterisk.\n */\n requireAsteriskPosition: {\n type: String,\n values: ['left', 'right'],\n default: 'left',\n },\n /**\n * @description Width of label, e.g. `'50px'`. All its direct child form items will inherit this value. `auto` is supported.\n */\n labelWidth: {\n type: [String, Number],\n default: '',\n },\n /**\n * @description Suffix of the label.\n */\n labelSuffix: {\n type: String,\n default: '',\n },\n /**\n * @description Whether the form is inline.\n */\n inline: Boolean,\n /**\n * @description Whether to display the error message inline with the form item.\n */\n inlineMessage: Boolean,\n /**\n * @description Whether to display an icon indicating the validation result.\n */\n statusIcon: Boolean,\n /**\n * @description Whether to show the error message.\n */\n showMessage: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Whether to trigger validation when the `rules` prop is changed.\n */\n validateOnRuleChange: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Whether to hide required fields should have a red asterisk (star) beside their labels.\n */\n hideRequiredAsterisk: Boolean,\n /**\n * @description When validation fails, scroll to the first error form entry.\n */\n scrollToError: Boolean,\n /**\n * @description When validation fails, it scrolls to the first error item based on the scrollIntoView option.\n */\n scrollIntoViewOptions: {\n type: [Object, Boolean],\n },\n} as const)\nexport type FormProps = ExtractPropTypes<typeof formProps>\nexport type FormMetaProps = ExtractPropTypes<typeof formMetaProps>\n\nexport const formEmits = {\n validate: (prop: FormItemProp, isValid: boolean, message: string) =>\n (isArray(prop) || isString(prop)) &&\n isBoolean(isValid) &&\n isString(message),\n}\nexport type FormEmits = typeof formEmits\n"],"names":[],"mappings":";;;;;AAQY,MAAC,aAAa,GAAG,UAAU,CAAC;AACxC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,cAAc;AAC1B,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,CAAC,EAAE;AACS,MAAC,SAAS,GAAG,UAAU,CAAC;AACpC,EAAE,GAAG,aAAa;AAClB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;AACpC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,uBAAuB,EAAE;AAC3B,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC7B,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,oBAAoB,EAAE,OAAO;AAC/B,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,qBAAqB,EAAE;AACzB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC3B,GAAG;AACH,CAAC,EAAE;AACS,MAAC,SAAS,GAAG;AACzB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC;AACpH;;;;"}
1
+ {"version":3,"file":"form.mjs","sources":["../../../../../../packages/components/form/src/form.ts"],"sourcesContent":["import { componentSizes } from '@element-plus/constants'\nimport {\n buildProps,\n definePropType,\n isArray,\n isBoolean,\n isString,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { FormItemProp } from './form-item'\nimport type { FormRules } from './types'\n\nexport const formMetaProps = buildProps({\n /**\n * @description Control the size of components in this form.\n */\n size: {\n type: String,\n values: componentSizes,\n },\n /**\n * @description Whether to disable all components in this form. If set to `true`, it will override the `disabled` prop of the inner component.\n */\n disabled: Boolean,\n} as const)\n\nexport const formProps = buildProps({\n ...formMetaProps,\n /**\n * @description Data of form component.\n */\n model: Object,\n /**\n * @description Validation rules of form.\n */\n rules: {\n type: definePropType<FormRules>(Object),\n },\n /**\n * @description Position of label. If set to `'left'` or `'right'`, `label-width` prop is also required.\n */\n labelPosition: {\n type: String,\n values: ['left', 'right', 'top'],\n default: 'right',\n },\n /**\n * @description Position of asterisk.\n */\n requireAsteriskPosition: {\n type: String,\n values: ['left', 'right'],\n default: 'left',\n },\n /**\n * @description Width of label, e.g. `'50px'`. All its direct child form items will inherit this value. `auto` is supported.\n */\n labelWidth: {\n type: [String, Number],\n default: '',\n },\n /**\n * @description Suffix of the label.\n */\n labelSuffix: {\n type: String,\n default: '',\n },\n /**\n * @description Whether the form is inline.\n */\n inline: Boolean,\n /**\n * @description Whether to display the error message inline with the form item.\n */\n inlineMessage: Boolean,\n /**\n * @description Whether to display an icon indicating the validation result.\n */\n statusIcon: Boolean,\n /**\n * @description Whether to show the error message.\n */\n showMessage: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Whether to trigger validation when the `rules` prop is changed.\n */\n validateOnRuleChange: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Whether to hide required fields should have a red asterisk (star) beside their labels.\n */\n hideRequiredAsterisk: Boolean,\n /**\n * @description When validation fails, scroll to the first error form entry.\n */\n scrollToError: Boolean,\n /**\n * @description When validation fails, it scrolls to the first error item based on the scrollIntoView option.\n */\n scrollIntoViewOptions: {\n type: [Object, Boolean],\n default: true,\n },\n} as const)\nexport type FormProps = ExtractPropTypes<typeof formProps>\nexport type FormMetaProps = ExtractPropTypes<typeof formMetaProps>\n\nexport const formEmits = {\n validate: (prop: FormItemProp, isValid: boolean, message: string) =>\n (isArray(prop) || isString(prop)) &&\n isBoolean(isValid) &&\n isString(message),\n}\nexport type FormEmits = typeof formEmits\n"],"names":[],"mappings":";;;;;AAQY,MAAC,aAAa,GAAG,UAAU,CAAC;AACxC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,cAAc;AAC1B,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,CAAC,EAAE;AACS,MAAC,SAAS,GAAG,UAAU,CAAC;AACpC,EAAE,GAAG,aAAa;AAClB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;AACpC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,uBAAuB,EAAE;AAC3B,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC7B,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,oBAAoB,EAAE,OAAO;AAC/B,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,qBAAqB,EAAE;AACzB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC3B,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,SAAS,GAAG;AACzB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC;AACpH;;;;"}
@@ -23,12 +23,7 @@ declare const __VLS_component: import("vue").DefineComponent<{
23
23
  readonly validateOnRuleChange: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
24
24
  readonly hideRequiredAsterisk: BooleanConstructor;
25
25
  readonly scrollToError: BooleanConstructor;
26
- readonly scrollIntoViewOptions: {
27
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown>>;
28
- readonly required: false;
29
- readonly validator: ((val: unknown) => boolean) | undefined;
30
- __epPropKey: true;
31
- };
26
+ readonly scrollIntoViewOptions: import("@element-plus/nightly/es/utils").EpPropFinalized<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown, true, boolean>;
32
27
  readonly size: {
33
28
  readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", unknown>>;
34
29
  readonly required: false;
@@ -649,12 +644,7 @@ declare const __VLS_component: import("vue").DefineComponent<{
649
644
  readonly validateOnRuleChange: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
650
645
  readonly hideRequiredAsterisk: BooleanConstructor;
651
646
  readonly scrollToError: BooleanConstructor;
652
- readonly scrollIntoViewOptions: {
653
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown>>;
654
- readonly required: false;
655
- readonly validator: ((val: unknown) => boolean) | undefined;
656
- __epPropKey: true;
657
- };
647
+ readonly scrollIntoViewOptions: import("@element-plus/nightly/es/utils").EpPropFinalized<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown, true, boolean>;
658
648
  readonly size: {
659
649
  readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", unknown>>;
660
650
  readonly required: false;
@@ -674,6 +664,7 @@ declare const __VLS_component: import("vue").DefineComponent<{
674
664
  readonly requireAsteriskPosition: import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "left" | "right", unknown>;
675
665
  readonly labelSuffix: string;
676
666
  readonly validateOnRuleChange: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
667
+ readonly scrollIntoViewOptions: import("@element-plus/nightly/es/utils").EpPropMergeType<readonly [ObjectConstructor, BooleanConstructor], unknown, unknown>;
677
668
  readonly statusIcon: boolean;
678
669
  readonly hideRequiredAsterisk: boolean;
679
670
  readonly scrollToError: boolean;
@@ -1,4 +1,4 @@
1
- import { defineComponent, reactive, computed, watch, provide, toRefs, openBlock, createElementBlock, normalizeClass, unref, renderSlot } from 'vue';
1
+ import { defineComponent, ref, reactive, computed, watch, provide, toRefs, openBlock, createElementBlock, normalizeClass, unref, renderSlot } from 'vue';
2
2
  import { formContextKey } from './constants.mjs';
3
3
  import { formProps, formEmits } from './form.mjs';
4
4
  import { useFormLabelWidth, filterFields } from './utils.mjs';
@@ -18,6 +18,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
18
18
  emits: formEmits,
19
19
  setup(__props, { expose, emit }) {
20
20
  const props = __props;
21
+ const formRef = ref();
21
22
  const fields = reactive([]);
22
23
  const formSize = useFormSize();
23
24
  const ns = useNamespace("form");
@@ -107,7 +108,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
107
108
  throw e;
108
109
  const invalidFields = e;
109
110
  if (props.scrollToError) {
110
- scrollToField(Object.keys(invalidFields)[0]);
111
+ if (formRef.value) {
112
+ const formItem = formRef.value.querySelector(`.${ns.b()}-item.is-error`);
113
+ formItem == null ? void 0 : formItem.scrollIntoView(props.scrollIntoViewOptions);
114
+ }
111
115
  }
112
116
  await (callback == null ? void 0 : callback(false, invalidFields));
113
117
  return shouldThrow && Promise.reject(invalidFields);
@@ -146,6 +150,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
146
150
  });
147
151
  return (_ctx, _cache) => {
148
152
  return openBlock(), createElementBlock("form", {
153
+ ref_key: "formRef",
154
+ ref: formRef,
149
155
  class: normalizeClass(unref(formClasses))
150
156
  }, [
151
157
  renderSlot(_ctx.$slots, "default")