@element-plus/nightly 0.0.20251202 → 0.0.20251204

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 (482) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +15 -3
  3. package/dist/index.full.min.js +9 -9
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +9 -9
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +15 -3
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar-eg.js +1 -1
  13. package/dist/locale/ar-eg.min.js +1 -1
  14. package/dist/locale/ar-eg.min.mjs +1 -1
  15. package/dist/locale/ar-eg.mjs +1 -1
  16. package/dist/locale/ar.js +1 -1
  17. package/dist/locale/ar.min.js +1 -1
  18. package/dist/locale/ar.min.mjs +1 -1
  19. package/dist/locale/ar.mjs +1 -1
  20. package/dist/locale/az.js +1 -1
  21. package/dist/locale/az.min.js +1 -1
  22. package/dist/locale/az.min.mjs +1 -1
  23. package/dist/locale/az.mjs +1 -1
  24. package/dist/locale/bg.js +1 -1
  25. package/dist/locale/bg.min.js +1 -1
  26. package/dist/locale/bg.min.mjs +1 -1
  27. package/dist/locale/bg.mjs +1 -1
  28. package/dist/locale/bn.js +1 -1
  29. package/dist/locale/bn.min.js +1 -1
  30. package/dist/locale/bn.min.mjs +1 -1
  31. package/dist/locale/bn.mjs +1 -1
  32. package/dist/locale/ca.js +1 -1
  33. package/dist/locale/ca.min.js +1 -1
  34. package/dist/locale/ca.min.mjs +1 -1
  35. package/dist/locale/ca.mjs +1 -1
  36. package/dist/locale/ckb.js +1 -1
  37. package/dist/locale/ckb.min.js +1 -1
  38. package/dist/locale/ckb.min.mjs +1 -1
  39. package/dist/locale/ckb.mjs +1 -1
  40. package/dist/locale/cs.js +1 -1
  41. package/dist/locale/cs.min.js +1 -1
  42. package/dist/locale/cs.min.mjs +1 -1
  43. package/dist/locale/cs.mjs +1 -1
  44. package/dist/locale/da.js +1 -1
  45. package/dist/locale/da.min.js +1 -1
  46. package/dist/locale/da.min.mjs +1 -1
  47. package/dist/locale/da.mjs +1 -1
  48. package/dist/locale/de.js +1 -1
  49. package/dist/locale/de.min.js +1 -1
  50. package/dist/locale/de.min.mjs +1 -1
  51. package/dist/locale/de.mjs +1 -1
  52. package/dist/locale/el.js +1 -1
  53. package/dist/locale/el.min.js +1 -1
  54. package/dist/locale/el.min.mjs +1 -1
  55. package/dist/locale/el.mjs +1 -1
  56. package/dist/locale/en.js +1 -1
  57. package/dist/locale/en.min.js +1 -1
  58. package/dist/locale/en.min.mjs +1 -1
  59. package/dist/locale/en.mjs +1 -1
  60. package/dist/locale/eo.js +1 -1
  61. package/dist/locale/eo.min.js +1 -1
  62. package/dist/locale/eo.min.mjs +1 -1
  63. package/dist/locale/eo.mjs +1 -1
  64. package/dist/locale/es.js +1 -1
  65. package/dist/locale/es.min.js +1 -1
  66. package/dist/locale/es.min.mjs +1 -1
  67. package/dist/locale/es.mjs +1 -1
  68. package/dist/locale/et.js +1 -1
  69. package/dist/locale/et.min.js +1 -1
  70. package/dist/locale/et.min.mjs +1 -1
  71. package/dist/locale/et.mjs +1 -1
  72. package/dist/locale/eu.js +1 -1
  73. package/dist/locale/eu.min.js +1 -1
  74. package/dist/locale/eu.min.mjs +1 -1
  75. package/dist/locale/eu.mjs +1 -1
  76. package/dist/locale/fa.js +1 -1
  77. package/dist/locale/fa.min.js +1 -1
  78. package/dist/locale/fa.min.mjs +1 -1
  79. package/dist/locale/fa.mjs +1 -1
  80. package/dist/locale/fi.js +1 -1
  81. package/dist/locale/fi.min.js +1 -1
  82. package/dist/locale/fi.min.mjs +1 -1
  83. package/dist/locale/fi.mjs +1 -1
  84. package/dist/locale/fr.js +1 -1
  85. package/dist/locale/fr.min.js +1 -1
  86. package/dist/locale/fr.min.mjs +1 -1
  87. package/dist/locale/fr.mjs +1 -1
  88. package/dist/locale/he.js +1 -1
  89. package/dist/locale/he.min.js +1 -1
  90. package/dist/locale/he.min.mjs +1 -1
  91. package/dist/locale/he.mjs +1 -1
  92. package/dist/locale/hi.js +1 -1
  93. package/dist/locale/hi.min.js +1 -1
  94. package/dist/locale/hi.min.mjs +1 -1
  95. package/dist/locale/hi.mjs +1 -1
  96. package/dist/locale/hr.js +1 -1
  97. package/dist/locale/hr.min.js +1 -1
  98. package/dist/locale/hr.min.mjs +1 -1
  99. package/dist/locale/hr.mjs +1 -1
  100. package/dist/locale/hu.js +1 -1
  101. package/dist/locale/hu.min.js +1 -1
  102. package/dist/locale/hu.min.mjs +1 -1
  103. package/dist/locale/hu.mjs +1 -1
  104. package/dist/locale/hy-am.js +1 -1
  105. package/dist/locale/hy-am.min.js +1 -1
  106. package/dist/locale/hy-am.min.mjs +1 -1
  107. package/dist/locale/hy-am.mjs +1 -1
  108. package/dist/locale/id.js +1 -1
  109. package/dist/locale/id.min.js +1 -1
  110. package/dist/locale/id.min.mjs +1 -1
  111. package/dist/locale/id.mjs +1 -1
  112. package/dist/locale/it.js +1 -1
  113. package/dist/locale/it.min.js +1 -1
  114. package/dist/locale/it.min.mjs +1 -1
  115. package/dist/locale/it.mjs +1 -1
  116. package/dist/locale/ja.js +1 -1
  117. package/dist/locale/ja.min.js +1 -1
  118. package/dist/locale/ja.min.mjs +1 -1
  119. package/dist/locale/ja.mjs +1 -1
  120. package/dist/locale/kk.js +1 -1
  121. package/dist/locale/kk.min.js +1 -1
  122. package/dist/locale/kk.min.mjs +1 -1
  123. package/dist/locale/kk.mjs +1 -1
  124. package/dist/locale/km.js +1 -1
  125. package/dist/locale/km.min.js +1 -1
  126. package/dist/locale/km.min.mjs +1 -1
  127. package/dist/locale/km.mjs +1 -1
  128. package/dist/locale/ko.js +1 -1
  129. package/dist/locale/ko.min.js +1 -1
  130. package/dist/locale/ko.min.mjs +1 -1
  131. package/dist/locale/ko.mjs +1 -1
  132. package/dist/locale/ku.js +1 -1
  133. package/dist/locale/ku.min.js +1 -1
  134. package/dist/locale/ku.min.mjs +1 -1
  135. package/dist/locale/ku.mjs +1 -1
  136. package/dist/locale/ky.js +1 -1
  137. package/dist/locale/ky.min.js +1 -1
  138. package/dist/locale/ky.min.mjs +1 -1
  139. package/dist/locale/ky.mjs +1 -1
  140. package/dist/locale/lo.js +1 -1
  141. package/dist/locale/lo.min.js +1 -1
  142. package/dist/locale/lo.min.mjs +1 -1
  143. package/dist/locale/lo.mjs +1 -1
  144. package/dist/locale/lt.js +1 -1
  145. package/dist/locale/lt.min.js +1 -1
  146. package/dist/locale/lt.min.mjs +1 -1
  147. package/dist/locale/lt.mjs +1 -1
  148. package/dist/locale/lv.js +1 -1
  149. package/dist/locale/lv.min.js +1 -1
  150. package/dist/locale/lv.min.mjs +1 -1
  151. package/dist/locale/lv.mjs +1 -1
  152. package/dist/locale/mg.js +1 -1
  153. package/dist/locale/mg.min.js +1 -1
  154. package/dist/locale/mg.min.mjs +1 -1
  155. package/dist/locale/mg.mjs +1 -1
  156. package/dist/locale/mn.js +1 -1
  157. package/dist/locale/mn.min.js +1 -1
  158. package/dist/locale/mn.min.mjs +1 -1
  159. package/dist/locale/mn.mjs +1 -1
  160. package/dist/locale/ms.js +1 -1
  161. package/dist/locale/ms.min.js +1 -1
  162. package/dist/locale/ms.min.mjs +1 -1
  163. package/dist/locale/ms.mjs +1 -1
  164. package/dist/locale/my.js +1 -1
  165. package/dist/locale/my.min.js +1 -1
  166. package/dist/locale/my.min.mjs +1 -1
  167. package/dist/locale/my.mjs +1 -1
  168. package/dist/locale/nb-no.js +1 -1
  169. package/dist/locale/nb-no.min.js +1 -1
  170. package/dist/locale/nb-no.min.mjs +1 -1
  171. package/dist/locale/nb-no.mjs +1 -1
  172. package/dist/locale/nl.js +1 -1
  173. package/dist/locale/nl.min.js +1 -1
  174. package/dist/locale/nl.min.mjs +1 -1
  175. package/dist/locale/nl.mjs +1 -1
  176. package/dist/locale/no.js +1 -1
  177. package/dist/locale/no.min.js +1 -1
  178. package/dist/locale/no.min.mjs +1 -1
  179. package/dist/locale/no.mjs +1 -1
  180. package/dist/locale/pa.js +1 -1
  181. package/dist/locale/pa.min.js +1 -1
  182. package/dist/locale/pa.min.mjs +1 -1
  183. package/dist/locale/pa.mjs +1 -1
  184. package/dist/locale/pl.js +1 -1
  185. package/dist/locale/pl.min.js +1 -1
  186. package/dist/locale/pl.min.mjs +1 -1
  187. package/dist/locale/pl.mjs +1 -1
  188. package/dist/locale/pt-br.js +1 -1
  189. package/dist/locale/pt-br.min.js +1 -1
  190. package/dist/locale/pt-br.min.mjs +1 -1
  191. package/dist/locale/pt-br.mjs +1 -1
  192. package/dist/locale/pt.js +1 -1
  193. package/dist/locale/pt.min.js +1 -1
  194. package/dist/locale/pt.min.mjs +1 -1
  195. package/dist/locale/pt.mjs +1 -1
  196. package/dist/locale/ro.js +1 -1
  197. package/dist/locale/ro.min.js +1 -1
  198. package/dist/locale/ro.min.mjs +1 -1
  199. package/dist/locale/ro.mjs +1 -1
  200. package/dist/locale/ru.js +1 -1
  201. package/dist/locale/ru.min.js +1 -1
  202. package/dist/locale/ru.min.mjs +1 -1
  203. package/dist/locale/ru.mjs +1 -1
  204. package/dist/locale/sk.js +1 -1
  205. package/dist/locale/sk.min.js +1 -1
  206. package/dist/locale/sk.min.mjs +1 -1
  207. package/dist/locale/sk.mjs +1 -1
  208. package/dist/locale/sl.js +1 -1
  209. package/dist/locale/sl.min.js +1 -1
  210. package/dist/locale/sl.min.mjs +1 -1
  211. package/dist/locale/sl.mjs +1 -1
  212. package/dist/locale/sr.js +1 -1
  213. package/dist/locale/sr.min.js +1 -1
  214. package/dist/locale/sr.min.mjs +1 -1
  215. package/dist/locale/sr.mjs +1 -1
  216. package/dist/locale/sv.js +1 -1
  217. package/dist/locale/sv.min.js +1 -1
  218. package/dist/locale/sv.min.mjs +1 -1
  219. package/dist/locale/sv.mjs +1 -1
  220. package/dist/locale/sw.js +1 -1
  221. package/dist/locale/sw.min.js +1 -1
  222. package/dist/locale/sw.min.mjs +1 -1
  223. package/dist/locale/sw.mjs +1 -1
  224. package/dist/locale/ta.js +1 -1
  225. package/dist/locale/ta.min.js +1 -1
  226. package/dist/locale/ta.min.mjs +1 -1
  227. package/dist/locale/ta.mjs +1 -1
  228. package/dist/locale/te.js +1 -1
  229. package/dist/locale/te.min.js +1 -1
  230. package/dist/locale/te.min.mjs +1 -1
  231. package/dist/locale/te.mjs +1 -1
  232. package/dist/locale/th.js +1 -1
  233. package/dist/locale/th.min.js +1 -1
  234. package/dist/locale/th.min.mjs +1 -1
  235. package/dist/locale/th.mjs +1 -1
  236. package/dist/locale/tk.js +1 -1
  237. package/dist/locale/tk.min.js +1 -1
  238. package/dist/locale/tk.min.mjs +1 -1
  239. package/dist/locale/tk.mjs +1 -1
  240. package/dist/locale/tr.js +1 -1
  241. package/dist/locale/tr.min.js +1 -1
  242. package/dist/locale/tr.min.mjs +1 -1
  243. package/dist/locale/tr.mjs +1 -1
  244. package/dist/locale/ug-cn.js +1 -1
  245. package/dist/locale/ug-cn.min.js +1 -1
  246. package/dist/locale/ug-cn.min.mjs +1 -1
  247. package/dist/locale/ug-cn.mjs +1 -1
  248. package/dist/locale/uk.js +1 -1
  249. package/dist/locale/uk.min.js +1 -1
  250. package/dist/locale/uk.min.mjs +1 -1
  251. package/dist/locale/uk.mjs +1 -1
  252. package/dist/locale/uz-uz.js +1 -1
  253. package/dist/locale/uz-uz.min.js +1 -1
  254. package/dist/locale/uz-uz.min.mjs +1 -1
  255. package/dist/locale/uz-uz.mjs +1 -1
  256. package/dist/locale/vi.js +1 -1
  257. package/dist/locale/vi.min.js +1 -1
  258. package/dist/locale/vi.min.mjs +1 -1
  259. package/dist/locale/vi.mjs +1 -1
  260. package/dist/locale/zh-cn.js +1 -1
  261. package/dist/locale/zh-cn.min.js +1 -1
  262. package/dist/locale/zh-cn.min.mjs +1 -1
  263. package/dist/locale/zh-cn.mjs +1 -1
  264. package/dist/locale/zh-hk.js +1 -1
  265. package/dist/locale/zh-hk.min.js +1 -1
  266. package/dist/locale/zh-hk.min.mjs +1 -1
  267. package/dist/locale/zh-hk.mjs +1 -1
  268. package/dist/locale/zh-mo.js +1 -1
  269. package/dist/locale/zh-mo.min.js +1 -1
  270. package/dist/locale/zh-mo.min.mjs +1 -1
  271. package/dist/locale/zh-mo.mjs +1 -1
  272. package/dist/locale/zh-tw.js +1 -1
  273. package/dist/locale/zh-tw.min.js +1 -1
  274. package/dist/locale/zh-tw.min.mjs +1 -1
  275. package/dist/locale/zh-tw.mjs +1 -1
  276. package/es/components/badge/index.mjs +2 -2
  277. package/es/components/badge/src/badge.mjs +71 -32
  278. package/es/components/badge/src/badge.mjs.map +1 -1
  279. package/es/components/badge/src/badge2.mjs +32 -71
  280. package/es/components/badge/src/badge2.mjs.map +1 -1
  281. package/es/components/carousel/index.mjs +2 -2
  282. package/es/components/carousel/src/carousel-item.mjs +69 -7
  283. package/es/components/carousel/src/carousel-item.mjs.map +1 -1
  284. package/es/components/carousel/src/carousel-item2.mjs +7 -69
  285. package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
  286. package/es/components/checkbox/index.mjs +2 -2
  287. package/es/components/checkbox/src/checkbox-button.mjs +1 -1
  288. package/es/components/checkbox/src/checkbox-group2.mjs +1 -1
  289. package/es/components/checkbox/src/checkbox.mjs +63 -111
  290. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  291. package/es/components/checkbox/src/checkbox2.mjs +111 -63
  292. package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
  293. package/es/components/dialog/src/dialog-content.mjs +38 -89
  294. package/es/components/dialog/src/dialog-content.mjs.map +1 -1
  295. package/es/components/dialog/src/dialog-content2.mjs +89 -38
  296. package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
  297. package/es/components/dialog/src/dialog.mjs +1 -1
  298. package/es/components/dialog/src/dialog2.mjs +1 -1
  299. package/es/components/focus-trap/src/focus-trap.mjs +2 -0
  300. package/es/components/focus-trap/src/focus-trap.mjs.map +1 -1
  301. package/es/components/icon/index.mjs +2 -2
  302. package/es/components/icon/src/icon.mjs +8 -35
  303. package/es/components/icon/src/icon.mjs.map +1 -1
  304. package/es/components/icon/src/icon2.mjs +35 -8
  305. package/es/components/icon/src/icon2.mjs.map +1 -1
  306. package/es/components/index.mjs +13 -13
  307. package/es/components/notification/index.mjs +1 -1
  308. package/es/components/notification/src/notification.mjs +73 -147
  309. package/es/components/notification/src/notification.mjs.map +1 -1
  310. package/es/components/notification/src/notification2.mjs +147 -73
  311. package/es/components/notification/src/notification2.mjs.map +1 -1
  312. package/es/components/notification/src/notify.mjs +2 -2
  313. package/es/components/page-header/index.mjs +2 -2
  314. package/es/components/page-header/src/page-header.mjs +16 -97
  315. package/es/components/page-header/src/page-header.mjs.map +1 -1
  316. package/es/components/page-header/src/page-header2.mjs +97 -16
  317. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  318. package/es/components/pagination/src/components/next.mjs +35 -18
  319. package/es/components/pagination/src/components/next.mjs.map +1 -1
  320. package/es/components/pagination/src/components/next2.mjs +18 -35
  321. package/es/components/pagination/src/components/next2.mjs.map +1 -1
  322. package/es/components/pagination/src/components/sizes.mjs +72 -26
  323. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  324. package/es/components/pagination/src/components/sizes2.mjs +26 -72
  325. package/es/components/pagination/src/components/sizes2.mjs.map +1 -1
  326. package/es/components/pagination/src/pagination.mjs +2 -2
  327. package/es/components/popper/index.mjs +2 -2
  328. package/es/components/popper/src/composables/use-content.mjs +4 -1
  329. package/es/components/popper/src/composables/use-content.mjs.map +1 -1
  330. package/es/components/popper/src/composables/use-focus-trap.mjs +4 -1
  331. package/es/components/popper/src/composables/use-focus-trap.mjs.map +1 -1
  332. package/es/components/popper/src/content.mjs +132 -89
  333. package/es/components/popper/src/content.mjs.map +1 -1
  334. package/es/components/popper/src/content2.mjs +89 -131
  335. package/es/components/popper/src/content2.mjs.map +1 -1
  336. package/es/components/result/index.mjs +2 -2
  337. package/es/components/result/src/result.mjs +30 -62
  338. package/es/components/result/src/result.mjs.map +1 -1
  339. package/es/components/result/src/result2.mjs +62 -30
  340. package/es/components/result/src/result2.mjs.map +1 -1
  341. package/es/components/row/index.mjs +2 -2
  342. package/es/components/row/src/row.mjs +28 -44
  343. package/es/components/row/src/row.mjs.map +1 -1
  344. package/es/components/row/src/row2.mjs +44 -28
  345. package/es/components/row/src/row2.mjs.map +1 -1
  346. package/es/components/table/src/store/tree.mjs +1 -1
  347. package/es/components/table/src/store/tree.mjs.map +1 -1
  348. package/es/components/tabs/index.mjs +3 -3
  349. package/es/components/tabs/src/tab-bar.mjs +11 -92
  350. package/es/components/tabs/src/tab-bar.mjs.map +1 -1
  351. package/es/components/tabs/src/tab-bar2.mjs +92 -11
  352. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  353. package/es/components/tabs/src/tab-nav.mjs +1 -1
  354. package/es/components/tabs/src/tab-pane.mjs +16 -85
  355. package/es/components/tabs/src/tab-pane.mjs.map +1 -1
  356. package/es/components/tabs/src/tab-pane2.mjs +85 -16
  357. package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
  358. package/es/components/tooltip/src/content.mjs +1 -1
  359. package/es/components/tooltip/src/content2.mjs +1 -1
  360. package/es/components/tooltip/src/tooltip2.mjs +4 -1
  361. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  362. package/es/components/tour/index.mjs +2 -2
  363. package/es/components/tour/src/tour.mjs +154 -69
  364. package/es/components/tour/src/tour.mjs.map +1 -1
  365. package/es/components/tour/src/tour2.mjs +69 -154
  366. package/es/components/tour/src/tour2.mjs.map +1 -1
  367. package/es/components/transfer/src/composables/use-check.mjs +1 -1
  368. package/es/components/transfer/src/transfer-panel.mjs +130 -19
  369. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  370. package/es/components/transfer/src/transfer-panel2.mjs +19 -130
  371. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  372. package/es/components/transfer/src/transfer2.mjs +1 -1
  373. package/es/index.mjs +13 -13
  374. package/es/version.d.ts +1 -1
  375. package/es/version.mjs +1 -1
  376. package/es/version.mjs.map +1 -1
  377. package/lib/components/badge/index.js +2 -2
  378. package/lib/components/badge/src/badge.js +71 -32
  379. package/lib/components/badge/src/badge.js.map +1 -1
  380. package/lib/components/badge/src/badge2.js +32 -71
  381. package/lib/components/badge/src/badge2.js.map +1 -1
  382. package/lib/components/carousel/index.js +2 -2
  383. package/lib/components/carousel/src/carousel-item.js +69 -7
  384. package/lib/components/carousel/src/carousel-item.js.map +1 -1
  385. package/lib/components/carousel/src/carousel-item2.js +7 -69
  386. package/lib/components/carousel/src/carousel-item2.js.map +1 -1
  387. package/lib/components/checkbox/index.js +2 -2
  388. package/lib/components/checkbox/src/checkbox-button.js +1 -1
  389. package/lib/components/checkbox/src/checkbox-group2.js +1 -1
  390. package/lib/components/checkbox/src/checkbox.js +64 -111
  391. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  392. package/lib/components/checkbox/src/checkbox2.js +111 -64
  393. package/lib/components/checkbox/src/checkbox2.js.map +1 -1
  394. package/lib/components/dialog/src/dialog-content.js +38 -88
  395. package/lib/components/dialog/src/dialog-content.js.map +1 -1
  396. package/lib/components/dialog/src/dialog-content2.js +88 -38
  397. package/lib/components/dialog/src/dialog-content2.js.map +1 -1
  398. package/lib/components/dialog/src/dialog.js +1 -1
  399. package/lib/components/dialog/src/dialog2.js +1 -1
  400. package/lib/components/focus-trap/src/focus-trap.js +2 -0
  401. package/lib/components/focus-trap/src/focus-trap.js.map +1 -1
  402. package/lib/components/icon/index.js +2 -2
  403. package/lib/components/icon/src/icon.js +8 -35
  404. package/lib/components/icon/src/icon.js.map +1 -1
  405. package/lib/components/icon/src/icon2.js +35 -8
  406. package/lib/components/icon/src/icon2.js.map +1 -1
  407. package/lib/components/index.js +13 -13
  408. package/lib/components/notification/index.js +1 -1
  409. package/lib/components/notification/src/notification.js +74 -146
  410. package/lib/components/notification/src/notification.js.map +1 -1
  411. package/lib/components/notification/src/notification2.js +146 -74
  412. package/lib/components/notification/src/notification2.js.map +1 -1
  413. package/lib/components/notification/src/notify.js +2 -2
  414. package/lib/components/page-header/index.js +2 -2
  415. package/lib/components/page-header/src/page-header.js +17 -97
  416. package/lib/components/page-header/src/page-header.js.map +1 -1
  417. package/lib/components/page-header/src/page-header2.js +97 -17
  418. package/lib/components/page-header/src/page-header2.js.map +1 -1
  419. package/lib/components/pagination/src/components/next.js +35 -18
  420. package/lib/components/pagination/src/components/next.js.map +1 -1
  421. package/lib/components/pagination/src/components/next2.js +18 -35
  422. package/lib/components/pagination/src/components/next2.js.map +1 -1
  423. package/lib/components/pagination/src/components/sizes.js +72 -26
  424. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  425. package/lib/components/pagination/src/components/sizes2.js +26 -72
  426. package/lib/components/pagination/src/components/sizes2.js.map +1 -1
  427. package/lib/components/pagination/src/pagination.js +2 -2
  428. package/lib/components/popper/index.js +2 -2
  429. package/lib/components/popper/src/composables/use-content.js +3 -0
  430. package/lib/components/popper/src/composables/use-content.js.map +1 -1
  431. package/lib/components/popper/src/composables/use-focus-trap.js +3 -0
  432. package/lib/components/popper/src/composables/use-focus-trap.js.map +1 -1
  433. package/lib/components/popper/src/content.js +132 -94
  434. package/lib/components/popper/src/content.js.map +1 -1
  435. package/lib/components/popper/src/content2.js +94 -131
  436. package/lib/components/popper/src/content2.js.map +1 -1
  437. package/lib/components/result/index.js +2 -2
  438. package/lib/components/result/src/result.js +32 -62
  439. package/lib/components/result/src/result.js.map +1 -1
  440. package/lib/components/result/src/result2.js +62 -32
  441. package/lib/components/result/src/result2.js.map +1 -1
  442. package/lib/components/row/index.js +2 -2
  443. package/lib/components/row/src/row.js +30 -44
  444. package/lib/components/row/src/row.js.map +1 -1
  445. package/lib/components/row/src/row2.js +44 -30
  446. package/lib/components/row/src/row2.js.map +1 -1
  447. package/lib/components/table/src/store/tree.js +1 -1
  448. package/lib/components/table/src/store/tree.js.map +1 -1
  449. package/lib/components/tabs/index.js +3 -3
  450. package/lib/components/tabs/src/tab-bar.js +11 -92
  451. package/lib/components/tabs/src/tab-bar.js.map +1 -1
  452. package/lib/components/tabs/src/tab-bar2.js +92 -11
  453. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  454. package/lib/components/tabs/src/tab-nav.js +1 -1
  455. package/lib/components/tabs/src/tab-pane.js +16 -85
  456. package/lib/components/tabs/src/tab-pane.js.map +1 -1
  457. package/lib/components/tabs/src/tab-pane2.js +85 -16
  458. package/lib/components/tabs/src/tab-pane2.js.map +1 -1
  459. package/lib/components/tooltip/src/content.js +1 -1
  460. package/lib/components/tooltip/src/content2.js +1 -1
  461. package/lib/components/tooltip/src/tooltip2.js +3 -0
  462. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  463. package/lib/components/tour/index.js +2 -2
  464. package/lib/components/tour/src/tour.js +153 -69
  465. package/lib/components/tour/src/tour.js.map +1 -1
  466. package/lib/components/tour/src/tour2.js +69 -153
  467. package/lib/components/tour/src/tour2.js.map +1 -1
  468. package/lib/components/transfer/src/composables/use-check.js +1 -1
  469. package/lib/components/transfer/src/transfer-panel.js +130 -21
  470. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  471. package/lib/components/transfer/src/transfer-panel2.js +21 -130
  472. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  473. package/lib/components/transfer/src/transfer2.js +1 -1
  474. package/lib/index.js +13 -13
  475. package/lib/version.d.ts +1 -1
  476. package/lib/version.js +1 -1
  477. package/lib/version.js.map +1 -1
  478. package/package.json +2 -2
  479. package/theme-chalk/el-tabs.css +1 -1
  480. package/theme-chalk/index.css +1 -1
  481. package/theme-chalk/src/tabs.scss +8 -0
  482. package/web-types.json +1 -1
@@ -2,97 +2,47 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var index$2 = require('../../icon/index.js');
7
- var constants = require('./constants.js');
8
- var dialogContent = require('./dialog-content2.js');
9
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
10
- var tokens = require('../../focus-trap/src/tokens.js');
11
- var index$1 = require('../../../hooks/use-draggable/index.js');
5
+ var runtime = require('../../../utils/vue/props/runtime.js');
12
6
  var icon = require('../../../utils/vue/icon.js');
13
- var refs = require('../../../utils/vue/refs.js');
14
- var index = require('../../../hooks/use-locale/index.js');
15
7
 
16
- const __default__ = vue.defineComponent({ name: "ElDialogContent" });
17
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
18
- ...__default__,
19
- props: dialogContent.dialogContentProps,
20
- emits: dialogContent.dialogContentEmits,
21
- setup(__props, { expose }) {
22
- const props = __props;
23
- const { t } = index.useLocale();
24
- const { Close } = icon.CloseComponents;
25
- const { dialogRef, headerRef, bodyId, ns, style } = vue.inject(constants.dialogInjectionKey);
26
- const { focusTrapRef } = vue.inject(tokens.FOCUS_TRAP_INJECTION_KEY);
27
- const composedDialogRef = refs.composeRefs(focusTrapRef, dialogRef);
28
- const draggable = vue.computed(() => !!props.draggable);
29
- const overflow = vue.computed(() => !!props.overflow);
30
- const { resetPosition, updatePosition, isDragging } = index$1.useDraggable(dialogRef, headerRef, draggable, overflow);
31
- const dialogKls = vue.computed(() => [
32
- ns.b(),
33
- ns.is("fullscreen", props.fullscreen),
34
- ns.is("draggable", draggable.value),
35
- ns.is("dragging", isDragging.value),
36
- ns.is("align-center", !!props.alignCenter),
37
- { [ns.m("center")]: props.center }
38
- ]);
39
- expose({
40
- resetPosition,
41
- updatePosition
42
- });
43
- return (_ctx, _cache) => {
44
- return vue.openBlock(), vue.createElementBlock("div", {
45
- ref: vue.unref(composedDialogRef),
46
- class: vue.normalizeClass(vue.unref(dialogKls)),
47
- style: vue.normalizeStyle(vue.unref(style)),
48
- tabindex: "-1"
49
- }, [
50
- vue.createElementVNode("header", {
51
- ref_key: "headerRef",
52
- ref: headerRef,
53
- class: vue.normalizeClass([vue.unref(ns).e("header"), _ctx.headerClass, { "show-close": _ctx.showClose }])
54
- }, [
55
- vue.renderSlot(_ctx.$slots, "header", {}, () => [
56
- vue.createElementVNode("span", {
57
- role: "heading",
58
- "aria-level": _ctx.ariaLevel,
59
- class: vue.normalizeClass(vue.unref(ns).e("title"))
60
- }, vue.toDisplayString(_ctx.title), 11, ["aria-level"])
61
- ]),
62
- _ctx.showClose ? (vue.openBlock(), vue.createElementBlock("button", {
63
- key: 0,
64
- "aria-label": vue.unref(t)("el.dialog.close"),
65
- class: vue.normalizeClass(vue.unref(ns).e("headerbtn")),
66
- type: "button",
67
- onClick: ($event) => _ctx.$emit("close")
68
- }, [
69
- vue.createVNode(vue.unref(index$2.ElIcon), {
70
- class: vue.normalizeClass(vue.unref(ns).e("close"))
71
- }, {
72
- default: vue.withCtx(() => [
73
- (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.closeIcon || vue.unref(Close))))
74
- ]),
75
- _: 1
76
- }, 8, ["class"])
77
- ], 10, ["aria-label", "onClick"])) : vue.createCommentVNode("v-if", true)
78
- ], 2),
79
- vue.createElementVNode("div", {
80
- id: vue.unref(bodyId),
81
- class: vue.normalizeClass([vue.unref(ns).e("body"), _ctx.bodyClass])
82
- }, [
83
- vue.renderSlot(_ctx.$slots, "default")
84
- ], 10, ["id"]),
85
- _ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("footer", {
86
- key: 0,
87
- class: vue.normalizeClass([vue.unref(ns).e("footer"), _ctx.footerClass])
88
- }, [
89
- vue.renderSlot(_ctx.$slots, "footer")
90
- ], 2)) : vue.createCommentVNode("v-if", true)
91
- ], 6);
92
- };
8
+ const dialogContentProps = runtime.buildProps({
9
+ center: Boolean,
10
+ alignCenter: {
11
+ type: Boolean,
12
+ default: void 0
13
+ },
14
+ closeIcon: {
15
+ type: icon.iconPropType
16
+ },
17
+ draggable: {
18
+ type: Boolean,
19
+ default: void 0
20
+ },
21
+ overflow: {
22
+ type: Boolean,
23
+ default: void 0
24
+ },
25
+ fullscreen: Boolean,
26
+ headerClass: String,
27
+ bodyClass: String,
28
+ footerClass: String,
29
+ showClose: {
30
+ type: Boolean,
31
+ default: true
32
+ },
33
+ title: {
34
+ type: String,
35
+ default: ""
36
+ },
37
+ ariaLevel: {
38
+ type: String,
39
+ default: "2"
93
40
  }
94
41
  });
95
- var ElDialogContent = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "dialog-content.vue"]]);
42
+ const dialogContentEmits = {
43
+ close: () => true
44
+ };
96
45
 
97
- exports["default"] = ElDialogContent;
46
+ exports.dialogContentEmits = dialogContentEmits;
47
+ exports.dialogContentProps = dialogContentProps;
98
48
  //# sourceMappingURL=dialog-content.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog-content.js","sources":["../../../../../../packages/components/dialog/src/dialog-content.vue"],"sourcesContent":["<template>\n <div :ref=\"composedDialogRef\" :class=\"dialogKls\" :style=\"style\" tabindex=\"-1\">\n <header\n ref=\"headerRef\"\n :class=\"[ns.e('header'), headerClass, { 'show-close': showClose }]\"\n >\n <slot name=\"header\">\n <span role=\"heading\" :aria-level=\"ariaLevel\" :class=\"ns.e('title')\">\n {{ title }}\n </span>\n </slot>\n <button\n v-if=\"showClose\"\n :aria-label=\"t('el.dialog.close')\"\n :class=\"ns.e('headerbtn')\"\n type=\"button\"\n @click=\"$emit('close')\"\n >\n <el-icon :class=\"ns.e('close')\">\n <component :is=\"closeIcon || Close\" />\n </el-icon>\n </button>\n </header>\n <div :id=\"bodyId\" :class=\"[ns.e('body'), bodyClass]\">\n <slot />\n </div>\n <footer v-if=\"$slots.footer\" :class=\"[ns.e('footer'), footerClass]\">\n <slot name=\"footer\" />\n </footer>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { FOCUS_TRAP_INJECTION_KEY } from '@element-plus/components/focus-trap'\nimport { useDraggable, useLocale } from '@element-plus/hooks'\nimport { CloseComponents, composeRefs } from '@element-plus/utils'\nimport { dialogInjectionKey } from './constants'\nimport { dialogContentEmits, dialogContentProps } from './dialog-content'\n\nconst { t } = useLocale()\nconst { Close } = CloseComponents\n\ndefineOptions({ name: 'ElDialogContent' })\nconst props = defineProps(dialogContentProps)\ndefineEmits(dialogContentEmits)\n\nconst { dialogRef, headerRef, bodyId, ns, style } = inject(dialogInjectionKey)!\nconst { focusTrapRef } = inject(FOCUS_TRAP_INJECTION_KEY)!\n\nconst composedDialogRef = composeRefs(focusTrapRef, dialogRef)\n\nconst draggable = computed(() => !!props.draggable)\nconst overflow = computed(() => !!props.overflow)\nconst { resetPosition, updatePosition, isDragging } = useDraggable(\n dialogRef,\n headerRef,\n draggable,\n overflow\n)\n\nconst dialogKls = computed(() => [\n ns.b(),\n ns.is('fullscreen', props.fullscreen),\n ns.is('draggable', draggable.value),\n ns.is('dragging', isDragging.value),\n ns.is('align-center', !!props.alignCenter),\n { [ns.m('center')]: props.center },\n])\n\ndefineExpose({\n resetPosition,\n updatePosition,\n})\n</script>\n"],"names":["useLocale","CloseComponents","inject","dialogInjectionKey","FOCUS_TRAP_INJECTION_KEY","composeRefs","computed","useDraggable","_openBlock","_createElementBlock","_unref","_normalizeClass","_normalizeStyle"],"mappings":";;;;;;;;;;;;;;;uCA4Cc,CAAA,EAAE,IAAM,EAAA,iBAAA,EAAkB,CAAA,CAAA;;;;;;;AAHxC,IAAM,MAAA,EAAE,CAAE,EAAA,GAAIA,eAAU,EAAA,CAAA;AACxB,IAAM,MAAA,EAAE,OAAU,GAAAC,oBAAA,CAAA;AAMlB,IAAM,MAAA,EAAE,WAAW,SAAW,EAAA,MAAA,EAAQ,IAAI,KAAM,EAAA,GAAIC,WAAOC,4BAAkB,CAAA,CAAA;AAC7E,IAAA,MAAM,EAAE,YAAA,EAAiB,GAAAD,UAAA,CAAOE,+BAAwB,CAAA,CAAA;AAExD,IAAM,MAAA,iBAAA,GAAoBC,gBAAY,CAAA,YAAA,EAAc,SAAS,CAAA,CAAA;AAE7D,IAAA,MAAM,YAAYC,YAAS,CAAA,MAAM,CAAC,CAAC,MAAM,SAAS,CAAA,CAAA;AAClD,IAAA,MAAM,WAAWA,YAAS,CAAA,MAAM,CAAC,CAAC,MAAM,QAAQ,CAAA,CAAA;AAChD,IAAA,MAAM,EAAE,aAAA,EAAe,cAAgB,EAAA,UAAA,EAAe,GAAAC,oBAAA,CAAA,SAAA,EAAA,SAAA,EAAA,SAAA,EAAA,QAAA,CAAA,CAAA;AAAA,IACpD,MAAA,SAAA,GAAAD,YAAA,CAAA,MAAA;AAAA,MACA,EAAA,CAAA,CAAA,EAAA;AAAA,MACA,EAAA,CAAA,EAAA,CAAA,YAAA,EAAA,KAAA,CAAA,UAAA,CAAA;AAAA,MACA,EAAA,CAAA,EAAA,CAAA,WAAA,EAAA,SAAA,CAAA,KAAA,CAAA;AAAA,MACF,EAAA,CAAA,EAAA,CAAA,UAAA,EAAA,UAAA,CAAA,KAAA,CAAA;AAEA,MAAM,EAAA,CAAA,EAAA,CAAA,uBAA2B,CAAA,WAAA,CAAA;AAAA,MAC/B,GAAG,EAAE,CAAA,CAAA,CAAA,QAAA,CAAA,GAAA,KAAA,CAAA,MAAA,EAAA;AAAA,KAAA,CACL,CAAG;AAAiC,IAAA,MACjC,CAAA;AAA+B,MAClC,aAAkB;AAAgB,MAClC,cAAM;AAAmC,KACzC,CAAA,CAAA;AAAiC,IACnC,OAAC,CAAA,IAAA,EAAA,MAAA,KAAA;AAED,MAAa,OAAAE,aAAA,EAAA,EAAAC,sBAAA,CAAA,KAAA,EAAA;AAAA,QACX,GAAA,EAAAC,SAAA,CAAA,iBAAA,CAAA;AAAA,QACA,KAAA,EAAAC,kBAAA,CAAAD,SAAA,CAAA,SAAA,CAAA,CAAA;AAAA,QACD,KAAA,EAAAE,kBAAA,CAAAF,SAAA,CAAA,KAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"dialog-content.js","sources":["../../../../../../packages/components/dialog/src/dialog-content.ts"],"sourcesContent":["import { buildProps, iconPropType } from '@element-plus/utils'\n\nexport const dialogContentProps = buildProps({\n /**\n * @description whether to align the header and footer in center\n */\n center: Boolean,\n /**\n * @description whether to align the dialog both horizontally and vertically\n */\n alignCenter: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description custom close icon, default is Close\n */\n closeIcon: {\n type: iconPropType,\n },\n /**\n * @description enable dragging feature for Dialog\n */\n draggable: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description draggable Dialog can overflow the viewport\n */\n overflow: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description whether the Dialog takes up full screen\n */\n fullscreen: Boolean,\n /**\n * @description custom class names for header wrapper\n */\n headerClass: String,\n /**\n * @description custom class names for body wrapper\n */\n bodyClass: String,\n /**\n * @description custom class names for footer wrapper\n */\n footerClass: String,\n /**\n * @description whether to show a close button\n */\n showClose: {\n type: Boolean,\n default: true,\n },\n /**\n * @description title of Dialog. Can also be passed with a named slot (see the following table)\n */\n title: {\n type: String,\n default: '',\n },\n /**\n * @description header's aria-level attribute\n */\n ariaLevel: {\n type: String,\n default: '2',\n },\n} as const)\n\nexport const dialogContentEmits = {\n close: () => true,\n}\n"],"names":["buildProps","iconPropType"],"mappings":";;;;;;;AACY,MAAC,kBAAkB,GAAGA,kBAAU,CAAC;AAC7C,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAEC,iBAAY;AACtB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,WAAW,EAAE,MAAM;AACrB,EAAE,SAAS,EAAE,MAAM;AACnB,EAAE,WAAW,EAAE,MAAM;AACrB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,kBAAkB,GAAG;AAClC,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB;;;;;"}
@@ -2,47 +2,97 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var runtime = require('../../../utils/vue/props/runtime.js');
5
+ var vue = require('vue');
6
+ var index$2 = require('../../icon/index.js');
7
+ var constants = require('./constants.js');
8
+ var dialogContent = require('./dialog-content.js');
9
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
10
+ var tokens = require('../../focus-trap/src/tokens.js');
11
+ var index$1 = require('../../../hooks/use-draggable/index.js');
6
12
  var icon = require('../../../utils/vue/icon.js');
13
+ var refs = require('../../../utils/vue/refs.js');
14
+ var index = require('../../../hooks/use-locale/index.js');
7
15
 
8
- const dialogContentProps = runtime.buildProps({
9
- center: Boolean,
10
- alignCenter: {
11
- type: Boolean,
12
- default: void 0
13
- },
14
- closeIcon: {
15
- type: icon.iconPropType
16
- },
17
- draggable: {
18
- type: Boolean,
19
- default: void 0
20
- },
21
- overflow: {
22
- type: Boolean,
23
- default: void 0
24
- },
25
- fullscreen: Boolean,
26
- headerClass: String,
27
- bodyClass: String,
28
- footerClass: String,
29
- showClose: {
30
- type: Boolean,
31
- default: true
32
- },
33
- title: {
34
- type: String,
35
- default: ""
36
- },
37
- ariaLevel: {
38
- type: String,
39
- default: "2"
16
+ const __default__ = vue.defineComponent({ name: "ElDialogContent" });
17
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
18
+ ...__default__,
19
+ props: dialogContent.dialogContentProps,
20
+ emits: dialogContent.dialogContentEmits,
21
+ setup(__props, { expose }) {
22
+ const props = __props;
23
+ const { t } = index.useLocale();
24
+ const { Close } = icon.CloseComponents;
25
+ const { dialogRef, headerRef, bodyId, ns, style } = vue.inject(constants.dialogInjectionKey);
26
+ const { focusTrapRef } = vue.inject(tokens.FOCUS_TRAP_INJECTION_KEY);
27
+ const composedDialogRef = refs.composeRefs(focusTrapRef, dialogRef);
28
+ const draggable = vue.computed(() => !!props.draggable);
29
+ const overflow = vue.computed(() => !!props.overflow);
30
+ const { resetPosition, updatePosition, isDragging } = index$1.useDraggable(dialogRef, headerRef, draggable, overflow);
31
+ const dialogKls = vue.computed(() => [
32
+ ns.b(),
33
+ ns.is("fullscreen", props.fullscreen),
34
+ ns.is("draggable", draggable.value),
35
+ ns.is("dragging", isDragging.value),
36
+ ns.is("align-center", !!props.alignCenter),
37
+ { [ns.m("center")]: props.center }
38
+ ]);
39
+ expose({
40
+ resetPosition,
41
+ updatePosition
42
+ });
43
+ return (_ctx, _cache) => {
44
+ return vue.openBlock(), vue.createElementBlock("div", {
45
+ ref: vue.unref(composedDialogRef),
46
+ class: vue.normalizeClass(vue.unref(dialogKls)),
47
+ style: vue.normalizeStyle(vue.unref(style)),
48
+ tabindex: "-1"
49
+ }, [
50
+ vue.createElementVNode("header", {
51
+ ref_key: "headerRef",
52
+ ref: headerRef,
53
+ class: vue.normalizeClass([vue.unref(ns).e("header"), _ctx.headerClass, { "show-close": _ctx.showClose }])
54
+ }, [
55
+ vue.renderSlot(_ctx.$slots, "header", {}, () => [
56
+ vue.createElementVNode("span", {
57
+ role: "heading",
58
+ "aria-level": _ctx.ariaLevel,
59
+ class: vue.normalizeClass(vue.unref(ns).e("title"))
60
+ }, vue.toDisplayString(_ctx.title), 11, ["aria-level"])
61
+ ]),
62
+ _ctx.showClose ? (vue.openBlock(), vue.createElementBlock("button", {
63
+ key: 0,
64
+ "aria-label": vue.unref(t)("el.dialog.close"),
65
+ class: vue.normalizeClass(vue.unref(ns).e("headerbtn")),
66
+ type: "button",
67
+ onClick: ($event) => _ctx.$emit("close")
68
+ }, [
69
+ vue.createVNode(vue.unref(index$2.ElIcon), {
70
+ class: vue.normalizeClass(vue.unref(ns).e("close"))
71
+ }, {
72
+ default: vue.withCtx(() => [
73
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.closeIcon || vue.unref(Close))))
74
+ ]),
75
+ _: 1
76
+ }, 8, ["class"])
77
+ ], 10, ["aria-label", "onClick"])) : vue.createCommentVNode("v-if", true)
78
+ ], 2),
79
+ vue.createElementVNode("div", {
80
+ id: vue.unref(bodyId),
81
+ class: vue.normalizeClass([vue.unref(ns).e("body"), _ctx.bodyClass])
82
+ }, [
83
+ vue.renderSlot(_ctx.$slots, "default")
84
+ ], 10, ["id"]),
85
+ _ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("footer", {
86
+ key: 0,
87
+ class: vue.normalizeClass([vue.unref(ns).e("footer"), _ctx.footerClass])
88
+ }, [
89
+ vue.renderSlot(_ctx.$slots, "footer")
90
+ ], 2)) : vue.createCommentVNode("v-if", true)
91
+ ], 6);
92
+ };
40
93
  }
41
94
  });
42
- const dialogContentEmits = {
43
- close: () => true
44
- };
95
+ var ElDialogContent = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "dialog-content.vue"]]);
45
96
 
46
- exports.dialogContentEmits = dialogContentEmits;
47
- exports.dialogContentProps = dialogContentProps;
97
+ exports["default"] = ElDialogContent;
48
98
  //# sourceMappingURL=dialog-content2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog-content2.js","sources":["../../../../../../packages/components/dialog/src/dialog-content.ts"],"sourcesContent":["import { buildProps, iconPropType } from '@element-plus/utils'\n\nexport const dialogContentProps = buildProps({\n /**\n * @description whether to align the header and footer in center\n */\n center: Boolean,\n /**\n * @description whether to align the dialog both horizontally and vertically\n */\n alignCenter: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description custom close icon, default is Close\n */\n closeIcon: {\n type: iconPropType,\n },\n /**\n * @description enable dragging feature for Dialog\n */\n draggable: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description draggable Dialog can overflow the viewport\n */\n overflow: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description whether the Dialog takes up full screen\n */\n fullscreen: Boolean,\n /**\n * @description custom class names for header wrapper\n */\n headerClass: String,\n /**\n * @description custom class names for body wrapper\n */\n bodyClass: String,\n /**\n * @description custom class names for footer wrapper\n */\n footerClass: String,\n /**\n * @description whether to show a close button\n */\n showClose: {\n type: Boolean,\n default: true,\n },\n /**\n * @description title of Dialog. Can also be passed with a named slot (see the following table)\n */\n title: {\n type: String,\n default: '',\n },\n /**\n * @description header's aria-level attribute\n */\n ariaLevel: {\n type: String,\n default: '2',\n },\n} as const)\n\nexport const dialogContentEmits = {\n close: () => true,\n}\n"],"names":["buildProps","iconPropType"],"mappings":";;;;;;;AACY,MAAC,kBAAkB,GAAGA,kBAAU,CAAC;AAC7C,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAEC,iBAAY;AACtB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,WAAW,EAAE,MAAM;AACrB,EAAE,SAAS,EAAE,MAAM;AACnB,EAAE,WAAW,EAAE,MAAM;AACrB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,kBAAkB,GAAG;AAClC,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB;;;;;"}
1
+ {"version":3,"file":"dialog-content2.js","sources":["../../../../../../packages/components/dialog/src/dialog-content.vue"],"sourcesContent":["<template>\n <div :ref=\"composedDialogRef\" :class=\"dialogKls\" :style=\"style\" tabindex=\"-1\">\n <header\n ref=\"headerRef\"\n :class=\"[ns.e('header'), headerClass, { 'show-close': showClose }]\"\n >\n <slot name=\"header\">\n <span role=\"heading\" :aria-level=\"ariaLevel\" :class=\"ns.e('title')\">\n {{ title }}\n </span>\n </slot>\n <button\n v-if=\"showClose\"\n :aria-label=\"t('el.dialog.close')\"\n :class=\"ns.e('headerbtn')\"\n type=\"button\"\n @click=\"$emit('close')\"\n >\n <el-icon :class=\"ns.e('close')\">\n <component :is=\"closeIcon || Close\" />\n </el-icon>\n </button>\n </header>\n <div :id=\"bodyId\" :class=\"[ns.e('body'), bodyClass]\">\n <slot />\n </div>\n <footer v-if=\"$slots.footer\" :class=\"[ns.e('footer'), footerClass]\">\n <slot name=\"footer\" />\n </footer>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { FOCUS_TRAP_INJECTION_KEY } from '@element-plus/components/focus-trap'\nimport { useDraggable, useLocale } from '@element-plus/hooks'\nimport { CloseComponents, composeRefs } from '@element-plus/utils'\nimport { dialogInjectionKey } from './constants'\nimport { dialogContentEmits, dialogContentProps } from './dialog-content'\n\nconst { t } = useLocale()\nconst { Close } = CloseComponents\n\ndefineOptions({ name: 'ElDialogContent' })\nconst props = defineProps(dialogContentProps)\ndefineEmits(dialogContentEmits)\n\nconst { dialogRef, headerRef, bodyId, ns, style } = inject(dialogInjectionKey)!\nconst { focusTrapRef } = inject(FOCUS_TRAP_INJECTION_KEY)!\n\nconst composedDialogRef = composeRefs(focusTrapRef, dialogRef)\n\nconst draggable = computed(() => !!props.draggable)\nconst overflow = computed(() => !!props.overflow)\nconst { resetPosition, updatePosition, isDragging } = useDraggable(\n dialogRef,\n headerRef,\n draggable,\n overflow\n)\n\nconst dialogKls = computed(() => [\n ns.b(),\n ns.is('fullscreen', props.fullscreen),\n ns.is('draggable', draggable.value),\n ns.is('dragging', isDragging.value),\n ns.is('align-center', !!props.alignCenter),\n { [ns.m('center')]: props.center },\n])\n\ndefineExpose({\n resetPosition,\n updatePosition,\n})\n</script>\n"],"names":["useLocale","CloseComponents","inject","dialogInjectionKey","FOCUS_TRAP_INJECTION_KEY","composeRefs","computed","useDraggable","_openBlock","_createElementBlock","_unref","_normalizeClass","_normalizeStyle"],"mappings":";;;;;;;;;;;;;;;uCA4Cc,CAAA,EAAE,IAAM,EAAA,iBAAA,EAAkB,CAAA,CAAA;;;;;;;AAHxC,IAAM,MAAA,EAAE,CAAE,EAAA,GAAIA,eAAU,EAAA,CAAA;AACxB,IAAM,MAAA,EAAE,OAAU,GAAAC,oBAAA,CAAA;AAMlB,IAAM,MAAA,EAAE,WAAW,SAAW,EAAA,MAAA,EAAQ,IAAI,KAAM,EAAA,GAAIC,WAAOC,4BAAkB,CAAA,CAAA;AAC7E,IAAA,MAAM,EAAE,YAAA,EAAiB,GAAAD,UAAA,CAAOE,+BAAwB,CAAA,CAAA;AAExD,IAAM,MAAA,iBAAA,GAAoBC,gBAAY,CAAA,YAAA,EAAc,SAAS,CAAA,CAAA;AAE7D,IAAA,MAAM,YAAYC,YAAS,CAAA,MAAM,CAAC,CAAC,MAAM,SAAS,CAAA,CAAA;AAClD,IAAA,MAAM,WAAWA,YAAS,CAAA,MAAM,CAAC,CAAC,MAAM,QAAQ,CAAA,CAAA;AAChD,IAAA,MAAM,EAAE,aAAA,EAAe,cAAgB,EAAA,UAAA,EAAe,GAAAC,oBAAA,CAAA,SAAA,EAAA,SAAA,EAAA,SAAA,EAAA,QAAA,CAAA,CAAA;AAAA,IACpD,MAAA,SAAA,GAAAD,YAAA,CAAA,MAAA;AAAA,MACA,EAAA,CAAA,CAAA,EAAA;AAAA,MACA,EAAA,CAAA,EAAA,CAAA,YAAA,EAAA,KAAA,CAAA,UAAA,CAAA;AAAA,MACA,EAAA,CAAA,EAAA,CAAA,WAAA,EAAA,SAAA,CAAA,KAAA,CAAA;AAAA,MACF,EAAA,CAAA,EAAA,CAAA,UAAA,EAAA,UAAA,CAAA,KAAA,CAAA;AAEA,MAAM,EAAA,CAAA,EAAA,CAAA,uBAA2B,CAAA,WAAA,CAAA;AAAA,MAC/B,GAAG,EAAE,CAAA,CAAA,CAAA,QAAA,CAAA,GAAA,KAAA,CAAA,MAAA,EAAA;AAAA,KAAA,CACL,CAAG;AAAiC,IAAA,MACjC,CAAA;AAA+B,MAClC,aAAkB;AAAgB,MAClC,cAAM;AAAmC,KACzC,CAAA,CAAA;AAAiC,IACnC,OAAC,CAAA,IAAA,EAAA,MAAA,KAAA;AAED,MAAa,OAAAE,aAAA,EAAA,EAAAC,sBAAA,CAAA,KAAA,EAAA;AAAA,QACX,GAAA,EAAAC,SAAA,CAAA,iBAAA,CAAA;AAAA,QACA,KAAA,EAAAC,kBAAA,CAAAD,SAAA,CAAA,SAAA,CAAA,CAAA;AAAA,QACD,KAAA,EAAAE,kBAAA,CAAAF,SAAA,CAAA,KAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var dialogContent = require('./dialog-content2.js');
5
+ var dialogContent = require('./dialog-content.js');
6
6
  var runtime = require('../../../utils/vue/props/runtime.js');
7
7
  var teleport = require('../../teleport/src/teleport.js');
8
8
  var event = require('../../../constants/event.js');
@@ -6,7 +6,7 @@ var vue = require('vue');
6
6
  var index$3 = require('../../overlay/index.js');
7
7
  var focusTrap = require('../../focus-trap/src/focus-trap.js');
8
8
  var index$2 = require('../../teleport/index.js');
9
- var dialogContent = require('./dialog-content.js');
9
+ var dialogContent = require('./dialog-content2.js');
10
10
  var constants = require('./constants.js');
11
11
  var dialog = require('./dialog.js');
12
12
  var useDialog = require('./use-dialog.js');
@@ -251,6 +251,8 @@ const _sfc_main = vue.defineComponent({
251
251
  forwardRef.value.removeEventListener("focusout", onFocusOut);
252
252
  forwardRef.value = void 0;
253
253
  }
254
+ lastFocusBeforeTrapped = null;
255
+ lastFocusAfterTrapped = null;
254
256
  });
255
257
  return {
256
258
  onKeydown
@@ -1 +1 @@
1
- {"version":3,"file":"focus-trap.js","sources":["../../../../../../packages/components/focus-trap/src/focus-trap.vue"],"sourcesContent":["<template>\n <slot :handle-keydown=\"onKeydown\" />\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n ref,\n unref,\n watch,\n} from 'vue'\nimport { isNil } from 'lodash-unified'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { useEscapeKeydown } from '@element-plus/hooks'\nimport { getEventCode, 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, { emit }) {\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 { altKey, ctrlKey, metaKey, currentTarget, shiftKey } = e\n const { loop } = props\n const code = getEventCode(e)\n const isTabbing =\n code === 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 lastFocusBeforeTrapped = null\n lastFocusAfterTrapped = null\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 if (forwardRef.value) {\n forwardRef.value.removeEventListener('keydown', onKeydown)\n forwardRef.value.removeEventListener('focusin', onFocusIn)\n forwardRef.value.removeEventListener('focusout', onFocusOut)\n forwardRef.value = undefined\n }\n })\n\n return {\n onKeydown,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ON_TRAP_FOCUS_EVT","ON_RELEASE_FOCUS_EVT","ref","useFocusReason","useEscapeKeydown","EVENT_CODE","getEdges","createFocusOutPreventedEvent","tryFocus","provide","FOCUS_TRAP_INJECTION_KEY","watch","forwardRef","unref","isNil","nextTick","focusableStack","FOCUS_AFTER_TRAPPED","FOCUS_AFTER_TRAPPED_OPTS","isString","focusFirstDescendant","obtainAllFocusableElements","FOCUS_AFTER_RELEASED","isFocusCausedByUserEvent","onMounted","onBeforeUnmount","_renderSlot","_export_sfc"],"mappings":"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"}
1
+ {"version":3,"file":"focus-trap.js","sources":["../../../../../../packages/components/focus-trap/src/focus-trap.vue"],"sourcesContent":["<template>\n <slot :handle-keydown=\"onKeydown\" />\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n ref,\n unref,\n watch,\n} from 'vue'\nimport { isNil } from 'lodash-unified'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { useEscapeKeydown } from '@element-plus/hooks'\nimport { getEventCode, 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, { emit }) {\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 { altKey, ctrlKey, metaKey, currentTarget, shiftKey } = e\n const { loop } = props\n const code = getEventCode(e)\n const isTabbing =\n code === 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 lastFocusBeforeTrapped = null\n lastFocusAfterTrapped = null\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 if (forwardRef.value) {\n forwardRef.value.removeEventListener('keydown', onKeydown)\n forwardRef.value.removeEventListener('focusin', onFocusIn)\n forwardRef.value.removeEventListener('focusout', onFocusOut)\n forwardRef.value = undefined\n }\n\n lastFocusBeforeTrapped = null\n lastFocusAfterTrapped = null\n })\n\n return {\n onKeydown,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ON_TRAP_FOCUS_EVT","ON_RELEASE_FOCUS_EVT","ref","useFocusReason","useEscapeKeydown","EVENT_CODE","getEdges","createFocusOutPreventedEvent","tryFocus","provide","FOCUS_TRAP_INJECTION_KEY","watch","forwardRef","unref","isNil","nextTick","focusableStack","FOCUS_AFTER_TRAPPED","FOCUS_AFTER_TRAPPED_OPTS","isString","focusFirstDescendant","obtainAllFocusableElements","FOCUS_AFTER_RELEASED","isFocusCausedByUserEvent","onMounted","onBeforeUnmount","_renderSlot","_export_sfc"],"mappings":"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"}
@@ -2,8 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var icon$1 = require('./src/icon.js');
6
- var icon = require('./src/icon2.js');
5
+ var icon$1 = require('./src/icon2.js');
6
+ var icon = require('./src/icon.js');
7
7
  var install = require('../../utils/vue/install.js');
8
8
 
9
9
  const ElIcon = install.withInstall(icon$1["default"]);
@@ -2,43 +2,16 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var icon = require('./icon2.js');
7
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
8
- var index = require('../../../hooks/use-namespace/index.js');
9
- var style = require('../../../utils/dom/style.js');
5
+ var runtime = require('../../../utils/vue/props/runtime.js');
10
6
 
11
- const __default__ = vue.defineComponent({
12
- name: "ElIcon",
13
- inheritAttrs: false
14
- });
15
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
16
- ...__default__,
17
- props: icon.iconProps,
18
- setup(__props) {
19
- const props = __props;
20
- const ns = index.useNamespace("icon");
21
- const style$1 = vue.computed(() => {
22
- const { size, color } = props;
23
- const fontSize = style.addUnit(size);
24
- if (!fontSize && !color)
25
- return {};
26
- return {
27
- fontSize,
28
- "--color": color
29
- };
30
- });
31
- return (_ctx, _cache) => {
32
- return vue.openBlock(), vue.createElementBlock("i", vue.mergeProps({
33
- class: vue.unref(ns).b(),
34
- style: vue.unref(style$1)
35
- }, _ctx.$attrs), [
36
- vue.renderSlot(_ctx.$slots, "default")
37
- ], 16);
38
- };
7
+ const iconProps = runtime.buildProps({
8
+ size: {
9
+ type: runtime.definePropType([Number, String])
10
+ },
11
+ color: {
12
+ type: String
39
13
  }
40
14
  });
41
- var Icon = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "icon.vue"]]);
42
15
 
43
- exports["default"] = Icon;
16
+ exports.iconProps = iconProps;
44
17
  //# sourceMappingURL=icon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"icon.js","sources":["../../../../../../packages/components/icon/src/icon.vue"],"sourcesContent":["<template>\n <i :class=\"ns.b()\" :style=\"style\" v-bind=\"$attrs\">\n <slot />\n </i>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { addUnit } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { iconProps } from './icon'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElIcon',\n inheritAttrs: false,\n})\nconst props = defineProps(iconProps)\nconst ns = useNamespace('icon')\n\nconst style = computed<CSSProperties>(() => {\n const { size, color } = props\n const fontSize = addUnit(size)\n if (!fontSize && !color) return {}\n\n return {\n fontSize,\n '--color': color,\n }\n})\n</script>\n"],"names":["useNamespace","style","computed","addUnit"],"mappings":";;;;;;;;;;uCAcc,CAAA;AAAA,EACZ,IAAM,EAAA,QAAA;AAAA,EACN,YAAc,EAAA,KAAA;AAChB,CAAA,CAAA,CAAA;;;;;;AAEA,IAAM,MAAA,EAAA,GAAKA,mBAAa,MAAM,CAAA,CAAA;AAE9B,IAAM,MAAAC,OAAA,GAAQC,aAAwB,MAAM;AAC1C,MAAM,MAAA,EAAE,IAAM,EAAA,KAAA,EAAU,GAAA,KAAA,CAAA;AACxB,MAAM,MAAA,QAAA,GAAWC,cAAQ,IAAI,CAAA,CAAA;AAC7B,MAAA,IAAI,CAAC,QAAA,IAAY,CAAC,KAAA;AAElB,QAAO,OAAA,EAAA,CAAA;AAAA,MACL,OAAA;AAAA,QACA,QAAW;AAAA,QACb,SAAA,EAAA,KAAA;AAAA,OACD,CAAA;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"icon.js","sources":["../../../../../../packages/components/icon/src/icon.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { ExtractPropTypes, __ExtractPublicPropTypes } from 'vue'\nimport type Icon from './icon.vue'\n\nexport const iconProps = buildProps({\n /**\n * @description SVG icon size, size x size\n */\n size: {\n type: definePropType<number | string>([Number, String]),\n },\n /**\n * @description SVG tag's fill attribute\n */\n color: {\n type: String,\n },\n} as const)\nexport type IconProps = ExtractPropTypes<typeof iconProps>\nexport type IconPropsPublic = __ExtractPublicPropTypes<typeof iconProps>\nexport type IconInstance = InstanceType<typeof Icon> & unknown\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;AACY,MAAC,SAAS,GAAGA,kBAAU,CAAC;AACpC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEC,sBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,CAAC;;;;"}
@@ -2,16 +2,43 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var runtime = require('../../../utils/vue/props/runtime.js');
5
+ var vue = require('vue');
6
+ var icon = require('./icon.js');
7
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
8
+ var index = require('../../../hooks/use-namespace/index.js');
9
+ var style = require('../../../utils/dom/style.js');
6
10
 
7
- const iconProps = runtime.buildProps({
8
- size: {
9
- type: runtime.definePropType([Number, String])
10
- },
11
- color: {
12
- type: String
11
+ const __default__ = vue.defineComponent({
12
+ name: "ElIcon",
13
+ inheritAttrs: false
14
+ });
15
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
16
+ ...__default__,
17
+ props: icon.iconProps,
18
+ setup(__props) {
19
+ const props = __props;
20
+ const ns = index.useNamespace("icon");
21
+ const style$1 = vue.computed(() => {
22
+ const { size, color } = props;
23
+ const fontSize = style.addUnit(size);
24
+ if (!fontSize && !color)
25
+ return {};
26
+ return {
27
+ fontSize,
28
+ "--color": color
29
+ };
30
+ });
31
+ return (_ctx, _cache) => {
32
+ return vue.openBlock(), vue.createElementBlock("i", vue.mergeProps({
33
+ class: vue.unref(ns).b(),
34
+ style: vue.unref(style$1)
35
+ }, _ctx.$attrs), [
36
+ vue.renderSlot(_ctx.$slots, "default")
37
+ ], 16);
38
+ };
13
39
  }
14
40
  });
41
+ var Icon = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "icon.vue"]]);
15
42
 
16
- exports.iconProps = iconProps;
43
+ exports["default"] = Icon;
17
44
  //# sourceMappingURL=icon2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"icon2.js","sources":["../../../../../../packages/components/icon/src/icon.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { ExtractPropTypes, __ExtractPublicPropTypes } from 'vue'\nimport type Icon from './icon.vue'\n\nexport const iconProps = buildProps({\n /**\n * @description SVG icon size, size x size\n */\n size: {\n type: definePropType<number | string>([Number, String]),\n },\n /**\n * @description SVG tag's fill attribute\n */\n color: {\n type: String,\n },\n} as const)\nexport type IconProps = ExtractPropTypes<typeof iconProps>\nexport type IconPropsPublic = __ExtractPublicPropTypes<typeof iconProps>\nexport type IconInstance = InstanceType<typeof Icon> & unknown\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;AACY,MAAC,SAAS,GAAGA,kBAAU,CAAC;AACpC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEC,sBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"icon2.js","sources":["../../../../../../packages/components/icon/src/icon.vue"],"sourcesContent":["<template>\n <i :class=\"ns.b()\" :style=\"style\" v-bind=\"$attrs\">\n <slot />\n </i>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { addUnit } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { iconProps } from './icon'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElIcon',\n inheritAttrs: false,\n})\nconst props = defineProps(iconProps)\nconst ns = useNamespace('icon')\n\nconst style = computed<CSSProperties>(() => {\n const { size, color } = props\n const fontSize = addUnit(size)\n if (!fontSize && !color) return {}\n\n return {\n fontSize,\n '--color': color,\n }\n})\n</script>\n"],"names":["useNamespace","style","computed","addUnit"],"mappings":";;;;;;;;;;uCAcc,CAAA;AAAA,EACZ,IAAM,EAAA,QAAA;AAAA,EACN,YAAc,EAAA,KAAA;AAChB,CAAA,CAAA,CAAA;;;;;;AAEA,IAAM,MAAA,EAAA,GAAKA,mBAAa,MAAM,CAAA,CAAA;AAE9B,IAAM,MAAAC,OAAA,GAAQC,aAAwB,MAAM;AAC1C,MAAM,MAAA,EAAE,IAAM,EAAA,KAAA,EAAU,GAAA,KAAA,CAAA;AACxB,MAAM,MAAA,QAAA,GAAWC,cAAQ,IAAI,CAAA,CAAA;AAC7B,MAAA,IAAI,CAAC,QAAA,IAAY,CAAC,KAAA;AAElB,QAAO,OAAA,EAAA,CAAA;AAAA,MACL,OAAA;AAAA,QACA,QAAW;AAAA,QACb,SAAA,EAAA,KAAA;AAAA,OACD,CAAA;;;;;;;;;;;;;;;;"}