@element-plus/nightly 0.0.20220122 → 0.0.20220126

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 (641) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +1028 -862
  4. package/dist/index.full.min.js +8 -8
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +8 -8
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +1028 -862
  9. package/dist/locale/af.js +6 -8
  10. package/dist/locale/af.min.js +1 -1
  11. package/dist/locale/af.min.js.map +1 -1
  12. package/dist/locale/af.min.mjs +1 -1
  13. package/dist/locale/af.mjs +1 -1
  14. package/dist/locale/ar.js +6 -8
  15. package/dist/locale/ar.min.js +1 -1
  16. package/dist/locale/ar.min.js.map +1 -1
  17. package/dist/locale/ar.min.mjs +1 -1
  18. package/dist/locale/ar.mjs +1 -1
  19. package/dist/locale/bg.js +6 -8
  20. package/dist/locale/bg.min.js +1 -1
  21. package/dist/locale/bg.min.js.map +1 -1
  22. package/dist/locale/bg.min.mjs +1 -1
  23. package/dist/locale/bg.mjs +1 -1
  24. package/dist/locale/bn.js +6 -8
  25. package/dist/locale/bn.min.js +1 -1
  26. package/dist/locale/bn.min.js.map +1 -1
  27. package/dist/locale/bn.min.mjs +1 -1
  28. package/dist/locale/bn.mjs +1 -1
  29. package/dist/locale/ca.js +6 -8
  30. package/dist/locale/ca.min.js +1 -1
  31. package/dist/locale/ca.min.js.map +1 -1
  32. package/dist/locale/ca.min.mjs +1 -1
  33. package/dist/locale/ca.mjs +1 -1
  34. package/dist/locale/cs.js +6 -8
  35. package/dist/locale/cs.min.js +1 -1
  36. package/dist/locale/cs.min.js.map +1 -1
  37. package/dist/locale/cs.min.mjs +1 -1
  38. package/dist/locale/cs.mjs +1 -1
  39. package/dist/locale/da.js +6 -8
  40. package/dist/locale/da.min.js +1 -1
  41. package/dist/locale/da.min.js.map +1 -1
  42. package/dist/locale/da.min.mjs +1 -1
  43. package/dist/locale/da.mjs +1 -1
  44. package/dist/locale/de.js +6 -8
  45. package/dist/locale/de.min.js +1 -1
  46. package/dist/locale/de.min.js.map +1 -1
  47. package/dist/locale/de.min.mjs +1 -1
  48. package/dist/locale/de.mjs +1 -1
  49. package/dist/locale/el.js +6 -8
  50. package/dist/locale/el.min.js +1 -1
  51. package/dist/locale/el.min.js.map +1 -1
  52. package/dist/locale/el.min.mjs +1 -1
  53. package/dist/locale/el.mjs +1 -1
  54. package/dist/locale/en.js +6 -8
  55. package/dist/locale/en.min.js +1 -1
  56. package/dist/locale/en.min.js.map +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 +6 -8
  60. package/dist/locale/eo.min.js +1 -1
  61. package/dist/locale/eo.min.js.map +1 -1
  62. package/dist/locale/eo.min.mjs +1 -1
  63. package/dist/locale/eo.mjs +1 -1
  64. package/dist/locale/es.js +6 -8
  65. package/dist/locale/es.min.js +1 -1
  66. package/dist/locale/es.min.js.map +1 -1
  67. package/dist/locale/es.min.mjs +1 -1
  68. package/dist/locale/es.mjs +1 -1
  69. package/dist/locale/et.js +6 -8
  70. package/dist/locale/et.min.js +1 -1
  71. package/dist/locale/et.min.js.map +1 -1
  72. package/dist/locale/et.min.mjs +1 -1
  73. package/dist/locale/et.mjs +1 -1
  74. package/dist/locale/eu.js +6 -8
  75. package/dist/locale/eu.min.js +1 -1
  76. package/dist/locale/eu.min.js.map +1 -1
  77. package/dist/locale/eu.min.mjs +1 -1
  78. package/dist/locale/eu.mjs +1 -1
  79. package/dist/locale/fa.js +6 -8
  80. package/dist/locale/fa.min.js +1 -1
  81. package/dist/locale/fa.min.js.map +1 -1
  82. package/dist/locale/fa.min.mjs +1 -1
  83. package/dist/locale/fa.mjs +1 -1
  84. package/dist/locale/fi.js +6 -8
  85. package/dist/locale/fi.min.js +1 -1
  86. package/dist/locale/fi.min.js.map +1 -1
  87. package/dist/locale/fi.min.mjs +1 -1
  88. package/dist/locale/fi.mjs +1 -1
  89. package/dist/locale/fr.js +6 -8
  90. package/dist/locale/fr.min.js +1 -1
  91. package/dist/locale/fr.min.js.map +1 -1
  92. package/dist/locale/fr.min.mjs +1 -1
  93. package/dist/locale/fr.mjs +1 -1
  94. package/dist/locale/he.js +6 -8
  95. package/dist/locale/he.min.js +1 -1
  96. package/dist/locale/he.min.js.map +1 -1
  97. package/dist/locale/he.min.mjs +1 -1
  98. package/dist/locale/he.mjs +1 -1
  99. package/dist/locale/hr.js +6 -8
  100. package/dist/locale/hr.min.js +1 -1
  101. package/dist/locale/hr.min.js.map +1 -1
  102. package/dist/locale/hr.min.mjs +1 -1
  103. package/dist/locale/hr.mjs +1 -1
  104. package/dist/locale/hu.js +6 -8
  105. package/dist/locale/hu.min.js +1 -1
  106. package/dist/locale/hu.min.js.map +1 -1
  107. package/dist/locale/hu.min.mjs +1 -1
  108. package/dist/locale/hu.mjs +1 -1
  109. package/dist/locale/hy-am.js +6 -8
  110. package/dist/locale/hy-am.min.js +1 -1
  111. package/dist/locale/hy-am.min.js.map +1 -1
  112. package/dist/locale/hy-am.min.mjs +1 -1
  113. package/dist/locale/hy-am.mjs +1 -1
  114. package/dist/locale/id.js +6 -8
  115. package/dist/locale/id.min.js +1 -1
  116. package/dist/locale/id.min.js.map +1 -1
  117. package/dist/locale/id.min.mjs +1 -1
  118. package/dist/locale/id.mjs +1 -1
  119. package/dist/locale/it.js +6 -8
  120. package/dist/locale/it.min.js +1 -1
  121. package/dist/locale/it.min.js.map +1 -1
  122. package/dist/locale/it.min.mjs +1 -1
  123. package/dist/locale/it.mjs +1 -1
  124. package/dist/locale/ja.js +6 -8
  125. package/dist/locale/ja.min.js +1 -1
  126. package/dist/locale/ja.min.js.map +1 -1
  127. package/dist/locale/ja.min.mjs +1 -1
  128. package/dist/locale/ja.mjs +1 -1
  129. package/dist/locale/kk.js +6 -8
  130. package/dist/locale/kk.min.js +1 -1
  131. package/dist/locale/kk.min.js.map +1 -1
  132. package/dist/locale/kk.min.mjs +1 -1
  133. package/dist/locale/kk.mjs +1 -1
  134. package/dist/locale/km.js +6 -8
  135. package/dist/locale/km.min.js +1 -1
  136. package/dist/locale/km.min.js.map +1 -1
  137. package/dist/locale/km.min.mjs +1 -1
  138. package/dist/locale/km.mjs +1 -1
  139. package/dist/locale/ko.js +6 -8
  140. package/dist/locale/ko.min.js +1 -1
  141. package/dist/locale/ko.min.js.map +1 -1
  142. package/dist/locale/ko.min.mjs +1 -1
  143. package/dist/locale/ko.mjs +1 -1
  144. package/dist/locale/ku.js +6 -8
  145. package/dist/locale/ku.min.js +1 -1
  146. package/dist/locale/ku.min.js.map +1 -1
  147. package/dist/locale/ku.min.mjs +1 -1
  148. package/dist/locale/ku.mjs +1 -1
  149. package/dist/locale/ky.js +6 -8
  150. package/dist/locale/ky.min.js +1 -1
  151. package/dist/locale/ky.min.js.map +1 -1
  152. package/dist/locale/ky.min.mjs +1 -1
  153. package/dist/locale/ky.mjs +1 -1
  154. package/dist/locale/lt.js +6 -8
  155. package/dist/locale/lt.min.js +1 -1
  156. package/dist/locale/lt.min.js.map +1 -1
  157. package/dist/locale/lt.min.mjs +1 -1
  158. package/dist/locale/lt.mjs +1 -1
  159. package/dist/locale/lv.js +6 -8
  160. package/dist/locale/lv.min.js +1 -1
  161. package/dist/locale/lv.min.js.map +1 -1
  162. package/dist/locale/lv.min.mjs +1 -1
  163. package/dist/locale/lv.mjs +1 -1
  164. package/dist/locale/mn.js +6 -8
  165. package/dist/locale/mn.min.js +1 -1
  166. package/dist/locale/mn.min.js.map +1 -1
  167. package/dist/locale/mn.min.mjs +1 -1
  168. package/dist/locale/mn.mjs +1 -1
  169. package/dist/locale/nb-no.js +6 -8
  170. package/dist/locale/nb-no.min.js +1 -1
  171. package/dist/locale/nb-no.min.js.map +1 -1
  172. package/dist/locale/nb-no.min.mjs +1 -1
  173. package/dist/locale/nb-no.mjs +1 -1
  174. package/dist/locale/nl.js +6 -8
  175. package/dist/locale/nl.min.js +1 -1
  176. package/dist/locale/nl.min.js.map +1 -1
  177. package/dist/locale/nl.min.mjs +1 -1
  178. package/dist/locale/nl.mjs +1 -1
  179. package/dist/locale/pa.js +6 -8
  180. package/dist/locale/pa.min.js +1 -1
  181. package/dist/locale/pa.min.js.map +1 -1
  182. package/dist/locale/pa.min.mjs +1 -1
  183. package/dist/locale/pa.mjs +1 -1
  184. package/dist/locale/pl.js +6 -8
  185. package/dist/locale/pl.min.js +1 -1
  186. package/dist/locale/pl.min.js.map +1 -1
  187. package/dist/locale/pl.min.mjs +1 -1
  188. package/dist/locale/pl.mjs +1 -1
  189. package/dist/locale/pt-br.js +6 -8
  190. package/dist/locale/pt-br.min.js +1 -1
  191. package/dist/locale/pt-br.min.js.map +1 -1
  192. package/dist/locale/pt-br.min.mjs +1 -1
  193. package/dist/locale/pt-br.mjs +1 -1
  194. package/dist/locale/pt.js +6 -8
  195. package/dist/locale/pt.min.js +1 -1
  196. package/dist/locale/pt.min.js.map +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 +6 -8
  200. package/dist/locale/ro.min.js +1 -1
  201. package/dist/locale/ro.min.js.map +1 -1
  202. package/dist/locale/ro.min.mjs +1 -1
  203. package/dist/locale/ro.mjs +1 -1
  204. package/dist/locale/ru.js +6 -8
  205. package/dist/locale/ru.min.js +1 -1
  206. package/dist/locale/ru.min.js.map +1 -1
  207. package/dist/locale/ru.min.mjs +1 -1
  208. package/dist/locale/ru.mjs +1 -1
  209. package/dist/locale/sk.js +6 -8
  210. package/dist/locale/sk.min.js +1 -1
  211. package/dist/locale/sk.min.js.map +1 -1
  212. package/dist/locale/sk.min.mjs +1 -1
  213. package/dist/locale/sk.mjs +1 -1
  214. package/dist/locale/sl.js +6 -8
  215. package/dist/locale/sl.min.js +1 -1
  216. package/dist/locale/sl.min.js.map +1 -1
  217. package/dist/locale/sl.min.mjs +1 -1
  218. package/dist/locale/sl.mjs +1 -1
  219. package/dist/locale/sr.js +6 -8
  220. package/dist/locale/sr.min.js +1 -1
  221. package/dist/locale/sr.min.js.map +1 -1
  222. package/dist/locale/sr.min.mjs +1 -1
  223. package/dist/locale/sr.mjs +1 -1
  224. package/dist/locale/sv.js +6 -8
  225. package/dist/locale/sv.min.js +1 -1
  226. package/dist/locale/sv.min.js.map +1 -1
  227. package/dist/locale/sv.min.mjs +1 -1
  228. package/dist/locale/sv.mjs +1 -1
  229. package/dist/locale/ta.js +6 -8
  230. package/dist/locale/ta.min.js +1 -1
  231. package/dist/locale/ta.min.js.map +1 -1
  232. package/dist/locale/ta.min.mjs +1 -1
  233. package/dist/locale/ta.mjs +1 -1
  234. package/dist/locale/th.js +6 -8
  235. package/dist/locale/th.min.js +1 -1
  236. package/dist/locale/th.min.js.map +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 +6 -8
  240. package/dist/locale/tk.min.js +1 -1
  241. package/dist/locale/tk.min.js.map +1 -1
  242. package/dist/locale/tk.min.mjs +1 -1
  243. package/dist/locale/tk.mjs +1 -1
  244. package/dist/locale/tr.js +6 -8
  245. package/dist/locale/tr.min.js +1 -1
  246. package/dist/locale/tr.min.js.map +1 -1
  247. package/dist/locale/tr.min.mjs +1 -1
  248. package/dist/locale/tr.mjs +1 -1
  249. package/dist/locale/ug-cn.js +6 -8
  250. package/dist/locale/ug-cn.min.js +1 -1
  251. package/dist/locale/ug-cn.min.js.map +1 -1
  252. package/dist/locale/ug-cn.min.mjs +1 -1
  253. package/dist/locale/ug-cn.mjs +1 -1
  254. package/dist/locale/uk.js +6 -8
  255. package/dist/locale/uk.min.js +1 -1
  256. package/dist/locale/uk.min.js.map +1 -1
  257. package/dist/locale/uk.min.mjs +1 -1
  258. package/dist/locale/uk.mjs +1 -1
  259. package/dist/locale/uz-uz.js +6 -8
  260. package/dist/locale/uz-uz.min.js +1 -1
  261. package/dist/locale/uz-uz.min.js.map +1 -1
  262. package/dist/locale/uz-uz.min.mjs +1 -1
  263. package/dist/locale/uz-uz.mjs +1 -1
  264. package/dist/locale/vi.js +6 -8
  265. package/dist/locale/vi.min.js +1 -1
  266. package/dist/locale/vi.min.js.map +1 -1
  267. package/dist/locale/vi.min.mjs +1 -1
  268. package/dist/locale/vi.mjs +1 -1
  269. package/dist/locale/zh-cn.js +6 -8
  270. package/dist/locale/zh-cn.min.js +1 -1
  271. package/dist/locale/zh-cn.min.js.map +1 -1
  272. package/dist/locale/zh-cn.min.mjs +1 -1
  273. package/dist/locale/zh-cn.mjs +1 -1
  274. package/dist/locale/zh-tw.js +6 -8
  275. package/dist/locale/zh-tw.min.js +1 -1
  276. package/dist/locale/zh-tw.min.js.map +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/affix2.mjs +2 -1
  280. package/es/components/affix/src/affix2.mjs.map +1 -1
  281. package/es/components/autocomplete/index.d.ts +22 -0
  282. package/es/components/autocomplete/src/index.mjs +17 -16
  283. package/es/components/autocomplete/src/index.mjs.map +1 -1
  284. package/es/components/autocomplete/src/index.vue.d.ts +11 -0
  285. package/es/components/backtop/index.d.ts +11 -0
  286. package/es/components/backtop/src/backtop.vue.d.ts +11 -0
  287. package/es/components/backtop/src/backtop2.mjs +18 -9
  288. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  289. package/es/components/breadcrumb/src/breadcrumb-item2.mjs +2 -2
  290. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  291. package/es/components/button/src/button2.mjs +11 -7
  292. package/es/components/button/src/button2.mjs.map +1 -1
  293. package/es/components/carousel/index.d.ts +11 -0
  294. package/es/components/carousel/src/item.mjs +21 -15
  295. package/es/components/carousel/src/item.mjs.map +1 -1
  296. package/es/components/carousel/src/main.mjs +25 -23
  297. package/es/components/carousel/src/main.mjs.map +1 -1
  298. package/es/components/carousel/src/main.vue.d.ts +11 -0
  299. package/es/components/cascader/src/index.mjs +38 -21
  300. package/es/components/cascader/src/index.mjs.map +1 -1
  301. package/es/components/cascader-panel/src/index.mjs +16 -13
  302. package/es/components/cascader-panel/src/index.mjs.map +1 -1
  303. package/es/components/cascader-panel/src/menu.mjs +25 -22
  304. package/es/components/cascader-panel/src/menu.mjs.map +1 -1
  305. package/es/components/cascader-panel/src/node2.mjs +6 -2
  306. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  307. package/es/components/checkbox/index.d.ts +36 -3
  308. package/es/components/checkbox/src/checkbox-button.mjs +21 -15
  309. package/es/components/checkbox/src/checkbox-button.mjs.map +1 -1
  310. package/es/components/checkbox/src/checkbox-button.vue.d.ts +12 -1
  311. package/es/components/checkbox/src/checkbox-group.mjs +5 -2
  312. package/es/components/checkbox/src/checkbox-group.mjs.map +1 -1
  313. package/es/components/checkbox/src/checkbox.mjs +36 -28
  314. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  315. package/es/components/checkbox/src/checkbox.vue.d.ts +12 -1
  316. package/es/components/checkbox/src/useCheckbox.d.ts +1 -1
  317. package/es/components/checkbox/src/useCheckbox.mjs +2 -2
  318. package/es/components/checkbox/src/useCheckbox.mjs.map +1 -1
  319. package/es/components/collapse/src/collapse-item.mjs +3 -3
  320. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  321. package/es/components/color-picker/src/index.mjs +8 -5
  322. package/es/components/color-picker/src/index.mjs.map +1 -1
  323. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs +2 -1
  324. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs.map +1 -1
  325. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs +2 -1
  326. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs.map +1 -1
  327. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs +1 -1
  328. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  329. package/es/components/descriptions/src/index.mjs +7 -2
  330. package/es/components/descriptions/src/index.mjs.map +1 -1
  331. package/es/components/dialog/src/dialog.mjs +1 -3
  332. package/es/components/dialog/src/dialog.mjs.map +1 -1
  333. package/es/components/drawer/index.d.ts +11 -0
  334. package/es/components/drawer/src/drawer.vue.d.ts +11 -0
  335. package/es/components/drawer/src/drawer2.mjs +33 -29
  336. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  337. package/es/components/dropdown/src/dropdown-item.mjs +12 -6
  338. package/es/components/dropdown/src/dropdown-item.mjs.map +1 -1
  339. package/es/components/dropdown/src/dropdown-menu.mjs +2 -1
  340. package/es/components/dropdown/src/dropdown-menu.mjs.map +1 -1
  341. package/es/components/dropdown/src/dropdown2.mjs +9 -5
  342. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  343. package/es/components/empty/src/img-empty.mjs +13 -13
  344. package/es/components/empty/src/img-empty.mjs.map +1 -1
  345. package/es/components/focus-trap/src/focus-trap.mjs +1 -1
  346. package/es/components/focus-trap/src/focus-trap.mjs.map +1 -1
  347. package/es/components/form/src/form-item.mjs +6 -4
  348. package/es/components/form/src/form-item.mjs.map +1 -1
  349. package/es/components/image/src/image2.mjs +3 -2
  350. package/es/components/image/src/image2.mjs.map +1 -1
  351. package/es/components/image-viewer/src/image-viewer2.mjs +3 -2
  352. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  353. package/es/components/input/src/input2.mjs +17 -8
  354. package/es/components/input/src/input2.mjs.map +1 -1
  355. package/es/components/input-number/src/input-number2.mjs +12 -6
  356. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  357. package/es/components/message/src/message2.mjs +1 -1
  358. package/es/components/message-box/src/index.mjs +9 -4
  359. package/es/components/message-box/src/index.mjs.map +1 -1
  360. package/es/components/message-box/src/index.vue.d.ts +1 -0
  361. package/es/components/notification/src/notification2.mjs +1 -1
  362. package/es/components/pagination/src/components/jumper.mjs +5 -2
  363. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  364. package/es/components/pagination/src/components/sizes.mjs +2 -1
  365. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  366. package/es/components/popconfirm/src/popconfirm2.mjs +6 -3
  367. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  368. package/es/components/popover/index.d.ts +0 -6
  369. package/es/components/popover/src/index.mjs +4 -2
  370. package/es/components/popover/src/index.mjs.map +1 -1
  371. package/es/components/popover/src/index.vue.d.ts +0 -3
  372. package/es/components/popover/src/popover.d.ts +0 -1
  373. package/es/components/popover/src/popover.mjs +0 -4
  374. package/es/components/popover/src/popover.mjs.map +1 -1
  375. package/es/components/popper/src/content.mjs +5 -3
  376. package/es/components/popper/src/content.mjs.map +1 -1
  377. package/es/components/popper/src/trigger.mjs +1 -1
  378. package/es/components/popper/src/trigger.mjs.map +1 -1
  379. package/es/components/progress/src/progress2.mjs +2 -1
  380. package/es/components/progress/src/progress2.mjs.map +1 -1
  381. package/es/components/radio/src/radio-button2.mjs +4 -4
  382. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  383. package/es/components/radio/src/radio-group2.mjs +1 -1
  384. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  385. package/es/components/rate/index.d.ts +8 -8
  386. package/es/components/rate/src/rate.d.ts +4 -4
  387. package/es/components/rate/src/rate.mjs +8 -4
  388. package/es/components/rate/src/rate.mjs.map +1 -1
  389. package/es/components/rate/src/rate.vue.d.ts +8 -8
  390. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs +10 -6
  391. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs.map +1 -1
  392. package/es/components/scrollbar/src/bar2.mjs +2 -1
  393. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  394. package/es/components/scrollbar/src/scrollbar2.mjs +2 -2
  395. package/es/components/select/src/option-group.mjs +2 -1
  396. package/es/components/select/src/option-group.mjs.map +1 -1
  397. package/es/components/select/src/select-dropdown.mjs +2 -1
  398. package/es/components/select/src/select-dropdown.mjs.map +1 -1
  399. package/es/components/select/src/select.mjs +2 -1
  400. package/es/components/select/src/select.mjs.map +1 -1
  401. package/es/components/select-v2/src/select-dropdown.mjs +2 -1
  402. package/es/components/select-v2/src/select-dropdown.mjs.map +1 -1
  403. package/es/components/select-v2/src/select.mjs +192 -186
  404. package/es/components/select-v2/src/select.mjs.map +1 -1
  405. package/es/components/slider/src/index.mjs +3 -2
  406. package/es/components/slider/src/index.mjs.map +1 -1
  407. package/es/components/slider/src/marker.mjs +2 -1
  408. package/es/components/slider/src/marker.mjs.map +1 -1
  409. package/es/components/steps/src/item.mjs +2 -1
  410. package/es/components/steps/src/item.mjs.map +1 -1
  411. package/es/components/switch/src/switch2.mjs +4 -2
  412. package/es/components/switch/src/switch2.mjs.map +1 -1
  413. package/es/components/table/src/filter-panel.mjs +7 -3
  414. package/es/components/table/src/filter-panel.mjs.map +1 -1
  415. package/es/components/table/src/table-body/index.mjs +1 -1
  416. package/es/components/table/src/table-body/index.mjs.map +1 -1
  417. package/es/components/table/src/table.mjs +3 -2
  418. package/es/components/table/src/table.mjs.map +1 -1
  419. package/es/components/tabs/src/tab-bar2.mjs +3 -2
  420. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  421. package/es/components/tag/index.d.ts +12 -1
  422. package/es/components/tag/src/tag.vue.d.ts +12 -1
  423. package/es/components/tag/src/tag2.mjs +23 -18
  424. package/es/components/tag/src/tag2.mjs.map +1 -1
  425. package/es/components/time-picker/src/common/picker.mjs +16 -8
  426. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  427. package/es/components/time-select/src/time-select.mjs +4 -2
  428. package/es/components/time-select/src/time-select.mjs.map +1 -1
  429. package/es/components/tooltip/src/content.mjs +9 -4
  430. package/es/components/tooltip/src/content.mjs.map +1 -1
  431. package/es/components/tooltip/src/tooltip2.mjs +2 -1
  432. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  433. package/es/components/transfer/index.d.ts +492 -0
  434. package/es/components/transfer/src/index.mjs +13 -7
  435. package/es/components/transfer/src/index.mjs.map +1 -1
  436. package/es/components/transfer/src/index.vue.d.ts +246 -0
  437. package/es/components/tree/src/tree.mjs +2 -1
  438. package/es/components/tree/src/tree.mjs.map +1 -1
  439. package/es/components/tree-v2/src/tree-node.mjs +11 -7
  440. package/es/components/tree-v2/src/tree-node.mjs.map +1 -1
  441. package/es/components/tree-v2/src/tree.mjs +2 -1
  442. package/es/components/tree-v2/src/tree.mjs.map +1 -1
  443. package/es/components/upload/src/index.mjs +3 -2
  444. package/es/components/upload/src/index.mjs.map +1 -1
  445. package/es/components/upload/src/upload-dragger.mjs +2 -1
  446. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  447. package/es/utils/validators.d.ts +0 -1
  448. package/es/utils/validators.mjs +1 -9
  449. package/es/utils/validators.mjs.map +1 -1
  450. package/es/version.d.ts +1 -1
  451. package/es/version.mjs +1 -1
  452. package/es/version.mjs.map +1 -1
  453. package/lib/components/affix/src/affix2.js +2 -1
  454. package/lib/components/affix/src/affix2.js.map +1 -1
  455. package/lib/components/autocomplete/index.d.ts +22 -0
  456. package/lib/components/autocomplete/src/index.js +19 -18
  457. package/lib/components/autocomplete/src/index.js.map +1 -1
  458. package/lib/components/autocomplete/src/index.vue.d.ts +11 -0
  459. package/lib/components/backtop/index.d.ts +11 -0
  460. package/lib/components/backtop/src/backtop.vue.d.ts +11 -0
  461. package/lib/components/backtop/src/backtop2.js +17 -8
  462. package/lib/components/backtop/src/backtop2.js.map +1 -1
  463. package/lib/components/breadcrumb/src/breadcrumb-item2.js +2 -2
  464. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  465. package/lib/components/button/src/button2.js +11 -7
  466. package/lib/components/button/src/button2.js.map +1 -1
  467. package/lib/components/carousel/index.d.ts +11 -0
  468. package/lib/components/carousel/src/item.js +21 -15
  469. package/lib/components/carousel/src/item.js.map +1 -1
  470. package/lib/components/carousel/src/main.js +25 -23
  471. package/lib/components/carousel/src/main.js.map +1 -1
  472. package/lib/components/carousel/src/main.vue.d.ts +11 -0
  473. package/lib/components/cascader/src/index.js +38 -21
  474. package/lib/components/cascader/src/index.js.map +1 -1
  475. package/lib/components/cascader-panel/src/index.js +16 -13
  476. package/lib/components/cascader-panel/src/index.js.map +1 -1
  477. package/lib/components/cascader-panel/src/menu.js +25 -22
  478. package/lib/components/cascader-panel/src/menu.js.map +1 -1
  479. package/lib/components/cascader-panel/src/node2.js +6 -2
  480. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  481. package/lib/components/checkbox/index.d.ts +36 -3
  482. package/lib/components/checkbox/src/checkbox-button.js +21 -15
  483. package/lib/components/checkbox/src/checkbox-button.js.map +1 -1
  484. package/lib/components/checkbox/src/checkbox-button.vue.d.ts +12 -1
  485. package/lib/components/checkbox/src/checkbox-group.js +5 -2
  486. package/lib/components/checkbox/src/checkbox-group.js.map +1 -1
  487. package/lib/components/checkbox/src/checkbox.js +35 -27
  488. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  489. package/lib/components/checkbox/src/checkbox.vue.d.ts +12 -1
  490. package/lib/components/checkbox/src/useCheckbox.d.ts +1 -1
  491. package/lib/components/checkbox/src/useCheckbox.js +2 -2
  492. package/lib/components/checkbox/src/useCheckbox.js.map +1 -1
  493. package/lib/components/collapse/src/collapse-item.js +3 -3
  494. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  495. package/lib/components/color-picker/src/index.js +8 -5
  496. package/lib/components/color-picker/src/index.js.map +1 -1
  497. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js +2 -1
  498. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js.map +1 -1
  499. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js +2 -1
  500. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js.map +1 -1
  501. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js +1 -1
  502. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
  503. package/lib/components/descriptions/src/index.js +7 -2
  504. package/lib/components/descriptions/src/index.js.map +1 -1
  505. package/lib/components/dialog/src/dialog.js +1 -3
  506. package/lib/components/dialog/src/dialog.js.map +1 -1
  507. package/lib/components/drawer/index.d.ts +11 -0
  508. package/lib/components/drawer/src/drawer.vue.d.ts +11 -0
  509. package/lib/components/drawer/src/drawer2.js +33 -29
  510. package/lib/components/drawer/src/drawer2.js.map +1 -1
  511. package/lib/components/dropdown/src/dropdown-item.js +12 -6
  512. package/lib/components/dropdown/src/dropdown-item.js.map +1 -1
  513. package/lib/components/dropdown/src/dropdown-menu.js +2 -1
  514. package/lib/components/dropdown/src/dropdown-menu.js.map +1 -1
  515. package/lib/components/dropdown/src/dropdown2.js +9 -5
  516. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  517. package/lib/components/empty/src/img-empty.js +13 -13
  518. package/lib/components/empty/src/img-empty.js.map +1 -1
  519. package/lib/components/focus-trap/src/focus-trap.js +1 -1
  520. package/lib/components/focus-trap/src/focus-trap.js.map +1 -1
  521. package/lib/components/form/src/form-item.js +6 -4
  522. package/lib/components/form/src/form-item.js.map +1 -1
  523. package/lib/components/image/src/image2.js +3 -2
  524. package/lib/components/image/src/image2.js.map +1 -1
  525. package/lib/components/image-viewer/src/image-viewer2.js +3 -2
  526. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  527. package/lib/components/input/src/input2.js +17 -8
  528. package/lib/components/input/src/input2.js.map +1 -1
  529. package/lib/components/input-number/src/input-number2.js +12 -6
  530. package/lib/components/input-number/src/input-number2.js.map +1 -1
  531. package/lib/components/message/src/message2.js +1 -1
  532. package/lib/components/message-box/src/index.js +17 -12
  533. package/lib/components/message-box/src/index.js.map +1 -1
  534. package/lib/components/message-box/src/index.vue.d.ts +1 -0
  535. package/lib/components/notification/src/notification2.js +1 -1
  536. package/lib/components/pagination/src/components/jumper.js +5 -2
  537. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  538. package/lib/components/pagination/src/components/sizes.js +2 -1
  539. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  540. package/lib/components/popconfirm/src/popconfirm2.js +6 -3
  541. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  542. package/lib/components/popover/index.d.ts +0 -6
  543. package/lib/components/popover/src/index.js +4 -2
  544. package/lib/components/popover/src/index.js.map +1 -1
  545. package/lib/components/popover/src/index.vue.d.ts +0 -3
  546. package/lib/components/popover/src/popover.d.ts +0 -1
  547. package/lib/components/popover/src/popover.js +0 -4
  548. package/lib/components/popover/src/popover.js.map +1 -1
  549. package/lib/components/popper/src/content.js +5 -3
  550. package/lib/components/popper/src/content.js.map +1 -1
  551. package/lib/components/popper/src/trigger.js +1 -1
  552. package/lib/components/popper/src/trigger.js.map +1 -1
  553. package/lib/components/progress/src/progress2.js +2 -1
  554. package/lib/components/progress/src/progress2.js.map +1 -1
  555. package/lib/components/radio/src/radio-button2.js +4 -4
  556. package/lib/components/radio/src/radio-button2.js.map +1 -1
  557. package/lib/components/radio/src/radio-group2.js +1 -1
  558. package/lib/components/radio/src/radio-group2.js.map +1 -1
  559. package/lib/components/rate/index.d.ts +8 -8
  560. package/lib/components/rate/src/rate.d.ts +4 -4
  561. package/lib/components/rate/src/rate.js +8 -4
  562. package/lib/components/rate/src/rate.js.map +1 -1
  563. package/lib/components/rate/src/rate.vue.d.ts +8 -8
  564. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js +10 -6
  565. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js.map +1 -1
  566. package/lib/components/scrollbar/src/bar2.js +2 -1
  567. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  568. package/lib/components/scrollbar/src/scrollbar2.js +2 -2
  569. package/lib/components/select/src/option-group.js +2 -1
  570. package/lib/components/select/src/option-group.js.map +1 -1
  571. package/lib/components/select/src/select-dropdown.js +2 -1
  572. package/lib/components/select/src/select-dropdown.js.map +1 -1
  573. package/lib/components/select/src/select.js +2 -1
  574. package/lib/components/select/src/select.js.map +1 -1
  575. package/lib/components/select-v2/src/select-dropdown.js +2 -1
  576. package/lib/components/select-v2/src/select-dropdown.js.map +1 -1
  577. package/lib/components/select-v2/src/select.js +192 -186
  578. package/lib/components/select-v2/src/select.js.map +1 -1
  579. package/lib/components/slider/src/index.js +3 -2
  580. package/lib/components/slider/src/index.js.map +1 -1
  581. package/lib/components/slider/src/marker.js +2 -1
  582. package/lib/components/slider/src/marker.js.map +1 -1
  583. package/lib/components/steps/src/item.js +2 -1
  584. package/lib/components/steps/src/item.js.map +1 -1
  585. package/lib/components/switch/src/switch2.js +4 -2
  586. package/lib/components/switch/src/switch2.js.map +1 -1
  587. package/lib/components/table/src/filter-panel.js +7 -3
  588. package/lib/components/table/src/filter-panel.js.map +1 -1
  589. package/lib/components/table/src/table-body/index.js +1 -1
  590. package/lib/components/table/src/table-body/index.js.map +1 -1
  591. package/lib/components/table/src/table.js +3 -2
  592. package/lib/components/table/src/table.js.map +1 -1
  593. package/lib/components/tabs/src/tab-bar2.js +3 -2
  594. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  595. package/lib/components/tag/index.d.ts +12 -1
  596. package/lib/components/tag/src/tag.vue.d.ts +12 -1
  597. package/lib/components/tag/src/tag2.js +23 -18
  598. package/lib/components/tag/src/tag2.js.map +1 -1
  599. package/lib/components/time-picker/src/common/picker.js +16 -8
  600. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  601. package/lib/components/time-select/src/time-select.js +4 -2
  602. package/lib/components/time-select/src/time-select.js.map +1 -1
  603. package/lib/components/tooltip/src/content.js +9 -4
  604. package/lib/components/tooltip/src/content.js.map +1 -1
  605. package/lib/components/tooltip/src/tooltip2.js +2 -1
  606. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  607. package/lib/components/transfer/index.d.ts +492 -0
  608. package/lib/components/transfer/src/index.js +13 -7
  609. package/lib/components/transfer/src/index.js.map +1 -1
  610. package/lib/components/transfer/src/index.vue.d.ts +246 -0
  611. package/lib/components/tree/src/tree.js +2 -1
  612. package/lib/components/tree/src/tree.js.map +1 -1
  613. package/lib/components/tree-v2/src/tree-node.js +11 -7
  614. package/lib/components/tree-v2/src/tree-node.js.map +1 -1
  615. package/lib/components/tree-v2/src/tree.js +2 -1
  616. package/lib/components/tree-v2/src/tree.js.map +1 -1
  617. package/lib/components/upload/src/index.js +3 -2
  618. package/lib/components/upload/src/index.js.map +1 -1
  619. package/lib/components/upload/src/upload-dragger.js +2 -1
  620. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  621. package/lib/utils/validators.d.ts +0 -1
  622. package/lib/utils/validators.js +0 -9
  623. package/lib/utils/validators.js.map +1 -1
  624. package/lib/version.d.ts +1 -1
  625. package/lib/version.js +1 -1
  626. package/lib/version.js.map +1 -1
  627. package/package.json +2 -2
  628. package/tags.json +1 -1
  629. package/theme-chalk/el-empty.css +1 -1
  630. package/theme-chalk/el-pagination.css +1 -1
  631. package/theme-chalk/el-popper.css +1 -1
  632. package/theme-chalk/el-rate.css +1 -1
  633. package/theme-chalk/el-table.css +1 -1
  634. package/theme-chalk/el-tooltip.css +0 -1
  635. package/theme-chalk/index.css +1 -1
  636. package/theme-chalk/src/common/var.scss +17 -18
  637. package/theme-chalk/src/pagination.scss +4 -5
  638. package/theme-chalk/src/popper.scss +20 -2
  639. package/theme-chalk/src/table.scss +0 -12
  640. package/theme-chalk/src/tooltip.scss +0 -95
  641. package/web-types.json +1 -1
@@ -31,9 +31,10 @@ const _sfc_main = vue.defineComponent({
31
31
  const children2 = [];
32
32
  if (Array.isArray(node.children)) {
33
33
  node.children.forEach((child) => {
34
+ var _a;
34
35
  if (child.type && child.type.name === "ElOption" && child.component && child.component.proxy) {
35
36
  children2.push(child.component.proxy);
36
- } else if (child.children?.length) {
37
+ } else if ((_a = child.children) == null ? void 0 : _a.length) {
37
38
  children2.push(...flattedChildren(child));
38
39
  }
39
40
  });
@@ -1 +1 @@
1
- {"version":3,"file":"option-group.js","sources":["../../../../../../packages/components/select/src/option-group.vue"],"sourcesContent":["<template>\n <ul v-show=\"visible\" class=\"el-select-group__wrap\">\n <li class=\"el-select-group__title\">{{ label }}</li>\n <li>\n <ul class=\"el-select-group\">\n <slot></slot>\n </ul>\n </li>\n </ul>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n provide,\n inject,\n ref,\n reactive,\n toRefs,\n getCurrentInstance,\n onMounted,\n watch,\n toRaw,\n} from 'vue'\nimport { selectGroupKey, selectKey } from './token'\n\nexport default defineComponent({\n name: 'ElOptionGroup',\n componentName: 'ElOptionGroup',\n\n props: {\n label: String,\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n setup(props) {\n const visible = ref(true)\n const instance = getCurrentInstance()\n const children = ref([])\n\n provide(\n selectGroupKey,\n reactive({\n ...toRefs(props),\n })\n )\n\n const select = inject(selectKey)\n\n onMounted(() => {\n children.value = flattedChildren(instance.subTree)\n })\n\n // get all instances of options\n const flattedChildren = (node) => {\n const children = []\n if (Array.isArray(node.children)) {\n node.children.forEach((child) => {\n if (\n child.type &&\n child.type.name === 'ElOption' &&\n child.component &&\n child.component.proxy\n ) {\n children.push(child.component.proxy)\n } else if (child.children?.length) {\n children.push(...flattedChildren(child))\n }\n })\n }\n return children\n }\n\n const { groupQueryChange } = toRaw(select)\n watch(groupQueryChange, () => {\n visible.value = children.value.some((option) => option.visible === true)\n })\n\n return {\n visible,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ref","getCurrentInstance","selectGroupKey","reactive","toRefs","inject","selectKey","toRaw","_withDirectives","_createElementVNode"],"mappings":";;;;;;;;AA0BA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,eAAe;AAAA,EAEf,OAAO;AAAA,IACL,OAAO;AAAA,IACP,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,EAGb,MAAM,OAAO;AACX,UAAM,UAAUC,QAAI;AACpB,UAAM,WAAWC;AACjB,UAAM,WAAWD,QAAI;AAErB,gBACEE,sBACAC,aAAS;AAAA,SACJC,WAAO;AAAA;AAId,UAAM,SAASC,WAAOC;AAEtB,kBAAU,MAAM;AACd,eAAS,QAAQ,gBAAgB,SAAS;AAAA;AAI5C,UAAM,kBAAkB,CAAC,SAAS;AAChC,YAAM,YAAW;AACjB,UAAI,MAAM,QAAQ,KAAK,WAAW;AAChC,aAAK,SAAS,QAAQ,CAAC,UAAU;AAC/B,cACE,MAAM,QACN,MAAM,KAAK,SAAS,cACpB,MAAM,aACN,MAAM,UAAU,OAChB;AACA,sBAAS,KAAK,MAAM,UAAU;AAAA,qBACrB,MAAM,UAAU,QAAQ;AACjC,sBAAS,KAAK,GAAG,gBAAgB;AAAA;AAAA;AAAA;AAIvC,aAAO;AAAA;AAGT,UAAM,EAAE,qBAAqBC,UAAM;AACnC,cAAM,kBAAkB,MAAM;AAC5B,cAAQ,QAAQ,SAAS,MAAM,KAAK,CAAC,WAAW,OAAO,YAAY;AAAA;AAGrE,WAAO;AAAA,MACL;AAAA;AAAA;AAAA;qBA/EE,OAAM;qBAEJ,OAAM;;2CAHd;SACEC,4DAAsC,kBAAK;AAAA,IAC3CC,uBAIK;AAAA,2BAHH,MAEK,MAFL;AAAA,6BACe;AAAA;;;YAJA;AAAA;;;;;;;"}
1
+ {"version":3,"file":"option-group.js","sources":["../../../../../../packages/components/select/src/option-group.vue"],"sourcesContent":["<template>\n <ul v-show=\"visible\" class=\"el-select-group__wrap\">\n <li class=\"el-select-group__title\">{{ label }}</li>\n <li>\n <ul class=\"el-select-group\">\n <slot></slot>\n </ul>\n </li>\n </ul>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n provide,\n inject,\n ref,\n reactive,\n toRefs,\n getCurrentInstance,\n onMounted,\n watch,\n toRaw,\n} from 'vue'\nimport { selectGroupKey, selectKey } from './token'\n\nexport default defineComponent({\n name: 'ElOptionGroup',\n componentName: 'ElOptionGroup',\n\n props: {\n label: String,\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n setup(props) {\n const visible = ref(true)\n const instance = getCurrentInstance()\n const children = ref([])\n\n provide(\n selectGroupKey,\n reactive({\n ...toRefs(props),\n })\n )\n\n const select = inject(selectKey)\n\n onMounted(() => {\n children.value = flattedChildren(instance.subTree)\n })\n\n // get all instances of options\n const flattedChildren = (node) => {\n const children = []\n if (Array.isArray(node.children)) {\n node.children.forEach((child) => {\n if (\n child.type &&\n child.type.name === 'ElOption' &&\n child.component &&\n child.component.proxy\n ) {\n children.push(child.component.proxy)\n } else if (child.children?.length) {\n children.push(...flattedChildren(child))\n }\n })\n }\n return children\n }\n\n const { groupQueryChange } = toRaw(select)\n watch(groupQueryChange, () => {\n visible.value = children.value.some((option) => option.visible === true)\n })\n\n return {\n visible,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ref","getCurrentInstance","selectGroupKey","reactive","toRefs","inject","selectKey"],"mappings":";;;;;;;;AA0BA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,eAAe;AAAA,EAEf,OAAO;AAAA,IACL,OAAO;AAAA,IACP,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,EAGb,MAAM,OAAO;AACX,UAAM,UAAUC,QAAI;AACpB,UAAM,WAAWC;AACjB,UAAM,WAAWD,QAAI;AAErB,gBACEE,sBACAC,aAAS;AAAA,SACJC,WAAO;AAAA;AAId,UAAM,SAASC,WAAOC;AAEtB,kBAAU,MAAM;AACd,eAAS,QAAQ,gBAAgB,SAAS;AAAA;AAI5C,UAAM,kBAAkB,CAAC,SAAS;AAChC,YAAM,YAAW;AACjB,UAAI,MAAM,QAAQ,KAAK,WAAW;AAChC,aAAK,SAAS,QAAQ,CAAC,UAAU;AAC/B,cACE;AAKA,iCAAoB,UAAU;AAAA,qBACrB,MAAM;AACf,sBAAS,KAAK,mBAAmB;AAAA;AAAA;AAAA;AAIvC;AAAO;AAGT;AACA,UAAM,kBAAkB;AACtB;AAAmE;AAGrE;AAAO;AACL;AAAA;AAAA;;qBA7EI,OAAM;;;SAFZ,gBAAmD;AAAR,2BAKtC;AAAA,2BAHH,MAEK;AAFL;AACe;;;;AAJA;;;;;;;;"}
@@ -17,7 +17,8 @@ const _sfc_main = vue.defineComponent({
17
17
  const isFitInputWidth = vue.computed(() => select.props.fitInputWidth);
18
18
  const minWidth = vue.ref("");
19
19
  function updateMinWidth() {
20
- minWidth.value = `${select.selectWrapper?.getBoundingClientRect().width}px`;
20
+ var _a;
21
+ minWidth.value = `${(_a = select.selectWrapper) == null ? void 0 : _a.getBoundingClientRect().width}px`;
21
22
  }
22
23
  vue.onMounted(() => {
23
24
  updateMinWidth();
@@ -1 +1 @@
1
- {"version":3,"file":"select-dropdown.js","sources":["../../../../../../packages/components/select/src/select-dropdown.vue"],"sourcesContent":["<template>\n <div\n class=\"el-select-dropdown\"\n :class=\"[{ 'is-multiple': isMultiple }, popperClass]\"\n :style=\"{ [isFitInputWidth ? 'width' : 'minWidth']: minWidth }\"\n >\n <slot></slot>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n onMounted,\n onBeforeUnmount,\n inject,\n ref,\n} from 'vue'\nimport {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\nimport { selectKey } from './token'\nimport type { ResizableElement } from '@element-plus/utils/resize-event'\n\nexport default defineComponent({\n name: 'ElSelectDropdown',\n\n componentName: 'ElSelectDropdown',\n\n setup() {\n const select = inject(selectKey)!\n\n // computed\n const popperClass = computed(() => select.props.popperClass)\n const isMultiple = computed(() => select.props.multiple)\n const isFitInputWidth = computed(() => select.props.fitInputWidth)\n const minWidth = ref('')\n\n function updateMinWidth() {\n minWidth.value = `${\n select.selectWrapper?.getBoundingClientRect().width\n }px`\n }\n\n onMounted(() => {\n // TODO: updatePopper\n // popper.value.update()\n updateMinWidth()\n addResizeListener(\n select.selectWrapper as ResizableElement,\n updateMinWidth\n )\n })\n\n onBeforeUnmount(() => {\n removeResizeListener(\n select.selectWrapper as ResizableElement,\n updateMinWidth\n )\n })\n\n return {\n minWidth,\n popperClass,\n isMultiple,\n isFitInputWidth,\n }\n },\n})\n</script>\n"],"names":["defineComponent","inject","selectKey","computed","ref","_openBlock","_normalizeClass"],"mappings":";;;;;;;;;AA0BA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,eAAe;AAAA,EAEf,QAAQ;AACN,UAAM,SAASC,WAAOC;AAGtB,UAAM,cAAcC,aAAS,MAAM,OAAO,MAAM;AAChD,UAAM,aAAaA,aAAS,MAAM,OAAO,MAAM;AAC/C,UAAM,kBAAkBA,aAAS,MAAM,OAAO,MAAM;AACpD,UAAM,WAAWC,QAAI;AAErB,8BAA0B;AACxB,eAAS,QAAQ,GACf,OAAO,eAAe,wBAAwB;AAAA;AAIlD,kBAAU,MAAM;AAGd;AACA,oCACE,OAAO,eACP;AAAA;AAIJ,wBAAgB,MAAM;AACpB,uCACE,OAAO,eACP;AAAA;AAIJ,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;2BAlEJ,wBAMM;SALCC,wCAAC,OAAoB;AAAA,IAEzB,OAAKC,0CAAoB,qCAA0B,KAAQ;AAAA;KAE5D;AAAA;;;;;;;"}
1
+ {"version":3,"file":"select-dropdown.js","sources":["../../../../../../packages/components/select/src/select-dropdown.vue"],"sourcesContent":["<template>\n <div\n class=\"el-select-dropdown\"\n :class=\"[{ 'is-multiple': isMultiple }, popperClass]\"\n :style=\"{ [isFitInputWidth ? 'width' : 'minWidth']: minWidth }\"\n >\n <slot></slot>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n onMounted,\n onBeforeUnmount,\n inject,\n ref,\n} from 'vue'\nimport {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\nimport { selectKey } from './token'\nimport type { ResizableElement } from '@element-plus/utils/resize-event'\n\nexport default defineComponent({\n name: 'ElSelectDropdown',\n\n componentName: 'ElSelectDropdown',\n\n setup() {\n const select = inject(selectKey)!\n\n // computed\n const popperClass = computed(() => select.props.popperClass)\n const isMultiple = computed(() => select.props.multiple)\n const isFitInputWidth = computed(() => select.props.fitInputWidth)\n const minWidth = ref('')\n\n function updateMinWidth() {\n minWidth.value = `${\n select.selectWrapper?.getBoundingClientRect().width\n }px`\n }\n\n onMounted(() => {\n // TODO: updatePopper\n // popper.value.update()\n updateMinWidth()\n addResizeListener(\n select.selectWrapper as ResizableElement,\n updateMinWidth\n )\n })\n\n onBeforeUnmount(() => {\n removeResizeListener(\n select.selectWrapper as ResizableElement,\n updateMinWidth\n )\n })\n\n return {\n minWidth,\n popperClass,\n isMultiple,\n isFitInputWidth,\n }\n },\n})\n</script>\n"],"names":["defineComponent","inject","selectKey","computed","ref"],"mappings":";;;;;;;;;AA0BA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,eAAe;AAAA,EAEf,QAAQ;AACN,UAAM,SAASC,WAAOC;AAGtB,UAAM,cAAcC,aAAS,MAAM,OAAO,MAAM;AAChD,UAAM,aAAaA,aAAS,MAAM,OAAO,MAAM;AAC/C,UAAM,kBAAkBA,aAAS,MAAM,OAAO,MAAM;AACpD,UAAM,WAAWC,QAAI;AAErB,8BAA0B;AACxB;AACgD;AAIlD;AAGE;AACA;AAEE;AAIJ;AACE;AAEE;AAIJ;AAAO;AACL,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;SAjEG,kCAAC;AAAoB,wDAEA;AAAkC;;AAE5D;;;;;;;;"}
@@ -262,7 +262,8 @@ const _sfc_main = vue.defineComponent({
262
262
  ctx.emit(constants.UPDATE_MODEL_EVENT, "");
263
263
  }
264
264
  const popperPaneRef = vue.computed(() => {
265
- return tooltipRef.value?.popperRef?.contentRef;
265
+ var _a, _b;
266
+ return (_b = (_a = tooltipRef.value) == null ? void 0 : _a.popperRef) == null ? void 0 : _b.contentRef;
266
267
  });
267
268
  return {
268
269
  tagInMultiLine,
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectWrapper\"\n v-click-outside:[popperPaneRef]=\"handleClose\"\n :class=\"wrapperKls\"\n @click.stop=\"toggleMenu\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n v-model:visible=\"dropMenuVisible\"\n placement=\"bottom-start\"\n :append-to-body=\"popperAppendToBody\"\n :popper-class=\"`el-select__popper ${popperClass}`\"\n :fallback-placements=\"['bottom-start', 'top-start', 'right', 'left']\"\n effect=\"light\"\n pure\n trigger=\"click\"\n transition=\"el-zoom-in-top\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n persistent\n @show=\"handleMenuEnter\"\n >\n <template #default>\n <div class=\"select-trigger\">\n <div\n v-if=\"multiple\"\n ref=\"tags\"\n class=\"el-select__tags\"\n :style=\"selectTagsStyle\"\n >\n <span v-if=\"collapseTags && selected.length\">\n <el-tag\n :closable=\"!selectDisabled && !selected[0].isDisabled\"\n :size=\"collapseTagSize\"\n :hit=\"selected[0].hitState\"\n :type=\"tagType\"\n disable-transitions\n @close=\"deleteTag($event, selected[0])\"\n >\n <span\n class=\"el-select__tags-text\"\n :style=\"{ maxWidth: inputWidth - 123 + 'px' }\"\n >{{ selected[0].currentLabel }}</span\n >\n </el-tag>\n <el-tag\n v-if=\"selected.length > 1\"\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n disable-transitions\n >\n <span class=\"el-select__tags-text\"\n >+ {{ selected.length - 1 }}</span\n >\n </el-tag>\n </span>\n <!-- <div> -->\n <transition v-if=\"!collapseTags\" @after-leave=\"resetInputHeight\">\n <span\n :style=\"{\n marginLeft:\n prefixWidth && selected.length ? `${prefixWidth}px` : null,\n }\"\n >\n <el-tag\n v-for=\"item in selected\"\n :key=\"getValueKey(item)\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :hit=\"item.hitState\"\n :type=\"tagType\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span\n class=\"el-select__tags-text\"\n :style=\"{ maxWidth: inputWidth - 75 + 'px' }\"\n >{{ item.currentLabel }}</span\n >\n </el-tag>\n </span>\n </transition>\n <!-- </div> -->\n <input\n v-if=\"filterable\"\n ref=\"input\"\n v-model=\"query\"\n type=\"text\"\n class=\"el-select__input\"\n :class=\"[selectSize ? `is-${selectSize}` : '']\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"{\n marginLeft:\n (prefixWidth && !selected.length) || tagInMultiLine\n ? `${prefixWidth}px`\n : null,\n flexGrow: '1',\n width: `${inputLength / (inputWidth - 32)}%`,\n maxWidth: `${inputWidth - 42}px`,\n }\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keyup=\"managePlaceholder\"\n @keydown=\"resetInputState\"\n @keydown.down.prevent=\"navigateOptions('next')\"\n @keydown.up.prevent=\"navigateOptions('prev')\"\n @keydown.esc.stop.prevent=\"visible = false\"\n @keydown.enter.stop.prevent=\"selectOption\"\n @keydown.delete=\"deletePrevTag\"\n @keydown.tab=\"visible = false\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @input=\"debouncedQueryChange\"\n />\n </div>\n <el-input\n :id=\"id\"\n ref=\"reference\"\n v-model=\"selectedLabel\"\n type=\"text\"\n :placeholder=\"currentPlaceholder\"\n :name=\"name\"\n :autocomplete=\"autocomplete\"\n :size=\"selectSize\"\n :disabled=\"selectDisabled\"\n :readonly=\"readonly\"\n :validate-event=\"false\"\n :class=\"{ 'is-focus': visible }\"\n :tabindex=\"multiple && filterable ? -1 : undefined\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @input=\"debouncedOnInputChange\"\n @paste=\"debouncedOnInputChange\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @keydown.down.stop.prevent=\"navigateOptions('next')\"\n @keydown.up.stop.prevent=\"navigateOptions('prev')\"\n @keydown.enter.stop.prevent=\"selectOption\"\n @keydown.esc.stop.prevent=\"visible = false\"\n @keydown.tab=\"visible = false\"\n @mouseenter=\"inputHovering = true\"\n @mouseleave=\"inputHovering = false\"\n >\n <template v-if=\"$slots.prefix\" #prefix>\n <div\n style=\"\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n \"\n >\n <slot name=\"prefix\"></slot>\n </div>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"iconComponent\"\n v-show=\"!showClose\"\n :class=\"['el-select__caret', 'el-input__icon', iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClose && clearIcon\"\n class=\"el-select__caret el-input__icon\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n </div>\n </template>\n <template #content>\n <el-select-menu>\n <el-scrollbar\n v-show=\"options.size > 0 && !loading\"\n ref=\"scrollbar\"\n tag=\"ul\"\n wrap-class=\"el-select-dropdown__wrap\"\n view-class=\"el-select-dropdown__list\"\n :class=\"{\n 'is-empty': !allowCreate && query && filteredOptionsCount === 0,\n }\"\n >\n <el-option v-if=\"showNewOption\" :value=\"query\" :created=\"true\" />\n <slot></slot>\n </el-scrollbar>\n <template\n v-if=\"\n emptyText &&\n (!allowCreate || loading || (allowCreate && options.size === 0))\n \"\n >\n <slot v-if=\"$slots.empty\" name=\"empty\"></slot>\n <p v-else class=\"el-select-dropdown__empty\">\n {{ emptyText }}\n </p>\n </template>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n toRefs,\n defineComponent,\n onMounted,\n onBeforeUnmount,\n nextTick,\n reactive,\n provide,\n computed,\n unref,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport { useFocus, useLocale } from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\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 { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@element-plus/utils/constants'\nimport {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport { CircleClose, ArrowUp } from '@element-plus/icons-vue'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect, useSelectStates } from './useSelect'\nimport { selectKey } from './token'\n\nimport type { PropType, Component } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type { SelectContext } from './token'\n\nexport default defineComponent({\n name: 'ElSelect',\n componentName: 'ElSelect',\n components: {\n ElInput,\n ElSelectMenu,\n ElOption,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: {\n name: String,\n id: String,\n modelValue: {\n type: [Array, String, Number, Boolean, Object],\n default: undefined,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n automaticDropdown: Boolean,\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n disabled: Boolean,\n clearable: Boolean,\n filterable: Boolean,\n allowCreate: Boolean,\n loading: Boolean,\n popperClass: {\n type: String,\n default: '',\n },\n remote: Boolean,\n loadingText: String,\n noMatchText: String,\n noDataText: String,\n remoteMethod: Function,\n filterMethod: Function,\n multiple: Boolean,\n multipleLimit: {\n type: Number,\n default: 0,\n },\n placeholder: {\n type: String,\n },\n defaultFirstOption: Boolean,\n reserveKeyword: {\n type: Boolean,\n default: true,\n },\n valueKey: {\n type: String,\n default: 'value',\n },\n collapseTags: Boolean,\n popperAppendToBody: {\n type: Boolean,\n default: true,\n },\n clearIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: CircleClose,\n },\n fitInputWidth: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: ArrowUp,\n },\n tagType: {\n type: String,\n default: 'info',\n },\n },\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n ],\n\n setup(props, ctx) {\n const { t } = useLocale()\n const states = useSelectStates(props)\n const {\n optionsArray,\n selectSize,\n readonly,\n handleResize,\n collapseTagSize,\n debouncedOnInputChange,\n debouncedQueryChange,\n deletePrevTag,\n deleteTag,\n deleteSelected,\n handleOptionSelect,\n scrollToOption,\n setSelected,\n resetInputHeight,\n managePlaceholder,\n showClose,\n selectDisabled,\n iconComponent,\n iconReverse,\n showNewOption,\n emptyText,\n toggleLastOptionHitState,\n resetInputState,\n handleComposition,\n onOptionCreate,\n onOptionDestroy,\n handleMenuEnter,\n handleFocus,\n blur,\n handleBlur,\n handleClearClick,\n handleClose,\n toggleMenu,\n selectOption,\n getValueKey,\n navigateOptions,\n dropMenuVisible,\n\n reference,\n input,\n tooltipRef,\n tags,\n selectWrapper,\n scrollbar,\n queryChange,\n groupQueryChange,\n } = useSelect(props, states, ctx)\n\n const { focus } = useFocus(reference)\n\n const {\n inputWidth,\n selected,\n inputLength,\n filteredOptionsCount,\n visible,\n softFocus,\n selectedLabel,\n hoverIndex,\n query,\n inputHovering,\n currentPlaceholder,\n menuVisibleOnFocus,\n isOnComposition,\n isSilentBlur,\n options,\n cachedOptions,\n optionsCount,\n prefixWidth,\n tagInMultiLine,\n } = toRefs(states)\n\n const wrapperKls = computed(() => {\n const classList = ['el-select']\n const _selectSize = unref(selectSize)\n if (_selectSize) {\n classList.push(`el-select--${_selectSize}`)\n }\n return classList\n })\n\n const selectTagsStyle = computed(() => ({\n maxWidth: `${unref(inputWidth) - 32}px`,\n width: '100%',\n }))\n\n provide(\n selectKey,\n reactive({\n props,\n options,\n optionsArray,\n cachedOptions,\n optionsCount,\n filteredOptionsCount,\n hoverIndex,\n handleOptionSelect,\n onOptionCreate,\n onOptionDestroy,\n selectWrapper,\n selected,\n setSelected,\n queryChange,\n groupQueryChange,\n }) as unknown as SelectContext\n )\n\n onMounted(() => {\n states.cachedPlaceHolder = currentPlaceholder.value =\n props.placeholder || t('el.select.placeholder')\n if (\n props.multiple &&\n Array.isArray(props.modelValue) &&\n props.modelValue.length > 0\n ) {\n currentPlaceholder.value = ''\n }\n addResizeListener(selectWrapper.value as any, handleResize)\n if (reference.value && reference.value.$el) {\n const sizeMap = {\n large: 36,\n default: 32,\n small: 28,\n }\n const input = reference.value.input as HTMLInputElement\n states.initialInputHeight =\n input.getBoundingClientRect().height || sizeMap[selectSize.value]\n }\n if (props.remote && props.multiple) {\n resetInputHeight()\n }\n nextTick(() => {\n if (!reference.value) return\n if (reference.value.$el) {\n inputWidth.value = reference.value.$el.getBoundingClientRect().width\n }\n if (ctx.slots.prefix) {\n const inputChildNodes = reference.value.$el.childNodes\n const input = (Array.from(inputChildNodes) as HTMLElement[]).filter(\n (item) => item.tagName === 'INPUT'\n )[0]\n const prefix = reference.value.$el.querySelector('.el-input__prefix')\n prefixWidth.value = Math.max(\n prefix.getBoundingClientRect().width + 5,\n 30\n )\n if (states.prefixWidth) {\n input.style.paddingLeft = `${Math.max(states.prefixWidth, 30)}px`\n }\n }\n })\n setSelected()\n })\n\n onBeforeUnmount(() => {\n removeResizeListener(selectWrapper.value as any, handleResize)\n })\n\n if (props.multiple && !Array.isArray(props.modelValue)) {\n ctx.emit(UPDATE_MODEL_EVENT, [])\n }\n if (!props.multiple && Array.isArray(props.modelValue)) {\n ctx.emit(UPDATE_MODEL_EVENT, '')\n }\n\n const popperPaneRef = computed(() => {\n return tooltipRef.value?.popperRef?.contentRef\n })\n\n return {\n tagInMultiLine,\n prefixWidth,\n selectSize,\n readonly,\n handleResize,\n collapseTagSize,\n debouncedOnInputChange,\n debouncedQueryChange,\n deletePrevTag,\n deleteTag,\n deleteSelected,\n handleOptionSelect,\n scrollToOption,\n inputWidth,\n selected,\n inputLength,\n filteredOptionsCount,\n visible,\n softFocus,\n selectedLabel,\n hoverIndex,\n query,\n inputHovering,\n currentPlaceholder,\n menuVisibleOnFocus,\n isOnComposition,\n isSilentBlur,\n options,\n resetInputHeight,\n managePlaceholder,\n showClose,\n selectDisabled,\n iconComponent,\n iconReverse,\n showNewOption,\n emptyText,\n toggleLastOptionHitState,\n resetInputState,\n handleComposition,\n handleMenuEnter,\n handleFocus,\n blur,\n handleBlur,\n handleClearClick,\n handleClose,\n toggleMenu,\n selectOption,\n getValueKey,\n navigateOptions,\n dropMenuVisible,\n focus,\n\n reference,\n input,\n tooltipRef,\n popperPaneRef,\n tags,\n selectWrapper,\n scrollbar,\n\n wrapperKls,\n selectTagsStyle,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElInput","ElSelectMenu","ElOption","ElTag","ElScrollbar","ElTooltip","ElIcon","ClickOutside","isValidComponentSize","CircleClose","ArrowUp","UPDATE_MODEL_EVENT","CHANGE_EVENT","useLocale","useSelectStates","useSelect","useFocus","toRefs","computed","unref","selectKey","reactive","_withDirectives","_normalizeClass","_withCtx","_createElementBlock","_createCommentVNode","_Fragment","_openBlock","_withKeys","_createSlots","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"select.js","sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectWrapper\"\n v-click-outside:[popperPaneRef]=\"handleClose\"\n :class=\"wrapperKls\"\n @click.stop=\"toggleMenu\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n v-model:visible=\"dropMenuVisible\"\n placement=\"bottom-start\"\n :append-to-body=\"popperAppendToBody\"\n :popper-class=\"`el-select__popper ${popperClass}`\"\n :fallback-placements=\"['bottom-start', 'top-start', 'right', 'left']\"\n effect=\"light\"\n pure\n trigger=\"click\"\n transition=\"el-zoom-in-top\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n persistent\n @show=\"handleMenuEnter\"\n >\n <template #default>\n <div class=\"select-trigger\">\n <div\n v-if=\"multiple\"\n ref=\"tags\"\n class=\"el-select__tags\"\n :style=\"selectTagsStyle\"\n >\n <span v-if=\"collapseTags && selected.length\">\n <el-tag\n :closable=\"!selectDisabled && !selected[0].isDisabled\"\n :size=\"collapseTagSize\"\n :hit=\"selected[0].hitState\"\n :type=\"tagType\"\n disable-transitions\n @close=\"deleteTag($event, selected[0])\"\n >\n <span\n class=\"el-select__tags-text\"\n :style=\"{ maxWidth: inputWidth - 123 + 'px' }\"\n >{{ selected[0].currentLabel }}</span\n >\n </el-tag>\n <el-tag\n v-if=\"selected.length > 1\"\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n disable-transitions\n >\n <span class=\"el-select__tags-text\"\n >+ {{ selected.length - 1 }}</span\n >\n </el-tag>\n </span>\n <!-- <div> -->\n <transition v-if=\"!collapseTags\" @after-leave=\"resetInputHeight\">\n <span\n :style=\"{\n marginLeft:\n prefixWidth && selected.length ? `${prefixWidth}px` : null,\n }\"\n >\n <el-tag\n v-for=\"item in selected\"\n :key=\"getValueKey(item)\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :hit=\"item.hitState\"\n :type=\"tagType\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span\n class=\"el-select__tags-text\"\n :style=\"{ maxWidth: inputWidth - 75 + 'px' }\"\n >{{ item.currentLabel }}</span\n >\n </el-tag>\n </span>\n </transition>\n <!-- </div> -->\n <input\n v-if=\"filterable\"\n ref=\"input\"\n v-model=\"query\"\n type=\"text\"\n class=\"el-select__input\"\n :class=\"[selectSize ? `is-${selectSize}` : '']\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"{\n marginLeft:\n (prefixWidth && !selected.length) || tagInMultiLine\n ? `${prefixWidth}px`\n : null,\n flexGrow: '1',\n width: `${inputLength / (inputWidth - 32)}%`,\n maxWidth: `${inputWidth - 42}px`,\n }\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keyup=\"managePlaceholder\"\n @keydown=\"resetInputState\"\n @keydown.down.prevent=\"navigateOptions('next')\"\n @keydown.up.prevent=\"navigateOptions('prev')\"\n @keydown.esc.stop.prevent=\"visible = false\"\n @keydown.enter.stop.prevent=\"selectOption\"\n @keydown.delete=\"deletePrevTag\"\n @keydown.tab=\"visible = false\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @input=\"debouncedQueryChange\"\n />\n </div>\n <el-input\n :id=\"id\"\n ref=\"reference\"\n v-model=\"selectedLabel\"\n type=\"text\"\n :placeholder=\"currentPlaceholder\"\n :name=\"name\"\n :autocomplete=\"autocomplete\"\n :size=\"selectSize\"\n :disabled=\"selectDisabled\"\n :readonly=\"readonly\"\n :validate-event=\"false\"\n :class=\"{ 'is-focus': visible }\"\n :tabindex=\"multiple && filterable ? -1 : undefined\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @input=\"debouncedOnInputChange\"\n @paste=\"debouncedOnInputChange\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @keydown.down.stop.prevent=\"navigateOptions('next')\"\n @keydown.up.stop.prevent=\"navigateOptions('prev')\"\n @keydown.enter.stop.prevent=\"selectOption\"\n @keydown.esc.stop.prevent=\"visible = false\"\n @keydown.tab=\"visible = false\"\n @mouseenter=\"inputHovering = true\"\n @mouseleave=\"inputHovering = false\"\n >\n <template v-if=\"$slots.prefix\" #prefix>\n <div\n style=\"\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n \"\n >\n <slot name=\"prefix\"></slot>\n </div>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"iconComponent\"\n v-show=\"!showClose\"\n :class=\"['el-select__caret', 'el-input__icon', iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClose && clearIcon\"\n class=\"el-select__caret el-input__icon\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n </div>\n </template>\n <template #content>\n <el-select-menu>\n <el-scrollbar\n v-show=\"options.size > 0 && !loading\"\n ref=\"scrollbar\"\n tag=\"ul\"\n wrap-class=\"el-select-dropdown__wrap\"\n view-class=\"el-select-dropdown__list\"\n :class=\"{\n 'is-empty': !allowCreate && query && filteredOptionsCount === 0,\n }\"\n >\n <el-option v-if=\"showNewOption\" :value=\"query\" :created=\"true\" />\n <slot></slot>\n </el-scrollbar>\n <template\n v-if=\"\n emptyText &&\n (!allowCreate || loading || (allowCreate && options.size === 0))\n \"\n >\n <slot v-if=\"$slots.empty\" name=\"empty\"></slot>\n <p v-else class=\"el-select-dropdown__empty\">\n {{ emptyText }}\n </p>\n </template>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n toRefs,\n defineComponent,\n onMounted,\n onBeforeUnmount,\n nextTick,\n reactive,\n provide,\n computed,\n unref,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport { useFocus, useLocale } from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\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 { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@element-plus/utils/constants'\nimport {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport { CircleClose, ArrowUp } from '@element-plus/icons-vue'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect, useSelectStates } from './useSelect'\nimport { selectKey } from './token'\n\nimport type { PropType, Component } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type { SelectContext } from './token'\n\nexport default defineComponent({\n name: 'ElSelect',\n componentName: 'ElSelect',\n components: {\n ElInput,\n ElSelectMenu,\n ElOption,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: {\n name: String,\n id: String,\n modelValue: {\n type: [Array, String, Number, Boolean, Object],\n default: undefined,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n automaticDropdown: Boolean,\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n disabled: Boolean,\n clearable: Boolean,\n filterable: Boolean,\n allowCreate: Boolean,\n loading: Boolean,\n popperClass: {\n type: String,\n default: '',\n },\n remote: Boolean,\n loadingText: String,\n noMatchText: String,\n noDataText: String,\n remoteMethod: Function,\n filterMethod: Function,\n multiple: Boolean,\n multipleLimit: {\n type: Number,\n default: 0,\n },\n placeholder: {\n type: String,\n },\n defaultFirstOption: Boolean,\n reserveKeyword: {\n type: Boolean,\n default: true,\n },\n valueKey: {\n type: String,\n default: 'value',\n },\n collapseTags: Boolean,\n popperAppendToBody: {\n type: Boolean,\n default: true,\n },\n clearIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: CircleClose,\n },\n fitInputWidth: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: ArrowUp,\n },\n tagType: {\n type: String,\n default: 'info',\n },\n },\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n ],\n\n setup(props, ctx) {\n const { t } = useLocale()\n const states = useSelectStates(props)\n const {\n optionsArray,\n selectSize,\n readonly,\n handleResize,\n collapseTagSize,\n debouncedOnInputChange,\n debouncedQueryChange,\n deletePrevTag,\n deleteTag,\n deleteSelected,\n handleOptionSelect,\n scrollToOption,\n setSelected,\n resetInputHeight,\n managePlaceholder,\n showClose,\n selectDisabled,\n iconComponent,\n iconReverse,\n showNewOption,\n emptyText,\n toggleLastOptionHitState,\n resetInputState,\n handleComposition,\n onOptionCreate,\n onOptionDestroy,\n handleMenuEnter,\n handleFocus,\n blur,\n handleBlur,\n handleClearClick,\n handleClose,\n toggleMenu,\n selectOption,\n getValueKey,\n navigateOptions,\n dropMenuVisible,\n\n reference,\n input,\n tooltipRef,\n tags,\n selectWrapper,\n scrollbar,\n queryChange,\n groupQueryChange,\n } = useSelect(props, states, ctx)\n\n const { focus } = useFocus(reference)\n\n const {\n inputWidth,\n selected,\n inputLength,\n filteredOptionsCount,\n visible,\n softFocus,\n selectedLabel,\n hoverIndex,\n query,\n inputHovering,\n currentPlaceholder,\n menuVisibleOnFocus,\n isOnComposition,\n isSilentBlur,\n options,\n cachedOptions,\n optionsCount,\n prefixWidth,\n tagInMultiLine,\n } = toRefs(states)\n\n const wrapperKls = computed(() => {\n const classList = ['el-select']\n const _selectSize = unref(selectSize)\n if (_selectSize) {\n classList.push(`el-select--${_selectSize}`)\n }\n return classList\n })\n\n const selectTagsStyle = computed(() => ({\n maxWidth: `${unref(inputWidth) - 32}px`,\n width: '100%',\n }))\n\n provide(\n selectKey,\n reactive({\n props,\n options,\n optionsArray,\n cachedOptions,\n optionsCount,\n filteredOptionsCount,\n hoverIndex,\n handleOptionSelect,\n onOptionCreate,\n onOptionDestroy,\n selectWrapper,\n selected,\n setSelected,\n queryChange,\n groupQueryChange,\n }) as unknown as SelectContext\n )\n\n onMounted(() => {\n states.cachedPlaceHolder = currentPlaceholder.value =\n props.placeholder || t('el.select.placeholder')\n if (\n props.multiple &&\n Array.isArray(props.modelValue) &&\n props.modelValue.length > 0\n ) {\n currentPlaceholder.value = ''\n }\n addResizeListener(selectWrapper.value as any, handleResize)\n if (reference.value && reference.value.$el) {\n const sizeMap = {\n large: 36,\n default: 32,\n small: 28,\n }\n const input = reference.value.input as HTMLInputElement\n states.initialInputHeight =\n input.getBoundingClientRect().height || sizeMap[selectSize.value]\n }\n if (props.remote && props.multiple) {\n resetInputHeight()\n }\n nextTick(() => {\n if (!reference.value) return\n if (reference.value.$el) {\n inputWidth.value = reference.value.$el.getBoundingClientRect().width\n }\n if (ctx.slots.prefix) {\n const inputChildNodes = reference.value.$el.childNodes\n const input = (Array.from(inputChildNodes) as HTMLElement[]).filter(\n (item) => item.tagName === 'INPUT'\n )[0]\n const prefix = reference.value.$el.querySelector('.el-input__prefix')\n prefixWidth.value = Math.max(\n prefix.getBoundingClientRect().width + 5,\n 30\n )\n if (states.prefixWidth) {\n input.style.paddingLeft = `${Math.max(states.prefixWidth, 30)}px`\n }\n }\n })\n setSelected()\n })\n\n onBeforeUnmount(() => {\n removeResizeListener(selectWrapper.value as any, handleResize)\n })\n\n if (props.multiple && !Array.isArray(props.modelValue)) {\n ctx.emit(UPDATE_MODEL_EVENT, [])\n }\n if (!props.multiple && Array.isArray(props.modelValue)) {\n ctx.emit(UPDATE_MODEL_EVENT, '')\n }\n\n const popperPaneRef = computed(() => {\n return tooltipRef.value?.popperRef?.contentRef\n })\n\n return {\n tagInMultiLine,\n prefixWidth,\n selectSize,\n readonly,\n handleResize,\n collapseTagSize,\n debouncedOnInputChange,\n debouncedQueryChange,\n deletePrevTag,\n deleteTag,\n deleteSelected,\n handleOptionSelect,\n scrollToOption,\n inputWidth,\n selected,\n inputLength,\n filteredOptionsCount,\n visible,\n softFocus,\n selectedLabel,\n hoverIndex,\n query,\n inputHovering,\n currentPlaceholder,\n menuVisibleOnFocus,\n isOnComposition,\n isSilentBlur,\n options,\n resetInputHeight,\n managePlaceholder,\n showClose,\n selectDisabled,\n iconComponent,\n iconReverse,\n showNewOption,\n emptyText,\n toggleLastOptionHitState,\n resetInputState,\n handleComposition,\n handleMenuEnter,\n handleFocus,\n blur,\n handleBlur,\n handleClearClick,\n handleClose,\n toggleMenu,\n selectOption,\n getValueKey,\n navigateOptions,\n dropMenuVisible,\n focus,\n\n reference,\n input,\n tooltipRef,\n popperPaneRef,\n tags,\n selectWrapper,\n scrollbar,\n\n wrapperKls,\n selectTagsStyle,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElInput","ElSelectMenu","ElOption","ElTag","ElScrollbar","ElTooltip","ElIcon","ClickOutside","isValidComponentSize","CircleClose","ArrowUp","UPDATE_MODEL_EVENT","CHANGE_EVENT","useLocale","useSelectStates","useSelect","useFocus","toRefs","computed","unref","selectKey","reactive","_withDirectives","_withKeys"],"mappings":"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"}
@@ -90,6 +90,7 @@ const _sfc_main = vue.defineComponent({
90
90
  };
91
91
  },
92
92
  render(_ctx, _cache) {
93
+ var _a;
93
94
  const {
94
95
  $slots,
95
96
  data,
@@ -116,7 +117,7 @@ const _sfc_main = vue.defineComponent({
116
117
  style: {
117
118
  width: `${width}px`
118
119
  }
119
- }, $slots.empty?.());
120
+ }, (_a = $slots.empty) == null ? void 0 : _a.call($slots));
120
121
  }
121
122
  const ListItem = vue.withCtx((scoped) => {
122
123
  const { index, data: data2 } = scoped;
@@ -1 +1 @@
1
- {"version":3,"file":"select-dropdown.js","sources":["../../../../../../packages/components/select-v2/src/select-dropdown.vue"],"sourcesContent":["<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n inject,\n ref,\n renderSlot,\n h,\n withCtx,\n withKeys,\n withModifiers,\n} from 'vue'\nimport { getValueByPath, isUndefined, isObject } from '@element-plus/utils/util'\n// import { addResizeListener, removeResizeListener, ResizableElement } from '@element-plus/utils/resize-event'\nimport {\n FixedSizeList,\n DynamicSizeList,\n} from '@element-plus/components/virtual-list'\nimport GroupItem from './group-item.vue'\nimport OptionItem from './option-item.vue'\n\nimport { selectV2InjectionKey } from './token'\n\nimport type { ItemProps } from '@element-plus/components/virtual-list'\nimport type { OptionItemProps, Option } from './select.types'\n\nexport default defineComponent({\n name: 'ElSelectDropdown',\n\n props: {\n data: Array,\n hoveringIndex: Number,\n width: Number,\n },\n setup(props) {\n const select = inject(selectV2InjectionKey) as any\n const cachedHeights = ref<Array<number>>([])\n\n const listRef = ref(null)\n\n const isSized = computed(() =>\n isUndefined(select.props.estimatedOptionHeight)\n )\n const listProps = computed(() => {\n if (isSized.value) {\n return {\n itemSize: select.props.itemHeight,\n }\n }\n\n return {\n estimatedSize: select.props.estimatedOptionHeight,\n itemSize: (idx: number) => cachedHeights.value[idx],\n }\n })\n\n const contains = (arr: Array<any> = [], target: any) => {\n const {\n props: { valueKey },\n } = select\n\n if (!isObject(target)) {\n return arr.includes(target)\n }\n\n return (\n arr &&\n arr.some((item) => {\n return (\n getValueByPath(item, valueKey) === getValueByPath(target, valueKey)\n )\n })\n )\n }\n const isEqual = (selected: unknown, target: unknown) => {\n if (!isObject(target)) {\n return selected === target\n } else {\n const { valueKey } = select.props\n return (\n getValueByPath(selected, valueKey) ===\n getValueByPath(target, valueKey)\n )\n }\n }\n\n const isItemSelected = (modelValue: any[] | any, target: Option) => {\n if (select.props.multiple) {\n return contains(modelValue, target.value)\n }\n return isEqual(modelValue, target.value)\n }\n\n const isItemDisabled = (modelValue: any[] | any, selected: boolean) => {\n const { disabled, multiple, multipleLimit } = select.props\n return (\n disabled ||\n (!selected &&\n (multiple\n ? multipleLimit > 0 && modelValue.length >= multipleLimit\n : false))\n )\n }\n\n const isItemHovering = (target: number) => props.hoveringIndex === target\n\n const scrollToItem = (index: number) => {\n const list = listRef.value as any\n if (list) {\n list.scrollToItem(index)\n }\n }\n\n const resetScrollTop = () => {\n const list = listRef.value as any\n if (list) {\n list.resetScrollTop()\n }\n }\n\n // computed\n return {\n select,\n listProps,\n listRef,\n isSized,\n\n isItemDisabled,\n isItemHovering,\n isItemSelected,\n\n scrollToItem,\n resetScrollTop,\n }\n },\n\n render(_ctx, _cache) {\n const {\n $slots,\n\n data,\n listProps,\n select,\n isSized,\n width,\n // methods\n isItemDisabled,\n isItemHovering,\n isItemSelected,\n } = _ctx\n\n const Comp = isSized ? FixedSizeList : DynamicSizeList\n\n const {\n props: selectProps,\n onSelect,\n onHover,\n onKeyboardNavigate,\n onKeyboardSelect,\n } = select\n const { height, modelValue, multiple } = selectProps\n\n if (data.length === 0) {\n return h(\n 'div',\n {\n class: 'el-select-dropdown',\n style: {\n width: `${width}px`,\n },\n },\n $slots.empty?.()\n )\n }\n\n const ListItem = withCtx((scoped: ItemProps<any>) => {\n const { index, data } = scoped\n const item = data[index]\n // render group item which is not selectable.\n if (data[index].type === 'Group') {\n return h(GroupItem, {\n item,\n style: scoped.style,\n height: isSized ? listProps.itemSize : listProps.estimatedSize,\n })\n }\n\n const selected = isItemSelected(modelValue, item)\n const itemDisabled = isItemDisabled(modelValue, selected)\n // render option item which is selectable\n return h(\n OptionItem,\n {\n ...scoped,\n selected,\n disabled: item.disabled || itemDisabled,\n created: !!item.created,\n hovering: isItemHovering(index),\n item,\n onSelect,\n onHover,\n },\n {\n default: withCtx((props: OptionItemProps) => {\n return renderSlot($slots, 'default', props, () => [\n h('span', item.label),\n ])\n }),\n }\n )\n })\n\n const List = h(\n Comp,\n {\n ref: 'listRef', // forwarded ref so that select can access the list directly\n className: 'el-select-dropdown__list',\n data,\n height,\n width,\n total: data.length,\n scrollbarAlwaysOn: selectProps.scrollbarAlwaysOn,\n onKeydown: [\n _cache[1] ||\n (_cache[1] = withKeys(\n withModifiers(\n () => onKeyboardNavigate('forward'),\n ['stop', 'prevent']\n ),\n ['down']\n )),\n _cache[2] ||\n (_cache[2] = withKeys(\n withModifiers(\n () => onKeyboardNavigate('backward'),\n ['stop', 'prevent']\n ),\n ['up']\n )),\n _cache[3] ||\n (_cache[3] = withKeys(\n withModifiers(onKeyboardSelect, ['stop', 'prevent']),\n ['enter']\n )),\n\n _cache[4] ||\n (_cache[4] = withKeys(\n withModifiers(\n () => (select.expanded = false),\n ['stop', 'prevent']\n ),\n ['esc']\n )),\n _cache[5] ||\n (_cache[5] = withKeys(() => (select.expanded = false), ['tab'])),\n // _cache[6] || (_cache[6] = () => {\n // console.log(11)\n // }),\n ],\n ...listProps,\n },\n {\n default: ListItem,\n }\n )\n return h(\n 'div',\n {\n class: {\n 'is-multiple': multiple,\n 'el-select-dropdown': true,\n },\n },\n [List]\n )\n },\n})\n</script>\n"],"names":["defineComponent","inject","selectV2InjectionKey","ref","computed","isUndefined","isObject","getValueByPath","FixedSizeList","DynamicSizeList","h","withCtx","GroupItem","OptionItem","renderSlot","withKeys","withModifiers"],"mappings":"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"}
1
+ {"version":3,"file":"select-dropdown.js","sources":["../../../../../../packages/components/select-v2/src/select-dropdown.vue"],"sourcesContent":["<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n inject,\n ref,\n renderSlot,\n h,\n withCtx,\n withKeys,\n withModifiers,\n} from 'vue'\nimport { getValueByPath, isUndefined, isObject } from '@element-plus/utils/util'\n// import { addResizeListener, removeResizeListener, ResizableElement } from '@element-plus/utils/resize-event'\nimport {\n FixedSizeList,\n DynamicSizeList,\n} from '@element-plus/components/virtual-list'\nimport GroupItem from './group-item.vue'\nimport OptionItem from './option-item.vue'\n\nimport { selectV2InjectionKey } from './token'\n\nimport type { ItemProps } from '@element-plus/components/virtual-list'\nimport type { OptionItemProps, Option } from './select.types'\n\nexport default defineComponent({\n name: 'ElSelectDropdown',\n\n props: {\n data: Array,\n hoveringIndex: Number,\n width: Number,\n },\n setup(props) {\n const select = inject(selectV2InjectionKey) as any\n const cachedHeights = ref<Array<number>>([])\n\n const listRef = ref(null)\n\n const isSized = computed(() =>\n isUndefined(select.props.estimatedOptionHeight)\n )\n const listProps = computed(() => {\n if (isSized.value) {\n return {\n itemSize: select.props.itemHeight,\n }\n }\n\n return {\n estimatedSize: select.props.estimatedOptionHeight,\n itemSize: (idx: number) => cachedHeights.value[idx],\n }\n })\n\n const contains = (arr: Array<any> = [], target: any) => {\n const {\n props: { valueKey },\n } = select\n\n if (!isObject(target)) {\n return arr.includes(target)\n }\n\n return (\n arr &&\n arr.some((item) => {\n return (\n getValueByPath(item, valueKey) === getValueByPath(target, valueKey)\n )\n })\n )\n }\n const isEqual = (selected: unknown, target: unknown) => {\n if (!isObject(target)) {\n return selected === target\n } else {\n const { valueKey } = select.props\n return (\n getValueByPath(selected, valueKey) ===\n getValueByPath(target, valueKey)\n )\n }\n }\n\n const isItemSelected = (modelValue: any[] | any, target: Option) => {\n if (select.props.multiple) {\n return contains(modelValue, target.value)\n }\n return isEqual(modelValue, target.value)\n }\n\n const isItemDisabled = (modelValue: any[] | any, selected: boolean) => {\n const { disabled, multiple, multipleLimit } = select.props\n return (\n disabled ||\n (!selected &&\n (multiple\n ? multipleLimit > 0 && modelValue.length >= multipleLimit\n : false))\n )\n }\n\n const isItemHovering = (target: number) => props.hoveringIndex === target\n\n const scrollToItem = (index: number) => {\n const list = listRef.value as any\n if (list) {\n list.scrollToItem(index)\n }\n }\n\n const resetScrollTop = () => {\n const list = listRef.value as any\n if (list) {\n list.resetScrollTop()\n }\n }\n\n // computed\n return {\n select,\n listProps,\n listRef,\n isSized,\n\n isItemDisabled,\n isItemHovering,\n isItemSelected,\n\n scrollToItem,\n resetScrollTop,\n }\n },\n\n render(_ctx, _cache) {\n const {\n $slots,\n\n data,\n listProps,\n select,\n isSized,\n width,\n // methods\n isItemDisabled,\n isItemHovering,\n isItemSelected,\n } = _ctx\n\n const Comp = isSized ? FixedSizeList : DynamicSizeList\n\n const {\n props: selectProps,\n onSelect,\n onHover,\n onKeyboardNavigate,\n onKeyboardSelect,\n } = select\n const { height, modelValue, multiple } = selectProps\n\n if (data.length === 0) {\n return h(\n 'div',\n {\n class: 'el-select-dropdown',\n style: {\n width: `${width}px`,\n },\n },\n $slots.empty?.()\n )\n }\n\n const ListItem = withCtx((scoped: ItemProps<any>) => {\n const { index, data } = scoped\n const item = data[index]\n // render group item which is not selectable.\n if (data[index].type === 'Group') {\n return h(GroupItem, {\n item,\n style: scoped.style,\n height: isSized ? listProps.itemSize : listProps.estimatedSize,\n })\n }\n\n const selected = isItemSelected(modelValue, item)\n const itemDisabled = isItemDisabled(modelValue, selected)\n // render option item which is selectable\n return h(\n OptionItem,\n {\n ...scoped,\n selected,\n disabled: item.disabled || itemDisabled,\n created: !!item.created,\n hovering: isItemHovering(index),\n item,\n onSelect,\n onHover,\n },\n {\n default: withCtx((props: OptionItemProps) => {\n return renderSlot($slots, 'default', props, () => [\n h('span', item.label),\n ])\n }),\n }\n )\n })\n\n const List = h(\n Comp,\n {\n ref: 'listRef', // forwarded ref so that select can access the list directly\n className: 'el-select-dropdown__list',\n data,\n height,\n width,\n total: data.length,\n scrollbarAlwaysOn: selectProps.scrollbarAlwaysOn,\n onKeydown: [\n _cache[1] ||\n (_cache[1] = withKeys(\n withModifiers(\n () => onKeyboardNavigate('forward'),\n ['stop', 'prevent']\n ),\n ['down']\n )),\n _cache[2] ||\n (_cache[2] = withKeys(\n withModifiers(\n () => onKeyboardNavigate('backward'),\n ['stop', 'prevent']\n ),\n ['up']\n )),\n _cache[3] ||\n (_cache[3] = withKeys(\n withModifiers(onKeyboardSelect, ['stop', 'prevent']),\n ['enter']\n )),\n\n _cache[4] ||\n (_cache[4] = withKeys(\n withModifiers(\n () => (select.expanded = false),\n ['stop', 'prevent']\n ),\n ['esc']\n )),\n _cache[5] ||\n (_cache[5] = withKeys(() => (select.expanded = false), ['tab'])),\n // _cache[6] || (_cache[6] = () => {\n // console.log(11)\n // }),\n ],\n ...listProps,\n },\n {\n default: ListItem,\n }\n )\n return h(\n 'div',\n {\n class: {\n 'is-multiple': multiple,\n 'el-select-dropdown': true,\n },\n },\n [List]\n )\n },\n})\n</script>\n"],"names":["defineComponent","inject","selectV2InjectionKey","ref","computed","isUndefined","isObject","getValueByPath","withCtx","withKeys","withModifiers"],"mappings":"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"}