element-plus 1.3.0-beta.7 → 2.0.1

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 (814) hide show
  1. package/README.md +6 -12
  2. package/attributes.json +1 -1
  3. package/dist/index.css +1 -1
  4. package/dist/index.full.js +1708 -1285
  5. package/dist/index.full.min.js +11 -11
  6. package/dist/index.full.min.js.map +1 -1
  7. package/dist/index.full.min.mjs +11 -11
  8. package/dist/index.full.min.mjs.map +1 -1
  9. package/dist/index.full.mjs +1706 -1286
  10. package/dist/locale/af.js +6 -8
  11. package/dist/locale/af.min.js +1 -1
  12. package/dist/locale/af.min.js.map +1 -1
  13. package/dist/locale/af.min.mjs +1 -1
  14. package/dist/locale/af.mjs +1 -1
  15. package/dist/locale/ar.js +6 -8
  16. package/dist/locale/ar.min.js +1 -1
  17. package/dist/locale/ar.min.js.map +1 -1
  18. package/dist/locale/ar.min.mjs +1 -1
  19. package/dist/locale/ar.mjs +1 -1
  20. package/dist/locale/bg.js +6 -8
  21. package/dist/locale/bg.min.js +1 -1
  22. package/dist/locale/bg.min.js.map +1 -1
  23. package/dist/locale/bg.min.mjs +1 -1
  24. package/dist/locale/bg.mjs +1 -1
  25. package/dist/locale/bn.js +6 -8
  26. package/dist/locale/bn.min.js +1 -1
  27. package/dist/locale/bn.min.js.map +1 -1
  28. package/dist/locale/bn.min.mjs +1 -1
  29. package/dist/locale/bn.mjs +1 -1
  30. package/dist/locale/ca.js +6 -8
  31. package/dist/locale/ca.min.js +1 -1
  32. package/dist/locale/ca.min.js.map +1 -1
  33. package/dist/locale/ca.min.mjs +1 -1
  34. package/dist/locale/ca.mjs +1 -1
  35. package/dist/locale/cs.js +6 -8
  36. package/dist/locale/cs.min.js +1 -1
  37. package/dist/locale/cs.min.js.map +1 -1
  38. package/dist/locale/cs.min.mjs +1 -1
  39. package/dist/locale/cs.mjs +1 -1
  40. package/dist/locale/da.js +6 -8
  41. package/dist/locale/da.min.js +1 -1
  42. package/dist/locale/da.min.js.map +1 -1
  43. package/dist/locale/da.min.mjs +1 -1
  44. package/dist/locale/da.mjs +1 -1
  45. package/dist/locale/de.js +6 -8
  46. package/dist/locale/de.min.js +1 -1
  47. package/dist/locale/de.min.js.map +1 -1
  48. package/dist/locale/de.min.mjs +1 -1
  49. package/dist/locale/de.mjs +1 -1
  50. package/dist/locale/el.js +6 -8
  51. package/dist/locale/el.min.js +1 -1
  52. package/dist/locale/el.min.js.map +1 -1
  53. package/dist/locale/el.min.mjs +1 -1
  54. package/dist/locale/el.mjs +1 -1
  55. package/dist/locale/en.js +6 -8
  56. package/dist/locale/en.min.js +1 -1
  57. package/dist/locale/en.min.js.map +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 +6 -8
  61. package/dist/locale/eo.min.js +1 -1
  62. package/dist/locale/eo.min.js.map +1 -1
  63. package/dist/locale/eo.min.mjs +1 -1
  64. package/dist/locale/eo.mjs +1 -1
  65. package/dist/locale/es.js +6 -8
  66. package/dist/locale/es.min.js +1 -1
  67. package/dist/locale/es.min.js.map +1 -1
  68. package/dist/locale/es.min.mjs +1 -1
  69. package/dist/locale/es.mjs +1 -1
  70. package/dist/locale/et.js +6 -8
  71. package/dist/locale/et.min.js +1 -1
  72. package/dist/locale/et.min.js.map +1 -1
  73. package/dist/locale/et.min.mjs +1 -1
  74. package/dist/locale/et.mjs +1 -1
  75. package/dist/locale/eu.js +6 -8
  76. package/dist/locale/eu.min.js +1 -1
  77. package/dist/locale/eu.min.js.map +1 -1
  78. package/dist/locale/eu.min.mjs +1 -1
  79. package/dist/locale/eu.mjs +1 -1
  80. package/dist/locale/fa.js +6 -8
  81. package/dist/locale/fa.min.js +1 -1
  82. package/dist/locale/fa.min.js.map +1 -1
  83. package/dist/locale/fa.min.mjs +1 -1
  84. package/dist/locale/fa.mjs +1 -1
  85. package/dist/locale/fi.js +6 -8
  86. package/dist/locale/fi.min.js +1 -1
  87. package/dist/locale/fi.min.js.map +1 -1
  88. package/dist/locale/fi.min.mjs +1 -1
  89. package/dist/locale/fi.mjs +1 -1
  90. package/dist/locale/fr.js +6 -8
  91. package/dist/locale/fr.min.js +1 -1
  92. package/dist/locale/fr.min.js.map +1 -1
  93. package/dist/locale/fr.min.mjs +1 -1
  94. package/dist/locale/fr.mjs +1 -1
  95. package/dist/locale/he.js +6 -8
  96. package/dist/locale/he.min.js +1 -1
  97. package/dist/locale/he.min.js.map +1 -1
  98. package/dist/locale/he.min.mjs +1 -1
  99. package/dist/locale/he.mjs +1 -1
  100. package/dist/locale/hr.js +6 -8
  101. package/dist/locale/hr.min.js +1 -1
  102. package/dist/locale/hr.min.js.map +1 -1
  103. package/dist/locale/hr.min.mjs +1 -1
  104. package/dist/locale/hr.mjs +1 -1
  105. package/dist/locale/hu.js +6 -8
  106. package/dist/locale/hu.min.js +1 -1
  107. package/dist/locale/hu.min.js.map +1 -1
  108. package/dist/locale/hu.min.mjs +1 -1
  109. package/dist/locale/hu.mjs +1 -1
  110. package/dist/locale/hy-am.js +6 -8
  111. package/dist/locale/hy-am.min.js +1 -1
  112. package/dist/locale/hy-am.min.js.map +1 -1
  113. package/dist/locale/hy-am.min.mjs +1 -1
  114. package/dist/locale/hy-am.mjs +1 -1
  115. package/dist/locale/id.js +6 -8
  116. package/dist/locale/id.min.js +1 -1
  117. package/dist/locale/id.min.js.map +1 -1
  118. package/dist/locale/id.min.mjs +1 -1
  119. package/dist/locale/id.mjs +1 -1
  120. package/dist/locale/it.js +6 -8
  121. package/dist/locale/it.min.js +1 -1
  122. package/dist/locale/it.min.js.map +1 -1
  123. package/dist/locale/it.min.mjs +1 -1
  124. package/dist/locale/it.mjs +1 -1
  125. package/dist/locale/ja.js +6 -8
  126. package/dist/locale/ja.min.js +1 -1
  127. package/dist/locale/ja.min.js.map +1 -1
  128. package/dist/locale/ja.min.mjs +1 -1
  129. package/dist/locale/ja.mjs +1 -1
  130. package/dist/locale/kk.js +6 -8
  131. package/dist/locale/kk.min.js +1 -1
  132. package/dist/locale/kk.min.js.map +1 -1
  133. package/dist/locale/kk.min.mjs +1 -1
  134. package/dist/locale/kk.mjs +1 -1
  135. package/dist/locale/km.js +6 -8
  136. package/dist/locale/km.min.js +1 -1
  137. package/dist/locale/km.min.js.map +1 -1
  138. package/dist/locale/km.min.mjs +1 -1
  139. package/dist/locale/km.mjs +1 -1
  140. package/dist/locale/ko.js +6 -8
  141. package/dist/locale/ko.min.js +1 -1
  142. package/dist/locale/ko.min.js.map +1 -1
  143. package/dist/locale/ko.min.mjs +1 -1
  144. package/dist/locale/ko.mjs +1 -1
  145. package/dist/locale/ku.js +6 -8
  146. package/dist/locale/ku.min.js +1 -1
  147. package/dist/locale/ku.min.js.map +1 -1
  148. package/dist/locale/ku.min.mjs +1 -1
  149. package/dist/locale/ku.mjs +1 -1
  150. package/dist/locale/ky.js +6 -8
  151. package/dist/locale/ky.min.js +1 -1
  152. package/dist/locale/ky.min.js.map +1 -1
  153. package/dist/locale/ky.min.mjs +1 -1
  154. package/dist/locale/ky.mjs +1 -1
  155. package/dist/locale/lt.js +6 -8
  156. package/dist/locale/lt.min.js +1 -1
  157. package/dist/locale/lt.min.js.map +1 -1
  158. package/dist/locale/lt.min.mjs +1 -1
  159. package/dist/locale/lt.mjs +1 -1
  160. package/dist/locale/lv.js +6 -8
  161. package/dist/locale/lv.min.js +1 -1
  162. package/dist/locale/lv.min.js.map +1 -1
  163. package/dist/locale/lv.min.mjs +1 -1
  164. package/dist/locale/lv.mjs +1 -1
  165. package/dist/locale/mn.js +6 -8
  166. package/dist/locale/mn.min.js +1 -1
  167. package/dist/locale/mn.min.js.map +1 -1
  168. package/dist/locale/mn.min.mjs +1 -1
  169. package/dist/locale/mn.mjs +1 -1
  170. package/dist/locale/nb-no.js +6 -8
  171. package/dist/locale/nb-no.min.js +1 -1
  172. package/dist/locale/nb-no.min.js.map +1 -1
  173. package/dist/locale/nb-no.min.mjs +1 -1
  174. package/dist/locale/nb-no.mjs +1 -1
  175. package/dist/locale/nl.js +6 -8
  176. package/dist/locale/nl.min.js +1 -1
  177. package/dist/locale/nl.min.js.map +1 -1
  178. package/dist/locale/nl.min.mjs +1 -1
  179. package/dist/locale/nl.mjs +1 -1
  180. package/dist/locale/pa.js +6 -8
  181. package/dist/locale/pa.min.js +1 -1
  182. package/dist/locale/pa.min.js.map +1 -1
  183. package/dist/locale/pa.min.mjs +1 -1
  184. package/dist/locale/pa.mjs +1 -1
  185. package/dist/locale/pl.js +6 -8
  186. package/dist/locale/pl.min.js +1 -1
  187. package/dist/locale/pl.min.js.map +1 -1
  188. package/dist/locale/pl.min.mjs +1 -1
  189. package/dist/locale/pl.mjs +1 -1
  190. package/dist/locale/pt-br.js +6 -8
  191. package/dist/locale/pt-br.min.js +1 -1
  192. package/dist/locale/pt-br.min.js.map +1 -1
  193. package/dist/locale/pt-br.min.mjs +1 -1
  194. package/dist/locale/pt-br.mjs +1 -1
  195. package/dist/locale/pt.js +6 -8
  196. package/dist/locale/pt.min.js +1 -1
  197. package/dist/locale/pt.min.js.map +1 -1
  198. package/dist/locale/pt.min.mjs +1 -1
  199. package/dist/locale/pt.mjs +1 -1
  200. package/dist/locale/ro.js +6 -8
  201. package/dist/locale/ro.min.js +1 -1
  202. package/dist/locale/ro.min.js.map +1 -1
  203. package/dist/locale/ro.min.mjs +1 -1
  204. package/dist/locale/ro.mjs +1 -1
  205. package/dist/locale/ru.js +6 -8
  206. package/dist/locale/ru.min.js +1 -1
  207. package/dist/locale/ru.min.js.map +1 -1
  208. package/dist/locale/ru.min.mjs +1 -1
  209. package/dist/locale/ru.mjs +1 -1
  210. package/dist/locale/sk.js +6 -8
  211. package/dist/locale/sk.min.js +1 -1
  212. package/dist/locale/sk.min.js.map +1 -1
  213. package/dist/locale/sk.min.mjs +1 -1
  214. package/dist/locale/sk.mjs +1 -1
  215. package/dist/locale/sl.js +6 -8
  216. package/dist/locale/sl.min.js +1 -1
  217. package/dist/locale/sl.min.js.map +1 -1
  218. package/dist/locale/sl.min.mjs +1 -1
  219. package/dist/locale/sl.mjs +1 -1
  220. package/dist/locale/sr.js +6 -8
  221. package/dist/locale/sr.min.js +1 -1
  222. package/dist/locale/sr.min.js.map +1 -1
  223. package/dist/locale/sr.min.mjs +1 -1
  224. package/dist/locale/sr.mjs +1 -1
  225. package/dist/locale/sv.js +6 -8
  226. package/dist/locale/sv.min.js +1 -1
  227. package/dist/locale/sv.min.js.map +1 -1
  228. package/dist/locale/sv.min.mjs +1 -1
  229. package/dist/locale/sv.mjs +1 -1
  230. package/dist/locale/ta.js +6 -8
  231. package/dist/locale/ta.min.js +1 -1
  232. package/dist/locale/ta.min.js.map +1 -1
  233. package/dist/locale/ta.min.mjs +1 -1
  234. package/dist/locale/ta.mjs +1 -1
  235. package/dist/locale/th.js +6 -8
  236. package/dist/locale/th.min.js +1 -1
  237. package/dist/locale/th.min.js.map +1 -1
  238. package/dist/locale/th.min.mjs +1 -1
  239. package/dist/locale/th.mjs +1 -1
  240. package/dist/locale/tk.js +6 -8
  241. package/dist/locale/tk.min.js +1 -1
  242. package/dist/locale/tk.min.js.map +1 -1
  243. package/dist/locale/tk.min.mjs +1 -1
  244. package/dist/locale/tk.mjs +1 -1
  245. package/dist/locale/tr.js +6 -8
  246. package/dist/locale/tr.min.js +1 -1
  247. package/dist/locale/tr.min.js.map +1 -1
  248. package/dist/locale/tr.min.mjs +1 -1
  249. package/dist/locale/tr.mjs +1 -1
  250. package/dist/locale/ug-cn.js +6 -8
  251. package/dist/locale/ug-cn.min.js +1 -1
  252. package/dist/locale/ug-cn.min.js.map +1 -1
  253. package/dist/locale/ug-cn.min.mjs +1 -1
  254. package/dist/locale/ug-cn.mjs +1 -1
  255. package/dist/locale/uk.js +6 -8
  256. package/dist/locale/uk.min.js +1 -1
  257. package/dist/locale/uk.min.js.map +1 -1
  258. package/dist/locale/uk.min.mjs +1 -1
  259. package/dist/locale/uk.mjs +1 -1
  260. package/dist/locale/uz-uz.js +6 -8
  261. package/dist/locale/uz-uz.min.js +1 -1
  262. package/dist/locale/uz-uz.min.js.map +1 -1
  263. package/dist/locale/uz-uz.min.mjs +1 -1
  264. package/dist/locale/uz-uz.mjs +1 -1
  265. package/dist/locale/vi.js +6 -8
  266. package/dist/locale/vi.min.js +1 -1
  267. package/dist/locale/vi.min.js.map +1 -1
  268. package/dist/locale/vi.min.mjs +1 -1
  269. package/dist/locale/vi.mjs +1 -1
  270. package/dist/locale/zh-cn.js +6 -8
  271. package/dist/locale/zh-cn.min.js +1 -1
  272. package/dist/locale/zh-cn.min.js.map +1 -1
  273. package/dist/locale/zh-cn.min.mjs +1 -1
  274. package/dist/locale/zh-cn.mjs +1 -1
  275. package/dist/locale/zh-tw.js +6 -8
  276. package/dist/locale/zh-tw.min.js +1 -1
  277. package/dist/locale/zh-tw.min.js.map +1 -1
  278. package/dist/locale/zh-tw.min.mjs +1 -1
  279. package/dist/locale/zh-tw.mjs +1 -1
  280. package/es/components/affix/src/affix2.mjs +2 -1
  281. package/es/components/affix/src/affix2.mjs.map +1 -1
  282. package/es/components/autocomplete/index.d.ts +34 -4
  283. package/es/components/autocomplete/src/index.mjs +27 -19
  284. package/es/components/autocomplete/src/index.mjs.map +1 -1
  285. package/es/components/autocomplete/src/index.vue.d.ts +17 -2
  286. package/es/components/avatar/index.d.ts +1 -1
  287. package/es/components/avatar/src/avatar.vue.d.ts +1 -1
  288. package/es/components/avatar/src/avatar2.mjs +3 -3
  289. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  290. package/es/components/backtop/index.d.ts +11 -0
  291. package/es/components/backtop/src/backtop.vue.d.ts +11 -0
  292. package/es/components/backtop/src/backtop2.mjs +18 -9
  293. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  294. package/es/components/breadcrumb/src/breadcrumb-item2.mjs +2 -2
  295. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  296. package/es/components/button/src/button2.mjs +11 -7
  297. package/es/components/button/src/button2.mjs.map +1 -1
  298. package/es/components/carousel/index.d.ts +11 -0
  299. package/es/components/carousel/src/item.mjs +21 -15
  300. package/es/components/carousel/src/item.mjs.map +1 -1
  301. package/es/components/carousel/src/main.mjs +25 -23
  302. package/es/components/carousel/src/main.mjs.map +1 -1
  303. package/es/components/carousel/src/main.vue.d.ts +11 -0
  304. package/es/components/cascader/index.d.ts +60 -4
  305. package/es/components/cascader/src/index.mjs +51 -33
  306. package/es/components/cascader/src/index.mjs.map +1 -1
  307. package/es/components/cascader/src/index.vue.d.ts +30 -2
  308. package/es/components/cascader-panel/src/index.mjs +16 -13
  309. package/es/components/cascader-panel/src/index.mjs.map +1 -1
  310. package/es/components/cascader-panel/src/menu.mjs +25 -22
  311. package/es/components/cascader-panel/src/menu.mjs.map +1 -1
  312. package/es/components/cascader-panel/src/node2.mjs +6 -2
  313. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  314. package/es/components/checkbox/index.d.ts +36 -3
  315. package/es/components/checkbox/src/checkbox-button.mjs +21 -15
  316. package/es/components/checkbox/src/checkbox-button.mjs.map +1 -1
  317. package/es/components/checkbox/src/checkbox-button.vue.d.ts +12 -1
  318. package/es/components/checkbox/src/checkbox-group.mjs +5 -2
  319. package/es/components/checkbox/src/checkbox-group.mjs.map +1 -1
  320. package/es/components/checkbox/src/checkbox.mjs +36 -28
  321. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  322. package/es/components/checkbox/src/checkbox.vue.d.ts +12 -1
  323. package/es/components/checkbox/src/useCheckbox.d.ts +1 -1
  324. package/es/components/checkbox/src/useCheckbox.mjs +2 -2
  325. package/es/components/checkbox/src/useCheckbox.mjs.map +1 -1
  326. package/es/components/collapse/src/collapse-item.mjs +3 -3
  327. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  328. package/es/components/color-picker/src/index.mjs +8 -5
  329. package/es/components/color-picker/src/index.mjs.map +1 -1
  330. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs +2 -1
  331. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs.map +1 -1
  332. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs +2 -1
  333. package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs.map +1 -1
  334. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs +1 -1
  335. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  336. package/es/components/descriptions/src/index.mjs +7 -2
  337. package/es/components/descriptions/src/index.mjs.map +1 -1
  338. package/es/components/dialog/index.d.ts +4 -0
  339. package/es/components/dialog/src/dialog.d.ts +1 -0
  340. package/es/components/dialog/src/dialog.mjs +5 -3
  341. package/es/components/dialog/src/dialog.mjs.map +1 -1
  342. package/es/components/dialog/src/dialog.vue.d.ts +4 -0
  343. package/es/components/dialog/src/dialog2.mjs +12 -3
  344. package/es/components/dialog/src/dialog2.mjs.map +1 -1
  345. package/es/components/drawer/index.d.ts +14 -0
  346. package/es/components/drawer/src/drawer.d.ts +1 -0
  347. package/es/components/drawer/src/drawer.vue.d.ts +14 -0
  348. package/es/components/drawer/src/drawer2.mjs +33 -29
  349. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  350. package/es/components/dropdown/src/dropdown-item.mjs +12 -6
  351. package/es/components/dropdown/src/dropdown-item.mjs.map +1 -1
  352. package/es/components/dropdown/src/dropdown-menu.mjs +2 -1
  353. package/es/components/dropdown/src/dropdown-menu.mjs.map +1 -1
  354. package/es/components/dropdown/src/dropdown2.mjs +9 -5
  355. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  356. package/es/components/empty/src/img-empty.mjs +13 -13
  357. package/es/components/empty/src/img-empty.mjs.map +1 -1
  358. package/es/components/focus-trap/src/focus-trap.mjs +1 -1
  359. package/es/components/focus-trap/src/focus-trap.mjs.map +1 -1
  360. package/es/components/form/src/form-item.mjs +6 -4
  361. package/es/components/form/src/form-item.mjs.map +1 -1
  362. package/es/components/image/src/image2.mjs +6 -6
  363. package/es/components/image/src/image2.mjs.map +1 -1
  364. package/es/components/image-viewer/index.d.ts +1 -1
  365. package/es/components/image-viewer/src/image-viewer.vue.d.ts +1 -1
  366. package/es/components/image-viewer/src/image-viewer2.mjs +37 -25
  367. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  368. package/es/components/index.mjs +2 -1
  369. package/es/components/index.mjs.map +1 -1
  370. package/es/components/input/src/input2.mjs +17 -8
  371. package/es/components/input/src/input2.mjs.map +1 -1
  372. package/es/components/input-number/src/input-number2.mjs +12 -6
  373. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  374. package/es/components/message/src/message2.mjs +1 -1
  375. package/es/components/message-box/src/index.mjs +140 -115
  376. package/es/components/message-box/src/index.mjs.map +1 -1
  377. package/es/components/message-box/src/index.vue.d.ts +15 -4
  378. package/es/components/message-box/src/message-box.type.d.ts +2 -0
  379. package/es/components/notification/src/notification2.mjs +1 -1
  380. package/es/components/pagination/src/components/jumper.mjs +11 -5
  381. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  382. package/es/components/pagination/src/components/sizes.mjs +9 -4
  383. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  384. package/es/components/pagination/src/components/sizes.vue.d.ts +3 -0
  385. package/es/components/pagination/src/components/total.mjs +10 -4
  386. package/es/components/pagination/src/components/total.mjs.map +1 -1
  387. package/es/components/pagination/src/components/total.vue.d.ts +1 -0
  388. package/es/components/pagination/src/pagination.mjs +15 -2
  389. package/es/components/pagination/src/pagination.mjs.map +1 -1
  390. package/es/components/popconfirm/index.d.ts +26 -22
  391. package/es/components/popconfirm/src/popconfirm.d.ts +12 -11
  392. package/es/components/popconfirm/src/popconfirm.mjs +48 -43
  393. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  394. package/es/components/popconfirm/src/popconfirm.vue.d.ts +26 -22
  395. package/es/components/popconfirm/src/popconfirm2.mjs +14 -6
  396. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  397. package/es/components/popover/index.d.ts +30 -6
  398. package/es/components/popover/src/index.mjs +25 -8
  399. package/es/components/popover/src/index.mjs.map +1 -1
  400. package/es/components/popover/src/index.vue.d.ts +41 -29
  401. package/es/components/popover/src/popover.d.ts +5 -1
  402. package/es/components/popover/src/popover.mjs +2 -4
  403. package/es/components/popover/src/popover.mjs.map +1 -1
  404. package/es/components/popper/index.d.ts +1 -0
  405. package/es/components/popper/index.mjs +1 -0
  406. package/es/components/popper/index.mjs.map +1 -1
  407. package/es/components/popper/src/content.mjs +5 -3
  408. package/es/components/popper/src/content.mjs.map +1 -1
  409. package/es/components/popper/src/deprecation.d.ts +3 -0
  410. package/es/components/popper/src/deprecation.mjs +24 -0
  411. package/es/components/popper/src/deprecation.mjs.map +1 -0
  412. package/es/components/popper/src/trigger.mjs +1 -1
  413. package/es/components/popper/src/trigger.mjs.map +1 -1
  414. package/es/components/progress/src/progress2.mjs +2 -1
  415. package/es/components/progress/src/progress2.mjs.map +1 -1
  416. package/es/components/radio/src/radio-button2.mjs +4 -4
  417. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  418. package/es/components/radio/src/radio-group2.mjs +1 -1
  419. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  420. package/es/components/rate/index.d.ts +8 -8
  421. package/es/components/rate/src/rate.d.ts +4 -4
  422. package/es/components/rate/src/rate.mjs +8 -4
  423. package/es/components/rate/src/rate.mjs.map +1 -1
  424. package/es/components/rate/src/rate.vue.d.ts +8 -8
  425. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs +10 -6
  426. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs.map +1 -1
  427. package/es/components/scrollbar/index.d.ts +13 -1
  428. package/es/components/scrollbar/index.mjs +1 -1
  429. package/es/components/scrollbar/index.mjs.map +1 -1
  430. package/es/components/scrollbar/src/bar.d.ts +5 -5
  431. package/es/components/scrollbar/src/bar.mjs +18 -6
  432. package/es/components/scrollbar/src/bar.mjs.map +1 -1
  433. package/es/components/scrollbar/src/bar.vue.d.ts +18 -37
  434. package/es/components/scrollbar/src/bar2.mjs +34 -117
  435. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  436. package/es/components/scrollbar/src/scrollbar.vue.d.ts +12 -0
  437. package/es/components/scrollbar/src/scrollbar2.mjs +28 -31
  438. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  439. package/es/components/scrollbar/src/thumb.d.ts +9 -0
  440. package/es/components/scrollbar/src/thumb.mjs +15 -0
  441. package/es/components/scrollbar/src/thumb.mjs.map +1 -0
  442. package/es/components/scrollbar/src/thumb.vue.d.ts +54 -0
  443. package/es/components/scrollbar/src/thumb2.mjs +141 -0
  444. package/es/components/scrollbar/src/thumb2.mjs.map +1 -0
  445. package/es/components/select/index.d.ts +6 -2
  446. package/es/components/select/src/option-group.mjs +2 -1
  447. package/es/components/select/src/option-group.mjs.map +1 -1
  448. package/es/components/select/src/select-dropdown.mjs +2 -1
  449. package/es/components/select/src/select-dropdown.mjs.map +1 -1
  450. package/es/components/select/src/select.mjs +18 -7
  451. package/es/components/select/src/select.mjs.map +1 -1
  452. package/es/components/select/src/select.vue.d.ts +30 -26
  453. package/es/components/select-v2/index.d.ts +12 -12
  454. package/es/components/select-v2/src/defaults.d.ts +2 -1
  455. package/es/components/select-v2/src/defaults.mjs +4 -1
  456. package/es/components/select-v2/src/defaults.mjs.map +1 -1
  457. package/es/components/select-v2/src/select-dropdown.mjs +2 -1
  458. package/es/components/select-v2/src/select-dropdown.mjs.map +1 -1
  459. package/es/components/select-v2/src/select.mjs +194 -188
  460. package/es/components/select-v2/src/select.mjs.map +1 -1
  461. package/es/components/select-v2/src/select.vue.d.ts +6 -6
  462. package/es/components/select-v2/src/useSelect.d.ts +1 -4
  463. package/es/components/select-v2/src/useSelect.mjs +4 -2
  464. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  465. package/es/components/skeleton/index.d.ts +37 -2
  466. package/es/components/skeleton/src/skeleton-item.vue.d.ts +13 -1
  467. package/es/components/skeleton/src/skeleton-item2.mjs +10 -2
  468. package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
  469. package/es/components/skeleton/src/skeleton.vue.d.ts +11 -0
  470. package/es/components/skeleton/src/skeleton2.mjs +11 -8
  471. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  472. package/es/components/slider/src/index.mjs +3 -2
  473. package/es/components/slider/src/index.mjs.map +1 -1
  474. package/es/components/slider/src/marker.mjs +2 -1
  475. package/es/components/slider/src/marker.mjs.map +1 -1
  476. package/es/components/steps/src/item.mjs +2 -1
  477. package/es/components/steps/src/item.mjs.map +1 -1
  478. package/es/components/switch/src/switch2.mjs +4 -2
  479. package/es/components/switch/src/switch2.mjs.map +1 -1
  480. package/es/components/table/src/filter-panel.mjs +7 -3
  481. package/es/components/table/src/filter-panel.mjs.map +1 -1
  482. package/es/components/table/src/table/style-helper.mjs +2 -0
  483. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  484. package/es/components/table/src/table-body/index.mjs +1 -1
  485. package/es/components/table/src/table-body/index.mjs.map +1 -1
  486. package/es/components/table/src/table.mjs +3 -2
  487. package/es/components/table/src/table.mjs.map +1 -1
  488. package/es/components/tabs/src/tab-bar2.mjs +3 -2
  489. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  490. package/es/components/tag/index.d.ts +12 -1
  491. package/es/components/tag/src/tag.vue.d.ts +12 -1
  492. package/es/components/tag/src/tag2.mjs +23 -18
  493. package/es/components/tag/src/tag2.mjs.map +1 -1
  494. package/es/components/time-picker/src/common/picker.mjs +16 -8
  495. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  496. package/es/components/time-select/src/time-select.mjs +4 -2
  497. package/es/components/time-select/src/time-select.mjs.map +1 -1
  498. package/es/components/tooltip/src/content.mjs +9 -4
  499. package/es/components/tooltip/src/content.mjs.map +1 -1
  500. package/es/components/tooltip/src/tooltip2.mjs +2 -1
  501. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  502. package/es/components/transfer/index.d.ts +492 -0
  503. package/es/components/transfer/src/index.mjs +13 -7
  504. package/es/components/transfer/src/index.mjs.map +1 -1
  505. package/es/components/transfer/src/index.vue.d.ts +246 -0
  506. package/es/components/tree/index.d.ts +8 -8
  507. package/es/components/tree/src/tree.mjs +2 -2
  508. package/es/components/tree/src/tree.mjs.map +1 -1
  509. package/es/components/tree/src/tree.vue.d.ts +4 -4
  510. package/es/components/tree-v2/src/tree-node.mjs +11 -7
  511. package/es/components/tree-v2/src/tree-node.mjs.map +1 -1
  512. package/es/components/tree-v2/src/tree.mjs +2 -1
  513. package/es/components/tree-v2/src/tree.mjs.map +1 -1
  514. package/es/components/upload/src/index.mjs +3 -2
  515. package/es/components/upload/src/index.mjs.map +1 -1
  516. package/es/components/upload/src/upload-dragger.mjs +2 -1
  517. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  518. package/es/hooks/index.d.ts +2 -0
  519. package/es/hooks/index.mjs +2 -0
  520. package/es/hooks/index.mjs.map +1 -1
  521. package/es/hooks/use-deprecated/index.d.ts +10 -0
  522. package/es/hooks/use-deprecated/index.mjs +17 -0
  523. package/es/hooks/use-deprecated/index.mjs.map +1 -0
  524. package/es/hooks/use-draggable/index.d.ts +2 -0
  525. package/es/hooks/use-draggable/index.mjs +65 -0
  526. package/es/hooks/use-draggable/index.mjs.map +1 -0
  527. package/es/index.mjs +4 -1
  528. package/es/index.mjs.map +1 -1
  529. package/es/utils/validators.d.ts +0 -1
  530. package/es/utils/validators.mjs +1 -9
  531. package/es/utils/validators.mjs.map +1 -1
  532. package/es/version.d.ts +1 -1
  533. package/es/version.mjs +1 -1
  534. package/es/version.mjs.map +1 -1
  535. package/lib/components/affix/src/affix2.js +2 -1
  536. package/lib/components/affix/src/affix2.js.map +1 -1
  537. package/lib/components/autocomplete/index.d.ts +34 -4
  538. package/lib/components/autocomplete/src/index.js +29 -21
  539. package/lib/components/autocomplete/src/index.js.map +1 -1
  540. package/lib/components/autocomplete/src/index.vue.d.ts +17 -2
  541. package/lib/components/avatar/index.d.ts +1 -1
  542. package/lib/components/avatar/src/avatar.vue.d.ts +1 -1
  543. package/lib/components/avatar/src/avatar2.js +3 -3
  544. package/lib/components/avatar/src/avatar2.js.map +1 -1
  545. package/lib/components/backtop/index.d.ts +11 -0
  546. package/lib/components/backtop/src/backtop.vue.d.ts +11 -0
  547. package/lib/components/backtop/src/backtop2.js +17 -8
  548. package/lib/components/backtop/src/backtop2.js.map +1 -1
  549. package/lib/components/breadcrumb/src/breadcrumb-item2.js +2 -2
  550. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  551. package/lib/components/button/src/button2.js +11 -7
  552. package/lib/components/button/src/button2.js.map +1 -1
  553. package/lib/components/carousel/index.d.ts +11 -0
  554. package/lib/components/carousel/src/item.js +21 -15
  555. package/lib/components/carousel/src/item.js.map +1 -1
  556. package/lib/components/carousel/src/main.js +25 -23
  557. package/lib/components/carousel/src/main.js.map +1 -1
  558. package/lib/components/carousel/src/main.vue.d.ts +11 -0
  559. package/lib/components/cascader/index.d.ts +60 -4
  560. package/lib/components/cascader/src/index.js +51 -33
  561. package/lib/components/cascader/src/index.js.map +1 -1
  562. package/lib/components/cascader/src/index.vue.d.ts +30 -2
  563. package/lib/components/cascader-panel/src/index.js +16 -13
  564. package/lib/components/cascader-panel/src/index.js.map +1 -1
  565. package/lib/components/cascader-panel/src/menu.js +25 -22
  566. package/lib/components/cascader-panel/src/menu.js.map +1 -1
  567. package/lib/components/cascader-panel/src/node2.js +6 -2
  568. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  569. package/lib/components/checkbox/index.d.ts +36 -3
  570. package/lib/components/checkbox/src/checkbox-button.js +21 -15
  571. package/lib/components/checkbox/src/checkbox-button.js.map +1 -1
  572. package/lib/components/checkbox/src/checkbox-button.vue.d.ts +12 -1
  573. package/lib/components/checkbox/src/checkbox-group.js +5 -2
  574. package/lib/components/checkbox/src/checkbox-group.js.map +1 -1
  575. package/lib/components/checkbox/src/checkbox.js +35 -27
  576. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  577. package/lib/components/checkbox/src/checkbox.vue.d.ts +12 -1
  578. package/lib/components/checkbox/src/useCheckbox.d.ts +1 -1
  579. package/lib/components/checkbox/src/useCheckbox.js +2 -2
  580. package/lib/components/checkbox/src/useCheckbox.js.map +1 -1
  581. package/lib/components/collapse/src/collapse-item.js +3 -3
  582. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  583. package/lib/components/color-picker/src/index.js +8 -5
  584. package/lib/components/color-picker/src/index.js.map +1 -1
  585. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js +2 -1
  586. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js.map +1 -1
  587. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js +2 -1
  588. package/lib/components/date-picker/src/date-picker-com/basic-month-table.js.map +1 -1
  589. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js +1 -1
  590. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
  591. package/lib/components/descriptions/src/index.js +7 -2
  592. package/lib/components/descriptions/src/index.js.map +1 -1
  593. package/lib/components/dialog/index.d.ts +4 -0
  594. package/lib/components/dialog/src/dialog.d.ts +1 -0
  595. package/lib/components/dialog/src/dialog.js +5 -3
  596. package/lib/components/dialog/src/dialog.js.map +1 -1
  597. package/lib/components/dialog/src/dialog.vue.d.ts +4 -0
  598. package/lib/components/dialog/src/dialog2.js +11 -2
  599. package/lib/components/dialog/src/dialog2.js.map +1 -1
  600. package/lib/components/drawer/index.d.ts +14 -0
  601. package/lib/components/drawer/src/drawer.d.ts +1 -0
  602. package/lib/components/drawer/src/drawer.vue.d.ts +14 -0
  603. package/lib/components/drawer/src/drawer2.js +33 -29
  604. package/lib/components/drawer/src/drawer2.js.map +1 -1
  605. package/lib/components/dropdown/src/dropdown-item.js +12 -6
  606. package/lib/components/dropdown/src/dropdown-item.js.map +1 -1
  607. package/lib/components/dropdown/src/dropdown-menu.js +2 -1
  608. package/lib/components/dropdown/src/dropdown-menu.js.map +1 -1
  609. package/lib/components/dropdown/src/dropdown2.js +9 -5
  610. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  611. package/lib/components/empty/src/img-empty.js +13 -13
  612. package/lib/components/empty/src/img-empty.js.map +1 -1
  613. package/lib/components/focus-trap/src/focus-trap.js +1 -1
  614. package/lib/components/focus-trap/src/focus-trap.js.map +1 -1
  615. package/lib/components/form/src/form-item.js +6 -4
  616. package/lib/components/form/src/form-item.js.map +1 -1
  617. package/lib/components/image/src/image2.js +6 -6
  618. package/lib/components/image/src/image2.js.map +1 -1
  619. package/lib/components/image-viewer/index.d.ts +1 -1
  620. package/lib/components/image-viewer/src/image-viewer.vue.d.ts +1 -1
  621. package/lib/components/image-viewer/src/image-viewer2.js +37 -25
  622. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  623. package/lib/components/index.js +4 -2
  624. package/lib/components/index.js.map +1 -1
  625. package/lib/components/input/src/input2.js +17 -8
  626. package/lib/components/input/src/input2.js.map +1 -1
  627. package/lib/components/input-number/src/input-number2.js +12 -6
  628. package/lib/components/input-number/src/input-number2.js.map +1 -1
  629. package/lib/components/message/src/message2.js +1 -1
  630. package/lib/components/message-box/src/index.js +147 -122
  631. package/lib/components/message-box/src/index.js.map +1 -1
  632. package/lib/components/message-box/src/index.vue.d.ts +15 -4
  633. package/lib/components/message-box/src/message-box.type.d.ts +2 -0
  634. package/lib/components/notification/src/notification2.js +1 -1
  635. package/lib/components/pagination/src/components/jumper.js +11 -5
  636. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  637. package/lib/components/pagination/src/components/sizes.js +9 -4
  638. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  639. package/lib/components/pagination/src/components/sizes.vue.d.ts +3 -0
  640. package/lib/components/pagination/src/components/total.js +10 -4
  641. package/lib/components/pagination/src/components/total.js.map +1 -1
  642. package/lib/components/pagination/src/components/total.vue.d.ts +1 -0
  643. package/lib/components/pagination/src/pagination.js +15 -2
  644. package/lib/components/pagination/src/pagination.js.map +1 -1
  645. package/lib/components/popconfirm/index.d.ts +26 -22
  646. package/lib/components/popconfirm/src/popconfirm.d.ts +12 -11
  647. package/lib/components/popconfirm/src/popconfirm.js +48 -43
  648. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  649. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +26 -22
  650. package/lib/components/popconfirm/src/popconfirm2.js +14 -6
  651. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  652. package/lib/components/popover/index.d.ts +30 -6
  653. package/lib/components/popover/src/index.js +25 -8
  654. package/lib/components/popover/src/index.js.map +1 -1
  655. package/lib/components/popover/src/index.vue.d.ts +41 -29
  656. package/lib/components/popover/src/popover.d.ts +5 -1
  657. package/lib/components/popover/src/popover.js +2 -4
  658. package/lib/components/popover/src/popover.js.map +1 -1
  659. package/lib/components/popper/index.d.ts +1 -0
  660. package/lib/components/popper/index.js +2 -0
  661. package/lib/components/popper/index.js.map +1 -1
  662. package/lib/components/popper/src/content.js +5 -3
  663. package/lib/components/popper/src/content.js.map +1 -1
  664. package/lib/components/popper/src/deprecation.d.ts +3 -0
  665. package/lib/components/popper/src/deprecation.js +28 -0
  666. package/lib/components/popper/src/deprecation.js.map +1 -0
  667. package/lib/components/popper/src/trigger.js +1 -1
  668. package/lib/components/popper/src/trigger.js.map +1 -1
  669. package/lib/components/progress/src/progress2.js +2 -1
  670. package/lib/components/progress/src/progress2.js.map +1 -1
  671. package/lib/components/radio/src/radio-button2.js +4 -4
  672. package/lib/components/radio/src/radio-button2.js.map +1 -1
  673. package/lib/components/radio/src/radio-group2.js +1 -1
  674. package/lib/components/radio/src/radio-group2.js.map +1 -1
  675. package/lib/components/rate/index.d.ts +8 -8
  676. package/lib/components/rate/src/rate.d.ts +4 -4
  677. package/lib/components/rate/src/rate.js +8 -4
  678. package/lib/components/rate/src/rate.js.map +1 -1
  679. package/lib/components/rate/src/rate.vue.d.ts +8 -8
  680. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js +10 -6
  681. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js.map +1 -1
  682. package/lib/components/scrollbar/index.d.ts +13 -1
  683. package/lib/components/scrollbar/index.js +2 -2
  684. package/lib/components/scrollbar/index.js.map +1 -1
  685. package/lib/components/scrollbar/src/bar.d.ts +5 -5
  686. package/lib/components/scrollbar/src/bar.js +18 -6
  687. package/lib/components/scrollbar/src/bar.js.map +1 -1
  688. package/lib/components/scrollbar/src/bar.vue.d.ts +18 -37
  689. package/lib/components/scrollbar/src/bar2.js +33 -116
  690. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  691. package/lib/components/scrollbar/src/scrollbar.vue.d.ts +12 -0
  692. package/lib/components/scrollbar/src/scrollbar2.js +27 -30
  693. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  694. package/lib/components/scrollbar/src/thumb.d.ts +9 -0
  695. package/lib/components/scrollbar/src/thumb.js +19 -0
  696. package/lib/components/scrollbar/src/thumb.js.map +1 -0
  697. package/lib/components/scrollbar/src/thumb.vue.d.ts +54 -0
  698. package/lib/components/scrollbar/src/thumb2.js +145 -0
  699. package/lib/components/scrollbar/src/thumb2.js.map +1 -0
  700. package/lib/components/select/index.d.ts +6 -2
  701. package/lib/components/select/src/option-group.js +2 -1
  702. package/lib/components/select/src/option-group.js.map +1 -1
  703. package/lib/components/select/src/select-dropdown.js +2 -1
  704. package/lib/components/select/src/select-dropdown.js.map +1 -1
  705. package/lib/components/select/src/select.js +18 -7
  706. package/lib/components/select/src/select.js.map +1 -1
  707. package/lib/components/select/src/select.vue.d.ts +30 -26
  708. package/lib/components/select-v2/index.d.ts +12 -12
  709. package/lib/components/select-v2/src/defaults.d.ts +2 -1
  710. package/lib/components/select-v2/src/defaults.js +4 -1
  711. package/lib/components/select-v2/src/defaults.js.map +1 -1
  712. package/lib/components/select-v2/src/select-dropdown.js +2 -1
  713. package/lib/components/select-v2/src/select-dropdown.js.map +1 -1
  714. package/lib/components/select-v2/src/select.js +194 -188
  715. package/lib/components/select-v2/src/select.js.map +1 -1
  716. package/lib/components/select-v2/src/select.vue.d.ts +6 -6
  717. package/lib/components/select-v2/src/useSelect.d.ts +1 -4
  718. package/lib/components/select-v2/src/useSelect.js +11 -9
  719. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  720. package/lib/components/skeleton/index.d.ts +37 -2
  721. package/lib/components/skeleton/src/skeleton-item.vue.d.ts +13 -1
  722. package/lib/components/skeleton/src/skeleton-item2.js +10 -2
  723. package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
  724. package/lib/components/skeleton/src/skeleton.vue.d.ts +11 -0
  725. package/lib/components/skeleton/src/skeleton2.js +12 -9
  726. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  727. package/lib/components/slider/src/index.js +3 -2
  728. package/lib/components/slider/src/index.js.map +1 -1
  729. package/lib/components/slider/src/marker.js +2 -1
  730. package/lib/components/slider/src/marker.js.map +1 -1
  731. package/lib/components/steps/src/item.js +2 -1
  732. package/lib/components/steps/src/item.js.map +1 -1
  733. package/lib/components/switch/src/switch2.js +4 -2
  734. package/lib/components/switch/src/switch2.js.map +1 -1
  735. package/lib/components/table/src/filter-panel.js +7 -3
  736. package/lib/components/table/src/filter-panel.js.map +1 -1
  737. package/lib/components/table/src/table/style-helper.js +2 -0
  738. package/lib/components/table/src/table/style-helper.js.map +1 -1
  739. package/lib/components/table/src/table-body/index.js +1 -1
  740. package/lib/components/table/src/table-body/index.js.map +1 -1
  741. package/lib/components/table/src/table.js +3 -2
  742. package/lib/components/table/src/table.js.map +1 -1
  743. package/lib/components/tabs/src/tab-bar2.js +3 -2
  744. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  745. package/lib/components/tag/index.d.ts +12 -1
  746. package/lib/components/tag/src/tag.vue.d.ts +12 -1
  747. package/lib/components/tag/src/tag2.js +23 -18
  748. package/lib/components/tag/src/tag2.js.map +1 -1
  749. package/lib/components/time-picker/src/common/picker.js +16 -8
  750. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  751. package/lib/components/time-select/src/time-select.js +4 -2
  752. package/lib/components/time-select/src/time-select.js.map +1 -1
  753. package/lib/components/tooltip/src/content.js +9 -4
  754. package/lib/components/tooltip/src/content.js.map +1 -1
  755. package/lib/components/tooltip/src/tooltip2.js +2 -1
  756. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  757. package/lib/components/transfer/index.d.ts +492 -0
  758. package/lib/components/transfer/src/index.js +13 -7
  759. package/lib/components/transfer/src/index.js.map +1 -1
  760. package/lib/components/transfer/src/index.vue.d.ts +246 -0
  761. package/lib/components/tree/index.d.ts +8 -8
  762. package/lib/components/tree/src/tree.js +2 -2
  763. package/lib/components/tree/src/tree.js.map +1 -1
  764. package/lib/components/tree/src/tree.vue.d.ts +4 -4
  765. package/lib/components/tree-v2/src/tree-node.js +11 -7
  766. package/lib/components/tree-v2/src/tree-node.js.map +1 -1
  767. package/lib/components/tree-v2/src/tree.js +2 -1
  768. package/lib/components/tree-v2/src/tree.js.map +1 -1
  769. package/lib/components/upload/src/index.js +3 -2
  770. package/lib/components/upload/src/index.js.map +1 -1
  771. package/lib/components/upload/src/upload-dragger.js +2 -1
  772. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  773. package/lib/hooks/index.d.ts +2 -0
  774. package/lib/hooks/index.js +62 -58
  775. package/lib/hooks/index.js.map +1 -1
  776. package/lib/hooks/use-deprecated/index.d.ts +10 -0
  777. package/lib/hooks/use-deprecated/index.js +21 -0
  778. package/lib/hooks/use-deprecated/index.js.map +1 -0
  779. package/lib/hooks/use-draggable/index.d.ts +2 -0
  780. package/lib/hooks/use-draggable/index.js +69 -0
  781. package/lib/hooks/use-draggable/index.js.map +1 -0
  782. package/lib/index.js +66 -60
  783. package/lib/index.js.map +1 -1
  784. package/lib/utils/validators.d.ts +0 -1
  785. package/lib/utils/validators.js +0 -9
  786. package/lib/utils/validators.js.map +1 -1
  787. package/lib/version.d.ts +1 -1
  788. package/lib/version.js +1 -1
  789. package/lib/version.js.map +1 -1
  790. package/package.json +3 -3
  791. package/tags.json +1 -1
  792. package/theme-chalk/el-breadcrumb.css +1 -1
  793. package/theme-chalk/el-dialog.css +1 -1
  794. package/theme-chalk/el-empty.css +1 -1
  795. package/theme-chalk/el-image-viewer.css +1 -1
  796. package/theme-chalk/el-message-box.css +1 -1
  797. package/theme-chalk/el-pagination.css +1 -1
  798. package/theme-chalk/el-popper.css +1 -1
  799. package/theme-chalk/el-rate.css +1 -1
  800. package/theme-chalk/el-select.css +1 -1
  801. package/theme-chalk/el-table.css +1 -1
  802. package/theme-chalk/el-tooltip.css +0 -1
  803. package/theme-chalk/index.css +1 -1
  804. package/theme-chalk/src/breadcrumb.scss +2 -0
  805. package/theme-chalk/src/common/var.scss +18 -19
  806. package/theme-chalk/src/dialog.scss +7 -0
  807. package/theme-chalk/src/image-viewer.scss +1 -0
  808. package/theme-chalk/src/message-box.scss +26 -15
  809. package/theme-chalk/src/pagination.scss +77 -57
  810. package/theme-chalk/src/popper.scss +23 -5
  811. package/theme-chalk/src/select.scss +3 -3
  812. package/theme-chalk/src/table.scss +0 -12
  813. package/theme-chalk/src/tooltip.scss +0 -95
  814. package/web-types.json +1 -1
@@ -5,6 +5,7 @@ import '../../../hooks/index.mjs';
5
5
  import { tagProps, tagEmits } from './tag.mjs';
6
6
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
7
7
  import { useSize } from '../../../hooks/use-common-props/index.mjs';
8
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
8
9
 
9
10
  const _sfc_main = defineComponent({
10
11
  name: "ElTag",
@@ -13,15 +14,16 @@ const _sfc_main = defineComponent({
13
14
  emits: tagEmits,
14
15
  setup(props, { emit }) {
15
16
  const tagSize = useSize();
17
+ const ns = useNamespace("tag");
16
18
  const classes = computed(() => {
17
19
  const { type, hit, effect, closable } = props;
18
20
  return [
19
- "el-tag",
20
- closable && "is-closable",
21
- type ? `el-tag--${type}` : "",
22
- tagSize.value ? `el-tag--${tagSize.value}` : "",
23
- effect ? `el-tag--${effect}` : "",
24
- hit && "is-hit"
21
+ ns.b(),
22
+ ns.is("closable", closable),
23
+ ns.m(type),
24
+ ns.m(tagSize.value),
25
+ ns.m(effect),
26
+ ns.is("hit", hit)
25
27
  ];
26
28
  });
27
29
  const handleClose = (event) => {
@@ -32,14 +34,13 @@ const _sfc_main = defineComponent({
32
34
  emit("click", event);
33
35
  };
34
36
  return {
37
+ ns,
35
38
  classes,
36
39
  handleClose,
37
40
  handleClick
38
41
  };
39
42
  }
40
43
  });
41
- const _hoisted_1 = { class: "el-tag__content" };
42
- const _hoisted_2 = { class: "el-tag__content" };
43
44
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
44
45
  const _component_close = resolveComponent("close");
45
46
  const _component_el_icon = resolveComponent("el-icon");
@@ -49,22 +50,24 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
49
50
  style: normalizeStyle({ backgroundColor: _ctx.color }),
50
51
  onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
51
52
  }, [
52
- createElementVNode("span", _hoisted_1, [
53
+ createElementVNode("span", {
54
+ class: normalizeClass(_ctx.ns.e("content"))
55
+ }, [
53
56
  renderSlot(_ctx.$slots, "default")
54
- ]),
57
+ ], 2),
55
58
  _ctx.closable ? (openBlock(), createBlock(_component_el_icon, {
56
59
  key: 0,
57
- class: "el-tag__close",
60
+ class: normalizeClass(_ctx.ns.e("close")),
58
61
  onClick: _ctx.handleClose
59
62
  }, {
60
63
  default: withCtx(() => [
61
64
  createVNode(_component_close)
62
65
  ]),
63
66
  _: 1
64
- }, 8, ["onClick"])) : createCommentVNode("v-if", true)
67
+ }, 8, ["class", "onClick"])) : createCommentVNode("v-if", true)
65
68
  ], 6)) : (openBlock(), createBlock(Transition, {
66
69
  key: 1,
67
- name: "el-zoom-in-center"
70
+ name: `${_ctx.ns.namespace.value}-zoom-in-center`
68
71
  }, {
69
72
  default: withCtx(() => [
70
73
  createElementVNode("span", {
@@ -72,23 +75,25 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
72
75
  style: normalizeStyle({ backgroundColor: _ctx.color }),
73
76
  onClick: _cache[1] || (_cache[1] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
74
77
  }, [
75
- createElementVNode("span", _hoisted_2, [
78
+ createElementVNode("span", {
79
+ class: normalizeClass(_ctx.ns.e("content"))
80
+ }, [
76
81
  renderSlot(_ctx.$slots, "default")
77
- ]),
82
+ ], 2),
78
83
  _ctx.closable ? (openBlock(), createBlock(_component_el_icon, {
79
84
  key: 0,
80
- class: "el-tag__close",
85
+ class: normalizeClass(_ctx.ns.e("close")),
81
86
  onClick: _ctx.handleClose
82
87
  }, {
83
88
  default: withCtx(() => [
84
89
  createVNode(_component_close)
85
90
  ]),
86
91
  _: 1
87
- }, 8, ["onClick"])) : createCommentVNode("v-if", true)
92
+ }, 8, ["class", "onClick"])) : createCommentVNode("v-if", true)
88
93
  ], 6)
89
94
  ]),
90
95
  _: 3
91
- }));
96
+ }, 8, ["name"]));
92
97
  }
93
98
  var Tag = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
94
99
 
@@ -1 +1 @@
1
- {"version":3,"file":"tag2.mjs","sources":["../../../../../../packages/components/tag/src/tag.vue"],"sourcesContent":["<template>\n <span\n v-if=\"!disableTransitions\"\n :class=\"classes\"\n :style=\"{ backgroundColor: color }\"\n @click=\"handleClick\"\n >\n <span class=\"el-tag__content\">\n <slot></slot>\n </span>\n <el-icon v-if=\"closable\" class=\"el-tag__close\" @click=\"handleClose\">\n <close />\n </el-icon>\n </span>\n <transition v-else name=\"el-zoom-in-center\">\n <span\n :class=\"classes\"\n :style=\"{ backgroundColor: color }\"\n @click=\"handleClick\"\n >\n <span class=\"el-tag__content\">\n <slot></slot>\n </span>\n <el-icon v-if=\"closable\" class=\"el-tag__close\" @click=\"handleClose\">\n <close />\n </el-icon>\n </span>\n </transition>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { Close } from '@element-plus/icons-vue'\n\nimport { useSize } from '@element-plus/hooks'\nimport { tagProps, tagEmits } from './tag'\n\nexport default defineComponent({\n name: 'ElTag',\n\n components: { ElIcon, Close },\n\n props: tagProps,\n emits: tagEmits,\n\n setup(props, { emit }) {\n const tagSize = useSize()\n const classes = computed(() => {\n const { type, hit, effect, closable } = props\n return [\n 'el-tag',\n closable && 'is-closable',\n type ? `el-tag--${type}` : '',\n tagSize.value ? `el-tag--${tagSize.value}` : '',\n effect ? `el-tag--${effect}` : '',\n hit && 'is-hit',\n ]\n })\n\n // methods\n const handleClose = (event: MouseEvent) => {\n event.stopPropagation()\n emit('close', event)\n }\n\n const handleClick = (event: MouseEvent) => {\n emit('click', event)\n }\n\n return {\n classes,\n handleClose,\n handleClick,\n }\n },\n})\n</script>\n"],"names":["_normalizeClass","_normalizeStyle","_withCtx"],"mappings":";;;;;;;;AAsCA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY,EAAE,QAAQ;AAAA,EAEtB,OAAO;AAAA,EACP,OAAO;AAAA,EAEP,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,UAAU;AAChB,UAAM,UAAU,SAAS,MAAM;AAC7B,YAAM,EAAE,MAAM,KAAK,QAAQ,aAAa;AACxC,aAAO;AAAA,QACL;AAAA,QACA,YAAY;AAAA,QACZ,OAAO,WAAW,SAAS;AAAA,QAC3B,QAAQ,QAAQ,WAAW,QAAQ,UAAU;AAAA,QAC7C,SAAS,WAAW,WAAW;AAAA,QAC/B,OAAO;AAAA;AAAA;AAKX,UAAM,cAAc,CAAC,UAAsB;AACzC,YAAM;AACN,WAAK,SAAS;AAAA;AAGhB,UAAM,cAAc,CAAC,UAAsB;AACzC,WAAK,SAAS;AAAA;AAGhB,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;qBArDM,OAAM;;;;;;IAjBb,KAAK;AAAA,IACL,OAAKA;AAAA,IACL,OAAKC;AAAA;KAEN;AAAA,uBACe;AAAA;;;MAEU,KAAK;AAAA,MAAkB,OAAK;AAAA;;eACnDC,QAAS;AAAA;;;;;IAGM,KAAI;AAAA;;aACrBA,cAWO;AAAA,yBAVC,QAAE;AAAA,QACP,OAAKF;AAAA,QACL,OAAKC;AAAA;SAEN;AAAA,2BACe;AAAA;;;UAEU,KAAK;AAAA,UAAkB,OAAK;AAAA;;mBACnDC,QAAS;AAAA;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"tag2.mjs","sources":["../../../../../../packages/components/tag/src/tag.vue"],"sourcesContent":["<template>\n <span\n v-if=\"!disableTransitions\"\n :class=\"classes\"\n :style=\"{ backgroundColor: color }\"\n @click=\"handleClick\"\n >\n <span :class=\"ns.e('content')\">\n <slot></slot>\n </span>\n <el-icon v-if=\"closable\" :class=\"ns.e('close')\" @click=\"handleClose\">\n <close />\n </el-icon>\n </span>\n <transition v-else :name=\"`${ns.namespace.value}-zoom-in-center`\">\n <span\n :class=\"classes\"\n :style=\"{ backgroundColor: color }\"\n @click=\"handleClick\"\n >\n <span :class=\"ns.e('content')\">\n <slot></slot>\n </span>\n <el-icon v-if=\"closable\" :class=\"ns.e('close')\" @click=\"handleClose\">\n <close />\n </el-icon>\n </span>\n </transition>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { Close } from '@element-plus/icons-vue'\n\nimport { useSize, useNamespace } from '@element-plus/hooks'\nimport { tagProps, tagEmits } from './tag'\n\nexport default defineComponent({\n name: 'ElTag',\n\n components: { ElIcon, Close },\n\n props: tagProps,\n emits: tagEmits,\n\n setup(props, { emit }) {\n const tagSize = useSize()\n const ns = useNamespace('tag')\n const classes = computed(() => {\n const { type, hit, effect, closable } = props\n return [\n ns.b(),\n ns.is('closable', closable),\n ns.m(type),\n ns.m(tagSize.value),\n ns.m(effect),\n ns.is('hit', hit),\n ]\n })\n\n // methods\n const handleClose = (event: MouseEvent) => {\n event.stopPropagation()\n emit('close', event)\n }\n\n const handleClick = (event: MouseEvent) => {\n emit('click', event)\n }\n\n return {\n ns,\n classes,\n handleClose,\n handleClick,\n }\n },\n})\n</script>\n"],"names":["_normalizeClass","_normalizeStyle","_withCtx"],"mappings":";;;;;;;;;AAsCA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY,EAAE,QAAQ;AAAA,EAEtB,OAAO;AAAA,EACP,OAAO;AAAA,EAEP,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,UAAU;AAChB,UAAM,KAAK,aAAa;AACxB,UAAM,UAAU,SAAS,MAAM;AAC7B,YAAM,EAAE,MAAM,KAAK,QAAQ,aAAa;AACxC,aAAO;AAAA,QACL,GAAG;AAAA,QACH,GAAG,GAAG,YAAY;AAAA,QAClB,GAAG,EAAE;AAAA,QACL,GAAG,EAAE,QAAQ;AAAA,QACb,GAAG,EAAE;AAAA,QACL,GAAG,GAAG,OAAO;AAAA;AAAA;AAKjB,UAAM,cAAc,CAAC,UAAsB;AACzC,YAAM;AACN,WAAK,SAAS;AAAA;AAGhB,UAAM,cAAc,CAAC,UAAsB;AACzC,WAAK,SAAS;AAAA;AAGhB,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;IAxED,KAAK;AAAA,IACL,OAAKA;AAAA,IACL,OAAKC;AAAA;KAEN;AAAA,uBAAY,QAAE;AAAA;OACZ;AAAA;OAEa;AAAA;MAAW,KAAK;AAAA,MAAkB,OAAKD,eAAE,KAAW;AAAA;;eACjEE,QAAS;AAAA;;;;;IAGO,KAAI;AAAA;;aACtBA,cAWO;AAAA,yBAVC,QAAE;AAAA,QACP,OAAKF;AAAA,QACL,OAAKC;AAAA;SAEN;AAAA,2BAAY,QAAE;AAAA;WACZ;AAAA;WAEa;AAAA;UAAW,KAAK;AAAA,UAAkB,OAAKD,eAAE,KAAW;AAAA;;mBACjEE,QAAS;AAAA;;;;;;;;;;;;;"}
@@ -79,6 +79,7 @@ const _sfc_main = defineComponent({
79
79
  const pickerActualVisible = ref(false);
80
80
  const valueOnOpen = ref(null);
81
81
  watch(pickerVisible, (val) => {
82
+ var _a;
82
83
  if (!val) {
83
84
  userInput.value = null;
84
85
  nextTick(() => {
@@ -86,15 +87,16 @@ const _sfc_main = defineComponent({
86
87
  });
87
88
  ctx.emit("blur");
88
89
  blurInput();
89
- props.validateEvent && elFormItem.validate?.("blur");
90
+ props.validateEvent && ((_a = elFormItem.validate) == null ? void 0 : _a.call(elFormItem, "blur"));
90
91
  } else {
91
92
  valueOnOpen.value = props.modelValue;
92
93
  }
93
94
  });
94
95
  const emitChange = (val, isClear) => {
96
+ var _a;
95
97
  if (isClear || !valueEquals(val, valueOnOpen.value)) {
96
98
  ctx.emit("change", val);
97
- props.validateEvent && elFormItem.validate?.("change");
99
+ props.validateEvent && ((_a = elFormItem.validate) == null ? void 0 : _a.call(elFormItem, "change"));
98
100
  }
99
101
  };
100
102
  const emitInput = (val) => {
@@ -116,10 +118,10 @@ const _sfc_main = defineComponent({
116
118
  return [];
117
119
  });
118
120
  const refStartInput = computed(() => {
119
- return refInput?.value[0];
121
+ return refInput == null ? void 0 : refInput.value[0];
120
122
  });
121
123
  const refEndInput = computed(() => {
122
- return refInput?.value[1];
124
+ return refInput == null ? void 0 : refInput.value[1];
123
125
  });
124
126
  const setSelectionRange = (start, end, pos) => {
125
127
  const _inputs = refInput.value;
@@ -160,7 +162,8 @@ const _sfc_main = defineComponent({
160
162
  ctx.emit("focus", e);
161
163
  };
162
164
  const handleBlur = () => {
163
- refPopper.value?.onClose();
165
+ var _a;
166
+ (_a = refPopper.value) == null ? void 0 : _a.onClose();
164
167
  blurInput();
165
168
  };
166
169
  const pickerDisabled = computed(() => {
@@ -247,14 +250,19 @@ const _sfc_main = defineComponent({
247
250
  });
248
251
  const pickerSize = useSize();
249
252
  const popperPaneRef = computed(() => {
250
- return refPopper.value?.popperRef?.contentRef;
253
+ var _a, _b;
254
+ return (_b = (_a = refPopper.value) == null ? void 0 : _a.popperRef) == null ? void 0 : _b.contentRef;
255
+ });
256
+ const popperEl = computed(() => {
257
+ var _a, _b;
258
+ return (_b = (_a = unref(refPopper)) == null ? void 0 : _a.popperRef) == null ? void 0 : _b.contentRef;
251
259
  });
252
- const popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef);
253
260
  const actualInputRef = computed(() => {
261
+ var _a;
254
262
  if (unref(isRangeInput)) {
255
263
  return unref(inputRef);
256
264
  }
257
- return unref(inputRef)?.$el;
265
+ return (_a = unref(inputRef)) == null ? void 0 : _a.$el;
258
266
  });
259
267
  onClickOutside(actualInputRef, (e) => {
260
268
  const unrefedPopperEl = unref(popperEl);
@@ -1 +1 @@
1
- {"version":3,"file":"picker.mjs","sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"refPopper\"\n v-model:visible=\"pickerVisible\"\n effect=\"light\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n append-to-body\n transition=\"el-zoom-in-top\"\n :popper-class=\"`el-picker__popper ${popperClass}`\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n :gpu-acceleration=\"false\"\n :stop-popper-mouse-event=\"false\"\n :hide-after=\"0\"\n persistent\n @show=\"pickerActualVisible = true\"\n @hide=\"pickerActualVisible = false\"\n >\n <template #default>\n <el-input\n v-if=\"!isRangeInput\"\n :id=\"id\"\n ref=\"inputRef\"\n :model-value=\"displayValue\"\n :name=\"name\"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n class=\"el-date-editor\"\n :class=\"['el-date-editor--' + type, $attrs.class || undefined]\"\n :style=\"$attrs.style || undefined\"\n :readonly=\"!editable || readonly || isDatesPicker || type === 'week'\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @keydown=\"handleKeydown\"\n @change=\"handleChange\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @click.stop\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n class=\"el-input__icon\"\n @click=\"handleFocus\"\n >\n <component :is=\"triggerIcon\"></component>\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClose && clearIcon\"\n class=\"el-input__icon clear-icon\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <div\n v-else\n ref=\"inputRef\"\n class=\"el-date-editor el-range-editor el-input__inner\"\n :class=\"[\n 'el-date-editor--' + type,\n pickerSize ? `el-range-editor--${pickerSize}` : '',\n pickerDisabled ? 'is-disabled' : '',\n pickerVisible ? 'is-active' : '',\n $attrs.class || undefined,\n ]\"\n :style=\"$attrs.style || undefined\"\n @click=\"handleFocus\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @keydown=\"handleKeydown\"\n >\n <el-icon\n v-if=\"triggerIcon\"\n class=\"el-input__icon el-range__icon\"\n @click=\"handleFocus\"\n >\n <component :is=\"triggerIcon\"></component>\n </el-icon>\n <input\n :id=\"id && id[0]\"\n autocomplete=\"off\"\n :name=\"name && name[0]\"\n :placeholder=\"startPlaceholder\"\n :value=\"displayValue && displayValue[0]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n class=\"el-range-input\"\n @input=\"handleStartInput\"\n @change=\"handleStartChange\"\n @focus=\"handleFocus\"\n />\n <slot name=\"range-separator\">\n <span class=\"el-range-separator\">{{ rangeSeparator }}</span>\n </slot>\n <input\n :id=\"id && id[1]\"\n autocomplete=\"off\"\n :name=\"name && name[1]\"\n :placeholder=\"endPlaceholder\"\n :value=\"displayValue && displayValue[1]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n class=\"el-range-input\"\n @focus=\"handleFocus\"\n @input=\"handleEndInput\"\n @change=\"handleEndChange\"\n />\n <el-icon\n v-if=\"clearIcon\"\n class=\"el-input__icon el-range__close-icon\"\n :class=\"{\n 'el-range__close-icon--hidden': !showClose,\n }\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </div>\n </template>\n <template #content>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @panel-change=\"onPanelChange\"\n @mousedown.stop\n ></slot>\n </template>\n </el-tooltip>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n ref,\n computed,\n nextTick,\n inject,\n watch,\n provide,\n unref,\n} from 'vue'\nimport dayjs from 'dayjs'\nimport isEqual from 'lodash/isEqual'\nimport { onClickOutside } from '@vueuse/core'\nimport { useLocale, useSize } from '@element-plus/hooks'\nimport { elFormKey, elFormItemKey } from '@element-plus/tokens'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { isEmpty } from '@element-plus/utils/util'\nimport { Clock, Calendar } from '@element-plus/icons-vue'\nimport { timePickerDefaultProps } from './props'\n\nimport type { Dayjs } from 'dayjs'\nimport type { ComponentPublicInstance } from 'vue'\nimport type { ElFormContext, ElFormItemContext } from '@element-plus/tokens'\nimport type { Options } from '@popperjs/core'\n\ninterface PickerOptions {\n isValidValue: (date: Dayjs) => boolean\n handleKeydown: (event: KeyboardEvent) => void\n parseUserInput: (value: Dayjs) => dayjs.Dayjs\n formatToString: (value: Dayjs) => string | string[]\n getRangeAvailableTime: (date: Dayjs) => dayjs.Dayjs\n getDefaultValue: () => Dayjs\n panelReady: boolean\n handleClear: () => void\n}\n\n// Date object and string\nconst dateEquals = function (a: Date | any, b: Date | any) {\n const aIsDate = a instanceof Date\n const bIsDate = b instanceof Date\n if (aIsDate && bIsDate) {\n return a.getTime() === b.getTime()\n }\n if (!aIsDate && !bIsDate) {\n return a === b\n }\n return false\n}\n\nconst valueEquals = function (a: Array<Date> | any, b: Array<Date> | any) {\n const aIsArray = a instanceof Array\n const bIsArray = b instanceof Array\n if (aIsArray && bIsArray) {\n if (a.length !== b.length) {\n return false\n }\n return (a as Array<Date>).every((item, index) => dateEquals(item, b[index]))\n }\n if (!aIsArray && !bIsArray) {\n return dateEquals(a, b)\n }\n return false\n}\n\nconst parser = function (\n date: Date | string,\n format: string,\n lang: string\n): Dayjs {\n const day =\n isEmpty(format) || format === 'x'\n ? dayjs(date).locale(lang)\n : dayjs(date, format).locale(lang)\n return day.isValid() ? day : undefined\n}\n\nconst formatter = function (date: number | Date, format: string, lang: string) {\n if (isEmpty(format)) return date\n if (format === 'x') return +date\n return dayjs(date).locale(lang).format(format)\n}\n\nexport default defineComponent({\n name: 'Picker',\n components: {\n ElInput,\n ElTooltip,\n ElIcon,\n },\n props: timePickerDefaultProps,\n emits: [\n 'update:modelValue',\n 'change',\n 'focus',\n 'blur',\n 'calendar-change',\n 'panel-change',\n ],\n setup(props, ctx) {\n const { lang } = useLocale()\n\n const elForm = inject(elFormKey, {} as ElFormContext)\n const elFormItem = inject(elFormItemKey, {} as ElFormItemContext)\n const elPopperOptions = inject('ElPopperOptions', {} as Options)\n\n const refPopper = ref<InstanceType<typeof ElTooltip>>()\n const inputRef = ref<HTMLElement | ComponentPublicInstance>()\n const pickerVisible = ref(false)\n const pickerActualVisible = ref(false)\n const valueOnOpen = ref(null)\n\n watch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n ctx.emit('blur')\n blurInput()\n props.validateEvent && elFormItem.validate?.('blur')\n } else {\n valueOnOpen.value = props.modelValue\n }\n })\n const emitChange = (val, isClear?: boolean) => {\n // determine user real change only\n if (isClear || !valueEquals(val, valueOnOpen.value)) {\n ctx.emit('change', val)\n props.validateEvent && elFormItem.validate?.('change')\n }\n }\n const emitInput = (val) => {\n if (!valueEquals(props.modelValue, val)) {\n let formatValue\n if (Array.isArray(val)) {\n formatValue = val.map((_) =>\n formatter(_, props.valueFormat, lang.value)\n )\n } else if (val) {\n formatValue = formatter(val, props.valueFormat, lang.value)\n }\n ctx.emit('update:modelValue', val ? formatValue : val, lang.value)\n }\n }\n const refInput = computed<HTMLInputElement[]>(() => {\n if (inputRef.value) {\n const _r = isRangeInput.value\n ? inputRef.value\n : (inputRef.value as any as ComponentPublicInstance).$el\n return Array.from<HTMLInputElement>(_r.querySelectorAll('input'))\n }\n return []\n })\n const refStartInput = computed(() => {\n return refInput?.value[0]\n })\n const refEndInput = computed(() => {\n return refInput?.value[1]\n })\n const setSelectionRange = (start, end, pos) => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n }\n const onPick = (date: any = '', visible = false) => {\n pickerVisible.value = visible\n let result\n if (Array.isArray(date)) {\n result = date.map((_) => _.toDate())\n } else {\n // clear btn emit null\n result = date ? date.toDate() : date\n }\n userInput.value = null\n emitInput(result)\n }\n\n const focus = (focusStartInput = true) => {\n let input = refStartInput.value\n if (!focusStartInput && isRangeInput.value) {\n input = refEndInput.value\n }\n if (input) {\n input.focus()\n }\n }\n\n const handleFocus = (e) => {\n if (props.readonly || pickerDisabled.value || pickerVisible.value) return\n pickerVisible.value = true\n ctx.emit('focus', e)\n }\n\n const handleBlur = () => {\n refPopper.value?.onClose()\n blurInput()\n }\n\n const pickerDisabled = computed(() => {\n return props.disabled || elForm.disabled\n })\n\n const parsedValue = computed(() => {\n let result\n if (valueIsEmpty.value) {\n if (pickerOptions.value.getDefaultValue) {\n result = pickerOptions.value.getDefaultValue()\n }\n } else {\n if (Array.isArray(props.modelValue)) {\n result = props.modelValue.map((_) =>\n parser(_, props.valueFormat, lang.value)\n )\n } else {\n result = parser(props.modelValue, props.valueFormat, lang.value)\n }\n }\n\n if (pickerOptions.value.getRangeAvailableTime) {\n const availableResult =\n pickerOptions.value.getRangeAvailableTime(result)\n if (!isEqual(availableResult, result)) {\n result = availableResult\n emitInput(\n Array.isArray(result)\n ? result.map((_) => _.toDate())\n : result.toDate()\n )\n }\n }\n if (Array.isArray(result) && result.some((_) => !_)) {\n result = []\n }\n return result\n })\n\n const displayValue = computed(() => {\n if (!pickerOptions.value.panelReady) return\n const formattedValue = formatDayjsToString(parsedValue.value)\n if (Array.isArray(userInput.value)) {\n return [\n userInput.value[0] || (formattedValue && formattedValue[0]) || '',\n userInput.value[1] || (formattedValue && formattedValue[1]) || '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (!isTimePicker.value && valueIsEmpty.value) return\n if (!pickerVisible.value && valueIsEmpty.value) return\n if (formattedValue) {\n return isDatesPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n })\n\n const isTimeLikePicker = computed(() => props.type.includes('time'))\n\n const isTimePicker = computed(() => props.type.startsWith('time'))\n\n const isDatesPicker = computed(() => props.type === 'dates')\n\n const triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n )\n\n const showClose = ref(false)\n\n const onClearIconClick = (event) => {\n if (props.readonly || pickerDisabled.value) return\n if (showClose.value) {\n event.stopPropagation()\n emitInput(null)\n emitChange(null, true)\n showClose.value = false\n pickerVisible.value = false\n pickerOptions.value.handleClear && pickerOptions.value.handleClear()\n }\n }\n const valueIsEmpty = computed(() => {\n return (\n !props.modelValue ||\n (Array.isArray(props.modelValue) && !props.modelValue.length)\n )\n })\n const onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n showClose.value = true\n }\n }\n const onMouseLeave = () => {\n showClose.value = false\n }\n const isRangeInput = computed(() => {\n return props.type.indexOf('range') > -1\n })\n\n const pickerSize = useSize()\n\n const popperPaneRef = computed(() => {\n return refPopper.value?.popperRef?.contentRef\n })\n\n const popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef)\n const actualInputRef = computed(() => {\n if (unref(isRangeInput)) {\n return unref(inputRef)\n }\n\n return (unref(inputRef) as ComponentPublicInstance)?.$el\n })\n\n onClickOutside(actualInputRef, (e: PointerEvent) => {\n const unrefedPopperEl = unref(popperEl)\n const inputEl = unref(actualInputRef)\n if (\n (unrefedPopperEl &&\n (e.target === unrefedPopperEl ||\n e.composedPath().includes(unrefedPopperEl))) ||\n e.target === inputEl ||\n e.composedPath().includes(inputEl)\n )\n return\n pickerVisible.value = false\n })\n\n const userInput = ref(null)\n\n const handleChange = () => {\n if (userInput.value) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(\n Array.isArray(value)\n ? value.map((_) => _.toDate())\n : value.toDate()\n )\n userInput.value = null\n }\n }\n }\n if (userInput.value === '') {\n emitInput(null)\n emitChange(null)\n userInput.value = null\n }\n }\n\n const blurInput = () => {\n refInput.value.forEach((input) => input.blur())\n }\n\n const parseUserInputToDayjs = (value) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput(value)\n }\n\n const formatDayjsToString = (value) => {\n if (!value) return null\n return pickerOptions.value.formatToString(value)\n }\n\n const isValidValue = (value) => {\n return pickerOptions.value.isValidValue(value)\n }\n\n const handleKeydown = (event) => {\n const code = event.code\n\n if (code === EVENT_CODE.esc) {\n pickerVisible.value = false\n event.stopPropagation()\n return\n }\n\n if (code === EVENT_CODE.tab) {\n if (!isRangeInput.value) {\n handleChange()\n pickerVisible.value = false\n event.stopPropagation()\n } else {\n // user may change focus between two input\n setTimeout(() => {\n if (refInput.value.indexOf(document.activeElement) === -1) {\n pickerVisible.value = false\n blurInput()\n }\n }, 0)\n }\n return\n }\n\n if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {\n if (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value))\n ) {\n handleChange()\n pickerVisible.value = false\n }\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n\n if (pickerOptions.value.handleKeydown) {\n pickerOptions.value.handleKeydown(event)\n }\n }\n const onUserInput = (e) => {\n userInput.value = e\n }\n\n const handleStartInput = (event) => {\n if (userInput.value) {\n userInput.value = [event.target.value, userInput.value[1]]\n } else {\n userInput.value = [event.target.value, null]\n }\n }\n\n const handleEndInput = (event) => {\n if (userInput.value) {\n userInput.value = [userInput.value[0], event.target.value]\n } else {\n userInput.value = [null, event.target.value]\n }\n }\n\n const handleStartChange = () => {\n const value = parseUserInputToDayjs(userInput.value && userInput.value[0])\n if (value && value.isValid()) {\n userInput.value = [formatDayjsToString(value), displayValue.value[1]]\n const newValue = [value, parsedValue.value && parsedValue.value[1]]\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n }\n\n const handleEndChange = () => {\n const value = parseUserInputToDayjs(userInput.value && userInput.value[1])\n if (value && value.isValid()) {\n userInput.value = [displayValue.value[0], formatDayjsToString(value)]\n const newValue = [parsedValue.value && parsedValue.value[0], value]\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n }\n\n const pickerOptions = ref<Partial<PickerOptions>>({})\n const onSetPickerOption = <T extends keyof PickerOptions>(\n e: [T, PickerOptions[T]]\n ) => {\n pickerOptions.value[e[0]] = e[1]\n pickerOptions.value.panelReady = true\n }\n\n const onCalendarChange = (e) => {\n ctx.emit('calendar-change', e)\n }\n\n const onPanelChange = (value, mode, view) => {\n ctx.emit('panel-change', value, mode, view)\n }\n\n provide('EP_PICKER_BASE', {\n props,\n })\n\n return {\n // injected popper options\n elPopperOptions,\n\n isDatesPicker,\n handleEndChange,\n handleStartChange,\n handleStartInput,\n handleEndInput,\n onUserInput,\n handleChange,\n handleKeydown,\n popperPaneRef,\n onClickOutside,\n pickerSize,\n isRangeInput,\n onMouseLeave,\n onMouseEnter,\n onClearIconClick,\n showClose,\n triggerIcon,\n onPick,\n handleFocus,\n handleBlur,\n pickerVisible,\n pickerActualVisible,\n displayValue,\n parsedValue,\n setSelectionRange,\n refPopper,\n inputRef,\n pickerDisabled,\n onSetPickerOption,\n onCalendarChange,\n onPanelChange,\n focus,\n }\n },\n})\n</script>\n"],"names":["_openBlock","_createBlock","_withCtx","_normalizeClass","_normalizeStyle","_createCommentVNode"],"mappings":"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"}
1
+ {"version":3,"file":"picker.mjs","sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"refPopper\"\n v-model:visible=\"pickerVisible\"\n effect=\"light\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n append-to-body\n transition=\"el-zoom-in-top\"\n :popper-class=\"`el-picker__popper ${popperClass}`\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n :gpu-acceleration=\"false\"\n :stop-popper-mouse-event=\"false\"\n :hide-after=\"0\"\n persistent\n @show=\"pickerActualVisible = true\"\n @hide=\"pickerActualVisible = false\"\n >\n <template #default>\n <el-input\n v-if=\"!isRangeInput\"\n :id=\"id\"\n ref=\"inputRef\"\n :model-value=\"displayValue\"\n :name=\"name\"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n class=\"el-date-editor\"\n :class=\"['el-date-editor--' + type, $attrs.class || undefined]\"\n :style=\"$attrs.style || undefined\"\n :readonly=\"!editable || readonly || isDatesPicker || type === 'week'\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @keydown=\"handleKeydown\"\n @change=\"handleChange\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @click.stop\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n class=\"el-input__icon\"\n @click=\"handleFocus\"\n >\n <component :is=\"triggerIcon\"></component>\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClose && clearIcon\"\n class=\"el-input__icon clear-icon\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <div\n v-else\n ref=\"inputRef\"\n class=\"el-date-editor el-range-editor el-input__inner\"\n :class=\"[\n 'el-date-editor--' + type,\n pickerSize ? `el-range-editor--${pickerSize}` : '',\n pickerDisabled ? 'is-disabled' : '',\n pickerVisible ? 'is-active' : '',\n $attrs.class || undefined,\n ]\"\n :style=\"$attrs.style || undefined\"\n @click=\"handleFocus\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @keydown=\"handleKeydown\"\n >\n <el-icon\n v-if=\"triggerIcon\"\n class=\"el-input__icon el-range__icon\"\n @click=\"handleFocus\"\n >\n <component :is=\"triggerIcon\"></component>\n </el-icon>\n <input\n :id=\"id && id[0]\"\n autocomplete=\"off\"\n :name=\"name && name[0]\"\n :placeholder=\"startPlaceholder\"\n :value=\"displayValue && displayValue[0]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n class=\"el-range-input\"\n @input=\"handleStartInput\"\n @change=\"handleStartChange\"\n @focus=\"handleFocus\"\n />\n <slot name=\"range-separator\">\n <span class=\"el-range-separator\">{{ rangeSeparator }}</span>\n </slot>\n <input\n :id=\"id && id[1]\"\n autocomplete=\"off\"\n :name=\"name && name[1]\"\n :placeholder=\"endPlaceholder\"\n :value=\"displayValue && displayValue[1]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n class=\"el-range-input\"\n @focus=\"handleFocus\"\n @input=\"handleEndInput\"\n @change=\"handleEndChange\"\n />\n <el-icon\n v-if=\"clearIcon\"\n class=\"el-input__icon el-range__close-icon\"\n :class=\"{\n 'el-range__close-icon--hidden': !showClose,\n }\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </div>\n </template>\n <template #content>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @panel-change=\"onPanelChange\"\n @mousedown.stop\n ></slot>\n </template>\n </el-tooltip>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n ref,\n computed,\n nextTick,\n inject,\n watch,\n provide,\n unref,\n} from 'vue'\nimport dayjs from 'dayjs'\nimport isEqual from 'lodash/isEqual'\nimport { onClickOutside } from '@vueuse/core'\nimport { useLocale, useSize } from '@element-plus/hooks'\nimport { elFormKey, elFormItemKey } from '@element-plus/tokens'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { isEmpty } from '@element-plus/utils/util'\nimport { Clock, Calendar } from '@element-plus/icons-vue'\nimport { timePickerDefaultProps } from './props'\n\nimport type { Dayjs } from 'dayjs'\nimport type { ComponentPublicInstance } from 'vue'\nimport type { ElFormContext, ElFormItemContext } from '@element-plus/tokens'\nimport type { Options } from '@popperjs/core'\n\ninterface PickerOptions {\n isValidValue: (date: Dayjs) => boolean\n handleKeydown: (event: KeyboardEvent) => void\n parseUserInput: (value: Dayjs) => dayjs.Dayjs\n formatToString: (value: Dayjs) => string | string[]\n getRangeAvailableTime: (date: Dayjs) => dayjs.Dayjs\n getDefaultValue: () => Dayjs\n panelReady: boolean\n handleClear: () => void\n}\n\n// Date object and string\nconst dateEquals = function (a: Date | any, b: Date | any) {\n const aIsDate = a instanceof Date\n const bIsDate = b instanceof Date\n if (aIsDate && bIsDate) {\n return a.getTime() === b.getTime()\n }\n if (!aIsDate && !bIsDate) {\n return a === b\n }\n return false\n}\n\nconst valueEquals = function (a: Array<Date> | any, b: Array<Date> | any) {\n const aIsArray = a instanceof Array\n const bIsArray = b instanceof Array\n if (aIsArray && bIsArray) {\n if (a.length !== b.length) {\n return false\n }\n return (a as Array<Date>).every((item, index) => dateEquals(item, b[index]))\n }\n if (!aIsArray && !bIsArray) {\n return dateEquals(a, b)\n }\n return false\n}\n\nconst parser = function (\n date: Date | string,\n format: string,\n lang: string\n): Dayjs {\n const day =\n isEmpty(format) || format === 'x'\n ? dayjs(date).locale(lang)\n : dayjs(date, format).locale(lang)\n return day.isValid() ? day : undefined\n}\n\nconst formatter = function (date: number | Date, format: string, lang: string) {\n if (isEmpty(format)) return date\n if (format === 'x') return +date\n return dayjs(date).locale(lang).format(format)\n}\n\nexport default defineComponent({\n name: 'Picker',\n components: {\n ElInput,\n ElTooltip,\n ElIcon,\n },\n props: timePickerDefaultProps,\n emits: [\n 'update:modelValue',\n 'change',\n 'focus',\n 'blur',\n 'calendar-change',\n 'panel-change',\n ],\n setup(props, ctx) {\n const { lang } = useLocale()\n\n const elForm = inject(elFormKey, {} as ElFormContext)\n const elFormItem = inject(elFormItemKey, {} as ElFormItemContext)\n const elPopperOptions = inject('ElPopperOptions', {} as Options)\n\n const refPopper = ref<InstanceType<typeof ElTooltip>>()\n const inputRef = ref<HTMLElement | ComponentPublicInstance>()\n const pickerVisible = ref(false)\n const pickerActualVisible = ref(false)\n const valueOnOpen = ref(null)\n\n watch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n ctx.emit('blur')\n blurInput()\n props.validateEvent && elFormItem.validate?.('blur')\n } else {\n valueOnOpen.value = props.modelValue\n }\n })\n const emitChange = (val, isClear?: boolean) => {\n // determine user real change only\n if (isClear || !valueEquals(val, valueOnOpen.value)) {\n ctx.emit('change', val)\n props.validateEvent && elFormItem.validate?.('change')\n }\n }\n const emitInput = (val) => {\n if (!valueEquals(props.modelValue, val)) {\n let formatValue\n if (Array.isArray(val)) {\n formatValue = val.map((_) =>\n formatter(_, props.valueFormat, lang.value)\n )\n } else if (val) {\n formatValue = formatter(val, props.valueFormat, lang.value)\n }\n ctx.emit('update:modelValue', val ? formatValue : val, lang.value)\n }\n }\n const refInput = computed<HTMLInputElement[]>(() => {\n if (inputRef.value) {\n const _r = isRangeInput.value\n ? inputRef.value\n : (inputRef.value as any as ComponentPublicInstance).$el\n return Array.from<HTMLInputElement>(_r.querySelectorAll('input'))\n }\n return []\n })\n const refStartInput = computed(() => {\n return refInput?.value[0]\n })\n const refEndInput = computed(() => {\n return refInput?.value[1]\n })\n const setSelectionRange = (start, end, pos) => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n }\n const onPick = (date: any = '', visible = false) => {\n pickerVisible.value = visible\n let result\n if (Array.isArray(date)) {\n result = date.map((_) => _.toDate())\n } else {\n // clear btn emit null\n result = date ? date.toDate() : date\n }\n userInput.value = null\n emitInput(result)\n }\n\n const focus = (focusStartInput = true) => {\n let input = refStartInput.value\n if (!focusStartInput && isRangeInput.value) {\n input = refEndInput.value\n }\n if (input) {\n input.focus()\n }\n }\n\n const handleFocus = (e) => {\n if (props.readonly || pickerDisabled.value || pickerVisible.value) return\n pickerVisible.value = true\n ctx.emit('focus', e)\n }\n\n const handleBlur = () => {\n refPopper.value?.onClose()\n blurInput()\n }\n\n const pickerDisabled = computed(() => {\n return props.disabled || elForm.disabled\n })\n\n const parsedValue = computed(() => {\n let result\n if (valueIsEmpty.value) {\n if (pickerOptions.value.getDefaultValue) {\n result = pickerOptions.value.getDefaultValue()\n }\n } else {\n if (Array.isArray(props.modelValue)) {\n result = props.modelValue.map((_) =>\n parser(_, props.valueFormat, lang.value)\n )\n } else {\n result = parser(props.modelValue, props.valueFormat, lang.value)\n }\n }\n\n if (pickerOptions.value.getRangeAvailableTime) {\n const availableResult =\n pickerOptions.value.getRangeAvailableTime(result)\n if (!isEqual(availableResult, result)) {\n result = availableResult\n emitInput(\n Array.isArray(result)\n ? result.map((_) => _.toDate())\n : result.toDate()\n )\n }\n }\n if (Array.isArray(result) && result.some((_) => !_)) {\n result = []\n }\n return result\n })\n\n const displayValue = computed(() => {\n if (!pickerOptions.value.panelReady) return\n const formattedValue = formatDayjsToString(parsedValue.value)\n if (Array.isArray(userInput.value)) {\n return [\n userInput.value[0] || (formattedValue && formattedValue[0]) || '',\n userInput.value[1] || (formattedValue && formattedValue[1]) || '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (!isTimePicker.value && valueIsEmpty.value) return\n if (!pickerVisible.value && valueIsEmpty.value) return\n if (formattedValue) {\n return isDatesPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n })\n\n const isTimeLikePicker = computed(() => props.type.includes('time'))\n\n const isTimePicker = computed(() => props.type.startsWith('time'))\n\n const isDatesPicker = computed(() => props.type === 'dates')\n\n const triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n )\n\n const showClose = ref(false)\n\n const onClearIconClick = (event) => {\n if (props.readonly || pickerDisabled.value) return\n if (showClose.value) {\n event.stopPropagation()\n emitInput(null)\n emitChange(null, true)\n showClose.value = false\n pickerVisible.value = false\n pickerOptions.value.handleClear && pickerOptions.value.handleClear()\n }\n }\n const valueIsEmpty = computed(() => {\n return (\n !props.modelValue ||\n (Array.isArray(props.modelValue) && !props.modelValue.length)\n )\n })\n const onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n showClose.value = true\n }\n }\n const onMouseLeave = () => {\n showClose.value = false\n }\n const isRangeInput = computed(() => {\n return props.type.indexOf('range') > -1\n })\n\n const pickerSize = useSize()\n\n const popperPaneRef = computed(() => {\n return refPopper.value?.popperRef?.contentRef\n })\n\n const popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef)\n const actualInputRef = computed(() => {\n if (unref(isRangeInput)) {\n return unref(inputRef)\n }\n\n return (unref(inputRef) as ComponentPublicInstance)?.$el\n })\n\n onClickOutside(actualInputRef, (e: PointerEvent) => {\n const unrefedPopperEl = unref(popperEl)\n const inputEl = unref(actualInputRef)\n if (\n (unrefedPopperEl &&\n (e.target === unrefedPopperEl ||\n e.composedPath().includes(unrefedPopperEl))) ||\n e.target === inputEl ||\n e.composedPath().includes(inputEl)\n )\n return\n pickerVisible.value = false\n })\n\n const userInput = ref(null)\n\n const handleChange = () => {\n if (userInput.value) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(\n Array.isArray(value)\n ? value.map((_) => _.toDate())\n : value.toDate()\n )\n userInput.value = null\n }\n }\n }\n if (userInput.value === '') {\n emitInput(null)\n emitChange(null)\n userInput.value = null\n }\n }\n\n const blurInput = () => {\n refInput.value.forEach((input) => input.blur())\n }\n\n const parseUserInputToDayjs = (value) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput(value)\n }\n\n const formatDayjsToString = (value) => {\n if (!value) return null\n return pickerOptions.value.formatToString(value)\n }\n\n const isValidValue = (value) => {\n return pickerOptions.value.isValidValue(value)\n }\n\n const handleKeydown = (event) => {\n const code = event.code\n\n if (code === EVENT_CODE.esc) {\n pickerVisible.value = false\n event.stopPropagation()\n return\n }\n\n if (code === EVENT_CODE.tab) {\n if (!isRangeInput.value) {\n handleChange()\n pickerVisible.value = false\n event.stopPropagation()\n } else {\n // user may change focus between two input\n setTimeout(() => {\n if (refInput.value.indexOf(document.activeElement) === -1) {\n pickerVisible.value = false\n blurInput()\n }\n }, 0)\n }\n return\n }\n\n if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {\n if (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value))\n ) {\n handleChange()\n pickerVisible.value = false\n }\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n\n if (pickerOptions.value.handleKeydown) {\n pickerOptions.value.handleKeydown(event)\n }\n }\n const onUserInput = (e) => {\n userInput.value = e\n }\n\n const handleStartInput = (event) => {\n if (userInput.value) {\n userInput.value = [event.target.value, userInput.value[1]]\n } else {\n userInput.value = [event.target.value, null]\n }\n }\n\n const handleEndInput = (event) => {\n if (userInput.value) {\n userInput.value = [userInput.value[0], event.target.value]\n } else {\n userInput.value = [null, event.target.value]\n }\n }\n\n const handleStartChange = () => {\n const value = parseUserInputToDayjs(userInput.value && userInput.value[0])\n if (value && value.isValid()) {\n userInput.value = [formatDayjsToString(value), displayValue.value[1]]\n const newValue = [value, parsedValue.value && parsedValue.value[1]]\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n }\n\n const handleEndChange = () => {\n const value = parseUserInputToDayjs(userInput.value && userInput.value[1])\n if (value && value.isValid()) {\n userInput.value = [displayValue.value[0], formatDayjsToString(value)]\n const newValue = [parsedValue.value && parsedValue.value[0], value]\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n }\n\n const pickerOptions = ref<Partial<PickerOptions>>({})\n const onSetPickerOption = <T extends keyof PickerOptions>(\n e: [T, PickerOptions[T]]\n ) => {\n pickerOptions.value[e[0]] = e[1]\n pickerOptions.value.panelReady = true\n }\n\n const onCalendarChange = (e) => {\n ctx.emit('calendar-change', e)\n }\n\n const onPanelChange = (value, mode, view) => {\n ctx.emit('panel-change', value, mode, view)\n }\n\n provide('EP_PICKER_BASE', {\n props,\n })\n\n return {\n // injected popper options\n elPopperOptions,\n\n isDatesPicker,\n handleEndChange,\n handleStartChange,\n handleStartInput,\n handleEndInput,\n onUserInput,\n handleChange,\n handleKeydown,\n popperPaneRef,\n onClickOutside,\n pickerSize,\n isRangeInput,\n onMouseLeave,\n onMouseEnter,\n onClearIconClick,\n showClose,\n triggerIcon,\n onPick,\n handleFocus,\n handleBlur,\n pickerVisible,\n pickerActualVisible,\n displayValue,\n parsedValue,\n setSelectionRange,\n refPopper,\n inputRef,\n pickerDisabled,\n onSetPickerOption,\n onCalendarChange,\n onPanelChange,\n focus,\n }\n },\n})\n</script>\n"],"names":["_createElementVNode"],"mappings":"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"}
@@ -163,10 +163,12 @@ const _sfc_main = defineComponent({
163
163
  return result;
164
164
  });
165
165
  const blur = () => {
166
- select.value?.blur?.();
166
+ var _a, _b;
167
+ (_b = (_a = select.value) == null ? void 0 : _a.blur) == null ? void 0 : _b.call(_a);
167
168
  };
168
169
  const focus = () => {
169
- select.value?.focus?.();
170
+ var _a, _b;
171
+ (_b = (_a = select.value) == null ? void 0 : _a.focus) == null ? void 0 : _b.call(_a);
170
172
  };
171
173
  return {
172
174
  select,
@@ -1 +1 @@
1
- {"version":3,"file":"time-select.mjs","sources":["../../../../../../packages/components/time-select/src/time-select.vue"],"sourcesContent":["<template>\n <el-select\n ref=\"select\"\n :model-value=\"value\"\n :disabled=\"disabled\"\n :clearable=\"clearable\"\n :clear-icon=\"clearIcon\"\n :size=\"size\"\n :placeholder=\"placeholder\"\n default-first-option\n :filterable=\"editable\"\n @update:model-value=\"(event) => $emit('update:modelValue', event)\"\n @change=\"(event) => $emit('change', event)\"\n @blur=\"(event) => $emit('blur', event)\"\n @focus=\"(event) => $emit('focus', event)\"\n >\n <el-option\n v-for=\"item in items\"\n :key=\"item.value\"\n :label=\"item.value\"\n :value=\"item.value\"\n :disabled=\"item.disabled\"\n />\n <template #prefix>\n <el-icon v-if=\"prefixIcon\" class=\"el-input__prefix-icon\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </template>\n </el-select>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, computed, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat'\nimport ElSelect from '@element-plus/components/select'\nimport ElIcon from '@element-plus/components/icon'\nimport { CircleClose, Clock } from '@element-plus/icons-vue'\n\nimport type { PropType, Component } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\ndayjs.extend(customParseFormat)\n\nconst { Option: ElOption } = ElSelect\n\ninterface Time {\n hours: number\n minutes: number\n}\n\nconst parseTime = (time: string): null | Time => {\n const values = (time || '').split(':')\n if (values.length >= 2) {\n let hours = parseInt(values[0], 10)\n const minutes = parseInt(values[1], 10)\n const timeUpper = time.toUpperCase()\n if (timeUpper.includes('AM') && hours === 12) {\n hours = 0\n } else if (timeUpper.includes('PM') && hours !== 12) {\n hours += 12\n }\n return {\n hours,\n minutes,\n }\n }\n return null\n}\nconst compareTime = (time1: string, time2: string): number => {\n const value1 = parseTime(time1)\n const value2 = parseTime(time2)\n const minutes1 = value1.minutes + value1.hours * 60\n const minutes2 = value2.minutes + value2.hours * 60\n if (minutes1 === minutes2) {\n return 0\n }\n return minutes1 > minutes2 ? 1 : -1\n}\nconst padTime = (time: number | string) => {\n return `${time}`.padStart(2, '0')\n}\nconst formatTime = (time: Time): string => {\n return `${padTime(time.hours)}:${padTime(time.minutes)}`\n}\nconst nextTime = (time: string, step: string): string => {\n const timeValue = parseTime(time)\n const stepValue = parseTime(step)\n const next = {\n hours: timeValue.hours,\n minutes: timeValue.minutes,\n }\n next.minutes += stepValue.minutes\n next.hours += stepValue.hours\n next.hours += Math.floor(next.minutes / 60)\n next.minutes = next.minutes % 60\n return formatTime(next)\n}\n\nexport default defineComponent({\n name: 'ElTimeSelect',\n components: { ElSelect, ElOption, ElIcon },\n model: {\n prop: 'value',\n event: 'change',\n },\n props: {\n format: {\n type: String,\n default: 'HH:mm',\n },\n modelValue: String,\n disabled: {\n type: Boolean,\n default: false,\n },\n editable: {\n type: Boolean,\n default: true,\n },\n clearable: {\n type: Boolean,\n default: true,\n },\n size: {\n type: String as PropType<ComponentSize>,\n default: 'default',\n validator: (value: string) =>\n !value || ['large', 'default', 'small'].indexOf(value) !== -1,\n },\n placeholder: {\n type: String,\n default: '',\n },\n start: {\n type: String,\n default: '09:00',\n },\n end: {\n type: String,\n default: '18:00',\n },\n step: {\n type: String,\n default: '00:30',\n },\n minTime: {\n type: String,\n default: '',\n },\n maxTime: {\n type: String,\n default: '',\n },\n name: {\n type: String,\n default: '',\n },\n prefixIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: Clock,\n },\n clearIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: CircleClose,\n },\n },\n emits: ['change', 'blur', 'focus', 'update:modelValue'],\n setup(props) {\n // computed\n const select = ref(null)\n const value = computed(() => props.modelValue)\n const start = computed(() => {\n const time = parseTime(props.start)\n return formatTime(time)\n })\n const end = computed(() => {\n const time = parseTime(props.end)\n return formatTime(time)\n })\n const step = computed(() => {\n const time = parseTime(props.step)\n return formatTime(time)\n })\n const minTime = computed(() => {\n const time = parseTime(props.minTime)\n return time ? formatTime(time) : null\n })\n const maxTime = computed(() => {\n const time = parseTime(props.maxTime)\n return time ? formatTime(time) : null\n })\n const items = computed(() => {\n const result = []\n if (props.start && props.end && props.step) {\n let current = start.value\n let currentTime\n while (compareTime(current, end.value) <= 0) {\n currentTime = dayjs(current, 'HH:mm').format(props.format)\n result.push({\n value: currentTime,\n disabled:\n compareTime(current, minTime.value || '-1:-1') <= 0 ||\n compareTime(current, maxTime.value || '100:100') >= 0,\n })\n current = nextTime(current, step.value)\n }\n }\n return result\n })\n const blur = () => {\n select.value?.blur?.()\n }\n const focus = () => {\n select.value?.focus?.()\n }\n\n return {\n select,\n value,\n items,\n blur,\n focus,\n }\n },\n})\n</script>\n"],"names":["_openBlock","_createBlock","_withCtx","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"time-select.mjs","sources":["../../../../../../packages/components/time-select/src/time-select.vue"],"sourcesContent":["<template>\n <el-select\n ref=\"select\"\n :model-value=\"value\"\n :disabled=\"disabled\"\n :clearable=\"clearable\"\n :clear-icon=\"clearIcon\"\n :size=\"size\"\n :placeholder=\"placeholder\"\n default-first-option\n :filterable=\"editable\"\n @update:model-value=\"(event) => $emit('update:modelValue', event)\"\n @change=\"(event) => $emit('change', event)\"\n @blur=\"(event) => $emit('blur', event)\"\n @focus=\"(event) => $emit('focus', event)\"\n >\n <el-option\n v-for=\"item in items\"\n :key=\"item.value\"\n :label=\"item.value\"\n :value=\"item.value\"\n :disabled=\"item.disabled\"\n />\n <template #prefix>\n <el-icon v-if=\"prefixIcon\" class=\"el-input__prefix-icon\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </template>\n </el-select>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, computed, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat'\nimport ElSelect from '@element-plus/components/select'\nimport ElIcon from '@element-plus/components/icon'\nimport { CircleClose, Clock } from '@element-plus/icons-vue'\n\nimport type { PropType, Component } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\ndayjs.extend(customParseFormat)\n\nconst { Option: ElOption } = ElSelect\n\ninterface Time {\n hours: number\n minutes: number\n}\n\nconst parseTime = (time: string): null | Time => {\n const values = (time || '').split(':')\n if (values.length >= 2) {\n let hours = parseInt(values[0], 10)\n const minutes = parseInt(values[1], 10)\n const timeUpper = time.toUpperCase()\n if (timeUpper.includes('AM') && hours === 12) {\n hours = 0\n } else if (timeUpper.includes('PM') && hours !== 12) {\n hours += 12\n }\n return {\n hours,\n minutes,\n }\n }\n return null\n}\nconst compareTime = (time1: string, time2: string): number => {\n const value1 = parseTime(time1)\n const value2 = parseTime(time2)\n const minutes1 = value1.minutes + value1.hours * 60\n const minutes2 = value2.minutes + value2.hours * 60\n if (minutes1 === minutes2) {\n return 0\n }\n return minutes1 > minutes2 ? 1 : -1\n}\nconst padTime = (time: number | string) => {\n return `${time}`.padStart(2, '0')\n}\nconst formatTime = (time: Time): string => {\n return `${padTime(time.hours)}:${padTime(time.minutes)}`\n}\nconst nextTime = (time: string, step: string): string => {\n const timeValue = parseTime(time)\n const stepValue = parseTime(step)\n const next = {\n hours: timeValue.hours,\n minutes: timeValue.minutes,\n }\n next.minutes += stepValue.minutes\n next.hours += stepValue.hours\n next.hours += Math.floor(next.minutes / 60)\n next.minutes = next.minutes % 60\n return formatTime(next)\n}\n\nexport default defineComponent({\n name: 'ElTimeSelect',\n components: { ElSelect, ElOption, ElIcon },\n model: {\n prop: 'value',\n event: 'change',\n },\n props: {\n format: {\n type: String,\n default: 'HH:mm',\n },\n modelValue: String,\n disabled: {\n type: Boolean,\n default: false,\n },\n editable: {\n type: Boolean,\n default: true,\n },\n clearable: {\n type: Boolean,\n default: true,\n },\n size: {\n type: String as PropType<ComponentSize>,\n default: 'default',\n validator: (value: string) =>\n !value || ['large', 'default', 'small'].indexOf(value) !== -1,\n },\n placeholder: {\n type: String,\n default: '',\n },\n start: {\n type: String,\n default: '09:00',\n },\n end: {\n type: String,\n default: '18:00',\n },\n step: {\n type: String,\n default: '00:30',\n },\n minTime: {\n type: String,\n default: '',\n },\n maxTime: {\n type: String,\n default: '',\n },\n name: {\n type: String,\n default: '',\n },\n prefixIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: Clock,\n },\n clearIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: CircleClose,\n },\n },\n emits: ['change', 'blur', 'focus', 'update:modelValue'],\n setup(props) {\n // computed\n const select = ref(null)\n const value = computed(() => props.modelValue)\n const start = computed(() => {\n const time = parseTime(props.start)\n return formatTime(time)\n })\n const end = computed(() => {\n const time = parseTime(props.end)\n return formatTime(time)\n })\n const step = computed(() => {\n const time = parseTime(props.step)\n return formatTime(time)\n })\n const minTime = computed(() => {\n const time = parseTime(props.minTime)\n return time ? formatTime(time) : null\n })\n const maxTime = computed(() => {\n const time = parseTime(props.maxTime)\n return time ? formatTime(time) : null\n })\n const items = computed(() => {\n const result = []\n if (props.start && props.end && props.step) {\n let current = start.value\n let currentTime\n while (compareTime(current, end.value) <= 0) {\n currentTime = dayjs(current, 'HH:mm').format(props.format)\n result.push({\n value: currentTime,\n disabled:\n compareTime(current, minTime.value || '-1:-1') <= 0 ||\n compareTime(current, maxTime.value || '100:100') >= 0,\n })\n current = nextTime(current, step.value)\n }\n }\n return result\n })\n const blur = () => {\n select.value?.blur?.()\n }\n const focus = () => {\n select.value?.focus?.()\n }\n\n return {\n select,\n value,\n items,\n blur,\n focus,\n }\n },\n})\n</script>\n"],"names":[],"mappings":"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"}
@@ -37,7 +37,10 @@ const _sfc_main = defineComponent({
37
37
  const shouldShow = computed(() => {
38
38
  return props.disabled ? false : unref(open);
39
39
  });
40
- const contentStyle = computed(() => props.style ?? {});
40
+ const contentStyle = computed(() => {
41
+ var _a;
42
+ return (_a = props.style) != null ? _a : {};
43
+ });
41
44
  const ariaHidden = computed(() => !unref(open));
42
45
  useEscapeKeydown(onClose);
43
46
  const onTransitionLeave = () => {
@@ -58,7 +61,8 @@ const _sfc_main = defineComponent({
58
61
  }
59
62
  });
60
63
  const onBeforeEnter = () => {
61
- contentRef.value?.updatePopper?.();
64
+ var _a, _b;
65
+ (_b = (_a = contentRef.value) == null ? void 0 : _a.updatePopper) == null ? void 0 : _b.call(_a);
62
66
  };
63
67
  const onAfterShow = () => {
64
68
  onShow();
@@ -67,7 +71,8 @@ const _sfc_main = defineComponent({
67
71
  watch(() => unref(open), (val) => {
68
72
  if (val) {
69
73
  stopHandle = onClickOutside(computed(() => {
70
- return contentRef.value?.popperContentRef;
74
+ var _a;
75
+ return (_a = contentRef.value) == null ? void 0 : _a.popperContentRef;
71
76
  }), () => {
72
77
  if (unref(controlled))
73
78
  return;
@@ -77,7 +82,7 @@ const _sfc_main = defineComponent({
77
82
  }
78
83
  });
79
84
  } else {
80
- stopHandle?.();
85
+ stopHandle == null ? void 0 : stopHandle();
81
86
  }
82
87
  }, {
83
88
  flush: "post"
@@ -1 +1 @@
1
- {"version":3,"file":"content.mjs","sources":["../../../../../../packages/components/tooltip/src/content.vue"],"sourcesContent":["<template>\n <teleport :disabled=\"!teleported\" :to=\"appendTo\">\n <transition\n :name=\"transition\"\n @after-leave=\"onTransitionLeave\"\n @before-enter=\"onBeforeEnter\"\n @after-enter=\"onAfterShow\"\n >\n <el-popper-content\n v-if=\"shouldRender\"\n v-show=\"shouldShow\"\n ref=\"contentRef\"\n v-bind=\"$attrs\"\n :aria-hidden=\"ariaHidden\"\n :boundaries-padding=\"boundariesPadding\"\n :fallback-placements=\"fallbackPlacements\"\n :gpu-acceleration=\"gpuAcceleration\"\n :offset=\"offset\"\n :placement=\"placement\"\n :popper-options=\"popperOptions\"\n :strategy=\"strategy\"\n :effect=\"effect\"\n :enterable=\"enterable\"\n :pure=\"pure\"\n :popper-class=\"popperClass\"\n :popper-style=\"[popperStyle, contentStyle]\"\n :reference-el=\"referenceEl\"\n :z-index=\"zIndex\"\n @mouseenter=\"onContentEnter\"\n @mouseleave=\"onContentLeave\"\n >\n <slot />\n <el-visually-hidden :id=\"id\" role=\"tooltip\">\n {{ ariaLabel }}\n </el-visually-hidden>\n </el-popper-content>\n </transition>\n </teleport>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, inject, ref, unref, watch } from 'vue'\nimport { onClickOutside } from '@vueuse/core'\nimport { ElPopperContent } from '@element-plus/components/popper'\nimport { ElVisuallyHidden } from '@element-plus/components/visual-hidden'\nimport { composeEventHandlers } from '@element-plus/utils/dom'\nimport { useEscapeKeydown } from '@element-plus/hooks'\n\nimport { useTooltipContentProps } from './tooltip'\nimport { TOOLTIP_INJECTION_KEY } from './tokens'\n\nexport default defineComponent({\n name: 'ElTooltipContent',\n components: {\n ElPopperContent,\n ElVisuallyHidden,\n },\n inheritAttrs: false,\n props: useTooltipContentProps,\n setup(props) {\n const contentRef = ref<InstanceType<typeof ElPopperContent> | null>(null)\n const intermediateOpen = ref(false)\n const entering = ref(false)\n const leaving = ref(false)\n const { controlled, id, open, trigger, onClose, onOpen, onShow, onHide } =\n inject(TOOLTIP_INJECTION_KEY, undefined)!\n const persistentRef = computed(() => {\n // For testing, we would always want the content to be rendered\n // to the DOM, so we need to return true here.\n if (process.env.NODE_ENV === 'test') {\n return true\n }\n return props.persistent\n })\n\n const shouldRender = computed(() => {\n return unref(persistentRef) ? true : unref(open)\n })\n\n const shouldShow = computed(() => {\n return props.disabled ? false : unref(open)\n })\n\n const contentStyle = computed(() => (props.style ?? {}) as any)\n\n const ariaHidden = computed(() => !unref(open))\n\n useEscapeKeydown(onClose)\n\n const onTransitionLeave = () => {\n onHide()\n }\n\n const stopWhenControlled = () => {\n if (unref(controlled)) return true\n }\n\n const onContentEnter = composeEventHandlers(stopWhenControlled, () => {\n if (props.enterable && unref(trigger) === 'hover') {\n onOpen()\n }\n })\n\n const onContentLeave = composeEventHandlers(stopWhenControlled, () => {\n if (unref(trigger) === 'hover') {\n onClose()\n }\n })\n\n const onBeforeEnter = () => {\n contentRef.value?.updatePopper?.()\n }\n\n const onAfterShow = () => {\n onShow()\n }\n\n let stopHandle: ReturnType<typeof onClickOutside>\n\n watch(\n () => unref(open),\n (val) => {\n if (val) {\n stopHandle = onClickOutside(\n computed(() => {\n return contentRef.value?.popperContentRef\n }),\n () => {\n if (unref(controlled)) return\n const $trigger = unref(trigger)\n if ($trigger !== 'hover') {\n onClose()\n }\n }\n )\n } else {\n stopHandle?.()\n }\n },\n {\n flush: 'post',\n }\n )\n\n return {\n ariaHidden,\n entering,\n leaving,\n id,\n intermediateOpen,\n contentStyle,\n contentRef,\n shouldRender,\n shouldShow,\n open,\n onAfterShow,\n onBeforeEnter,\n onContentEnter,\n onContentLeave,\n onTransitionLeave,\n }\n },\n})\n</script>\n"],"names":["_openBlock","_createBlock","_Teleport","_Transition","_withCtx","_renderSlot"],"mappings":";;;;;;;;;;;;;AAmDA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA;AAAA,EAEF,cAAc;AAAA,EACd,OAAO;AAAA,EACP,MAAM,OAAO;AACX,UAAM,aAAa,IAAiD;AACpE,UAAM,mBAAmB,IAAI;AAC7B,UAAM,WAAW,IAAI;AACrB,UAAM,UAAU,IAAI;AACpB,UAAM,EAAE,YAAY,IAAI,MAAM,SAAS,SAAS,QAAQ,QAAQ,WAC9D,OAAO,uBAAuB;AAChC,UAAM,gBAAgB,SAAS,MAAM;AAGnC,UAAI,QAAQ,IAAI,aAAa,QAAQ;AACnC,eAAO;AAAA;AAET,aAAO,MAAM;AAAA;AAGf,UAAM,eAAe,SAAS,MAAM;AAClC,aAAO,MAAM,iBAAiB,OAAO,MAAM;AAAA;AAG7C,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,MAAM,WAAW,QAAQ,MAAM;AAAA;AAGxC,UAAM,eAAe,SAAS,MAAO,MAAM,SAAS;AAEpD,UAAM,aAAa,SAAS,MAAM,CAAC,MAAM;AAEzC,qBAAiB;AAEjB,UAAM,oBAAoB,MAAM;AAC9B;AAAA;AAGF,UAAM,qBAAqB,MAAM;AAC/B,UAAI,MAAM;AAAa,eAAO;AAAA;AAGhC,UAAM,iBAAiB,qBAAqB,oBAAoB,MAAM;AACpE,UAAI,MAAM,aAAa,MAAM,aAAa,SAAS;AACjD;AAAA;AAAA;AAIJ,UAAM,iBAAiB,qBAAqB,oBAAoB,MAAM;AACpE,UAAI,MAAM,aAAa,SAAS;AAC9B;AAAA;AAAA;AAIJ,UAAM,gBAAgB,MAAM;AAC1B,iBAAW,OAAO;AAAA;AAGpB,UAAM,cAAc,MAAM;AACxB;AAAA;AAGF,QAAI;AAEJ,UACE,MAAM,MAAM,OACZ,CAAC,QAAQ;AACP,UAAI,KAAK;AACP,qBAAa,eACX,SAAS,MAAM;AACb,iBAAO,WAAW,OAAO;AAAA,YAE3B,MAAM;AACJ,cAAI,MAAM;AAAa;AACvB,gBAAM,WAAW,MAAM;AACvB,cAAI,aAAa,SAAS;AACxB;AAAA;AAAA;AAAA,aAID;AACL;AAAA;AAAA,OAGJ;AAAA,MACE,OAAO;AAAA;AAIX,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;SA9JOA,aAAWC,YAAUC;AAAA,IAAG,UAAI;AAAA;KACrC;AAAA,gBACSC,YAAU;AAAA,MAChB;AAAA,MACA,cAAY,KAAE;AAAA,MACd,eAAa;AAAA;;eAGNC,cAAY;AAAA;UAElB,KAAI;AAAA,eACI;AAAA,WACP,aAAW;AAAA,UACX,oBAAkB;AAAA,UAClB,sBAAmB,KAAE;AAAA,UACrB,uBAAkB;AAAA,UAClB,oBAAc;AAAA,UACd,aAAW;AAAA,UACX,gBAAc;AAAA,UACd,kBAAU,KAAQ;AAAA,UAClB,UAAQ;AAAA,UACR,aAAW;AAAA,UACX,WAAM,KAAI;AAAA,UACV;AAAA,UACA,gBAAY,KAAG;AAAA,UACf,gBAAc,mBAAW;AAAA,UACzB,gBAAS;AAAA,UACT,gBAAY;AAAA,UACZ,cAAY;AAAA;;mBAEbA,QAAQ;AAAA,YACRC,gBAEqB;AAAA,wBAFM;AAAA,cAAE,IAAI,KAAC;AAAA;;;;;;;;;eAtB1B,gBAAU;AAAA;;;;;;;;;;;"}
1
+ {"version":3,"file":"content.mjs","sources":["../../../../../../packages/components/tooltip/src/content.vue"],"sourcesContent":["<template>\n <teleport :disabled=\"!teleported\" :to=\"appendTo\">\n <transition\n :name=\"transition\"\n @after-leave=\"onTransitionLeave\"\n @before-enter=\"onBeforeEnter\"\n @after-enter=\"onAfterShow\"\n >\n <el-popper-content\n v-if=\"shouldRender\"\n v-show=\"shouldShow\"\n ref=\"contentRef\"\n v-bind=\"$attrs\"\n :aria-hidden=\"ariaHidden\"\n :boundaries-padding=\"boundariesPadding\"\n :fallback-placements=\"fallbackPlacements\"\n :gpu-acceleration=\"gpuAcceleration\"\n :offset=\"offset\"\n :placement=\"placement\"\n :popper-options=\"popperOptions\"\n :strategy=\"strategy\"\n :effect=\"effect\"\n :enterable=\"enterable\"\n :pure=\"pure\"\n :popper-class=\"popperClass\"\n :popper-style=\"[popperStyle, contentStyle]\"\n :reference-el=\"referenceEl\"\n :z-index=\"zIndex\"\n @mouseenter=\"onContentEnter\"\n @mouseleave=\"onContentLeave\"\n >\n <slot />\n <el-visually-hidden :id=\"id\" role=\"tooltip\">\n {{ ariaLabel }}\n </el-visually-hidden>\n </el-popper-content>\n </transition>\n </teleport>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, inject, ref, unref, watch } from 'vue'\nimport { onClickOutside } from '@vueuse/core'\nimport { ElPopperContent } from '@element-plus/components/popper'\nimport { ElVisuallyHidden } from '@element-plus/components/visual-hidden'\nimport { composeEventHandlers } from '@element-plus/utils/dom'\nimport { useEscapeKeydown } from '@element-plus/hooks'\n\nimport { useTooltipContentProps } from './tooltip'\nimport { TOOLTIP_INJECTION_KEY } from './tokens'\n\nexport default defineComponent({\n name: 'ElTooltipContent',\n components: {\n ElPopperContent,\n ElVisuallyHidden,\n },\n inheritAttrs: false,\n props: useTooltipContentProps,\n setup(props) {\n const contentRef = ref<InstanceType<typeof ElPopperContent> | null>(null)\n const intermediateOpen = ref(false)\n const entering = ref(false)\n const leaving = ref(false)\n const { controlled, id, open, trigger, onClose, onOpen, onShow, onHide } =\n inject(TOOLTIP_INJECTION_KEY, undefined)!\n const persistentRef = computed(() => {\n // For testing, we would always want the content to be rendered\n // to the DOM, so we need to return true here.\n if (process.env.NODE_ENV === 'test') {\n return true\n }\n return props.persistent\n })\n\n const shouldRender = computed(() => {\n return unref(persistentRef) ? true : unref(open)\n })\n\n const shouldShow = computed(() => {\n return props.disabled ? false : unref(open)\n })\n\n const contentStyle = computed(() => (props.style ?? {}) as any)\n\n const ariaHidden = computed(() => !unref(open))\n\n useEscapeKeydown(onClose)\n\n const onTransitionLeave = () => {\n onHide()\n }\n\n const stopWhenControlled = () => {\n if (unref(controlled)) return true\n }\n\n const onContentEnter = composeEventHandlers(stopWhenControlled, () => {\n if (props.enterable && unref(trigger) === 'hover') {\n onOpen()\n }\n })\n\n const onContentLeave = composeEventHandlers(stopWhenControlled, () => {\n if (unref(trigger) === 'hover') {\n onClose()\n }\n })\n\n const onBeforeEnter = () => {\n contentRef.value?.updatePopper?.()\n }\n\n const onAfterShow = () => {\n onShow()\n }\n\n let stopHandle: ReturnType<typeof onClickOutside>\n\n watch(\n () => unref(open),\n (val) => {\n if (val) {\n stopHandle = onClickOutside(\n computed(() => {\n return contentRef.value?.popperContentRef\n }),\n () => {\n if (unref(controlled)) return\n const $trigger = unref(trigger)\n if ($trigger !== 'hover') {\n onClose()\n }\n }\n )\n } else {\n stopHandle?.()\n }\n },\n {\n flush: 'post',\n }\n )\n\n return {\n ariaHidden,\n entering,\n leaving,\n id,\n intermediateOpen,\n contentStyle,\n contentRef,\n shouldRender,\n shouldShow,\n open,\n onAfterShow,\n onBeforeEnter,\n onContentEnter,\n onContentLeave,\n onTransitionLeave,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;AAmDA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA;AAAA,EAEF,cAAc;AAAA,EACd,OAAO;AAAA,EACP,MAAM,OAAO;AACX,UAAM,aAAa,IAAiD;AACpE,UAAM,mBAAmB,IAAI;AAC7B,UAAM,WAAW,IAAI;AACrB,UAAM,UAAU,IAAI;AACpB,UAAM,EAAE,YAAY,IAAI,MAAM,SAAS,SAAS,QAAQ,QAAQ,WAC9D,OAAO,uBAAuB;AAChC,UAAM,gBAAgB,SAAS,MAAM;AAGnC,UAAI,QAAQ,IAAI,aAAa,QAAQ;AACnC,eAAO;AAAA;AAET,aAAO,MAAM;AAAA;AAGf,UAAM,eAAe,SAAS,MAAM;AAClC,aAAO,MAAM,iBAAiB,OAAO,MAAM;AAAA;AAG7C,UAAM,aAAa,SAAS,MAAM;AAChC,aAAO,MAAM,WAAW,QAAQ,MAAM;AAAA;AAGxC,UAAM,eAAe,SAAS,MAAO;AAErC,UAAM;AAEN;AAEA;AACE;AAAA;AAGF,UAAM;AACJ;AAAuB;AAAO;AAGhC,UAAM,iBAAiB;AACrB;AACE;AAAA;AAAA;AAIJ;AACE;AACE;AAAA;AAAA;AAIJ;AACE;AAAkB;AAGpB,UAAM;AACJ;AAAA;AAGF;AAEA,UACE,oBACC;AACC,eAAS;AACP;AAEI;AAAyB;AAGzB;AAAuB;AACvB,gBAAM;AACN;AACE;AAAA;AAAA;AAAA;AAKN;AAAA;AAAA;AAGJ;AACS;AAIX;AAAO;AACL;AACA,MACA;AAAA,MACA;AAAA;AACA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;;AA9JmC;;AACrC;AACmB;AAChB,oBACY;AAAE,MACd,eAAa;AAAA;;;AAGM;;AAEd;AACI;AACI,6BACO;AAAA;AACG,UACrB;AAAkB,UAClB;AAAc;AACH,UACX;AAAc,UACd;AAAkB,UAClB;AAAQ,UACR;AAAW,UACX;AAAU,UACV;AAAA,UACA,gBAAY;AAAG,UACf;AAAyB,UACzB;AAAS,UACT,gBAAY;AAAA,UACZ;AAAY;;;AAEL;AAGa;AAFM;AAAO;;;;;;;;;eAtB1B;AAAU;;;;;;;;;;;;;;;;"}
@@ -49,9 +49,10 @@ const _sfc_main = defineComponent({
49
49
  const id = useId();
50
50
  const popperRef = ref(null);
51
51
  const updatePopper = () => {
52
+ var _a;
52
53
  const popperComponent = unref(popperRef);
53
54
  if (popperComponent) {
54
- popperComponent.popperInstanceRef?.update();
55
+ (_a = popperComponent.popperInstanceRef) == null ? void 0 : _a.update();
55
56
  }
56
57
  };
57
58
  const open = ref(false);
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip2.mjs","sources":["../../../../../../packages/components/tooltip/src/tooltip.vue"],"sourcesContent":["<template>\n <el-popper ref=\"popperRef\">\n <el-tooltip-trigger\n :disabled=\"disabled\"\n :trigger=\"trigger\"\n :virtual-ref=\"virtualRef\"\n :virtual-triggering=\"virtualTriggering\"\n >\n <slot v-if=\"$slots.default\" />\n </el-tooltip-trigger>\n <el-tooltip-content\n :aria-label=\"ariaLabel\"\n :boundaries-padding=\"boundariesPadding\"\n :content=\"content\"\n :disabled=\"disabled\"\n :effect=\"effect\"\n :enterable=\"enterable\"\n :fallback-placements=\"fallbackPlacements\"\n :hide-after=\"hideAfter\"\n :gpu-acceleration=\"gpuAcceleration\"\n :offset=\"offset\"\n :persistent=\"persistent\"\n :popper-class=\"popperClass\"\n :popper-style=\"popperStyle\"\n :placement=\"placement\"\n :popper-options=\"popperOptions\"\n :pure=\"pure\"\n :raw-content=\"rawContent\"\n :reference-el=\"referenceEl\"\n :show-after=\"compatShowAfter\"\n :strategy=\"strategy\"\n :teleported=\"teleported\"\n :transition=\"transition\"\n :z-index=\"zIndex\"\n >\n <slot name=\"content\">\n <span v-if=\"rawContent\" v-html=\"content\"></span>\n <span v-else>{{ content }}</span>\n </slot>\n <el-popper-arrow v-if=\"compatShowArrow\" :arrow-offset=\"arrowOffset\" />\n </el-tooltip-content>\n </el-popper>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n ref,\n provide,\n toRef,\n readonly,\n unref,\n} from 'vue'\nimport {\n ElPopper,\n ElPopperArrow,\n usePopperArrowProps,\n} from '@element-plus/components/popper'\n\nimport { debugWarn } from '@element-plus/utils/error'\nimport { isBool, isUndefined } from '@element-plus/utils/util'\nimport {\n usePopperContainer,\n useId,\n createModelToggleComposable,\n useDelayedToggle,\n} from '@element-plus/hooks'\nimport ElTooltipContent from './content.vue'\nimport ElTooltipTrigger from './trigger.vue'\nimport {\n useTooltipContentProps,\n useTooltipTriggerProps,\n useTooltipProps,\n} from './tooltip'\nimport { TOOLTIP_INJECTION_KEY } from './tokens'\n\nconst { useModelToggleProps, useModelToggle, useModelToggleEmits } =\n createModelToggleComposable('visible' as const)\n\nexport default defineComponent({\n name: 'ElTooltip',\n components: {\n ElPopper,\n ElPopperArrow,\n ElTooltipContent,\n ElTooltipTrigger,\n },\n props: {\n ...useModelToggleProps,\n ...useTooltipContentProps,\n ...useTooltipTriggerProps,\n ...usePopperArrowProps,\n ...useTooltipProps,\n },\n emits: [...useModelToggleEmits, 'show', 'hide'],\n setup(props, { emit }) {\n usePopperContainer()\n const compatShowAfter = computed(() => {\n if (!isUndefined(props.openDelay)) {\n debugWarn(\n 'ElTooltip',\n 'open-delay is about to be deprecated in the next major version, please use `show-after` instead'\n )\n }\n return props.openDelay || (props.showAfter as number)\n })\n const compatShowArrow = computed(() => {\n if (!isUndefined(props.visibleArrow)) {\n debugWarn(\n 'ElTooltip',\n '`visible-arrow` is about to be deprecated in the next major version, please use `show-arrow` instead'\n )\n }\n return isBool(props.visibleArrow) ? props.visibleArrow : props.showArrow\n })\n\n const id = useId()\n const popperRef = ref<InstanceType<typeof ElPopper> | null>(null)\n\n const updatePopper = () => {\n const popperComponent = unref(popperRef)\n if (popperComponent) {\n popperComponent.popperInstanceRef?.update()\n }\n }\n const open = ref(false)\n\n const { show, hide } = useModelToggle({\n indicator: open,\n })\n\n const { onOpen, onClose } = useDelayedToggle({\n showAfter: compatShowAfter,\n hideAfter: toRef(props, 'hideAfter'),\n open: show,\n close: hide,\n })\n\n const controlled = computed(() => isBool(props.visible))\n\n provide(TOOLTIP_INJECTION_KEY, {\n controlled,\n id,\n open: readonly(open),\n trigger: toRef(props, 'trigger'),\n onOpen,\n onClose,\n onToggle: () => {\n if (unref(open)) {\n onClose()\n } else {\n onOpen()\n }\n },\n onShow: () => {\n emit('show')\n },\n onHide: () => {\n emit('hide')\n },\n updatePopper,\n })\n\n return {\n compatShowAfter,\n compatShowArrow,\n popperRef,\n open,\n hide,\n updatePopper,\n onOpen,\n onClose,\n }\n },\n})\n</script>\n"],"names":["_createBlock","_withCtx"],"mappings":";;;;;;;;;;;;;;;;;AA6EA,MAAM,EAAE,qBAAqB,gBAAgB,wBAC3C,4BAA4B;AAE9B,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,EAEF,OAAO;AAAA,OACF;AAAA,OACA;AAAA,OACA;AAAA,OACA;AAAA,OACA;AAAA;AAAA,EAEL,OAAO,CAAC,GAAG,qBAAqB,QAAQ;AAAA,EACxC,MAAM,OAAO,EAAE,QAAQ;AACrB;AACA,UAAM,kBAAkB,SAAS,MAAM;AACrC,UAAI,CAAC,YAAY,MAAM,YAAY;AACjC,kBACE,aACA;AAAA;AAGJ,aAAO,MAAM,aAAc,MAAM;AAAA;AAEnC,UAAM,kBAAkB,SAAS,MAAM;AACrC,UAAI,CAAC,YAAY,MAAM,eAAe;AACpC,kBACE,aACA;AAAA;AAGJ,aAAO,OAAO,MAAM,gBAAgB,MAAM,eAAe,MAAM;AAAA;AAGjE,UAAM,KAAK;AACX,UAAM,YAAY,IAA0C;AAE5D,UAAM,eAAe,MAAM;AACzB,YAAM,kBAAkB,MAAM;AAC9B,UAAI,iBAAiB;AACnB,wBAAgB,mBAAmB;AAAA;AAAA;AAGvC,UAAM,OAAO,IAAI;AAEjB,UAAM,EAAE,MAAM,SAAS,eAAe;AAAA,MACpC,WAAW;AAAA;AAGb,UAAM,EAAE,QAAQ,YAAY,iBAAiB;AAAA,MAC3C,WAAW;AAAA,MACX,WAAW,MAAM,OAAO;AAAA,MACxB,MAAM;AAAA,MACN,OAAO;AAAA;AAGT,UAAM,aAAa,SAAS,MAAM,OAAO,MAAM;AAE/C,YAAQ,uBAAuB;AAAA,MAC7B;AAAA,MACA;AAAA,MACA,MAAM,SAAS;AAAA,MACf,SAAS,MAAM,OAAO;AAAA,MACtB;AAAA,MACA;AAAA,MACA,UAAU,MAAM;AACd,YAAI,MAAM,OAAO;AACf;AAAA,eACK;AACL;AAAA;AAAA;AAAA,MAGJ,QAAQ,MAAM;AACZ,aAAK;AAAA;AAAA,MAEP,QAAQ,MAAM;AACZ,aAAK;AAAA;AAAA,MAEP;AAAA;AAGF,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;;;;sBAnKmBA;AAAA,aAPrBC,QAOqB;AAAA,kBANR,+BAAQ;AAAA,QAClB,UAAS;AAAA,QACT,cAAW;AAAA,QACX,oBAAkB;AAAA;;iBAEPA,QAAO,MAAO;AAAA,eAA1B;;;SAEF,GA8BqB;AAAA,kBA7BlB,+BAAqB;AAAA,QACrB;AAAA,QACA,sBAAgB;AAAA,QAChB,SAAQ,KAAE;AAAA,QACV,UAAQ;AAAA,QACR,aAAW;AAAA,QACX;AAAA,QACA,uBAAY,KAAS;AAAA,QACrB,mBAAgB;AAAA,QAChB,oBAAc;AAAA,QACd,aAAY;AAAA,QACZ,iBAAc;AAAA,QACd,gBAAc;AAAA,QACd,gBAAW;AAAA,QACX,gBAAc;AAAA,QACd,kBAAU;AAAA,QACV;AAAA,QACA,eAAY,KAAE;AAAA,QACd,gBAAY;AAAA,QACZ,cAAU;AAAA,QACV,UAAU,KAAE;AAAA,QACZ,YAAY;AAAA,QACZ,YAAS;AAAA;;iBAEVA,QAGO;AAAA,qBAFO,aAAU;AAAA;cAAE;AAAA;wBACxB;;;YAEuC;AAAA;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"tooltip2.mjs","sources":["../../../../../../packages/components/tooltip/src/tooltip.vue"],"sourcesContent":["<template>\n <el-popper ref=\"popperRef\">\n <el-tooltip-trigger\n :disabled=\"disabled\"\n :trigger=\"trigger\"\n :virtual-ref=\"virtualRef\"\n :virtual-triggering=\"virtualTriggering\"\n >\n <slot v-if=\"$slots.default\" />\n </el-tooltip-trigger>\n <el-tooltip-content\n :aria-label=\"ariaLabel\"\n :boundaries-padding=\"boundariesPadding\"\n :content=\"content\"\n :disabled=\"disabled\"\n :effect=\"effect\"\n :enterable=\"enterable\"\n :fallback-placements=\"fallbackPlacements\"\n :hide-after=\"hideAfter\"\n :gpu-acceleration=\"gpuAcceleration\"\n :offset=\"offset\"\n :persistent=\"persistent\"\n :popper-class=\"popperClass\"\n :popper-style=\"popperStyle\"\n :placement=\"placement\"\n :popper-options=\"popperOptions\"\n :pure=\"pure\"\n :raw-content=\"rawContent\"\n :reference-el=\"referenceEl\"\n :show-after=\"compatShowAfter\"\n :strategy=\"strategy\"\n :teleported=\"teleported\"\n :transition=\"transition\"\n :z-index=\"zIndex\"\n >\n <slot name=\"content\">\n <span v-if=\"rawContent\" v-html=\"content\"></span>\n <span v-else>{{ content }}</span>\n </slot>\n <el-popper-arrow v-if=\"compatShowArrow\" :arrow-offset=\"arrowOffset\" />\n </el-tooltip-content>\n </el-popper>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n ref,\n provide,\n toRef,\n readonly,\n unref,\n} from 'vue'\nimport {\n ElPopper,\n ElPopperArrow,\n usePopperArrowProps,\n} from '@element-plus/components/popper'\n\nimport { debugWarn } from '@element-plus/utils/error'\nimport { isBool, isUndefined } from '@element-plus/utils/util'\nimport {\n usePopperContainer,\n useId,\n createModelToggleComposable,\n useDelayedToggle,\n} from '@element-plus/hooks'\nimport ElTooltipContent from './content.vue'\nimport ElTooltipTrigger from './trigger.vue'\nimport {\n useTooltipContentProps,\n useTooltipTriggerProps,\n useTooltipProps,\n} from './tooltip'\nimport { TOOLTIP_INJECTION_KEY } from './tokens'\n\nconst { useModelToggleProps, useModelToggle, useModelToggleEmits } =\n createModelToggleComposable('visible' as const)\n\nexport default defineComponent({\n name: 'ElTooltip',\n components: {\n ElPopper,\n ElPopperArrow,\n ElTooltipContent,\n ElTooltipTrigger,\n },\n props: {\n ...useModelToggleProps,\n ...useTooltipContentProps,\n ...useTooltipTriggerProps,\n ...usePopperArrowProps,\n ...useTooltipProps,\n },\n emits: [...useModelToggleEmits, 'show', 'hide'],\n setup(props, { emit }) {\n usePopperContainer()\n const compatShowAfter = computed(() => {\n if (!isUndefined(props.openDelay)) {\n debugWarn(\n 'ElTooltip',\n 'open-delay is about to be deprecated in the next major version, please use `show-after` instead'\n )\n }\n return props.openDelay || (props.showAfter as number)\n })\n const compatShowArrow = computed(() => {\n if (!isUndefined(props.visibleArrow)) {\n debugWarn(\n 'ElTooltip',\n '`visible-arrow` is about to be deprecated in the next major version, please use `show-arrow` instead'\n )\n }\n return isBool(props.visibleArrow) ? props.visibleArrow : props.showArrow\n })\n\n const id = useId()\n const popperRef = ref<InstanceType<typeof ElPopper> | null>(null)\n\n const updatePopper = () => {\n const popperComponent = unref(popperRef)\n if (popperComponent) {\n popperComponent.popperInstanceRef?.update()\n }\n }\n const open = ref(false)\n\n const { show, hide } = useModelToggle({\n indicator: open,\n })\n\n const { onOpen, onClose } = useDelayedToggle({\n showAfter: compatShowAfter,\n hideAfter: toRef(props, 'hideAfter'),\n open: show,\n close: hide,\n })\n\n const controlled = computed(() => isBool(props.visible))\n\n provide(TOOLTIP_INJECTION_KEY, {\n controlled,\n id,\n open: readonly(open),\n trigger: toRef(props, 'trigger'),\n onOpen,\n onClose,\n onToggle: () => {\n if (unref(open)) {\n onClose()\n } else {\n onOpen()\n }\n },\n onShow: () => {\n emit('show')\n },\n onHide: () => {\n emit('hide')\n },\n updatePopper,\n })\n\n return {\n compatShowAfter,\n compatShowArrow,\n popperRef,\n open,\n hide,\n updatePopper,\n onOpen,\n onClose,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AA6EA,MAAM,EAAE,qBAAqB,gBAAgB,wBAC3C,4BAA4B;AAE9B,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,EAEF,OAAO;AAAA,OACF;AAAA,OACA;AAAA,OACA;AAAA,OACA;AAAA,OACA;AAAA;AAAA,EAEL,OAAO,CAAC,GAAG,qBAAqB,QAAQ;AAAA,EACxC,MAAM,OAAO,EAAE,QAAQ;AACrB;AACA,UAAM,kBAAkB,SAAS,MAAM;AACrC,UAAI,CAAC,YAAY,MAAM,YAAY;AACjC,kBACE,aACA;AAAA;AAGJ,aAAO,MAAM,aAAc,MAAM;AAAA;AAEnC,UAAM,kBAAkB,SAAS,MAAM;AACrC,UAAI,CAAC,YAAY,MAAM,eAAe;AACpC,kBACE,aACA;AAAA;AAGJ,aAAO,OAAO,MAAM,gBAAgB,MAAM,eAAe,MAAM;AAAA;AAGjE,UAAM,KAAK;AACX,UAAM,YAAY,IAA0C;AAE5D,UAAM,eAAe,MAAM;AACzB,YAAM;AACN,2BAAqB;AACnB;AAAmC;AAAA;AAGvC;AAEA,UAAM,iBAAiB;AAAe;AACzB;AAGb;AAA6C;AAChC,MACX,WAAW;AAAa,MACxB;AAAM,MACN;AAAO;AAGT;AAEA;AAA+B;AAC7B,MACA;AAAA,MACA;AAAe,MACf,eAAe;AAAO,MACtB;AAAA,MACA;AAAA,MACA;AACE;AACE;AAAA;AAEA;AAAA;AAAA;AAAA;AAIF;AAAK;AAAA;AAGL;AAAK;AAAA;AAEP;AAGF;AAAO;AACL,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;;;;;AAnKmB;AAAA;AANA,iBACT;AAAA,QACT,cAAW;AAAA,QACX;AAAkB;;;AAEO,eAA1B;;;SAEF,GA8BqB;AAAA;AA7BG;AACrB,QACA;AAAgB,QAChB;AAAU,QACV;AAAQ,QACR;AAAW,QACX;AAAA,QACA;AAAqB,QACrB;AAAgB,QAChB;AAAc,QACd;AAAY,QACZ;AAAc,QACd,gBAAc;AAAA,QACd,gBAAW;AAAA,QACX,gBAAc;AAAA,QACd;AAAU,QACV;AAAA,QACA,eAAY;AAAE,QACd;AAAY,QACZ,cAAU;AAAA,QACV;AAAY,QACZ;AAAY,QACZ,YAAS;AAAA;;;AAKH;AAFiB;;AAAE;;;;;AAGe;;;;;;;;;;;;;;"}