@element-plus/nightly 0.0.20250310 → 0.0.20250312

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 (662) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.full.js +41 -41
  3. package/dist/index.full.min.js +10 -10
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +10 -10
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +41 -41
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar-eg.js +1 -1
  13. package/dist/locale/ar-eg.min.js +1 -1
  14. package/dist/locale/ar-eg.min.mjs +1 -1
  15. package/dist/locale/ar-eg.mjs +1 -1
  16. package/dist/locale/ar.js +1 -1
  17. package/dist/locale/ar.min.js +1 -1
  18. package/dist/locale/ar.min.mjs +1 -1
  19. package/dist/locale/ar.mjs +1 -1
  20. package/dist/locale/az.js +1 -1
  21. package/dist/locale/az.min.js +1 -1
  22. package/dist/locale/az.min.mjs +1 -1
  23. package/dist/locale/az.mjs +1 -1
  24. package/dist/locale/bg.js +1 -1
  25. package/dist/locale/bg.min.js +1 -1
  26. package/dist/locale/bg.min.mjs +1 -1
  27. package/dist/locale/bg.mjs +1 -1
  28. package/dist/locale/bn.js +1 -1
  29. package/dist/locale/bn.min.js +1 -1
  30. package/dist/locale/bn.min.mjs +1 -1
  31. package/dist/locale/bn.mjs +1 -1
  32. package/dist/locale/ca.js +1 -1
  33. package/dist/locale/ca.min.js +1 -1
  34. package/dist/locale/ca.min.mjs +1 -1
  35. package/dist/locale/ca.mjs +1 -1
  36. package/dist/locale/ckb.js +1 -1
  37. package/dist/locale/ckb.min.js +1 -1
  38. package/dist/locale/ckb.min.mjs +1 -1
  39. package/dist/locale/ckb.mjs +1 -1
  40. package/dist/locale/cs.js +1 -1
  41. package/dist/locale/cs.min.js +1 -1
  42. package/dist/locale/cs.min.mjs +1 -1
  43. package/dist/locale/cs.mjs +1 -1
  44. package/dist/locale/da.js +1 -1
  45. package/dist/locale/da.min.js +1 -1
  46. package/dist/locale/da.min.mjs +1 -1
  47. package/dist/locale/da.mjs +1 -1
  48. package/dist/locale/de.js +1 -1
  49. package/dist/locale/de.min.js +1 -1
  50. package/dist/locale/de.min.mjs +1 -1
  51. package/dist/locale/de.mjs +1 -1
  52. package/dist/locale/el.js +1 -1
  53. package/dist/locale/el.min.js +1 -1
  54. package/dist/locale/el.min.mjs +1 -1
  55. package/dist/locale/el.mjs +1 -1
  56. package/dist/locale/en.js +1 -1
  57. package/dist/locale/en.min.js +1 -1
  58. package/dist/locale/en.min.mjs +1 -1
  59. package/dist/locale/en.mjs +1 -1
  60. package/dist/locale/eo.js +1 -1
  61. package/dist/locale/eo.min.js +1 -1
  62. package/dist/locale/eo.min.mjs +1 -1
  63. package/dist/locale/eo.mjs +1 -1
  64. package/dist/locale/es.js +1 -1
  65. package/dist/locale/es.min.js +1 -1
  66. package/dist/locale/es.min.mjs +1 -1
  67. package/dist/locale/es.mjs +1 -1
  68. package/dist/locale/et.js +1 -1
  69. package/dist/locale/et.min.js +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 +1 -1
  73. package/dist/locale/eu.min.js +1 -1
  74. package/dist/locale/eu.min.mjs +1 -1
  75. package/dist/locale/eu.mjs +1 -1
  76. package/dist/locale/fa.js +1 -1
  77. package/dist/locale/fa.min.js +1 -1
  78. package/dist/locale/fa.min.mjs +1 -1
  79. package/dist/locale/fa.mjs +1 -1
  80. package/dist/locale/fi.js +1 -1
  81. package/dist/locale/fi.min.js +1 -1
  82. package/dist/locale/fi.min.mjs +1 -1
  83. package/dist/locale/fi.mjs +1 -1
  84. package/dist/locale/fr.js +1 -1
  85. package/dist/locale/fr.min.js +1 -1
  86. package/dist/locale/fr.min.mjs +1 -1
  87. package/dist/locale/fr.mjs +1 -1
  88. package/dist/locale/he.js +1 -1
  89. package/dist/locale/he.min.js +1 -1
  90. package/dist/locale/he.min.mjs +1 -1
  91. package/dist/locale/he.mjs +1 -1
  92. package/dist/locale/hi.js +1 -1
  93. package/dist/locale/hi.min.js +1 -1
  94. package/dist/locale/hi.min.mjs +1 -1
  95. package/dist/locale/hi.mjs +1 -1
  96. package/dist/locale/hr.js +1 -1
  97. package/dist/locale/hr.min.js +1 -1
  98. package/dist/locale/hr.min.mjs +1 -1
  99. package/dist/locale/hr.mjs +1 -1
  100. package/dist/locale/hu.js +1 -1
  101. package/dist/locale/hu.min.js +1 -1
  102. package/dist/locale/hu.min.mjs +1 -1
  103. package/dist/locale/hu.mjs +1 -1
  104. package/dist/locale/hy-am.js +1 -1
  105. package/dist/locale/hy-am.min.js +1 -1
  106. package/dist/locale/hy-am.min.mjs +1 -1
  107. package/dist/locale/hy-am.mjs +1 -1
  108. package/dist/locale/id.js +1 -1
  109. package/dist/locale/id.min.js +1 -1
  110. package/dist/locale/id.min.mjs +1 -1
  111. package/dist/locale/id.mjs +1 -1
  112. package/dist/locale/it.js +1 -1
  113. package/dist/locale/it.min.js +1 -1
  114. package/dist/locale/it.min.mjs +1 -1
  115. package/dist/locale/it.mjs +1 -1
  116. package/dist/locale/ja.js +1 -1
  117. package/dist/locale/ja.min.js +1 -1
  118. package/dist/locale/ja.min.mjs +1 -1
  119. package/dist/locale/ja.mjs +1 -1
  120. package/dist/locale/kk.js +1 -1
  121. package/dist/locale/kk.min.js +1 -1
  122. package/dist/locale/kk.min.mjs +1 -1
  123. package/dist/locale/kk.mjs +1 -1
  124. package/dist/locale/km.js +1 -1
  125. package/dist/locale/km.min.js +1 -1
  126. package/dist/locale/km.min.mjs +1 -1
  127. package/dist/locale/km.mjs +1 -1
  128. package/dist/locale/ko.js +1 -1
  129. package/dist/locale/ko.min.js +1 -1
  130. package/dist/locale/ko.min.mjs +1 -1
  131. package/dist/locale/ko.mjs +1 -1
  132. package/dist/locale/ku.js +1 -1
  133. package/dist/locale/ku.min.js +1 -1
  134. package/dist/locale/ku.min.mjs +1 -1
  135. package/dist/locale/ku.mjs +1 -1
  136. package/dist/locale/ky.js +1 -1
  137. package/dist/locale/ky.min.js +1 -1
  138. package/dist/locale/ky.min.mjs +1 -1
  139. package/dist/locale/ky.mjs +1 -1
  140. package/dist/locale/lt.js +1 -1
  141. package/dist/locale/lt.min.js +1 -1
  142. package/dist/locale/lt.min.mjs +1 -1
  143. package/dist/locale/lt.mjs +1 -1
  144. package/dist/locale/lv.js +1 -1
  145. package/dist/locale/lv.min.js +1 -1
  146. package/dist/locale/lv.min.mjs +1 -1
  147. package/dist/locale/lv.mjs +1 -1
  148. package/dist/locale/mg.js +1 -1
  149. package/dist/locale/mg.min.js +1 -1
  150. package/dist/locale/mg.min.mjs +1 -1
  151. package/dist/locale/mg.mjs +1 -1
  152. package/dist/locale/mn.js +1 -1
  153. package/dist/locale/mn.min.js +1 -1
  154. package/dist/locale/mn.min.mjs +1 -1
  155. package/dist/locale/mn.mjs +1 -1
  156. package/dist/locale/ms.js +1 -1
  157. package/dist/locale/ms.min.js +1 -1
  158. package/dist/locale/ms.min.mjs +1 -1
  159. package/dist/locale/ms.mjs +1 -1
  160. package/dist/locale/my.js +1 -1
  161. package/dist/locale/my.min.js +1 -1
  162. package/dist/locale/my.min.mjs +1 -1
  163. package/dist/locale/my.mjs +1 -1
  164. package/dist/locale/nb-no.js +1 -1
  165. package/dist/locale/nb-no.min.js +1 -1
  166. package/dist/locale/nb-no.min.mjs +1 -1
  167. package/dist/locale/nb-no.mjs +1 -1
  168. package/dist/locale/nl.js +1 -1
  169. package/dist/locale/nl.min.js +1 -1
  170. package/dist/locale/nl.min.mjs +1 -1
  171. package/dist/locale/nl.mjs +1 -1
  172. package/dist/locale/no.js +1 -1
  173. package/dist/locale/no.min.js +1 -1
  174. package/dist/locale/no.min.mjs +1 -1
  175. package/dist/locale/no.mjs +1 -1
  176. package/dist/locale/pa.js +1 -1
  177. package/dist/locale/pa.min.js +1 -1
  178. package/dist/locale/pa.min.mjs +1 -1
  179. package/dist/locale/pa.mjs +1 -1
  180. package/dist/locale/pl.js +1 -1
  181. package/dist/locale/pl.min.js +1 -1
  182. package/dist/locale/pl.min.mjs +1 -1
  183. package/dist/locale/pl.mjs +1 -1
  184. package/dist/locale/pt-br.js +1 -1
  185. package/dist/locale/pt-br.min.js +1 -1
  186. package/dist/locale/pt-br.min.mjs +1 -1
  187. package/dist/locale/pt-br.mjs +1 -1
  188. package/dist/locale/pt.js +1 -1
  189. package/dist/locale/pt.min.js +1 -1
  190. package/dist/locale/pt.min.mjs +1 -1
  191. package/dist/locale/pt.mjs +1 -1
  192. package/dist/locale/ro.js +1 -1
  193. package/dist/locale/ro.min.js +1 -1
  194. package/dist/locale/ro.min.mjs +1 -1
  195. package/dist/locale/ro.mjs +1 -1
  196. package/dist/locale/ru.js +1 -1
  197. package/dist/locale/ru.min.js +1 -1
  198. package/dist/locale/ru.min.mjs +1 -1
  199. package/dist/locale/ru.mjs +1 -1
  200. package/dist/locale/sk.js +1 -1
  201. package/dist/locale/sk.min.js +1 -1
  202. package/dist/locale/sk.min.mjs +1 -1
  203. package/dist/locale/sk.mjs +1 -1
  204. package/dist/locale/sl.js +1 -1
  205. package/dist/locale/sl.min.js +1 -1
  206. package/dist/locale/sl.min.mjs +1 -1
  207. package/dist/locale/sl.mjs +1 -1
  208. package/dist/locale/sr.js +1 -1
  209. package/dist/locale/sr.min.js +1 -1
  210. package/dist/locale/sr.min.mjs +1 -1
  211. package/dist/locale/sr.mjs +1 -1
  212. package/dist/locale/sv.js +1 -1
  213. package/dist/locale/sv.min.js +1 -1
  214. package/dist/locale/sv.min.mjs +1 -1
  215. package/dist/locale/sv.mjs +1 -1
  216. package/dist/locale/sw.js +1 -1
  217. package/dist/locale/sw.min.js +1 -1
  218. package/dist/locale/sw.min.mjs +1 -1
  219. package/dist/locale/sw.mjs +1 -1
  220. package/dist/locale/ta.js +1 -1
  221. package/dist/locale/ta.min.js +1 -1
  222. package/dist/locale/ta.min.mjs +1 -1
  223. package/dist/locale/ta.mjs +1 -1
  224. package/dist/locale/te.js +1 -1
  225. package/dist/locale/te.min.js +1 -1
  226. package/dist/locale/te.min.mjs +1 -1
  227. package/dist/locale/te.mjs +1 -1
  228. package/dist/locale/th.js +1 -1
  229. package/dist/locale/th.min.js +1 -1
  230. package/dist/locale/th.min.mjs +1 -1
  231. package/dist/locale/th.mjs +1 -1
  232. package/dist/locale/tk.js +1 -1
  233. package/dist/locale/tk.min.js +1 -1
  234. package/dist/locale/tk.min.mjs +1 -1
  235. package/dist/locale/tk.mjs +1 -1
  236. package/dist/locale/tr.js +1 -1
  237. package/dist/locale/tr.min.js +1 -1
  238. package/dist/locale/tr.min.mjs +1 -1
  239. package/dist/locale/tr.mjs +1 -1
  240. package/dist/locale/ug-cn.js +1 -1
  241. package/dist/locale/ug-cn.min.js +1 -1
  242. package/dist/locale/ug-cn.min.mjs +1 -1
  243. package/dist/locale/ug-cn.mjs +1 -1
  244. package/dist/locale/uk.js +1 -1
  245. package/dist/locale/uk.min.js +1 -1
  246. package/dist/locale/uk.min.mjs +1 -1
  247. package/dist/locale/uk.mjs +1 -1
  248. package/dist/locale/uz-uz.js +1 -1
  249. package/dist/locale/uz-uz.min.js +1 -1
  250. package/dist/locale/uz-uz.min.mjs +1 -1
  251. package/dist/locale/uz-uz.mjs +1 -1
  252. package/dist/locale/vi.js +1 -1
  253. package/dist/locale/vi.min.js +1 -1
  254. package/dist/locale/vi.min.mjs +1 -1
  255. package/dist/locale/vi.mjs +1 -1
  256. package/dist/locale/zh-cn.js +1 -1
  257. package/dist/locale/zh-cn.min.js +1 -1
  258. package/dist/locale/zh-cn.min.mjs +1 -1
  259. package/dist/locale/zh-cn.mjs +1 -1
  260. package/dist/locale/zh-hk.js +1 -1
  261. package/dist/locale/zh-hk.min.js +1 -1
  262. package/dist/locale/zh-hk.min.mjs +1 -1
  263. package/dist/locale/zh-hk.mjs +1 -1
  264. package/dist/locale/zh-mo.js +1 -1
  265. package/dist/locale/zh-mo.min.js +1 -1
  266. package/dist/locale/zh-mo.min.mjs +1 -1
  267. package/dist/locale/zh-mo.mjs +1 -1
  268. package/dist/locale/zh-tw.js +1 -1
  269. package/dist/locale/zh-tw.min.js +1 -1
  270. package/dist/locale/zh-tw.min.mjs +1 -1
  271. package/dist/locale/zh-tw.mjs +1 -1
  272. package/es/components/affix/index.mjs +2 -2
  273. package/es/components/affix/src/affix.mjs +25 -118
  274. package/es/components/affix/src/affix.mjs.map +1 -1
  275. package/es/components/affix/src/affix2.mjs +118 -24
  276. package/es/components/affix/src/affix2.mjs.map +1 -1
  277. package/es/components/anchor/index.mjs +3 -3
  278. package/es/components/anchor/src/anchor-link.mjs +81 -5
  279. package/es/components/anchor/src/anchor-link.mjs.map +1 -1
  280. package/es/components/anchor/src/anchor-link2.mjs +5 -81
  281. package/es/components/anchor/src/anchor-link2.mjs.map +1 -1
  282. package/es/components/anchor/src/anchor.mjs +42 -192
  283. package/es/components/anchor/src/anchor.mjs.map +1 -1
  284. package/es/components/anchor/src/anchor2.mjs +193 -42
  285. package/es/components/anchor/src/anchor2.mjs.map +1 -1
  286. package/es/components/autocomplete/src/autocomplete.mjs +2 -2
  287. package/es/components/avatar/index.mjs +2 -2
  288. package/es/components/avatar/src/avatar.mjs +31 -65
  289. package/es/components/avatar/src/avatar.mjs.map +1 -1
  290. package/es/components/avatar/src/avatar2.mjs +65 -31
  291. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  292. package/es/components/button/index.mjs +1 -1
  293. package/es/components/button/src/button-group.mjs +6 -29
  294. package/es/components/button/src/button-group.mjs.map +1 -1
  295. package/es/components/button/src/button-group2.mjs +29 -6
  296. package/es/components/button/src/button-group2.mjs.map +1 -1
  297. package/es/components/calendar/index.mjs +2 -2
  298. package/es/components/calendar/src/calendar.mjs +16 -134
  299. package/es/components/calendar/src/calendar.mjs.map +1 -1
  300. package/es/components/calendar/src/calendar2.mjs +134 -16
  301. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  302. package/es/components/carousel/src/use-carousel.mjs +2 -1
  303. package/es/components/carousel/src/use-carousel.mjs.map +1 -1
  304. package/es/components/cascader/src/cascader.mjs +1 -1
  305. package/es/components/cascader-panel/src/index.mjs +1 -1
  306. package/es/components/cascader-panel/src/menu.mjs +1 -1
  307. package/es/components/cascader-panel/src/node.mjs +115 -206
  308. package/es/components/cascader-panel/src/node.mjs.map +1 -1
  309. package/es/components/cascader-panel/src/node2.mjs +206 -115
  310. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  311. package/es/components/cascader-panel/src/store.mjs +1 -1
  312. package/es/components/checkbox/src/checkbox-group2.mjs +2 -2
  313. package/es/components/checkbox/src/checkbox-group2.mjs.map +1 -1
  314. package/es/components/checkbox/src/composables/use-checkbox-event.mjs +3 -2
  315. package/es/components/checkbox/src/composables/use-checkbox-event.mjs.map +1 -1
  316. package/es/components/collection/index.mjs +1 -1
  317. package/es/components/collection/src/collection.mjs +62 -10
  318. package/es/components/collection/src/collection.mjs.map +1 -1
  319. package/es/components/collection/src/collection2.mjs +10 -62
  320. package/es/components/collection/src/collection2.mjs.map +1 -1
  321. package/es/components/color-picker/src/color-picker.mjs +1 -1
  322. package/es/components/color-picker/src/color-picker2.mjs +3 -3
  323. package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
  324. package/es/components/countdown/src/countdown2.mjs +2 -1
  325. package/es/components/countdown/src/countdown2.mjs.map +1 -1
  326. package/es/components/date-picker/src/date-picker.mjs +3 -2
  327. package/es/components/date-picker/src/date-picker.mjs.map +1 -1
  328. package/es/components/descriptions/src/description2.mjs +1 -1
  329. package/es/components/descriptions/src/descriptions-row.mjs +6 -63
  330. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  331. package/es/components/descriptions/src/descriptions-row2.mjs +63 -6
  332. package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
  333. package/es/components/dialog/index.mjs +2 -2
  334. package/es/components/dialog/src/dialog.mjs +67 -171
  335. package/es/components/dialog/src/dialog.mjs.map +1 -1
  336. package/es/components/dialog/src/dialog2.mjs +171 -67
  337. package/es/components/dialog/src/dialog2.mjs.map +1 -1
  338. package/es/components/divider/index.mjs +2 -2
  339. package/es/components/divider/src/divider.mjs +34 -16
  340. package/es/components/divider/src/divider.mjs.map +1 -1
  341. package/es/components/divider/src/divider2.mjs +16 -34
  342. package/es/components/divider/src/divider2.mjs.map +1 -1
  343. package/es/components/drawer/index.mjs +2 -2
  344. package/es/components/drawer/src/drawer.mjs +26 -178
  345. package/es/components/drawer/src/drawer.mjs.map +1 -1
  346. package/es/components/drawer/src/drawer2.mjs +178 -26
  347. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  348. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  349. package/es/components/dropdown/src/dropdown.mjs +3 -3
  350. package/es/components/empty/index.mjs +2 -2
  351. package/es/components/empty/src/empty.mjs +52 -11
  352. package/es/components/empty/src/empty.mjs.map +1 -1
  353. package/es/components/empty/src/empty2.mjs +11 -52
  354. package/es/components/empty/src/empty2.mjs.map +1 -1
  355. package/es/components/image/index.mjs +2 -2
  356. package/es/components/image/src/image.mjs +68 -222
  357. package/es/components/image/src/image.mjs.map +1 -1
  358. package/es/components/image/src/image2.mjs +222 -68
  359. package/es/components/image/src/image2.mjs.map +1 -1
  360. package/es/components/index.mjs +20 -20
  361. package/es/components/input/src/input.mjs +5 -5
  362. package/es/components/input/src/input.mjs.map +1 -1
  363. package/es/components/link/index.mjs +2 -2
  364. package/es/components/link/src/link.mjs +24 -49
  365. package/es/components/link/src/link.mjs.map +1 -1
  366. package/es/components/link/src/link2.mjs +49 -24
  367. package/es/components/link/src/link2.mjs.map +1 -1
  368. package/es/components/mention/src/mention-dropdown.mjs +15 -166
  369. package/es/components/mention/src/mention-dropdown.mjs.map +1 -1
  370. package/es/components/mention/src/mention-dropdown2.mjs +166 -15
  371. package/es/components/mention/src/mention-dropdown2.mjs.map +1 -1
  372. package/es/components/mention/src/mention2.mjs +3 -3
  373. package/es/components/mention/src/mention2.mjs.map +1 -1
  374. package/es/components/menu/index.mjs +2 -2
  375. package/es/components/menu/src/menu-item-group.mjs +33 -4
  376. package/es/components/menu/src/menu-item-group.mjs.map +1 -1
  377. package/es/components/menu/src/menu-item-group2.mjs +4 -33
  378. package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
  379. package/es/components/notification/index.mjs +1 -1
  380. package/es/components/notification/src/notification.mjs +68 -142
  381. package/es/components/notification/src/notification.mjs.map +1 -1
  382. package/es/components/notification/src/notification2.mjs +142 -68
  383. package/es/components/notification/src/notification2.mjs.map +1 -1
  384. package/es/components/notification/src/notify.mjs +2 -2
  385. package/es/components/pagination/src/components/pager2.mjs +4 -3
  386. package/es/components/pagination/src/components/pager2.mjs.map +1 -1
  387. package/es/components/pagination/src/components/total.mjs +6 -26
  388. package/es/components/pagination/src/components/total.mjs.map +1 -1
  389. package/es/components/pagination/src/components/total2.mjs +26 -6
  390. package/es/components/pagination/src/components/total2.mjs.map +1 -1
  391. package/es/components/pagination/src/pagination.mjs +3 -2
  392. package/es/components/pagination/src/pagination.mjs.map +1 -1
  393. package/es/components/popconfirm/src/popconfirm.mjs +1 -1
  394. package/es/components/popover/index.mjs +2 -2
  395. package/es/components/popover/src/popover.mjs +64 -110
  396. package/es/components/popover/src/popover.mjs.map +1 -1
  397. package/es/components/popover/src/popover2.mjs +110 -64
  398. package/es/components/popover/src/popover2.mjs.map +1 -1
  399. package/es/components/popper/index.mjs +2 -2
  400. package/es/components/popper/src/popper.mjs +22 -32
  401. package/es/components/popper/src/popper.mjs.map +1 -1
  402. package/es/components/popper/src/popper2.mjs +32 -22
  403. package/es/components/popper/src/popper2.mjs.map +1 -1
  404. package/es/components/radio/src/radio-group2.mjs +2 -2
  405. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  406. package/es/components/radio/src/radio2.mjs +2 -1
  407. package/es/components/radio/src/radio2.mjs.map +1 -1
  408. package/es/components/rate/index.mjs +2 -2
  409. package/es/components/rate/src/rate.mjs +83 -258
  410. package/es/components/rate/src/rate.mjs.map +1 -1
  411. package/es/components/rate/src/rate2.mjs +258 -83
  412. package/es/components/rate/src/rate2.mjs.map +1 -1
  413. package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
  414. package/es/components/scrollbar/src/bar.mjs +10 -64
  415. package/es/components/scrollbar/src/bar.mjs.map +1 -1
  416. package/es/components/scrollbar/src/bar2.mjs +64 -10
  417. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  418. package/es/components/scrollbar/src/scrollbar2.mjs +1 -1
  419. package/es/components/select/src/select.mjs +1 -1
  420. package/es/components/select/src/useSelect.mjs +1 -1
  421. package/es/components/select/src/useSelect.mjs.map +1 -1
  422. package/es/components/select-v2/src/defaults.mjs +1 -1
  423. package/es/components/time-picker/src/common/picker.mjs +5 -4
  424. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  425. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.mjs +3 -2
  426. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.mjs.map +1 -1
  427. package/es/components/time-picker/src/time-picker.mjs +3 -2
  428. package/es/components/time-picker/src/time-picker.mjs.map +1 -1
  429. package/es/components/time-select/src/time-select2.mjs +4 -3
  430. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  431. package/es/components/tooltip/index.mjs +1 -1
  432. package/es/components/tooltip/src/content.mjs +28 -192
  433. package/es/components/tooltip/src/content.mjs.map +1 -1
  434. package/es/components/tooltip/src/content2.mjs +192 -28
  435. package/es/components/tooltip/src/content2.mjs.map +1 -1
  436. package/es/components/tooltip/src/tooltip.mjs +2 -2
  437. package/es/components/tooltip/src/tooltip2.mjs +1 -1
  438. package/es/components/tour/index.mjs +3 -3
  439. package/es/components/tour/src/content.mjs +67 -43
  440. package/es/components/tour/src/content.mjs.map +1 -1
  441. package/es/components/tour/src/content2.mjs +43 -67
  442. package/es/components/tour/src/content2.mjs.map +1 -1
  443. package/es/components/tour/src/mask.mjs +18 -75
  444. package/es/components/tour/src/mask.mjs.map +1 -1
  445. package/es/components/tour/src/mask2.mjs +75 -18
  446. package/es/components/tour/src/mask2.mjs.map +1 -1
  447. package/es/components/tour/src/step.mjs +1 -1
  448. package/es/components/tour/src/tour.mjs +68 -153
  449. package/es/components/tour/src/tour.mjs.map +1 -1
  450. package/es/components/tour/src/tour2.mjs +154 -68
  451. package/es/components/tour/src/tour2.mjs.map +1 -1
  452. package/es/components/upload/index.mjs +2 -2
  453. package/es/components/upload/src/upload-content.mjs +33 -196
  454. package/es/components/upload/src/upload-content.mjs.map +1 -1
  455. package/es/components/upload/src/upload-content2.mjs +196 -33
  456. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  457. package/es/components/upload/src/upload-dragger.mjs +47 -10
  458. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  459. package/es/components/upload/src/upload-dragger2.mjs +10 -47
  460. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  461. package/es/components/upload/src/upload2.mjs +1 -1
  462. package/es/index.mjs +20 -20
  463. package/es/version.d.ts +1 -1
  464. package/es/version.mjs +1 -1
  465. package/es/version.mjs.map +1 -1
  466. package/lib/components/affix/index.js +2 -2
  467. package/lib/components/affix/src/affix.js +26 -118
  468. package/lib/components/affix/src/affix.js.map +1 -1
  469. package/lib/components/affix/src/affix2.js +118 -25
  470. package/lib/components/affix/src/affix2.js.map +1 -1
  471. package/lib/components/anchor/index.js +3 -3
  472. package/lib/components/anchor/src/anchor-link.js +81 -5
  473. package/lib/components/anchor/src/anchor-link.js.map +1 -1
  474. package/lib/components/anchor/src/anchor-link2.js +5 -81
  475. package/lib/components/anchor/src/anchor-link2.js.map +1 -1
  476. package/lib/components/anchor/src/anchor.js +42 -191
  477. package/lib/components/anchor/src/anchor.js.map +1 -1
  478. package/lib/components/anchor/src/anchor2.js +192 -42
  479. package/lib/components/anchor/src/anchor2.js.map +1 -1
  480. package/lib/components/autocomplete/src/autocomplete.js +2 -2
  481. package/lib/components/avatar/index.js +2 -2
  482. package/lib/components/avatar/src/avatar.js +32 -65
  483. package/lib/components/avatar/src/avatar.js.map +1 -1
  484. package/lib/components/avatar/src/avatar2.js +65 -32
  485. package/lib/components/avatar/src/avatar2.js.map +1 -1
  486. package/lib/components/button/index.js +1 -1
  487. package/lib/components/button/src/button-group.js +6 -29
  488. package/lib/components/button/src/button-group.js.map +1 -1
  489. package/lib/components/button/src/button-group2.js +29 -6
  490. package/lib/components/button/src/button-group2.js.map +1 -1
  491. package/lib/components/calendar/index.js +2 -2
  492. package/lib/components/calendar/src/calendar.js +17 -134
  493. package/lib/components/calendar/src/calendar.js.map +1 -1
  494. package/lib/components/calendar/src/calendar2.js +134 -17
  495. package/lib/components/calendar/src/calendar2.js.map +1 -1
  496. package/lib/components/carousel/src/use-carousel.js +2 -1
  497. package/lib/components/carousel/src/use-carousel.js.map +1 -1
  498. package/lib/components/cascader/src/cascader.js +1 -1
  499. package/lib/components/cascader-panel/src/index.js +1 -1
  500. package/lib/components/cascader-panel/src/menu.js +1 -1
  501. package/lib/components/cascader-panel/src/node.js +115 -206
  502. package/lib/components/cascader-panel/src/node.js.map +1 -1
  503. package/lib/components/cascader-panel/src/node2.js +206 -115
  504. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  505. package/lib/components/cascader-panel/src/store.js +1 -1
  506. package/lib/components/checkbox/src/checkbox-group2.js +1 -1
  507. package/lib/components/checkbox/src/checkbox-group2.js.map +1 -1
  508. package/lib/components/checkbox/src/composables/use-checkbox-event.js +3 -2
  509. package/lib/components/checkbox/src/composables/use-checkbox-event.js.map +1 -1
  510. package/lib/components/collection/index.js +1 -1
  511. package/lib/components/collection/src/collection.js +62 -9
  512. package/lib/components/collection/src/collection.js.map +1 -1
  513. package/lib/components/collection/src/collection2.js +9 -62
  514. package/lib/components/collection/src/collection2.js.map +1 -1
  515. package/lib/components/color-picker/src/color-picker.js +1 -1
  516. package/lib/components/color-picker/src/color-picker2.js +2 -2
  517. package/lib/components/color-picker/src/color-picker2.js.map +1 -1
  518. package/lib/components/countdown/src/countdown2.js +2 -1
  519. package/lib/components/countdown/src/countdown2.js.map +1 -1
  520. package/lib/components/date-picker/src/date-picker.js +3 -2
  521. package/lib/components/date-picker/src/date-picker.js.map +1 -1
  522. package/lib/components/descriptions/src/description2.js +1 -1
  523. package/lib/components/descriptions/src/descriptions-row.js +6 -63
  524. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  525. package/lib/components/descriptions/src/descriptions-row2.js +63 -6
  526. package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
  527. package/lib/components/dialog/index.js +2 -2
  528. package/lib/components/dialog/src/dialog.js +68 -171
  529. package/lib/components/dialog/src/dialog.js.map +1 -1
  530. package/lib/components/dialog/src/dialog2.js +171 -68
  531. package/lib/components/dialog/src/dialog2.js.map +1 -1
  532. package/lib/components/divider/index.js +2 -2
  533. package/lib/components/divider/src/divider.js +34 -16
  534. package/lib/components/divider/src/divider.js.map +1 -1
  535. package/lib/components/divider/src/divider2.js +16 -34
  536. package/lib/components/divider/src/divider2.js.map +1 -1
  537. package/lib/components/drawer/index.js +2 -2
  538. package/lib/components/drawer/src/drawer.js +27 -178
  539. package/lib/components/drawer/src/drawer.js.map +1 -1
  540. package/lib/components/drawer/src/drawer2.js +178 -27
  541. package/lib/components/drawer/src/drawer2.js.map +1 -1
  542. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  543. package/lib/components/dropdown/src/dropdown.js +3 -3
  544. package/lib/components/empty/index.js +2 -2
  545. package/lib/components/empty/src/empty.js +52 -11
  546. package/lib/components/empty/src/empty.js.map +1 -1
  547. package/lib/components/empty/src/empty2.js +11 -52
  548. package/lib/components/empty/src/empty2.js.map +1 -1
  549. package/lib/components/image/index.js +2 -2
  550. package/lib/components/image/src/image.js +68 -221
  551. package/lib/components/image/src/image.js.map +1 -1
  552. package/lib/components/image/src/image2.js +221 -68
  553. package/lib/components/image/src/image2.js.map +1 -1
  554. package/lib/components/index.js +20 -20
  555. package/lib/components/input/src/input.js +7 -7
  556. package/lib/components/input/src/input.js.map +1 -1
  557. package/lib/components/link/index.js +2 -2
  558. package/lib/components/link/src/link.js +25 -49
  559. package/lib/components/link/src/link.js.map +1 -1
  560. package/lib/components/link/src/link2.js +49 -25
  561. package/lib/components/link/src/link2.js.map +1 -1
  562. package/lib/components/mention/src/mention-dropdown.js +16 -166
  563. package/lib/components/mention/src/mention-dropdown.js.map +1 -1
  564. package/lib/components/mention/src/mention-dropdown2.js +166 -16
  565. package/lib/components/mention/src/mention-dropdown2.js.map +1 -1
  566. package/lib/components/mention/src/mention2.js +3 -3
  567. package/lib/components/mention/src/mention2.js.map +1 -1
  568. package/lib/components/menu/index.js +2 -2
  569. package/lib/components/menu/src/menu-item-group.js +33 -4
  570. package/lib/components/menu/src/menu-item-group.js.map +1 -1
  571. package/lib/components/menu/src/menu-item-group2.js +4 -33
  572. package/lib/components/menu/src/menu-item-group2.js.map +1 -1
  573. package/lib/components/notification/index.js +1 -1
  574. package/lib/components/notification/src/notification.js +69 -141
  575. package/lib/components/notification/src/notification.js.map +1 -1
  576. package/lib/components/notification/src/notification2.js +141 -69
  577. package/lib/components/notification/src/notification2.js.map +1 -1
  578. package/lib/components/notification/src/notify.js +2 -2
  579. package/lib/components/pagination/src/components/pager2.js +6 -5
  580. package/lib/components/pagination/src/components/pager2.js.map +1 -1
  581. package/lib/components/pagination/src/components/total.js +6 -26
  582. package/lib/components/pagination/src/components/total.js.map +1 -1
  583. package/lib/components/pagination/src/components/total2.js +26 -6
  584. package/lib/components/pagination/src/components/total2.js.map +1 -1
  585. package/lib/components/pagination/src/pagination.js +3 -2
  586. package/lib/components/pagination/src/pagination.js.map +1 -1
  587. package/lib/components/popconfirm/src/popconfirm.js +1 -1
  588. package/lib/components/popover/index.js +2 -2
  589. package/lib/components/popover/src/popover.js +65 -110
  590. package/lib/components/popover/src/popover.js.map +1 -1
  591. package/lib/components/popover/src/popover2.js +110 -65
  592. package/lib/components/popover/src/popover2.js.map +1 -1
  593. package/lib/components/popper/index.js +2 -2
  594. package/lib/components/popper/src/popper.js +25 -32
  595. package/lib/components/popper/src/popper.js.map +1 -1
  596. package/lib/components/popper/src/popper2.js +32 -25
  597. package/lib/components/popper/src/popper2.js.map +1 -1
  598. package/lib/components/radio/src/radio-group2.js +1 -1
  599. package/lib/components/radio/src/radio-group2.js.map +1 -1
  600. package/lib/components/radio/src/radio2.js +2 -1
  601. package/lib/components/radio/src/radio2.js.map +1 -1
  602. package/lib/components/rate/index.js +2 -2
  603. package/lib/components/rate/src/rate.js +83 -257
  604. package/lib/components/rate/src/rate.js.map +1 -1
  605. package/lib/components/rate/src/rate2.js +257 -83
  606. package/lib/components/rate/src/rate2.js.map +1 -1
  607. package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
  608. package/lib/components/scrollbar/src/bar.js +10 -64
  609. package/lib/components/scrollbar/src/bar.js.map +1 -1
  610. package/lib/components/scrollbar/src/bar2.js +64 -10
  611. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  612. package/lib/components/scrollbar/src/scrollbar2.js +1 -1
  613. package/lib/components/select/src/select.js +1 -1
  614. package/lib/components/select/src/useSelect.js +1 -1
  615. package/lib/components/select/src/useSelect.js.map +1 -1
  616. package/lib/components/select-v2/src/defaults.js +1 -1
  617. package/lib/components/time-picker/src/common/picker.js +5 -4
  618. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  619. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.js +3 -2
  620. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.js.map +1 -1
  621. package/lib/components/time-picker/src/time-picker.js +3 -2
  622. package/lib/components/time-picker/src/time-picker.js.map +1 -1
  623. package/lib/components/time-select/src/time-select2.js +4 -3
  624. package/lib/components/time-select/src/time-select2.js.map +1 -1
  625. package/lib/components/tooltip/index.js +1 -1
  626. package/lib/components/tooltip/src/content.js +28 -192
  627. package/lib/components/tooltip/src/content.js.map +1 -1
  628. package/lib/components/tooltip/src/content2.js +192 -28
  629. package/lib/components/tooltip/src/content2.js.map +1 -1
  630. package/lib/components/tooltip/src/tooltip.js +2 -2
  631. package/lib/components/tooltip/src/tooltip2.js +1 -1
  632. package/lib/components/tour/index.js +3 -3
  633. package/lib/components/tour/src/content.js +67 -46
  634. package/lib/components/tour/src/content.js.map +1 -1
  635. package/lib/components/tour/src/content2.js +46 -67
  636. package/lib/components/tour/src/content2.js.map +1 -1
  637. package/lib/components/tour/src/mask.js +18 -75
  638. package/lib/components/tour/src/mask.js.map +1 -1
  639. package/lib/components/tour/src/mask2.js +75 -18
  640. package/lib/components/tour/src/mask2.js.map +1 -1
  641. package/lib/components/tour/src/step.js +1 -1
  642. package/lib/components/tour/src/tour.js +67 -151
  643. package/lib/components/tour/src/tour.js.map +1 -1
  644. package/lib/components/tour/src/tour2.js +152 -67
  645. package/lib/components/tour/src/tour2.js.map +1 -1
  646. package/lib/components/upload/index.js +2 -2
  647. package/lib/components/upload/src/upload-content.js +31 -194
  648. package/lib/components/upload/src/upload-content.js.map +1 -1
  649. package/lib/components/upload/src/upload-content2.js +194 -31
  650. package/lib/components/upload/src/upload-content2.js.map +1 -1
  651. package/lib/components/upload/src/upload-dragger.js +47 -11
  652. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  653. package/lib/components/upload/src/upload-dragger2.js +11 -47
  654. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  655. package/lib/components/upload/src/upload2.js +1 -1
  656. package/lib/index.js +20 -20
  657. package/lib/version.d.ts +1 -1
  658. package/lib/version.js +1 -1
  659. package/lib/version.js.map +1 -1
  660. package/package.json +2 -2
  661. package/tags.json +1 -1
  662. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","sources":["../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n containerKls,\n {\n [nsInput.bm('group', 'append')]: $slots.append,\n [nsInput.bm('group', 'prepend')]: $slots.prepend,\n },\n ]\"\n :style=\"containerStyle\"\n @mouseenter=\"handleMouseEnter\"\n @mouseleave=\"handleMouseLeave\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" :class=\"nsInput.be('group', 'prepend')\">\n <slot name=\"prepend\" />\n </div>\n\n <div ref=\"wrapperRef\" :class=\"wrapperKls\">\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" :class=\"nsInput.e('prefix')\">\n <span :class=\"nsInput.e('prefix-inner')\">\n <slot name=\"prefix\" />\n <el-icon v-if=\"prefixIcon\" :class=\"nsInput.e('icon')\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </span>\n </span>\n\n <input\n :id=\"inputId\"\n ref=\"input\"\n :class=\"nsInput.e('inner')\"\n v-bind=\"attrs\"\n :minlength=\"minlength\"\n :maxlength=\"maxlength\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"ariaLabel\"\n :placeholder=\"placeholder\"\n :style=\"inputStyle\"\n :form=\"form\"\n :autofocus=\"autofocus\"\n :role=\"containerRole\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n\n <!-- suffix slot -->\n <span v-if=\"suffixVisible\" :class=\"nsInput.e('suffix')\">\n <span :class=\"nsInput.e('suffix-inner')\">\n <template\n v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\"\n >\n <slot name=\"suffix\" />\n <el-icon v-if=\"suffixIcon\" :class=\"nsInput.e('icon')\">\n <component :is=\"suffixIcon\" />\n </el-icon>\n </template>\n <el-icon\n v-if=\"showClear\"\n :class=\"[nsInput.e('icon'), nsInput.e('clear')]\"\n @mousedown.prevent=\"NOOP\"\n @click=\"clear\"\n >\n <circle-close />\n </el-icon>\n <el-icon\n v-if=\"showPwdVisible\"\n :class=\"[nsInput.e('icon'), nsInput.e('password')]\"\n @click=\"handlePasswordVisible\"\n >\n <component :is=\"passwordIcon\" />\n </el-icon>\n <span v-if=\"isWordLimitVisible\" :class=\"nsInput.e('count')\">\n <span :class=\"nsInput.e('count-inner')\">\n {{ textLength }} / {{ maxlength }}\n </span>\n </span>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </span>\n </span>\n </div>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" :class=\"nsInput.be('group', 'append')\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n :id=\"inputId\"\n ref=\"textarea\"\n :class=\"[nsTextarea.e('inner'), nsInput.is('focus', isFocused)]\"\n v-bind=\"attrs\"\n :minlength=\"minlength\"\n :maxlength=\"maxlength\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"textareaStyle\"\n :aria-label=\"ariaLabel\"\n :placeholder=\"placeholder\"\n :form=\"form\"\n :autofocus=\"autofocus\"\n :rows=\"rows\"\n :role=\"containerRole\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n <span\n v-if=\"isWordLimitVisible\"\n :style=\"countStyle\"\n :class=\"nsInput.e('count')\"\n >\n {{ textLength }} / {{ maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onMounted,\n ref,\n shallowRef,\n toRef,\n useAttrs as useRawAttrs,\n useSlots,\n watch,\n} from 'vue'\nimport { useResizeObserver } from '@vueuse/core'\nimport { isNil } from 'lodash-unified'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n CircleClose,\n Hide as IconHide,\n View as IconView,\n} from '@element-plus/icons-vue'\nimport {\n useFormDisabled,\n useFormItem,\n useFormItemInputId,\n useFormSize,\n} from '@element-plus/components/form'\nimport {\n NOOP,\n ValidateComponentsMap,\n debugWarn,\n isClient,\n isObject,\n} from '@element-plus/utils'\nimport {\n useAttrs,\n useComposition,\n useCursor,\n useFocusController,\n useNamespace,\n} from '@element-plus/hooks'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { calcTextareaHeight } from './utils'\nimport { inputEmits, inputProps } from './input'\nimport type { StyleValue } from 'vue'\n\ntype TargetElement = HTMLInputElement | HTMLTextAreaElement\n\ndefineOptions({\n name: 'ElInput',\n inheritAttrs: false,\n})\nconst props = defineProps(inputProps)\nconst emit = defineEmits(inputEmits)\n\nconst rawAttrs = useRawAttrs()\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst containerKls = computed(() => [\n props.type === 'textarea' ? nsTextarea.b() : nsInput.b(),\n nsInput.m(inputSize.value),\n nsInput.is('disabled', inputDisabled.value),\n nsInput.is('exceed', inputExceed.value),\n {\n [nsInput.b('group')]: slots.prepend || slots.append,\n [nsInput.m('prefix')]: slots.prefix || props.prefixIcon,\n [nsInput.m('suffix')]:\n slots.suffix || props.suffixIcon || props.clearable || props.showPassword,\n [nsInput.bm('suffix', 'password-clear')]:\n showClear.value && showPwdVisible.value,\n [nsInput.b('hidden')]: props.type === 'hidden',\n },\n rawAttrs.class,\n])\n\nconst wrapperKls = computed(() => [\n nsInput.e('wrapper'),\n nsInput.is('focus', isFocused.value),\n])\n\nconst { form: elForm, formItem: elFormItem } = useFormItem()\nconst { inputId } = useFormItemInputId(props, {\n formItemContext: elFormItem,\n})\nconst inputSize = useFormSize()\nconst inputDisabled = useFormDisabled()\nconst nsInput = useNamespace('input')\nconst nsTextarea = useNamespace('textarea')\n\nconst input = shallowRef<HTMLInputElement>()\nconst textarea = shallowRef<HTMLTextAreaElement>()\n\nconst hovering = ref(false)\nconst passwordVisible = ref(false)\nconst countStyle = ref<StyleValue>()\nconst textareaCalcStyle = shallowRef(props.inputStyle)\n\nconst _ref = computed(() => input.value || textarea.value)\n\n// wrapperRef for type=\"text\", handleFocus and handleBlur for type=\"textarea\"\nconst { wrapperRef, isFocused, handleFocus, handleBlur } = useFocusController(\n _ref,\n {\n beforeFocus() {\n return inputDisabled.value\n },\n afterBlur() {\n if (props.validateEvent) {\n elFormItem?.validate?.('blur').catch((err) => debugWarn(err))\n }\n },\n }\n)\n\nconst needStatusIcon = computed(() => elForm?.statusIcon ?? false)\nconst validateState = computed(() => elFormItem?.validateState || '')\nconst validateIcon = computed(\n () => validateState.value && ValidateComponentsMap[validateState.value]\n)\nconst passwordIcon = computed(() =>\n passwordVisible.value ? IconView : IconHide\n)\nconst containerStyle = computed<StyleValue>(() => [\n rawAttrs.style as StyleValue,\n])\nconst textareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n textareaCalcStyle.value,\n { resize: props.resize },\n])\nconst nativeInputValue = computed(() =>\n isNil(props.modelValue) ? '' : String(props.modelValue)\n)\nconst showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (isFocused.value || hovering.value)\n)\nconst showPwdVisible = computed(\n () =>\n props.showPassword &&\n !inputDisabled.value &&\n !!nativeInputValue.value &&\n (!!nativeInputValue.value || isFocused.value)\n)\nconst isWordLimitVisible = computed(\n () =>\n props.showWordLimit &&\n !!props.maxlength &&\n (props.type === 'text' || props.type === 'textarea') &&\n !inputDisabled.value &&\n !props.readonly &&\n !props.showPassword\n)\nconst textLength = computed(() => nativeInputValue.value.length)\nconst inputExceed = computed(\n () =>\n // show exceed style if length of initial value greater then maxlength\n !!isWordLimitVisible.value && textLength.value > Number(props.maxlength)\n)\nconst suffixVisible = computed(\n () =>\n !!slots.suffix ||\n !!props.suffixIcon ||\n showClear.value ||\n props.showPassword ||\n isWordLimitVisible.value ||\n (!!validateState.value && needStatusIcon.value)\n)\n\nconst [recordCursor, setCursor] = useCursor(input)\n\nuseResizeObserver(textarea, (entries) => {\n onceInitSizeTextarea()\n if (!isWordLimitVisible.value || props.resize !== 'both') return\n const entry = entries[0]\n const { width } = entry.contentRect\n countStyle.value = {\n /** right: 100% - width + padding(15) + right(6) */\n right: `calc(100% - ${width + 15 + 6}px)`,\n }\n})\n\nconst resizeTextarea = () => {\n const { type, autosize } = props\n\n if (!isClient || type !== 'textarea' || !textarea.value) return\n\n if (autosize) {\n const minRows = isObject(autosize) ? autosize.minRows : undefined\n const maxRows = isObject(autosize) ? autosize.maxRows : undefined\n const textareaStyle = calcTextareaHeight(textarea.value, minRows, maxRows)\n\n // If the scrollbar is displayed, the height of the textarea needs more space than the calculated height.\n // If set textarea height in this case, the scrollbar will not hide.\n // So we need to hide scrollbar first, and reset it in next tick.\n // see https://github.com/element-plus/element-plus/issues/8825\n textareaCalcStyle.value = {\n overflowY: 'hidden',\n ...textareaStyle,\n }\n\n nextTick(() => {\n // NOTE: Force repaint to make sure the style set above is applied.\n textarea.value!.offsetHeight\n textareaCalcStyle.value = textareaStyle\n })\n } else {\n textareaCalcStyle.value = {\n minHeight: calcTextareaHeight(textarea.value).minHeight,\n }\n }\n}\n\nconst createOnceInitResize = (resizeTextarea: () => void) => {\n let isInit = false\n return () => {\n if (isInit || !props.autosize) return\n const isElHidden = textarea.value?.offsetParent === null\n if (!isElHidden) {\n resizeTextarea()\n isInit = true\n }\n }\n}\n// fix: https://github.com/element-plus/element-plus/issues/12074\nconst onceInitSizeTextarea = createOnceInitResize(resizeTextarea)\n\nconst setNativeInputValue = () => {\n const input = _ref.value\n const formatterValue = props.formatter\n ? props.formatter(nativeInputValue.value)\n : nativeInputValue.value\n if (!input || input.value === formatterValue) return\n input.value = formatterValue\n}\n\nconst handleInput = async (event: Event) => {\n recordCursor()\n\n let { value } = event.target as TargetElement\n\n if (props.formatter && props.parser) {\n value = props.parser(value)\n }\n\n // should not emit input during composition\n // see: https://github.com/ElemeFE/element/issues/10516\n if (isComposing.value) return\n\n // hack for https://github.com/ElemeFE/element/issues/8548\n // should remove the following line when we don't support IE\n if (value === nativeInputValue.value) {\n setNativeInputValue()\n return\n }\n\n emit(UPDATE_MODEL_EVENT, value)\n emit('input', value)\n\n // ensure native input value is controlled\n // see: https://github.com/ElemeFE/element/issues/12850\n await nextTick()\n setNativeInputValue()\n setCursor()\n}\n\nconst handleChange = (event: Event) => {\n let { value } = event.target as TargetElement\n\n if (props.formatter && props.parser) {\n value = props.parser(value)\n }\n emit('change', value)\n}\n\nconst {\n isComposing,\n handleCompositionStart,\n handleCompositionUpdate,\n handleCompositionEnd,\n} = useComposition({ emit, afterComposition: handleInput })\n\nconst handlePasswordVisible = () => {\n recordCursor()\n passwordVisible.value = !passwordVisible.value\n // The native input needs a little time to regain focus\n setTimeout(setCursor)\n}\n\nconst focus = () => _ref.value?.focus()\n\nconst blur = () => _ref.value?.blur()\n\nconst handleMouseLeave = (evt: MouseEvent) => {\n hovering.value = false\n emit('mouseleave', evt)\n}\n\nconst handleMouseEnter = (evt: MouseEvent) => {\n hovering.value = true\n emit('mouseenter', evt)\n}\n\nconst handleKeydown = (evt: KeyboardEvent) => {\n emit('keydown', evt)\n}\n\nconst select = () => {\n _ref.value?.select()\n}\n\nconst clear = () => {\n emit(UPDATE_MODEL_EVENT, '')\n emit('change', '')\n emit('clear')\n emit('input', '')\n}\n\nwatch(\n () => props.modelValue,\n () => {\n nextTick(() => resizeTextarea())\n if (props.validateEvent) {\n elFormItem?.validate?.('change').catch((err) => debugWarn(err))\n }\n }\n)\n\n// native input value is set explicitly\n// do not use v-model / :value in template\n// see: https://github.com/ElemeFE/element/issues/14521\nwatch(nativeInputValue, () => setNativeInputValue())\n\n// when change between <input> and <textarea>,\n// update DOM dependent value and styles\n// https://github.com/ElemeFE/element/issues/14857\nwatch(\n () => props.type,\n async () => {\n await nextTick()\n setNativeInputValue()\n resizeTextarea()\n }\n)\n\nonMounted(() => {\n if (!props.formatter && props.parser) {\n debugWarn(\n 'ElInput',\n 'If you set the parser, you also need to set the formatter.'\n )\n }\n setNativeInputValue()\n nextTick(resizeTextarea)\n})\n\ndefineExpose({\n /** @description HTML input element */\n input,\n /** @description HTML textarea element */\n textarea,\n /** @description HTML element, input or textarea */\n ref: _ref,\n /** @description style of textarea. */\n textareaStyle,\n\n /** @description from props (used on unit test) */\n autosize: toRef(props, 'autosize'),\n\n /** @description is input composing */\n isComposing,\n\n /** @description HTML input element native method */\n focus,\n /** @description HTML input element native method */\n blur,\n /** @description HTML input element native method */\n select,\n /** @description clear input value */\n clear,\n /** @description resize textarea. */\n resizeTextarea,\n})\n</script>\n"],"names":["useRawAttrs","useAttrs","useSlots","computed","useFormItem","useFormItemInputId","useFormSize","useFormDisabled","useNamespace","shallowRef","ref","useFocusController","debugWarn","IconView","IconHide","isNil","useResizeObserver","isClient","isObject","calcTextareaHeight","nextTick","textareaStyle","event","resizeTextarea","input","useComposition","UPDATE_MODEL_EVENT","watch","onMounted","toRef","_openBlock","_createElementBlock","_normalizeClass","_unref","_normalizeStyle","_createCommentVNode","_Fragment","_renderSlot","_createElementVNode"],"mappings":"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"}
1
+ {"version":3,"file":"input.js","sources":["../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n containerKls,\n {\n [nsInput.bm('group', 'append')]: $slots.append,\n [nsInput.bm('group', 'prepend')]: $slots.prepend,\n },\n ]\"\n :style=\"containerStyle\"\n @mouseenter=\"handleMouseEnter\"\n @mouseleave=\"handleMouseLeave\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" :class=\"nsInput.be('group', 'prepend')\">\n <slot name=\"prepend\" />\n </div>\n\n <div ref=\"wrapperRef\" :class=\"wrapperKls\">\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" :class=\"nsInput.e('prefix')\">\n <span :class=\"nsInput.e('prefix-inner')\">\n <slot name=\"prefix\" />\n <el-icon v-if=\"prefixIcon\" :class=\"nsInput.e('icon')\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </span>\n </span>\n\n <input\n :id=\"inputId\"\n ref=\"input\"\n :class=\"nsInput.e('inner')\"\n v-bind=\"attrs\"\n :minlength=\"minlength\"\n :maxlength=\"maxlength\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"ariaLabel\"\n :placeholder=\"placeholder\"\n :style=\"inputStyle\"\n :form=\"form\"\n :autofocus=\"autofocus\"\n :role=\"containerRole\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n\n <!-- suffix slot -->\n <span v-if=\"suffixVisible\" :class=\"nsInput.e('suffix')\">\n <span :class=\"nsInput.e('suffix-inner')\">\n <template\n v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\"\n >\n <slot name=\"suffix\" />\n <el-icon v-if=\"suffixIcon\" :class=\"nsInput.e('icon')\">\n <component :is=\"suffixIcon\" />\n </el-icon>\n </template>\n <el-icon\n v-if=\"showClear\"\n :class=\"[nsInput.e('icon'), nsInput.e('clear')]\"\n @mousedown.prevent=\"NOOP\"\n @click=\"clear\"\n >\n <circle-close />\n </el-icon>\n <el-icon\n v-if=\"showPwdVisible\"\n :class=\"[nsInput.e('icon'), nsInput.e('password')]\"\n @click=\"handlePasswordVisible\"\n >\n <component :is=\"passwordIcon\" />\n </el-icon>\n <span v-if=\"isWordLimitVisible\" :class=\"nsInput.e('count')\">\n <span :class=\"nsInput.e('count-inner')\">\n {{ textLength }} / {{ maxlength }}\n </span>\n </span>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </span>\n </span>\n </div>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" :class=\"nsInput.be('group', 'append')\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n :id=\"inputId\"\n ref=\"textarea\"\n :class=\"[nsTextarea.e('inner'), nsInput.is('focus', isFocused)]\"\n v-bind=\"attrs\"\n :minlength=\"minlength\"\n :maxlength=\"maxlength\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"textareaStyle\"\n :aria-label=\"ariaLabel\"\n :placeholder=\"placeholder\"\n :form=\"form\"\n :autofocus=\"autofocus\"\n :rows=\"rows\"\n :role=\"containerRole\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n <span\n v-if=\"isWordLimitVisible\"\n :style=\"countStyle\"\n :class=\"nsInput.e('count')\"\n >\n {{ textLength }} / {{ maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onMounted,\n ref,\n shallowRef,\n toRef,\n useAttrs as useRawAttrs,\n useSlots,\n watch,\n} from 'vue'\nimport { useResizeObserver } from '@vueuse/core'\nimport { isNil } from 'lodash-unified'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n CircleClose,\n Hide as IconHide,\n View as IconView,\n} from '@element-plus/icons-vue'\nimport {\n useFormDisabled,\n useFormItem,\n useFormItemInputId,\n useFormSize,\n} from '@element-plus/components/form'\nimport {\n NOOP,\n ValidateComponentsMap,\n debugWarn,\n isClient,\n isObject,\n} from '@element-plus/utils'\nimport {\n useAttrs,\n useComposition,\n useCursor,\n useFocusController,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n CHANGE_EVENT,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { calcTextareaHeight } from './utils'\nimport { inputEmits, inputProps } from './input'\nimport type { StyleValue } from 'vue'\n\ntype TargetElement = HTMLInputElement | HTMLTextAreaElement\n\ndefineOptions({\n name: 'ElInput',\n inheritAttrs: false,\n})\nconst props = defineProps(inputProps)\nconst emit = defineEmits(inputEmits)\n\nconst rawAttrs = useRawAttrs()\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst containerKls = computed(() => [\n props.type === 'textarea' ? nsTextarea.b() : nsInput.b(),\n nsInput.m(inputSize.value),\n nsInput.is('disabled', inputDisabled.value),\n nsInput.is('exceed', inputExceed.value),\n {\n [nsInput.b('group')]: slots.prepend || slots.append,\n [nsInput.m('prefix')]: slots.prefix || props.prefixIcon,\n [nsInput.m('suffix')]:\n slots.suffix || props.suffixIcon || props.clearable || props.showPassword,\n [nsInput.bm('suffix', 'password-clear')]:\n showClear.value && showPwdVisible.value,\n [nsInput.b('hidden')]: props.type === 'hidden',\n },\n rawAttrs.class,\n])\n\nconst wrapperKls = computed(() => [\n nsInput.e('wrapper'),\n nsInput.is('focus', isFocused.value),\n])\n\nconst { form: elForm, formItem: elFormItem } = useFormItem()\nconst { inputId } = useFormItemInputId(props, {\n formItemContext: elFormItem,\n})\nconst inputSize = useFormSize()\nconst inputDisabled = useFormDisabled()\nconst nsInput = useNamespace('input')\nconst nsTextarea = useNamespace('textarea')\n\nconst input = shallowRef<HTMLInputElement>()\nconst textarea = shallowRef<HTMLTextAreaElement>()\n\nconst hovering = ref(false)\nconst passwordVisible = ref(false)\nconst countStyle = ref<StyleValue>()\nconst textareaCalcStyle = shallowRef(props.inputStyle)\n\nconst _ref = computed(() => input.value || textarea.value)\n\n// wrapperRef for type=\"text\", handleFocus and handleBlur for type=\"textarea\"\nconst { wrapperRef, isFocused, handleFocus, handleBlur } = useFocusController(\n _ref,\n {\n beforeFocus() {\n return inputDisabled.value\n },\n afterBlur() {\n if (props.validateEvent) {\n elFormItem?.validate?.('blur').catch((err) => debugWarn(err))\n }\n },\n }\n)\n\nconst needStatusIcon = computed(() => elForm?.statusIcon ?? false)\nconst validateState = computed(() => elFormItem?.validateState || '')\nconst validateIcon = computed(\n () => validateState.value && ValidateComponentsMap[validateState.value]\n)\nconst passwordIcon = computed(() =>\n passwordVisible.value ? IconView : IconHide\n)\nconst containerStyle = computed<StyleValue>(() => [\n rawAttrs.style as StyleValue,\n])\nconst textareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n textareaCalcStyle.value,\n { resize: props.resize },\n])\nconst nativeInputValue = computed(() =>\n isNil(props.modelValue) ? '' : String(props.modelValue)\n)\nconst showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (isFocused.value || hovering.value)\n)\nconst showPwdVisible = computed(\n () =>\n props.showPassword &&\n !inputDisabled.value &&\n !!nativeInputValue.value &&\n (!!nativeInputValue.value || isFocused.value)\n)\nconst isWordLimitVisible = computed(\n () =>\n props.showWordLimit &&\n !!props.maxlength &&\n (props.type === 'text' || props.type === 'textarea') &&\n !inputDisabled.value &&\n !props.readonly &&\n !props.showPassword\n)\nconst textLength = computed(() => nativeInputValue.value.length)\nconst inputExceed = computed(\n () =>\n // show exceed style if length of initial value greater then maxlength\n !!isWordLimitVisible.value && textLength.value > Number(props.maxlength)\n)\nconst suffixVisible = computed(\n () =>\n !!slots.suffix ||\n !!props.suffixIcon ||\n showClear.value ||\n props.showPassword ||\n isWordLimitVisible.value ||\n (!!validateState.value && needStatusIcon.value)\n)\n\nconst [recordCursor, setCursor] = useCursor(input)\n\nuseResizeObserver(textarea, (entries) => {\n onceInitSizeTextarea()\n if (!isWordLimitVisible.value || props.resize !== 'both') return\n const entry = entries[0]\n const { width } = entry.contentRect\n countStyle.value = {\n /** right: 100% - width + padding(15) + right(6) */\n right: `calc(100% - ${width + 15 + 6}px)`,\n }\n})\n\nconst resizeTextarea = () => {\n const { type, autosize } = props\n\n if (!isClient || type !== 'textarea' || !textarea.value) return\n\n if (autosize) {\n const minRows = isObject(autosize) ? autosize.minRows : undefined\n const maxRows = isObject(autosize) ? autosize.maxRows : undefined\n const textareaStyle = calcTextareaHeight(textarea.value, minRows, maxRows)\n\n // If the scrollbar is displayed, the height of the textarea needs more space than the calculated height.\n // If set textarea height in this case, the scrollbar will not hide.\n // So we need to hide scrollbar first, and reset it in next tick.\n // see https://github.com/element-plus/element-plus/issues/8825\n textareaCalcStyle.value = {\n overflowY: 'hidden',\n ...textareaStyle,\n }\n\n nextTick(() => {\n // NOTE: Force repaint to make sure the style set above is applied.\n textarea.value!.offsetHeight\n textareaCalcStyle.value = textareaStyle\n })\n } else {\n textareaCalcStyle.value = {\n minHeight: calcTextareaHeight(textarea.value).minHeight,\n }\n }\n}\n\nconst createOnceInitResize = (resizeTextarea: () => void) => {\n let isInit = false\n return () => {\n if (isInit || !props.autosize) return\n const isElHidden = textarea.value?.offsetParent === null\n if (!isElHidden) {\n resizeTextarea()\n isInit = true\n }\n }\n}\n// fix: https://github.com/element-plus/element-plus/issues/12074\nconst onceInitSizeTextarea = createOnceInitResize(resizeTextarea)\n\nconst setNativeInputValue = () => {\n const input = _ref.value\n const formatterValue = props.formatter\n ? props.formatter(nativeInputValue.value)\n : nativeInputValue.value\n if (!input || input.value === formatterValue) return\n input.value = formatterValue\n}\n\nconst handleInput = async (event: Event) => {\n recordCursor()\n\n let { value } = event.target as TargetElement\n\n if (props.formatter && props.parser) {\n value = props.parser(value)\n }\n\n // should not emit input during composition\n // see: https://github.com/ElemeFE/element/issues/10516\n if (isComposing.value) return\n\n // hack for https://github.com/ElemeFE/element/issues/8548\n // should remove the following line when we don't support IE\n if (value === nativeInputValue.value) {\n setNativeInputValue()\n return\n }\n\n emit(UPDATE_MODEL_EVENT, value)\n emit(INPUT_EVENT, value)\n\n // ensure native input value is controlled\n // see: https://github.com/ElemeFE/element/issues/12850\n await nextTick()\n setNativeInputValue()\n setCursor()\n}\n\nconst handleChange = (event: Event) => {\n let { value } = event.target as TargetElement\n\n if (props.formatter && props.parser) {\n value = props.parser(value)\n }\n emit(CHANGE_EVENT, value)\n}\n\nconst {\n isComposing,\n handleCompositionStart,\n handleCompositionUpdate,\n handleCompositionEnd,\n} = useComposition({ emit, afterComposition: handleInput })\n\nconst handlePasswordVisible = () => {\n recordCursor()\n passwordVisible.value = !passwordVisible.value\n // The native input needs a little time to regain focus\n setTimeout(setCursor)\n}\n\nconst focus = () => _ref.value?.focus()\n\nconst blur = () => _ref.value?.blur()\n\nconst handleMouseLeave = (evt: MouseEvent) => {\n hovering.value = false\n emit('mouseleave', evt)\n}\n\nconst handleMouseEnter = (evt: MouseEvent) => {\n hovering.value = true\n emit('mouseenter', evt)\n}\n\nconst handleKeydown = (evt: KeyboardEvent) => {\n emit('keydown', evt)\n}\n\nconst select = () => {\n _ref.value?.select()\n}\n\nconst clear = () => {\n emit(UPDATE_MODEL_EVENT, '')\n emit(CHANGE_EVENT, '')\n emit('clear')\n emit(INPUT_EVENT, '')\n}\n\nwatch(\n () => props.modelValue,\n () => {\n nextTick(() => resizeTextarea())\n if (props.validateEvent) {\n elFormItem?.validate?.('change').catch((err) => debugWarn(err))\n }\n }\n)\n\n// native input value is set explicitly\n// do not use v-model / :value in template\n// see: https://github.com/ElemeFE/element/issues/14521\nwatch(nativeInputValue, () => setNativeInputValue())\n\n// when change between <input> and <textarea>,\n// update DOM dependent value and styles\n// https://github.com/ElemeFE/element/issues/14857\nwatch(\n () => props.type,\n async () => {\n await nextTick()\n setNativeInputValue()\n resizeTextarea()\n }\n)\n\nonMounted(() => {\n if (!props.formatter && props.parser) {\n debugWarn(\n 'ElInput',\n 'If you set the parser, you also need to set the formatter.'\n )\n }\n setNativeInputValue()\n nextTick(resizeTextarea)\n})\n\ndefineExpose({\n /** @description HTML input element */\n input,\n /** @description HTML textarea element */\n textarea,\n /** @description HTML element, input or textarea */\n ref: _ref,\n /** @description style of textarea. */\n textareaStyle,\n\n /** @description from props (used on unit test) */\n autosize: toRef(props, 'autosize'),\n\n /** @description is input composing */\n isComposing,\n\n /** @description HTML input element native method */\n focus,\n /** @description HTML input element native method */\n blur,\n /** @description HTML input element native method */\n select,\n /** @description clear input value */\n clear,\n /** @description resize textarea. */\n resizeTextarea,\n})\n</script>\n"],"names":["useRawAttrs","useAttrs","useSlots","computed","useFormItem","useFormItemInputId","useFormSize","useFormDisabled","useNamespace","shallowRef","ref","useFocusController","debugWarn","IconView","IconHide","isNil","useResizeObserver","isClient","isObject","calcTextareaHeight","nextTick","textareaStyle","event","resizeTextarea","input","INPUT_EVENT","CHANGE_EVENT","useComposition","UPDATE_MODEL_EVENT","watch","onMounted","toRef","_openBlock","_createElementBlock","_normalizeClass","_unref","_normalizeStyle","_createCommentVNode","_Fragment","_renderSlot","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;uCAuMc,CAAA;AAAA,EACZ,IAAM,EAAA,SAAA;AAAA,EACN,YAAc,EAAA,KAAA;AAChB,CAAA,CAAA,CAAA;;;;;;;AAIA,IAAA,MAAM,WAAWA,YAAY,EAAA,CAAA;AAC7B,IAAA,MAAM,QAAQC,cAAS,EAAA,CAAA;AACvB,IAAA,MAAM,QAAQC,YAAS,EAAA,CAAA;AAEvB,IAAM,MAAA,YAAA,GAAeC,aAAS,MAAM;AAAA,MAClC,MAAM,IAAS,KAAA,UAAA,GAAa,WAAW,CAAE,EAAA,GAAI,QAAQ,CAAE,EAAA;AAAA,MACvD,OAAA,CAAQ,CAAE,CAAA,SAAA,CAAU,KAAK,CAAA;AAAA,MACzB,OAAQ,CAAA,EAAA,CAAG,UAAY,EAAA,aAAA,CAAc,KAAK,CAAA;AAAA,MAC1C,OAAQ,CAAA,EAAA,CAAG,QAAU,EAAA,WAAA,CAAY,KAAK,CAAA;AAAA,MACtC;AAAA,QACE,CAAC,QAAQ,CAAE,CAAA,OAAO,CAAC,GAAG,KAAA,CAAM,WAAW,KAAM,CAAA,MAAA;AAAA,QAC7C,CAAC,QAAQ,CAAE,CAAA,QAAQ,CAAC,GAAG,KAAA,CAAM,UAAU,KAAM,CAAA,UAAA;AAAA,QAC7C,CAAC,OAAA,CAAQ,CAAE,CAAA,QAAQ,CAAC,GAClB,KAAM,CAAA,MAAA,IAAU,KAAM,CAAA,UAAA,IAAc,KAAM,CAAA,SAAA,IAAa,KAAM,CAAA,YAAA;AAAA,QAC/D,CAAC,QAAQ,EAAG,CAAA,QAAA,EAAU,gBAAgB,CAAC,GACrC,SAAU,CAAA,KAAA,IAAS,cAAe,CAAA,KAAA;AAAA,QACpC,CAAC,OAAQ,CAAA,CAAA,CAAE,QAAQ,CAAC,GAAG,MAAM,IAAS,KAAA,QAAA;AAAA,OACxC;AAAA,MACA,QAAS,CAAA,KAAA;AAAA,KACV,CAAA,CAAA;AAED,IAAM,MAAA,UAAA,GAAaA,aAAS,MAAM;AAAA,MAChC,OAAA,CAAQ,EAAE,SAAS,CAAA;AAAA,MACnB,OAAQ,CAAA,EAAA,CAAG,OAAS,EAAA,SAAA,CAAU,KAAK,CAAA;AAAA,KACpC,CAAA,CAAA;AAED,IAAA,MAAM,EAAE,IAAM,EAAA,MAAA,EAAQ,QAAU,EAAA,UAAA,KAAeC,uBAAY,EAAA,CAAA;AAC3D,IAAA,MAAM,EAAE,OAAA,EAAY,GAAAC,8BAAA,CAAmB,KAAO,EAAA;AAAA,MAC5C,eAAiB,EAAA,UAAA;AAAA,KAClB,CAAA,CAAA;AACD,IAAA,MAAM,YAAYC,8BAAY,EAAA,CAAA;AAC9B,IAAA,MAAM,gBAAgBC,kCAAgB,EAAA,CAAA;AACtC,IAAM,MAAA,OAAA,GAAUC,qBAAa,OAAO,CAAA,CAAA;AACpC,IAAM,MAAA,UAAA,GAAaA,qBAAa,UAAU,CAAA,CAAA;AAE1C,IAAA,MAAM,QAAQC,cAA6B,EAAA,CAAA;AAC3C,IAAA,MAAM,WAAWA,cAAgC,EAAA,CAAA;AAEjD,IAAM,MAAA,QAAA,GAAWC,QAAI,KAAK,CAAA,CAAA;AAC1B,IAAM,MAAA,eAAA,GAAkBA,QAAI,KAAK,CAAA,CAAA;AACjC,IAAA,MAAM,aAAaA,OAAgB,EAAA,CAAA;AACnC,IAAM,MAAA,iBAAA,GAAoBD,cAAW,CAAA,KAAA,CAAM,UAAU,CAAA,CAAA;AAErD,IAAA,MAAM,OAAON,YAAS,CAAA,MAAM,KAAM,CAAA,KAAA,IAAS,SAAS,KAAK,CAAA,CAAA;AAGzD,IAAA,MAAM,EAAE,UAAA,EAAY,SAAW,EAAA,WAAA,EAAa,YAAe,GAAAQ,0BAAA,CAAA,IAAA,EAAA;AAAA,MACzD,WAAA,GAAA;AAAA,QACA,OAAA,aAAA,CAAA,KAAA,CAAA;AAAA,OAAA;AAEI,MAAA,SAAA,GAAqB;AAAA,QACvB,IAAA,EAAA,CAAA;AAAA,QACA,IAAY,KAAA,CAAA,aAAA,EAAA;AACV,UAAA,CAAA,EAAA,aAAyB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,UAAA,CAAA,QAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,UAAA,EAAA,MAAA,CAAA,CAAA,KAAA,CAAA,CAAA,GAAA,KAAAC,eAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AACvB,SAAY;AAAgD,OAC9D;AAAA,KACF,CAAA,CAAA;AAAA,IACF,MAAA,cAAA,GAAAT,YAAA,CAAA,MAAA;AAAA,MACF,IAAA,EAAA,CAAA;AAEA,MAAA,OAAuB,CAAA,EAAA,GAAA,MAAA,IAAA,IAAA,GAAS,KAAM,CAAA,GAAA,sBAA2B,IAAA,GAAA,EAAA,GAAA,KAAA,CAAA;AACjE,KAAA,CAAA,CAAA;AACA,IAAA,MAAM,aAAe,GAAAA,YAAA,CAAA,MAAA,CAAA,UAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,UAAA,CAAA,aAAA,KAAA,EAAA,CAAA,CAAA;AAAA,IAAA,MACb,YAAA,GAAAA,YAAuB,CAAA,MAAA,aAAA,CAAA,mCAAyC,CAAA,aAAA,CAAA,KAAA,CAAA,CAAA,CAAA;AAAA,IACxE,MAAA,YAAA,GAAAA,YAAA,CAAA,MAAA,eAAA,CAAA,KAAA,GAAAU,aAAA,GAAAC,aAAA,CAAA,CAAA;AACA,IAAA,MAAM,cAAe,GAAAX,YAAA,CAAA,MAAA;AAAA,MAAS,QACZ,CAAA,KAAA;AAAmB,KACrC,CAAA,CAAA;AACA,IAAM,MAAA,aAAA,GAAAA,mBAA4C;AAAA,MAChD,KAAS,CAAA,UAAA;AAAA,MACV,iBAAA,CAAA,KAAA;AACD,MAAM,EAAA,MAAA,EAAA,KAAA,CAAA;AAA2C,KAAA,CAC/C,CAAM;AAAA,IAAA,MACY,gBAAA,GAAAA,YAAA,CAAA,MAAAY,mBAAA,CAAA,KAAA,CAAA,UAAA,CAAA,GAAA,EAAA,GAAA,MAAA,CAAA,KAAA,CAAA,UAAA,CAAA,CAAA,CAAA;AAAA,IAClB,MAAU,SAAA,GAAMZ,YAAO,CAAA,MAAA,KAAA,CAAA,SAAA,IAAA,CAAA,aAAA,CAAA,KAAA,IAAA,CAAA,KAAA,CAAA,QAAA,IAAA,CAAA,CAAA,gBAAA,CAAA,KAAA,KAAA,SAAA,CAAA,KAAA,IAAA,QAAA,CAAA,KAAA,CAAA,CAAA,CAAA;AAAA,IACzB,MAAC,cAAA,GAAAA,YAAA,CAAA,MAAA,KAAA,CAAA,YAAA,IAAA,CAAA,aAAA,CAAA,KAAA,IAAA,CAAA,CAAA,gBAAA,CAAA,KAAA,KAAA,CAAA,CAAA,gBAAA,CAAA,KAAA,IAAA,SAAA,CAAA,KAAA,CAAA,CAAA,CAAA;AACD,IAAA,MAAM,kBAAmB,GAAAA,YAAA,CAAA,MAAA,KAAA,CAAA,aAAA,IAAA,CAAA,CAAA,KAAA,CAAA,SAAA,KAAA,KAAA,CAAA,IAAA,KAAA,MAAA,IAAA,KAAA,CAAA,IAAA,KAAA,UAAA,CAAA,IAAA,CAAA,aAAA,CAAA,KAAA,IAAA,CAAA,KAAA,CAAA,QAAA,IAAA,CAAA,KAAA,CAAA,YAAA,CAAA,CAAA;AAAA,IAAS,MAAA,UACpB,GAAAA,YAAA,CAAA,MAAc,sBAA4B,CAAA,MAAA,CAAA,CAAA;AAAA,IACxD,MAAA,WAAA,GAAAA,YAAA,CAAA,MAAA,CAAA,CAAA,kBAAA,CAAA,KAAA,IAAA,UAAA,CAAA,KAAA,GAAA,MAAA,CAAA,KAAA,CAAA,SAAA,CAAA,CAAA,CAAA;AACA,IAAA,MAAM,aAAY,GAAAA,YAAA,CAAA,MAAA,CAAA,CAAA,KAAA,CAAA,MAAA,IAAA,CAAA,CAAA,KAAA,CAAA,UAAA,IAAA,SAAA,CAAA,KAAA,IAAA,KAAA,CAAA,YAAA,IAAA,kBAAA,CAAA,KAAA,IAAA,CAAA,CAAA,aAAA,CAAA,KAAA,IAAA,cAAA,CAAA,KAAA,CAAA,CAAA;AAAA,IAAA,MAEd,CAAA,YACA,EAAA,8BACA,CAAA,KAAA,CAAA,CAAA;AAE6B,IACjCa,sBAAA,CAAA,QAAA,EAAA,CAAA,OAAA,KAAA;AACA,MAAA,oBAAuB,EAAA,CAAA;AAAA,MACrB,IACE,CAAA,kBACA,CAAA,KAAC,gBACD,KAAA,MAAE;AACqC,QAC3C,OAAA;AACA,MAAA,MAA2B,KAAA,GAAA,OAAA,CAAA,CAAA,CAAA,CAAA;AAAA,MACzB,MACE,OACA,EAAA,GAAA,KAAA,CAAA,WAAQ,CAAA;AAID,MACX,UAAA,CAAA,KAAA,GAAA;AACA,QAAA,KAAmB,EAAA,CAAA,YAAA,EAAA,KAAe,GAAA,EAAA,GAAA,CAAA,CAAA,GAAA,CAAA;AAClC,OAAA,CAAA;AAAoB,KAClB,CAAA,CAAA;AAAA,IAAA,MAAA,cAAA,GAAA,MAAA;AAAA,MAEE,MAAqB,EAAA,IAAA,EAAA,QAAA,EAAA,GAAA,KAAS;AAAyC,MAAA,IAAA,CAAAC,aAAA,IAAA,IAAA,KAAA,UAAA,IAAA,CAAA,QAAA,CAAA,KAAA;AAAA,QAC3E,OAAA;AACA,MAAA,IAAM,QAAgB,EAAA;AAAA,cAEhB,OACF,GAAAC,eAAE,CAAM,QAAA,CAAA,GAAA,mBAER,KAAA,CAAA,CAAA;AAEyC,QAC7C,MAAA,OAAA,GAAAA,eAAA,CAAA,QAAA,CAAA,GAAA,QAAA,CAAA,OAAA,GAAA,KAAA,CAAA,CAAA;AAEA,QAAA,MAAO,cAAuB,GAAAC,wBAAmB,CAAA,QAAA,CAAA,KAAA,EAAA,OAAA,EAAA,OAAA,CAAA,CAAA;AAEjD,QAAkB,iBAAA,CAAA,KAAA,GAAuB;AACvC,UAAqB,SAAA,EAAA,QAAA;AACrB,UAAI,GAAC,cAAA;AACL,SAAM,CAAA;AACN,QAAMC,YAAQ,CAAA,MAAA;AACd,UAAA,QAAmB,CAAA,KAAA,CAAA,YAAA,CAAA;AAAA,UAAA,iBAAA,CAAA,KAAA,GAAA,cAAA,CAAA;AAAA,SAEV,CAAA,CAAA;AAA6B,OACtC,MAAA;AAAA,QACD,iBAAA,CAAA,KAAA,GAAA;AAED,UAAM,mCAAuB,CAAA,QAAA,CAAA,KAAA,CAAA,CAAA,SAAA;AAC3B,SAAM,CAAA;AAEN,OAAA;AAEA,KAAA,CAAA;AACE,IAAA,MAAA,oBAAgB,GAAS,CAAQ,oBAAa;AAC9C,MAAA,IAAA,MAAgB,GAAA,KAAA,CAAA;AAChB,MAAA,OAAA,MAAsB;AAMtB,QAAA,IAAA,EAAA,CAAA;AAA0B,QAAA,IACb,MAAA,IAAA,CAAA,KAAA,CAAA,QAAA;AAAA,UACX,OAAGC;AAAA,QACL,MAAA,UAAA,GAAA,CAAA,CAAA,EAAA,GAAA,QAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAA,MAAA,IAAA,CAAA;AAEA,QAAA,IAAA,CAAA,UAAe,EAAA;AAEb,UAAA,eAAgB,EAAA,CAAA;AAChB,UAAA,MAAA,GAAA,IAAA,CAAA;AAA0B,SAC3B;AAAA,OACI,CAAA;AACL,KAAA,CAAA;AAA0B,IAAA,MACxB,oBAAW,GAAA,oBAA4B,CAAK,cAAE,CAAA,CAAA;AAAA,IAChD,MAAA,mBAAA,GAAA,MAAA;AAAA,MACF,MAAA,MAAA,GAAA,IAAA,CAAA,KAAA,CAAA;AAAA,MACF,MAAA,cAAA,GAAA,KAAA,CAAA,SAAA,GAAA,KAAA,CAAA,SAAA,CAAA,gBAAA,CAAA,KAAA,CAAA,GAAA,gBAAA,CAAA,KAAA,CAAA;AAEA,MAAM,IAAA,CAAA,MAAA,IAAA,MAAA,CAAA,KAAuB,KAAgC,cAAA;AAC3D,QAAA,OAAa;AACb,MAAA,MAAA,CAAO,KAAM,GAAA,cAAA,CAAA;AACX,KAAI,CAAA;AACJ,IAAM,MAAA,WAAA,GAAA,OAAsBC,OAAA,KAAA;AAC5B,MAAA,YAAiB,EAAA,CAAA;AACf,MAAA,IAAAC,EAAe,KAAA,EAAA,GAAAD,OAAA,CAAA,MAAA,CAAA;AACf,MAAS,IAAA,KAAA,CAAA,SAAA,IAAA,KAAA,CAAA,MAAA,EAAA;AAAA,QACX,KAAA,GAAA,KAAA,CAAA,MAAA,CAAA,KAAA,CAAA,CAAA;AAAA,OACF;AAAA,MACF,IAAA,WAAA,CAAA,KAAA;AAEA,QAAM,OAAA;AAEN,MAAA,IAAM,0BAA4B,CAAA,KAAA,EAAA;AAChC,QAAA,mBAAmB,EAAA,CAAA;AACnB,QAAM,OAAA;AAGN,OAAA;AACA,MAAAE,6BAAc,EAAA,KAAA,CAAA,CAAA;AAAA,MAChB,IAAA,CAAAC,iBAAA,EAAA,KAAA,CAAA,CAAA;AAEA,MAAM,MAAAL,YAAA,EAAA,CAAA;AACJ,MAAa,mBAAA,EAAA,CAAA;AAEb,MAAI,SAAQ,EAAA,CAAA;AAEZ,KAAI,CAAA;AACF,IAAQ,MAAA,YAAM,WAAY,KAAA;AAAA,MAC5B,IAAA,EAAA,KAAA,EAAA,GAAAE,OAAA,CAAA,MAAA,CAAA;AAIA,MAAA,IAAI,eAAmB,IAAA,KAAA,CAAA,MAAA,EAAA;AAIvB,QAAI,KAAA,GAAA;AACF,OAAoB;AACpB,MAAA,IAAA,CAAAI,kBAAA,EAAA,KAAA,CAAA,CAAA;AAAA,KACF,CAAA;AAEA,IAAA,MAAA;AACA,MAAA;AAIA,MAAA,sBAAe;AACf,MAAoB,uBAAA;AACpB,MAAU,oBAAA;AAAA,KACZ,GAAAC,sBAAA,CAAA,EAAA,IAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,CAAA,CAAA;AAEA,IAAM,MAAA,qBAAiC,GAAA,MAAA;AACrC,MAAI,YAAQ,EAAA,CAAA;AAEZ,MAAI,eAAmB,CAAA,KAAA,GAAA,CAAA,eAAc,CAAA,KAAA,CAAA;AACnC,MAAQ,UAAA,CAAA;AAAkB,KAC5B,CAAA;AACA,IAAA,MAAA;AAAwB,MAC1B,IAAA,EAAA,CAAA;AAEA,MAAM,OAAA,CAAA,EAAA,GAAA,IAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,EAAA,CAAA;AAAA,KACJ,CAAA;AAAA,IACA,MAAA,IAAA,GAAA,MAAA;AAAA,MACA,IAAA,EAAA,CAAA;AAAA,MACA,OAAA,CAAA,EAAA,GAAA,IAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,EAAA,CAAA;AAAA;AAGF,IAAA,MAAM,4BAA8B;AAClC,MAAa,QAAA,CAAA,KAAA,GAAA,KAAA,CAAA;AACb,MAAgB,IAAA,CAAA,YAAA,EAAA,GAAA,CAAA,CAAQ;AAExB,KAAA,CAAA;AAAoB,IACtB,MAAA,gBAAA,GAAA,CAAA,GAAA,KAAA;AAEA,MAAA,QAAc,CAAA,KAAA,GAAA,IAAW,CAAA;AAEzB,MAAA,IAAM,CAAO,YAAM,EAAK,GAAA,CAAA,CAAA;AAExB,KAAM,CAAA;AACJ,IAAA,MAAA,aAAiB,GAAA,CAAA,GAAA,KAAA;AACjB,MAAA,IAAA,CAAK,cAAc,CAAG,CAAA;AAAA,KACxB,CAAA;AAEA,IAAM,MAAA,MAAA,GAAA,MAAA;AACJ,MAAA,IAAA,EAAA,CAAA;AACA,MAAA,CAAA,EAAA,kBAAsB,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAA,EAAA,CAAA;AAAA,KACxB,CAAA;AAEA,IAAM,MAAA,KAAA,GAAA,MAAA;AACJ,MAAA,IAAA,CAAKC,wBAAc,EAAA,EAAA,CAAA,CAAA;AAAA,MACrB,IAAA,CAAAF,kBAAA,EAAA,EAAA,CAAA,CAAA;AAEA,MAAA,IAAM,SAAS,CAAM;AACnB,MAAA,IAAA,CAAKD,iBAAc,EAAA,EAAA,CAAA,CAAA;AAAA,KACrB,CAAA;AAEA,IAAAI,SAAA,CAAM,WAAc,CAAA,UAAA,EAAA,MAAA;AAClB,MAAA,IAAA;AACA,MAAAT,iCAAqB,EAAA,CAAA,CAAA;AACrB,MAAA,IAAA,KAAY,CAAA,aAAA,EAAA;AACZ,QAAA,CAAA,EAAK,aAAa,IAAE,IAAA,GAAA,KAAA,CAAA,GAAA,UAAA,CAAA,QAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,UAAA,EAAA,QAAA,CAAA,CAAA,KAAA,CAAA,CAAA,GAAA,KAAAR,eAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AAAA,OACtB;AAEA,KAAA,CAAA,CAAA;AAAA,IAAAiB,0BACc,EAAA,MAAA,mBAAA,EAAA,CAAA,CAAA;AAAA,IAAAA,SACN,CAAA,MAAA,KAAA,CAAA,IAAA,EAAA,YAAA;AACJ,MAAS,MAAAT,YAAA,EAAA,CAAM;AACf,MAAA,mBAAyB,EAAA,CAAA;AACvB,MAAY,cAAA,EAAA,CAAA;AAAkD,KAChE,CAAA,CAAA;AAAA,IACFU,aAAA,CAAA,MAAA;AAAA,MACF,IAAA,CAAA,KAAA,CAAA,SAAA,IAAA,KAAA,CAAA,MAAA,EAAA;AAKA,QAAMlB,eAAA,CAAA,SAAA,EAAwB,4DAAqB,CAAA,CAAA;AAKnD,OAAA;AAAA,MACE,mBAAY,EAAA,CAAA;AAAA,MACZQ,YAAY,CAAA,cAAA,CAAA,CAAA;AACV,KAAA,CAAA,CAAA;AACA,IAAoB,MAAA,CAAA;AACpB,MAAe,KAAA;AAAA,MACjB,QAAA;AAAA,MACF,GAAA,EAAA,IAAA;AAEA,MAAA,aAAgB;AACd,MAAA,QAAK,EAAAW,SAAmB,CAAA,KAAA,EAAA,UAAc,CAAA;AACpC,MAAA,WAAA;AAAA,MACE,KAAA;AAAA,MACA,IAAA;AAAA,MACF,MAAA;AAAA,MACF,KAAA;AACA,MAAoB,cAAA;AACpB,KAAA,CAAA,CAAA;AAAuB,IACzB,OAAC,CAAA,IAAA,EAAA,MAAA,KAAA;AAED,MAAa,OAAAC,aAAA,EAAA,EAAAC,sBAAA,CAAA,KAAA,EAAA;AAAA,QAAA,KAAA,EAAAC,kBAAA,CAAA;AAAA,UAEXC,SAAA,CAAA,YAAA,CAAA;AAAA,UAAA;AAAA,YAEA,CAAAA,SAAA,CAAA,OAAA,CAAA,CAAA,EAAA,CAAA,OAAA,EAAA,QAAA,CAAA,GAAA,IAAA,CAAA,MAAA,CAAA,MAAA;AAAA,YAAA,CAAAA,SAAA,CAAA,OAAA,CAAA,CAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,GAAA,IAAA,CAAA,MAAA,CAAA,OAAA;AAAA,WAEK;AAAA,SAAA,CAAA;AAAA,QAEL,KAAA,EAAAC,kBAAA,CAAAD,SAAA,CAAA,cAAA,CAAA,CAAA;AAAA,QAAA,YAAA,EAAA,gBAAA;AAAA,QAGA,YAAgB,EAAA,gBAAiB;AAAA,OAAA,EAAA;AAAA,QAGjCE,sBAAA,CAAA,SAAA,CAAA;AAAA,QAAA,IAAA,CAAA,IAAA,KAAA,UAAA,IAAAL,aAAA,EAAA,EAAAC,sBAAA,CAAAK,YAAA,EAAA,EAAA,GAAA,EAAA,CAAA,EAAA,EAAA;AAAA,UAGAD,sBAAA,CAAA,gBAAA,CAAA;AAAA,UAAA,IAAA,CAAA,MAAA,CAAA,OAAA,IAAAL,aAAA,EAAA,EAAAC,sBAAA,CAAA,KAAA,EAAA;AAAA,YAEA,GAAA,EAAA,CAAA;AAAA,YAAA,KAAA,EAAAC,kBAAA,CAAAC,SAAA,CAAA,OAAA,CAAA,CAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,CAAA;AAAA,WAEA,EAAA;AAAA,YAAAI,cAAA,CAAA,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA;AAAA,WAEA,EAAA,CAAA,CAAA,IAAAF,sBAAA,CAAA,MAAA,EAAA,IAAA,CAAA;AAAA,UAAAG,sBAAA,CAAA,KAAA,EAAA;AAAA,YAEA,OAAA,EAAA,YAAA;AAAA,YACD,GAAA,EAAA,UAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,8 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var link$1 = require('./src/link.js');
6
- var link = require('./src/link2.js');
5
+ var link$1 = require('./src/link2.js');
6
+ var link = require('./src/link.js');
7
7
  var install = require('../../utils/vue/install.js');
8
8
 
9
9
  const ElLink = install.withInstall(link$1["default"]);
@@ -2,57 +2,33 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var index$1 = require('../../icon/index.js');
7
- var link = require('./link2.js');
8
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
9
- var index = require('../../../hooks/use-namespace/index.js');
5
+ var runtime = require('../../../utils/vue/props/runtime.js');
6
+ var icon = require('../../../utils/vue/icon.js');
10
7
 
11
- const __default__ = vue.defineComponent({
12
- name: "ElLink"
13
- });
14
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
15
- ...__default__,
16
- props: link.linkProps,
17
- emits: link.linkEmits,
18
- setup(__props, { emit }) {
19
- const props = __props;
20
- const ns = index.useNamespace("link");
21
- const linkKls = vue.computed(() => [
22
- ns.b(),
23
- ns.m(props.type),
24
- ns.is("disabled", props.disabled),
25
- ns.is("underline", props.underline && !props.disabled)
26
- ]);
27
- function handleClick(event) {
28
- if (!props.disabled)
29
- emit("click", event);
30
- }
31
- return (_ctx, _cache) => {
32
- return vue.openBlock(), vue.createElementBlock("a", {
33
- class: vue.normalizeClass(vue.unref(linkKls)),
34
- href: _ctx.disabled || !_ctx.href ? void 0 : _ctx.href,
35
- target: _ctx.disabled || !_ctx.href ? void 0 : _ctx.target,
36
- onClick: handleClick
37
- }, [
38
- _ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElIcon), { key: 0 }, {
39
- default: vue.withCtx(() => [
40
- (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.icon)))
41
- ]),
42
- _: 1
43
- })) : vue.createCommentVNode("v-if", true),
44
- _ctx.$slots.default ? (vue.openBlock(), vue.createElementBlock("span", {
45
- key: 1,
46
- class: vue.normalizeClass(vue.unref(ns).e("inner"))
47
- }, [
48
- vue.renderSlot(_ctx.$slots, "default")
49
- ], 2)) : vue.createCommentVNode("v-if", true),
50
- _ctx.$slots.icon ? vue.renderSlot(_ctx.$slots, "icon", { key: 2 }) : vue.createCommentVNode("v-if", true)
51
- ], 10, ["href", "target"]);
52
- };
8
+ const linkProps = runtime.buildProps({
9
+ type: {
10
+ type: String,
11
+ values: ["primary", "success", "warning", "info", "danger", "default"],
12
+ default: "default"
13
+ },
14
+ underline: {
15
+ type: Boolean,
16
+ default: true
17
+ },
18
+ disabled: Boolean,
19
+ href: { type: String, default: "" },
20
+ target: {
21
+ type: String,
22
+ default: "_self"
23
+ },
24
+ icon: {
25
+ type: icon.iconPropType
53
26
  }
54
27
  });
55
- var Link = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "link.vue"]]);
28
+ const linkEmits = {
29
+ click: (evt) => evt instanceof MouseEvent
30
+ };
56
31
 
57
- exports["default"] = Link;
32
+ exports.linkEmits = linkEmits;
33
+ exports.linkProps = linkProps;
58
34
  //# sourceMappingURL=link.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"link.js","sources":["../../../../../../packages/components/link/src/link.vue"],"sourcesContent":["<template>\n <a\n :class=\"linkKls\"\n :href=\"disabled || !href ? undefined : href\"\n :target=\"disabled || !href ? undefined : target\"\n @click=\"handleClick\"\n >\n <el-icon v-if=\"icon\"><component :is=\"icon\" /></el-icon>\n <span v-if=\"$slots.default\" :class=\"ns.e('inner')\">\n <slot />\n </span>\n\n <slot v-if=\"$slots.icon\" name=\"icon\" />\n </a>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { linkEmits, linkProps } from './link'\n\ndefineOptions({\n name: 'ElLink',\n})\nconst props = defineProps(linkProps)\nconst emit = defineEmits(linkEmits)\n\nconst ns = useNamespace('link')\n\nconst linkKls = computed(() => [\n ns.b(),\n ns.m(props.type),\n ns.is('disabled', props.disabled),\n ns.is('underline', props.underline && !props.disabled),\n])\n\nfunction handleClick(event: MouseEvent) {\n if (!props.disabled) emit('click', event)\n}\n</script>\n"],"names":["useNamespace","computed"],"mappings":";;;;;;;;;;uCAsBc,CAAA;AAAA,EACZ,IAAM,EAAA,QAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAIA,IAAM,MAAA,EAAA,GAAKA,mBAAa,MAAM,CAAA,CAAA;AAE9B,IAAM,MAAA,OAAA,GAAUC,aAAS,MAAM;AAAA,MAC7B,GAAG,CAAE,EAAA;AAAA,MACL,EAAA,CAAG,CAAE,CAAA,KAAA,CAAM,IAAI,CAAA;AAAA,MACf,EAAG,CAAA,EAAA,CAAG,UAAY,EAAA,KAAA,CAAM,QAAQ,CAAA;AAAA,MAChC,GAAG,EAAG,CAAA,WAAA,EAAa,MAAM,SAAa,IAAA,CAAC,MAAM,QAAQ,CAAA;AAAA,KACtD,CAAA,CAAA;AAED,IAAA,SAAS,YAAY,KAAmB,EAAA;AACtC,MAAA,IAAI,CAAC,KAAA,CAAM,QAAU;AAAmB,QAC1C,IAAA,CAAA,OAAA,EAAA,KAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"link.js","sources":["../../../../../../packages/components/link/src/link.ts"],"sourcesContent":["import { buildProps, iconPropType } from '@element-plus/utils'\nimport type { ExtractPropTypes, PropType } from 'vue'\nimport type Link from './link.vue'\n\nexport const linkProps = buildProps({\n /**\n * @description type\n */\n type: {\n type: String,\n values: ['primary', 'success', 'warning', 'info', 'danger', 'default'],\n default: 'default',\n },\n /**\n * @description whether the component has underline\n */\n underline: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether the component is disabled\n */\n disabled: Boolean,\n /**\n * @description same as native hyperlink's `href`\n */\n href: { type: String, default: '' },\n /**\n * @description same as native hyperlink's `target`\n */\n target: {\n type: String as PropType<'_blank' | '_parent' | '_self' | '_top' | string>,\n default: '_self',\n },\n /**\n * @description icon component\n */\n icon: {\n type: iconPropType,\n },\n} as const)\nexport type LinkProps = ExtractPropTypes<typeof linkProps>\n\nexport const linkEmits = {\n click: (evt: MouseEvent) => evt instanceof MouseEvent,\n}\nexport type LinkEmits = typeof linkEmits\n\nexport type LinkInstance = InstanceType<typeof Link>\n"],"names":["buildProps","iconPropType"],"mappings":";;;;;;;AACY,MAAC,SAAS,GAAGA,kBAAU,CAAC;AACpC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC;AAC1E,IAAI,OAAO,EAAE,SAAS;AACtB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE;AACrC,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEC,iBAAY;AACtB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,SAAS,GAAG;AACzB,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC3C;;;;;"}
@@ -2,33 +2,57 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var runtime = require('../../../utils/vue/props/runtime.js');
6
- var icon = require('../../../utils/vue/icon.js');
5
+ var vue = require('vue');
6
+ var index$1 = require('../../icon/index.js');
7
+ var link = require('./link.js');
8
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
9
+ var index = require('../../../hooks/use-namespace/index.js');
7
10
 
8
- const linkProps = runtime.buildProps({
9
- type: {
10
- type: String,
11
- values: ["primary", "success", "warning", "info", "danger", "default"],
12
- default: "default"
13
- },
14
- underline: {
15
- type: Boolean,
16
- default: true
17
- },
18
- disabled: Boolean,
19
- href: { type: String, default: "" },
20
- target: {
21
- type: String,
22
- default: "_self"
23
- },
24
- icon: {
25
- type: icon.iconPropType
11
+ const __default__ = vue.defineComponent({
12
+ name: "ElLink"
13
+ });
14
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
15
+ ...__default__,
16
+ props: link.linkProps,
17
+ emits: link.linkEmits,
18
+ setup(__props, { emit }) {
19
+ const props = __props;
20
+ const ns = index.useNamespace("link");
21
+ const linkKls = vue.computed(() => [
22
+ ns.b(),
23
+ ns.m(props.type),
24
+ ns.is("disabled", props.disabled),
25
+ ns.is("underline", props.underline && !props.disabled)
26
+ ]);
27
+ function handleClick(event) {
28
+ if (!props.disabled)
29
+ emit("click", event);
30
+ }
31
+ return (_ctx, _cache) => {
32
+ return vue.openBlock(), vue.createElementBlock("a", {
33
+ class: vue.normalizeClass(vue.unref(linkKls)),
34
+ href: _ctx.disabled || !_ctx.href ? void 0 : _ctx.href,
35
+ target: _ctx.disabled || !_ctx.href ? void 0 : _ctx.target,
36
+ onClick: handleClick
37
+ }, [
38
+ _ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElIcon), { key: 0 }, {
39
+ default: vue.withCtx(() => [
40
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.icon)))
41
+ ]),
42
+ _: 1
43
+ })) : vue.createCommentVNode("v-if", true),
44
+ _ctx.$slots.default ? (vue.openBlock(), vue.createElementBlock("span", {
45
+ key: 1,
46
+ class: vue.normalizeClass(vue.unref(ns).e("inner"))
47
+ }, [
48
+ vue.renderSlot(_ctx.$slots, "default")
49
+ ], 2)) : vue.createCommentVNode("v-if", true),
50
+ _ctx.$slots.icon ? vue.renderSlot(_ctx.$slots, "icon", { key: 2 }) : vue.createCommentVNode("v-if", true)
51
+ ], 10, ["href", "target"]);
52
+ };
26
53
  }
27
54
  });
28
- const linkEmits = {
29
- click: (evt) => evt instanceof MouseEvent
30
- };
55
+ var Link = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "link.vue"]]);
31
56
 
32
- exports.linkEmits = linkEmits;
33
- exports.linkProps = linkProps;
57
+ exports["default"] = Link;
34
58
  //# sourceMappingURL=link2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"link2.js","sources":["../../../../../../packages/components/link/src/link.ts"],"sourcesContent":["import { buildProps, iconPropType } from '@element-plus/utils'\nimport type { ExtractPropTypes, PropType } from 'vue'\nimport type Link from './link.vue'\n\nexport const linkProps = buildProps({\n /**\n * @description type\n */\n type: {\n type: String,\n values: ['primary', 'success', 'warning', 'info', 'danger', 'default'],\n default: 'default',\n },\n /**\n * @description whether the component has underline\n */\n underline: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether the component is disabled\n */\n disabled: Boolean,\n /**\n * @description same as native hyperlink's `href`\n */\n href: { type: String, default: '' },\n /**\n * @description same as native hyperlink's `target`\n */\n target: {\n type: String as PropType<'_blank' | '_parent' | '_self' | '_top' | string>,\n default: '_self',\n },\n /**\n * @description icon component\n */\n icon: {\n type: iconPropType,\n },\n} as const)\nexport type LinkProps = ExtractPropTypes<typeof linkProps>\n\nexport const linkEmits = {\n click: (evt: MouseEvent) => evt instanceof MouseEvent,\n}\nexport type LinkEmits = typeof linkEmits\n\nexport type LinkInstance = InstanceType<typeof Link>\n"],"names":["buildProps","iconPropType"],"mappings":";;;;;;;AACY,MAAC,SAAS,GAAGA,kBAAU,CAAC;AACpC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC;AAC1E,IAAI,OAAO,EAAE,SAAS;AACtB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE;AACrC,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEC,iBAAY;AACtB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,SAAS,GAAG;AACzB,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC3C;;;;;"}
1
+ {"version":3,"file":"link2.js","sources":["../../../../../../packages/components/link/src/link.vue"],"sourcesContent":["<template>\n <a\n :class=\"linkKls\"\n :href=\"disabled || !href ? undefined : href\"\n :target=\"disabled || !href ? undefined : target\"\n @click=\"handleClick\"\n >\n <el-icon v-if=\"icon\"><component :is=\"icon\" /></el-icon>\n <span v-if=\"$slots.default\" :class=\"ns.e('inner')\">\n <slot />\n </span>\n\n <slot v-if=\"$slots.icon\" name=\"icon\" />\n </a>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { linkEmits, linkProps } from './link'\n\ndefineOptions({\n name: 'ElLink',\n})\nconst props = defineProps(linkProps)\nconst emit = defineEmits(linkEmits)\n\nconst ns = useNamespace('link')\n\nconst linkKls = computed(() => [\n ns.b(),\n ns.m(props.type),\n ns.is('disabled', props.disabled),\n ns.is('underline', props.underline && !props.disabled),\n])\n\nfunction handleClick(event: MouseEvent) {\n if (!props.disabled) emit('click', event)\n}\n</script>\n"],"names":["useNamespace","computed"],"mappings":";;;;;;;;;;uCAsBc,CAAA;AAAA,EACZ,IAAM,EAAA,QAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAIA,IAAM,MAAA,EAAA,GAAKA,mBAAa,MAAM,CAAA,CAAA;AAE9B,IAAM,MAAA,OAAA,GAAUC,aAAS,MAAM;AAAA,MAC7B,GAAG,CAAE,EAAA;AAAA,MACL,EAAA,CAAG,CAAE,CAAA,KAAA,CAAM,IAAI,CAAA;AAAA,MACf,EAAG,CAAA,EAAA,CAAG,UAAY,EAAA,KAAA,CAAM,QAAQ,CAAA;AAAA,MAChC,GAAG,EAAG,CAAA,WAAA,EAAa,MAAM,SAAa,IAAA,CAAC,MAAM,QAAQ,CAAA;AAAA,KACtD,CAAA,CAAA;AAED,IAAA,SAAS,YAAY,KAAmB,EAAA;AACtC,MAAA,IAAI,CAAC,KAAA,CAAM,QAAU;AAAmB,QAC1C,IAAA,CAAA,OAAA,EAAA,KAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,173 +2,23 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var index$2 = require('../../scrollbar/index.js');
7
- var mentionDropdown = require('./mention-dropdown2.js');
8
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
9
- var index = require('../../../hooks/use-namespace/index.js');
10
- var index$1 = require('../../../hooks/use-locale/index.js');
11
- var scroll = require('../../../utils/dom/scroll.js');
5
+ var runtime = require('../../../utils/vue/props/runtime.js');
6
+ var shared = require('@vue/shared');
12
7
 
13
- const __default__ = vue.defineComponent({
14
- name: "ElMentionDropdown"
8
+ const mentionDropdownProps = runtime.buildProps({
9
+ options: {
10
+ type: runtime.definePropType(Array),
11
+ default: () => []
12
+ },
13
+ loading: Boolean,
14
+ disabled: Boolean,
15
+ contentId: String,
16
+ ariaLabel: String
15
17
  });
16
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
17
- ...__default__,
18
- props: mentionDropdown.mentionDropdownProps,
19
- emits: mentionDropdown.mentionDropdownEmits,
20
- setup(__props, { expose, emit }) {
21
- const props = __props;
22
- const ns = index.useNamespace("mention");
23
- const { t } = index$1.useLocale();
24
- const hoveringIndex = vue.ref(-1);
25
- const scrollbarRef = vue.ref();
26
- const optionRefs = vue.ref();
27
- const dropdownRef = vue.ref();
28
- const optionkls = (item, index) => [
29
- ns.be("dropdown", "item"),
30
- ns.is("hovering", hoveringIndex.value === index),
31
- ns.is("disabled", item.disabled || props.disabled)
32
- ];
33
- const handleSelect = (item) => {
34
- if (item.disabled || props.disabled)
35
- return;
36
- emit("select", item);
37
- };
38
- const handleMouseEnter = (index) => {
39
- hoveringIndex.value = index;
40
- };
41
- const filteredAllDisabled = vue.computed(() => props.disabled || props.options.every((item) => item.disabled));
42
- const hoverOption = vue.computed(() => props.options[hoveringIndex.value]);
43
- const selectHoverOption = () => {
44
- if (!hoverOption.value)
45
- return;
46
- emit("select", hoverOption.value);
47
- };
48
- const navigateOptions = (direction) => {
49
- const { options } = props;
50
- if (options.length === 0 || filteredAllDisabled.value)
51
- return;
52
- if (direction === "next") {
53
- hoveringIndex.value++;
54
- if (hoveringIndex.value === options.length) {
55
- hoveringIndex.value = 0;
56
- }
57
- } else if (direction === "prev") {
58
- hoveringIndex.value--;
59
- if (hoveringIndex.value < 0) {
60
- hoveringIndex.value = options.length - 1;
61
- }
62
- }
63
- const option = options[hoveringIndex.value];
64
- if (option.disabled) {
65
- navigateOptions(direction);
66
- return;
67
- }
68
- vue.nextTick(() => scrollToOption(option));
69
- };
70
- const scrollToOption = (option) => {
71
- var _a, _b, _c, _d;
72
- const { options } = props;
73
- const index = options.findIndex((item) => item.value === option.value);
74
- const target = (_a = optionRefs.value) == null ? void 0 : _a[index];
75
- if (target) {
76
- const menu = (_c = (_b = dropdownRef.value) == null ? void 0 : _b.querySelector) == null ? void 0 : _c.call(_b, `.${ns.be("dropdown", "wrap")}`);
77
- if (menu) {
78
- scroll.scrollIntoView(menu, target);
79
- }
80
- }
81
- (_d = scrollbarRef.value) == null ? void 0 : _d.handleScroll();
82
- };
83
- const resetHoveringIndex = () => {
84
- if (filteredAllDisabled.value || props.options.length === 0) {
85
- hoveringIndex.value = -1;
86
- } else {
87
- hoveringIndex.value = 0;
88
- }
89
- };
90
- vue.watch(() => props.options, resetHoveringIndex, {
91
- immediate: true
92
- });
93
- expose({
94
- hoveringIndex,
95
- navigateOptions,
96
- selectHoverOption,
97
- hoverOption
98
- });
99
- return (_ctx, _cache) => {
100
- return vue.openBlock(), vue.createElementBlock("div", {
101
- ref_key: "dropdownRef",
102
- ref: dropdownRef,
103
- class: vue.normalizeClass(vue.unref(ns).b("dropdown"))
104
- }, [
105
- _ctx.$slots.header ? (vue.openBlock(), vue.createElementBlock("div", {
106
- key: 0,
107
- class: vue.normalizeClass(vue.unref(ns).be("dropdown", "header"))
108
- }, [
109
- vue.renderSlot(_ctx.$slots, "header")
110
- ], 2)) : vue.createCommentVNode("v-if", true),
111
- vue.withDirectives(vue.createVNode(vue.unref(index$2.ElScrollbar), {
112
- id: _ctx.contentId,
113
- ref_key: "scrollbarRef",
114
- ref: scrollbarRef,
115
- tag: "ul",
116
- "wrap-class": vue.unref(ns).be("dropdown", "wrap"),
117
- "view-class": vue.unref(ns).be("dropdown", "list"),
118
- role: "listbox",
119
- "aria-label": _ctx.ariaLabel,
120
- "aria-orientation": "vertical"
121
- }, {
122
- default: vue.withCtx(() => [
123
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.options, (item, index) => {
124
- return vue.openBlock(), vue.createElementBlock("li", {
125
- id: `${_ctx.contentId}-${index}`,
126
- ref_for: true,
127
- ref_key: "optionRefs",
128
- ref: optionRefs,
129
- key: index,
130
- class: vue.normalizeClass(optionkls(item, index)),
131
- role: "option",
132
- "aria-disabled": item.disabled || _ctx.disabled || void 0,
133
- "aria-selected": hoveringIndex.value === index,
134
- onMousemove: ($event) => handleMouseEnter(index),
135
- onClick: vue.withModifiers(($event) => handleSelect(item), ["stop"])
136
- }, [
137
- vue.renderSlot(_ctx.$slots, "label", {
138
- item,
139
- index
140
- }, () => {
141
- var _a;
142
- return [
143
- vue.createElementVNode("span", null, vue.toDisplayString((_a = item.label) != null ? _a : item.value), 1)
144
- ];
145
- })
146
- ], 42, ["id", "aria-disabled", "aria-selected", "onMousemove", "onClick"]);
147
- }), 128))
148
- ]),
149
- _: 3
150
- }, 8, ["id", "wrap-class", "view-class", "aria-label"]), [
151
- [vue.vShow, _ctx.options.length > 0 && !_ctx.loading]
152
- ]),
153
- _ctx.loading ? (vue.openBlock(), vue.createElementBlock("div", {
154
- key: 1,
155
- class: vue.normalizeClass(vue.unref(ns).be("dropdown", "loading"))
156
- }, [
157
- vue.renderSlot(_ctx.$slots, "loading", {}, () => [
158
- vue.createTextVNode(vue.toDisplayString(vue.unref(t)("el.mention.loading")), 1)
159
- ])
160
- ], 2)) : vue.createCommentVNode("v-if", true),
161
- _ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", {
162
- key: 2,
163
- class: vue.normalizeClass(vue.unref(ns).be("dropdown", "footer"))
164
- }, [
165
- vue.renderSlot(_ctx.$slots, "footer")
166
- ], 2)) : vue.createCommentVNode("v-if", true)
167
- ], 2);
168
- };
169
- }
170
- });
171
- var ElMentionDropdown = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "mention-dropdown.vue"]]);
18
+ const mentionDropdownEmits = {
19
+ select: (option) => shared.isString(option.value)
20
+ };
172
21
 
173
- exports["default"] = ElMentionDropdown;
22
+ exports.mentionDropdownEmits = mentionDropdownEmits;
23
+ exports.mentionDropdownProps = mentionDropdownProps;
174
24
  //# sourceMappingURL=mention-dropdown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mention-dropdown.js","sources":["../../../../../../packages/components/mention/src/mention-dropdown.vue"],"sourcesContent":["<template>\n <div ref=\"dropdownRef\" :class=\"ns.b('dropdown')\">\n <div v-if=\"$slots.header\" :class=\"ns.be('dropdown', 'header')\">\n <slot name=\"header\" />\n </div>\n <el-scrollbar\n v-show=\"options.length > 0 && !loading\"\n :id=\"contentId\"\n ref=\"scrollbarRef\"\n tag=\"ul\"\n :wrap-class=\"ns.be('dropdown', 'wrap')\"\n :view-class=\"ns.be('dropdown', 'list')\"\n role=\"listbox\"\n :aria-label=\"ariaLabel\"\n aria-orientation=\"vertical\"\n >\n <li\n v-for=\"(item, index) in options\"\n :id=\"`${contentId}-${index}`\"\n ref=\"optionRefs\"\n :key=\"index\"\n :class=\"optionkls(item, index)\"\n role=\"option\"\n :aria-disabled=\"item.disabled || disabled || undefined\"\n :aria-selected=\"hoveringIndex === index\"\n @mousemove=\"handleMouseEnter(index)\"\n @click.stop=\"handleSelect(item)\"\n >\n <slot name=\"label\" :item=\"item\" :index=\"index\">\n <span>{{ item.label ?? item.value }}</span>\n </slot>\n </li>\n </el-scrollbar>\n <div v-if=\"loading\" :class=\"ns.be('dropdown', 'loading')\">\n <slot name=\"loading\"> {{ t('el.mention.loading') }} </slot>\n </div>\n <div v-if=\"$slots.footer\" :class=\"ns.be('dropdown', 'footer')\">\n <slot name=\"footer\" />\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, nextTick, ref, watch } from 'vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { scrollIntoView } from '@element-plus/utils'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport { mentionDropdownEmits, mentionDropdownProps } from './mention-dropdown'\n\nimport type { MentionOption } from './types'\n\ndefineOptions({\n name: 'ElMentionDropdown',\n})\n\nconst props = defineProps(mentionDropdownProps)\nconst emit = defineEmits(mentionDropdownEmits)\n\nconst ns = useNamespace('mention')\nconst { t } = useLocale()\nconst hoveringIndex = ref(-1)\n\nconst scrollbarRef = ref<InstanceType<typeof ElScrollbar>>()\nconst optionRefs = ref<HTMLElement[]>()\nconst dropdownRef = ref<HTMLElement>()\n\nconst optionkls = (item: MentionOption, index: number) => [\n ns.be('dropdown', 'item'),\n ns.is('hovering', hoveringIndex.value === index),\n ns.is('disabled', item.disabled || props.disabled),\n]\n\nconst handleSelect = (item: MentionOption) => {\n if (item.disabled || props.disabled) return\n emit('select', item)\n}\n\nconst handleMouseEnter = (index: number) => {\n hoveringIndex.value = index\n}\n\nconst filteredAllDisabled = computed(\n () => props.disabled || props.options.every((item) => item.disabled)\n)\n\nconst hoverOption = computed(() => props.options[hoveringIndex.value])\n\nconst selectHoverOption = () => {\n if (!hoverOption.value) return\n emit('select', hoverOption.value)\n}\n\nconst navigateOptions = (direction: 'next' | 'prev') => {\n const { options } = props\n if (options.length === 0 || filteredAllDisabled.value) return\n\n if (direction === 'next') {\n hoveringIndex.value++\n if (hoveringIndex.value === options.length) {\n hoveringIndex.value = 0\n }\n } else if (direction === 'prev') {\n hoveringIndex.value--\n if (hoveringIndex.value < 0) {\n hoveringIndex.value = options.length - 1\n }\n }\n const option = options[hoveringIndex.value]\n if (option.disabled) {\n navigateOptions(direction)\n return\n }\n nextTick(() => scrollToOption(option))\n}\n\nconst scrollToOption = (option: MentionOption) => {\n const { options } = props\n\n const index = options.findIndex((item) => item.value === option.value)\n const target = optionRefs.value?.[index]\n\n if (target) {\n const menu = dropdownRef.value?.querySelector?.(\n `.${ns.be('dropdown', 'wrap')}`\n )\n if (menu) {\n scrollIntoView(menu as HTMLElement, target)\n }\n }\n scrollbarRef.value?.handleScroll()\n}\n\nconst resetHoveringIndex = () => {\n if (filteredAllDisabled.value || props.options.length === 0) {\n hoveringIndex.value = -1\n } else {\n hoveringIndex.value = 0\n }\n}\n\nwatch(() => props.options, resetHoveringIndex, {\n immediate: true,\n})\n\ndefineExpose({\n hoveringIndex,\n navigateOptions,\n selectHoverOption,\n hoverOption,\n})\n</script>\n"],"names":["useNamespace","useLocale","ref","computed","nextTick","scrollIntoView","watch"],"mappings":"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"}
1
+ {"version":3,"file":"mention-dropdown.js","sources":["../../../../../../packages/components/mention/src/mention-dropdown.ts"],"sourcesContent":["import { buildProps, definePropType, isString } from '@element-plus/utils'\n\nimport type { MentionOption } from './types'\n\nexport const mentionDropdownProps = buildProps({\n options: {\n type: definePropType<MentionOption[]>(Array),\n default: () => [],\n },\n loading: Boolean,\n disabled: Boolean,\n contentId: String,\n ariaLabel: String,\n})\n\nexport const mentionDropdownEmits = {\n select: (option: MentionOption) => isString(option.value),\n}\n"],"names":["buildProps","definePropType","isString"],"mappings":";;;;;;;AACY,MAAC,oBAAoB,GAAGA,kBAAU,CAAC;AAC/C,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAEC,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,EAAE,OAAO,EAAE,OAAO;AAClB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,SAAS,EAAE,MAAM;AACnB,EAAE,SAAS,EAAE,MAAM;AACnB,CAAC,EAAE;AACS,MAAC,oBAAoB,GAAG;AACpC,EAAE,MAAM,EAAE,CAAC,MAAM,KAAKC,eAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;AAC5C;;;;;"}