element-pe 2.2.78 → 2.2.79

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 (738) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +151 -101
  3. package/dist/index.full.min.js +13 -13
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +13 -13
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +151 -101
  8. package/es/components/affix/index.mjs +2 -2
  9. package/es/components/affix/src/affix.mjs +26 -119
  10. package/es/components/affix/src/affix.mjs.map +1 -1
  11. package/es/components/affix/src/affix2.mjs +119 -26
  12. package/es/components/affix/src/affix2.mjs.map +1 -1
  13. package/es/components/autocomplete/index.d.ts +3 -3
  14. package/es/components/autocomplete/src/autocomplete.mjs +1 -0
  15. package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
  16. package/es/components/autocomplete/src/autocomplete.vue.d.ts +3 -3
  17. package/es/components/backtop/index.mjs +2 -2
  18. package/es/components/backtop/src/backtop.mjs +61 -23
  19. package/es/components/backtop/src/backtop.mjs.map +1 -1
  20. package/es/components/backtop/src/backtop2.mjs +23 -61
  21. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  22. package/es/components/breadcrumb/index.d.ts +2 -6
  23. package/es/components/breadcrumb/index.mjs +2 -2
  24. package/es/components/breadcrumb/src/breadcrumb-item.mjs +5 -5
  25. package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
  26. package/es/components/breadcrumb/src/breadcrumb-item.vue.d.ts +1 -3
  27. package/es/components/breadcrumb/src/breadcrumb.mjs +11 -36
  28. package/es/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
  29. package/es/components/breadcrumb/src/breadcrumb2.mjs +36 -11
  30. package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  31. package/es/components/cascader/index.d.ts +8 -6
  32. package/es/components/cascader/src/cascader.mjs +1 -1
  33. package/es/components/cascader/src/cascader.vue.d.ts +4 -3
  34. package/es/components/cascader/src/cascader2.mjs +8 -1
  35. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  36. package/es/components/cascader-panel/src/index.mjs +7 -3
  37. package/es/components/cascader-panel/src/index.mjs.map +1 -1
  38. package/es/components/cascader-panel/src/menu.mjs +1 -1
  39. package/es/components/cascader-panel/src/node.mjs +209 -116
  40. package/es/components/cascader-panel/src/node.mjs.map +1 -1
  41. package/es/components/cascader-panel/src/node2.mjs +116 -209
  42. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  43. package/es/components/cascader-panel/src/store.mjs +1 -1
  44. package/es/components/check-tag/index.mjs +2 -2
  45. package/es/components/check-tag/src/check-tag.mjs +12 -31
  46. package/es/components/check-tag/src/check-tag.mjs.map +1 -1
  47. package/es/components/check-tag/src/check-tag2.mjs +31 -12
  48. package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
  49. package/es/components/checkbox/index.mjs +2 -2
  50. package/es/components/checkbox/src/checkbox-button.mjs +1 -1
  51. package/es/components/checkbox/src/checkbox.mjs +125 -54
  52. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  53. package/es/components/checkbox/src/checkbox2.mjs +54 -125
  54. package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
  55. package/es/components/col/index.mjs +2 -2
  56. package/es/components/col/src/col.mjs +66 -43
  57. package/es/components/col/src/col.mjs.map +1 -1
  58. package/es/components/col/src/col2.mjs +43 -66
  59. package/es/components/col/src/col2.mjs.map +1 -1
  60. package/es/components/collapse/index.d.ts +6 -0
  61. package/es/components/collapse/index.mjs +2 -2
  62. package/es/components/collapse/src/collapse-item.vue.d.ts +3 -0
  63. package/es/components/collapse/src/collapse.mjs +17 -30
  64. package/es/components/collapse/src/collapse.mjs.map +1 -1
  65. package/es/components/collapse/src/collapse2.mjs +30 -17
  66. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  67. package/es/components/collapse-transition/index.d.ts +6 -0
  68. package/es/components/collapse-transition/src/collapse-transition.mjs +15 -8
  69. package/es/components/collapse-transition/src/collapse-transition.mjs.map +1 -1
  70. package/es/components/collapse-transition/src/collapse-transition.vue.d.ts +3 -0
  71. package/es/components/color-picker/index.d.ts +3 -3
  72. package/es/components/color-picker/src/color-picker.vue.d.ts +3 -3
  73. package/es/components/countdown/index.mjs +2 -2
  74. package/es/components/countdown/src/countdown.mjs +23 -76
  75. package/es/components/countdown/src/countdown.mjs.map +1 -1
  76. package/es/components/countdown/src/countdown2.mjs +76 -23
  77. package/es/components/countdown/src/countdown2.mjs.map +1 -1
  78. package/es/components/date-picker/index.d.ts +1 -0
  79. package/es/components/date-picker/index.mjs.map +1 -1
  80. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs +19 -2
  81. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  82. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +2 -0
  83. package/es/components/date-picker/src/date-picker.mjs.map +1 -1
  84. package/es/components/date-picker/src/instance.d.ts +8 -0
  85. package/es/components/date-picker/src/instance.mjs +2 -0
  86. package/es/components/date-picker/src/instance.mjs.map +1 -0
  87. package/es/components/date-picker/src/panel-utils.d.ts +2 -0
  88. package/es/components/descriptions/src/description2.mjs +1 -1
  89. package/es/components/descriptions/src/descriptions-row.mjs +64 -7
  90. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  91. package/es/components/descriptions/src/descriptions-row2.mjs +7 -64
  92. package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
  93. package/es/components/dialog/index.d.ts +48 -45
  94. package/es/components/dialog/src/dialog-content.d.ts +4 -4
  95. package/es/components/dialog/src/dialog-content.mjs +4 -16
  96. package/es/components/dialog/src/dialog-content.mjs.map +1 -1
  97. package/es/components/dialog/src/dialog-content.vue.d.ts +20 -17
  98. package/es/components/dialog/src/dialog-content2.mjs +9 -8
  99. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  100. package/es/components/dialog/src/dialog.d.ts +7 -7
  101. package/es/components/dialog/src/dialog.mjs +3 -12
  102. package/es/components/dialog/src/dialog.mjs.map +1 -1
  103. package/es/components/dialog/src/dialog.vue.d.ts +48 -45
  104. package/es/components/divider/index.mjs +2 -2
  105. package/es/components/divider/src/divider.mjs +35 -17
  106. package/es/components/divider/src/divider.mjs.map +1 -1
  107. package/es/components/divider/src/divider2.mjs +17 -35
  108. package/es/components/divider/src/divider2.mjs.map +1 -1
  109. package/es/components/drawer/index.d.ts +21 -21
  110. package/es/components/drawer/src/drawer.d.ts +7 -7
  111. package/es/components/drawer/src/drawer.vue.d.ts +21 -21
  112. package/es/components/dropdown/index.d.ts +2 -2
  113. package/es/components/dropdown/index.mjs +2 -2
  114. package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
  115. package/es/components/dropdown/src/dropdown-item.mjs +1 -1
  116. package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
  117. package/es/components/dropdown/src/dropdown.mjs +310 -105
  118. package/es/components/dropdown/src/dropdown.mjs.map +1 -1
  119. package/es/components/dropdown/src/dropdown.vue.d.ts +2 -2
  120. package/es/components/dropdown/src/dropdown2.mjs +105 -310
  121. package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
  122. package/es/components/focus-trap/src/focus-trap.mjs +1 -1
  123. package/es/components/focus-trap/src/focus-trap.mjs.map +1 -1
  124. package/es/components/icon/index.mjs +2 -2
  125. package/es/components/icon/src/icon.mjs +8 -36
  126. package/es/components/icon/src/icon.mjs.map +1 -1
  127. package/es/components/icon/src/icon2.mjs +36 -8
  128. package/es/components/icon/src/icon2.mjs.map +1 -1
  129. package/es/components/image/index.mjs +2 -2
  130. package/es/components/image/src/image.mjs +227 -56
  131. package/es/components/image/src/image.mjs.map +1 -1
  132. package/es/components/image/src/image2.mjs +56 -227
  133. package/es/components/image/src/image2.mjs.map +1 -1
  134. package/es/components/index.mjs +35 -35
  135. package/es/components/input/index.d.ts +1 -2
  136. package/es/components/input/index.mjs.map +1 -1
  137. package/es/components/input/src/input.mjs.map +1 -1
  138. package/es/components/input/src/instance.d.ts +2 -0
  139. package/es/components/input/src/instance.mjs +2 -0
  140. package/es/components/input/src/instance.mjs.map +1 -0
  141. package/es/components/menu/index.mjs +2 -2
  142. package/es/components/menu/src/menu-item.mjs +97 -14
  143. package/es/components/menu/src/menu-item.mjs.map +1 -1
  144. package/es/components/menu/src/menu-item2.mjs +14 -97
  145. package/es/components/menu/src/menu-item2.mjs.map +1 -1
  146. package/es/components/menu/src/sub-menu.mjs +2 -0
  147. package/es/components/menu/src/sub-menu.mjs.map +1 -1
  148. package/es/components/notification/index.mjs +1 -1
  149. package/es/components/notification/src/notification.mjs +151 -67
  150. package/es/components/notification/src/notification.mjs.map +1 -1
  151. package/es/components/notification/src/notification2.mjs +67 -151
  152. package/es/components/notification/src/notification2.mjs.map +1 -1
  153. package/es/components/notification/src/notify.mjs +2 -2
  154. package/es/components/pagination/src/components/jumper.mjs +60 -9
  155. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  156. package/es/components/pagination/src/components/jumper2.mjs +9 -60
  157. package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
  158. package/es/components/pagination/src/components/next.mjs +38 -19
  159. package/es/components/pagination/src/components/next.mjs.map +1 -1
  160. package/es/components/pagination/src/components/next2.mjs +19 -38
  161. package/es/components/pagination/src/components/next2.mjs.map +1 -1
  162. package/es/components/pagination/src/components/prev.mjs +38 -18
  163. package/es/components/pagination/src/components/prev.mjs.map +1 -1
  164. package/es/components/pagination/src/components/prev2.mjs +18 -38
  165. package/es/components/pagination/src/components/prev2.mjs.map +1 -1
  166. package/es/components/pagination/src/components/sizes.mjs +70 -22
  167. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  168. package/es/components/pagination/src/components/sizes.vue.d.ts +5 -5
  169. package/es/components/pagination/src/components/sizes2.mjs +22 -70
  170. package/es/components/pagination/src/components/sizes2.mjs.map +1 -1
  171. package/es/components/pagination/src/pagination.mjs +4 -4
  172. package/es/components/popconfirm/index.d.ts +3 -3
  173. package/es/components/popconfirm/index.mjs +2 -2
  174. package/es/components/popconfirm/src/popconfirm.mjs +110 -47
  175. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  176. package/es/components/popconfirm/src/popconfirm.vue.d.ts +3 -3
  177. package/es/components/popconfirm/src/popconfirm2.mjs +47 -110
  178. package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
  179. package/es/components/popover/index.d.ts +3 -3
  180. package/es/components/popover/src/popover.vue.d.ts +3 -3
  181. package/es/components/popover/src/popover2.mjs +2 -2
  182. package/es/components/popper/index.mjs +2 -2
  183. package/es/components/popper/src/content.mjs +139 -94
  184. package/es/components/popper/src/content.mjs.map +1 -1
  185. package/es/components/popper/src/content2.mjs +94 -139
  186. package/es/components/popper/src/content2.mjs.map +1 -1
  187. package/es/components/progress/index.mjs +2 -2
  188. package/es/components/progress/src/progress.mjs +59 -205
  189. package/es/components/progress/src/progress.mjs.map +1 -1
  190. package/es/components/progress/src/progress2.mjs +205 -59
  191. package/es/components/progress/src/progress2.mjs.map +1 -1
  192. package/es/components/radio/index.mjs +4 -4
  193. package/es/components/radio/src/radio-button.mjs +1 -1
  194. package/es/components/radio/src/radio-button.mjs.map +1 -1
  195. package/es/components/radio/src/radio-button2.mjs +1 -1
  196. package/es/components/radio/src/radio-group.mjs +42 -70
  197. package/es/components/radio/src/radio-group.mjs.map +1 -1
  198. package/es/components/radio/src/radio-group2.mjs +70 -42
  199. package/es/components/radio/src/radio-group2.mjs.map +1 -1
  200. package/es/components/radio/src/radio.mjs +35 -74
  201. package/es/components/radio/src/radio.mjs.map +1 -1
  202. package/es/components/radio/src/radio2.mjs +74 -35
  203. package/es/components/radio/src/radio2.mjs.map +1 -1
  204. package/es/components/rate/index.mjs +2 -2
  205. package/es/components/rate/src/rate.mjs +92 -258
  206. package/es/components/rate/src/rate.mjs.map +1 -1
  207. package/es/components/rate/src/rate2.mjs +258 -92
  208. package/es/components/rate/src/rate2.mjs.map +1 -1
  209. package/es/components/resizable-columns/index.mjs +2 -2
  210. package/es/components/resizable-columns/src/resizable-column.mjs +7 -114
  211. package/es/components/resizable-columns/src/resizable-column.mjs.map +1 -1
  212. package/es/components/resizable-columns/src/resizable-column2.mjs +114 -7
  213. package/es/components/resizable-columns/src/resizable-column2.mjs.map +1 -1
  214. package/es/components/row/index.d.ts +18 -4
  215. package/es/components/row/index.mjs +2 -2
  216. package/es/components/row/src/row.d.ts +6 -1
  217. package/es/components/row/src/row.mjs +45 -30
  218. package/es/components/row/src/row.mjs.map +1 -1
  219. package/es/components/row/src/row.vue.d.ts +18 -4
  220. package/es/components/row/src/row2.mjs +29 -45
  221. package/es/components/row/src/row2.mjs.map +1 -1
  222. package/es/components/scrollbar/index.mjs +2 -2
  223. package/es/components/scrollbar/src/bar.mjs +17 -42
  224. package/es/components/scrollbar/src/bar.mjs.map +1 -1
  225. package/es/components/scrollbar/src/bar2.mjs +42 -17
  226. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  227. package/es/components/scrollbar/src/scrollbar.mjs +46 -176
  228. package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
  229. package/es/components/scrollbar/src/scrollbar2.mjs +176 -46
  230. package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
  231. package/es/components/select/index.d.ts +5 -5
  232. package/es/components/select/src/select.mjs +17 -19
  233. package/es/components/select/src/select.mjs.map +1 -1
  234. package/es/components/select/src/select.vue.d.ts +5 -5
  235. package/es/components/select/src/useSelect.d.ts +10 -4
  236. package/es/components/select/src/useSelect.mjs +31 -22
  237. package/es/components/select/src/useSelect.mjs.map +1 -1
  238. package/es/components/select-v2/index.d.ts +4 -4
  239. package/es/components/select-v2/src/select.vue.d.ts +2 -2
  240. package/es/components/select-v2/src/useSelect.d.ts +2 -2
  241. package/es/components/skeleton/index.mjs +2 -2
  242. package/es/components/skeleton/src/skeleton.mjs +22 -49
  243. package/es/components/skeleton/src/skeleton.mjs.map +1 -1
  244. package/es/components/skeleton/src/skeleton2.mjs +49 -22
  245. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  246. package/es/components/slider/index.d.ts +5 -5
  247. package/es/components/slider/index.mjs +2 -2
  248. package/es/components/slider/src/button.mjs +94 -21
  249. package/es/components/slider/src/button.mjs.map +1 -1
  250. package/es/components/slider/src/button.vue.d.ts +1 -1
  251. package/es/components/slider/src/button2.mjs +21 -94
  252. package/es/components/slider/src/button2.mjs.map +1 -1
  253. package/es/components/slider/src/composables/use-slide.d.ts +4 -4
  254. package/es/components/slider/src/slider.mjs +96 -237
  255. package/es/components/slider/src/slider.mjs.map +1 -1
  256. package/es/components/slider/src/slider.vue.d.ts +5 -5
  257. package/es/components/slider/src/slider2.mjs +237 -96
  258. package/es/components/slider/src/slider2.mjs.map +1 -1
  259. package/es/components/statistic/index.mjs +2 -2
  260. package/es/components/statistic/src/statistic.mjs +70 -25
  261. package/es/components/statistic/src/statistic.mjs.map +1 -1
  262. package/es/components/statistic/src/statistic2.mjs +25 -70
  263. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  264. package/es/components/switch/index.d.ts +36 -0
  265. package/es/components/switch/src/switch.d.ts +12 -0
  266. package/es/components/switch/src/switch.mjs +6 -0
  267. package/es/components/switch/src/switch.mjs.map +1 -1
  268. package/es/components/switch/src/switch.vue.d.ts +36 -0
  269. package/es/components/switch/src/switch2.mjs +11 -1
  270. package/es/components/switch/src/switch2.mjs.map +1 -1
  271. package/es/components/table/src/filter-panel.vue.d.ts +2 -2
  272. package/es/components/table/src/table-body/events-helper.mjs +10 -2
  273. package/es/components/table/src/table-body/events-helper.mjs.map +1 -1
  274. package/es/components/table/src/table-column/watcher-helper.mjs +1 -0
  275. package/es/components/table/src/table-column/watcher-helper.mjs.map +1 -1
  276. package/es/components/tabs/index.mjs +2 -2
  277. package/es/components/tabs/src/tab-pane.mjs +14 -76
  278. package/es/components/tabs/src/tab-pane.mjs.map +1 -1
  279. package/es/components/tabs/src/tab-pane2.mjs +76 -14
  280. package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
  281. package/es/components/tag/index.mjs +2 -2
  282. package/es/components/tag/src/tag.mjs +98 -33
  283. package/es/components/tag/src/tag.mjs.map +1 -1
  284. package/es/components/tag/src/tag2.mjs +33 -98
  285. package/es/components/tag/src/tag2.mjs.map +1 -1
  286. package/es/components/time-picker/src/common/picker.vue.d.ts +3 -3
  287. package/es/components/time-select/index.d.ts +20 -20
  288. package/es/components/time-select/index.mjs +1 -1
  289. package/es/components/time-select/src/time-select.mjs +55 -132
  290. package/es/components/time-select/src/time-select.mjs.map +1 -1
  291. package/es/components/time-select/src/time-select.vue.d.ts +10 -10
  292. package/es/components/time-select/src/time-select2.mjs +132 -55
  293. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  294. package/es/components/timeline/index.mjs +2 -2
  295. package/es/components/timeline/src/timeline-item.mjs +72 -42
  296. package/es/components/timeline/src/timeline-item.mjs.map +1 -1
  297. package/es/components/timeline/src/timeline-item2.mjs +42 -72
  298. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  299. package/es/components/tooltip/index.d.ts +1 -1
  300. package/es/components/tooltip/index.mjs +1 -1
  301. package/es/components/tooltip/src/content.mjs +1 -1
  302. package/es/components/tooltip/src/content2.mjs +1 -1
  303. package/es/components/tooltip/src/tooltip.mjs +1 -1
  304. package/es/components/tooltip/src/tooltip.vue.d.ts +151 -410
  305. package/es/components/tooltip/src/tooltip2.mjs +4 -3
  306. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  307. package/es/components/tooltip/src/trigger.mjs +73 -16
  308. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  309. package/es/components/tooltip/src/trigger2.mjs +16 -73
  310. package/es/components/tooltip/src/trigger2.mjs.map +1 -1
  311. package/es/components/tooltip-v2/index.mjs +3 -3
  312. package/es/components/tooltip-v2/src/arrow.mjs +22 -37
  313. package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
  314. package/es/components/tooltip-v2/src/arrow2.mjs +37 -22
  315. package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
  316. package/es/components/tooltip-v2/src/content2.mjs +1 -1
  317. package/es/components/tooltip-v2/src/root.mjs +17 -82
  318. package/es/components/tooltip-v2/src/root.mjs.map +1 -1
  319. package/es/components/tooltip-v2/src/root2.mjs +82 -17
  320. package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
  321. package/es/components/tooltip-v2/src/tooltip.mjs +3 -3
  322. package/es/components/tooltip-v2/src/tooltip2.mjs +6 -6
  323. package/es/components/tooltip-v2/src/trigger.mjs +12 -91
  324. package/es/components/tooltip-v2/src/trigger.mjs.map +1 -1
  325. package/es/components/tooltip-v2/src/trigger2.mjs +91 -12
  326. package/es/components/tooltip-v2/src/trigger2.mjs.map +1 -1
  327. package/es/components/transfer/index.mjs +2 -2
  328. package/es/components/transfer/src/composables/use-check.mjs +1 -1
  329. package/es/components/transfer/src/composables/use-checked-change.mjs +1 -1
  330. package/es/components/transfer/src/transfer-panel.mjs +128 -19
  331. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  332. package/es/components/transfer/src/transfer-panel2.mjs +19 -128
  333. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  334. package/es/components/transfer/src/transfer.mjs +69 -162
  335. package/es/components/transfer/src/transfer.mjs.map +1 -1
  336. package/es/components/transfer/src/transfer2.mjs +162 -69
  337. package/es/components/transfer/src/transfer2.mjs.map +1 -1
  338. package/es/components/upload/index.mjs +4 -4
  339. package/es/components/upload/src/upload-content.mjs +2 -2
  340. package/es/components/upload/src/upload-content2.mjs +1 -1
  341. package/es/components/upload/src/upload-dragger.mjs +11 -72
  342. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  343. package/es/components/upload/src/upload-dragger2.mjs +72 -11
  344. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  345. package/es/components/upload/src/upload-list.mjs +179 -26
  346. package/es/components/upload/src/upload-list.mjs.map +1 -1
  347. package/es/components/upload/src/upload-list2.mjs +26 -179
  348. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  349. package/es/components/upload/src/upload.d.ts +1 -1
  350. package/es/components/upload/src/upload.mjs +119 -106
  351. package/es/components/upload/src/upload.mjs.map +1 -1
  352. package/es/components/upload/src/upload2.mjs +106 -119
  353. package/es/components/upload/src/upload2.mjs.map +1 -1
  354. package/es/components/upload/src/use-handlers.mjs +1 -1
  355. package/es/components/visual-hidden/index.mjs +3 -3
  356. package/es/components/visual-hidden/src/visual-hidden.mjs +7 -35
  357. package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
  358. package/es/components/visual-hidden/src/visual-hidden2.mjs +35 -7
  359. package/es/components/visual-hidden/src/visual-hidden2.mjs.map +1 -1
  360. package/es/hooks/use-focus-controller/index.mjs +0 -1
  361. package/es/hooks/use-focus-controller/index.mjs.map +1 -1
  362. package/es/hooks/use-namespace/index.mjs +2 -2
  363. package/es/hooks/use-namespace/index.mjs.map +1 -1
  364. package/es/hooks/use-z-index/index.mjs +2 -2
  365. package/es/hooks/use-z-index/index.mjs.map +1 -1
  366. package/es/index.mjs +35 -35
  367. package/lib/components/affix/index.js +2 -2
  368. package/lib/components/affix/src/affix.js +27 -119
  369. package/lib/components/affix/src/affix.js.map +1 -1
  370. package/lib/components/affix/src/affix2.js +119 -27
  371. package/lib/components/affix/src/affix2.js.map +1 -1
  372. package/lib/components/autocomplete/index.d.ts +3 -3
  373. package/lib/components/autocomplete/src/autocomplete.js +1 -0
  374. package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
  375. package/lib/components/autocomplete/src/autocomplete.vue.d.ts +3 -3
  376. package/lib/components/backtop/index.js +2 -2
  377. package/lib/components/backtop/src/backtop.js +61 -24
  378. package/lib/components/backtop/src/backtop.js.map +1 -1
  379. package/lib/components/backtop/src/backtop2.js +24 -61
  380. package/lib/components/backtop/src/backtop2.js.map +1 -1
  381. package/lib/components/breadcrumb/index.d.ts +2 -6
  382. package/lib/components/breadcrumb/index.js +2 -2
  383. package/lib/components/breadcrumb/src/breadcrumb-item.js +4 -4
  384. package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
  385. package/lib/components/breadcrumb/src/breadcrumb-item.vue.d.ts +1 -3
  386. package/lib/components/breadcrumb/src/breadcrumb.js +11 -36
  387. package/lib/components/breadcrumb/src/breadcrumb.js.map +1 -1
  388. package/lib/components/breadcrumb/src/breadcrumb2.js +36 -11
  389. package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  390. package/lib/components/cascader/index.d.ts +8 -6
  391. package/lib/components/cascader/src/cascader.js +1 -1
  392. package/lib/components/cascader/src/cascader.vue.d.ts +4 -3
  393. package/lib/components/cascader/src/cascader2.js +8 -1
  394. package/lib/components/cascader/src/cascader2.js.map +1 -1
  395. package/lib/components/cascader-panel/src/index.js +6 -2
  396. package/lib/components/cascader-panel/src/index.js.map +1 -1
  397. package/lib/components/cascader-panel/src/menu.js +1 -1
  398. package/lib/components/cascader-panel/src/node.js +209 -116
  399. package/lib/components/cascader-panel/src/node.js.map +1 -1
  400. package/lib/components/cascader-panel/src/node2.js +116 -209
  401. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  402. package/lib/components/cascader-panel/src/store.js +1 -1
  403. package/lib/components/check-tag/index.js +2 -2
  404. package/lib/components/check-tag/src/check-tag.js +13 -31
  405. package/lib/components/check-tag/src/check-tag.js.map +1 -1
  406. package/lib/components/check-tag/src/check-tag2.js +31 -13
  407. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  408. package/lib/components/checkbox/index.js +2 -2
  409. package/lib/components/checkbox/src/checkbox-button.js +1 -1
  410. package/lib/components/checkbox/src/checkbox.js +125 -55
  411. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  412. package/lib/components/checkbox/src/checkbox2.js +55 -125
  413. package/lib/components/checkbox/src/checkbox2.js.map +1 -1
  414. package/lib/components/col/index.js +2 -2
  415. package/lib/components/col/src/col.js +66 -43
  416. package/lib/components/col/src/col.js.map +1 -1
  417. package/lib/components/col/src/col2.js +43 -66
  418. package/lib/components/col/src/col2.js.map +1 -1
  419. package/lib/components/collapse/index.d.ts +6 -0
  420. package/lib/components/collapse/index.js +2 -2
  421. package/lib/components/collapse/src/collapse-item.vue.d.ts +3 -0
  422. package/lib/components/collapse/src/collapse.js +19 -30
  423. package/lib/components/collapse/src/collapse.js.map +1 -1
  424. package/lib/components/collapse/src/collapse2.js +30 -19
  425. package/lib/components/collapse/src/collapse2.js.map +1 -1
  426. package/lib/components/collapse-transition/index.d.ts +6 -0
  427. package/lib/components/collapse-transition/src/collapse-transition.js +15 -8
  428. package/lib/components/collapse-transition/src/collapse-transition.js.map +1 -1
  429. package/lib/components/collapse-transition/src/collapse-transition.vue.d.ts +3 -0
  430. package/lib/components/color-picker/index.d.ts +3 -3
  431. package/lib/components/color-picker/src/color-picker.vue.d.ts +3 -3
  432. package/lib/components/countdown/index.js +2 -2
  433. package/lib/components/countdown/src/countdown.js +24 -76
  434. package/lib/components/countdown/src/countdown.js.map +1 -1
  435. package/lib/components/countdown/src/countdown2.js +76 -24
  436. package/lib/components/countdown/src/countdown2.js.map +1 -1
  437. package/lib/components/date-picker/index.d.ts +1 -0
  438. package/lib/components/date-picker/index.js.map +1 -1
  439. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js +19 -2
  440. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
  441. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +2 -0
  442. package/lib/components/date-picker/src/date-picker.js.map +1 -1
  443. package/lib/components/date-picker/src/instance.d.ts +8 -0
  444. package/lib/components/date-picker/src/instance.js +3 -0
  445. package/lib/components/date-picker/src/instance.js.map +1 -0
  446. package/lib/components/date-picker/src/panel-utils.d.ts +2 -0
  447. package/lib/components/descriptions/src/description2.js +1 -1
  448. package/lib/components/descriptions/src/descriptions-row.js +64 -7
  449. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  450. package/lib/components/descriptions/src/descriptions-row2.js +7 -64
  451. package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
  452. package/lib/components/dialog/index.d.ts +48 -45
  453. package/lib/components/dialog/src/dialog-content.d.ts +4 -4
  454. package/lib/components/dialog/src/dialog-content.js +4 -16
  455. package/lib/components/dialog/src/dialog-content.js.map +1 -1
  456. package/lib/components/dialog/src/dialog-content.vue.d.ts +20 -17
  457. package/lib/components/dialog/src/dialog-content2.js +9 -8
  458. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  459. package/lib/components/dialog/src/dialog.d.ts +7 -7
  460. package/lib/components/dialog/src/dialog.js +3 -12
  461. package/lib/components/dialog/src/dialog.js.map +1 -1
  462. package/lib/components/dialog/src/dialog.vue.d.ts +48 -45
  463. package/lib/components/divider/index.js +2 -2
  464. package/lib/components/divider/src/divider.js +35 -17
  465. package/lib/components/divider/src/divider.js.map +1 -1
  466. package/lib/components/divider/src/divider2.js +17 -35
  467. package/lib/components/divider/src/divider2.js.map +1 -1
  468. package/lib/components/drawer/index.d.ts +21 -21
  469. package/lib/components/drawer/src/drawer.d.ts +7 -7
  470. package/lib/components/drawer/src/drawer.vue.d.ts +21 -21
  471. package/lib/components/dropdown/index.d.ts +2 -2
  472. package/lib/components/dropdown/index.js +2 -2
  473. package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
  474. package/lib/components/dropdown/src/dropdown-item.js +1 -1
  475. package/lib/components/dropdown/src/dropdown-menu.js +1 -1
  476. package/lib/components/dropdown/src/dropdown.js +310 -114
  477. package/lib/components/dropdown/src/dropdown.js.map +1 -1
  478. package/lib/components/dropdown/src/dropdown.vue.d.ts +2 -2
  479. package/lib/components/dropdown/src/dropdown2.js +114 -310
  480. package/lib/components/dropdown/src/dropdown2.js.map +1 -1
  481. package/lib/components/focus-trap/src/focus-trap.js +1 -1
  482. package/lib/components/focus-trap/src/focus-trap.js.map +1 -1
  483. package/lib/components/icon/index.js +2 -2
  484. package/lib/components/icon/src/icon.js +8 -36
  485. package/lib/components/icon/src/icon.js.map +1 -1
  486. package/lib/components/icon/src/icon2.js +36 -8
  487. package/lib/components/icon/src/icon2.js.map +1 -1
  488. package/lib/components/image/index.js +2 -2
  489. package/lib/components/image/src/image.js +226 -56
  490. package/lib/components/image/src/image.js.map +1 -1
  491. package/lib/components/image/src/image2.js +56 -226
  492. package/lib/components/image/src/image2.js.map +1 -1
  493. package/lib/components/index.js +35 -35
  494. package/lib/components/input/index.d.ts +1 -2
  495. package/lib/components/input/index.js.map +1 -1
  496. package/lib/components/input/src/input.js.map +1 -1
  497. package/lib/components/input/src/instance.d.ts +2 -0
  498. package/lib/components/input/src/instance.js +3 -0
  499. package/lib/components/input/src/instance.js.map +1 -0
  500. package/lib/components/menu/index.js +2 -2
  501. package/lib/components/menu/src/menu-item.js +97 -15
  502. package/lib/components/menu/src/menu-item.js.map +1 -1
  503. package/lib/components/menu/src/menu-item2.js +15 -97
  504. package/lib/components/menu/src/menu-item2.js.map +1 -1
  505. package/lib/components/menu/src/sub-menu.js +2 -0
  506. package/lib/components/menu/src/sub-menu.js.map +1 -1
  507. package/lib/components/notification/index.js +1 -1
  508. package/lib/components/notification/src/notification.js +150 -68
  509. package/lib/components/notification/src/notification.js.map +1 -1
  510. package/lib/components/notification/src/notification2.js +68 -150
  511. package/lib/components/notification/src/notification2.js.map +1 -1
  512. package/lib/components/notification/src/notify.js +2 -2
  513. package/lib/components/pagination/src/components/jumper.js +60 -9
  514. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  515. package/lib/components/pagination/src/components/jumper2.js +9 -60
  516. package/lib/components/pagination/src/components/jumper2.js.map +1 -1
  517. package/lib/components/pagination/src/components/next.js +38 -19
  518. package/lib/components/pagination/src/components/next.js.map +1 -1
  519. package/lib/components/pagination/src/components/next2.js +19 -38
  520. package/lib/components/pagination/src/components/next2.js.map +1 -1
  521. package/lib/components/pagination/src/components/prev.js +38 -19
  522. package/lib/components/pagination/src/components/prev.js.map +1 -1
  523. package/lib/components/pagination/src/components/prev2.js +19 -38
  524. package/lib/components/pagination/src/components/prev2.js.map +1 -1
  525. package/lib/components/pagination/src/components/sizes.js +70 -22
  526. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  527. package/lib/components/pagination/src/components/sizes.vue.d.ts +5 -5
  528. package/lib/components/pagination/src/components/sizes2.js +22 -70
  529. package/lib/components/pagination/src/components/sizes2.js.map +1 -1
  530. package/lib/components/pagination/src/pagination.js +4 -4
  531. package/lib/components/popconfirm/index.d.ts +3 -3
  532. package/lib/components/popconfirm/index.js +2 -2
  533. package/lib/components/popconfirm/src/popconfirm.js +110 -48
  534. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  535. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +3 -3
  536. package/lib/components/popconfirm/src/popconfirm2.js +48 -110
  537. package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
  538. package/lib/components/popover/index.d.ts +3 -3
  539. package/lib/components/popover/src/popover.vue.d.ts +3 -3
  540. package/lib/components/popover/src/popover2.js +2 -2
  541. package/lib/components/popper/index.js +2 -2
  542. package/lib/components/popper/src/content.js +139 -99
  543. package/lib/components/popper/src/content.js.map +1 -1
  544. package/lib/components/popper/src/content2.js +99 -139
  545. package/lib/components/popper/src/content2.js.map +1 -1
  546. package/lib/components/progress/index.js +2 -2
  547. package/lib/components/progress/src/progress.js +59 -205
  548. package/lib/components/progress/src/progress.js.map +1 -1
  549. package/lib/components/progress/src/progress2.js +205 -59
  550. package/lib/components/progress/src/progress2.js.map +1 -1
  551. package/lib/components/radio/index.js +4 -4
  552. package/lib/components/radio/src/radio-button.js +1 -1
  553. package/lib/components/radio/src/radio-button.js.map +1 -1
  554. package/lib/components/radio/src/radio-button2.js +1 -1
  555. package/lib/components/radio/src/radio-group.js +43 -70
  556. package/lib/components/radio/src/radio-group.js.map +1 -1
  557. package/lib/components/radio/src/radio-group2.js +70 -43
  558. package/lib/components/radio/src/radio-group2.js.map +1 -1
  559. package/lib/components/radio/src/radio.js +37 -74
  560. package/lib/components/radio/src/radio.js.map +1 -1
  561. package/lib/components/radio/src/radio2.js +74 -37
  562. package/lib/components/radio/src/radio2.js.map +1 -1
  563. package/lib/components/rate/index.js +2 -2
  564. package/lib/components/rate/src/rate.js +92 -257
  565. package/lib/components/rate/src/rate.js.map +1 -1
  566. package/lib/components/rate/src/rate2.js +257 -92
  567. package/lib/components/rate/src/rate2.js.map +1 -1
  568. package/lib/components/resizable-columns/index.js +2 -2
  569. package/lib/components/resizable-columns/src/resizable-column.js +7 -114
  570. package/lib/components/resizable-columns/src/resizable-column.js.map +1 -1
  571. package/lib/components/resizable-columns/src/resizable-column2.js +114 -7
  572. package/lib/components/resizable-columns/src/resizable-column2.js.map +1 -1
  573. package/lib/components/row/index.d.ts +18 -4
  574. package/lib/components/row/index.js +2 -2
  575. package/lib/components/row/src/row.d.ts +6 -1
  576. package/lib/components/row/src/row.js +45 -32
  577. package/lib/components/row/src/row.js.map +1 -1
  578. package/lib/components/row/src/row.vue.d.ts +18 -4
  579. package/lib/components/row/src/row2.js +31 -45
  580. package/lib/components/row/src/row2.js.map +1 -1
  581. package/lib/components/scrollbar/index.js +2 -2
  582. package/lib/components/scrollbar/src/bar.js +17 -42
  583. package/lib/components/scrollbar/src/bar.js.map +1 -1
  584. package/lib/components/scrollbar/src/bar2.js +42 -17
  585. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  586. package/lib/components/scrollbar/src/scrollbar.js +47 -176
  587. package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
  588. package/lib/components/scrollbar/src/scrollbar2.js +176 -47
  589. package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
  590. package/lib/components/select/index.d.ts +5 -5
  591. package/lib/components/select/src/select.js +17 -19
  592. package/lib/components/select/src/select.js.map +1 -1
  593. package/lib/components/select/src/select.vue.d.ts +5 -5
  594. package/lib/components/select/src/useSelect.d.ts +10 -4
  595. package/lib/components/select/src/useSelect.js +30 -21
  596. package/lib/components/select/src/useSelect.js.map +1 -1
  597. package/lib/components/select-v2/index.d.ts +4 -4
  598. package/lib/components/select-v2/src/select.vue.d.ts +2 -2
  599. package/lib/components/select-v2/src/useSelect.d.ts +2 -2
  600. package/lib/components/skeleton/index.js +2 -2
  601. package/lib/components/skeleton/src/skeleton.js +22 -49
  602. package/lib/components/skeleton/src/skeleton.js.map +1 -1
  603. package/lib/components/skeleton/src/skeleton2.js +49 -22
  604. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  605. package/lib/components/slider/index.d.ts +5 -5
  606. package/lib/components/slider/index.js +2 -2
  607. package/lib/components/slider/src/button.js +94 -22
  608. package/lib/components/slider/src/button.js.map +1 -1
  609. package/lib/components/slider/src/button.vue.d.ts +1 -1
  610. package/lib/components/slider/src/button2.js +22 -94
  611. package/lib/components/slider/src/button2.js.map +1 -1
  612. package/lib/components/slider/src/composables/use-slide.d.ts +4 -4
  613. package/lib/components/slider/src/slider.js +97 -237
  614. package/lib/components/slider/src/slider.js.map +1 -1
  615. package/lib/components/slider/src/slider.vue.d.ts +5 -5
  616. package/lib/components/slider/src/slider2.js +237 -97
  617. package/lib/components/slider/src/slider2.js.map +1 -1
  618. package/lib/components/statistic/index.js +2 -2
  619. package/lib/components/statistic/src/statistic.js +70 -25
  620. package/lib/components/statistic/src/statistic.js.map +1 -1
  621. package/lib/components/statistic/src/statistic2.js +25 -70
  622. package/lib/components/statistic/src/statistic2.js.map +1 -1
  623. package/lib/components/switch/index.d.ts +36 -0
  624. package/lib/components/switch/src/switch.d.ts +12 -0
  625. package/lib/components/switch/src/switch.js +6 -0
  626. package/lib/components/switch/src/switch.js.map +1 -1
  627. package/lib/components/switch/src/switch.vue.d.ts +36 -0
  628. package/lib/components/switch/src/switch2.js +11 -1
  629. package/lib/components/switch/src/switch2.js.map +1 -1
  630. package/lib/components/table/src/filter-panel.vue.d.ts +2 -2
  631. package/lib/components/table/src/table-body/events-helper.js +10 -2
  632. package/lib/components/table/src/table-body/events-helper.js.map +1 -1
  633. package/lib/components/table/src/table-column/watcher-helper.js +1 -0
  634. package/lib/components/table/src/table-column/watcher-helper.js.map +1 -1
  635. package/lib/components/tabs/index.js +2 -2
  636. package/lib/components/tabs/src/tab-pane.js +14 -76
  637. package/lib/components/tabs/src/tab-pane.js.map +1 -1
  638. package/lib/components/tabs/src/tab-pane2.js +76 -14
  639. package/lib/components/tabs/src/tab-pane2.js.map +1 -1
  640. package/lib/components/tag/index.js +2 -2
  641. package/lib/components/tag/src/tag.js +98 -34
  642. package/lib/components/tag/src/tag.js.map +1 -1
  643. package/lib/components/tag/src/tag2.js +34 -98
  644. package/lib/components/tag/src/tag2.js.map +1 -1
  645. package/lib/components/time-picker/src/common/picker.vue.d.ts +3 -3
  646. package/lib/components/time-select/index.d.ts +20 -20
  647. package/lib/components/time-select/index.js +1 -1
  648. package/lib/components/time-select/src/time-select.js +55 -137
  649. package/lib/components/time-select/src/time-select.js.map +1 -1
  650. package/lib/components/time-select/src/time-select.vue.d.ts +10 -10
  651. package/lib/components/time-select/src/time-select2.js +137 -55
  652. package/lib/components/time-select/src/time-select2.js.map +1 -1
  653. package/lib/components/timeline/index.js +2 -2
  654. package/lib/components/timeline/src/timeline-item.js +72 -42
  655. package/lib/components/timeline/src/timeline-item.js.map +1 -1
  656. package/lib/components/timeline/src/timeline-item2.js +42 -72
  657. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  658. package/lib/components/tooltip/index.d.ts +1 -1
  659. package/lib/components/tooltip/index.js +1 -1
  660. package/lib/components/tooltip/src/content.js +1 -1
  661. package/lib/components/tooltip/src/content2.js +1 -1
  662. package/lib/components/tooltip/src/tooltip.js +1 -1
  663. package/lib/components/tooltip/src/tooltip.vue.d.ts +151 -410
  664. package/lib/components/tooltip/src/tooltip2.js +4 -3
  665. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  666. package/lib/components/tooltip/src/trigger.js +73 -16
  667. package/lib/components/tooltip/src/trigger.js.map +1 -1
  668. package/lib/components/tooltip/src/trigger2.js +16 -73
  669. package/lib/components/tooltip/src/trigger2.js.map +1 -1
  670. package/lib/components/tooltip-v2/index.js +3 -3
  671. package/lib/components/tooltip-v2/src/arrow.js +23 -37
  672. package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
  673. package/lib/components/tooltip-v2/src/arrow2.js +37 -23
  674. package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
  675. package/lib/components/tooltip-v2/src/content2.js +1 -1
  676. package/lib/components/tooltip-v2/src/root.js +17 -82
  677. package/lib/components/tooltip-v2/src/root.js.map +1 -1
  678. package/lib/components/tooltip-v2/src/root2.js +82 -17
  679. package/lib/components/tooltip-v2/src/root2.js.map +1 -1
  680. package/lib/components/tooltip-v2/src/tooltip.js +3 -3
  681. package/lib/components/tooltip-v2/src/tooltip2.js +6 -6
  682. package/lib/components/tooltip-v2/src/trigger.js +12 -91
  683. package/lib/components/tooltip-v2/src/trigger.js.map +1 -1
  684. package/lib/components/tooltip-v2/src/trigger2.js +91 -12
  685. package/lib/components/tooltip-v2/src/trigger2.js.map +1 -1
  686. package/lib/components/transfer/index.js +2 -2
  687. package/lib/components/transfer/src/composables/use-check.js +1 -1
  688. package/lib/components/transfer/src/composables/use-checked-change.js +1 -1
  689. package/lib/components/transfer/src/transfer-panel.js +128 -21
  690. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  691. package/lib/components/transfer/src/transfer-panel2.js +21 -128
  692. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  693. package/lib/components/transfer/src/transfer.js +73 -162
  694. package/lib/components/transfer/src/transfer.js.map +1 -1
  695. package/lib/components/transfer/src/transfer2.js +162 -73
  696. package/lib/components/transfer/src/transfer2.js.map +1 -1
  697. package/lib/components/upload/index.js +4 -4
  698. package/lib/components/upload/src/upload-content.js +2 -2
  699. package/lib/components/upload/src/upload-content2.js +1 -1
  700. package/lib/components/upload/src/upload-dragger.js +12 -72
  701. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  702. package/lib/components/upload/src/upload-dragger2.js +72 -12
  703. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  704. package/lib/components/upload/src/upload-list.js +179 -27
  705. package/lib/components/upload/src/upload-list.js.map +1 -1
  706. package/lib/components/upload/src/upload-list2.js +27 -179
  707. package/lib/components/upload/src/upload-list2.js.map +1 -1
  708. package/lib/components/upload/src/upload.d.ts +1 -1
  709. package/lib/components/upload/src/upload.js +119 -109
  710. package/lib/components/upload/src/upload.js.map +1 -1
  711. package/lib/components/upload/src/upload2.js +109 -119
  712. package/lib/components/upload/src/upload2.js.map +1 -1
  713. package/lib/components/upload/src/use-handlers.js +1 -1
  714. package/lib/components/visual-hidden/index.js +2 -2
  715. package/lib/components/visual-hidden/src/visual-hidden.js +7 -35
  716. package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
  717. package/lib/components/visual-hidden/src/visual-hidden2.js +35 -7
  718. package/lib/components/visual-hidden/src/visual-hidden2.js.map +1 -1
  719. package/lib/hooks/use-focus-controller/index.js +0 -1
  720. package/lib/hooks/use-focus-controller/index.js.map +1 -1
  721. package/lib/hooks/use-namespace/index.js +1 -1
  722. package/lib/hooks/use-namespace/index.js.map +1 -1
  723. package/lib/hooks/use-z-index/index.js +1 -1
  724. package/lib/hooks/use-z-index/index.js.map +1 -1
  725. package/lib/index.js +35 -35
  726. package/package.json +1 -1
  727. package/theme-chalk/el-avatar.css +1 -1
  728. package/theme-chalk/el-input.css +1 -1
  729. package/theme-chalk/el-menu.css +1 -1
  730. package/theme-chalk/el-row.css +1 -1
  731. package/theme-chalk/el-tree.css +1 -1
  732. package/theme-chalk/index.css +1 -1
  733. package/theme-chalk/src/avatar.scss +1 -0
  734. package/theme-chalk/src/input.scss +1 -1
  735. package/theme-chalk/src/menu.scss +4 -6
  736. package/theme-chalk/src/row.scss +3 -0
  737. package/theme-chalk/src/tree.scss +1 -0
  738. package/web-types.json +1 -1
@@ -1,319 +1,114 @@
1
- import { defineComponent, getCurrentInstance, ref, computed, toRef, onBeforeUnmount, unref, provide, resolveComponent, openBlock, createElementBlock, normalizeClass, createVNode, createSlots, withCtx, renderSlot, createBlock, mergeProps, createCommentVNode } from 'vue';
2
- import '../../config-provider/index.mjs';
3
- import { ElButton } from '../../button/index.mjs';
4
- import { ElTooltip } from '../../tooltip/index.mjs';
5
- import { ElScrollbar } from '../../scrollbar/index.mjs';
6
- import { ElIcon } from '../../icon/index.mjs';
7
- import '../../roving-focus-group/index.mjs';
8
- import '../../slot/index.mjs';
9
- import '../../form/index.mjs';
10
1
  import '../../../utils/index.mjs';
11
- import { ArrowDown } from '@element-plus/icons-vue';
12
2
  import '../../../constants/index.mjs';
13
- import '../../../hooks/index.mjs';
14
- import { ElCollection, dropdownProps } from './dropdown.mjs';
15
- import { DROPDOWN_INJECTION_KEY } from './tokens.mjs';
16
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
17
- import ElRovingFocusGroup from '../../roving-focus-group/src/roving-focus-group2.mjs';
18
- import { OnlyChild } from '../../slot/src/only-child.mjs';
19
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
20
- import { useLocale } from '../../../hooks/use-locale/index.mjs';
3
+ import '../../collection/index.mjs';
4
+ import '../../tooltip/index.mjs';
5
+ import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
6
+ import { useTooltipTriggerProps } from '../../tooltip/src/trigger2.mjs';
7
+ import { useTooltipContentProps } from '../../tooltip/src/content.mjs';
8
+ import { iconPropType } from '../../../utils/vue/icon.mjs';
21
9
  import { EVENT_CODE } from '../../../constants/aria.mjs';
22
- import { addUnit } from '../../../utils/dom/style.mjs';
23
- import { useId } from '../../../hooks/use-id/index.mjs';
24
- import { watch } from '../../config-provider/src/for-editor.mjs';
25
- import { isArray } from '@vue/shared';
26
- import { useFormSize } from '../../form/src/hooks/use-form-common-props.mjs';
10
+ import { createCollectionWithScope } from '../../collection/src/collection.mjs';
27
11
 
28
- const { ButtonGroup: ElButtonGroup } = ElButton;
29
- const _sfc_main = defineComponent({
30
- name: "ElDropdown",
31
- components: {
32
- ElButton,
33
- ElButtonGroup,
34
- ElScrollbar,
35
- ElDropdownCollection: ElCollection,
36
- ElTooltip,
37
- ElRovingFocusGroup,
38
- ElOnlyChild: OnlyChild,
39
- ElIcon,
40
- ArrowDown
12
+ const dropdownProps = buildProps({
13
+ trigger: useTooltipTriggerProps.trigger,
14
+ effect: {
15
+ ...useTooltipContentProps.effect,
16
+ default: "light"
41
17
  },
42
- props: dropdownProps,
43
- emits: ["visible-change", "click", "command"],
44
- setup(props, { emit }) {
45
- const _instance = getCurrentInstance();
46
- const ns = useNamespace("dropdown");
47
- const { t } = useLocale();
48
- const triggeringElementRef = ref();
49
- const referenceElementRef = ref();
50
- const popperRef = ref(null);
51
- const contentRef = ref(null);
52
- const scrollbar = ref(null);
53
- const currentTabId = ref(null);
54
- const isUsingKeyboard = ref(false);
55
- const triggerKeys = [EVENT_CODE.enter, EVENT_CODE.space, EVENT_CODE.down];
56
- const wrapStyle = computed(() => ({
57
- maxHeight: addUnit(props.maxHeight)
58
- }));
59
- const dropdownTriggerKls = computed(() => [ns.m(dropdownSize.value)]);
60
- const defaultTriggerId = useId().value;
61
- const triggerId = computed(() => {
62
- return props.id || defaultTriggerId;
63
- });
64
- watch([triggeringElementRef, toRef(props, "trigger")], ([triggeringElement, trigger], [prevTriggeringElement]) => {
65
- var _a, _b, _c;
66
- const triggerArray = isArray(trigger) ? trigger : [trigger];
67
- if ((_a = prevTriggeringElement == null ? void 0 : prevTriggeringElement.$el) == null ? void 0 : _a.removeEventListener) {
68
- prevTriggeringElement.$el.removeEventListener("pointerenter", onAutofocusTriggerEnter);
69
- }
70
- if ((_b = triggeringElement == null ? void 0 : triggeringElement.$el) == null ? void 0 : _b.removeEventListener) {
71
- triggeringElement.$el.removeEventListener("pointerenter", onAutofocusTriggerEnter);
72
- }
73
- if (((_c = triggeringElement == null ? void 0 : triggeringElement.$el) == null ? void 0 : _c.addEventListener) && triggerArray.includes("hover")) {
74
- triggeringElement.$el.addEventListener("pointerenter", onAutofocusTriggerEnter);
75
- }
76
- }, { immediate: true });
77
- onBeforeUnmount(() => {
78
- var _a, _b;
79
- if ((_b = (_a = triggeringElementRef.value) == null ? void 0 : _a.$el) == null ? void 0 : _b.removeEventListener) {
80
- triggeringElementRef.value.$el.removeEventListener("pointerenter", onAutofocusTriggerEnter);
81
- }
82
- });
83
- function handleClick() {
84
- handleClose();
85
- }
86
- function handleClose() {
87
- var _a;
88
- (_a = popperRef.value) == null ? void 0 : _a.onClose();
89
- }
90
- function handleOpen() {
91
- var _a;
92
- (_a = popperRef.value) == null ? void 0 : _a.onOpen();
93
- }
94
- const dropdownSize = useFormSize();
95
- function commandHandler(...args) {
96
- emit("command", ...args);
97
- }
98
- function onAutofocusTriggerEnter() {
99
- var _a, _b;
100
- (_b = (_a = triggeringElementRef.value) == null ? void 0 : _a.$el) == null ? void 0 : _b.focus();
101
- }
102
- function onItemEnter() {
103
- }
104
- function onItemLeave() {
105
- const contentEl = unref(contentRef);
106
- contentEl == null ? void 0 : contentEl.focus();
107
- currentTabId.value = null;
108
- }
109
- function handleCurrentTabIdChange(id) {
110
- currentTabId.value = id;
111
- }
112
- function handleEntryFocus(e) {
113
- if (!isUsingKeyboard.value) {
114
- e.preventDefault();
115
- e.stopImmediatePropagation();
116
- }
117
- }
118
- function handleBeforeShowTooltip() {
119
- emit("visible-change", true);
120
- }
121
- function handleShowTooltip(event) {
122
- if ((event == null ? void 0 : event.type) === "keydown") {
123
- contentRef.value.focus();
124
- }
125
- }
126
- function handleBeforeHideTooltip() {
127
- emit("visible-change", false);
128
- }
129
- provide(DROPDOWN_INJECTION_KEY, {
130
- contentRef,
131
- role: computed(() => props.role),
132
- triggerId,
133
- isUsingKeyboard,
134
- onItemEnter,
135
- onItemLeave
136
- });
137
- provide("elDropdown", {
138
- instance: _instance,
139
- dropdownSize,
140
- handleClick,
141
- commandHandler,
142
- trigger: toRef(props, "trigger"),
143
- hideOnClick: toRef(props, "hideOnClick")
144
- });
145
- const onFocusAfterTrapped = (e) => {
146
- var _a, _b;
147
- e.preventDefault();
148
- (_b = (_a = contentRef.value) == null ? void 0 : _a.focus) == null ? void 0 : _b.call(_a, {
149
- preventScroll: true
150
- });
151
- };
152
- const handlerMainButtonClick = (event) => {
153
- emit("click", event);
154
- };
155
- return {
156
- t,
157
- ns,
158
- scrollbar,
159
- wrapStyle,
160
- dropdownTriggerKls,
161
- dropdownSize,
162
- triggerId,
163
- triggerKeys,
164
- currentTabId,
165
- handleCurrentTabIdChange,
166
- handlerMainButtonClick,
167
- handleEntryFocus,
168
- handleClose,
169
- handleOpen,
170
- handleBeforeShowTooltip,
171
- handleShowTooltip,
172
- handleBeforeHideTooltip,
173
- onFocusAfterTrapped,
174
- popperRef,
175
- contentRef,
176
- triggeringElementRef,
177
- referenceElementRef
178
- };
18
+ type: {
19
+ type: definePropType(String)
20
+ },
21
+ placement: {
22
+ type: definePropType(String),
23
+ default: "bottom"
24
+ },
25
+ popperOptions: {
26
+ type: definePropType(Object),
27
+ default: () => ({})
28
+ },
29
+ id: String,
30
+ size: {
31
+ type: String,
32
+ default: ""
33
+ },
34
+ splitButton: Boolean,
35
+ hideOnClick: {
36
+ type: Boolean,
37
+ default: true
38
+ },
39
+ loop: {
40
+ type: Boolean,
41
+ default: true
42
+ },
43
+ showTimeout: {
44
+ type: Number,
45
+ default: 150
46
+ },
47
+ hideTimeout: {
48
+ type: Number,
49
+ default: 150
50
+ },
51
+ tabindex: {
52
+ type: definePropType([Number, String]),
53
+ default: 0
54
+ },
55
+ maxHeight: {
56
+ type: definePropType([Number, String]),
57
+ default: ""
58
+ },
59
+ popperClass: {
60
+ type: String,
61
+ default: ""
62
+ },
63
+ disabled: {
64
+ type: Boolean,
65
+ default: false
66
+ },
67
+ role: {
68
+ type: String,
69
+ default: "menu"
70
+ },
71
+ buttonProps: {
72
+ type: definePropType(Object)
73
+ },
74
+ teleported: useTooltipContentProps.teleported,
75
+ offset: {
76
+ type: Number,
77
+ default: 0
78
+ },
79
+ showArrow: {
80
+ type: Boolean,
81
+ default: true
179
82
  }
180
83
  });
181
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
182
- var _a;
183
- const _component_el_dropdown_collection = resolveComponent("el-dropdown-collection");
184
- const _component_el_roving_focus_group = resolveComponent("el-roving-focus-group");
185
- const _component_el_scrollbar = resolveComponent("el-scrollbar");
186
- const _component_el_only_child = resolveComponent("el-only-child");
187
- const _component_el_tooltip = resolveComponent("el-tooltip");
188
- const _component_el_button = resolveComponent("el-button");
189
- const _component_arrow_down = resolveComponent("arrow-down");
190
- const _component_el_icon = resolveComponent("el-icon");
191
- const _component_el_button_group = resolveComponent("el-button-group");
192
- return openBlock(), createElementBlock("div", {
193
- class: normalizeClass([_ctx.ns.b(), _ctx.ns.is("disabled", _ctx.disabled)])
194
- }, [
195
- createVNode(_component_el_tooltip, {
196
- ref: "popperRef",
197
- role: _ctx.role,
198
- effect: _ctx.effect,
199
- "fallback-placements": ["bottom", "top"],
200
- "popper-options": _ctx.popperOptions,
201
- "gpu-acceleration": false,
202
- "hide-after": _ctx.trigger === "hover" ? _ctx.hideTimeout : 0,
203
- "manual-mode": true,
204
- placement: _ctx.placement,
205
- offset: _ctx.offset,
206
- "show-arrow": _ctx.showArrow,
207
- "popper-class": [_ctx.ns.e("popper"), _ctx.popperClass],
208
- "reference-element": (_a = _ctx.referenceElementRef) == null ? void 0 : _a.$el,
209
- trigger: _ctx.trigger,
210
- "trigger-keys": _ctx.triggerKeys,
211
- "trigger-target-el": _ctx.contentRef,
212
- "show-after": _ctx.trigger === "hover" ? _ctx.showTimeout : 0,
213
- "stop-popper-mouse-event": false,
214
- "virtual-ref": _ctx.triggeringElementRef,
215
- "virtual-triggering": _ctx.splitButton,
216
- disabled: _ctx.disabled,
217
- transition: `${_ctx.ns.namespace.value}-zoom-in-top`,
218
- teleported: _ctx.teleported,
219
- pure: "",
220
- persistent: "",
221
- onBeforeShow: _ctx.handleBeforeShowTooltip,
222
- onShow: _ctx.handleShowTooltip,
223
- onBeforeHide: _ctx.handleBeforeHideTooltip
224
- }, createSlots({
225
- content: withCtx(() => [
226
- createVNode(_component_el_scrollbar, {
227
- ref: "scrollbar",
228
- "wrap-style": _ctx.wrapStyle,
229
- tag: "div",
230
- "view-class": _ctx.ns.e("list")
231
- }, {
232
- default: withCtx(() => [
233
- createVNode(_component_el_roving_focus_group, {
234
- loop: _ctx.loop,
235
- "current-tab-id": _ctx.currentTabId,
236
- orientation: "horizontal",
237
- onCurrentTabIdChange: _ctx.handleCurrentTabIdChange,
238
- onEntryFocus: _ctx.handleEntryFocus
239
- }, {
240
- default: withCtx(() => [
241
- createVNode(_component_el_dropdown_collection, null, {
242
- default: withCtx(() => [
243
- renderSlot(_ctx.$slots, "dropdown")
244
- ]),
245
- _: 3
246
- })
247
- ]),
248
- _: 3
249
- }, 8, ["loop", "current-tab-id", "onCurrentTabIdChange", "onEntryFocus"])
250
- ]),
251
- _: 3
252
- }, 8, ["wrap-style", "view-class"])
253
- ]),
254
- _: 2
255
- }, [
256
- !_ctx.splitButton ? {
257
- name: "default",
258
- fn: withCtx(() => [
259
- createVNode(_component_el_only_child, {
260
- id: _ctx.triggerId,
261
- ref: "triggeringElementRef",
262
- role: "button",
263
- tabindex: _ctx.tabindex
264
- }, {
265
- default: withCtx(() => [
266
- renderSlot(_ctx.$slots, "default")
267
- ]),
268
- _: 3
269
- }, 8, ["id", "tabindex"])
270
- ])
271
- } : void 0
272
- ]), 1032, ["role", "effect", "popper-options", "hide-after", "placement", "offset", "show-arrow", "popper-class", "reference-element", "trigger", "trigger-keys", "trigger-target-el", "show-after", "virtual-ref", "virtual-triggering", "disabled", "transition", "teleported", "onBeforeShow", "onShow", "onBeforeHide"]),
273
- _ctx.splitButton ? (openBlock(), createBlock(_component_el_button_group, { key: 0 }, {
274
- default: withCtx(() => [
275
- createVNode(_component_el_button, mergeProps({ ref: "referenceElementRef" }, _ctx.buttonProps, {
276
- size: _ctx.dropdownSize,
277
- type: _ctx.type,
278
- disabled: _ctx.disabled,
279
- tabindex: _ctx.tabindex,
280
- onClick: _ctx.handlerMainButtonClick
281
- }), {
282
- default: withCtx(() => [
283
- renderSlot(_ctx.$slots, "default")
284
- ]),
285
- _: 3
286
- }, 16, ["size", "type", "disabled", "tabindex", "onClick"]),
287
- createVNode(_component_el_button, mergeProps({
288
- id: _ctx.triggerId,
289
- ref: "triggeringElementRef"
290
- }, _ctx.buttonProps, {
291
- role: "button",
292
- size: _ctx.dropdownSize,
293
- type: _ctx.type,
294
- class: _ctx.ns.e("caret-button"),
295
- disabled: _ctx.disabled,
296
- tabindex: _ctx.tabindex,
297
- "aria-label": _ctx.t("el.dropdown.toggleDropdown")
298
- }), {
299
- default: withCtx(() => [
300
- createVNode(_component_el_icon, {
301
- class: normalizeClass(_ctx.ns.e("icon"))
302
- }, {
303
- default: withCtx(() => [
304
- createVNode(_component_arrow_down)
305
- ]),
306
- _: 1
307
- }, 8, ["class"])
308
- ]),
309
- _: 1
310
- }, 16, ["id", "size", "type", "class", "disabled", "tabindex", "aria-label"])
311
- ]),
312
- _: 3
313
- })) : createCommentVNode("v-if", true)
314
- ], 2);
315
- }
316
- var Dropdown = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "D:\\workspace\\element-pe\\packages\\components\\dropdown\\src\\dropdown.vue"]]);
84
+ const dropdownItemProps = buildProps({
85
+ command: {
86
+ type: [Object, String, Number],
87
+ default: () => ({})
88
+ },
89
+ disabled: Boolean,
90
+ divided: Boolean,
91
+ textValue: String,
92
+ icon: {
93
+ type: iconPropType
94
+ }
95
+ });
96
+ const dropdownMenuProps = buildProps({
97
+ onKeydown: { type: definePropType(Function) }
98
+ });
99
+ const FIRST_KEYS = [
100
+ EVENT_CODE.down,
101
+ EVENT_CODE.pageDown,
102
+ EVENT_CODE.home
103
+ ];
104
+ const LAST_KEYS = [EVENT_CODE.up, EVENT_CODE.pageUp, EVENT_CODE.end];
105
+ const FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS];
106
+ const {
107
+ ElCollection,
108
+ ElCollectionItem,
109
+ COLLECTION_INJECTION_KEY,
110
+ COLLECTION_ITEM_INJECTION_KEY
111
+ } = createCollectionWithScope("Dropdown");
317
112
 
318
- export { Dropdown as default };
113
+ export { COLLECTION_INJECTION_KEY as DROPDOWN_COLLECTION_INJECTION_KEY, COLLECTION_ITEM_INJECTION_KEY as DROPDOWN_COLLECTION_ITEM_INJECTION_KEY, ElCollection, ElCollectionItem, FIRST_KEYS, FIRST_LAST_KEYS, LAST_KEYS, dropdownItemProps, dropdownMenuProps, dropdownProps };
319
114
  //# sourceMappingURL=dropdown2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown2.mjs","sources":["../../../../../../packages/components/dropdown/src/dropdown.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.b(), ns.is('disabled', disabled)]\">\n <el-tooltip\n ref=\"popperRef\"\n :role=\"role\"\n :effect=\"effect\"\n :fallback-placements=\"['bottom', 'top']\"\n :popper-options=\"popperOptions\"\n :gpu-acceleration=\"false\"\n :hide-after=\"trigger === 'hover' ? hideTimeout : 0\"\n :manual-mode=\"true\"\n :placement=\"placement\"\n :offset=\"offset\"\n :show-arrow=\"showArrow\"\n :popper-class=\"[ns.e('popper'), popperClass]\"\n :reference-element=\"referenceElementRef?.$el\"\n :trigger=\"trigger\"\n :trigger-keys=\"triggerKeys\"\n :trigger-target-el=\"contentRef\"\n :show-after=\"trigger === 'hover' ? showTimeout : 0\"\n :stop-popper-mouse-event=\"false\"\n :virtual-ref=\"triggeringElementRef\"\n :virtual-triggering=\"splitButton\"\n :disabled=\"disabled\"\n :transition=\"`${ns.namespace.value}-zoom-in-top`\"\n :teleported=\"teleported\"\n pure\n persistent\n @before-show=\"handleBeforeShowTooltip\"\n @show=\"handleShowTooltip\"\n @before-hide=\"handleBeforeHideTooltip\"\n >\n <template #content>\n <el-scrollbar\n ref=\"scrollbar\"\n :wrap-style=\"wrapStyle\"\n tag=\"div\"\n :view-class=\"ns.e('list')\"\n >\n <el-roving-focus-group\n :loop=\"loop\"\n :current-tab-id=\"currentTabId\"\n orientation=\"horizontal\"\n @current-tab-id-change=\"handleCurrentTabIdChange\"\n @entry-focus=\"handleEntryFocus\"\n >\n <el-dropdown-collection>\n <slot name=\"dropdown\" />\n </el-dropdown-collection>\n </el-roving-focus-group>\n </el-scrollbar>\n </template>\n <template v-if=\"!splitButton\" #default>\n <el-only-child\n :id=\"triggerId\"\n ref=\"triggeringElementRef\"\n role=\"button\"\n :tabindex=\"tabindex\"\n >\n <slot name=\"default\" />\n </el-only-child>\n </template>\n </el-tooltip>\n <template v-if=\"splitButton\">\n <el-button-group>\n <el-button\n ref=\"referenceElementRef\"\n v-bind=\"buttonProps\"\n :size=\"dropdownSize\"\n :type=\"type\"\n :disabled=\"disabled\"\n :tabindex=\"tabindex\"\n @click=\"handlerMainButtonClick\"\n >\n <slot name=\"default\" />\n </el-button>\n <el-button\n :id=\"triggerId\"\n ref=\"triggeringElementRef\"\n v-bind=\"buttonProps\"\n role=\"button\"\n :size=\"dropdownSize\"\n :type=\"type\"\n :class=\"ns.e('caret-button')\"\n :disabled=\"disabled\"\n :tabindex=\"tabindex\"\n :aria-label=\"t('el.dropdown.toggleDropdown')\"\n >\n <el-icon :class=\"ns.e('icon')\"><arrow-down /></el-icon>\n </el-button>\n </el-button-group>\n </template>\n </div>\n</template>\n<script lang=\"ts\">\n// @ts-nocheck\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n ref,\n toRef,\n unref,\n} from 'vue'\nimport { watch } from '../../config-provider'\nimport ElButton from '@element-plus/components/button'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElIcon from '@element-plus/components/icon'\nimport ElRovingFocusGroup from '@element-plus/components/roving-focus-group'\nimport { ElOnlyChild } from '@element-plus/components/slot'\nimport { useFormSize } from '@element-plus/components/form'\nimport { addUnit, isArray } from '@element-plus/utils'\nimport { ArrowDown } from '@element-plus/icons-vue'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { useId, useLocale, useNamespace } from '@element-plus/hooks'\nimport { ElCollection as ElDropdownCollection, dropdownProps } from './dropdown'\nimport { DROPDOWN_INJECTION_KEY } from './tokens'\n\nimport type { CSSProperties } from 'vue'\n\nconst { ButtonGroup: ElButtonGroup } = ElButton\n\nexport default defineComponent({\n name: 'ElDropdown',\n components: {\n ElButton,\n ElButtonGroup,\n ElScrollbar,\n ElDropdownCollection,\n ElTooltip,\n ElRovingFocusGroup,\n ElOnlyChild,\n ElIcon,\n ArrowDown,\n },\n props: dropdownProps,\n emits: ['visible-change', 'click', 'command'],\n setup(props, { emit }) {\n const _instance = getCurrentInstance()\n const ns = useNamespace('dropdown')\n const { t } = useLocale()\n\n const triggeringElementRef = ref()\n const referenceElementRef = ref()\n const popperRef = ref<InstanceType<typeof ElTooltip> | null>(null)\n const contentRef = ref<HTMLElement | null>(null)\n const scrollbar = ref(null)\n const currentTabId = ref<string | null>(null)\n const isUsingKeyboard = ref(false)\n const triggerKeys = [EVENT_CODE.enter, EVENT_CODE.space, EVENT_CODE.down]\n\n const wrapStyle = computed<CSSProperties>(() => ({\n maxHeight: addUnit(props.maxHeight),\n }))\n const dropdownTriggerKls = computed(() => [ns.m(dropdownSize.value)])\n\n const defaultTriggerId = useId().value\n const triggerId = computed<string>(() => {\n return props.id || defaultTriggerId\n })\n\n // The goal of this code is to focus on the tooltip triggering element when it is hovered.\n // This is a temporary fix for where closing the dropdown through pointerleave event focuses on a\n // completely different element. For a permanent solution, remove all calls to any \"element.focus()\"\n // that are triggered through pointer enter/leave events.\n watch(\n [triggeringElementRef, toRef(props, 'trigger')],\n ([triggeringElement, trigger], [prevTriggeringElement]) => {\n const triggerArray = isArray(trigger) ? trigger : [trigger]\n if (prevTriggeringElement?.$el?.removeEventListener) {\n prevTriggeringElement.$el.removeEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n if (triggeringElement?.$el?.removeEventListener) {\n triggeringElement.$el.removeEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n if (\n triggeringElement?.$el?.addEventListener &&\n triggerArray.includes('hover')\n ) {\n triggeringElement.$el.addEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n },\n { immediate: true }\n )\n\n onBeforeUnmount(() => {\n if (triggeringElementRef.value?.$el?.removeEventListener) {\n triggeringElementRef.value.$el.removeEventListener(\n 'pointerenter',\n onAutofocusTriggerEnter\n )\n }\n })\n\n function handleClick() {\n handleClose()\n }\n\n function handleClose() {\n popperRef.value?.onClose()\n }\n\n function handleOpen() {\n popperRef.value?.onOpen()\n }\n\n const dropdownSize = useFormSize()\n\n function commandHandler(...args: any[]) {\n emit('command', ...args)\n }\n\n function onAutofocusTriggerEnter() {\n triggeringElementRef.value?.$el?.focus()\n }\n\n function onItemEnter() {\n // NOOP for now\n }\n\n function onItemLeave() {\n const contentEl = unref(contentRef)\n\n contentEl?.focus()\n currentTabId.value = null\n }\n\n function handleCurrentTabIdChange(id: string) {\n currentTabId.value = id\n }\n\n function handleEntryFocus(e: Event) {\n if (!isUsingKeyboard.value) {\n e.preventDefault()\n e.stopImmediatePropagation()\n }\n }\n\n function handleBeforeShowTooltip() {\n emit('visible-change', true)\n }\n\n function handleShowTooltip(event?: Event) {\n if (event?.type === 'keydown') {\n contentRef.value.focus()\n }\n }\n\n function handleBeforeHideTooltip() {\n emit('visible-change', false)\n }\n\n provide(DROPDOWN_INJECTION_KEY, {\n contentRef,\n role: computed(() => props.role),\n triggerId,\n isUsingKeyboard,\n onItemEnter,\n onItemLeave,\n })\n\n provide('elDropdown', {\n instance: _instance,\n dropdownSize,\n handleClick,\n commandHandler,\n trigger: toRef(props, 'trigger'),\n hideOnClick: toRef(props, 'hideOnClick'),\n })\n\n const onFocusAfterTrapped = (e: Event) => {\n e.preventDefault()\n contentRef.value?.focus?.({\n preventScroll: true,\n })\n }\n\n const handlerMainButtonClick = (event: MouseEvent) => {\n emit('click', event)\n }\n\n return {\n t,\n ns,\n scrollbar,\n wrapStyle,\n dropdownTriggerKls,\n dropdownSize,\n triggerId,\n triggerKeys,\n currentTabId,\n handleCurrentTabIdChange,\n handlerMainButtonClick,\n handleEntryFocus,\n handleClose,\n handleOpen,\n handleBeforeShowTooltip,\n handleShowTooltip,\n handleBeforeHideTooltip,\n onFocusAfterTrapped,\n popperRef,\n contentRef,\n triggeringElementRef,\n referenceElementRef,\n }\n },\n})\n</script>\n"],"names":["ElDropdownCollection","ElOnlyChild","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_createVNode","_createSlots","_withCtx","_renderSlot","_createBlock","_mergeProps"],"mappings":"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"}
1
+ {"version":3,"file":"dropdown2.mjs","sources":["../../../../../../packages/components/dropdown/src/dropdown.ts"],"sourcesContent":["// @ts-nocheck\nimport { buildProps, definePropType, iconPropType } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { createCollectionWithScope } from '@element-plus/components/collection'\nimport {\n useTooltipContentProps,\n useTooltipTriggerProps,\n} from '@element-plus/components/tooltip'\n\nimport type { Options } from '@popperjs/core'\nimport type { ButtonProps, ButtonType } from '@element-plus/components/button'\nimport type { Placement } from '@element-plus/components/popper'\nimport type { ComponentInternalInstance, ComputedRef } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\n\nexport interface IElDropdownInstance {\n instance?: ComponentInternalInstance\n dropdownSize?: ComputedRef<string>\n handleClick?: () => void\n commandHandler?: (...arg) => void\n show?: () => void\n hide?: () => void\n trigger?: ComputedRef<string>\n hideOnClick?: ComputedRef<boolean>\n triggerElm?: ComputedRef<Nullable<HTMLButtonElement>>\n}\n\nexport const dropdownProps = buildProps({\n trigger: useTooltipTriggerProps.trigger,\n effect: {\n ...useTooltipContentProps.effect,\n default: 'light',\n },\n type: {\n type: definePropType<ButtonType>(String),\n },\n placement: {\n type: definePropType<Placement>(String),\n default: 'bottom',\n },\n popperOptions: {\n type: definePropType<Partial<Options>>(Object),\n default: () => ({}),\n },\n id: String,\n size: {\n type: String,\n default: '',\n },\n splitButton: Boolean,\n hideOnClick: {\n type: Boolean,\n default: true,\n },\n loop: {\n type: Boolean,\n default: true,\n },\n showTimeout: {\n type: Number,\n default: 150,\n },\n hideTimeout: {\n type: Number,\n default: 150,\n },\n tabindex: {\n type: definePropType<number | string>([Number, String]),\n default: 0,\n },\n maxHeight: {\n type: definePropType<number | string>([Number, String]),\n default: '',\n },\n popperClass: {\n type: String,\n default: '',\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n role: {\n type: String,\n default: 'menu',\n },\n buttonProps: {\n type: definePropType<ButtonProps>(Object),\n },\n teleported: useTooltipContentProps.teleported,\n offset: {\n type: Number,\n default: 0,\n },\n showArrow: {\n type: Boolean,\n default: true,\n },\n} as const)\n\nexport const dropdownItemProps = buildProps({\n command: {\n type: [Object, String, Number],\n default: () => ({}),\n },\n disabled: Boolean,\n divided: Boolean,\n textValue: String,\n icon: {\n type: iconPropType,\n },\n} as const)\n\nexport const dropdownMenuProps = buildProps({\n onKeydown: { type: definePropType<(e: KeyboardEvent) => void>(Function) },\n})\n\nexport const FIRST_KEYS = [\n EVENT_CODE.down,\n EVENT_CODE.pageDown,\n EVENT_CODE.home,\n]\n\nexport const LAST_KEYS = [EVENT_CODE.up, EVENT_CODE.pageUp, EVENT_CODE.end]\n\nexport const FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS]\n\nconst {\n ElCollection,\n ElCollectionItem,\n COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY,\n} = createCollectionWithScope('Dropdown')\n\nexport {\n ElCollection,\n ElCollectionItem,\n COLLECTION_INJECTION_KEY as DROPDOWN_COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY as DROPDOWN_COLLECTION_ITEM_INJECTION_KEY,\n}\n"],"names":[],"mappings":"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"}
@@ -226,7 +226,7 @@ const _sfc_main = defineComponent({
226
226
  if (!releasedEvent.defaultPrevented && (focusReason.value == "keyboard" || !isFocusCausedByUserEvent() || trapContainer.contains(document.activeElement))) {
227
227
  tryFocus(lastFocusBeforeTrapped != null ? lastFocusBeforeTrapped : document.body);
228
228
  }
229
- trapContainer.removeEventListener(FOCUS_AFTER_RELEASED, trapOnFocus);
229
+ trapContainer.removeEventListener(FOCUS_AFTER_RELEASED, releaseOnFocus);
230
230
  focusableStack.remove(focusLayer);
231
231
  }
232
232
  }
@@ -1 +1 @@
1
- {"version":3,"file":"focus-trap.mjs","sources":["../../../../../../packages/components/focus-trap/src/focus-trap.vue"],"sourcesContent":["<template>\n <slot :handle-keydown=\"onKeydown\" />\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n ref,\n unref,\n} from 'vue'\nimport { useGlobalConfig, watch } from '../../config-provider'\nimport { isNil } from 'lodash-unified'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { useEscapeKeydown } from '@element-plus/hooks'\nimport { isString } from '@element-plus/utils'\nimport {\n createFocusOutPreventedEvent,\n focusFirstDescendant,\n focusableStack,\n getEdges,\n isFocusCausedByUserEvent,\n obtainAllFocusableElements,\n tryFocus,\n useFocusReason,\n} from './utils'\nimport {\n FOCUS_AFTER_RELEASED,\n FOCUS_AFTER_TRAPPED,\n FOCUS_AFTER_TRAPPED_OPTS,\n FOCUS_TRAP_INJECTION_KEY,\n ON_RELEASE_FOCUS_EVT,\n ON_TRAP_FOCUS_EVT,\n} from './tokens'\n\nimport type { PropType } from 'vue'\nimport type { FocusLayer } from './utils'\n\nexport default defineComponent({\n name: 'ElFocusTrap',\n inheritAttrs: false,\n props: {\n loop: Boolean,\n trapped: Boolean,\n focusTrapEl: Object as PropType<HTMLElement>,\n focusStartEl: {\n type: [Object, String] as PropType<'container' | 'first' | HTMLElement>,\n default: 'first',\n },\n },\n emits: [\n ON_TRAP_FOCUS_EVT,\n ON_RELEASE_FOCUS_EVT,\n 'focusin',\n 'focusout',\n 'focusout-prevented',\n 'release-requested',\n ],\n setup(props, ctx) {\n const forEditor = useGlobalConfig('forEditor')\n const emit = forEditor.value ? (name: string, evt: Event) => {} : ctx.emit\n\n const forwardRef = ref<HTMLElement | undefined>()\n let lastFocusBeforeTrapped: HTMLElement | null\n let lastFocusAfterTrapped: HTMLElement | null\n\n const { focusReason } = useFocusReason()\n\n useEscapeKeydown((event) => {\n if (props.trapped && !focusLayer.paused) {\n emit('release-requested', event)\n }\n })\n\n const focusLayer: FocusLayer = {\n paused: false,\n pause() {\n this.paused = true\n },\n resume() {\n this.paused = false\n },\n }\n\n const onKeydown = (e: KeyboardEvent) => {\n if (!props.loop && !props.trapped) return\n if (focusLayer.paused) return\n\n const { key, altKey, ctrlKey, metaKey, currentTarget, shiftKey } = e\n const { loop } = props\n const isTabbing =\n key === EVENT_CODE.tab && !altKey && !ctrlKey && !metaKey\n\n const currentFocusingEl = document.activeElement\n if (isTabbing && currentFocusingEl) {\n const container = currentTarget as HTMLElement\n const [first, last] = getEdges(container)\n const isTabbable = first && last\n if (!isTabbable) {\n if (currentFocusingEl === container) {\n const focusoutPreventedEvent = createFocusOutPreventedEvent({\n focusReason: focusReason.value,\n })\n emit('focusout-prevented', focusoutPreventedEvent)\n if (!focusoutPreventedEvent.defaultPrevented) {\n e.preventDefault()\n }\n }\n } else {\n if (!shiftKey && currentFocusingEl === last) {\n const focusoutPreventedEvent = createFocusOutPreventedEvent({\n focusReason: focusReason.value,\n })\n emit('focusout-prevented', focusoutPreventedEvent)\n if (!focusoutPreventedEvent.defaultPrevented) {\n e.preventDefault()\n if (loop) tryFocus(first, true)\n }\n } else if (\n shiftKey &&\n [first, container].includes(currentFocusingEl as HTMLElement)\n ) {\n const focusoutPreventedEvent = createFocusOutPreventedEvent({\n focusReason: focusReason.value,\n })\n emit('focusout-prevented', focusoutPreventedEvent)\n if (!focusoutPreventedEvent.defaultPrevented) {\n e.preventDefault()\n if (loop) tryFocus(last, true)\n }\n }\n }\n }\n }\n\n provide(FOCUS_TRAP_INJECTION_KEY, {\n focusTrapRef: forwardRef,\n onKeydown,\n })\n\n watch(\n () => props.focusTrapEl,\n (focusTrapEl) => {\n if (focusTrapEl) {\n forwardRef.value = focusTrapEl\n }\n },\n { immediate: true }\n )\n\n watch([forwardRef], ([forwardRef], [oldForwardRef]) => {\n if (forwardRef) {\n forwardRef.addEventListener('keydown', onKeydown)\n forwardRef.addEventListener('focusin', onFocusIn)\n forwardRef.addEventListener('focusout', onFocusOut)\n }\n if (oldForwardRef) {\n oldForwardRef.removeEventListener('keydown', onKeydown)\n oldForwardRef.removeEventListener('focusin', onFocusIn)\n oldForwardRef.removeEventListener('focusout', onFocusOut)\n }\n })\n\n const trapOnFocus = (e: Event) => {\n emit(ON_TRAP_FOCUS_EVT, e)\n }\n const releaseOnFocus = (e: Event) => emit(ON_RELEASE_FOCUS_EVT, e)\n\n const onFocusIn = (e: FocusEvent) => {\n const trapContainer = unref(forwardRef)\n if (!trapContainer) return\n\n const target = e.target as HTMLElement | null\n const relatedTarget = e.relatedTarget as HTMLElement | null\n const isFocusedInTrap = target && trapContainer.contains(target)\n\n if (!props.trapped) {\n const isPrevFocusedInTrap =\n relatedTarget && trapContainer.contains(relatedTarget)\n if (!isPrevFocusedInTrap) {\n lastFocusBeforeTrapped = relatedTarget\n }\n }\n\n if (isFocusedInTrap) emit('focusin', e)\n\n if (focusLayer.paused) return\n\n if (props.trapped) {\n if (isFocusedInTrap) {\n lastFocusAfterTrapped = target\n } else {\n tryFocus(lastFocusAfterTrapped, true)\n }\n }\n }\n\n const onFocusOut = (e: Event) => {\n const trapContainer = unref(forwardRef)\n if (focusLayer.paused || !trapContainer) return\n\n if (props.trapped) {\n const relatedTarget = (e as FocusEvent)\n .relatedTarget as HTMLElement | null\n if (!isNil(relatedTarget) && !trapContainer.contains(relatedTarget)) {\n // Give embedded focus layer time to pause this layer before reclaiming focus\n // And only reclaim focus if it should currently be trapping\n setTimeout(() => {\n if (!focusLayer.paused && props.trapped) {\n const focusoutPreventedEvent = createFocusOutPreventedEvent({\n focusReason: focusReason.value,\n })\n emit('focusout-prevented', focusoutPreventedEvent)\n if (!focusoutPreventedEvent.defaultPrevented) {\n tryFocus(lastFocusAfterTrapped, true)\n }\n }\n }, 0)\n }\n } else {\n const target = e.target as HTMLElement | null\n const isFocusedInTrap = target && trapContainer.contains(target)\n if (!isFocusedInTrap) emit('focusout', e)\n }\n }\n\n async function startTrap() {\n // Wait for forwardRef to resolve\n await nextTick()\n const trapContainer = unref(forwardRef)\n if (trapContainer) {\n focusableStack.push(focusLayer)\n const prevFocusedElement = trapContainer.contains(\n document.activeElement\n )\n ? lastFocusBeforeTrapped\n : document.activeElement\n lastFocusBeforeTrapped = prevFocusedElement as HTMLElement | null\n const isPrevFocusContained = trapContainer.contains(prevFocusedElement)\n if (!isPrevFocusContained) {\n const focusEvent = new Event(\n FOCUS_AFTER_TRAPPED,\n FOCUS_AFTER_TRAPPED_OPTS\n )\n trapContainer.addEventListener(FOCUS_AFTER_TRAPPED, trapOnFocus)\n trapContainer.dispatchEvent(focusEvent)\n if (!focusEvent.defaultPrevented) {\n nextTick(() => {\n let focusStartEl = props.focusStartEl\n if (!isString(focusStartEl)) {\n tryFocus(focusStartEl)\n if (document.activeElement !== focusStartEl) {\n focusStartEl = 'first'\n }\n }\n if (focusStartEl === 'first') {\n focusFirstDescendant(\n obtainAllFocusableElements(trapContainer),\n true\n )\n }\n if (\n document.activeElement === prevFocusedElement ||\n focusStartEl === 'container'\n ) {\n tryFocus(trapContainer)\n }\n })\n }\n }\n }\n }\n\n function stopTrap() {\n const trapContainer = unref(forwardRef)\n\n if (trapContainer) {\n trapContainer.removeEventListener(FOCUS_AFTER_TRAPPED, trapOnFocus)\n\n const releasedEvent = new CustomEvent(FOCUS_AFTER_RELEASED, {\n ...FOCUS_AFTER_TRAPPED_OPTS,\n detail: {\n focusReason: focusReason.value,\n },\n })\n trapContainer.addEventListener(FOCUS_AFTER_RELEASED, releaseOnFocus)\n trapContainer.dispatchEvent(releasedEvent)\n if (\n !releasedEvent.defaultPrevented &&\n (focusReason.value == 'keyboard' ||\n !isFocusCausedByUserEvent() ||\n trapContainer.contains(document.activeElement))\n ) {\n tryFocus(lastFocusBeforeTrapped ?? document.body)\n }\n\n trapContainer.removeEventListener(FOCUS_AFTER_RELEASED, trapOnFocus)\n focusableStack.remove(focusLayer)\n }\n }\n\n onMounted(() => {\n if (props.trapped) {\n startTrap()\n }\n\n watch(\n () => props.trapped,\n (trapped) => {\n if (trapped) {\n startTrap()\n } else {\n stopTrap()\n }\n }\n )\n })\n\n onBeforeUnmount(() => {\n if (props.trapped) {\n stopTrap()\n }\n })\n\n return {\n onKeydown,\n }\n },\n})\n</script>\n"],"names":["_renderSlot"],"mappings":"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"}
1
+ {"version":3,"file":"focus-trap.mjs","sources":["../../../../../../packages/components/focus-trap/src/focus-trap.vue"],"sourcesContent":["<template>\n <slot :handle-keydown=\"onKeydown\" />\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n ref,\n unref,\n} from 'vue'\nimport { useGlobalConfig, watch } from '../../config-provider'\nimport { isNil } from 'lodash-unified'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { useEscapeKeydown } from '@element-plus/hooks'\nimport { isString } from '@element-plus/utils'\nimport {\n createFocusOutPreventedEvent,\n focusFirstDescendant,\n focusableStack,\n getEdges,\n isFocusCausedByUserEvent,\n obtainAllFocusableElements,\n tryFocus,\n useFocusReason,\n} from './utils'\nimport {\n FOCUS_AFTER_RELEASED,\n FOCUS_AFTER_TRAPPED,\n FOCUS_AFTER_TRAPPED_OPTS,\n FOCUS_TRAP_INJECTION_KEY,\n ON_RELEASE_FOCUS_EVT,\n ON_TRAP_FOCUS_EVT,\n} from './tokens'\n\nimport type { PropType } from 'vue'\nimport type { FocusLayer } from './utils'\n\nexport default defineComponent({\n name: 'ElFocusTrap',\n inheritAttrs: false,\n props: {\n loop: Boolean,\n trapped: Boolean,\n focusTrapEl: Object as PropType<HTMLElement>,\n focusStartEl: {\n type: [Object, String] as PropType<'container' | 'first' | HTMLElement>,\n default: 'first',\n },\n },\n emits: [\n ON_TRAP_FOCUS_EVT,\n ON_RELEASE_FOCUS_EVT,\n 'focusin',\n 'focusout',\n 'focusout-prevented',\n 'release-requested',\n ],\n setup(props, ctx) {\n const forEditor = useGlobalConfig('forEditor')\n const emit = forEditor.value ? (name: string, evt: Event) => {} : ctx.emit\n\n const forwardRef = ref<HTMLElement | undefined>()\n let lastFocusBeforeTrapped: HTMLElement | null\n let lastFocusAfterTrapped: HTMLElement | null\n\n const { focusReason } = useFocusReason()\n\n useEscapeKeydown((event) => {\n if (props.trapped && !focusLayer.paused) {\n emit('release-requested', event)\n }\n })\n\n const focusLayer: FocusLayer = {\n paused: false,\n pause() {\n this.paused = true\n },\n resume() {\n this.paused = false\n },\n }\n\n const onKeydown = (e: KeyboardEvent) => {\n if (!props.loop && !props.trapped) return\n if (focusLayer.paused) return\n\n const { key, altKey, ctrlKey, metaKey, currentTarget, shiftKey } = e\n const { loop } = props\n const isTabbing =\n key === EVENT_CODE.tab && !altKey && !ctrlKey && !metaKey\n\n const currentFocusingEl = document.activeElement\n if (isTabbing && currentFocusingEl) {\n const container = currentTarget as HTMLElement\n const [first, last] = getEdges(container)\n const isTabbable = first && last\n if (!isTabbable) {\n if (currentFocusingEl === container) {\n const focusoutPreventedEvent = createFocusOutPreventedEvent({\n focusReason: focusReason.value,\n })\n emit('focusout-prevented', focusoutPreventedEvent)\n if (!focusoutPreventedEvent.defaultPrevented) {\n e.preventDefault()\n }\n }\n } else {\n if (!shiftKey && currentFocusingEl === last) {\n const focusoutPreventedEvent = createFocusOutPreventedEvent({\n focusReason: focusReason.value,\n })\n emit('focusout-prevented', focusoutPreventedEvent)\n if (!focusoutPreventedEvent.defaultPrevented) {\n e.preventDefault()\n if (loop) tryFocus(first, true)\n }\n } else if (\n shiftKey &&\n [first, container].includes(currentFocusingEl as HTMLElement)\n ) {\n const focusoutPreventedEvent = createFocusOutPreventedEvent({\n focusReason: focusReason.value,\n })\n emit('focusout-prevented', focusoutPreventedEvent)\n if (!focusoutPreventedEvent.defaultPrevented) {\n e.preventDefault()\n if (loop) tryFocus(last, true)\n }\n }\n }\n }\n }\n\n provide(FOCUS_TRAP_INJECTION_KEY, {\n focusTrapRef: forwardRef,\n onKeydown,\n })\n\n watch(\n () => props.focusTrapEl,\n (focusTrapEl) => {\n if (focusTrapEl) {\n forwardRef.value = focusTrapEl\n }\n },\n { immediate: true }\n )\n\n watch([forwardRef], ([forwardRef], [oldForwardRef]) => {\n if (forwardRef) {\n forwardRef.addEventListener('keydown', onKeydown)\n forwardRef.addEventListener('focusin', onFocusIn)\n forwardRef.addEventListener('focusout', onFocusOut)\n }\n if (oldForwardRef) {\n oldForwardRef.removeEventListener('keydown', onKeydown)\n oldForwardRef.removeEventListener('focusin', onFocusIn)\n oldForwardRef.removeEventListener('focusout', onFocusOut)\n }\n })\n\n const trapOnFocus = (e: Event) => {\n emit(ON_TRAP_FOCUS_EVT, e)\n }\n const releaseOnFocus = (e: Event) => emit(ON_RELEASE_FOCUS_EVT, e)\n\n const onFocusIn = (e: FocusEvent) => {\n const trapContainer = unref(forwardRef)\n if (!trapContainer) return\n\n const target = e.target as HTMLElement | null\n const relatedTarget = e.relatedTarget as HTMLElement | null\n const isFocusedInTrap = target && trapContainer.contains(target)\n\n if (!props.trapped) {\n const isPrevFocusedInTrap =\n relatedTarget && trapContainer.contains(relatedTarget)\n if (!isPrevFocusedInTrap) {\n lastFocusBeforeTrapped = relatedTarget\n }\n }\n\n if (isFocusedInTrap) emit('focusin', e)\n\n if (focusLayer.paused) return\n\n if (props.trapped) {\n if (isFocusedInTrap) {\n lastFocusAfterTrapped = target\n } else {\n tryFocus(lastFocusAfterTrapped, true)\n }\n }\n }\n\n const onFocusOut = (e: Event) => {\n const trapContainer = unref(forwardRef)\n if (focusLayer.paused || !trapContainer) return\n\n if (props.trapped) {\n const relatedTarget = (e as FocusEvent)\n .relatedTarget as HTMLElement | null\n if (!isNil(relatedTarget) && !trapContainer.contains(relatedTarget)) {\n // Give embedded focus layer time to pause this layer before reclaiming focus\n // And only reclaim focus if it should currently be trapping\n setTimeout(() => {\n if (!focusLayer.paused && props.trapped) {\n const focusoutPreventedEvent = createFocusOutPreventedEvent({\n focusReason: focusReason.value,\n })\n emit('focusout-prevented', focusoutPreventedEvent)\n if (!focusoutPreventedEvent.defaultPrevented) {\n tryFocus(lastFocusAfterTrapped, true)\n }\n }\n }, 0)\n }\n } else {\n const target = e.target as HTMLElement | null\n const isFocusedInTrap = target && trapContainer.contains(target)\n if (!isFocusedInTrap) emit('focusout', e)\n }\n }\n\n async function startTrap() {\n // Wait for forwardRef to resolve\n await nextTick()\n const trapContainer = unref(forwardRef)\n if (trapContainer) {\n focusableStack.push(focusLayer)\n const prevFocusedElement = trapContainer.contains(\n document.activeElement\n )\n ? lastFocusBeforeTrapped\n : document.activeElement\n lastFocusBeforeTrapped = prevFocusedElement as HTMLElement | null\n const isPrevFocusContained = trapContainer.contains(prevFocusedElement)\n if (!isPrevFocusContained) {\n const focusEvent = new Event(\n FOCUS_AFTER_TRAPPED,\n FOCUS_AFTER_TRAPPED_OPTS\n )\n trapContainer.addEventListener(FOCUS_AFTER_TRAPPED, trapOnFocus)\n trapContainer.dispatchEvent(focusEvent)\n if (!focusEvent.defaultPrevented) {\n nextTick(() => {\n let focusStartEl = props.focusStartEl\n if (!isString(focusStartEl)) {\n tryFocus(focusStartEl)\n if (document.activeElement !== focusStartEl) {\n focusStartEl = 'first'\n }\n }\n if (focusStartEl === 'first') {\n focusFirstDescendant(\n obtainAllFocusableElements(trapContainer),\n true\n )\n }\n if (\n document.activeElement === prevFocusedElement ||\n focusStartEl === 'container'\n ) {\n tryFocus(trapContainer)\n }\n })\n }\n }\n }\n }\n\n function stopTrap() {\n const trapContainer = unref(forwardRef)\n\n if (trapContainer) {\n trapContainer.removeEventListener(FOCUS_AFTER_TRAPPED, trapOnFocus)\n\n const releasedEvent = new CustomEvent(FOCUS_AFTER_RELEASED, {\n ...FOCUS_AFTER_TRAPPED_OPTS,\n detail: {\n focusReason: focusReason.value,\n },\n })\n trapContainer.addEventListener(FOCUS_AFTER_RELEASED, releaseOnFocus)\n trapContainer.dispatchEvent(releasedEvent)\n if (\n !releasedEvent.defaultPrevented &&\n (focusReason.value == 'keyboard' ||\n !isFocusCausedByUserEvent() ||\n trapContainer.contains(document.activeElement))\n ) {\n tryFocus(lastFocusBeforeTrapped ?? document.body)\n }\n\n trapContainer.removeEventListener(FOCUS_AFTER_RELEASED, releaseOnFocus)\n focusableStack.remove(focusLayer)\n }\n }\n\n onMounted(() => {\n if (props.trapped) {\n startTrap()\n }\n\n watch(\n () => props.trapped,\n (trapped) => {\n if (trapped) {\n startTrap()\n } else {\n stopTrap()\n }\n }\n )\n })\n\n onBeforeUnmount(() => {\n if (props.trapped) {\n stopTrap()\n }\n })\n\n return {\n onKeydown,\n }\n },\n})\n</script>\n"],"names":["_renderSlot"],"mappings":";;;;;;;;;;;;;;;AAwCA,MAAK,YAAa,eAAa,CAAA;AAAA,EAC7B,IAAM,EAAA,aAAA;AAAA,EACN,YAAc,EAAA,KAAA;AAAA,EACd,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,OAAA;AAAA,IACT,WAAa,EAAA,MAAA;AAAA,IACb,YAAc,EAAA;AAAA,MACZ,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA,MACrB,OAAS,EAAA,OAAA;AAAA,KACX;AAAA,GACF;AAAA,EACA,KAAO,EAAA;AAAA,IACL,iBAAA;AAAA,IACA,oBAAA;AAAA,IACA,SAAA;AAAA,IACA,UAAA;AAAA,IACA,oBAAA;AAAA,IACA,mBAAA;AAAA,GACF;AAAA,EACA,KAAA,CAAM,OAAO,GAAK,EAAA;AAChB,IAAM,MAAA,SAAA,GAAY,gBAAgB,WAAW,CAAA,CAAA;AAC7C,IAAA,MAAM,IAAO,GAAA,SAAA,CAAU,KAAQ,GAAA,CAAC,MAAc,GAAe,KAAA;AAAA,QAAK,GAAI,CAAA,IAAA,CAAA;AAEtE,IAAA,MAAM,aAAa,GAA6B,EAAA,CAAA;AAChD,IAAI,IAAA,sBAAA,CAAA;AACJ,IAAI,IAAA,qBAAA,CAAA;AAEJ,IAAM,MAAA,EAAE,gBAAgB,cAAe,EAAA,CAAA;AAEvC,IAAA,gBAAA,CAAiB,CAAC,KAAU,KAAA;AAC1B,MAAA,IAAI,KAAM,CAAA,OAAA,IAAW,CAAC,UAAA,CAAW,MAAQ,EAAA;AACvC,QAAA,IAAA,CAAK,qBAAqB,KAAK,CAAA,CAAA;AAAA,OACjC;AAAA,KACD,CAAA,CAAA;AAED,IAAA,MAAM,UAAyB,GAAA;AAAA,MAC7B,MAAQ,EAAA,KAAA;AAAA,MACR,KAAQ,GAAA;AACN,QAAA,IAAA,CAAK,MAAS,GAAA,IAAA,CAAA;AAAA,OAChB;AAAA,MACA,MAAS,GAAA;AACP,QAAA,IAAA,CAAK,MAAS,GAAA,KAAA,CAAA;AAAA,OAChB;AAAA,KACF,CAAA;AAEA,IAAM,MAAA,SAAA,GAAY,CAAC,CAAqB,KAAA;AACtC,MAAA,IAAI,CAAC,KAAA,CAAM,IAAQ,IAAA,CAAC,KAAM,CAAA,OAAA;AAAS,QAAA,OAAA;AACnC,MAAA,IAAI,UAAW,CAAA,MAAA;AAAQ,QAAA,OAAA;AAEvB,MAAA,MAAM,EAAE,GAAK,EAAA,MAAA,EAAQ,OAAS,EAAA,OAAA,EAAS,eAAe,QAAa,EAAA,GAAA,CAAA,CAAA;AACnE,MAAA,MAAM,EAAE,IAAS,EAAA,GAAA,KAAA,CAAA;AACjB,MAAM,MAAA,SAAA,GACJ,QAAQ,UAAW,CAAA,GAAA,IAAO,CAAC,MAAU,IAAA,CAAC,WAAW,CAAC,OAAA,CAAA;AAEpD,MAAA,MAAM,oBAAoB,QAAS,CAAA,aAAA,CAAA;AACnC,MAAA,IAAI,aAAa,iBAAmB,EAAA;AAClC,QAAA,MAAM,SAAY,GAAA,aAAA,CAAA;AAClB,QAAA,MAAM,CAAC,KAAA,EAAO,IAAQ,CAAA,GAAA,QAAA,CAAS,SAAS,CAAA,CAAA;AACxC,QAAA,MAAM,aAAa,KAAS,IAAA,IAAA,CAAA;AAC5B,QAAA,IAAI,CAAC,UAAY,EAAA;AACf,UAAA,IAAI,sBAAsB,SAAW,EAAA;AACnC,YAAA,MAAM,yBAAyB,4BAA6B,CAAA;AAAA,cAC1D,aAAa,WAAY,CAAA,KAAA;AAAA,aAC1B,CAAA,CAAA;AACD,YAAA,IAAA,CAAK,sBAAsB,sBAAsB,CAAA,CAAA;AACjD,YAAI,IAAA,CAAC,uBAAuB,gBAAkB,EAAA;AAC5C,cAAA,CAAA,CAAE,cAAe,EAAA,CAAA;AAAA,aACnB;AAAA,WACF;AAAA,SACK,MAAA;AACL,UAAI,IAAA,CAAC,QAAY,IAAA,iBAAA,KAAsB,IAAM,EAAA;AAC3C,YAAA,MAAM,yBAAyB,4BAA6B,CAAA;AAAA,cAC1D,aAAa,WAAY,CAAA,KAAA;AAAA,aAC1B,CAAA,CAAA;AACD,YAAA,IAAA,CAAK,sBAAsB,sBAAsB,CAAA,CAAA;AACjD,YAAI,IAAA,CAAC,uBAAuB,gBAAkB,EAAA;AAC5C,cAAA,CAAA,CAAE,cAAe,EAAA,CAAA;AACjB,cAAI,IAAA,IAAA;AAAM,gBAAA,QAAA,CAAS,OAAO,IAAI,CAAA,CAAA;AAAA,aAChC;AAAA,WACF,MAAA,IACE,YACA,CAAC,KAAA,EAAO,SAAS,CAAE,CAAA,QAAA,CAAS,iBAAgC,CAC5D,EAAA;AACA,YAAA,MAAM,yBAAyB,4BAA6B,CAAA;AAAA,cAC1D,aAAa,WAAY,CAAA,KAAA;AAAA,aAC1B,CAAA,CAAA;AACD,YAAA,IAAA,CAAK,sBAAsB,sBAAsB,CAAA,CAAA;AACjD,YAAI,IAAA,CAAC,uBAAuB,gBAAkB,EAAA;AAC5C,cAAA,CAAA,CAAE,cAAe,EAAA,CAAA;AACjB,cAAI,IAAA,IAAA;AAAM,gBAAA,QAAA,CAAS,MAAM,IAAI,CAAA,CAAA;AAAA,aAC/B;AAAA,WACF;AAAA,SACF;AAAA,OACF;AAAA,KACF,CAAA;AAEA,IAAA,OAAA,CAAQ,wBAA0B,EAAA;AAAA,MAChC,YAAc,EAAA,UAAA;AAAA,MACd,SAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAA,KAAA,CACE,MAAM,KAAA,CAAM,WACZ,EAAA,CAAC,WAAgB,KAAA;AACf,MAAA,IAAI,WAAa,EAAA;AACf,QAAA,UAAA,CAAW,KAAQ,GAAA,WAAA,CAAA;AAAA,OACrB;AAAA,KAEF,EAAA,EAAE,SAAW,EAAA,IAAA,EACf,CAAA,CAAA;AAEA,IAAA,KAAA,CAAM,CAAC,UAAU,CAAA,EAAG,CAAC,CAAC,WAAA,CAAA,EAAa,CAAC,aAAmB,CAAA,KAAA;AACrD,MAAA,IAAI,WAAY,EAAA;AACd,QAAW,WAAA,CAAA,gBAAA,CAAiB,WAAW,SAAS,CAAA,CAAA;AAChD,QAAW,WAAA,CAAA,gBAAA,CAAiB,WAAW,SAAS,CAAA,CAAA;AAChD,QAAW,WAAA,CAAA,gBAAA,CAAiB,YAAY,UAAU,CAAA,CAAA;AAAA,OACpD;AACA,MAAA,IAAI,aAAe,EAAA;AACjB,QAAc,aAAA,CAAA,mBAAA,CAAoB,WAAW,SAAS,CAAA,CAAA;AACtD,QAAc,aAAA,CAAA,mBAAA,CAAoB,WAAW,SAAS,CAAA,CAAA;AACtD,QAAc,aAAA,CAAA,mBAAA,CAAoB,YAAY,UAAU,CAAA,CAAA;AAAA,OAC1D;AAAA,KACD,CAAA,CAAA;AAED,IAAM,MAAA,WAAA,GAAc,CAAC,CAAa,KAAA;AAChC,MAAA,IAAA,CAAK,mBAAmB,CAAC,CAAA,CAAA;AAAA,KAC3B,CAAA;AACA,IAAA,MAAM,cAAiB,GAAA,CAAC,CAAa,KAAA,IAAA,CAAK,sBAAsB,CAAC,CAAA,CAAA;AAEjE,IAAM,MAAA,SAAA,GAAY,CAAC,CAAkB,KAAA;AACnC,MAAM,MAAA,aAAA,GAAgB,MAAM,UAAU,CAAA,CAAA;AACtC,MAAA,IAAI,CAAC,aAAA;AAAe,QAAA,OAAA;AAEpB,MAAA,MAAM,SAAS,CAAE,CAAA,MAAA,CAAA;AACjB,MAAA,MAAM,gBAAgB,CAAE,CAAA,aAAA,CAAA;AACxB,MAAA,MAAM,eAAkB,GAAA,MAAA,IAAU,aAAc,CAAA,QAAA,CAAS,MAAM,CAAA,CAAA;AAE/D,MAAI,IAAA,CAAC,MAAM,OAAS,EAAA;AAClB,QAAA,MAAM,mBACJ,GAAA,aAAA,IAAiB,aAAc,CAAA,QAAA,CAAS,aAAa,CAAA,CAAA;AACvD,QAAA,IAAI,CAAC,mBAAqB,EAAA;AACxB,UAAyB,sBAAA,GAAA,aAAA,CAAA;AAAA,SAC3B;AAAA,OACF;AAEA,MAAI,IAAA,eAAA;AAAiB,QAAA,IAAA,CAAK,WAAW,CAAC,CAAA,CAAA;AAEtC,MAAA,IAAI,UAAW,CAAA,MAAA;AAAQ,QAAA,OAAA;AAEvB,MAAA,IAAI,MAAM,OAAS,EAAA;AACjB,QAAA,IAAI,eAAiB,EAAA;AACnB,UAAwB,qBAAA,GAAA,MAAA,CAAA;AAAA,SACnB,MAAA;AACL,UAAA,QAAA,CAAS,uBAAuB,IAAI,CAAA,CAAA;AAAA,SACtC;AAAA,OACF;AAAA,KACF,CAAA;AAEA,IAAM,MAAA,UAAA,GAAa,CAAC,CAAa,KAAA;AAC/B,MAAM,MAAA,aAAA,GAAgB,MAAM,UAAU,CAAA,CAAA;AACtC,MAAI,IAAA,UAAA,CAAW,UAAU,CAAC,aAAA;AAAe,QAAA,OAAA;AAEzC,MAAA,IAAI,MAAM,OAAS,EAAA;AACjB,QAAA,MAAM,gBAAiB,CACpB,CAAA,aAAA,CAAA;AACH,QAAI,IAAA,CAAC,MAAM,aAAa,CAAA,IAAK,CAAC,aAAc,CAAA,QAAA,CAAS,aAAa,CAAG,EAAA;AAGnE,UAAA,UAAA,CAAW,MAAM;AACf,YAAA,IAAI,CAAC,UAAA,CAAW,MAAU,IAAA,KAAA,CAAM,OAAS,EAAA;AACvC,cAAA,MAAM,yBAAyB,4BAA6B,CAAA;AAAA,gBAC1D,aAAa,WAAY,CAAA,KAAA;AAAA,eAC1B,CAAA,CAAA;AACD,cAAA,IAAA,CAAK,sBAAsB,sBAAsB,CAAA,CAAA;AACjD,cAAI,IAAA,CAAC,uBAAuB,gBAAkB,EAAA;AAC5C,gBAAA,QAAA,CAAS,uBAAuB,IAAI,CAAA,CAAA;AAAA,eACtC;AAAA,aACF;AAAA,aACC,CAAC,CAAA,CAAA;AAAA,SACN;AAAA,OACK,MAAA;AACL,QAAA,MAAM,SAAS,CAAE,CAAA,MAAA,CAAA;AACjB,QAAA,MAAM,eAAkB,GAAA,MAAA,IAAU,aAAc,CAAA,QAAA,CAAS,MAAM,CAAA,CAAA;AAC/D,QAAA,IAAI,CAAC,eAAA;AAAiB,UAAA,IAAA,CAAK,YAAY,CAAC,CAAA,CAAA;AAAA,OAC1C;AAAA,KACF,CAAA;AAEA,IAA2B,eAAA,SAAA,GAAA;AAEzB,MAAA,MAAM,QAAS,EAAA,CAAA;AACf,MAAM,MAAA,aAAA,GAAgB,MAAM,UAAU,CAAA,CAAA;AACtC,MAAA,IAAI,aAAe,EAAA;AACjB,QAAA,cAAA,CAAe,KAAK,UAAU,CAAA,CAAA;AAC9B,QAAA,MAAM,qBAAqB,aAAc,CAAA,QAAA,CACvC,SAAS,aACX,CAAA,GACI,yBACA,QAAS,CAAA,aAAA,CAAA;AACb,QAAyB,sBAAA,GAAA,kBAAA,CAAA;AACzB,QAAM,MAAA,oBAAA,GAAuB,aAAc,CAAA,QAAA,CAAS,kBAAkB,CAAA,CAAA;AACtE,QAAA,IAAI,CAAC,oBAAsB,EAAA;AACzB,UAAA,MAAM,UAAa,GAAA,IAAI,KACrB,CAAA,mBAAA,EACA,wBACF,CAAA,CAAA;AACA,UAAc,aAAA,CAAA,gBAAA,CAAiB,qBAAqB,WAAW,CAAA,CAAA;AAC/D,UAAA,aAAA,CAAc,cAAc,UAAU,CAAA,CAAA;AACtC,UAAI,IAAA,CAAC,WAAW,gBAAkB,EAAA;AAChC,YAAA,QAAA,CAAS,MAAM;AACb,cAAA,IAAI,eAAe,KAAM,CAAA,YAAA,CAAA;AACzB,cAAI,IAAA,CAAC,QAAS,CAAA,YAAY,CAAG,EAAA;AAC3B,gBAAA,QAAA,CAAS,YAAY,CAAA,CAAA;AACrB,gBAAI,IAAA,QAAA,CAAS,kBAAkB,YAAc,EAAA;AAC3C,kBAAe,YAAA,GAAA,OAAA,CAAA;AAAA,iBACjB;AAAA,eACF;AACA,cAAA,IAAI,iBAAiB,OAAS,EAAA;AAC5B,gBACE,oBAAA,CAAA,0BAAA,CAA2B,aAAa,CAAA,EACxC,IACF,CAAA,CAAA;AAAA,eACF;AACA,cAAA,IACE,QAAS,CAAA,aAAA,KAAkB,kBAC3B,IAAA,YAAA,KAAiB,WACjB,EAAA;AACA,gBAAA,QAAA,CAAS,aAAa,CAAA,CAAA;AAAA,eACxB;AAAA,aACD,CAAA,CAAA;AAAA,WACH;AAAA,SACF;AAAA,OACF;AAAA,KACF;AAEA,IAAoB,SAAA,QAAA,GAAA;AAClB,MAAM,MAAA,aAAA,GAAgB,MAAM,UAAU,CAAA,CAAA;AAEtC,MAAA,IAAI,aAAe,EAAA;AACjB,QAAc,aAAA,CAAA,mBAAA,CAAoB,qBAAqB,WAAW,CAAA,CAAA;AAElE,QAAM,MAAA,aAAA,GAAgB,IAAI,WAAA,CAAY,oBAAsB,EAAA;AAAA,UAC1D,GAAG,wBAAA;AAAA,UACH,MAAQ,EAAA;AAAA,YACN,aAAa,WAAY,CAAA,KAAA;AAAA,WAC3B;AAAA,SACD,CAAA,CAAA;AACD,QAAc,aAAA,CAAA,gBAAA,CAAiB,sBAAsB,cAAc,CAAA,CAAA;AACnE,QAAA,aAAA,CAAc,cAAc,aAAa,CAAA,CAAA;AACzC,QAAA,IACE,CAAC,aAAA,CAAc,gBACd,KAAA,WAAA,CAAY,KAAS,IAAA,UAAA,IACpB,CAAC,wBAAA,EACD,IAAA,aAAA,CAAc,QAAS,CAAA,QAAA,CAAS,aAAa,CAC/C,CAAA,EAAA;AACA,UAAS,QAAA,CAAA,sBAAA,IAA0B,6BAAa,GAAA,QAAA,CAAA,IAAA,CAAA,CAAA;AAAA,SAClD;AAEA,QAAc,aAAA,CAAA,mBAAA,CAAoB,sBAAsB,cAAc,CAAA,CAAA;AACtE,QAAA,cAAA,CAAe,OAAO,UAAU,CAAA,CAAA;AAAA,OAClC;AAAA,KACF;AAEA,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,IAAI,MAAM,OAAS,EAAA;AACjB,QAAU,SAAA,EAAA,CAAA;AAAA,OACZ;AAEA,MAAA,KAAA,CACE,MAAM,KAAA,CAAM,OACZ,EAAA,CAAC,OAAY,KAAA;AACX,QAAA,IAAI,OAAS,EAAA;AACX,UAAU,SAAA,EAAA,CAAA;AAAA,SACL,MAAA;AACL,UAAS,QAAA,EAAA,CAAA;AAAA,SACX;AAAA,OAEJ,CAAA,CAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAA,eAAA,CAAgB,MAAM;AACpB,MAAA,IAAI,MAAM,OAAS,EAAA;AACjB,QAAS,QAAA,EAAA,CAAA;AAAA,OACX;AAAA,KACD,CAAA,CAAA;AAED,IAAO,OAAA;AAAA,MACL,SAAA;AAAA,KACF,CAAA;AAAA,GACF;AACF,CAAC,CAAA,CAAA;;SAzUCA,UAAoC,CAAA,IAAA,CAAA,MAAA,EAAA,SAAA,EAAA,EAA7B,eAAgB,IAAS,CAAA,SAAA,EAAA,CAAA,CAAA;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import '../../utils/index.mjs';
2
- import Icon from './src/icon.mjs';
3
- export { iconProps } from './src/icon2.mjs';
2
+ import Icon from './src/icon2.mjs';
3
+ export { iconProps } from './src/icon.mjs';
4
4
  import { withInstall } from '../../utils/vue/install.mjs';
5
5
 
6
6
  const ElIcon = withInstall(Icon);