@element-plus/nightly 0.0.20261102 → 0.0.20261103

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 (756) hide show
  1. package/dist/index.full.js +7 -5
  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 +7 -5
  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/gl.js +1 -1
  88. package/dist/locale/gl.min.js +1 -1
  89. package/dist/locale/gl.min.mjs +1 -1
  90. package/dist/locale/gl.mjs +1 -1
  91. package/dist/locale/he.js +1 -1
  92. package/dist/locale/he.min.js +1 -1
  93. package/dist/locale/he.min.mjs +1 -1
  94. package/dist/locale/he.mjs +1 -1
  95. package/dist/locale/hi.js +1 -1
  96. package/dist/locale/hi.min.js +1 -1
  97. package/dist/locale/hi.min.mjs +1 -1
  98. package/dist/locale/hi.mjs +1 -1
  99. package/dist/locale/hr.js +1 -1
  100. package/dist/locale/hr.min.js +1 -1
  101. package/dist/locale/hr.min.mjs +1 -1
  102. package/dist/locale/hr.mjs +1 -1
  103. package/dist/locale/hu.js +1 -1
  104. package/dist/locale/hu.min.js +1 -1
  105. package/dist/locale/hu.min.mjs +1 -1
  106. package/dist/locale/hu.mjs +1 -1
  107. package/dist/locale/hy-am.js +1 -1
  108. package/dist/locale/hy-am.min.js +1 -1
  109. package/dist/locale/hy-am.min.mjs +1 -1
  110. package/dist/locale/hy-am.mjs +1 -1
  111. package/dist/locale/id.js +1 -1
  112. package/dist/locale/id.min.js +1 -1
  113. package/dist/locale/id.min.mjs +1 -1
  114. package/dist/locale/id.mjs +1 -1
  115. package/dist/locale/it.js +1 -1
  116. package/dist/locale/it.min.js +1 -1
  117. package/dist/locale/it.min.mjs +1 -1
  118. package/dist/locale/it.mjs +1 -1
  119. package/dist/locale/ja.js +1 -1
  120. package/dist/locale/ja.min.js +1 -1
  121. package/dist/locale/ja.min.mjs +1 -1
  122. package/dist/locale/ja.mjs +1 -1
  123. package/dist/locale/kk.js +1 -1
  124. package/dist/locale/kk.min.js +1 -1
  125. package/dist/locale/kk.min.mjs +1 -1
  126. package/dist/locale/kk.mjs +1 -1
  127. package/dist/locale/km.js +1 -1
  128. package/dist/locale/km.min.js +1 -1
  129. package/dist/locale/km.min.mjs +1 -1
  130. package/dist/locale/km.mjs +1 -1
  131. package/dist/locale/ko.js +1 -1
  132. package/dist/locale/ko.min.js +1 -1
  133. package/dist/locale/ko.min.mjs +1 -1
  134. package/dist/locale/ko.mjs +1 -1
  135. package/dist/locale/ku.js +1 -1
  136. package/dist/locale/ku.min.js +1 -1
  137. package/dist/locale/ku.min.mjs +1 -1
  138. package/dist/locale/ku.mjs +1 -1
  139. package/dist/locale/ky.js +1 -1
  140. package/dist/locale/ky.min.js +1 -1
  141. package/dist/locale/ky.min.mjs +1 -1
  142. package/dist/locale/ky.mjs +1 -1
  143. package/dist/locale/lo.js +1 -1
  144. package/dist/locale/lo.min.js +1 -1
  145. package/dist/locale/lo.min.mjs +1 -1
  146. package/dist/locale/lo.mjs +1 -1
  147. package/dist/locale/lt.js +1 -1
  148. package/dist/locale/lt.min.js +1 -1
  149. package/dist/locale/lt.min.mjs +1 -1
  150. package/dist/locale/lt.mjs +1 -1
  151. package/dist/locale/lv.js +1 -1
  152. package/dist/locale/lv.min.js +1 -1
  153. package/dist/locale/lv.min.mjs +1 -1
  154. package/dist/locale/lv.mjs +1 -1
  155. package/dist/locale/mg.js +1 -1
  156. package/dist/locale/mg.min.js +1 -1
  157. package/dist/locale/mg.min.mjs +1 -1
  158. package/dist/locale/mg.mjs +1 -1
  159. package/dist/locale/mn.js +1 -1
  160. package/dist/locale/mn.min.js +1 -1
  161. package/dist/locale/mn.min.mjs +1 -1
  162. package/dist/locale/mn.mjs +1 -1
  163. package/dist/locale/ms.js +1 -1
  164. package/dist/locale/ms.min.js +1 -1
  165. package/dist/locale/ms.min.mjs +1 -1
  166. package/dist/locale/ms.mjs +1 -1
  167. package/dist/locale/my.js +1 -1
  168. package/dist/locale/my.min.js +1 -1
  169. package/dist/locale/my.min.mjs +1 -1
  170. package/dist/locale/my.mjs +1 -1
  171. package/dist/locale/nb-no.js +1 -1
  172. package/dist/locale/nb-no.min.js +1 -1
  173. package/dist/locale/nb-no.min.mjs +1 -1
  174. package/dist/locale/nb-no.mjs +1 -1
  175. package/dist/locale/nl.js +1 -1
  176. package/dist/locale/nl.min.js +1 -1
  177. package/dist/locale/nl.min.mjs +1 -1
  178. package/dist/locale/nl.mjs +1 -1
  179. package/dist/locale/no.js +1 -1
  180. package/dist/locale/no.min.js +1 -1
  181. package/dist/locale/no.min.mjs +1 -1
  182. package/dist/locale/no.mjs +1 -1
  183. package/dist/locale/pa.js +1 -1
  184. package/dist/locale/pa.min.js +1 -1
  185. package/dist/locale/pa.min.mjs +1 -1
  186. package/dist/locale/pa.mjs +1 -1
  187. package/dist/locale/pl.js +1 -1
  188. package/dist/locale/pl.min.js +1 -1
  189. package/dist/locale/pl.min.mjs +1 -1
  190. package/dist/locale/pl.mjs +1 -1
  191. package/dist/locale/pt-br.js +1 -1
  192. package/dist/locale/pt-br.min.js +1 -1
  193. package/dist/locale/pt-br.min.mjs +1 -1
  194. package/dist/locale/pt-br.mjs +1 -1
  195. package/dist/locale/pt.js +1 -1
  196. package/dist/locale/pt.min.js +1 -1
  197. package/dist/locale/pt.min.mjs +1 -1
  198. package/dist/locale/pt.mjs +1 -1
  199. package/dist/locale/ro.js +1 -1
  200. package/dist/locale/ro.min.js +1 -1
  201. package/dist/locale/ro.min.mjs +1 -1
  202. package/dist/locale/ro.mjs +1 -1
  203. package/dist/locale/ru.js +1 -1
  204. package/dist/locale/ru.min.js +1 -1
  205. package/dist/locale/ru.min.mjs +1 -1
  206. package/dist/locale/ru.mjs +1 -1
  207. package/dist/locale/sk.js +1 -1
  208. package/dist/locale/sk.min.js +1 -1
  209. package/dist/locale/sk.min.mjs +1 -1
  210. package/dist/locale/sk.mjs +1 -1
  211. package/dist/locale/sl.js +1 -1
  212. package/dist/locale/sl.min.js +1 -1
  213. package/dist/locale/sl.min.mjs +1 -1
  214. package/dist/locale/sl.mjs +1 -1
  215. package/dist/locale/sr.js +1 -1
  216. package/dist/locale/sr.min.js +1 -1
  217. package/dist/locale/sr.min.mjs +1 -1
  218. package/dist/locale/sr.mjs +1 -1
  219. package/dist/locale/sv.js +1 -1
  220. package/dist/locale/sv.min.js +1 -1
  221. package/dist/locale/sv.min.mjs +1 -1
  222. package/dist/locale/sv.mjs +1 -1
  223. package/dist/locale/sw.js +1 -1
  224. package/dist/locale/sw.min.js +1 -1
  225. package/dist/locale/sw.min.mjs +1 -1
  226. package/dist/locale/sw.mjs +1 -1
  227. package/dist/locale/ta.js +1 -1
  228. package/dist/locale/ta.min.js +1 -1
  229. package/dist/locale/ta.min.mjs +1 -1
  230. package/dist/locale/ta.mjs +1 -1
  231. package/dist/locale/te.js +1 -1
  232. package/dist/locale/te.min.js +1 -1
  233. package/dist/locale/te.min.mjs +1 -1
  234. package/dist/locale/te.mjs +1 -1
  235. package/dist/locale/th.js +1 -1
  236. package/dist/locale/th.min.js +1 -1
  237. package/dist/locale/th.min.mjs +1 -1
  238. package/dist/locale/th.mjs +1 -1
  239. package/dist/locale/tk.js +1 -1
  240. package/dist/locale/tk.min.js +1 -1
  241. package/dist/locale/tk.min.mjs +1 -1
  242. package/dist/locale/tk.mjs +1 -1
  243. package/dist/locale/tr.js +1 -1
  244. package/dist/locale/tr.min.js +1 -1
  245. package/dist/locale/tr.min.mjs +1 -1
  246. package/dist/locale/tr.mjs +1 -1
  247. package/dist/locale/ug-cn.js +1 -1
  248. package/dist/locale/ug-cn.min.js +1 -1
  249. package/dist/locale/ug-cn.min.mjs +1 -1
  250. package/dist/locale/ug-cn.mjs +1 -1
  251. package/dist/locale/uk.js +1 -1
  252. package/dist/locale/uk.min.js +1 -1
  253. package/dist/locale/uk.min.mjs +1 -1
  254. package/dist/locale/uk.mjs +1 -1
  255. package/dist/locale/uz-uz.js +1 -1
  256. package/dist/locale/uz-uz.min.js +1 -1
  257. package/dist/locale/uz-uz.min.mjs +1 -1
  258. package/dist/locale/uz-uz.mjs +1 -1
  259. package/dist/locale/vi.js +1 -1
  260. package/dist/locale/vi.min.js +1 -1
  261. package/dist/locale/vi.min.mjs +1 -1
  262. package/dist/locale/vi.mjs +1 -1
  263. package/dist/locale/zh-cn.js +1 -1
  264. package/dist/locale/zh-cn.min.js +1 -1
  265. package/dist/locale/zh-cn.min.mjs +1 -1
  266. package/dist/locale/zh-cn.mjs +1 -1
  267. package/dist/locale/zh-hk.js +1 -1
  268. package/dist/locale/zh-hk.min.js +1 -1
  269. package/dist/locale/zh-hk.min.mjs +1 -1
  270. package/dist/locale/zh-hk.mjs +1 -1
  271. package/dist/locale/zh-mo.js +1 -1
  272. package/dist/locale/zh-mo.min.js +1 -1
  273. package/dist/locale/zh-mo.min.mjs +1 -1
  274. package/dist/locale/zh-mo.mjs +1 -1
  275. package/dist/locale/zh-tw.js +1 -1
  276. package/dist/locale/zh-tw.min.js +1 -1
  277. package/dist/locale/zh-tw.min.mjs +1 -1
  278. package/dist/locale/zh-tw.mjs +1 -1
  279. package/es/components/affix/src/affix.d.ts +1 -1
  280. package/es/components/affix/src/affix.vue.d.ts +3 -3
  281. package/es/components/alert/src/alert.d.ts +2 -2
  282. package/es/components/alert/src/alert.vue.d.ts +3 -3
  283. package/es/components/anchor/src/anchor.d.ts +1 -1
  284. package/es/components/anchor/src/anchor.vue.d.ts +5 -5
  285. package/es/components/autocomplete/src/autocomplete.d.ts +5 -5
  286. package/es/components/autocomplete/src/autocomplete.vue.d.ts +3 -3
  287. package/es/components/avatar/src/avatar-group-props.d.ts +1 -1
  288. package/es/components/avatar/src/avatar-group.d.ts +3 -3
  289. package/es/components/avatar/src/avatar.d.ts +2 -2
  290. package/es/components/backtop/src/backtop.vue.d.ts +1 -1
  291. package/es/components/badge/src/badge.vue.d.ts +1 -1
  292. package/es/components/button/src/button-group.d.ts +3 -3
  293. package/es/components/button/src/button-group.vue.d.ts +2 -2
  294. package/es/components/button/src/button.d.ts +2 -2
  295. package/es/components/button/src/button.vue.d.ts +4 -4
  296. package/es/components/button/src/use-button.d.ts +2 -2
  297. package/es/components/calendar/src/calendar.vue.d.ts +1 -1
  298. package/es/components/calendar/style/css.mjs +1 -1
  299. package/es/components/calendar/style/index.mjs +1 -1
  300. package/es/components/card/src/card.d.ts +1 -1
  301. package/es/components/card/src/card.vue.d.ts +3 -3
  302. package/es/components/carousel/src/carousel.d.ts +2 -2
  303. package/es/components/carousel/src/carousel.vue.d.ts +4 -4
  304. package/es/components/cascader/src/cascader.d.ts +4 -4
  305. package/es/components/cascader/src/cascader.vue.d.ts +16 -16
  306. package/es/components/cascader-panel/src/index.vue.d.ts +1 -1
  307. package/es/components/cascader-panel/src/menu.vue.d.ts +1 -1
  308. package/es/components/checkbox/src/checkbox-button.vue.d.ts +2 -2
  309. package/es/components/checkbox/src/checkbox-group.d.ts +1 -1
  310. package/es/components/checkbox/src/checkbox-group.vue.d.ts +1 -1
  311. package/es/components/checkbox/src/checkbox.d.ts +9 -9
  312. package/es/components/checkbox/src/checkbox.vue.d.ts +2 -2
  313. package/es/components/checkbox/src/composables/use-checkbox-status.d.ts +2 -2
  314. package/es/components/checkbox/src/composables/use-checkbox.d.ts +2 -2
  315. package/es/components/col/src/col.vue.d.ts +1 -1
  316. package/es/components/collapse/src/collapse-item.vue.d.ts +1 -1
  317. package/es/components/collapse/src/collapse.d.ts +1 -1
  318. package/es/components/color-picker/src/color-picker.d.ts +2 -2
  319. package/es/components/color-picker/src/color-picker.vue.d.ts +8 -8
  320. package/es/components/color-picker-panel/src/color-picker-panel.d.ts +1 -1
  321. package/es/components/config-provider/src/config-provider-props.d.ts +1 -1
  322. package/es/components/config-provider/src/config-provider.d.ts +2 -2
  323. package/es/components/config-provider/src/hooks/use-global-config.d.ts +1 -1
  324. package/es/components/countdown/src/countdown.vue.d.ts +1 -1
  325. package/es/components/date-picker/src/date-picker.d.ts +15 -15
  326. package/es/components/date-picker/src/props.d.ts +4 -4
  327. package/es/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +1 -1
  328. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +3 -3
  329. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue.d.ts +3 -3
  330. package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.vue.d.ts +1 -1
  331. package/es/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue.d.ts +1 -1
  332. package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.vue.d.ts +1 -1
  333. package/es/components/date-picker-panel/src/date-picker-panel.d.ts +7 -7
  334. package/es/components/date-picker-panel/src/panel-utils.d.ts +15 -15
  335. package/es/components/date-picker-panel/src/props/date-picker-panel.d.ts +2 -2
  336. package/es/components/date-picker-panel/src/props/panel-date-pick.d.ts +1 -1
  337. package/es/components/date-picker-panel/src/props/panel-date-range.d.ts +1 -1
  338. package/es/components/date-picker-panel/src/props/shared.d.ts +1 -1
  339. package/es/components/descriptions/src/description-item.d.ts +19 -19
  340. package/es/components/descriptions/src/description.d.ts +2 -2
  341. package/es/components/descriptions/src/description.vue.d.ts +1 -1
  342. package/es/components/dialog/src/dialog-content.vue.d.ts +2 -2
  343. package/es/components/dialog/src/dialog.vue.d.ts +3 -3
  344. package/es/components/dialog/src/dialog.vue_vue_type_script_setup_true_lang.mjs +1 -1
  345. package/es/components/dialog/src/dialog.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  346. package/es/components/dialog/src/dialog2.mjs.map +1 -1
  347. package/es/components/divider/src/divider.d.ts +2 -2
  348. package/es/components/divider/src/divider.vue.d.ts +2 -2
  349. package/es/components/drawer/src/drawer.d.ts +1 -1
  350. package/es/components/drawer/src/drawer.vue.d.ts +13 -13
  351. package/es/components/drawer/src/drawer.vue_vue_type_script_setup_true_lang.mjs +1 -1
  352. package/es/components/drawer/src/drawer.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  353. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  354. package/es/components/dropdown/src/dropdown-item-impl.vue.d.ts +1 -1
  355. package/es/components/dropdown/src/dropdown-item.vue.d.ts +3 -3
  356. package/es/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
  357. package/es/components/dropdown/src/dropdown.d.ts +3 -3
  358. package/es/components/dropdown/src/dropdown.vue.d.ts +72 -72
  359. package/es/components/dropdown/style/css.mjs +1 -1
  360. package/es/components/dropdown/style/index.mjs +1 -1
  361. package/es/components/focus-trap/src/focus-trap.vue.d.ts +1 -1
  362. package/es/components/form/src/form-item.d.ts +2 -2
  363. package/es/components/form/src/form-item.vue.d.ts +2 -2
  364. package/es/components/form/src/form.d.ts +4 -4
  365. package/es/components/form/src/form.vue.d.ts +2 -2
  366. package/es/components/form/src/hooks/use-form-common-props.d.ts +2 -2
  367. package/es/components/image/src/image.d.ts +1 -1
  368. package/es/components/image/src/image.vue.d.ts +6 -6
  369. package/es/components/image-viewer/src/image-viewer.vue.d.ts +2 -2
  370. package/es/components/input/src/input.d.ts +4 -4
  371. package/es/components/input/src/input.vue.d.ts +13 -13
  372. package/es/components/input-number/src/input-number.d.ts +4 -4
  373. package/es/components/input-number/src/input-number.vue.d.ts +10 -10
  374. package/es/components/input-otp/src/input-otp.vue.d.ts +6 -6
  375. package/es/components/input-tag/src/composables/use-input-tag.d.ts +1 -1
  376. package/es/components/input-tag/src/input-tag.d.ts +2 -2
  377. package/es/components/input-tag/src/input-tag.vue.d.ts +9 -9
  378. package/es/components/link/src/link.d.ts +2 -2
  379. package/es/components/link/src/link.vue.d.ts +3 -3
  380. package/es/components/mention/src/mention.d.ts +5 -5
  381. package/es/components/mention/src/mention.vue.d.ts +4 -4
  382. package/es/components/menu/src/menu.d.ts +7 -7
  383. package/es/components/menu/src/sub-menu.d.ts +1 -1
  384. package/es/components/message/src/instance.d.ts +1 -1
  385. package/es/components/message/src/message.d.ts +2 -2
  386. package/es/components/message/src/message.vue.d.ts +7 -7
  387. package/es/components/message-box/src/index.vue.d.ts +53 -53
  388. package/es/components/notification/src/notification.d.ts +1 -1
  389. package/es/components/notification/src/notification.vue.d.ts +8 -8
  390. package/es/components/pagination/src/components/jumper.d.ts +1 -1
  391. package/es/components/pagination/src/components/jumper.vue.d.ts +2 -2
  392. package/es/components/pagination/src/components/sizes.d.ts +1 -1
  393. package/es/components/pagination/src/components/sizes.vue.d.ts +3 -3
  394. package/es/components/pagination/src/pagination.d.ts +6 -6
  395. package/es/components/popconfirm/src/popconfirm.d.ts +2 -2
  396. package/es/components/popconfirm/src/popconfirm.vue.d.ts +5 -5
  397. package/es/components/popover/src/popover.d.ts +53 -53
  398. package/es/components/popover/src/popover.vue.d.ts +9 -9
  399. package/es/components/popper/src/composables/use-content.d.ts +4 -4
  400. package/es/components/popper/src/composables/use-focus-trap.d.ts +1 -1
  401. package/es/components/popper/src/content.vue.d.ts +10 -10
  402. package/es/components/popper/src/popper.d.ts +2 -2
  403. package/es/components/popper/src/popper.vue.d.ts +1 -1
  404. package/es/components/progress/src/progress.d.ts +1 -1
  405. package/es/components/progress/src/progress.vue.d.ts +2 -2
  406. package/es/components/radio/src/radio-button.d.ts +4 -4
  407. package/es/components/radio/src/radio-button.vue.d.ts +1 -1
  408. package/es/components/radio/src/radio-group.d.ts +1 -1
  409. package/es/components/radio/src/radio-group.vue.d.ts +3 -3
  410. package/es/components/radio/src/radio.d.ts +8 -8
  411. package/es/components/radio/src/radio.vue.d.ts +1 -1
  412. package/es/components/radio/src/use-radio.d.ts +1 -1
  413. package/es/components/rate/src/rate.d.ts +1 -1
  414. package/es/components/rate/src/rate.vue.d.ts +1 -1
  415. package/es/components/result/src/result.d.ts +1 -1
  416. package/es/components/result/src/result.vue.d.ts +1 -1
  417. package/es/components/roving-focus-group/src/roving-focus-group-impl.vue.d.ts +3 -3
  418. package/es/components/roving-focus-group/src/roving-focus-group.d.ts +1 -1
  419. package/es/components/roving-focus-group/src/roving-focus-group.vue.d.ts +3 -3
  420. package/es/components/row/src/row.d.ts +2 -2
  421. package/es/components/row/src/row.vue.d.ts +1 -1
  422. package/es/components/scrollbar/src/scrollbar.d.ts +1 -1
  423. package/es/components/scrollbar/src/scrollbar.vue.d.ts +1 -1
  424. package/es/components/segmented/index.d.ts +3 -3
  425. package/es/components/segmented/src/segmented.d.ts +3 -3
  426. package/es/components/select/src/option.d.ts +2 -2
  427. package/es/components/select/src/option.vue.d.ts +5 -5
  428. package/es/components/select/src/select.d.ts +5 -5
  429. package/es/components/select/src/select.vue.d.ts +82 -82
  430. package/es/components/select/src/select.vue_vue_type_script_lang.mjs +1 -0
  431. package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
  432. package/es/components/select/src/select2.mjs.map +1 -1
  433. package/es/components/select/src/type.d.ts +1 -0
  434. package/es/components/select/src/useOption.d.ts +2 -2
  435. package/es/components/select/src/useOption.mjs +1 -1
  436. package/es/components/select/src/useOption.mjs.map +1 -1
  437. package/es/components/select/src/useSelect.d.ts +6 -6
  438. package/es/components/select/src/useSelect.mjs +1 -0
  439. package/es/components/select/src/useSelect.mjs.map +1 -1
  440. package/es/components/select-v2/src/defaults.d.ts +4 -4
  441. package/es/components/select-v2/src/option-item.vue.d.ts +1 -1
  442. package/es/components/select-v2/src/select.vue.d.ts +67 -67
  443. package/es/components/select-v2/src/useSelect.d.ts +1 -1
  444. package/es/components/skeleton/src/skeleton-item.d.ts +1 -1
  445. package/es/components/skeleton/src/skeleton-item.vue.d.ts +1 -1
  446. package/es/components/slider/src/button.vue.d.ts +1 -1
  447. package/es/components/slider/src/slider.d.ts +2 -2
  448. package/es/components/slider/src/slider.vue.d.ts +11 -11
  449. package/es/components/space/src/space.d.ts +7 -7
  450. package/es/components/splitter/src/split-bar.vue.d.ts +1 -1
  451. package/es/components/splitter/src/splitter.d.ts +1 -1
  452. package/es/components/statistic/src/statistic.vue.d.ts +1 -1
  453. package/es/components/steps/src/item.d.ts +1 -1
  454. package/es/components/steps/src/item.vue.d.ts +2 -2
  455. package/es/components/steps/src/steps.d.ts +3 -3
  456. package/es/components/steps/src/steps.vue.d.ts +2 -2
  457. package/es/components/switch/src/switch.d.ts +1 -1
  458. package/es/components/switch/src/switch.vue.d.ts +4 -4
  459. package/es/components/table/src/filter-panel.vue.d.ts +45 -45
  460. package/es/components/table/src/table/defaults.d.ts +6 -6
  461. package/es/components/table/src/table/style-helper.d.ts +2 -2
  462. package/es/components/table/src/table-column/defaults.d.ts +2 -2
  463. package/es/components/table/src/table-header/index.d.ts +7 -7
  464. package/es/components/table/src/table.vue.d.ts +3 -3
  465. package/es/components/table-v2/src/components/header.d.ts +1 -1
  466. package/es/components/table-v2/src/components/row.d.ts +1 -1
  467. package/es/components/table-v2/src/table-grid.d.ts +2 -2
  468. package/es/components/table-v2/src/table-v2.d.ts +3 -3
  469. package/es/components/tabs/src/tab-pane.vue.d.ts +1 -1
  470. package/es/components/tabs/src/tabs.d.ts +5 -5
  471. package/es/components/tag/src/tag.d.ts +2 -2
  472. package/es/components/tag/src/tag.vue.d.ts +3 -3
  473. package/es/components/text/src/text.d.ts +1 -1
  474. package/es/components/text/src/text.vue.d.ts +1 -1
  475. package/es/components/time-picker/src/common/picker-range-trigger.vue.d.ts +4 -4
  476. package/es/components/time-picker/src/common/picker.vue.d.ts +16 -16
  477. package/es/components/time-picker/src/common/props.d.ts +3 -3
  478. package/es/components/time-picker/src/time-picker.d.ts +12 -12
  479. package/es/components/time-select/src/time-select.d.ts +1 -1
  480. package/es/components/time-select/src/time-select.vue.d.ts +7 -7
  481. package/es/components/timeline/src/timeline-item.d.ts +1 -1
  482. package/es/components/timeline/src/timeline-item.vue.d.ts +2 -2
  483. package/es/components/tooltip/src/content.vue.d.ts +7 -7
  484. package/es/components/tooltip/src/tooltip.d.ts +2 -2
  485. package/es/components/tooltip/src/tooltip.vue.d.ts +11 -11
  486. package/es/components/tooltip/src/trigger.d.ts +1 -1
  487. package/es/components/tour/src/content.d.ts +1 -1
  488. package/es/components/tour/src/content.vue.d.ts +2 -2
  489. package/es/components/tour/src/step.d.ts +2 -2
  490. package/es/components/tour/src/step.vue.d.ts +1 -1
  491. package/es/components/tour/src/tour.d.ts +2 -2
  492. package/es/components/tour/src/tour.vue.d.ts +4 -4
  493. package/es/components/tree/src/tree-node.vue.d.ts +7 -7
  494. package/es/components/tree/src/tree.vue.d.ts +15 -15
  495. package/es/components/tree-select/src/tree-select-option.d.ts +5 -5
  496. package/es/components/tree-select/src/tree-select.vue.d.ts +36 -36
  497. package/es/components/tree-v2/src/composables/useTree.d.ts +8 -8
  498. package/es/components/tree-v2/src/tree.vue.d.ts +7 -7
  499. package/es/components/upload/src/upload-content.vue.d.ts +3 -3
  500. package/es/components/upload/src/upload.vue.d.ts +4 -4
  501. package/es/components/virtual-list/src/builders/build-grid.d.ts +1 -1
  502. package/es/components/virtual-list/src/builders/build-list.d.ts +4 -4
  503. package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +1 -1
  504. package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +4 -4
  505. package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +1 -1
  506. package/es/components/virtual-list/src/components/fixed-size-list.d.ts +4 -4
  507. package/es/components/virtual-list/src/components/scrollbar.d.ts +3 -3
  508. package/es/components/virtual-list/src/props.d.ts +2 -2
  509. package/es/hooks/use-floating/index.d.ts +20 -20
  510. package/es/hooks/use-popper/index.d.ts +4 -4
  511. package/es/hooks/use-size/index.d.ts +3 -3
  512. package/es/utils/vue/size.d.ts +1 -1
  513. package/es/utils/vue/vnode.d.ts +4 -4
  514. package/es/version.d.ts +1 -1
  515. package/es/version.mjs +1 -1
  516. package/es/version.mjs.map +1 -1
  517. package/lib/components/affix/src/affix.d.ts +1 -1
  518. package/lib/components/affix/src/affix.vue.d.ts +3 -3
  519. package/lib/components/alert/src/alert.d.ts +2 -2
  520. package/lib/components/alert/src/alert.vue.d.ts +3 -3
  521. package/lib/components/anchor/src/anchor.d.ts +1 -1
  522. package/lib/components/anchor/src/anchor.vue.d.ts +5 -5
  523. package/lib/components/autocomplete/src/autocomplete.d.ts +5 -5
  524. package/lib/components/autocomplete/src/autocomplete.vue.d.ts +3 -3
  525. package/lib/components/avatar/src/avatar-group-props.d.ts +1 -1
  526. package/lib/components/avatar/src/avatar-group.d.ts +3 -3
  527. package/lib/components/avatar/src/avatar.d.ts +2 -2
  528. package/lib/components/backtop/src/backtop.vue.d.ts +1 -1
  529. package/lib/components/badge/src/badge.vue.d.ts +1 -1
  530. package/lib/components/button/src/button-group.d.ts +3 -3
  531. package/lib/components/button/src/button-group.vue.d.ts +2 -2
  532. package/lib/components/button/src/button.d.ts +2 -2
  533. package/lib/components/button/src/button.vue.d.ts +4 -4
  534. package/lib/components/button/src/use-button.d.ts +2 -2
  535. package/lib/components/calendar/src/calendar.vue.d.ts +1 -1
  536. package/lib/components/calendar/style/css.js +1 -1
  537. package/lib/components/calendar/style/index.js +1 -1
  538. package/lib/components/card/src/card.d.ts +1 -1
  539. package/lib/components/card/src/card.vue.d.ts +3 -3
  540. package/lib/components/carousel/src/carousel.d.ts +2 -2
  541. package/lib/components/carousel/src/carousel.vue.d.ts +4 -4
  542. package/lib/components/cascader/src/cascader.d.ts +4 -4
  543. package/lib/components/cascader/src/cascader.vue.d.ts +16 -16
  544. package/lib/components/cascader-panel/src/index.vue.d.ts +1 -1
  545. package/lib/components/cascader-panel/src/menu.vue.d.ts +1 -1
  546. package/lib/components/checkbox/src/checkbox-button.vue.d.ts +2 -2
  547. package/lib/components/checkbox/src/checkbox-group.d.ts +1 -1
  548. package/lib/components/checkbox/src/checkbox-group.vue.d.ts +1 -1
  549. package/lib/components/checkbox/src/checkbox.d.ts +9 -9
  550. package/lib/components/checkbox/src/checkbox.vue.d.ts +2 -2
  551. package/lib/components/checkbox/src/composables/use-checkbox-status.d.ts +2 -2
  552. package/lib/components/checkbox/src/composables/use-checkbox.d.ts +2 -2
  553. package/lib/components/col/src/col.vue.d.ts +1 -1
  554. package/lib/components/collapse/src/collapse-item.vue.d.ts +1 -1
  555. package/lib/components/collapse/src/collapse.d.ts +1 -1
  556. package/lib/components/color-picker/src/color-picker.d.ts +2 -2
  557. package/lib/components/color-picker/src/color-picker.vue.d.ts +8 -8
  558. package/lib/components/color-picker-panel/src/color-picker-panel.d.ts +1 -1
  559. package/lib/components/config-provider/src/config-provider-props.d.ts +1 -1
  560. package/lib/components/config-provider/src/config-provider.d.ts +2 -2
  561. package/lib/components/config-provider/src/hooks/use-global-config.d.ts +1 -1
  562. package/lib/components/countdown/src/countdown.vue.d.ts +1 -1
  563. package/lib/components/date-picker/src/date-picker.d.ts +15 -15
  564. package/lib/components/date-picker/src/props.d.ts +4 -4
  565. package/lib/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +1 -1
  566. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +3 -3
  567. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue.d.ts +3 -3
  568. package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.vue.d.ts +1 -1
  569. package/lib/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue.d.ts +1 -1
  570. package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.vue.d.ts +1 -1
  571. package/lib/components/date-picker-panel/src/date-picker-panel.d.ts +7 -7
  572. package/lib/components/date-picker-panel/src/panel-utils.d.ts +15 -15
  573. package/lib/components/date-picker-panel/src/props/date-picker-panel.d.ts +2 -2
  574. package/lib/components/date-picker-panel/src/props/panel-date-pick.d.ts +1 -1
  575. package/lib/components/date-picker-panel/src/props/panel-date-range.d.ts +1 -1
  576. package/lib/components/date-picker-panel/src/props/shared.d.ts +1 -1
  577. package/lib/components/descriptions/src/description-item.d.ts +19 -19
  578. package/lib/components/descriptions/src/description.d.ts +2 -2
  579. package/lib/components/descriptions/src/description.vue.d.ts +1 -1
  580. package/lib/components/dialog/src/dialog-content.vue.d.ts +2 -2
  581. package/lib/components/dialog/src/dialog.vue.d.ts +3 -3
  582. package/lib/components/dialog/src/dialog.vue_vue_type_script_setup_true_lang.js +1 -1
  583. package/lib/components/dialog/src/dialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
  584. package/lib/components/dialog/src/dialog2.js.map +1 -1
  585. package/lib/components/divider/src/divider.d.ts +2 -2
  586. package/lib/components/divider/src/divider.vue.d.ts +2 -2
  587. package/lib/components/drawer/src/drawer.d.ts +1 -1
  588. package/lib/components/drawer/src/drawer.vue.d.ts +13 -13
  589. package/lib/components/drawer/src/drawer.vue_vue_type_script_setup_true_lang.js +1 -1
  590. package/lib/components/drawer/src/drawer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  591. package/lib/components/drawer/src/drawer2.js.map +1 -1
  592. package/lib/components/dropdown/src/dropdown-item-impl.vue.d.ts +1 -1
  593. package/lib/components/dropdown/src/dropdown-item.vue.d.ts +3 -3
  594. package/lib/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
  595. package/lib/components/dropdown/src/dropdown.d.ts +3 -3
  596. package/lib/components/dropdown/src/dropdown.vue.d.ts +72 -72
  597. package/lib/components/dropdown/style/css.js +1 -1
  598. package/lib/components/dropdown/style/index.js +1 -1
  599. package/lib/components/focus-trap/src/focus-trap.vue.d.ts +1 -1
  600. package/lib/components/form/src/form-item.d.ts +2 -2
  601. package/lib/components/form/src/form-item.vue.d.ts +2 -2
  602. package/lib/components/form/src/form.d.ts +4 -4
  603. package/lib/components/form/src/form.vue.d.ts +2 -2
  604. package/lib/components/form/src/hooks/use-form-common-props.d.ts +2 -2
  605. package/lib/components/image/src/image.d.ts +1 -1
  606. package/lib/components/image/src/image.vue.d.ts +6 -6
  607. package/lib/components/image-viewer/src/image-viewer.vue.d.ts +2 -2
  608. package/lib/components/input/src/input.d.ts +4 -4
  609. package/lib/components/input/src/input.vue.d.ts +13 -13
  610. package/lib/components/input-number/src/input-number.d.ts +4 -4
  611. package/lib/components/input-number/src/input-number.vue.d.ts +10 -10
  612. package/lib/components/input-otp/src/input-otp.vue.d.ts +6 -6
  613. package/lib/components/input-tag/src/composables/use-input-tag.d.ts +1 -1
  614. package/lib/components/input-tag/src/input-tag.d.ts +2 -2
  615. package/lib/components/input-tag/src/input-tag.vue.d.ts +9 -9
  616. package/lib/components/link/src/link.d.ts +2 -2
  617. package/lib/components/link/src/link.vue.d.ts +3 -3
  618. package/lib/components/mention/src/mention.d.ts +5 -5
  619. package/lib/components/mention/src/mention.vue.d.ts +4 -4
  620. package/lib/components/menu/src/menu.d.ts +7 -7
  621. package/lib/components/menu/src/sub-menu.d.ts +1 -1
  622. package/lib/components/message/src/instance.d.ts +1 -1
  623. package/lib/components/message/src/message.d.ts +2 -2
  624. package/lib/components/message/src/message.vue.d.ts +7 -7
  625. package/lib/components/message-box/src/index.vue.d.ts +53 -53
  626. package/lib/components/notification/src/notification.d.ts +1 -1
  627. package/lib/components/notification/src/notification.vue.d.ts +8 -8
  628. package/lib/components/pagination/src/components/jumper.d.ts +1 -1
  629. package/lib/components/pagination/src/components/jumper.vue.d.ts +2 -2
  630. package/lib/components/pagination/src/components/sizes.d.ts +1 -1
  631. package/lib/components/pagination/src/components/sizes.vue.d.ts +3 -3
  632. package/lib/components/pagination/src/pagination.d.ts +6 -6
  633. package/lib/components/popconfirm/src/popconfirm.d.ts +2 -2
  634. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +5 -5
  635. package/lib/components/popover/src/popover.d.ts +53 -53
  636. package/lib/components/popover/src/popover.vue.d.ts +9 -9
  637. package/lib/components/popper/src/composables/use-content.d.ts +4 -4
  638. package/lib/components/popper/src/composables/use-focus-trap.d.ts +1 -1
  639. package/lib/components/popper/src/content.vue.d.ts +10 -10
  640. package/lib/components/popper/src/popper.d.ts +2 -2
  641. package/lib/components/popper/src/popper.vue.d.ts +1 -1
  642. package/lib/components/progress/src/progress.d.ts +1 -1
  643. package/lib/components/progress/src/progress.vue.d.ts +2 -2
  644. package/lib/components/radio/src/radio-button.d.ts +4 -4
  645. package/lib/components/radio/src/radio-button.vue.d.ts +1 -1
  646. package/lib/components/radio/src/radio-group.d.ts +1 -1
  647. package/lib/components/radio/src/radio-group.vue.d.ts +3 -3
  648. package/lib/components/radio/src/radio.d.ts +8 -8
  649. package/lib/components/radio/src/radio.vue.d.ts +1 -1
  650. package/lib/components/radio/src/use-radio.d.ts +1 -1
  651. package/lib/components/rate/src/rate.d.ts +1 -1
  652. package/lib/components/rate/src/rate.vue.d.ts +1 -1
  653. package/lib/components/result/src/result.d.ts +1 -1
  654. package/lib/components/result/src/result.vue.d.ts +1 -1
  655. package/lib/components/roving-focus-group/src/roving-focus-group-impl.vue.d.ts +3 -3
  656. package/lib/components/roving-focus-group/src/roving-focus-group.d.ts +1 -1
  657. package/lib/components/roving-focus-group/src/roving-focus-group.vue.d.ts +3 -3
  658. package/lib/components/row/src/row.d.ts +2 -2
  659. package/lib/components/row/src/row.vue.d.ts +1 -1
  660. package/lib/components/scrollbar/src/scrollbar.d.ts +1 -1
  661. package/lib/components/scrollbar/src/scrollbar.vue.d.ts +1 -1
  662. package/lib/components/segmented/index.d.ts +3 -3
  663. package/lib/components/segmented/src/segmented.d.ts +3 -3
  664. package/lib/components/select/src/option.d.ts +2 -2
  665. package/lib/components/select/src/option.vue.d.ts +5 -5
  666. package/lib/components/select/src/select.d.ts +5 -5
  667. package/lib/components/select/src/select.vue.d.ts +82 -82
  668. package/lib/components/select/src/select.vue_vue_type_script_lang.js +1 -0
  669. package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
  670. package/lib/components/select/src/select2.js.map +1 -1
  671. package/lib/components/select/src/type.d.ts +1 -0
  672. package/lib/components/select/src/useOption.d.ts +2 -2
  673. package/lib/components/select/src/useOption.js +1 -1
  674. package/lib/components/select/src/useOption.js.map +1 -1
  675. package/lib/components/select/src/useSelect.d.ts +6 -6
  676. package/lib/components/select/src/useSelect.js +1 -0
  677. package/lib/components/select/src/useSelect.js.map +1 -1
  678. package/lib/components/select-v2/src/defaults.d.ts +4 -4
  679. package/lib/components/select-v2/src/option-item.vue.d.ts +1 -1
  680. package/lib/components/select-v2/src/select.vue.d.ts +67 -67
  681. package/lib/components/select-v2/src/useSelect.d.ts +1 -1
  682. package/lib/components/skeleton/src/skeleton-item.d.ts +1 -1
  683. package/lib/components/skeleton/src/skeleton-item.vue.d.ts +1 -1
  684. package/lib/components/slider/src/button.vue.d.ts +1 -1
  685. package/lib/components/slider/src/slider.d.ts +2 -2
  686. package/lib/components/slider/src/slider.vue.d.ts +11 -11
  687. package/lib/components/space/src/space.d.ts +7 -7
  688. package/lib/components/splitter/src/split-bar.vue.d.ts +1 -1
  689. package/lib/components/splitter/src/splitter.d.ts +1 -1
  690. package/lib/components/statistic/src/statistic.vue.d.ts +1 -1
  691. package/lib/components/steps/src/item.d.ts +1 -1
  692. package/lib/components/steps/src/item.vue.d.ts +2 -2
  693. package/lib/components/steps/src/steps.d.ts +3 -3
  694. package/lib/components/steps/src/steps.vue.d.ts +2 -2
  695. package/lib/components/switch/src/switch.d.ts +1 -1
  696. package/lib/components/switch/src/switch.vue.d.ts +4 -4
  697. package/lib/components/table/src/filter-panel.vue.d.ts +45 -45
  698. package/lib/components/table/src/table/defaults.d.ts +6 -6
  699. package/lib/components/table/src/table/style-helper.d.ts +2 -2
  700. package/lib/components/table/src/table-column/defaults.d.ts +2 -2
  701. package/lib/components/table/src/table-header/index.d.ts +7 -7
  702. package/lib/components/table/src/table.vue.d.ts +3 -3
  703. package/lib/components/table-v2/src/components/header.d.ts +1 -1
  704. package/lib/components/table-v2/src/components/row.d.ts +1 -1
  705. package/lib/components/table-v2/src/table-grid.d.ts +2 -2
  706. package/lib/components/table-v2/src/table-v2.d.ts +3 -3
  707. package/lib/components/tabs/src/tab-pane.vue.d.ts +1 -1
  708. package/lib/components/tabs/src/tabs.d.ts +5 -5
  709. package/lib/components/tag/src/tag.d.ts +2 -2
  710. package/lib/components/tag/src/tag.vue.d.ts +3 -3
  711. package/lib/components/text/src/text.d.ts +1 -1
  712. package/lib/components/text/src/text.vue.d.ts +1 -1
  713. package/lib/components/time-picker/src/common/picker-range-trigger.vue.d.ts +4 -4
  714. package/lib/components/time-picker/src/common/picker.vue.d.ts +16 -16
  715. package/lib/components/time-picker/src/common/props.d.ts +3 -3
  716. package/lib/components/time-picker/src/time-picker.d.ts +12 -12
  717. package/lib/components/time-select/src/time-select.d.ts +1 -1
  718. package/lib/components/time-select/src/time-select.vue.d.ts +7 -7
  719. package/lib/components/timeline/src/timeline-item.d.ts +1 -1
  720. package/lib/components/timeline/src/timeline-item.vue.d.ts +2 -2
  721. package/lib/components/tooltip/src/content.vue.d.ts +7 -7
  722. package/lib/components/tooltip/src/tooltip.d.ts +2 -2
  723. package/lib/components/tooltip/src/tooltip.vue.d.ts +11 -11
  724. package/lib/components/tooltip/src/trigger.d.ts +1 -1
  725. package/lib/components/tour/src/content.d.ts +1 -1
  726. package/lib/components/tour/src/content.vue.d.ts +2 -2
  727. package/lib/components/tour/src/step.d.ts +2 -2
  728. package/lib/components/tour/src/step.vue.d.ts +1 -1
  729. package/lib/components/tour/src/tour.d.ts +2 -2
  730. package/lib/components/tour/src/tour.vue.d.ts +4 -4
  731. package/lib/components/tree/src/tree-node.vue.d.ts +7 -7
  732. package/lib/components/tree/src/tree.vue.d.ts +15 -15
  733. package/lib/components/tree-select/src/tree-select-option.d.ts +5 -5
  734. package/lib/components/tree-select/src/tree-select.vue.d.ts +36 -36
  735. package/lib/components/tree-v2/src/composables/useTree.d.ts +8 -8
  736. package/lib/components/tree-v2/src/tree.vue.d.ts +7 -7
  737. package/lib/components/upload/src/upload-content.vue.d.ts +3 -3
  738. package/lib/components/upload/src/upload.vue.d.ts +4 -4
  739. package/lib/components/virtual-list/src/builders/build-grid.d.ts +1 -1
  740. package/lib/components/virtual-list/src/builders/build-list.d.ts +4 -4
  741. package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +1 -1
  742. package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +4 -4
  743. package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +1 -1
  744. package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +4 -4
  745. package/lib/components/virtual-list/src/components/scrollbar.d.ts +3 -3
  746. package/lib/components/virtual-list/src/props.d.ts +2 -2
  747. package/lib/hooks/use-floating/index.d.ts +20 -20
  748. package/lib/hooks/use-popper/index.d.ts +4 -4
  749. package/lib/hooks/use-size/index.d.ts +3 -3
  750. package/lib/utils/vue/size.d.ts +1 -1
  751. package/lib/utils/vue/vnode.d.ts +4 -4
  752. package/lib/version.d.ts +1 -1
  753. package/lib/version.js +1 -1
  754. package/lib/version.js.map +1 -1
  755. package/package.json +2 -2
  756. package/web-types.json +1 -1
@@ -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 :style=\"tagStyle\"\n >\n <el-tag\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\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=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('collapse-item'),\n ]\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\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 (multiple && !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 @end-reached=\"endReached\"\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 { 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 { selectEmits, 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: selectEmits,\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 }) as unknown as SelectContext // Avoid TS2589\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 :style=\"tagStyle\"\n >\n <el-tag\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\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=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('collapse-item'),\n ]\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\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 (multiple && !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 @end-reached=\"endReached\"\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 { 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 { selectEmits, 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: selectEmits,\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 selectDisabled: API.selectDisabled,\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 }) as unknown as SelectContext // Avoid TS2589\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":";;;;;;;;;;;;;;;;;;AAyXA,MAAM,iBAAiB;AAUvB,MAAM,iCAAiB,IAAI,QAAuC;AAElE,MAAM,2BAA2B,eAAwC;CACvE,QAAQ,GAAG,SAAS;EAGlB,MAAM,UAAU,KAAK;EACrB,IACE,CAAC,WACA,QAAQ,SACP,yDACF,KACE,KAAK,EAAE,EAAE,SAAS,cAAc,GAElC;EACF,MAAM,WAAW,eAAe,IAAI,UAAU,CAAC,EAAE;EACjD,IAAI,UAAU;GACZ,SAAS,GAAG,IAAI;GAChB;EACF;EAEA,QAAQ,KAAK,GAAG,IAAI;CACtB;AACF;AAEA,MAAM,wBAAwB,eAA8C;CAC1E,IAAI,SAAS,eAAe,IAAI,UAAU;CAC1C,IAAI,CAAC,QAAQ;EACX,SAAS;GACP,qBAAqB,WAAW,OAAO;GACvC,SAAS,wBAAwB,UAAU;GAC3C,OAAO;EACT;EACA,eAAe,IAAI,YAAY,MAAM;CACvC;CACA,OAAO;AACT;AACA,IAAA,0CAAe,gBAAgB;CAC7B,MAAM;CACN,eAAe;CACf,YAAY;EACV,cAAA;EACA,UAAA;EACA,WAAA;EACA,eAAA;EACA;EACA;EACA;EACA;CACF;CACA,YAAY,EAAE,aAAa;CAC3B,OAAO;CACP,OAAO;CAEP,MAAM,OAAO,EAAE,MAAM,SAAS;EAC5B,MAAM,WAAW,mBAAmB;EACpC,MAAM,aAAa,qBAAqB,SAAS,UAAU;EAC3D,WAAW,SAAS;EACpB,SAAS,WAAW,OAAO,cAAc,WAAW;EACpD,MAAM,aAAa,eAAe;GAChC,MAAM,EAAE,YAAY,eAAe,aAAa;GAChD,MAAM,WAAW,WAAW,CAAC,IAAI,KAAA;GAGjC,IAAI,QAAQ,aAAa,GACvB,OAAO,WAAW,gBAAgB;GAGpC,OAAO,WAAW,WAAW;EAC/B,CAAC;EAED,MAAM,SAAS,SAAS;GACtB,GAAG,OAAO,KAAK;GACf;EACF,CAAC;EAED,MAAM,MAAM,UAAU,QAAQ,IAAI;EAClC,MAAM,EAAE,eAAe,eAAe,kBAAkB;EACxD,MAAM,EAAE,UAAU,UAAU,YAAY,gBAAgB,SAAS,KAAK;EAEtE,MAAM,kBAAkB,YAAiC;GACvD,OAAO,SAAS,MAAM;GACtB,OAAO,SAAS,MAAM;GACtB,UAAU,YAAY,MAAM;EAC9B;EAEA,MAAM,sBAAsB,SAAgB;GAC1C,OAAO,KAAK,QAAQ,KAAK,SAAS;IAChC,IAAI,KAAK,IAAI;IACb,IAAI,KAAK,YAAY,KAAK,SAAS,SAAS,GAC1C,IAAI,KAAK,GAAG,mBAAmB,KAAK,QAAQ,CAAC;IAE/C,OAAO;GACT,GAAG,CAAC,CAAC;EACP;EAEA,MAAM,uBAAuB,WAAgC;GAK3D,gBADiC,UAAU,CAAC,CACrC,CAAC,CAAC,SAAS,SAAS;IACzB,IACE,SAAS,IAAI,MAEZ,KAAK,KAAK,SAAS,cAAc,KAAK,KAAK,SAAS,WACrD;KAEA,MAAM,QAAQ,KAAK,KAAK;KACxB,IAAI,UAAU,UAAU;MAGtB,MAAM,WAAW,KAAK,OAAO,QAAQ,CAAC;MAEtC,mBADoC,QAC7B,CAAC,CAAC,SAAS,aAAkB;OAClC,SAAS,eACP,SAAS,UACR,SAAS,SAAS,KAAK,IAAI,KAAK,SAAS;OAC5C,IAAI,eAAe,QAAQ;MAC7B,CAAC;KACH,OAAO,IAAI,UAAU,YAAY;MAC/B,MAAM,MAAM,EAAE,GAAG,KAAK,MAAM;MAC5B,IAAI,eACF,IAAI,UAAU,SAAS,IAAI,KAAK,IAAI,KAAK,IAAI;MAC/C,IAAI,eAAe,GAAG;KACxB;IACF;GACF,CAAC;EACH;EACA,YACQ,CACJ,MAAM,cAAc,IAAI,SAAS,SAAS,CAAC,MAAM,UAC7C,KAAA,IACA,MAAM,UAAU,GACpB,WAAW,KACb,SACM;GAKJ,IAAI,MAAM,cAAc,IAAI,SAAS,OAEnC;GAMF,IAAI,CAAC,MAAM,SACT;GAGF,IAAI,OAAO,QAAQ,MAAM;GACzB,oBAAoB,MAAM,UAAU,CAAC;EACvC,GACA,EACE,WAAW,KACb,CACF;EAEA,QACE,WACA,SAAS;GACP,gBAAgB,IAAI;GACpB,OAAO;GACP,QAAQ,IAAI;GACZ,WAAW,IAAI;GACf,cAAc,IAAI;GAClB,aAAa,IAAI;GACjB,oBAAoB,IAAI;GACxB,gBAAgB,IAAI;GACpB,iBAAiB,IAAI;EACvB,CAAC,CACH;EAEA,MAAM,gBAAgB,eAAe;GACnC,IAAI,CAAC,MAAM,UACT,OAAO,IAAI,OAAO;GAEpB,OAAO,IAAI,OAAO,SAAS,KAAK,MAAM,EAAE,YAAsB;EAChE,CAAC;EAED,sBAAsB;GAEpB,MAAM,SAAS,eAAe,IAAI,SAAS,UAAU;GACrD,IAAI,CAAC,QAAQ;GACb,OAAO,SAAS;GAChB,IAAI,OAAO,SAAS,GAAG;IACrB,SAAS,WAAW,OAAO,cAAc,OAAO;IAChD,eAAe,OAAO,SAAS,UAAU;GAC3C;EACF,CAAC;EAED,OAAO;GACL,GAAG;GACH;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;EACF;CACF;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"select2.mjs","names":["_resolveComponent","_resolveDirective","_withDirectives","_openBlock","_createElementBlock","_mergeProps","_toHandlerKey","_createVNode","_withCtx","_createElementVNode","_normalizeClass","_withModifiers","_renderSlot","_createCommentVNode","_Fragment","_renderList","_normalizeStyle","_createTextVNode","_toDisplayString","_createBlock","_resolveDynamicComponent","_vShow","_sfc_main"],"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 :style=\"tagStyle\"\n >\n <el-tag\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\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=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('collapse-item'),\n ]\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\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 (multiple && !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 @end-reached=\"endReached\"\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 { 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 { selectEmits, 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: selectEmits,\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 }) as unknown as SelectContext // Avoid TS2589\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":["_resolveComponent","_resolveDirective","_withDirectives","_openBlock","_createElementBlock","_mergeProps","_toHandlerKey","_createVNode","_withCtx","_createElementVNode","_normalizeClass","_withModifiers","_renderSlot","_createCommentVNode","_Fragment","_renderList","_normalizeStyle","_createTextVNode","_toDisplayString","_createBlock","_resolveDynamicComponent","_vShow","_sfc_main"],"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 :style=\"tagStyle\"\n >\n <el-tag\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\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=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('collapse-item'),\n ]\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\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 (multiple && !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 @end-reached=\"endReached\"\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 { 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 { selectEmits, 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: selectEmits,\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 selectDisabled: API.selectDisabled,\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 }) as unknown as SelectContext // Avoid TS2589\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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"}
@@ -7,6 +7,7 @@ interface SelectGroupContext {
7
7
  disabled: boolean;
8
8
  }
9
9
  interface SelectContext {
10
+ selectDisabled: boolean;
10
11
  props: SelectProps;
11
12
  states: SelectStates;
12
13
  selectRef: HTMLElement | undefined;
@@ -5,8 +5,8 @@ import * as _$vue from "vue";
5
5
  //#region ../../packages/components/select/src/useOption.d.ts
6
6
  declare function useOption(props: OptionProps, states: OptionStates): {
7
7
  select: SelectContext;
8
- currentLabel: _$vue.ComputedRef<boolean | EpPropMergeType<(NumberConstructor | StringConstructor)[], unknown, unknown>>;
9
- currentValue: _$vue.ComputedRef<true | Record<string, any> | EpPropMergeType<(NumberConstructor | StringConstructor)[], unknown, unknown>>;
8
+ currentLabel: _$vue.ComputedRef<boolean | EpPropMergeType<(StringConstructor | NumberConstructor)[], unknown, unknown>>;
9
+ currentValue: _$vue.ComputedRef<true | Record<string, any> | EpPropMergeType<(StringConstructor | NumberConstructor)[], unknown, unknown>>;
10
10
  itemSelected: _$vue.ComputedRef<boolean>;
11
11
  isDisabled: _$vue.ComputedRef<boolean>;
12
12
  hoverItem: () => void;
@@ -27,7 +27,7 @@ function useOption(props, states) {
27
27
  return props.value || props.label || "";
28
28
  });
29
29
  const isDisabled = computed(() => {
30
- return props.disabled || states.groupDisabled || limitReached.value;
30
+ return select.selectDisabled || props.disabled || states.groupDisabled || limitReached.value;
31
31
  });
32
32
  const instance = getCurrentInstance();
33
33
  const contains = (arr = [], target) => {
@@ -1 +1 @@
1
- {"version":3,"file":"useOption.mjs","names":[],"sources":["../../../../../../packages/components/select/src/useOption.ts"],"sourcesContent":["import { computed, getCurrentInstance, inject, toRaw, watch } from 'vue'\nimport { get, isEqual } from 'lodash-unified'\nimport {\n ensureArray,\n escapeStringRegexp,\n isObject,\n throwError,\n} from '@element-plus/utils'\nimport { selectGroupKey, selectKey } from './token'\nimport { COMPONENT_NAME } from './option'\n\nimport type { OptionInternalInstance, OptionProps, OptionStates } from './type'\n\nexport function useOption(props: OptionProps, states: OptionStates) {\n // inject\n const select = inject(selectKey)\n if (!select) {\n throwError(COMPONENT_NAME, 'usage: <el-select><el-option /></el-select/>')\n }\n const selectGroup = inject(selectGroupKey, { disabled: false })\n\n // computed\n const itemSelected = computed(() => {\n return contains(ensureArray(select.props.modelValue), props.value)\n })\n\n const limitReached = computed(() => {\n if (select.props.multiple) {\n const modelValue = ensureArray(select.props.modelValue ?? [])\n return (\n !itemSelected.value &&\n modelValue.length >= select.props.multipleLimit &&\n select.props.multipleLimit > 0\n )\n } else {\n return false\n }\n })\n\n const currentLabel = computed(() => {\n return props.label ?? (isObject(props.value) ? '' : props.value)\n })\n\n const currentValue = computed(() => {\n return props.value || props.label || ''\n })\n\n const isDisabled = computed(() => {\n return props.disabled || states.groupDisabled || limitReached.value\n })\n\n const instance = getCurrentInstance()! as OptionInternalInstance\n const contains = <T>(arr: T[] = [], target: T) => {\n if (!isObject(props.value)) {\n return arr && arr.includes(target)\n } else {\n const valueKey = select.props.valueKey\n return (\n arr &&\n arr.some((item) => {\n return toRaw(get(item, valueKey)) === get(target, valueKey)\n })\n )\n }\n }\n\n const hoverItem = () => {\n if (!isDisabled.value) {\n select.states.hoveringIndex = select.optionsArray.indexOf(instance.proxy)\n }\n }\n\n const updateOption = (query: string) => {\n const regexp = new RegExp(escapeStringRegexp(query), 'i')\n states.visible = regexp.test(String(currentLabel.value)) || props.created\n }\n\n watch(\n () => currentLabel.value,\n () => {\n if (!props.created && !select.props.remote) select.setSelected()\n }\n )\n\n watch(\n () => props.value,\n (val, oldVal) => {\n const { remote, valueKey } = select.props\n const shouldUpdate = remote ? val !== oldVal : !isEqual(val, oldVal)\n if (shouldUpdate) {\n select.onOptionDestroy(oldVal, instance.proxy)\n select.onOptionCreate(instance.proxy)\n }\n\n if (!props.created && !remote) {\n if (\n valueKey &&\n isObject(val) &&\n isObject(oldVal) &&\n val[valueKey] === oldVal[valueKey]\n ) {\n return\n }\n select.setSelected()\n }\n }\n )\n\n watch(\n () => selectGroup.disabled,\n () => {\n states.groupDisabled = selectGroup.disabled\n },\n { immediate: true }\n )\n\n return {\n select,\n currentLabel,\n currentValue,\n itemSelected,\n isDisabled,\n hoverItem,\n updateOption,\n }\n}\n"],"mappings":";;;;;;;;;AAaA,SAAgB,UAAU,OAAoB,QAAsB;CAElE,MAAM,SAAS,OAAO,SAAS;CAC/B,IAAI,CAAC,QACH,WAAW,gBAAgB,8CAA8C;CAE3E,MAAM,cAAc,OAAO,gBAAgB,EAAE,UAAU,MAAM,CAAC;CAG9D,MAAM,eAAe,eAAe;EAClC,OAAO,SAAS,YAAY,OAAO,MAAM,UAAU,GAAG,MAAM,KAAK;CACnE,CAAC;CAED,MAAM,eAAe,eAAe;EAClC,IAAI,OAAO,MAAM,UAAU;GACzB,MAAM,aAAa,YAAY,OAAO,MAAM,cAAc,CAAC,CAAC;GAC5D,OACE,CAAC,aAAa,SACd,WAAW,UAAU,OAAO,MAAM,iBAClC,OAAO,MAAM,gBAAgB;EAEjC,OACE,OAAO;CAEX,CAAC;CAED,MAAM,eAAe,eAAe;EAClC,OAAO,MAAM,UAAU,SAAS,MAAM,KAAK,IAAI,KAAK,MAAM;CAC5D,CAAC;CAED,MAAM,eAAe,eAAe;EAClC,OAAO,MAAM,SAAS,MAAM,SAAS;CACvC,CAAC;CAED,MAAM,aAAa,eAAe;EAChC,OAAO,MAAM,YAAY,OAAO,iBAAiB,aAAa;CAChE,CAAC;CAED,MAAM,WAAW,mBAAmB;CACpC,MAAM,YAAe,MAAW,CAAC,GAAG,WAAc;EAChD,IAAI,CAAC,SAAS,MAAM,KAAK,GACvB,OAAO,OAAO,IAAI,SAAS,MAAM;OAC5B;GACL,MAAM,WAAW,OAAO,MAAM;GAC9B,OACE,OACA,IAAI,MAAM,SAAS;IACjB,OAAO,MAAM,IAAI,MAAM,QAAQ,CAAC,MAAM,IAAI,QAAQ,QAAQ;GAC5D,CAAC;EAEL;CACF;CAEA,MAAM,kBAAkB;EACtB,IAAI,CAAC,WAAW,OACd,OAAO,OAAO,gBAAgB,OAAO,aAAa,QAAQ,SAAS,KAAK;CAE5E;CAEA,MAAM,gBAAgB,UAAkB;EAEtC,OAAO,UAAU,IADE,OAAO,mBAAmB,KAAK,GAAG,GAC/B,CAAC,CAAC,KAAK,OAAO,aAAa,KAAK,CAAC,KAAK,MAAM;CACpE;CAEA,YACQ,aAAa,aACb;EACJ,IAAI,CAAC,MAAM,WAAW,CAAC,OAAO,MAAM,QAAQ,OAAO,YAAY;CACjE,CACF;CAEA,YACQ,MAAM,QACX,KAAK,WAAW;EACf,MAAM,EAAE,QAAQ,aAAa,OAAO;EAEpC,IADqB,SAAS,QAAQ,SAAS,CAAC,QAAQ,KAAK,MAAM,GACjD;GAChB,OAAO,gBAAgB,QAAQ,SAAS,KAAK;GAC7C,OAAO,eAAe,SAAS,KAAK;EACtC;EAEA,IAAI,CAAC,MAAM,WAAW,CAAC,QAAQ;GAC7B,IACE,YACA,SAAS,GAAG,KACZ,SAAS,MAAM,KACf,IAAI,cAAc,OAAO,WAEzB;GAEF,OAAO,YAAY;EACrB;CACF,CACF;CAEA,YACQ,YAAY,gBACZ;EACJ,OAAO,gBAAgB,YAAY;CACrC,GACA,EAAE,WAAW,KAAK,CACpB;CAEA,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA;CACF;AACF"}
1
+ {"version":3,"file":"useOption.mjs","names":[],"sources":["../../../../../../packages/components/select/src/useOption.ts"],"sourcesContent":["import { computed, getCurrentInstance, inject, toRaw, watch } from 'vue'\nimport { get, isEqual } from 'lodash-unified'\nimport {\n ensureArray,\n escapeStringRegexp,\n isObject,\n throwError,\n} from '@element-plus/utils'\nimport { selectGroupKey, selectKey } from './token'\nimport { COMPONENT_NAME } from './option'\n\nimport type { OptionInternalInstance, OptionProps, OptionStates } from './type'\n\nexport function useOption(props: OptionProps, states: OptionStates) {\n // inject\n const select = inject(selectKey)\n if (!select) {\n throwError(COMPONENT_NAME, 'usage: <el-select><el-option /></el-select/>')\n }\n const selectGroup = inject(selectGroupKey, { disabled: false })\n\n // computed\n const itemSelected = computed(() => {\n return contains(ensureArray(select.props.modelValue), props.value)\n })\n\n const limitReached = computed(() => {\n if (select.props.multiple) {\n const modelValue = ensureArray(select.props.modelValue ?? [])\n return (\n !itemSelected.value &&\n modelValue.length >= select.props.multipleLimit &&\n select.props.multipleLimit > 0\n )\n } else {\n return false\n }\n })\n\n const currentLabel = computed(() => {\n return props.label ?? (isObject(props.value) ? '' : props.value)\n })\n\n const currentValue = computed(() => {\n return props.value || props.label || ''\n })\n\n const isDisabled = computed(() => {\n return (\n select.selectDisabled ||\n props.disabled ||\n states.groupDisabled ||\n limitReached.value\n )\n })\n\n const instance = getCurrentInstance()! as OptionInternalInstance\n const contains = <T>(arr: T[] = [], target: T) => {\n if (!isObject(props.value)) {\n return arr && arr.includes(target)\n } else {\n const valueKey = select.props.valueKey\n return (\n arr &&\n arr.some((item) => {\n return toRaw(get(item, valueKey)) === get(target, valueKey)\n })\n )\n }\n }\n\n const hoverItem = () => {\n if (!isDisabled.value) {\n select.states.hoveringIndex = select.optionsArray.indexOf(instance.proxy)\n }\n }\n\n const updateOption = (query: string) => {\n const regexp = new RegExp(escapeStringRegexp(query), 'i')\n states.visible = regexp.test(String(currentLabel.value)) || props.created\n }\n\n watch(\n () => currentLabel.value,\n () => {\n if (!props.created && !select.props.remote) select.setSelected()\n }\n )\n\n watch(\n () => props.value,\n (val, oldVal) => {\n const { remote, valueKey } = select.props\n const shouldUpdate = remote ? val !== oldVal : !isEqual(val, oldVal)\n if (shouldUpdate) {\n select.onOptionDestroy(oldVal, instance.proxy)\n select.onOptionCreate(instance.proxy)\n }\n\n if (!props.created && !remote) {\n if (\n valueKey &&\n isObject(val) &&\n isObject(oldVal) &&\n val[valueKey] === oldVal[valueKey]\n ) {\n return\n }\n select.setSelected()\n }\n }\n )\n\n watch(\n () => selectGroup.disabled,\n () => {\n states.groupDisabled = selectGroup.disabled\n },\n { immediate: true }\n )\n\n return {\n select,\n currentLabel,\n currentValue,\n itemSelected,\n isDisabled,\n hoverItem,\n updateOption,\n }\n}\n"],"mappings":";;;;;;;;;AAaA,SAAgB,UAAU,OAAoB,QAAsB;CAElE,MAAM,SAAS,OAAO,SAAS;CAC/B,IAAI,CAAC,QACH,WAAW,gBAAgB,8CAA8C;CAE3E,MAAM,cAAc,OAAO,gBAAgB,EAAE,UAAU,MAAM,CAAC;CAG9D,MAAM,eAAe,eAAe;EAClC,OAAO,SAAS,YAAY,OAAO,MAAM,UAAU,GAAG,MAAM,KAAK;CACnE,CAAC;CAED,MAAM,eAAe,eAAe;EAClC,IAAI,OAAO,MAAM,UAAU;GACzB,MAAM,aAAa,YAAY,OAAO,MAAM,cAAc,CAAC,CAAC;GAC5D,OACE,CAAC,aAAa,SACd,WAAW,UAAU,OAAO,MAAM,iBAClC,OAAO,MAAM,gBAAgB;EAEjC,OACE,OAAO;CAEX,CAAC;CAED,MAAM,eAAe,eAAe;EAClC,OAAO,MAAM,UAAU,SAAS,MAAM,KAAK,IAAI,KAAK,MAAM;CAC5D,CAAC;CAED,MAAM,eAAe,eAAe;EAClC,OAAO,MAAM,SAAS,MAAM,SAAS;CACvC,CAAC;CAED,MAAM,aAAa,eAAe;EAChC,OACE,OAAO,kBACP,MAAM,YACN,OAAO,iBACP,aAAa;CAEjB,CAAC;CAED,MAAM,WAAW,mBAAmB;CACpC,MAAM,YAAe,MAAW,CAAC,GAAG,WAAc;EAChD,IAAI,CAAC,SAAS,MAAM,KAAK,GACvB,OAAO,OAAO,IAAI,SAAS,MAAM;OAC5B;GACL,MAAM,WAAW,OAAO,MAAM;GAC9B,OACE,OACA,IAAI,MAAM,SAAS;IACjB,OAAO,MAAM,IAAI,MAAM,QAAQ,CAAC,MAAM,IAAI,QAAQ,QAAQ;GAC5D,CAAC;EAEL;CACF;CAEA,MAAM,kBAAkB;EACtB,IAAI,CAAC,WAAW,OACd,OAAO,OAAO,gBAAgB,OAAO,aAAa,QAAQ,SAAS,KAAK;CAE5E;CAEA,MAAM,gBAAgB,UAAkB;EAEtC,OAAO,UAAU,IADE,OAAO,mBAAmB,KAAK,GAAG,GAC/B,CAAC,CAAC,KAAK,OAAO,aAAa,KAAK,CAAC,KAAK,MAAM;CACpE;CAEA,YACQ,aAAa,aACb;EACJ,IAAI,CAAC,MAAM,WAAW,CAAC,OAAO,MAAM,QAAQ,OAAO,YAAY;CACjE,CACF;CAEA,YACQ,MAAM,QACX,KAAK,WAAW;EACf,MAAM,EAAE,QAAQ,aAAa,OAAO;EAEpC,IADqB,SAAS,QAAQ,SAAS,CAAC,QAAQ,KAAK,MAAM,GACjD;GAChB,OAAO,gBAAgB,QAAQ,SAAS,KAAK;GAC7C,OAAO,eAAe,SAAS,KAAK;EACtC;EAEA,IAAI,CAAC,MAAM,WAAW,CAAC,QAAQ;GAC7B,IACE,YACA,SAAS,GAAG,KACZ,SAAS,MAAM,KACf,IAAI,cAAc,OAAO,WAEzB;GAEF,OAAO,YAAY;EACrB;CACF,CACF;CAEA,YACQ,YAAY,gBACZ;EACJ,OAAO,gBAAgB,YAAY;CACrC,GACA,EAAE,WAAW,KAAK,CACpB;CAEA,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA;CACF;AACF"}
@@ -49,8 +49,8 @@ declare const useSelect: (props: SelectProps, emit: SelectEmits) => {
49
49
  };
50
50
  states: {
51
51
  inputValue: string;
52
- options: Map<EpPropMergeType<(BooleanConstructor | NumberConstructor | StringConstructor | ObjectConstructor)[], unknown, unknown>, OptionPublicInstance> & Omit<Map<EpPropMergeType<(BooleanConstructor | NumberConstructor | StringConstructor | ObjectConstructor)[], unknown, unknown>, OptionPublicInstance>, keyof Map<any, any>>;
53
- cachedOptions: Map<EpPropMergeType<(BooleanConstructor | NumberConstructor | StringConstructor | ObjectConstructor)[], unknown, unknown>, OptionPublicInstance> & Omit<Map<EpPropMergeType<(BooleanConstructor | NumberConstructor | StringConstructor | ObjectConstructor)[], unknown, unknown>, OptionPublicInstance>, keyof Map<any, any>>;
52
+ options: Map<EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>, OptionPublicInstance> & Omit<Map<EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>, OptionPublicInstance>, keyof Map<any, any>>;
53
+ cachedOptions: Map<EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>, OptionPublicInstance> & Omit<Map<EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>, OptionPublicInstance>, keyof Map<any, any>>;
54
54
  optionValues: OptionValue[];
55
55
  selected: {
56
56
  index: number;
@@ -70,7 +70,7 @@ declare const useSelect: (props: SelectProps, emit: SelectEmits) => {
70
70
  expanded: _$vue.Ref<boolean, boolean>;
71
71
  optionsArray: _$vue.ComputedRef<OptionPublicInstance[]>;
72
72
  hoverOption: _$vue.Ref<any, any>;
73
- selectSize: _$vue.ComputedRef<"" | "small" | "default" | "large">;
73
+ selectSize: _$vue.ComputedRef<"" | "default" | "small" | "large">;
74
74
  filteredOptionsCount: _$vue.ComputedRef<number>;
75
75
  updateTooltip: () => void;
76
76
  updateTagTooltip: () => void;
@@ -90,7 +90,7 @@ declare const useSelect: (props: SelectProps, emit: SelectEmits) => {
90
90
  iconComponent: _$vue.ComputedRef<EpPropMergeType<(new (...args: any[]) => (string | Component) & {}) | (() => string | Component) | (((new (...args: any[]) => (string | Component) & {}) | (() => string | Component)) | null)[], unknown, unknown>>;
91
91
  iconReverse: _$vue.ComputedRef<string>;
92
92
  validateState: _$vue.ComputedRef<"" | "success" | "error" | "validating">;
93
- validateIcon: _$vue.ComputedRef<Component | "">;
93
+ validateIcon: _$vue.ComputedRef<"" | Component>;
94
94
  showNewOption: _$vue.ComputedRef<boolean>;
95
95
  updateOptions: () => void;
96
96
  collapseTagSize: _$vue.ComputedRef<"default" | "small">;
@@ -132,11 +132,11 @@ declare const useSelect: (props: SelectProps, emit: SelectEmits) => {
132
132
  }) => void;
133
133
  getOption: (value: OptionValue) => {
134
134
  index: number;
135
- value: EpPropMergeType<(BooleanConstructor | NumberConstructor | StringConstructor | ObjectConstructor)[], unknown, unknown>;
135
+ value: EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>;
136
136
  currentLabel: any;
137
137
  } | {
138
138
  index: number;
139
- value: EpPropMergeType<(BooleanConstructor | NumberConstructor | StringConstructor | ObjectConstructor)[], unknown, unknown>;
139
+ value: EpPropMergeType<(BooleanConstructor | ObjectConstructor | StringConstructor | NumberConstructor)[], unknown, unknown>;
140
140
  currentLabel: string | number | boolean;
141
141
  readonly isDisabled: boolean;
142
142
  };
@@ -324,6 +324,7 @@ const useSelect = (props, emit) => {
324
324
  focus();
325
325
  };
326
326
  const handleOptionSelect = (option) => {
327
+ if (selectDisabled.value) return;
327
328
  if (props.multiple) {
328
329
  const value = ensureArray(props.modelValue ?? []).slice();
329
330
  const optionIndex = getValueIndex(value, option);