element-plus 2.2.28 → 2.2.30

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 (576) hide show
  1. package/README.md +1 -1
  2. package/attributes.json +1 -1
  3. package/dist/index.css +1 -1
  4. package/dist/index.full.js +306 -237
  5. package/dist/index.full.min.js +14 -14
  6. package/dist/index.full.min.js.map +1 -1
  7. package/dist/index.full.min.mjs +20 -20
  8. package/dist/index.full.min.mjs.map +1 -1
  9. package/dist/index.full.mjs +307 -238
  10. package/dist/locale/af.js +1 -1
  11. package/dist/locale/af.min.js +1 -1
  12. package/dist/locale/af.min.mjs +1 -1
  13. package/dist/locale/af.mjs +1 -1
  14. package/dist/locale/ar.js +1 -1
  15. package/dist/locale/ar.min.js +1 -1
  16. package/dist/locale/ar.min.mjs +1 -1
  17. package/dist/locale/ar.mjs +1 -1
  18. package/dist/locale/az.js +1 -1
  19. package/dist/locale/az.min.js +1 -1
  20. package/dist/locale/az.min.mjs +1 -1
  21. package/dist/locale/az.mjs +1 -1
  22. package/dist/locale/bg.js +1 -1
  23. package/dist/locale/bg.min.js +1 -1
  24. package/dist/locale/bg.min.mjs +1 -1
  25. package/dist/locale/bg.mjs +1 -1
  26. package/dist/locale/bn.js +1 -1
  27. package/dist/locale/bn.min.js +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 +1 -1
  31. package/dist/locale/ca.min.js +1 -1
  32. package/dist/locale/ca.min.mjs +1 -1
  33. package/dist/locale/ca.mjs +1 -1
  34. package/dist/locale/ckb.js +1 -1
  35. package/dist/locale/ckb.min.js +1 -1
  36. package/dist/locale/ckb.min.mjs +1 -1
  37. package/dist/locale/ckb.mjs +1 -1
  38. package/dist/locale/cs.js +1 -1
  39. package/dist/locale/cs.min.js +1 -1
  40. package/dist/locale/cs.min.mjs +1 -1
  41. package/dist/locale/cs.mjs +1 -1
  42. package/dist/locale/da.js +1 -1
  43. package/dist/locale/da.min.js +1 -1
  44. package/dist/locale/da.min.mjs +1 -1
  45. package/dist/locale/da.mjs +1 -1
  46. package/dist/locale/de.js +1 -1
  47. package/dist/locale/de.min.js +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 +1 -1
  51. package/dist/locale/el.min.js +1 -1
  52. package/dist/locale/el.min.mjs +1 -1
  53. package/dist/locale/el.mjs +1 -1
  54. package/dist/locale/en.js +1 -1
  55. package/dist/locale/en.min.js +1 -1
  56. package/dist/locale/en.min.mjs +1 -1
  57. package/dist/locale/en.mjs +1 -1
  58. package/dist/locale/eo.js +1 -1
  59. package/dist/locale/eo.min.js +1 -1
  60. package/dist/locale/eo.min.mjs +1 -1
  61. package/dist/locale/eo.mjs +1 -1
  62. package/dist/locale/es.js +1 -1
  63. package/dist/locale/es.min.js +1 -1
  64. package/dist/locale/es.min.mjs +1 -1
  65. package/dist/locale/es.mjs +1 -1
  66. package/dist/locale/et.js +1 -1
  67. package/dist/locale/et.min.js +1 -1
  68. package/dist/locale/et.min.mjs +1 -1
  69. package/dist/locale/et.mjs +1 -1
  70. package/dist/locale/eu.js +1 -1
  71. package/dist/locale/eu.min.js +1 -1
  72. package/dist/locale/eu.min.mjs +1 -1
  73. package/dist/locale/eu.mjs +1 -1
  74. package/dist/locale/fa.js +1 -1
  75. package/dist/locale/fa.min.js +1 -1
  76. package/dist/locale/fa.min.mjs +1 -1
  77. package/dist/locale/fa.mjs +1 -1
  78. package/dist/locale/fi.js +1 -1
  79. package/dist/locale/fi.min.js +1 -1
  80. package/dist/locale/fi.min.mjs +1 -1
  81. package/dist/locale/fi.mjs +1 -1
  82. package/dist/locale/fr.js +1 -1
  83. package/dist/locale/fr.min.js +1 -1
  84. package/dist/locale/fr.min.mjs +1 -1
  85. package/dist/locale/fr.mjs +1 -1
  86. package/dist/locale/he.js +1 -1
  87. package/dist/locale/he.min.js +1 -1
  88. package/dist/locale/he.min.mjs +1 -1
  89. package/dist/locale/he.mjs +1 -1
  90. package/dist/locale/hr.js +1 -1
  91. package/dist/locale/hr.min.js +1 -1
  92. package/dist/locale/hr.min.mjs +1 -1
  93. package/dist/locale/hr.mjs +1 -1
  94. package/dist/locale/hu.js +1 -1
  95. package/dist/locale/hu.min.js +1 -1
  96. package/dist/locale/hu.min.mjs +1 -1
  97. package/dist/locale/hu.mjs +1 -1
  98. package/dist/locale/hy-am.js +1 -1
  99. package/dist/locale/hy-am.min.js +1 -1
  100. package/dist/locale/hy-am.min.mjs +1 -1
  101. package/dist/locale/hy-am.mjs +1 -1
  102. package/dist/locale/id.js +1 -1
  103. package/dist/locale/id.min.js +1 -1
  104. package/dist/locale/id.min.mjs +1 -1
  105. package/dist/locale/id.mjs +1 -1
  106. package/dist/locale/it.js +1 -1
  107. package/dist/locale/it.min.js +1 -1
  108. package/dist/locale/it.min.mjs +1 -1
  109. package/dist/locale/it.mjs +1 -1
  110. package/dist/locale/ja.js +1 -1
  111. package/dist/locale/ja.min.js +1 -1
  112. package/dist/locale/ja.min.mjs +1 -1
  113. package/dist/locale/ja.mjs +1 -1
  114. package/dist/locale/kk.js +1 -1
  115. package/dist/locale/kk.min.js +1 -1
  116. package/dist/locale/kk.min.mjs +1 -1
  117. package/dist/locale/kk.mjs +1 -1
  118. package/dist/locale/km.js +1 -1
  119. package/dist/locale/km.min.js +1 -1
  120. package/dist/locale/km.min.mjs +1 -1
  121. package/dist/locale/km.mjs +1 -1
  122. package/dist/locale/ko.js +1 -1
  123. package/dist/locale/ko.min.js +1 -1
  124. package/dist/locale/ko.min.mjs +1 -1
  125. package/dist/locale/ko.mjs +1 -1
  126. package/dist/locale/ku.js +1 -1
  127. package/dist/locale/ku.min.js +1 -1
  128. package/dist/locale/ku.min.mjs +1 -1
  129. package/dist/locale/ku.mjs +1 -1
  130. package/dist/locale/ky.js +1 -1
  131. package/dist/locale/ky.min.js +1 -1
  132. package/dist/locale/ky.min.mjs +1 -1
  133. package/dist/locale/ky.mjs +1 -1
  134. package/dist/locale/lt.js +1 -1
  135. package/dist/locale/lt.min.js +1 -1
  136. package/dist/locale/lt.min.mjs +1 -1
  137. package/dist/locale/lt.mjs +1 -1
  138. package/dist/locale/lv.js +1 -1
  139. package/dist/locale/lv.min.js +1 -1
  140. package/dist/locale/lv.min.mjs +1 -1
  141. package/dist/locale/lv.mjs +1 -1
  142. package/dist/locale/mg.js +1 -1
  143. package/dist/locale/mg.min.js +1 -1
  144. package/dist/locale/mg.min.mjs +1 -1
  145. package/dist/locale/mg.mjs +1 -1
  146. package/dist/locale/mn.js +1 -1
  147. package/dist/locale/mn.min.js +1 -1
  148. package/dist/locale/mn.min.mjs +1 -1
  149. package/dist/locale/mn.mjs +1 -1
  150. package/dist/locale/nb-no.js +1 -1
  151. package/dist/locale/nb-no.min.js +1 -1
  152. package/dist/locale/nb-no.min.mjs +1 -1
  153. package/dist/locale/nb-no.mjs +1 -1
  154. package/dist/locale/nl.js +1 -1
  155. package/dist/locale/nl.min.js +1 -1
  156. package/dist/locale/nl.min.mjs +1 -1
  157. package/dist/locale/nl.mjs +1 -1
  158. package/dist/locale/pa.js +1 -1
  159. package/dist/locale/pa.min.js +1 -1
  160. package/dist/locale/pa.min.mjs +1 -1
  161. package/dist/locale/pa.mjs +1 -1
  162. package/dist/locale/pl.js +1 -1
  163. package/dist/locale/pl.min.js +1 -1
  164. package/dist/locale/pl.min.mjs +1 -1
  165. package/dist/locale/pl.mjs +1 -1
  166. package/dist/locale/pt-br.js +1 -1
  167. package/dist/locale/pt-br.min.js +1 -1
  168. package/dist/locale/pt-br.min.mjs +1 -1
  169. package/dist/locale/pt-br.mjs +1 -1
  170. package/dist/locale/pt.js +1 -1
  171. package/dist/locale/pt.min.js +1 -1
  172. package/dist/locale/pt.min.mjs +1 -1
  173. package/dist/locale/pt.mjs +1 -1
  174. package/dist/locale/ro.js +1 -1
  175. package/dist/locale/ro.min.js +1 -1
  176. package/dist/locale/ro.min.mjs +1 -1
  177. package/dist/locale/ro.mjs +1 -1
  178. package/dist/locale/ru.js +1 -1
  179. package/dist/locale/ru.min.js +1 -1
  180. package/dist/locale/ru.min.mjs +1 -1
  181. package/dist/locale/ru.mjs +1 -1
  182. package/dist/locale/sk.js +1 -1
  183. package/dist/locale/sk.min.js +1 -1
  184. package/dist/locale/sk.min.mjs +1 -1
  185. package/dist/locale/sk.mjs +1 -1
  186. package/dist/locale/sl.js +1 -1
  187. package/dist/locale/sl.min.js +1 -1
  188. package/dist/locale/sl.min.mjs +1 -1
  189. package/dist/locale/sl.mjs +1 -1
  190. package/dist/locale/sr.js +1 -1
  191. package/dist/locale/sr.min.js +1 -1
  192. package/dist/locale/sr.min.mjs +1 -1
  193. package/dist/locale/sr.mjs +1 -1
  194. package/dist/locale/sv.js +1 -1
  195. package/dist/locale/sv.min.js +1 -1
  196. package/dist/locale/sv.min.mjs +1 -1
  197. package/dist/locale/sv.mjs +1 -1
  198. package/dist/locale/ta.js +1 -1
  199. package/dist/locale/ta.min.js +1 -1
  200. package/dist/locale/ta.min.mjs +1 -1
  201. package/dist/locale/ta.mjs +1 -1
  202. package/dist/locale/th.js +13 -13
  203. package/dist/locale/th.min.js +1 -1
  204. package/dist/locale/th.min.js.map +1 -1
  205. package/dist/locale/th.min.mjs +1 -1
  206. package/dist/locale/th.min.mjs.map +1 -1
  207. package/dist/locale/th.mjs +13 -13
  208. package/dist/locale/tk.js +1 -1
  209. package/dist/locale/tk.min.js +1 -1
  210. package/dist/locale/tk.min.mjs +1 -1
  211. package/dist/locale/tk.mjs +1 -1
  212. package/dist/locale/tr.js +1 -1
  213. package/dist/locale/tr.min.js +1 -1
  214. package/dist/locale/tr.min.mjs +1 -1
  215. package/dist/locale/tr.mjs +1 -1
  216. package/dist/locale/ug-cn.js +1 -1
  217. package/dist/locale/ug-cn.min.js +1 -1
  218. package/dist/locale/ug-cn.min.mjs +1 -1
  219. package/dist/locale/ug-cn.mjs +1 -1
  220. package/dist/locale/uk.js +1 -1
  221. package/dist/locale/uk.min.js +1 -1
  222. package/dist/locale/uk.min.mjs +1 -1
  223. package/dist/locale/uk.mjs +1 -1
  224. package/dist/locale/uz-uz.js +1 -1
  225. package/dist/locale/uz-uz.min.js +1 -1
  226. package/dist/locale/uz-uz.min.mjs +1 -1
  227. package/dist/locale/uz-uz.mjs +1 -1
  228. package/dist/locale/vi.js +1 -1
  229. package/dist/locale/vi.min.js +1 -1
  230. package/dist/locale/vi.min.mjs +1 -1
  231. package/dist/locale/vi.mjs +1 -1
  232. package/dist/locale/zh-cn.js +1 -1
  233. package/dist/locale/zh-cn.min.js +1 -1
  234. package/dist/locale/zh-cn.min.mjs +1 -1
  235. package/dist/locale/zh-cn.mjs +1 -1
  236. package/dist/locale/zh-tw.js +1 -1
  237. package/dist/locale/zh-tw.min.js +1 -1
  238. package/dist/locale/zh-tw.min.mjs +1 -1
  239. package/dist/locale/zh-tw.mjs +1 -1
  240. package/es/components/autocomplete/index.d.ts +93 -120
  241. package/es/components/autocomplete/src/autocomplete.vue.d.ts +93 -120
  242. package/es/components/backtop/src/use-backtop.mjs +2 -20
  243. package/es/components/backtop/src/use-backtop.mjs.map +1 -1
  244. package/es/components/carousel/index.d.ts +1 -1
  245. package/es/components/carousel/src/carousel.vue.d.ts +1 -1
  246. package/es/components/cascader/index.d.ts +186 -240
  247. package/es/components/cascader/src/cascader.mjs +2 -2
  248. package/es/components/cascader/src/cascader.mjs.map +1 -1
  249. package/es/components/cascader/src/cascader.vue.d.ts +93 -120
  250. package/es/components/checkbox/index.d.ts +2 -2
  251. package/es/components/checkbox/src/checkbox-button.mjs +2 -2
  252. package/es/components/checkbox/src/checkbox-button.mjs.map +1 -1
  253. package/es/components/checkbox/src/checkbox-button.vue.d.ts +1 -1
  254. package/es/components/color-picker/index.d.ts +93 -120
  255. package/es/components/color-picker/src/color-picker.vue.d.ts +93 -120
  256. package/es/components/descriptions/src/token.mjs +1 -1
  257. package/es/components/descriptions/src/token.mjs.map +1 -1
  258. package/es/components/dialog/index.d.ts +2 -2
  259. package/es/components/dialog/src/dialog.vue.d.ts +2 -2
  260. package/es/components/dropdown/index.d.ts +62 -80
  261. package/es/components/dropdown/src/dropdown-item-impl.mjs +2 -2
  262. package/es/components/dropdown/src/dropdown-item-impl.mjs.map +1 -1
  263. package/es/components/dropdown/src/dropdown-item.mjs +9 -7
  264. package/es/components/dropdown/src/dropdown-item.mjs.map +1 -1
  265. package/es/components/dropdown/src/dropdown-menu.mjs +3 -3
  266. package/es/components/dropdown/src/dropdown-menu.mjs.map +1 -1
  267. package/es/components/dropdown/src/dropdown.vue.d.ts +62 -80
  268. package/es/components/focus-trap/src/focus-trap.vue.d.ts +2 -2
  269. package/es/components/form/src/form-item2.mjs +2 -2
  270. package/es/components/form/src/form-item2.mjs.map +1 -1
  271. package/es/components/image/index.d.ts +0 -1
  272. package/es/components/image/src/image.vue.d.ts +0 -1
  273. package/es/components/image-viewer/index.d.ts +0 -1
  274. package/es/components/image-viewer/src/image-viewer.vue.d.ts +0 -1
  275. package/es/components/image-viewer/src/image-viewer2.mjs +6 -15
  276. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  277. package/es/components/infinite-scroll/src/index.mjs +5 -4
  278. package/es/components/infinite-scroll/src/index.mjs.map +1 -1
  279. package/es/components/input/src/input2.mjs +1 -1
  280. package/es/components/input/src/input2.mjs.map +1 -1
  281. package/es/components/message/src/instance.d.ts +1 -0
  282. package/es/components/message/src/instance.mjs +5 -1
  283. package/es/components/message/src/instance.mjs.map +1 -1
  284. package/es/components/message/src/message2.mjs +2 -2
  285. package/es/components/message/src/message2.mjs.map +1 -1
  286. package/es/components/pagination/src/components/sizes.vue.d.ts +62 -80
  287. package/es/components/popconfirm/index.d.ts +93 -120
  288. package/es/components/popconfirm/src/popconfirm.vue.d.ts +93 -120
  289. package/es/components/popover/index.d.ts +93 -120
  290. package/es/components/popover/src/popover.vue.d.ts +93 -120
  291. package/es/components/popper/src/arrow.vue.d.ts +1 -0
  292. package/es/components/popper/src/arrow2.mjs +4 -3
  293. package/es/components/popper/src/arrow2.mjs.map +1 -1
  294. package/es/components/popper/src/composables/index.d.ts +3 -0
  295. package/es/components/popper/src/composables/index.mjs +4 -0
  296. package/es/components/popper/src/composables/index.mjs.map +1 -0
  297. package/es/components/popper/src/composables/use-content-dom.d.ts +40 -0
  298. package/es/components/popper/src/composables/use-content-dom.mjs +45 -0
  299. package/es/components/popper/src/composables/use-content-dom.mjs.map +1 -0
  300. package/es/components/popper/src/composables/use-content.d.ts +77 -0
  301. package/es/components/popper/src/composables/use-content.mjs +69 -0
  302. package/es/components/popper/src/composables/use-content.mjs.map +1 -0
  303. package/es/components/popper/src/composables/use-focus-trap.d.ts +12 -0
  304. package/es/components/popper/src/composables/use-focus-trap.mjs +48 -0
  305. package/es/components/popper/src/composables/use-focus-trap.mjs.map +1 -0
  306. package/es/components/popper/src/content.vue.d.ts +30 -41
  307. package/es/components/popper/src/content2.mjs +52 -126
  308. package/es/components/popper/src/content2.mjs.map +1 -1
  309. package/es/components/popper/src/popper2.mjs +1 -1
  310. package/es/components/popper/src/popper2.mjs.map +1 -1
  311. package/es/components/popper/src/utils.d.ts +3 -7
  312. package/es/components/popper/src/utils.mjs +2 -12
  313. package/es/components/popper/src/utils.mjs.map +1 -1
  314. package/es/components/radio/src/radio-button.mjs.map +1 -1
  315. package/es/components/radio/src/radio-group.mjs.map +1 -1
  316. package/es/components/radio/src/radio.mjs.map +1 -1
  317. package/es/components/rate/index.d.ts +21 -77
  318. package/es/components/rate/src/rate.d.ts +6 -26
  319. package/es/components/rate/src/rate.mjs +7 -17
  320. package/es/components/rate/src/rate.mjs.map +1 -1
  321. package/es/components/rate/src/rate.vue.d.ts +21 -77
  322. package/es/components/rate/src/rate2.mjs +1 -1
  323. package/es/components/rate/src/rate2.mjs.map +1 -1
  324. package/es/components/select/index.d.ts +62 -80
  325. package/es/components/select/src/select.vue.d.ts +62 -80
  326. package/es/components/select/src/token.mjs +2 -2
  327. package/es/components/select/src/token.mjs.map +1 -1
  328. package/es/components/select/src/useSelect.d.ts +62 -80
  329. package/es/components/select/src/useSelect.mjs +2 -2
  330. package/es/components/select/src/useSelect.mjs.map +1 -1
  331. package/es/components/select-v2/index.d.ts +124 -160
  332. package/es/components/select-v2/src/select.vue.d.ts +62 -80
  333. package/es/components/select-v2/src/token.mjs +1 -1
  334. package/es/components/select-v2/src/token.mjs.map +1 -1
  335. package/es/components/select-v2/src/useSelect.d.ts +62 -80
  336. package/es/components/slider/index.d.ts +155 -200
  337. package/es/components/slider/src/button.vue.d.ts +31 -40
  338. package/es/components/slider/src/composables/use-slide.d.ts +124 -160
  339. package/es/components/slider/src/slider.vue.d.ts +155 -200
  340. package/es/components/table/index.d.ts +12 -2
  341. package/es/components/table/src/filter-panel.vue.d.ts +62 -80
  342. package/es/components/table/src/store/index.mjs +15 -2
  343. package/es/components/table/src/store/index.mjs.map +1 -1
  344. package/es/components/table/src/store/watcher.mjs +2 -0
  345. package/es/components/table/src/store/watcher.mjs.map +1 -1
  346. package/es/components/table/src/table/defaults.d.ts +8 -2
  347. package/es/components/table/src/table/defaults.mjs +4 -1
  348. package/es/components/table/src/table/defaults.mjs.map +1 -1
  349. package/es/components/table/src/table/key-render-helper.d.ts +2 -0
  350. package/es/components/table/src/table/key-render-helper.mjs +25 -0
  351. package/es/components/table/src/table/key-render-helper.mjs.map +1 -0
  352. package/es/components/table/src/table-column/index.mjs +4 -3
  353. package/es/components/table/src/table-column/index.mjs.map +1 -1
  354. package/es/components/table/src/table-column/render-helper.d.ts +1 -0
  355. package/es/components/table/src/table-column/render-helper.mjs +5 -1
  356. package/es/components/table/src/table-column/render-helper.mjs.map +1 -1
  357. package/es/components/table/src/table.mjs +2 -0
  358. package/es/components/table/src/table.mjs.map +1 -1
  359. package/es/components/table/src/table.vue.d.ts +12 -2
  360. package/es/components/tabs/src/tab-nav.mjs +3 -4
  361. package/es/components/tabs/src/tab-nav.mjs.map +1 -1
  362. package/es/components/time-picker/src/common/picker.vue.d.ts +93 -120
  363. package/es/components/time-select/index.d.ts +248 -320
  364. package/es/components/time-select/src/time-select.vue.d.ts +124 -160
  365. package/es/components/tooltip/index.d.ts +31 -40
  366. package/es/components/tooltip/src/content.vue.d.ts +30 -40
  367. package/es/components/tooltip/src/tooltip.vue.d.ts +31 -40
  368. package/es/components/tooltip-v2/index.d.ts +4 -4
  369. package/es/components/tooltip-v2/src/tooltip.vue.d.ts +4 -4
  370. package/es/components/transfer/index.d.ts +5 -5
  371. package/es/components/transfer/src/transfer-panel.vue.d.ts +1 -1
  372. package/es/components/transfer/src/transfer.vue.d.ts +5 -5
  373. package/es/components/tree/index.d.ts +10 -10
  374. package/es/components/tree/src/model/tree-store.d.ts +3 -3
  375. package/es/components/tree/src/model/tree-store.mjs.map +1 -1
  376. package/es/components/tree/src/tree.mjs.map +1 -1
  377. package/es/components/tree/src/tree.vue.d.ts +5 -5
  378. package/es/components/tree-select/src/tree.mjs +4 -0
  379. package/es/components/tree-select/src/tree.mjs.map +1 -1
  380. package/es/components/tree-v2/index.d.ts +1 -1
  381. package/es/components/tree-v2/src/tree-node.vue.d.ts +1 -1
  382. package/es/components/tree-v2/src/tree.vue.d.ts +1 -1
  383. package/es/components/virtual-list/src/builders/build-grid.mjs +2 -2
  384. package/es/components/virtual-list/src/builders/build-grid.mjs.map +1 -1
  385. package/es/components/virtual-list/src/hooks/use-grid-wheel.mjs +3 -6
  386. package/es/components/virtual-list/src/hooks/use-grid-wheel.mjs.map +1 -1
  387. package/es/hooks/use-popper/index.d.ts +60 -2
  388. package/es/hooks/use-popper/index.mjs +2 -2
  389. package/es/hooks/use-popper/index.mjs.map +1 -1
  390. package/es/locale/lang/th.mjs +12 -12
  391. package/es/locale/lang/th.mjs.map +1 -1
  392. package/es/tokens/popper.d.ts +2 -1
  393. package/es/tokens/popper.mjs.map +1 -1
  394. package/es/utils/index.d.ts +0 -1
  395. package/es/utils/index.mjs +0 -1
  396. package/es/utils/index.mjs.map +1 -1
  397. package/es/version.d.ts +1 -1
  398. package/es/version.mjs +1 -1
  399. package/es/version.mjs.map +1 -1
  400. package/lib/components/autocomplete/index.d.ts +93 -120
  401. package/lib/components/autocomplete/src/autocomplete.vue.d.ts +93 -120
  402. package/lib/components/backtop/src/use-backtop.js +2 -20
  403. package/lib/components/backtop/src/use-backtop.js.map +1 -1
  404. package/lib/components/carousel/index.d.ts +1 -1
  405. package/lib/components/carousel/src/carousel.vue.d.ts +1 -1
  406. package/lib/components/cascader/index.d.ts +186 -240
  407. package/lib/components/cascader/src/cascader.js +2 -2
  408. package/lib/components/cascader/src/cascader.js.map +1 -1
  409. package/lib/components/cascader/src/cascader.vue.d.ts +93 -120
  410. package/lib/components/checkbox/index.d.ts +2 -2
  411. package/lib/components/checkbox/src/checkbox-button.js +2 -2
  412. package/lib/components/checkbox/src/checkbox-button.js.map +1 -1
  413. package/lib/components/checkbox/src/checkbox-button.vue.d.ts +1 -1
  414. package/lib/components/color-picker/index.d.ts +93 -120
  415. package/lib/components/color-picker/src/color-picker.vue.d.ts +93 -120
  416. package/lib/components/descriptions/src/token.js +1 -1
  417. package/lib/components/descriptions/src/token.js.map +1 -1
  418. package/lib/components/dialog/index.d.ts +2 -2
  419. package/lib/components/dialog/src/dialog.vue.d.ts +2 -2
  420. package/lib/components/dropdown/index.d.ts +62 -80
  421. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  422. package/lib/components/dropdown/src/dropdown-item-impl.js.map +1 -1
  423. package/lib/components/dropdown/src/dropdown-item.js +9 -7
  424. package/lib/components/dropdown/src/dropdown-item.js.map +1 -1
  425. package/lib/components/dropdown/src/dropdown-menu.js +2 -2
  426. package/lib/components/dropdown/src/dropdown-menu.js.map +1 -1
  427. package/lib/components/dropdown/src/dropdown.vue.d.ts +62 -80
  428. package/lib/components/focus-trap/src/focus-trap.vue.d.ts +2 -2
  429. package/lib/components/form/src/form-item2.js +1 -1
  430. package/lib/components/form/src/form-item2.js.map +1 -1
  431. package/lib/components/image/index.d.ts +0 -1
  432. package/lib/components/image/src/image.vue.d.ts +0 -1
  433. package/lib/components/image-viewer/index.d.ts +0 -1
  434. package/lib/components/image-viewer/src/image-viewer.vue.d.ts +0 -1
  435. package/lib/components/image-viewer/src/image-viewer2.js +6 -15
  436. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  437. package/lib/components/infinite-scroll/src/index.js +5 -4
  438. package/lib/components/infinite-scroll/src/index.js.map +1 -1
  439. package/lib/components/input/src/input2.js +1 -1
  440. package/lib/components/input/src/input2.js.map +1 -1
  441. package/lib/components/message/src/instance.d.ts +1 -0
  442. package/lib/components/message/src/instance.js +5 -0
  443. package/lib/components/message/src/instance.js.map +1 -1
  444. package/lib/components/message/src/message2.js +1 -1
  445. package/lib/components/message/src/message2.js.map +1 -1
  446. package/lib/components/pagination/src/components/sizes.vue.d.ts +62 -80
  447. package/lib/components/popconfirm/index.d.ts +93 -120
  448. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +93 -120
  449. package/lib/components/popover/index.d.ts +93 -120
  450. package/lib/components/popover/src/popover.vue.d.ts +93 -120
  451. package/lib/components/popper/src/arrow.vue.d.ts +1 -0
  452. package/lib/components/popper/src/arrow2.js +3 -2
  453. package/lib/components/popper/src/arrow2.js.map +1 -1
  454. package/lib/components/popper/src/composables/index.d.ts +3 -0
  455. package/lib/components/popper/src/composables/index.js +14 -0
  456. package/lib/components/popper/src/composables/index.js.map +1 -0
  457. package/lib/components/popper/src/composables/use-content-dom.d.ts +40 -0
  458. package/lib/components/popper/src/composables/use-content-dom.js +49 -0
  459. package/lib/components/popper/src/composables/use-content-dom.js.map +1 -0
  460. package/lib/components/popper/src/composables/use-content.d.ts +77 -0
  461. package/lib/components/popper/src/composables/use-content.js +73 -0
  462. package/lib/components/popper/src/composables/use-content.js.map +1 -0
  463. package/lib/components/popper/src/composables/use-focus-trap.d.ts +12 -0
  464. package/lib/components/popper/src/composables/use-focus-trap.js +52 -0
  465. package/lib/components/popper/src/composables/use-focus-trap.js.map +1 -0
  466. package/lib/components/popper/src/content.vue.d.ts +30 -41
  467. package/lib/components/popper/src/content2.js +51 -125
  468. package/lib/components/popper/src/content2.js.map +1 -1
  469. package/lib/components/popper/src/popper2.js +1 -1
  470. package/lib/components/popper/src/popper2.js.map +1 -1
  471. package/lib/components/popper/src/utils.d.ts +3 -7
  472. package/lib/components/popper/src/utils.js +2 -12
  473. package/lib/components/popper/src/utils.js.map +1 -1
  474. package/lib/components/radio/src/radio-button.js.map +1 -1
  475. package/lib/components/radio/src/radio-group.js.map +1 -1
  476. package/lib/components/radio/src/radio.js.map +1 -1
  477. package/lib/components/rate/index.d.ts +21 -77
  478. package/lib/components/rate/src/rate.d.ts +6 -26
  479. package/lib/components/rate/src/rate.js +7 -17
  480. package/lib/components/rate/src/rate.js.map +1 -1
  481. package/lib/components/rate/src/rate.vue.d.ts +21 -77
  482. package/lib/components/rate/src/rate2.js +1 -1
  483. package/lib/components/rate/src/rate2.js.map +1 -1
  484. package/lib/components/select/index.d.ts +62 -80
  485. package/lib/components/select/src/select.vue.d.ts +62 -80
  486. package/lib/components/select/src/token.js +2 -2
  487. package/lib/components/select/src/token.js.map +1 -1
  488. package/lib/components/select/src/useSelect.d.ts +62 -80
  489. package/lib/components/select/src/useSelect.js +2 -2
  490. package/lib/components/select/src/useSelect.js.map +1 -1
  491. package/lib/components/select-v2/index.d.ts +124 -160
  492. package/lib/components/select-v2/src/select.vue.d.ts +62 -80
  493. package/lib/components/select-v2/src/token.js +1 -1
  494. package/lib/components/select-v2/src/token.js.map +1 -1
  495. package/lib/components/select-v2/src/useSelect.d.ts +62 -80
  496. package/lib/components/slider/index.d.ts +155 -200
  497. package/lib/components/slider/src/button.vue.d.ts +31 -40
  498. package/lib/components/slider/src/composables/use-slide.d.ts +124 -160
  499. package/lib/components/slider/src/slider.vue.d.ts +155 -200
  500. package/lib/components/table/index.d.ts +12 -2
  501. package/lib/components/table/src/filter-panel.vue.d.ts +62 -80
  502. package/lib/components/table/src/store/index.js +15 -2
  503. package/lib/components/table/src/store/index.js.map +1 -1
  504. package/lib/components/table/src/store/watcher.js +2 -0
  505. package/lib/components/table/src/store/watcher.js.map +1 -1
  506. package/lib/components/table/src/table/defaults.d.ts +8 -2
  507. package/lib/components/table/src/table/defaults.js +4 -1
  508. package/lib/components/table/src/table/defaults.js.map +1 -1
  509. package/lib/components/table/src/table/key-render-helper.d.ts +2 -0
  510. package/lib/components/table/src/table/key-render-helper.js +29 -0
  511. package/lib/components/table/src/table/key-render-helper.js.map +1 -0
  512. package/lib/components/table/src/table-column/index.js +4 -3
  513. package/lib/components/table/src/table-column/index.js.map +1 -1
  514. package/lib/components/table/src/table-column/render-helper.d.ts +1 -0
  515. package/lib/components/table/src/table-column/render-helper.js +5 -1
  516. package/lib/components/table/src/table-column/render-helper.js.map +1 -1
  517. package/lib/components/table/src/table.js +2 -0
  518. package/lib/components/table/src/table.js.map +1 -1
  519. package/lib/components/table/src/table.vue.d.ts +12 -2
  520. package/lib/components/tabs/src/tab-nav.js +3 -4
  521. package/lib/components/tabs/src/tab-nav.js.map +1 -1
  522. package/lib/components/time-picker/src/common/picker.vue.d.ts +93 -120
  523. package/lib/components/time-select/index.d.ts +248 -320
  524. package/lib/components/time-select/src/time-select.vue.d.ts +124 -160
  525. package/lib/components/tooltip/index.d.ts +31 -40
  526. package/lib/components/tooltip/src/content.vue.d.ts +30 -40
  527. package/lib/components/tooltip/src/tooltip.vue.d.ts +31 -40
  528. package/lib/components/tooltip-v2/index.d.ts +4 -4
  529. package/lib/components/tooltip-v2/src/tooltip.vue.d.ts +4 -4
  530. package/lib/components/transfer/index.d.ts +5 -5
  531. package/lib/components/transfer/src/transfer-panel.vue.d.ts +1 -1
  532. package/lib/components/transfer/src/transfer.vue.d.ts +5 -5
  533. package/lib/components/tree/index.d.ts +10 -10
  534. package/lib/components/tree/src/model/tree-store.d.ts +3 -3
  535. package/lib/components/tree/src/model/tree-store.js.map +1 -1
  536. package/lib/components/tree/src/tree.js.map +1 -1
  537. package/lib/components/tree/src/tree.vue.d.ts +5 -5
  538. package/lib/components/tree-select/src/tree.js +4 -0
  539. package/lib/components/tree-select/src/tree.js.map +1 -1
  540. package/lib/components/tree-v2/index.d.ts +1 -1
  541. package/lib/components/tree-v2/src/tree-node.vue.d.ts +1 -1
  542. package/lib/components/tree-v2/src/tree.vue.d.ts +1 -1
  543. package/lib/components/virtual-list/src/builders/build-grid.js +2 -2
  544. package/lib/components/virtual-list/src/builders/build-grid.js.map +1 -1
  545. package/lib/components/virtual-list/src/hooks/use-grid-wheel.js +3 -6
  546. package/lib/components/virtual-list/src/hooks/use-grid-wheel.js.map +1 -1
  547. package/lib/hooks/use-popper/index.d.ts +60 -2
  548. package/lib/hooks/use-popper/index.js +2 -2
  549. package/lib/hooks/use-popper/index.js.map +1 -1
  550. package/lib/locale/lang/th.js +12 -12
  551. package/lib/locale/lang/th.js.map +1 -1
  552. package/lib/tokens/popper.d.ts +2 -1
  553. package/lib/tokens/popper.js.map +1 -1
  554. package/lib/utils/index.d.ts +0 -1
  555. package/lib/utils/index.js +0 -3
  556. package/lib/utils/index.js.map +1 -1
  557. package/lib/version.d.ts +1 -1
  558. package/lib/version.js +1 -1
  559. package/lib/version.js.map +1 -1
  560. package/package.json +2 -2
  561. package/tags.json +1 -1
  562. package/theme-chalk/el-badge.css +1 -1
  563. package/theme-chalk/el-dialog.css +1 -1
  564. package/theme-chalk/el-table.css +1 -1
  565. package/theme-chalk/index.css +1 -1
  566. package/theme-chalk/src/badge.scss +2 -0
  567. package/theme-chalk/src/dialog.scss +0 -2
  568. package/theme-chalk/src/menu.scss +4 -1
  569. package/theme-chalk/src/table.scss +1 -1
  570. package/web-types.json +1 -1
  571. package/es/utils/animation.d.ts +0 -2
  572. package/es/utils/animation.mjs +0 -7
  573. package/es/utils/animation.mjs.map +0 -1
  574. package/lib/utils/animation.d.ts +0 -2
  575. package/lib/utils/animation.js +0 -12
  576. package/lib/utils/animation.js.map +0 -1
@@ -0,0 +1,73 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ var lodashUnified = require('lodash-unified');
7
+ require('../../../../hooks/index.js');
8
+ require('../../../../tokens/index.js');
9
+ var utils = require('../utils.js');
10
+ var popper = require('../../../../tokens/popper.js');
11
+ var index = require('../../../../hooks/use-popper/index.js');
12
+
13
+ const DEFAULT_ARROW_OFFSET = 0;
14
+ const usePopperContent = (props) => {
15
+ const { popperInstanceRef, contentRef, triggerRef, role } = vue.inject(popper.POPPER_INJECTION_KEY, void 0);
16
+ const arrowRef = vue.ref();
17
+ const arrowOffset = vue.ref();
18
+ const eventListenerModifier = vue.computed(() => {
19
+ return {
20
+ name: "eventListeners",
21
+ enabled: !!props.visible
22
+ };
23
+ });
24
+ const arrowModifier = vue.computed(() => {
25
+ var _a;
26
+ const arrowEl = vue.unref(arrowRef);
27
+ const offset = (_a = vue.unref(arrowOffset)) != null ? _a : DEFAULT_ARROW_OFFSET;
28
+ return {
29
+ name: "arrow",
30
+ enabled: !lodashUnified.isUndefined(arrowEl),
31
+ options: {
32
+ element: arrowEl,
33
+ padding: offset
34
+ }
35
+ };
36
+ });
37
+ const options = vue.computed(() => {
38
+ return {
39
+ onFirstUpdate: () => {
40
+ update();
41
+ },
42
+ ...utils.buildPopperOptions(props, [
43
+ vue.unref(arrowModifier),
44
+ vue.unref(eventListenerModifier)
45
+ ])
46
+ };
47
+ });
48
+ const computedReference = vue.computed(() => utils.unwrapMeasurableEl(props.referenceEl) || vue.unref(triggerRef));
49
+ const { attributes, state, styles, update, forceUpdate, instanceRef } = index.usePopper(computedReference, contentRef, options);
50
+ vue.watch(instanceRef, (instance) => popperInstanceRef.value = instance);
51
+ vue.onMounted(() => {
52
+ vue.watch(() => {
53
+ var _a;
54
+ return (_a = vue.unref(computedReference)) == null ? void 0 : _a.getBoundingClientRect();
55
+ }, () => {
56
+ update();
57
+ });
58
+ });
59
+ return {
60
+ attributes,
61
+ arrowRef,
62
+ contentRef,
63
+ instanceRef,
64
+ state,
65
+ styles,
66
+ role,
67
+ forceUpdate,
68
+ update
69
+ };
70
+ };
71
+
72
+ exports.usePopperContent = usePopperContent;
73
+ //# sourceMappingURL=use-content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-content.js","sources":["../../../../../../../packages/components/popper/src/composables/use-content.ts"],"sourcesContent":["import { computed, inject, onMounted, ref, unref, watch } from 'vue'\nimport { isUndefined } from 'lodash-unified'\nimport { usePopper } from '@element-plus/hooks'\nimport { POPPER_INJECTION_KEY } from '@element-plus/tokens'\nimport { buildPopperOptions, unwrapMeasurableEl } from '../utils'\nimport type { Modifier } from '@popperjs/core'\n\nimport type { PartialOptions } from '@element-plus/hooks'\nimport type { PopperContentProps } from '../content'\n\nconst DEFAULT_ARROW_OFFSET = 0\n\nexport const usePopperContent = (props: PopperContentProps) => {\n const { popperInstanceRef, contentRef, triggerRef, role } = inject(\n POPPER_INJECTION_KEY,\n undefined\n )!\n\n const arrowRef = ref<HTMLElement>()\n const arrowOffset = ref<number>()\n\n const eventListenerModifier = computed(() => {\n return {\n name: 'eventListeners',\n enabled: !!props.visible,\n } as Modifier<'eventListeners', any>\n })\n\n const arrowModifier = computed(() => {\n const arrowEl = unref(arrowRef)\n const offset = unref(arrowOffset) ?? DEFAULT_ARROW_OFFSET\n // Seems like the `phase` and `fn` is required by Modifier type\n // But on its documentation they didn't specify that.\n // Refer to https://popper.js.org/docs/v2/modifiers/arrow/\n return {\n name: 'arrow',\n enabled: !isUndefined(arrowEl),\n options: {\n element: arrowEl,\n padding: offset,\n },\n } as any\n })\n\n const options = computed<PartialOptions>(() => {\n return {\n onFirstUpdate: () => {\n update()\n },\n ...buildPopperOptions(props, [\n unref(arrowModifier),\n unref(eventListenerModifier),\n ]),\n }\n })\n\n const computedReference = computed(\n () => unwrapMeasurableEl(props.referenceEl) || unref(triggerRef)\n )\n\n const { attributes, state, styles, update, forceUpdate, instanceRef } =\n usePopper(computedReference, contentRef, options)\n\n watch(instanceRef, (instance) => (popperInstanceRef.value = instance))\n\n onMounted(() => {\n watch(\n () => unref(computedReference)?.getBoundingClientRect(),\n () => {\n update()\n }\n )\n })\n\n return {\n attributes,\n arrowRef,\n contentRef,\n instanceRef,\n state,\n styles,\n role,\n\n forceUpdate,\n update,\n }\n}\n\nexport type UsePopperContentReturn = ReturnType<typeof usePopperContent>\n"],"names":["inject","POPPER_INJECTION_KEY","ref","computed","unref","isUndefined","buildPopperOptions","unwrapMeasurableEl","usePopper","watch","onMounted"],"mappings":";;;;;;;;;;;;AAKA,MAAM,oBAAoB,GAAG,CAAC,CAAC;AACnB,MAAC,gBAAgB,GAAG,CAAC,KAAK,KAAK;AAC3C,EAAE,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,GAAGA,UAAM,CAACC,2BAAoB,EAAE,KAAK,CAAC,CAAC,CAAC;AACnG,EAAE,MAAM,QAAQ,GAAGC,OAAG,EAAE,CAAC;AACzB,EAAE,MAAM,WAAW,GAAGA,OAAG,EAAE,CAAC;AAC5B,EAAE,MAAM,qBAAqB,GAAGC,YAAQ,CAAC,MAAM;AAC/C,IAAI,OAAO;AACX,MAAM,IAAI,EAAE,gBAAgB;AAC5B,MAAM,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO;AAC9B,KAAK,CAAC;AACN,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,aAAa,GAAGA,YAAQ,CAAC,MAAM;AACvC,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,MAAM,OAAO,GAAGC,SAAK,CAAC,QAAQ,CAAC,CAAC;AACpC,IAAI,MAAM,MAAM,GAAG,CAAC,EAAE,GAAGA,SAAK,CAAC,WAAW,CAAC,KAAK,IAAI,GAAG,EAAE,GAAG,oBAAoB,CAAC;AACjF,IAAI,OAAO;AACX,MAAM,IAAI,EAAE,OAAO;AACnB,MAAM,OAAO,EAAE,CAACC,yBAAW,CAAC,OAAO,CAAC;AACpC,MAAM,OAAO,EAAE;AACf,QAAQ,OAAO,EAAE,OAAO;AACxB,QAAQ,OAAO,EAAE,MAAM;AACvB,OAAO;AACP,KAAK,CAAC;AACN,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,OAAO,GAAGF,YAAQ,CAAC,MAAM;AACjC,IAAI,OAAO;AACX,MAAM,aAAa,EAAE,MAAM;AAC3B,QAAQ,MAAM,EAAE,CAAC;AACjB,OAAO;AACP,MAAM,GAAGG,wBAAkB,CAAC,KAAK,EAAE;AACnC,QAAQF,SAAK,CAAC,aAAa,CAAC;AAC5B,QAAQA,SAAK,CAAC,qBAAqB,CAAC;AACpC,OAAO,CAAC;AACR,KAAK,CAAC;AACN,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,iBAAiB,GAAGD,YAAQ,CAAC,MAAMI,wBAAkB,CAAC,KAAK,CAAC,WAAW,CAAC,IAAIH,SAAK,CAAC,UAAU,CAAC,CAAC,CAAC;AACvG,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAGI,eAAS,CAAC,iBAAiB,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;AAC5H,EAAEC,SAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,KAAK,iBAAiB,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC;AACvE,EAAEC,aAAS,CAAC,MAAM;AAClB,IAAID,SAAK,CAAC,MAAM;AAChB,MAAM,IAAI,EAAE,CAAC;AACb,MAAM,OAAO,CAAC,EAAE,GAAGL,SAAK,CAAC,iBAAiB,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC;AAC3F,KAAK,EAAE,MAAM;AACb,MAAM,MAAM,EAAE,CAAC;AACf,KAAK,CAAC,CAAC;AACP,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,UAAU;AACd,IAAI,QAAQ;AACZ,IAAI,UAAU;AACd,IAAI,WAAW;AACf,IAAI,KAAK;AACT,IAAI,MAAM;AACV,IAAI,IAAI;AACR,IAAI,WAAW;AACf,IAAI,MAAM;AACV,GAAG,CAAC;AACJ;;;;"}
@@ -0,0 +1,12 @@
1
+ import type { SetupContext } from 'vue';
2
+ import type { PopperContentEmits, PopperContentProps } from '../content';
3
+ export declare const usePopperContentFocusTrap: (props: PopperContentProps, emit: SetupContext<PopperContentEmits>['emit']) => {
4
+ focusStartRef: import("vue").Ref<HTMLElement | "first" | "container" | undefined>;
5
+ trapped: import("vue").Ref<boolean>;
6
+ onFocusAfterReleased: (event: CustomEvent) => void;
7
+ onFocusAfterTrapped: () => void;
8
+ onFocusInTrap: (event: FocusEvent) => void;
9
+ onFocusoutPrevented: (event: CustomEvent) => void;
10
+ onReleaseRequested: () => void;
11
+ };
12
+ export declare type UsePopperContentFocusTrapReturn = ReturnType<typeof usePopperContentFocusTrap>;
@@ -0,0 +1,52 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+
7
+ const usePopperContentFocusTrap = (props, emit) => {
8
+ const trapped = vue.ref(false);
9
+ const focusStartRef = vue.ref();
10
+ const onFocusAfterTrapped = () => {
11
+ emit("focus");
12
+ };
13
+ const onFocusAfterReleased = (event) => {
14
+ var _a;
15
+ if (((_a = event.detail) == null ? void 0 : _a.focusReason) !== "pointer") {
16
+ focusStartRef.value = "first";
17
+ emit("blur");
18
+ }
19
+ };
20
+ const onFocusInTrap = (event) => {
21
+ if (props.visible && !trapped.value) {
22
+ if (event.target) {
23
+ focusStartRef.value = event.target;
24
+ }
25
+ trapped.value = true;
26
+ }
27
+ };
28
+ const onFocusoutPrevented = (event) => {
29
+ if (!props.trapping) {
30
+ if (event.detail.focusReason === "pointer") {
31
+ event.preventDefault();
32
+ }
33
+ trapped.value = false;
34
+ }
35
+ };
36
+ const onReleaseRequested = () => {
37
+ trapped.value = false;
38
+ emit("close");
39
+ };
40
+ return {
41
+ focusStartRef,
42
+ trapped,
43
+ onFocusAfterReleased,
44
+ onFocusAfterTrapped,
45
+ onFocusInTrap,
46
+ onFocusoutPrevented,
47
+ onReleaseRequested
48
+ };
49
+ };
50
+
51
+ exports.usePopperContentFocusTrap = usePopperContentFocusTrap;
52
+ //# sourceMappingURL=use-focus-trap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-focus-trap.js","sources":["../../../../../../../packages/components/popper/src/composables/use-focus-trap.ts"],"sourcesContent":["import { ref } from 'vue'\n\nimport type { SetupContext } from 'vue'\nimport type { PopperContentEmits, PopperContentProps } from '../content'\n\nexport const usePopperContentFocusTrap = (\n props: PopperContentProps,\n emit: SetupContext<PopperContentEmits>['emit']\n) => {\n const trapped = ref(false)\n const focusStartRef = ref<'container' | 'first' | HTMLElement>()\n\n const onFocusAfterTrapped = () => {\n emit('focus')\n }\n\n const onFocusAfterReleased = (event: CustomEvent) => {\n if (event.detail?.focusReason !== 'pointer') {\n focusStartRef.value = 'first'\n emit('blur')\n }\n }\n\n const onFocusInTrap = (event: FocusEvent) => {\n if (props.visible && !trapped.value) {\n if (event.target) {\n focusStartRef.value = event.target as typeof focusStartRef.value\n }\n trapped.value = true\n }\n }\n\n const onFocusoutPrevented = (event: CustomEvent) => {\n if (!props.trapping) {\n if (event.detail.focusReason === 'pointer') {\n event.preventDefault()\n }\n trapped.value = false\n }\n }\n\n const onReleaseRequested = () => {\n trapped.value = false\n emit('close')\n }\n\n return {\n focusStartRef,\n trapped,\n\n onFocusAfterReleased,\n onFocusAfterTrapped,\n onFocusInTrap,\n onFocusoutPrevented,\n onReleaseRequested,\n }\n}\n\nexport type UsePopperContentFocusTrapReturn = ReturnType<\n typeof usePopperContentFocusTrap\n>\n"],"names":["ref"],"mappings":";;;;;;AACY,MAAC,yBAAyB,GAAG,CAAC,KAAK,EAAE,IAAI,KAAK;AAC1D,EAAE,MAAM,OAAO,GAAGA,OAAG,CAAC,KAAK,CAAC,CAAC;AAC7B,EAAE,MAAM,aAAa,GAAGA,OAAG,EAAE,CAAC;AAC9B,EAAE,MAAM,mBAAmB,GAAG,MAAM;AACpC,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;AAClB,GAAG,CAAC;AACJ,EAAE,MAAM,oBAAoB,GAAG,CAAC,KAAK,KAAK;AAC1C,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,IAAI,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,MAAM,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,WAAW,MAAM,SAAS,EAAE;AAC/E,MAAM,aAAa,CAAC,KAAK,GAAG,OAAO,CAAC;AACpC,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC;AACnB,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,aAAa,GAAG,CAAC,KAAK,KAAK;AACnC,IAAI,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;AACzC,MAAM,IAAI,KAAK,CAAC,MAAM,EAAE;AACxB,QAAQ,aAAa,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;AAC3C,OAAO;AACP,MAAM,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;AAC3B,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,mBAAmB,GAAG,CAAC,KAAK,KAAK;AACzC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;AACzB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE;AAClD,QAAQ,KAAK,CAAC,cAAc,EAAE,CAAC;AAC/B,OAAO;AACP,MAAM,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;AAC5B,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,kBAAkB,GAAG,MAAM;AACnC,IAAI,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;AAC1B,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;AAClB,GAAG,CAAC;AACJ,EAAE,OAAO;AACT,IAAI,aAAa;AACjB,IAAI,OAAO;AACX,IAAI,oBAAoB;AACxB,IAAI,mBAAmB;AACvB,IAAI,aAAa;AACjB,IAAI,mBAAmB;AACvB,IAAI,kBAAkB;AACtB,GAAG,CAAC;AACJ;;;;"}
@@ -1,4 +1,3 @@
1
- import type { CreatePopperInstanceParams } from './content';
2
1
  declare const _default: import("vue").DefineComponent<{
3
2
  readonly id: StringConstructor;
4
3
  readonly style: {
@@ -502,39 +501,31 @@ declare const _default: import("vue").DefineComponent<{
502
501
  onMouseleave?: ((evt: MouseEvent) => any) | undefined;
503
502
  onMouseenter?: ((evt: MouseEvent) => any) | undefined;
504
503
  }>>;
505
- popperInstanceRef: import("vue").Ref<import("@popperjs/core").Instance | undefined>;
506
- contentRef: import("vue").Ref<HTMLElement | undefined>;
507
- triggerRef: import("vue").Ref<import("element-plus/es/tokens").Measurable | undefined>;
508
- role: import("vue").ComputedRef<string>;
509
- formItemContext: import("element-plus/es/tokens").FormItemContext | undefined;
510
- nextZIndex: () => number;
511
- ns: {
512
- namespace: import("vue").Ref<string>;
513
- b: (blockSuffix?: string) => string;
514
- e: (element?: string | undefined) => string;
515
- m: (modifier?: string | undefined) => string;
516
- be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
517
- em: (element?: string | undefined, modifier?: string | undefined) => string;
518
- bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
519
- bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
520
- is: {
521
- (name: string, state: boolean | undefined): string;
522
- (name: string): string;
504
+ focusStartRef: import("vue").Ref<HTMLElement | "first" | "container" | undefined>;
505
+ trapped: import("vue").Ref<boolean>;
506
+ onFocusAfterReleased: (event: CustomEvent<any>) => void;
507
+ onFocusAfterTrapped: () => void;
508
+ onFocusInTrap: (event: FocusEvent) => void;
509
+ onFocusoutPrevented: (event: CustomEvent<any>) => void;
510
+ onReleaseRequested: () => void;
511
+ attributes: import("vue").ComputedRef<{
512
+ [key: string]: {
513
+ [key: string]: string | boolean;
523
514
  };
524
- cssVar: (object: Record<string, string>) => Record<string, string>;
525
- cssVarName: (name: string) => string;
526
- cssVarBlock: (object: Record<string, string>) => Record<string, string>;
527
- cssVarBlockName: (name: string) => string;
528
- };
529
- popperContentRef: import("vue").Ref<HTMLElement | undefined>;
530
- focusStartRef: import("vue").Ref<HTMLElement | "first" | "container">;
515
+ }>;
531
516
  arrowRef: import("vue").Ref<HTMLElement | undefined>;
532
- arrowOffset: import("vue").Ref<number | undefined>;
533
- contentZIndex: import("vue").Ref<number>;
534
- trapped: import("vue").Ref<boolean>;
535
- triggerTargetAriaStopWatch: undefined;
536
- computedReference: import("vue").ComputedRef<import("element-plus/es/tokens").Measurable | undefined>;
537
- contentStyle: import("vue").ComputedRef<any>;
517
+ contentRef: import("vue").Ref<HTMLElement | undefined>;
518
+ styles: import("vue").ComputedRef<{
519
+ [key: string]: Partial<CSSStyleDeclaration>;
520
+ }>;
521
+ instanceRef: import("vue").ComputedRef<import("@popperjs/core").Instance | undefined>;
522
+ role: import("vue").ComputedRef<string>;
523
+ update: () => Promise<Partial<import("@popperjs/core").State>> | undefined;
524
+ ariaModal: import("vue").ComputedRef<string | undefined>;
525
+ arrowStyle: import("vue").ComputedRef<import("vue").CSSProperties>;
526
+ contentAttrs: import("vue").ComputedRef<{
527
+ [key: string]: string | boolean;
528
+ }>;
538
529
  contentClass: import("vue").ComputedRef<((string | {
539
530
  [x: string]: boolean;
540
531
  } | (string | {
@@ -560,15 +551,13 @@ declare const _default: import("vue").DefineComponent<{
560
551
  } | (string | {
561
552
  [x: string]: boolean;
562
553
  } | any)[])[])[])[])[])[])[])[])[])[])[]) | undefined)[]>;
563
- ariaModal: import("vue").ComputedRef<string | undefined>;
564
- createPopperInstance: ({ referenceEl, popperContentEl, arrowEl, }: CreatePopperInstanceParams) => import("@popperjs/core").Instance;
554
+ contentStyle: import("vue").ComputedRef<import("vue").StyleValue[]>;
555
+ updateZIndex: () => void;
556
+ formItemContext: import("element-plus/es/tokens").FormItemContext | undefined;
557
+ arrowOffset: import("vue").Ref<number | undefined>;
558
+ triggerTargetAriaStopWatch: undefined;
565
559
  updatePopper: (shouldUpdateZIndex?: boolean) => void;
566
560
  togglePopperAlive: () => void;
567
- onFocusAfterTrapped: () => void;
568
- onFocusAfterReleased: (event: CustomEvent) => void;
569
- onFocusInTrap: (event: FocusEvent) => void;
570
- onFocusoutPrevented: (event: CustomEvent) => void;
571
- onReleaseRequested: () => void;
572
561
  ElFocusTrap: import("vue").DefineComponent<{
573
562
  loop: BooleanConstructor;
574
563
  trapped: BooleanConstructor;
@@ -588,15 +577,15 @@ declare const _default: import("vue").DefineComponent<{
588
577
  default: string;
589
578
  };
590
579
  }>> & {
591
- onFocusAfterTrapped?: ((...args: any[]) => any) | undefined;
592
580
  onFocusAfterReleased?: ((...args: any[]) => any) | undefined;
581
+ onFocusAfterTrapped?: ((...args: any[]) => any) | undefined;
593
582
  onFocusin?: ((...args: any[]) => any) | undefined;
594
583
  onFocusout?: ((...args: any[]) => any) | undefined;
595
584
  "onFocusout-prevented"?: ((...args: any[]) => any) | undefined;
596
585
  "onRelease-requested"?: ((...args: any[]) => any) | undefined;
597
586
  }, {
598
- loop: boolean;
599
587
  trapped: boolean;
588
+ loop: boolean;
600
589
  focusStartEl: HTMLElement | "first" | "container";
601
590
  }>;
602
591
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -5,18 +5,17 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var vue = require('vue');
6
6
  var shared = require('@vue/shared');
7
7
  var lodashUnified = require('lodash-unified');
8
- var core = require('@popperjs/core');
9
8
  require('../../focus-trap/index.js');
10
- require('../../../hooks/index.js');
11
9
  require('../../../tokens/index.js');
12
10
  require('../../../utils/index.js');
13
11
  var content = require('./content.js');
14
- var utils = require('./utils.js');
12
+ require('./composables/index.js');
15
13
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
16
- var popper = require('../../../tokens/popper.js');
14
+ var useFocusTrap = require('./composables/use-focus-trap.js');
15
+ var useContent = require('./composables/use-content.js');
16
+ var useContentDom = require('./composables/use-content-dom.js');
17
17
  var form = require('../../../tokens/form.js');
18
- var index = require('../../../hooks/use-z-index/index.js');
19
- var index$1 = require('../../../hooks/use-namespace/index.js');
18
+ var popper = require('../../../tokens/popper.js');
20
19
  var types = require('../../../utils/types.js');
21
20
  var focusTrap = require('../../focus-trap/src/focus-trap.js');
22
21
 
@@ -29,15 +28,32 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
29
28
  emits: content.popperContentEmits,
30
29
  setup(__props, { expose, emit }) {
31
30
  const props = __props;
32
- const { popperInstanceRef, contentRef, triggerRef, role } = vue.inject(popper.POPPER_INJECTION_KEY, void 0);
31
+ const {
32
+ focusStartRef,
33
+ trapped,
34
+ onFocusAfterReleased,
35
+ onFocusAfterTrapped,
36
+ onFocusInTrap,
37
+ onFocusoutPrevented,
38
+ onReleaseRequested
39
+ } = useFocusTrap.usePopperContentFocusTrap(props, emit);
40
+ const { attributes, arrowRef, contentRef, styles, instanceRef, role, update } = useContent.usePopperContent(props);
41
+ const {
42
+ ariaModal,
43
+ arrowStyle,
44
+ contentAttrs,
45
+ contentClass,
46
+ contentStyle,
47
+ updateZIndex
48
+ } = useContentDom.usePopperContentDOM(props, {
49
+ styles,
50
+ attributes,
51
+ role
52
+ });
33
53
  const formItemContext = vue.inject(form.formItemContextKey, void 0);
34
- const { nextZIndex } = index.useZIndex();
35
- const ns = index$1.useNamespace("popper");
36
- const popperContentRef = vue.ref();
37
- const focusStartRef = vue.ref("first");
38
- const arrowRef = vue.ref();
39
54
  const arrowOffset = vue.ref();
40
55
  vue.provide(popper.POPPER_CONTENT_INJECTION_KEY, {
56
+ arrowStyle,
41
57
  arrowRef,
42
58
  arrowOffset
43
59
  });
@@ -48,43 +64,12 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
48
64
  removeInputId: shared.NOOP
49
65
  });
50
66
  }
51
- const contentZIndex = vue.ref(props.zIndex || nextZIndex());
52
- const trapped = vue.ref(false);
53
67
  let triggerTargetAriaStopWatch = void 0;
54
- const computedReference = vue.computed(() => utils.unwrapMeasurableEl(props.referenceEl) || vue.unref(triggerRef));
55
- const contentStyle = vue.computed(() => [{ zIndex: vue.unref(contentZIndex) }, props.popperStyle]);
56
- const contentClass = vue.computed(() => [
57
- ns.b(),
58
- ns.is("pure", props.pure),
59
- ns.is(props.effect),
60
- props.popperClass
61
- ]);
62
- const ariaModal = vue.computed(() => {
63
- return role && role.value === "dialog" ? "false" : void 0;
64
- });
65
- const createPopperInstance = ({
66
- referenceEl,
67
- popperContentEl,
68
- arrowEl
69
- }) => {
70
- const options = utils.buildPopperOptions(props, {
71
- arrowEl,
72
- arrowOffset: vue.unref(arrowOffset)
73
- });
74
- return core.createPopper(referenceEl, popperContentEl, options);
75
- };
76
68
  const updatePopper = (shouldUpdateZIndex = true) => {
77
- var _a;
78
- (_a = vue.unref(popperInstanceRef)) == null ? void 0 : _a.update();
79
- shouldUpdateZIndex && (contentZIndex.value = props.zIndex || nextZIndex());
69
+ update();
70
+ shouldUpdateZIndex && updateZIndex();
80
71
  };
81
72
  const togglePopperAlive = () => {
82
- var _a, _b;
83
- const monitorable = { name: "eventListeners", enabled: props.visible };
84
- (_b = (_a = vue.unref(popperInstanceRef)) == null ? void 0 : _a.setOptions) == null ? void 0 : _b.call(_a, (options) => ({
85
- ...options,
86
- modifiers: [...options.modifiers || [], monitorable]
87
- }));
88
73
  updatePopper(false);
89
74
  if (props.visible && props.focusOnShow) {
90
75
  trapped.value = true;
@@ -92,65 +77,12 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
92
77
  trapped.value = false;
93
78
  }
94
79
  };
95
- const onFocusAfterTrapped = () => {
96
- emit("focus");
97
- };
98
- const onFocusAfterReleased = (event) => {
99
- var _a;
100
- if (((_a = event.detail) == null ? void 0 : _a.focusReason) !== "pointer") {
101
- focusStartRef.value = "first";
102
- emit("blur");
103
- }
104
- };
105
- const onFocusInTrap = (event) => {
106
- if (props.visible && !trapped.value) {
107
- if (event.target) {
108
- focusStartRef.value = event.target;
109
- }
110
- trapped.value = true;
111
- }
112
- };
113
- const onFocusoutPrevented = (event) => {
114
- if (!props.trapping) {
115
- if (event.detail.focusReason === "pointer") {
116
- event.preventDefault();
117
- }
118
- trapped.value = false;
119
- }
120
- };
121
- const onReleaseRequested = () => {
122
- trapped.value = false;
123
- emit("close");
124
- };
125
80
  vue.onMounted(() => {
126
- let updateHandle;
127
- vue.watch(computedReference, (referenceEl) => {
128
- var _a;
129
- updateHandle == null ? void 0 : updateHandle();
130
- const popperInstance = vue.unref(popperInstanceRef);
131
- (_a = popperInstance == null ? void 0 : popperInstance.destroy) == null ? void 0 : _a.call(popperInstance);
132
- if (referenceEl) {
133
- const popperContentEl = vue.unref(popperContentRef);
134
- contentRef.value = popperContentEl;
135
- popperInstanceRef.value = createPopperInstance({
136
- referenceEl,
137
- popperContentEl,
138
- arrowEl: vue.unref(arrowRef)
139
- });
140
- updateHandle = vue.watch(() => referenceEl.getBoundingClientRect(), () => updatePopper(), {
141
- immediate: true
142
- });
143
- } else {
144
- popperInstanceRef.value = void 0;
145
- }
146
- }, {
147
- immediate: true
148
- });
149
81
  vue.watch(() => props.triggerTargetEl, (triggerTargetEl, prevTriggerTargetEl) => {
150
82
  triggerTargetAriaStopWatch == null ? void 0 : triggerTargetAriaStopWatch();
151
83
  triggerTargetAriaStopWatch = void 0;
152
- const el = vue.unref(triggerTargetEl || popperContentRef.value);
153
- const prevEl = vue.unref(prevTriggerTargetEl || popperContentRef.value);
84
+ const el = vue.unref(triggerTargetEl || contentRef.value);
85
+ const prevEl = vue.unref(prevTriggerTargetEl || contentRef.value);
154
86
  if (types.isElement(el)) {
155
87
  triggerTargetAriaStopWatch = vue.watch([role, () => props.ariaLabel, ariaModal, () => props.id], (watches) => {
156
88
  ;
@@ -167,51 +99,45 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
167
99
  }
168
100
  }, { immediate: true });
169
101
  vue.watch(() => props.visible, togglePopperAlive, { immediate: true });
170
- vue.watch(() => utils.buildPopperOptions(props, {
171
- arrowEl: vue.unref(arrowRef),
172
- arrowOffset: vue.unref(arrowOffset)
173
- }), (option) => {
174
- var _a;
175
- return (_a = popperInstanceRef.value) == null ? void 0 : _a.setOptions(option);
176
- });
177
102
  });
178
103
  vue.onBeforeUnmount(() => {
179
104
  triggerTargetAriaStopWatch == null ? void 0 : triggerTargetAriaStopWatch();
180
105
  triggerTargetAriaStopWatch = void 0;
181
106
  });
182
107
  expose({
183
- popperContentRef,
184
- popperInstanceRef,
108
+ popperContentRef: contentRef,
109
+ popperInstanceRef: instanceRef,
185
110
  updatePopper,
186
111
  contentStyle
187
112
  });
188
113
  return (_ctx, _cache) => {
189
- return vue.openBlock(), vue.createElementBlock("div", {
190
- ref_key: "popperContentRef",
191
- ref: popperContentRef,
192
- style: vue.normalizeStyle(vue.unref(contentStyle)),
193
- class: vue.normalizeClass(vue.unref(contentClass)),
114
+ return vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
115
+ ref_key: "contentRef",
116
+ ref: contentRef
117
+ }, vue.unref(contentAttrs), {
118
+ style: vue.unref(contentStyle),
119
+ class: vue.unref(contentClass),
194
120
  tabindex: "-1",
195
121
  onMouseenter: _cache[0] || (_cache[0] = (e) => _ctx.$emit("mouseenter", e)),
196
122
  onMouseleave: _cache[1] || (_cache[1] = (e) => _ctx.$emit("mouseleave", e))
197
- }, [
123
+ }), [
198
124
  vue.createVNode(vue.unref(focusTrap["default"]), {
199
- trapped: trapped.value,
125
+ trapped: vue.unref(trapped),
200
126
  "trap-on-focus-in": true,
201
- "focus-trap-el": popperContentRef.value,
202
- "focus-start-el": focusStartRef.value,
203
- onFocusAfterTrapped,
204
- onFocusAfterReleased,
205
- onFocusin: onFocusInTrap,
206
- onFocusoutPrevented,
207
- onReleaseRequested
127
+ "focus-trap-el": vue.unref(contentRef),
128
+ "focus-start-el": vue.unref(focusStartRef),
129
+ onFocusAfterTrapped: vue.unref(onFocusAfterTrapped),
130
+ onFocusAfterReleased: vue.unref(onFocusAfterReleased),
131
+ onFocusin: vue.unref(onFocusInTrap),
132
+ onFocusoutPrevented: vue.unref(onFocusoutPrevented),
133
+ onReleaseRequested: vue.unref(onReleaseRequested)
208
134
  }, {
209
135
  default: vue.withCtx(() => [
210
136
  vue.renderSlot(_ctx.$slots, "default")
211
137
  ]),
212
138
  _: 3
213
- }, 8, ["trapped", "focus-trap-el", "focus-start-el"])
214
- ], 38);
139
+ }, 8, ["trapped", "focus-trap-el", "focus-start-el", "onFocusAfterTrapped", "onFocusAfterReleased", "onFocusin", "onFocusoutPrevented", "onReleaseRequested"])
140
+ ], 16);
215
141
  };
216
142
  }
217
143
  });
@@ -1 +1 @@
1
- {"version":3,"file":"content2.js","sources":["../../../../../../packages/components/popper/src/content.vue"],"sourcesContent":["<template>\n <div\n ref=\"popperContentRef\"\n :style=\"contentStyle\"\n :class=\"contentClass\"\n tabindex=\"-1\"\n @mouseenter=\"(e) => $emit('mouseenter', e)\"\n @mouseleave=\"(e) => $emit('mouseleave', e)\"\n >\n <el-focus-trap\n :trapped=\"trapped\"\n :trap-on-focus-in=\"true\"\n :focus-trap-el=\"popperContentRef\"\n :focus-start-el=\"focusStartRef\"\n @focus-after-trapped=\"onFocusAfterTrapped\"\n @focus-after-released=\"onFocusAfterReleased\"\n @focusin=\"onFocusInTrap\"\n @focusout-prevented=\"onFocusoutPrevented\"\n @release-requested=\"onReleaseRequested\"\n >\n <slot />\n </el-focus-trap>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n onBeforeUnmount,\n onMounted,\n provide,\n ref,\n unref,\n watch,\n} from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { isNil } from 'lodash-unified'\nimport { createPopper } from '@popperjs/core'\nimport ElFocusTrap from '@element-plus/components/focus-trap'\nimport { useNamespace, useZIndex } from '@element-plus/hooks'\nimport {\n POPPER_CONTENT_INJECTION_KEY,\n POPPER_INJECTION_KEY,\n formItemContextKey,\n} from '@element-plus/tokens'\nimport { isElement } from '@element-plus/utils'\nimport { popperContentEmits, popperContentProps } from './content'\nimport { buildPopperOptions, unwrapMeasurableEl } from './utils'\n\nimport type { WatchStopHandle } from 'vue'\nimport type { CreatePopperInstanceParams } from './content'\n\ndefineOptions({\n name: 'ElPopperContent',\n})\n\nconst emit = defineEmits(popperContentEmits)\n\nconst props = defineProps(popperContentProps)\n\nconst { popperInstanceRef, contentRef, triggerRef, role } = inject(\n POPPER_INJECTION_KEY,\n undefined\n)!\nconst formItemContext = inject(formItemContextKey, undefined)\nconst { nextZIndex } = useZIndex()\nconst ns = useNamespace('popper')\nconst popperContentRef = ref<HTMLElement>()\nconst focusStartRef = ref<'container' | 'first' | HTMLElement>('first')\nconst arrowRef = ref<HTMLElement>()\nconst arrowOffset = ref<number>()\nprovide(POPPER_CONTENT_INJECTION_KEY, {\n arrowRef,\n arrowOffset,\n})\n\nif (\n formItemContext &&\n (formItemContext.addInputId || formItemContext.removeInputId)\n) {\n // disallow auto-id from inside popper content\n provide(formItemContextKey, {\n ...formItemContext,\n addInputId: NOOP,\n removeInputId: NOOP,\n })\n}\n\nconst contentZIndex = ref<number>(props.zIndex || nextZIndex())\nconst trapped = ref<boolean>(false)\n\nlet triggerTargetAriaStopWatch: WatchStopHandle | undefined = undefined\n\nconst computedReference = computed(\n () => unwrapMeasurableEl(props.referenceEl) || unref(triggerRef)\n)\n\nconst contentStyle = computed(\n () => [{ zIndex: unref(contentZIndex) }, props.popperStyle] as any\n)\n\nconst contentClass = computed(() => [\n ns.b(),\n ns.is('pure', props.pure),\n ns.is(props.effect),\n props.popperClass,\n])\n\nconst ariaModal = computed<string | undefined>(() => {\n return role && role.value === 'dialog' ? 'false' : undefined\n})\n\nconst createPopperInstance = ({\n referenceEl,\n popperContentEl,\n arrowEl,\n}: CreatePopperInstanceParams) => {\n const options = buildPopperOptions(props, {\n arrowEl,\n arrowOffset: unref(arrowOffset),\n })\n\n return createPopper(referenceEl, popperContentEl, options)\n}\n\nconst updatePopper = (shouldUpdateZIndex = true) => {\n unref(popperInstanceRef)?.update()\n shouldUpdateZIndex && (contentZIndex.value = props.zIndex || nextZIndex())\n}\n\nconst togglePopperAlive = () => {\n const monitorable = { name: 'eventListeners', enabled: props.visible }\n unref(popperInstanceRef)?.setOptions?.((options) => ({\n ...options,\n modifiers: [...(options.modifiers || []), monitorable],\n }))\n updatePopper(false)\n if (props.visible && props.focusOnShow) {\n trapped.value = true\n } else if (props.visible === false) {\n trapped.value = false\n }\n}\n\nconst onFocusAfterTrapped = () => {\n emit('focus')\n}\n\nconst onFocusAfterReleased = (event: CustomEvent) => {\n if (event.detail?.focusReason !== 'pointer') {\n focusStartRef.value = 'first'\n emit('blur')\n }\n}\n\nconst onFocusInTrap = (event: FocusEvent) => {\n if (props.visible && !trapped.value) {\n if (event.target) {\n focusStartRef.value = event.target as typeof focusStartRef.value\n }\n trapped.value = true\n }\n}\n\nconst onFocusoutPrevented = (event: CustomEvent) => {\n if (!props.trapping) {\n if (event.detail.focusReason === 'pointer') {\n event.preventDefault()\n }\n trapped.value = false\n }\n}\n\nconst onReleaseRequested = () => {\n trapped.value = false\n emit('close')\n}\n\nonMounted(() => {\n let updateHandle: WatchStopHandle\n watch(\n computedReference,\n (referenceEl) => {\n updateHandle?.()\n const popperInstance = unref(popperInstanceRef)\n popperInstance?.destroy?.()\n if (referenceEl) {\n const popperContentEl = unref(popperContentRef)!\n contentRef.value = popperContentEl\n\n popperInstanceRef.value = createPopperInstance({\n referenceEl,\n popperContentEl,\n arrowEl: unref(arrowRef),\n })\n\n updateHandle = watch(\n () => referenceEl.getBoundingClientRect(),\n () => updatePopper(),\n {\n immediate: true,\n }\n )\n } else {\n popperInstanceRef.value = undefined\n }\n },\n {\n immediate: true,\n }\n )\n\n watch(\n () => props.triggerTargetEl,\n (triggerTargetEl, prevTriggerTargetEl) => {\n triggerTargetAriaStopWatch?.()\n triggerTargetAriaStopWatch = undefined\n\n const el = unref(triggerTargetEl || popperContentRef.value)\n const prevEl = unref(prevTriggerTargetEl || popperContentRef.value)\n\n if (isElement(el)) {\n triggerTargetAriaStopWatch = watch(\n [role, () => props.ariaLabel, ariaModal, () => props.id],\n (watches) => {\n ;['role', 'aria-label', 'aria-modal', 'id'].forEach((key, idx) => {\n isNil(watches[idx])\n ? el.removeAttribute(key)\n : el.setAttribute(key, watches[idx]!)\n })\n },\n { immediate: true }\n )\n }\n if (prevEl !== el && isElement(prevEl)) {\n ;['role', 'aria-label', 'aria-modal', 'id'].forEach((key) => {\n prevEl.removeAttribute(key)\n })\n }\n },\n { immediate: true }\n )\n\n watch(() => props.visible, togglePopperAlive, { immediate: true })\n\n watch(\n () =>\n buildPopperOptions(props, {\n arrowEl: unref(arrowRef),\n arrowOffset: unref(arrowOffset),\n }),\n (option) => popperInstanceRef.value?.setOptions(option)\n )\n})\n\nonBeforeUnmount(() => {\n triggerTargetAriaStopWatch?.()\n triggerTargetAriaStopWatch = undefined\n})\n\ndefineExpose({\n /**\n * @description popper content element\n */\n popperContentRef,\n /**\n * @description popperjs instance\n */\n popperInstanceRef,\n /**\n * @description method for updating popper\n */\n updatePopper,\n\n /**\n * @description content style\n */\n contentStyle,\n})\n</script>\n"],"names":["inject","POPPER_INJECTION_KEY","formItemContextKey","useZIndex","useNamespace","ref","provide","POPPER_CONTENT_INJECTION_KEY","NOOP","computed","unwrapMeasurableEl","unref","buildPopperOptions","createPopper","onMounted","watch","isElement","isNil","onBeforeUnmount"],"mappings":"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"}
1
+ {"version":3,"file":"content2.js","sources":["../../../../../../packages/components/popper/src/content.vue"],"sourcesContent":["<template>\n <div\n ref=\"contentRef\"\n v-bind=\"contentAttrs\"\n :style=\"contentStyle\"\n :class=\"contentClass\"\n tabindex=\"-1\"\n @mouseenter=\"(e) => $emit('mouseenter', e)\"\n @mouseleave=\"(e) => $emit('mouseleave', e)\"\n >\n <el-focus-trap\n :trapped=\"trapped\"\n :trap-on-focus-in=\"true\"\n :focus-trap-el=\"contentRef\"\n :focus-start-el=\"focusStartRef\"\n @focus-after-trapped=\"onFocusAfterTrapped\"\n @focus-after-released=\"onFocusAfterReleased\"\n @focusin=\"onFocusInTrap\"\n @focusout-prevented=\"onFocusoutPrevented\"\n @release-requested=\"onReleaseRequested\"\n >\n <slot />\n </el-focus-trap>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n inject,\n onBeforeUnmount,\n onMounted,\n provide,\n ref,\n unref,\n watch,\n} from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { isNil } from 'lodash-unified'\nimport ElFocusTrap from '@element-plus/components/focus-trap'\nimport {\n POPPER_CONTENT_INJECTION_KEY,\n formItemContextKey,\n} from '@element-plus/tokens'\nimport { isElement } from '@element-plus/utils'\nimport { popperContentEmits, popperContentProps } from './content'\nimport {\n usePopperContent,\n usePopperContentDOM,\n usePopperContentFocusTrap,\n} from './composables'\n\nimport type { WatchStopHandle } from 'vue'\n\ndefineOptions({\n name: 'ElPopperContent',\n})\n\nconst emit = defineEmits(popperContentEmits)\n\nconst props = defineProps(popperContentProps)\n\nconst {\n focusStartRef,\n trapped,\n\n onFocusAfterReleased,\n onFocusAfterTrapped,\n onFocusInTrap,\n onFocusoutPrevented,\n onReleaseRequested,\n} = usePopperContentFocusTrap(props, emit)\n\nconst { attributes, arrowRef, contentRef, styles, instanceRef, role, update } =\n usePopperContent(props)\n\nconst {\n ariaModal,\n arrowStyle,\n contentAttrs,\n contentClass,\n contentStyle,\n updateZIndex,\n} = usePopperContentDOM(props, {\n styles,\n attributes,\n role,\n})\n\nconst formItemContext = inject(formItemContextKey, undefined)\nconst arrowOffset = ref<number>()\n\nprovide(POPPER_CONTENT_INJECTION_KEY, {\n arrowStyle,\n arrowRef,\n arrowOffset,\n})\n\nif (\n formItemContext &&\n (formItemContext.addInputId || formItemContext.removeInputId)\n) {\n // disallow auto-id from inside popper content\n provide(formItemContextKey, {\n ...formItemContext,\n addInputId: NOOP,\n removeInputId: NOOP,\n })\n}\n\nlet triggerTargetAriaStopWatch: WatchStopHandle | undefined = undefined\n\nconst updatePopper = (shouldUpdateZIndex = true) => {\n update()\n shouldUpdateZIndex && updateZIndex()\n}\n\nconst togglePopperAlive = () => {\n updatePopper(false)\n if (props.visible && props.focusOnShow) {\n trapped.value = true\n } else if (props.visible === false) {\n trapped.value = false\n }\n}\n\nonMounted(() => {\n watch(\n () => props.triggerTargetEl,\n (triggerTargetEl, prevTriggerTargetEl) => {\n triggerTargetAriaStopWatch?.()\n triggerTargetAriaStopWatch = undefined\n\n const el = unref(triggerTargetEl || contentRef.value)\n const prevEl = unref(prevTriggerTargetEl || contentRef.value)\n\n if (isElement(el)) {\n triggerTargetAriaStopWatch = watch(\n [role, () => props.ariaLabel, ariaModal, () => props.id],\n (watches) => {\n ;['role', 'aria-label', 'aria-modal', 'id'].forEach((key, idx) => {\n isNil(watches[idx])\n ? el.removeAttribute(key)\n : el.setAttribute(key, watches[idx]!)\n })\n },\n { immediate: true }\n )\n }\n if (prevEl !== el && isElement(prevEl)) {\n ;['role', 'aria-label', 'aria-modal', 'id'].forEach((key) => {\n prevEl.removeAttribute(key)\n })\n }\n },\n { immediate: true }\n )\n\n watch(() => props.visible, togglePopperAlive, { immediate: true })\n})\n\nonBeforeUnmount(() => {\n triggerTargetAriaStopWatch?.()\n triggerTargetAriaStopWatch = undefined\n})\n\ndefineExpose({\n /**\n * @description popper content element\n */\n popperContentRef: contentRef,\n /**\n * @description popperjs instance\n */\n popperInstanceRef: instanceRef,\n /**\n * @description method for updating popper\n */\n updatePopper,\n\n /**\n * @description content style\n */\n contentStyle,\n})\n</script>\n"],"names":["usePopperContentFocusTrap","usePopperContent","usePopperContentDOM","inject","formItemContextKey","ref","provide","POPPER_CONTENT_INJECTION_KEY","NOOP","onMounted","watch","unref","isElement","isNil","onBeforeUnmount"],"mappings":"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"}
@@ -9,7 +9,7 @@ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper
9
9
  var popper$1 = require('../../../tokens/popper.js');
10
10
 
11
11
  const __default__ = vue.defineComponent({
12
- name: "ElPopperRoot",
12
+ name: "ElPopper",
13
13
  inheritAttrs: false
14
14
  });
15
15
  const _sfc_main = /* @__PURE__ */ vue.defineComponent({
@@ -1 +1 @@
1
- {"version":3,"file":"popper2.js","sources":["../../../../../../packages/components/popper/src/popper.vue"],"sourcesContent":["<template>\n <slot />\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, ref } from 'vue'\nimport { POPPER_INJECTION_KEY } from '@element-plus/tokens'\nimport { popperProps } from './popper'\n\nimport type { Instance as PopperInstance } from '@popperjs/core'\nimport type { ElPopperInjectionContext } from '@element-plus/tokens'\n\ndefineOptions({\n name: 'ElPopperRoot',\n inheritAttrs: false,\n})\nconst props = defineProps(popperProps)\n\nconst triggerRef = ref<HTMLElement>()\nconst popperInstanceRef = ref<PopperInstance>()\nconst contentRef = ref<HTMLElement>()\nconst referenceRef = ref<HTMLElement>()\nconst role = computed(() => props.role)\n\nconst popperProvides = {\n /**\n * @description trigger element\n */\n triggerRef,\n /**\n * @description popperjs instance\n */\n popperInstanceRef,\n /**\n * @description popper content element\n */\n contentRef,\n /**\n * @description popper reference element\n */\n referenceRef,\n /**\n * @description role determines how aria attributes are distributed\n */\n role,\n} as ElPopperInjectionContext\n\ndefineExpose(popperProvides)\n\nprovide(POPPER_INJECTION_KEY, popperProvides)\n</script>\n"],"names":["ref","computed","provide","POPPER_INJECTION_KEY"],"mappings":";;;;;;;;;;uCAYc,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AAAA,EACN,YAAc,EAAA,KAAA;AAChB,CAAA,CAAA,CAAA;;;;;;AAGA,IAAA,MAAM,aAAaA,OAAiB,EAAA,CAAA;AACpC,IAAA,MAAM,oBAAoBA,OAAoB,EAAA,CAAA;AAC9C,IAAA,MAAM,aAAaA,OAAiB,EAAA,CAAA;AACpC,IAAA,MAAM,eAAeA,OAAiB,EAAA,CAAA;AACtC,IAAA,MAAM,IAAO,GAAAC,YAAA,CAAS,MAAM,KAAA,CAAM,IAAI,CAAA,CAAA;AAEtC,IAAA,MAAM,cAAiB,GAAA;AAAA,MAIrB,UAAA;AAAA,MAIA,iBAAA;AAAA,MAIA,UAAA;AAAA,MAIA,YAAA;AAAA,MAIA,IAAA;AAAA,KACF,CAAA;AAEA,IAAA,MAAA,CAAa,cAAc,CAAA,CAAA;AAE3B,IAAAC,WAAA,CAAQC,+BAAsB,cAAc,CAAA,CAAA;;;;;;;;;;"}
1
+ {"version":3,"file":"popper2.js","sources":["../../../../../../packages/components/popper/src/popper.vue"],"sourcesContent":["<template>\n <slot />\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, ref } from 'vue'\nimport { POPPER_INJECTION_KEY } from '@element-plus/tokens'\nimport { popperProps } from './popper'\n\nimport type { Instance as PopperInstance } from '@popperjs/core'\nimport type { ElPopperInjectionContext } from '@element-plus/tokens'\n\ndefineOptions({\n name: 'ElPopper',\n inheritAttrs: false,\n})\nconst props = defineProps(popperProps)\n\nconst triggerRef = ref<HTMLElement>()\nconst popperInstanceRef = ref<PopperInstance>()\nconst contentRef = ref<HTMLElement>()\nconst referenceRef = ref<HTMLElement>()\nconst role = computed(() => props.role)\n\nconst popperProvides = {\n /**\n * @description trigger element\n */\n triggerRef,\n /**\n * @description popperjs instance\n */\n popperInstanceRef,\n /**\n * @description popper content element\n */\n contentRef,\n /**\n * @description popper reference element\n */\n referenceRef,\n /**\n * @description role determines how aria attributes are distributed\n */\n role,\n} as ElPopperInjectionContext\n\ndefineExpose(popperProvides)\n\nprovide(POPPER_INJECTION_KEY, popperProvides)\n</script>\n"],"names":["ref","computed","provide","POPPER_INJECTION_KEY"],"mappings":";;;;;;;;;;uCAYc,CAAA;AAAA,EACZ,IAAM,EAAA,UAAA;AAAA,EACN,YAAc,EAAA,KAAA;AAChB,CAAA,CAAA,CAAA;;;;;;AAGA,IAAA,MAAM,aAAaA,OAAiB,EAAA,CAAA;AACpC,IAAA,MAAM,oBAAoBA,OAAoB,EAAA,CAAA;AAC9C,IAAA,MAAM,aAAaA,OAAiB,EAAA,CAAA;AACpC,IAAA,MAAM,eAAeA,OAAiB,EAAA,CAAA;AACtC,IAAA,MAAM,IAAO,GAAAC,YAAA,CAAS,MAAM,KAAA,CAAM,IAAI,CAAA,CAAA;AAEtC,IAAA,MAAM,cAAiB,GAAA;AAAA,MAIrB,UAAA;AAAA,MAIA,iBAAA;AAAA,MAIA,UAAA;AAAA,MAIA,YAAA;AAAA,MAIA,IAAA;AAAA,KACF,CAAA;AAEA,IAAA,MAAA,CAAa,cAAc,CAAA,CAAA;AAE3B,IAAAC,WAAA,CAAQC,+BAAsB,cAAc,CAAA,CAAA;;;;;;;;;;"}
@@ -1,13 +1,10 @@
1
1
  import type { ComponentPublicInstance } from 'vue';
2
2
  import type { MaybeRef } from '@vueuse/core';
3
+ import type { Modifier } from '@popperjs/core';
3
4
  import type { Measurable } from 'element-plus/es/tokens';
4
5
  import type { PopperCoreConfigProps } from './content';
5
- declare type ArrowProps = {
6
- arrowEl: HTMLElement | undefined;
7
- arrowOffset: number | undefined;
8
- };
9
- export declare const buildPopperOptions: (props: PopperCoreConfigProps, arrowProps: ArrowProps) => {
10
- modifiers: ({
6
+ export declare const buildPopperOptions: (props: PopperCoreConfigProps, modifiers?: Modifier<any, any>[]) => {
7
+ modifiers: (Modifier<any, any> | {
11
8
  name: string;
12
9
  options: {
13
10
  offset: number[];
@@ -50,4 +47,3 @@ export declare const buildPopperOptions: (props: PopperCoreConfigProps, arrowPro
50
47
  onFirstUpdate?: ((arg0: Partial<import("@popperjs/core").State>) => void) | undefined;
51
48
  };
52
49
  export declare const unwrapMeasurableEl: ($el: MaybeRef<Measurable | undefined | ComponentPublicInstance>) => HTMLElement | undefined;
53
- export {};
@@ -4,15 +4,14 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var core = require('@vueuse/core');
6
6
 
7
- const buildPopperOptions = (props, arrowProps) => {
7
+ const buildPopperOptions = (props, modifiers = []) => {
8
8
  const { placement, strategy, popperOptions } = props;
9
9
  const options = {
10
10
  placement,
11
11
  strategy,
12
12
  ...popperOptions,
13
- modifiers: genModifiers(props)
13
+ modifiers: [...genModifiers(props), ...modifiers]
14
14
  };
15
- attachArrow(options, arrowProps);
16
15
  deriveExtraModifiers(options, popperOptions == null ? void 0 : popperOptions.modifiers);
17
16
  return options;
18
17
  };
@@ -56,15 +55,6 @@ function genModifiers(options) {
56
55
  }
57
56
  ];
58
57
  }
59
- function attachArrow(options, { arrowEl, arrowOffset }) {
60
- options.modifiers.push({
61
- name: "arrow",
62
- options: {
63
- element: arrowEl,
64
- padding: arrowOffset != null ? arrowOffset : 5
65
- }
66
- });
67
- }
68
58
  function deriveExtraModifiers(options, modifiers) {
69
59
  if (modifiers) {
70
60
  options.modifiers = [...options.modifiers, ...modifiers != null ? modifiers : []];