@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
@@ -22,15 +22,19 @@ const rateProps = buildProps({
22
22
  },
23
23
  colors: {
24
24
  type: definePropType([Array, Object]),
25
- default: () => mutable(["#F7BA2A", "#F7BA2A", "#F7BA2A"])
25
+ default: () => mutable([
26
+ "var(--el-rate-star-color)",
27
+ "var(--el-rate-star-color)",
28
+ "var(--el-rate-star-color)"
29
+ ])
26
30
  },
27
31
  voidColor: {
28
32
  type: String,
29
- default: "#C6D1DE"
33
+ default: "var(--el-rate-void-color)"
30
34
  },
31
35
  disabledVoidColor: {
32
36
  type: String,
33
- default: "#EFF2F7"
37
+ default: "var(--el-rate-disable-void-color)"
34
38
  },
35
39
  icons: {
36
40
  type: definePropType([Array, Object]),
@@ -62,7 +66,7 @@ const rateProps = buildProps({
62
66
  },
63
67
  textColor: {
64
68
  type: String,
65
- default: "#1f2d3d"
69
+ default: "var(--el-rate-text-color)"
66
70
  },
67
71
  texts: {
68
72
  type: definePropType(Array),
@@ -1 +1 @@
1
- {"version":3,"file":"rate.mjs","sources":["../../../../../../packages/components/rate/src/rate.ts"],"sourcesContent":["import { Star, StarFilled } from '@element-plus/icons-vue'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/utils/constants'\nimport { buildProps, definePropType, mutable } from '@element-plus/utils/props'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type { Component, ExtractPropTypes, PropType } from 'vue'\nimport type Rate from './rate.vue'\n\nexport const rateProps = buildProps({\n modelValue: {\n type: Number,\n default: 0,\n },\n lowThreshold: {\n type: Number,\n default: 2,\n },\n highThreshold: {\n type: Number,\n default: 4,\n },\n max: {\n type: Number,\n default: 5,\n },\n colors: {\n type: definePropType<string[] | Record<number, string>>([Array, Object]),\n default: () => mutable(['#F7BA2A', '#F7BA2A', '#F7BA2A'] as const),\n },\n voidColor: {\n type: String,\n default: '#C6D1DE',\n },\n disabledVoidColor: {\n type: String,\n default: '#EFF2F7',\n },\n icons: {\n type: definePropType<\n Array<string | Component> | Record<number, string | Component>\n >([Array, Object]),\n default: () => [StarFilled, StarFilled, StarFilled],\n },\n voidIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: () => Star,\n },\n disabledvoidIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: () => StarFilled,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n allowHalf: {\n type: Boolean,\n default: false,\n },\n showText: {\n type: Boolean,\n default: false,\n },\n showScore: {\n type: Boolean,\n default: false,\n },\n textColor: {\n type: String,\n default: '#1f2d3d',\n },\n texts: {\n type: definePropType<string[]>(Array),\n default: () =>\n mutable([\n 'Extremely bad',\n 'Disappointed',\n 'Fair',\n 'Satisfied',\n 'Surprise',\n ] as const),\n },\n scoreTemplate: {\n type: String,\n default: '{value}',\n },\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n} as const)\n\nexport type RateProps = ExtractPropTypes<typeof rateProps>\n\nexport const rateEmits = {\n change: (value: number) => typeof value === 'number',\n [UPDATE_MODEL_EVENT]: (value: number) => typeof value === 'number',\n}\nexport type RateEmits = typeof rateEmits\n\nexport type RateInstance = InstanceType<typeof Rate>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rate.mjs","sources":["../../../../../../packages/components/rate/src/rate.ts"],"sourcesContent":["import { Star, StarFilled } from '@element-plus/icons-vue'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/utils/constants'\nimport { buildProps, definePropType, mutable } from '@element-plus/utils/props'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type { Component, ExtractPropTypes, PropType } from 'vue'\nimport type Rate from './rate.vue'\n\nexport const rateProps = buildProps({\n modelValue: {\n type: Number,\n default: 0,\n },\n lowThreshold: {\n type: Number,\n default: 2,\n },\n highThreshold: {\n type: Number,\n default: 4,\n },\n max: {\n type: Number,\n default: 5,\n },\n colors: {\n type: definePropType<string[] | Record<number, string>>([Array, Object]),\n default: () =>\n mutable([\n 'var(--el-rate-star-color)',\n 'var(--el-rate-star-color)',\n 'var(--el-rate-star-color)',\n ] as const),\n },\n voidColor: {\n type: String,\n default: 'var(--el-rate-void-color)',\n },\n disabledVoidColor: {\n type: String,\n default: 'var(--el-rate-disable-void-color)',\n },\n icons: {\n type: definePropType<\n Array<string | Component> | Record<number, string | Component>\n >([Array, Object]),\n default: () => [StarFilled, StarFilled, StarFilled],\n },\n voidIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: () => Star,\n },\n disabledvoidIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: () => StarFilled,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n allowHalf: {\n type: Boolean,\n default: false,\n },\n showText: {\n type: Boolean,\n default: false,\n },\n showScore: {\n type: Boolean,\n default: false,\n },\n textColor: {\n type: String,\n default: 'var(--el-rate-text-color)',\n },\n texts: {\n type: definePropType<string[]>(Array),\n default: () =>\n mutable([\n 'Extremely bad',\n 'Disappointed',\n 'Fair',\n 'Satisfied',\n 'Surprise',\n ] as const),\n },\n scoreTemplate: {\n type: String,\n default: '{value}',\n },\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n} as const)\n\nexport type RateProps = ExtractPropTypes<typeof rateProps>\n\nexport const rateEmits = {\n change: (value: number) => typeof value === 'number',\n [UPDATE_MODEL_EVENT]: (value: number) => typeof value === 'number',\n}\nexport type RateEmits = typeof rateEmits\n\nexport type RateInstance = InstanceType<typeof Rate>\n"],"names":[],"mappings":"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"}
@@ -3,9 +3,9 @@ declare const _default: import("vue").DefineComponent<{
3
3
  readonly lowThreshold: import("../../../utils/props").BuildPropReturn<NumberConstructor, 2, unknown, unknown, unknown>;
4
4
  readonly highThreshold: import("../../../utils/props").BuildPropReturn<NumberConstructor, 4, unknown, unknown, unknown>;
5
5
  readonly max: import("../../../utils/props").BuildPropReturn<NumberConstructor, 5, unknown, unknown, unknown>;
6
- readonly colors: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<string[] | Record<number, string>>, () => ["#F7BA2A", "#F7BA2A", "#F7BA2A"], unknown, unknown, unknown>;
7
- readonly voidColor: import("../../../utils/props").BuildPropReturn<StringConstructor, "#C6D1DE", unknown, unknown, unknown>;
8
- readonly disabledVoidColor: import("../../../utils/props").BuildPropReturn<StringConstructor, "#EFF2F7", unknown, unknown, unknown>;
6
+ readonly colors: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<string[] | Record<number, string>>, () => ["var(--el-rate-star-color)", "var(--el-rate-star-color)", "var(--el-rate-star-color)"], unknown, unknown, unknown>;
7
+ readonly voidColor: import("../../../utils/props").BuildPropReturn<StringConstructor, "var(--el-rate-void-color)", unknown, unknown, unknown>;
8
+ readonly disabledVoidColor: import("../../../utils/props").BuildPropReturn<StringConstructor, "var(--el-rate-disable-void-color)", unknown, unknown, unknown>;
9
9
  readonly icons: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<(string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>)[] | Record<number, string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>>, () => import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>[], unknown, unknown, unknown>;
10
10
  readonly voidIcon: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>, () => import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>, unknown, unknown, unknown>;
11
11
  readonly disabledvoidIcon: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>, () => import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>, unknown, unknown, unknown>;
@@ -13,7 +13,7 @@ declare const _default: import("vue").DefineComponent<{
13
13
  readonly allowHalf: import("../../../utils/props").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
14
14
  readonly showText: import("../../../utils/props").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
15
15
  readonly showScore: import("../../../utils/props").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
16
- readonly textColor: import("../../../utils/props").BuildPropReturn<StringConstructor, "#1f2d3d", unknown, unknown, unknown>;
16
+ readonly textColor: import("../../../utils/props").BuildPropReturn<StringConstructor, "var(--el-rate-text-color)", unknown, unknown, unknown>;
17
17
  readonly texts: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<string[]>, () => ["Extremely bad", "Disappointed", "Fair", "Satisfied", "Surprise"], unknown, unknown, unknown>;
18
18
  readonly scoreTemplate: import("../../../utils/props").BuildPropReturn<StringConstructor, "{value}", unknown, unknown, unknown>;
19
19
  readonly size: import("../../../utils/props").BuildPropReturn<(new (...args: any[]) => import("../../../utils/types").ComponentSize & {}) | (() => import("../../../utils/types").ComponentSize) | ((new (...args: any[]) => import("../../../utils/types").ComponentSize & {}) | (() => import("../../../utils/types").ComponentSize))[], unknown, unknown, unknown, unknown>;
@@ -75,9 +75,9 @@ declare const _default: import("vue").DefineComponent<{
75
75
  readonly lowThreshold: import("../../../utils/props").BuildPropReturn<NumberConstructor, 2, unknown, unknown, unknown>;
76
76
  readonly highThreshold: import("../../../utils/props").BuildPropReturn<NumberConstructor, 4, unknown, unknown, unknown>;
77
77
  readonly max: import("../../../utils/props").BuildPropReturn<NumberConstructor, 5, unknown, unknown, unknown>;
78
- readonly colors: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<string[] | Record<number, string>>, () => ["#F7BA2A", "#F7BA2A", "#F7BA2A"], unknown, unknown, unknown>;
79
- readonly voidColor: import("../../../utils/props").BuildPropReturn<StringConstructor, "#C6D1DE", unknown, unknown, unknown>;
80
- readonly disabledVoidColor: import("../../../utils/props").BuildPropReturn<StringConstructor, "#EFF2F7", unknown, unknown, unknown>;
78
+ readonly colors: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<string[] | Record<number, string>>, () => ["var(--el-rate-star-color)", "var(--el-rate-star-color)", "var(--el-rate-star-color)"], unknown, unknown, unknown>;
79
+ readonly voidColor: import("../../../utils/props").BuildPropReturn<StringConstructor, "var(--el-rate-void-color)", unknown, unknown, unknown>;
80
+ readonly disabledVoidColor: import("../../../utils/props").BuildPropReturn<StringConstructor, "var(--el-rate-disable-void-color)", unknown, unknown, unknown>;
81
81
  readonly icons: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<(string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>)[] | Record<number, string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>>, () => import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>[], unknown, unknown, unknown>;
82
82
  readonly voidIcon: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>, () => import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>, unknown, unknown, unknown>;
83
83
  readonly disabledvoidIcon: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>, () => import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>, unknown, unknown, unknown>;
@@ -85,7 +85,7 @@ declare const _default: import("vue").DefineComponent<{
85
85
  readonly allowHalf: import("../../../utils/props").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
86
86
  readonly showText: import("../../../utils/props").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
87
87
  readonly showScore: import("../../../utils/props").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
88
- readonly textColor: import("../../../utils/props").BuildPropReturn<StringConstructor, "#1f2d3d", unknown, unknown, unknown>;
88
+ readonly textColor: import("../../../utils/props").BuildPropReturn<StringConstructor, "var(--el-rate-text-color)", unknown, unknown, unknown>;
89
89
  readonly texts: import("../../../utils/props").BuildPropReturn<import("../../../utils/props").PropWrapper<string[]>, () => ["Extremely bad", "Disappointed", "Fair", "Satisfied", "Surprise"], unknown, unknown, unknown>;
90
90
  readonly scoreTemplate: import("../../../utils/props").BuildPropReturn<StringConstructor, "{value}", unknown, unknown, unknown>;
91
91
  readonly size: import("../../../utils/props").BuildPropReturn<(new (...args: any[]) => import("../../../utils/types").ComponentSize & {}) | (() => import("../../../utils/types").ComponentSize) | ((new (...args: any[]) => import("../../../utils/types").ComponentSize & {}) | (() => import("../../../utils/types").ComponentSize))[], unknown, unknown, unknown, unknown>;
@@ -14,7 +14,8 @@ const _sfc_main = defineComponent({
14
14
  props: rovingFocusGroupProps,
15
15
  emits: [CURRENT_TAB_ID_CHANGE_EVT, "entryFocus"],
16
16
  setup(props, { emit }) {
17
- const currentTabbedId = ref((props.currentTabId || props.defaultCurrentTabId) ?? null);
17
+ var _a;
18
+ const currentTabbedId = ref((_a = props.currentTabId || props.defaultCurrentTabId) != null ? _a : null);
18
19
  const isBackingOut = ref(false);
19
20
  const isClickFocus = ref(false);
20
21
  const rovingFocusGroupRef = ref(null);
@@ -34,18 +35,20 @@ const _sfc_main = defineComponent({
34
35
  isBackingOut.value = true;
35
36
  };
36
37
  const onMousedown = composeEventHandlers((e) => {
37
- props.onMousedown?.(e);
38
+ var _a2;
39
+ (_a2 = props.onMousedown) == null ? void 0 : _a2.call(props, e);
38
40
  }, () => {
39
41
  isClickFocus.value = true;
40
42
  });
41
43
  const onFocus = composeEventHandlers((e) => {
42
- props.onFocus?.(e);
44
+ var _a2;
45
+ (_a2 = props.onFocus) == null ? void 0 : _a2.call(props, e);
43
46
  }, (e) => {
44
47
  const isKeyboardFocus = !unref(isClickFocus);
45
48
  const { target, currentTarget } = e;
46
49
  if (target === currentTarget && isKeyboardFocus && !unref(isBackingOut)) {
47
50
  const entryFocusEvt = new Event(ENTRY_FOCUS_EVT, EVT_OPTS);
48
- currentTarget?.dispatchEvent(entryFocusEvt);
51
+ currentTarget == null ? void 0 : currentTarget.dispatchEvent(entryFocusEvt);
49
52
  if (!entryFocusEvt.defaultPrevented) {
50
53
  const items = getItems().filter((item) => item.focusable);
51
54
  const activeItem = items.find((item) => item.active);
@@ -58,7 +61,8 @@ const _sfc_main = defineComponent({
58
61
  isClickFocus.value = false;
59
62
  });
60
63
  const onBlur = composeEventHandlers((e) => {
61
- props.onBlur?.(e);
64
+ var _a2;
65
+ (_a2 = props.onBlur) == null ? void 0 : _a2.call(props, e);
62
66
  }, () => {
63
67
  isBackingOut.value = false;
64
68
  });
@@ -82,7 +86,7 @@ const _sfc_main = defineComponent({
82
86
  onMousedown
83
87
  });
84
88
  watch(() => props.currentTabId, (val) => {
85
- currentTabbedId.value = val ?? null;
89
+ currentTabbedId.value = val != null ? val : null;
86
90
  });
87
91
  onMounted(() => {
88
92
  const rovingFocusGroupEl = unref(rovingFocusGroupRef);
@@ -1 +1 @@
1
- {"version":3,"file":"roving-focus-group-impl.mjs","sources":["../../../../../../packages/components/roving-focus-group/src/roving-focus-group-impl.vue"],"sourcesContent":["<template>\n <slot />\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n provide,\n onBeforeUnmount,\n onMounted,\n ref,\n unref,\n inject,\n watch,\n readonly,\n toRef,\n} from 'vue'\nimport { composeEventHandlers, on, off } from '@element-plus/utils/dom'\nimport {\n rovingFocusGroupProps,\n ROVING_FOCUS_COLLECTION_INJECTION_KEY,\n} from './roving-focus-group'\nimport { ROVING_FOCUS_GROUP_INJECTION_KEY } from './tokens'\nimport { focusFirst } from './utils'\n\nimport type { StyleValue } from 'vue'\n\nconst CURRENT_TAB_ID_CHANGE_EVT = 'currentTabIdChange'\n\nconst ENTRY_FOCUS_EVT = 'rovingFocusGroup.entryFocus'\nconst EVT_OPTS: EventInit = { bubbles: false, cancelable: true }\nexport default defineComponent({\n name: 'ElRovingFocusGroupImpl',\n inheritAttrs: false,\n props: rovingFocusGroupProps,\n emits: [CURRENT_TAB_ID_CHANGE_EVT, 'entryFocus'],\n setup(props, { emit }) {\n const currentTabbedId = ref<string | null>(\n (props.currentTabId || props.defaultCurrentTabId) ?? null\n )\n const isBackingOut = ref(false)\n const isClickFocus = ref(false)\n const rovingFocusGroupRef = ref<HTMLElement | null>(null)\n const { getItems } = inject(\n ROVING_FOCUS_COLLECTION_INJECTION_KEY,\n undefined\n )!\n const rovingFocusGroupRootStyle = computed(() => {\n // casting to any for fix compiler error since HTMLElement.StyleValue does not\n // support CSSProperties\n return [\n {\n outline: 'none',\n },\n props.style as StyleValue,\n ] as any\n })\n\n const onItemFocus = (tabbedId: string) => {\n emit(CURRENT_TAB_ID_CHANGE_EVT, tabbedId)\n }\n\n const onItemShiftTab = () => {\n isBackingOut.value = true\n }\n\n const onMousedown = composeEventHandlers(\n (e: Event) => {\n props.onMousedown?.(e)\n },\n () => {\n isClickFocus.value = true\n }\n )\n\n const onFocus = composeEventHandlers(\n (e: FocusEvent) => {\n props.onFocus?.(e)\n },\n (e) => {\n const isKeyboardFocus = !unref(isClickFocus)\n const { target, currentTarget } = e\n if (\n target === currentTarget &&\n isKeyboardFocus &&\n !unref(isBackingOut)\n ) {\n const entryFocusEvt = new Event(ENTRY_FOCUS_EVT, EVT_OPTS)\n currentTarget?.dispatchEvent(entryFocusEvt)\n\n if (!entryFocusEvt.defaultPrevented) {\n const items = getItems<{\n id: string\n focusable: boolean\n active: boolean\n }>().filter((item) => item.focusable)\n const activeItem = items.find((item) => item.active)\n const currentItem = items.find(\n (item) => item.id === unref(currentTabbedId)\n )\n const candidates = [activeItem!, currentItem!, ...items].filter(\n Boolean\n )\n const candidateNodes = candidates.map((item) => item.ref!)\n focusFirst(candidateNodes)\n }\n }\n\n isClickFocus.value = false\n }\n )\n\n const onBlur = composeEventHandlers(\n (e: Event) => {\n props.onBlur?.(e)\n },\n () => {\n isBackingOut.value = false\n }\n )\n\n const handleEntryFocus = (...args: any[]) => {\n emit('entryFocus', ...args)\n }\n\n provide(ROVING_FOCUS_GROUP_INJECTION_KEY, {\n currentTabbedId: readonly(currentTabbedId),\n loop: toRef(props, 'loop'),\n tabIndex: computed(() => {\n return unref(isBackingOut) ? -1 : 0\n }),\n rovingFocusGroupRef,\n rovingFocusGroupRootStyle,\n orientation: toRef(props, 'orientation'),\n dir: toRef(props, 'dir'),\n onItemFocus,\n onItemShiftTab,\n onBlur,\n onFocus,\n onMousedown,\n })\n\n watch(\n () => props.currentTabId,\n (val) => {\n currentTabbedId.value = val ?? null\n }\n )\n\n onMounted(() => {\n const rovingFocusGroupEl = unref(rovingFocusGroupRef)!\n on(rovingFocusGroupEl, ENTRY_FOCUS_EVT, handleEntryFocus)\n })\n\n onBeforeUnmount(() => {\n const rovingFocusGroupEl = unref(rovingFocusGroupRef)!\n off(rovingFocusGroupEl, ENTRY_FOCUS_EVT, handleEntryFocus)\n })\n },\n})\n</script>\n"],"names":["ROVING_FOCUS_COLLECTION_INJECTION_KEY"],"mappings":";;;;;;;AA4BA,MAAM,4BAA4B;AAElC,MAAM,kBAAkB;AACxB,MAAM,WAAsB,EAAE,SAAS,OAAO,YAAY;AAC1D,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,cAAc;AAAA,EACd,OAAO;AAAA,EACP,OAAO,CAAC,2BAA2B;AAAA,EACnC,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,kBAAkB,IACrB,OAAM,gBAAgB,MAAM,wBAAwB;AAEvD,UAAM,eAAe,IAAI;AACzB,UAAM,eAAe,IAAI;AACzB,UAAM,sBAAsB,IAAwB;AACpD,UAAM,EAAE,aAAa,OACnBA,0BACA;AAEF,UAAM,4BAA4B,SAAS,MAAM;AAG/C,aAAO;AAAA,QACL;AAAA,UACE,SAAS;AAAA;AAAA,QAEX,MAAM;AAAA;AAAA;AAIV,UAAM,cAAc,CAAC,aAAqB;AACxC,WAAK,2BAA2B;AAAA;AAGlC,UAAM,iBAAiB,MAAM;AAC3B,mBAAa,QAAQ;AAAA;AAGvB,UAAM,cAAc,qBAClB,CAAC,MAAa;AACZ,YAAM,cAAc;AAAA,OAEtB,MAAM;AACJ,mBAAa,QAAQ;AAAA;AAIzB,UAAM,UAAU,qBACd,CAAC,MAAkB;AACjB,YAAM,UAAU;AAAA,OAElB,CAAC,MAAM;AACL,YAAM,kBAAkB,CAAC,MAAM;AAC/B,YAAM,EAAE,QAAQ,kBAAkB;AAClC,UACE,WAAW,iBACX,mBACA,CAAC,MAAM,eACP;AACA,cAAM,gBAAgB,IAAI,MAAM,iBAAiB;AACjD,uBAAe,cAAc;AAE7B,YAAI,CAAC,cAAc,kBAAkB;AACnC,gBAAM,QAAQ,WAIT,OAAO,CAAC,SAAS,KAAK;AAC3B,gBAAM,aAAa,MAAM,KAAK,CAAC,SAAS,KAAK;AAC7C,gBAAM,cAAc,MAAM,KACxB,CAAC,SAAS,KAAK,OAAO,MAAM;AAE9B,gBAAM,aAAa,CAAC,YAAa,aAAc,GAAG,OAAO,OACvD;AAEF,gBAAM,iBAAiB,WAAW,IAAI,CAAC,SAAS,KAAK;AACrD,qBAAW;AAAA;AAAA;AAIf,mBAAa,QAAQ;AAAA;AAIzB,UAAM,SAAS,qBACb,CAAC,MAAa;AACZ,YAAM,SAAS;AAAA,OAEjB,MAAM;AACJ,mBAAa,QAAQ;AAAA;AAIzB,UAAM,mBAAmB,IAAI,SAAgB;AAC3C,WAAK,cAAc,GAAG;AAAA;AAGxB,YAAQ,kCAAkC;AAAA,MACxC,iBAAiB,SAAS;AAAA,MAC1B,MAAM,MAAM,OAAO;AAAA,MACnB,UAAU,SAAS,MAAM;AACvB,eAAO,MAAM,gBAAgB,KAAK;AAAA;AAAA,MAEpC;AAAA,MACA;AAAA,MACA,aAAa,MAAM,OAAO;AAAA,MAC1B,KAAK,MAAM,OAAO;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAGF,UACE,MAAM,MAAM,cACZ,CAAC,QAAQ;AACP,sBAAgB,QAAQ,OAAO;AAAA;AAInC,cAAU,MAAM;AACd,YAAM,qBAAqB,MAAM;AACjC,SAAG,oBAAoB,iBAAiB;AAAA;AAG1C,oBAAgB,MAAM;AACpB,YAAM,qBAAqB,MAAM;AACjC,UAAI,oBAAoB,iBAAiB;AAAA;AAAA;AAAA;qBA5JrC;;;;;;;"}
1
+ {"version":3,"file":"roving-focus-group-impl.mjs","sources":["../../../../../../packages/components/roving-focus-group/src/roving-focus-group-impl.vue"],"sourcesContent":["<template>\n <slot />\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n provide,\n onBeforeUnmount,\n onMounted,\n ref,\n unref,\n inject,\n watch,\n readonly,\n toRef,\n} from 'vue'\nimport { composeEventHandlers, on, off } from '@element-plus/utils/dom'\nimport {\n rovingFocusGroupProps,\n ROVING_FOCUS_COLLECTION_INJECTION_KEY,\n} from './roving-focus-group'\nimport { ROVING_FOCUS_GROUP_INJECTION_KEY } from './tokens'\nimport { focusFirst } from './utils'\n\nimport type { StyleValue } from 'vue'\n\nconst CURRENT_TAB_ID_CHANGE_EVT = 'currentTabIdChange'\n\nconst ENTRY_FOCUS_EVT = 'rovingFocusGroup.entryFocus'\nconst EVT_OPTS: EventInit = { bubbles: false, cancelable: true }\nexport default defineComponent({\n name: 'ElRovingFocusGroupImpl',\n inheritAttrs: false,\n props: rovingFocusGroupProps,\n emits: [CURRENT_TAB_ID_CHANGE_EVT, 'entryFocus'],\n setup(props, { emit }) {\n const currentTabbedId = ref<string | null>(\n (props.currentTabId || props.defaultCurrentTabId) ?? null\n )\n const isBackingOut = ref(false)\n const isClickFocus = ref(false)\n const rovingFocusGroupRef = ref<HTMLElement | null>(null)\n const { getItems } = inject(\n ROVING_FOCUS_COLLECTION_INJECTION_KEY,\n undefined\n )!\n const rovingFocusGroupRootStyle = computed(() => {\n // casting to any for fix compiler error since HTMLElement.StyleValue does not\n // support CSSProperties\n return [\n {\n outline: 'none',\n },\n props.style as StyleValue,\n ] as any\n })\n\n const onItemFocus = (tabbedId: string) => {\n emit(CURRENT_TAB_ID_CHANGE_EVT, tabbedId)\n }\n\n const onItemShiftTab = () => {\n isBackingOut.value = true\n }\n\n const onMousedown = composeEventHandlers(\n (e: Event) => {\n props.onMousedown?.(e)\n },\n () => {\n isClickFocus.value = true\n }\n )\n\n const onFocus = composeEventHandlers(\n (e: FocusEvent) => {\n props.onFocus?.(e)\n },\n (e) => {\n const isKeyboardFocus = !unref(isClickFocus)\n const { target, currentTarget } = e\n if (\n target === currentTarget &&\n isKeyboardFocus &&\n !unref(isBackingOut)\n ) {\n const entryFocusEvt = new Event(ENTRY_FOCUS_EVT, EVT_OPTS)\n currentTarget?.dispatchEvent(entryFocusEvt)\n\n if (!entryFocusEvt.defaultPrevented) {\n const items = getItems<{\n id: string\n focusable: boolean\n active: boolean\n }>().filter((item) => item.focusable)\n const activeItem = items.find((item) => item.active)\n const currentItem = items.find(\n (item) => item.id === unref(currentTabbedId)\n )\n const candidates = [activeItem!, currentItem!, ...items].filter(\n Boolean\n )\n const candidateNodes = candidates.map((item) => item.ref!)\n focusFirst(candidateNodes)\n }\n }\n\n isClickFocus.value = false\n }\n )\n\n const onBlur = composeEventHandlers(\n (e: Event) => {\n props.onBlur?.(e)\n },\n () => {\n isBackingOut.value = false\n }\n )\n\n const handleEntryFocus = (...args: any[]) => {\n emit('entryFocus', ...args)\n }\n\n provide(ROVING_FOCUS_GROUP_INJECTION_KEY, {\n currentTabbedId: readonly(currentTabbedId),\n loop: toRef(props, 'loop'),\n tabIndex: computed(() => {\n return unref(isBackingOut) ? -1 : 0\n }),\n rovingFocusGroupRef,\n rovingFocusGroupRootStyle,\n orientation: toRef(props, 'orientation'),\n dir: toRef(props, 'dir'),\n onItemFocus,\n onItemShiftTab,\n onBlur,\n onFocus,\n onMousedown,\n })\n\n watch(\n () => props.currentTabId,\n (val) => {\n currentTabbedId.value = val ?? null\n }\n )\n\n onMounted(() => {\n const rovingFocusGroupEl = unref(rovingFocusGroupRef)!\n on(rovingFocusGroupEl, ENTRY_FOCUS_EVT, handleEntryFocus)\n })\n\n onBeforeUnmount(() => {\n const rovingFocusGroupEl = unref(rovingFocusGroupRef)!\n off(rovingFocusGroupEl, ENTRY_FOCUS_EVT, handleEntryFocus)\n })\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;AA4BA,MAAM,4BAA4B;AAElC,MAAM,kBAAkB;AACxB,MAAM,WAAsB,EAAE,SAAS,OAAO,YAAY;AAC1D,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,cAAc;AAAA,EACd,OAAO;AAAA,EACP,OAAO,CAAC,2BAA2B;AAAA,EACnC,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM;AAGN,UAAM,eAAe;AACrB,UAAM,eAAe,IAAI;AACzB,UAAM,0BAA8C;AACpD,UAAM,sBACJ;AAGF,UAAM;AAGJ;AAAO;AACL;AACW;AAAA;AAEL;AAAA;AAIV;AACE,sCAAgC;AAAA;AAGlC;AACE,2BAAqB;AAAA;AAGvB;AAEI;AAAoB,aAEhB;AACJ,mBAAa;AAAQ;AAIzB;AAEI;AAAgB;AAGhB;AACA;AACA;AAKE,8BAAsB;AACtB,qCAA6B;AAE7B;AACE,yDAI2B;AAC3B,6BAAmB,YAAY,cAAc;AAC7C;AAGA,gBAAM,0BAA2B;AAGjC,gBAAM,+CAA+C;AACrD;AAAW;AAAA;AAIf;AAAqB;AAIzB;AAEI;AAAe,OAEjB;AACE,mBAAa;AAAQ;AAIzB,UAAM,gCAAuC;AAC3C;AAAsB;AAGxB;AAA0C;AACd,MAC1B,mBAAmB;AAAA,MACnB;AACE;AAAkC;AAAA,MAEpC;AAAA,MACA;AAAA;AAC0B;AACR,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAGF;AAGI;AAA+B;AAInC;AACE;AACA;AAAwC;AAG1C,oBAAgB;AACd,YAAM,qBAAqB,MAAM;AACjC;AAAyC;AAAA;AAAA;;;;;;;;;;;;"}
@@ -30,10 +30,11 @@ const _sfc_main = defineComponent({
30
30
  }));
31
31
  const offsetRatio = computed(() => instance.value[bar.value.offset] ** 2 / scrollbar.wrapElement[bar.value.scrollSize] / props.ratio / thumb.value[bar.value.offset]);
32
32
  const clickThumbHandler = (e) => {
33
+ var _a;
33
34
  e.stopPropagation();
34
35
  if (e.ctrlKey || [1, 2].includes(e.button))
35
36
  return;
36
- window.getSelection()?.removeAllRanges();
37
+ (_a = window.getSelection()) == null ? void 0 : _a.removeAllRanges();
37
38
  startDrag(e);
38
39
  const el = e.currentTarget;
39
40
  if (!el)
@@ -1 +1 @@
1
- {"version":3,"file":"bar2.mjs","sources":["../../../../../../packages/components/scrollbar/src/bar.vue"],"sourcesContent":["<template>\n <transition name=\"el-scrollbar-fade\">\n <div\n v-show=\"always || visible\"\n ref=\"instance\"\n :class=\"['el-scrollbar__bar', 'is-' + bar.key]\"\n @mousedown=\"clickTrackHandler\"\n >\n <div\n ref=\"thumb\"\n class=\"el-scrollbar__thumb\"\n :style=\"thumbStyle\"\n @mousedown=\"clickThumbHandler\"\n ></div>\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n inject,\n onBeforeUnmount,\n ref,\n toRef,\n} from 'vue'\nimport { useEventListener, isClient } from '@vueuse/core'\nimport { scrollbarContextKey } from '@element-plus/tokens'\nimport { throwError } from '@element-plus/utils/error'\nimport { BAR_MAP, renderThumbStyle } from './util'\n\nimport { barProps } from './bar'\n\nconst COMPONENT_NAME = 'Bar'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: barProps,\n\n setup(props) {\n const scrollbar = inject(scrollbarContextKey)\n if (!scrollbar)\n throwError(COMPONENT_NAME, 'can not inject scrollbar context')\n\n const instance = ref<HTMLDivElement>()\n const thumb = ref<HTMLDivElement>()\n\n const barStore = ref({})\n const visible = ref(false)\n\n let cursorDown = false\n let cursorLeave = false\n let onselectstartStore:\n | ((this: GlobalEventHandlers, ev: Event) => any)\n | null = isClient ? document.onselectstart : null\n\n const bar = computed(\n () => BAR_MAP[props.vertical ? 'vertical' : 'horizontal']\n )\n\n const thumbStyle = computed(() =>\n renderThumbStyle({\n size: props.size,\n move: props.move,\n bar: bar.value,\n })\n )\n\n const offsetRatio = computed(\n () =>\n // offsetRatioX = original width of thumb / current width of thumb / ratioX\n // offsetRatioY = original height of thumb / current height of thumb / ratioY\n // instance height = wrap height - GAP\n instance.value![bar.value.offset] ** 2 /\n scrollbar.wrapElement![bar.value.scrollSize] /\n props.ratio /\n thumb.value![bar.value.offset]\n )\n\n const clickThumbHandler = (e: MouseEvent) => {\n // prevent click event of middle and right button\n e.stopPropagation()\n if (e.ctrlKey || [1, 2].includes(e.button)) return\n\n window.getSelection()?.removeAllRanges()\n startDrag(e)\n\n const el = e.currentTarget as HTMLDivElement\n if (!el) return\n barStore.value[bar.value.axis] =\n el[bar.value.offset] -\n (e[bar.value.client] - el.getBoundingClientRect()[bar.value.direction])\n }\n\n const clickTrackHandler = (e: MouseEvent) => {\n if (!thumb.value || !instance.value || !scrollbar.wrapElement) return\n\n const offset = Math.abs(\n (e.target as HTMLElement).getBoundingClientRect()[bar.value.direction] -\n e[bar.value.client]\n )\n const thumbHalf = thumb.value[bar.value.offset] / 2\n const thumbPositionPercentage =\n ((offset - thumbHalf) * 100 * offsetRatio.value) /\n instance.value[bar.value.offset]\n\n scrollbar.wrapElement[bar.value.scroll] =\n (thumbPositionPercentage *\n scrollbar.wrapElement[bar.value.scrollSize]) /\n 100\n }\n\n const startDrag = (e: MouseEvent) => {\n e.stopImmediatePropagation()\n cursorDown = true\n document.addEventListener('mousemove', mouseMoveDocumentHandler)\n document.addEventListener('mouseup', mouseUpDocumentHandler)\n onselectstartStore = document.onselectstart\n document.onselectstart = () => false\n }\n\n const mouseMoveDocumentHandler = (e: MouseEvent) => {\n if (!instance.value || !thumb.value) return\n if (cursorDown === false) return\n\n const prevPage = barStore.value[bar.value.axis]\n if (!prevPage) return\n\n const offset =\n (instance.value.getBoundingClientRect()[bar.value.direction] -\n e[bar.value.client]) *\n -1\n const thumbClickPosition = thumb.value[bar.value.offset] - prevPage\n const thumbPositionPercentage =\n ((offset - thumbClickPosition) * 100 * offsetRatio.value) /\n instance.value[bar.value.offset]\n scrollbar.wrapElement[bar.value.scroll] =\n (thumbPositionPercentage *\n scrollbar.wrapElement[bar.value.scrollSize]) /\n 100\n }\n\n const mouseUpDocumentHandler = () => {\n cursorDown = false\n barStore.value[bar.value.axis] = 0\n document.removeEventListener('mousemove', mouseMoveDocumentHandler)\n document.removeEventListener('mouseup', mouseUpDocumentHandler)\n restoreOnselectstart()\n if (cursorLeave) visible.value = false\n }\n\n const mouseMoveScrollbarHandler = () => {\n cursorLeave = false\n visible.value = !!props.size\n }\n\n const mouseLeaveScrollbarHandler = () => {\n cursorLeave = true\n visible.value = cursorDown\n }\n\n onBeforeUnmount(() => {\n restoreOnselectstart()\n document.removeEventListener('mouseup', mouseUpDocumentHandler)\n })\n\n const restoreOnselectstart = () => {\n if (document.onselectstart !== onselectstartStore)\n document.onselectstart = onselectstartStore\n }\n\n useEventListener(\n toRef(scrollbar, 'scrollbarElement'),\n 'mousemove',\n mouseMoveScrollbarHandler\n )\n useEventListener(\n toRef(scrollbar, 'scrollbarElement'),\n 'mouseleave',\n mouseLeaveScrollbarHandler\n )\n\n return {\n instance,\n thumb,\n bar,\n thumbStyle,\n visible,\n clickTrackHandler,\n clickThumbHandler,\n }\n },\n})\n</script>\n"],"names":["_createBlock","_createElementVNode"],"mappings":"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"}
1
+ {"version":3,"file":"bar2.mjs","sources":["../../../../../../packages/components/scrollbar/src/bar.vue"],"sourcesContent":["<template>\n <transition name=\"el-scrollbar-fade\">\n <div\n v-show=\"always || visible\"\n ref=\"instance\"\n :class=\"['el-scrollbar__bar', 'is-' + bar.key]\"\n @mousedown=\"clickTrackHandler\"\n >\n <div\n ref=\"thumb\"\n class=\"el-scrollbar__thumb\"\n :style=\"thumbStyle\"\n @mousedown=\"clickThumbHandler\"\n ></div>\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n inject,\n onBeforeUnmount,\n ref,\n toRef,\n} from 'vue'\nimport { useEventListener, isClient } from '@vueuse/core'\nimport { scrollbarContextKey } from '@element-plus/tokens'\nimport { throwError } from '@element-plus/utils/error'\nimport { BAR_MAP, renderThumbStyle } from './util'\n\nimport { barProps } from './bar'\n\nconst COMPONENT_NAME = 'Bar'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: barProps,\n\n setup(props) {\n const scrollbar = inject(scrollbarContextKey)\n if (!scrollbar)\n throwError(COMPONENT_NAME, 'can not inject scrollbar context')\n\n const instance = ref<HTMLDivElement>()\n const thumb = ref<HTMLDivElement>()\n\n const barStore = ref({})\n const visible = ref(false)\n\n let cursorDown = false\n let cursorLeave = false\n let onselectstartStore:\n | ((this: GlobalEventHandlers, ev: Event) => any)\n | null = isClient ? document.onselectstart : null\n\n const bar = computed(\n () => BAR_MAP[props.vertical ? 'vertical' : 'horizontal']\n )\n\n const thumbStyle = computed(() =>\n renderThumbStyle({\n size: props.size,\n move: props.move,\n bar: bar.value,\n })\n )\n\n const offsetRatio = computed(\n () =>\n // offsetRatioX = original width of thumb / current width of thumb / ratioX\n // offsetRatioY = original height of thumb / current height of thumb / ratioY\n // instance height = wrap height - GAP\n instance.value![bar.value.offset] ** 2 /\n scrollbar.wrapElement![bar.value.scrollSize] /\n props.ratio /\n thumb.value![bar.value.offset]\n )\n\n const clickThumbHandler = (e: MouseEvent) => {\n // prevent click event of middle and right button\n e.stopPropagation()\n if (e.ctrlKey || [1, 2].includes(e.button)) return\n\n window.getSelection()?.removeAllRanges()\n startDrag(e)\n\n const el = e.currentTarget as HTMLDivElement\n if (!el) return\n barStore.value[bar.value.axis] =\n el[bar.value.offset] -\n (e[bar.value.client] - el.getBoundingClientRect()[bar.value.direction])\n }\n\n const clickTrackHandler = (e: MouseEvent) => {\n if (!thumb.value || !instance.value || !scrollbar.wrapElement) return\n\n const offset = Math.abs(\n (e.target as HTMLElement).getBoundingClientRect()[bar.value.direction] -\n e[bar.value.client]\n )\n const thumbHalf = thumb.value[bar.value.offset] / 2\n const thumbPositionPercentage =\n ((offset - thumbHalf) * 100 * offsetRatio.value) /\n instance.value[bar.value.offset]\n\n scrollbar.wrapElement[bar.value.scroll] =\n (thumbPositionPercentage *\n scrollbar.wrapElement[bar.value.scrollSize]) /\n 100\n }\n\n const startDrag = (e: MouseEvent) => {\n e.stopImmediatePropagation()\n cursorDown = true\n document.addEventListener('mousemove', mouseMoveDocumentHandler)\n document.addEventListener('mouseup', mouseUpDocumentHandler)\n onselectstartStore = document.onselectstart\n document.onselectstart = () => false\n }\n\n const mouseMoveDocumentHandler = (e: MouseEvent) => {\n if (!instance.value || !thumb.value) return\n if (cursorDown === false) return\n\n const prevPage = barStore.value[bar.value.axis]\n if (!prevPage) return\n\n const offset =\n (instance.value.getBoundingClientRect()[bar.value.direction] -\n e[bar.value.client]) *\n -1\n const thumbClickPosition = thumb.value[bar.value.offset] - prevPage\n const thumbPositionPercentage =\n ((offset - thumbClickPosition) * 100 * offsetRatio.value) /\n instance.value[bar.value.offset]\n scrollbar.wrapElement[bar.value.scroll] =\n (thumbPositionPercentage *\n scrollbar.wrapElement[bar.value.scrollSize]) /\n 100\n }\n\n const mouseUpDocumentHandler = () => {\n cursorDown = false\n barStore.value[bar.value.axis] = 0\n document.removeEventListener('mousemove', mouseMoveDocumentHandler)\n document.removeEventListener('mouseup', mouseUpDocumentHandler)\n restoreOnselectstart()\n if (cursorLeave) visible.value = false\n }\n\n const mouseMoveScrollbarHandler = () => {\n cursorLeave = false\n visible.value = !!props.size\n }\n\n const mouseLeaveScrollbarHandler = () => {\n cursorLeave = true\n visible.value = cursorDown\n }\n\n onBeforeUnmount(() => {\n restoreOnselectstart()\n document.removeEventListener('mouseup', mouseUpDocumentHandler)\n })\n\n const restoreOnselectstart = () => {\n if (document.onselectstart !== onselectstartStore)\n document.onselectstart = onselectstartStore\n }\n\n useEventListener(\n toRef(scrollbar, 'scrollbarElement'),\n 'mousemove',\n mouseMoveScrollbarHandler\n )\n useEventListener(\n toRef(scrollbar, 'scrollbarElement'),\n 'mouseleave',\n mouseLeaveScrollbarHandler\n )\n\n return {\n instance,\n thumb,\n bar,\n thumbStyle,\n visible,\n clickTrackHandler,\n clickThumbHandler,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;AAkCA,MAAM,iBAAiB;AACvB,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,EAEP,MAAM,OAAO;AACX,UAAM,YAAY,OAAO;AACzB,QAAI,CAAC;AACH,iBAAW,gBAAgB;AAE7B,UAAM,WAAW;AACjB,UAAM,QAAQ;AAEd,UAAM,WAAW,IAAI;AACrB,UAAM,UAAU,IAAI;AAEpB,QAAI,aAAa;AACjB,QAAI,cAAc;AAClB,QAAI,qBAEO,WAAW,SAAS,gBAAgB;AAE/C,UAAM,MAAM,SACV,MAAM,QAAQ,MAAM,WAAW,aAAa;AAG9C,UAAM,aAAa,SAAS,MAC1B,iBAAiB;AAAA,MACf,MAAM,MAAM;AAAA,MACZ,MAAM,MAAM;AAAA,MACZ,KAAK,IAAI;AAAA;AAIb,UAAM,cAAc,SAClB,MAIE,SAAS,MAAO,IAAI,MAAM,WAAW,IACrC,UAAU,YAAa,IAAI,MAAM,cACjC,MAAM,QACN,MAAM,MAAO,IAAI,MAAM;AAG3B,UAAM,oBAAoB,CAAC,MAAkB;AAE3C;AACA,uBAAiB;AAA2B;AAE5C;AACA;AAEA,iBAAW,EAAE;AACb;AAAS;AACT,eAAS;AAEqD;AAGhE;AACE,UAAI,iBAAiB;AAA0C;AAE/D;AAIA,YAAM,kBAAkB;AACxB,YAAM;AAIN,sCAAgC,UAC7B,oCACW,YAAY,UAAU,cAClC;AAAA;AAGJ;AACE;AACA;AACA;AACA,eAAS,iBAAiB,WAAW;AACrC;AACA;AAA+B;AAGjC;AACE,UAAI;AAAiC;AACrC;AAA0B;AAE1B;AACA;AAAe;AAEf;AAIA,YAAM,qDAAqD;AAC3D,YAAM,0BACF,UAAS;AAEb,sCAAgC,UAC7B,gDACuB,wBACxB;AAAA;AAGJ;AACE;AACA,yBAAmB;AACnB,eAAS,oBAAoB;AAC7B,eAAS,oBAAoB,WAAW;AACxC;AACA;AAAiB;AAAgB;AAGnC;AACE;AACA;AAAwB;AAG1B;AACE;AACA;AAAgB;AAGlB;AACE;AACA;AAAwC;AAG1C;AACE,UAAI;AACF;AAAyB;AAG7B;AAKA,qBACE,MAAM,WAAW,qBACjB;AAIF;AAAO;AACL,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;AA/KI;AAZN,qBAEM;AAAU;AACR,QACL;AAAW;;AAEZ;AACa;AACN,UACJ;AAAK,UACL;AAAS;;;AATM;;;;;;;;;;;"}
@@ -79,8 +79,8 @@ const _sfc_main = defineComponent({
79
79
  };
80
80
  watch(() => props.noresize, (noresize) => {
81
81
  if (noresize) {
82
- stopResizeObserver?.();
83
- stopResizeListener?.();
82
+ stopResizeObserver == null ? void 0 : stopResizeObserver();
83
+ stopResizeListener == null ? void 0 : stopResizeListener();
84
84
  } else {
85
85
  ;
86
86
  ({ stop: stopResizeObserver } = useResizeObserver(resize$, update));
@@ -27,9 +27,10 @@ const _sfc_main = defineComponent({
27
27
  const children2 = [];
28
28
  if (Array.isArray(node.children)) {
29
29
  node.children.forEach((child) => {
30
+ var _a;
30
31
  if (child.type && child.type.name === "ElOption" && child.component && child.component.proxy) {
31
32
  children2.push(child.component.proxy);
32
- } else if (child.children?.length) {
33
+ } else if ((_a = child.children) == null ? void 0 : _a.length) {
33
34
  children2.push(...flattedChildren(child));
34
35
  }
35
36
  });
@@ -1 +1 @@
1
- {"version":3,"file":"option-group.mjs","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":["_withDirectives","_createElementVNode"],"mappings":";;;;AA0BA,MAAK,YAAa,gBAAa;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,UAAU,IAAI;AACpB,UAAM,WAAW;AACjB,UAAM,WAAW,IAAI;AAErB,YACE,gBACA,SAAS;AAAA,SACJ,OAAO;AAAA;AAId,UAAM,SAAS,OAAO;AAEtB,cAAU,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,qBAAqB,MAAM;AACnC,UAAM,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;SACEA,gDAAsC,kBAAK;AAAA,IAC3CC,mBAIK;AAAA,uBAHH,MAEK,MAFL;AAAA,yBACe;AAAA;;;YAJA;AAAA;;;;;;;"}
1
+ {"version":3,"file":"option-group.mjs","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":[],"mappings":";;;;AA0BA,MAAK,YAAa,gBAAa;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,UAAU,IAAI;AACpB,UAAM,WAAW;AACjB,UAAM,WAAW,IAAI;AAErB,YACE,gBACA,SAAS;AAAA,SACJ,OAAO;AAAA;AAId,UAAM,SAAS,OAAO;AAEtB,cAAU,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,uBAKtC;AAAA,uBAHH,MAEK;AAFL;AACe;;;;AAJA;;;;;;;;"}
@@ -13,7 +13,8 @@ const _sfc_main = defineComponent({
13
13
  const isFitInputWidth = computed(() => select.props.fitInputWidth);
14
14
  const minWidth = ref("");
15
15
  function updateMinWidth() {
16
- minWidth.value = `${select.selectWrapper?.getBoundingClientRect().width}px`;
16
+ var _a;
17
+ minWidth.value = `${(_a = select.selectWrapper) == null ? void 0 : _a.getBoundingClientRect().width}px`;
17
18
  }
18
19
  onMounted(() => {
19
20
  updateMinWidth();
@@ -1 +1 @@
1
- {"version":3,"file":"select-dropdown.mjs","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":["_openBlock","_normalizeClass"],"mappings":";;;;;AA0BA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,eAAe;AAAA,EAEf,QAAQ;AACN,UAAM,SAAS,OAAO;AAGtB,UAAM,cAAc,SAAS,MAAM,OAAO,MAAM;AAChD,UAAM,aAAa,SAAS,MAAM,OAAO,MAAM;AAC/C,UAAM,kBAAkB,SAAS,MAAM,OAAO,MAAM;AACpD,UAAM,WAAW,IAAI;AAErB,8BAA0B;AACxB,eAAS,QAAQ,GACf,OAAO,eAAe,wBAAwB;AAAA;AAIlD,cAAU,MAAM;AAGd;AACA,wBACE,OAAO,eACP;AAAA;AAIJ,oBAAgB,MAAM;AACpB,2BACE,OAAO,eACP;AAAA;AAIJ,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;2BAlEJ,wBAMM;SALCA,gCAAC,OAAoB;AAAA,IAEzB,OAAKC,sCAAoB,qCAA0B,KAAQ;AAAA;KAE5D;AAAA;;;;;;;"}
1
+ {"version":3,"file":"select-dropdown.mjs","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":[],"mappings":";;;;;AA0BA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,eAAe;AAAA,EAEf,QAAQ;AACN,UAAM,SAAS,OAAO;AAGtB,UAAM,cAAc,SAAS,MAAM,OAAO,MAAM;AAChD,UAAM,aAAa,SAAS,MAAM,OAAO,MAAM;AAC/C,UAAM,kBAAkB,SAAS,MAAM,OAAO,MAAM;AACpD,UAAM,WAAW,IAAI;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,gDAEA;AAAkC;;AAE5D;;;;;;;;"}
@@ -258,7 +258,8 @@ const _sfc_main = defineComponent({
258
258
  ctx.emit(UPDATE_MODEL_EVENT, "");
259
259
  }
260
260
  const popperPaneRef = computed(() => {
261
- return tooltipRef.value?.popperRef?.contentRef;
261
+ var _a, _b;
262
+ return (_b = (_a = tooltipRef.value) == null ? void 0 : _a.popperRef) == null ? void 0 : _b.contentRef;
262
263
  });
263
264
  return {
264
265
  tagInMultiLine,
@@ -1 +1 @@
1
- {"version":3,"file":"select.mjs","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":["ElOption","_withDirectives","_normalizeClass","_withCtx","_createElementBlock","_createCommentVNode","_Fragment","_openBlock","_withKeys","_createSlots","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"select.mjs","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":["ElOption","_withDirectives","_withKeys"],"mappings":"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"}
@@ -86,6 +86,7 @@ const _sfc_main = defineComponent({
86
86
  };
87
87
  },
88
88
  render(_ctx, _cache) {
89
+ var _a;
89
90
  const {
90
91
  $slots,
91
92
  data,
@@ -112,7 +113,7 @@ const _sfc_main = defineComponent({
112
113
  style: {
113
114
  width: `${width}px`
114
115
  }
115
- }, $slots.empty?.());
116
+ }, (_a = $slots.empty) == null ? void 0 : _a.call($slots));
116
117
  }
117
118
  const ListItem = withCtx((scoped) => {
118
119
  const { index, data: data2 } = scoped;
@@ -1 +1 @@
1
- {"version":3,"file":"select-dropdown.mjs","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":[],"mappings":"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"}
1
+ {"version":3,"file":"select-dropdown.mjs","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":[],"mappings":"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"}