@element-plus/nightly 0.0.20250214 → 0.0.20250217

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 (558) hide show
  1. package/dist/index.full.js +12 -6
  2. package/dist/index.full.min.js +10 -10
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +10 -10
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +12 -6
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar-eg.js +1 -1
  12. package/dist/locale/ar-eg.min.js +1 -1
  13. package/dist/locale/ar-eg.min.mjs +1 -1
  14. package/dist/locale/ar-eg.mjs +1 -1
  15. package/dist/locale/ar.js +1 -1
  16. package/dist/locale/ar.min.js +1 -1
  17. package/dist/locale/ar.min.mjs +1 -1
  18. package/dist/locale/ar.mjs +1 -1
  19. package/dist/locale/az.js +1 -1
  20. package/dist/locale/az.min.js +1 -1
  21. package/dist/locale/az.min.mjs +1 -1
  22. package/dist/locale/az.mjs +1 -1
  23. package/dist/locale/bg.js +1 -1
  24. package/dist/locale/bg.min.js +1 -1
  25. package/dist/locale/bg.min.mjs +1 -1
  26. package/dist/locale/bg.mjs +1 -1
  27. package/dist/locale/bn.js +1 -1
  28. package/dist/locale/bn.min.js +1 -1
  29. package/dist/locale/bn.min.mjs +1 -1
  30. package/dist/locale/bn.mjs +1 -1
  31. package/dist/locale/ca.js +1 -1
  32. package/dist/locale/ca.min.js +1 -1
  33. package/dist/locale/ca.min.mjs +1 -1
  34. package/dist/locale/ca.mjs +1 -1
  35. package/dist/locale/ckb.js +1 -1
  36. package/dist/locale/ckb.min.js +1 -1
  37. package/dist/locale/ckb.min.mjs +1 -1
  38. package/dist/locale/ckb.mjs +1 -1
  39. package/dist/locale/cs.js +1 -1
  40. package/dist/locale/cs.min.js +1 -1
  41. package/dist/locale/cs.min.mjs +1 -1
  42. package/dist/locale/cs.mjs +1 -1
  43. package/dist/locale/da.js +1 -1
  44. package/dist/locale/da.min.js +1 -1
  45. package/dist/locale/da.min.mjs +1 -1
  46. package/dist/locale/da.mjs +1 -1
  47. package/dist/locale/de.js +1 -1
  48. package/dist/locale/de.min.js +1 -1
  49. package/dist/locale/de.min.mjs +1 -1
  50. package/dist/locale/de.mjs +1 -1
  51. package/dist/locale/el.js +1 -1
  52. package/dist/locale/el.min.js +1 -1
  53. package/dist/locale/el.min.mjs +1 -1
  54. package/dist/locale/el.mjs +1 -1
  55. package/dist/locale/en.js +1 -1
  56. package/dist/locale/en.min.js +1 -1
  57. package/dist/locale/en.min.mjs +1 -1
  58. package/dist/locale/en.mjs +1 -1
  59. package/dist/locale/eo.js +1 -1
  60. package/dist/locale/eo.min.js +1 -1
  61. package/dist/locale/eo.min.mjs +1 -1
  62. package/dist/locale/eo.mjs +1 -1
  63. package/dist/locale/es.js +1 -1
  64. package/dist/locale/es.min.js +1 -1
  65. package/dist/locale/es.min.mjs +1 -1
  66. package/dist/locale/es.mjs +1 -1
  67. package/dist/locale/et.js +1 -1
  68. package/dist/locale/et.min.js +1 -1
  69. package/dist/locale/et.min.mjs +1 -1
  70. package/dist/locale/et.mjs +1 -1
  71. package/dist/locale/eu.js +1 -1
  72. package/dist/locale/eu.min.js +1 -1
  73. package/dist/locale/eu.min.mjs +1 -1
  74. package/dist/locale/eu.mjs +1 -1
  75. package/dist/locale/fa.js +1 -1
  76. package/dist/locale/fa.min.js +1 -1
  77. package/dist/locale/fa.min.mjs +1 -1
  78. package/dist/locale/fa.mjs +1 -1
  79. package/dist/locale/fi.js +1 -1
  80. package/dist/locale/fi.min.js +1 -1
  81. package/dist/locale/fi.min.mjs +1 -1
  82. package/dist/locale/fi.mjs +1 -1
  83. package/dist/locale/fr.js +1 -1
  84. package/dist/locale/fr.min.js +1 -1
  85. package/dist/locale/fr.min.mjs +1 -1
  86. package/dist/locale/fr.mjs +1 -1
  87. package/dist/locale/he.js +1 -1
  88. package/dist/locale/he.min.js +1 -1
  89. package/dist/locale/he.min.mjs +1 -1
  90. package/dist/locale/he.mjs +1 -1
  91. package/dist/locale/hi.js +1 -1
  92. package/dist/locale/hi.min.js +1 -1
  93. package/dist/locale/hi.min.mjs +1 -1
  94. package/dist/locale/hi.mjs +1 -1
  95. package/dist/locale/hr.js +1 -1
  96. package/dist/locale/hr.min.js +1 -1
  97. package/dist/locale/hr.min.mjs +1 -1
  98. package/dist/locale/hr.mjs +1 -1
  99. package/dist/locale/hu.js +1 -1
  100. package/dist/locale/hu.min.js +1 -1
  101. package/dist/locale/hu.min.mjs +1 -1
  102. package/dist/locale/hu.mjs +1 -1
  103. package/dist/locale/hy-am.js +1 -1
  104. package/dist/locale/hy-am.min.js +1 -1
  105. package/dist/locale/hy-am.min.mjs +1 -1
  106. package/dist/locale/hy-am.mjs +1 -1
  107. package/dist/locale/id.js +1 -1
  108. package/dist/locale/id.min.js +1 -1
  109. package/dist/locale/id.min.mjs +1 -1
  110. package/dist/locale/id.mjs +1 -1
  111. package/dist/locale/it.js +1 -1
  112. package/dist/locale/it.min.js +1 -1
  113. package/dist/locale/it.min.mjs +1 -1
  114. package/dist/locale/it.mjs +1 -1
  115. package/dist/locale/ja.js +1 -1
  116. package/dist/locale/ja.min.js +1 -1
  117. package/dist/locale/ja.min.mjs +1 -1
  118. package/dist/locale/ja.mjs +1 -1
  119. package/dist/locale/kk.js +1 -1
  120. package/dist/locale/kk.min.js +1 -1
  121. package/dist/locale/kk.min.mjs +1 -1
  122. package/dist/locale/kk.mjs +1 -1
  123. package/dist/locale/km.js +1 -1
  124. package/dist/locale/km.min.js +1 -1
  125. package/dist/locale/km.min.mjs +1 -1
  126. package/dist/locale/km.mjs +1 -1
  127. package/dist/locale/ko.js +1 -1
  128. package/dist/locale/ko.min.js +1 -1
  129. package/dist/locale/ko.min.mjs +1 -1
  130. package/dist/locale/ko.mjs +1 -1
  131. package/dist/locale/ku.js +1 -1
  132. package/dist/locale/ku.min.js +1 -1
  133. package/dist/locale/ku.min.mjs +1 -1
  134. package/dist/locale/ku.mjs +1 -1
  135. package/dist/locale/ky.js +1 -1
  136. package/dist/locale/ky.min.js +1 -1
  137. package/dist/locale/ky.min.mjs +1 -1
  138. package/dist/locale/ky.mjs +1 -1
  139. package/dist/locale/lt.js +1 -1
  140. package/dist/locale/lt.min.js +1 -1
  141. package/dist/locale/lt.min.mjs +1 -1
  142. package/dist/locale/lt.mjs +1 -1
  143. package/dist/locale/lv.js +1 -1
  144. package/dist/locale/lv.min.js +1 -1
  145. package/dist/locale/lv.min.mjs +1 -1
  146. package/dist/locale/lv.mjs +1 -1
  147. package/dist/locale/mg.js +1 -1
  148. package/dist/locale/mg.min.js +1 -1
  149. package/dist/locale/mg.min.mjs +1 -1
  150. package/dist/locale/mg.mjs +1 -1
  151. package/dist/locale/mn.js +1 -1
  152. package/dist/locale/mn.min.js +1 -1
  153. package/dist/locale/mn.min.mjs +1 -1
  154. package/dist/locale/mn.mjs +1 -1
  155. package/dist/locale/ms.js +1 -1
  156. package/dist/locale/ms.min.js +1 -1
  157. package/dist/locale/ms.min.mjs +1 -1
  158. package/dist/locale/ms.mjs +1 -1
  159. package/dist/locale/my.js +1 -1
  160. package/dist/locale/my.min.js +1 -1
  161. package/dist/locale/my.min.mjs +1 -1
  162. package/dist/locale/my.mjs +1 -1
  163. package/dist/locale/nb-no.js +1 -1
  164. package/dist/locale/nb-no.min.js +1 -1
  165. package/dist/locale/nb-no.min.mjs +1 -1
  166. package/dist/locale/nb-no.mjs +1 -1
  167. package/dist/locale/nl.js +1 -1
  168. package/dist/locale/nl.min.js +1 -1
  169. package/dist/locale/nl.min.mjs +1 -1
  170. package/dist/locale/nl.mjs +1 -1
  171. package/dist/locale/no.js +1 -1
  172. package/dist/locale/no.min.js +1 -1
  173. package/dist/locale/no.min.mjs +1 -1
  174. package/dist/locale/no.mjs +1 -1
  175. package/dist/locale/pa.js +1 -1
  176. package/dist/locale/pa.min.js +1 -1
  177. package/dist/locale/pa.min.mjs +1 -1
  178. package/dist/locale/pa.mjs +1 -1
  179. package/dist/locale/pl.js +1 -1
  180. package/dist/locale/pl.min.js +1 -1
  181. package/dist/locale/pl.min.mjs +1 -1
  182. package/dist/locale/pl.mjs +1 -1
  183. package/dist/locale/pt-br.js +1 -1
  184. package/dist/locale/pt-br.min.js +1 -1
  185. package/dist/locale/pt-br.min.mjs +1 -1
  186. package/dist/locale/pt-br.mjs +1 -1
  187. package/dist/locale/pt.js +1 -1
  188. package/dist/locale/pt.min.js +1 -1
  189. package/dist/locale/pt.min.mjs +1 -1
  190. package/dist/locale/pt.mjs +1 -1
  191. package/dist/locale/ro.js +1 -1
  192. package/dist/locale/ro.min.js +1 -1
  193. package/dist/locale/ro.min.mjs +1 -1
  194. package/dist/locale/ro.mjs +1 -1
  195. package/dist/locale/ru.js +1 -1
  196. package/dist/locale/ru.min.js +1 -1
  197. package/dist/locale/ru.min.mjs +1 -1
  198. package/dist/locale/ru.mjs +1 -1
  199. package/dist/locale/sk.js +1 -1
  200. package/dist/locale/sk.min.js +1 -1
  201. package/dist/locale/sk.min.mjs +1 -1
  202. package/dist/locale/sk.mjs +1 -1
  203. package/dist/locale/sl.js +1 -1
  204. package/dist/locale/sl.min.js +1 -1
  205. package/dist/locale/sl.min.mjs +1 -1
  206. package/dist/locale/sl.mjs +1 -1
  207. package/dist/locale/sr.js +1 -1
  208. package/dist/locale/sr.min.js +1 -1
  209. package/dist/locale/sr.min.mjs +1 -1
  210. package/dist/locale/sr.mjs +1 -1
  211. package/dist/locale/sv.js +1 -1
  212. package/dist/locale/sv.min.js +1 -1
  213. package/dist/locale/sv.min.mjs +1 -1
  214. package/dist/locale/sv.mjs +1 -1
  215. package/dist/locale/sw.js +1 -1
  216. package/dist/locale/sw.min.js +1 -1
  217. package/dist/locale/sw.min.mjs +1 -1
  218. package/dist/locale/sw.mjs +1 -1
  219. package/dist/locale/ta.js +1 -1
  220. package/dist/locale/ta.min.js +1 -1
  221. package/dist/locale/ta.min.mjs +1 -1
  222. package/dist/locale/ta.mjs +1 -1
  223. package/dist/locale/te.js +1 -1
  224. package/dist/locale/te.min.js +1 -1
  225. package/dist/locale/te.min.mjs +1 -1
  226. package/dist/locale/te.mjs +1 -1
  227. package/dist/locale/th.js +1 -1
  228. package/dist/locale/th.min.js +1 -1
  229. package/dist/locale/th.min.mjs +1 -1
  230. package/dist/locale/th.mjs +1 -1
  231. package/dist/locale/tk.js +1 -1
  232. package/dist/locale/tk.min.js +1 -1
  233. package/dist/locale/tk.min.mjs +1 -1
  234. package/dist/locale/tk.mjs +1 -1
  235. package/dist/locale/tr.js +1 -1
  236. package/dist/locale/tr.min.js +1 -1
  237. package/dist/locale/tr.min.mjs +1 -1
  238. package/dist/locale/tr.mjs +1 -1
  239. package/dist/locale/ug-cn.js +1 -1
  240. package/dist/locale/ug-cn.min.js +1 -1
  241. package/dist/locale/ug-cn.min.mjs +1 -1
  242. package/dist/locale/ug-cn.mjs +1 -1
  243. package/dist/locale/uk.js +1 -1
  244. package/dist/locale/uk.min.js +1 -1
  245. package/dist/locale/uk.min.mjs +1 -1
  246. package/dist/locale/uk.mjs +1 -1
  247. package/dist/locale/uz-uz.js +1 -1
  248. package/dist/locale/uz-uz.min.js +1 -1
  249. package/dist/locale/uz-uz.min.mjs +1 -1
  250. package/dist/locale/uz-uz.mjs +1 -1
  251. package/dist/locale/vi.js +1 -1
  252. package/dist/locale/vi.min.js +1 -1
  253. package/dist/locale/vi.min.mjs +1 -1
  254. package/dist/locale/vi.mjs +1 -1
  255. package/dist/locale/zh-cn.js +1 -1
  256. package/dist/locale/zh-cn.min.js +1 -1
  257. package/dist/locale/zh-cn.min.mjs +1 -1
  258. package/dist/locale/zh-cn.mjs +1 -1
  259. package/dist/locale/zh-hk.js +1 -1
  260. package/dist/locale/zh-hk.min.js +1 -1
  261. package/dist/locale/zh-hk.min.mjs +1 -1
  262. package/dist/locale/zh-hk.mjs +1 -1
  263. package/dist/locale/zh-mo.js +1 -1
  264. package/dist/locale/zh-mo.min.js +1 -1
  265. package/dist/locale/zh-mo.min.mjs +1 -1
  266. package/dist/locale/zh-mo.mjs +1 -1
  267. package/dist/locale/zh-tw.js +1 -1
  268. package/dist/locale/zh-tw.min.js +1 -1
  269. package/dist/locale/zh-tw.min.mjs +1 -1
  270. package/dist/locale/zh-tw.mjs +1 -1
  271. package/es/components/autocomplete/index.mjs +2 -2
  272. package/es/components/autocomplete/src/autocomplete.mjs +79 -367
  273. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  274. package/es/components/autocomplete/src/autocomplete2.mjs +367 -79
  275. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  276. package/es/components/backtop/index.mjs +2 -2
  277. package/es/components/backtop/src/backtop.mjs +21 -53
  278. package/es/components/backtop/src/backtop.mjs.map +1 -1
  279. package/es/components/backtop/src/backtop2.mjs +53 -21
  280. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  281. package/es/components/badge/index.mjs +2 -2
  282. package/es/components/badge/src/badge.mjs +32 -71
  283. package/es/components/badge/src/badge.mjs.map +1 -1
  284. package/es/components/badge/src/badge2.mjs +71 -32
  285. package/es/components/badge/src/badge2.mjs.map +1 -1
  286. package/es/components/card/index.mjs +2 -2
  287. package/es/components/card/src/card.mjs +20 -42
  288. package/es/components/card/src/card.mjs.map +1 -1
  289. package/es/components/card/src/card2.mjs +42 -20
  290. package/es/components/card/src/card2.mjs.map +1 -1
  291. package/es/components/cascader/index.mjs +2 -2
  292. package/es/components/cascader/src/cascader.mjs +634 -80
  293. package/es/components/cascader/src/cascader.mjs.map +1 -1
  294. package/es/components/cascader/src/cascader2.mjs +80 -634
  295. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  296. package/es/components/col/index.mjs +2 -2
  297. package/es/components/col/src/col.mjs +43 -64
  298. package/es/components/col/src/col.mjs.map +1 -1
  299. package/es/components/col/src/col2.mjs +64 -43
  300. package/es/components/col/src/col2.mjs.map +1 -1
  301. package/es/components/collapse/index.mjs +2 -2
  302. package/es/components/collapse/src/collapse.mjs +28 -16
  303. package/es/components/collapse/src/collapse.mjs.map +1 -1
  304. package/es/components/collapse/src/collapse2.mjs +16 -28
  305. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  306. package/es/components/color-picker/src/color-picker.mjs +1 -1
  307. package/es/components/date-picker/src/date-picker.d.ts +6 -6
  308. package/es/components/date-picker/src/props/date-picker.d.ts +3 -3
  309. package/es/components/dialog/src/dialog-content.mjs +87 -29
  310. package/es/components/dialog/src/dialog-content.mjs.map +1 -1
  311. package/es/components/dialog/src/dialog-content2.mjs +29 -87
  312. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  313. package/es/components/dialog/src/dialog.mjs +1 -1
  314. package/es/components/dialog/src/dialog2.mjs +1 -1
  315. package/es/components/dropdown/src/dropdown.mjs +1 -1
  316. package/es/components/form/index.mjs +2 -2
  317. package/es/components/form/src/form.mjs +53 -153
  318. package/es/components/form/src/form.mjs.map +1 -1
  319. package/es/components/form/src/form2.mjs +153 -53
  320. package/es/components/form/src/form2.mjs.map +1 -1
  321. package/es/components/index.mjs +17 -17
  322. package/es/components/menu/src/menu-item2.mjs +2 -2
  323. package/es/components/menu/src/menu-item2.mjs.map +1 -1
  324. package/es/components/menu/src/menu.d.ts +4 -0
  325. package/es/components/menu/src/menu.mjs +4 -0
  326. package/es/components/menu/src/menu.mjs.map +1 -1
  327. package/es/components/menu/src/sub-menu.mjs +2 -1
  328. package/es/components/menu/src/sub-menu.mjs.map +1 -1
  329. package/es/components/popconfirm/src/popconfirm.mjs +1 -1
  330. package/es/components/popover/src/popover.mjs +1 -1
  331. package/es/components/rate/index.mjs +2 -2
  332. package/es/components/rate/src/rate.mjs +83 -258
  333. package/es/components/rate/src/rate.mjs.map +1 -1
  334. package/es/components/rate/src/rate2.mjs +258 -83
  335. package/es/components/rate/src/rate2.mjs.map +1 -1
  336. package/es/components/scrollbar/index.mjs +1 -1
  337. package/es/components/scrollbar/src/bar.mjs +64 -10
  338. package/es/components/scrollbar/src/bar.mjs.map +1 -1
  339. package/es/components/scrollbar/src/bar2.mjs +10 -64
  340. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  341. package/es/components/scrollbar/src/scrollbar2.mjs +1 -1
  342. package/es/components/scrollbar/src/thumb.mjs +11 -129
  343. package/es/components/scrollbar/src/thumb.mjs.map +1 -1
  344. package/es/components/scrollbar/src/thumb2.mjs +129 -11
  345. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  346. package/es/components/select/src/select.mjs +1 -1
  347. package/es/components/select/src/useOption.mjs +3 -2
  348. package/es/components/select/src/useOption.mjs.map +1 -1
  349. package/es/components/select-v2/src/defaults.mjs +1 -1
  350. package/es/components/skeleton/index.mjs +2 -2
  351. package/es/components/skeleton/src/skeleton.mjs +21 -48
  352. package/es/components/skeleton/src/skeleton.mjs.map +1 -1
  353. package/es/components/skeleton/src/skeleton2.mjs +48 -21
  354. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  355. package/es/components/statistic/index.mjs +2 -2
  356. package/es/components/statistic/src/statistic.mjs +25 -69
  357. package/es/components/statistic/src/statistic.mjs.map +1 -1
  358. package/es/components/statistic/src/statistic2.mjs +69 -25
  359. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  360. package/es/components/steps/index.mjs +2 -2
  361. package/es/components/steps/src/steps.mjs +38 -35
  362. package/es/components/steps/src/steps.mjs.map +1 -1
  363. package/es/components/steps/src/steps2.mjs +35 -38
  364. package/es/components/steps/src/steps2.mjs.map +1 -1
  365. package/es/components/time-picker/src/common/picker.vue.d.ts +6 -6
  366. package/es/components/time-picker/src/common/props.d.ts +3 -3
  367. package/es/components/time-picker/src/composables/use-time-panel.d.ts +4 -4
  368. package/es/components/time-picker/src/composables/use-time-panel.mjs.map +1 -1
  369. package/es/components/time-picker/src/composables/use-time-picker.d.ts +4 -5
  370. package/es/components/time-picker/src/composables/use-time-picker.mjs.map +1 -1
  371. package/es/components/time-picker/src/props/basic-time-spinner.d.ts +3 -3
  372. package/es/components/time-picker/src/props/shared.d.ts +1 -4
  373. package/es/components/time-picker/src/props/shared.mjs.map +1 -1
  374. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue.d.ts +6 -6
  375. package/es/components/time-picker/src/time-picker.d.ts +6 -6
  376. package/es/components/tooltip/index.mjs +3 -3
  377. package/es/components/tooltip/src/content.mjs +28 -192
  378. package/es/components/tooltip/src/content.mjs.map +1 -1
  379. package/es/components/tooltip/src/content2.mjs +192 -28
  380. package/es/components/tooltip/src/content2.mjs.map +1 -1
  381. package/es/components/tooltip/src/tooltip.mjs +30 -166
  382. package/es/components/tooltip/src/tooltip.mjs.map +1 -1
  383. package/es/components/tooltip/src/tooltip2.mjs +166 -30
  384. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  385. package/es/components/tooltip-v2/index.mjs +1 -1
  386. package/es/components/tooltip-v2/src/root.mjs +79 -17
  387. package/es/components/tooltip-v2/src/root.mjs.map +1 -1
  388. package/es/components/tooltip-v2/src/root2.mjs +17 -79
  389. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  390. package/es/components/tooltip-v2/src/tooltip.mjs +1 -1
  391. package/es/components/tooltip-v2/src/tooltip2.mjs +2 -2
  392. package/es/components/tree/index.d.ts +2 -1
  393. package/es/components/tree/index.mjs.map +1 -1
  394. package/es/components/tree/src/tree.type.d.ts +21 -23
  395. package/es/components/tree-v2/src/tree.vue.d.ts +16 -16
  396. package/es/components/upload/index.mjs +1 -1
  397. package/es/components/upload/src/upload-content2.mjs +1 -1
  398. package/es/components/upload/src/upload-dragger.mjs +47 -10
  399. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  400. package/es/components/upload/src/upload-dragger2.mjs +10 -47
  401. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  402. package/es/components/watermark/index.mjs +2 -2
  403. package/es/components/watermark/src/watermark.mjs +27 -210
  404. package/es/components/watermark/src/watermark.mjs.map +1 -1
  405. package/es/components/watermark/src/watermark2.mjs +210 -27
  406. package/es/components/watermark/src/watermark2.mjs.map +1 -1
  407. package/es/index.mjs +17 -17
  408. package/es/version.d.ts +1 -1
  409. package/es/version.mjs +1 -1
  410. package/es/version.mjs.map +1 -1
  411. package/lib/components/autocomplete/index.js +2 -2
  412. package/lib/components/autocomplete/src/autocomplete.js +79 -366
  413. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  414. package/lib/components/autocomplete/src/autocomplete2.js +366 -79
  415. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  416. package/lib/components/backtop/index.js +2 -2
  417. package/lib/components/backtop/src/backtop.js +22 -53
  418. package/lib/components/backtop/src/backtop.js.map +1 -1
  419. package/lib/components/backtop/src/backtop2.js +53 -22
  420. package/lib/components/backtop/src/backtop2.js.map +1 -1
  421. package/lib/components/badge/index.js +2 -2
  422. package/lib/components/badge/src/badge.js +32 -71
  423. package/lib/components/badge/src/badge.js.map +1 -1
  424. package/lib/components/badge/src/badge2.js +71 -32
  425. package/lib/components/badge/src/badge2.js.map +1 -1
  426. package/lib/components/card/index.js +2 -2
  427. package/lib/components/card/src/card.js +20 -42
  428. package/lib/components/card/src/card.js.map +1 -1
  429. package/lib/components/card/src/card2.js +42 -20
  430. package/lib/components/card/src/card2.js.map +1 -1
  431. package/lib/components/cascader/index.js +2 -2
  432. package/lib/components/cascader/src/cascader.js +634 -81
  433. package/lib/components/cascader/src/cascader.js.map +1 -1
  434. package/lib/components/cascader/src/cascader2.js +81 -634
  435. package/lib/components/cascader/src/cascader2.js.map +1 -1
  436. package/lib/components/col/index.js +2 -2
  437. package/lib/components/col/src/col.js +43 -64
  438. package/lib/components/col/src/col.js.map +1 -1
  439. package/lib/components/col/src/col2.js +64 -43
  440. package/lib/components/col/src/col2.js.map +1 -1
  441. package/lib/components/collapse/index.js +2 -2
  442. package/lib/components/collapse/src/collapse.js +28 -18
  443. package/lib/components/collapse/src/collapse.js.map +1 -1
  444. package/lib/components/collapse/src/collapse2.js +18 -28
  445. package/lib/components/collapse/src/collapse2.js.map +1 -1
  446. package/lib/components/color-picker/src/color-picker.js +1 -1
  447. package/lib/components/date-picker/src/date-picker.d.ts +6 -6
  448. package/lib/components/date-picker/src/props/date-picker.d.ts +3 -3
  449. package/lib/components/dialog/src/dialog-content.js +86 -29
  450. package/lib/components/dialog/src/dialog-content.js.map +1 -1
  451. package/lib/components/dialog/src/dialog-content2.js +29 -86
  452. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  453. package/lib/components/dialog/src/dialog.js +1 -1
  454. package/lib/components/dialog/src/dialog2.js +1 -1
  455. package/lib/components/dropdown/src/dropdown.js +1 -1
  456. package/lib/components/form/index.js +2 -2
  457. package/lib/components/form/src/form.js +54 -152
  458. package/lib/components/form/src/form.js.map +1 -1
  459. package/lib/components/form/src/form2.js +152 -54
  460. package/lib/components/form/src/form2.js.map +1 -1
  461. package/lib/components/index.js +17 -17
  462. package/lib/components/menu/src/menu-item2.js +2 -2
  463. package/lib/components/menu/src/menu-item2.js.map +1 -1
  464. package/lib/components/menu/src/menu.d.ts +4 -0
  465. package/lib/components/menu/src/menu.js +4 -0
  466. package/lib/components/menu/src/menu.js.map +1 -1
  467. package/lib/components/menu/src/sub-menu.js +2 -1
  468. package/lib/components/menu/src/sub-menu.js.map +1 -1
  469. package/lib/components/popconfirm/src/popconfirm.js +1 -1
  470. package/lib/components/popover/src/popover.js +1 -1
  471. package/lib/components/rate/index.js +2 -2
  472. package/lib/components/rate/src/rate.js +83 -257
  473. package/lib/components/rate/src/rate.js.map +1 -1
  474. package/lib/components/rate/src/rate2.js +257 -83
  475. package/lib/components/rate/src/rate2.js.map +1 -1
  476. package/lib/components/scrollbar/index.js +1 -1
  477. package/lib/components/scrollbar/src/bar.js +64 -10
  478. package/lib/components/scrollbar/src/bar.js.map +1 -1
  479. package/lib/components/scrollbar/src/bar2.js +10 -64
  480. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  481. package/lib/components/scrollbar/src/scrollbar2.js +1 -1
  482. package/lib/components/scrollbar/src/thumb.js +11 -129
  483. package/lib/components/scrollbar/src/thumb.js.map +1 -1
  484. package/lib/components/scrollbar/src/thumb2.js +129 -11
  485. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  486. package/lib/components/select/src/select.js +1 -1
  487. package/lib/components/select/src/useOption.js +2 -1
  488. package/lib/components/select/src/useOption.js.map +1 -1
  489. package/lib/components/select-v2/src/defaults.js +1 -1
  490. package/lib/components/skeleton/index.js +2 -2
  491. package/lib/components/skeleton/src/skeleton.js +21 -48
  492. package/lib/components/skeleton/src/skeleton.js.map +1 -1
  493. package/lib/components/skeleton/src/skeleton2.js +48 -21
  494. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  495. package/lib/components/statistic/index.js +2 -2
  496. package/lib/components/statistic/src/statistic.js +25 -69
  497. package/lib/components/statistic/src/statistic.js.map +1 -1
  498. package/lib/components/statistic/src/statistic2.js +69 -25
  499. package/lib/components/statistic/src/statistic2.js.map +1 -1
  500. package/lib/components/steps/index.js +2 -2
  501. package/lib/components/steps/src/steps.js +38 -36
  502. package/lib/components/steps/src/steps.js.map +1 -1
  503. package/lib/components/steps/src/steps2.js +36 -38
  504. package/lib/components/steps/src/steps2.js.map +1 -1
  505. package/lib/components/time-picker/src/common/picker.vue.d.ts +6 -6
  506. package/lib/components/time-picker/src/common/props.d.ts +3 -3
  507. package/lib/components/time-picker/src/composables/use-time-panel.d.ts +4 -4
  508. package/lib/components/time-picker/src/composables/use-time-panel.js.map +1 -1
  509. package/lib/components/time-picker/src/composables/use-time-picker.d.ts +4 -5
  510. package/lib/components/time-picker/src/composables/use-time-picker.js.map +1 -1
  511. package/lib/components/time-picker/src/props/basic-time-spinner.d.ts +3 -3
  512. package/lib/components/time-picker/src/props/shared.d.ts +1 -4
  513. package/lib/components/time-picker/src/props/shared.js.map +1 -1
  514. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue.d.ts +6 -6
  515. package/lib/components/time-picker/src/time-picker.d.ts +6 -6
  516. package/lib/components/tooltip/index.js +3 -3
  517. package/lib/components/tooltip/src/content.js +28 -192
  518. package/lib/components/tooltip/src/content.js.map +1 -1
  519. package/lib/components/tooltip/src/content2.js +192 -28
  520. package/lib/components/tooltip/src/content2.js.map +1 -1
  521. package/lib/components/tooltip/src/tooltip.js +33 -165
  522. package/lib/components/tooltip/src/tooltip.js.map +1 -1
  523. package/lib/components/tooltip/src/tooltip2.js +165 -33
  524. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  525. package/lib/components/tooltip-v2/index.js +1 -1
  526. package/lib/components/tooltip-v2/src/root.js +79 -17
  527. package/lib/components/tooltip-v2/src/root.js.map +1 -1
  528. package/lib/components/tooltip-v2/src/root2.js +17 -79
  529. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  530. package/lib/components/tooltip-v2/src/tooltip.js +1 -1
  531. package/lib/components/tooltip-v2/src/tooltip2.js +2 -2
  532. package/lib/components/tree/index.d.ts +2 -1
  533. package/lib/components/tree/index.js.map +1 -1
  534. package/lib/components/tree/src/tree.type.d.ts +21 -23
  535. package/lib/components/tree-v2/src/tree.vue.d.ts +16 -16
  536. package/lib/components/upload/index.js +1 -1
  537. package/lib/components/upload/src/upload-content2.js +1 -1
  538. package/lib/components/upload/src/upload-dragger.js +47 -11
  539. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  540. package/lib/components/upload/src/upload-dragger2.js +11 -47
  541. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  542. package/lib/components/watermark/index.js +2 -2
  543. package/lib/components/watermark/src/watermark.js +27 -210
  544. package/lib/components/watermark/src/watermark.js.map +1 -1
  545. package/lib/components/watermark/src/watermark2.js +210 -27
  546. package/lib/components/watermark/src/watermark2.js.map +1 -1
  547. package/lib/index.js +17 -17
  548. package/lib/version.d.ts +1 -1
  549. package/lib/version.js +1 -1
  550. package/lib/version.js.map +1 -1
  551. package/package.json +2 -2
  552. package/web-types.json +1 -1
  553. package/es/components/time-picker/src/types.d.ts +0 -4
  554. package/es/components/time-picker/src/types.mjs +0 -2
  555. package/es/components/time-picker/src/types.mjs.map +0 -1
  556. package/lib/components/time-picker/src/types.d.ts +0 -4
  557. package/lib/components/time-picker/src/types.js +0 -3
  558. package/lib/components/time-picker/src/types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"form.mjs","sources":["../../../../../../packages/components/form/src/form.vue"],"sourcesContent":["<template>\n <form :class=\"formClasses\">\n <slot />\n </form>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, reactive, toRefs, watch } from 'vue'\nimport { debugWarn, isFunction } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useFormSize } from './hooks'\nimport { formContextKey } from './constants'\nimport { formEmits, formProps } from './form'\nimport { filterFields, useFormLabelWidth } from './utils'\n\nimport type { ValidateFieldsError } from 'async-validator'\nimport type { Arrayable } from '@element-plus/utils'\nimport type {\n FormContext,\n FormItemContext,\n FormValidateCallback,\n FormValidationResult,\n} from './types'\nimport type { FormItemProp } from './form-item'\n\nconst COMPONENT_NAME = 'ElForm'\ndefineOptions({\n name: COMPONENT_NAME,\n})\nconst props = defineProps(formProps)\nconst emit = defineEmits(formEmits)\n\nconst fields: FormItemContext[] = []\n\nconst formSize = useFormSize()\nconst ns = useNamespace('form')\nconst formClasses = computed(() => {\n const { labelPosition, inline } = props\n return [\n ns.b(),\n // todo: in v2.2.0, we can remove default\n // in fact, remove it doesn't affect the final style\n ns.m(formSize.value || 'default'),\n {\n [ns.m(`label-${labelPosition}`)]: labelPosition,\n [ns.m('inline')]: inline,\n },\n ]\n})\n\nconst getField: FormContext['getField'] = (prop) => {\n return fields.find((field) => field.prop === prop)\n}\n\nconst addField: FormContext['addField'] = (field) => {\n fields.push(field)\n}\n\nconst removeField: FormContext['removeField'] = (field) => {\n if (field.prop) {\n fields.splice(fields.indexOf(field), 1)\n }\n}\n\nconst resetFields: FormContext['resetFields'] = (properties = []) => {\n if (!props.model) {\n debugWarn(COMPONENT_NAME, 'model is required for resetFields to work.')\n return\n }\n filterFields(fields, properties).forEach((field) => field.resetField())\n}\n\nconst clearValidate: FormContext['clearValidate'] = (props = []) => {\n filterFields(fields, props).forEach((field) => field.clearValidate())\n}\n\nconst isValidatable = computed(() => {\n const hasModel = !!props.model\n if (!hasModel) {\n debugWarn(COMPONENT_NAME, 'model is required for validate to work.')\n }\n return hasModel\n})\n\nconst obtainValidateFields = (props: Arrayable<FormItemProp>) => {\n if (fields.length === 0) return []\n\n const filteredFields = filterFields(fields, props)\n if (!filteredFields.length) {\n debugWarn(COMPONENT_NAME, 'please pass correct props!')\n return []\n }\n return filteredFields\n}\n\nconst validate = async (\n callback?: FormValidateCallback\n): FormValidationResult => validateField(undefined, callback)\n\nconst doValidateField = async (\n props: Arrayable<FormItemProp> = []\n): Promise<boolean> => {\n if (!isValidatable.value) return false\n\n const fields = obtainValidateFields(props)\n if (fields.length === 0) return true\n\n let validationErrors: ValidateFieldsError = {}\n for (const field of fields) {\n try {\n await field.validate('')\n if (field.validateState === 'error') field.resetField()\n } catch (fields) {\n validationErrors = {\n ...validationErrors,\n ...(fields as ValidateFieldsError),\n }\n }\n }\n\n if (Object.keys(validationErrors).length === 0) return true\n return Promise.reject(validationErrors)\n}\n\nconst validateField: FormContext['validateField'] = async (\n modelProps = [],\n callback\n) => {\n const shouldThrow = !isFunction(callback)\n try {\n const result = await doValidateField(modelProps)\n // When result is false meaning that the fields are not validatable\n if (result === true) {\n await callback?.(result)\n }\n return result\n } catch (e) {\n if (e instanceof Error) throw e\n\n const invalidFields = e as ValidateFieldsError\n\n if (props.scrollToError) {\n scrollToField(Object.keys(invalidFields)[0])\n }\n await callback?.(false, invalidFields)\n return shouldThrow && Promise.reject(invalidFields)\n }\n}\n\nconst scrollToField = (prop: FormItemProp) => {\n const field = filterFields(fields, prop)[0]\n if (field) {\n field.$el?.scrollIntoView(props.scrollIntoViewOptions)\n }\n}\n\nwatch(\n () => props.rules,\n () => {\n if (props.validateOnRuleChange) {\n validate().catch((err) => debugWarn(err))\n }\n },\n { deep: true, flush: 'post' }\n)\n\nprovide(\n formContextKey,\n reactive({\n ...toRefs(props),\n emit,\n\n resetFields,\n clearValidate,\n validateField,\n getField,\n addField,\n removeField,\n\n ...useFormLabelWidth(),\n })\n)\n\ndefineExpose({\n /**\n * @description Validate the whole form. Receives a callback or returns `Promise`.\n */\n validate,\n /**\n * @description Validate specified fields.\n */\n validateField,\n /**\n * @description Reset specified fields and remove validation result.\n */\n resetFields,\n /**\n * @description Clear validation message for specified fields.\n */\n clearValidate,\n /**\n * @description Scroll to the specified fields.\n */\n scrollToField,\n /**\n * @description All fields context.\n */\n fields,\n})\n</script>\n"],"names":["fields","props","_openBlock","_createElementBlock","_normalizeClass","_unref","_renderSlot"],"mappings":"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"}
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,59 +1,159 @@
1
- import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
2
- import { componentSizes } from '../../../constants/size.mjs';
3
- import { isArray, isString } from '@vue/shared';
4
- import { isBoolean } from '../../../utils/types.mjs';
1
+ import { defineComponent, computed, watch, provide, reactive, toRefs, openBlock, createElementBlock, normalizeClass, unref, renderSlot } from 'vue';
2
+ import { formContextKey } from './constants.mjs';
3
+ import { formProps, formEmits } from './form.mjs';
4
+ import { useFormLabelWidth, filterFields } from './utils.mjs';
5
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
6
+ import { useFormSize } from './hooks/use-form-common-props.mjs';
7
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
8
+ import { debugWarn } from '../../../utils/error.mjs';
9
+ import { isFunction } from '@vue/shared';
5
10
 
6
- const formMetaProps = buildProps({
7
- size: {
8
- type: String,
9
- values: componentSizes
10
- },
11
- disabled: Boolean
11
+ const COMPONENT_NAME = "ElForm";
12
+ const __default__ = defineComponent({
13
+ name: COMPONENT_NAME
12
14
  });
13
- const formProps = buildProps({
14
- ...formMetaProps,
15
- model: Object,
16
- rules: {
17
- type: definePropType(Object)
18
- },
19
- labelPosition: {
20
- type: String,
21
- values: ["left", "right", "top"],
22
- default: "right"
23
- },
24
- requireAsteriskPosition: {
25
- type: String,
26
- values: ["left", "right"],
27
- default: "left"
28
- },
29
- labelWidth: {
30
- type: [String, Number],
31
- default: ""
32
- },
33
- labelSuffix: {
34
- type: String,
35
- default: ""
36
- },
37
- inline: Boolean,
38
- inlineMessage: Boolean,
39
- statusIcon: Boolean,
40
- showMessage: {
41
- type: Boolean,
42
- default: true
43
- },
44
- validateOnRuleChange: {
45
- type: Boolean,
46
- default: true
47
- },
48
- hideRequiredAsterisk: Boolean,
49
- scrollToError: Boolean,
50
- scrollIntoViewOptions: {
51
- type: [Object, Boolean]
15
+ const _sfc_main = /* @__PURE__ */ defineComponent({
16
+ ...__default__,
17
+ props: formProps,
18
+ emits: formEmits,
19
+ setup(__props, { expose, emit }) {
20
+ const props = __props;
21
+ const fields = [];
22
+ const formSize = useFormSize();
23
+ const ns = useNamespace("form");
24
+ const formClasses = computed(() => {
25
+ const { labelPosition, inline } = props;
26
+ return [
27
+ ns.b(),
28
+ ns.m(formSize.value || "default"),
29
+ {
30
+ [ns.m(`label-${labelPosition}`)]: labelPosition,
31
+ [ns.m("inline")]: inline
32
+ }
33
+ ];
34
+ });
35
+ const getField = (prop) => {
36
+ return fields.find((field) => field.prop === prop);
37
+ };
38
+ const addField = (field) => {
39
+ fields.push(field);
40
+ };
41
+ const removeField = (field) => {
42
+ if (field.prop) {
43
+ fields.splice(fields.indexOf(field), 1);
44
+ }
45
+ };
46
+ const resetFields = (properties = []) => {
47
+ if (!props.model) {
48
+ debugWarn(COMPONENT_NAME, "model is required for resetFields to work.");
49
+ return;
50
+ }
51
+ filterFields(fields, properties).forEach((field) => field.resetField());
52
+ };
53
+ const clearValidate = (props2 = []) => {
54
+ filterFields(fields, props2).forEach((field) => field.clearValidate());
55
+ };
56
+ const isValidatable = computed(() => {
57
+ const hasModel = !!props.model;
58
+ if (!hasModel) {
59
+ debugWarn(COMPONENT_NAME, "model is required for validate to work.");
60
+ }
61
+ return hasModel;
62
+ });
63
+ const obtainValidateFields = (props2) => {
64
+ if (fields.length === 0)
65
+ return [];
66
+ const filteredFields = filterFields(fields, props2);
67
+ if (!filteredFields.length) {
68
+ debugWarn(COMPONENT_NAME, "please pass correct props!");
69
+ return [];
70
+ }
71
+ return filteredFields;
72
+ };
73
+ const validate = async (callback) => validateField(void 0, callback);
74
+ const doValidateField = async (props2 = []) => {
75
+ if (!isValidatable.value)
76
+ return false;
77
+ const fields2 = obtainValidateFields(props2);
78
+ if (fields2.length === 0)
79
+ return true;
80
+ let validationErrors = {};
81
+ for (const field of fields2) {
82
+ try {
83
+ await field.validate("");
84
+ if (field.validateState === "error")
85
+ field.resetField();
86
+ } catch (fields3) {
87
+ validationErrors = {
88
+ ...validationErrors,
89
+ ...fields3
90
+ };
91
+ }
92
+ }
93
+ if (Object.keys(validationErrors).length === 0)
94
+ return true;
95
+ return Promise.reject(validationErrors);
96
+ };
97
+ const validateField = async (modelProps = [], callback) => {
98
+ const shouldThrow = !isFunction(callback);
99
+ try {
100
+ const result = await doValidateField(modelProps);
101
+ if (result === true) {
102
+ await (callback == null ? void 0 : callback(result));
103
+ }
104
+ return result;
105
+ } catch (e) {
106
+ if (e instanceof Error)
107
+ throw e;
108
+ const invalidFields = e;
109
+ if (props.scrollToError) {
110
+ scrollToField(Object.keys(invalidFields)[0]);
111
+ }
112
+ await (callback == null ? void 0 : callback(false, invalidFields));
113
+ return shouldThrow && Promise.reject(invalidFields);
114
+ }
115
+ };
116
+ const scrollToField = (prop) => {
117
+ var _a;
118
+ const field = filterFields(fields, prop)[0];
119
+ if (field) {
120
+ (_a = field.$el) == null ? void 0 : _a.scrollIntoView(props.scrollIntoViewOptions);
121
+ }
122
+ };
123
+ watch(() => props.rules, () => {
124
+ if (props.validateOnRuleChange) {
125
+ validate().catch((err) => debugWarn(err));
126
+ }
127
+ }, { deep: true, flush: "post" });
128
+ provide(formContextKey, reactive({
129
+ ...toRefs(props),
130
+ emit,
131
+ resetFields,
132
+ clearValidate,
133
+ validateField,
134
+ getField,
135
+ addField,
136
+ removeField,
137
+ ...useFormLabelWidth()
138
+ }));
139
+ expose({
140
+ validate,
141
+ validateField,
142
+ resetFields,
143
+ clearValidate,
144
+ scrollToField,
145
+ fields
146
+ });
147
+ return (_ctx, _cache) => {
148
+ return openBlock(), createElementBlock("form", {
149
+ class: normalizeClass(unref(formClasses))
150
+ }, [
151
+ renderSlot(_ctx.$slots, "default")
152
+ ], 2);
153
+ };
52
154
  }
53
155
  });
54
- const formEmits = {
55
- validate: (prop, isValid, message) => (isArray(prop) || isString(prop)) && isBoolean(isValid) && isString(message)
56
- };
156
+ var Form = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "form.vue"]]);
57
157
 
58
- export { formEmits, formMetaProps, formProps };
158
+ export { Form as default };
59
159
  //# sourceMappingURL=form2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"form2.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":"form2.mjs","sources":["../../../../../../packages/components/form/src/form.vue"],"sourcesContent":["<template>\n <form :class=\"formClasses\">\n <slot />\n </form>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, reactive, toRefs, watch } from 'vue'\nimport { debugWarn, isFunction } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useFormSize } from './hooks'\nimport { formContextKey } from './constants'\nimport { formEmits, formProps } from './form'\nimport { filterFields, useFormLabelWidth } from './utils'\n\nimport type { ValidateFieldsError } from 'async-validator'\nimport type { Arrayable } from '@element-plus/utils'\nimport type {\n FormContext,\n FormItemContext,\n FormValidateCallback,\n FormValidationResult,\n} from './types'\nimport type { FormItemProp } from './form-item'\n\nconst COMPONENT_NAME = 'ElForm'\ndefineOptions({\n name: COMPONENT_NAME,\n})\nconst props = defineProps(formProps)\nconst emit = defineEmits(formEmits)\n\nconst fields: FormItemContext[] = []\n\nconst formSize = useFormSize()\nconst ns = useNamespace('form')\nconst formClasses = computed(() => {\n const { labelPosition, inline } = props\n return [\n ns.b(),\n // todo: in v2.2.0, we can remove default\n // in fact, remove it doesn't affect the final style\n ns.m(formSize.value || 'default'),\n {\n [ns.m(`label-${labelPosition}`)]: labelPosition,\n [ns.m('inline')]: inline,\n },\n ]\n})\n\nconst getField: FormContext['getField'] = (prop) => {\n return fields.find((field) => field.prop === prop)\n}\n\nconst addField: FormContext['addField'] = (field) => {\n fields.push(field)\n}\n\nconst removeField: FormContext['removeField'] = (field) => {\n if (field.prop) {\n fields.splice(fields.indexOf(field), 1)\n }\n}\n\nconst resetFields: FormContext['resetFields'] = (properties = []) => {\n if (!props.model) {\n debugWarn(COMPONENT_NAME, 'model is required for resetFields to work.')\n return\n }\n filterFields(fields, properties).forEach((field) => field.resetField())\n}\n\nconst clearValidate: FormContext['clearValidate'] = (props = []) => {\n filterFields(fields, props).forEach((field) => field.clearValidate())\n}\n\nconst isValidatable = computed(() => {\n const hasModel = !!props.model\n if (!hasModel) {\n debugWarn(COMPONENT_NAME, 'model is required for validate to work.')\n }\n return hasModel\n})\n\nconst obtainValidateFields = (props: Arrayable<FormItemProp>) => {\n if (fields.length === 0) return []\n\n const filteredFields = filterFields(fields, props)\n if (!filteredFields.length) {\n debugWarn(COMPONENT_NAME, 'please pass correct props!')\n return []\n }\n return filteredFields\n}\n\nconst validate = async (\n callback?: FormValidateCallback\n): FormValidationResult => validateField(undefined, callback)\n\nconst doValidateField = async (\n props: Arrayable<FormItemProp> = []\n): Promise<boolean> => {\n if (!isValidatable.value) return false\n\n const fields = obtainValidateFields(props)\n if (fields.length === 0) return true\n\n let validationErrors: ValidateFieldsError = {}\n for (const field of fields) {\n try {\n await field.validate('')\n if (field.validateState === 'error') field.resetField()\n } catch (fields) {\n validationErrors = {\n ...validationErrors,\n ...(fields as ValidateFieldsError),\n }\n }\n }\n\n if (Object.keys(validationErrors).length === 0) return true\n return Promise.reject(validationErrors)\n}\n\nconst validateField: FormContext['validateField'] = async (\n modelProps = [],\n callback\n) => {\n const shouldThrow = !isFunction(callback)\n try {\n const result = await doValidateField(modelProps)\n // When result is false meaning that the fields are not validatable\n if (result === true) {\n await callback?.(result)\n }\n return result\n } catch (e) {\n if (e instanceof Error) throw e\n\n const invalidFields = e as ValidateFieldsError\n\n if (props.scrollToError) {\n scrollToField(Object.keys(invalidFields)[0])\n }\n await callback?.(false, invalidFields)\n return shouldThrow && Promise.reject(invalidFields)\n }\n}\n\nconst scrollToField = (prop: FormItemProp) => {\n const field = filterFields(fields, prop)[0]\n if (field) {\n field.$el?.scrollIntoView(props.scrollIntoViewOptions)\n }\n}\n\nwatch(\n () => props.rules,\n () => {\n if (props.validateOnRuleChange) {\n validate().catch((err) => debugWarn(err))\n }\n },\n { deep: true, flush: 'post' }\n)\n\nprovide(\n formContextKey,\n reactive({\n ...toRefs(props),\n emit,\n\n resetFields,\n clearValidate,\n validateField,\n getField,\n addField,\n removeField,\n\n ...useFormLabelWidth(),\n })\n)\n\ndefineExpose({\n /**\n * @description Validate the whole form. Receives a callback or returns `Promise`.\n */\n validate,\n /**\n * @description Validate specified fields.\n */\n validateField,\n /**\n * @description Reset specified fields and remove validation result.\n */\n resetFields,\n /**\n * @description Clear validation message for specified fields.\n */\n clearValidate,\n /**\n * @description Scroll to the specified fields.\n */\n scrollToField,\n /**\n * @description All fields context.\n */\n fields,\n})\n</script>\n"],"names":["fields","props","_openBlock","_createElementBlock","_normalizeClass","_unref","_renderSlot"],"mappings":"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"}
@@ -84,29 +84,29 @@ export { default as FixedSizeGrid } from './virtual-list/src/components/fixed-si
84
84
  export { default as DynamicSizeGrid } from './virtual-list/src/components/dynamic-size-grid.mjs';
85
85
  export { affixEmits, affixProps } from './affix/src/affix.mjs';
86
86
  export { alertEffects, alertEmits, alertProps } from './alert/src/alert.mjs';
87
- export { autocompleteEmits, autocompleteProps } from './autocomplete/src/autocomplete2.mjs';
87
+ export { autocompleteEmits, autocompleteProps } from './autocomplete/src/autocomplete.mjs';
88
88
  export { avatarEmits, avatarProps } from './avatar/src/avatar.mjs';
89
- export { backtopEmits, backtopProps } from './backtop/src/backtop2.mjs';
90
- export { badgeProps } from './badge/src/badge2.mjs';
89
+ export { backtopEmits, backtopProps } from './backtop/src/backtop.mjs';
90
+ export { badgeProps } from './badge/src/badge.mjs';
91
91
  export { breadcrumbProps } from './breadcrumb/src/breadcrumb.mjs';
92
92
  export { breadcrumbItemProps } from './breadcrumb/src/breadcrumb-item.mjs';
93
93
  export { breadcrumbKey } from './breadcrumb/src/constants.mjs';
94
94
  export { buttonEmits, buttonNativeTypes, buttonProps, buttonTypes } from './button/src/button.mjs';
95
95
  export { buttonGroupContextKey } from './button/src/constants.mjs';
96
96
  export { calendarEmits, calendarProps } from './calendar/src/calendar.mjs';
97
- export { cardProps } from './card/src/card2.mjs';
97
+ export { cardProps } from './card/src/card.mjs';
98
98
  export { carouselEmits, carouselProps } from './carousel/src/carousel.mjs';
99
99
  export { carouselItemProps } from './carousel/src/carousel-item.mjs';
100
100
  export { CAROUSEL_ITEM_NAME, carouselContextKey } from './carousel/src/constants.mjs';
101
- export { cascaderEmits, cascaderProps } from './cascader/src/cascader.mjs';
101
+ export { cascaderEmits, cascaderProps } from './cascader/src/cascader2.mjs';
102
102
  export { CASCADER_PANEL_INJECTION_KEY } from './cascader-panel/src/types.mjs';
103
103
  export { CommonProps, DefaultProps, useCascaderConfig } from './cascader-panel/src/config.mjs';
104
104
  export { checkTagEmits, checkTagProps } from './check-tag/src/check-tag.mjs';
105
105
  export { checkboxGroupEmits, checkboxGroupProps } from './checkbox/src/checkbox-group.mjs';
106
106
  export { checkboxEmits, checkboxProps } from './checkbox/src/checkbox.mjs';
107
107
  export { checkboxGroupContextKey } from './checkbox/src/constants.mjs';
108
- export { colProps } from './col/src/col2.mjs';
109
- export { collapseEmits, collapseProps, emitChangeFn } from './collapse/src/collapse.mjs';
108
+ export { colProps } from './col/src/col.mjs';
109
+ export { collapseEmits, collapseProps, emitChangeFn } from './collapse/src/collapse2.mjs';
110
110
  export { collapseItemProps } from './collapse/src/collapse-item.mjs';
111
111
  export { collapseContextKey } from './collapse/src/constants.mjs';
112
112
  export { colorPickerContextKey, colorPickerEmits, colorPickerProps } from './color-picker/src/color-picker.mjs';
@@ -127,7 +127,7 @@ export { drawerEmits, drawerProps } from './drawer/src/drawer.mjs';
127
127
  export { DROPDOWN_COLLECTION_INJECTION_KEY, DROPDOWN_COLLECTION_ITEM_INJECTION_KEY, ElCollection, ElCollectionItem, FIRST_KEYS, FIRST_LAST_KEYS, LAST_KEYS, dropdownItemProps, dropdownMenuProps, dropdownProps } from './dropdown/src/dropdown.mjs';
128
128
  export { DROPDOWN_INJECTION_KEY } from './dropdown/src/tokens.mjs';
129
129
  export { emptyProps } from './empty/src/empty.mjs';
130
- export { formEmits, formMetaProps, formProps } from './form/src/form2.mjs';
130
+ export { formEmits, formMetaProps, formProps } from './form/src/form.mjs';
131
131
  export { formItemProps, formItemValidateStates } from './form/src/form-item.mjs';
132
132
  export { formContextKey, formItemContextKey } from './form/src/constants.mjs';
133
133
  export { useDisabled, useFormDisabled, useFormSize, useSize } from './form/src/hooks/use-form-common-props.mjs';
@@ -161,26 +161,26 @@ export { radioEmits, radioProps, radioPropsBase } from './radio/src/radio.mjs';
161
161
  export { radioGroupEmits, radioGroupProps } from './radio/src/radio-group.mjs';
162
162
  export { radioButtonProps } from './radio/src/radio-button.mjs';
163
163
  export { radioGroupKey } from './radio/src/constants.mjs';
164
- export { rateEmits, rateProps } from './rate/src/rate2.mjs';
164
+ export { rateEmits, rateProps } from './rate/src/rate.mjs';
165
165
  export { IconComponentMap, IconMap, resultProps } from './result/src/result.mjs';
166
166
  export { RowAlign, RowJustify, rowProps } from './row/src/row.mjs';
167
167
  export { rowContextKey } from './row/src/constants.mjs';
168
168
  export { BAR_MAP, GAP, renderThumbStyle } from './scrollbar/src/util.mjs';
169
169
  export { scrollbarEmits, scrollbarProps } from './scrollbar/src/scrollbar.mjs';
170
- export { thumbProps } from './scrollbar/src/thumb2.mjs';
170
+ export { thumbProps } from './scrollbar/src/thumb.mjs';
171
171
  export { scrollbarContextKey } from './scrollbar/src/constants.mjs';
172
172
  export { selectGroupKey, selectKey } from './select/src/token.mjs';
173
173
  export { selectV2InjectionKey } from './select-v2/src/token.mjs';
174
- export { skeletonProps } from './skeleton/src/skeleton2.mjs';
174
+ export { skeletonProps } from './skeleton/src/skeleton.mjs';
175
175
  export { skeletonItemProps } from './skeleton/src/skeleton-item.mjs';
176
176
  export { sliderEmits, sliderProps } from './slider/src/slider.mjs';
177
177
  export { sliderContextKey } from './slider/src/constants.mjs';
178
178
  export { spaceProps } from './space/src/space.mjs';
179
179
  export { spaceItemProps } from './space/src/item.mjs';
180
180
  export { useSpace } from './space/src/use-space.mjs';
181
- export { statisticProps } from './statistic/src/statistic2.mjs';
181
+ export { statisticProps } from './statistic/src/statistic.mjs';
182
182
  export { stepProps } from './steps/src/item.mjs';
183
- export { stepsEmits, stepsProps } from './steps/src/steps.mjs';
183
+ export { stepsEmits, stepsProps } from './steps/src/steps2.mjs';
184
184
  export { switchEmits, switchProps } from './switch/src/switch.mjs';
185
185
  export { Alignment as TableV2Alignment, FixedDir as TableV2FixedDir, SortOrder as TableV2SortOrder } from './table-v2/src/constants.mjs';
186
186
  export { default as TableV2 } from './table-v2/src/table-v2.mjs';
@@ -202,20 +202,20 @@ export { default as CommonPicker } from './time-picker/src/common/picker.mjs';
202
202
  export { default as TimePickPanel } from './time-picker/src/time-picker-com/panel-time-pick.mjs';
203
203
  export { timeSelectProps } from './time-select/src/time-select.mjs';
204
204
  export { timelineItemProps } from './timeline/src/timeline-item.mjs';
205
- export { tooltipEmits, useTooltipModelToggle, useTooltipModelToggleEmits, useTooltipModelToggleProps, useTooltipProps } from './tooltip/src/tooltip2.mjs';
205
+ export { tooltipEmits, useTooltipModelToggle, useTooltipModelToggleEmits, useTooltipModelToggleProps, useTooltipProps } from './tooltip/src/tooltip.mjs';
206
206
  export { useTooltipTriggerProps } from './tooltip/src/trigger.mjs';
207
- export { useTooltipContentProps } from './tooltip/src/content2.mjs';
207
+ export { useTooltipContentProps } from './tooltip/src/content.mjs';
208
208
  export { TOOLTIP_INJECTION_KEY } from './tooltip/src/constants.mjs';
209
209
  export { LEFT_CHECK_CHANGE_EVENT, RIGHT_CHECK_CHANGE_EVENT, transferCheckedChangeFn, transferEmits, transferProps } from './transfer/src/transfer.mjs';
210
210
  export { genFileId, uploadBaseProps, uploadListTypes, uploadProps } from './upload/src/upload.mjs';
211
211
  export { uploadContentProps } from './upload/src/upload-content.mjs';
212
212
  export { uploadListEmits, uploadListProps } from './upload/src/upload-list.mjs';
213
- export { uploadDraggerEmits, uploadDraggerProps } from './upload/src/upload-dragger.mjs';
213
+ export { uploadDraggerEmits, uploadDraggerProps } from './upload/src/upload-dragger2.mjs';
214
214
  export { uploadContextKey } from './upload/src/constants.mjs';
215
215
  export { default as FixedSizeList } from './virtual-list/src/components/fixed-size-list.mjs';
216
216
  export { default as DynamicSizeList } from './virtual-list/src/components/dynamic-size-list.mjs';
217
217
  export { virtualizedGridProps, virtualizedListProps, virtualizedProps, virtualizedScrollbarProps } from './virtual-list/src/props.mjs';
218
- export { watermarkProps } from './watermark/src/watermark2.mjs';
218
+ export { watermarkProps } from './watermark/src/watermark.mjs';
219
219
  export { tourEmits, tourProps } from './tour/src/tour.mjs';
220
220
  export { tourStepEmits, tourStepProps } from './tour/src/step.mjs';
221
221
  export { tourContentEmits, tourContentProps, tourPlacements, tourStrategies } from './tour/src/content.mjs';
@@ -74,7 +74,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
74
74
  effect: unref(rootMenu).props.popperEffect,
75
75
  placement: "right",
76
76
  "fallback-placements": ["left"],
77
- persistent: ""
77
+ persistent: unref(rootMenu).props.persistent
78
78
  }, {
79
79
  content: withCtx(() => [
80
80
  renderSlot(_ctx.$slots, "title")
@@ -87,7 +87,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
87
87
  ], 2)
88
88
  ]),
89
89
  _: 3
90
- }, 8, ["effect"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
90
+ }, 8, ["effect", "persistent"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
91
91
  renderSlot(_ctx.$slots, "default"),
92
92
  renderSlot(_ctx.$slots, "title")
93
93
  ], 64))
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item2.mjs","sources":["../../../../../../packages/components/menu/src/menu-item.vue"],"sourcesContent":["<template>\n <li\n :class=\"[\n nsMenuItem.b(),\n nsMenuItem.is('active', active),\n nsMenuItem.is('disabled', disabled),\n ]\"\n role=\"menuitem\"\n tabindex=\"-1\"\n @click=\"handleClick\"\n >\n <el-tooltip\n v-if=\"\n parentMenu.type.name === 'ElMenu' &&\n rootMenu.props.collapse &&\n $slots.title\n \"\n :effect=\"rootMenu.props.popperEffect\"\n placement=\"right\"\n :fallback-placements=\"['left']\"\n persistent\n >\n <template #content>\n <slot name=\"title\" />\n </template>\n <div :class=\"nsMenu.be('tooltip', 'trigger')\">\n <slot />\n </div>\n </el-tooltip>\n <template v-else>\n <slot />\n <slot name=\"title\" />\n </template>\n </li>\n</template>\n\n<script lang=\"ts\" setup>\n// @ts-nocheck\nimport {\n computed,\n getCurrentInstance,\n inject,\n onBeforeUnmount,\n onMounted,\n reactive,\n toRef,\n} from 'vue'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { throwError } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport useMenu from './use-menu'\nimport { menuItemEmits, menuItemProps } from './menu-item'\n\nimport type { MenuItemRegistered, MenuProvider, SubMenuProvider } from './types'\n\nconst COMPONENT_NAME = 'ElMenuItem'\ndefineOptions({\n name: COMPONENT_NAME,\n})\nconst props = defineProps(menuItemProps)\nconst emit = defineEmits(menuItemEmits)\n\nconst instance = getCurrentInstance()!\nconst rootMenu = inject<MenuProvider>('rootMenu')\nconst nsMenu = useNamespace('menu')\nconst nsMenuItem = useNamespace('menu-item')\nif (!rootMenu) throwError(COMPONENT_NAME, 'can not inject root menu')\n\nconst { parentMenu, indexPath } = useMenu(instance, toRef(props, 'index'))\n\nconst subMenu = inject<SubMenuProvider>(`subMenu:${parentMenu.value.uid}`)\nif (!subMenu) throwError(COMPONENT_NAME, 'can not inject sub menu')\n\nconst active = computed(() => props.index === rootMenu.activeIndex)\nconst item: MenuItemRegistered = reactive({\n index: props.index,\n indexPath,\n active,\n})\n\nconst handleClick = () => {\n if (!props.disabled) {\n rootMenu.handleMenuItemClick({\n index: props.index,\n indexPath: indexPath.value,\n route: props.route,\n })\n emit('click', item)\n }\n}\n\nonMounted(() => {\n subMenu.addSubMenu(item)\n rootMenu.addMenuItem(item)\n})\n\nonBeforeUnmount(() => {\n subMenu.removeSubMenu(item)\n rootMenu.removeMenuItem(item)\n})\n\ndefineExpose({\n parentMenu,\n rootMenu,\n active,\n nsMenu,\n nsMenuItem,\n handleClick,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;mCAwDc,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;;AAIA,IAAA,MAAM,WAAW,kBAAmB,EAAA,CAAA;AACpC,IAAM,MAAA,QAAA,GAAW,OAAqB,UAAU,CAAA,CAAA;AAChD,IAAM,MAAA,MAAA,GAAS,aAAa,MAAM,CAAA,CAAA;AAClC,IAAM,MAAA,UAAA,GAAa,aAAa,WAAW,CAAA,CAAA;AAC3C,IAAA,IAAI,CAAC,QAAA;AAEL,MAAM,yBAAwB,EAAA,0BAAsB,CAAA,CAAA;AAEpD,IAAA,MAAM,YAAkC,EAAA,SAAA,EAAA,GAAW,OAAW,CAAA,QAAA,OAAW,CAAA,KAAA,EAAA,OAAA,CAAA,CAAA,CAAA;AACzE,IAAA,MAAK,OAAS,GAAW,MAAA,CAAA,CAAA,QAAA,EAAA,UAAyC,CAAA,KAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA;AAElE,IAAA,IAAA,CAAA;AACA,MAAA,WAAiC,cAAS,EAAA,yBAAA,CAAA,CAAA;AAAA,IAAA,YAC3B,GAAA,QAAA,CAAA,MAAA,KAAA,CAAA,KAAA,KAAA,QAAA,CAAA,WAAA,CAAA,CAAA;AAAA,IACb,MAAA,IAAA,GAAA,QAAA,CAAA;AAAA,MACA,KAAA,EAAA,KAAA,CAAA,KAAA;AAAA,MACD,SAAA;AAED,MAAA;AACE,KAAI,CAAA,CAAA;AACF,IAAA,MAAA,WAA6B,GAAA,MAAA;AAAA,MAAA,IAC3B,OAAO,QAAM,EAAA;AAAA,QAAA,4BACQ,CAAA;AAAA,UACrB,OAAO,KAAM,CAAA,KAAA;AAAA,UACd,SAAA,EAAA,SAAA,CAAA,KAAA;AACD,UAAA,YAAc,CAAI,KAAA;AAAA,SACpB,CAAA,CAAA;AAAA,QACF,IAAA,CAAA,OAAA,EAAA,IAAA,CAAA,CAAA;AAEA,OAAA;AACE,KAAA,CAAA;AACA,IAAA,SAAA,CAAA;AAAyB,MAC1B,OAAA,CAAA,UAAA,CAAA,IAAA,CAAA,CAAA;AAED,MAAA,QAAA,CAAA,WAAsB,CAAA,IAAA,CAAA,CAAA;AACpB,KAAA,CAAA,CAAA;AACA,IAAA;AAA4B,MAC7B,OAAA,CAAA,aAAA,CAAA,IAAA,CAAA,CAAA;AAED,MAAa,QAAA,CAAA,cAAA,CAAA,IAAA,CAAA,CAAA;AAAA,KACX,CAAA,CAAA;AAAA,IACA,MAAA,CAAA;AAAA,MACA,UAAA;AAAA,MACA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,MAAA;AAAA,MACD,UAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"menu-item2.mjs","sources":["../../../../../../packages/components/menu/src/menu-item.vue"],"sourcesContent":["<template>\n <li\n :class=\"[\n nsMenuItem.b(),\n nsMenuItem.is('active', active),\n nsMenuItem.is('disabled', disabled),\n ]\"\n role=\"menuitem\"\n tabindex=\"-1\"\n @click=\"handleClick\"\n >\n <el-tooltip\n v-if=\"\n parentMenu.type.name === 'ElMenu' &&\n rootMenu.props.collapse &&\n $slots.title\n \"\n :effect=\"rootMenu.props.popperEffect\"\n placement=\"right\"\n :fallback-placements=\"['left']\"\n :persistent=\"rootMenu.props.persistent\"\n >\n <template #content>\n <slot name=\"title\" />\n </template>\n <div :class=\"nsMenu.be('tooltip', 'trigger')\">\n <slot />\n </div>\n </el-tooltip>\n <template v-else>\n <slot />\n <slot name=\"title\" />\n </template>\n </li>\n</template>\n\n<script lang=\"ts\" setup>\n// @ts-nocheck\nimport {\n computed,\n getCurrentInstance,\n inject,\n onBeforeUnmount,\n onMounted,\n reactive,\n toRef,\n} from 'vue'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { throwError } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport useMenu from './use-menu'\nimport { menuItemEmits, menuItemProps } from './menu-item'\n\nimport type { MenuItemRegistered, MenuProvider, SubMenuProvider } from './types'\n\nconst COMPONENT_NAME = 'ElMenuItem'\ndefineOptions({\n name: COMPONENT_NAME,\n})\nconst props = defineProps(menuItemProps)\nconst emit = defineEmits(menuItemEmits)\n\nconst instance = getCurrentInstance()!\nconst rootMenu = inject<MenuProvider>('rootMenu')\nconst nsMenu = useNamespace('menu')\nconst nsMenuItem = useNamespace('menu-item')\nif (!rootMenu) throwError(COMPONENT_NAME, 'can not inject root menu')\n\nconst { parentMenu, indexPath } = useMenu(instance, toRef(props, 'index'))\n\nconst subMenu = inject<SubMenuProvider>(`subMenu:${parentMenu.value.uid}`)\nif (!subMenu) throwError(COMPONENT_NAME, 'can not inject sub menu')\n\nconst active = computed(() => props.index === rootMenu.activeIndex)\nconst item: MenuItemRegistered = reactive({\n index: props.index,\n indexPath,\n active,\n})\n\nconst handleClick = () => {\n if (!props.disabled) {\n rootMenu.handleMenuItemClick({\n index: props.index,\n indexPath: indexPath.value,\n route: props.route,\n })\n emit('click', item)\n }\n}\n\nonMounted(() => {\n subMenu.addSubMenu(item)\n rootMenu.addMenuItem(item)\n})\n\nonBeforeUnmount(() => {\n subMenu.removeSubMenu(item)\n rootMenu.removeMenuItem(item)\n})\n\ndefineExpose({\n parentMenu,\n rootMenu,\n active,\n nsMenu,\n nsMenuItem,\n handleClick,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;mCAwDc,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;;AAIA,IAAA,MAAM,WAAW,kBAAmB,EAAA,CAAA;AACpC,IAAM,MAAA,QAAA,GAAW,OAAqB,UAAU,CAAA,CAAA;AAChD,IAAM,MAAA,MAAA,GAAS,aAAa,MAAM,CAAA,CAAA;AAClC,IAAM,MAAA,UAAA,GAAa,aAAa,WAAW,CAAA,CAAA;AAC3C,IAAA,IAAI,CAAC,QAAA;AAEL,MAAM,yBAAwB,EAAA,0BAAsB,CAAA,CAAA;AAEpD,IAAA,MAAM,YAAkC,EAAA,SAAA,EAAA,GAAW,OAAW,CAAA,QAAA,OAAW,CAAA,KAAA,EAAA,OAAA,CAAA,CAAA,CAAA;AACzE,IAAA,MAAK,OAAS,GAAW,MAAA,CAAA,CAAA,QAAA,EAAA,UAAyC,CAAA,KAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA;AAElE,IAAA,IAAA,CAAA;AACA,MAAA,WAAiC,cAAS,EAAA,yBAAA,CAAA,CAAA;AAAA,IAAA,YAC3B,GAAA,QAAA,CAAA,MAAA,KAAA,CAAA,KAAA,KAAA,QAAA,CAAA,WAAA,CAAA,CAAA;AAAA,IACb,MAAA,IAAA,GAAA,QAAA,CAAA;AAAA,MACA,KAAA,EAAA,KAAA,CAAA,KAAA;AAAA,MACD,SAAA;AAED,MAAA;AACE,KAAI,CAAA,CAAA;AACF,IAAA,MAAA,WAA6B,GAAA,MAAA;AAAA,MAAA,IAC3B,OAAO,QAAM,EAAA;AAAA,QAAA,4BACQ,CAAA;AAAA,UACrB,OAAO,KAAM,CAAA,KAAA;AAAA,UACd,SAAA,EAAA,SAAA,CAAA,KAAA;AACD,UAAA,YAAc,CAAI,KAAA;AAAA,SACpB,CAAA,CAAA;AAAA,QACF,IAAA,CAAA,OAAA,EAAA,IAAA,CAAA,CAAA;AAEA,OAAA;AACE,KAAA,CAAA;AACA,IAAA,SAAA,CAAA;AAAyB,MAC1B,OAAA,CAAA,UAAA,CAAA,IAAA,CAAA,CAAA;AAED,MAAA,QAAA,CAAA,WAAsB,CAAA,IAAA,CAAA,CAAA;AACpB,KAAA,CAAA,CAAA;AACA,IAAA;AAA4B,MAC7B,OAAA,CAAA,aAAA,CAAA,IAAA,CAAA,CAAA;AAED,MAAa,QAAA,CAAA,cAAA,CAAA,IAAA,CAAA,CAAA;AAAA,KACX,CAAA,CAAA;AAAA,IACA,MAAA,CAAA;AAAA,MACA,UAAA;AAAA,MACA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,MAAA;AAAA,MACD,UAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -22,6 +22,7 @@ export declare const menuProps: {
22
22
  readonly popperClass: StringConstructor;
23
23
  readonly showTimeout: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
24
24
  readonly hideTimeout: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
25
+ readonly persistent: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
25
26
  };
26
27
  export type MenuProps = ExtractPropTypes<typeof menuProps>;
27
28
  export declare const menuEmits: {
@@ -50,6 +51,7 @@ declare const _default: import("vue").DefineComponent<{
50
51
  readonly popperClass: StringConstructor;
51
52
  readonly showTimeout: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
52
53
  readonly hideTimeout: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
54
+ readonly persistent: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
53
55
  }, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
54
56
  [key: string]: any;
55
57
  }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -76,6 +78,7 @@ declare const _default: import("vue").DefineComponent<{
76
78
  readonly popperClass: StringConstructor;
77
79
  readonly showTimeout: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
78
80
  readonly hideTimeout: import("@element-plus/nightly/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
81
+ readonly persistent: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
79
82
  }>> & {
80
83
  onSelect?: ((index: string, indexPath: string[], item: MenuItemClicked, routerResult?: Promise<void | NavigationFailure> | undefined) => any) | undefined;
81
84
  onClose?: ((index: string, indexPath: string[]) => any) | undefined;
@@ -84,6 +87,7 @@ declare const _default: import("vue").DefineComponent<{
84
87
  readonly ellipsis: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
85
88
  readonly collapse: boolean;
86
89
  readonly mode: import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "horizontal" | "vertical", unknown>;
90
+ readonly persistent: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
87
91
  readonly showTimeout: number;
88
92
  readonly hideTimeout: number;
89
93
  readonly defaultActive: string;
@@ -69,6 +69,10 @@ const menuProps = buildProps({
69
69
  hideTimeout: {
70
70
  type: Number,
71
71
  default: 300
72
+ },
73
+ persistent: {
74
+ type: Boolean,
75
+ default: true
72
76
  }
73
77
  });
74
78
  const checkIndexPath = (indexPath) => isArray(indexPath) && indexPath.every((path) => isString(path));