element-plus 1.3.0-beta.7 → 1.3.0-beta.8

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 (558) hide show
  1. package/dist/index.full.js +612 -462
  2. package/dist/index.full.min.js +6 -6
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +6 -6
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +612 -462
  7. package/dist/locale/af.js +6 -8
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.js.map +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar.js +6 -8
  13. package/dist/locale/ar.min.js +1 -1
  14. package/dist/locale/ar.min.js.map +1 -1
  15. package/dist/locale/ar.min.mjs +1 -1
  16. package/dist/locale/ar.mjs +1 -1
  17. package/dist/locale/bg.js +6 -8
  18. package/dist/locale/bg.min.js +1 -1
  19. package/dist/locale/bg.min.js.map +1 -1
  20. package/dist/locale/bg.min.mjs +1 -1
  21. package/dist/locale/bg.mjs +1 -1
  22. package/dist/locale/bn.js +6 -8
  23. package/dist/locale/bn.min.js +1 -1
  24. package/dist/locale/bn.min.js.map +1 -1
  25. package/dist/locale/bn.min.mjs +1 -1
  26. package/dist/locale/bn.mjs +1 -1
  27. package/dist/locale/ca.js +6 -8
  28. package/dist/locale/ca.min.js +1 -1
  29. package/dist/locale/ca.min.js.map +1 -1
  30. package/dist/locale/ca.min.mjs +1 -1
  31. package/dist/locale/ca.mjs +1 -1
  32. package/dist/locale/cs.js +6 -8
  33. package/dist/locale/cs.min.js +1 -1
  34. package/dist/locale/cs.min.js.map +1 -1
  35. package/dist/locale/cs.min.mjs +1 -1
  36. package/dist/locale/cs.mjs +1 -1
  37. package/dist/locale/da.js +6 -8
  38. package/dist/locale/da.min.js +1 -1
  39. package/dist/locale/da.min.js.map +1 -1
  40. package/dist/locale/da.min.mjs +1 -1
  41. package/dist/locale/da.mjs +1 -1
  42. package/dist/locale/de.js +6 -8
  43. package/dist/locale/de.min.js +1 -1
  44. package/dist/locale/de.min.js.map +1 -1
  45. package/dist/locale/de.min.mjs +1 -1
  46. package/dist/locale/de.mjs +1 -1
  47. package/dist/locale/el.js +6 -8
  48. package/dist/locale/el.min.js +1 -1
  49. package/dist/locale/el.min.js.map +1 -1
  50. package/dist/locale/el.min.mjs +1 -1
  51. package/dist/locale/el.mjs +1 -1
  52. package/dist/locale/en.js +6 -8
  53. package/dist/locale/en.min.js +1 -1
  54. package/dist/locale/en.min.js.map +1 -1
  55. package/dist/locale/en.min.mjs +1 -1
  56. package/dist/locale/en.mjs +1 -1
  57. package/dist/locale/eo.js +6 -8
  58. package/dist/locale/eo.min.js +1 -1
  59. package/dist/locale/eo.min.js.map +1 -1
  60. package/dist/locale/eo.min.mjs +1 -1
  61. package/dist/locale/eo.mjs +1 -1
  62. package/dist/locale/es.js +6 -8
  63. package/dist/locale/es.min.js +1 -1
  64. package/dist/locale/es.min.js.map +1 -1
  65. package/dist/locale/es.min.mjs +1 -1
  66. package/dist/locale/es.mjs +1 -1
  67. package/dist/locale/et.js +6 -8
  68. package/dist/locale/et.min.js +1 -1
  69. package/dist/locale/et.min.js.map +1 -1
  70. package/dist/locale/et.min.mjs +1 -1
  71. package/dist/locale/et.mjs +1 -1
  72. package/dist/locale/eu.js +6 -8
  73. package/dist/locale/eu.min.js +1 -1
  74. package/dist/locale/eu.min.js.map +1 -1
  75. package/dist/locale/eu.min.mjs +1 -1
  76. package/dist/locale/eu.mjs +1 -1
  77. package/dist/locale/fa.js +6 -8
  78. package/dist/locale/fa.min.js +1 -1
  79. package/dist/locale/fa.min.js.map +1 -1
  80. package/dist/locale/fa.min.mjs +1 -1
  81. package/dist/locale/fa.mjs +1 -1
  82. package/dist/locale/fi.js +6 -8
  83. package/dist/locale/fi.min.js +1 -1
  84. package/dist/locale/fi.min.js.map +1 -1
  85. package/dist/locale/fi.min.mjs +1 -1
  86. package/dist/locale/fi.mjs +1 -1
  87. package/dist/locale/fr.js +6 -8
  88. package/dist/locale/fr.min.js +1 -1
  89. package/dist/locale/fr.min.js.map +1 -1
  90. package/dist/locale/fr.min.mjs +1 -1
  91. package/dist/locale/fr.mjs +1 -1
  92. package/dist/locale/he.js +6 -8
  93. package/dist/locale/he.min.js +1 -1
  94. package/dist/locale/he.min.js.map +1 -1
  95. package/dist/locale/he.min.mjs +1 -1
  96. package/dist/locale/he.mjs +1 -1
  97. package/dist/locale/hr.js +6 -8
  98. package/dist/locale/hr.min.js +1 -1
  99. package/dist/locale/hr.min.js.map +1 -1
  100. package/dist/locale/hr.min.mjs +1 -1
  101. package/dist/locale/hr.mjs +1 -1
  102. package/dist/locale/hu.js +6 -8
  103. package/dist/locale/hu.min.js +1 -1
  104. package/dist/locale/hu.min.js.map +1 -1
  105. package/dist/locale/hu.min.mjs +1 -1
  106. package/dist/locale/hu.mjs +1 -1
  107. package/dist/locale/hy-am.js +6 -8
  108. package/dist/locale/hy-am.min.js +1 -1
  109. package/dist/locale/hy-am.min.js.map +1 -1
  110. package/dist/locale/hy-am.min.mjs +1 -1
  111. package/dist/locale/hy-am.mjs +1 -1
  112. package/dist/locale/id.js +6 -8
  113. package/dist/locale/id.min.js +1 -1
  114. package/dist/locale/id.min.js.map +1 -1
  115. package/dist/locale/id.min.mjs +1 -1
  116. package/dist/locale/id.mjs +1 -1
  117. package/dist/locale/it.js +6 -8
  118. package/dist/locale/it.min.js +1 -1
  119. package/dist/locale/it.min.js.map +1 -1
  120. package/dist/locale/it.min.mjs +1 -1
  121. package/dist/locale/it.mjs +1 -1
  122. package/dist/locale/ja.js +6 -8
  123. package/dist/locale/ja.min.js +1 -1
  124. package/dist/locale/ja.min.js.map +1 -1
  125. package/dist/locale/ja.min.mjs +1 -1
  126. package/dist/locale/ja.mjs +1 -1
  127. package/dist/locale/kk.js +6 -8
  128. package/dist/locale/kk.min.js +1 -1
  129. package/dist/locale/kk.min.js.map +1 -1
  130. package/dist/locale/kk.min.mjs +1 -1
  131. package/dist/locale/kk.mjs +1 -1
  132. package/dist/locale/km.js +6 -8
  133. package/dist/locale/km.min.js +1 -1
  134. package/dist/locale/km.min.js.map +1 -1
  135. package/dist/locale/km.min.mjs +1 -1
  136. package/dist/locale/km.mjs +1 -1
  137. package/dist/locale/ko.js +6 -8
  138. package/dist/locale/ko.min.js +1 -1
  139. package/dist/locale/ko.min.js.map +1 -1
  140. package/dist/locale/ko.min.mjs +1 -1
  141. package/dist/locale/ko.mjs +1 -1
  142. package/dist/locale/ku.js +6 -8
  143. package/dist/locale/ku.min.js +1 -1
  144. package/dist/locale/ku.min.js.map +1 -1
  145. package/dist/locale/ku.min.mjs +1 -1
  146. package/dist/locale/ku.mjs +1 -1
  147. package/dist/locale/ky.js +6 -8
  148. package/dist/locale/ky.min.js +1 -1
  149. package/dist/locale/ky.min.js.map +1 -1
  150. package/dist/locale/ky.min.mjs +1 -1
  151. package/dist/locale/ky.mjs +1 -1
  152. package/dist/locale/lt.js +6 -8
  153. package/dist/locale/lt.min.js +1 -1
  154. package/dist/locale/lt.min.js.map +1 -1
  155. package/dist/locale/lt.min.mjs +1 -1
  156. package/dist/locale/lt.mjs +1 -1
  157. package/dist/locale/lv.js +6 -8
  158. package/dist/locale/lv.min.js +1 -1
  159. package/dist/locale/lv.min.js.map +1 -1
  160. package/dist/locale/lv.min.mjs +1 -1
  161. package/dist/locale/lv.mjs +1 -1
  162. package/dist/locale/mn.js +6 -8
  163. package/dist/locale/mn.min.js +1 -1
  164. package/dist/locale/mn.min.js.map +1 -1
  165. package/dist/locale/mn.min.mjs +1 -1
  166. package/dist/locale/mn.mjs +1 -1
  167. package/dist/locale/nb-no.js +6 -8
  168. package/dist/locale/nb-no.min.js +1 -1
  169. package/dist/locale/nb-no.min.js.map +1 -1
  170. package/dist/locale/nb-no.min.mjs +1 -1
  171. package/dist/locale/nb-no.mjs +1 -1
  172. package/dist/locale/nl.js +6 -8
  173. package/dist/locale/nl.min.js +1 -1
  174. package/dist/locale/nl.min.js.map +1 -1
  175. package/dist/locale/nl.min.mjs +1 -1
  176. package/dist/locale/nl.mjs +1 -1
  177. package/dist/locale/pa.js +6 -8
  178. package/dist/locale/pa.min.js +1 -1
  179. package/dist/locale/pa.min.js.map +1 -1
  180. package/dist/locale/pa.min.mjs +1 -1
  181. package/dist/locale/pa.mjs +1 -1
  182. package/dist/locale/pl.js +6 -8
  183. package/dist/locale/pl.min.js +1 -1
  184. package/dist/locale/pl.min.js.map +1 -1
  185. package/dist/locale/pl.min.mjs +1 -1
  186. package/dist/locale/pl.mjs +1 -1
  187. package/dist/locale/pt-br.js +6 -8
  188. package/dist/locale/pt-br.min.js +1 -1
  189. package/dist/locale/pt-br.min.js.map +1 -1
  190. package/dist/locale/pt-br.min.mjs +1 -1
  191. package/dist/locale/pt-br.mjs +1 -1
  192. package/dist/locale/pt.js +6 -8
  193. package/dist/locale/pt.min.js +1 -1
  194. package/dist/locale/pt.min.js.map +1 -1
  195. package/dist/locale/pt.min.mjs +1 -1
  196. package/dist/locale/pt.mjs +1 -1
  197. package/dist/locale/ro.js +6 -8
  198. package/dist/locale/ro.min.js +1 -1
  199. package/dist/locale/ro.min.js.map +1 -1
  200. package/dist/locale/ro.min.mjs +1 -1
  201. package/dist/locale/ro.mjs +1 -1
  202. package/dist/locale/ru.js +6 -8
  203. package/dist/locale/ru.min.js +1 -1
  204. package/dist/locale/ru.min.js.map +1 -1
  205. package/dist/locale/ru.min.mjs +1 -1
  206. package/dist/locale/ru.mjs +1 -1
  207. package/dist/locale/sk.js +6 -8
  208. package/dist/locale/sk.min.js +1 -1
  209. package/dist/locale/sk.min.js.map +1 -1
  210. package/dist/locale/sk.min.mjs +1 -1
  211. package/dist/locale/sk.mjs +1 -1
  212. package/dist/locale/sl.js +6 -8
  213. package/dist/locale/sl.min.js +1 -1
  214. package/dist/locale/sl.min.js.map +1 -1
  215. package/dist/locale/sl.min.mjs +1 -1
  216. package/dist/locale/sl.mjs +1 -1
  217. package/dist/locale/sr.js +6 -8
  218. package/dist/locale/sr.min.js +1 -1
  219. package/dist/locale/sr.min.js.map +1 -1
  220. package/dist/locale/sr.min.mjs +1 -1
  221. package/dist/locale/sr.mjs +1 -1
  222. package/dist/locale/sv.js +6 -8
  223. package/dist/locale/sv.min.js +1 -1
  224. package/dist/locale/sv.min.js.map +1 -1
  225. package/dist/locale/sv.min.mjs +1 -1
  226. package/dist/locale/sv.mjs +1 -1
  227. package/dist/locale/ta.js +6 -8
  228. package/dist/locale/ta.min.js +1 -1
  229. package/dist/locale/ta.min.js.map +1 -1
  230. package/dist/locale/ta.min.mjs +1 -1
  231. package/dist/locale/ta.mjs +1 -1
  232. package/dist/locale/th.js +6 -8
  233. package/dist/locale/th.min.js +1 -1
  234. package/dist/locale/th.min.js.map +1 -1
  235. package/dist/locale/th.min.mjs +1 -1
  236. package/dist/locale/th.mjs +1 -1
  237. package/dist/locale/tk.js +6 -8
  238. package/dist/locale/tk.min.js +1 -1
  239. package/dist/locale/tk.min.js.map +1 -1
  240. package/dist/locale/tk.min.mjs +1 -1
  241. package/dist/locale/tk.mjs +1 -1
  242. package/dist/locale/tr.js +6 -8
  243. package/dist/locale/tr.min.js +1 -1
  244. package/dist/locale/tr.min.js.map +1 -1
  245. package/dist/locale/tr.min.mjs +1 -1
  246. package/dist/locale/tr.mjs +1 -1
  247. package/dist/locale/ug-cn.js +6 -8
  248. package/dist/locale/ug-cn.min.js +1 -1
  249. package/dist/locale/ug-cn.min.js.map +1 -1
  250. package/dist/locale/ug-cn.min.mjs +1 -1
  251. package/dist/locale/ug-cn.mjs +1 -1
  252. package/dist/locale/uk.js +6 -8
  253. package/dist/locale/uk.min.js +1 -1
  254. package/dist/locale/uk.min.js.map +1 -1
  255. package/dist/locale/uk.min.mjs +1 -1
  256. package/dist/locale/uk.mjs +1 -1
  257. package/dist/locale/uz-uz.js +6 -8
  258. package/dist/locale/uz-uz.min.js +1 -1
  259. package/dist/locale/uz-uz.min.js.map +1 -1
  260. package/dist/locale/uz-uz.min.mjs +1 -1
  261. package/dist/locale/uz-uz.mjs +1 -1
  262. package/dist/locale/vi.js +6 -8
  263. package/dist/locale/vi.min.js +1 -1
  264. package/dist/locale/vi.min.js.map +1 -1
  265. package/dist/locale/vi.min.mjs +1 -1
  266. package/dist/locale/vi.mjs +1 -1
  267. package/dist/locale/zh-cn.js +6 -8
  268. package/dist/locale/zh-cn.min.js +1 -1
  269. package/dist/locale/zh-cn.min.js.map +1 -1
  270. package/dist/locale/zh-cn.min.mjs +1 -1
  271. package/dist/locale/zh-cn.mjs +1 -1
  272. package/dist/locale/zh-tw.js +6 -8
  273. package/dist/locale/zh-tw.min.js +1 -1
  274. package/dist/locale/zh-tw.min.js.map +1 -1
  275. package/dist/locale/zh-tw.min.mjs +1 -1
  276. package/dist/locale/zh-tw.mjs +1 -1
  277. package/es/components/affix/src/affix2.mjs +2 -1
  278. package/es/components/affix/src/affix2.mjs.map +1 -1
  279. package/es/components/autocomplete/index.d.ts +22 -0
  280. package/es/components/autocomplete/src/index.mjs +17 -16
  281. package/es/components/autocomplete/src/index.mjs.map +1 -1
  282. package/es/components/autocomplete/src/index.vue.d.ts +11 -0
  283. package/es/components/backtop/index.d.ts +11 -0
  284. package/es/components/backtop/src/backtop.vue.d.ts +11 -0
  285. package/es/components/backtop/src/backtop2.mjs +18 -9
  286. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  287. package/es/components/breadcrumb/src/breadcrumb-item2.mjs +2 -2
  288. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  289. package/es/components/button/src/button2.mjs +11 -7
  290. package/es/components/button/src/button2.mjs.map +1 -1
  291. package/es/components/carousel/src/item.mjs +4 -2
  292. package/es/components/carousel/src/item.mjs.map +1 -1
  293. package/es/components/cascader/src/index.mjs +38 -21
  294. package/es/components/cascader/src/index.mjs.map +1 -1
  295. package/es/components/cascader-panel/src/index.mjs +16 -13
  296. package/es/components/cascader-panel/src/index.mjs.map +1 -1
  297. package/es/components/cascader-panel/src/menu.mjs +25 -22
  298. package/es/components/cascader-panel/src/menu.mjs.map +1 -1
  299. package/es/components/cascader-panel/src/node2.mjs +6 -2
  300. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  301. package/es/components/checkbox/index.d.ts +33 -0
  302. package/es/components/checkbox/src/checkbox-button.mjs +21 -15
  303. package/es/components/checkbox/src/checkbox-button.mjs.map +1 -1
  304. package/es/components/checkbox/src/checkbox-button.vue.d.ts +11 -0
  305. package/es/components/checkbox/src/checkbox-group.mjs +5 -2
  306. package/es/components/checkbox/src/checkbox-group.mjs.map +1 -1
  307. package/es/components/checkbox/src/checkbox.mjs +36 -28
  308. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  309. package/es/components/checkbox/src/checkbox.vue.d.ts +11 -0
  310. package/es/components/collapse/src/collapse-item.mjs +3 -3
  311. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  312. package/es/components/color-picker/src/index.mjs +8 -5
  313. package/es/components/color-picker/src/index.mjs.map +1 -1
  314. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs +2 -1
  315. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs.map +1 -1
  316. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs +2 -1
  317. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs.map +1 -1
  318. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs +1 -1
  319. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  320. package/es/components/descriptions/src/index.mjs +7 -2
  321. package/es/components/descriptions/src/index.mjs.map +1 -1
  322. package/es/components/dialog/src/dialog.mjs +1 -3
  323. package/es/components/dialog/src/dialog.mjs.map +1 -1
  324. package/es/components/dropdown/src/dropdown-item.mjs +12 -6
  325. package/es/components/dropdown/src/dropdown-item.mjs.map +1 -1
  326. package/es/components/dropdown/src/dropdown-menu.mjs +2 -1
  327. package/es/components/dropdown/src/dropdown-menu.mjs.map +1 -1
  328. package/es/components/dropdown/src/dropdown2.mjs +9 -5
  329. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  330. package/es/components/focus-trap/src/focus-trap.mjs +1 -1
  331. package/es/components/focus-trap/src/focus-trap.mjs.map +1 -1
  332. package/es/components/form/src/form-item.mjs +6 -4
  333. package/es/components/form/src/form-item.mjs.map +1 -1
  334. package/es/components/image/src/image2.mjs +3 -2
  335. package/es/components/image/src/image2.mjs.map +1 -1
  336. package/es/components/image-viewer/src/image-viewer2.mjs +3 -2
  337. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  338. package/es/components/input/src/input2.mjs +17 -8
  339. package/es/components/input/src/input2.mjs.map +1 -1
  340. package/es/components/input-number/src/input-number2.mjs +12 -6
  341. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  342. package/es/components/message/src/message2.mjs +1 -1
  343. package/es/components/message-box/src/index.mjs +4 -2
  344. package/es/components/message-box/src/index.mjs.map +1 -1
  345. package/es/components/notification/src/notification2.mjs +1 -1
  346. package/es/components/pagination/src/components/jumper.mjs +5 -2
  347. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  348. package/es/components/pagination/src/components/sizes.mjs +2 -1
  349. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  350. package/es/components/popconfirm/src/popconfirm2.mjs +6 -3
  351. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  352. package/es/components/popover/src/index.mjs +4 -2
  353. package/es/components/popover/src/index.mjs.map +1 -1
  354. package/es/components/popper/src/content.mjs +5 -3
  355. package/es/components/popper/src/content.mjs.map +1 -1
  356. package/es/components/popper/src/trigger.mjs +1 -1
  357. package/es/components/popper/src/trigger.mjs.map +1 -1
  358. package/es/components/progress/src/progress2.mjs +2 -1
  359. package/es/components/progress/src/progress2.mjs.map +1 -1
  360. package/es/components/radio/src/radio-button2.mjs +4 -4
  361. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  362. package/es/components/radio/src/radio-group2.mjs +1 -1
  363. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  364. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs +10 -6
  365. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs.map +1 -1
  366. package/es/components/scrollbar/src/bar2.mjs +2 -1
  367. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  368. package/es/components/scrollbar/src/scrollbar2.mjs +2 -2
  369. package/es/components/select/src/option-group.mjs +2 -1
  370. package/es/components/select/src/option-group.mjs.map +1 -1
  371. package/es/components/select/src/select-dropdown.mjs +2 -1
  372. package/es/components/select/src/select-dropdown.mjs.map +1 -1
  373. package/es/components/select/src/select.mjs +2 -1
  374. package/es/components/select/src/select.mjs.map +1 -1
  375. package/es/components/select-v2/src/select-dropdown.mjs +2 -1
  376. package/es/components/select-v2/src/select-dropdown.mjs.map +1 -1
  377. package/es/components/select-v2/src/select.mjs +192 -186
  378. package/es/components/select-v2/src/select.mjs.map +1 -1
  379. package/es/components/slider/src/index.mjs +3 -2
  380. package/es/components/slider/src/index.mjs.map +1 -1
  381. package/es/components/slider/src/marker.mjs +2 -1
  382. package/es/components/slider/src/marker.mjs.map +1 -1
  383. package/es/components/steps/src/item.mjs +2 -1
  384. package/es/components/steps/src/item.mjs.map +1 -1
  385. package/es/components/switch/src/switch2.mjs +4 -2
  386. package/es/components/switch/src/switch2.mjs.map +1 -1
  387. package/es/components/table/src/filter-panel.mjs +7 -3
  388. package/es/components/table/src/filter-panel.mjs.map +1 -1
  389. package/es/components/tabs/src/tab-bar2.mjs +3 -2
  390. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  391. package/es/components/time-picker/src/common/picker.mjs +16 -8
  392. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  393. package/es/components/time-select/src/time-select.mjs +4 -2
  394. package/es/components/time-select/src/time-select.mjs.map +1 -1
  395. package/es/components/tooltip/src/content.mjs +9 -4
  396. package/es/components/tooltip/src/content.mjs.map +1 -1
  397. package/es/components/tooltip/src/tooltip2.mjs +2 -1
  398. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  399. package/es/components/transfer/src/index.mjs +2 -1
  400. package/es/components/transfer/src/index.mjs.map +1 -1
  401. package/es/components/tree/src/tree.mjs +2 -1
  402. package/es/components/tree/src/tree.mjs.map +1 -1
  403. package/es/components/tree-v2/src/tree-node.mjs +11 -7
  404. package/es/components/tree-v2/src/tree-node.mjs.map +1 -1
  405. package/es/components/tree-v2/src/tree.mjs +2 -1
  406. package/es/components/tree-v2/src/tree.mjs.map +1 -1
  407. package/es/components/upload/src/index.mjs +3 -2
  408. package/es/components/upload/src/index.mjs.map +1 -1
  409. package/es/components/upload/src/upload-dragger.mjs +2 -1
  410. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  411. package/es/utils/validators.d.ts +0 -1
  412. package/es/utils/validators.mjs +1 -9
  413. package/es/utils/validators.mjs.map +1 -1
  414. package/es/version.d.ts +1 -1
  415. package/es/version.mjs +1 -1
  416. package/es/version.mjs.map +1 -1
  417. package/lib/components/affix/src/affix2.js +2 -1
  418. package/lib/components/affix/src/affix2.js.map +1 -1
  419. package/lib/components/autocomplete/index.d.ts +22 -0
  420. package/lib/components/autocomplete/src/index.js +19 -18
  421. package/lib/components/autocomplete/src/index.js.map +1 -1
  422. package/lib/components/autocomplete/src/index.vue.d.ts +11 -0
  423. package/lib/components/backtop/index.d.ts +11 -0
  424. package/lib/components/backtop/src/backtop.vue.d.ts +11 -0
  425. package/lib/components/backtop/src/backtop2.js +17 -8
  426. package/lib/components/backtop/src/backtop2.js.map +1 -1
  427. package/lib/components/breadcrumb/src/breadcrumb-item2.js +2 -2
  428. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  429. package/lib/components/button/src/button2.js +11 -7
  430. package/lib/components/button/src/button2.js.map +1 -1
  431. package/lib/components/carousel/src/item.js +4 -2
  432. package/lib/components/carousel/src/item.js.map +1 -1
  433. package/lib/components/cascader/src/index.js +38 -21
  434. package/lib/components/cascader/src/index.js.map +1 -1
  435. package/lib/components/cascader-panel/src/index.js +16 -13
  436. package/lib/components/cascader-panel/src/index.js.map +1 -1
  437. package/lib/components/cascader-panel/src/menu.js +25 -22
  438. package/lib/components/cascader-panel/src/menu.js.map +1 -1
  439. package/lib/components/cascader-panel/src/node2.js +6 -2
  440. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  441. package/lib/components/checkbox/index.d.ts +33 -0
  442. package/lib/components/checkbox/src/checkbox-button.js +21 -15
  443. package/lib/components/checkbox/src/checkbox-button.js.map +1 -1
  444. package/lib/components/checkbox/src/checkbox-button.vue.d.ts +11 -0
  445. package/lib/components/checkbox/src/checkbox-group.js +5 -2
  446. package/lib/components/checkbox/src/checkbox-group.js.map +1 -1
  447. package/lib/components/checkbox/src/checkbox.js +35 -27
  448. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  449. package/lib/components/checkbox/src/checkbox.vue.d.ts +11 -0
  450. package/lib/components/collapse/src/collapse-item.js +3 -3
  451. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  452. package/lib/components/color-picker/src/index.js +8 -5
  453. package/lib/components/color-picker/src/index.js.map +1 -1
  454. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js +2 -1
  455. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js.map +1 -1
  456. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js +2 -1
  457. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js.map +1 -1
  458. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js +1 -1
  459. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
  460. package/lib/components/descriptions/src/index.js +7 -2
  461. package/lib/components/descriptions/src/index.js.map +1 -1
  462. package/lib/components/dialog/src/dialog.js +1 -3
  463. package/lib/components/dialog/src/dialog.js.map +1 -1
  464. package/lib/components/dropdown/src/dropdown-item.js +12 -6
  465. package/lib/components/dropdown/src/dropdown-item.js.map +1 -1
  466. package/lib/components/dropdown/src/dropdown-menu.js +2 -1
  467. package/lib/components/dropdown/src/dropdown-menu.js.map +1 -1
  468. package/lib/components/dropdown/src/dropdown2.js +9 -5
  469. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  470. package/lib/components/focus-trap/src/focus-trap.js +1 -1
  471. package/lib/components/focus-trap/src/focus-trap.js.map +1 -1
  472. package/lib/components/form/src/form-item.js +6 -4
  473. package/lib/components/form/src/form-item.js.map +1 -1
  474. package/lib/components/image/src/image2.js +3 -2
  475. package/lib/components/image/src/image2.js.map +1 -1
  476. package/lib/components/image-viewer/src/image-viewer2.js +3 -2
  477. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  478. package/lib/components/input/src/input2.js +17 -8
  479. package/lib/components/input/src/input2.js.map +1 -1
  480. package/lib/components/input-number/src/input-number2.js +12 -6
  481. package/lib/components/input-number/src/input-number2.js.map +1 -1
  482. package/lib/components/message/src/message2.js +1 -1
  483. package/lib/components/message-box/src/index.js +4 -2
  484. package/lib/components/message-box/src/index.js.map +1 -1
  485. package/lib/components/notification/src/notification2.js +1 -1
  486. package/lib/components/pagination/src/components/jumper.js +5 -2
  487. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  488. package/lib/components/pagination/src/components/sizes.js +2 -1
  489. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  490. package/lib/components/popconfirm/src/popconfirm2.js +6 -3
  491. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  492. package/lib/components/popover/src/index.js +4 -2
  493. package/lib/components/popover/src/index.js.map +1 -1
  494. package/lib/components/popper/src/content.js +5 -3
  495. package/lib/components/popper/src/content.js.map +1 -1
  496. package/lib/components/popper/src/trigger.js +1 -1
  497. package/lib/components/popper/src/trigger.js.map +1 -1
  498. package/lib/components/progress/src/progress2.js +2 -1
  499. package/lib/components/progress/src/progress2.js.map +1 -1
  500. package/lib/components/radio/src/radio-button2.js +4 -4
  501. package/lib/components/radio/src/radio-button2.js.map +1 -1
  502. package/lib/components/radio/src/radio-group2.js +1 -1
  503. package/lib/components/radio/src/radio-group2.js.map +1 -1
  504. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js +10 -6
  505. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js.map +1 -1
  506. package/lib/components/scrollbar/src/bar2.js +2 -1
  507. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  508. package/lib/components/scrollbar/src/scrollbar2.js +2 -2
  509. package/lib/components/select/src/option-group.js +2 -1
  510. package/lib/components/select/src/option-group.js.map +1 -1
  511. package/lib/components/select/src/select-dropdown.js +2 -1
  512. package/lib/components/select/src/select-dropdown.js.map +1 -1
  513. package/lib/components/select/src/select.js +2 -1
  514. package/lib/components/select/src/select.js.map +1 -1
  515. package/lib/components/select-v2/src/select-dropdown.js +2 -1
  516. package/lib/components/select-v2/src/select-dropdown.js.map +1 -1
  517. package/lib/components/select-v2/src/select.js +192 -186
  518. package/lib/components/select-v2/src/select.js.map +1 -1
  519. package/lib/components/slider/src/index.js +3 -2
  520. package/lib/components/slider/src/index.js.map +1 -1
  521. package/lib/components/slider/src/marker.js +2 -1
  522. package/lib/components/slider/src/marker.js.map +1 -1
  523. package/lib/components/steps/src/item.js +2 -1
  524. package/lib/components/steps/src/item.js.map +1 -1
  525. package/lib/components/switch/src/switch2.js +4 -2
  526. package/lib/components/switch/src/switch2.js.map +1 -1
  527. package/lib/components/table/src/filter-panel.js +7 -3
  528. package/lib/components/table/src/filter-panel.js.map +1 -1
  529. package/lib/components/tabs/src/tab-bar2.js +3 -2
  530. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  531. package/lib/components/time-picker/src/common/picker.js +16 -8
  532. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  533. package/lib/components/time-select/src/time-select.js +4 -2
  534. package/lib/components/time-select/src/time-select.js.map +1 -1
  535. package/lib/components/tooltip/src/content.js +9 -4
  536. package/lib/components/tooltip/src/content.js.map +1 -1
  537. package/lib/components/tooltip/src/tooltip2.js +2 -1
  538. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  539. package/lib/components/transfer/src/index.js +2 -1
  540. package/lib/components/transfer/src/index.js.map +1 -1
  541. package/lib/components/tree/src/tree.js +2 -1
  542. package/lib/components/tree/src/tree.js.map +1 -1
  543. package/lib/components/tree-v2/src/tree-node.js +11 -7
  544. package/lib/components/tree-v2/src/tree-node.js.map +1 -1
  545. package/lib/components/tree-v2/src/tree.js +2 -1
  546. package/lib/components/tree-v2/src/tree.js.map +1 -1
  547. package/lib/components/upload/src/index.js +3 -2
  548. package/lib/components/upload/src/index.js.map +1 -1
  549. package/lib/components/upload/src/upload-dragger.js +2 -1
  550. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  551. package/lib/utils/validators.d.ts +0 -1
  552. package/lib/utils/validators.js +0 -9
  553. package/lib/utils/validators.js.map +1 -1
  554. package/lib/version.d.ts +1 -1
  555. package/lib/version.js +1 -1
  556. package/lib/version.js.map +1 -1
  557. package/package.json +2 -2
  558. package/web-types.json +1 -1
@@ -54,7 +54,7 @@ const _sfc_main = vue.defineComponent({
54
54
  if (handler) {
55
55
  ;
56
56
  el.addEventListener(eventName.slice(2).toLowerCase(), handler);
57
- prevEl?.removeEventListener(eventName.slice(2).toLowerCase(), handler);
57
+ prevEl == null ? void 0 : prevEl.removeEventListener(eventName.slice(2).toLowerCase(), handler);
58
58
  }
59
59
  });
60
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"trigger.js","sources":["../../../../../../packages/components/popper/src/trigger.vue"],"sourcesContent":["<template>\n <el-only-child\n v-if=\"!virtualTriggering\"\n v-bind=\"$attrs\"\n :aria-describedby=\"open ? id : undefined\"\n >\n <slot />\n </el-only-child>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject, watch } from 'vue'\nimport { ElOnlyChild } from '@element-plus/components/slot'\nimport { useForwardRef } from '@element-plus/hooks'\nimport { usePopperTriggerProps } from './popper'\nimport { POPPER_INJECTION_KEY } from './tokens'\nimport { unwrapMeasurableEl } from './utils'\n\nexport default defineComponent({\n name: 'ElPopperTrigger',\n components: { ElOnlyChild },\n inheritAttrs: false,\n props: {\n ...usePopperTriggerProps,\n onMouseenter: Function,\n onMouseleave: Function,\n onClick: Function,\n onKeydown: Function,\n onFocus: Function,\n onBlur: Function,\n onContextmenu: Function,\n id: String,\n open: Boolean,\n },\n setup(props) {\n const { triggerRef } = inject(POPPER_INJECTION_KEY, undefined)!\n useForwardRef(triggerRef)\n\n watch(\n () => props.virtualRef,\n (val) => {\n if (val) {\n triggerRef.value = unwrapMeasurableEl(val)\n }\n },\n {\n immediate: true,\n }\n )\n\n watch(\n () => triggerRef.value,\n (el, prevEl) => {\n if (el && el instanceof HTMLElement) {\n ;[\n 'onMouseenter',\n 'onMouseleave',\n 'onClick',\n 'onKeydown',\n 'onFocus',\n 'onBlur',\n 'onContextmenu',\n ].forEach((eventName) => {\n const handler = props[eventName]\n if (handler) {\n ;(el as HTMLElement).addEventListener(\n eventName.slice(2).toLowerCase(),\n handler\n )\n ;(prevEl as HTMLElement)?.removeEventListener(\n eventName.slice(2).toLowerCase(),\n handler\n )\n }\n })\n }\n },\n {\n immediate: true,\n }\n )\n\n return {\n triggerRef,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElOnlyChild","usePopperTriggerProps","inject","POPPER_INJECTION_KEY","unwrapMeasurableEl","_createBlock","_mergeProps","_withCtx"],"mappings":";;;;;;;;;;;;;;AAkBA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY,eAAEC;AAAA,EACd,cAAc;AAAA,EACd,OAAO;AAAA,OACFC;AAAA,IACH,cAAc;AAAA,IACd,cAAc;AAAA,IACd,SAAS;AAAA,IACT,WAAW;AAAA,IACX,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,IAAI;AAAA,IACJ,MAAM;AAAA;AAAA,EAER,MAAM,OAAO;AACX,UAAM,EAAE,eAAeC,WAAOC,6BAAsB;AACpD,wBAAc;AAEd,cACE,MAAM,MAAM,YACZ,CAAC,QAAQ;AACP,UAAI,KAAK;AACP,mBAAW,QAAQC,yBAAmB;AAAA;AAAA,OAG1C;AAAA,MACE,WAAW;AAAA;AAIf,cACE,MAAM,WAAW,OACjB,CAAC,IAAI,WAAW;AACd,UAAI,MAAM,cAAc,aAAa;AACnC;AAAC;AAAA,UACC;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,QAAQ,CAAC,cAAc;AACvB,gBAAM,UAAU,MAAM;AACtB,cAAI,SAAS;AACX;AAAC,YAAC,GAAmB,iBACnB,UAAU,MAAM,GAAG,eACnB;AAED,YAAC,QAAwB,oBACxB,UAAU,MAAM,GAAG,eACnB;AAAA;AAAA;AAAA;AAAA,OAMV;AAAA,MACE,WAAW;AAAA;AAIf,WAAO;AAAA,MACL;AAAA;AAAA;AAAA;;;qDA/EDC,gBAAkB,0BAAqBC;AAAA;;aAExCC,YAAQ;AAAA;;;;;;;;;"}
1
+ {"version":3,"file":"trigger.js","sources":["../../../../../../packages/components/popper/src/trigger.vue"],"sourcesContent":["<template>\n <el-only-child\n v-if=\"!virtualTriggering\"\n v-bind=\"$attrs\"\n :aria-describedby=\"open ? id : undefined\"\n >\n <slot />\n </el-only-child>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject, watch } from 'vue'\nimport { ElOnlyChild } from '@element-plus/components/slot'\nimport { useForwardRef } from '@element-plus/hooks'\nimport { usePopperTriggerProps } from './popper'\nimport { POPPER_INJECTION_KEY } from './tokens'\nimport { unwrapMeasurableEl } from './utils'\n\nexport default defineComponent({\n name: 'ElPopperTrigger',\n components: { ElOnlyChild },\n inheritAttrs: false,\n props: {\n ...usePopperTriggerProps,\n onMouseenter: Function,\n onMouseleave: Function,\n onClick: Function,\n onKeydown: Function,\n onFocus: Function,\n onBlur: Function,\n onContextmenu: Function,\n id: String,\n open: Boolean,\n },\n setup(props) {\n const { triggerRef } = inject(POPPER_INJECTION_KEY, undefined)!\n useForwardRef(triggerRef)\n\n watch(\n () => props.virtualRef,\n (val) => {\n if (val) {\n triggerRef.value = unwrapMeasurableEl(val)\n }\n },\n {\n immediate: true,\n }\n )\n\n watch(\n () => triggerRef.value,\n (el, prevEl) => {\n if (el && el instanceof HTMLElement) {\n ;[\n 'onMouseenter',\n 'onMouseleave',\n 'onClick',\n 'onKeydown',\n 'onFocus',\n 'onBlur',\n 'onContextmenu',\n ].forEach((eventName) => {\n const handler = props[eventName]\n if (handler) {\n ;(el as HTMLElement).addEventListener(\n eventName.slice(2).toLowerCase(),\n handler\n )\n ;(prevEl as HTMLElement)?.removeEventListener(\n eventName.slice(2).toLowerCase(),\n handler\n )\n }\n })\n }\n },\n {\n immediate: true,\n }\n )\n\n return {\n triggerRef,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElOnlyChild","usePopperTriggerProps","inject","POPPER_INJECTION_KEY","unwrapMeasurableEl","_createBlock","_mergeProps","_withCtx"],"mappings":";;;;;;;;;;;;;;AAkBA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY,eAAEC;AAAA,EACd,cAAc;AAAA,EACd,OAAO;AAAA,OACFC;AAAA,IACH,cAAc;AAAA,IACd,cAAc;AAAA,IACd,SAAS;AAAA,IACT,WAAW;AAAA,IACX,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,IAAI;AAAA,IACJ,MAAM;AAAA;AAAA,EAER,MAAM,OAAO;AACX,UAAM,EAAE,eAAeC,WAAOC,6BAAsB;AACpD,wBAAc;AAEd,cACE,MAAM,MAAM,YACZ,CAAC,QAAQ;AACP,UAAI,KAAK;AACP,mBAAW,QAAQC,yBAAmB;AAAA;AAAA,OAG1C;AAAA,MACE,WAAW;AAAA;AAIf,cACE,MAAM,WAAW,OACjB,CAAC,IAAI,WAAW;AACd,UAAI,MAAM,cAAc,aAAa;AACnC;AAAC;AAAA,UACC;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,QAAQ,CAAC,cAAc;AACvB,gBAAM,UAAU,MAAM;AACtB,cAAI,SAAS;AACX;AAAC,YAAC,GAAmB,iBACnB,UAAU,MAAM,GAAG,eACnB;AAED,YAAC,8DAEA;AAAA;AAAA;AAAA;AAAA,OAMV;AAAA,MACE,WAAW;AAAA;AAIf,WAAO;AAAA,MACL;AAAA;AAAA;AAAA;;;qDA/EDC,gBAAkB,0BAAqBC;AAAA;;aAExCC,YAAQ;AAAA;;;;;;;;;"}
@@ -94,6 +94,7 @@ const _sfc_main = vue.defineComponent({
94
94
  });
95
95
  const content = vue.computed(() => props.format(props.percentage));
96
96
  const getCurrentColor = (percentage) => {
97
+ var _a;
97
98
  const { color } = props;
98
99
  if (typeof color === "function") {
99
100
  return color(percentage);
@@ -115,7 +116,7 @@ const _sfc_main = vue.defineComponent({
115
116
  if (color2.percentage > percentage)
116
117
  return color2.color;
117
118
  }
118
- return colors[colors.length - 1]?.color;
119
+ return (_a = colors[colors.length - 1]) == null ? void 0 : _a.color;
119
120
  }
120
121
  };
121
122
  const slotData = vue.computed(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"progress2.js","sources":["../../../../../../packages/components/progress/src/progress.vue"],"sourcesContent":["<template>\n <div\n class=\"el-progress\"\n :class=\"[\n `el-progress--${type}`,\n status ? `is-${status}` : '',\n {\n 'el-progress--without-text': !showText,\n 'el-progress--text-inside': textInside,\n },\n ]\"\n role=\"progressbar\"\n :aria-valuenow=\"percentage\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n >\n <div v-if=\"type === 'line'\" class=\"el-progress-bar\">\n <div\n class=\"el-progress-bar__outer\"\n :style=\"{ height: `${strokeWidth}px` }\"\n >\n <div\n :class=\"[\n 'el-progress-bar__inner',\n { 'el-progress-bar__inner--indeterminate': indeterminate },\n ]\"\n :style=\"barStyle\"\n >\n <div\n v-if=\"(showText || $slots.default) && textInside\"\n class=\"el-progress-bar__innerText\"\n >\n <slot v-bind=\"slotData\">\n <span>{{ content }}</span>\n </slot>\n </div>\n </div>\n </div>\n </div>\n <div\n v-else\n class=\"el-progress-circle\"\n :style=\"{ height: `${width}px`, width: `${width}px` }\"\n >\n <svg viewBox=\"0 0 100 100\">\n <path\n class=\"el-progress-circle__track\"\n :d=\"trackPath\"\n stroke=\"#e5e9f2\"\n :stroke-width=\"relativeStrokeWidth\"\n fill=\"none\"\n :style=\"trailPathStyle\"\n />\n <path\n class=\"el-progress-circle__path\"\n :d=\"trackPath\"\n :stroke=\"stroke\"\n fill=\"none\"\n :stroke-linecap=\"strokeLinecap\"\n :stroke-width=\"percentage ? relativeStrokeWidth : 0\"\n :style=\"circlePathStyle\"\n />\n </svg>\n </div>\n <div\n v-if=\"(showText || $slots.default) && !textInside\"\n class=\"el-progress__text\"\n :style=\"{ fontSize: `${progressTextSize}px` }\"\n >\n <slot v-bind=\"slotData\">\n <span v-if=\"!status\">{{ content }}</span>\n <el-icon v-else><component :is=\"statusIcon\" /></el-icon>\n </slot>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n WarningFilled,\n CircleCheck,\n CircleClose,\n Check,\n Close,\n} from '@element-plus/icons-vue'\nimport { progressProps } from './progress'\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElProgress',\n components: {\n ElIcon,\n CircleCheck,\n CircleClose,\n Check,\n Close,\n WarningFilled,\n },\n props: progressProps,\n\n setup(props) {\n const barStyle = computed(\n (): CSSProperties => ({\n width: `${props.percentage}%`,\n animationDuration: `${props.duration}s`,\n backgroundColor: getCurrentColor(props.percentage),\n })\n )\n\n const relativeStrokeWidth = computed(() =>\n ((props.strokeWidth / props.width) * 100).toFixed(1)\n )\n\n const radius = computed(() => {\n if (props.type === 'circle' || props.type === 'dashboard') {\n return parseInt(`${50 - parseFloat(relativeStrokeWidth.value) / 2}`, 10)\n } else {\n return 0\n }\n })\n\n const trackPath = computed(() => {\n const r = radius.value\n const isDashboard = props.type === 'dashboard'\n return `\n M 50 50\n m 0 ${isDashboard ? '' : '-'}${r}\n a ${r} ${r} 0 1 1 0 ${isDashboard ? '-' : ''}${r * 2}\n a ${r} ${r} 0 1 1 0 ${isDashboard ? '' : '-'}${r * 2}\n `\n })\n\n const perimeter = computed(() => 2 * Math.PI * radius.value)\n\n const rate = computed(() => (props.type === 'dashboard' ? 0.75 : 1))\n\n const strokeDashoffset = computed(() => {\n const offset = (-1 * perimeter.value * (1 - rate.value)) / 2\n return `${offset}px`\n })\n\n const trailPathStyle = computed(\n (): CSSProperties => ({\n strokeDasharray: `${perimeter.value * rate.value}px, ${\n perimeter.value\n }px`,\n strokeDashoffset: strokeDashoffset.value,\n })\n )\n\n const circlePathStyle = computed(\n (): CSSProperties => ({\n strokeDasharray: `${\n perimeter.value * rate.value * (props.percentage / 100)\n }px, ${perimeter.value}px`,\n strokeDashoffset: strokeDashoffset.value,\n transition: 'stroke-dasharray 0.6s ease 0s, stroke 0.6s ease',\n })\n )\n\n const stroke = computed(() => {\n let ret: string\n if (props.color) {\n ret = getCurrentColor(props.percentage)\n } else {\n switch (props.status) {\n case 'success':\n ret = '#13ce66'\n break\n case 'exception':\n ret = '#ff4949'\n break\n case 'warning':\n ret = '#e6a23c'\n break\n default:\n ret = '#20a0ff'\n }\n }\n return ret\n })\n\n const statusIcon = computed(() => {\n if (props.status === 'warning') {\n return WarningFilled\n }\n if (props.type === 'line') {\n return props.status === 'success' ? CircleCheck : CircleClose\n } else {\n return props.status === 'success' ? Check : Close\n }\n })\n\n const progressTextSize = computed(() => {\n return props.type === 'line'\n ? 12 + props.strokeWidth * 0.4\n : props.width * 0.111111 + 2\n })\n\n const content = computed(() => props.format(props.percentage))\n\n const getCurrentColor = (percentage: number) => {\n const { color } = props\n if (typeof color === 'function') {\n return color(percentage)\n } else if (typeof color === 'string') {\n return color\n } else {\n const span = 100 / color.length\n const seriesColors = color.map((seriesColor, index) => {\n if (typeof seriesColor === 'string') {\n return {\n color: seriesColor,\n percentage: (index + 1) * span,\n }\n }\n return seriesColor\n })\n const colors = seriesColors.sort((a, b) => a.percentage - b.percentage)\n\n for (const color of colors) {\n if (color.percentage > percentage) return color.color\n }\n return colors[colors.length - 1]?.color\n }\n }\n\n const slotData = computed(() => {\n return {\n percentage: props.percentage,\n }\n })\n\n return {\n barStyle,\n relativeStrokeWidth,\n radius,\n trackPath,\n perimeter,\n rate,\n strokeDashoffset,\n trailPathStyle,\n circlePathStyle,\n stroke,\n statusIcon,\n progressTextSize,\n content,\n slotData,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElIcon","CircleCheck","CircleClose","Check","Close","WarningFilled","progressProps","computed","_openBlock","_createElementBlock"],"mappings":"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"}
1
+ {"version":3,"file":"progress2.js","sources":["../../../../../../packages/components/progress/src/progress.vue"],"sourcesContent":["<template>\n <div\n class=\"el-progress\"\n :class=\"[\n `el-progress--${type}`,\n status ? `is-${status}` : '',\n {\n 'el-progress--without-text': !showText,\n 'el-progress--text-inside': textInside,\n },\n ]\"\n role=\"progressbar\"\n :aria-valuenow=\"percentage\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n >\n <div v-if=\"type === 'line'\" class=\"el-progress-bar\">\n <div\n class=\"el-progress-bar__outer\"\n :style=\"{ height: `${strokeWidth}px` }\"\n >\n <div\n :class=\"[\n 'el-progress-bar__inner',\n { 'el-progress-bar__inner--indeterminate': indeterminate },\n ]\"\n :style=\"barStyle\"\n >\n <div\n v-if=\"(showText || $slots.default) && textInside\"\n class=\"el-progress-bar__innerText\"\n >\n <slot v-bind=\"slotData\">\n <span>{{ content }}</span>\n </slot>\n </div>\n </div>\n </div>\n </div>\n <div\n v-else\n class=\"el-progress-circle\"\n :style=\"{ height: `${width}px`, width: `${width}px` }\"\n >\n <svg viewBox=\"0 0 100 100\">\n <path\n class=\"el-progress-circle__track\"\n :d=\"trackPath\"\n stroke=\"#e5e9f2\"\n :stroke-width=\"relativeStrokeWidth\"\n fill=\"none\"\n :style=\"trailPathStyle\"\n />\n <path\n class=\"el-progress-circle__path\"\n :d=\"trackPath\"\n :stroke=\"stroke\"\n fill=\"none\"\n :stroke-linecap=\"strokeLinecap\"\n :stroke-width=\"percentage ? relativeStrokeWidth : 0\"\n :style=\"circlePathStyle\"\n />\n </svg>\n </div>\n <div\n v-if=\"(showText || $slots.default) && !textInside\"\n class=\"el-progress__text\"\n :style=\"{ fontSize: `${progressTextSize}px` }\"\n >\n <slot v-bind=\"slotData\">\n <span v-if=\"!status\">{{ content }}</span>\n <el-icon v-else><component :is=\"statusIcon\" /></el-icon>\n </slot>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n WarningFilled,\n CircleCheck,\n CircleClose,\n Check,\n Close,\n} from '@element-plus/icons-vue'\nimport { progressProps } from './progress'\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElProgress',\n components: {\n ElIcon,\n CircleCheck,\n CircleClose,\n Check,\n Close,\n WarningFilled,\n },\n props: progressProps,\n\n setup(props) {\n const barStyle = computed(\n (): CSSProperties => ({\n width: `${props.percentage}%`,\n animationDuration: `${props.duration}s`,\n backgroundColor: getCurrentColor(props.percentage),\n })\n )\n\n const relativeStrokeWidth = computed(() =>\n ((props.strokeWidth / props.width) * 100).toFixed(1)\n )\n\n const radius = computed(() => {\n if (props.type === 'circle' || props.type === 'dashboard') {\n return parseInt(`${50 - parseFloat(relativeStrokeWidth.value) / 2}`, 10)\n } else {\n return 0\n }\n })\n\n const trackPath = computed(() => {\n const r = radius.value\n const isDashboard = props.type === 'dashboard'\n return `\n M 50 50\n m 0 ${isDashboard ? '' : '-'}${r}\n a ${r} ${r} 0 1 1 0 ${isDashboard ? '-' : ''}${r * 2}\n a ${r} ${r} 0 1 1 0 ${isDashboard ? '' : '-'}${r * 2}\n `\n })\n\n const perimeter = computed(() => 2 * Math.PI * radius.value)\n\n const rate = computed(() => (props.type === 'dashboard' ? 0.75 : 1))\n\n const strokeDashoffset = computed(() => {\n const offset = (-1 * perimeter.value * (1 - rate.value)) / 2\n return `${offset}px`\n })\n\n const trailPathStyle = computed(\n (): CSSProperties => ({\n strokeDasharray: `${perimeter.value * rate.value}px, ${\n perimeter.value\n }px`,\n strokeDashoffset: strokeDashoffset.value,\n })\n )\n\n const circlePathStyle = computed(\n (): CSSProperties => ({\n strokeDasharray: `${\n perimeter.value * rate.value * (props.percentage / 100)\n }px, ${perimeter.value}px`,\n strokeDashoffset: strokeDashoffset.value,\n transition: 'stroke-dasharray 0.6s ease 0s, stroke 0.6s ease',\n })\n )\n\n const stroke = computed(() => {\n let ret: string\n if (props.color) {\n ret = getCurrentColor(props.percentage)\n } else {\n switch (props.status) {\n case 'success':\n ret = '#13ce66'\n break\n case 'exception':\n ret = '#ff4949'\n break\n case 'warning':\n ret = '#e6a23c'\n break\n default:\n ret = '#20a0ff'\n }\n }\n return ret\n })\n\n const statusIcon = computed(() => {\n if (props.status === 'warning') {\n return WarningFilled\n }\n if (props.type === 'line') {\n return props.status === 'success' ? CircleCheck : CircleClose\n } else {\n return props.status === 'success' ? Check : Close\n }\n })\n\n const progressTextSize = computed(() => {\n return props.type === 'line'\n ? 12 + props.strokeWidth * 0.4\n : props.width * 0.111111 + 2\n })\n\n const content = computed(() => props.format(props.percentage))\n\n const getCurrentColor = (percentage: number) => {\n const { color } = props\n if (typeof color === 'function') {\n return color(percentage)\n } else if (typeof color === 'string') {\n return color\n } else {\n const span = 100 / color.length\n const seriesColors = color.map((seriesColor, index) => {\n if (typeof seriesColor === 'string') {\n return {\n color: seriesColor,\n percentage: (index + 1) * span,\n }\n }\n return seriesColor\n })\n const colors = seriesColors.sort((a, b) => a.percentage - b.percentage)\n\n for (const color of colors) {\n if (color.percentage > percentage) return color.color\n }\n return colors[colors.length - 1]?.color\n }\n }\n\n const slotData = computed(() => {\n return {\n percentage: props.percentage,\n }\n })\n\n return {\n barStyle,\n relativeStrokeWidth,\n radius,\n trackPath,\n perimeter,\n rate,\n strokeDashoffset,\n trailPathStyle,\n circlePathStyle,\n stroke,\n statusIcon,\n progressTextSize,\n content,\n slotData,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElIcon","CircleCheck","CircleClose","Check","Close","WarningFilled","progressProps","computed","_openBlock","_guardReactiveProps"],"mappings":"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"}
@@ -23,10 +23,10 @@ const _sfc_main = vue.defineComponent({
23
23
  } = radio.useRadio(props, emit);
24
24
  const activeStyle = vue.computed(() => {
25
25
  return {
26
- backgroundColor: radioGroup?.fill || "",
27
- borderColor: radioGroup?.fill || "",
28
- boxShadow: radioGroup?.fill ? `-1px 0 0 0 ${radioGroup.fill}` : "",
29
- color: radioGroup?.textColor || ""
26
+ backgroundColor: (radioGroup == null ? void 0 : radioGroup.fill) || "",
27
+ borderColor: (radioGroup == null ? void 0 : radioGroup.fill) || "",
28
+ boxShadow: (radioGroup == null ? void 0 : radioGroup.fill) ? `-1px 0 0 0 ${radioGroup.fill}` : "",
29
+ color: (radioGroup == null ? void 0 : radioGroup.textColor) || ""
30
30
  };
31
31
  });
32
32
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"radio-button2.js","sources":["../../../../../../packages/components/radio/src/radio-button.vue"],"sourcesContent":["<template>\n <label\n class=\"el-radio-button\"\n :class=\"[\n size ? 'el-radio-button--' + size : '',\n {\n 'is-active': modelValue === label,\n 'is-disabled': disabled,\n 'is-focus': focus,\n },\n ]\"\n role=\"radio\"\n :aria-checked=\"modelValue === label\"\n :aria-disabled=\"disabled\"\n :tabindex=\"tabIndex\"\n @keydown.space.stop.prevent=\"modelValue = disabled ? modelValue : label\"\n >\n <input\n ref=\"radioRef\"\n v-model=\"modelValue\"\n class=\"el-radio-button__original-radio\"\n :value=\"label\"\n type=\"radio\"\n :name=\"name\"\n :disabled=\"disabled\"\n tabindex=\"-1\"\n @focus=\"focus = true\"\n @blur=\"focus = false\"\n />\n <span\n class=\"el-radio-button__inner\"\n :style=\"modelValue === label ? activeStyle : {}\"\n @keydown.stop\n >\n <slot>\n {{ label }}\n </slot>\n </span>\n </label>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport { useRadio } from './radio'\nimport { radioButtonProps } from './radio-button'\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElRadioButton',\n props: radioButtonProps,\n\n setup(props, { emit }) {\n const {\n radioRef,\n isGroup,\n focus,\n size,\n disabled,\n tabIndex,\n modelValue,\n radioGroup,\n } = useRadio(props, emit)\n\n const activeStyle = computed<CSSProperties>(() => {\n return {\n backgroundColor: radioGroup?.fill || '',\n borderColor: radioGroup?.fill || '',\n boxShadow: radioGroup?.fill ? `-1px 0 0 0 ${radioGroup.fill}` : '',\n color: radioGroup?.textColor || '',\n }\n })\n\n return {\n isGroup,\n size,\n disabled,\n tabIndex,\n modelValue,\n focus,\n activeStyle,\n radioRef,\n }\n },\n})\n</script>\n"],"names":["defineComponent","radioButtonProps","useRadio","computed","_openBlock","_normalizeClass","_createElementVNode"],"mappings":";;;;;;;;;AA8CA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAOC;AAAA,EAEP,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACEC,eAAS,OAAO;AAEpB,UAAM,cAAcC,aAAwB,MAAM;AAChD,aAAO;AAAA,QACL,iBAAiB,YAAY,QAAQ;AAAA,QACrC,aAAa,YAAY,QAAQ;AAAA,QACjC,WAAW,YAAY,OAAO,cAAc,WAAW,SAAS;AAAA,QAChE,OAAO,YAAY,aAAa;AAAA;AAAA;AAIpC,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;2BA9EJ,wBAqCQ;SApCDC,wCAAC,SAAiB;AAAA,WACPC,mBAAI,oBAAyB;AAAA;;0BAAqF,eAAQ;AAAA,uBAAsB;AAAA;;;IAS/J;AAAA,IACA,gBAAa,KAAE,eAAQ;AAAA,IACvB,iBAAU;AAAA,IACV,UAAO;AAAA;;uBAGFC,uBAAU;AAAA;MAEd,uBAAM,qBAAiC;AAAA,MACtC,OAAO;AAAA,MACR,OAAK;AAAA,MACJ,MAAM;AAAA,MACN,WAAU;AAAA,MACX,UAAS,KAAI;AAAA,MACZ,UAAK;AAAA,MACL,SAAI,sCAAE,aAAK;AAAA;iBARO;AAAA;;2BAWb;AAAA,MACL,OAAK;AAAA,MACL,0BAAO,iCAAR,KAAa;AAAA;;OAEb;AAAA,6CACK,UAAK;AAAA;;;;;;;;;"}
1
+ {"version":3,"file":"radio-button2.js","sources":["../../../../../../packages/components/radio/src/radio-button.vue"],"sourcesContent":["<template>\n <label\n class=\"el-radio-button\"\n :class=\"[\n size ? 'el-radio-button--' + size : '',\n {\n 'is-active': modelValue === label,\n 'is-disabled': disabled,\n 'is-focus': focus,\n },\n ]\"\n role=\"radio\"\n :aria-checked=\"modelValue === label\"\n :aria-disabled=\"disabled\"\n :tabindex=\"tabIndex\"\n @keydown.space.stop.prevent=\"modelValue = disabled ? modelValue : label\"\n >\n <input\n ref=\"radioRef\"\n v-model=\"modelValue\"\n class=\"el-radio-button__original-radio\"\n :value=\"label\"\n type=\"radio\"\n :name=\"name\"\n :disabled=\"disabled\"\n tabindex=\"-1\"\n @focus=\"focus = true\"\n @blur=\"focus = false\"\n />\n <span\n class=\"el-radio-button__inner\"\n :style=\"modelValue === label ? activeStyle : {}\"\n @keydown.stop\n >\n <slot>\n {{ label }}\n </slot>\n </span>\n </label>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport { useRadio } from './radio'\nimport { radioButtonProps } from './radio-button'\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElRadioButton',\n props: radioButtonProps,\n\n setup(props, { emit }) {\n const {\n radioRef,\n isGroup,\n focus,\n size,\n disabled,\n tabIndex,\n modelValue,\n radioGroup,\n } = useRadio(props, emit)\n\n const activeStyle = computed<CSSProperties>(() => {\n return {\n backgroundColor: radioGroup?.fill || '',\n borderColor: radioGroup?.fill || '',\n boxShadow: radioGroup?.fill ? `-1px 0 0 0 ${radioGroup.fill}` : '',\n color: radioGroup?.textColor || '',\n }\n })\n\n return {\n isGroup,\n size,\n disabled,\n tabIndex,\n modelValue,\n focus,\n activeStyle,\n radioRef,\n }\n },\n})\n</script>\n"],"names":["defineComponent","radioButtonProps","useRadio","computed","_openBlock","_normalizeClass","_createElementVNode"],"mappings":";;;;;;;;;AA8CA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAOC;AAAA,EAEP,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACEC,eAAS,OAAO;AAEpB,UAAM,cAAcC,aAAwB,MAAM;AAChD,aAAO;AAAA,QACL,iBAAiB;AAAoB,QACrC,aAAa;AAAoB,QACjC,WAAW,mBAAmB;AAAkC,QAChE,OAAO;AAAyB;AAAA;AAIpC,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;2BA9EJ,wBAqCQ;SApCDC,wCAAC,SAAiB;AAAA,WACPC,mBAAI,oBAAyB;AAAA;;0BAAqF,eAAQ;AAAA,uBAAsB;AAAA;;;IAS/J;AAAA,IACA,gBAAa,KAAE,eAAQ;AAAA,IACvB,iBAAU;AAAA,IACV,UAAO;AAAA;;uBAGFC,uBAAU;AAAA;MAEd,uBAAM,qBAAiC;AAAA,MACtC,OAAO;AAAA,MACR,OAAK;AAAA,MACJ,MAAM;AAAA,MACN,WAAU;AAAA,MACX,UAAS,KAAI;AAAA,MACZ,UAAK;AAAA,MACL,SAAI,sCAAE,aAAK;AAAA;iBARO;AAAA;;2BAWb;AAAA,MACL,OAAK;AAAA,MACL,0BAAO,iCAAR,KAAa;AAAA;;OAEb;AAAA,6CACK,UAAK;AAAA;;;;;;;;;"}
@@ -65,7 +65,7 @@ const _sfc_main = vue.defineComponent({
65
65
  ...vue.toRefs(props),
66
66
  changeEvent
67
67
  }));
68
- vue.watch(() => props.modelValue, () => formItem?.validate("change"));
68
+ vue.watch(() => props.modelValue, () => formItem == null ? void 0 : formItem.validate("change"));
69
69
  return {
70
70
  radioGroupRef,
71
71
  handleKeydown
@@ -1 +1 @@
1
- {"version":3,"file":"radio-group2.js","sources":["../../../../../../packages/components/radio/src/radio-group.vue"],"sourcesContent":["<template>\n <div\n ref=\"radioGroupRef\"\n class=\"el-radio-group\"\n role=\"radiogroup\"\n @keydown=\"handleKeydown\"\n >\n <slot></slot>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n nextTick,\n provide,\n onMounted,\n ref,\n reactive,\n toRefs,\n watch,\n} from 'vue'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/utils/constants'\nimport { radioGroupKey } from '@element-plus/tokens'\nimport { useFormItem } from '@element-plus/hooks'\nimport { radioGroupEmits, radioGroupProps } from './radio-group'\nimport type { RadioGroupProps } from '..'\n\nexport default defineComponent({\n name: 'ElRadioGroup',\n props: radioGroupProps,\n emits: radioGroupEmits,\n\n setup(props, ctx) {\n const radioGroupRef = ref<HTMLDivElement>()\n const { formItem } = useFormItem()\n\n const changeEvent = (value: RadioGroupProps['modelValue']) => {\n ctx.emit(UPDATE_MODEL_EVENT, value)\n nextTick(() => ctx.emit('change', value))\n }\n\n const handleKeydown = (e: KeyboardEvent) => {\n if (!radioGroupRef.value) return\n\n // 左右上下按键 可以在 radio 组内切换不同选项\n const target = e.target as HTMLInputElement\n const className =\n target.nodeName === 'INPUT' ? '[type=radio]' : '[role=radio]'\n const radios =\n radioGroupRef.value.querySelectorAll<HTMLInputElement>(className)\n const length = radios.length\n const index = Array.from(radios).indexOf(target)\n const roleRadios =\n radioGroupRef.value.querySelectorAll<HTMLInputElement>('[role=radio]')\n\n let nextIndex: number | null = null\n switch (e.code) {\n case EVENT_CODE.left:\n case EVENT_CODE.up:\n e.stopPropagation()\n e.preventDefault()\n nextIndex = index === 0 ? length - 1 : index - 1\n break\n case EVENT_CODE.right:\n case EVENT_CODE.down:\n e.stopPropagation()\n e.preventDefault()\n nextIndex = index === length - 1 ? 0 : index + 1\n break\n default:\n break\n }\n if (nextIndex === null) return\n roleRadios[nextIndex].click()\n roleRadios[nextIndex].focus()\n }\n\n onMounted(() => {\n const radios =\n radioGroupRef.value!.querySelectorAll<HTMLInputElement>('[type=radio]')\n const firstLabel = radios[0]\n if (!Array.from(radios).some((radio) => radio.checked) && firstLabel) {\n firstLabel.tabIndex = 0\n }\n })\n\n provide(\n radioGroupKey,\n reactive({\n ...toRefs(props),\n changeEvent,\n })\n )\n\n watch(\n () => props.modelValue,\n () => formItem?.validate('change')\n )\n\n return {\n radioGroupRef,\n handleKeydown,\n }\n },\n})\n</script>\n"],"names":["defineComponent","radioGroupProps","radioGroupEmits","ref","useFormItem","UPDATE_MODEL_EVENT","EVENT_CODE","radioGroupKey","reactive","toRefs","_openBlock","_createElementBlock"],"mappings":";;;;;;;;;;;;;;AA6BA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAOC;AAAA,EACP,OAAOC;AAAA,EAEP,MAAM,OAAO,KAAK;AAChB,UAAM,gBAAgBC;AACtB,UAAM,EAAE,aAAaC;AAErB,UAAM,cAAc,CAAC,UAAyC;AAC5D,UAAI,KAAKC,8BAAoB;AAC7B,mBAAS,MAAM,IAAI,KAAK,UAAU;AAAA;AAGpC,UAAM,gBAAgB,CAAC,MAAqB;AAC1C,UAAI,CAAC,cAAc;AAAO;AAG1B,YAAM,SAAS,EAAE;AACjB,YAAM,YACJ,OAAO,aAAa,UAAU,iBAAiB;AACjD,YAAM,SACJ,cAAc,MAAM,iBAAmC;AACzD,YAAM,SAAS,OAAO;AACtB,YAAM,QAAQ,MAAM,KAAK,QAAQ,QAAQ;AACzC,YAAM,aACJ,cAAc,MAAM,iBAAmC;AAEzD,UAAI,YAA2B;AAC/B,cAAQ,EAAE;AAAA,aACHC,gBAAW;AAAA,aACXA,gBAAW;AACd,YAAE;AACF,YAAE;AACF,sBAAY,UAAU,IAAI,SAAS,IAAI,QAAQ;AAC/C;AAAA,aACGA,gBAAW;AAAA,aACXA,gBAAW;AACd,YAAE;AACF,YAAE;AACF,sBAAY,UAAU,SAAS,IAAI,IAAI,QAAQ;AAC/C;AAAA;AAEA;AAAA;AAEJ,UAAI,cAAc;AAAM;AACxB,iBAAW,WAAW;AACtB,iBAAW,WAAW;AAAA;AAGxB,kBAAU,MAAM;AACd,YAAM,SACJ,cAAc,MAAO,iBAAmC;AAC1D,YAAM,aAAa,OAAO;AAC1B,UAAI,CAAC,MAAM,KAAK,QAAQ,KAAK,CAAC,UAAU,MAAM,YAAY,YAAY;AACpE,mBAAW,WAAW;AAAA;AAAA;AAI1B,gBACEC,qBACAC,aAAS;AAAA,SACJC,WAAO;AAAA,MACV;AAAA;AAIJ,cACE,MAAM,MAAM,YACZ,MAAM,UAAU,SAAS;AAG3B,WAAO;AAAA,MACL;AAAA,MACA;AAAA;AAAA;AAAA;2BAtGJ,wBAOM;SANAC,iBAAeC;AAAA,IACnB,KAAK;AAAA,IACL,OAAK;AAAA,IACJ;AAAA;KAED;AAAA;;;;;;;"}
1
+ {"version":3,"file":"radio-group2.js","sources":["../../../../../../packages/components/radio/src/radio-group.vue"],"sourcesContent":["<template>\n <div\n ref=\"radioGroupRef\"\n class=\"el-radio-group\"\n role=\"radiogroup\"\n @keydown=\"handleKeydown\"\n >\n <slot></slot>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n nextTick,\n provide,\n onMounted,\n ref,\n reactive,\n toRefs,\n watch,\n} from 'vue'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/utils/constants'\nimport { radioGroupKey } from '@element-plus/tokens'\nimport { useFormItem } from '@element-plus/hooks'\nimport { radioGroupEmits, radioGroupProps } from './radio-group'\nimport type { RadioGroupProps } from '..'\n\nexport default defineComponent({\n name: 'ElRadioGroup',\n props: radioGroupProps,\n emits: radioGroupEmits,\n\n setup(props, ctx) {\n const radioGroupRef = ref<HTMLDivElement>()\n const { formItem } = useFormItem()\n\n const changeEvent = (value: RadioGroupProps['modelValue']) => {\n ctx.emit(UPDATE_MODEL_EVENT, value)\n nextTick(() => ctx.emit('change', value))\n }\n\n const handleKeydown = (e: KeyboardEvent) => {\n if (!radioGroupRef.value) return\n\n // 左右上下按键 可以在 radio 组内切换不同选项\n const target = e.target as HTMLInputElement\n const className =\n target.nodeName === 'INPUT' ? '[type=radio]' : '[role=radio]'\n const radios =\n radioGroupRef.value.querySelectorAll<HTMLInputElement>(className)\n const length = radios.length\n const index = Array.from(radios).indexOf(target)\n const roleRadios =\n radioGroupRef.value.querySelectorAll<HTMLInputElement>('[role=radio]')\n\n let nextIndex: number | null = null\n switch (e.code) {\n case EVENT_CODE.left:\n case EVENT_CODE.up:\n e.stopPropagation()\n e.preventDefault()\n nextIndex = index === 0 ? length - 1 : index - 1\n break\n case EVENT_CODE.right:\n case EVENT_CODE.down:\n e.stopPropagation()\n e.preventDefault()\n nextIndex = index === length - 1 ? 0 : index + 1\n break\n default:\n break\n }\n if (nextIndex === null) return\n roleRadios[nextIndex].click()\n roleRadios[nextIndex].focus()\n }\n\n onMounted(() => {\n const radios =\n radioGroupRef.value!.querySelectorAll<HTMLInputElement>('[type=radio]')\n const firstLabel = radios[0]\n if (!Array.from(radios).some((radio) => radio.checked) && firstLabel) {\n firstLabel.tabIndex = 0\n }\n })\n\n provide(\n radioGroupKey,\n reactive({\n ...toRefs(props),\n changeEvent,\n })\n )\n\n watch(\n () => props.modelValue,\n () => formItem?.validate('change')\n )\n\n return {\n radioGroupRef,\n handleKeydown,\n }\n },\n})\n</script>\n"],"names":["defineComponent","radioGroupProps","radioGroupEmits","ref","useFormItem","UPDATE_MODEL_EVENT","EVENT_CODE","radioGroupKey","reactive","toRefs","_openBlock","_createElementBlock"],"mappings":";;;;;;;;;;;;;;AA6BA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAOC;AAAA,EACP,OAAOC;AAAA,EAEP,MAAM,OAAO,KAAK;AAChB,UAAM,gBAAgBC;AACtB,UAAM,EAAE,aAAaC;AAErB,UAAM,cAAc,CAAC,UAAyC;AAC5D,UAAI,KAAKC,8BAAoB;AAC7B,mBAAS,MAAM,IAAI,KAAK,UAAU;AAAA;AAGpC,UAAM,gBAAgB,CAAC,MAAqB;AAC1C,UAAI,CAAC,cAAc;AAAO;AAG1B,YAAM,SAAS,EAAE;AACjB,YAAM,YACJ,OAAO,aAAa,UAAU,iBAAiB;AACjD,YAAM,SACJ,cAAc,MAAM,iBAAmC;AACzD,YAAM,SAAS,OAAO;AACtB,YAAM,QAAQ,MAAM,KAAK,QAAQ,QAAQ;AACzC,YAAM,aACJ,cAAc,MAAM,iBAAmC;AAEzD,UAAI,YAA2B;AAC/B,cAAQ,EAAE;AAAA,aACHC,gBAAW;AAAA,aACXA,gBAAW;AACd,YAAE;AACF,YAAE;AACF,sBAAY,UAAU,IAAI,SAAS,IAAI,QAAQ;AAC/C;AAAA,aACGA,gBAAW;AAAA,aACXA,gBAAW;AACd,YAAE;AACF,YAAE;AACF,sBAAY,UAAU,SAAS,IAAI,IAAI,QAAQ;AAC/C;AAAA;AAEA;AAAA;AAEJ,UAAI,cAAc;AAAM;AACxB,iBAAW,WAAW;AACtB,iBAAW,WAAW;AAAA;AAGxB,kBAAU,MAAM;AACd,YAAM,SACJ,cAAc,MAAO,iBAAmC;AAC1D,YAAM,aAAa,OAAO;AAC1B,UAAI,CAAC,MAAM,KAAK,QAAQ,KAAK,CAAC,UAAU,MAAM,YAAY,YAAY;AACpE,mBAAW,WAAW;AAAA;AAAA;AAI1B,gBACEC,qBACAC,aAAS;AAAA,SACJC,WAAO;AAAA,MACV;AAAA;AAIJ,cACE,MAAM,MAAM,YACZ,MAAM,mBAAmB;AAG3B,WAAO;AAAA,MACL;AAAA,MACA;AAAA;AAAA;AAAA;2BAtGJ,wBAOM;SANAC,iBAAeC;AAAA,IACnB,KAAK;AAAA,IACL,OAAK;AAAA,IACJ;AAAA;KAED;AAAA;;;;;;;"}
@@ -18,7 +18,8 @@ const _sfc_main = vue.defineComponent({
18
18
  props: rovingFocusGroup.rovingFocusGroupProps,
19
19
  emits: [CURRENT_TAB_ID_CHANGE_EVT, "entryFocus"],
20
20
  setup(props, { emit }) {
21
- const currentTabbedId = vue.ref((props.currentTabId || props.defaultCurrentTabId) ?? null);
21
+ var _a;
22
+ const currentTabbedId = vue.ref((_a = props.currentTabId || props.defaultCurrentTabId) != null ? _a : null);
22
23
  const isBackingOut = vue.ref(false);
23
24
  const isClickFocus = vue.ref(false);
24
25
  const rovingFocusGroupRef = vue.ref(null);
@@ -38,18 +39,20 @@ const _sfc_main = vue.defineComponent({
38
39
  isBackingOut.value = true;
39
40
  };
40
41
  const onMousedown = dom.composeEventHandlers((e) => {
41
- props.onMousedown?.(e);
42
+ var _a2;
43
+ (_a2 = props.onMousedown) == null ? void 0 : _a2.call(props, e);
42
44
  }, () => {
43
45
  isClickFocus.value = true;
44
46
  });
45
47
  const onFocus = dom.composeEventHandlers((e) => {
46
- props.onFocus?.(e);
48
+ var _a2;
49
+ (_a2 = props.onFocus) == null ? void 0 : _a2.call(props, e);
47
50
  }, (e) => {
48
51
  const isKeyboardFocus = !vue.unref(isClickFocus);
49
52
  const { target, currentTarget } = e;
50
53
  if (target === currentTarget && isKeyboardFocus && !vue.unref(isBackingOut)) {
51
54
  const entryFocusEvt = new Event(ENTRY_FOCUS_EVT, EVT_OPTS);
52
- currentTarget?.dispatchEvent(entryFocusEvt);
55
+ currentTarget == null ? void 0 : currentTarget.dispatchEvent(entryFocusEvt);
53
56
  if (!entryFocusEvt.defaultPrevented) {
54
57
  const items = getItems().filter((item) => item.focusable);
55
58
  const activeItem = items.find((item) => item.active);
@@ -62,7 +65,8 @@ const _sfc_main = vue.defineComponent({
62
65
  isClickFocus.value = false;
63
66
  });
64
67
  const onBlur = dom.composeEventHandlers((e) => {
65
- props.onBlur?.(e);
68
+ var _a2;
69
+ (_a2 = props.onBlur) == null ? void 0 : _a2.call(props, e);
66
70
  }, () => {
67
71
  isBackingOut.value = false;
68
72
  });
@@ -86,7 +90,7 @@ const _sfc_main = vue.defineComponent({
86
90
  onMousedown
87
91
  });
88
92
  vue.watch(() => props.currentTabId, (val) => {
89
- currentTabbedId.value = val ?? null;
93
+ currentTabbedId.value = val != null ? val : null;
90
94
  });
91
95
  vue.onMounted(() => {
92
96
  const rovingFocusGroupEl = vue.unref(rovingFocusGroupRef);
@@ -1 +1 @@
1
- {"version":3,"file":"roving-focus-group-impl.js","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":["defineComponent","rovingFocusGroupProps","ref","inject","ROVING_FOCUS_COLLECTION_INJECTION_KEY","computed","composeEventHandlers","unref","ROVING_FOCUS_GROUP_INJECTION_KEY","readonly","toRef"],"mappings":";;;;;;;;;;;AA4BA,MAAM,4BAA4B;AAElC,MAAM,kBAAkB;AACxB,MAAM,WAAsB,EAAE,SAAS,OAAO,YAAY;AAC1D,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,cAAc;AAAA,EACd,OAAOC;AAAA,EACP,OAAO,CAAC,2BAA2B;AAAA,EACnC,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,kBAAkBC,QACrB,OAAM,gBAAgB,MAAM,wBAAwB;AAEvD,UAAM,eAAeA,QAAI;AACzB,UAAM,eAAeA,QAAI;AACzB,UAAM,sBAAsBA,QAAwB;AACpD,UAAM,EAAE,aAAaC,WACnBC,wDACA;AAEF,UAAM,4BAA4BC,aAAS,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,cAAcC,yBAClB,CAAC,MAAa;AACZ,YAAM,cAAc;AAAA,OAEtB,MAAM;AACJ,mBAAa,QAAQ;AAAA;AAIzB,UAAM,UAAUA,yBACd,CAAC,MAAkB;AACjB,YAAM,UAAU;AAAA,OAElB,CAAC,MAAM;AACL,YAAM,kBAAkB,CAACC,UAAM;AAC/B,YAAM,EAAE,QAAQ,kBAAkB;AAClC,UACE,WAAW,iBACX,mBACA,CAACA,UAAM,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,OAAOA,UAAM;AAE9B,gBAAM,aAAa,CAAC,YAAa,aAAc,GAAG,OAAO,OACvD;AAEF,gBAAM,iBAAiB,WAAW,IAAI,CAAC,SAAS,KAAK;AACrD,2BAAW;AAAA;AAAA;AAIf,mBAAa,QAAQ;AAAA;AAIzB,UAAM,SAASD,yBACb,CAAC,MAAa;AACZ,YAAM,SAAS;AAAA,OAEjB,MAAM;AACJ,mBAAa,QAAQ;AAAA;AAIzB,UAAM,mBAAmB,IAAI,SAAgB;AAC3C,WAAK,cAAc,GAAG;AAAA;AAGxB,gBAAQE,yCAAkC;AAAA,MACxC,iBAAiBC,aAAS;AAAA,MAC1B,MAAMC,UAAM,OAAO;AAAA,MACnB,UAAUL,aAAS,MAAM;AACvB,eAAOE,UAAM,gBAAgB,KAAK;AAAA;AAAA,MAEpC;AAAA,MACA;AAAA,MACA,aAAaG,UAAM,OAAO;AAAA,MAC1B,KAAKA,UAAM,OAAO;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAGF,cACE,MAAM,MAAM,cACZ,CAAC,QAAQ;AACP,sBAAgB,QAAQ,OAAO;AAAA;AAInC,kBAAU,MAAM;AACd,YAAM,qBAAqBH,UAAM;AACjC,aAAG,oBAAoB,iBAAiB;AAAA;AAG1C,wBAAgB,MAAM;AACpB,YAAM,qBAAqBA,UAAM;AACjC,cAAI,oBAAoB,iBAAiB;AAAA;AAAA;AAAA;qBA5JrC;;;;;;;"}
1
+ {"version":3,"file":"roving-focus-group-impl.js","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":["defineComponent","rovingFocusGroupProps","ref","composeEventHandlers","unref"],"mappings":";;;;;;;;;;;AA4BA,MAAM,4BAA4B;AAElC,MAAM,kBAAkB;AACxB,MAAM,WAAsB,EAAE,SAAS,OAAO,YAAY;AAC1D,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,cAAc;AAAA,EACd,OAAOC;AAAA,EACP,OAAO,CAAC,2BAA2B;AAAA,EACnC,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM;AAGN,UAAM,eAAe;AACrB,UAAM,eAAeC,QAAI;AACzB,UAAM,8BAA8C;AACpD,UAAM,sBACJA;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,mBAAaC;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,wBAAgB;AACd,YAAM,qBAAqBC,UAAM;AACjC;AAAyC;AAAA;AAAA;;;;;;;;;;;;"}
@@ -34,10 +34,11 @@ const _sfc_main = vue.defineComponent({
34
34
  }));
35
35
  const offsetRatio = vue.computed(() => instance.value[bar.value.offset] ** 2 / scrollbar$1.wrapElement[bar.value.scrollSize] / props.ratio / thumb.value[bar.value.offset]);
36
36
  const clickThumbHandler = (e) => {
37
+ var _a;
37
38
  e.stopPropagation();
38
39
  if (e.ctrlKey || [1, 2].includes(e.button))
39
40
  return;
40
- window.getSelection()?.removeAllRanges();
41
+ (_a = window.getSelection()) == null ? void 0 : _a.removeAllRanges();
41
42
  startDrag(e);
42
43
  const el = e.currentTarget;
43
44
  if (!el)
@@ -1 +1 @@
1
- {"version":3,"file":"bar2.js","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":["defineComponent","barProps","scrollbar","inject","scrollbarContextKey","ref","isClient","computed","BAR_MAP","renderThumbStyle","toRef","_createBlock","_createElementVNode"],"mappings":"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"}
1
+ {"version":3,"file":"bar2.js","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":["defineComponent","barProps","scrollbar","inject","scrollbarContextKey","ref","isClient","computed","BAR_MAP","renderThumbStyle","toRef"],"mappings":";;;;;;;;;;;;;AAkCA,MAAM,iBAAiB;AACvB,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAOC;AAAA,EAEP,MAAM,OAAO;AACX,UAAMC,cAAYC,WAAOC;AACzB,QAAI,CAACF;AACH,uBAAW,gBAAgB;AAE7B,UAAM,WAAWG;AACjB,UAAM,QAAQA;AAEd,UAAM,WAAWA,QAAI;AACrB,UAAM,UAAUA,QAAI;AAEpB,QAAI,aAAa;AACjB,QAAI,cAAc;AAClB,QAAI,qBAEOC,gBAAW,SAAS,gBAAgB;AAE/C,UAAM,MAAMC,aACV,MAAMC,aAAQ,MAAM,WAAW,aAAa;AAG9C,UAAM,aAAaD,aAAS,MAC1BE,sBAAiB;AAAA,MACf,MAAM,MAAM;AAAA,MACZ,MAAM,MAAM;AAAA,MACZ,KAAK,IAAI;AAAA;AAIb,UAAM,cAAcF,aAClB,MAIE,SAAS,MAAO,IAAI,MAAM,WAAW,IACrCL,YAAU,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,0BACEQ,UAAMR,aAAW,qBACjB;AAIF;AAAO;AACL,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;AA/KI;AAZN,yBAEM;AAAU;AACR,QACL;AAAW;;AAEZ;AACa;AACN,UACJ;AAAK,UACL;AAAS;;;AATM;;;;;;;;;;;"}
@@ -83,8 +83,8 @@ const _sfc_main = vue.defineComponent({
83
83
  };
84
84
  vue.watch(() => props.noresize, (noresize) => {
85
85
  if (noresize) {
86
- stopResizeObserver?.();
87
- stopResizeListener?.();
86
+ stopResizeObserver == null ? void 0 : stopResizeObserver();
87
+ stopResizeListener == null ? void 0 : stopResizeListener();
88
88
  } else {
89
89
  ;
90
90
  ({ stop: stopResizeObserver } = core.useResizeObserver(resize$, update));
@@ -31,9 +31,10 @@ const _sfc_main = vue.defineComponent({
31
31
  const children2 = [];
32
32
  if (Array.isArray(node.children)) {
33
33
  node.children.forEach((child) => {
34
+ var _a;
34
35
  if (child.type && child.type.name === "ElOption" && child.component && child.component.proxy) {
35
36
  children2.push(child.component.proxy);
36
- } else if (child.children?.length) {
37
+ } else if ((_a = child.children) == null ? void 0 : _a.length) {
37
38
  children2.push(...flattedChildren(child));
38
39
  }
39
40
  });
@@ -1 +1 @@
1
- {"version":3,"file":"option-group.js","sources":["../../../../../../packages/components/select/src/option-group.vue"],"sourcesContent":["<template>\n <ul v-show=\"visible\" class=\"el-select-group__wrap\">\n <li class=\"el-select-group__title\">{{ label }}</li>\n <li>\n <ul class=\"el-select-group\">\n <slot></slot>\n </ul>\n </li>\n </ul>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n provide,\n inject,\n ref,\n reactive,\n toRefs,\n getCurrentInstance,\n onMounted,\n watch,\n toRaw,\n} from 'vue'\nimport { selectGroupKey, selectKey } from './token'\n\nexport default defineComponent({\n name: 'ElOptionGroup',\n componentName: 'ElOptionGroup',\n\n props: {\n label: String,\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n setup(props) {\n const visible = ref(true)\n const instance = getCurrentInstance()\n const children = ref([])\n\n provide(\n selectGroupKey,\n reactive({\n ...toRefs(props),\n })\n )\n\n const select = inject(selectKey)\n\n onMounted(() => {\n children.value = flattedChildren(instance.subTree)\n })\n\n // get all instances of options\n const flattedChildren = (node) => {\n const children = []\n if (Array.isArray(node.children)) {\n node.children.forEach((child) => {\n if (\n child.type &&\n child.type.name === 'ElOption' &&\n child.component &&\n child.component.proxy\n ) {\n children.push(child.component.proxy)\n } else if (child.children?.length) {\n children.push(...flattedChildren(child))\n }\n })\n }\n return children\n }\n\n const { groupQueryChange } = toRaw(select)\n watch(groupQueryChange, () => {\n visible.value = children.value.some((option) => option.visible === true)\n })\n\n return {\n visible,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ref","getCurrentInstance","selectGroupKey","reactive","toRefs","inject","selectKey","toRaw","_withDirectives","_createElementVNode"],"mappings":";;;;;;;;AA0BA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,eAAe;AAAA,EAEf,OAAO;AAAA,IACL,OAAO;AAAA,IACP,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,EAGb,MAAM,OAAO;AACX,UAAM,UAAUC,QAAI;AACpB,UAAM,WAAWC;AACjB,UAAM,WAAWD,QAAI;AAErB,gBACEE,sBACAC,aAAS;AAAA,SACJC,WAAO;AAAA;AAId,UAAM,SAASC,WAAOC;AAEtB,kBAAU,MAAM;AACd,eAAS,QAAQ,gBAAgB,SAAS;AAAA;AAI5C,UAAM,kBAAkB,CAAC,SAAS;AAChC,YAAM,YAAW;AACjB,UAAI,MAAM,QAAQ,KAAK,WAAW;AAChC,aAAK,SAAS,QAAQ,CAAC,UAAU;AAC/B,cACE,MAAM,QACN,MAAM,KAAK,SAAS,cACpB,MAAM,aACN,MAAM,UAAU,OAChB;AACA,sBAAS,KAAK,MAAM,UAAU;AAAA,qBACrB,MAAM,UAAU,QAAQ;AACjC,sBAAS,KAAK,GAAG,gBAAgB;AAAA;AAAA;AAAA;AAIvC,aAAO;AAAA;AAGT,UAAM,EAAE,qBAAqBC,UAAM;AACnC,cAAM,kBAAkB,MAAM;AAC5B,cAAQ,QAAQ,SAAS,MAAM,KAAK,CAAC,WAAW,OAAO,YAAY;AAAA;AAGrE,WAAO;AAAA,MACL;AAAA;AAAA;AAAA;qBA/EE,OAAM;qBAEJ,OAAM;;2CAHd;SACEC,4DAAsC,kBAAK;AAAA,IAC3CC,uBAIK;AAAA,2BAHH,MAEK,MAFL;AAAA,6BACe;AAAA;;;YAJA;AAAA;;;;;;;"}
1
+ {"version":3,"file":"option-group.js","sources":["../../../../../../packages/components/select/src/option-group.vue"],"sourcesContent":["<template>\n <ul v-show=\"visible\" class=\"el-select-group__wrap\">\n <li class=\"el-select-group__title\">{{ label }}</li>\n <li>\n <ul class=\"el-select-group\">\n <slot></slot>\n </ul>\n </li>\n </ul>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n provide,\n inject,\n ref,\n reactive,\n toRefs,\n getCurrentInstance,\n onMounted,\n watch,\n toRaw,\n} from 'vue'\nimport { selectGroupKey, selectKey } from './token'\n\nexport default defineComponent({\n name: 'ElOptionGroup',\n componentName: 'ElOptionGroup',\n\n props: {\n label: String,\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n setup(props) {\n const visible = ref(true)\n const instance = getCurrentInstance()\n const children = ref([])\n\n provide(\n selectGroupKey,\n reactive({\n ...toRefs(props),\n })\n )\n\n const select = inject(selectKey)\n\n onMounted(() => {\n children.value = flattedChildren(instance.subTree)\n })\n\n // get all instances of options\n const flattedChildren = (node) => {\n const children = []\n if (Array.isArray(node.children)) {\n node.children.forEach((child) => {\n if (\n child.type &&\n child.type.name === 'ElOption' &&\n child.component &&\n child.component.proxy\n ) {\n children.push(child.component.proxy)\n } else if (child.children?.length) {\n children.push(...flattedChildren(child))\n }\n })\n }\n return children\n }\n\n const { groupQueryChange } = toRaw(select)\n watch(groupQueryChange, () => {\n visible.value = children.value.some((option) => option.visible === true)\n })\n\n return {\n visible,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ref","getCurrentInstance","selectGroupKey","reactive","toRefs","inject","selectKey"],"mappings":";;;;;;;;AA0BA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,eAAe;AAAA,EAEf,OAAO;AAAA,IACL,OAAO;AAAA,IACP,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,EAGb,MAAM,OAAO;AACX,UAAM,UAAUC,QAAI;AACpB,UAAM,WAAWC;AACjB,UAAM,WAAWD,QAAI;AAErB,gBACEE,sBACAC,aAAS;AAAA,SACJC,WAAO;AAAA;AAId,UAAM,SAASC,WAAOC;AAEtB,kBAAU,MAAM;AACd,eAAS,QAAQ,gBAAgB,SAAS;AAAA;AAI5C,UAAM,kBAAkB,CAAC,SAAS;AAChC,YAAM,YAAW;AACjB,UAAI,MAAM,QAAQ,KAAK,WAAW;AAChC,aAAK,SAAS,QAAQ,CAAC,UAAU;AAC/B,cACE;AAKA,iCAAoB,UAAU;AAAA,qBACrB,MAAM;AACf,sBAAS,KAAK,mBAAmB;AAAA;AAAA;AAAA;AAIvC;AAAO;AAGT;AACA,UAAM,kBAAkB;AACtB;AAAmE;AAGrE;AAAO;AACL;AAAA;AAAA;;qBA7EI,OAAM;;;SAFZ,gBAAmD;AAAR,2BAKtC;AAAA,2BAHH,MAEK;AAFL;AACe;;;;AAJA;;;;;;;;"}
@@ -17,7 +17,8 @@ const _sfc_main = vue.defineComponent({
17
17
  const isFitInputWidth = vue.computed(() => select.props.fitInputWidth);
18
18
  const minWidth = vue.ref("");
19
19
  function updateMinWidth() {
20
- minWidth.value = `${select.selectWrapper?.getBoundingClientRect().width}px`;
20
+ var _a;
21
+ minWidth.value = `${(_a = select.selectWrapper) == null ? void 0 : _a.getBoundingClientRect().width}px`;
21
22
  }
22
23
  vue.onMounted(() => {
23
24
  updateMinWidth();
@@ -1 +1 @@
1
- {"version":3,"file":"select-dropdown.js","sources":["../../../../../../packages/components/select/src/select-dropdown.vue"],"sourcesContent":["<template>\n <div\n class=\"el-select-dropdown\"\n :class=\"[{ 'is-multiple': isMultiple }, popperClass]\"\n :style=\"{ [isFitInputWidth ? 'width' : 'minWidth']: minWidth }\"\n >\n <slot></slot>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n onMounted,\n onBeforeUnmount,\n inject,\n ref,\n} from 'vue'\nimport {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\nimport { selectKey } from './token'\nimport type { ResizableElement } from '@element-plus/utils/resize-event'\n\nexport default defineComponent({\n name: 'ElSelectDropdown',\n\n componentName: 'ElSelectDropdown',\n\n setup() {\n const select = inject(selectKey)!\n\n // computed\n const popperClass = computed(() => select.props.popperClass)\n const isMultiple = computed(() => select.props.multiple)\n const isFitInputWidth = computed(() => select.props.fitInputWidth)\n const minWidth = ref('')\n\n function updateMinWidth() {\n minWidth.value = `${\n select.selectWrapper?.getBoundingClientRect().width\n }px`\n }\n\n onMounted(() => {\n // TODO: updatePopper\n // popper.value.update()\n updateMinWidth()\n addResizeListener(\n select.selectWrapper as ResizableElement,\n updateMinWidth\n )\n })\n\n onBeforeUnmount(() => {\n removeResizeListener(\n select.selectWrapper as ResizableElement,\n updateMinWidth\n )\n })\n\n return {\n minWidth,\n popperClass,\n isMultiple,\n isFitInputWidth,\n }\n },\n})\n</script>\n"],"names":["defineComponent","inject","selectKey","computed","ref","_openBlock","_normalizeClass"],"mappings":";;;;;;;;;AA0BA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,eAAe;AAAA,EAEf,QAAQ;AACN,UAAM,SAASC,WAAOC;AAGtB,UAAM,cAAcC,aAAS,MAAM,OAAO,MAAM;AAChD,UAAM,aAAaA,aAAS,MAAM,OAAO,MAAM;AAC/C,UAAM,kBAAkBA,aAAS,MAAM,OAAO,MAAM;AACpD,UAAM,WAAWC,QAAI;AAErB,8BAA0B;AACxB,eAAS,QAAQ,GACf,OAAO,eAAe,wBAAwB;AAAA;AAIlD,kBAAU,MAAM;AAGd;AACA,oCACE,OAAO,eACP;AAAA;AAIJ,wBAAgB,MAAM;AACpB,uCACE,OAAO,eACP;AAAA;AAIJ,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;2BAlEJ,wBAMM;SALCC,wCAAC,OAAoB;AAAA,IAEzB,OAAKC,0CAAoB,qCAA0B,KAAQ;AAAA;KAE5D;AAAA;;;;;;;"}
1
+ {"version":3,"file":"select-dropdown.js","sources":["../../../../../../packages/components/select/src/select-dropdown.vue"],"sourcesContent":["<template>\n <div\n class=\"el-select-dropdown\"\n :class=\"[{ 'is-multiple': isMultiple }, popperClass]\"\n :style=\"{ [isFitInputWidth ? 'width' : 'minWidth']: minWidth }\"\n >\n <slot></slot>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n onMounted,\n onBeforeUnmount,\n inject,\n ref,\n} from 'vue'\nimport {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\nimport { selectKey } from './token'\nimport type { ResizableElement } from '@element-plus/utils/resize-event'\n\nexport default defineComponent({\n name: 'ElSelectDropdown',\n\n componentName: 'ElSelectDropdown',\n\n setup() {\n const select = inject(selectKey)!\n\n // computed\n const popperClass = computed(() => select.props.popperClass)\n const isMultiple = computed(() => select.props.multiple)\n const isFitInputWidth = computed(() => select.props.fitInputWidth)\n const minWidth = ref('')\n\n function updateMinWidth() {\n minWidth.value = `${\n select.selectWrapper?.getBoundingClientRect().width\n }px`\n }\n\n onMounted(() => {\n // TODO: updatePopper\n // popper.value.update()\n updateMinWidth()\n addResizeListener(\n select.selectWrapper as ResizableElement,\n updateMinWidth\n )\n })\n\n onBeforeUnmount(() => {\n removeResizeListener(\n select.selectWrapper as ResizableElement,\n updateMinWidth\n )\n })\n\n return {\n minWidth,\n popperClass,\n isMultiple,\n isFitInputWidth,\n }\n },\n})\n</script>\n"],"names":["defineComponent","inject","selectKey","computed","ref"],"mappings":";;;;;;;;;AA0BA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,eAAe;AAAA,EAEf,QAAQ;AACN,UAAM,SAASC,WAAOC;AAGtB,UAAM,cAAcC,aAAS,MAAM,OAAO,MAAM;AAChD,UAAM,aAAaA,aAAS,MAAM,OAAO,MAAM;AAC/C,UAAM,kBAAkBA,aAAS,MAAM,OAAO,MAAM;AACpD,UAAM,WAAWC,QAAI;AAErB,8BAA0B;AACxB;AACgD;AAIlD;AAGE;AACA;AAEE;AAIJ;AACE;AAEE;AAIJ;AAAO;AACL,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;SAjEG,kCAAC;AAAoB,wDAEA;AAAkC;;AAE5D;;;;;;;;"}
@@ -262,7 +262,8 @@ const _sfc_main = vue.defineComponent({
262
262
  ctx.emit(constants.UPDATE_MODEL_EVENT, "");
263
263
  }
264
264
  const popperPaneRef = vue.computed(() => {
265
- return tooltipRef.value?.popperRef?.contentRef;
265
+ var _a, _b;
266
+ return (_b = (_a = tooltipRef.value) == null ? void 0 : _a.popperRef) == null ? void 0 : _b.contentRef;
266
267
  });
267
268
  return {
268
269
  tagInMultiLine,
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectWrapper\"\n v-click-outside:[popperPaneRef]=\"handleClose\"\n :class=\"wrapperKls\"\n @click.stop=\"toggleMenu\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n v-model:visible=\"dropMenuVisible\"\n placement=\"bottom-start\"\n :append-to-body=\"popperAppendToBody\"\n :popper-class=\"`el-select__popper ${popperClass}`\"\n :fallback-placements=\"['bottom-start', 'top-start', 'right', 'left']\"\n effect=\"light\"\n pure\n trigger=\"click\"\n transition=\"el-zoom-in-top\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n persistent\n @show=\"handleMenuEnter\"\n >\n <template #default>\n <div class=\"select-trigger\">\n <div\n v-if=\"multiple\"\n ref=\"tags\"\n class=\"el-select__tags\"\n :style=\"selectTagsStyle\"\n >\n <span v-if=\"collapseTags && selected.length\">\n <el-tag\n :closable=\"!selectDisabled && !selected[0].isDisabled\"\n :size=\"collapseTagSize\"\n :hit=\"selected[0].hitState\"\n :type=\"tagType\"\n disable-transitions\n @close=\"deleteTag($event, selected[0])\"\n >\n <span\n class=\"el-select__tags-text\"\n :style=\"{ maxWidth: inputWidth - 123 + 'px' }\"\n >{{ selected[0].currentLabel }}</span\n >\n </el-tag>\n <el-tag\n v-if=\"selected.length > 1\"\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n disable-transitions\n >\n <span class=\"el-select__tags-text\"\n >+ {{ selected.length - 1 }}</span\n >\n </el-tag>\n </span>\n <!-- <div> -->\n <transition v-if=\"!collapseTags\" @after-leave=\"resetInputHeight\">\n <span\n :style=\"{\n marginLeft:\n prefixWidth && selected.length ? `${prefixWidth}px` : null,\n }\"\n >\n <el-tag\n v-for=\"item in selected\"\n :key=\"getValueKey(item)\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :hit=\"item.hitState\"\n :type=\"tagType\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span\n class=\"el-select__tags-text\"\n :style=\"{ maxWidth: inputWidth - 75 + 'px' }\"\n >{{ item.currentLabel }}</span\n >\n </el-tag>\n </span>\n </transition>\n <!-- </div> -->\n <input\n v-if=\"filterable\"\n ref=\"input\"\n v-model=\"query\"\n type=\"text\"\n class=\"el-select__input\"\n :class=\"[selectSize ? `is-${selectSize}` : '']\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"{\n marginLeft:\n (prefixWidth && !selected.length) || tagInMultiLine\n ? `${prefixWidth}px`\n : null,\n flexGrow: '1',\n width: `${inputLength / (inputWidth - 32)}%`,\n maxWidth: `${inputWidth - 42}px`,\n }\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keyup=\"managePlaceholder\"\n @keydown=\"resetInputState\"\n @keydown.down.prevent=\"navigateOptions('next')\"\n @keydown.up.prevent=\"navigateOptions('prev')\"\n @keydown.esc.stop.prevent=\"visible = false\"\n @keydown.enter.stop.prevent=\"selectOption\"\n @keydown.delete=\"deletePrevTag\"\n @keydown.tab=\"visible = false\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @input=\"debouncedQueryChange\"\n />\n </div>\n <el-input\n :id=\"id\"\n ref=\"reference\"\n v-model=\"selectedLabel\"\n type=\"text\"\n :placeholder=\"currentPlaceholder\"\n :name=\"name\"\n :autocomplete=\"autocomplete\"\n :size=\"selectSize\"\n :disabled=\"selectDisabled\"\n :readonly=\"readonly\"\n :validate-event=\"false\"\n :class=\"{ 'is-focus': visible }\"\n :tabindex=\"multiple && filterable ? -1 : undefined\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @input=\"debouncedOnInputChange\"\n @paste=\"debouncedOnInputChange\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @keydown.down.stop.prevent=\"navigateOptions('next')\"\n @keydown.up.stop.prevent=\"navigateOptions('prev')\"\n @keydown.enter.stop.prevent=\"selectOption\"\n @keydown.esc.stop.prevent=\"visible = false\"\n @keydown.tab=\"visible = false\"\n @mouseenter=\"inputHovering = true\"\n @mouseleave=\"inputHovering = false\"\n >\n <template v-if=\"$slots.prefix\" #prefix>\n <div\n style=\"\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n \"\n >\n <slot name=\"prefix\"></slot>\n </div>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"iconComponent\"\n v-show=\"!showClose\"\n :class=\"['el-select__caret', 'el-input__icon', iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClose && clearIcon\"\n class=\"el-select__caret el-input__icon\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n </div>\n </template>\n <template #content>\n <el-select-menu>\n <el-scrollbar\n v-show=\"options.size > 0 && !loading\"\n ref=\"scrollbar\"\n tag=\"ul\"\n wrap-class=\"el-select-dropdown__wrap\"\n view-class=\"el-select-dropdown__list\"\n :class=\"{\n 'is-empty': !allowCreate && query && filteredOptionsCount === 0,\n }\"\n >\n <el-option v-if=\"showNewOption\" :value=\"query\" :created=\"true\" />\n <slot></slot>\n </el-scrollbar>\n <template\n v-if=\"\n emptyText &&\n (!allowCreate || loading || (allowCreate && options.size === 0))\n \"\n >\n <slot v-if=\"$slots.empty\" name=\"empty\"></slot>\n <p v-else class=\"el-select-dropdown__empty\">\n {{ emptyText }}\n </p>\n </template>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n toRefs,\n defineComponent,\n onMounted,\n onBeforeUnmount,\n nextTick,\n reactive,\n provide,\n computed,\n unref,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport { useFocus, useLocale } from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@element-plus/utils/constants'\nimport {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport { CircleClose, ArrowUp } from '@element-plus/icons-vue'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect, useSelectStates } from './useSelect'\nimport { selectKey } from './token'\n\nimport type { PropType, Component } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type { SelectContext } from './token'\n\nexport default defineComponent({\n name: 'ElSelect',\n componentName: 'ElSelect',\n components: {\n ElInput,\n ElSelectMenu,\n ElOption,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: {\n name: String,\n id: String,\n modelValue: {\n type: [Array, String, Number, Boolean, Object],\n default: undefined,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n automaticDropdown: Boolean,\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n disabled: Boolean,\n clearable: Boolean,\n filterable: Boolean,\n allowCreate: Boolean,\n loading: Boolean,\n popperClass: {\n type: String,\n default: '',\n },\n remote: Boolean,\n loadingText: String,\n noMatchText: String,\n noDataText: String,\n remoteMethod: Function,\n filterMethod: Function,\n multiple: Boolean,\n multipleLimit: {\n type: Number,\n default: 0,\n },\n placeholder: {\n type: String,\n },\n defaultFirstOption: Boolean,\n reserveKeyword: {\n type: Boolean,\n default: true,\n },\n valueKey: {\n type: String,\n default: 'value',\n },\n collapseTags: Boolean,\n popperAppendToBody: {\n type: Boolean,\n default: true,\n },\n clearIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: CircleClose,\n },\n fitInputWidth: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: ArrowUp,\n },\n tagType: {\n type: String,\n default: 'info',\n },\n },\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n ],\n\n setup(props, ctx) {\n const { t } = useLocale()\n const states = useSelectStates(props)\n const {\n optionsArray,\n selectSize,\n readonly,\n handleResize,\n collapseTagSize,\n debouncedOnInputChange,\n debouncedQueryChange,\n deletePrevTag,\n deleteTag,\n deleteSelected,\n handleOptionSelect,\n scrollToOption,\n setSelected,\n resetInputHeight,\n managePlaceholder,\n showClose,\n selectDisabled,\n iconComponent,\n iconReverse,\n showNewOption,\n emptyText,\n toggleLastOptionHitState,\n resetInputState,\n handleComposition,\n onOptionCreate,\n onOptionDestroy,\n handleMenuEnter,\n handleFocus,\n blur,\n handleBlur,\n handleClearClick,\n handleClose,\n toggleMenu,\n selectOption,\n getValueKey,\n navigateOptions,\n dropMenuVisible,\n\n reference,\n input,\n tooltipRef,\n tags,\n selectWrapper,\n scrollbar,\n queryChange,\n groupQueryChange,\n } = useSelect(props, states, ctx)\n\n const { focus } = useFocus(reference)\n\n const {\n inputWidth,\n selected,\n inputLength,\n filteredOptionsCount,\n visible,\n softFocus,\n selectedLabel,\n hoverIndex,\n query,\n inputHovering,\n currentPlaceholder,\n menuVisibleOnFocus,\n isOnComposition,\n isSilentBlur,\n options,\n cachedOptions,\n optionsCount,\n prefixWidth,\n tagInMultiLine,\n } = toRefs(states)\n\n const wrapperKls = computed(() => {\n const classList = ['el-select']\n const _selectSize = unref(selectSize)\n if (_selectSize) {\n classList.push(`el-select--${_selectSize}`)\n }\n return classList\n })\n\n const selectTagsStyle = computed(() => ({\n maxWidth: `${unref(inputWidth) - 32}px`,\n width: '100%',\n }))\n\n provide(\n selectKey,\n reactive({\n props,\n options,\n optionsArray,\n cachedOptions,\n optionsCount,\n filteredOptionsCount,\n hoverIndex,\n handleOptionSelect,\n onOptionCreate,\n onOptionDestroy,\n selectWrapper,\n selected,\n setSelected,\n queryChange,\n groupQueryChange,\n }) as unknown as SelectContext\n )\n\n onMounted(() => {\n states.cachedPlaceHolder = currentPlaceholder.value =\n props.placeholder || t('el.select.placeholder')\n if (\n props.multiple &&\n Array.isArray(props.modelValue) &&\n props.modelValue.length > 0\n ) {\n currentPlaceholder.value = ''\n }\n addResizeListener(selectWrapper.value as any, handleResize)\n if (reference.value && reference.value.$el) {\n const sizeMap = {\n large: 36,\n default: 32,\n small: 28,\n }\n const input = reference.value.input as HTMLInputElement\n states.initialInputHeight =\n input.getBoundingClientRect().height || sizeMap[selectSize.value]\n }\n if (props.remote && props.multiple) {\n resetInputHeight()\n }\n nextTick(() => {\n if (!reference.value) return\n if (reference.value.$el) {\n inputWidth.value = reference.value.$el.getBoundingClientRect().width\n }\n if (ctx.slots.prefix) {\n const inputChildNodes = reference.value.$el.childNodes\n const input = (Array.from(inputChildNodes) as HTMLElement[]).filter(\n (item) => item.tagName === 'INPUT'\n )[0]\n const prefix = reference.value.$el.querySelector('.el-input__prefix')\n prefixWidth.value = Math.max(\n prefix.getBoundingClientRect().width + 5,\n 30\n )\n if (states.prefixWidth) {\n input.style.paddingLeft = `${Math.max(states.prefixWidth, 30)}px`\n }\n }\n })\n setSelected()\n })\n\n onBeforeUnmount(() => {\n removeResizeListener(selectWrapper.value as any, handleResize)\n })\n\n if (props.multiple && !Array.isArray(props.modelValue)) {\n ctx.emit(UPDATE_MODEL_EVENT, [])\n }\n if (!props.multiple && Array.isArray(props.modelValue)) {\n ctx.emit(UPDATE_MODEL_EVENT, '')\n }\n\n const popperPaneRef = computed(() => {\n return tooltipRef.value?.popperRef?.contentRef\n })\n\n return {\n tagInMultiLine,\n prefixWidth,\n selectSize,\n readonly,\n handleResize,\n collapseTagSize,\n debouncedOnInputChange,\n debouncedQueryChange,\n deletePrevTag,\n deleteTag,\n deleteSelected,\n handleOptionSelect,\n scrollToOption,\n inputWidth,\n selected,\n inputLength,\n filteredOptionsCount,\n visible,\n softFocus,\n selectedLabel,\n hoverIndex,\n query,\n inputHovering,\n currentPlaceholder,\n menuVisibleOnFocus,\n isOnComposition,\n isSilentBlur,\n options,\n resetInputHeight,\n managePlaceholder,\n showClose,\n selectDisabled,\n iconComponent,\n iconReverse,\n showNewOption,\n emptyText,\n toggleLastOptionHitState,\n resetInputState,\n handleComposition,\n handleMenuEnter,\n handleFocus,\n blur,\n handleBlur,\n handleClearClick,\n handleClose,\n toggleMenu,\n selectOption,\n getValueKey,\n navigateOptions,\n dropMenuVisible,\n focus,\n\n reference,\n input,\n tooltipRef,\n popperPaneRef,\n tags,\n selectWrapper,\n scrollbar,\n\n wrapperKls,\n selectTagsStyle,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElInput","ElSelectMenu","ElOption","ElTag","ElScrollbar","ElTooltip","ElIcon","ClickOutside","isValidComponentSize","CircleClose","ArrowUp","UPDATE_MODEL_EVENT","CHANGE_EVENT","useLocale","useSelectStates","useSelect","useFocus","toRefs","computed","unref","selectKey","reactive","_withDirectives","_normalizeClass","_withCtx","_createElementBlock","_createCommentVNode","_Fragment","_openBlock","_withKeys","_createSlots","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"select.js","sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectWrapper\"\n v-click-outside:[popperPaneRef]=\"handleClose\"\n :class=\"wrapperKls\"\n @click.stop=\"toggleMenu\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n v-model:visible=\"dropMenuVisible\"\n placement=\"bottom-start\"\n :append-to-body=\"popperAppendToBody\"\n :popper-class=\"`el-select__popper ${popperClass}`\"\n :fallback-placements=\"['bottom-start', 'top-start', 'right', 'left']\"\n effect=\"light\"\n pure\n trigger=\"click\"\n transition=\"el-zoom-in-top\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n persistent\n @show=\"handleMenuEnter\"\n >\n <template #default>\n <div class=\"select-trigger\">\n <div\n v-if=\"multiple\"\n ref=\"tags\"\n class=\"el-select__tags\"\n :style=\"selectTagsStyle\"\n >\n <span v-if=\"collapseTags && selected.length\">\n <el-tag\n :closable=\"!selectDisabled && !selected[0].isDisabled\"\n :size=\"collapseTagSize\"\n :hit=\"selected[0].hitState\"\n :type=\"tagType\"\n disable-transitions\n @close=\"deleteTag($event, selected[0])\"\n >\n <span\n class=\"el-select__tags-text\"\n :style=\"{ maxWidth: inputWidth - 123 + 'px' }\"\n >{{ selected[0].currentLabel }}</span\n >\n </el-tag>\n <el-tag\n v-if=\"selected.length > 1\"\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n disable-transitions\n >\n <span class=\"el-select__tags-text\"\n >+ {{ selected.length - 1 }}</span\n >\n </el-tag>\n </span>\n <!-- <div> -->\n <transition v-if=\"!collapseTags\" @after-leave=\"resetInputHeight\">\n <span\n :style=\"{\n marginLeft:\n prefixWidth && selected.length ? `${prefixWidth}px` : null,\n }\"\n >\n <el-tag\n v-for=\"item in selected\"\n :key=\"getValueKey(item)\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :hit=\"item.hitState\"\n :type=\"tagType\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span\n class=\"el-select__tags-text\"\n :style=\"{ maxWidth: inputWidth - 75 + 'px' }\"\n >{{ item.currentLabel }}</span\n >\n </el-tag>\n </span>\n </transition>\n <!-- </div> -->\n <input\n v-if=\"filterable\"\n ref=\"input\"\n v-model=\"query\"\n type=\"text\"\n class=\"el-select__input\"\n :class=\"[selectSize ? `is-${selectSize}` : '']\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"{\n marginLeft:\n (prefixWidth && !selected.length) || tagInMultiLine\n ? `${prefixWidth}px`\n : null,\n flexGrow: '1',\n width: `${inputLength / (inputWidth - 32)}%`,\n maxWidth: `${inputWidth - 42}px`,\n }\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keyup=\"managePlaceholder\"\n @keydown=\"resetInputState\"\n @keydown.down.prevent=\"navigateOptions('next')\"\n @keydown.up.prevent=\"navigateOptions('prev')\"\n @keydown.esc.stop.prevent=\"visible = false\"\n @keydown.enter.stop.prevent=\"selectOption\"\n @keydown.delete=\"deletePrevTag\"\n @keydown.tab=\"visible = false\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @input=\"debouncedQueryChange\"\n />\n </div>\n <el-input\n :id=\"id\"\n ref=\"reference\"\n v-model=\"selectedLabel\"\n type=\"text\"\n :placeholder=\"currentPlaceholder\"\n :name=\"name\"\n :autocomplete=\"autocomplete\"\n :size=\"selectSize\"\n :disabled=\"selectDisabled\"\n :readonly=\"readonly\"\n :validate-event=\"false\"\n :class=\"{ 'is-focus': visible }\"\n :tabindex=\"multiple && filterable ? -1 : undefined\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @input=\"debouncedOnInputChange\"\n @paste=\"debouncedOnInputChange\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @keydown.down.stop.prevent=\"navigateOptions('next')\"\n @keydown.up.stop.prevent=\"navigateOptions('prev')\"\n @keydown.enter.stop.prevent=\"selectOption\"\n @keydown.esc.stop.prevent=\"visible = false\"\n @keydown.tab=\"visible = false\"\n @mouseenter=\"inputHovering = true\"\n @mouseleave=\"inputHovering = false\"\n >\n <template v-if=\"$slots.prefix\" #prefix>\n <div\n style=\"\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n \"\n >\n <slot name=\"prefix\"></slot>\n </div>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"iconComponent\"\n v-show=\"!showClose\"\n :class=\"['el-select__caret', 'el-input__icon', iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClose && clearIcon\"\n class=\"el-select__caret el-input__icon\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n </div>\n </template>\n <template #content>\n <el-select-menu>\n <el-scrollbar\n v-show=\"options.size > 0 && !loading\"\n ref=\"scrollbar\"\n tag=\"ul\"\n wrap-class=\"el-select-dropdown__wrap\"\n view-class=\"el-select-dropdown__list\"\n :class=\"{\n 'is-empty': !allowCreate && query && filteredOptionsCount === 0,\n }\"\n >\n <el-option v-if=\"showNewOption\" :value=\"query\" :created=\"true\" />\n <slot></slot>\n </el-scrollbar>\n <template\n v-if=\"\n emptyText &&\n (!allowCreate || loading || (allowCreate && options.size === 0))\n \"\n >\n <slot v-if=\"$slots.empty\" name=\"empty\"></slot>\n <p v-else class=\"el-select-dropdown__empty\">\n {{ emptyText }}\n </p>\n </template>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n toRefs,\n defineComponent,\n onMounted,\n onBeforeUnmount,\n nextTick,\n reactive,\n provide,\n computed,\n unref,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport { useFocus, useLocale } from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@element-plus/utils/constants'\nimport {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport { CircleClose, ArrowUp } from '@element-plus/icons-vue'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect, useSelectStates } from './useSelect'\nimport { selectKey } from './token'\n\nimport type { PropType, Component } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type { SelectContext } from './token'\n\nexport default defineComponent({\n name: 'ElSelect',\n componentName: 'ElSelect',\n components: {\n ElInput,\n ElSelectMenu,\n ElOption,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: {\n name: String,\n id: String,\n modelValue: {\n type: [Array, String, Number, Boolean, Object],\n default: undefined,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n automaticDropdown: Boolean,\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n disabled: Boolean,\n clearable: Boolean,\n filterable: Boolean,\n allowCreate: Boolean,\n loading: Boolean,\n popperClass: {\n type: String,\n default: '',\n },\n remote: Boolean,\n loadingText: String,\n noMatchText: String,\n noDataText: String,\n remoteMethod: Function,\n filterMethod: Function,\n multiple: Boolean,\n multipleLimit: {\n type: Number,\n default: 0,\n },\n placeholder: {\n type: String,\n },\n defaultFirstOption: Boolean,\n reserveKeyword: {\n type: Boolean,\n default: true,\n },\n valueKey: {\n type: String,\n default: 'value',\n },\n collapseTags: Boolean,\n popperAppendToBody: {\n type: Boolean,\n default: true,\n },\n clearIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: CircleClose,\n },\n fitInputWidth: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: ArrowUp,\n },\n tagType: {\n type: String,\n default: 'info',\n },\n },\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n ],\n\n setup(props, ctx) {\n const { t } = useLocale()\n const states = useSelectStates(props)\n const {\n optionsArray,\n selectSize,\n readonly,\n handleResize,\n collapseTagSize,\n debouncedOnInputChange,\n debouncedQueryChange,\n deletePrevTag,\n deleteTag,\n deleteSelected,\n handleOptionSelect,\n scrollToOption,\n setSelected,\n resetInputHeight,\n managePlaceholder,\n showClose,\n selectDisabled,\n iconComponent,\n iconReverse,\n showNewOption,\n emptyText,\n toggleLastOptionHitState,\n resetInputState,\n handleComposition,\n onOptionCreate,\n onOptionDestroy,\n handleMenuEnter,\n handleFocus,\n blur,\n handleBlur,\n handleClearClick,\n handleClose,\n toggleMenu,\n selectOption,\n getValueKey,\n navigateOptions,\n dropMenuVisible,\n\n reference,\n input,\n tooltipRef,\n tags,\n selectWrapper,\n scrollbar,\n queryChange,\n groupQueryChange,\n } = useSelect(props, states, ctx)\n\n const { focus } = useFocus(reference)\n\n const {\n inputWidth,\n selected,\n inputLength,\n filteredOptionsCount,\n visible,\n softFocus,\n selectedLabel,\n hoverIndex,\n query,\n inputHovering,\n currentPlaceholder,\n menuVisibleOnFocus,\n isOnComposition,\n isSilentBlur,\n options,\n cachedOptions,\n optionsCount,\n prefixWidth,\n tagInMultiLine,\n } = toRefs(states)\n\n const wrapperKls = computed(() => {\n const classList = ['el-select']\n const _selectSize = unref(selectSize)\n if (_selectSize) {\n classList.push(`el-select--${_selectSize}`)\n }\n return classList\n })\n\n const selectTagsStyle = computed(() => ({\n maxWidth: `${unref(inputWidth) - 32}px`,\n width: '100%',\n }))\n\n provide(\n selectKey,\n reactive({\n props,\n options,\n optionsArray,\n cachedOptions,\n optionsCount,\n filteredOptionsCount,\n hoverIndex,\n handleOptionSelect,\n onOptionCreate,\n onOptionDestroy,\n selectWrapper,\n selected,\n setSelected,\n queryChange,\n groupQueryChange,\n }) as unknown as SelectContext\n )\n\n onMounted(() => {\n states.cachedPlaceHolder = currentPlaceholder.value =\n props.placeholder || t('el.select.placeholder')\n if (\n props.multiple &&\n Array.isArray(props.modelValue) &&\n props.modelValue.length > 0\n ) {\n currentPlaceholder.value = ''\n }\n addResizeListener(selectWrapper.value as any, handleResize)\n if (reference.value && reference.value.$el) {\n const sizeMap = {\n large: 36,\n default: 32,\n small: 28,\n }\n const input = reference.value.input as HTMLInputElement\n states.initialInputHeight =\n input.getBoundingClientRect().height || sizeMap[selectSize.value]\n }\n if (props.remote && props.multiple) {\n resetInputHeight()\n }\n nextTick(() => {\n if (!reference.value) return\n if (reference.value.$el) {\n inputWidth.value = reference.value.$el.getBoundingClientRect().width\n }\n if (ctx.slots.prefix) {\n const inputChildNodes = reference.value.$el.childNodes\n const input = (Array.from(inputChildNodes) as HTMLElement[]).filter(\n (item) => item.tagName === 'INPUT'\n )[0]\n const prefix = reference.value.$el.querySelector('.el-input__prefix')\n prefixWidth.value = Math.max(\n prefix.getBoundingClientRect().width + 5,\n 30\n )\n if (states.prefixWidth) {\n input.style.paddingLeft = `${Math.max(states.prefixWidth, 30)}px`\n }\n }\n })\n setSelected()\n })\n\n onBeforeUnmount(() => {\n removeResizeListener(selectWrapper.value as any, handleResize)\n })\n\n if (props.multiple && !Array.isArray(props.modelValue)) {\n ctx.emit(UPDATE_MODEL_EVENT, [])\n }\n if (!props.multiple && Array.isArray(props.modelValue)) {\n ctx.emit(UPDATE_MODEL_EVENT, '')\n }\n\n const popperPaneRef = computed(() => {\n return tooltipRef.value?.popperRef?.contentRef\n })\n\n return {\n tagInMultiLine,\n prefixWidth,\n selectSize,\n readonly,\n handleResize,\n collapseTagSize,\n debouncedOnInputChange,\n debouncedQueryChange,\n deletePrevTag,\n deleteTag,\n deleteSelected,\n handleOptionSelect,\n scrollToOption,\n inputWidth,\n selected,\n inputLength,\n filteredOptionsCount,\n visible,\n softFocus,\n selectedLabel,\n hoverIndex,\n query,\n inputHovering,\n currentPlaceholder,\n menuVisibleOnFocus,\n isOnComposition,\n isSilentBlur,\n options,\n resetInputHeight,\n managePlaceholder,\n showClose,\n selectDisabled,\n iconComponent,\n iconReverse,\n showNewOption,\n emptyText,\n toggleLastOptionHitState,\n resetInputState,\n handleComposition,\n handleMenuEnter,\n handleFocus,\n blur,\n handleBlur,\n handleClearClick,\n handleClose,\n toggleMenu,\n selectOption,\n getValueKey,\n navigateOptions,\n dropMenuVisible,\n focus,\n\n reference,\n input,\n tooltipRef,\n popperPaneRef,\n tags,\n selectWrapper,\n scrollbar,\n\n wrapperKls,\n selectTagsStyle,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElInput","ElSelectMenu","ElOption","ElTag","ElScrollbar","ElTooltip","ElIcon","ClickOutside","isValidComponentSize","CircleClose","ArrowUp","UPDATE_MODEL_EVENT","CHANGE_EVENT","useLocale","useSelectStates","useSelect","useFocus","toRefs","computed","unref","selectKey","reactive","_withDirectives","_withKeys"],"mappings":"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"}
@@ -90,6 +90,7 @@ const _sfc_main = vue.defineComponent({
90
90
  };
91
91
  },
92
92
  render(_ctx, _cache) {
93
+ var _a;
93
94
  const {
94
95
  $slots,
95
96
  data,
@@ -116,7 +117,7 @@ const _sfc_main = vue.defineComponent({
116
117
  style: {
117
118
  width: `${width}px`
118
119
  }
119
- }, $slots.empty?.());
120
+ }, (_a = $slots.empty) == null ? void 0 : _a.call($slots));
120
121
  }
121
122
  const ListItem = vue.withCtx((scoped) => {
122
123
  const { index, data: data2 } = scoped;