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
@@ -1 +1 @@
1
- {"version":3,"file":"tab-bar2.js","sources":["../../../../../../packages/components/tabs/src/tab-bar.vue"],"sourcesContent":["<template>\n <div\n ref=\"bar$\"\n :class=\"['el-tabs__active-bar', `is-${rootTabs.props.tabPosition}`]\"\n :style=\"barStyle\"\n ></div>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n inject,\n getCurrentInstance,\n watch,\n nextTick,\n ref,\n} from 'vue'\nimport { capitalize } from '@vue/shared'\nimport { useResizeObserver } from '@vueuse/core'\nimport { tabsRootContextKey } from '@element-plus/tokens'\nimport { throwError } from '@element-plus/utils/error'\nimport { tabBar } from './tab-bar'\n\nimport type { CSSProperties } from 'vue'\n\nconst COMPONENT_NAME = 'ElTabBar'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: tabBar,\n\n setup(props) {\n const instance = getCurrentInstance()!\n const rootTabs = inject(tabsRootContextKey)\n if (!rootTabs) throwError(COMPONENT_NAME, 'must use with ElTabs')\n\n const bar$ = ref<HTMLDivElement>()\n const barStyle = ref()\n\n const getBarStyle = (): CSSProperties => {\n let offset = 0\n let tabSize = 0\n\n const sizeName = ['top', 'bottom'].includes(rootTabs.props.tabPosition)\n ? 'width'\n : 'height'\n const sizeDir = sizeName === 'width' ? 'x' : 'y'\n\n props.tabs.every((tab) => {\n const $el = instance.parent?.refs?.[\n `tab-${tab.paneName}`\n ] as HTMLElement\n if (!$el) return false\n\n if (!tab.active) {\n return true\n }\n\n tabSize = $el[`client${capitalize(sizeName)}`]\n const position = sizeDir === 'x' ? 'left' : 'top'\n offset =\n $el.getBoundingClientRect()[position] -\n ($el.parentElement?.getBoundingClientRect()[position] ?? 0)\n const tabStyles = window.getComputedStyle($el)\n\n if (sizeName === 'width') {\n if (props.tabs.length > 1) {\n tabSize -=\n parseFloat(tabStyles.paddingLeft) +\n parseFloat(tabStyles.paddingRight)\n }\n offset += parseFloat(tabStyles.paddingLeft)\n }\n return false\n })\n\n return {\n [sizeName]: `${tabSize}px`,\n transform: `translate${capitalize(sizeDir)}(${offset}px)`,\n }\n }\n\n const update = () => (barStyle.value = getBarStyle())\n\n watch(\n () => props.tabs,\n async () => {\n await nextTick()\n update()\n },\n { immediate: true }\n )\n useResizeObserver(bar$, () => update())\n\n return {\n bar$,\n rootTabs,\n barStyle,\n update,\n }\n },\n})\n</script>\n"],"names":["defineComponent","tabBar","getCurrentInstance","inject","tabsRootContextKey","ref","capitalize","nextTick","_openBlock","_createElementBlock","_normalizeClass"],"mappings":";;;;;;;;;;;;;AAwBA,MAAM,iBAAiB;AACvB,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAOC;AAAA,EAEP,MAAM,OAAO;AACX,UAAM,WAAWC;AACjB,UAAM,WAAWC,WAAOC;AACxB,QAAI,CAAC;AAAU,uBAAW,gBAAgB;AAE1C,UAAM,OAAOC;AACb,UAAM,WAAWA;AAEjB,UAAM,cAAc,MAAqB;AACvC,UAAI,SAAS;AACb,UAAI,UAAU;AAEd,YAAM,WAAW,CAAC,OAAO,UAAU,SAAS,SAAS,MAAM,eACvD,UACA;AACJ,YAAM,UAAU,aAAa,UAAU,MAAM;AAE7C,YAAM,KAAK,MAAM,CAAC,QAAQ;AACxB,cAAM,MAAM,SAAS,QAAQ,OAC3B,OAAO,IAAI;AAEb,YAAI,CAAC;AAAK,iBAAO;AAEjB,YAAI,CAAC,IAAI,QAAQ;AACf,iBAAO;AAAA;AAGT,kBAAU,IAAI,SAASC,kBAAW;AAClC,cAAM,WAAW,YAAY,MAAM,SAAS;AAC5C,iBACE,IAAI,wBAAwB,iBACvB,eAAe,wBAAwB,aAAa;AAC3D,cAAM,YAAY,OAAO,iBAAiB;AAE1C,YAAI,aAAa,SAAS;AACxB,cAAI,MAAM,KAAK,SAAS,GAAG;AACzB,uBACE,WAAW,UAAU,eACrB,WAAW,UAAU;AAAA;AAEzB,oBAAU,WAAW,UAAU;AAAA;AAEjC,eAAO;AAAA;AAGT,aAAO;AAAA,SACJ,WAAW,GAAG;AAAA,QACf,WAAW,YAAYA,kBAAW,YAAY;AAAA;AAAA;AAIlD,UAAM,SAAS,MAAO,SAAS,QAAQ;AAEvC,cACE,MAAM,MAAM,MACZ,YAAY;AACV,YAAMC;AACN;AAAA,OAEF,EAAE,WAAW;AAEf,2BAAkB,MAAM,MAAM;AAE9B,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;2BA/FJ,wBAIO;SAHDC,iBAAMC;AAAA,IACT,KAAK;AAAA,IACL,OAAKC,mBAAE,wBAAQ;AAAA;;;;;;;"}
1
+ {"version":3,"file":"tab-bar2.js","sources":["../../../../../../packages/components/tabs/src/tab-bar.vue"],"sourcesContent":["<template>\n <div\n ref=\"bar$\"\n :class=\"['el-tabs__active-bar', `is-${rootTabs.props.tabPosition}`]\"\n :style=\"barStyle\"\n ></div>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n inject,\n getCurrentInstance,\n watch,\n nextTick,\n ref,\n} from 'vue'\nimport { capitalize } from '@vue/shared'\nimport { useResizeObserver } from '@vueuse/core'\nimport { tabsRootContextKey } from '@element-plus/tokens'\nimport { throwError } from '@element-plus/utils/error'\nimport { tabBar } from './tab-bar'\n\nimport type { CSSProperties } from 'vue'\n\nconst COMPONENT_NAME = 'ElTabBar'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: tabBar,\n\n setup(props) {\n const instance = getCurrentInstance()!\n const rootTabs = inject(tabsRootContextKey)\n if (!rootTabs) throwError(COMPONENT_NAME, 'must use with ElTabs')\n\n const bar$ = ref<HTMLDivElement>()\n const barStyle = ref()\n\n const getBarStyle = (): CSSProperties => {\n let offset = 0\n let tabSize = 0\n\n const sizeName = ['top', 'bottom'].includes(rootTabs.props.tabPosition)\n ? 'width'\n : 'height'\n const sizeDir = sizeName === 'width' ? 'x' : 'y'\n\n props.tabs.every((tab) => {\n const $el = instance.parent?.refs?.[\n `tab-${tab.paneName}`\n ] as HTMLElement\n if (!$el) return false\n\n if (!tab.active) {\n return true\n }\n\n tabSize = $el[`client${capitalize(sizeName)}`]\n const position = sizeDir === 'x' ? 'left' : 'top'\n offset =\n $el.getBoundingClientRect()[position] -\n ($el.parentElement?.getBoundingClientRect()[position] ?? 0)\n const tabStyles = window.getComputedStyle($el)\n\n if (sizeName === 'width') {\n if (props.tabs.length > 1) {\n tabSize -=\n parseFloat(tabStyles.paddingLeft) +\n parseFloat(tabStyles.paddingRight)\n }\n offset += parseFloat(tabStyles.paddingLeft)\n }\n return false\n })\n\n return {\n [sizeName]: `${tabSize}px`,\n transform: `translate${capitalize(sizeDir)}(${offset}px)`,\n }\n }\n\n const update = () => (barStyle.value = getBarStyle())\n\n watch(\n () => props.tabs,\n async () => {\n await nextTick()\n update()\n },\n { immediate: true }\n )\n useResizeObserver(bar$, () => update())\n\n return {\n bar$,\n rootTabs,\n barStyle,\n update,\n }\n },\n})\n</script>\n"],"names":["defineComponent","tabBar","getCurrentInstance","inject","tabsRootContextKey","ref","_openBlock"],"mappings":";;;;;;;;;;;;;AAwBA,MAAM,iBAAiB;AACvB,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAOC;AAAA,EAEP,MAAM,OAAO;AACX,UAAM,WAAWC;AACjB,UAAM,WAAWC,WAAOC;AACxB,QAAI,CAAC;AAAU,uBAAW,gBAAgB;AAE1C,UAAM,OAAOC;AACb,UAAM,WAAWA;AAEjB,UAAM,cAAc,MAAqB;AACvC,UAAI,SAAS;AACb,UAAI,UAAU;AAEd,YAAM,WAAW,CAAC,OAAO,UAAU,SAAS,SAAS,MAAM,eACvD,UACA;AACJ,YAAM,UAAU,aAAa,UAAU,MAAM;AAE7C,YAAM,KAAK,MAAM,CAAC,QAAQ;AACxB,cAAM,MAAM;AAGZ;AAAU;AAEV,iBAAS;AACP,iBAAO;AAAA;AAGT;AACA,2DAA4C;AAC5C,yDAEG;AACH,cAAM;AAEN;AACE,oBAAU,KAAK,SAAS;AACtB,kCACa;AACU;AAEzB;AAA+B;AAEjC;AAAO;AAGT;AAAO;AACU,QACf,uBAAuB;AAAuB;AAAA;AAIlD;AAEA,UACE,MAAM;AAEJ;AACA;AAAA;AAIJ,4BAAwB;AAExB;AAAO;AACL,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;SA9FE;AAAM,SACJC;AAAA,IACL;AAAe;;;;;;;;"}
@@ -7,7 +7,18 @@ export declare const ElTag: import("../../utils/types").SFCWithInstall<import("v
7
7
  readonly size: import("../../utils/props").BuildPropReturn<StringConstructor, unknown, unknown, "small" | "default" | "large", unknown>;
8
8
  readonly effect: import("../../utils/props").BuildPropReturn<StringConstructor, "light", unknown, "plain" | "light" | "dark", unknown>;
9
9
  }, {
10
- classes: import("vue").ComputedRef<(string | false)[]>;
10
+ ns: {
11
+ namespace: import("vue").ComputedRef<string>;
12
+ b: (blockSuffix?: string) => string;
13
+ e: (element?: string | undefined) => string;
14
+ m: (modifier?: string | undefined) => string;
15
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
16
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
17
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
18
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
19
+ is: (name: string, state?: boolean) => string;
20
+ };
21
+ classes: import("vue").ComputedRef<string[]>;
11
22
  handleClose: (event: MouseEvent) => void;
12
23
  handleClick: (event: MouseEvent) => void;
13
24
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -7,7 +7,18 @@ declare const _default: import("vue").DefineComponent<{
7
7
  readonly size: import("../../../utils/props").BuildPropReturn<StringConstructor, unknown, unknown, "small" | "default" | "large", unknown>;
8
8
  readonly effect: import("../../../utils/props").BuildPropReturn<StringConstructor, "light", unknown, "plain" | "light" | "dark", unknown>;
9
9
  }, {
10
- classes: import("vue").ComputedRef<(string | false)[]>;
10
+ ns: {
11
+ namespace: import("vue").ComputedRef<string>;
12
+ b: (blockSuffix?: string) => string;
13
+ e: (element?: string | undefined) => string;
14
+ m: (modifier?: string | undefined) => string;
15
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
16
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
17
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
18
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
19
+ is: (name: string, state?: boolean) => string;
20
+ };
21
+ classes: import("vue").ComputedRef<string[]>;
11
22
  handleClose: (event: MouseEvent) => void;
12
23
  handleClick: (event: MouseEvent) => void;
13
24
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -9,6 +9,7 @@ require('../../../hooks/index.js');
9
9
  var tag = require('./tag.js');
10
10
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
11
11
  var index$1 = require('../../../hooks/use-common-props/index.js');
12
+ var index$2 = require('../../../hooks/use-namespace/index.js');
12
13
 
13
14
  const _sfc_main = vue.defineComponent({
14
15
  name: "ElTag",
@@ -17,15 +18,16 @@ const _sfc_main = vue.defineComponent({
17
18
  emits: tag.tagEmits,
18
19
  setup(props, { emit }) {
19
20
  const tagSize = index$1.useSize();
21
+ const ns = index$2.useNamespace("tag");
20
22
  const classes = vue.computed(() => {
21
23
  const { type, hit, effect, closable } = props;
22
24
  return [
23
- "el-tag",
24
- closable && "is-closable",
25
- type ? `el-tag--${type}` : "",
26
- tagSize.value ? `el-tag--${tagSize.value}` : "",
27
- effect ? `el-tag--${effect}` : "",
28
- hit && "is-hit"
25
+ ns.b(),
26
+ ns.is("closable", closable),
27
+ ns.m(type),
28
+ ns.m(tagSize.value),
29
+ ns.m(effect),
30
+ ns.is("hit", hit)
29
31
  ];
30
32
  });
31
33
  const handleClose = (event) => {
@@ -36,14 +38,13 @@ const _sfc_main = vue.defineComponent({
36
38
  emit("click", event);
37
39
  };
38
40
  return {
41
+ ns,
39
42
  classes,
40
43
  handleClose,
41
44
  handleClick
42
45
  };
43
46
  }
44
47
  });
45
- const _hoisted_1 = { class: "el-tag__content" };
46
- const _hoisted_2 = { class: "el-tag__content" };
47
48
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
48
49
  const _component_close = vue.resolveComponent("close");
49
50
  const _component_el_icon = vue.resolveComponent("el-icon");
@@ -53,22 +54,24 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
53
54
  style: vue.normalizeStyle({ backgroundColor: _ctx.color }),
54
55
  onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
55
56
  }, [
56
- vue.createElementVNode("span", _hoisted_1, [
57
+ vue.createElementVNode("span", {
58
+ class: vue.normalizeClass(_ctx.ns.e("content"))
59
+ }, [
57
60
  vue.renderSlot(_ctx.$slots, "default")
58
- ]),
61
+ ], 2),
59
62
  _ctx.closable ? (vue.openBlock(), vue.createBlock(_component_el_icon, {
60
63
  key: 0,
61
- class: "el-tag__close",
64
+ class: vue.normalizeClass(_ctx.ns.e("close")),
62
65
  onClick: _ctx.handleClose
63
66
  }, {
64
67
  default: vue.withCtx(() => [
65
68
  vue.createVNode(_component_close)
66
69
  ]),
67
70
  _: 1
68
- }, 8, ["onClick"])) : vue.createCommentVNode("v-if", true)
71
+ }, 8, ["class", "onClick"])) : vue.createCommentVNode("v-if", true)
69
72
  ], 6)) : (vue.openBlock(), vue.createBlock(vue.Transition, {
70
73
  key: 1,
71
- name: "el-zoom-in-center"
74
+ name: `${_ctx.ns.namespace.value}-zoom-in-center`
72
75
  }, {
73
76
  default: vue.withCtx(() => [
74
77
  vue.createElementVNode("span", {
@@ -76,23 +79,25 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
76
79
  style: vue.normalizeStyle({ backgroundColor: _ctx.color }),
77
80
  onClick: _cache[1] || (_cache[1] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
78
81
  }, [
79
- vue.createElementVNode("span", _hoisted_2, [
82
+ vue.createElementVNode("span", {
83
+ class: vue.normalizeClass(_ctx.ns.e("content"))
84
+ }, [
80
85
  vue.renderSlot(_ctx.$slots, "default")
81
- ]),
86
+ ], 2),
82
87
  _ctx.closable ? (vue.openBlock(), vue.createBlock(_component_el_icon, {
83
88
  key: 0,
84
- class: "el-tag__close",
89
+ class: vue.normalizeClass(_ctx.ns.e("close")),
85
90
  onClick: _ctx.handleClose
86
91
  }, {
87
92
  default: vue.withCtx(() => [
88
93
  vue.createVNode(_component_close)
89
94
  ]),
90
95
  _: 1
91
- }, 8, ["onClick"])) : vue.createCommentVNode("v-if", true)
96
+ }, 8, ["class", "onClick"])) : vue.createCommentVNode("v-if", true)
92
97
  ], 6)
93
98
  ]),
94
99
  _: 3
95
- }));
100
+ }, 8, ["name"]));
96
101
  }
97
102
  var Tag = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render]]);
98
103
 
@@ -1 +1 @@
1
- {"version":3,"file":"tag2.js","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":["defineComponent","ElIcon","Close","tagProps","tagEmits","useSize","computed","_normalizeClass","_normalizeStyle","_withCtx"],"mappings":";;;;;;;;;;;;AAsCA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY,UAAEC,qBAAQC;AAAA,EAEtB,OAAOC;AAAA,EACP,OAAOC;AAAA,EAEP,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,UAAUC;AAChB,UAAM,UAAUC,aAAS,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,OAAKC;AAAA,IACL,OAAKC;AAAA;KAEN;AAAA,2BACe;AAAA;;;MAEU,KAAK;AAAA,MAAkB,OAAK;AAAA;;eACnDC,YAAS;AAAA;;;;;IAGM,KAAI;AAAA;;aACrBA,kBAWO;AAAA,6BAVC,QAAE;AAAA,QACP,OAAKF;AAAA,QACL,OAAKC;AAAA;SAEN;AAAA,+BACe;AAAA;;;UAEU,KAAK;AAAA,UAAkB,OAAK;AAAA;;mBACnDC,YAAS;AAAA;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"tag2.js","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":["defineComponent","ElIcon","Close","tagProps","tagEmits","useSize","useNamespace","computed","_normalizeClass","_normalizeStyle","_withCtx"],"mappings":";;;;;;;;;;;;;AAsCA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY,UAAEC,qBAAQC;AAAA,EAEtB,OAAOC;AAAA,EACP,OAAOC;AAAA,EAEP,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,UAAUC;AAChB,UAAM,KAAKC,qBAAa;AACxB,UAAM,UAAUC,aAAS,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,OAAKC;AAAA,IACL,OAAKC;AAAA;KAEN;AAAA,2BAAY,QAAE;AAAA;OACZ;AAAA;OAEa;AAAA;MAAW,KAAK;AAAA,MAAkB,OAAKD,mBAAE,KAAW;AAAA;;eACjEE,YAAS;AAAA;;;;;IAGO,KAAI;AAAA;;aACtBA,kBAWO;AAAA,6BAVC,QAAE;AAAA,QACP,OAAKF;AAAA,QACL,OAAKC;AAAA;SAEN;AAAA,+BAAY,QAAE;AAAA;WACZ;AAAA;WAEa;AAAA;UAAW,KAAK;AAAA,UAAkB,OAAKD,mBAAE,KAAW;AAAA;;mBACjEE,YAAS;AAAA;;;;;;;;;;;;;"}
@@ -88,6 +88,7 @@ const _sfc_main = vue.defineComponent({
88
88
  const pickerActualVisible = vue.ref(false);
89
89
  const valueOnOpen = vue.ref(null);
90
90
  vue.watch(pickerVisible, (val) => {
91
+ var _a;
91
92
  if (!val) {
92
93
  userInput.value = null;
93
94
  vue.nextTick(() => {
@@ -95,15 +96,16 @@ const _sfc_main = vue.defineComponent({
95
96
  });
96
97
  ctx.emit("blur");
97
98
  blurInput();
98
- props.validateEvent && elFormItem.validate?.("blur");
99
+ props.validateEvent && ((_a = elFormItem.validate) == null ? void 0 : _a.call(elFormItem, "blur"));
99
100
  } else {
100
101
  valueOnOpen.value = props.modelValue;
101
102
  }
102
103
  });
103
104
  const emitChange = (val, isClear) => {
105
+ var _a;
104
106
  if (isClear || !valueEquals(val, valueOnOpen.value)) {
105
107
  ctx.emit("change", val);
106
- props.validateEvent && elFormItem.validate?.("change");
108
+ props.validateEvent && ((_a = elFormItem.validate) == null ? void 0 : _a.call(elFormItem, "change"));
107
109
  }
108
110
  };
109
111
  const emitInput = (val) => {
@@ -125,10 +127,10 @@ const _sfc_main = vue.defineComponent({
125
127
  return [];
126
128
  });
127
129
  const refStartInput = vue.computed(() => {
128
- return refInput?.value[0];
130
+ return refInput == null ? void 0 : refInput.value[0];
129
131
  });
130
132
  const refEndInput = vue.computed(() => {
131
- return refInput?.value[1];
133
+ return refInput == null ? void 0 : refInput.value[1];
132
134
  });
133
135
  const setSelectionRange = (start, end, pos) => {
134
136
  const _inputs = refInput.value;
@@ -169,7 +171,8 @@ const _sfc_main = vue.defineComponent({
169
171
  ctx.emit("focus", e);
170
172
  };
171
173
  const handleBlur = () => {
172
- refPopper.value?.onClose();
174
+ var _a;
175
+ (_a = refPopper.value) == null ? void 0 : _a.onClose();
173
176
  blurInput();
174
177
  };
175
178
  const pickerDisabled = vue.computed(() => {
@@ -256,14 +259,19 @@ const _sfc_main = vue.defineComponent({
256
259
  });
257
260
  const pickerSize = index$4.useSize();
258
261
  const popperPaneRef = vue.computed(() => {
259
- return refPopper.value?.popperRef?.contentRef;
262
+ var _a, _b;
263
+ return (_b = (_a = refPopper.value) == null ? void 0 : _a.popperRef) == null ? void 0 : _b.contentRef;
264
+ });
265
+ const popperEl = vue.computed(() => {
266
+ var _a, _b;
267
+ return (_b = (_a = vue.unref(refPopper)) == null ? void 0 : _a.popperRef) == null ? void 0 : _b.contentRef;
260
268
  });
261
- const popperEl = vue.computed(() => vue.unref(refPopper)?.popperRef?.contentRef);
262
269
  const actualInputRef = vue.computed(() => {
270
+ var _a;
263
271
  if (vue.unref(isRangeInput)) {
264
272
  return vue.unref(inputRef);
265
273
  }
266
- return vue.unref(inputRef)?.$el;
274
+ return (_a = vue.unref(inputRef)) == null ? void 0 : _a.$el;
267
275
  });
268
276
  core.onClickOutside(actualInputRef, (e) => {
269
277
  const unrefedPopperEl = vue.unref(popperEl);
@@ -1 +1 @@
1
- {"version":3,"file":"picker.js","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":["isEmpty","dayjs","defineComponent","ElInput","ElTooltip","ElIcon","timePickerDefaultProps","useLocale","inject","elFormKey","elFormItemKey","ref","computed","isEqual","Clock","Calendar","useSize","unref","EVENT_CODE","onClickOutside","_openBlock","_createBlock","_withCtx","_normalizeClass","_normalizeStyle","_createCommentVNode"],"mappings":"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"}
1
+ {"version":3,"file":"picker.js","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":["isEmpty","dayjs","defineComponent","ElInput","ElTooltip","ElIcon","timePickerDefaultProps","useLocale","inject","elFormKey","elFormItemKey","ref","computed","unref","onClickOutside","_createElementVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AA0LA,MAAM,aAAa,SAAU,GAAe,GAAe;AACzD,QAAM,UAAU,aAAa;AAC7B,QAAM,UAAU,aAAa;AAC7B,MAAI,WAAW,SAAS;AACtB,WAAO,EAAE,cAAc,EAAE;AAAA;AAE3B,MAAI,CAAC,WAAW,CAAC,SAAS;AACxB,WAAO,MAAM;AAAA;AAEf,SAAO;AAAA;AAGT,MAAM,cAAc,SAAU,GAAsB,GAAsB;AACxE,QAAM,WAAW,aAAa;AAC9B,QAAM,WAAW,aAAa;AAC9B,MAAI,YAAY,UAAU;AACxB,QAAI,EAAE,WAAW,EAAE,QAAQ;AACzB,aAAO;AAAA;AAET,WAAQ,EAAkB,MAAM,CAAC,MAAM,UAAU,WAAW,MAAM,EAAE;AAAA;AAEtE,MAAI,CAAC,YAAY,CAAC,UAAU;AAC1B,WAAO,WAAW,GAAG;AAAA;AAEvB,SAAO;AAAA;AAGT,MAAM,SAAS,SACb,MACA,QACA,MACO;AACP,QAAM,MACJA,aAAQ,WAAW,WAAW,MAC1BC,0BAAM,MAAM,OAAO,QACnBA,0BAAM,MAAM,QAAQ,OAAO;AACjC,SAAO,IAAI,YAAY,MAAM;AAAA;AAG/B,MAAM,YAAY,SAAU,MAAqB,QAAgB,MAAc;AAC7E,MAAID,aAAQ;AAAS,WAAO;AAC5B,MAAI,WAAW;AAAK,WAAO,CAAC;AAC5B,SAAOC,0BAAM,MAAM,OAAO,MAAM,OAAO;AAAA;AAGzC,MAAK,YAAaC,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,aACVC;AAAA,eACAC;AAAA,YACAC;AAAA;AAAA,EAEF,OAAOC;AAAA,EACP,OAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,EAEF,MAAM,OAAO,KAAK;AAChB,UAAM,EAAE,SAASC;AAEjB,UAAM,SAASC,WAAOC,gBAAW;AACjC,UAAM,aAAaD,WAAOE,oBAAe;AACzC,UAAM,kBAAkBF,WAAO,mBAAmB;AAElD,UAAM,YAAYG;AAClB,UAAM,WAAWA;AACjB,UAAM,gBAAgBA,QAAI;AAC1B,UAAM,sBAAsBA,QAAI;AAChC,UAAM,cAAcA,QAAI;AAExB,cAAM,eAAe,CAAC,QAAQ;AAC5B,UAAI;AACF;AACA,iBAAS,MAAM;AACb;AAAiB;AAEnB;AACA;AACA;AAA6C,aACxC;AACL;AAA0B;AAAA;AAG9B;AAEE,UAAI;AACF,YAAI;AACJ;AAA6C;AAAA;AAGjD;AACE;AACE;AACA;AACE,wBAAc;AACyB;AAGvC,wBAAc,UAAU,KAAK,mBAAmB;AAAK;AAEvD,4CAAoC,cAAc,KAAK,KAAK;AAAA;AAAA;AAGhE;AACE;AACE;AAGA,0BAAoC;AAAoB;AAE1D;AAAO;AAET;AACE;AAAuB;AAEzB;AACE;AAAuB;AAEzB,sCAAkC;AAChC;AACA,UAAI;AAAiB;AACrB,UAAI,CAAC,OAAO;AACV;AACA;AAAW,iBACF;AACT,gBAAQ,GAAG;AACX;AAAW;AAAA;AAGf;AACE;AACA,UAAI;AACJ;AACE,iBAAS;AAAkB;AAG3B,iBAAS;AAAuB;AAElC,wBAAkB;AAClB;AAAU;AAGZ;AACE;AACA,UAAI;AACF;AAAoB;AAEtB;AACE;AAAM;AAAA;AAIV;AACE;AAAmE;AACnE,4BAAsB;AACtB,eAAS;AAAS;AAGpB,UAAM;AACJ;AACA;AAAA;AAGF,2BAAuB,SAAS;AAC9B;AAAgC;AAGlC,UAAM,cAAc;AAClB;AACA;AACE,oCAAwB;AACtB;AAA6B;AAAA;AAG/B,gCAAwB;AACtB;AACoC;AAGpC,0BAAgB,MAAM;AAAoC;AAAA;AAI9D,UAAI;AACF;AAEA;AACE;AACA,mDAEa;AACA;AAAA;AAIjB,UAAI,4CAA4C,CAAC;AAC/C;AAAS;AAEX;AAAO;AAGT;AACE;AAAqC;AACrC;AACA,UAAI,cAAc;AAChB,eAAO;AAAA,0BACW;AAA+C,UAC/D;AAA+D;AAAA,2BAE9C;AACnB,yBAAiB;AAAA;AAEnB;AAA+C;AAC/C;AAAgD;AAChD;AACE,oDACsC;AAClC;AAEN;AAAO;AAGT;AAEA;AAEA;AAEA,UAAM;AAIN,UAAM,YAAY;AAElB,UAAM;AACJ,UAAI;AAAwC;AAC5C,UAAI;AACF;AACA;AACA,mBAAW,MAAM;AACjB;AACA,sBAAc;AACd;AAAuD;AAAA;AAG3D;AACE;AAEwD;AAG1D,UAAM,eAAeC;AACnB;AAA4C;AAC5C,UAAI;AACF;AAAkB;AAAA;AAGtB,+BAA2B;AACzB;AAAkB;AAEpB,UAAM,eAAe;AACnB,wBAAkB;AAAmB;AAGvC,UAAM;AAEN;AACE;AAAmC;AAGrC,UAAM;AACN,UAAM;AACJ,gBAAU;AACR;AAAa;AAGf;AAAqD;AAGvD;AACE,wCAA8B;AAC9B,YAAM;AACN,UACGC,uBACE;AAKH;AACF;AAAsB;AAGxB;AAEA;AACE,2BAAqB;AACnB,sBAAcA,0BAAsB;AACpC;AACE;AACE,4BACQ;AAIR;AAAkB;AAAA;AAAA;AAIxB;AACE;AACA;AACA;AAAkB;AAAA;AAItB;AACE;AAAwC;AAG1C;AACE;AAAY;AACZ;AAA0C;AAG5C,UAAM;AACJ;AAAY;AACZ;AAA0C;AAG5C;AACE,aAAO,cAAc,MAAM;AAAa;AAG1C,UAAM;AACJ;AAEA,mBAAa;AACX;AACA;AACA;AAAA;AAGF;AACE,0BAAkB;AAChB;AACA;AACA;AAAM;AAGN;AACE;AACE;AACA;AAAA;AAAA;AAED;AAEL;AAAA;AAGF,8BAAwB,SAAS,SAAS;AACxC;AAKE;AACA;AAAsB;AAExB;AACA;AAAA;AAIF,UAAI;AACF;AACA;AAAA;AAGF;AACE;AAAkC;AAAA;AAGtC,UAAM,eAAe;AACnB;AAAkB;AAGpB;AACE,UAAI;AACF,2BAAmB,oBAAoB;AAAgB;AAEvD;AAAuC;AAAA;AAI3C;AACE,UAAI;AACF,2BAAmB;AAAiC;AAEpD;AAAsC;AAAA;AAI1C;AACE;AACA,UAAI,SAAS,MAAM;AACjB,kBAAU,QAAQ,CAAC,oBAAoB;AACvC;AACA;AACE;AACA;AAAkB;AAAA;AAAA;AAKxB;AACE,uEAAiE;AACjE,yBAAmB,WAAW;AAC5B;AACA,yBAAiB;AACjB;AACE;AACA;AAAkB;AAAA;AAAA;AAKxB,0BAAsB;AACtB,qCAEK;AACH,kCAA4B,EAAE;AAC9B,oBAAc;AAAmB;AAGnC;AACE;AAA4B;AAG9B,UAAM,gBAAgBF,YAAQ;AAC5B,UAAI,qBAAqB;AAAa;AAGxC;AAA0B,MACxB;AAAA;AAGF;AAAO,MAEL;AAAA;AAEA,MACA;AAAA,MACA;AAAA;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,sBACAG;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;;;;;;;;;AA9pBa;AACP;wBACM;AAAA;AACV;AACJ;AACQ;AACR;AACW,IACV;AAAA,IACA;AAA+B,IAC/B;AAAqB,IACrB;AAAuB,IACvB;AAAA,IACA;AAAa,kBACJ;AAAA,IACT;AAAI,IACJ;AAAyB;;AAEf,4BAEY;AAAA;;AACd;AACD;AACH;AACU;AACJ;AACI;AACG;AACT,QAEJ;AAAgC,QAChC;AAA+B,QAC/B;AAAkB,QAClB;AAAO,QACP;AAAS,QACT,WAAQ;AAAA,QACR,eAAY;AAAA,QACZ;AAAY,QACZ;AAAK;;;AAEK;AAEU;;AACZ;AACC;;;AAEN;;;;;yBAKe;AAAI;YACnB;AAAK;AACC;;;AAEN;;;;;;;;AAMA;AACC;AACwC;AAAsB;AAAkE,UAAiC;AAAa;AAAwD;;QAQ1O;AAAK,QACL;AAAY;AACA;AACH;;AAGF;UACN;AAAK;AACC;;4BAEN;AAAA;;;;AAcA;AAXa,UACb;AAAkB;AACX,UACN;AAAa,0BACN;AAAA;AACiB,UACxB;AAAW;AACU;AAChB,UACL,SAAM;AAAE,UACR;AAAkB;qBAId;AAAA;AADuD;;;AAG/C,UACb,eAAa;AAAK,UACjB;AAAM,UACN;AAAa;AACN;AACiB,UACxBC;AAAW,UACZ;AAAsB;AAChB,UACL,SAAK;AAAE,UACP;AAAQ;qBAGM;AAAA;UACf;AAAK;AAC2D;;;;;AAKhE;;;;;;;AAmBI;AAbiB;AACR;AACA;AACN;AACK;AACH;AACV,yBACI;AAAA,0BACQ;AAAE,QACd;AAAmB,QACnB,mBAAe;AAAE,QACjB,kBAAY;AAAe,QAC3B;AAAc;;;;;;;;;;;;;;;;;;;"}
@@ -172,10 +172,12 @@ const _sfc_main = vue.defineComponent({
172
172
  return result;
173
173
  });
174
174
  const blur = () => {
175
- select.value?.blur?.();
175
+ var _a, _b;
176
+ (_b = (_a = select.value) == null ? void 0 : _a.blur) == null ? void 0 : _b.call(_a);
176
177
  };
177
178
  const focus = () => {
178
- select.value?.focus?.();
179
+ var _a, _b;
180
+ (_b = (_a = select.value) == null ? void 0 : _a.focus) == null ? void 0 : _b.call(_a);
179
181
  };
180
182
  return {
181
183
  select,
@@ -1 +1 @@
1
- {"version":3,"file":"time-select.js","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":["dayjs","customParseFormat","ElSelect","defineComponent","ElIcon","Clock","CircleClose","ref","computed","_openBlock","_createBlock","_withCtx","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"time-select.js","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":["dayjs","customParseFormat","ElSelect","defineComponent","ElIcon","Clock","CircleClose","ref","computed"],"mappings":"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"}
@@ -41,7 +41,10 @@ const _sfc_main = vue.defineComponent({
41
41
  const shouldShow = vue.computed(() => {
42
42
  return props.disabled ? false : vue.unref(open);
43
43
  });
44
- const contentStyle = vue.computed(() => props.style ?? {});
44
+ const contentStyle = vue.computed(() => {
45
+ var _a;
46
+ return (_a = props.style) != null ? _a : {};
47
+ });
45
48
  const ariaHidden = vue.computed(() => !vue.unref(open));
46
49
  index.useEscapeKeydown(onClose);
47
50
  const onTransitionLeave = () => {
@@ -62,7 +65,8 @@ const _sfc_main = vue.defineComponent({
62
65
  }
63
66
  });
64
67
  const onBeforeEnter = () => {
65
- contentRef.value?.updatePopper?.();
68
+ var _a, _b;
69
+ (_b = (_a = contentRef.value) == null ? void 0 : _a.updatePopper) == null ? void 0 : _b.call(_a);
66
70
  };
67
71
  const onAfterShow = () => {
68
72
  onShow();
@@ -71,7 +75,8 @@ const _sfc_main = vue.defineComponent({
71
75
  vue.watch(() => vue.unref(open), (val) => {
72
76
  if (val) {
73
77
  stopHandle = core.onClickOutside(vue.computed(() => {
74
- return contentRef.value?.popperContentRef;
78
+ var _a;
79
+ return (_a = contentRef.value) == null ? void 0 : _a.popperContentRef;
75
80
  }), () => {
76
81
  if (vue.unref(controlled))
77
82
  return;
@@ -81,7 +86,7 @@ const _sfc_main = vue.defineComponent({
81
86
  }
82
87
  });
83
88
  } else {
84
- stopHandle?.();
89
+ stopHandle == null ? void 0 : stopHandle();
85
90
  }
86
91
  }, {
87
92
  flush: "post"
@@ -1 +1 @@
1
- {"version":3,"file":"content.js","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":["defineComponent","ElPopperContent","ElVisuallyHidden","useTooltipContentProps","ref","inject","TOOLTIP_INJECTION_KEY","computed","unref","composeEventHandlers","onClickOutside","_openBlock","_createBlock","_Teleport","_Transition","_withCtx","_renderSlot"],"mappings":";;;;;;;;;;;;;;;;;AAmDA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,qBACVC;AAAA,sBACAC;AAAA;AAAA,EAEF,cAAc;AAAA,EACd,OAAOC;AAAA,EACP,MAAM,OAAO;AACX,UAAM,aAAaC,QAAiD;AACpE,UAAM,mBAAmBA,QAAI;AAC7B,UAAM,WAAWA,QAAI;AACrB,UAAM,UAAUA,QAAI;AACpB,UAAM,EAAE,YAAY,IAAI,MAAM,SAAS,SAAS,QAAQ,QAAQ,WAC9DC,WAAOC,8BAAuB;AAChC,UAAM,gBAAgBC,aAAS,MAAM;AAGnC,UAAI,QAAQ,IAAI,aAAa,QAAQ;AACnC,eAAO;AAAA;AAET,aAAO,MAAM;AAAA;AAGf,UAAM,eAAeA,aAAS,MAAM;AAClC,aAAOC,UAAM,iBAAiB,OAAOA,UAAM;AAAA;AAG7C,UAAM,aAAaD,aAAS,MAAM;AAChC,aAAO,MAAM,WAAW,QAAQC,UAAM;AAAA;AAGxC,UAAM,eAAeD,aAAS,MAAO,MAAM,SAAS;AAEpD,UAAM,aAAaA,aAAS,MAAM,CAACC,UAAM;AAEzC,2BAAiB;AAEjB,UAAM,oBAAoB,MAAM;AAC9B;AAAA;AAGF,UAAM,qBAAqB,MAAM;AAC/B,UAAIA,UAAM;AAAa,eAAO;AAAA;AAGhC,UAAM,iBAAiBC,yBAAqB,oBAAoB,MAAM;AACpE,UAAI,MAAM,aAAaD,UAAM,aAAa,SAAS;AACjD;AAAA;AAAA;AAIJ,UAAM,iBAAiBC,yBAAqB,oBAAoB,MAAM;AACpE,UAAID,UAAM,aAAa,SAAS;AAC9B;AAAA;AAAA;AAIJ,UAAM,gBAAgB,MAAM;AAC1B,iBAAW,OAAO;AAAA;AAGpB,UAAM,cAAc,MAAM;AACxB;AAAA;AAGF,QAAI;AAEJ,cACE,MAAMA,UAAM,OACZ,CAAC,QAAQ;AACP,UAAI,KAAK;AACP,qBAAaE,oBACXH,aAAS,MAAM;AACb,iBAAO,WAAW,OAAO;AAAA,YAE3B,MAAM;AACJ,cAAIC,UAAM;AAAa;AACvB,gBAAM,WAAWA,UAAM;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;;;;SA9JOG,iBAAWC,gBAAUC;AAAA,IAAG,UAAI;AAAA;KACrC;AAAA,oBACSC,gBAAU;AAAA,MAChB;AAAA,MACA,cAAY,KAAE;AAAA,MACd,eAAa;AAAA;;eAGNC,kBAAY;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,YAAQ;AAAA,YACRC,oBAEqB;AAAA,4BAFM;AAAA,cAAE,IAAI,KAAC;AAAA;;;;;;;;;eAtB1B,gBAAU;AAAA;;;;;;;;;;;"}
1
+ {"version":3,"file":"content.js","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":["defineComponent","ElPopperContent","ElVisuallyHidden","useTooltipContentProps","ref","inject","TOOLTIP_INJECTION_KEY","computed","unref"],"mappings":";;;;;;;;;;;;;;;;;AAmDA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,qBACVC;AAAA,sBACAC;AAAA;AAAA,EAEF,cAAc;AAAA,EACd,OAAOC;AAAA,EACP,MAAM,OAAO;AACX,UAAM,aAAaC,QAAiD;AACpE,UAAM,mBAAmBA,QAAI;AAC7B,UAAM,WAAWA,QAAI;AACrB,UAAM,UAAUA,QAAI;AACpB,UAAM,EAAE,YAAY,IAAI,MAAM,SAAS,SAAS,QAAQ,QAAQ,WAC9DC,WAAOC,8BAAuB;AAChC,UAAM,gBAAgBC,aAAS,MAAM;AAGnC,UAAI,QAAQ,IAAI,aAAa,QAAQ;AACnC,eAAO;AAAA;AAET,aAAO,MAAM;AAAA;AAGf,UAAM,eAAeA,aAAS,MAAM;AAClC,aAAOC,UAAM,iBAAiB,OAAOA,UAAM;AAAA;AAG7C,UAAM,aAAaD,aAAS,MAAM;AAChC,aAAO,MAAM,WAAW,QAAQC,UAAM;AAAA;AAGxC,UAAM,eAAeD,aAAS,MAAO;AAErC,UAAM;AAEN;AAEA;AACE;AAAA;AAGF,UAAM;AACJ;AAAuB;AAAO;AAGhC,UAAMC,qBAAiB;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,iCACO;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;;;;;;;;;;;;;;;;"}
@@ -53,9 +53,10 @@ const _sfc_main = vue.defineComponent({
53
53
  const id = index$3.useId();
54
54
  const popperRef = vue.ref(null);
55
55
  const updatePopper = () => {
56
+ var _a;
56
57
  const popperComponent = vue.unref(popperRef);
57
58
  if (popperComponent) {
58
- popperComponent.popperInstanceRef?.update();
59
+ (_a = popperComponent.popperInstanceRef) == null ? void 0 : _a.update();
59
60
  }
60
61
  };
61
62
  const open = vue.ref(false);
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip2.js","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":["createModelToggleComposable","defineComponent","ElPopper","ElPopperArrow","ElTooltipContent","ElTooltipTrigger","useTooltipContentProps","useTooltipTriggerProps","usePopperArrowProps","useTooltipProps","computed","isUndefined","isBool","useId","ref","unref","useDelayedToggle","toRef","TOOLTIP_INJECTION_KEY","readonly","_createBlock","_withCtx"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA6EA,MAAM,EAAE,qBAAqB,gBAAgB,wBAC3CA,kCAA4B;AAE9B,MAAK,YAAaC,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,cACVC;AAAA,mBACAC;AAAA,sBACAC;AAAA,sBACAC;AAAA;AAAA,EAEF,OAAO;AAAA,OACF;AAAA,OACAC;AAAA,OACAC;AAAA,OACAC;AAAA,OACAC;AAAA;AAAA,EAEL,OAAO,CAAC,GAAG,qBAAqB,QAAQ;AAAA,EACxC,MAAM,OAAO,EAAE,QAAQ;AACrB;AACA,UAAM,kBAAkBC,aAAS,MAAM;AACrC,UAAI,CAACC,iBAAY,MAAM,YAAY;AACjC,wBACE,aACA;AAAA;AAGJ,aAAO,MAAM,aAAc,MAAM;AAAA;AAEnC,UAAM,kBAAkBD,aAAS,MAAM;AACrC,UAAI,CAACC,iBAAY,MAAM,eAAe;AACpC,wBACE,aACA;AAAA;AAGJ,aAAOC,YAAO,MAAM,gBAAgB,MAAM,eAAe,MAAM;AAAA;AAGjE,UAAM,KAAKC;AACX,UAAM,YAAYC,QAA0C;AAE5D,UAAM,eAAe,MAAM;AACzB,YAAM,kBAAkBC,UAAM;AAC9B,UAAI,iBAAiB;AACnB,wBAAgB,mBAAmB;AAAA;AAAA;AAGvC,UAAM,OAAOD,QAAI;AAEjB,UAAM,EAAE,MAAM,SAAS,eAAe;AAAA,MACpC,WAAW;AAAA;AAGb,UAAM,EAAE,QAAQ,YAAYE,yBAAiB;AAAA,MAC3C,WAAW;AAAA,MACX,WAAWC,UAAM,OAAO;AAAA,MACxB,MAAM;AAAA,MACN,OAAO;AAAA;AAGT,UAAM,aAAaP,aAAS,MAAME,YAAO,MAAM;AAE/C,gBAAQM,8BAAuB;AAAA,MAC7B;AAAA,MACA;AAAA,MACA,MAAMC,aAAS;AAAA,MACf,SAASF,UAAM,OAAO;AAAA,MACtB;AAAA,MACA;AAAA,MACA,UAAU,MAAM;AACd,YAAIF,UAAM,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;;;;;;;;0BAnKmBK;AAAA,aAPrBC,YAOqB;AAAA,sBANR,+BAAQ;AAAA,QAClB,UAAS;AAAA,QACT,cAAW;AAAA,QACX,oBAAkB;AAAA;;iBAEPA,YAAO,MAAO;AAAA,eAA1B;;;SAEF,GA8BqB;AAAA,sBA7BlB,+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,YAGO;AAAA,yBAFO,aAAU;AAAA;cAAE;AAAA;wBACxB;;;YAEuC;AAAA;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"tooltip2.js","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":["createModelToggleComposable","defineComponent","ElPopper","ElPopperArrow","ElTooltipContent","ElTooltipTrigger","useTooltipContentProps","useTooltipTriggerProps","usePopperArrowProps","useTooltipProps","computed","isUndefined","isBool","useId","ref"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA6EA,MAAM,EAAE,qBAAqB,gBAAgB,wBAC3CA,kCAA4B;AAE9B,MAAK,YAAaC,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,cACVC;AAAA,mBACAC;AAAA,sBACAC;AAAA,sBACAC;AAAA;AAAA,EAEF,OAAO;AAAA,OACF;AAAA,OACAC;AAAA,OACAC;AAAA,OACAC;AAAA,OACAC;AAAA;AAAA,EAEL,OAAO,CAAC,GAAG,qBAAqB,QAAQ;AAAA,EACxC,MAAM,OAAO,EAAE,QAAQ;AACrB;AACA,UAAM,kBAAkBC,aAAS,MAAM;AACrC,UAAI,CAACC,iBAAY,MAAM,YAAY;AACjC,wBACE,aACA;AAAA;AAGJ,aAAO,MAAM,aAAc,MAAM;AAAA;AAEnC,UAAM,kBAAkBD,aAAS,MAAM;AACrC,UAAI,CAACC,iBAAY,MAAM,eAAe;AACpC,wBACE,aACA;AAAA;AAGJ,aAAOC,YAAO,MAAM,gBAAgB,MAAM,eAAe,MAAM;AAAA;AAGjE,UAAM,KAAKC;AACX,UAAM,YAAYC,QAA0C;AAE5D,UAAM,eAAe,MAAM;AACzB,YAAM;AACN,2BAAqB;AACnB;AAAmC;AAAA;AAGvC;AAEA,UAAM,qBAAiB;AAAe;AACzB;AAGb;AAA6C;AAChC,MACX,WAAW;AAAa,MACxB;AAAM,MACN;AAAO;AAGT;AAEA;AAA+B;AAC7B,MACA;AAAA,MACA;AAAe,MACf,mBAAe;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,qBACT;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;;;;;;;;;;;;;;"}