@element-plus/nightly 0.0.20220306 → 0.0.20220307

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 (629) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +419 -397
  4. package/dist/index.full.min.js +8 -8
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +8 -8
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +419 -398
  9. package/dist/locale/af.js +1 -1
  10. package/dist/locale/af.min.js +1 -1
  11. package/dist/locale/af.min.mjs +1 -1
  12. package/dist/locale/af.mjs +1 -1
  13. package/dist/locale/ar.js +1 -1
  14. package/dist/locale/ar.min.js +1 -1
  15. package/dist/locale/ar.min.mjs +1 -1
  16. package/dist/locale/ar.mjs +1 -1
  17. package/dist/locale/bg.js +1 -1
  18. package/dist/locale/bg.min.js +1 -1
  19. package/dist/locale/bg.min.mjs +1 -1
  20. package/dist/locale/bg.mjs +1 -1
  21. package/dist/locale/bn.js +1 -1
  22. package/dist/locale/bn.min.js +1 -1
  23. package/dist/locale/bn.min.mjs +1 -1
  24. package/dist/locale/bn.mjs +1 -1
  25. package/dist/locale/ca.js +1 -1
  26. package/dist/locale/ca.min.js +1 -1
  27. package/dist/locale/ca.min.mjs +1 -1
  28. package/dist/locale/ca.mjs +1 -1
  29. package/dist/locale/cs.js +1 -1
  30. package/dist/locale/cs.min.js +1 -1
  31. package/dist/locale/cs.min.mjs +1 -1
  32. package/dist/locale/cs.mjs +1 -1
  33. package/dist/locale/da.js +1 -1
  34. package/dist/locale/da.min.js +1 -1
  35. package/dist/locale/da.min.mjs +1 -1
  36. package/dist/locale/da.mjs +1 -1
  37. package/dist/locale/de.js +1 -1
  38. package/dist/locale/de.min.js +1 -1
  39. package/dist/locale/de.min.mjs +1 -1
  40. package/dist/locale/de.mjs +1 -1
  41. package/dist/locale/el.js +1 -1
  42. package/dist/locale/el.min.js +1 -1
  43. package/dist/locale/el.min.mjs +1 -1
  44. package/dist/locale/el.mjs +1 -1
  45. package/dist/locale/en.js +1 -1
  46. package/dist/locale/en.min.js +1 -1
  47. package/dist/locale/en.min.mjs +1 -1
  48. package/dist/locale/en.mjs +1 -1
  49. package/dist/locale/eo.js +1 -1
  50. package/dist/locale/eo.min.js +1 -1
  51. package/dist/locale/eo.min.mjs +1 -1
  52. package/dist/locale/eo.mjs +1 -1
  53. package/dist/locale/es.js +1 -1
  54. package/dist/locale/es.min.js +1 -1
  55. package/dist/locale/es.min.mjs +1 -1
  56. package/dist/locale/es.mjs +1 -1
  57. package/dist/locale/et.js +1 -1
  58. package/dist/locale/et.min.js +1 -1
  59. package/dist/locale/et.min.mjs +1 -1
  60. package/dist/locale/et.mjs +1 -1
  61. package/dist/locale/eu.js +1 -1
  62. package/dist/locale/eu.min.js +1 -1
  63. package/dist/locale/eu.min.mjs +1 -1
  64. package/dist/locale/eu.mjs +1 -1
  65. package/dist/locale/fa.js +1 -1
  66. package/dist/locale/fa.min.js +1 -1
  67. package/dist/locale/fa.min.mjs +1 -1
  68. package/dist/locale/fa.mjs +1 -1
  69. package/dist/locale/fi.js +1 -1
  70. package/dist/locale/fi.min.js +1 -1
  71. package/dist/locale/fi.min.mjs +1 -1
  72. package/dist/locale/fi.mjs +1 -1
  73. package/dist/locale/fr.js +1 -1
  74. package/dist/locale/fr.min.js +1 -1
  75. package/dist/locale/fr.min.mjs +1 -1
  76. package/dist/locale/fr.mjs +1 -1
  77. package/dist/locale/he.js +1 -1
  78. package/dist/locale/he.min.js +1 -1
  79. package/dist/locale/he.min.mjs +1 -1
  80. package/dist/locale/he.mjs +1 -1
  81. package/dist/locale/hr.js +1 -1
  82. package/dist/locale/hr.min.js +1 -1
  83. package/dist/locale/hr.min.mjs +1 -1
  84. package/dist/locale/hr.mjs +1 -1
  85. package/dist/locale/hu.js +1 -1
  86. package/dist/locale/hu.min.js +1 -1
  87. package/dist/locale/hu.min.mjs +1 -1
  88. package/dist/locale/hu.mjs +1 -1
  89. package/dist/locale/hy-am.js +1 -1
  90. package/dist/locale/hy-am.min.js +1 -1
  91. package/dist/locale/hy-am.min.mjs +1 -1
  92. package/dist/locale/hy-am.mjs +1 -1
  93. package/dist/locale/id.js +1 -1
  94. package/dist/locale/id.min.js +1 -1
  95. package/dist/locale/id.min.mjs +1 -1
  96. package/dist/locale/id.mjs +1 -1
  97. package/dist/locale/it.js +1 -1
  98. package/dist/locale/it.min.js +1 -1
  99. package/dist/locale/it.min.mjs +1 -1
  100. package/dist/locale/it.mjs +1 -1
  101. package/dist/locale/ja.js +1 -1
  102. package/dist/locale/ja.min.js +1 -1
  103. package/dist/locale/ja.min.mjs +1 -1
  104. package/dist/locale/ja.mjs +1 -1
  105. package/dist/locale/kk.js +1 -1
  106. package/dist/locale/kk.min.js +1 -1
  107. package/dist/locale/kk.min.mjs +1 -1
  108. package/dist/locale/kk.mjs +1 -1
  109. package/dist/locale/km.js +1 -1
  110. package/dist/locale/km.min.js +1 -1
  111. package/dist/locale/km.min.mjs +1 -1
  112. package/dist/locale/km.mjs +1 -1
  113. package/dist/locale/ko.js +1 -1
  114. package/dist/locale/ko.min.js +1 -1
  115. package/dist/locale/ko.min.mjs +1 -1
  116. package/dist/locale/ko.mjs +1 -1
  117. package/dist/locale/ku.js +1 -1
  118. package/dist/locale/ku.min.js +1 -1
  119. package/dist/locale/ku.min.mjs +1 -1
  120. package/dist/locale/ku.mjs +1 -1
  121. package/dist/locale/ky.js +1 -1
  122. package/dist/locale/ky.min.js +1 -1
  123. package/dist/locale/ky.min.mjs +1 -1
  124. package/dist/locale/ky.mjs +1 -1
  125. package/dist/locale/lt.js +1 -1
  126. package/dist/locale/lt.min.js +1 -1
  127. package/dist/locale/lt.min.mjs +1 -1
  128. package/dist/locale/lt.mjs +1 -1
  129. package/dist/locale/lv.js +1 -1
  130. package/dist/locale/lv.min.js +1 -1
  131. package/dist/locale/lv.min.mjs +1 -1
  132. package/dist/locale/lv.mjs +1 -1
  133. package/dist/locale/mg.js +1 -1
  134. package/dist/locale/mg.min.js +1 -1
  135. package/dist/locale/mg.min.mjs +1 -1
  136. package/dist/locale/mg.mjs +1 -1
  137. package/dist/locale/mn.js +1 -1
  138. package/dist/locale/mn.min.js +1 -1
  139. package/dist/locale/mn.min.mjs +1 -1
  140. package/dist/locale/mn.mjs +1 -1
  141. package/dist/locale/nb-no.js +1 -1
  142. package/dist/locale/nb-no.min.js +1 -1
  143. package/dist/locale/nb-no.min.mjs +1 -1
  144. package/dist/locale/nb-no.mjs +1 -1
  145. package/dist/locale/nl.js +1 -1
  146. package/dist/locale/nl.min.js +1 -1
  147. package/dist/locale/nl.min.mjs +1 -1
  148. package/dist/locale/nl.mjs +1 -1
  149. package/dist/locale/pa.js +1 -1
  150. package/dist/locale/pa.min.js +1 -1
  151. package/dist/locale/pa.min.mjs +1 -1
  152. package/dist/locale/pa.mjs +1 -1
  153. package/dist/locale/pl.js +1 -1
  154. package/dist/locale/pl.min.js +1 -1
  155. package/dist/locale/pl.min.mjs +1 -1
  156. package/dist/locale/pl.mjs +1 -1
  157. package/dist/locale/pt-br.js +1 -1
  158. package/dist/locale/pt-br.min.js +1 -1
  159. package/dist/locale/pt-br.min.mjs +1 -1
  160. package/dist/locale/pt-br.mjs +1 -1
  161. package/dist/locale/pt.js +1 -1
  162. package/dist/locale/pt.min.js +1 -1
  163. package/dist/locale/pt.min.mjs +1 -1
  164. package/dist/locale/pt.mjs +1 -1
  165. package/dist/locale/ro.js +1 -1
  166. package/dist/locale/ro.min.js +1 -1
  167. package/dist/locale/ro.min.mjs +1 -1
  168. package/dist/locale/ro.mjs +1 -1
  169. package/dist/locale/ru.js +1 -1
  170. package/dist/locale/ru.min.js +1 -1
  171. package/dist/locale/ru.min.mjs +1 -1
  172. package/dist/locale/ru.mjs +1 -1
  173. package/dist/locale/sk.js +1 -1
  174. package/dist/locale/sk.min.js +1 -1
  175. package/dist/locale/sk.min.mjs +1 -1
  176. package/dist/locale/sk.mjs +1 -1
  177. package/dist/locale/sl.js +1 -1
  178. package/dist/locale/sl.min.js +1 -1
  179. package/dist/locale/sl.min.mjs +1 -1
  180. package/dist/locale/sl.mjs +1 -1
  181. package/dist/locale/sr.js +1 -1
  182. package/dist/locale/sr.min.js +1 -1
  183. package/dist/locale/sr.min.mjs +1 -1
  184. package/dist/locale/sr.mjs +1 -1
  185. package/dist/locale/sv.js +1 -1
  186. package/dist/locale/sv.min.js +1 -1
  187. package/dist/locale/sv.min.mjs +1 -1
  188. package/dist/locale/sv.mjs +1 -1
  189. package/dist/locale/ta.js +1 -1
  190. package/dist/locale/ta.min.js +1 -1
  191. package/dist/locale/ta.min.mjs +1 -1
  192. package/dist/locale/ta.mjs +1 -1
  193. package/dist/locale/th.js +1 -1
  194. package/dist/locale/th.min.js +1 -1
  195. package/dist/locale/th.min.mjs +1 -1
  196. package/dist/locale/th.mjs +1 -1
  197. package/dist/locale/tk.js +1 -1
  198. package/dist/locale/tk.min.js +1 -1
  199. package/dist/locale/tk.min.mjs +1 -1
  200. package/dist/locale/tk.mjs +1 -1
  201. package/dist/locale/tr.js +1 -1
  202. package/dist/locale/tr.min.js +1 -1
  203. package/dist/locale/tr.min.mjs +1 -1
  204. package/dist/locale/tr.mjs +1 -1
  205. package/dist/locale/ug-cn.js +1 -1
  206. package/dist/locale/ug-cn.min.js +1 -1
  207. package/dist/locale/ug-cn.min.mjs +1 -1
  208. package/dist/locale/ug-cn.mjs +1 -1
  209. package/dist/locale/uk.js +1 -1
  210. package/dist/locale/uk.min.js +1 -1
  211. package/dist/locale/uk.min.mjs +1 -1
  212. package/dist/locale/uk.mjs +1 -1
  213. package/dist/locale/uz-uz.js +1 -1
  214. package/dist/locale/uz-uz.min.js +1 -1
  215. package/dist/locale/uz-uz.min.mjs +1 -1
  216. package/dist/locale/uz-uz.mjs +1 -1
  217. package/dist/locale/vi.js +1 -1
  218. package/dist/locale/vi.min.js +1 -1
  219. package/dist/locale/vi.min.mjs +1 -1
  220. package/dist/locale/vi.mjs +1 -1
  221. package/dist/locale/zh-cn.js +1 -1
  222. package/dist/locale/zh-cn.min.js +1 -1
  223. package/dist/locale/zh-cn.min.mjs +1 -1
  224. package/dist/locale/zh-cn.mjs +1 -1
  225. package/dist/locale/zh-tw.js +1 -1
  226. package/dist/locale/zh-tw.min.js +1 -1
  227. package/dist/locale/zh-tw.min.mjs +1 -1
  228. package/dist/locale/zh-tw.mjs +1 -1
  229. package/es/components/affix/src/affix2.mjs.map +1 -1
  230. package/es/components/alert/index.d.ts +1 -1
  231. package/es/components/alert/src/alert.vue.d.ts +1 -1
  232. package/es/components/alert/src/alert2.mjs.map +1 -1
  233. package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
  234. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  235. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  236. package/es/components/badge/src/badge2.mjs.map +1 -1
  237. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  238. package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  239. package/es/components/button/src/button-group2.mjs.map +1 -1
  240. package/es/components/button/src/button2.mjs.map +1 -1
  241. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  242. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  243. package/es/components/card/src/card2.mjs.map +1 -1
  244. package/es/components/carousel/src/item.mjs.map +1 -1
  245. package/es/components/carousel/src/main.mjs.map +1 -1
  246. package/es/components/cascader/index.d.ts +112 -0
  247. package/es/components/cascader/src/index.mjs +39 -34
  248. package/es/components/cascader/src/index.mjs.map +1 -1
  249. package/es/components/cascader/src/index.vue.d.ts +56 -0
  250. package/es/components/cascader-panel/index.d.ts +28 -0
  251. package/es/components/cascader-panel/src/index.mjs +10 -6
  252. package/es/components/cascader-panel/src/index.mjs.map +1 -1
  253. package/es/components/cascader-panel/src/index.vue.d.ts +14 -0
  254. package/es/components/cascader-panel/src/menu.mjs +22 -22
  255. package/es/components/cascader-panel/src/menu.mjs.map +1 -1
  256. package/es/components/cascader-panel/src/menu.vue.d.ts +14 -0
  257. package/es/components/cascader-panel/src/node-content.d.ts +16 -1
  258. package/es/components/cascader-panel/src/node-content.mjs +10 -1
  259. package/es/components/cascader-panel/src/node-content.mjs.map +1 -1
  260. package/es/components/cascader-panel/src/node.vue.d.ts +14 -0
  261. package/es/components/cascader-panel/src/node2.mjs +15 -11
  262. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  263. package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
  264. package/es/components/checkbox/src/checkbox-button.mjs.map +1 -1
  265. package/es/components/checkbox/src/checkbox-group.mjs.map +1 -1
  266. package/es/components/checkbox/src/checkbox.mjs +1 -1
  267. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  268. package/es/components/col/src/col.mjs +4 -4
  269. package/es/components/col/src/col.mjs.map +1 -1
  270. package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
  271. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  272. package/es/components/collapse-transition/src/collapse-transition.mjs.map +1 -1
  273. package/es/components/collection/src/collection-item.mjs.map +1 -1
  274. package/es/components/collection/src/collection2.mjs.map +1 -1
  275. package/es/components/color-picker/src/components/alpha-slider.mjs.map +1 -1
  276. package/es/components/color-picker/src/components/hue-slider.mjs.map +1 -1
  277. package/es/components/color-picker/src/components/predefine.mjs.map +1 -1
  278. package/es/components/color-picker/src/components/sv-panel.mjs.map +1 -1
  279. package/es/components/color-picker/src/index.mjs.map +1 -1
  280. package/es/components/container/src/aside.mjs.map +1 -1
  281. package/es/components/container/src/container.mjs.map +1 -1
  282. package/es/components/container/src/footer.mjs.map +1 -1
  283. package/es/components/container/src/header.mjs.map +1 -1
  284. package/es/components/container/src/main.mjs.map +1 -1
  285. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs.map +1 -1
  286. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs.map +1 -1
  287. package/es/components/date-picker/src/date-picker-com/basic-year-table.mjs.map +1 -1
  288. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  289. package/es/components/date-picker/src/date-picker-com/panel-date-range.mjs.map +1 -1
  290. package/es/components/date-picker/src/date-picker-com/panel-month-range.mjs.map +1 -1
  291. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  292. package/es/components/descriptions/src/index.mjs.map +1 -1
  293. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  294. package/es/components/dialog/src/dialog2.mjs.map +1 -1
  295. package/es/components/divider/src/divider2.mjs.map +1 -1
  296. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  297. package/es/components/dropdown/src/dropdown-item-impl.mjs.map +1 -1
  298. package/es/components/dropdown/src/dropdown-item.mjs.map +1 -1
  299. package/es/components/dropdown/src/dropdown-menu.mjs.map +1 -1
  300. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  301. package/es/components/empty/src/empty2.mjs.map +1 -1
  302. package/es/components/empty/src/img-empty.mjs.map +1 -1
  303. package/es/components/focus-trap/src/focus-trap.mjs.map +1 -1
  304. package/es/components/form/index.d.ts +16 -16
  305. package/es/components/form/src/form-item.d.ts +2 -1
  306. package/es/components/form/src/form-item.mjs.map +1 -1
  307. package/es/components/form/src/form-item.vue.d.ts +4 -4
  308. package/es/components/form/src/form-item2.mjs.map +1 -1
  309. package/es/components/form/src/form-label-wrap.mjs.map +1 -1
  310. package/es/components/form/src/form.d.ts +2 -2
  311. package/es/components/form/src/form.mjs.map +1 -1
  312. package/es/components/form/src/form.vue.d.ts +9 -8
  313. package/es/components/form/src/form2.mjs.map +1 -1
  314. package/es/components/form/src/utils.d.ts +2 -2
  315. package/es/components/form/src/utils.mjs.map +1 -1
  316. package/es/components/icon/src/icon2.mjs.map +1 -1
  317. package/es/components/image/src/image2.mjs.map +1 -1
  318. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  319. package/es/components/input/src/input2.mjs.map +1 -1
  320. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  321. package/es/components/link/src/link2.mjs.map +1 -1
  322. package/es/components/menu/src/menu-collapse-transition.mjs.map +1 -1
  323. package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
  324. package/es/components/menu/src/menu-item2.mjs.map +1 -1
  325. package/es/components/message/src/message2.mjs.map +1 -1
  326. package/es/components/message-box/src/index.mjs.map +1 -1
  327. package/es/components/notification/src/notification2.mjs.map +1 -1
  328. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  329. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  330. package/es/components/pagination/src/components/next.mjs.map +1 -1
  331. package/es/components/pagination/src/components/pager.mjs.map +1 -1
  332. package/es/components/pagination/src/components/prev.mjs.map +1 -1
  333. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  334. package/es/components/pagination/src/components/total.mjs.map +1 -1
  335. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  336. package/es/components/popover/src/index.mjs.map +1 -1
  337. package/es/components/popper/src/arrow.mjs.map +1 -1
  338. package/es/components/popper/src/content.mjs.map +1 -1
  339. package/es/components/popper/src/popper2.mjs.map +1 -1
  340. package/es/components/popper/src/trigger.mjs.map +1 -1
  341. package/es/components/progress/src/progress2.mjs.map +1 -1
  342. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  343. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  344. package/es/components/radio/src/radio2.mjs.map +1 -1
  345. package/es/components/rate/src/rate2.mjs.map +1 -1
  346. package/es/components/result/src/result2.mjs.map +1 -1
  347. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs.map +1 -1
  348. package/es/components/roving-focus-group/src/roving-focus-group2.mjs.map +1 -1
  349. package/es/components/roving-focus-group/src/roving-focus-item.mjs.map +1 -1
  350. package/es/components/row/index.d.ts +1 -3
  351. package/es/components/row/src/row.d.ts +15 -17
  352. package/es/components/row/src/row.mjs +17 -22
  353. package/es/components/row/src/row.mjs.map +1 -1
  354. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  355. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  356. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  357. package/es/components/select/src/option-group.mjs.map +1 -1
  358. package/es/components/select/src/option.mjs.map +1 -1
  359. package/es/components/select/src/select-dropdown.mjs.map +1 -1
  360. package/es/components/select/src/select.mjs +10 -8
  361. package/es/components/select/src/select.mjs.map +1 -1
  362. package/es/components/select-v2/src/group-item.mjs.map +1 -1
  363. package/es/components/select-v2/src/option-item.mjs.map +1 -1
  364. package/es/components/select-v2/src/select-dropdown.mjs.map +1 -1
  365. package/es/components/select-v2/src/select.mjs +2 -2
  366. package/es/components/select-v2/src/select.mjs.map +1 -1
  367. package/es/components/skeleton/src/image-placeholder.mjs.map +1 -1
  368. package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
  369. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  370. package/es/components/slider/src/button.mjs.map +1 -1
  371. package/es/components/slider/src/index.mjs.map +1 -1
  372. package/es/components/slider/src/marker.mjs.map +1 -1
  373. package/es/components/slot/src/only-child.mjs.map +1 -1
  374. package/es/components/space/src/item.mjs.map +1 -1
  375. package/es/components/steps/index.d.ts +2 -2
  376. package/es/components/steps/src/index.mjs.map +1 -1
  377. package/es/components/steps/src/item.mjs.map +1 -1
  378. package/es/components/steps/src/item.vue.d.ts +1 -1
  379. package/es/components/switch/src/switch2.mjs.map +1 -1
  380. package/es/components/table/src/filter-panel.mjs.map +1 -1
  381. package/es/components/table/src/table/style-helper.mjs +15 -2
  382. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  383. package/es/components/table/src/table-header/index.mjs +5 -6
  384. package/es/components/table/src/table-header/index.mjs.map +1 -1
  385. package/es/components/table/src/table.mjs.map +1 -1
  386. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  387. package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
  388. package/es/components/tag/src/tag2.mjs.map +1 -1
  389. package/es/components/teleport/src/teleport2.mjs.map +1 -1
  390. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  391. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.mjs.map +1 -1
  392. package/es/components/time-picker/src/time-picker-com/panel-time-pick.mjs.map +1 -1
  393. package/es/components/time-picker/src/time-picker-com/panel-time-range.mjs.map +1 -1
  394. package/es/components/time-select/src/time-select.mjs.map +1 -1
  395. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  396. package/es/components/tooltip/src/content.mjs.map +1 -1
  397. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  398. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  399. package/es/components/transfer/src/index.mjs.map +1 -1
  400. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  401. package/es/components/tree/src/tree-node-content.mjs.map +1 -1
  402. package/es/components/tree/src/tree-node.mjs.map +1 -1
  403. package/es/components/tree/src/tree.mjs.map +1 -1
  404. package/es/components/tree-v2/src/tree-node.mjs.map +1 -1
  405. package/es/components/tree-v2/src/tree.mjs.map +1 -1
  406. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  407. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  408. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  409. package/es/components/upload/src/upload2.mjs.map +1 -1
  410. package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
  411. package/es/index.mjs +1 -0
  412. package/es/index.mjs.map +1 -1
  413. package/es/tokens/form.d.ts +4 -4
  414. package/es/tokens/form.mjs.map +1 -1
  415. package/es/tokens/index.d.ts +1 -0
  416. package/es/tokens/index.mjs +1 -0
  417. package/es/tokens/index.mjs.map +1 -1
  418. package/es/tokens/row.d.ts +6 -0
  419. package/es/tokens/row.mjs +4 -0
  420. package/es/tokens/row.mjs.map +1 -0
  421. package/es/version.d.ts +1 -1
  422. package/es/version.mjs +1 -1
  423. package/es/version.mjs.map +1 -1
  424. package/lib/components/affix/src/affix2.js.map +1 -1
  425. package/lib/components/alert/index.d.ts +1 -1
  426. package/lib/components/alert/src/alert.vue.d.ts +1 -1
  427. package/lib/components/alert/src/alert2.js.map +1 -1
  428. package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
  429. package/lib/components/avatar/src/avatar2.js.map +1 -1
  430. package/lib/components/backtop/src/backtop2.js.map +1 -1
  431. package/lib/components/badge/src/badge2.js.map +1 -1
  432. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  433. package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  434. package/lib/components/button/src/button-group2.js.map +1 -1
  435. package/lib/components/button/src/button2.js.map +1 -1
  436. package/lib/components/calendar/src/calendar2.js.map +1 -1
  437. package/lib/components/calendar/src/date-table2.js.map +1 -1
  438. package/lib/components/card/src/card2.js.map +1 -1
  439. package/lib/components/carousel/src/item.js.map +1 -1
  440. package/lib/components/carousel/src/main.js.map +1 -1
  441. package/lib/components/cascader/index.d.ts +112 -0
  442. package/lib/components/cascader/src/index.js +43 -38
  443. package/lib/components/cascader/src/index.js.map +1 -1
  444. package/lib/components/cascader/src/index.vue.d.ts +56 -0
  445. package/lib/components/cascader-panel/index.d.ts +28 -0
  446. package/lib/components/cascader-panel/src/index.js +10 -6
  447. package/lib/components/cascader-panel/src/index.js.map +1 -1
  448. package/lib/components/cascader-panel/src/index.vue.d.ts +14 -0
  449. package/lib/components/cascader-panel/src/menu.js +23 -23
  450. package/lib/components/cascader-panel/src/menu.js.map +1 -1
  451. package/lib/components/cascader-panel/src/menu.vue.d.ts +14 -0
  452. package/lib/components/cascader-panel/src/node-content.d.ts +16 -1
  453. package/lib/components/cascader-panel/src/node-content.js +10 -1
  454. package/lib/components/cascader-panel/src/node-content.js.map +1 -1
  455. package/lib/components/cascader-panel/src/node.vue.d.ts +14 -0
  456. package/lib/components/cascader-panel/src/node2.js +15 -11
  457. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  458. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  459. package/lib/components/checkbox/src/checkbox-button.js.map +1 -1
  460. package/lib/components/checkbox/src/checkbox-group.js.map +1 -1
  461. package/lib/components/checkbox/src/checkbox.js +1 -1
  462. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  463. package/lib/components/col/src/col.js +4 -4
  464. package/lib/components/col/src/col.js.map +1 -1
  465. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  466. package/lib/components/collapse/src/collapse2.js.map +1 -1
  467. package/lib/components/collapse-transition/src/collapse-transition.js.map +1 -1
  468. package/lib/components/collection/src/collection-item.js.map +1 -1
  469. package/lib/components/collection/src/collection2.js.map +1 -1
  470. package/lib/components/color-picker/src/components/alpha-slider.js.map +1 -1
  471. package/lib/components/color-picker/src/components/hue-slider.js.map +1 -1
  472. package/lib/components/color-picker/src/components/predefine.js.map +1 -1
  473. package/lib/components/color-picker/src/components/sv-panel.js.map +1 -1
  474. package/lib/components/color-picker/src/index.js.map +1 -1
  475. package/lib/components/container/src/aside.js.map +1 -1
  476. package/lib/components/container/src/container.js.map +1 -1
  477. package/lib/components/container/src/footer.js.map +1 -1
  478. package/lib/components/container/src/header.js.map +1 -1
  479. package/lib/components/container/src/main.js.map +1 -1
  480. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js.map +1 -1
  481. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js.map +1 -1
  482. package/lib/components/date-picker/src/date-picker-com/basic-year-table.js.map +1 -1
  483. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
  484. package/lib/components/date-picker/src/date-picker-com/panel-date-range.js.map +1 -1
  485. package/lib/components/date-picker/src/date-picker-com/panel-month-range.js.map +1 -1
  486. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  487. package/lib/components/descriptions/src/index.js.map +1 -1
  488. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  489. package/lib/components/dialog/src/dialog2.js.map +1 -1
  490. package/lib/components/divider/src/divider2.js.map +1 -1
  491. package/lib/components/drawer/src/drawer2.js.map +1 -1
  492. package/lib/components/dropdown/src/dropdown-item-impl.js.map +1 -1
  493. package/lib/components/dropdown/src/dropdown-item.js.map +1 -1
  494. package/lib/components/dropdown/src/dropdown-menu.js.map +1 -1
  495. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  496. package/lib/components/empty/src/empty2.js.map +1 -1
  497. package/lib/components/empty/src/img-empty.js.map +1 -1
  498. package/lib/components/focus-trap/src/focus-trap.js.map +1 -1
  499. package/lib/components/form/index.d.ts +16 -16
  500. package/lib/components/form/src/form-item.d.ts +2 -1
  501. package/lib/components/form/src/form-item.js.map +1 -1
  502. package/lib/components/form/src/form-item.vue.d.ts +4 -4
  503. package/lib/components/form/src/form-item2.js.map +1 -1
  504. package/lib/components/form/src/form-label-wrap.js.map +1 -1
  505. package/lib/components/form/src/form.d.ts +2 -2
  506. package/lib/components/form/src/form.js.map +1 -1
  507. package/lib/components/form/src/form.vue.d.ts +9 -8
  508. package/lib/components/form/src/form2.js.map +1 -1
  509. package/lib/components/form/src/utils.d.ts +2 -2
  510. package/lib/components/form/src/utils.js.map +1 -1
  511. package/lib/components/icon/src/icon2.js.map +1 -1
  512. package/lib/components/image/src/image2.js.map +1 -1
  513. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  514. package/lib/components/input/src/input2.js.map +1 -1
  515. package/lib/components/input-number/src/input-number2.js.map +1 -1
  516. package/lib/components/link/src/link2.js.map +1 -1
  517. package/lib/components/menu/src/menu-collapse-transition.js.map +1 -1
  518. package/lib/components/menu/src/menu-item-group2.js.map +1 -1
  519. package/lib/components/menu/src/menu-item2.js.map +1 -1
  520. package/lib/components/message/src/message2.js.map +1 -1
  521. package/lib/components/message-box/src/index.js.map +1 -1
  522. package/lib/components/notification/src/notification2.js.map +1 -1
  523. package/lib/components/page-header/src/page-header2.js.map +1 -1
  524. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  525. package/lib/components/pagination/src/components/next.js.map +1 -1
  526. package/lib/components/pagination/src/components/pager.js.map +1 -1
  527. package/lib/components/pagination/src/components/prev.js.map +1 -1
  528. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  529. package/lib/components/pagination/src/components/total.js.map +1 -1
  530. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  531. package/lib/components/popover/src/index.js.map +1 -1
  532. package/lib/components/popper/src/arrow.js.map +1 -1
  533. package/lib/components/popper/src/content.js.map +1 -1
  534. package/lib/components/popper/src/popper2.js.map +1 -1
  535. package/lib/components/popper/src/trigger.js.map +1 -1
  536. package/lib/components/progress/src/progress2.js.map +1 -1
  537. package/lib/components/radio/src/radio-button2.js.map +1 -1
  538. package/lib/components/radio/src/radio-group2.js.map +1 -1
  539. package/lib/components/radio/src/radio2.js.map +1 -1
  540. package/lib/components/rate/src/rate2.js.map +1 -1
  541. package/lib/components/result/src/result2.js.map +1 -1
  542. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js.map +1 -1
  543. package/lib/components/roving-focus-group/src/roving-focus-group2.js.map +1 -1
  544. package/lib/components/roving-focus-group/src/roving-focus-item.js.map +1 -1
  545. package/lib/components/row/index.d.ts +1 -3
  546. package/lib/components/row/src/row.d.ts +15 -17
  547. package/lib/components/row/src/row.js +16 -21
  548. package/lib/components/row/src/row.js.map +1 -1
  549. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  550. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  551. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  552. package/lib/components/select/src/option-group.js.map +1 -1
  553. package/lib/components/select/src/option.js.map +1 -1
  554. package/lib/components/select/src/select-dropdown.js.map +1 -1
  555. package/lib/components/select/src/select.js +10 -8
  556. package/lib/components/select/src/select.js.map +1 -1
  557. package/lib/components/select-v2/src/group-item.js.map +1 -1
  558. package/lib/components/select-v2/src/option-item.js.map +1 -1
  559. package/lib/components/select-v2/src/select-dropdown.js.map +1 -1
  560. package/lib/components/select-v2/src/select.js +2 -2
  561. package/lib/components/select-v2/src/select.js.map +1 -1
  562. package/lib/components/skeleton/src/image-placeholder.js.map +1 -1
  563. package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
  564. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  565. package/lib/components/slider/src/button.js.map +1 -1
  566. package/lib/components/slider/src/index.js.map +1 -1
  567. package/lib/components/slider/src/marker.js.map +1 -1
  568. package/lib/components/slot/src/only-child.js.map +1 -1
  569. package/lib/components/space/src/item.js.map +1 -1
  570. package/lib/components/steps/index.d.ts +2 -2
  571. package/lib/components/steps/src/index.js.map +1 -1
  572. package/lib/components/steps/src/item.js.map +1 -1
  573. package/lib/components/steps/src/item.vue.d.ts +1 -1
  574. package/lib/components/switch/src/switch2.js.map +1 -1
  575. package/lib/components/table/src/filter-panel.js.map +1 -1
  576. package/lib/components/table/src/table/style-helper.js +15 -2
  577. package/lib/components/table/src/table/style-helper.js.map +1 -1
  578. package/lib/components/table/src/table-header/index.js +5 -6
  579. package/lib/components/table/src/table-header/index.js.map +1 -1
  580. package/lib/components/table/src/table.js.map +1 -1
  581. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  582. package/lib/components/tabs/src/tab-pane2.js.map +1 -1
  583. package/lib/components/tag/src/tag2.js.map +1 -1
  584. package/lib/components/teleport/src/teleport2.js.map +1 -1
  585. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  586. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.js.map +1 -1
  587. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.js.map +1 -1
  588. package/lib/components/time-picker/src/time-picker-com/panel-time-range.js.map +1 -1
  589. package/lib/components/time-select/src/time-select.js.map +1 -1
  590. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  591. package/lib/components/tooltip/src/content.js.map +1 -1
  592. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  593. package/lib/components/tooltip/src/trigger.js.map +1 -1
  594. package/lib/components/transfer/src/index.js.map +1 -1
  595. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  596. package/lib/components/tree/src/tree-node-content.js.map +1 -1
  597. package/lib/components/tree/src/tree-node.js.map +1 -1
  598. package/lib/components/tree/src/tree.js.map +1 -1
  599. package/lib/components/tree-v2/src/tree-node.js.map +1 -1
  600. package/lib/components/tree-v2/src/tree.js.map +1 -1
  601. package/lib/components/upload/src/upload-content2.js.map +1 -1
  602. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  603. package/lib/components/upload/src/upload-list2.js.map +1 -1
  604. package/lib/components/upload/src/upload2.js.map +1 -1
  605. package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
  606. package/lib/index.js +2 -0
  607. package/lib/index.js.map +1 -1
  608. package/lib/tokens/form.d.ts +4 -4
  609. package/lib/tokens/form.js.map +1 -1
  610. package/lib/tokens/index.d.ts +1 -0
  611. package/lib/tokens/index.js +2 -0
  612. package/lib/tokens/index.js.map +1 -1
  613. package/lib/tokens/row.d.ts +6 -0
  614. package/lib/tokens/row.js +8 -0
  615. package/lib/tokens/row.js.map +1 -0
  616. package/lib/version.d.ts +1 -1
  617. package/lib/version.js +1 -1
  618. package/lib/version.js.map +1 -1
  619. package/package.json +6 -6
  620. package/tags.json +1 -1
  621. package/theme-chalk/el-select-dropdown.css +1 -1
  622. package/theme-chalk/el-select.css +1 -1
  623. package/theme-chalk/el-table.css +1 -1
  624. package/theme-chalk/index.css +1 -1
  625. package/theme-chalk/src/common/var.scss +12 -0
  626. package/theme-chalk/src/select-dropdown.scss +29 -11
  627. package/theme-chalk/src/select.scss +11 -0
  628. package/theme-chalk/src/table.scss +16 -6
  629. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-menu.mjs","sources":["../../../../../../packages/components/dropdown/src/dropdown-menu.vue"],"sourcesContent":["<template>\n <ul\n :ref=\"dropdownListWrapperRef\"\n :class=\"dropdownKls\"\n :style=\"rovingFocusGroupRootStyle\"\n :tabindex=\"-1\"\n role=\"menu\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @keydown=\"handleKeydown\"\n @mousedown=\"onMousedown\"\n >\n <slot></slot>\n </ul>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent, inject, unref } from 'vue'\nimport { composeRefs, composeEventHandlers } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { FOCUS_TRAP_INJECTION_KEY } from '@element-plus/components/focus-trap'\nimport {\n ROVING_FOCUS_COLLECTION_INJECTION_KEY,\n ROVING_FOCUS_GROUP_INJECTION_KEY,\n focusFirst,\n} from '@element-plus/components/roving-focus-group'\nimport { useNamespace } from '@element-plus/hooks'\nimport { DROPDOWN_INJECTION_KEY } from './tokens'\nimport {\n DROPDOWN_COLLECTION_INJECTION_KEY,\n dropdownMenuProps,\n FIRST_LAST_KEYS,\n LAST_KEYS,\n} from './dropdown'\nimport { useDropdown } from './useDropdown'\n\nexport default defineComponent({\n name: 'ElDropdownMenu',\n props: dropdownMenuProps,\n setup(props) {\n const ns = useNamespace('dropdown')\n const { _elDropdownSize } = useDropdown()\n const size = _elDropdownSize.value\n\n const { focusTrapRef, onKeydown } = inject(\n FOCUS_TRAP_INJECTION_KEY,\n undefined\n )!\n\n const { contentRef } = inject(DROPDOWN_INJECTION_KEY, undefined)!\n\n const { collectionRef: dropdownCollectionRef, getItems } = inject(\n DROPDOWN_COLLECTION_INJECTION_KEY,\n undefined\n )!\n\n const {\n rovingFocusGroupRef,\n rovingFocusGroupRootStyle,\n tabIndex,\n onBlur,\n onFocus,\n onMousedown,\n } = inject(ROVING_FOCUS_GROUP_INJECTION_KEY, undefined)!\n\n const { collectionRef: rovingFocusGroupCollectionRef } = inject(\n ROVING_FOCUS_COLLECTION_INJECTION_KEY,\n undefined\n )!\n\n const dropdownKls = computed(() => {\n return [ns.b('menu'), ns.bm('menu', size?.value)]\n })\n\n const dropdownListWrapperRef = composeRefs(\n contentRef,\n dropdownCollectionRef,\n focusTrapRef,\n rovingFocusGroupRef,\n rovingFocusGroupCollectionRef\n )\n\n const composedKeydown = composeEventHandlers(\n (e: KeyboardEvent) => {\n props.onKeydown?.(e)\n },\n (e) => {\n const { currentTarget, code, target } = e\n const isKeydownContained = (currentTarget as Node).contains(\n target as Node\n )\n\n if (isKeydownContained) {\n // TODO: implement typeahead search\n }\n\n if (EVENT_CODE.tab === code) {\n e.stopImmediatePropagation()\n }\n\n e.preventDefault()\n\n if (target !== unref(contentRef)) return\n if (!FIRST_LAST_KEYS.includes(code)) return\n const items = getItems<{ disabled: boolean }>().filter(\n (item) => !item.disabled\n )\n const targets = items.map((item) => item.ref!)\n if (LAST_KEYS.includes(code)) {\n targets.reverse()\n }\n focusFirst(targets)\n }\n )\n\n const handleKeydown = (e: KeyboardEvent) => {\n composedKeydown(e)\n onKeydown(e)\n }\n\n return {\n size,\n rovingFocusGroupRootStyle,\n tabIndex,\n dropdownKls,\n dropdownListWrapperRef,\n handleKeydown,\n onBlur,\n onFocus,\n onMousedown,\n }\n },\n})\n</script>\n"],"names":["DROPDOWN_COLLECTION_INJECTION_KEY","ROVING_FOCUS_COLLECTION_INJECTION_KEY","_openBlock","_normalizeClass"],"mappings":";;;;;;;;;;;;;;;;;;;AAmCA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,EACP,MAAM,OAAO;AACX,UAAM,KAAK,aAAa;AACxB,UAAM,EAAE,oBAAoB;AAC5B,UAAM,OAAO,gBAAgB;AAE7B,UAAM,EAAE,cAAc,cAAc,OAClC,0BACA;AAGF,UAAM,EAAE,eAAe,OAAO,wBAAwB;AAEtD,UAAM,EAAE,eAAe,uBAAuB,aAAa,OACzDA,0BACA;AAGF,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACE,OAAO,kCAAkC;AAE7C,UAAM,EAAE,eAAe,kCAAkC,OACvDC,4BACA;AAGF,UAAM,cAAc,SAAS,MAAM;AACjC,aAAO,CAAC,GAAG,EAAE,SAAS,GAAG,GAAG,QAAQ;AAAM;AAG5C,UAAM,yBAAyB,YAC7B,YACA,uBACA,cACA,qBACA;AAGF,UAAM,kBAAkB,qBACtB,CAAC,MAAqB;AACpB,YAAM;AAAY,OAEpB;AACE,cAAQ;AACR,YAAM,qBAAsB,cAAuB;AAInD,8BAAwB;AAAA;AAIxB;AACE,UAAE;AAAA;AAGJ;AAEA;AAAkC;AAClC;AAAqC;AACrC;AAGA,YAAM,gBAAgB;AACtB;AACE;AAAQ;AAEV;AAAW;AAIf;AACE;AACA;AAAU;AAGZ;AAAO;AACL,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;2CAnHC;AAAA,SAXGC;AAAA,IACL;AAAO,IACP,OAAKC,eAAE;AAAA,IACP;AAAU,IACX;AAAK,IACJ;AAAM,IACN;AAAO,IACP;AAAS,IACT;AAAW;;AAEC;;;;;;;"}
1
+ {"version":3,"file":"dropdown-menu.mjs","sources":["../../../../../../packages/components/dropdown/src/dropdown-menu.vue"],"sourcesContent":["<template>\n <ul\n :ref=\"dropdownListWrapperRef\"\n :class=\"dropdownKls\"\n :style=\"rovingFocusGroupRootStyle\"\n :tabindex=\"-1\"\n role=\"menu\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @keydown=\"handleKeydown\"\n @mousedown=\"onMousedown\"\n >\n <slot></slot>\n </ul>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent, inject, unref } from 'vue'\nimport { composeRefs, composeEventHandlers } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { FOCUS_TRAP_INJECTION_KEY } from '@element-plus/components/focus-trap'\nimport {\n ROVING_FOCUS_COLLECTION_INJECTION_KEY,\n ROVING_FOCUS_GROUP_INJECTION_KEY,\n focusFirst,\n} from '@element-plus/components/roving-focus-group'\nimport { useNamespace } from '@element-plus/hooks'\nimport { DROPDOWN_INJECTION_KEY } from './tokens'\nimport {\n DROPDOWN_COLLECTION_INJECTION_KEY,\n dropdownMenuProps,\n FIRST_LAST_KEYS,\n LAST_KEYS,\n} from './dropdown'\nimport { useDropdown } from './useDropdown'\n\nexport default defineComponent({\n name: 'ElDropdownMenu',\n props: dropdownMenuProps,\n setup(props) {\n const ns = useNamespace('dropdown')\n const { _elDropdownSize } = useDropdown()\n const size = _elDropdownSize.value\n\n const { focusTrapRef, onKeydown } = inject(\n FOCUS_TRAP_INJECTION_KEY,\n undefined\n )!\n\n const { contentRef } = inject(DROPDOWN_INJECTION_KEY, undefined)!\n\n const { collectionRef: dropdownCollectionRef, getItems } = inject(\n DROPDOWN_COLLECTION_INJECTION_KEY,\n undefined\n )!\n\n const {\n rovingFocusGroupRef,\n rovingFocusGroupRootStyle,\n tabIndex,\n onBlur,\n onFocus,\n onMousedown,\n } = inject(ROVING_FOCUS_GROUP_INJECTION_KEY, undefined)!\n\n const { collectionRef: rovingFocusGroupCollectionRef } = inject(\n ROVING_FOCUS_COLLECTION_INJECTION_KEY,\n undefined\n )!\n\n const dropdownKls = computed(() => {\n return [ns.b('menu'), ns.bm('menu', size?.value)]\n })\n\n const dropdownListWrapperRef = composeRefs(\n contentRef,\n dropdownCollectionRef,\n focusTrapRef,\n rovingFocusGroupRef,\n rovingFocusGroupCollectionRef\n )\n\n const composedKeydown = composeEventHandlers(\n (e: KeyboardEvent) => {\n props.onKeydown?.(e)\n },\n (e) => {\n const { currentTarget, code, target } = e\n const isKeydownContained = (currentTarget as Node).contains(\n target as Node\n )\n\n if (isKeydownContained) {\n // TODO: implement typeahead search\n }\n\n if (EVENT_CODE.tab === code) {\n e.stopImmediatePropagation()\n }\n\n e.preventDefault()\n\n if (target !== unref(contentRef)) return\n if (!FIRST_LAST_KEYS.includes(code)) return\n const items = getItems<{ disabled: boolean }>().filter(\n (item) => !item.disabled\n )\n const targets = items.map((item) => item.ref!)\n if (LAST_KEYS.includes(code)) {\n targets.reverse()\n }\n focusFirst(targets)\n }\n )\n\n const handleKeydown = (e: KeyboardEvent) => {\n composedKeydown(e)\n onKeydown(e)\n }\n\n return {\n size,\n rovingFocusGroupRootStyle,\n tabIndex,\n dropdownKls,\n dropdownListWrapperRef,\n handleKeydown,\n onBlur,\n onFocus,\n onMousedown,\n }\n },\n})\n</script>\n"],"names":["DROPDOWN_COLLECTION_INJECTION_KEY","ROVING_FOCUS_COLLECTION_INJECTION_KEY","_openBlock","_createElementBlock","_normalizeClass","_normalizeStyle","_renderSlot"],"mappings":"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"}
@@ -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 :effect=\"effect\"\n :fallback-placements=\"['bottom', 'top']\"\n :popper-options=\"popperOptions\"\n :gpu-acceleration=\"false\"\n :hide-after=\"hideTimeout\"\n :manual-mode=\"true\"\n :placement=\"placement\"\n :popper-class=\"[ns.e('popper'), popperClass]\"\n :reference-element=\"referenceElementRef?.$el\"\n :trigger=\"trigger\"\n :show-after=\"showTimeout\"\n :stop-popper-mouse-event=\"false\"\n :virtual-ref=\"triggeringElementRef\"\n :virtual-triggering=\"splitButton\"\n :disabled=\"disabled\"\n append-to-body\n pure\n :transition=\"`${ns.namespace.value}-zoom-in-top`\"\n persistent\n @show=\"$emit('visible-change', true)\"\n @hide=\"$emit('visible-change', false)\"\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-focus-trap trapped @mount-on-focus=\"onMountOnFocus\">\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\"></slot>\n </el-dropdown-collection>\n </el-roving-focus-group>\n </el-focus-trap>\n </el-scrollbar>\n </template>\n <template v-if=\"!splitButton\" #default>\n <div :class=\"dropdownTriggerKls\">\n <slot name=\"default\" />\n </div>\n </template>\n </el-tooltip>\n <template v-if=\"splitButton\">\n <el-button-group>\n <el-button\n ref=\"referenceElementRef\"\n :size=\"dropdownSize\"\n :type=\"type\"\n :disabled=\"disabled\"\n @click=\"handlerMainButtonClick\"\n >\n <slot name=\"default\" />\n </el-button>\n <el-button\n ref=\"triggeringElementRef\"\n :size=\"dropdownSize\"\n :type=\"type\"\n :class=\"ns.e('caret-button')\"\n :disabled=\"disabled\"\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<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n provide,\n ref,\n toRef,\n unref,\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 ElFocusTrap from '@element-plus/components/focus-trap'\nimport ElRovingFocusGroup from '@element-plus/components/roving-focus-group'\nimport { addUnit } from '@element-plus/utils'\nimport { ArrowDown } from '@element-plus/icons-vue'\nimport { useNamespace, useSize } from '@element-plus/hooks'\nimport { ElCollection as ElDropdownCollection, dropdownProps } from './dropdown'\nimport { DROPDOWN_INJECTION_KEY } from './tokens'\n\nimport type { CSSProperties } from 'vue'\n\nconst { ButtonGroup: ElButtonGroup } = ElButton\n\nexport default defineComponent({\n name: 'ElDropdown',\n components: {\n ElButton,\n ElFocusTrap,\n ElButtonGroup,\n ElScrollbar,\n ElDropdownCollection,\n ElTooltip,\n ElRovingFocusGroup,\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\n const triggeringElementRef = ref()\n const referenceElementRef = ref()\n const popperRef = ref<InstanceType<typeof ElTooltip> | null>(null)\n const contentRef = ref<HTMLElement | null>(null)\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\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 = useSize()\n\n function commandHandler(...args: any[]) {\n emit('command', ...args)\n }\n\n function onItemEnter() {\n // NOOP for now\n }\n\n function onItemLeave() {\n const contentEl = unref(contentRef)\n\n 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 provide(DROPDOWN_INJECTION_KEY, {\n contentRef,\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 onMountOnFocus = (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 ns,\n scrollbar,\n wrapStyle,\n dropdownTriggerKls,\n dropdownSize,\n currentTabId,\n handleCurrentTabIdChange,\n handlerMainButtonClick,\n handleEntryFocus,\n handleClose,\n handleOpen,\n onMountOnFocus,\n popperRef,\n triggeringElementRef,\n referenceElementRef,\n }\n },\n})\n</script>\n"],"names":["ElDropdownCollection","_withCtx"],"mappings":";;;;;;;;;;;;;;;;;;;AAsGA,MAAM,EAAE,aAAa,kBAAkB;AAEvC,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,0BACAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,EAEF,OAAO;AAAA,EACP,OAAO,CAAC,kBAAkB,SAAS;AAAA,EACnC,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,YAAY;AAClB,UAAM,KAAK,aAAa;AAExB,UAAM,uBAAuB;AAC7B,UAAM,sBAAsB;AAC5B,UAAM,YAAY,IAA2C;AAC7D,UAAM,aAAa,IAAwB;AAC3C,UAAM,YAAY,IAAI;AACtB,UAAM,eAAe,IAAmB;AACxC,UAAM,kBAAkB,IAAI;AAE5B,UAAM,YAAY,SAAwB;AAAO,MAC/C,WAAW,QAAQ,MAAM;AAAA;AAE3B,UAAM,qBAAqB,SAAS,MAAM,CAAC,GAAG,EAAE,aAAa;AAE7D,2BAAuB;AACrB;AAAA;AAGF,2BAAuB;AACrB;AAAiB;AAGnB;AACE,uBAAiB;AAAA;AAGnB;AAEA;AACE,sBAAgB,GAAG;AAAA;AAGrB;AAAuB;AAIvB,2BAAuB;AACrB;AAEA;AACA;AAAqB;AAGvB;AACE;AAAqB;AAGvB,8BAA0B;AACxB;AACE;AACA,UAAE;AAAA;AAAA;AAIN;AAAgC;AAC9B;AACA,MACA;AAAA,MACA;AAAA;AAGF;AAAsB,MACpB;AAAU;AACV,MACA;AAAA,MACA;AAAA,MACA;AAAsB,MACtB;AAA0B;AAG5B;AACE;AACA,wBAAkB;AAAQ;AACT;AAAA;AAInB;AACE;AAAc;AAGhB;AAAO,MACL;AAAA,MACA;AAAA;AACA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;;;;;;;;AA9IE,gDA3EmB,eAAe;AAAA;;AAoDzB;AAlDP;AACK;AACa;AACL,MAChB;AAAkB,MAClB;AAAY,MACZ;AAAa,MACb;AAAW,MACX,yBAAkB;AAAa,MAC/B;AAAwC,MACxC;AAAS,MACT;AAAY,MACZ,2BAAyB;AAAA,MACzB;AAAa,MACb;AAAoB,MACpB;AAAU,MACX;AAAA,MACA;AAAA,MACC;AAA4B,MAC7B;AAAA,MACC;AAAW,MACX,QAAI;AAAO;MAED;AAoBM,qBAAA;AAAA;AAlBT;AACS,eACTC;AAAA;AACa;4BAEjB;AAYgB;AAAA;AAZD;AAAyB;;AAWd;AAAA;AATf;AACU,8BACL;AAAA;AACY,kBACvB;AAAa;;AAIW;AAAA;AADM;AAAA;AAAA;;;;;;;;;;;;;;;;AAMR;AAGvB;AAAA,YAFA;AAAO;YACXA;AAAuB;;;;;AAwBT;AAVJ;AAAA,eAPN;AAAA;AACG;AACA,mBACI;AAAA,UACV;AAAO;;AAEe,wBAAA;AAAA;AAAA;;;AAUb;AAPN,UACH;AAAM;AACA,wCACI,EAAC;AAAA,UACX;AAAU;;AAE4C;AAAA;AAAlC;;AAAwB;AAAA;AAAA;;;;;;;;;;;;;;;;;;"}
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 :effect=\"effect\"\n :fallback-placements=\"['bottom', 'top']\"\n :popper-options=\"popperOptions\"\n :gpu-acceleration=\"false\"\n :hide-after=\"hideTimeout\"\n :manual-mode=\"true\"\n :placement=\"placement\"\n :popper-class=\"[ns.e('popper'), popperClass]\"\n :reference-element=\"referenceElementRef?.$el\"\n :trigger=\"trigger\"\n :show-after=\"showTimeout\"\n :stop-popper-mouse-event=\"false\"\n :virtual-ref=\"triggeringElementRef\"\n :virtual-triggering=\"splitButton\"\n :disabled=\"disabled\"\n append-to-body\n pure\n :transition=\"`${ns.namespace.value}-zoom-in-top`\"\n persistent\n @show=\"$emit('visible-change', true)\"\n @hide=\"$emit('visible-change', false)\"\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-focus-trap trapped @mount-on-focus=\"onMountOnFocus\">\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\"></slot>\n </el-dropdown-collection>\n </el-roving-focus-group>\n </el-focus-trap>\n </el-scrollbar>\n </template>\n <template v-if=\"!splitButton\" #default>\n <div :class=\"dropdownTriggerKls\">\n <slot name=\"default\" />\n </div>\n </template>\n </el-tooltip>\n <template v-if=\"splitButton\">\n <el-button-group>\n <el-button\n ref=\"referenceElementRef\"\n :size=\"dropdownSize\"\n :type=\"type\"\n :disabled=\"disabled\"\n @click=\"handlerMainButtonClick\"\n >\n <slot name=\"default\" />\n </el-button>\n <el-button\n ref=\"triggeringElementRef\"\n :size=\"dropdownSize\"\n :type=\"type\"\n :class=\"ns.e('caret-button')\"\n :disabled=\"disabled\"\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<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n provide,\n ref,\n toRef,\n unref,\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 ElFocusTrap from '@element-plus/components/focus-trap'\nimport ElRovingFocusGroup from '@element-plus/components/roving-focus-group'\nimport { addUnit } from '@element-plus/utils'\nimport { ArrowDown } from '@element-plus/icons-vue'\nimport { useNamespace, useSize } from '@element-plus/hooks'\nimport { ElCollection as ElDropdownCollection, dropdownProps } from './dropdown'\nimport { DROPDOWN_INJECTION_KEY } from './tokens'\n\nimport type { CSSProperties } from 'vue'\n\nconst { ButtonGroup: ElButtonGroup } = ElButton\n\nexport default defineComponent({\n name: 'ElDropdown',\n components: {\n ElButton,\n ElFocusTrap,\n ElButtonGroup,\n ElScrollbar,\n ElDropdownCollection,\n ElTooltip,\n ElRovingFocusGroup,\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\n const triggeringElementRef = ref()\n const referenceElementRef = ref()\n const popperRef = ref<InstanceType<typeof ElTooltip> | null>(null)\n const contentRef = ref<HTMLElement | null>(null)\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\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 = useSize()\n\n function commandHandler(...args: any[]) {\n emit('command', ...args)\n }\n\n function onItemEnter() {\n // NOOP for now\n }\n\n function onItemLeave() {\n const contentEl = unref(contentRef)\n\n 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 provide(DROPDOWN_INJECTION_KEY, {\n contentRef,\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 onMountOnFocus = (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 ns,\n scrollbar,\n wrapStyle,\n dropdownTriggerKls,\n dropdownSize,\n currentTabId,\n handleCurrentTabIdChange,\n handlerMainButtonClick,\n handleEntryFocus,\n handleClose,\n handleOpen,\n onMountOnFocus,\n popperRef,\n triggeringElementRef,\n referenceElementRef,\n }\n },\n})\n</script>\n"],"names":["ElDropdownCollection","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_createVNode","_createSlots","_withCtx","_createElementVNode","_createBlock","_renderSlot"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"empty2.mjs","sources":["../../../../../../packages/components/empty/src/empty.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('image')\" :style=\"imageStyle\">\n <img v-if=\"image\" :src=\"image\" ondragstart=\"return false\" />\n <slot v-else name=\"image\">\n <img-empty />\n </slot>\n </div>\n <div :class=\"ns.e('description')\">\n <slot v-if=\"$slots.description\" name=\"description\"></slot>\n <p v-else>{{ emptyDescription }}</p>\n </div>\n <div v-if=\"$slots.default\" :class=\"ns.e('bottom')\">\n <slot></slot>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ImgEmpty from './img-empty.vue'\nimport { emptyProps } from './empty'\n\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElEmpty',\n components: {\n ImgEmpty,\n },\n\n props: emptyProps,\n\n setup(props) {\n const { t } = useLocale()\n const ns = useNamespace('empty')\n const emptyDescription = computed(\n () => props.description || t('el.table.emptyText')\n )\n const imageStyle = computed<CSSProperties>(() => ({\n width: props.imageSize ? `${props.imageSize}px` : '',\n }))\n\n return {\n ns,\n emptyDescription,\n imageStyle,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_normalizeStyle","_renderSlot","_createVNode"],"mappings":";;;;;;;;AA0BA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA;AAAA,EAGF,OAAO;AAAA,EAEP,MAAM,OAAO;AACX,UAAM,EAAE,MAAM;AACd,UAAM,KAAK,aAAa;AACxB,UAAM,mBAAmB,SACvB,MAAM,MAAM,eAAe,EAAE;AAE/B,UAAM,aAAa,SAAwB;AAAO,MAChD,OAAO,MAAM,YAAY,GAAG,MAAM,gBAAgB;AAAA;AAGpD,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;sBA9CJA,mBAcM;AAAA,IAdA,OAAKC,eAAE,QAAG;AAAA;IACdC,mBAKM;AAAA,MALA,OAAKD,eAAE,QAAG,EAAC;AAAA,MAAY,OAAKE,eAAE;AAAA;MACvB,2BAAXH,mBAA4D;AAAA;QAAzC,KAAK;AAAA,QAAO,aAAY;AAAA,iCAC3CI,WAEO,kCAFP,MAEO;AAAA,QADLC,YAAa;AAAA;AAAA;IAGjBH,mBAGM;AAAA,MAHA,OAAKD,eAAE,QAAG,EAAC;AAAA;MACH,YAAO,cAAnBG,WAA0D,wDAC1DJ,mBAAoC,iCAAvB,wBAAgB;AAAA;IAEpB,YAAO,wBAAlBA,mBAEM;AAAA;MAFsB,OAAKC,eAAE,QAAG,EAAC;AAAA;MACrCG,WAAa;AAAA;;;;;;;"}
1
+ {"version":3,"file":"empty2.mjs","sources":["../../../../../../packages/components/empty/src/empty.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('image')\" :style=\"imageStyle\">\n <img v-if=\"image\" :src=\"image\" ondragstart=\"return false\" />\n <slot v-else name=\"image\">\n <img-empty />\n </slot>\n </div>\n <div :class=\"ns.e('description')\">\n <slot v-if=\"$slots.description\" name=\"description\"></slot>\n <p v-else>{{ emptyDescription }}</p>\n </div>\n <div v-if=\"$slots.default\" :class=\"ns.e('bottom')\">\n <slot></slot>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ImgEmpty from './img-empty.vue'\nimport { emptyProps } from './empty'\n\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElEmpty',\n components: {\n ImgEmpty,\n },\n\n props: emptyProps,\n\n setup(props) {\n const { t } = useLocale()\n const ns = useNamespace('empty')\n const emptyDescription = computed(\n () => props.description || t('el.table.emptyText')\n )\n const imageStyle = computed<CSSProperties>(() => ({\n width: props.imageSize ? `${props.imageSize}px` : '',\n }))\n\n return {\n ns,\n emptyDescription,\n imageStyle,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_normalizeStyle","_openBlock","_renderSlot","_createVNode","_createCommentVNode"],"mappings":";;;;;;;;AA0BA,MAAK,YAAa,eAAa,CAAA;AAAA,EAC7B,IAAM,EAAA,SAAA;AAAA,EACN,UAAY,EAAA;AAAA,IACV,QAAA;AAAA,GAAA;AAAA,EAGF,KAAO,EAAA,UAAA;AAAA,EAEP,MAAM,KAAO,EAAA;AACX,IAAA,MAAM,EAAE,CAAM,EAAA,GAAA,SAAA,EAAA,CAAA;AACd,IAAA,MAAM,KAAK,YAAa,CAAA,OAAA,CAAA,CAAA;AACxB,IAAA,MAAM,gBAAmB,GAAA,QAAA,CACvB,MAAM,KAAA,CAAM,eAAe,CAAE,CAAA,oBAAA,CAAA,CAAA,CAAA;AAE/B,IAAM,MAAA,UAAA,GAAa,SAAwB,OAAO;AAAA,MAChD,KAAO,EAAA,KAAA,CAAM,SAAY,GAAA,CAAA,EAAG,MAAM,SAAgB,CAAA,EAAA,CAAA,GAAA,EAAA;AAAA,KAAA,CAAA,CAAA,CAAA;AAGpD,IAAO,OAAA;AAAA,MACL,EAAA;AAAA,MACA,gBAAA;AAAA,MACA,UAAA;AAAA,KAAA,CAAA;AAAA,GAAA;AAAA,CAAA,CAAA,CAAA;;;;;sBA9CJA,kBAcM,CAAA,KAAA,EAAA;AAAA,IAdA,KAAA,EAAKC,eAAE,IAAG,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA;AAAA,GAAA,EAAA;IACdC,kBAKM,CAAA,KAAA,EAAA;AAAA,MALA,KAAA,EAAKD,cAAE,CAAA,IAAA,CAAA,EAAA,CAAG,CAAC,CAAA,OAAA,CAAA,CAAA;AAAA,MAAY,OAAKE,cAAE,CAAA,IAAA,CAAA,UAAA,CAAA;AAAA,KAAA,EAAA;AACvB,MAAA,IAAA,CAAA,KAAA,IAAAC,SAAA,EAAA,EAAXJ,kBAA4D,CAAA,KAAA,EAAA;AAAA,QAAA,GAAA,EAAA,CAAA;QAAzC,GAAK,EAAA,IAAA,CAAA,KAAA;AAAA,QAAO,WAAY,EAAA,cAAA;AAAA,OAC3C,EAAA,IAAA,EAAA,CAAA,EAAA,UAAA,CAAA,IAAAK,UAAA,CAEO,kCAFP,MAEO;AAAA,QADLC,WAAa,CAAA,oBAAA,CAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAAA,CAAA,CAAA;IAGjBJ,kBAGM,CAAA,KAAA,EAAA;AAAA,MAHA,KAAA,EAAKD,cAAE,CAAA,IAAA,CAAA,EAAA,CAAG,CAAC,CAAA,aAAA,CAAA,CAAA;AAAA,KAAA,EAAA;AACH,MAAA,IAAA,CAAA,MAAA,CAAO,WAAnB,GAAAI,UAAA,CAA0D,IAC1D,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,GAAA,EAAA,CAAA,EAAA,CAAA,IAAAD,SAAA,EAAA,EAAAJ,kBAAA,CAAoC,iCAAvB,IAAgB,CAAA,gBAAA,CAAA,EAAA,CAAA,CAAA,CAAA;AAAA,KAAA,EAAA,CAAA,CAAA;AAEpB,IAAA,IAAA,CAAA,MAAA,CAAO,wBAAlBA,kBAEM,CAAA,KAAA,EAAA;AAAA,MAAA,GAAA,EAAA,CAAA;MAFsB,KAAK,EAAAC,cAAA,CAAE,QAAG,CAAC,CAAA,QAAA,CAAA,CAAA;AAAA,KAAA,EAAA;MACrCI,UAAa,CAAA,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA;AAAA,KAAA,EAAA,CAAA,CAAA,IAAAE,kBAAA,CAAA,MAAA,EAAA,IAAA,CAAA;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"img-empty.mjs","sources":["../../../../../../packages/components/empty/src/img-empty.vue"],"sourcesContent":["<template>\n <svg\n viewBox=\"0 0 79 86\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n >\n <defs>\n <linearGradient\n :id=\"`linearGradient-1-${id}`\"\n x1=\"38.8503086%\"\n y1=\"0%\"\n x2=\"61.1496914%\"\n y2=\"100%\"\n >\n <stop stop-color=\"var(--el-empty-fill-color-1)\" offset=\"0%\" />\n <stop stop-color=\"var(--el-empty-fill-color-4)\" offset=\"100%\" />\n </linearGradient>\n <linearGradient\n :id=\"`linearGradient-2-${id}`\"\n x1=\"0%\"\n y1=\"9.5%\"\n x2=\"100%\"\n y2=\"90.5%\"\n >\n <stop stop-color=\"var(--el-empty-fill-color-1)\" offset=\"0%\" />\n <stop stop-color=\"var(--el-empty-fill-color-6)\" offset=\"100%\" />\n </linearGradient>\n <rect :id=\"`path-3-${id}`\" x=\"0\" y=\"0\" width=\"17\" height=\"36\" />\n </defs>\n <g\n id=\"Illustrations\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g id=\"B-type\" transform=\"translate(-1268.000000, -535.000000)\">\n <g id=\"Group-2\" transform=\"translate(1268.000000, 535.000000)\">\n <path\n id=\"Oval-Copy-2\"\n d=\"M39.5,86 C61.3152476,86 79,83.9106622 79,81.3333333 C79,78.7560045 57.3152476,78 35.5,78 C13.6847524,78 0,78.7560045 0,81.3333333 C0,83.9106622 17.6847524,86 39.5,86 Z\"\n fill=\"var(--el-empty-fill-color-3)\"\n />\n <polygon\n id=\"Rectangle-Copy-14\"\n fill=\"var(--el-empty-fill-color-7)\"\n transform=\"translate(27.500000, 51.500000) scale(1, -1) translate(-27.500000, -51.500000) \"\n points=\"13 58 53 58 42 45 2 45\"\n />\n <g\n id=\"Group-Copy\"\n transform=\"translate(34.500000, 31.500000) scale(-1, 1) rotate(-25.000000) translate(-34.500000, -31.500000) translate(7.000000, 10.000000)\"\n >\n <polygon\n id=\"Rectangle-Copy-10\"\n fill=\"var(--el-empty-fill-color-7)\"\n transform=\"translate(11.500000, 5.000000) scale(1, -1) translate(-11.500000, -5.000000) \"\n points=\"2.84078316e-14 3 18 3 23 7 5 7\"\n />\n <polygon\n id=\"Rectangle-Copy-11\"\n fill=\"var(--el-empty-fill-color-5)\"\n points=\"-3.69149156e-15 7 38 7 38 43 -3.69149156e-15 43\"\n />\n <rect\n id=\"Rectangle-Copy-12\"\n :fill=\"`url(#linearGradient-1-${id})`\"\n transform=\"translate(46.500000, 25.000000) scale(-1, 1) translate(-46.500000, -25.000000) \"\n x=\"38\"\n y=\"7\"\n width=\"17\"\n height=\"36\"\n />\n <polygon\n id=\"Rectangle-Copy-13\"\n fill=\"var(--el-empty-fill-color-2)\"\n transform=\"translate(39.500000, 3.500000) scale(-1, 1) translate(-39.500000, -3.500000) \"\n points=\"24 7 41 7 55 -3.63806207e-12 38 -3.63806207e-12\"\n />\n </g>\n <rect\n id=\"Rectangle-Copy-15\"\n :fill=\"`url(#linearGradient-2-${id})`\"\n x=\"13\"\n y=\"45\"\n width=\"40\"\n height=\"36\"\n />\n <g id=\"Rectangle-Copy-17\" transform=\"translate(53.000000, 45.000000)\">\n <mask :id=\"`mask-4-${id}`\" fill=\"var(--el-empty-fill-color-0)\">\n <use :xlink:href=\"`#path-3-${id}`\" />\n </mask>\n <use\n id=\"Mask\"\n fill=\"var(--el-empty-fill-color-8)\"\n transform=\"translate(8.500000, 18.000000) scale(-1, 1) translate(-8.500000, -18.000000) \"\n :xlink:href=\"`#path-3-${id}`\"\n />\n <polygon\n id=\"Rectangle-Copy\"\n fill=\"var(--el-empty-fill-color-9)\"\n :mask=\"`url(#mask-4-${id})`\"\n transform=\"translate(12.000000, 9.000000) scale(-1, 1) translate(-12.000000, -9.000000) \"\n points=\"7 0 24 0 20 18 -1.70530257e-13 16\"\n />\n </g>\n <polygon\n id=\"Rectangle-Copy-18\"\n fill=\"var(--el-empty-fill-color-2)\"\n transform=\"translate(66.000000, 51.500000) scale(-1, 1) translate(-66.000000, -51.500000) \"\n points=\"62 45 79 45 70 58 53 58\"\n />\n </g>\n </g>\n </g>\n </svg>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\n\nlet id = 0\nexport default defineComponent({\n name: 'ImgEmpty',\n setup() {\n return {\n id: ++id,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_createElementVNode"],"mappings":"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"}
1
+ {"version":3,"file":"img-empty.mjs","sources":["../../../../../../packages/components/empty/src/img-empty.vue"],"sourcesContent":["<template>\n <svg\n viewBox=\"0 0 79 86\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n >\n <defs>\n <linearGradient\n :id=\"`linearGradient-1-${id}`\"\n x1=\"38.8503086%\"\n y1=\"0%\"\n x2=\"61.1496914%\"\n y2=\"100%\"\n >\n <stop stop-color=\"var(--el-empty-fill-color-1)\" offset=\"0%\" />\n <stop stop-color=\"var(--el-empty-fill-color-4)\" offset=\"100%\" />\n </linearGradient>\n <linearGradient\n :id=\"`linearGradient-2-${id}`\"\n x1=\"0%\"\n y1=\"9.5%\"\n x2=\"100%\"\n y2=\"90.5%\"\n >\n <stop stop-color=\"var(--el-empty-fill-color-1)\" offset=\"0%\" />\n <stop stop-color=\"var(--el-empty-fill-color-6)\" offset=\"100%\" />\n </linearGradient>\n <rect :id=\"`path-3-${id}`\" x=\"0\" y=\"0\" width=\"17\" height=\"36\" />\n </defs>\n <g\n id=\"Illustrations\"\n stroke=\"none\"\n stroke-width=\"1\"\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g id=\"B-type\" transform=\"translate(-1268.000000, -535.000000)\">\n <g id=\"Group-2\" transform=\"translate(1268.000000, 535.000000)\">\n <path\n id=\"Oval-Copy-2\"\n d=\"M39.5,86 C61.3152476,86 79,83.9106622 79,81.3333333 C79,78.7560045 57.3152476,78 35.5,78 C13.6847524,78 0,78.7560045 0,81.3333333 C0,83.9106622 17.6847524,86 39.5,86 Z\"\n fill=\"var(--el-empty-fill-color-3)\"\n />\n <polygon\n id=\"Rectangle-Copy-14\"\n fill=\"var(--el-empty-fill-color-7)\"\n transform=\"translate(27.500000, 51.500000) scale(1, -1) translate(-27.500000, -51.500000) \"\n points=\"13 58 53 58 42 45 2 45\"\n />\n <g\n id=\"Group-Copy\"\n transform=\"translate(34.500000, 31.500000) scale(-1, 1) rotate(-25.000000) translate(-34.500000, -31.500000) translate(7.000000, 10.000000)\"\n >\n <polygon\n id=\"Rectangle-Copy-10\"\n fill=\"var(--el-empty-fill-color-7)\"\n transform=\"translate(11.500000, 5.000000) scale(1, -1) translate(-11.500000, -5.000000) \"\n points=\"2.84078316e-14 3 18 3 23 7 5 7\"\n />\n <polygon\n id=\"Rectangle-Copy-11\"\n fill=\"var(--el-empty-fill-color-5)\"\n points=\"-3.69149156e-15 7 38 7 38 43 -3.69149156e-15 43\"\n />\n <rect\n id=\"Rectangle-Copy-12\"\n :fill=\"`url(#linearGradient-1-${id})`\"\n transform=\"translate(46.500000, 25.000000) scale(-1, 1) translate(-46.500000, -25.000000) \"\n x=\"38\"\n y=\"7\"\n width=\"17\"\n height=\"36\"\n />\n <polygon\n id=\"Rectangle-Copy-13\"\n fill=\"var(--el-empty-fill-color-2)\"\n transform=\"translate(39.500000, 3.500000) scale(-1, 1) translate(-39.500000, -3.500000) \"\n points=\"24 7 41 7 55 -3.63806207e-12 38 -3.63806207e-12\"\n />\n </g>\n <rect\n id=\"Rectangle-Copy-15\"\n :fill=\"`url(#linearGradient-2-${id})`\"\n x=\"13\"\n y=\"45\"\n width=\"40\"\n height=\"36\"\n />\n <g id=\"Rectangle-Copy-17\" transform=\"translate(53.000000, 45.000000)\">\n <mask :id=\"`mask-4-${id}`\" fill=\"var(--el-empty-fill-color-0)\">\n <use :xlink:href=\"`#path-3-${id}`\" />\n </mask>\n <use\n id=\"Mask\"\n fill=\"var(--el-empty-fill-color-8)\"\n transform=\"translate(8.500000, 18.000000) scale(-1, 1) translate(-8.500000, -18.000000) \"\n :xlink:href=\"`#path-3-${id}`\"\n />\n <polygon\n id=\"Rectangle-Copy\"\n fill=\"var(--el-empty-fill-color-9)\"\n :mask=\"`url(#mask-4-${id})`\"\n transform=\"translate(12.000000, 9.000000) scale(-1, 1) translate(-12.000000, -9.000000) \"\n points=\"7 0 24 0 20 18 -1.70530257e-13 16\"\n />\n </g>\n <polygon\n id=\"Rectangle-Copy-18\"\n fill=\"var(--el-empty-fill-color-2)\"\n transform=\"translate(66.000000, 51.500000) scale(-1, 1) translate(-66.000000, -51.500000) \"\n points=\"62 45 79 45 70 58 53 58\"\n />\n </g>\n </g>\n </g>\n </svg>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\n\nlet id = 0\nexport default defineComponent({\n name: 'ImgEmpty',\n setup() {\n return {\n id: ++id,\n }\n },\n})\n</script>\n"],"names":["_createElementVNode","_openBlock","_createElementBlock"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"focus-trap.mjs","sources":["../../../../../../packages/components/focus-trap/src/focus-trap.vue"],"sourcesContent":["<template>\n <slot />\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n ref,\n onMounted,\n onBeforeUnmount,\n provide,\n unref,\n watch,\n nextTick,\n} from 'vue'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport {\n focusableStack,\n focusFirstDescendant,\n getEdges,\n tryFocus,\n obtainAllFocusableElements,\n} from './utils'\nimport {\n FOCUS_TRAP_INJECTION_KEY,\n FOCUS_ON_MOUNT,\n FOCUS_ON_MOUNT_OPTS,\n ON_MOUNT_FOCUS_EVT,\n ON_UNMOUNT_FOCUS_EVT,\n FOCUS_ON_UNMOUNT,\n} from './tokens'\n\nimport type { FocusLayer } from './utils'\n\nexport default defineComponent({\n name: 'ElFocusTrap',\n inheritAttrs: false,\n props: {\n loop: Boolean,\n trapped: Boolean,\n },\n emits: [ON_MOUNT_FOCUS_EVT, ON_UNMOUNT_FOCUS_EVT],\n setup(props, { emit }) {\n const focusTrapRef = ref<HTMLElement | null>()\n const forwardRef = ref<HTMLElement | null>(null)\n let lastFocusBeforeMounted: HTMLElement | null\n let lastFocusAfterMounted: HTMLElement | null\n\n const focusLayer: FocusLayer = {\n paused: false,\n pause() {\n this.paused = true\n },\n resume() {\n this.paused = false\n },\n }\n\n const onKeydown = (e: KeyboardEvent) => {\n if (!props.loop && !props.trapped) return\n if (focusLayer.paused) return\n\n const { key, altKey, ctrlKey, metaKey, currentTarget, shiftKey } = e\n const { loop } = props\n const isTabbing =\n key === EVENT_CODE.tab && !altKey && !ctrlKey && !metaKey\n\n const currentFocusingEl = document.activeElement\n if (isTabbing && currentFocusingEl) {\n const container = currentTarget as HTMLElement\n const [first, last] = getEdges(container)\n const isTabbable = first && last\n\n if (!isTabbable) {\n if (currentFocusingEl === container) e.preventDefault()\n } else {\n if (!shiftKey && currentFocusingEl === last) {\n e.preventDefault()\n if (loop) tryFocus(first, true)\n } else if (shiftKey && currentFocusingEl === first) {\n e.preventDefault()\n if (loop) tryFocus(last, true)\n }\n }\n }\n }\n\n provide(FOCUS_TRAP_INJECTION_KEY, {\n focusTrapRef: forwardRef,\n onKeydown,\n })\n\n const focusOnMount = (e: Event) => {\n emit(ON_MOUNT_FOCUS_EVT, e)\n }\n const focusOnUnmount = (e: Event) => emit(ON_UNMOUNT_FOCUS_EVT, e)\n const onFocusIn = (e: Event) => {\n const trapContainer = unref(forwardRef)\n if (focusLayer.paused || !trapContainer) return\n const target = e.target as HTMLElement | null\n if (target && trapContainer.contains(target)) {\n lastFocusAfterMounted = target\n } else {\n tryFocus(lastFocusAfterMounted, true)\n }\n }\n\n const onFocusOut = (e: Event) => {\n const trapContainer = unref(forwardRef)\n if (focusLayer.paused || !trapContainer) return\n\n if (\n !trapContainer.contains(\n (e as FocusEvent).relatedTarget as HTMLElement | null\n )\n ) {\n tryFocus(lastFocusAfterMounted, true)\n }\n }\n\n const cleanupDocumentListeners = () => {\n document.removeEventListener('focusin', onFocusIn)\n document.removeEventListener('focusout', onFocusOut)\n }\n\n onMounted(() => {\n const trapContainer = unref(forwardRef)\n if (trapContainer) {\n focusableStack.push(focusLayer)\n const prevFocusedElement = document.activeElement\n lastFocusBeforeMounted = prevFocusedElement as HTMLElement | null\n const isPrevFocusContained = trapContainer.contains(prevFocusedElement)\n if (!isPrevFocusContained) {\n const mountEvent = new Event(FOCUS_ON_MOUNT, FOCUS_ON_MOUNT_OPTS)\n trapContainer.addEventListener(FOCUS_ON_MOUNT, focusOnMount)\n trapContainer.dispatchEvent(mountEvent)\n if (!mountEvent.defaultPrevented) {\n nextTick(() => {\n focusFirstDescendant(\n obtainAllFocusableElements(trapContainer),\n true\n )\n if (document.activeElement === prevFocusedElement) {\n tryFocus(trapContainer)\n }\n })\n }\n }\n }\n\n watch(\n () => props.trapped,\n (trapped) => {\n if (trapped) {\n document.addEventListener('focusin', onFocusIn)\n document.addEventListener('focusout', onFocusOut)\n } else {\n cleanupDocumentListeners()\n }\n },\n { immediate: true }\n )\n })\n\n onBeforeUnmount(() => {\n cleanupDocumentListeners()\n const trapContainer = unref(forwardRef)\n\n if (trapContainer) {\n trapContainer.removeEventListener(FOCUS_ON_MOUNT, focusOnMount)\n const unmountEvent = new Event(FOCUS_ON_UNMOUNT, FOCUS_ON_MOUNT_OPTS)\n\n trapContainer.addEventListener(FOCUS_ON_UNMOUNT, focusOnUnmount)\n trapContainer.dispatchEvent(unmountEvent)\n\n if (!unmountEvent.defaultPrevented) {\n tryFocus(lastFocusBeforeMounted ?? document.body, true)\n }\n\n trapContainer.removeEventListener(FOCUS_ON_UNMOUNT, focusOnMount)\n focusableStack.remove(focusLayer)\n }\n })\n\n return {\n focusTrapRef,\n forwardRef,\n onKeydown,\n }\n },\n})\n</script>\n"],"names":["_renderSlot"],"mappings":"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"}
1
+ {"version":3,"file":"focus-trap.mjs","sources":["../../../../../../packages/components/focus-trap/src/focus-trap.vue"],"sourcesContent":["<template>\n <slot />\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n ref,\n onMounted,\n onBeforeUnmount,\n provide,\n unref,\n watch,\n nextTick,\n} from 'vue'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport {\n focusableStack,\n focusFirstDescendant,\n getEdges,\n tryFocus,\n obtainAllFocusableElements,\n} from './utils'\nimport {\n FOCUS_TRAP_INJECTION_KEY,\n FOCUS_ON_MOUNT,\n FOCUS_ON_MOUNT_OPTS,\n ON_MOUNT_FOCUS_EVT,\n ON_UNMOUNT_FOCUS_EVT,\n FOCUS_ON_UNMOUNT,\n} from './tokens'\n\nimport type { FocusLayer } from './utils'\n\nexport default defineComponent({\n name: 'ElFocusTrap',\n inheritAttrs: false,\n props: {\n loop: Boolean,\n trapped: Boolean,\n },\n emits: [ON_MOUNT_FOCUS_EVT, ON_UNMOUNT_FOCUS_EVT],\n setup(props, { emit }) {\n const focusTrapRef = ref<HTMLElement | null>()\n const forwardRef = ref<HTMLElement | null>(null)\n let lastFocusBeforeMounted: HTMLElement | null\n let lastFocusAfterMounted: HTMLElement | null\n\n const focusLayer: FocusLayer = {\n paused: false,\n pause() {\n this.paused = true\n },\n resume() {\n this.paused = false\n },\n }\n\n const onKeydown = (e: KeyboardEvent) => {\n if (!props.loop && !props.trapped) return\n if (focusLayer.paused) return\n\n const { key, altKey, ctrlKey, metaKey, currentTarget, shiftKey } = e\n const { loop } = props\n const isTabbing =\n key === EVENT_CODE.tab && !altKey && !ctrlKey && !metaKey\n\n const currentFocusingEl = document.activeElement\n if (isTabbing && currentFocusingEl) {\n const container = currentTarget as HTMLElement\n const [first, last] = getEdges(container)\n const isTabbable = first && last\n\n if (!isTabbable) {\n if (currentFocusingEl === container) e.preventDefault()\n } else {\n if (!shiftKey && currentFocusingEl === last) {\n e.preventDefault()\n if (loop) tryFocus(first, true)\n } else if (shiftKey && currentFocusingEl === first) {\n e.preventDefault()\n if (loop) tryFocus(last, true)\n }\n }\n }\n }\n\n provide(FOCUS_TRAP_INJECTION_KEY, {\n focusTrapRef: forwardRef,\n onKeydown,\n })\n\n const focusOnMount = (e: Event) => {\n emit(ON_MOUNT_FOCUS_EVT, e)\n }\n const focusOnUnmount = (e: Event) => emit(ON_UNMOUNT_FOCUS_EVT, e)\n const onFocusIn = (e: Event) => {\n const trapContainer = unref(forwardRef)\n if (focusLayer.paused || !trapContainer) return\n const target = e.target as HTMLElement | null\n if (target && trapContainer.contains(target)) {\n lastFocusAfterMounted = target\n } else {\n tryFocus(lastFocusAfterMounted, true)\n }\n }\n\n const onFocusOut = (e: Event) => {\n const trapContainer = unref(forwardRef)\n if (focusLayer.paused || !trapContainer) return\n\n if (\n !trapContainer.contains(\n (e as FocusEvent).relatedTarget as HTMLElement | null\n )\n ) {\n tryFocus(lastFocusAfterMounted, true)\n }\n }\n\n const cleanupDocumentListeners = () => {\n document.removeEventListener('focusin', onFocusIn)\n document.removeEventListener('focusout', onFocusOut)\n }\n\n onMounted(() => {\n const trapContainer = unref(forwardRef)\n if (trapContainer) {\n focusableStack.push(focusLayer)\n const prevFocusedElement = document.activeElement\n lastFocusBeforeMounted = prevFocusedElement as HTMLElement | null\n const isPrevFocusContained = trapContainer.contains(prevFocusedElement)\n if (!isPrevFocusContained) {\n const mountEvent = new Event(FOCUS_ON_MOUNT, FOCUS_ON_MOUNT_OPTS)\n trapContainer.addEventListener(FOCUS_ON_MOUNT, focusOnMount)\n trapContainer.dispatchEvent(mountEvent)\n if (!mountEvent.defaultPrevented) {\n nextTick(() => {\n focusFirstDescendant(\n obtainAllFocusableElements(trapContainer),\n true\n )\n if (document.activeElement === prevFocusedElement) {\n tryFocus(trapContainer)\n }\n })\n }\n }\n }\n\n watch(\n () => props.trapped,\n (trapped) => {\n if (trapped) {\n document.addEventListener('focusin', onFocusIn)\n document.addEventListener('focusout', onFocusOut)\n } else {\n cleanupDocumentListeners()\n }\n },\n { immediate: true }\n )\n })\n\n onBeforeUnmount(() => {\n cleanupDocumentListeners()\n const trapContainer = unref(forwardRef)\n\n if (trapContainer) {\n trapContainer.removeEventListener(FOCUS_ON_MOUNT, focusOnMount)\n const unmountEvent = new Event(FOCUS_ON_UNMOUNT, FOCUS_ON_MOUNT_OPTS)\n\n trapContainer.addEventListener(FOCUS_ON_UNMOUNT, focusOnUnmount)\n trapContainer.dispatchEvent(unmountEvent)\n\n if (!unmountEvent.defaultPrevented) {\n tryFocus(lastFocusBeforeMounted ?? document.body, true)\n }\n\n trapContainer.removeEventListener(FOCUS_ON_UNMOUNT, focusOnMount)\n focusableStack.remove(focusLayer)\n }\n })\n\n return {\n focusTrapRef,\n forwardRef,\n onKeydown,\n }\n },\n})\n</script>\n"],"names":["_renderSlot"],"mappings":"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"}
@@ -31,9 +31,9 @@ export declare const ElForm: import("element-plus/es/utils").SFCWithInstall<impo
31
31
  readonly hideRequiredAsterisk: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
32
32
  readonly scrollToError: BooleanConstructor;
33
33
  }>> & {
34
- onValidate?: ((prop: import("element-plus/es/utils").BuildPropType<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<string>>, unknown, unknown> | undefined, isValid: boolean, message: string) => any) | undefined;
34
+ onValidate?: ((prop: import("./src/form-item").FormItemProp, isValid: boolean, message: string) => any) | undefined;
35
35
  }>>;
36
- emit: (event: "validate", prop: import("element-plus/es/utils").BuildPropType<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<string>>, unknown, unknown> | undefined, isValid: boolean, message: string) => void;
36
+ emit: (event: "validate", prop: import("./src/form-item").FormItemProp, isValid: boolean, message: string) => void;
37
37
  fields: import("../..").FormItemContext[];
38
38
  formSize: import("vue").ComputedRef<"default" | "small" | "large">;
39
39
  ns: {
@@ -55,13 +55,13 @@ export declare const ElForm: import("element-plus/es/utils").SFCWithInstall<impo
55
55
  })[]>;
56
56
  addField: (field: import("../..").FormItemContext) => void;
57
57
  removeField: (field: import("../..").FormItemContext) => void;
58
- resetFields: (props?: import("element-plus/es/utils").Arrayable<string> | undefined) => void;
59
- clearValidate: (props?: import("element-plus/es/utils").Arrayable<string> | undefined) => void;
58
+ resetFields: (props?: import("element-plus/es/utils").Arrayable<import("./src/form-item").FormItemProp> | undefined) => void;
59
+ clearValidate: (props?: import("element-plus/es/utils").Arrayable<import("./src/form-item").FormItemProp> | undefined) => void;
60
60
  validate: (callback?: import("./src/types").FormValidateCallback | undefined) => Promise<void>;
61
- validateField: (props?: import("element-plus/es/utils").Arrayable<string> | undefined, callback?: import("./src/types").FormValidateCallback | undefined) => Promise<void>;
62
- scrollToField: (prop: string) => void;
61
+ validateField: (props?: import("element-plus/es/utils").Arrayable<import("./src/form-item").FormItemProp> | undefined, callback?: import("./src/types").FormValidateCallback | undefined) => Promise<void>;
62
+ scrollToField: (prop: import("./src/form-item").FormItemProp) => void;
63
63
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
64
- validate: (prop: import("element-plus/es/utils").BuildPropType<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<string>>, unknown, unknown> | undefined, isValid: boolean, message: string) => boolean;
64
+ validate: (prop: import("./src/form-item").FormItemProp, isValid: boolean, message: string) => boolean;
65
65
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
66
66
  readonly model: ObjectConstructor;
67
67
  readonly rules: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<Partial<Record<string, import("element-plus/es/utils").Arrayable<import("./src/types").FormItemRule>>>>, unknown, unknown, unknown, unknown>;
@@ -78,7 +78,7 @@ export declare const ElForm: import("element-plus/es/utils").SFCWithInstall<impo
78
78
  readonly hideRequiredAsterisk: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
79
79
  readonly scrollToError: BooleanConstructor;
80
80
  }>> & {
81
- onValidate?: ((prop: import("element-plus/es/utils").BuildPropType<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<string>>, unknown, unknown> | undefined, isValid: boolean, message: string) => any) | undefined;
81
+ onValidate?: ((prop: import("./src/form-item").FormItemProp, isValid: boolean, message: string) => any) | undefined;
82
82
  }, {
83
83
  size: import("element-plus/es/utils").BuildPropType<StringConstructor, "default" | "small" | "large", unknown>;
84
84
  disabled: boolean;
@@ -96,7 +96,7 @@ export declare const ElForm: import("element-plus/es/utils").SFCWithInstall<impo
96
96
  FormItem: import("vue").DefineComponent<{
97
97
  readonly label: StringConstructor;
98
98
  readonly labelWidth: import("element-plus/es/utils").BuildPropReturn<readonly [StringConstructor, NumberConstructor], "", unknown, unknown, unknown>;
99
- readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<string>>, unknown, unknown, unknown, unknown>;
99
+ readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./src/form-item").FormItemProp>, unknown, unknown, unknown, unknown>;
100
100
  readonly required: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
101
101
  readonly rules: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<import("./src/types").FormItemRule>>, unknown, unknown, unknown, unknown>;
102
102
  readonly error: StringConstructor;
@@ -110,7 +110,7 @@ export declare const ElForm: import("element-plus/es/utils").SFCWithInstall<impo
110
110
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
111
111
  readonly label: StringConstructor;
112
112
  readonly labelWidth: import("element-plus/es/utils").BuildPropReturn<readonly [StringConstructor, NumberConstructor], "", unknown, unknown, unknown>;
113
- readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<string>>, unknown, unknown, unknown, unknown>;
113
+ readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./src/form-item").FormItemProp>, unknown, unknown, unknown, unknown>;
114
114
  readonly required: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
115
115
  readonly rules: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<import("./src/types").FormItemRule>>, unknown, unknown, unknown, unknown>;
116
116
  readonly error: StringConstructor;
@@ -182,7 +182,7 @@ export declare const ElForm: import("element-plus/es/utils").SFCWithInstall<impo
182
182
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
183
183
  readonly label: StringConstructor;
184
184
  readonly labelWidth: import("element-plus/es/utils").BuildPropReturn<readonly [StringConstructor, NumberConstructor], "", unknown, unknown, unknown>;
185
- readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<string>>, unknown, unknown, unknown, unknown>;
185
+ readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./src/form-item").FormItemProp>, unknown, unknown, unknown, unknown>;
186
186
  readonly required: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
187
187
  readonly rules: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<import("./src/types").FormItemRule>>, unknown, unknown, unknown, unknown>;
188
188
  readonly error: StringConstructor;
@@ -198,7 +198,7 @@ export declare const ElForm: import("element-plus/es/utils").SFCWithInstall<impo
198
198
  labelWidth: import("element-plus/es/utils").BuildPropType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
199
199
  showMessage: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
200
200
  inlineMessage: import("element-plus/es/utils").BuildPropType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
201
- prop: import("element-plus/es/utils").BuildPropType<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<string>>, unknown, unknown>;
201
+ prop: import("element-plus/es/utils").BuildPropType<import("element-plus/es/utils").PropWrapper<import("./src/form-item").FormItemProp>, unknown, unknown>;
202
202
  validateStatus: import("element-plus/es/utils").BuildPropType<StringConstructor, "" | "success" | "error" | "validating", unknown>;
203
203
  }>;
204
204
  };
@@ -206,7 +206,7 @@ export default ElForm;
206
206
  export declare const ElFormItem: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
207
207
  readonly label: StringConstructor;
208
208
  readonly labelWidth: import("element-plus/es/utils").BuildPropReturn<readonly [StringConstructor, NumberConstructor], "", unknown, unknown, unknown>;
209
- readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<string>>, unknown, unknown, unknown, unknown>;
209
+ readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./src/form-item").FormItemProp>, unknown, unknown, unknown, unknown>;
210
210
  readonly required: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
211
211
  readonly rules: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<import("./src/types").FormItemRule>>, unknown, unknown, unknown, unknown>;
212
212
  readonly error: StringConstructor;
@@ -220,7 +220,7 @@ export declare const ElFormItem: import("element-plus/es/utils").SFCWithInstall<
220
220
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
221
221
  readonly label: StringConstructor;
222
222
  readonly labelWidth: import("element-plus/es/utils").BuildPropReturn<readonly [StringConstructor, NumberConstructor], "", unknown, unknown, unknown>;
223
- readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<string>>, unknown, unknown, unknown, unknown>;
223
+ readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./src/form-item").FormItemProp>, unknown, unknown, unknown, unknown>;
224
224
  readonly required: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
225
225
  readonly rules: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<import("./src/types").FormItemRule>>, unknown, unknown, unknown, unknown>;
226
226
  readonly error: StringConstructor;
@@ -292,7 +292,7 @@ export declare const ElFormItem: import("element-plus/es/utils").SFCWithInstall<
292
292
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
293
293
  readonly label: StringConstructor;
294
294
  readonly labelWidth: import("element-plus/es/utils").BuildPropReturn<readonly [StringConstructor, NumberConstructor], "", unknown, unknown, unknown>;
295
- readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<string>>, unknown, unknown, unknown, unknown>;
295
+ readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./src/form-item").FormItemProp>, unknown, unknown, unknown, unknown>;
296
296
  readonly required: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
297
297
  readonly rules: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<import("./src/types").FormItemRule>>, unknown, unknown, unknown, unknown>;
298
298
  readonly error: StringConstructor;
@@ -308,7 +308,7 @@ export declare const ElFormItem: import("element-plus/es/utils").SFCWithInstall<
308
308
  labelWidth: import("element-plus/es/utils").BuildPropType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
309
309
  showMessage: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
310
310
  inlineMessage: import("element-plus/es/utils").BuildPropType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
311
- prop: import("element-plus/es/utils").BuildPropType<import("element-plus/es/utils").PropWrapper<import("element-plus/es/utils").Arrayable<string>>, unknown, unknown>;
311
+ prop: import("element-plus/es/utils").BuildPropType<import("element-plus/es/utils").PropWrapper<import("./src/form-item").FormItemProp>, unknown, unknown>;
312
312
  validateStatus: import("element-plus/es/utils").BuildPropType<StringConstructor, "" | "success" | "error" | "validating", unknown>;
313
313
  }>>;
314
314
  export * from './src/form';
@@ -4,10 +4,11 @@ import type FormItem from './form-item.vue';
4
4
  import type { FormItemRule } from './types';
5
5
  export declare const formItemValidateStates: readonly ["", "error", "validating", "success"];
6
6
  export declare type FormItemValidateState = typeof formItemValidateStates[number];
7
+ export declare type FormItemProp = Arrayable<string>;
7
8
  export declare const formItemProps: {
8
9
  readonly label: StringConstructor;
9
10
  readonly labelWidth: import("element-plus/es/utils").BuildPropReturn<readonly [StringConstructor, NumberConstructor], "", unknown, unknown, unknown>;
10
- readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<Arrayable<string>>, unknown, unknown, unknown, unknown>;
11
+ readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<FormItemProp>, unknown, unknown, unknown, unknown>;
11
12
  readonly required: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
12
13
  readonly rules: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<Arrayable<FormItemRule>>, unknown, unknown, unknown, unknown>;
13
14
  readonly error: StringConstructor;
@@ -1 +1 @@
1
- {"version":3,"file":"form-item.mjs","sources":["../../../../../../packages/components/form/src/form-item.ts"],"sourcesContent":["import { componentSizes } from '@element-plus/constants'\nimport { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { Arrayable } from '@element-plus/utils'\nimport type FormItem from './form-item.vue'\nimport type { FormItemRule } from './types'\n\nexport const formItemValidateStates = [\n '',\n 'error',\n 'validating',\n 'success',\n] as const\nexport type FormItemValidateState = typeof formItemValidateStates[number]\n\nexport const formItemProps = buildProps({\n label: String,\n labelWidth: {\n type: [String, Number],\n default: '',\n },\n prop: {\n type: definePropType<Arrayable<string>>([String, Array]),\n },\n required: {\n type: Boolean,\n default: undefined,\n },\n rules: {\n type: definePropType<Arrayable<FormItemRule>>([Object, Array]),\n },\n error: String,\n validateStatus: {\n type: String,\n values: formItemValidateStates,\n },\n for: String,\n inlineMessage: {\n type: [String, Boolean],\n default: '',\n },\n showMessage: {\n type: Boolean,\n default: true,\n },\n size: {\n type: String,\n values: componentSizes,\n },\n} as const)\nexport type FormItemProps = ExtractPropTypes<typeof formItemProps>\n\nexport type FormItemInstance = InstanceType<typeof FormItem>\n"],"names":[],"mappings":";;;;;AAEY,MAAC,sBAAsB,GAAG;AACtC,EAAE,EAAE;AACJ,EAAE,OAAO;AACT,EAAE,YAAY;AACd,EAAE,SAAS;AACX,EAAE;AACU,MAAC,aAAa,GAAG,UAAU,CAAC;AACxC,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzC,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzC,GAAG;AACH,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,sBAAsB;AAClC,GAAG;AACH,EAAE,GAAG,EAAE,MAAM;AACb,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC3B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,cAAc;AAC1B,GAAG;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"form-item.mjs","sources":["../../../../../../packages/components/form/src/form-item.ts"],"sourcesContent":["import { componentSizes } from '@element-plus/constants'\nimport { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { Arrayable } from '@element-plus/utils'\nimport type FormItem from './form-item.vue'\nimport type { FormItemRule } from './types'\n\nexport const formItemValidateStates = [\n '',\n 'error',\n 'validating',\n 'success',\n] as const\nexport type FormItemValidateState = typeof formItemValidateStates[number]\n\nexport type FormItemProp = Arrayable<string>\n\nexport const formItemProps = buildProps({\n label: String,\n labelWidth: {\n type: [String, Number],\n default: '',\n },\n prop: {\n type: definePropType<FormItemProp>([String, Array]),\n },\n required: {\n type: Boolean,\n default: undefined,\n },\n rules: {\n type: definePropType<Arrayable<FormItemRule>>([Object, Array]),\n },\n error: String,\n validateStatus: {\n type: String,\n values: formItemValidateStates,\n },\n for: String,\n inlineMessage: {\n type: [String, Boolean],\n default: '',\n },\n showMessage: {\n type: Boolean,\n default: true,\n },\n size: {\n type: String,\n values: componentSizes,\n },\n} as const)\nexport type FormItemProps = ExtractPropTypes<typeof formItemProps>\n\nexport type FormItemInstance = InstanceType<typeof FormItem>\n"],"names":[],"mappings":";;;;;AAEY,MAAC,sBAAsB,GAAG;AACtC,EAAE,EAAE;AACJ,EAAE,OAAO;AACT,EAAE,YAAY;AACd,EAAE,SAAS;AACX,EAAE;AACU,MAAC,aAAa,GAAG,UAAU,CAAC;AACxC,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzC,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzC,GAAG;AACH,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,sBAAsB;AAClC,GAAG;AACH,EAAE,GAAG,EAAE,MAAM;AACb,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC3B,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,cAAc;AAC1B,GAAG;AACH,CAAC;;;;"}
@@ -6,7 +6,7 @@ import type { FormItemRule } from './types';
6
6
  declare const _default: import("vue").DefineComponent<{
7
7
  readonly label: StringConstructor;
8
8
  readonly labelWidth: import("element-plus/es/utils").BuildPropReturn<readonly [StringConstructor, NumberConstructor], "", unknown, unknown, unknown>;
9
- readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<Arrayable<string>>, unknown, unknown, unknown, unknown>;
9
+ readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./form-item").FormItemProp>, unknown, unknown, unknown, unknown>;
10
10
  readonly required: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
11
11
  readonly rules: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<Arrayable<FormItemRule>>, unknown, unknown, unknown, unknown>;
12
12
  readonly error: StringConstructor;
@@ -20,7 +20,7 @@ declare const _default: import("vue").DefineComponent<{
20
20
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
21
21
  readonly label: StringConstructor;
22
22
  readonly labelWidth: import("element-plus/es/utils").BuildPropReturn<readonly [StringConstructor, NumberConstructor], "", unknown, unknown, unknown>;
23
- readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<Arrayable<string>>, unknown, unknown, unknown, unknown>;
23
+ readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./form-item").FormItemProp>, unknown, unknown, unknown, unknown>;
24
24
  readonly required: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
25
25
  readonly rules: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<Arrayable<FormItemRule>>, unknown, unknown, unknown, unknown>;
26
26
  readonly error: StringConstructor;
@@ -92,7 +92,7 @@ declare const _default: import("vue").DefineComponent<{
92
92
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
93
93
  readonly label: StringConstructor;
94
94
  readonly labelWidth: import("element-plus/es/utils").BuildPropReturn<readonly [StringConstructor, NumberConstructor], "", unknown, unknown, unknown>;
95
- readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<Arrayable<string>>, unknown, unknown, unknown, unknown>;
95
+ readonly prop: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./form-item").FormItemProp>, unknown, unknown, unknown, unknown>;
96
96
  readonly required: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
97
97
  readonly rules: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<Arrayable<FormItemRule>>, unknown, unknown, unknown, unknown>;
98
98
  readonly error: StringConstructor;
@@ -108,7 +108,7 @@ declare const _default: import("vue").DefineComponent<{
108
108
  labelWidth: import("element-plus/es/utils").BuildPropType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
109
109
  showMessage: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
110
110
  inlineMessage: import("element-plus/es/utils").BuildPropType<readonly [StringConstructor, BooleanConstructor], unknown, unknown>;
111
- prop: import("element-plus/es/utils").BuildPropType<import("element-plus/es/utils").PropWrapper<Arrayable<string>>, unknown, unknown>;
111
+ prop: import("element-plus/es/utils").BuildPropType<import("element-plus/es/utils").PropWrapper<import("./form-item").FormItemProp>, unknown, unknown>;
112
112
  validateStatus: import("element-plus/es/utils").BuildPropType<StringConstructor, "" | "success" | "error" | "validating", unknown>;
113
113
  }>;
114
114
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"form-item2.mjs","sources":["../../../../../../packages/components/form/src/form-item.vue"],"sourcesContent":["<template>\n <div ref=\"formItemRef\" :class=\"formItemClasses\">\n <form-label-wrap\n :is-auto-width=\"labelStyle.width === 'auto'\"\n :update-all=\"formContext.labelWidth === 'auto'\"\n >\n <label\n v-if=\"label || $slots.label\"\n :for=\"labelFor\"\n :class=\"ns.e('label')\"\n :style=\"labelStyle\"\n >\n <slot name=\"label\" :label=\"currentLabel\">\n {{ currentLabel }}\n </slot>\n </label>\n </form-label-wrap>\n\n <div :class=\"ns.e('content')\" :style=\"contentStyle\">\n <slot></slot>\n <transition :name=\"`${ns.namespace.value}-zoom-in-top`\">\n <slot v-if=\"shouldShowError\" name=\"error\" :error=\"validateMessage\">\n <div :class=\"validateClasses\">\n {{ validateMessage }}\n </div>\n </slot>\n </transition>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n onBeforeUnmount,\n onMounted,\n provide,\n reactive,\n ref,\n toRefs,\n watch,\n nextTick,\n useSlots,\n} from 'vue'\nimport AsyncValidator from 'async-validator'\nimport { clone } from 'lodash-unified'\nimport {\n addUnit,\n ensureArray,\n getProp,\n isString,\n isBoolean,\n throwError,\n} from '@element-plus/utils'\nimport { formItemContextKey, formContextKey } from '@element-plus/tokens'\nimport { useSize, useNamespace } from '@element-plus/hooks'\nimport { formItemProps } from './form-item'\nimport FormLabelWrap from './form-label-wrap'\n\nimport type { CSSProperties } from 'vue'\nimport type {\n RuleItem,\n ValidateError,\n ValidateFieldsError,\n} from 'async-validator'\nimport type { FormItemContext } from '@element-plus/tokens'\nimport type { Arrayable } from '@element-plus/utils'\nimport type { FormItemValidateState } from './form-item'\nimport type { FormItemRule } from './types'\n\nconst COMPONENT_NAME = 'ElFormItem'\ndefineOptions({\n name: 'ElFormItem',\n})\nconst props = defineProps(formItemProps)\nconst slots = useSlots()\n\nconst formContext = inject(formContextKey)\nif (!formContext)\n throwError(COMPONENT_NAME, 'usage: <el-form><el-form-item /></el-form>')\nconst parentFormItemContext = inject(formItemContextKey, undefined)\n\nconst _size = useSize(undefined, { formItem: false })\nconst ns = useNamespace('form-item')\n\nconst validateState = ref<FormItemValidateState>('')\nconst validateMessage = ref('')\nconst formItemRef = ref<HTMLDivElement>()\nlet initialValue: any = undefined\n\nconst labelStyle = computed<CSSProperties>(() => {\n if (formContext.labelPosition === 'top') {\n return {}\n }\n\n const labelWidth = addUnit(props.labelWidth || formContext.labelWidth || '')\n if (labelWidth) return { width: labelWidth }\n return {}\n})\n\nconst contentStyle = computed<CSSProperties>(() => {\n if (formContext.labelPosition === 'top' || formContext.inline) {\n return {}\n }\n if (!props.label && !props.labelWidth && isNested) {\n return {}\n }\n const labelWidth = addUnit(props.labelWidth || formContext.labelWidth || '')\n if (!props.label && !slots.label) {\n return { marginLeft: labelWidth }\n }\n return {}\n})\n\nconst formItemClasses = computed(() => [\n ns.b(),\n ns.m(_size.value),\n ns.is('error', validateState.value === 'error'),\n ns.is('validating', validateState.value === 'validating'),\n ns.is('success', validateState.value === 'success'),\n ns.is('required', isRequired.value || props.required),\n ns.is('no-asterisk', formContext.hideRequiredAsterisk),\n { [ns.m('feedback')]: formContext.statusIcon },\n])\n\nconst _inlineMessage = computed(() =>\n isBoolean(props.inlineMessage)\n ? props.inlineMessage\n : formContext.inlineMessage || false\n)\n\nconst validateClasses = computed(() => [\n ns.e('error'),\n { [ns.em('error', 'inline')]: _inlineMessage.value },\n])\n\nconst propString = computed(() => {\n if (!props.prop) return ''\n return isString(props.prop) ? props.prop : props.prop.join('.')\n})\n\nconst labelFor = computed(() => props.for || propString.value)\n\nconst isNested = !!parentFormItemContext\n\nconst fieldValue = computed(() => {\n const model = formContext.model\n if (!model || !props.prop) {\n return\n }\n return getProp(model, props.prop).value\n})\n\nconst _rules = computed(() => {\n const rules: FormItemRule[] = props.rules ? ensureArray(props.rules) : []\n\n const formRules = formContext.rules\n if (formRules && props.prop) {\n const _rules = getProp<Arrayable<FormItemRule> | undefined>(\n formRules,\n props.prop\n ).value\n if (_rules) {\n rules.push(...ensureArray(_rules))\n }\n }\n\n if (props.required !== undefined) {\n rules.push({ required: !!props.required })\n }\n\n return rules\n})\n\nconst validateEnabled = computed(() => _rules.value.length > 0)\n\nconst getFilteredRule = (trigger: string) => {\n const rules = _rules.value\n return (\n rules\n .filter((rule) => {\n if (!rule.trigger || !trigger) return true\n if (Array.isArray(rule.trigger)) {\n return rule.trigger.includes(trigger)\n } else {\n return rule.trigger === trigger\n }\n })\n // exclude trigger\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n .map(({ trigger, ...rule }): RuleItem => rule)\n )\n}\n\nconst isRequired = computed(() =>\n _rules.value.some((rule) => rule.required === true)\n)\n\nconst shouldShowError = computed(\n () =>\n validateState.value === 'error' &&\n props.showMessage &&\n formContext.showMessage\n)\n\nconst currentLabel = computed(\n () => `${props.label || ''}${formContext.labelSuffix || ''}`\n)\n\nconst validate: FormItemContext['validate'] = async (trigger, callback) => {\n if (callback) {\n try {\n validate(trigger)\n callback(true)\n } catch (err) {\n callback(false, err as ValidateFieldsError)\n }\n\n validate(trigger)\n .then(() => callback(true))\n .catch((fields: ValidateFieldsError) => callback(false, fields))\n return\n }\n\n if (!validateEnabled.value) {\n return\n }\n const rules = getFilteredRule(trigger)\n if (rules.length === 0) {\n return\n }\n\n validateState.value = 'validating'\n\n const descriptor = {\n [propString.value]: rules,\n }\n const validator = new AsyncValidator(descriptor)\n const model = {\n [propString.value]: fieldValue.value,\n }\n\n interface ValidateFailure {\n errors: ValidateError[] | null\n fields: ValidateFieldsError\n }\n\n return validator\n .validate(model, { firstFields: true })\n .then(() => undefined)\n .catch((err: ValidateFailure) => {\n const { errors, fields } = err\n if (!errors || !fields) console.error(err)\n\n validateState.value = 'error'\n validateMessage.value = errors\n ? errors[0].message || `${props.prop} is required`\n : ''\n formContext.emit('validate', props.prop, !errors, validateMessage.value)\n return Promise.reject(fields)\n })\n}\n\nconst clearValidate: FormItemContext['clearValidate'] = () => {\n validateState.value = ''\n validateMessage.value = ''\n}\n\nconst resetField: FormItemContext['resetField'] = () => {\n const model = formContext.model\n if (!model || !props.prop) return\n\n getProp(model, props.prop).value = initialValue\n nextTick(() => clearValidate())\n}\n\nwatch(\n () => props.error,\n (val) => {\n validateMessage.value = val || ''\n validateState.value = val ? 'error' : ''\n },\n { immediate: true }\n)\nwatch(\n () => props.validateStatus,\n (val) => (validateState.value = val || '')\n)\n\nconst context: FormItemContext = reactive({\n ...toRefs(props),\n $el: formItemRef,\n size: _size,\n validateState,\n resetField,\n clearValidate,\n validate,\n})\nprovide(formItemContextKey, context)\n\nonMounted(() => {\n if (props.prop) {\n formContext.addField(context)\n initialValue = clone(fieldValue.value)\n }\n})\nonBeforeUnmount(() => {\n formContext.removeField(context)\n})\n\ndefineExpose({\n /** @description form item size */\n size: _size,\n /** @description validation message */\n validateMessage,\n /** @description validate form item */\n validate,\n /** @description clear validation status */\n clearValidate,\n /** @description reset field value */\n resetField,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA;AAKA;AAEA;AACA;;AAEA;AAEA;AACA;AAEA;AACA;AACA;AACA;AAEA;;;;;;;;;AAUA;;;;;;;;;;;;;AAcA;;;;;;;;;;AAWA;AAMA;;;;AAKA;;;;;AAKA;AAEA;AAEA;;;;;;;AAQA;;;;;;;;;;;;;;AAqBA;AAEA;;;;;;;;;;;;AAkBA;AAIA;AAOA;AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsDA;;;;AAKA;;;;;;;AAQA;;;;AAQA;AAKA;;;;;;;;;AASA;AAEA;;;;;;AAMA;;;AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"form-item2.mjs","sources":["../../../../../../packages/components/form/src/form-item.vue"],"sourcesContent":["<template>\n <div ref=\"formItemRef\" :class=\"formItemClasses\">\n <form-label-wrap\n :is-auto-width=\"labelStyle.width === 'auto'\"\n :update-all=\"formContext.labelWidth === 'auto'\"\n >\n <label\n v-if=\"label || $slots.label\"\n :for=\"labelFor\"\n :class=\"ns.e('label')\"\n :style=\"labelStyle\"\n >\n <slot name=\"label\" :label=\"currentLabel\">\n {{ currentLabel }}\n </slot>\n </label>\n </form-label-wrap>\n\n <div :class=\"ns.e('content')\" :style=\"contentStyle\">\n <slot></slot>\n <transition :name=\"`${ns.namespace.value}-zoom-in-top`\">\n <slot v-if=\"shouldShowError\" name=\"error\" :error=\"validateMessage\">\n <div :class=\"validateClasses\">\n {{ validateMessage }}\n </div>\n </slot>\n </transition>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n onBeforeUnmount,\n onMounted,\n provide,\n reactive,\n ref,\n toRefs,\n watch,\n nextTick,\n useSlots,\n} from 'vue'\nimport AsyncValidator from 'async-validator'\nimport { clone } from 'lodash-unified'\nimport {\n addUnit,\n ensureArray,\n getProp,\n isString,\n isBoolean,\n throwError,\n} from '@element-plus/utils'\nimport { formItemContextKey, formContextKey } from '@element-plus/tokens'\nimport { useSize, useNamespace } from '@element-plus/hooks'\nimport { formItemProps } from './form-item'\nimport FormLabelWrap from './form-label-wrap'\n\nimport type { CSSProperties } from 'vue'\nimport type {\n RuleItem,\n ValidateError,\n ValidateFieldsError,\n} from 'async-validator'\nimport type { FormItemContext } from '@element-plus/tokens'\nimport type { Arrayable } from '@element-plus/utils'\nimport type { FormItemValidateState } from './form-item'\nimport type { FormItemRule } from './types'\n\nconst COMPONENT_NAME = 'ElFormItem'\ndefineOptions({\n name: 'ElFormItem',\n})\nconst props = defineProps(formItemProps)\nconst slots = useSlots()\n\nconst formContext = inject(formContextKey)\nif (!formContext)\n throwError(COMPONENT_NAME, 'usage: <el-form><el-form-item /></el-form>')\nconst parentFormItemContext = inject(formItemContextKey, undefined)\n\nconst _size = useSize(undefined, { formItem: false })\nconst ns = useNamespace('form-item')\n\nconst validateState = ref<FormItemValidateState>('')\nconst validateMessage = ref('')\nconst formItemRef = ref<HTMLDivElement>()\nlet initialValue: any = undefined\n\nconst labelStyle = computed<CSSProperties>(() => {\n if (formContext.labelPosition === 'top') {\n return {}\n }\n\n const labelWidth = addUnit(props.labelWidth || formContext.labelWidth || '')\n if (labelWidth) return { width: labelWidth }\n return {}\n})\n\nconst contentStyle = computed<CSSProperties>(() => {\n if (formContext.labelPosition === 'top' || formContext.inline) {\n return {}\n }\n if (!props.label && !props.labelWidth && isNested) {\n return {}\n }\n const labelWidth = addUnit(props.labelWidth || formContext.labelWidth || '')\n if (!props.label && !slots.label) {\n return { marginLeft: labelWidth }\n }\n return {}\n})\n\nconst formItemClasses = computed(() => [\n ns.b(),\n ns.m(_size.value),\n ns.is('error', validateState.value === 'error'),\n ns.is('validating', validateState.value === 'validating'),\n ns.is('success', validateState.value === 'success'),\n ns.is('required', isRequired.value || props.required),\n ns.is('no-asterisk', formContext.hideRequiredAsterisk),\n { [ns.m('feedback')]: formContext.statusIcon },\n])\n\nconst _inlineMessage = computed(() =>\n isBoolean(props.inlineMessage)\n ? props.inlineMessage\n : formContext.inlineMessage || false\n)\n\nconst validateClasses = computed(() => [\n ns.e('error'),\n { [ns.em('error', 'inline')]: _inlineMessage.value },\n])\n\nconst propString = computed(() => {\n if (!props.prop) return ''\n return isString(props.prop) ? props.prop : props.prop.join('.')\n})\n\nconst labelFor = computed(() => props.for || propString.value)\n\nconst isNested = !!parentFormItemContext\n\nconst fieldValue = computed(() => {\n const model = formContext.model\n if (!model || !props.prop) {\n return\n }\n return getProp(model, props.prop).value\n})\n\nconst _rules = computed(() => {\n const rules: FormItemRule[] = props.rules ? ensureArray(props.rules) : []\n\n const formRules = formContext.rules\n if (formRules && props.prop) {\n const _rules = getProp<Arrayable<FormItemRule> | undefined>(\n formRules,\n props.prop\n ).value\n if (_rules) {\n rules.push(...ensureArray(_rules))\n }\n }\n\n if (props.required !== undefined) {\n rules.push({ required: !!props.required })\n }\n\n return rules\n})\n\nconst validateEnabled = computed(() => _rules.value.length > 0)\n\nconst getFilteredRule = (trigger: string) => {\n const rules = _rules.value\n return (\n rules\n .filter((rule) => {\n if (!rule.trigger || !trigger) return true\n if (Array.isArray(rule.trigger)) {\n return rule.trigger.includes(trigger)\n } else {\n return rule.trigger === trigger\n }\n })\n // exclude trigger\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n .map(({ trigger, ...rule }): RuleItem => rule)\n )\n}\n\nconst isRequired = computed(() =>\n _rules.value.some((rule) => rule.required === true)\n)\n\nconst shouldShowError = computed(\n () =>\n validateState.value === 'error' &&\n props.showMessage &&\n formContext.showMessage\n)\n\nconst currentLabel = computed(\n () => `${props.label || ''}${formContext.labelSuffix || ''}`\n)\n\nconst validate: FormItemContext['validate'] = async (trigger, callback) => {\n if (callback) {\n try {\n validate(trigger)\n callback(true)\n } catch (err) {\n callback(false, err as ValidateFieldsError)\n }\n\n validate(trigger)\n .then(() => callback(true))\n .catch((fields: ValidateFieldsError) => callback(false, fields))\n return\n }\n\n if (!validateEnabled.value) {\n return\n }\n const rules = getFilteredRule(trigger)\n if (rules.length === 0) {\n return\n }\n\n validateState.value = 'validating'\n\n const descriptor = {\n [propString.value]: rules,\n }\n const validator = new AsyncValidator(descriptor)\n const model = {\n [propString.value]: fieldValue.value,\n }\n\n interface ValidateFailure {\n errors: ValidateError[] | null\n fields: ValidateFieldsError\n }\n\n return validator\n .validate(model, { firstFields: true })\n .then(() => undefined)\n .catch((err: ValidateFailure) => {\n const { errors, fields } = err\n if (!errors || !fields) console.error(err)\n\n validateState.value = 'error'\n validateMessage.value = errors\n ? errors[0].message || `${props.prop} is required`\n : ''\n formContext.emit('validate', props.prop!, !errors, validateMessage.value)\n return Promise.reject(fields)\n })\n}\n\nconst clearValidate: FormItemContext['clearValidate'] = () => {\n validateState.value = ''\n validateMessage.value = ''\n}\n\nconst resetField: FormItemContext['resetField'] = () => {\n const model = formContext.model\n if (!model || !props.prop) return\n\n getProp(model, props.prop).value = initialValue\n nextTick(() => clearValidate())\n}\n\nwatch(\n () => props.error,\n (val) => {\n validateMessage.value = val || ''\n validateState.value = val ? 'error' : ''\n },\n { immediate: true }\n)\nwatch(\n () => props.validateStatus,\n (val) => (validateState.value = val || '')\n)\n\nconst context: FormItemContext = reactive({\n ...toRefs(props),\n $el: formItemRef,\n size: _size,\n validateState,\n resetField,\n clearValidate,\n validate,\n})\nprovide(formItemContextKey, context)\n\nonMounted(() => {\n if (props.prop) {\n formContext.addField(context)\n initialValue = clone(fieldValue.value)\n }\n})\nonBeforeUnmount(() => {\n formContext.removeField(context)\n})\n\ndefineExpose({\n /** @description form item size */\n size: _size,\n /** @description validation message */\n validateMessage,\n /** @description validate form item */\n validate,\n /** @description clear validation status */\n clearValidate,\n /** @description reset field value */\n resetField,\n})\n</script>\n"],"names":["ensureArray"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-label-wrap.mjs","sources":["../../../../../../packages/components/form/src/form-label-wrap.tsx"],"sourcesContent":["import {\n computed,\n defineComponent,\n Fragment,\n inject,\n nextTick,\n onBeforeUnmount,\n onMounted,\n onUpdated,\n ref,\n watch,\n} from 'vue'\nimport { useResizeObserver } from '@vueuse/core'\nimport { throwError } from '@element-plus/utils'\nimport { formItemContextKey, formContextKey } from '@element-plus/tokens'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\n\nconst COMPONENT_NAME = 'ElLabelWrap'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: {\n isAutoWidth: Boolean,\n updateAll: Boolean,\n },\n\n setup(props, { slots }) {\n const formContext = inject(formContextKey)\n const formItemContext = inject(formItemContextKey)\n if (!formContext || !formItemContext)\n throwError(\n COMPONENT_NAME,\n 'usage: <el-form><el-form-item><label-wrap /></el-form-item></el-form>'\n )\n\n const ns = useNamespace('form')\n\n const el = ref<HTMLElement>()\n const computedWidth = ref(0)\n\n const getLabelWidth = () => {\n if (el.value?.firstElementChild) {\n const width = window.getComputedStyle(el.value.firstElementChild).width\n return Math.ceil(parseFloat(width))\n } else {\n return 0\n }\n }\n\n const updateLabelWidth = (action: 'update' | 'remove' = 'update') => {\n nextTick(() => {\n if (slots.default && props.isAutoWidth) {\n if (action === 'update') {\n computedWidth.value = getLabelWidth()\n } else if (action === 'remove') {\n formContext.deregisterLabelWidth(computedWidth.value)\n }\n }\n })\n }\n const updateLabelWidthFn = () => updateLabelWidth('update')\n\n onMounted(() => {\n updateLabelWidthFn()\n })\n onBeforeUnmount(() => {\n updateLabelWidth('remove')\n })\n onUpdated(() => updateLabelWidthFn())\n\n watch(computedWidth, (val, oldVal) => {\n if (props.updateAll) {\n formContext.registerLabelWidth(val, oldVal)\n }\n })\n\n useResizeObserver(\n computed(\n () => (el.value?.firstElementChild ?? null) as HTMLElement | null\n ),\n updateLabelWidthFn\n )\n\n return () => {\n if (!slots) return null\n\n const { isAutoWidth } = props\n if (isAutoWidth) {\n const autoLabelWidth = formContext.autoLabelWidth\n const style: CSSProperties = {}\n if (autoLabelWidth && autoLabelWidth !== 'auto') {\n const marginWidth = Math.max(\n 0,\n parseInt(autoLabelWidth, 10) - computedWidth.value\n )\n const marginPosition =\n formContext.labelPosition === 'left' ? 'marginRight' : 'marginLeft'\n if (marginWidth) {\n style[marginPosition] = `${marginWidth}px`\n }\n }\n return (\n <div ref={el} class={[ns.be('item', 'label-wrap')]} style={style}>\n {slots.default?.()}\n </div>\n )\n } else {\n return <Fragment ref={el}>{slots.default?.()}</Fragment>\n }\n }\n },\n})\n"],"names":["COMPONENT_NAME","defineComponent","name","props","isAutoWidth","Boolean","updateAll","setup","slots","formContext","ns","useNamespace","el","ref","computedWidth","getLabelWidth","value","width","window","getComputedStyle","firstElementChild","Math","ceil","parseFloat","nextTick","onMounted","updateLabelWidthFn","onBeforeUnmount","updateLabelWidth","onUpdated","watch","useResizeObserver","style","autoLabelWidth","marginWidth","max","parseInt","marginPosition","labelPosition","be"],"mappings":";;;;;;;;;AAmBA,MAAMA,cAAc,GAAG,aAAvB;AACA,oBAAeC,eAAe,CAAC;AAC7BC,EAAAA,IAAI,EAAEF,cADuB;AAE7BG,EAAAA,KAAK,EAAE;AACLC,IAAAA,WAAW,EAAEC,OADR;AAELC,IAAAA,SAAS,EAAED;AAFN,GAFsB;;AAO7BE;AAAeC;AAAF;AACX,UAAMC;AACN,yBAAqB;AACrB;AAMA,UAAMC,EAAE,GAAGC,YAAY,CAAC,MAAD,CAAvB;AAEA,UAAMC,EAAE,GAAGC,GAAG,EAAd;AACA,UAAMC,aAAa,GAAGD,GAAG,CAAC,CAAD,CAAzB;;AAEA,UAAME;AACJ,UAAIH,GAAGI,KAAH;AACF,cAAMC,KAAK,GAAGC,MAAM,CAACC,gBAAP,CAAwBP,EAAE,CAACI,KAAH,CAASI,iBAAjC,EAAoDH,KAAlE;AACA,eAAOI,IAAI,CAACC,IAAL,CAAUC,UAAU,CAACN,KAAD,CAApB,CAAP;AACD,OAHD,MAGO;AACL,eAAO,CAAP;AACD;AACF,KAPD;;AASA;AACEO;AACE,yBAAI,UAAuBpB;AACzB,yBAAe;AACbU;AACD;AACCL;AACD;AACF;AACF;AACF;;AACD;;AAEAgB,IAAAA,gBAAgB;AACdC,MAAAA;AACD,KAFQ,CAAT;AAGAC,IAAAA,gBAAgB;AACdC,uBAAiB,QAAD;AACjB,MAFD;AAGAC,oBAAgBH,kBAAkB;AAElCI;AACE;AACErB;AACD;AACF,MAJD;AAMAsB;AAOA,WAAO,MAAM;AACX,UAAI,MAAJ;AAEA;AAAQ3B,QAAAA;AAAF;;AACN,UAAIA;AACF;AACA,cAAM4B;;AACN,YAAIC,cAAc,IAAIA,cAAc,KAAK,MAAzC,EAAiD;AAC/C,gBAAMC,WAAW,GAAGb,IAAI,CAACc,GAAL,CAClB,CADkB,EAElBC,QAAQ,CAACH,cAAD,EAAiB,EAAjB,CAAR,GAA+BnB,aAAa,CAACE,KAF3B,CAApB;AAIA,gBAAMqB,cAAc,GAClB5B,WAAW,CAAC6B,aAAZ,KAA8B,MAA9B,GAAuC,aAAvC,GAAuD,YADzD;;AAEA;AACEN;AACD;AACF;;AACD;AAAA,iBACYpB,EADZ;AAAA,uBAC2B2B,yBAD3B;AAAA;AAAA;AAKD;AACC;AAAA;AAAA;AACD;AACF;;;;"}
1
+ {"version":3,"file":"form-label-wrap.mjs","sources":["../../../../../../packages/components/form/src/form-label-wrap.tsx"],"sourcesContent":["import {\n computed,\n defineComponent,\n Fragment,\n inject,\n nextTick,\n onBeforeUnmount,\n onMounted,\n onUpdated,\n ref,\n watch,\n} from 'vue'\nimport { useResizeObserver } from '@vueuse/core'\nimport { throwError } from '@element-plus/utils'\nimport { formItemContextKey, formContextKey } from '@element-plus/tokens'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\n\nconst COMPONENT_NAME = 'ElLabelWrap'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: {\n isAutoWidth: Boolean,\n updateAll: Boolean,\n },\n\n setup(props, { slots }) {\n const formContext = inject(formContextKey)\n const formItemContext = inject(formItemContextKey)\n if (!formContext || !formItemContext)\n throwError(\n COMPONENT_NAME,\n 'usage: <el-form><el-form-item><label-wrap /></el-form-item></el-form>'\n )\n\n const ns = useNamespace('form')\n\n const el = ref<HTMLElement>()\n const computedWidth = ref(0)\n\n const getLabelWidth = () => {\n if (el.value?.firstElementChild) {\n const width = window.getComputedStyle(el.value.firstElementChild).width\n return Math.ceil(parseFloat(width))\n } else {\n return 0\n }\n }\n\n const updateLabelWidth = (action: 'update' | 'remove' = 'update') => {\n nextTick(() => {\n if (slots.default && props.isAutoWidth) {\n if (action === 'update') {\n computedWidth.value = getLabelWidth()\n } else if (action === 'remove') {\n formContext.deregisterLabelWidth(computedWidth.value)\n }\n }\n })\n }\n const updateLabelWidthFn = () => updateLabelWidth('update')\n\n onMounted(() => {\n updateLabelWidthFn()\n })\n onBeforeUnmount(() => {\n updateLabelWidth('remove')\n })\n onUpdated(() => updateLabelWidthFn())\n\n watch(computedWidth, (val, oldVal) => {\n if (props.updateAll) {\n formContext.registerLabelWidth(val, oldVal)\n }\n })\n\n useResizeObserver(\n computed(\n () => (el.value?.firstElementChild ?? null) as HTMLElement | null\n ),\n updateLabelWidthFn\n )\n\n return () => {\n if (!slots) return null\n\n const { isAutoWidth } = props\n if (isAutoWidth) {\n const autoLabelWidth = formContext.autoLabelWidth\n const style: CSSProperties = {}\n if (autoLabelWidth && autoLabelWidth !== 'auto') {\n const marginWidth = Math.max(\n 0,\n parseInt(autoLabelWidth, 10) - computedWidth.value\n )\n const marginPosition =\n formContext.labelPosition === 'left' ? 'marginRight' : 'marginLeft'\n if (marginWidth) {\n style[marginPosition] = `${marginWidth}px`\n }\n }\n return (\n <div ref={el} class={[ns.be('item', 'label-wrap')]} style={style}>\n {slots.default?.()}\n </div>\n )\n } else {\n return <Fragment ref={el}>{slots.default?.()}</Fragment>\n }\n }\n },\n})\n"],"names":["COMPONENT_NAME","defineComponent","name","props","isAutoWidth","Boolean","updateAll","setup","slots","formContext","formItemContext","ns","useNamespace","el","ref","computedWidth","getLabelWidth","value","width","window","getComputedStyle","firstElementChild","Math","ceil","parseFloat","nextTick","default","action","onMounted","updateLabelWidthFn","onBeforeUnmount","updateLabelWidth","onUpdated","watch","registerLabelWidth","useResizeObserver","style","autoLabelWidth","marginWidth","max","parseInt","marginPosition","labelPosition","_createVNode","be","_Fragment"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { ExtractPropTypes } from 'vue';
2
- import type { FormItemProps } from './form-item';
2
+ import type { FormItemProp } from './form-item';
3
3
  import type Form from './form.vue';
4
4
  export declare const formProps: {
5
5
  readonly model: ObjectConstructor;
@@ -19,7 +19,7 @@ export declare const formProps: {
19
19
  };
20
20
  export declare type FormProps = ExtractPropTypes<typeof formProps>;
21
21
  export declare const formEmits: {
22
- validate: (prop: FormItemProps['prop'], isValid: boolean, message: string) => boolean;
22
+ validate: (prop: FormItemProp, isValid: boolean, message: string) => boolean;
23
23
  };
24
24
  export declare type FormEmits = typeof formEmits;
25
25
  export declare type FormInstance = InstanceType<typeof Form>;
@@ -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 isString,\n isBoolean,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { FormItemProps } from './form-item'\nimport type { FormRules } from './types'\nimport type Form from './form.vue'\n\nexport const formProps = buildProps({\n model: Object,\n rules: {\n type: definePropType<FormRules>(Object),\n },\n labelPosition: String,\n labelWidth: {\n type: [String, Number],\n default: '',\n },\n labelSuffix: {\n type: String,\n default: '',\n },\n inline: Boolean,\n inlineMessage: Boolean,\n statusIcon: Boolean,\n showMessage: {\n type: Boolean,\n default: true,\n },\n size: {\n type: String,\n values: componentSizes,\n },\n disabled: Boolean,\n validateOnRuleChange: {\n type: Boolean,\n default: true,\n },\n hideRequiredAsterisk: {\n type: Boolean,\n default: false,\n },\n scrollToError: Boolean,\n} as const)\nexport type FormProps = ExtractPropTypes<typeof formProps>\n\nexport const formEmits = {\n validate: (prop: FormItemProps['prop'], isValid: boolean, message: string) =>\n (isArray(prop) || isString(prop)) &&\n isBoolean(isValid) &&\n isString(message),\n}\nexport type FormEmits = typeof formEmits\n\nexport type FormInstance = InstanceType<typeof Form>\n"],"names":[],"mappings":";;;;;;;AAQY,MAAC,SAAS,GAAG,UAAU,CAAC;AACpC,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,aAAa,EAAE,MAAM;AACvB,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,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,cAAc;AAC1B,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,aAAa,EAAE,OAAO;AACxB,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 isString,\n isBoolean,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { FormItemProp } from './form-item'\nimport type { FormRules } from './types'\nimport type Form from './form.vue'\n\nexport const formProps = buildProps({\n model: Object,\n rules: {\n type: definePropType<FormRules>(Object),\n },\n labelPosition: String,\n labelWidth: {\n type: [String, Number],\n default: '',\n },\n labelSuffix: {\n type: String,\n default: '',\n },\n inline: Boolean,\n inlineMessage: Boolean,\n statusIcon: Boolean,\n showMessage: {\n type: Boolean,\n default: true,\n },\n size: {\n type: String,\n values: componentSizes,\n },\n disabled: Boolean,\n validateOnRuleChange: {\n type: Boolean,\n default: true,\n },\n hideRequiredAsterisk: {\n type: Boolean,\n default: false,\n },\n scrollToError: Boolean,\n} as const)\nexport type FormProps = ExtractPropTypes<typeof formProps>\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\nexport type FormInstance = InstanceType<typeof Form>\n"],"names":[],"mappings":";;;;;;;AAQY,MAAC,SAAS,GAAG,UAAU,CAAC;AACpC,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,aAAa,EAAE,MAAM;AACvB,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,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,cAAc;AAC1B,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,aAAa,EAAE,OAAO;AACxB,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;;;;"}