@element-plus/nightly 0.0.20260313 → 0.0.20260315

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 (922) hide show
  1. package/dist/index.full.js +13 -7
  2. package/dist/index.full.min.js +4 -4
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +4 -4
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +13 -7
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar-eg.js +1 -1
  12. package/dist/locale/ar-eg.min.js +1 -1
  13. package/dist/locale/ar-eg.min.mjs +1 -1
  14. package/dist/locale/ar-eg.mjs +1 -1
  15. package/dist/locale/ar.js +1 -1
  16. package/dist/locale/ar.min.js +1 -1
  17. package/dist/locale/ar.min.mjs +1 -1
  18. package/dist/locale/ar.mjs +1 -1
  19. package/dist/locale/az.js +1 -1
  20. package/dist/locale/az.min.js +1 -1
  21. package/dist/locale/az.min.mjs +1 -1
  22. package/dist/locale/az.mjs +1 -1
  23. package/dist/locale/bg.js +1 -1
  24. package/dist/locale/bg.min.js +1 -1
  25. package/dist/locale/bg.min.mjs +1 -1
  26. package/dist/locale/bg.mjs +1 -1
  27. package/dist/locale/bn.js +1 -1
  28. package/dist/locale/bn.min.js +1 -1
  29. package/dist/locale/bn.min.mjs +1 -1
  30. package/dist/locale/bn.mjs +1 -1
  31. package/dist/locale/ca.js +1 -1
  32. package/dist/locale/ca.min.js +1 -1
  33. package/dist/locale/ca.min.mjs +1 -1
  34. package/dist/locale/ca.mjs +1 -1
  35. package/dist/locale/ckb.js +1 -1
  36. package/dist/locale/ckb.min.js +1 -1
  37. package/dist/locale/ckb.min.mjs +1 -1
  38. package/dist/locale/ckb.mjs +1 -1
  39. package/dist/locale/cs.js +1 -1
  40. package/dist/locale/cs.min.js +1 -1
  41. package/dist/locale/cs.min.mjs +1 -1
  42. package/dist/locale/cs.mjs +1 -1
  43. package/dist/locale/da.js +1 -1
  44. package/dist/locale/da.min.js +1 -1
  45. package/dist/locale/da.min.mjs +1 -1
  46. package/dist/locale/da.mjs +1 -1
  47. package/dist/locale/de.js +1 -1
  48. package/dist/locale/de.min.js +1 -1
  49. package/dist/locale/de.min.mjs +1 -1
  50. package/dist/locale/de.mjs +1 -1
  51. package/dist/locale/el.js +1 -1
  52. package/dist/locale/el.min.js +1 -1
  53. package/dist/locale/el.min.mjs +1 -1
  54. package/dist/locale/el.mjs +1 -1
  55. package/dist/locale/en.js +1 -1
  56. package/dist/locale/en.min.js +1 -1
  57. package/dist/locale/en.min.mjs +1 -1
  58. package/dist/locale/en.mjs +1 -1
  59. package/dist/locale/eo.js +1 -1
  60. package/dist/locale/eo.min.js +1 -1
  61. package/dist/locale/eo.min.mjs +1 -1
  62. package/dist/locale/eo.mjs +1 -1
  63. package/dist/locale/es.js +1 -1
  64. package/dist/locale/es.min.js +1 -1
  65. package/dist/locale/es.min.mjs +1 -1
  66. package/dist/locale/es.mjs +1 -1
  67. package/dist/locale/et.js +1 -1
  68. package/dist/locale/et.min.js +1 -1
  69. package/dist/locale/et.min.mjs +1 -1
  70. package/dist/locale/et.mjs +1 -1
  71. package/dist/locale/eu.js +1 -1
  72. package/dist/locale/eu.min.js +1 -1
  73. package/dist/locale/eu.min.mjs +1 -1
  74. package/dist/locale/eu.mjs +1 -1
  75. package/dist/locale/fa.js +1 -1
  76. package/dist/locale/fa.min.js +1 -1
  77. package/dist/locale/fa.min.mjs +1 -1
  78. package/dist/locale/fa.mjs +1 -1
  79. package/dist/locale/fi.js +1 -1
  80. package/dist/locale/fi.min.js +1 -1
  81. package/dist/locale/fi.min.mjs +1 -1
  82. package/dist/locale/fi.mjs +1 -1
  83. package/dist/locale/fr.js +1 -1
  84. package/dist/locale/fr.min.js +1 -1
  85. package/dist/locale/fr.min.mjs +1 -1
  86. package/dist/locale/fr.mjs +1 -1
  87. package/dist/locale/he.js +1 -1
  88. package/dist/locale/he.min.js +1 -1
  89. package/dist/locale/he.min.mjs +1 -1
  90. package/dist/locale/he.mjs +1 -1
  91. package/dist/locale/hi.js +1 -1
  92. package/dist/locale/hi.min.js +1 -1
  93. package/dist/locale/hi.min.mjs +1 -1
  94. package/dist/locale/hi.mjs +1 -1
  95. package/dist/locale/hr.js +1 -1
  96. package/dist/locale/hr.min.js +1 -1
  97. package/dist/locale/hr.min.mjs +1 -1
  98. package/dist/locale/hr.mjs +1 -1
  99. package/dist/locale/hu.js +1 -1
  100. package/dist/locale/hu.min.js +1 -1
  101. package/dist/locale/hu.min.mjs +1 -1
  102. package/dist/locale/hu.mjs +1 -1
  103. package/dist/locale/hy-am.js +1 -1
  104. package/dist/locale/hy-am.min.js +1 -1
  105. package/dist/locale/hy-am.min.mjs +1 -1
  106. package/dist/locale/hy-am.mjs +1 -1
  107. package/dist/locale/id.js +1 -1
  108. package/dist/locale/id.min.js +1 -1
  109. package/dist/locale/id.min.mjs +1 -1
  110. package/dist/locale/id.mjs +1 -1
  111. package/dist/locale/it.js +1 -1
  112. package/dist/locale/it.min.js +1 -1
  113. package/dist/locale/it.min.mjs +1 -1
  114. package/dist/locale/it.mjs +1 -1
  115. package/dist/locale/ja.js +1 -1
  116. package/dist/locale/ja.min.js +1 -1
  117. package/dist/locale/ja.min.mjs +1 -1
  118. package/dist/locale/ja.mjs +1 -1
  119. package/dist/locale/kk.js +1 -1
  120. package/dist/locale/kk.min.js +1 -1
  121. package/dist/locale/kk.min.mjs +1 -1
  122. package/dist/locale/kk.mjs +1 -1
  123. package/dist/locale/km.js +1 -1
  124. package/dist/locale/km.min.js +1 -1
  125. package/dist/locale/km.min.mjs +1 -1
  126. package/dist/locale/km.mjs +1 -1
  127. package/dist/locale/ko.js +1 -1
  128. package/dist/locale/ko.min.js +1 -1
  129. package/dist/locale/ko.min.mjs +1 -1
  130. package/dist/locale/ko.mjs +1 -1
  131. package/dist/locale/ku.js +1 -1
  132. package/dist/locale/ku.min.js +1 -1
  133. package/dist/locale/ku.min.mjs +1 -1
  134. package/dist/locale/ku.mjs +1 -1
  135. package/dist/locale/ky.js +1 -1
  136. package/dist/locale/ky.min.js +1 -1
  137. package/dist/locale/ky.min.mjs +1 -1
  138. package/dist/locale/ky.mjs +1 -1
  139. package/dist/locale/lo.js +1 -1
  140. package/dist/locale/lo.min.js +1 -1
  141. package/dist/locale/lo.min.mjs +1 -1
  142. package/dist/locale/lo.mjs +1 -1
  143. package/dist/locale/lt.js +1 -1
  144. package/dist/locale/lt.min.js +1 -1
  145. package/dist/locale/lt.min.mjs +1 -1
  146. package/dist/locale/lt.mjs +1 -1
  147. package/dist/locale/lv.js +1 -1
  148. package/dist/locale/lv.min.js +1 -1
  149. package/dist/locale/lv.min.mjs +1 -1
  150. package/dist/locale/lv.mjs +1 -1
  151. package/dist/locale/mg.js +1 -1
  152. package/dist/locale/mg.min.js +1 -1
  153. package/dist/locale/mg.min.mjs +1 -1
  154. package/dist/locale/mg.mjs +1 -1
  155. package/dist/locale/mn.js +1 -1
  156. package/dist/locale/mn.min.js +1 -1
  157. package/dist/locale/mn.min.mjs +1 -1
  158. package/dist/locale/mn.mjs +1 -1
  159. package/dist/locale/ms.js +1 -1
  160. package/dist/locale/ms.min.js +1 -1
  161. package/dist/locale/ms.min.mjs +1 -1
  162. package/dist/locale/ms.mjs +1 -1
  163. package/dist/locale/my.js +1 -1
  164. package/dist/locale/my.min.js +1 -1
  165. package/dist/locale/my.min.mjs +1 -1
  166. package/dist/locale/my.mjs +1 -1
  167. package/dist/locale/nb-no.js +1 -1
  168. package/dist/locale/nb-no.min.js +1 -1
  169. package/dist/locale/nb-no.min.mjs +1 -1
  170. package/dist/locale/nb-no.mjs +1 -1
  171. package/dist/locale/nl.js +1 -1
  172. package/dist/locale/nl.min.js +1 -1
  173. package/dist/locale/nl.min.mjs +1 -1
  174. package/dist/locale/nl.mjs +1 -1
  175. package/dist/locale/no.js +1 -1
  176. package/dist/locale/no.min.js +1 -1
  177. package/dist/locale/no.min.mjs +1 -1
  178. package/dist/locale/no.mjs +1 -1
  179. package/dist/locale/pa.js +1 -1
  180. package/dist/locale/pa.min.js +1 -1
  181. package/dist/locale/pa.min.mjs +1 -1
  182. package/dist/locale/pa.mjs +1 -1
  183. package/dist/locale/pl.js +1 -1
  184. package/dist/locale/pl.min.js +1 -1
  185. package/dist/locale/pl.min.mjs +1 -1
  186. package/dist/locale/pl.mjs +1 -1
  187. package/dist/locale/pt-br.js +1 -1
  188. package/dist/locale/pt-br.min.js +1 -1
  189. package/dist/locale/pt-br.min.mjs +1 -1
  190. package/dist/locale/pt-br.mjs +1 -1
  191. package/dist/locale/pt.js +1 -1
  192. package/dist/locale/pt.min.js +1 -1
  193. package/dist/locale/pt.min.mjs +1 -1
  194. package/dist/locale/pt.mjs +1 -1
  195. package/dist/locale/ro.js +1 -1
  196. package/dist/locale/ro.min.js +1 -1
  197. package/dist/locale/ro.min.mjs +1 -1
  198. package/dist/locale/ro.mjs +1 -1
  199. package/dist/locale/ru.js +1 -1
  200. package/dist/locale/ru.min.js +1 -1
  201. package/dist/locale/ru.min.mjs +1 -1
  202. package/dist/locale/ru.mjs +1 -1
  203. package/dist/locale/sk.js +1 -1
  204. package/dist/locale/sk.min.js +1 -1
  205. package/dist/locale/sk.min.mjs +1 -1
  206. package/dist/locale/sk.mjs +1 -1
  207. package/dist/locale/sl.js +1 -1
  208. package/dist/locale/sl.min.js +1 -1
  209. package/dist/locale/sl.min.mjs +1 -1
  210. package/dist/locale/sl.mjs +1 -1
  211. package/dist/locale/sr.js +1 -1
  212. package/dist/locale/sr.min.js +1 -1
  213. package/dist/locale/sr.min.mjs +1 -1
  214. package/dist/locale/sr.mjs +1 -1
  215. package/dist/locale/sv.js +1 -1
  216. package/dist/locale/sv.min.js +1 -1
  217. package/dist/locale/sv.min.mjs +1 -1
  218. package/dist/locale/sv.mjs +1 -1
  219. package/dist/locale/sw.js +1 -1
  220. package/dist/locale/sw.min.js +1 -1
  221. package/dist/locale/sw.min.mjs +1 -1
  222. package/dist/locale/sw.mjs +1 -1
  223. package/dist/locale/ta.js +1 -1
  224. package/dist/locale/ta.min.js +1 -1
  225. package/dist/locale/ta.min.mjs +1 -1
  226. package/dist/locale/ta.mjs +1 -1
  227. package/dist/locale/te.js +1 -1
  228. package/dist/locale/te.min.js +1 -1
  229. package/dist/locale/te.min.mjs +1 -1
  230. package/dist/locale/te.mjs +1 -1
  231. package/dist/locale/th.js +1 -1
  232. package/dist/locale/th.min.js +1 -1
  233. package/dist/locale/th.min.mjs +1 -1
  234. package/dist/locale/th.mjs +1 -1
  235. package/dist/locale/tk.js +1 -1
  236. package/dist/locale/tk.min.js +1 -1
  237. package/dist/locale/tk.min.mjs +1 -1
  238. package/dist/locale/tk.mjs +1 -1
  239. package/dist/locale/tr.js +1 -1
  240. package/dist/locale/tr.min.js +1 -1
  241. package/dist/locale/tr.min.mjs +1 -1
  242. package/dist/locale/tr.mjs +1 -1
  243. package/dist/locale/ug-cn.js +1 -1
  244. package/dist/locale/ug-cn.min.js +1 -1
  245. package/dist/locale/ug-cn.min.mjs +1 -1
  246. package/dist/locale/ug-cn.mjs +1 -1
  247. package/dist/locale/uk.js +1 -1
  248. package/dist/locale/uk.min.js +1 -1
  249. package/dist/locale/uk.min.mjs +1 -1
  250. package/dist/locale/uk.mjs +1 -1
  251. package/dist/locale/uz-uz.js +1 -1
  252. package/dist/locale/uz-uz.min.js +1 -1
  253. package/dist/locale/uz-uz.min.mjs +1 -1
  254. package/dist/locale/uz-uz.mjs +1 -1
  255. package/dist/locale/vi.js +1 -1
  256. package/dist/locale/vi.min.js +1 -1
  257. package/dist/locale/vi.min.mjs +1 -1
  258. package/dist/locale/vi.mjs +1 -1
  259. package/dist/locale/zh-cn.js +1 -1
  260. package/dist/locale/zh-cn.min.js +1 -1
  261. package/dist/locale/zh-cn.min.mjs +1 -1
  262. package/dist/locale/zh-cn.mjs +1 -1
  263. package/dist/locale/zh-hk.js +1 -1
  264. package/dist/locale/zh-hk.min.js +1 -1
  265. package/dist/locale/zh-hk.min.mjs +1 -1
  266. package/dist/locale/zh-hk.mjs +1 -1
  267. package/dist/locale/zh-mo.js +1 -1
  268. package/dist/locale/zh-mo.min.js +1 -1
  269. package/dist/locale/zh-mo.min.mjs +1 -1
  270. package/dist/locale/zh-mo.mjs +1 -1
  271. package/dist/locale/zh-tw.js +1 -1
  272. package/dist/locale/zh-tw.min.js +1 -1
  273. package/dist/locale/zh-tw.min.mjs +1 -1
  274. package/dist/locale/zh-tw.mjs +1 -1
  275. package/es/components/affix/src/affix.d.ts +6 -6
  276. package/es/components/affix/src/affix.mjs.map +1 -1
  277. package/es/components/affix/src/affix.vue.d.ts +10 -31
  278. package/es/components/alert/src/alert.d.ts +1 -1
  279. package/es/components/alert/src/alert.vue.d.ts +5 -29
  280. package/es/components/anchor/src/anchor-link.vue.d.ts +2 -16
  281. package/es/components/anchor/src/anchor.d.ts +3 -3
  282. package/es/components/anchor/src/anchor.vue.d.ts +6 -30
  283. package/es/components/autocomplete/src/autocomplete.d.ts +16 -21
  284. package/es/components/autocomplete/src/autocomplete.vue.d.ts +23 -71
  285. package/es/components/avatar/src/avatar-group-props.d.ts +3 -3
  286. package/es/components/avatar/src/avatar-group.d.ts +10 -10
  287. package/es/components/avatar/src/avatar.d.ts +5 -5
  288. package/es/components/avatar/src/avatar.mjs.map +1 -1
  289. package/es/components/avatar/src/avatar.vue.d.ts +7 -22
  290. package/es/components/backtop/src/backtop.vue.d.ts +5 -25
  291. package/es/components/badge/src/badge.d.ts +2 -2
  292. package/es/components/badge/src/badge.vue.d.ts +4 -28
  293. package/es/components/breadcrumb/src/breadcrumb-item.d.ts +1 -1
  294. package/es/components/breadcrumb/src/breadcrumb-item.vue.d.ts +2 -16
  295. package/es/components/breadcrumb/src/breadcrumb.d.ts +1 -1
  296. package/es/components/breadcrumb/src/breadcrumb.vue.d.ts +2 -16
  297. package/es/components/button/src/button-group.vue.d.ts +3 -19
  298. package/es/components/button/src/button.d.ts +5 -5
  299. package/es/components/button/src/button.vue.d.ts +9 -41
  300. package/es/components/calendar/src/calendar.d.ts +1 -1
  301. package/es/components/calendar/src/calendar.vue.d.ts +6 -20
  302. package/es/components/calendar/src/date-table.d.ts +7 -1
  303. package/es/components/calendar/src/date-table.vue.d.ts +4 -4
  304. package/es/components/card/src/card.d.ts +1 -1
  305. package/es/components/card/src/card.vue.d.ts +2 -22
  306. package/es/components/carousel/src/carousel-item.vue.d.ts +2 -18
  307. package/es/components/carousel/src/carousel.d.ts +1 -1
  308. package/es/components/carousel/src/carousel.vue.d.ts +8 -44
  309. package/es/components/cascader/src/cascader.d.ts +16 -21
  310. package/es/components/cascader/src/cascader.vue.d.ts +19 -75
  311. package/es/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  312. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  313. package/es/components/cascader-panel/src/config.d.ts +6 -6
  314. package/es/components/cascader-panel/src/index.vue.d.ts +128 -26
  315. package/es/components/cascader-panel/src/menu.vue.d.ts +3 -3
  316. package/es/components/check-tag/src/check-tag.vue.d.ts +4 -18
  317. package/es/components/checkbox/src/checkbox-button.vue.d.ts +7 -41
  318. package/es/components/checkbox/src/checkbox-group.d.ts +2 -2
  319. package/es/components/checkbox/src/checkbox-group.vue.d.ts +6 -38
  320. package/es/components/checkbox/src/checkbox.vue.d.ts +7 -41
  321. package/es/components/checkbox/src/composables/use-checkbox-model.d.ts +2 -2
  322. package/es/components/checkbox/src/composables/use-checkbox-status.d.ts +1 -1
  323. package/es/components/checkbox/src/composables/use-checkbox.d.ts +3 -3
  324. package/es/components/col/src/col.d.ts +5 -5
  325. package/es/components/col/src/col.vue.d.ts +2 -34
  326. package/es/components/collapse/src/collapse-item.d.ts +3 -8
  327. package/es/components/collapse/src/collapse-item.vue.d.ts +3 -19
  328. package/es/components/collapse/src/collapse.d.ts +2 -2
  329. package/es/components/collapse/src/collapse.vue.d.ts +7 -23
  330. package/es/components/collapse-transition/src/collapse-transition.vue.d.ts +1 -1
  331. package/es/components/collection/src/collection.d.ts +6 -6
  332. package/es/components/color-picker/src/color-picker.d.ts +7 -7
  333. package/es/components/color-picker/src/color-picker.vue.d.ts +12 -42
  334. package/es/components/color-picker-panel/src/color-picker-panel.d.ts +4 -4
  335. package/es/components/color-picker-panel/src/color-picker-panel.vue.d.ts +6 -26
  336. package/es/components/config-provider/src/config-provider-props.d.ts +1 -1
  337. package/es/components/config-provider/src/config-provider.d.ts +8 -8
  338. package/es/components/container/src/aside.vue.d.ts +2 -16
  339. package/es/components/container/src/container.vue.d.ts +7 -1
  340. package/es/components/container/src/footer.vue.d.ts +2 -16
  341. package/es/components/container/src/header.vue.d.ts +2 -16
  342. package/es/components/container/src/main.vue.d.ts +1 -1
  343. package/es/components/countdown/src/countdown.d.ts +2 -2
  344. package/es/components/countdown/src/countdown.vue.d.ts +5 -23
  345. package/es/components/date-picker/src/date-picker.d.ts +45 -54
  346. package/es/components/date-picker/src/props.d.ts +16 -21
  347. package/es/components/date-picker-panel/src/date-picker-panel.d.ts +16 -16
  348. package/es/components/date-picker-panel/src/props/date-picker-panel.d.ts +4 -4
  349. package/es/components/descriptions/src/description-item.d.ts +6 -6
  350. package/es/components/descriptions/src/description.vue.d.ts +2 -22
  351. package/es/components/dialog/src/dialog.d.ts +3 -3
  352. package/es/components/dialog/src/dialog.vue.d.ts +14 -56
  353. package/es/components/dialog/src/use-dialog.d.ts +7 -7
  354. package/es/components/divider/src/divider.d.ts +1 -1
  355. package/es/components/divider/src/divider.vue.d.ts +2 -20
  356. package/es/components/drawer/src/drawer.d.ts +3 -3
  357. package/es/components/drawer/src/drawer.vue.d.ts +15 -65
  358. package/es/components/dropdown/src/dropdown-item-impl.mjs.map +1 -1
  359. package/es/components/dropdown/src/dropdown-item.mjs.map +1 -1
  360. package/es/components/dropdown/src/dropdown-item.vue.d.ts +141 -9
  361. package/es/components/dropdown/src/dropdown-menu.mjs.map +1 -1
  362. package/es/components/dropdown/src/dropdown-menu.vue.d.ts +5 -5
  363. package/es/components/dropdown/src/dropdown.d.ts +13 -13
  364. package/es/components/dropdown/src/dropdown.vue.d.ts +569 -45
  365. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  366. package/es/components/empty/src/empty.vue.d.ts +2 -18
  367. package/es/components/focus-trap/src/focus-trap.vue.d.ts +6 -6
  368. package/es/components/focus-trap/src/utils.d.ts +3 -3
  369. package/es/components/form/src/form-item.d.ts +3 -3
  370. package/es/components/form/src/form-item.vue.d.ts +5 -25
  371. package/es/components/form/src/form.d.ts +2 -2
  372. package/es/components/form/src/form.vue.d.ts +6 -32
  373. package/es/components/form/src/hooks/use-form-item.d.ts +1 -1
  374. package/es/components/icon/src/icon.d.ts +1 -1
  375. package/es/components/icon/src/icon.vue.d.ts +2 -16
  376. package/es/components/image/src/image.d.ts +3 -3
  377. package/es/components/image/src/image.vue.d.ts +13 -45
  378. package/es/components/image-viewer/src/image-viewer.d.ts +2 -2
  379. package/es/components/image-viewer/src/image-viewer.vue.d.ts +10 -38
  380. package/es/components/index.d.ts +8 -8
  381. package/es/components/infinite-scroll/index.d.ts +1 -1
  382. package/es/components/input/src/input.d.ts +12 -17
  383. package/es/components/input/src/input.vue.d.ts +21 -55
  384. package/es/components/input-number/src/input-number.d.ts +4 -4
  385. package/es/components/input-number/src/input-number.vue.d.ts +13 -51
  386. package/es/components/input-tag/src/composables/use-drag-tag.d.ts +2 -2
  387. package/es/components/input-tag/src/composables/use-hovering.d.ts +1 -1
  388. package/es/components/input-tag/src/composables/use-input-tag-dom.d.ts +4 -3
  389. package/es/components/input-tag/src/composables/use-input-tag.d.ts +6 -6
  390. package/es/components/input-tag/src/input-tag.d.ts +5 -10
  391. package/es/components/input-tag/src/input-tag.vue.d.ts +14 -52
  392. package/es/components/link/src/link.d.ts +2 -2
  393. package/es/components/link/src/link.vue.d.ts +5 -25
  394. package/es/components/loading/src/loading.d.ts +19 -15
  395. package/es/components/mention/src/mention.d.ts +19 -24
  396. package/es/components/mention/src/mention.vue.d.ts +16 -66
  397. package/es/components/menu/index.d.ts +1 -1
  398. package/es/components/menu/src/menu-item-group.vue.d.ts +2 -1
  399. package/es/components/menu/src/menu-item.d.ts +2 -2
  400. package/es/components/menu/src/menu-item.vue.d.ts +5 -19
  401. package/es/components/menu/src/menu.d.ts +26 -26
  402. package/es/components/menu/src/sub-menu.d.ts +20 -20
  403. package/es/components/message/src/message.d.ts +6 -6
  404. package/es/components/message/src/message.vue.d.ts +11 -56
  405. package/es/components/message-box/src/index.mjs.map +1 -1
  406. package/es/components/notification/src/notification.d.ts +6 -11
  407. package/es/components/notification/src/notification.vue.d.ts +12 -46
  408. package/es/components/overlay/index.d.ts +11 -11
  409. package/es/components/overlay/src/overlay.d.ts +3 -3
  410. package/es/components/overlay/src/overlay.mjs.map +1 -1
  411. package/es/components/page-header/src/page-header.d.ts +1 -1
  412. package/es/components/page-header/src/page-header.vue.d.ts +4 -20
  413. package/es/components/pagination/src/pagination.d.ts +22 -22
  414. package/es/components/popconfirm/src/popconfirm.d.ts +4 -4
  415. package/es/components/popconfirm/src/popconfirm.vue.d.ts +6 -34
  416. package/es/components/popover/src/popover.d.ts +11 -11
  417. package/es/components/popover/src/popover.vue.d.ts +10 -58
  418. package/es/components/popper/src/arrow.vue.d.ts +2 -2
  419. package/es/components/popper/src/composables/use-content-dom.d.ts +1 -1
  420. package/es/components/popper/src/composables/use-content.d.ts +5 -5
  421. package/es/components/popper/src/composables/use-content.mjs +9 -0
  422. package/es/components/popper/src/composables/use-content.mjs.map +1 -1
  423. package/es/components/popper/src/composables/use-focus-trap.d.ts +2 -2
  424. package/es/components/popper/src/content.d.ts +18 -18
  425. package/es/components/popper/src/content.vue.d.ts +13 -61
  426. package/es/components/popper/src/popper.vue.d.ts +2 -16
  427. package/es/components/popper/src/trigger.vue.d.ts +3 -13
  428. package/es/components/progress/src/progress.d.ts +4 -4
  429. package/es/components/progress/src/progress.vue.d.ts +4 -36
  430. package/es/components/radio/src/radio-button.vue.d.ts +4 -26
  431. package/es/components/radio/src/radio-group.d.ts +1 -1
  432. package/es/components/radio/src/radio-group.vue.d.ts +6 -36
  433. package/es/components/radio/src/radio.vue.d.ts +7 -31
  434. package/es/components/rate/src/rate.d.ts +5 -5
  435. package/es/components/rate/src/rate.vue.d.ts +7 -49
  436. package/es/components/result/src/result.vue.d.ts +2 -20
  437. package/es/components/roving-focus-group/src/roving-focus-group.d.ts +9 -9
  438. package/es/components/roving-focus-group/src/roving-focus-group.vue.d.ts +77 -1
  439. package/es/components/roving-focus-group/src/roving-focus-group2.mjs.map +1 -1
  440. package/es/components/roving-focus-group/src/roving-focus-item.mjs.map +1 -1
  441. package/es/components/roving-focus-group/src/roving-focus-item.vue.d.ts +26 -7
  442. package/es/components/row/src/row.d.ts +2 -2
  443. package/es/components/row/src/row.vue.d.ts +2 -20
  444. package/es/components/scrollbar/src/scrollbar.d.ts +1 -1
  445. package/es/components/scrollbar/src/scrollbar.vue.d.ts +6 -38
  446. package/es/components/scrollbar/src/thumb.vue.d.ts +2 -1
  447. package/es/components/segmented/index.d.ts +26 -239
  448. package/es/components/segmented/src/segmented.d.ts +3 -3
  449. package/es/components/segmented/src/segmented.vue.d.ts +6 -30
  450. package/es/components/select/src/option-group.mjs.map +1 -1
  451. package/es/components/select/src/option-group.vue.d.ts +6 -6
  452. package/es/components/select/src/option.vue.d.ts +8 -8
  453. package/es/components/select/src/option2.mjs.map +1 -1
  454. package/es/components/select/src/select-dropdown.mjs.map +1 -1
  455. package/es/components/select/src/select.d.ts +13 -23
  456. package/es/components/select/src/select.vue.d.ts +559 -95
  457. package/es/components/select/src/select.vue_vue_type_script_lang.mjs +3 -2
  458. package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
  459. package/es/components/select/src/select2.mjs.map +1 -1
  460. package/es/components/select-v2/src/defaults.d.ts +17 -27
  461. package/es/components/select-v2/src/group-item.mjs.map +1 -1
  462. package/es/components/select-v2/src/option-item.mjs.map +1 -1
  463. package/es/components/select-v2/src/select.mjs.map +1 -1
  464. package/es/components/select-v2/src/select.vue.d.ts +358 -103
  465. package/es/components/skeleton/src/skeleton-item.d.ts +1 -1
  466. package/es/components/skeleton/src/skeleton-item.vue.d.ts +2 -16
  467. package/es/components/skeleton/src/skeleton.d.ts +2 -2
  468. package/es/components/skeleton/src/skeleton.vue.d.ts +4 -22
  469. package/es/components/slider/src/button.vue.d.ts +9 -9
  470. package/es/components/slider/src/composables/use-lifecycle.d.ts +1 -1
  471. package/es/components/slider/src/composables/use-slide.d.ts +3 -3
  472. package/es/components/slider/src/composables/use-slider-button.d.ts +5 -5
  473. package/es/components/slider/src/marker.d.ts +2 -2
  474. package/es/components/slider/src/slider.d.ts +6 -6
  475. package/es/components/slider/src/slider.vue.d.ts +27 -27
  476. package/es/components/slot/src/only-child.d.ts +1 -1
  477. package/es/components/space/src/item.d.ts +4 -4
  478. package/es/components/space/src/space.d.ts +22 -23
  479. package/es/components/space/src/space.mjs.map +1 -1
  480. package/es/components/space/src/use-space.d.ts +1 -1
  481. package/es/components/splitter/src/hooks/useContainer.d.ts +2 -2
  482. package/es/components/splitter/src/hooks/useResize.d.ts +7 -1
  483. package/es/components/splitter/src/hooks/useSize.d.ts +1 -1
  484. package/es/components/splitter/src/split-panel.vue.d.ts +6 -20
  485. package/es/components/splitter/src/splitter.vue.d.ts +4 -18
  486. package/es/components/statistic/src/statistic.d.ts +2 -2
  487. package/es/components/statistic/src/statistic.vue.d.ts +3 -25
  488. package/es/components/steps/src/item.d.ts +2 -2
  489. package/es/components/steps/src/item.vue.d.ts +2 -22
  490. package/es/components/steps/src/steps.d.ts +2 -2
  491. package/es/components/steps/src/steps.vue.d.ts +4 -26
  492. package/es/components/switch/src/switch.d.ts +5 -5
  493. package/es/components/switch/src/switch.vue.d.ts +7 -37
  494. package/es/components/table/src/filter-panel.mjs.map +1 -1
  495. package/es/components/table/src/h-helper.d.ts +17 -0
  496. package/es/components/table/src/store/index.d.ts +880 -880
  497. package/es/components/table/src/table-body/index.d.ts +10 -8
  498. package/es/components/table/src/table-column/index.d.ts +105 -5
  499. package/es/components/table/src/table-footer/index.d.ts +5 -5
  500. package/es/components/table/src/table-header/index.d.ts +109 -7
  501. package/es/components/table/src/table.mjs.map +1 -1
  502. package/es/components/table/src/table.vue.d.ts +931 -460
  503. package/es/components/table-v2/src/cell.d.ts +1 -1
  504. package/es/components/table-v2/src/components/auto-resizer.d.ts +4 -4
  505. package/es/components/table-v2/src/components/header-row.d.ts +3 -3
  506. package/es/components/table-v2/src/components/header.d.ts +7 -7
  507. package/es/components/table-v2/src/components/row.d.ts +7 -7
  508. package/es/components/table-v2/src/composables/use-auto-resize.d.ts +3 -3
  509. package/es/components/table-v2/src/composables/use-data.d.ts +1 -1
  510. package/es/components/table-v2/src/composables/use-row.d.ts +4 -4
  511. package/es/components/table-v2/src/composables/use-scrollbar.d.ts +3 -0
  512. package/es/components/table-v2/src/header.d.ts +1 -1
  513. package/es/components/table-v2/src/row.d.ts +1 -1
  514. package/es/components/table-v2/src/table-grid.d.ts +10 -10
  515. package/es/components/table-v2/src/table-v2.d.ts +24 -24
  516. package/es/components/table-v2/src/table.d.ts +9 -9
  517. package/es/components/table-v2/src/use-table.d.ts +8 -8
  518. package/es/components/tabs/src/tab-bar.d.ts +4 -4
  519. package/es/components/tabs/src/tab-bar.vue.d.ts +4 -20
  520. package/es/components/tabs/src/tab-nav.d.ts +11 -11
  521. package/es/components/tabs/src/tab-pane.vue.d.ts +3 -19
  522. package/es/components/tabs/src/tabs.d.ts +18 -18
  523. package/es/components/tag/src/tag.d.ts +1 -1
  524. package/es/components/tag/src/tag.vue.d.ts +6 -22
  525. package/es/components/teleport/src/teleport.d.ts +1 -1
  526. package/es/components/teleport/src/teleport.vue.d.ts +6 -6
  527. package/es/components/text/src/text.vue.d.ts +2 -20
  528. package/es/components/time-picker/src/common/picker.vue.d.ts +50 -59
  529. package/es/components/time-picker/src/common/props.d.ts +17 -22
  530. package/es/components/time-picker/src/composables/use-common-picker.d.ts +13 -3
  531. package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +5 -5
  532. package/es/components/time-picker/src/time-picker.d.ts +42 -51
  533. package/es/components/time-select/src/time-select.d.ts +8 -8
  534. package/es/components/time-select/src/time-select.vue.d.ts +13 -51
  535. package/es/components/timeline/src/timeline-item.d.ts +2 -2
  536. package/es/components/timeline/src/timeline-item.vue.d.ts +3 -25
  537. package/es/components/timeline/src/timeline.d.ts +5 -5
  538. package/es/components/tooltip/src/content.d.ts +11 -11
  539. package/es/components/tooltip/src/content.vue.d.ts +8 -66
  540. package/es/components/tooltip/src/content.vue_vue_type_script_setup_true_lang.mjs +0 -3
  541. package/es/components/tooltip/src/content.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  542. package/es/components/tooltip/src/content2.mjs.map +1 -1
  543. package/es/components/tooltip/src/tooltip.d.ts +13 -13
  544. package/es/components/tooltip/src/tooltip.vue.d.ts +14 -80
  545. package/es/components/tooltip/src/trigger.d.ts +2 -2
  546. package/es/components/tour/src/content.d.ts +3 -3
  547. package/es/components/tour/src/step.d.ts +8 -8
  548. package/es/components/tour/src/step.vue.d.ts +6 -28
  549. package/es/components/tour/src/tour.d.ts +9 -9
  550. package/es/components/tour/src/tour.vue.d.ts +11 -53
  551. package/es/components/transfer/src/transfer-panel.vue.d.ts +6 -36
  552. package/es/components/transfer/src/transfer.d.ts +8 -8
  553. package/es/components/transfer/src/transfer.vue.d.ts +8 -48
  554. package/es/components/tree/src/model/useDragNode.d.ts +1 -1
  555. package/es/components/tree/src/tree-node.mjs.map +1 -1
  556. package/es/components/tree/src/tree.d.ts +4 -4
  557. package/es/components/tree/src/tree.vue.d.ts +594 -23
  558. package/es/components/tree/src/tree2.mjs.map +1 -1
  559. package/es/components/tree-select/src/tree-select.vue.d.ts +60 -78
  560. package/es/components/tree-v2/src/tree.vue.d.ts +6 -53
  561. package/es/components/tree-v2/src/virtual-tree.d.ts +1 -12
  562. package/es/components/upload/src/upload-content.d.ts +19 -19
  563. package/es/components/upload/src/upload-content.vue.d.ts +5 -53
  564. package/es/components/upload/src/upload-dragger.vue.d.ts +4 -18
  565. package/es/components/upload/src/upload-list.d.ts +4 -4
  566. package/es/components/upload/src/upload-list.vue.d.ts +4 -24
  567. package/es/components/upload/src/upload.d.ts +27 -27
  568. package/es/components/upload/src/upload.vue.d.ts +6 -56
  569. package/es/components/virtual-list/src/builders/build-grid.d.ts +23 -23
  570. package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +23 -23
  571. package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +34 -20
  572. package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +23 -23
  573. package/es/components/virtual-list/src/components/fixed-size-list.d.ts +34 -20
  574. package/es/components/virtual-list/src/hooks/use-cache.d.ts +1 -3
  575. package/es/components/virtual-list/src/hooks/use-cache.mjs.map +1 -1
  576. package/es/components/virtual-list/src/props.d.ts +17 -17
  577. package/es/components/watermark/src/watermark.d.ts +2 -2
  578. package/es/components/watermark/src/watermark.vue.d.ts +3 -23
  579. package/es/directives/index.d.ts +1 -1
  580. package/es/hooks/use-calc-input-width/index.d.ts +2 -2
  581. package/es/hooks/use-composition/index.d.ts +1 -1
  582. package/es/hooks/use-draggable/index.d.ts +1 -1
  583. package/es/hooks/use-empty-values/index.d.ts +1 -1
  584. package/es/hooks/use-floating/index.d.ts +60 -8
  585. package/es/hooks/use-focus-controller/index.d.ts +2 -2
  586. package/es/hooks/use-model-toggle/index.d.ts +1 -1
  587. package/es/hooks/use-ordered-children/index.d.ts +2 -2
  588. package/es/hooks/use-popper/index.d.ts +3 -3
  589. package/es/hooks/use-teleport/index.d.ts +1 -1
  590. package/es/hooks/use-throttle-render/index.d.ts +1 -1
  591. package/es/index.d.ts +9 -9
  592. package/es/utils/index.d.ts +2 -2
  593. package/es/utils/typescript.d.ts +5 -1
  594. package/es/utils/typescript.mjs.map +1 -1
  595. package/es/utils/vue/icon.d.ts +14 -14
  596. package/es/version.mjs +1 -1
  597. package/es/version.mjs.map +1 -1
  598. package/lib/components/affix/src/affix.d.ts +6 -6
  599. package/lib/components/affix/src/affix.js.map +1 -1
  600. package/lib/components/affix/src/affix.vue.d.ts +10 -31
  601. package/lib/components/alert/src/alert.d.ts +1 -1
  602. package/lib/components/alert/src/alert.vue.d.ts +5 -29
  603. package/lib/components/anchor/src/anchor-link.vue.d.ts +2 -16
  604. package/lib/components/anchor/src/anchor.d.ts +3 -3
  605. package/lib/components/anchor/src/anchor.vue.d.ts +6 -30
  606. package/lib/components/autocomplete/src/autocomplete.d.ts +16 -21
  607. package/lib/components/autocomplete/src/autocomplete.vue.d.ts +23 -71
  608. package/lib/components/avatar/src/avatar-group-props.d.ts +3 -3
  609. package/lib/components/avatar/src/avatar-group.d.ts +10 -10
  610. package/lib/components/avatar/src/avatar.d.ts +5 -5
  611. package/lib/components/avatar/src/avatar.js.map +1 -1
  612. package/lib/components/avatar/src/avatar.vue.d.ts +7 -22
  613. package/lib/components/backtop/src/backtop.vue.d.ts +5 -25
  614. package/lib/components/badge/src/badge.d.ts +2 -2
  615. package/lib/components/badge/src/badge.vue.d.ts +4 -28
  616. package/lib/components/breadcrumb/src/breadcrumb-item.d.ts +1 -1
  617. package/lib/components/breadcrumb/src/breadcrumb-item.vue.d.ts +2 -16
  618. package/lib/components/breadcrumb/src/breadcrumb.d.ts +1 -1
  619. package/lib/components/breadcrumb/src/breadcrumb.vue.d.ts +2 -16
  620. package/lib/components/button/src/button-group.vue.d.ts +3 -19
  621. package/lib/components/button/src/button.d.ts +5 -5
  622. package/lib/components/button/src/button.vue.d.ts +9 -41
  623. package/lib/components/calendar/src/calendar.d.ts +1 -1
  624. package/lib/components/calendar/src/calendar.vue.d.ts +6 -20
  625. package/lib/components/calendar/src/date-table.d.ts +7 -1
  626. package/lib/components/calendar/src/date-table.vue.d.ts +4 -4
  627. package/lib/components/card/src/card.d.ts +1 -1
  628. package/lib/components/card/src/card.vue.d.ts +2 -22
  629. package/lib/components/carousel/src/carousel-item.vue.d.ts +2 -18
  630. package/lib/components/carousel/src/carousel.d.ts +1 -1
  631. package/lib/components/carousel/src/carousel.vue.d.ts +8 -44
  632. package/lib/components/cascader/src/cascader.d.ts +16 -21
  633. package/lib/components/cascader/src/cascader.vue.d.ts +19 -75
  634. package/lib/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.js.map +1 -1
  635. package/lib/components/cascader/src/cascader2.js.map +1 -1
  636. package/lib/components/cascader-panel/src/config.d.ts +6 -6
  637. package/lib/components/cascader-panel/src/index.vue.d.ts +128 -26
  638. package/lib/components/cascader-panel/src/menu.vue.d.ts +3 -3
  639. package/lib/components/check-tag/src/check-tag.vue.d.ts +4 -18
  640. package/lib/components/checkbox/src/checkbox-button.vue.d.ts +7 -41
  641. package/lib/components/checkbox/src/checkbox-group.d.ts +2 -2
  642. package/lib/components/checkbox/src/checkbox-group.vue.d.ts +6 -38
  643. package/lib/components/checkbox/src/checkbox.vue.d.ts +7 -41
  644. package/lib/components/checkbox/src/composables/use-checkbox-model.d.ts +2 -2
  645. package/lib/components/checkbox/src/composables/use-checkbox-status.d.ts +1 -1
  646. package/lib/components/checkbox/src/composables/use-checkbox.d.ts +3 -3
  647. package/lib/components/col/src/col.d.ts +5 -5
  648. package/lib/components/col/src/col.vue.d.ts +2 -34
  649. package/lib/components/collapse/src/collapse-item.d.ts +3 -8
  650. package/lib/components/collapse/src/collapse-item.vue.d.ts +3 -19
  651. package/lib/components/collapse/src/collapse.d.ts +2 -2
  652. package/lib/components/collapse/src/collapse.vue.d.ts +7 -23
  653. package/lib/components/collapse-transition/src/collapse-transition.vue.d.ts +1 -1
  654. package/lib/components/collection/src/collection.d.ts +6 -6
  655. package/lib/components/color-picker/src/color-picker.d.ts +7 -7
  656. package/lib/components/color-picker/src/color-picker.vue.d.ts +12 -42
  657. package/lib/components/color-picker-panel/src/color-picker-panel.d.ts +4 -4
  658. package/lib/components/color-picker-panel/src/color-picker-panel.vue.d.ts +6 -26
  659. package/lib/components/config-provider/src/config-provider-props.d.ts +1 -1
  660. package/lib/components/config-provider/src/config-provider.d.ts +8 -8
  661. package/lib/components/container/src/aside.vue.d.ts +2 -16
  662. package/lib/components/container/src/container.vue.d.ts +7 -1
  663. package/lib/components/container/src/footer.vue.d.ts +2 -16
  664. package/lib/components/container/src/header.vue.d.ts +2 -16
  665. package/lib/components/container/src/main.vue.d.ts +1 -1
  666. package/lib/components/countdown/src/countdown.d.ts +2 -2
  667. package/lib/components/countdown/src/countdown.vue.d.ts +5 -23
  668. package/lib/components/date-picker/src/date-picker.d.ts +45 -54
  669. package/lib/components/date-picker/src/props.d.ts +16 -21
  670. package/lib/components/date-picker-panel/src/date-picker-panel.d.ts +16 -16
  671. package/lib/components/date-picker-panel/src/props/date-picker-panel.d.ts +4 -4
  672. package/lib/components/descriptions/src/description-item.d.ts +6 -6
  673. package/lib/components/descriptions/src/description.vue.d.ts +2 -22
  674. package/lib/components/dialog/src/dialog.d.ts +3 -3
  675. package/lib/components/dialog/src/dialog.vue.d.ts +14 -56
  676. package/lib/components/dialog/src/use-dialog.d.ts +7 -7
  677. package/lib/components/divider/src/divider.d.ts +1 -1
  678. package/lib/components/divider/src/divider.vue.d.ts +2 -20
  679. package/lib/components/drawer/src/drawer.d.ts +3 -3
  680. package/lib/components/drawer/src/drawer.vue.d.ts +15 -65
  681. package/lib/components/dropdown/src/dropdown-item-impl.js.map +1 -1
  682. package/lib/components/dropdown/src/dropdown-item.js.map +1 -1
  683. package/lib/components/dropdown/src/dropdown-item.vue.d.ts +141 -9
  684. package/lib/components/dropdown/src/dropdown-menu.js.map +1 -1
  685. package/lib/components/dropdown/src/dropdown-menu.vue.d.ts +5 -5
  686. package/lib/components/dropdown/src/dropdown.d.ts +13 -13
  687. package/lib/components/dropdown/src/dropdown.vue.d.ts +569 -45
  688. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  689. package/lib/components/empty/src/empty.vue.d.ts +2 -18
  690. package/lib/components/focus-trap/src/focus-trap.vue.d.ts +6 -6
  691. package/lib/components/focus-trap/src/utils.d.ts +3 -3
  692. package/lib/components/form/src/form-item.d.ts +3 -3
  693. package/lib/components/form/src/form-item.vue.d.ts +5 -25
  694. package/lib/components/form/src/form.d.ts +2 -2
  695. package/lib/components/form/src/form.vue.d.ts +6 -32
  696. package/lib/components/form/src/hooks/use-form-item.d.ts +1 -1
  697. package/lib/components/icon/src/icon.d.ts +1 -1
  698. package/lib/components/icon/src/icon.vue.d.ts +2 -16
  699. package/lib/components/image/src/image.d.ts +3 -3
  700. package/lib/components/image/src/image.vue.d.ts +13 -45
  701. package/lib/components/image-viewer/src/image-viewer.d.ts +2 -2
  702. package/lib/components/image-viewer/src/image-viewer.vue.d.ts +10 -38
  703. package/lib/components/index.d.ts +8 -8
  704. package/lib/components/infinite-scroll/index.d.ts +1 -1
  705. package/lib/components/input/src/input.d.ts +12 -17
  706. package/lib/components/input/src/input.vue.d.ts +21 -55
  707. package/lib/components/input-number/src/input-number.d.ts +4 -4
  708. package/lib/components/input-number/src/input-number.vue.d.ts +13 -51
  709. package/lib/components/input-tag/src/composables/use-drag-tag.d.ts +2 -2
  710. package/lib/components/input-tag/src/composables/use-hovering.d.ts +1 -1
  711. package/lib/components/input-tag/src/composables/use-input-tag-dom.d.ts +4 -3
  712. package/lib/components/input-tag/src/composables/use-input-tag.d.ts +6 -6
  713. package/lib/components/input-tag/src/input-tag.d.ts +5 -10
  714. package/lib/components/input-tag/src/input-tag.vue.d.ts +14 -52
  715. package/lib/components/link/src/link.d.ts +2 -2
  716. package/lib/components/link/src/link.vue.d.ts +5 -25
  717. package/lib/components/loading/src/loading.d.ts +19 -15
  718. package/lib/components/mention/src/mention.d.ts +19 -24
  719. package/lib/components/mention/src/mention.vue.d.ts +16 -66
  720. package/lib/components/menu/index.d.ts +1 -1
  721. package/lib/components/menu/src/menu-item-group.vue.d.ts +2 -1
  722. package/lib/components/menu/src/menu-item.d.ts +2 -2
  723. package/lib/components/menu/src/menu-item.vue.d.ts +5 -19
  724. package/lib/components/menu/src/menu.d.ts +26 -26
  725. package/lib/components/menu/src/sub-menu.d.ts +20 -20
  726. package/lib/components/message/src/message.d.ts +6 -6
  727. package/lib/components/message/src/message.vue.d.ts +11 -56
  728. package/lib/components/message-box/src/index.js.map +1 -1
  729. package/lib/components/notification/src/notification.d.ts +6 -11
  730. package/lib/components/notification/src/notification.vue.d.ts +12 -46
  731. package/lib/components/overlay/index.d.ts +11 -11
  732. package/lib/components/overlay/src/overlay.d.ts +3 -3
  733. package/lib/components/overlay/src/overlay.js.map +1 -1
  734. package/lib/components/page-header/src/page-header.d.ts +1 -1
  735. package/lib/components/page-header/src/page-header.vue.d.ts +4 -20
  736. package/lib/components/pagination/src/pagination.d.ts +22 -22
  737. package/lib/components/popconfirm/src/popconfirm.d.ts +4 -4
  738. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +6 -34
  739. package/lib/components/popover/src/popover.d.ts +11 -11
  740. package/lib/components/popover/src/popover.vue.d.ts +10 -58
  741. package/lib/components/popper/src/arrow.vue.d.ts +2 -2
  742. package/lib/components/popper/src/composables/use-content-dom.d.ts +1 -1
  743. package/lib/components/popper/src/composables/use-content.d.ts +5 -5
  744. package/lib/components/popper/src/composables/use-content.js +9 -0
  745. package/lib/components/popper/src/composables/use-content.js.map +1 -1
  746. package/lib/components/popper/src/composables/use-focus-trap.d.ts +2 -2
  747. package/lib/components/popper/src/content.d.ts +18 -18
  748. package/lib/components/popper/src/content.vue.d.ts +13 -61
  749. package/lib/components/popper/src/popper.vue.d.ts +2 -16
  750. package/lib/components/popper/src/trigger.vue.d.ts +3 -13
  751. package/lib/components/progress/src/progress.d.ts +4 -4
  752. package/lib/components/progress/src/progress.vue.d.ts +4 -36
  753. package/lib/components/radio/src/radio-button.vue.d.ts +4 -26
  754. package/lib/components/radio/src/radio-group.d.ts +1 -1
  755. package/lib/components/radio/src/radio-group.vue.d.ts +6 -36
  756. package/lib/components/radio/src/radio.vue.d.ts +7 -31
  757. package/lib/components/rate/src/rate.d.ts +5 -5
  758. package/lib/components/rate/src/rate.vue.d.ts +7 -49
  759. package/lib/components/result/src/result.vue.d.ts +2 -20
  760. package/lib/components/roving-focus-group/src/roving-focus-group.d.ts +9 -9
  761. package/lib/components/roving-focus-group/src/roving-focus-group.vue.d.ts +77 -1
  762. package/lib/components/roving-focus-group/src/roving-focus-group2.js.map +1 -1
  763. package/lib/components/roving-focus-group/src/roving-focus-item.js.map +1 -1
  764. package/lib/components/roving-focus-group/src/roving-focus-item.vue.d.ts +26 -7
  765. package/lib/components/row/src/row.d.ts +2 -2
  766. package/lib/components/row/src/row.vue.d.ts +2 -20
  767. package/lib/components/scrollbar/src/scrollbar.d.ts +1 -1
  768. package/lib/components/scrollbar/src/scrollbar.vue.d.ts +6 -38
  769. package/lib/components/scrollbar/src/thumb.vue.d.ts +2 -1
  770. package/lib/components/segmented/index.d.ts +26 -239
  771. package/lib/components/segmented/src/segmented.d.ts +3 -3
  772. package/lib/components/segmented/src/segmented.vue.d.ts +6 -30
  773. package/lib/components/select/src/option-group.js.map +1 -1
  774. package/lib/components/select/src/option-group.vue.d.ts +6 -6
  775. package/lib/components/select/src/option.vue.d.ts +8 -8
  776. package/lib/components/select/src/option2.js.map +1 -1
  777. package/lib/components/select/src/select-dropdown.js.map +1 -1
  778. package/lib/components/select/src/select.d.ts +13 -23
  779. package/lib/components/select/src/select.vue.d.ts +559 -95
  780. package/lib/components/select/src/select.vue_vue_type_script_lang.js +3 -2
  781. package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
  782. package/lib/components/select/src/select2.js.map +1 -1
  783. package/lib/components/select-v2/src/defaults.d.ts +17 -27
  784. package/lib/components/select-v2/src/group-item.js.map +1 -1
  785. package/lib/components/select-v2/src/option-item.js.map +1 -1
  786. package/lib/components/select-v2/src/select.js.map +1 -1
  787. package/lib/components/select-v2/src/select.vue.d.ts +358 -103
  788. package/lib/components/skeleton/src/skeleton-item.d.ts +1 -1
  789. package/lib/components/skeleton/src/skeleton-item.vue.d.ts +2 -16
  790. package/lib/components/skeleton/src/skeleton.d.ts +2 -2
  791. package/lib/components/skeleton/src/skeleton.vue.d.ts +4 -22
  792. package/lib/components/slider/src/button.vue.d.ts +9 -9
  793. package/lib/components/slider/src/composables/use-lifecycle.d.ts +1 -1
  794. package/lib/components/slider/src/composables/use-slide.d.ts +3 -3
  795. package/lib/components/slider/src/composables/use-slider-button.d.ts +5 -5
  796. package/lib/components/slider/src/marker.d.ts +2 -2
  797. package/lib/components/slider/src/slider.d.ts +6 -6
  798. package/lib/components/slider/src/slider.vue.d.ts +27 -27
  799. package/lib/components/slot/src/only-child.d.ts +1 -1
  800. package/lib/components/space/src/item.d.ts +4 -4
  801. package/lib/components/space/src/space.d.ts +22 -23
  802. package/lib/components/space/src/space.js.map +1 -1
  803. package/lib/components/space/src/use-space.d.ts +1 -1
  804. package/lib/components/splitter/src/hooks/useContainer.d.ts +2 -2
  805. package/lib/components/splitter/src/hooks/useResize.d.ts +7 -1
  806. package/lib/components/splitter/src/hooks/useSize.d.ts +1 -1
  807. package/lib/components/splitter/src/split-panel.vue.d.ts +6 -20
  808. package/lib/components/splitter/src/splitter.vue.d.ts +4 -18
  809. package/lib/components/statistic/src/statistic.d.ts +2 -2
  810. package/lib/components/statistic/src/statistic.vue.d.ts +3 -25
  811. package/lib/components/steps/src/item.d.ts +2 -2
  812. package/lib/components/steps/src/item.vue.d.ts +2 -22
  813. package/lib/components/steps/src/steps.d.ts +2 -2
  814. package/lib/components/steps/src/steps.vue.d.ts +4 -26
  815. package/lib/components/switch/src/switch.d.ts +5 -5
  816. package/lib/components/switch/src/switch.vue.d.ts +7 -37
  817. package/lib/components/table/src/filter-panel.js.map +1 -1
  818. package/lib/components/table/src/h-helper.d.ts +17 -0
  819. package/lib/components/table/src/store/index.d.ts +880 -880
  820. package/lib/components/table/src/table-body/index.d.ts +10 -8
  821. package/lib/components/table/src/table-column/index.d.ts +105 -5
  822. package/lib/components/table/src/table-footer/index.d.ts +5 -5
  823. package/lib/components/table/src/table-header/index.d.ts +109 -7
  824. package/lib/components/table/src/table.js.map +1 -1
  825. package/lib/components/table/src/table.vue.d.ts +931 -460
  826. package/lib/components/table-v2/src/cell.d.ts +1 -1
  827. package/lib/components/table-v2/src/components/auto-resizer.d.ts +4 -4
  828. package/lib/components/table-v2/src/components/header-row.d.ts +3 -3
  829. package/lib/components/table-v2/src/components/header.d.ts +7 -7
  830. package/lib/components/table-v2/src/components/row.d.ts +7 -7
  831. package/lib/components/table-v2/src/composables/use-auto-resize.d.ts +3 -3
  832. package/lib/components/table-v2/src/composables/use-data.d.ts +1 -1
  833. package/lib/components/table-v2/src/composables/use-row.d.ts +4 -4
  834. package/lib/components/table-v2/src/composables/use-scrollbar.d.ts +3 -0
  835. package/lib/components/table-v2/src/header.d.ts +1 -1
  836. package/lib/components/table-v2/src/row.d.ts +1 -1
  837. package/lib/components/table-v2/src/table-grid.d.ts +10 -10
  838. package/lib/components/table-v2/src/table-v2.d.ts +24 -24
  839. package/lib/components/table-v2/src/table.d.ts +9 -9
  840. package/lib/components/table-v2/src/use-table.d.ts +8 -8
  841. package/lib/components/tabs/src/tab-bar.d.ts +4 -4
  842. package/lib/components/tabs/src/tab-bar.vue.d.ts +4 -20
  843. package/lib/components/tabs/src/tab-nav.d.ts +11 -11
  844. package/lib/components/tabs/src/tab-pane.vue.d.ts +3 -19
  845. package/lib/components/tabs/src/tabs.d.ts +18 -18
  846. package/lib/components/tag/src/tag.d.ts +1 -1
  847. package/lib/components/tag/src/tag.vue.d.ts +6 -22
  848. package/lib/components/teleport/src/teleport.d.ts +1 -1
  849. package/lib/components/teleport/src/teleport.vue.d.ts +6 -6
  850. package/lib/components/text/src/text.vue.d.ts +2 -20
  851. package/lib/components/time-picker/src/common/picker.vue.d.ts +50 -59
  852. package/lib/components/time-picker/src/common/props.d.ts +17 -22
  853. package/lib/components/time-picker/src/composables/use-common-picker.d.ts +13 -3
  854. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +5 -5
  855. package/lib/components/time-picker/src/time-picker.d.ts +42 -51
  856. package/lib/components/time-select/src/time-select.d.ts +8 -8
  857. package/lib/components/time-select/src/time-select.vue.d.ts +13 -51
  858. package/lib/components/timeline/src/timeline-item.d.ts +2 -2
  859. package/lib/components/timeline/src/timeline-item.vue.d.ts +3 -25
  860. package/lib/components/timeline/src/timeline.d.ts +5 -5
  861. package/lib/components/tooltip/src/content.d.ts +11 -11
  862. package/lib/components/tooltip/src/content.vue.d.ts +8 -66
  863. package/lib/components/tooltip/src/content.vue_vue_type_script_setup_true_lang.js +0 -3
  864. package/lib/components/tooltip/src/content.vue_vue_type_script_setup_true_lang.js.map +1 -1
  865. package/lib/components/tooltip/src/content2.js.map +1 -1
  866. package/lib/components/tooltip/src/tooltip.d.ts +13 -13
  867. package/lib/components/tooltip/src/tooltip.vue.d.ts +14 -80
  868. package/lib/components/tooltip/src/trigger.d.ts +2 -2
  869. package/lib/components/tour/src/content.d.ts +3 -3
  870. package/lib/components/tour/src/step.d.ts +8 -8
  871. package/lib/components/tour/src/step.vue.d.ts +6 -28
  872. package/lib/components/tour/src/tour.d.ts +9 -9
  873. package/lib/components/tour/src/tour.vue.d.ts +11 -53
  874. package/lib/components/transfer/src/transfer-panel.vue.d.ts +6 -36
  875. package/lib/components/transfer/src/transfer.d.ts +8 -8
  876. package/lib/components/transfer/src/transfer.vue.d.ts +8 -48
  877. package/lib/components/tree/src/model/useDragNode.d.ts +1 -1
  878. package/lib/components/tree/src/tree-node.js.map +1 -1
  879. package/lib/components/tree/src/tree.d.ts +4 -4
  880. package/lib/components/tree/src/tree.vue.d.ts +594 -23
  881. package/lib/components/tree/src/tree2.js.map +1 -1
  882. package/lib/components/tree-select/src/tree-select.vue.d.ts +60 -78
  883. package/lib/components/tree-v2/src/tree.vue.d.ts +6 -53
  884. package/lib/components/tree-v2/src/virtual-tree.d.ts +1 -12
  885. package/lib/components/upload/src/upload-content.d.ts +19 -19
  886. package/lib/components/upload/src/upload-content.vue.d.ts +5 -53
  887. package/lib/components/upload/src/upload-dragger.vue.d.ts +4 -18
  888. package/lib/components/upload/src/upload-list.d.ts +4 -4
  889. package/lib/components/upload/src/upload-list.vue.d.ts +4 -24
  890. package/lib/components/upload/src/upload.d.ts +27 -27
  891. package/lib/components/upload/src/upload.vue.d.ts +6 -56
  892. package/lib/components/virtual-list/src/builders/build-grid.d.ts +23 -23
  893. package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +23 -23
  894. package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +34 -20
  895. package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +23 -23
  896. package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +34 -20
  897. package/lib/components/virtual-list/src/hooks/use-cache.d.ts +1 -3
  898. package/lib/components/virtual-list/src/hooks/use-cache.js.map +1 -1
  899. package/lib/components/virtual-list/src/props.d.ts +17 -17
  900. package/lib/components/watermark/src/watermark.d.ts +2 -2
  901. package/lib/components/watermark/src/watermark.vue.d.ts +3 -23
  902. package/lib/directives/index.d.ts +1 -1
  903. package/lib/hooks/use-calc-input-width/index.d.ts +2 -2
  904. package/lib/hooks/use-composition/index.d.ts +1 -1
  905. package/lib/hooks/use-draggable/index.d.ts +1 -1
  906. package/lib/hooks/use-empty-values/index.d.ts +1 -1
  907. package/lib/hooks/use-floating/index.d.ts +60 -8
  908. package/lib/hooks/use-focus-controller/index.d.ts +2 -2
  909. package/lib/hooks/use-model-toggle/index.d.ts +1 -1
  910. package/lib/hooks/use-ordered-children/index.d.ts +2 -2
  911. package/lib/hooks/use-popper/index.d.ts +3 -3
  912. package/lib/hooks/use-teleport/index.d.ts +1 -1
  913. package/lib/hooks/use-throttle-render/index.d.ts +1 -1
  914. package/lib/index.d.ts +9 -9
  915. package/lib/utils/index.d.ts +2 -2
  916. package/lib/utils/typescript.d.ts +5 -1
  917. package/lib/utils/typescript.js.map +1 -1
  918. package/lib/utils/vue/icon.d.ts +14 -14
  919. package/lib/version.js +1 -1
  920. package/lib/version.js.map +1 -1
  921. package/package.json +2 -2
  922. package/web-types.json +1 -1
@@ -104,12 +104,12 @@ var select_vue_vue_type_script_lang_default = defineComponent({
104
104
  if (isObject(item) && (item.type.name === "ElOption" || item.type.name === "ElTree")) {
105
105
  const _name = item.type.name;
106
106
  if (_name === "ElTree") flatTreeSelectData(item.props?.data || []).forEach((treeItem) => {
107
- treeItem.currentLabel = treeItem.label || (isObject(treeItem.value) ? "" : treeItem.value);
107
+ treeItem.currentLabel = treeItem.label ?? (isObject(treeItem.value) ? "" : treeItem.value);
108
108
  API.onOptionCreate(treeItem);
109
109
  });
110
110
  else if (_name === "ElOption") {
111
111
  const obj = { ...item.props };
112
- obj.currentLabel = obj.label || (isObject(obj.value) ? "" : obj.value);
112
+ obj.currentLabel = obj.label ?? (isObject(obj.value) ? "" : obj.value);
113
113
  API.onOptionCreate(obj);
114
114
  }
115
115
  }
@@ -117,6 +117,7 @@ var select_vue_vue_type_script_lang_default = defineComponent({
117
117
  };
118
118
  watch(() => [props.persistent || API.expanded.value || !slots.default ? void 0 : slots.default?.(), modelValue.value], () => {
119
119
  if (props.persistent || API.expanded.value) return;
120
+ if (!slots.default) return;
120
121
  API.states.options.clear();
121
122
  manuallyRenderSlots(slots.default?.());
122
123
  }, { immediate: true });
@@ -1 +1 @@
1
- {"version":3,"file":"select.vue_vue_type_script_lang.mjs","names":[],"sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @[mouseEnterEventName]=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :placement=\"placement\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n pure\n trigger=\"click\"\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!states.selected.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.selected\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"collapseTags && states.selected.length > maxCollapseTags\"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"\n tagTooltip?.fallbackPlacements ?? [\n 'bottom',\n 'top',\n 'right',\n 'left',\n ]\n \"\n :effect=\"tagTooltip?.effect ?? effect\"\n :placement=\"tagTooltip?.placement ?? 'bottom'\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :teleported=\"tagTooltip?.teleported ?? teleported\"\n :append-to=\"tagTooltip?.appendTo ?? appendTo\"\n :popper-options=\"tagTooltip?.popperOptions ?? popperOptions\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\n :offset=\"tagTooltip?.offset\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"collapseTagStyle\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.selected.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"item in collapseTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is(\n 'hidden',\n !filterable ||\n selectDisabled ||\n (!states.inputValue && !isFocused)\n ),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n :value=\"states.inputValue\"\n type=\"text\"\n :name=\"name\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"inputStyle\"\n :tabindex=\"tabindex\"\n role=\"combobox\"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n :aria-activedescendant=\"hoverOption?.id || ''\"\n :aria-controls=\"contentId\"\n :aria-expanded=\"dropdownMenuVisible\"\n :aria-label=\"ariaLabel\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n @keydown=\"handleKeydown\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"onInput\"\n @change.stop\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"getOption(modelValue!).index\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent && !showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsSelect.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsSelect.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu ref=\"menuRef\">\n <div\n v-if=\"$slots.header\"\n :class=\"nsSelect.be('dropdown', 'header')\"\n @click.stop\n >\n <slot name=\"header\" />\n </div>\n <el-scrollbar\n v-show=\"states.options.size > 0 && !loading\"\n :id=\"contentId\"\n ref=\"scrollbarRef\"\n tag=\"ul\"\n :wrap-class=\"nsSelect.be('dropdown', 'wrap')\"\n :view-class=\"nsSelect.be('dropdown', 'list')\"\n :class=\"[nsSelect.is('empty', filteredOptionsCount === 0)]\"\n role=\"listbox\"\n :aria-label=\"ariaLabel\"\n aria-orientation=\"vertical\"\n @scroll=\"popupScroll\"\n >\n <el-option\n v-if=\"showNewOption\"\n :value=\"states.inputValue\"\n :created=\"true\"\n />\n <el-options>\n <slot>\n <template v-for=\"(option, index) in options\" :key=\"index\">\n <el-option-group\n v-if=\"getOptions(option)?.length\"\n :label=\"getLabel(option)\"\n :disabled=\"getDisabled(option)\"\n >\n <el-option\n v-for=\"item in getOptions(option)\"\n :key=\"getValue(item)\"\n v-bind=\"getOptionProps(item)\"\n />\n </el-option-group>\n <el-option v-else v-bind=\"getOptionProps(option)\" />\n </template>\n </slot>\n </el-options>\n </el-scrollbar>\n <div\n v-if=\"$slots.loading && loading\"\n :class=\"nsSelect.be('dropdown', 'loading')\"\n >\n <slot name=\"loading\" />\n </div>\n <div\n v-else-if=\"loading || filteredOptionsCount === 0\"\n :class=\"nsSelect.be('dropdown', 'empty')\"\n >\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n reactive,\n toRefs,\n watch,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { flattedChildren, isArray, isObject } from '@element-plus/utils'\nimport { useCalcInputWidth } from '@element-plus/hooks'\nimport { useProps } from '@element-plus/components/select-v2/src/useProps'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect } from './useSelect'\nimport { selectKey } from './token'\nimport ElOptions from './options'\nimport { selectProps } from './select'\nimport ElOptionGroup from './option-group.vue'\n\nimport type { AppConfig, AppContext, VNode } from 'vue'\nimport type { SelectContext } from './type'\n\nconst COMPONENT_NAME = 'ElSelect'\n\ntype WarnHandler = AppConfig['warnHandler']\n\ninterface WarnHandlerRecord {\n originalWarnHandler: WarnHandler\n handler: WarnHandler\n count: number\n}\n\nconst warnHandlerMap = new WeakMap<AppContext, WarnHandlerRecord>()\n\nconst createSelectWarnHandler = (appContext: AppContext): WarnHandler => {\n return (...args) => {\n // Overrides warnings about slots not being executable outside of a render function.\n // We call slot below just to simulate data when persist is false, this warning message should be ignored\n const message = args[0]\n if (\n !message ||\n (message.includes(\n 'Slot \"default\" invoked outside of the render function'\n ) &&\n args[2]?.includes('ElTreeSelect'))\n )\n return\n const original = warnHandlerMap.get(appContext)?.originalWarnHandler\n if (original) {\n original(...args)\n return\n }\n // eslint-disable-next-line no-console\n console.warn(...args)\n }\n}\n\nconst getWarnHandlerRecord = (appContext: AppContext): WarnHandlerRecord => {\n let record = warnHandlerMap.get(appContext)\n if (!record) {\n record = {\n originalWarnHandler: appContext.config.warnHandler,\n handler: createSelectWarnHandler(appContext),\n count: 0,\n }\n warnHandlerMap.set(appContext, record)\n }\n return record\n}\nexport default defineComponent({\n name: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n components: {\n ElSelectMenu,\n ElOption,\n ElOptions,\n ElOptionGroup,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectProps,\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n 'popup-scroll',\n ],\n\n setup(props, { emit, slots }) {\n const instance = getCurrentInstance()!\n const warnRecord = getWarnHandlerRecord(instance.appContext)\n warnRecord.count += 1\n instance.appContext.config.warnHandler = warnRecord.handler\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n\n return multiple ? fallback : rawModelValue\n })\n\n const _props = reactive({\n ...toRefs(props),\n modelValue,\n })\n\n const API = useSelect(_props, emit)\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const { getLabel, getValue, getOptions, getDisabled } = useProps(props)\n\n const getOptionProps = (option: Record<string, any>) => ({\n label: getLabel(option),\n value: getValue(option),\n disabled: getDisabled(option),\n })\n\n const flatTreeSelectData = (data: any[]) => {\n return data.reduce((acc, item) => {\n acc.push(item)\n if (item.children && item.children.length > 0) {\n acc.push(...flatTreeSelectData(item.children))\n }\n return acc\n }, [])\n }\n\n const manuallyRenderSlots = (vnodes: VNode[] | undefined) => {\n // After option rendering is completed, the useSelect internal state can collect the value of each option.\n // If the persistent value is false, option will not be rendered by default, so in this case,\n // manually render and load option data here.\n const children = flattedChildren(vnodes || []) as VNode[]\n children.forEach((item) => {\n if (\n isObject(item) &&\n // @ts-expect-error\n (item.type.name === 'ElOption' || item.type.name === 'ElTree')\n ) {\n // @ts-expect-error\n const _name = item.type.name\n if (_name === 'ElTree') {\n // tree-select component is a special case.\n // So we need to handle it separately.\n const treeData = item.props?.data || []\n const flatData = flatTreeSelectData(treeData)\n flatData.forEach((treeItem: any) => {\n treeItem.currentLabel =\n treeItem.label ||\n (isObject(treeItem.value) ? '' : treeItem.value)\n API.onOptionCreate(treeItem)\n })\n } else if (_name === 'ElOption') {\n const obj = { ...item.props } as any\n obj.currentLabel =\n obj.label || (isObject(obj.value) ? '' : obj.value)\n API.onOptionCreate(obj)\n }\n }\n })\n }\n watch(\n () => [\n props.persistent || API.expanded.value || !slots.default\n ? undefined\n : slots.default?.(),\n modelValue.value,\n ],\n () => {\n // When persistent is false and the dropdown is closed, the menu is unmounted.\n // We should always re-hydrate option data from slots so labels stay in sync\n // with dynamic option list updates. Skip only when persistent is true or\n // when the dropdown is currently expanded (mounted options will manage themselves).\n if (props.persistent || API.expanded.value) {\n // If persistent is true, we don't need to manually render slots.\n return\n }\n // Reset current options snapshot before re-collecting from slots.\n API.states.options.clear()\n manuallyRenderSlots(slots.default?.())\n },\n {\n immediate: true,\n }\n )\n\n provide(\n selectKey,\n reactive({\n props: _props,\n states: API.states,\n selectRef: API.selectRef,\n optionsArray: API.optionsArray,\n setSelected: API.setSelected,\n handleOptionSelect: API.handleOptionSelect,\n onOptionCreate: API.onOptionCreate,\n onOptionDestroy: API.onOptionDestroy,\n }) satisfies SelectContext\n )\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.selected.map((i) => i.currentLabel as string)\n })\n\n onBeforeUnmount(() => {\n // https://github.com/element-plus/element-plus/issues/21279\n const record = warnHandlerMap.get(instance.appContext)\n if (!record) return\n record.count -= 1\n if (record.count <= 0) {\n instance.appContext.config.warnHandler = record.originalWarnHandler\n warnHandlerMap.delete(instance.appContext)\n }\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n getLabel,\n getValue,\n getOptions,\n getDisabled,\n getOptionProps,\n }\n },\n})\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"select.vue_vue_type_script_lang.mjs","names":[],"sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @[mouseEnterEventName]=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :placement=\"placement\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n pure\n trigger=\"click\"\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!states.selected.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.selected\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"collapseTags && states.selected.length > maxCollapseTags\"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"\n tagTooltip?.fallbackPlacements ?? [\n 'bottom',\n 'top',\n 'right',\n 'left',\n ]\n \"\n :effect=\"tagTooltip?.effect ?? effect\"\n :placement=\"tagTooltip?.placement ?? 'bottom'\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :teleported=\"tagTooltip?.teleported ?? teleported\"\n :append-to=\"tagTooltip?.appendTo ?? appendTo\"\n :popper-options=\"tagTooltip?.popperOptions ?? popperOptions\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\n :offset=\"tagTooltip?.offset\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"collapseTagStyle\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.selected.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"item in collapseTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is(\n 'hidden',\n !filterable ||\n selectDisabled ||\n (!states.inputValue && !isFocused)\n ),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n :value=\"states.inputValue\"\n type=\"text\"\n :name=\"name\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"inputStyle\"\n :tabindex=\"tabindex\"\n role=\"combobox\"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n :aria-activedescendant=\"hoverOption?.id || ''\"\n :aria-controls=\"contentId\"\n :aria-expanded=\"dropdownMenuVisible\"\n :aria-label=\"ariaLabel\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n @keydown=\"handleKeydown\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"onInput\"\n @change.stop\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"getOption(modelValue!).index\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent && !showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsSelect.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsSelect.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu ref=\"menuRef\">\n <div\n v-if=\"$slots.header\"\n :class=\"nsSelect.be('dropdown', 'header')\"\n @click.stop\n >\n <slot name=\"header\" />\n </div>\n <el-scrollbar\n v-show=\"states.options.size > 0 && !loading\"\n :id=\"contentId\"\n ref=\"scrollbarRef\"\n tag=\"ul\"\n :wrap-class=\"nsSelect.be('dropdown', 'wrap')\"\n :view-class=\"nsSelect.be('dropdown', 'list')\"\n :class=\"[nsSelect.is('empty', filteredOptionsCount === 0)]\"\n role=\"listbox\"\n :aria-label=\"ariaLabel\"\n aria-orientation=\"vertical\"\n @scroll=\"popupScroll\"\n >\n <el-option\n v-if=\"showNewOption\"\n :value=\"states.inputValue\"\n :created=\"true\"\n />\n <el-options>\n <slot>\n <template v-for=\"(option, index) in options\" :key=\"index\">\n <el-option-group\n v-if=\"getOptions(option)?.length\"\n :label=\"getLabel(option)\"\n :disabled=\"getDisabled(option)\"\n >\n <el-option\n v-for=\"item in getOptions(option)\"\n :key=\"getValue(item)\"\n v-bind=\"getOptionProps(item)\"\n />\n </el-option-group>\n <el-option v-else v-bind=\"getOptionProps(option)\" />\n </template>\n </slot>\n </el-options>\n </el-scrollbar>\n <div\n v-if=\"$slots.loading && loading\"\n :class=\"nsSelect.be('dropdown', 'loading')\"\n >\n <slot name=\"loading\" />\n </div>\n <div\n v-else-if=\"loading || filteredOptionsCount === 0\"\n :class=\"nsSelect.be('dropdown', 'empty')\"\n >\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n reactive,\n toRefs,\n watch,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { flattedChildren, isArray, isObject } from '@element-plus/utils'\nimport { useCalcInputWidth } from '@element-plus/hooks'\nimport { useProps } from '@element-plus/components/select-v2/src/useProps'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect } from './useSelect'\nimport { selectKey } from './token'\nimport ElOptions from './options'\nimport { selectProps } from './select'\nimport ElOptionGroup from './option-group.vue'\n\nimport type { AppConfig, AppContext, VNode } from 'vue'\nimport type { SelectContext } from './type'\n\nconst COMPONENT_NAME = 'ElSelect'\n\ntype WarnHandler = AppConfig['warnHandler']\n\ninterface WarnHandlerRecord {\n originalWarnHandler: WarnHandler\n handler: WarnHandler\n count: number\n}\n\nconst warnHandlerMap = new WeakMap<AppContext, WarnHandlerRecord>()\n\nconst createSelectWarnHandler = (appContext: AppContext): WarnHandler => {\n return (...args) => {\n // Overrides warnings about slots not being executable outside of a render function.\n // We call slot below just to simulate data when persist is false, this warning message should be ignored\n const message = args[0]\n if (\n !message ||\n (message.includes(\n 'Slot \"default\" invoked outside of the render function'\n ) &&\n args[2]?.includes('ElTreeSelect'))\n )\n return\n const original = warnHandlerMap.get(appContext)?.originalWarnHandler\n if (original) {\n original(...args)\n return\n }\n // eslint-disable-next-line no-console\n console.warn(...args)\n }\n}\n\nconst getWarnHandlerRecord = (appContext: AppContext): WarnHandlerRecord => {\n let record = warnHandlerMap.get(appContext)\n if (!record) {\n record = {\n originalWarnHandler: appContext.config.warnHandler,\n handler: createSelectWarnHandler(appContext),\n count: 0,\n }\n warnHandlerMap.set(appContext, record)\n }\n return record\n}\nexport default defineComponent({\n name: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n components: {\n ElSelectMenu,\n ElOption,\n ElOptions,\n ElOptionGroup,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectProps,\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n 'popup-scroll',\n ],\n\n setup(props, { emit, slots }) {\n const instance = getCurrentInstance()!\n const warnRecord = getWarnHandlerRecord(instance.appContext)\n warnRecord.count += 1\n instance.appContext.config.warnHandler = warnRecord.handler\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n\n return multiple ? fallback : rawModelValue\n })\n\n const _props = reactive({\n ...toRefs(props),\n modelValue,\n })\n\n const API = useSelect(_props, emit)\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const { getLabel, getValue, getOptions, getDisabled } = useProps(props)\n\n const getOptionProps = (option: Record<string, any>) => ({\n label: getLabel(option),\n value: getValue(option),\n disabled: getDisabled(option),\n })\n\n const flatTreeSelectData = (data: any[]) => {\n return data.reduce((acc, item) => {\n acc.push(item)\n if (item.children && item.children.length > 0) {\n acc.push(...flatTreeSelectData(item.children))\n }\n return acc\n }, [])\n }\n\n const manuallyRenderSlots = (vnodes: VNode[] | undefined) => {\n // After option rendering is completed, the useSelect internal state can collect the value of each option.\n // If the persistent value is false, option will not be rendered by default, so in this case,\n // manually render and load option data here.\n const children = flattedChildren(vnodes || []) as VNode[]\n children.forEach((item) => {\n if (\n isObject(item) &&\n // @ts-expect-error\n (item.type.name === 'ElOption' || item.type.name === 'ElTree')\n ) {\n // @ts-expect-error\n const _name = item.type.name\n if (_name === 'ElTree') {\n // tree-select component is a special case.\n // So we need to handle it separately.\n const treeData = item.props?.data || []\n const flatData = flatTreeSelectData(treeData)\n flatData.forEach((treeItem: any) => {\n treeItem.currentLabel =\n treeItem.label ??\n (isObject(treeItem.value) ? '' : treeItem.value)\n API.onOptionCreate(treeItem)\n })\n } else if (_name === 'ElOption') {\n const obj = { ...item.props } as any\n obj.currentLabel =\n obj.label ?? (isObject(obj.value) ? '' : obj.value)\n API.onOptionCreate(obj)\n }\n }\n })\n }\n watch(\n () => [\n props.persistent || API.expanded.value || !slots.default\n ? undefined\n : slots.default?.(),\n modelValue.value,\n ],\n () => {\n // When persistent is false and the dropdown is closed, the menu is unmounted.\n // We should always re-hydrate option data from slots so labels stay in sync\n // with dynamic option list updates. Skip only when persistent is true or\n // when the dropdown is currently expanded (mounted options will manage themselves).\n if (props.persistent || API.expanded.value) {\n // If persistent is true, we don't need to manually render slots.\n return\n }\n // When using :options prop (no slot content), el-option components register\n // and unregister themselves via onOptionCreate/onOptionDestroy lifecycle hooks.\n // Calling options.clear() here would prematurely wipe options that are still\n // mounted, causing a \"No Data\" flash during rapid open/close toggling.\n if (!slots.default) {\n return\n }\n // Reset current options snapshot before re-collecting from slots.\n API.states.options.clear()\n manuallyRenderSlots(slots.default?.())\n },\n {\n immediate: true,\n }\n )\n\n provide(\n selectKey,\n reactive({\n props: _props,\n states: API.states,\n selectRef: API.selectRef,\n optionsArray: API.optionsArray,\n setSelected: API.setSelected,\n handleOptionSelect: API.handleOptionSelect,\n onOptionCreate: API.onOptionCreate,\n onOptionDestroy: API.onOptionDestroy,\n }) satisfies SelectContext\n )\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.selected.map((i) => i.currentLabel as string)\n })\n\n onBeforeUnmount(() => {\n // https://github.com/element-plus/element-plus/issues/21279\n const record = warnHandlerMap.get(instance.appContext)\n if (!record) return\n record.count -= 1\n if (record.count <= 0) {\n instance.appContext.config.warnHandler = record.originalWarnHandler\n warnHandlerMap.delete(instance.appContext)\n }\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n getLabel,\n getValue,\n getOptions,\n getDisabled,\n getOptionProps,\n }\n },\n})\n</script>\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"select2.mjs","names":[],"sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @[mouseEnterEventName]=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :placement=\"placement\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n pure\n trigger=\"click\"\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!states.selected.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.selected\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"collapseTags && states.selected.length > maxCollapseTags\"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"\n tagTooltip?.fallbackPlacements ?? [\n 'bottom',\n 'top',\n 'right',\n 'left',\n ]\n \"\n :effect=\"tagTooltip?.effect ?? effect\"\n :placement=\"tagTooltip?.placement ?? 'bottom'\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :teleported=\"tagTooltip?.teleported ?? teleported\"\n :append-to=\"tagTooltip?.appendTo ?? appendTo\"\n :popper-options=\"tagTooltip?.popperOptions ?? popperOptions\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\n :offset=\"tagTooltip?.offset\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"collapseTagStyle\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.selected.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"item in collapseTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is(\n 'hidden',\n !filterable ||\n selectDisabled ||\n (!states.inputValue && !isFocused)\n ),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n :value=\"states.inputValue\"\n type=\"text\"\n :name=\"name\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"inputStyle\"\n :tabindex=\"tabindex\"\n role=\"combobox\"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n :aria-activedescendant=\"hoverOption?.id || ''\"\n :aria-controls=\"contentId\"\n :aria-expanded=\"dropdownMenuVisible\"\n :aria-label=\"ariaLabel\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n @keydown=\"handleKeydown\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"onInput\"\n @change.stop\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"getOption(modelValue!).index\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent && !showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsSelect.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsSelect.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu ref=\"menuRef\">\n <div\n v-if=\"$slots.header\"\n :class=\"nsSelect.be('dropdown', 'header')\"\n @click.stop\n >\n <slot name=\"header\" />\n </div>\n <el-scrollbar\n v-show=\"states.options.size > 0 && !loading\"\n :id=\"contentId\"\n ref=\"scrollbarRef\"\n tag=\"ul\"\n :wrap-class=\"nsSelect.be('dropdown', 'wrap')\"\n :view-class=\"nsSelect.be('dropdown', 'list')\"\n :class=\"[nsSelect.is('empty', filteredOptionsCount === 0)]\"\n role=\"listbox\"\n :aria-label=\"ariaLabel\"\n aria-orientation=\"vertical\"\n @scroll=\"popupScroll\"\n >\n <el-option\n v-if=\"showNewOption\"\n :value=\"states.inputValue\"\n :created=\"true\"\n />\n <el-options>\n <slot>\n <template v-for=\"(option, index) in options\" :key=\"index\">\n <el-option-group\n v-if=\"getOptions(option)?.length\"\n :label=\"getLabel(option)\"\n :disabled=\"getDisabled(option)\"\n >\n <el-option\n v-for=\"item in getOptions(option)\"\n :key=\"getValue(item)\"\n v-bind=\"getOptionProps(item)\"\n />\n </el-option-group>\n <el-option v-else v-bind=\"getOptionProps(option)\" />\n </template>\n </slot>\n </el-options>\n </el-scrollbar>\n <div\n v-if=\"$slots.loading && loading\"\n :class=\"nsSelect.be('dropdown', 'loading')\"\n >\n <slot name=\"loading\" />\n </div>\n <div\n v-else-if=\"loading || filteredOptionsCount === 0\"\n :class=\"nsSelect.be('dropdown', 'empty')\"\n >\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n reactive,\n toRefs,\n watch,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { flattedChildren, isArray, isObject } from '@element-plus/utils'\nimport { useCalcInputWidth } from '@element-plus/hooks'\nimport { useProps } from '@element-plus/components/select-v2/src/useProps'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect } from './useSelect'\nimport { selectKey } from './token'\nimport ElOptions from './options'\nimport { selectProps } from './select'\nimport ElOptionGroup from './option-group.vue'\n\nimport type { AppConfig, AppContext, VNode } from 'vue'\nimport type { SelectContext } from './type'\n\nconst COMPONENT_NAME = 'ElSelect'\n\ntype WarnHandler = AppConfig['warnHandler']\n\ninterface WarnHandlerRecord {\n originalWarnHandler: WarnHandler\n handler: WarnHandler\n count: number\n}\n\nconst warnHandlerMap = new WeakMap<AppContext, WarnHandlerRecord>()\n\nconst createSelectWarnHandler = (appContext: AppContext): WarnHandler => {\n return (...args) => {\n // Overrides warnings about slots not being executable outside of a render function.\n // We call slot below just to simulate data when persist is false, this warning message should be ignored\n const message = args[0]\n if (\n !message ||\n (message.includes(\n 'Slot \"default\" invoked outside of the render function'\n ) &&\n args[2]?.includes('ElTreeSelect'))\n )\n return\n const original = warnHandlerMap.get(appContext)?.originalWarnHandler\n if (original) {\n original(...args)\n return\n }\n // eslint-disable-next-line no-console\n console.warn(...args)\n }\n}\n\nconst getWarnHandlerRecord = (appContext: AppContext): WarnHandlerRecord => {\n let record = warnHandlerMap.get(appContext)\n if (!record) {\n record = {\n originalWarnHandler: appContext.config.warnHandler,\n handler: createSelectWarnHandler(appContext),\n count: 0,\n }\n warnHandlerMap.set(appContext, record)\n }\n return record\n}\nexport default defineComponent({\n name: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n components: {\n ElSelectMenu,\n ElOption,\n ElOptions,\n ElOptionGroup,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectProps,\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n 'popup-scroll',\n ],\n\n setup(props, { emit, slots }) {\n const instance = getCurrentInstance()!\n const warnRecord = getWarnHandlerRecord(instance.appContext)\n warnRecord.count += 1\n instance.appContext.config.warnHandler = warnRecord.handler\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n\n return multiple ? fallback : rawModelValue\n })\n\n const _props = reactive({\n ...toRefs(props),\n modelValue,\n })\n\n const API = useSelect(_props, emit)\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const { getLabel, getValue, getOptions, getDisabled } = useProps(props)\n\n const getOptionProps = (option: Record<string, any>) => ({\n label: getLabel(option),\n value: getValue(option),\n disabled: getDisabled(option),\n })\n\n const flatTreeSelectData = (data: any[]) => {\n return data.reduce((acc, item) => {\n acc.push(item)\n if (item.children && item.children.length > 0) {\n acc.push(...flatTreeSelectData(item.children))\n }\n return acc\n }, [])\n }\n\n const manuallyRenderSlots = (vnodes: VNode[] | undefined) => {\n // After option rendering is completed, the useSelect internal state can collect the value of each option.\n // If the persistent value is false, option will not be rendered by default, so in this case,\n // manually render and load option data here.\n const children = flattedChildren(vnodes || []) as VNode[]\n children.forEach((item) => {\n if (\n isObject(item) &&\n // @ts-expect-error\n (item.type.name === 'ElOption' || item.type.name === 'ElTree')\n ) {\n // @ts-expect-error\n const _name = item.type.name\n if (_name === 'ElTree') {\n // tree-select component is a special case.\n // So we need to handle it separately.\n const treeData = item.props?.data || []\n const flatData = flatTreeSelectData(treeData)\n flatData.forEach((treeItem: any) => {\n treeItem.currentLabel =\n treeItem.label ||\n (isObject(treeItem.value) ? '' : treeItem.value)\n API.onOptionCreate(treeItem)\n })\n } else if (_name === 'ElOption') {\n const obj = { ...item.props } as any\n obj.currentLabel =\n obj.label || (isObject(obj.value) ? '' : obj.value)\n API.onOptionCreate(obj)\n }\n }\n })\n }\n watch(\n () => [\n props.persistent || API.expanded.value || !slots.default\n ? undefined\n : slots.default?.(),\n modelValue.value,\n ],\n () => {\n // When persistent is false and the dropdown is closed, the menu is unmounted.\n // We should always re-hydrate option data from slots so labels stay in sync\n // with dynamic option list updates. Skip only when persistent is true or\n // when the dropdown is currently expanded (mounted options will manage themselves).\n if (props.persistent || API.expanded.value) {\n // If persistent is true, we don't need to manually render slots.\n return\n }\n // Reset current options snapshot before re-collecting from slots.\n API.states.options.clear()\n manuallyRenderSlots(slots.default?.())\n },\n {\n immediate: true,\n }\n )\n\n provide(\n selectKey,\n reactive({\n props: _props,\n states: API.states,\n selectRef: API.selectRef,\n optionsArray: API.optionsArray,\n setSelected: API.setSelected,\n handleOptionSelect: API.handleOptionSelect,\n onOptionCreate: API.onOptionCreate,\n onOptionDestroy: API.onOptionDestroy,\n }) satisfies SelectContext\n )\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.selected.map((i) => i.currentLabel as string)\n })\n\n onBeforeUnmount(() => {\n // https://github.com/element-plus/element-plus/issues/21279\n const record = warnHandlerMap.get(instance.appContext)\n if (!record) return\n record.count -= 1\n if (record.count <= 0) {\n instance.appContext.config.warnHandler = record.originalWarnHandler\n warnHandlerMap.delete(instance.appContext)\n }\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n getLabel,\n getValue,\n getOptions,\n getDisabled,\n getOptionProps,\n }\n },\n})\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"select2.mjs","names":[],"sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @[mouseEnterEventName]=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :placement=\"placement\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n pure\n trigger=\"click\"\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!states.selected.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.selected\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"collapseTags && states.selected.length > maxCollapseTags\"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"\n tagTooltip?.fallbackPlacements ?? [\n 'bottom',\n 'top',\n 'right',\n 'left',\n ]\n \"\n :effect=\"tagTooltip?.effect ?? effect\"\n :placement=\"tagTooltip?.placement ?? 'bottom'\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :teleported=\"tagTooltip?.teleported ?? teleported\"\n :append-to=\"tagTooltip?.appendTo ?? appendTo\"\n :popper-options=\"tagTooltip?.popperOptions ?? popperOptions\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\n :offset=\"tagTooltip?.offset\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"collapseTagStyle\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.selected.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"item in collapseTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is(\n 'hidden',\n !filterable ||\n selectDisabled ||\n (!states.inputValue && !isFocused)\n ),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n :value=\"states.inputValue\"\n type=\"text\"\n :name=\"name\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"inputStyle\"\n :tabindex=\"tabindex\"\n role=\"combobox\"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n :aria-activedescendant=\"hoverOption?.id || ''\"\n :aria-controls=\"contentId\"\n :aria-expanded=\"dropdownMenuVisible\"\n :aria-label=\"ariaLabel\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n @keydown=\"handleKeydown\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"onInput\"\n @change.stop\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"getOption(modelValue!).index\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent && !showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsSelect.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsSelect.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu ref=\"menuRef\">\n <div\n v-if=\"$slots.header\"\n :class=\"nsSelect.be('dropdown', 'header')\"\n @click.stop\n >\n <slot name=\"header\" />\n </div>\n <el-scrollbar\n v-show=\"states.options.size > 0 && !loading\"\n :id=\"contentId\"\n ref=\"scrollbarRef\"\n tag=\"ul\"\n :wrap-class=\"nsSelect.be('dropdown', 'wrap')\"\n :view-class=\"nsSelect.be('dropdown', 'list')\"\n :class=\"[nsSelect.is('empty', filteredOptionsCount === 0)]\"\n role=\"listbox\"\n :aria-label=\"ariaLabel\"\n aria-orientation=\"vertical\"\n @scroll=\"popupScroll\"\n >\n <el-option\n v-if=\"showNewOption\"\n :value=\"states.inputValue\"\n :created=\"true\"\n />\n <el-options>\n <slot>\n <template v-for=\"(option, index) in options\" :key=\"index\">\n <el-option-group\n v-if=\"getOptions(option)?.length\"\n :label=\"getLabel(option)\"\n :disabled=\"getDisabled(option)\"\n >\n <el-option\n v-for=\"item in getOptions(option)\"\n :key=\"getValue(item)\"\n v-bind=\"getOptionProps(item)\"\n />\n </el-option-group>\n <el-option v-else v-bind=\"getOptionProps(option)\" />\n </template>\n </slot>\n </el-options>\n </el-scrollbar>\n <div\n v-if=\"$slots.loading && loading\"\n :class=\"nsSelect.be('dropdown', 'loading')\"\n >\n <slot name=\"loading\" />\n </div>\n <div\n v-else-if=\"loading || filteredOptionsCount === 0\"\n :class=\"nsSelect.be('dropdown', 'empty')\"\n >\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n reactive,\n toRefs,\n watch,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { flattedChildren, isArray, isObject } from '@element-plus/utils'\nimport { useCalcInputWidth } from '@element-plus/hooks'\nimport { useProps } from '@element-plus/components/select-v2/src/useProps'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect } from './useSelect'\nimport { selectKey } from './token'\nimport ElOptions from './options'\nimport { selectProps } from './select'\nimport ElOptionGroup from './option-group.vue'\n\nimport type { AppConfig, AppContext, VNode } from 'vue'\nimport type { SelectContext } from './type'\n\nconst COMPONENT_NAME = 'ElSelect'\n\ntype WarnHandler = AppConfig['warnHandler']\n\ninterface WarnHandlerRecord {\n originalWarnHandler: WarnHandler\n handler: WarnHandler\n count: number\n}\n\nconst warnHandlerMap = new WeakMap<AppContext, WarnHandlerRecord>()\n\nconst createSelectWarnHandler = (appContext: AppContext): WarnHandler => {\n return (...args) => {\n // Overrides warnings about slots not being executable outside of a render function.\n // We call slot below just to simulate data when persist is false, this warning message should be ignored\n const message = args[0]\n if (\n !message ||\n (message.includes(\n 'Slot \"default\" invoked outside of the render function'\n ) &&\n args[2]?.includes('ElTreeSelect'))\n )\n return\n const original = warnHandlerMap.get(appContext)?.originalWarnHandler\n if (original) {\n original(...args)\n return\n }\n // eslint-disable-next-line no-console\n console.warn(...args)\n }\n}\n\nconst getWarnHandlerRecord = (appContext: AppContext): WarnHandlerRecord => {\n let record = warnHandlerMap.get(appContext)\n if (!record) {\n record = {\n originalWarnHandler: appContext.config.warnHandler,\n handler: createSelectWarnHandler(appContext),\n count: 0,\n }\n warnHandlerMap.set(appContext, record)\n }\n return record\n}\nexport default defineComponent({\n name: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n components: {\n ElSelectMenu,\n ElOption,\n ElOptions,\n ElOptionGroup,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectProps,\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n 'popup-scroll',\n ],\n\n setup(props, { emit, slots }) {\n const instance = getCurrentInstance()!\n const warnRecord = getWarnHandlerRecord(instance.appContext)\n warnRecord.count += 1\n instance.appContext.config.warnHandler = warnRecord.handler\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n\n return multiple ? fallback : rawModelValue\n })\n\n const _props = reactive({\n ...toRefs(props),\n modelValue,\n })\n\n const API = useSelect(_props, emit)\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const { getLabel, getValue, getOptions, getDisabled } = useProps(props)\n\n const getOptionProps = (option: Record<string, any>) => ({\n label: getLabel(option),\n value: getValue(option),\n disabled: getDisabled(option),\n })\n\n const flatTreeSelectData = (data: any[]) => {\n return data.reduce((acc, item) => {\n acc.push(item)\n if (item.children && item.children.length > 0) {\n acc.push(...flatTreeSelectData(item.children))\n }\n return acc\n }, [])\n }\n\n const manuallyRenderSlots = (vnodes: VNode[] | undefined) => {\n // After option rendering is completed, the useSelect internal state can collect the value of each option.\n // If the persistent value is false, option will not be rendered by default, so in this case,\n // manually render and load option data here.\n const children = flattedChildren(vnodes || []) as VNode[]\n children.forEach((item) => {\n if (\n isObject(item) &&\n // @ts-expect-error\n (item.type.name === 'ElOption' || item.type.name === 'ElTree')\n ) {\n // @ts-expect-error\n const _name = item.type.name\n if (_name === 'ElTree') {\n // tree-select component is a special case.\n // So we need to handle it separately.\n const treeData = item.props?.data || []\n const flatData = flatTreeSelectData(treeData)\n flatData.forEach((treeItem: any) => {\n treeItem.currentLabel =\n treeItem.label ??\n (isObject(treeItem.value) ? '' : treeItem.value)\n API.onOptionCreate(treeItem)\n })\n } else if (_name === 'ElOption') {\n const obj = { ...item.props } as any\n obj.currentLabel =\n obj.label ?? (isObject(obj.value) ? '' : obj.value)\n API.onOptionCreate(obj)\n }\n }\n })\n }\n watch(\n () => [\n props.persistent || API.expanded.value || !slots.default\n ? undefined\n : slots.default?.(),\n modelValue.value,\n ],\n () => {\n // When persistent is false and the dropdown is closed, the menu is unmounted.\n // We should always re-hydrate option data from slots so labels stay in sync\n // with dynamic option list updates. Skip only when persistent is true or\n // when the dropdown is currently expanded (mounted options will manage themselves).\n if (props.persistent || API.expanded.value) {\n // If persistent is true, we don't need to manually render slots.\n return\n }\n // When using :options prop (no slot content), el-option components register\n // and unregister themselves via onOptionCreate/onOptionDestroy lifecycle hooks.\n // Calling options.clear() here would prematurely wipe options that are still\n // mounted, causing a \"No Data\" flash during rapid open/close toggling.\n if (!slots.default) {\n return\n }\n // Reset current options snapshot before re-collecting from slots.\n API.states.options.clear()\n manuallyRenderSlots(slots.default?.())\n },\n {\n immediate: true,\n }\n )\n\n provide(\n selectKey,\n reactive({\n props: _props,\n states: API.states,\n selectRef: API.selectRef,\n optionsArray: API.optionsArray,\n setSelected: API.setSelected,\n handleOptionSelect: API.handleOptionSelect,\n onOptionCreate: API.onOptionCreate,\n onOptionDestroy: API.onOptionDestroy,\n }) satisfies SelectContext\n )\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.selected.map((i) => i.currentLabel as string)\n })\n\n onBeforeUnmount(() => {\n // https://github.com/element-plus/element-plus/issues/21279\n const record = warnHandlerMap.get(instance.appContext)\n if (!record) return\n record.count -= 1\n if (record.count <= 0) {\n instance.appContext.config.warnHandler = record.originalWarnHandler\n warnHandlerMap.delete(instance.appContext)\n }\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n getLabel,\n getValue,\n getOptions,\n getDisabled,\n getOptionProps,\n }\n },\n})\n</script>\n"],"mappings":"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"}
@@ -31,21 +31,16 @@ interface TagTooltipProps {
31
31
  declare const selectV2Props: {
32
32
  readonly ariaLabel: StringConstructor;
33
33
  readonly emptyValues: ArrayConstructor;
34
- readonly valueOnClear: EpPropFinalized<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown, undefined, boolean>;
34
+ readonly valueOnClear: EpPropFinalized<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | (((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null)) | null)[], unknown, unknown, undefined, boolean>;
35
35
  readonly allowCreate: BooleanConstructor;
36
- readonly autocomplete: EpPropFinalized<(new (...args: any[]) => "none" | "both" | "inline" | "list") | (() => "none" | "both" | "inline" | "list") | ((new (...args: any[]) => "none" | "both" | "inline" | "list") | (() => "none" | "both" | "inline" | "list"))[], unknown, unknown, "none", boolean>;
36
+ readonly autocomplete: EpPropFinalized<(new (...args: any[]) => "none" | "both" | "inline" | "list") | (() => "none" | "both" | "inline" | "list") | (((new (...args: any[]) => "none" | "both" | "inline" | "list") | (() => "none" | "both" | "inline" | "list")) | null)[], unknown, unknown, "none", boolean>;
37
37
  readonly automaticDropdown: BooleanConstructor;
38
38
  readonly clearable: BooleanConstructor;
39
- readonly clearIcon: {
40
- readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | ((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component))[], unknown, unknown>>;
41
- readonly required: false;
42
- readonly validator: ((val: unknown) => boolean) | undefined;
43
- __epPropKey: true;
44
- };
45
- readonly effect: EpPropFinalized<(new (...args: any[]) => string) | (() => PopperEffect) | ((new (...args: any[]) => string) | (() => PopperEffect))[], unknown, unknown, "light", boolean>;
39
+ readonly clearIcon: EpPropFinalized<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | (((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component)) | null)[], unknown, unknown, vue.DefineComponent<{}, void, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>, boolean>;
40
+ readonly effect: EpPropFinalized<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown, "light", boolean>;
46
41
  readonly collapseTags: BooleanConstructor;
47
42
  readonly collapseTagsTooltip: BooleanConstructor;
48
- readonly tagTooltip: EpPropFinalized<(new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps) | ((new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps))[], unknown, unknown, () => {}, boolean>;
43
+ readonly tagTooltip: EpPropFinalized<(new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps) | (((new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps)) | null)[], unknown, unknown, () => {}, boolean>;
49
44
  readonly maxCollapseTags: EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
50
45
  readonly defaultFirstOption: BooleanConstructor;
51
46
  readonly disabled: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
@@ -66,11 +61,11 @@ declare const selectV2Props: {
66
61
  (): any;
67
62
  new (): any;
68
63
  readonly prototype: any;
69
- } | ((new (...args: any[]) => any) | (() => any) | {
64
+ } | (((new (...args: any[]) => any) | (() => any) | {
70
65
  (): any;
71
66
  new (): any;
72
67
  readonly prototype: any;
73
- })[], unknown, unknown, undefined, boolean>;
68
+ }) | null)[], unknown, unknown, undefined, boolean>;
74
69
  readonly multiple: BooleanConstructor;
75
70
  readonly multipleLimit: EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
76
71
  readonly name: StringConstructor;
@@ -146,7 +141,7 @@ declare const selectV2Props: {
146
141
  [x: string]: boolean;
147
142
  } | (string | {
148
143
  [x: string]: boolean;
149
- } | any)[])[])[])[])[])[])[])[])[])[])[]) | ((new (...args: any[]) => string | {
144
+ } | any)[])[])[])[])[])[])[])[])[])[])[]) | (((new (...args: any[]) => string | {
150
145
  [x: string]: boolean;
151
146
  } | (string | {
152
147
  [x: string]: boolean;
@@ -194,18 +189,18 @@ declare const selectV2Props: {
194
189
  [x: string]: boolean;
195
190
  } | (string | {
196
191
  [x: string]: boolean;
197
- } | any)[])[])[])[])[])[])[])[])[])[])[]))[], unknown, unknown>>;
192
+ } | any)[])[])[])[])[])[])[])[])[])[])[])) | null)[], unknown, unknown>>;
198
193
  readonly required: false;
199
194
  readonly validator: ((val: unknown) => boolean) | undefined;
200
195
  __epPropKey: true;
201
196
  };
202
197
  readonly popperStyle: {
203
- readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => string | false | CSSProperties | vue.StyleValue[]) | (() => vue.StyleValue) | ((new (...args: any[]) => string | false | CSSProperties | vue.StyleValue[]) | (() => vue.StyleValue))[], unknown, unknown>>;
198
+ readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => string | false | CSSProperties | vue.StyleValue[]) | (() => vue.StyleValue) | (((new (...args: any[]) => string | false | CSSProperties | vue.StyleValue[]) | (() => vue.StyleValue)) | null)[], unknown, unknown>>;
204
199
  readonly required: false;
205
200
  readonly validator: ((val: unknown) => boolean) | undefined;
206
201
  __epPropKey: true;
207
202
  };
208
- readonly popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | ((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>))[], unknown, unknown, () => Partial<Options>, boolean>;
203
+ readonly popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | (((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>)) | null)[], unknown, unknown, () => Partial<Options>, boolean>;
209
204
  readonly remote: BooleanConstructor;
210
205
  readonly debounce: EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
211
206
  readonly size: {
@@ -214,15 +209,15 @@ declare const selectV2Props: {
214
209
  readonly validator: ((val: unknown) => boolean) | undefined;
215
210
  __epPropKey: true;
216
211
  };
217
- readonly props: EpPropFinalized<(new (...args: any[]) => Props) | (() => Props) | ((new (...args: any[]) => Props) | (() => Props))[], unknown, unknown, () => Required<Props>, boolean>;
212
+ readonly props: EpPropFinalized<(new (...args: any[]) => Props) | (() => Props) | (((new (...args: any[]) => Props) | (() => Props)) | null)[], unknown, unknown, () => Required<Props>, boolean>;
218
213
  readonly valueKey: EpPropFinalized<StringConstructor, unknown, unknown, "value", boolean>;
219
214
  readonly scrollbarAlwaysOn: BooleanConstructor;
220
215
  readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
221
216
  readonly offset: EpPropFinalized<NumberConstructor, unknown, unknown, 12, boolean>;
222
217
  readonly remoteShowSuffix: BooleanConstructor;
223
218
  readonly showArrow: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
224
- readonly placement: EpPropFinalized<(new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement) | ((new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement))[], Placement, unknown, "bottom-start", boolean>;
225
- readonly fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement[]) | (() => Placement[]) | ((new (...args: any[]) => Placement[]) | (() => Placement[]))[], unknown, unknown, readonly ["bottom-start", "top-start", "right", "left"], boolean>;
219
+ readonly placement: EpPropFinalized<(new (...args: any[]) => "top" | "auto" | "bottom" | "bottom-start" | "left" | "right" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement) | (((new (...args: any[]) => "top" | "auto" | "bottom" | "bottom-start" | "left" | "right" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement)) | null)[], Placement, unknown, "bottom-start", boolean>;
220
+ readonly fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement[]) | (() => Placement[]) | (((new (...args: any[]) => Placement[]) | (() => Placement[])) | null)[], unknown, unknown, readonly ["bottom-start", "top-start", "right", "left"], boolean>;
226
221
  readonly tagType: {
227
222
  readonly default: "info";
228
223
  readonly type: vue.PropType<EpPropMergeType<StringConstructor, "info" | "primary" | "success" | "warning" | "danger", unknown>>;
@@ -232,25 +227,20 @@ declare const selectV2Props: {
232
227
  };
233
228
  readonly tagEffect: {
234
229
  readonly default: "light";
235
- readonly type: vue.PropType<EpPropMergeType<StringConstructor, "dark" | "light" | "plain", unknown>>;
230
+ readonly type: vue.PropType<EpPropMergeType<StringConstructor, "light" | "dark" | "plain", unknown>>;
236
231
  readonly required: false;
237
232
  readonly validator: ((val: unknown) => boolean) | undefined;
238
233
  readonly __epPropKey: true;
239
234
  };
240
235
  readonly tabindex: EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, 0, boolean>;
241
236
  readonly appendTo: {
242
- readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | ((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement))[], unknown, unknown>) | ((new (...args: any[]) => string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | ((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement))[], unknown, unknown>))[], unknown, unknown>>;
237
+ readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | (((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement)) | null)[], unknown, unknown>) | (((new (...args: any[]) => string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | (((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement)) | null)[], unknown, unknown>)) | null)[], unknown, unknown>>;
243
238
  readonly required: false;
244
239
  readonly validator: ((val: unknown) => boolean) | undefined;
245
240
  __epPropKey: true;
246
241
  };
247
242
  readonly fitInputWidth: EpPropFinalized<readonly [BooleanConstructor, NumberConstructor], unknown, number | boolean, true, boolean>;
248
- readonly suffixIcon: {
249
- readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | ((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component))[], unknown, unknown>>;
250
- readonly required: false;
251
- readonly validator: ((val: unknown) => boolean) | undefined;
252
- __epPropKey: true;
253
- };
243
+ readonly suffixIcon: EpPropFinalized<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | (((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component)) | null)[], unknown, unknown, vue.DefineComponent<{}, void, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>, boolean>;
254
244
  };
255
245
  declare const optionV2Props: {
256
246
  readonly data: ArrayConstructor;
@@ -1 +1 @@
1
- {"version":3,"file":"group-item.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/group-item.vue"],"sourcesContent":["<template>\n <div\n :class=\"ns.be('group', 'title')\"\n :style=\"{ ...style, lineHeight: `${height}px` }\"\n >\n {{ item.label }}\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties, PropType } from 'vue'\n\nexport default defineComponent({\n props: {\n item: {\n type: Object,\n required: true,\n },\n style: {\n type: Object as PropType<CSSProperties>,\n },\n height: Number,\n },\n setup() {\n const ns = useNamespace('select')\n return {\n ns,\n }\n },\n})\n</script>\n"],"mappings":";;;;;;qBACE,mBAKM,OAAA;EAJH,OAAK,eAAE,KAAA,GAAG,GAAE,SAAA,QAAA,CAAA;EACZ,OAAK,eAAA;GAAA,GAAO,KAAA;GAAK,YAAA,GAAiB,KAAA,OAAM;GAAA,CAAA;oBAEtC,KAAA,KAAK,MAAK,EAAA,EAAA"}
1
+ {"version":3,"file":"group-item.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/group-item.vue"],"sourcesContent":["<template>\n <div\n :class=\"ns.be('group', 'title')\"\n :style=\"{ ...style, lineHeight: `${height}px` }\"\n >\n {{ item.label }}\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties, PropType } from 'vue'\n\nexport default defineComponent({\n props: {\n item: {\n type: Object,\n required: true,\n },\n style: {\n type: Object as PropType<CSSProperties>,\n },\n height: Number,\n },\n setup() {\n const ns = useNamespace('select')\n return {\n ns,\n }\n },\n})\n</script>\n"],"mappings":";;;;;;qBACE,mBAKM,OAAA;EAJH,OAAK,eAAE,KAAA,GAAG,GAAE,SAAA,QAAA,CAAA;EACZ,OAAK,eAAA;GAAA,GAAO,KAAA;GAAK,YAAA,GAAiB,KAAA,OAAM;GAAA,CAAA;EAAA,kBAEtC,KAAA,KAAK,MAAK,EAAA,EAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"option-item.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/option-item.vue"],"sourcesContent":["<template>\n <li\n :id=\"`${contentId}-${index}`\"\n role=\"option\"\n :aria-selected=\"selected\"\n :aria-disabled=\"disabled || undefined\"\n :style=\"style\"\n :class=\"[\n ns.be('dropdown', 'item'),\n ns.is('selected', selected),\n ns.is('disabled', disabled),\n ns.is('created', created),\n ns.is('hovering', hovering),\n ]\"\n @mousemove=\"hoverItem\"\n @click.stop=\"selectOptionClick\"\n >\n <slot :item=\"item\" :index=\"index\" :disabled=\"disabled\">\n <span>{{ getLabel(item) }}</span>\n </slot>\n </li>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useOption } from './useOption'\nimport { useProps } from './useProps'\nimport { optionV2Emits, optionV2Props } from './defaults'\nimport { selectV2InjectionKey } from './token'\n\nexport default defineComponent({\n props: optionV2Props,\n emits: optionV2Emits,\n setup(props, { emit }) {\n const select = inject(selectV2InjectionKey)!\n const ns = useNamespace('select')\n const { hoverItem, selectOptionClick } = useOption(props, { emit })\n const { getLabel } = useProps(select.props)\n const contentId = select.contentId\n\n return {\n ns,\n contentId,\n hoverItem,\n selectOptionClick,\n getLabel,\n }\n },\n})\n</script>\n"],"mappings":";;;;;;;;;;;qBACE,mBAmBK,MAAA;EAlBF,IAAE,GAAK,KAAA,UAAS,GAAI,KAAA;EACrB,MAAK;EACJ,iBAAe,KAAA;EACf,iBAAe,KAAA,YAAY;EAC3B,OAAK,eAAE,KAAA,MAAK;EACZ,OAAK,eAAA;GAAU,KAAA,GAAG,GAAE,YAAA,OAAA;GAA4B,KAAA,GAAG,GAAE,YAAa,KAAA,SAAQ;GAAS,KAAA,GAAG,GAAE,YAAa,KAAA,SAAQ;GAAS,KAAA,GAAG,GAAE,WAAY,KAAA,QAAO;GAAS,KAAA,GAAG,GAAE,YAAa,KAAA,SAAQ;;EAOjL,aAAS,OAAA,OAAA,OAAA,MAAA,GAAA,SAAE,KAAA,aAAA,KAAA,UAAA,GAAA,KAAS;EACpB,SAAK,OAAA,OAAA,OAAA,KAAA,eAAA,GAAA,SAAO,KAAA,qBAAA,KAAA,kBAAA,GAAA,KAAiB,EAAA,CAAA,OAAA,CAAA;KAE9B,WAEO,KAAA,QAAA,WAAA;EAFA,MAAM,KAAA;EAAO,OAAO,KAAA;EAAQ,UAAU,KAAA;UAEtC,CADL,mBAAiC,QAAA,MAAA,gBAAxB,KAAA,SAAS,KAAA,KAAI,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAAA,IAAA,WAAA"}
1
+ {"version":3,"file":"option-item.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/option-item.vue"],"sourcesContent":["<template>\n <li\n :id=\"`${contentId}-${index}`\"\n role=\"option\"\n :aria-selected=\"selected\"\n :aria-disabled=\"disabled || undefined\"\n :style=\"style\"\n :class=\"[\n ns.be('dropdown', 'item'),\n ns.is('selected', selected),\n ns.is('disabled', disabled),\n ns.is('created', created),\n ns.is('hovering', hovering),\n ]\"\n @mousemove=\"hoverItem\"\n @click.stop=\"selectOptionClick\"\n >\n <slot :item=\"item\" :index=\"index\" :disabled=\"disabled\">\n <span>{{ getLabel(item) }}</span>\n </slot>\n </li>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useOption } from './useOption'\nimport { useProps } from './useProps'\nimport { optionV2Emits, optionV2Props } from './defaults'\nimport { selectV2InjectionKey } from './token'\n\nexport default defineComponent({\n props: optionV2Props,\n emits: optionV2Emits,\n setup(props, { emit }) {\n const select = inject(selectV2InjectionKey)!\n const ns = useNamespace('select')\n const { hoverItem, selectOptionClick } = useOption(props, { emit })\n const { getLabel } = useProps(select.props)\n const contentId = select.contentId\n\n return {\n ns,\n contentId,\n hoverItem,\n selectOptionClick,\n getLabel,\n }\n },\n})\n</script>\n"],"mappings":";;;;;;;;;;;qBACE,mBAmBK,MAAA;EAlBF,IAAE,GAAK,KAAA,UAAS,GAAI,KAAA;EACrB,MAAK;EACJ,iBAAe,KAAA;EACf,iBAAe,KAAA,YAAY,KAAA;EAC3B,OAAK,eAAE,KAAA,MAAK;EACZ,OAAK,eAAA;GAAU,KAAA,GAAG,GAAE,YAAA,OAAA;GAA4B,KAAA,GAAG,GAAE,YAAa,KAAA,SAAQ;GAAS,KAAA,GAAG,GAAE,YAAa,KAAA,SAAQ;GAAS,KAAA,GAAG,GAAE,WAAY,KAAA,QAAO;GAAS,KAAA,GAAG,GAAE,YAAa,KAAA,SAAQ;GAAA,CAAA;EAOjL,aAAS,OAAA,OAAA,OAAA,MAAA,GAAA,SAAE,KAAA,aAAA,KAAA,UAAA,GAAA,KAAA;EACX,SAAK,OAAA,OAAA,OAAA,KAAA,eAAA,GAAA,SAAO,KAAA,qBAAA,KAAA,kBAAA,GAAA,KAAA,EAAiB,CAAA,OAAA,CAAA;EAAA,EAAA,CAE9B,WAEO,KAAA,QAAA,WAAA;EAFA,MAAM,KAAA;EAAO,OAAO,KAAA;EAAQ,UAAU,KAAA;EAAA,QAEtC,CADL,mBAAiC,QAAA,MAAA,gBAAxB,KAAA,SAAS,KAAA,KAAI,CAAA,EAAA,EAAA,CAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"select.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @mouseenter=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :gpu-acceleration=\"false\"\n :stop-popper-mouse-event=\"false\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n :placement=\"placement\"\n pure\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n trigger=\"click\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!modelValue.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.cachedOptions\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(getValue(item))\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !getDisabled(item)\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"getIndex(item)\"\n :label=\"getLabel(item)\"\n :value=\"getValue(item)\"\n >\n {{ getLabel(item) }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"\n collapseTags && states.cachedOptions.length > maxCollapseTags\n \"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"\n tagTooltip?.fallbackPlacements ?? [\n 'bottom',\n 'top',\n 'right',\n 'left',\n ]\n \"\n :effect=\"tagTooltip?.effect ?? effect\"\n :placement=\"tagTooltip?.placement ?? 'bottom'\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :teleported=\"tagTooltip?.teleported ?? teleported\"\n :append-to=\"tagTooltip?.appendTo ?? appendTo\"\n :popper-options=\"tagTooltip?.popperOptions ?? popperOptions\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\n :offset=\"tagTooltip?.offset\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n :style=\"collapseTagStyle\"\n disable-transitions\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.cachedOptions.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"selected in collapseTagList\"\n :key=\"getValueKey(getValue(selected))\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !getDisabled(selected)\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, selected)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"getIndex(selected)\"\n :label=\"getLabel(selected)\"\n :value=\"getValue(selected)\"\n >\n {{ getLabel(selected) }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is(\n 'hidden',\n !filterable ||\n selectDisabled ||\n (!states.inputValue && !isFocused)\n ),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n :value=\"states.inputValue\"\n :style=\"inputStyle\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n autocapitalize=\"off\"\n :aria-expanded=\"expanded\"\n :aria-label=\"ariaLabel\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n role=\"combobox\"\n :aria-controls=\"contentId\"\n :aria-activedescendant=\"\n states.hoveringIndex >= 0\n ? `${contentId}-${states.hoveringIndex}`\n : ''\n \"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n type=\"text\"\n :name=\"name\"\n @input=\"onInput\"\n @change.stop\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @keydown.up.stop.prevent=\"onKeyboardNavigate('backward')\"\n @keydown.down.stop.prevent=\"onKeyboardNavigate('forward')\"\n @keydown.enter.stop.prevent=\"onKeyboardSelect\"\n @keydown.esc.stop.prevent=\"handleEsc\"\n @keydown.delete.stop=\"handleDel\"\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"allOptionsValueMap.get(modelValue)?.index ?? -1\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent\"\n v-show=\"!showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsInput.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsInput.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click.prevent.stop=\"handleClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu\n :id=\"contentId\"\n ref=\"menuRef\"\n :data=\"filteredOptions\"\n :width=\"popperSize - BORDER_HORIZONTAL_WIDTH\"\n :hovering-index=\"states.hoveringIndex\"\n :scrollbar-always-on=\"scrollbarAlwaysOn\"\n :aria-label=\"ariaLabel\"\n >\n <template v-if=\"$slots.header\" #header>\n <div :class=\"nsSelect.be('dropdown', 'header')\" @click.stop>\n <slot name=\"header\" />\n </div>\n </template>\n <template #default=\"scope\">\n <slot v-bind=\"scope\" />\n </template>\n <template v-if=\"$slots.loading && loading\" #loading>\n <div :class=\"nsSelect.be('dropdown', 'loading')\">\n <slot name=\"loading\" />\n </div>\n </template>\n <template v-else-if=\"loading || filteredOptions.length === 0\" #empty>\n <div :class=\"nsSelect.be('dropdown', 'empty')\">\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n </template>\n <template v-if=\"$slots.footer\" #footer>\n <div :class=\"nsSelect.be('dropdown', 'footer')\" @click.stop>\n <slot name=\"footer\" />\n </div>\n </template>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, provide, reactive, toRefs } from 'vue'\nimport { isArray } from '@element-plus/utils'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { useCalcInputWidth, useId } from '@element-plus/hooks'\nimport ElSelectMenu from './select-dropdown'\nimport useSelect from './useSelect'\nimport { selectV2Emits, selectV2Props } from './defaults'\nimport { selectV2InjectionKey } from './token'\nimport { BORDER_HORIZONTAL_WIDTH } from '@element-plus/constants'\n\nexport default defineComponent({\n name: 'ElSelectV2',\n components: {\n ElSelectMenu,\n ElTag,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectV2Props,\n emits: selectV2Emits,\n setup(props, { emit }) {\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n return multiple ? fallback : rawModelValue\n })\n\n const API = useSelect(\n reactive({\n ...toRefs(props),\n modelValue,\n }),\n emit\n )\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const contentId = useId()\n\n provide(selectV2InjectionKey, {\n props: reactive({\n ...toRefs(props),\n height: API.popupHeight,\n modelValue,\n }),\n expanded: API.expanded,\n tooltipRef: API.tooltipRef,\n contentId,\n onSelect: API.onSelect,\n onHover: API.onHover,\n onKeyboardNavigate: API.onKeyboardNavigate,\n onKeyboardSelect: API.onKeyboardSelect,\n })\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.cachedOptions.map((i) => API.getLabel(i) as string)\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n contentId,\n BORDER_HORIZONTAL_WIDTH,\n }\n },\n})\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"select.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @mouseenter=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :gpu-acceleration=\"false\"\n :stop-popper-mouse-event=\"false\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n :placement=\"placement\"\n pure\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n trigger=\"click\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!modelValue.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.cachedOptions\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(getValue(item))\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !getDisabled(item)\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"getIndex(item)\"\n :label=\"getLabel(item)\"\n :value=\"getValue(item)\"\n >\n {{ getLabel(item) }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"\n collapseTags && states.cachedOptions.length > maxCollapseTags\n \"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"\n tagTooltip?.fallbackPlacements ?? [\n 'bottom',\n 'top',\n 'right',\n 'left',\n ]\n \"\n :effect=\"tagTooltip?.effect ?? effect\"\n :placement=\"tagTooltip?.placement ?? 'bottom'\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :teleported=\"tagTooltip?.teleported ?? teleported\"\n :append-to=\"tagTooltip?.appendTo ?? appendTo\"\n :popper-options=\"tagTooltip?.popperOptions ?? popperOptions\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\n :offset=\"tagTooltip?.offset\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n :style=\"collapseTagStyle\"\n disable-transitions\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.cachedOptions.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"selected in collapseTagList\"\n :key=\"getValueKey(getValue(selected))\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !getDisabled(selected)\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, selected)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"getIndex(selected)\"\n :label=\"getLabel(selected)\"\n :value=\"getValue(selected)\"\n >\n {{ getLabel(selected) }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is(\n 'hidden',\n !filterable ||\n selectDisabled ||\n (!states.inputValue && !isFocused)\n ),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n :value=\"states.inputValue\"\n :style=\"inputStyle\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n autocapitalize=\"off\"\n :aria-expanded=\"expanded\"\n :aria-label=\"ariaLabel\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n role=\"combobox\"\n :aria-controls=\"contentId\"\n :aria-activedescendant=\"\n states.hoveringIndex >= 0\n ? `${contentId}-${states.hoveringIndex}`\n : ''\n \"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n type=\"text\"\n :name=\"name\"\n @input=\"onInput\"\n @change.stop\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @keydown.up.stop.prevent=\"onKeyboardNavigate('backward')\"\n @keydown.down.stop.prevent=\"onKeyboardNavigate('forward')\"\n @keydown.enter.stop.prevent=\"onKeyboardSelect\"\n @keydown.esc.stop.prevent=\"handleEsc\"\n @keydown.delete.stop=\"handleDel\"\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"allOptionsValueMap.get(modelValue)?.index ?? -1\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent\"\n v-show=\"!showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsInput.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsInput.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click.prevent.stop=\"handleClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu\n :id=\"contentId\"\n ref=\"menuRef\"\n :data=\"filteredOptions\"\n :width=\"popperSize - BORDER_HORIZONTAL_WIDTH\"\n :hovering-index=\"states.hoveringIndex\"\n :scrollbar-always-on=\"scrollbarAlwaysOn\"\n :aria-label=\"ariaLabel\"\n >\n <template v-if=\"$slots.header\" #header>\n <div :class=\"nsSelect.be('dropdown', 'header')\" @click.stop>\n <slot name=\"header\" />\n </div>\n </template>\n <template #default=\"scope\">\n <slot v-bind=\"scope\" />\n </template>\n <template v-if=\"$slots.loading && loading\" #loading>\n <div :class=\"nsSelect.be('dropdown', 'loading')\">\n <slot name=\"loading\" />\n </div>\n </template>\n <template v-else-if=\"loading || filteredOptions.length === 0\" #empty>\n <div :class=\"nsSelect.be('dropdown', 'empty')\">\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n </template>\n <template v-if=\"$slots.footer\" #footer>\n <div :class=\"nsSelect.be('dropdown', 'footer')\" @click.stop>\n <slot name=\"footer\" />\n </div>\n </template>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, provide, reactive, toRefs } from 'vue'\nimport { isArray } from '@element-plus/utils'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { useCalcInputWidth, useId } from '@element-plus/hooks'\nimport ElSelectMenu from './select-dropdown'\nimport useSelect from './useSelect'\nimport { selectV2Emits, selectV2Props } from './defaults'\nimport { selectV2InjectionKey } from './token'\nimport { BORDER_HORIZONTAL_WIDTH } from '@element-plus/constants'\n\nexport default defineComponent({\n name: 'ElSelectV2',\n components: {\n ElSelectMenu,\n ElTag,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectV2Props,\n emits: selectV2Emits,\n setup(props, { emit }) {\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n return multiple ? fallback : rawModelValue\n })\n\n const API = useSelect(\n reactive({\n ...toRefs(props),\n modelValue,\n }),\n emit\n )\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const contentId = useId()\n\n provide(selectV2InjectionKey, {\n props: reactive({\n ...toRefs(props),\n height: API.popupHeight,\n modelValue,\n }),\n expanded: API.expanded,\n tooltipRef: API.tooltipRef,\n contentId,\n onSelect: API.onSelect,\n onHover: API.onHover,\n onKeyboardNavigate: API.onKeyboardNavigate,\n onKeyboardSelect: API.onKeyboardSelect,\n })\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.cachedOptions.map((i) => API.getLabel(i) as string)\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n contentId,\n BORDER_HORIZONTAL_WIDTH,\n }\n },\n})\n</script>\n"],"mappings":"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"}