@element-plus/nightly 0.0.20220103 → 0.0.20220107

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 (1009) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +7985 -7058
  4. package/dist/index.full.min.js +11 -11
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +11 -11
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +7960 -7050
  9. package/es/components/autocomplete/index.d.ts +26 -18
  10. package/es/components/autocomplete/src/index.vue.d.ts +13 -10
  11. package/es/components/autocomplete/src/index.vue_vue_type_script_lang.mjs +14 -18
  12. package/es/components/autocomplete/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  13. package/es/components/autocomplete/src/index.vue_vue_type_template_id_2f09f285_lang.mjs +52 -49
  14. package/es/components/autocomplete/src/index.vue_vue_type_template_id_2f09f285_lang.mjs.map +1 -1
  15. package/es/components/carousel/index.d.ts +4 -4
  16. package/es/components/carousel/src/main.vue.d.ts +4 -4
  17. package/es/components/cascader/index.d.ts +1118 -6532
  18. package/es/components/cascader/src/index.vue.d.ts +559 -3267
  19. package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs +10 -10
  20. package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  21. package/es/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.mjs +12 -12
  22. package/es/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.mjs.map +1 -1
  23. package/es/components/cascader-panel/src/index.vue_vue_type_script_lang.mjs +3 -0
  24. package/es/components/cascader-panel/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  25. package/es/components/cascader-panel/src/index.vue_vue_type_template_id_97c48f5c_lang.mjs.map +1 -1
  26. package/es/components/checkbox/index.d.ts +1 -1
  27. package/es/components/checkbox/src/checkbox.vue.d.ts +1 -1
  28. package/es/components/collapse-transition/src/collapse-transition.vue_vue_type_script_lang.mjs +7 -13
  29. package/es/components/collapse-transition/src/collapse-transition.vue_vue_type_script_lang.mjs.map +1 -1
  30. package/es/components/collapse-transition/src/collapse-transition.vue_vue_type_template_id_f68ae30a_lang.mjs +2 -2
  31. package/es/components/collapse-transition/src/collapse-transition.vue_vue_type_template_id_f68ae30a_lang.mjs.map +1 -1
  32. package/es/components/collection/index.d.ts +2 -0
  33. package/es/components/collection/index.mjs +3 -0
  34. package/es/components/{popper/src → collection}/index.mjs.map +1 -1
  35. package/es/components/collection/src/collection-item.mjs +7 -0
  36. package/es/components/collection/src/collection-item.mjs.map +1 -0
  37. package/es/components/collection/src/collection-item.vue.d.ts +2 -0
  38. package/es/components/collection/src/collection-item.vue_vue_type_script_lang.mjs +9 -0
  39. package/es/components/collection/src/collection-item.vue_vue_type_script_lang.mjs.map +1 -0
  40. package/es/components/collection/src/collection-item.vue_vue_type_template_id_dd23be6a_lang.mjs +8 -0
  41. package/es/components/collection/src/collection-item.vue_vue_type_template_id_dd23be6a_lang.mjs.map +1 -0
  42. package/es/components/collection/src/collection.d.ts +263 -0
  43. package/es/components/collection/src/collection.mjs +68 -0
  44. package/es/components/collection/src/collection.mjs.map +1 -0
  45. package/es/components/collection/src/collection.vue.d.ts +2 -0
  46. package/es/components/collection/src/collection.vue_vue_type_script_lang.mjs +8 -0
  47. package/es/components/collection/src/collection.vue_vue_type_script_lang.mjs.map +1 -0
  48. package/es/components/collection/src/collection.vue_vue_type_template_id_5f9c2545_lang.mjs +8 -0
  49. package/es/components/collection/src/collection.vue_vue_type_template_id_5f9c2545_lang.mjs.map +1 -0
  50. package/es/components/collection/src/collection2.mjs +7 -0
  51. package/es/components/collection/src/collection2.mjs.map +1 -0
  52. package/es/components/collection/src/tokens.d.ts +12 -0
  53. package/es/components/collection/src/tokens.mjs +2 -0
  54. package/es/components/collection/src/tokens.mjs.map +1 -0
  55. package/es/components/color-picker/index.d.ts +0 -2
  56. package/es/components/color-picker/src/index.vue.d.ts +0 -2
  57. package/es/components/color-picker/src/index.vue_vue_type_script_lang.mjs +2 -4
  58. package/es/components/color-picker/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  59. package/es/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.mjs +9 -10
  60. package/es/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.mjs.map +1 -1
  61. package/es/components/date-picker/index.d.ts +4 -4
  62. package/es/components/date-picker/src/date-picker.d.ts +2 -2
  63. package/es/components/descriptions/index.d.ts +4 -4
  64. package/es/components/descriptions/src/description-item.d.ts +2 -2
  65. package/es/components/dialog/index.d.ts +5 -5
  66. package/es/components/dialog/src/dialog.vue.d.ts +5 -5
  67. package/es/components/drawer/index.d.ts +5 -5
  68. package/es/components/drawer/src/drawer.vue.d.ts +5 -5
  69. package/es/components/dropdown/index.d.ts +767 -84
  70. package/es/components/dropdown/src/dropdown-item-impl.mjs +7 -0
  71. package/es/components/dropdown/src/dropdown-item-impl.mjs.map +1 -0
  72. package/es/components/dropdown/src/dropdown-item-impl.vue.d.ts +39 -0
  73. package/es/components/dropdown/src/dropdown-item-impl.vue_vue_type_script_lang.mjs +53 -0
  74. package/es/components/dropdown/src/dropdown-item-impl.vue_vue_type_script_lang.mjs.map +1 -0
  75. package/es/components/dropdown/src/dropdown-item-impl.vue_vue_type_template_id_6daab4f2_lang.mjs +33 -0
  76. package/es/components/dropdown/src/dropdown-item-impl.vue_vue_type_template_id_6daab4f2_lang.mjs.map +1 -0
  77. package/es/components/dropdown/src/dropdown-item.vue.d.ts +17 -9
  78. package/es/components/dropdown/src/dropdown-item.vue_vue_type_script_lang.mjs +51 -21
  79. package/es/components/dropdown/src/dropdown-item.vue_vue_type_script_lang.mjs.map +1 -1
  80. package/es/components/dropdown/src/dropdown-item.vue_vue_type_template_id_396ed16b_lang.mjs +30 -20
  81. package/es/components/dropdown/src/dropdown-item.vue_vue_type_template_id_396ed16b_lang.mjs.map +1 -1
  82. package/es/components/dropdown/src/dropdown-menu.vue.d.ts +17 -6
  83. package/es/components/dropdown/src/dropdown-menu.vue_vue_type_script_lang.mjs +59 -23
  84. package/es/components/dropdown/src/dropdown-menu.vue_vue_type_script_lang.mjs.map +1 -1
  85. package/es/components/dropdown/src/dropdown-menu.vue_vue_type_template_id_617b3492_lang.mjs +12 -9
  86. package/es/components/dropdown/src/dropdown-menu.vue_vue_type_template_id_617b3492_lang.mjs.map +1 -1
  87. package/es/components/dropdown/src/dropdown.d.ts +295 -1
  88. package/es/components/dropdown/src/dropdown.mjs +84 -0
  89. package/es/components/dropdown/src/dropdown.mjs.map +1 -1
  90. package/es/components/dropdown/src/dropdown.vue.d.ts +712 -73
  91. package/es/components/dropdown/src/dropdown.vue_vue_type_script_lang.mjs +60 -153
  92. package/es/components/dropdown/src/dropdown.vue_vue_type_script_lang.mjs.map +1 -1
  93. package/es/components/dropdown/src/dropdown.vue_vue_type_template_id_3ed790a5_lang.mjs +92 -52
  94. package/es/components/dropdown/src/dropdown.vue_vue_type_template_id_3ed790a5_lang.mjs.map +1 -1
  95. package/es/components/dropdown/src/tokens.d.ts +8 -0
  96. package/es/components/dropdown/src/tokens.mjs +4 -0
  97. package/es/components/dropdown/src/tokens.mjs.map +1 -0
  98. package/es/components/focus-trap/index.d.ts +5 -0
  99. package/es/components/focus-trap/index.mjs +6 -0
  100. package/es/components/focus-trap/index.mjs.map +1 -0
  101. package/es/components/focus-trap/src/focus-trap.mjs +7 -0
  102. package/es/components/focus-trap/src/focus-trap.mjs.map +1 -0
  103. package/es/components/focus-trap/src/focus-trap.vue.d.ts +21 -0
  104. package/es/components/focus-trap/src/focus-trap.vue_vue_type_script_lang.mjs +137 -0
  105. package/es/components/focus-trap/src/focus-trap.vue_vue_type_script_lang.mjs.map +1 -0
  106. package/es/components/focus-trap/src/focus-trap.vue_vue_type_template_id_4a8a10c5_lang.mjs +8 -0
  107. package/es/components/focus-trap/src/focus-trap.vue_vue_type_template_id_4a8a10c5_lang.mjs.map +1 -0
  108. package/es/components/focus-trap/src/tokens.d.ts +11 -0
  109. package/es/components/focus-trap/src/tokens.mjs +12 -0
  110. package/es/components/focus-trap/src/tokens.mjs.map +1 -0
  111. package/es/components/focus-trap/src/utils.d.ts +18 -0
  112. package/es/components/focus-trap/src/utils.mjs +92 -0
  113. package/es/components/focus-trap/src/utils.mjs.map +1 -0
  114. package/es/components/image/index.d.ts +2 -2
  115. package/es/components/image/src/image.vue.d.ts +2 -2
  116. package/es/components/index.mjs +7 -6
  117. package/es/components/index.mjs.map +1 -1
  118. package/es/components/input/index.d.ts +5 -5
  119. package/es/components/input/src/input.vue.d.ts +5 -5
  120. package/es/components/input-number/index.d.ts +14 -12
  121. package/es/components/input-number/src/input-number.vue.d.ts +14 -12
  122. package/es/components/input-number/src/input-number.vue_vue_type_script_lang.mjs +15 -1
  123. package/es/components/input-number/src/input-number.vue_vue_type_script_lang.mjs.map +1 -1
  124. package/es/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.mjs +5 -4
  125. package/es/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.mjs.map +1 -1
  126. package/es/components/menu/index.d.ts +9 -3
  127. package/es/components/menu/src/menu-item.vue.d.ts +4 -2
  128. package/es/components/menu/src/menu-item.vue_vue_type_script_lang.mjs +3 -3
  129. package/es/components/menu/src/menu-item.vue_vue_type_script_lang.mjs.map +1 -1
  130. package/es/components/menu/src/menu.d.ts +1 -1
  131. package/es/components/menu/src/menu.mjs +2 -1
  132. package/es/components/menu/src/menu.mjs.map +1 -1
  133. package/es/components/menu/src/sub-menu.mjs +18 -21
  134. package/es/components/menu/src/sub-menu.mjs.map +1 -1
  135. package/es/components/menu/src/types.d.ts +2 -0
  136. package/es/components/message-box/src/index.vue.d.ts +2 -2
  137. package/es/components/message-box/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  138. package/es/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.mjs +1 -0
  139. package/es/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.mjs.map +1 -1
  140. package/es/components/pagination/index.d.ts +2 -2
  141. package/es/components/pagination/src/pagination.d.ts +2 -2
  142. package/es/components/popconfirm/index.d.ts +19 -12
  143. package/es/components/popconfirm/index.mjs +1 -1
  144. package/es/components/popconfirm/src/popconfirm.d.ts +3 -5
  145. package/es/components/popconfirm/src/popconfirm.mjs +11 -5
  146. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  147. package/es/components/popconfirm/src/popconfirm.vue.d.ts +19 -13
  148. package/es/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.mjs +22 -20
  149. package/es/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.mjs.map +1 -1
  150. package/es/components/popconfirm/src/popconfirm.vue_vue_type_template_id_16409d25_lang.mjs +12 -13
  151. package/es/components/popconfirm/src/popconfirm.vue_vue_type_template_id_16409d25_lang.mjs.map +1 -1
  152. package/es/components/popover/index.d.ts +1690 -420
  153. package/es/components/popover/src/directive.mjs +7 -13
  154. package/es/components/popover/src/directive.mjs.map +1 -1
  155. package/es/components/popover/src/index.mjs +2 -0
  156. package/es/components/popover/src/index.mjs.map +1 -1
  157. package/es/components/popover/src/index.vue.d.ts +846 -213
  158. package/es/components/popover/src/index.vue_vue_type_script_lang.mjs +41 -107
  159. package/es/components/popover/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  160. package/es/components/popover/src/index.vue_vue_type_template_id_15486cf0_lang.mjs +31 -0
  161. package/es/components/popover/src/index.vue_vue_type_template_id_15486cf0_lang.mjs.map +1 -0
  162. package/es/components/popover/src/popover.d.ts +70 -0
  163. package/es/components/popover/src/popover.mjs +31 -0
  164. package/es/components/popover/src/popover.mjs.map +1 -0
  165. package/es/components/popper/index.d.ts +7 -3479
  166. package/es/components/popper/index.mjs +13 -14
  167. package/es/components/popper/index.mjs.map +1 -1
  168. package/es/components/popper/src/arrow.mjs +7 -0
  169. package/es/components/popper/src/arrow.mjs.map +1 -0
  170. package/es/components/popper/src/arrow.vue.d.ts +12 -0
  171. package/es/components/popper/src/arrow.vue_vue_type_script_lang.mjs +27 -0
  172. package/es/components/popper/src/arrow.vue_vue_type_script_lang.mjs.map +1 -0
  173. package/es/components/popper/src/arrow.vue_vue_type_template_id_8ab40b80_lang.mjs +13 -0
  174. package/es/components/popper/src/arrow.vue_vue_type_template_id_8ab40b80_lang.mjs.map +1 -0
  175. package/es/components/popper/src/container.d.ts +3 -0
  176. package/es/components/popper/src/container.mjs +22 -0
  177. package/es/components/popper/src/container.mjs.map +1 -0
  178. package/es/components/popper/src/content.mjs +7 -0
  179. package/es/components/popper/src/content.mjs.map +1 -0
  180. package/es/components/popper/src/content.vue.d.ts +299 -0
  181. package/es/components/popper/src/content.vue_vue_type_script_lang.mjs +85 -0
  182. package/es/components/popper/src/content.vue_vue_type_script_lang.mjs.map +1 -0
  183. package/es/components/popper/src/content.vue_vue_type_template_id_611b76f0_lang.mjs +16 -0
  184. package/es/components/popper/src/content.vue_vue_type_template_id_611b76f0_lang.mjs.map +1 -0
  185. package/es/components/popper/src/popper.d.ts +58 -0
  186. package/es/components/popper/src/popper.mjs +98 -0
  187. package/es/components/popper/src/popper.mjs.map +1 -0
  188. package/es/components/popper/src/popper.vue.d.ts +3 -0
  189. package/es/components/popper/src/popper.vue_vue_type_script_lang.mjs +19 -0
  190. package/es/components/popper/src/popper.vue_vue_type_script_lang.mjs.map +1 -0
  191. package/es/components/popper/src/popper.vue_vue_type_template_id_77a3d185_lang.mjs +8 -0
  192. package/es/components/popper/src/popper.vue_vue_type_template_id_77a3d185_lang.mjs.map +1 -0
  193. package/es/components/popper/src/popper2.mjs +7 -0
  194. package/es/components/popper/src/popper2.mjs.map +1 -0
  195. package/es/components/popper/src/tokens.d.ts +14 -0
  196. package/es/components/popper/src/tokens.mjs +5 -0
  197. package/es/components/popper/src/tokens.mjs.map +1 -0
  198. package/es/components/popper/src/trigger.mjs +7 -0
  199. package/es/components/popper/src/trigger.mjs.map +1 -0
  200. package/es/components/popper/src/trigger.vue.d.ts +45 -0
  201. package/es/components/popper/src/trigger.vue_vue_type_script_lang.mjs +66 -0
  202. package/es/components/popper/src/trigger.vue_vue_type_script_lang.mjs.map +1 -0
  203. package/es/components/popper/src/trigger.vue_vue_type_template_id_4fb6e0af_lang.mjs +16 -0
  204. package/es/components/popper/src/trigger.vue_vue_type_template_id_4fb6e0af_lang.mjs.map +1 -0
  205. package/es/components/popper/src/utils.d.ts +55 -0
  206. package/es/components/popper/src/utils.mjs +76 -0
  207. package/es/components/popper/src/utils.mjs.map +1 -0
  208. package/es/components/rate/index.d.ts +7 -1
  209. package/es/components/rate/src/rate.d.ts +2 -0
  210. package/es/components/rate/src/rate.mjs +5 -0
  211. package/es/components/rate/src/rate.mjs.map +1 -1
  212. package/es/components/rate/src/rate.vue.d.ts +7 -1
  213. package/es/components/rate/src/rate.vue_vue_type_script_lang.mjs +6 -0
  214. package/es/components/rate/src/rate.vue_vue_type_script_lang.mjs.map +1 -1
  215. package/es/components/rate/src/rate.vue_vue_type_template_id_38c42df6_lang.mjs +3 -3
  216. package/es/components/rate/src/rate.vue_vue_type_template_id_38c42df6_lang.mjs.map +1 -1
  217. package/es/components/roving-focus-group/index.d.ts +7 -0
  218. package/es/components/roving-focus-group/index.mjs +9 -0
  219. package/es/components/roving-focus-group/index.mjs.map +1 -0
  220. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs +7 -0
  221. package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs.map +1 -0
  222. package/es/components/roving-focus-group/src/roving-focus-group-impl.vue.d.ts +43 -0
  223. package/es/components/roving-focus-group/src/roving-focus-group-impl.vue_vue_type_script_lang.mjs +102 -0
  224. package/es/components/roving-focus-group/src/roving-focus-group-impl.vue_vue_type_script_lang.mjs.map +1 -0
  225. package/es/components/roving-focus-group/src/roving-focus-group-impl.vue_vue_type_template_id_e5cee750_lang.mjs +8 -0
  226. package/es/components/roving-focus-group/src/roving-focus-group-impl.vue_vue_type_template_id_e5cee750_lang.mjs.map +1 -0
  227. package/es/components/roving-focus-group/src/roving-focus-group.d.ts +269 -0
  228. package/es/components/roving-focus-group/src/roving-focus-group.mjs +32 -0
  229. package/es/components/roving-focus-group/src/roving-focus-group.mjs.map +1 -0
  230. package/es/components/roving-focus-group/src/roving-focus-group.vue.d.ts +2 -0
  231. package/es/components/roving-focus-group/src/roving-focus-group.vue_vue_type_script_lang.mjs +15 -0
  232. package/es/components/roving-focus-group/src/roving-focus-group.vue_vue_type_script_lang.mjs.map +1 -0
  233. package/es/components/roving-focus-group/src/roving-focus-group.vue_vue_type_template_id_91b51b76_lang.mjs +20 -0
  234. package/es/components/roving-focus-group/src/roving-focus-group.vue_vue_type_template_id_91b51b76_lang.mjs.map +1 -0
  235. package/es/components/roving-focus-group/src/roving-focus-group2.mjs +7 -0
  236. package/es/components/roving-focus-group/src/roving-focus-group2.mjs.map +1 -0
  237. package/es/components/roving-focus-group/src/roving-focus-item.mjs +7 -0
  238. package/es/components/roving-focus-group/src/roving-focus-item.mjs.map +1 -0
  239. package/es/components/roving-focus-group/src/roving-focus-item.vue.d.ts +29 -0
  240. package/es/components/roving-focus-group/src/roving-focus-item.vue_vue_type_script_lang.mjs +100 -0
  241. package/es/components/roving-focus-group/src/roving-focus-item.vue_vue_type_script_lang.mjs.map +1 -0
  242. package/es/components/roving-focus-group/src/roving-focus-item.vue_vue_type_template_id_5f657dbd_lang.mjs +18 -0
  243. package/es/components/roving-focus-group/src/roving-focus-item.vue_vue_type_template_id_5f657dbd_lang.mjs.map +1 -0
  244. package/es/components/roving-focus-group/src/tokens.d.ts +27 -0
  245. package/es/components/roving-focus-group/src/tokens.mjs +5 -0
  246. package/es/components/roving-focus-group/src/tokens.mjs.map +1 -0
  247. package/es/components/roving-focus-group/src/utils.d.ts +8 -0
  248. package/es/components/roving-focus-group/src/utils.mjs +48 -0
  249. package/es/components/roving-focus-group/src/utils.mjs.map +1 -0
  250. package/es/components/select/index.d.ts +680 -14
  251. package/es/components/select/src/select-dropdown.vue.d.ts +1 -1
  252. package/es/components/select/src/select-dropdown.vue_vue_type_script_lang.mjs +1 -0
  253. package/es/components/select/src/select-dropdown.vue_vue_type_script_lang.mjs.map +1 -1
  254. package/es/components/select/src/select-dropdown.vue_vue_type_template_id_46cf6eee_lang.mjs.map +1 -1
  255. package/es/components/select/src/select.vue.d.ts +681 -15
  256. package/es/components/select/src/select.vue_vue_type_script_lang.mjs +25 -11
  257. package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
  258. package/es/components/select/src/select.vue_vue_type_template_id_33774f85_lang.mjs +11 -12
  259. package/es/components/select/src/select.vue_vue_type_template_id_33774f85_lang.mjs.map +1 -1
  260. package/es/components/select/src/token.d.ts +1 -0
  261. package/es/components/select/src/token.mjs.map +1 -1
  262. package/es/components/select/src/useSelect.d.ts +671 -7
  263. package/es/components/select/src/useSelect.mjs +33 -23
  264. package/es/components/select/src/useSelect.mjs.map +1 -1
  265. package/es/components/select-v2/index.d.ts +1326 -16
  266. package/es/components/select-v2/src/select.vue.d.ts +665 -10
  267. package/es/components/select-v2/src/select.vue_vue_type_script_lang.mjs +2 -2
  268. package/es/components/select-v2/src/select.vue_vue_type_script_lang.mjs.map +1 -1
  269. package/es/components/select-v2/src/select.vue_vue_type_template_id_13e598a4_lang.mjs +8 -9
  270. package/es/components/select-v2/src/select.vue_vue_type_template_id_13e598a4_lang.mjs.map +1 -1
  271. package/es/components/select-v2/src/useSelect.d.ts +659 -4
  272. package/es/components/select-v2/src/useSelect.mjs +7 -7
  273. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  274. package/es/components/slider/index.d.ts +22 -6
  275. package/es/components/slider/src/button.vue_vue_type_script_lang.mjs +2 -2
  276. package/es/components/slider/src/button.vue_vue_type_script_lang.mjs.map +1 -1
  277. package/es/components/slider/src/index.vue.d.ts +11 -3
  278. package/es/components/slider/src/index.vue_vue_type_script_lang.mjs +21 -2
  279. package/es/components/slider/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  280. package/es/components/slider/src/index.vue_vue_type_template_id_24c42d04_lang.mjs +19 -19
  281. package/es/components/slider/src/index.vue_vue_type_template_id_24c42d04_lang.mjs.map +1 -1
  282. package/es/components/slot/index.d.ts +5 -0
  283. package/es/components/slot/index.mjs +2 -0
  284. package/es/components/slot/index.mjs.map +1 -0
  285. package/es/components/slot/src/only-child.d.ts +5 -0
  286. package/es/components/slot/src/only-child.mjs +61 -0
  287. package/es/components/slot/src/only-child.mjs.map +1 -0
  288. package/es/components/switch/index.d.ts +5 -0
  289. package/es/components/switch/src/switch.d.ts +2 -0
  290. package/es/components/switch/src/switch.mjs +5 -0
  291. package/es/components/switch/src/switch.mjs.map +1 -1
  292. package/es/components/switch/src/switch.vue.d.ts +5 -0
  293. package/es/components/switch/src/switch.vue_vue_type_script_lang.mjs +10 -1
  294. package/es/components/switch/src/switch.vue_vue_type_script_lang.mjs.map +1 -1
  295. package/es/components/switch/src/switch.vue_vue_type_template_id_538fbc85_lang.mjs +1 -1
  296. package/es/components/switch/src/switch.vue_vue_type_template_id_538fbc85_lang.mjs.map +1 -1
  297. package/es/components/table/index.d.ts +13 -4
  298. package/es/components/table/src/filter-panel.vue.d.ts +654 -4
  299. package/es/components/table/src/filter-panel.vue_vue_type_script_lang.mjs +5 -7
  300. package/es/components/table/src/filter-panel.vue_vue_type_script_lang.mjs.map +1 -1
  301. package/es/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.mjs +8 -9
  302. package/es/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.mjs.map +1 -1
  303. package/es/components/table/src/table/style-helper.d.ts +7 -0
  304. package/es/components/table/src/table/style-helper.mjs +20 -17
  305. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  306. package/es/components/table/src/table-body/index.mjs +5 -3
  307. package/es/components/table/src/table-body/index.mjs.map +1 -1
  308. package/es/components/table/src/table-body/styles-helper.d.ts +0 -1
  309. package/es/components/table/src/table-body/styles-helper.mjs +10 -17
  310. package/es/components/table/src/table-body/styles-helper.mjs.map +1 -1
  311. package/es/components/table/src/table-column/defaults.d.ts +1 -0
  312. package/es/components/table/src/table-column/defaults.mjs.map +1 -1
  313. package/es/components/table/src/table-column/index.d.ts +1 -1
  314. package/es/components/table/src/table-column/index.mjs +1 -0
  315. package/es/components/table/src/table-column/index.mjs.map +1 -1
  316. package/es/components/table/src/table-footer/index.d.ts +4 -2
  317. package/es/components/table/src/table-footer/index.mjs +33 -18
  318. package/es/components/table/src/table-footer/index.mjs.map +1 -1
  319. package/es/components/table/src/table-footer/style-helper.d.ts +4 -2
  320. package/es/components/table/src/table-footer/style-helper.mjs +28 -31
  321. package/es/components/table/src/table-footer/style-helper.mjs.map +1 -1
  322. package/es/components/table/src/table-header/index.d.ts +3 -2
  323. package/es/components/table/src/table-header/index.mjs +89 -51
  324. package/es/components/table/src/table-header/index.mjs.map +1 -1
  325. package/es/components/table/src/table-header/style.helper.d.ts +1 -1
  326. package/es/components/table/src/table-header/style.helper.mjs +14 -24
  327. package/es/components/table/src/table-header/style.helper.mjs.map +1 -1
  328. package/es/components/table/src/table-header/utils-helper.mjs +1 -0
  329. package/es/components/table/src/table-header/utils-helper.mjs.map +1 -1
  330. package/es/components/table/src/table-layout.d.ts +1 -0
  331. package/es/components/table/src/table-layout.mjs +8 -3
  332. package/es/components/table/src/table-layout.mjs.map +1 -1
  333. package/es/components/table/src/table.vue.d.ts +11 -2
  334. package/es/components/table/src/table.vue_vue_type_script_lang.mjs +12 -2
  335. package/es/components/table/src/table.vue_vue_type_script_lang.mjs.map +1 -1
  336. package/es/components/table/src/table.vue_vue_type_template_id_4a1660ad_lang.mjs +62 -213
  337. package/es/components/table/src/table.vue_vue_type_template_id_4a1660ad_lang.mjs.map +1 -1
  338. package/es/components/table/src/util.d.ts +18 -4
  339. package/es/components/table/src/util.mjs +99 -6
  340. package/es/components/table/src/util.mjs.map +1 -1
  341. package/es/components/teleport/index.d.ts +11 -8
  342. package/es/components/teleport/src/teleport.d.ts +4 -3
  343. package/es/components/teleport/src/teleport.mjs +5 -1
  344. package/es/components/teleport/src/teleport.mjs.map +1 -1
  345. package/es/components/teleport/src/teleport.vue.d.ts +11 -8
  346. package/es/components/teleport/src/teleport.vue_vue_type_script_lang.mjs +1 -2
  347. package/es/components/teleport/src/teleport.vue_vue_type_script_lang.mjs.map +1 -1
  348. package/es/components/teleport/src/teleport.vue_vue_type_template_id_787c6a36_lang.mjs +3 -2
  349. package/es/components/teleport/src/teleport.vue_vue_type_template_id_787c6a36_lang.mjs.map +1 -1
  350. package/es/components/time-picker/index.d.ts +4 -4
  351. package/es/components/time-picker/src/common/picker.vue.d.ts +663 -9
  352. package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs +29 -17
  353. package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs.map +1 -1
  354. package/es/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.mjs +38 -38
  355. package/es/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.mjs.map +1 -1
  356. package/es/components/time-picker/src/time-picker.d.ts +2 -2
  357. package/es/components/time-select/index.d.ts +4 -4
  358. package/es/components/time-select/src/time-select.vue.d.ts +2 -2
  359. package/es/components/tooltip/index.d.ts +346 -430
  360. package/es/components/tooltip/index.mjs +6 -7
  361. package/es/components/tooltip/index.mjs.map +1 -1
  362. package/es/components/tooltip/src/content.mjs +7 -0
  363. package/es/components/tooltip/src/content.mjs.map +1 -0
  364. package/es/components/tooltip/src/content.vue.d.ts +809 -0
  365. package/es/components/tooltip/src/content.vue_vue_type_script_lang.mjs +135 -0
  366. package/es/components/tooltip/src/content.vue_vue_type_script_lang.mjs.map +1 -0
  367. package/es/components/tooltip/src/content.vue_vue_type_template_id_20254f8d_lang.mjs +65 -0
  368. package/es/components/tooltip/src/content.vue_vue_type_template_id_20254f8d_lang.mjs.map +1 -0
  369. package/es/components/tooltip/src/tokens.d.ts +14 -0
  370. package/es/components/tooltip/src/tokens.mjs +4 -0
  371. package/es/components/tooltip/src/tokens.mjs.map +1 -0
  372. package/es/components/tooltip/src/tooltip.d.ts +146 -0
  373. package/es/components/tooltip/src/tooltip.mjs +63 -0
  374. package/es/components/tooltip/src/tooltip.mjs.map +1 -0
  375. package/es/components/tooltip/src/tooltip.vue.d.ts +383 -0
  376. package/es/components/tooltip/src/tooltip.vue_vue_type_script_lang.mjs +104 -0
  377. package/es/components/tooltip/src/tooltip.vue_vue_type_script_lang.mjs.map +1 -0
  378. package/es/components/tooltip/src/tooltip.vue_vue_type_template_id_694d1617_lang.mjs +67 -0
  379. package/es/components/tooltip/src/tooltip.vue_vue_type_template_id_694d1617_lang.mjs.map +1 -0
  380. package/es/components/tooltip/src/tooltip2.mjs +7 -0
  381. package/es/components/tooltip/src/tooltip2.mjs.map +1 -0
  382. package/es/components/tooltip/src/trigger.mjs +7 -0
  383. package/es/components/tooltip/src/trigger.mjs.map +1 -0
  384. package/es/components/tooltip/src/trigger.vue.d.ts +39 -0
  385. package/es/components/tooltip/src/trigger.vue_vue_type_script_lang.mjs +60 -0
  386. package/es/components/tooltip/src/trigger.vue_vue_type_script_lang.mjs.map +1 -0
  387. package/es/components/tooltip/src/trigger.vue_vue_type_template_id_0ec0b94c_lang.mjs +27 -0
  388. package/es/components/tooltip/src/trigger.vue_vue_type_template_id_0ec0b94c_lang.mjs.map +1 -0
  389. package/es/components/tooltip/src/utils.d.ts +4 -0
  390. package/es/components/tooltip/src/utils.mjs +18 -0
  391. package/es/components/tooltip/src/utils.mjs.map +1 -0
  392. package/es/components/tree/index.d.ts +4 -4
  393. package/es/components/tree/src/tree.vue.d.ts +2 -2
  394. package/es/components/tree-v2/src/tree-node.vue.d.ts +1 -1
  395. package/es/components/virtual-list/src/builders/build-list.d.ts +1 -1
  396. package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +1 -1
  397. package/es/components/virtual-list/src/components/fixed-size-list.d.ts +1 -1
  398. package/es/components/visual-hidden/index.d.ts +3 -0
  399. package/es/components/visual-hidden/index.mjs +4 -0
  400. package/es/components/{popper/src/renderers → visual-hidden}/index.mjs.map +0 -0
  401. package/es/components/visual-hidden/src/visual-hidden.mjs +7 -0
  402. package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -0
  403. package/es/components/visual-hidden/src/visual-hidden.vue.d.ts +12 -0
  404. package/es/components/visual-hidden/src/visual-hidden.vue_vue_type_script_lang.mjs +34 -0
  405. package/es/components/visual-hidden/src/visual-hidden.vue_vue_type_script_lang.mjs.map +1 -0
  406. package/es/components/visual-hidden/src/visual-hidden.vue_vue_type_template_id_4cbd1102_lang.mjs +8 -0
  407. package/es/components/visual-hidden/src/visual-hidden.vue_vue_type_template_id_4cbd1102_lang.mjs.map +1 -0
  408. package/es/directives/click-outside/index.mjs.map +1 -1
  409. package/es/hooks/index.d.ts +8 -1
  410. package/es/hooks/index.mjs +8 -2
  411. package/es/hooks/index.mjs.map +1 -1
  412. package/es/hooks/use-delayed-toggle/index.d.ts +13 -0
  413. package/es/hooks/use-delayed-toggle/index.mjs +39 -0
  414. package/es/hooks/use-delayed-toggle/index.mjs.map +1 -0
  415. package/es/hooks/use-escape-keydown/index.d.ts +1 -0
  416. package/es/hooks/use-escape-keydown/index.mjs +21 -0
  417. package/es/hooks/use-escape-keydown/index.mjs.map +1 -0
  418. package/es/hooks/use-focus/index.d.ts +3 -1
  419. package/es/hooks/use-focus/index.mjs.map +1 -1
  420. package/es/hooks/use-forward-ref/index.d.ts +13 -0
  421. package/es/hooks/use-forward-ref/index.mjs +27 -0
  422. package/es/hooks/use-forward-ref/index.mjs.map +1 -0
  423. package/es/hooks/use-id/index.d.ts +8 -0
  424. package/es/hooks/use-id/index.mjs +24 -0
  425. package/es/hooks/use-id/index.mjs.map +1 -0
  426. package/es/hooks/use-intermediate-render/index.d.ts +11 -0
  427. package/es/hooks/use-intermediate-render/index.mjs +43 -0
  428. package/es/hooks/use-intermediate-render/index.mjs.map +1 -0
  429. package/es/hooks/use-model-toggle/index.d.ts +18 -9
  430. package/es/hooks/use-model-toggle/index.mjs +103 -93
  431. package/es/hooks/use-model-toggle/index.mjs.map +1 -1
  432. package/es/hooks/use-popper-container/index.d.ts +3 -0
  433. package/es/hooks/use-popper-container/index.mjs +22 -0
  434. package/es/hooks/use-popper-container/index.mjs.map +1 -0
  435. package/es/hooks/use-restore-active/index.mjs +1 -1
  436. package/es/hooks/use-restore-active/index.mjs.map +1 -1
  437. package/es/index.mjs +15 -8
  438. package/es/index.mjs.map +1 -1
  439. package/es/utils/aria.d.ts +4 -0
  440. package/es/utils/aria.mjs +5 -1
  441. package/es/utils/aria.mjs.map +1 -1
  442. package/es/utils/dom.d.ts +9 -1
  443. package/es/utils/dom.mjs +27 -1
  444. package/es/utils/dom.mjs.map +1 -1
  445. package/es/utils/props.d.ts +2 -2
  446. package/es/utils/props.mjs +1 -1
  447. package/es/utils/props.mjs.map +1 -1
  448. package/es/version.d.ts +1 -1
  449. package/es/version.mjs +1 -1
  450. package/es/version.mjs.map +1 -1
  451. package/lib/components/autocomplete/index.d.ts +26 -18
  452. package/lib/components/autocomplete/src/index.vue.d.ts +13 -10
  453. package/lib/components/autocomplete/src/index.vue_vue_type_script_lang.js +13 -17
  454. package/lib/components/autocomplete/src/index.vue_vue_type_script_lang.js.map +1 -1
  455. package/lib/components/autocomplete/src/index.vue_vue_type_template_id_2f09f285_lang.js +51 -48
  456. package/lib/components/autocomplete/src/index.vue_vue_type_template_id_2f09f285_lang.js.map +1 -1
  457. package/lib/components/carousel/index.d.ts +4 -4
  458. package/lib/components/carousel/src/main.vue.d.ts +4 -4
  459. package/lib/components/cascader/index.d.ts +1118 -6532
  460. package/lib/components/cascader/src/index.vue.d.ts +559 -3267
  461. package/lib/components/cascader/src/index.vue_vue_type_script_lang.js +10 -10
  462. package/lib/components/cascader/src/index.vue_vue_type_script_lang.js.map +1 -1
  463. package/lib/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.js +12 -12
  464. package/lib/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.js.map +1 -1
  465. package/lib/components/cascader-panel/src/index.vue_vue_type_script_lang.js +3 -0
  466. package/lib/components/cascader-panel/src/index.vue_vue_type_script_lang.js.map +1 -1
  467. package/lib/components/cascader-panel/src/index.vue_vue_type_template_id_97c48f5c_lang.js.map +1 -1
  468. package/lib/components/checkbox/index.d.ts +1 -1
  469. package/lib/components/checkbox/src/checkbox.vue.d.ts +1 -1
  470. package/lib/components/collapse-transition/src/collapse-transition.vue_vue_type_script_lang.js +7 -13
  471. package/lib/components/collapse-transition/src/collapse-transition.vue_vue_type_script_lang.js.map +1 -1
  472. package/lib/components/collapse-transition/src/collapse-transition.vue_vue_type_template_id_f68ae30a_lang.js +1 -1
  473. package/lib/components/collapse-transition/src/collapse-transition.vue_vue_type_template_id_f68ae30a_lang.js.map +1 -1
  474. package/lib/components/collection/index.d.ts +2 -0
  475. package/lib/components/collection/index.js +12 -0
  476. package/lib/components/{popper/src → collection}/index.js.map +0 -0
  477. package/lib/components/collection/src/collection-item.js +12 -0
  478. package/lib/components/collection/src/collection-item.js.map +1 -0
  479. package/lib/components/collection/src/collection-item.vue.d.ts +2 -0
  480. package/lib/components/collection/src/collection-item.vue_vue_type_script_lang.js +13 -0
  481. package/lib/components/collection/src/collection-item.vue_vue_type_script_lang.js.map +1 -0
  482. package/lib/components/collection/src/collection-item.vue_vue_type_template_id_dd23be6a_lang.js +12 -0
  483. package/lib/components/collection/src/collection-item.vue_vue_type_template_id_dd23be6a_lang.js.map +1 -0
  484. package/lib/components/collection/src/collection.d.ts +263 -0
  485. package/lib/components/collection/src/collection.js +73 -0
  486. package/lib/components/collection/src/collection.js.map +1 -0
  487. package/lib/components/collection/src/collection.vue.d.ts +2 -0
  488. package/lib/components/collection/src/collection.vue_vue_type_script_lang.js +12 -0
  489. package/lib/components/collection/src/collection.vue_vue_type_script_lang.js.map +1 -0
  490. package/lib/components/collection/src/collection.vue_vue_type_template_id_5f9c2545_lang.js +12 -0
  491. package/lib/components/collection/src/collection.vue_vue_type_template_id_5f9c2545_lang.js.map +1 -0
  492. package/lib/components/collection/src/collection2.js +12 -0
  493. package/lib/components/collection/src/collection2.js.map +1 -0
  494. package/lib/components/collection/src/tokens.d.ts +12 -0
  495. package/lib/components/collection/src/tokens.js +3 -0
  496. package/lib/components/collection/src/tokens.js.map +1 -0
  497. package/lib/components/color-picker/index.d.ts +0 -2
  498. package/lib/components/color-picker/src/index.vue.d.ts +0 -2
  499. package/lib/components/color-picker/src/index.vue_vue_type_script_lang.js +2 -4
  500. package/lib/components/color-picker/src/index.vue_vue_type_script_lang.js.map +1 -1
  501. package/lib/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.js +9 -10
  502. package/lib/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.js.map +1 -1
  503. package/lib/components/date-picker/index.d.ts +4 -4
  504. package/lib/components/date-picker/src/date-picker.d.ts +2 -2
  505. package/lib/components/descriptions/index.d.ts +4 -4
  506. package/lib/components/descriptions/src/description-item.d.ts +2 -2
  507. package/lib/components/dialog/index.d.ts +5 -5
  508. package/lib/components/dialog/src/dialog.vue.d.ts +5 -5
  509. package/lib/components/drawer/index.d.ts +5 -5
  510. package/lib/components/drawer/src/drawer.vue.d.ts +5 -5
  511. package/lib/components/dropdown/index.d.ts +767 -84
  512. package/lib/components/dropdown/src/dropdown-item-impl.js +12 -0
  513. package/lib/components/dropdown/src/dropdown-item-impl.js.map +1 -0
  514. package/lib/components/dropdown/src/dropdown-item-impl.vue.d.ts +39 -0
  515. package/lib/components/dropdown/src/dropdown-item-impl.vue_vue_type_script_lang.js +57 -0
  516. package/lib/components/dropdown/src/dropdown-item-impl.vue_vue_type_script_lang.js.map +1 -0
  517. package/lib/components/dropdown/src/dropdown-item-impl.vue_vue_type_template_id_6daab4f2_lang.js +37 -0
  518. package/lib/components/dropdown/src/dropdown-item-impl.vue_vue_type_template_id_6daab4f2_lang.js.map +1 -0
  519. package/lib/components/dropdown/src/dropdown-item.vue.d.ts +17 -9
  520. package/lib/components/dropdown/src/dropdown-item.vue_vue_type_script_lang.js +50 -20
  521. package/lib/components/dropdown/src/dropdown-item.vue_vue_type_script_lang.js.map +1 -1
  522. package/lib/components/dropdown/src/dropdown-item.vue_vue_type_template_id_396ed16b_lang.js +29 -19
  523. package/lib/components/dropdown/src/dropdown-item.vue_vue_type_template_id_396ed16b_lang.js.map +1 -1
  524. package/lib/components/dropdown/src/dropdown-menu.vue.d.ts +17 -6
  525. package/lib/components/dropdown/src/dropdown-menu.vue_vue_type_script_lang.js +57 -21
  526. package/lib/components/dropdown/src/dropdown-menu.vue_vue_type_script_lang.js.map +1 -1
  527. package/lib/components/dropdown/src/dropdown-menu.vue_vue_type_template_id_617b3492_lang.js +11 -8
  528. package/lib/components/dropdown/src/dropdown-menu.vue_vue_type_template_id_617b3492_lang.js.map +1 -1
  529. package/lib/components/dropdown/src/dropdown.d.ts +295 -1
  530. package/lib/components/dropdown/src/dropdown.js +96 -0
  531. package/lib/components/dropdown/src/dropdown.js.map +1 -1
  532. package/lib/components/dropdown/src/dropdown.vue.d.ts +712 -73
  533. package/lib/components/dropdown/src/dropdown.vue_vue_type_script_lang.js +59 -152
  534. package/lib/components/dropdown/src/dropdown.vue_vue_type_script_lang.js.map +1 -1
  535. package/lib/components/dropdown/src/dropdown.vue_vue_type_template_id_3ed790a5_lang.js +91 -51
  536. package/lib/components/dropdown/src/dropdown.vue_vue_type_template_id_3ed790a5_lang.js.map +1 -1
  537. package/lib/components/dropdown/src/tokens.d.ts +8 -0
  538. package/lib/components/dropdown/src/tokens.js +8 -0
  539. package/lib/components/dropdown/src/tokens.js.map +1 -0
  540. package/lib/components/focus-trap/index.d.ts +5 -0
  541. package/lib/components/focus-trap/index.js +27 -0
  542. package/lib/components/focus-trap/index.js.map +1 -0
  543. package/lib/components/focus-trap/src/focus-trap.js +12 -0
  544. package/lib/components/focus-trap/src/focus-trap.js.map +1 -0
  545. package/lib/components/focus-trap/src/focus-trap.vue.d.ts +21 -0
  546. package/lib/components/focus-trap/src/focus-trap.vue_vue_type_script_lang.js +141 -0
  547. package/lib/components/focus-trap/src/focus-trap.vue_vue_type_script_lang.js.map +1 -0
  548. package/lib/components/focus-trap/src/focus-trap.vue_vue_type_template_id_4a8a10c5_lang.js +12 -0
  549. package/lib/components/focus-trap/src/focus-trap.vue_vue_type_template_id_4a8a10c5_lang.js.map +1 -0
  550. package/lib/components/focus-trap/src/tokens.d.ts +11 -0
  551. package/lib/components/focus-trap/src/tokens.js +21 -0
  552. package/lib/components/focus-trap/src/tokens.js.map +1 -0
  553. package/lib/components/focus-trap/src/utils.d.ts +18 -0
  554. package/lib/components/focus-trap/src/utils.js +102 -0
  555. package/lib/components/focus-trap/src/utils.js.map +1 -0
  556. package/lib/components/image/index.d.ts +2 -2
  557. package/lib/components/image/src/image.vue.d.ts +2 -2
  558. package/lib/components/index.js +92 -84
  559. package/lib/components/index.js.map +1 -1
  560. package/lib/components/input/index.d.ts +5 -5
  561. package/lib/components/input/src/input.vue.d.ts +5 -5
  562. package/lib/components/input-number/index.d.ts +14 -12
  563. package/lib/components/input-number/src/input-number.vue.d.ts +14 -12
  564. package/lib/components/input-number/src/input-number.vue_vue_type_script_lang.js +18 -4
  565. package/lib/components/input-number/src/input-number.vue_vue_type_script_lang.js.map +1 -1
  566. package/lib/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.js +5 -4
  567. package/lib/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.js.map +1 -1
  568. package/lib/components/menu/index.d.ts +9 -3
  569. package/lib/components/menu/src/menu-item.vue.d.ts +4 -2
  570. package/lib/components/menu/src/menu-item.vue_vue_type_script_lang.js +3 -3
  571. package/lib/components/menu/src/menu-item.vue_vue_type_script_lang.js.map +1 -1
  572. package/lib/components/menu/src/menu.d.ts +1 -1
  573. package/lib/components/menu/src/menu.js +2 -1
  574. package/lib/components/menu/src/menu.js.map +1 -1
  575. package/lib/components/menu/src/sub-menu.js +18 -21
  576. package/lib/components/menu/src/sub-menu.js.map +1 -1
  577. package/lib/components/menu/src/types.d.ts +2 -0
  578. package/lib/components/message-box/src/index.vue.d.ts +2 -2
  579. package/lib/components/message-box/src/index.vue_vue_type_script_lang.js.map +1 -1
  580. package/lib/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.js +1 -0
  581. package/lib/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.js.map +1 -1
  582. package/lib/components/pagination/index.d.ts +2 -2
  583. package/lib/components/pagination/src/pagination.d.ts +2 -2
  584. package/lib/components/popconfirm/index.d.ts +19 -12
  585. package/lib/components/popconfirm/index.js +0 -1
  586. package/lib/components/popconfirm/index.js.map +1 -1
  587. package/lib/components/popconfirm/src/popconfirm.d.ts +3 -5
  588. package/lib/components/popconfirm/src/popconfirm.js +10 -5
  589. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  590. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +19 -13
  591. package/lib/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.js +20 -18
  592. package/lib/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.js.map +1 -1
  593. package/lib/components/popconfirm/src/popconfirm.vue_vue_type_template_id_16409d25_lang.js +11 -12
  594. package/lib/components/popconfirm/src/popconfirm.vue_vue_type_template_id_16409d25_lang.js.map +1 -1
  595. package/lib/components/popover/index.d.ts +1690 -420
  596. package/lib/components/popover/src/directive.js +7 -13
  597. package/lib/components/popover/src/directive.js.map +1 -1
  598. package/lib/components/popover/src/index.js +2 -0
  599. package/lib/components/popover/src/index.js.map +1 -1
  600. package/lib/components/popover/src/index.vue.d.ts +846 -213
  601. package/lib/components/popover/src/index.vue_vue_type_script_lang.js +40 -106
  602. package/lib/components/popover/src/index.vue_vue_type_script_lang.js.map +1 -1
  603. package/lib/components/popover/src/index.vue_vue_type_template_id_15486cf0_lang.js +35 -0
  604. package/lib/components/popover/src/index.vue_vue_type_template_id_15486cf0_lang.js.map +1 -0
  605. package/lib/components/popover/src/popover.d.ts +70 -0
  606. package/lib/components/popover/src/popover.js +35 -0
  607. package/lib/components/popover/src/popover.js.map +1 -0
  608. package/lib/components/popper/index.d.ts +7 -3479
  609. package/lib/components/popper/index.js +24 -20
  610. package/lib/components/popper/index.js.map +1 -1
  611. package/lib/components/popper/src/arrow.js +12 -0
  612. package/lib/components/popper/src/arrow.js.map +1 -0
  613. package/lib/components/popper/src/arrow.vue.d.ts +12 -0
  614. package/lib/components/popper/src/arrow.vue_vue_type_script_lang.js +31 -0
  615. package/lib/components/popper/src/arrow.vue_vue_type_script_lang.js.map +1 -0
  616. package/lib/components/popper/src/arrow.vue_vue_type_template_id_8ab40b80_lang.js +17 -0
  617. package/lib/components/popper/src/arrow.vue_vue_type_template_id_8ab40b80_lang.js.map +1 -0
  618. package/lib/components/popper/src/container.d.ts +3 -0
  619. package/lib/components/popper/src/container.js +28 -0
  620. package/lib/components/popper/src/container.js.map +1 -0
  621. package/lib/components/popper/src/content.js +12 -0
  622. package/lib/components/popper/src/content.js.map +1 -0
  623. package/lib/components/popper/src/content.vue.d.ts +299 -0
  624. package/lib/components/popper/src/content.vue_vue_type_script_lang.js +89 -0
  625. package/lib/components/popper/src/content.vue_vue_type_script_lang.js.map +1 -0
  626. package/lib/components/popper/src/content.vue_vue_type_template_id_611b76f0_lang.js +20 -0
  627. package/lib/components/popper/src/content.vue_vue_type_template_id_611b76f0_lang.js.map +1 -0
  628. package/lib/components/popper/src/popper.d.ts +58 -0
  629. package/lib/components/popper/src/popper.js +107 -0
  630. package/lib/components/popper/src/popper.js.map +1 -0
  631. package/lib/components/popper/src/popper.vue.d.ts +3 -0
  632. package/lib/components/popper/src/popper.vue_vue_type_script_lang.js +23 -0
  633. package/lib/components/popper/src/popper.vue_vue_type_script_lang.js.map +1 -0
  634. package/lib/components/popper/src/popper.vue_vue_type_template_id_77a3d185_lang.js +12 -0
  635. package/lib/components/popper/src/popper.vue_vue_type_template_id_77a3d185_lang.js.map +1 -0
  636. package/lib/components/popper/src/popper2.js +12 -0
  637. package/lib/components/popper/src/popper2.js.map +1 -0
  638. package/lib/components/popper/src/tokens.d.ts +14 -0
  639. package/lib/components/popper/src/tokens.js +10 -0
  640. package/lib/components/popper/src/tokens.js.map +1 -0
  641. package/lib/components/popper/src/trigger.js +12 -0
  642. package/lib/components/popper/src/trigger.js.map +1 -0
  643. package/lib/components/popper/src/trigger.vue.d.ts +45 -0
  644. package/lib/components/popper/src/trigger.vue_vue_type_script_lang.js +70 -0
  645. package/lib/components/popper/src/trigger.vue_vue_type_script_lang.js.map +1 -0
  646. package/lib/components/popper/src/trigger.vue_vue_type_template_id_4fb6e0af_lang.js +20 -0
  647. package/lib/components/popper/src/trigger.vue_vue_type_template_id_4fb6e0af_lang.js.map +1 -0
  648. package/lib/components/popper/src/utils.d.ts +55 -0
  649. package/lib/components/popper/src/utils.js +81 -0
  650. package/lib/components/popper/src/utils.js.map +1 -0
  651. package/lib/components/rate/index.d.ts +7 -1
  652. package/lib/components/rate/src/rate.d.ts +2 -0
  653. package/lib/components/rate/src/rate.js +5 -0
  654. package/lib/components/rate/src/rate.js.map +1 -1
  655. package/lib/components/rate/src/rate.vue.d.ts +7 -1
  656. package/lib/components/rate/src/rate.vue_vue_type_script_lang.js +6 -0
  657. package/lib/components/rate/src/rate.vue_vue_type_script_lang.js.map +1 -1
  658. package/lib/components/rate/src/rate.vue_vue_type_template_id_38c42df6_lang.js +2 -2
  659. package/lib/components/rate/src/rate.vue_vue_type_template_id_38c42df6_lang.js.map +1 -1
  660. package/lib/components/roving-focus-group/index.d.ts +7 -0
  661. package/lib/components/roving-focus-group/index.js +25 -0
  662. package/lib/components/roving-focus-group/index.js.map +1 -0
  663. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js +12 -0
  664. package/lib/components/roving-focus-group/src/roving-focus-group-impl.js.map +1 -0
  665. package/lib/components/roving-focus-group/src/roving-focus-group-impl.vue.d.ts +43 -0
  666. package/lib/components/roving-focus-group/src/roving-focus-group-impl.vue_vue_type_script_lang.js +106 -0
  667. package/lib/components/roving-focus-group/src/roving-focus-group-impl.vue_vue_type_script_lang.js.map +1 -0
  668. package/lib/components/roving-focus-group/src/roving-focus-group-impl.vue_vue_type_template_id_e5cee750_lang.js +12 -0
  669. package/lib/components/roving-focus-group/src/roving-focus-group-impl.vue_vue_type_template_id_e5cee750_lang.js.map +1 -0
  670. package/lib/components/roving-focus-group/src/roving-focus-group.d.ts +269 -0
  671. package/lib/components/roving-focus-group/src/roving-focus-group.js +40 -0
  672. package/lib/components/roving-focus-group/src/roving-focus-group.js.map +1 -0
  673. package/lib/components/roving-focus-group/src/roving-focus-group.vue.d.ts +2 -0
  674. package/lib/components/roving-focus-group/src/roving-focus-group.vue_vue_type_script_lang.js +19 -0
  675. package/lib/components/roving-focus-group/src/roving-focus-group.vue_vue_type_script_lang.js.map +1 -0
  676. package/lib/components/roving-focus-group/src/roving-focus-group.vue_vue_type_template_id_91b51b76_lang.js +24 -0
  677. package/lib/components/roving-focus-group/src/roving-focus-group.vue_vue_type_template_id_91b51b76_lang.js.map +1 -0
  678. package/lib/components/roving-focus-group/src/roving-focus-group2.js +12 -0
  679. package/lib/components/roving-focus-group/src/roving-focus-group2.js.map +1 -0
  680. package/lib/components/roving-focus-group/src/roving-focus-item.js +12 -0
  681. package/lib/components/roving-focus-group/src/roving-focus-item.js.map +1 -0
  682. package/lib/components/roving-focus-group/src/roving-focus-item.vue.d.ts +29 -0
  683. package/lib/components/roving-focus-group/src/roving-focus-item.vue_vue_type_script_lang.js +104 -0
  684. package/lib/components/roving-focus-group/src/roving-focus-item.vue_vue_type_script_lang.js.map +1 -0
  685. package/lib/components/roving-focus-group/src/roving-focus-item.vue_vue_type_template_id_5f657dbd_lang.js +22 -0
  686. package/lib/components/roving-focus-group/src/roving-focus-item.vue_vue_type_template_id_5f657dbd_lang.js.map +1 -0
  687. package/lib/components/roving-focus-group/src/tokens.d.ts +27 -0
  688. package/lib/components/roving-focus-group/src/tokens.js +10 -0
  689. package/lib/components/roving-focus-group/src/tokens.js.map +1 -0
  690. package/lib/components/roving-focus-group/src/utils.d.ts +8 -0
  691. package/lib/components/roving-focus-group/src/utils.js +54 -0
  692. package/lib/components/roving-focus-group/src/utils.js.map +1 -0
  693. package/lib/components/select/index.d.ts +680 -14
  694. package/lib/components/select/src/select-dropdown.vue.d.ts +1 -1
  695. package/lib/components/select/src/select-dropdown.vue_vue_type_script_lang.js +1 -0
  696. package/lib/components/select/src/select-dropdown.vue_vue_type_script_lang.js.map +1 -1
  697. package/lib/components/select/src/select-dropdown.vue_vue_type_template_id_46cf6eee_lang.js.map +1 -1
  698. package/lib/components/select/src/select.vue.d.ts +681 -15
  699. package/lib/components/select/src/select.vue_vue_type_script_lang.js +24 -10
  700. package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
  701. package/lib/components/select/src/select.vue_vue_type_template_id_33774f85_lang.js +11 -12
  702. package/lib/components/select/src/select.vue_vue_type_template_id_33774f85_lang.js.map +1 -1
  703. package/lib/components/select/src/token.d.ts +1 -0
  704. package/lib/components/select/src/token.js.map +1 -1
  705. package/lib/components/select/src/useSelect.d.ts +671 -7
  706. package/lib/components/select/src/useSelect.js +33 -23
  707. package/lib/components/select/src/useSelect.js.map +1 -1
  708. package/lib/components/select-v2/index.d.ts +1326 -16
  709. package/lib/components/select-v2/src/select.vue.d.ts +665 -10
  710. package/lib/components/select-v2/src/select.vue_vue_type_script_lang.js +2 -2
  711. package/lib/components/select-v2/src/select.vue_vue_type_script_lang.js.map +1 -1
  712. package/lib/components/select-v2/src/select.vue_vue_type_template_id_13e598a4_lang.js +8 -9
  713. package/lib/components/select-v2/src/select.vue_vue_type_template_id_13e598a4_lang.js.map +1 -1
  714. package/lib/components/select-v2/src/useSelect.d.ts +659 -4
  715. package/lib/components/select-v2/src/useSelect.js +11 -11
  716. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  717. package/lib/components/slider/index.d.ts +22 -6
  718. package/lib/components/slider/src/button.vue_vue_type_script_lang.js +1 -1
  719. package/lib/components/slider/src/button.vue_vue_type_script_lang.js.map +1 -1
  720. package/lib/components/slider/src/index.vue.d.ts +11 -3
  721. package/lib/components/slider/src/index.vue_vue_type_script_lang.js +21 -2
  722. package/lib/components/slider/src/index.vue_vue_type_script_lang.js.map +1 -1
  723. package/lib/components/slider/src/index.vue_vue_type_template_id_24c42d04_lang.js +18 -18
  724. package/lib/components/slider/src/index.vue_vue_type_template_id_24c42d04_lang.js.map +1 -1
  725. package/lib/components/slot/index.d.ts +5 -0
  726. package/lib/components/slot/index.js +10 -0
  727. package/lib/components/{popper/src/renderers → slot}/index.js.map +1 -1
  728. package/lib/components/slot/src/only-child.d.ts +5 -0
  729. package/lib/components/slot/src/only-child.js +65 -0
  730. package/lib/components/slot/src/only-child.js.map +1 -0
  731. package/lib/components/switch/index.d.ts +5 -0
  732. package/lib/components/switch/src/switch.d.ts +2 -0
  733. package/lib/components/switch/src/switch.js +5 -0
  734. package/lib/components/switch/src/switch.js.map +1 -1
  735. package/lib/components/switch/src/switch.vue.d.ts +5 -0
  736. package/lib/components/switch/src/switch.vue_vue_type_script_lang.js +9 -0
  737. package/lib/components/switch/src/switch.vue_vue_type_script_lang.js.map +1 -1
  738. package/lib/components/switch/src/switch.vue_vue_type_template_id_538fbc85_lang.js +1 -1
  739. package/lib/components/switch/src/switch.vue_vue_type_template_id_538fbc85_lang.js.map +1 -1
  740. package/lib/components/table/index.d.ts +13 -4
  741. package/lib/components/table/src/filter-panel.vue.d.ts +654 -4
  742. package/lib/components/table/src/filter-panel.vue_vue_type_script_lang.js +5 -7
  743. package/lib/components/table/src/filter-panel.vue_vue_type_script_lang.js.map +1 -1
  744. package/lib/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.js +8 -9
  745. package/lib/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.js.map +1 -1
  746. package/lib/components/table/src/table/style-helper.d.ts +7 -0
  747. package/lib/components/table/src/table/style-helper.js +20 -21
  748. package/lib/components/table/src/table/style-helper.js.map +1 -1
  749. package/lib/components/table/src/table-body/index.js +5 -3
  750. package/lib/components/table/src/table-body/index.js.map +1 -1
  751. package/lib/components/table/src/table-body/styles-helper.d.ts +0 -1
  752. package/lib/components/table/src/table-body/styles-helper.js +10 -17
  753. package/lib/components/table/src/table-body/styles-helper.js.map +1 -1
  754. package/lib/components/table/src/table-column/defaults.d.ts +1 -0
  755. package/lib/components/table/src/table-column/defaults.js.map +1 -1
  756. package/lib/components/table/src/table-column/index.d.ts +1 -1
  757. package/lib/components/table/src/table-column/index.js +1 -0
  758. package/lib/components/table/src/table-column/index.js.map +1 -1
  759. package/lib/components/table/src/table-footer/index.d.ts +4 -2
  760. package/lib/components/table/src/table-footer/index.js +32 -17
  761. package/lib/components/table/src/table-footer/index.js.map +1 -1
  762. package/lib/components/table/src/table-footer/style-helper.d.ts +4 -2
  763. package/lib/components/table/src/table-footer/style-helper.js +28 -31
  764. package/lib/components/table/src/table-footer/style-helper.js.map +1 -1
  765. package/lib/components/table/src/table-header/index.d.ts +3 -2
  766. package/lib/components/table/src/table-header/index.js +89 -51
  767. package/lib/components/table/src/table-header/index.js.map +1 -1
  768. package/lib/components/table/src/table-header/style.helper.d.ts +1 -1
  769. package/lib/components/table/src/table-header/style.helper.js +14 -24
  770. package/lib/components/table/src/table-header/style.helper.js.map +1 -1
  771. package/lib/components/table/src/table-header/utils-helper.js +1 -0
  772. package/lib/components/table/src/table-header/utils-helper.js.map +1 -1
  773. package/lib/components/table/src/table-layout.d.ts +1 -0
  774. package/lib/components/table/src/table-layout.js +8 -3
  775. package/lib/components/table/src/table-layout.js.map +1 -1
  776. package/lib/components/table/src/table.vue.d.ts +11 -2
  777. package/lib/components/table/src/table.vue_vue_type_script_lang.js +12 -2
  778. package/lib/components/table/src/table.vue_vue_type_script_lang.js.map +1 -1
  779. package/lib/components/table/src/table.vue_vue_type_template_id_4a1660ad_lang.js +62 -213
  780. package/lib/components/table/src/table.vue_vue_type_template_id_4a1660ad_lang.js.map +1 -1
  781. package/lib/components/table/src/util.d.ts +18 -4
  782. package/lib/components/table/src/util.js +104 -5
  783. package/lib/components/table/src/util.js.map +1 -1
  784. package/lib/components/teleport/index.d.ts +11 -8
  785. package/lib/components/teleport/src/teleport.d.ts +4 -3
  786. package/lib/components/teleport/src/teleport.js +5 -1
  787. package/lib/components/teleport/src/teleport.js.map +1 -1
  788. package/lib/components/teleport/src/teleport.vue.d.ts +11 -8
  789. package/lib/components/teleport/src/teleport.vue_vue_type_script_lang.js +1 -2
  790. package/lib/components/teleport/src/teleport.vue_vue_type_script_lang.js.map +1 -1
  791. package/lib/components/teleport/src/teleport.vue_vue_type_template_id_787c6a36_lang.js +3 -2
  792. package/lib/components/teleport/src/teleport.vue_vue_type_template_id_787c6a36_lang.js.map +1 -1
  793. package/lib/components/time-picker/index.d.ts +4 -4
  794. package/lib/components/time-picker/src/common/picker.vue.d.ts +663 -9
  795. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js +33 -21
  796. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js.map +1 -1
  797. package/lib/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.js +37 -37
  798. package/lib/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.js.map +1 -1
  799. package/lib/components/time-picker/src/time-picker.d.ts +2 -2
  800. package/lib/components/time-select/index.d.ts +4 -4
  801. package/lib/components/time-select/src/time-select.vue.d.ts +2 -2
  802. package/lib/components/tooltip/index.d.ts +346 -430
  803. package/lib/components/tooltip/index.js +9 -7
  804. package/lib/components/tooltip/index.js.map +1 -1
  805. package/lib/components/tooltip/src/content.js +12 -0
  806. package/lib/components/tooltip/src/content.js.map +1 -0
  807. package/lib/components/tooltip/src/content.vue.d.ts +809 -0
  808. package/lib/components/tooltip/src/content.vue_vue_type_script_lang.js +139 -0
  809. package/lib/components/tooltip/src/content.vue_vue_type_script_lang.js.map +1 -0
  810. package/lib/components/tooltip/src/content.vue_vue_type_template_id_20254f8d_lang.js +69 -0
  811. package/lib/components/tooltip/src/content.vue_vue_type_template_id_20254f8d_lang.js.map +1 -0
  812. package/lib/components/tooltip/src/tokens.d.ts +14 -0
  813. package/lib/components/tooltip/src/tokens.js +8 -0
  814. package/lib/components/tooltip/src/tokens.js.map +1 -0
  815. package/lib/components/tooltip/src/tooltip.d.ts +146 -0
  816. package/lib/components/tooltip/src/tooltip.js +69 -0
  817. package/lib/components/tooltip/src/tooltip.js.map +1 -0
  818. package/lib/components/tooltip/src/tooltip.vue.d.ts +383 -0
  819. package/lib/components/tooltip/src/tooltip.vue_vue_type_script_lang.js +108 -0
  820. package/lib/components/tooltip/src/tooltip.vue_vue_type_script_lang.js.map +1 -0
  821. package/lib/components/tooltip/src/tooltip.vue_vue_type_template_id_694d1617_lang.js +71 -0
  822. package/lib/components/tooltip/src/tooltip.vue_vue_type_template_id_694d1617_lang.js.map +1 -0
  823. package/lib/components/tooltip/src/tooltip2.js +12 -0
  824. package/lib/components/tooltip/src/tooltip2.js.map +1 -0
  825. package/lib/components/tooltip/src/trigger.js +12 -0
  826. package/lib/components/tooltip/src/trigger.js.map +1 -0
  827. package/lib/components/tooltip/src/trigger.vue.d.ts +39 -0
  828. package/lib/components/tooltip/src/trigger.vue_vue_type_script_lang.js +64 -0
  829. package/lib/components/tooltip/src/trigger.vue_vue_type_script_lang.js.map +1 -0
  830. package/lib/components/tooltip/src/trigger.vue_vue_type_template_id_0ec0b94c_lang.js +31 -0
  831. package/lib/components/tooltip/src/trigger.vue_vue_type_template_id_0ec0b94c_lang.js.map +1 -0
  832. package/lib/components/tooltip/src/utils.d.ts +4 -0
  833. package/lib/components/tooltip/src/utils.js +23 -0
  834. package/lib/components/tooltip/src/utils.js.map +1 -0
  835. package/lib/components/tree/index.d.ts +4 -4
  836. package/lib/components/tree/src/tree.vue.d.ts +2 -2
  837. package/lib/components/tree-v2/src/tree-node.vue.d.ts +1 -1
  838. package/lib/components/virtual-list/src/builders/build-list.d.ts +1 -1
  839. package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +1 -1
  840. package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +1 -1
  841. package/lib/components/visual-hidden/index.d.ts +3 -0
  842. package/lib/components/visual-hidden/index.js +12 -0
  843. package/lib/components/visual-hidden/index.js.map +1 -0
  844. package/lib/components/visual-hidden/src/visual-hidden.js +12 -0
  845. package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -0
  846. package/lib/components/visual-hidden/src/visual-hidden.vue.d.ts +12 -0
  847. package/lib/components/visual-hidden/src/visual-hidden.vue_vue_type_script_lang.js +38 -0
  848. package/lib/components/visual-hidden/src/visual-hidden.vue_vue_type_script_lang.js.map +1 -0
  849. package/lib/components/visual-hidden/src/visual-hidden.vue_vue_type_template_id_4cbd1102_lang.js +12 -0
  850. package/lib/components/visual-hidden/src/visual-hidden.vue_vue_type_template_id_4cbd1102_lang.js.map +1 -0
  851. package/lib/directives/click-outside/index.js.map +1 -1
  852. package/lib/hooks/index.d.ts +8 -1
  853. package/lib/hooks/index.js +36 -20
  854. package/lib/hooks/index.js.map +1 -1
  855. package/lib/hooks/use-delayed-toggle/index.d.ts +13 -0
  856. package/lib/hooks/use-delayed-toggle/index.js +44 -0
  857. package/lib/hooks/use-delayed-toggle/index.js.map +1 -0
  858. package/lib/hooks/use-escape-keydown/index.d.ts +1 -0
  859. package/lib/hooks/use-escape-keydown/index.js +25 -0
  860. package/lib/hooks/use-escape-keydown/index.js.map +1 -0
  861. package/lib/hooks/use-focus/index.d.ts +3 -1
  862. package/lib/hooks/use-focus/index.js.map +1 -1
  863. package/lib/hooks/use-forward-ref/index.d.ts +13 -0
  864. package/lib/hooks/use-forward-ref/index.js +33 -0
  865. package/lib/hooks/use-forward-ref/index.js.map +1 -0
  866. package/lib/hooks/use-id/index.d.ts +8 -0
  867. package/lib/hooks/use-id/index.js +29 -0
  868. package/lib/hooks/use-id/index.js.map +1 -0
  869. package/lib/hooks/use-intermediate-render/index.d.ts +11 -0
  870. package/lib/hooks/use-intermediate-render/index.js +47 -0
  871. package/lib/hooks/use-intermediate-render/index.js.map +1 -0
  872. package/lib/hooks/use-model-toggle/index.d.ts +18 -9
  873. package/lib/hooks/use-model-toggle/index.js +102 -91
  874. package/lib/hooks/use-model-toggle/index.js.map +1 -1
  875. package/lib/hooks/use-popper-container/index.d.ts +3 -0
  876. package/lib/hooks/use-popper-container/index.js +28 -0
  877. package/lib/hooks/use-popper-container/index.js.map +1 -0
  878. package/lib/hooks/use-restore-active/index.js +1 -1
  879. package/lib/hooks/use-restore-active/index.js.map +1 -1
  880. package/lib/index.js +167 -143
  881. package/lib/index.js.map +1 -1
  882. package/lib/utils/aria.d.ts +4 -0
  883. package/lib/utils/aria.js +5 -1
  884. package/lib/utils/aria.js.map +1 -1
  885. package/lib/utils/dom.d.ts +9 -1
  886. package/lib/utils/dom.js +30 -0
  887. package/lib/utils/dom.js.map +1 -1
  888. package/lib/utils/props.d.ts +2 -2
  889. package/lib/utils/props.js +1 -1
  890. package/lib/utils/props.js.map +1 -1
  891. package/lib/version.d.ts +1 -1
  892. package/lib/version.js +1 -1
  893. package/lib/version.js.map +1 -1
  894. package/package.json +2 -2
  895. package/tags.json +1 -1
  896. package/theme-chalk/base.css +1 -1
  897. package/theme-chalk/el-checkbox.css +1 -1
  898. package/theme-chalk/el-collapse.css +1 -1
  899. package/theme-chalk/el-date-picker.css +1 -1
  900. package/theme-chalk/el-dropdown.css +1 -1
  901. package/theme-chalk/el-menu.css +1 -1
  902. package/theme-chalk/el-radio.css +1 -1
  903. package/theme-chalk/el-rate.css +1 -1
  904. package/theme-chalk/el-select-v2.css +1 -1
  905. package/theme-chalk/el-slider.css +1 -1
  906. package/theme-chalk/el-switch.css +1 -1
  907. package/theme-chalk/el-table-column.css +1 -1
  908. package/theme-chalk/el-table.css +1 -1
  909. package/theme-chalk/el-time-picker.css +1 -1
  910. package/theme-chalk/el-time-select.css +1 -1
  911. package/theme-chalk/el-tree.css +1 -1
  912. package/theme-chalk/index.css +1 -1
  913. package/theme-chalk/src/checkbox.scss +40 -6
  914. package/theme-chalk/src/common/transition.scss +8 -0
  915. package/theme-chalk/src/common/var.scss +0 -2
  916. package/theme-chalk/src/date-picker/picker-panel.scss +1 -1
  917. package/theme-chalk/src/dropdown.scss +1 -2
  918. package/theme-chalk/src/radio.scss +21 -0
  919. package/theme-chalk/src/rate.scss +19 -2
  920. package/theme-chalk/src/select-v2.scss +2 -3
  921. package/theme-chalk/src/slider.scss +28 -77
  922. package/theme-chalk/src/switch.scss +43 -4
  923. package/theme-chalk/src/table-column.scss +0 -1
  924. package/theme-chalk/src/table.scss +176 -124
  925. package/web-types.json +1 -1
  926. package/es/components/popover/src/usePopover.d.ts +0 -32
  927. package/es/components/popover/src/usePopover.mjs +0 -38
  928. package/es/components/popover/src/usePopover.mjs.map +0 -1
  929. package/es/components/popper/src/index.mjs +0 -5
  930. package/es/components/popper/src/index.vue.d.ts +0 -1737
  931. package/es/components/popper/src/index.vue_vue_type_script_lang.mjs +0 -103
  932. package/es/components/popper/src/index.vue_vue_type_script_lang.mjs.map +0 -1
  933. package/es/components/popper/src/renderers/arrow.d.ts +0 -3
  934. package/es/components/popper/src/renderers/arrow.mjs +0 -12
  935. package/es/components/popper/src/renderers/arrow.mjs.map +0 -1
  936. package/es/components/popper/src/renderers/index.d.ts +0 -3
  937. package/es/components/popper/src/renderers/index.mjs +0 -4
  938. package/es/components/popper/src/renderers/popper.d.ts +0 -23
  939. package/es/components/popper/src/renderers/popper.mjs +0 -51
  940. package/es/components/popper/src/renderers/popper.mjs.map +0 -1
  941. package/es/components/popper/src/renderers/trigger.d.ts +0 -13
  942. package/es/components/popper/src/renderers/trigger.mjs +0 -13
  943. package/es/components/popper/src/renderers/trigger.mjs.map +0 -1
  944. package/es/components/popper/src/use-popper/build-modifiers.d.ts +0 -10
  945. package/es/components/popper/src/use-popper/build-modifiers.mjs +0 -50
  946. package/es/components/popper/src/use-popper/build-modifiers.mjs.map +0 -1
  947. package/es/components/popper/src/use-popper/defaults.d.ts +0 -142
  948. package/es/components/popper/src/use-popper/defaults.mjs +0 -116
  949. package/es/components/popper/src/use-popper/defaults.mjs.map +0 -1
  950. package/es/components/popper/src/use-popper/index.d.ts +0 -1554
  951. package/es/components/popper/src/use-popper/index.mjs +0 -235
  952. package/es/components/popper/src/use-popper/index.mjs.map +0 -1
  953. package/es/components/popper/src/use-popper/popper-options.d.ts +0 -20
  954. package/es/components/popper/src/use-popper/popper-options.mjs +0 -22
  955. package/es/components/popper/src/use-popper/popper-options.mjs.map +0 -1
  956. package/es/components/tooltip/src/index.d.ts +0 -240
  957. package/es/components/tooltip/src/index.mjs +0 -101
  958. package/es/components/tooltip/src/index.mjs.map +0 -1
  959. package/es/hooks/use-popper/index.d.ts +0 -103
  960. package/es/hooks/use-popper/index.mjs +0 -256
  961. package/es/hooks/use-popper/index.mjs.map +0 -1
  962. package/es/hooks/use-popper/use-popper-options.d.ts +0 -49
  963. package/es/hooks/use-popper/use-popper-options.mjs +0 -47
  964. package/es/hooks/use-popper/use-popper-options.mjs.map +0 -1
  965. package/es/hooks/use-popper/use-target-events.d.ts +0 -13
  966. package/es/hooks/use-popper/use-target-events.mjs +0 -68
  967. package/es/hooks/use-popper/use-target-events.mjs.map +0 -1
  968. package/lib/components/popover/src/usePopover.d.ts +0 -32
  969. package/lib/components/popover/src/usePopover.js +0 -44
  970. package/lib/components/popover/src/usePopover.js.map +0 -1
  971. package/lib/components/popper/src/index.js +0 -10
  972. package/lib/components/popper/src/index.vue.d.ts +0 -1737
  973. package/lib/components/popper/src/index.vue_vue_type_script_lang.js +0 -107
  974. package/lib/components/popper/src/index.vue_vue_type_script_lang.js.map +0 -1
  975. package/lib/components/popper/src/renderers/arrow.d.ts +0 -3
  976. package/lib/components/popper/src/renderers/arrow.js +0 -16
  977. package/lib/components/popper/src/renderers/arrow.js.map +0 -1
  978. package/lib/components/popper/src/renderers/index.d.ts +0 -3
  979. package/lib/components/popper/src/renderers/index.js +0 -14
  980. package/lib/components/popper/src/renderers/popper.d.ts +0 -23
  981. package/lib/components/popper/src/renderers/popper.js +0 -55
  982. package/lib/components/popper/src/renderers/popper.js.map +0 -1
  983. package/lib/components/popper/src/renderers/trigger.d.ts +0 -13
  984. package/lib/components/popper/src/renderers/trigger.js +0 -17
  985. package/lib/components/popper/src/renderers/trigger.js.map +0 -1
  986. package/lib/components/popper/src/use-popper/build-modifiers.d.ts +0 -10
  987. package/lib/components/popper/src/use-popper/build-modifiers.js +0 -54
  988. package/lib/components/popper/src/use-popper/build-modifiers.js.map +0 -1
  989. package/lib/components/popper/src/use-popper/defaults.d.ts +0 -142
  990. package/lib/components/popper/src/use-popper/defaults.js +0 -121
  991. package/lib/components/popper/src/use-popper/defaults.js.map +0 -1
  992. package/lib/components/popper/src/use-popper/index.d.ts +0 -1554
  993. package/lib/components/popper/src/use-popper/index.js +0 -242
  994. package/lib/components/popper/src/use-popper/index.js.map +0 -1
  995. package/lib/components/popper/src/use-popper/popper-options.d.ts +0 -20
  996. package/lib/components/popper/src/use-popper/popper-options.js +0 -26
  997. package/lib/components/popper/src/use-popper/popper-options.js.map +0 -1
  998. package/lib/components/tooltip/src/index.d.ts +0 -240
  999. package/lib/components/tooltip/src/index.js +0 -105
  1000. package/lib/components/tooltip/src/index.js.map +0 -1
  1001. package/lib/hooks/use-popper/index.d.ts +0 -103
  1002. package/lib/hooks/use-popper/index.js +0 -264
  1003. package/lib/hooks/use-popper/index.js.map +0 -1
  1004. package/lib/hooks/use-popper/use-popper-options.d.ts +0 -49
  1005. package/lib/hooks/use-popper/use-popper-options.js +0 -53
  1006. package/lib/hooks/use-popper/use-popper-options.js.map +0 -1
  1007. package/lib/hooks/use-popper/use-target-events.d.ts +0 -13
  1008. package/lib/hooks/use-popper/use-target-events.js +0 -73
  1009. package/lib/hooks/use-popper/use-target-events.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"menu.js","sources":["../../../../../../packages/components/menu/src/menu.ts"],"sourcesContent":["import {\n defineComponent,\n getCurrentInstance,\n watch,\n computed,\n ref,\n provide,\n onMounted,\n h,\n withDirectives,\n reactive,\n nextTick,\n} from 'vue'\nimport { Resize } from '@element-plus/directives'\nimport ElIcon from '@element-plus/components/icon'\nimport { More } from '@element-plus/icons-vue'\nimport Menubar from '@element-plus/utils/menu/menu-bar'\nimport { buildProps, definePropType, mutable } from '@element-plus/utils/props'\nimport { isString, isObject } from '@element-plus/utils/util'\nimport ElMenuCollapseTransition from './menu-collapse-transition.vue'\nimport ElSubMenu from './sub-menu'\nimport { useMenuCssVar } from './use-menu-css-var'\n\nimport type { MenuItemClicked, MenuProvider, SubMenuProvider } from './types'\nimport type { NavigationFailure, Router } from 'vue-router'\nimport type { VNode, ExtractPropTypes, VNodeNormalizedChildren } from 'vue'\n\nexport const menuProps = buildProps({\n mode: {\n type: String,\n values: ['horizontal', 'vertical'],\n default: 'vertical',\n },\n defaultActive: {\n type: String,\n default: '',\n },\n defaultOpeneds: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n uniqueOpened: Boolean,\n router: Boolean,\n menuTrigger: {\n type: String,\n values: ['hover', 'click'],\n default: 'hover',\n },\n collapse: Boolean,\n backgroundColor: String,\n textColor: String,\n activeTextColor: String,\n collapseTransition: {\n type: Boolean,\n default: true,\n },\n ellipsis: {\n type: Boolean,\n default: true,\n },\n} as const)\nexport type MenuProps = ExtractPropTypes<typeof menuProps>\n\nconst checkIndexPath = (indexPath: unknown): indexPath is string[] =>\n Array.isArray(indexPath) && indexPath.every((path) => isString(path))\n\nexport const menuEmits = {\n close: (index: string, indexPath: string[]) =>\n isString(index) && checkIndexPath(indexPath),\n\n open: (index: string, indexPath: string[]) =>\n isString(index) && checkIndexPath(indexPath),\n\n select: (\n index: string,\n indexPath: string[],\n item: MenuItemClicked,\n routerResult?: Promise<void | NavigationFailure>\n ) =>\n isString(index) &&\n checkIndexPath(indexPath) &&\n isObject(item) &&\n (routerResult === undefined || routerResult instanceof Promise),\n}\nexport type MenuEmits = typeof menuEmits\n\nexport default defineComponent({\n name: 'ElMenu',\n\n props: menuProps,\n emits: menuEmits,\n\n setup(props, { emit, slots, expose }) {\n const instance = getCurrentInstance()!\n const router = instance.appContext.config.globalProperties.$router as Router\n const menu = ref<HTMLUListElement>()\n\n // data\n const openedMenus = ref<MenuProvider['openedMenus']>(\n props.defaultOpeneds && !props.collapse\n ? props.defaultOpeneds.slice(0)\n : []\n )\n const activeIndex = ref<MenuProvider['activeIndex']>(props.defaultActive)\n const items = ref<MenuProvider['items']>({})\n const subMenus = ref<MenuProvider['subMenus']>({})\n\n const alteredCollapse = ref(false)\n\n // computed\n const isMenuPopup = computed<MenuProvider['isMenuPopup']>(() => {\n return (\n props.mode === 'horizontal' ||\n (props.mode === 'vertical' && props.collapse)\n )\n })\n\n // methods\n const initMenu = () => {\n const activeItem = activeIndex.value && items.value[activeIndex.value]\n if (!activeItem || props.mode === 'horizontal' || props.collapse) return\n\n const indexPath = activeItem.indexPath\n\n // 展开该菜单项的路径上所有子菜单\n // expand all subMenus of the menu item\n indexPath.forEach((index) => {\n const subMenu = subMenus.value[index]\n subMenu && openMenu(index, subMenu.indexPath)\n })\n }\n\n const openMenu: MenuProvider['openMenu'] = (index, indexPath) => {\n if (openedMenus.value.includes(index)) return\n // 将不在该菜单路径下的其余菜单收起\n // collapse all menu that are not under current menu item\n if (props.uniqueOpened) {\n openedMenus.value = openedMenus.value.filter((index: string) =>\n indexPath.includes(index)\n )\n }\n openedMenus.value.push(index)\n emit('open', index, indexPath)\n }\n\n const closeMenu: MenuProvider['closeMenu'] = (index, indexPath) => {\n const i = openedMenus.value.indexOf(index)\n if (i !== -1) {\n openedMenus.value.splice(i, 1)\n }\n emit('close', index, indexPath)\n }\n\n const handleSubMenuClick: MenuProvider['handleSubMenuClick'] = ({\n index,\n indexPath,\n }) => {\n const isOpened = openedMenus.value.includes(index)\n\n if (isOpened) {\n closeMenu(index, indexPath)\n } else {\n openMenu(index, indexPath)\n }\n }\n\n const handleMenuItemClick: MenuProvider['handleMenuItemClick'] = (\n menuItem\n ) => {\n if (props.mode === 'horizontal' || props.collapse) {\n openedMenus.value = []\n }\n\n const { index, indexPath } = menuItem\n if (index === undefined || indexPath === undefined) return\n\n if (props.router && router) {\n const route = menuItem.route || index\n const routerResult = router.push(route).then((res) => {\n if (!res) activeIndex.value = index\n return res\n })\n emit(\n 'select',\n index,\n indexPath,\n { index, indexPath, route },\n routerResult\n )\n } else {\n activeIndex.value = index\n emit('select', index, indexPath, { index, indexPath })\n }\n }\n\n const updateActiveIndex = (val: string) => {\n const itemsInData = items.value\n const item =\n itemsInData[val] ||\n (activeIndex.value && itemsInData[activeIndex.value]) ||\n itemsInData[props.defaultActive]\n\n if (item) {\n activeIndex.value = item.index\n initMenu()\n } else {\n // Can't find item when collapsing\n // and activeIndex shouldn't be changed when 'collapse' was changed.\n // Then reset 'alteredCollapse' immediately.\n if (!alteredCollapse.value) {\n activeIndex.value = undefined\n } else {\n alteredCollapse.value = false\n }\n }\n }\n const handleResize = () => {\n nextTick(() => instance.proxy!.$forceUpdate())\n }\n\n watch(\n () => props.defaultActive,\n (currentActive) => {\n if (!items.value[currentActive]) {\n activeIndex.value = ''\n }\n updateActiveIndex(currentActive)\n }\n )\n\n watch(items.value, () => initMenu())\n\n watch(\n () => props.collapse,\n (value, prev) => {\n if (value !== prev) {\n alteredCollapse.value = true\n }\n if (value) openedMenus.value = []\n }\n )\n\n // provide\n {\n const addSubMenu: MenuProvider['addSubMenu'] = (item) => {\n subMenus.value[item.index] = item\n }\n\n const removeSubMenu: MenuProvider['removeSubMenu'] = (item) => {\n delete subMenus.value[item.index]\n }\n\n const addMenuItem: MenuProvider['addMenuItem'] = (item) => {\n items.value[item.index] = item\n }\n\n const removeMenuItem: MenuProvider['removeMenuItem'] = (item) => {\n delete items.value[item.index]\n }\n provide<MenuProvider>(\n 'rootMenu',\n reactive({\n props,\n openedMenus,\n items,\n subMenus,\n activeIndex,\n isMenuPopup,\n\n addMenuItem,\n removeMenuItem,\n addSubMenu,\n removeSubMenu,\n openMenu,\n closeMenu,\n handleMenuItemClick,\n handleSubMenuClick,\n })\n )\n provide<SubMenuProvider>(`subMenu:${instance.uid}`, {\n addSubMenu,\n removeSubMenu,\n })\n }\n\n // lifecycle\n onMounted(() => {\n initMenu()\n if (props.mode === 'horizontal') {\n new Menubar(instance.vnode.el!)\n }\n })\n\n {\n const open = (index: string) => {\n const { indexPath } = subMenus.value[index]\n indexPath.forEach((i) => openMenu(i, indexPath))\n }\n expose({\n open,\n close: closeMenu,\n handleResize,\n })\n }\n\n const flattedChildren = (children: VNodeNormalizedChildren) => {\n const vnodes = Array.isArray(children) ? children : [children]\n const result: any[] = []\n vnodes.forEach((child: any) => {\n if (Array.isArray(child.children)) {\n result.push(...flattedChildren(child.children))\n } else {\n result.push(child)\n }\n })\n return result\n }\n\n const useVNodeResize = (vnode: VNode) =>\n props.mode === 'horizontal'\n ? withDirectives(vnode, [[Resize, handleResize]])\n : vnode\n return () => {\n let slot = slots.default?.() ?? []\n const vShowMore: VNode[] = []\n\n if (props.mode === 'horizontal' && menu.value) {\n const items = Array.from(menu.value?.childNodes ?? []).filter(\n (item) => item.nodeName !== '#text' || item.nodeValue\n ) as HTMLElement[]\n const originalSlot = flattedChildren(slot)\n const moreItemWidth = 64\n const paddingLeft = parseInt(\n getComputedStyle(menu.value).paddingLeft,\n 10\n )\n const paddingRight = parseInt(\n getComputedStyle(menu.value).paddingRight,\n 10\n )\n const menuWidth = menu.value.clientWidth - paddingLeft - paddingRight\n let calcWidth = 0\n let sliceIndex = 0\n items.forEach((item, index) => {\n calcWidth += item.offsetWidth || 0\n if (calcWidth <= menuWidth - moreItemWidth) {\n sliceIndex = index + 1\n }\n })\n const slotDefault = originalSlot.slice(0, sliceIndex)\n const slotMore = originalSlot.slice(sliceIndex)\n if (slotMore?.length && props.ellipsis) {\n slot = slotDefault\n vShowMore.push(\n h(\n ElSubMenu,\n {\n index: 'sub-menu-more',\n class: 'el-sub-menu__hide-arrow',\n },\n {\n title: () =>\n h(\n ElIcon,\n {\n class: ['el-sub-menu__icon-more'],\n },\n { default: () => h(More) }\n ),\n default: () => slotMore,\n }\n )\n )\n }\n }\n\n const ulStyle = useMenuCssVar(props)\n\n const resizeMenu = (vNode: VNode) =>\n props.ellipsis ? useVNodeResize(vNode) : vNode\n\n const vMenu = resizeMenu(\n h(\n 'ul',\n {\n key: String(props.collapse),\n role: 'menubar',\n ref: menu,\n style: ulStyle.value,\n class: {\n 'el-menu': true,\n 'el-menu--horizontal': props.mode === 'horizontal',\n 'el-menu--collapse': props.collapse,\n },\n },\n [...slot.map((vnode) => resizeMenu(vnode)), ...vShowMore]\n )\n )\n\n if (props.collapseTransition && props.mode === 'vertical') {\n return h(ElMenuCollapseTransition, () => vMenu)\n }\n\n return vMenu\n }\n },\n})\n"],"names":["buildProps","definePropType","mutable","isString","isObject","defineComponent","getCurrentInstance","ref","computed","nextTick","watch","provide","reactive","onMounted","Menubar","withDirectives","Resize","h","ElSubMenu","ElIcon","More","useMenuCssVar","ElMenuCollapseTransition"],"mappings":"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"}
1
+ {"version":3,"file":"menu.js","sources":["../../../../../../packages/components/menu/src/menu.ts"],"sourcesContent":["import {\n defineComponent,\n getCurrentInstance,\n watch,\n computed,\n ref,\n provide,\n onMounted,\n h,\n withDirectives,\n reactive,\n nextTick,\n} from 'vue'\nimport { Resize } from '@element-plus/directives'\nimport ElIcon from '@element-plus/components/icon'\nimport { More } from '@element-plus/icons-vue'\nimport Menubar from '@element-plus/utils/menu/menu-bar'\nimport { buildProps, definePropType, mutable } from '@element-plus/utils/props'\nimport { isString, isObject } from '@element-plus/utils/util'\nimport ElMenuCollapseTransition from './menu-collapse-transition.vue'\nimport ElSubMenu from './sub-menu'\nimport { useMenuCssVar } from './use-menu-css-var'\n\nimport type { MenuItemClicked, MenuProvider, SubMenuProvider } from './types'\nimport type { NavigationFailure, Router } from 'vue-router'\nimport type { VNode, ExtractPropTypes, VNodeNormalizedChildren } from 'vue'\n\nexport const menuProps = buildProps({\n mode: {\n type: String,\n values: ['horizontal', 'vertical'],\n default: 'vertical',\n },\n defaultActive: {\n type: String,\n default: '',\n },\n defaultOpeneds: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n uniqueOpened: Boolean,\n router: Boolean,\n menuTrigger: {\n type: String,\n values: ['hover', 'click'],\n default: 'hover',\n },\n collapse: Boolean,\n backgroundColor: String,\n textColor: String,\n activeTextColor: String,\n collapseTransition: {\n type: Boolean,\n default: true,\n },\n ellipsis: {\n type: Boolean,\n default: true,\n },\n} as const)\nexport type MenuProps = ExtractPropTypes<typeof menuProps>\n\nconst checkIndexPath = (indexPath: unknown): indexPath is string[] =>\n Array.isArray(indexPath) && indexPath.every((path) => isString(path))\n\nexport const menuEmits = {\n close: (index: string, indexPath: string[]) =>\n isString(index) && checkIndexPath(indexPath),\n\n open: (index: string, indexPath: string[]) =>\n isString(index) && checkIndexPath(indexPath),\n\n select: (\n index: string,\n indexPath: string[],\n item: MenuItemClicked,\n routerResult?: Promise<void | NavigationFailure>\n ) =>\n isString(index) &&\n checkIndexPath(indexPath) &&\n isObject(item) &&\n (routerResult === undefined || routerResult instanceof Promise),\n}\nexport type MenuEmits = typeof menuEmits\n\nexport default defineComponent({\n name: 'ElMenu',\n\n props: menuProps,\n emits: menuEmits,\n\n setup(props, { emit, slots, expose }) {\n const instance = getCurrentInstance()!\n const router = instance.appContext.config.globalProperties.$router as Router\n const menu = ref<HTMLUListElement>()\n\n // data\n const openedMenus = ref<MenuProvider['openedMenus']>(\n props.defaultOpeneds && !props.collapse\n ? props.defaultOpeneds.slice(0)\n : []\n )\n const activeIndex = ref<MenuProvider['activeIndex']>(props.defaultActive)\n const items = ref<MenuProvider['items']>({})\n const subMenus = ref<MenuProvider['subMenus']>({})\n\n const alteredCollapse = ref(false)\n\n // computed\n const isMenuPopup = computed<MenuProvider['isMenuPopup']>(() => {\n return (\n props.mode === 'horizontal' ||\n (props.mode === 'vertical' && props.collapse)\n )\n })\n\n // methods\n const initMenu = () => {\n const activeItem = activeIndex.value && items.value[activeIndex.value]\n if (!activeItem || props.mode === 'horizontal' || props.collapse) return\n\n const indexPath = activeItem.indexPath\n\n // 展开该菜单项的路径上所有子菜单\n // expand all subMenus of the menu item\n indexPath.forEach((index) => {\n const subMenu = subMenus.value[index]\n subMenu && openMenu(index, subMenu.indexPath)\n })\n }\n\n const openMenu: MenuProvider['openMenu'] = (index, indexPath) => {\n if (openedMenus.value.includes(index)) return\n // 将不在该菜单路径下的其余菜单收起\n // collapse all menu that are not under current menu item\n if (props.uniqueOpened) {\n openedMenus.value = openedMenus.value.filter((index: string) =>\n indexPath.includes(index)\n )\n }\n openedMenus.value.push(index)\n emit('open', index, indexPath)\n }\n\n const closeMenu: MenuProvider['closeMenu'] = (index, indexPath) => {\n const i = openedMenus.value.indexOf(index)\n if (i !== -1) {\n openedMenus.value.splice(i, 1)\n }\n emit('close', index, indexPath)\n }\n\n const handleSubMenuClick: MenuProvider['handleSubMenuClick'] = ({\n index,\n indexPath,\n }) => {\n const isOpened = openedMenus.value.includes(index)\n\n if (isOpened) {\n closeMenu(index, indexPath)\n } else {\n openMenu(index, indexPath)\n }\n }\n\n const handleMenuItemClick: MenuProvider['handleMenuItemClick'] = (\n menuItem\n ) => {\n if (props.mode === 'horizontal' || props.collapse) {\n openedMenus.value = []\n }\n\n const { index, indexPath } = menuItem\n if (index === undefined || indexPath === undefined) return\n\n if (props.router && router) {\n const route = menuItem.route || index\n const routerResult = router.push(route).then((res) => {\n if (!res) activeIndex.value = index\n return res\n })\n emit(\n 'select',\n index,\n indexPath,\n { index, indexPath, route },\n routerResult\n )\n } else {\n activeIndex.value = index\n emit('select', index, indexPath, { index, indexPath })\n }\n }\n\n const updateActiveIndex = (val: string) => {\n const itemsInData = items.value\n const item =\n itemsInData[val] ||\n (activeIndex.value && itemsInData[activeIndex.value]) ||\n itemsInData[props.defaultActive]\n\n if (item) {\n activeIndex.value = item.index\n initMenu()\n } else {\n // Can't find item when collapsing\n // and activeIndex shouldn't be changed when 'collapse' was changed.\n // Then reset 'alteredCollapse' immediately.\n if (!alteredCollapse.value) {\n activeIndex.value = undefined\n } else {\n alteredCollapse.value = false\n }\n }\n }\n const handleResize = () => {\n nextTick(() => instance.proxy!.$forceUpdate())\n }\n\n watch(\n () => props.defaultActive,\n (currentActive) => {\n if (!items.value[currentActive]) {\n activeIndex.value = ''\n }\n updateActiveIndex(currentActive)\n }\n )\n\n watch(items.value, () => initMenu())\n\n watch(\n () => props.collapse,\n (value, prev) => {\n if (value !== prev) {\n alteredCollapse.value = true\n }\n if (value) openedMenus.value = []\n }\n )\n\n // provide\n {\n const addSubMenu: MenuProvider['addSubMenu'] = (item) => {\n subMenus.value[item.index] = item\n }\n\n const removeSubMenu: MenuProvider['removeSubMenu'] = (item) => {\n delete subMenus.value[item.index]\n }\n\n const addMenuItem: MenuProvider['addMenuItem'] = (item) => {\n items.value[item.index] = item\n }\n\n const removeMenuItem: MenuProvider['removeMenuItem'] = (item) => {\n delete items.value[item.index]\n }\n provide<MenuProvider>(\n 'rootMenu',\n reactive({\n props,\n openedMenus,\n items,\n subMenus,\n activeIndex,\n isMenuPopup,\n\n addMenuItem,\n removeMenuItem,\n addSubMenu,\n removeSubMenu,\n openMenu,\n closeMenu,\n handleMenuItemClick,\n handleSubMenuClick,\n })\n )\n provide<SubMenuProvider>(`subMenu:${instance.uid}`, {\n addSubMenu,\n removeSubMenu,\n mouseInChild: ref(false),\n })\n }\n\n // lifecycle\n onMounted(() => {\n initMenu()\n if (props.mode === 'horizontal') {\n new Menubar(instance.vnode.el!)\n }\n })\n\n {\n const open = (index: string) => {\n const { indexPath } = subMenus.value[index]\n indexPath.forEach((i) => openMenu(i, indexPath))\n }\n expose({\n open,\n close: closeMenu,\n handleResize,\n })\n }\n\n const flattedChildren = (children: VNodeNormalizedChildren) => {\n const vnodes = Array.isArray(children) ? children : [children]\n const result: any[] = []\n vnodes.forEach((child: any) => {\n if (Array.isArray(child.children)) {\n result.push(...flattedChildren(child.children))\n } else {\n result.push(child)\n }\n })\n return result\n }\n\n const useVNodeResize = (vnode: VNode) =>\n props.mode === 'horizontal'\n ? withDirectives(vnode, [[Resize, handleResize]])\n : vnode\n return () => {\n let slot = slots.default?.() ?? []\n const vShowMore: VNode[] = []\n\n if (props.mode === 'horizontal' && menu.value) {\n const items = Array.from(menu.value?.childNodes ?? []).filter(\n (item) => item.nodeName !== '#text' || item.nodeValue\n ) as HTMLElement[]\n const originalSlot = flattedChildren(slot)\n const moreItemWidth = 64\n const paddingLeft = parseInt(\n getComputedStyle(menu.value).paddingLeft,\n 10\n )\n const paddingRight = parseInt(\n getComputedStyle(menu.value).paddingRight,\n 10\n )\n const menuWidth = menu.value.clientWidth - paddingLeft - paddingRight\n let calcWidth = 0\n let sliceIndex = 0\n items.forEach((item, index) => {\n calcWidth += item.offsetWidth || 0\n if (calcWidth <= menuWidth - moreItemWidth) {\n sliceIndex = index + 1\n }\n })\n const slotDefault = originalSlot.slice(0, sliceIndex)\n const slotMore = originalSlot.slice(sliceIndex)\n if (slotMore?.length && props.ellipsis) {\n slot = slotDefault\n vShowMore.push(\n h(\n ElSubMenu,\n {\n index: 'sub-menu-more',\n class: 'el-sub-menu__hide-arrow',\n },\n {\n title: () =>\n h(\n ElIcon,\n {\n class: ['el-sub-menu__icon-more'],\n },\n { default: () => h(More) }\n ),\n default: () => slotMore,\n }\n )\n )\n }\n }\n\n const ulStyle = useMenuCssVar(props)\n\n const resizeMenu = (vNode: VNode) =>\n props.ellipsis ? useVNodeResize(vNode) : vNode\n\n const vMenu = resizeMenu(\n h(\n 'ul',\n {\n key: String(props.collapse),\n role: 'menubar',\n ref: menu,\n style: ulStyle.value,\n class: {\n 'el-menu': true,\n 'el-menu--horizontal': props.mode === 'horizontal',\n 'el-menu--collapse': props.collapse,\n },\n },\n [...slot.map((vnode) => resizeMenu(vnode)), ...vShowMore]\n )\n )\n\n if (props.collapseTransition && props.mode === 'vertical') {\n return h(ElMenuCollapseTransition, () => vMenu)\n }\n\n return vMenu\n }\n },\n})\n"],"names":["buildProps","definePropType","mutable","isString","isObject","defineComponent","getCurrentInstance","ref","computed","nextTick","watch","provide","reactive","onMounted","Menubar","withDirectives","Resize","h","ElSubMenu","ElIcon","More","useMenuCssVar","ElMenuCollapseTransition"],"mappings":"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"}
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var vue = require('vue');
6
6
  var core = require('@vueuse/core');
7
7
  var index$2 = require('../../collapse-transition/index.js');
8
- var index$1 = require('../../popper/index.js');
8
+ var index$1 = require('../../tooltip/index.js');
9
9
  var props = require('../../../utils/props.js');
10
10
  var error = require('../../../utils/error.js');
11
11
  var iconsVue = require('@element-plus/icons-vue');
@@ -49,10 +49,10 @@ var SubMenu = vue.defineComponent({
49
49
  const items = vue.ref({});
50
50
  const subMenus = vue.ref({});
51
51
  let timeout;
52
- const currentPlacement = vue.ref("");
53
52
  const mouseInChild = vue.ref(false);
54
53
  const verticalTitleRef = vue.ref();
55
- const vPopper = vue.ref();
54
+ const vPopper = vue.ref(null);
55
+ const currentPlacement = vue.computed(() => mode.value === "horizontal" && isFirstLevel.value ? "bottom-start" : "right-start");
56
56
  const subMenuTitleIcon = vue.computed(() => {
57
57
  return mode.value === "horizontal" && isFirstLevel.value || mode.value === "vertical" && !rootMenu.props.collapse ? iconsVue.ArrowDown : iconsVue.ArrowRight;
58
58
  });
@@ -124,13 +124,11 @@ var SubMenu = vue.defineComponent({
124
124
  };
125
125
  });
126
126
  const doDestroy = () => {
127
- var _a;
128
- return (_a = vPopper.value) == null ? void 0 : _a.doDestroy();
127
+ var _a, _b, _c;
128
+ return (_c = (_b = (_a = vPopper.value) == null ? void 0 : _a.popperRef) == null ? void 0 : _b.popperInstanceRef) == null ? void 0 : _c.destroy();
129
129
  };
130
130
  const handleCollapseToggle = (value) => {
131
- if (value) {
132
- updatePlacement();
133
- } else {
131
+ if (!value) {
134
132
  doDestroy();
135
133
  }
136
134
  };
@@ -151,9 +149,11 @@ var SubMenu = vue.defineComponent({
151
149
  if (rootMenu.props.menuTrigger === "click" && rootMenu.props.mode === "horizontal" || !rootMenu.props.collapse && rootMenu.props.mode === "vertical" || props.disabled) {
152
150
  return;
153
151
  }
154
- mouseInChild.value = true;
152
+ subMenu.mouseInChild.value = true;
155
153
  timeout == null ? void 0 : timeout();
156
- ({ stop: timeout } = core.useTimeoutFn(() => rootMenu.openMenu(props.index, indexPath.value), showTimeout));
154
+ ({ stop: timeout } = core.useTimeoutFn(() => {
155
+ rootMenu.openMenu(props.index, indexPath.value);
156
+ }, showTimeout));
157
157
  if (appendToBody.value) {
158
158
  (_a = parentMenu.value.vnode.el) == null ? void 0 : _a.dispatchEvent(new MouseEvent("mouseenter"));
159
159
  }
@@ -163,8 +163,8 @@ var SubMenu = vue.defineComponent({
163
163
  if (rootMenu.props.menuTrigger === "click" && rootMenu.props.mode === "horizontal" || !rootMenu.props.collapse && rootMenu.props.mode === "vertical") {
164
164
  return;
165
165
  }
166
- mouseInChild.value = false;
167
166
  timeout == null ? void 0 : timeout();
167
+ subMenu.mouseInChild.value = false;
168
168
  ({ stop: timeout } = core.useTimeoutFn(() => !mouseInChild.value && rootMenu.closeMenu(props.index, indexPath.value), props.hideTimeout));
169
169
  if (appendToBody.value && deepDispatch) {
170
170
  if (((_a = instance.parent) == null ? void 0 : _a.type.name) === "ElSubMenu") {
@@ -172,9 +172,6 @@ var SubMenu = vue.defineComponent({
172
172
  }
173
173
  }
174
174
  };
175
- const updatePlacement = () => {
176
- currentPlacement.value = mode.value === "horizontal" && isFirstLevel.value ? "bottom-start" : "right-start";
177
- };
178
175
  vue.watch(() => rootMenu.props.collapse, (value) => handleCollapseToggle(Boolean(value)));
179
176
  {
180
177
  const addSubMenu = (item2) => {
@@ -186,7 +183,8 @@ var SubMenu = vue.defineComponent({
186
183
  vue.provide(`subMenu:${instance.uid}`, {
187
184
  addSubMenu,
188
185
  removeSubMenu,
189
- handleMouseleave
186
+ handleMouseleave,
187
+ mouseInChild
190
188
  });
191
189
  }
192
190
  expose({
@@ -195,7 +193,6 @@ var SubMenu = vue.defineComponent({
195
193
  vue.onMounted(() => {
196
194
  rootMenu.addSubMenu(item);
197
195
  subMenu.addSubMenu(item);
198
- updatePlacement();
199
196
  });
200
197
  vue.onBeforeUnmount(() => {
201
198
  subMenu.removeSubMenu(item);
@@ -210,22 +207,22 @@ var SubMenu = vue.defineComponent({
210
207
  }, { default: () => vue.h(subMenuTitleIcon.value) })
211
208
  ];
212
209
  const ulStyle = useMenuCssVar.useMenuCssVar(rootMenu.props);
213
- const child = rootMenu.isMenuPopup ? vue.h(index$1["default"], {
210
+ const child = rootMenu.isMenuPopup ? vue.h(index$1.ElTooltip, {
214
211
  ref: vPopper,
215
- manualMode: true,
216
212
  visible: opened.value,
217
213
  effect: "light",
218
214
  pure: true,
219
215
  offset: 6,
220
216
  showArrow: false,
217
+ persistent: true,
221
218
  popperClass: props.popperClass,
222
219
  placement: currentPlacement.value,
223
- appendToBody: appendToBody.value,
220
+ teleported: appendToBody.value,
224
221
  fallbackPlacements: fallbackPlacements.value,
225
222
  transition: menuTransitionName.value,
226
223
  gpuAcceleration: false
227
224
  }, {
228
- default: () => {
225
+ content: () => {
229
226
  var _a2;
230
227
  return vue.h("div", {
231
228
  class: [`el-menu--${mode.value}`, props.popperClass],
@@ -242,7 +239,7 @@ var SubMenu = vue.defineComponent({
242
239
  }, [(_a2 = slots.default) == null ? void 0 : _a2.call(slots)])
243
240
  ]);
244
241
  },
245
- trigger: () => vue.h("div", {
242
+ default: () => vue.h("div", {
246
243
  class: "el-sub-menu__title",
247
244
  style: [
248
245
  paddingStyle.value,
@@ -1 +1 @@
1
- {"version":3,"file":"sub-menu.js","sources":["../../../../../../packages/components/menu/src/sub-menu.ts"],"sourcesContent":["import {\n defineComponent,\n computed,\n ref,\n provide,\n inject,\n getCurrentInstance,\n watch,\n onMounted,\n onBeforeUnmount,\n withDirectives,\n Fragment,\n vShow,\n h,\n reactive,\n} from 'vue'\nimport { useTimeoutFn } from '@vueuse/core'\nimport ElCollapseTransition from '@element-plus/components/collapse-transition'\nimport ElPopper from '@element-plus/components/popper'\nimport { buildProps } from '@element-plus/utils/props'\nimport { throwError } from '@element-plus/utils/error'\nimport { ArrowDown, ArrowRight } from '@element-plus/icons-vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport useMenu from './use-menu'\nimport { useMenuCssVar } from './use-menu-css-var'\n\nimport type { Placement } from '@element-plus/components/popper'\nimport type { ExtractPropTypes, VNodeArrayChildren, CSSProperties } from 'vue'\nimport type { MenuProvider, SubMenuProvider } from './types'\n\nexport const subMenuProps = buildProps({\n index: {\n type: String,\n required: true,\n },\n showTimeout: {\n type: Number,\n default: 300,\n },\n hideTimeout: {\n type: Number,\n default: 300,\n },\n popperClass: String,\n disabled: Boolean,\n popperAppendToBody: {\n type: Boolean,\n default: undefined,\n },\n} as const)\nexport type SubMenuProps = ExtractPropTypes<typeof subMenuProps>\n\nconst COMPONENT_NAME = 'ElSubMenu'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: subMenuProps,\n\n setup(props, { slots, expose }) {\n const instance = getCurrentInstance()!\n const { paddingStyle, indexPath, parentMenu } = useMenu(\n instance,\n computed(() => props.index)\n )\n\n // inject\n const rootMenu = inject<MenuProvider>('rootMenu')\n if (!rootMenu) throwError(COMPONENT_NAME, 'can not inject root menu')\n\n const subMenu = inject<SubMenuProvider>(`subMenu:${parentMenu.value!.uid}`)\n if (!subMenu) throwError(COMPONENT_NAME, 'can not inject sub menu')\n\n const items = ref<MenuProvider['items']>({})\n const subMenus = ref<MenuProvider['subMenus']>({})\n\n let timeout: (() => void) | undefined\n const currentPlacement = ref<Placement | ''>('')\n const mouseInChild = ref(false)\n const verticalTitleRef = ref<HTMLDivElement>()\n const vPopper = ref()\n\n // computed\n const subMenuTitleIcon = computed(() => {\n return (mode.value === 'horizontal' && isFirstLevel.value) ||\n (mode.value === 'vertical' && !rootMenu.props.collapse)\n ? ArrowDown\n : ArrowRight\n })\n const isFirstLevel = computed(() => {\n let isFirstLevel = true\n let parent = instance.parent\n while (parent && parent.type.name !== 'ElMenu') {\n if (['ElSubMenu', 'ElMenuItemGroup'].includes(parent.type.name!)) {\n isFirstLevel = false\n break\n } else {\n parent = parent.parent\n }\n }\n return isFirstLevel\n })\n const appendToBody = computed(() => {\n return props.popperAppendToBody === undefined\n ? isFirstLevel.value\n : Boolean(props.popperAppendToBody)\n })\n const menuTransitionName = computed(() =>\n rootMenu.props.collapse ? 'el-zoom-in-left' : 'el-zoom-in-top'\n )\n const fallbackPlacements = computed<Placement[]>(() =>\n mode.value === 'horizontal' && isFirstLevel.value\n ? [\n 'bottom-start',\n 'bottom-end',\n 'top-start',\n 'top-end',\n 'right-start',\n 'left-start',\n ]\n : [\n 'right-start',\n 'left-start',\n 'bottom-start',\n 'bottom-end',\n 'top-start',\n 'top-end',\n ]\n )\n const opened = computed(() => rootMenu.openedMenus.includes(props.index))\n const active = computed(() => {\n let isActive = false\n\n Object.values(items.value).forEach((item) => {\n if (item.active) {\n isActive = true\n }\n })\n\n Object.values(subMenus.value).forEach((subItem) => {\n if (subItem.active) {\n isActive = true\n }\n })\n\n return isActive\n })\n\n const backgroundColor = computed(() => rootMenu.props.backgroundColor || '')\n const activeTextColor = computed(() => rootMenu.props.activeTextColor || '')\n const textColor = computed(() => rootMenu.props.textColor || '')\n const mode = computed(() => rootMenu.props.mode)\n const item = reactive({\n index: props.index,\n indexPath,\n active,\n })\n\n const titleStyle = computed<CSSProperties>(() => {\n if (mode.value !== 'horizontal') {\n return {\n color: textColor.value,\n }\n }\n return {\n borderBottomColor: active.value\n ? rootMenu.props.activeTextColor\n ? activeTextColor.value\n : ''\n : 'transparent',\n color: active.value ? activeTextColor.value : textColor.value,\n }\n })\n\n // methods\n const doDestroy = () => vPopper.value?.doDestroy()\n\n const handleCollapseToggle = (value: boolean) => {\n if (value) {\n updatePlacement()\n } else {\n doDestroy()\n }\n }\n\n const handleClick = () => {\n if (\n (rootMenu.props.menuTrigger === 'hover' &&\n rootMenu.props.mode === 'horizontal') ||\n (rootMenu.props.collapse && rootMenu.props.mode === 'vertical') ||\n props.disabled\n )\n return\n\n rootMenu.handleSubMenuClick({\n index: props.index,\n indexPath: indexPath.value,\n active: active.value,\n })\n }\n\n const handleMouseenter = (\n event: MouseEvent | FocusEvent,\n showTimeout = props.showTimeout\n ) => {\n if (event.type === 'focus' && !event.relatedTarget) {\n return\n }\n if (\n (rootMenu.props.menuTrigger === 'click' &&\n rootMenu.props.mode === 'horizontal') ||\n (!rootMenu.props.collapse && rootMenu.props.mode === 'vertical') ||\n props.disabled\n ) {\n return\n }\n mouseInChild.value = true\n\n timeout?.()\n ;({ stop: timeout } = useTimeoutFn(\n () => rootMenu.openMenu(props.index, indexPath.value),\n showTimeout\n ))\n\n if (appendToBody.value) {\n parentMenu.value.vnode.el?.dispatchEvent(new MouseEvent('mouseenter'))\n }\n }\n\n const handleMouseleave = (deepDispatch = false) => {\n if (\n (rootMenu.props.menuTrigger === 'click' &&\n rootMenu.props.mode === 'horizontal') ||\n (!rootMenu.props.collapse && rootMenu.props.mode === 'vertical')\n ) {\n return\n }\n mouseInChild.value = false\n timeout?.()\n ;({ stop: timeout } = useTimeoutFn(\n () =>\n !mouseInChild.value &&\n rootMenu.closeMenu(props.index, indexPath.value),\n props.hideTimeout\n ))\n\n if (appendToBody.value && deepDispatch) {\n if (instance.parent?.type.name === 'ElSubMenu') {\n subMenu.handleMouseleave?.(true)\n }\n }\n }\n\n const updatePlacement = () => {\n currentPlacement.value =\n mode.value === 'horizontal' && isFirstLevel.value\n ? 'bottom-start'\n : 'right-start'\n }\n\n watch(\n () => rootMenu.props.collapse,\n (value) => handleCollapseToggle(Boolean(value))\n )\n\n // provide\n {\n const addSubMenu: SubMenuProvider['addSubMenu'] = (item) => {\n subMenus.value[item.index] = item\n }\n const removeSubMenu: SubMenuProvider['removeSubMenu'] = (item) => {\n delete subMenus.value[item.index]\n }\n provide<SubMenuProvider>(`subMenu:${instance.uid}`, {\n addSubMenu,\n removeSubMenu,\n handleMouseleave,\n })\n }\n\n // expose\n expose({\n opened,\n })\n\n // lifecycle\n onMounted(() => {\n rootMenu.addSubMenu(item)\n subMenu.addSubMenu(item)\n updatePlacement()\n })\n\n onBeforeUnmount(() => {\n subMenu.removeSubMenu(item)\n rootMenu.removeSubMenu(item)\n })\n\n return () => {\n const titleTag: VNodeArrayChildren = [\n slots.title?.(),\n h(\n ElIcon,\n {\n class: ['el-sub-menu__icon-arrow'],\n },\n { default: () => h(subMenuTitleIcon.value) }\n ),\n ]\n\n const ulStyle = useMenuCssVar(rootMenu.props)\n\n // this render function is only used for bypass `Vue`'s compiler caused patching issue.\n // temporarily mark ElPopper as any due to type inconsistency.\n const child = rootMenu.isMenuPopup\n ? h(\n // TODO: correct popper's type.\n ElPopper as any,\n {\n ref: vPopper,\n manualMode: true,\n visible: opened.value,\n effect: 'light',\n pure: true,\n offset: 6,\n showArrow: false,\n popperClass: props.popperClass,\n placement: currentPlacement.value,\n appendToBody: appendToBody.value,\n fallbackPlacements: fallbackPlacements.value,\n transition: menuTransitionName.value,\n gpuAcceleration: false,\n },\n {\n default: () =>\n h(\n 'div',\n {\n class: [`el-menu--${mode.value}`, props.popperClass],\n onMouseenter: (evt: MouseEvent) =>\n handleMouseenter(evt, 100),\n onMouseleave: () => handleMouseleave(true),\n onFocus: (evt: FocusEvent) => handleMouseenter(evt, 100),\n },\n [\n h(\n 'ul',\n {\n class: [\n 'el-menu el-menu--popup',\n `el-menu--popup-${currentPlacement.value}`,\n ],\n style: ulStyle.value,\n },\n [slots.default?.()]\n ),\n ]\n ),\n trigger: () =>\n h(\n 'div',\n {\n class: 'el-sub-menu__title',\n style: [\n paddingStyle.value,\n titleStyle.value,\n { backgroundColor: backgroundColor.value },\n ],\n onClick: handleClick,\n },\n titleTag\n ),\n }\n )\n : h(Fragment, {}, [\n h(\n 'div',\n {\n class: 'el-sub-menu__title',\n style: [\n paddingStyle.value,\n titleStyle.value,\n { backgroundColor: backgroundColor.value },\n ],\n ref: verticalTitleRef,\n onClick: handleClick,\n },\n titleTag\n ),\n h(\n ElCollapseTransition,\n {},\n {\n default: () =>\n withDirectives(\n h(\n 'ul',\n {\n role: 'menu',\n class: 'el-menu el-menu--inline',\n style: ulStyle.value,\n },\n [slots.default?.()]\n ),\n [[vShow, opened.value]]\n ),\n }\n ),\n ])\n\n return h(\n 'li',\n {\n class: [\n 'el-sub-menu',\n {\n 'is-active': active.value,\n 'is-opened': opened.value,\n 'is-disabled': props.disabled,\n },\n ],\n role: 'menuitem',\n ariaHaspopup: true,\n ariaExpanded: opened.value,\n onMouseenter: handleMouseenter,\n onMouseleave: () => handleMouseleave(true),\n onFocus: handleMouseenter,\n },\n [child]\n )\n }\n },\n})\n"],"names":["buildProps","defineComponent","getCurrentInstance","useMenu","computed","inject","throwError","ref","ArrowDown","ArrowRight","reactive","useTimeoutFn","watch","provide","onMounted","onBeforeUnmount","h","ElIcon","useMenuCssVar","ElPopper","Fragment","ElCollapseTransition","withDirectives","vShow"],"mappings":"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"}
1
+ {"version":3,"file":"sub-menu.js","sources":["../../../../../../packages/components/menu/src/sub-menu.ts"],"sourcesContent":["import {\n defineComponent,\n computed,\n ref,\n provide,\n inject,\n getCurrentInstance,\n watch,\n onMounted,\n onBeforeUnmount,\n withDirectives,\n Fragment,\n vShow,\n h,\n reactive,\n} from 'vue'\nimport { useTimeoutFn } from '@vueuse/core'\nimport ElCollapseTransition from '@element-plus/components/collapse-transition'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { buildProps } from '@element-plus/utils/props'\nimport { throwError } from '@element-plus/utils/error'\nimport { ArrowDown, ArrowRight } from '@element-plus/icons-vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport useMenu from './use-menu'\nimport { useMenuCssVar } from './use-menu-css-var'\n\nimport type { Placement } from '@element-plus/components/popper'\nimport type { ExtractPropTypes, VNodeArrayChildren, CSSProperties } from 'vue'\nimport type { MenuProvider, SubMenuProvider } from './types'\n\nexport const subMenuProps = buildProps({\n index: {\n type: String,\n required: true,\n },\n showTimeout: {\n type: Number,\n default: 300,\n },\n hideTimeout: {\n type: Number,\n default: 300,\n },\n popperClass: String,\n disabled: Boolean,\n popperAppendToBody: {\n type: Boolean,\n default: undefined,\n },\n} as const)\nexport type SubMenuProps = ExtractPropTypes<typeof subMenuProps>\n\nconst COMPONENT_NAME = 'ElSubMenu'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: subMenuProps,\n\n setup(props, { slots, expose }) {\n const instance = getCurrentInstance()!\n const { paddingStyle, indexPath, parentMenu } = useMenu(\n instance,\n computed(() => props.index)\n )\n\n // inject\n const rootMenu = inject<MenuProvider>('rootMenu')\n if (!rootMenu) throwError(COMPONENT_NAME, 'can not inject root menu')\n\n const subMenu = inject<SubMenuProvider>(`subMenu:${parentMenu.value!.uid}`)\n if (!subMenu) throwError(COMPONENT_NAME, 'can not inject sub menu')\n\n const items = ref<MenuProvider['items']>({})\n const subMenus = ref<MenuProvider['subMenus']>({})\n\n let timeout: (() => void) | undefined\n const mouseInChild = ref(false)\n const verticalTitleRef = ref<HTMLDivElement>()\n const vPopper = ref<InstanceType<typeof ElTooltip> | null>(null)\n\n // computed\n const currentPlacement = computed<Placement>(() =>\n mode.value === 'horizontal' && isFirstLevel.value\n ? 'bottom-start'\n : 'right-start'\n )\n const subMenuTitleIcon = computed(() => {\n return (mode.value === 'horizontal' && isFirstLevel.value) ||\n (mode.value === 'vertical' && !rootMenu.props.collapse)\n ? ArrowDown\n : ArrowRight\n })\n const isFirstLevel = computed(() => {\n let isFirstLevel = true\n let parent = instance.parent\n while (parent && parent.type.name !== 'ElMenu') {\n if (['ElSubMenu', 'ElMenuItemGroup'].includes(parent.type.name!)) {\n isFirstLevel = false\n break\n } else {\n parent = parent.parent\n }\n }\n return isFirstLevel\n })\n const appendToBody = computed(() => {\n return props.popperAppendToBody === undefined\n ? isFirstLevel.value\n : Boolean(props.popperAppendToBody)\n })\n const menuTransitionName = computed(() =>\n rootMenu.props.collapse ? 'el-zoom-in-left' : 'el-zoom-in-top'\n )\n const fallbackPlacements = computed<Placement[]>(() =>\n mode.value === 'horizontal' && isFirstLevel.value\n ? [\n 'bottom-start',\n 'bottom-end',\n 'top-start',\n 'top-end',\n 'right-start',\n 'left-start',\n ]\n : [\n 'right-start',\n 'left-start',\n 'bottom-start',\n 'bottom-end',\n 'top-start',\n 'top-end',\n ]\n )\n const opened = computed(() => rootMenu.openedMenus.includes(props.index))\n const active = computed(() => {\n let isActive = false\n\n Object.values(items.value).forEach((item) => {\n if (item.active) {\n isActive = true\n }\n })\n\n Object.values(subMenus.value).forEach((subItem) => {\n if (subItem.active) {\n isActive = true\n }\n })\n\n return isActive\n })\n\n const backgroundColor = computed(() => rootMenu.props.backgroundColor || '')\n const activeTextColor = computed(() => rootMenu.props.activeTextColor || '')\n const textColor = computed(() => rootMenu.props.textColor || '')\n const mode = computed(() => rootMenu.props.mode)\n const item = reactive({\n index: props.index,\n indexPath,\n active,\n })\n\n const titleStyle = computed<CSSProperties>(() => {\n if (mode.value !== 'horizontal') {\n return {\n color: textColor.value,\n }\n }\n return {\n borderBottomColor: active.value\n ? rootMenu.props.activeTextColor\n ? activeTextColor.value\n : ''\n : 'transparent',\n color: active.value ? activeTextColor.value : textColor.value,\n }\n })\n\n // methods\n const doDestroy = () =>\n vPopper.value?.popperRef?.popperInstanceRef?.destroy()\n\n const handleCollapseToggle = (value: boolean) => {\n if (!value) {\n doDestroy()\n }\n }\n\n const handleClick = () => {\n if (\n (rootMenu.props.menuTrigger === 'hover' &&\n rootMenu.props.mode === 'horizontal') ||\n (rootMenu.props.collapse && rootMenu.props.mode === 'vertical') ||\n props.disabled\n )\n return\n\n rootMenu.handleSubMenuClick({\n index: props.index,\n indexPath: indexPath.value,\n active: active.value,\n })\n }\n\n const handleMouseenter = (\n event: MouseEvent | FocusEvent,\n showTimeout = props.showTimeout\n ) => {\n if (event.type === 'focus' && !event.relatedTarget) {\n return\n }\n if (\n (rootMenu.props.menuTrigger === 'click' &&\n rootMenu.props.mode === 'horizontal') ||\n (!rootMenu.props.collapse && rootMenu.props.mode === 'vertical') ||\n props.disabled\n ) {\n return\n }\n subMenu.mouseInChild.value = true\n\n timeout?.()\n ;({ stop: timeout } = useTimeoutFn(() => {\n rootMenu.openMenu(props.index, indexPath.value)\n }, showTimeout))\n\n if (appendToBody.value) {\n parentMenu.value.vnode.el?.dispatchEvent(new MouseEvent('mouseenter'))\n }\n }\n\n const handleMouseleave = (deepDispatch = false) => {\n if (\n (rootMenu.props.menuTrigger === 'click' &&\n rootMenu.props.mode === 'horizontal') ||\n (!rootMenu.props.collapse && rootMenu.props.mode === 'vertical')\n ) {\n return\n }\n timeout?.()\n subMenu.mouseInChild.value = false\n ;({ stop: timeout } = useTimeoutFn(\n () =>\n !mouseInChild.value &&\n rootMenu.closeMenu(props.index, indexPath.value),\n props.hideTimeout\n ))\n\n if (appendToBody.value && deepDispatch) {\n if (instance.parent?.type.name === 'ElSubMenu') {\n subMenu.handleMouseleave?.(true)\n }\n }\n }\n\n watch(\n () => rootMenu.props.collapse,\n (value) => handleCollapseToggle(Boolean(value))\n )\n\n // provide\n {\n const addSubMenu: SubMenuProvider['addSubMenu'] = (item) => {\n subMenus.value[item.index] = item\n }\n const removeSubMenu: SubMenuProvider['removeSubMenu'] = (item) => {\n delete subMenus.value[item.index]\n }\n provide<SubMenuProvider>(`subMenu:${instance.uid}`, {\n addSubMenu,\n removeSubMenu,\n handleMouseleave,\n mouseInChild,\n })\n }\n\n // expose\n expose({\n opened,\n })\n\n // lifecycle\n onMounted(() => {\n rootMenu.addSubMenu(item)\n subMenu.addSubMenu(item)\n })\n\n onBeforeUnmount(() => {\n subMenu.removeSubMenu(item)\n rootMenu.removeSubMenu(item)\n })\n\n return () => {\n const titleTag: VNodeArrayChildren = [\n slots.title?.(),\n h(\n ElIcon,\n {\n class: ['el-sub-menu__icon-arrow'],\n },\n { default: () => h(subMenuTitleIcon.value) }\n ),\n ]\n\n const ulStyle = useMenuCssVar(rootMenu.props)\n\n // this render function is only used for bypass `Vue`'s compiler caused patching issue.\n // temporarily mark ElPopper as any due to type inconsistency.\n const child = rootMenu.isMenuPopup\n ? h(\n // TODO: correct popper's type.\n ElTooltip as any,\n {\n ref: vPopper,\n visible: opened.value,\n effect: 'light',\n pure: true,\n offset: 6,\n showArrow: false,\n persistent: true,\n popperClass: props.popperClass,\n placement: currentPlacement.value,\n teleported: appendToBody.value,\n fallbackPlacements: fallbackPlacements.value,\n transition: menuTransitionName.value,\n gpuAcceleration: false,\n },\n {\n content: () =>\n h(\n 'div',\n {\n class: [`el-menu--${mode.value}`, props.popperClass],\n onMouseenter: (evt: MouseEvent) =>\n handleMouseenter(evt, 100),\n onMouseleave: () => handleMouseleave(true),\n onFocus: (evt: FocusEvent) => handleMouseenter(evt, 100),\n },\n [\n h(\n 'ul',\n {\n class: [\n 'el-menu el-menu--popup',\n `el-menu--popup-${currentPlacement.value}`,\n ],\n style: ulStyle.value,\n },\n [slots.default?.()]\n ),\n ]\n ),\n default: () =>\n h(\n 'div',\n {\n class: 'el-sub-menu__title',\n style: [\n paddingStyle.value,\n titleStyle.value,\n { backgroundColor: backgroundColor.value },\n ],\n onClick: handleClick,\n },\n titleTag\n ),\n }\n )\n : h(Fragment, {}, [\n h(\n 'div',\n {\n class: 'el-sub-menu__title',\n style: [\n paddingStyle.value,\n titleStyle.value,\n { backgroundColor: backgroundColor.value },\n ],\n ref: verticalTitleRef,\n onClick: handleClick,\n },\n titleTag\n ),\n h(\n ElCollapseTransition,\n {},\n {\n default: () =>\n withDirectives(\n h(\n 'ul',\n {\n role: 'menu',\n class: 'el-menu el-menu--inline',\n style: ulStyle.value,\n },\n [slots.default?.()]\n ),\n [[vShow, opened.value]]\n ),\n }\n ),\n ])\n\n return h(\n 'li',\n {\n class: [\n 'el-sub-menu',\n {\n 'is-active': active.value,\n 'is-opened': opened.value,\n 'is-disabled': props.disabled,\n },\n ],\n role: 'menuitem',\n ariaHaspopup: true,\n ariaExpanded: opened.value,\n onMouseenter: handleMouseenter,\n onMouseleave: () => handleMouseleave(true),\n onFocus: handleMouseenter,\n },\n [child]\n )\n }\n },\n})\n"],"names":["buildProps","defineComponent","getCurrentInstance","useMenu","computed","inject","throwError","ref","ArrowDown","ArrowRight","reactive","useTimeoutFn","watch","provide","onMounted","onBeforeUnmount","h","ElIcon","useMenuCssVar","ElTooltip","Fragment","ElCollapseTransition","withDirectives","vShow"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { Ref } from 'vue';
1
2
  import type { RouteLocationRaw } from 'vue-router';
2
3
  import type { MenuProps } from './menu';
3
4
  export interface MenuItemRegistered {
@@ -30,4 +31,5 @@ export interface SubMenuProvider {
30
31
  addSubMenu: (item: MenuItemRegistered) => void;
31
32
  removeSubMenu: (item: MenuItemRegistered) => void;
32
33
  handleMouseleave?: (deepDispatch: boolean) => void;
34
+ mouseInChild: Ref<boolean>;
33
35
  }
@@ -1810,12 +1810,12 @@ declare const _default: import("vue").DefineComponent<{
1810
1810
  boxType?: unknown;
1811
1811
  } & {
1812
1812
  center: boolean;
1813
+ container: string;
1813
1814
  showClose: boolean;
1814
1815
  closeOnClickModal: boolean;
1815
1816
  closeOnPressEscape: boolean;
1816
1817
  lockScroll: boolean;
1817
1818
  modal: boolean;
1818
- container: string;
1819
1819
  closeOnHashChange: boolean;
1820
1820
  roundButton: boolean;
1821
1821
  boxType: MessageBoxType;
@@ -1826,12 +1826,12 @@ declare const _default: import("vue").DefineComponent<{
1826
1826
  onAction?: ((...args: any[]) => any) | undefined;
1827
1827
  }, {
1828
1828
  center: boolean;
1829
+ container: string;
1829
1830
  showClose: boolean;
1830
1831
  closeOnClickModal: boolean;
1831
1832
  closeOnPressEscape: boolean;
1832
1833
  lockScroll: boolean;
1833
1834
  modal: boolean;
1834
- container: string;
1835
1835
  closeOnHashChange: boolean;
1836
1836
  roundButton: boolean;
1837
1837
  boxType: MessageBoxType;
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue_vue_type_script_lang.js","sources":["../../../../../../packages/components/message-box/src/index.vue"],"sourcesContent":["<template>\n <transition name=\"fade-in-linear\" @after-leave=\"$emit('vanish')\">\n <el-overlay\n v-show=\"visible\"\n :z-index=\"zIndex\"\n :overlay-class=\"['is-message-box', modalClass]\"\n :mask=\"modal\"\n @click.self=\"handleWrapperClick\"\n >\n <div\n ref=\"root\"\n v-trap-focus\n :aria-label=\"title || 'dialog'\"\n aria-modal=\"true\"\n :class=\"[\n 'el-message-box',\n customClass,\n { 'el-message-box--center': center },\n ]\"\n :style=\"customStyle\"\n >\n <div\n v-if=\"title !== null && title !== undefined\"\n class=\"el-message-box__header\"\n >\n <div class=\"el-message-box__title\">\n <el-icon\n v-if=\"iconComponent && center\"\n class=\"el-message-box__status\"\n :class=\"typeClass\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <span>{{ title }}</span>\n </div>\n <button\n v-if=\"showClose\"\n type=\"button\"\n class=\"el-message-box__headerbtn\"\n aria-label=\"Close\"\n @click=\"\n handleAction(distinguishCancelAndClose ? 'close' : 'cancel')\n \"\n @keydown.prevent.enter=\"\n handleAction(distinguishCancelAndClose ? 'close' : 'cancel')\n \"\n >\n <el-icon class=\"el-message-box__close\"><close /></el-icon>\n </button>\n </div>\n <div class=\"el-message-box__content\">\n <div class=\"el-message-box__container\">\n <el-icon\n v-if=\"iconComponent && !center && hasMessage\"\n class=\"el-message-box__status\"\n :class=\"typeClass\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <div v-if=\"hasMessage\" class=\"el-message-box__message\">\n <slot>\n <p v-if=\"!dangerouslyUseHTMLString\">{{ message }}</p>\n <p v-else v-html=\"message\"></p>\n </slot>\n </div>\n </div>\n <div v-show=\"showInput\" class=\"el-message-box__input\">\n <el-input\n ref=\"inputRef\"\n v-model=\"inputValue\"\n :type=\"inputType\"\n :placeholder=\"inputPlaceholder\"\n :class=\"{ invalid: validateError }\"\n @keydown.prevent.enter=\"handleInputEnter\"\n />\n <div\n class=\"el-message-box__errormsg\"\n :style=\"{\n visibility: !!editorErrorMessage ? 'visible' : 'hidden',\n }\"\n >\n {{ editorErrorMessage }}\n </div>\n </div>\n </div>\n <div class=\"el-message-box__btns\">\n <el-button\n v-if=\"showCancelButton\"\n :loading=\"cancelButtonLoading\"\n :class=\"[cancelButtonClass]\"\n :round=\"roundButton\"\n :size=\"buttonSize || ''\"\n @click=\"handleAction('cancel')\"\n @keydown.prevent.enter=\"handleAction('cancel')\"\n >\n {{ cancelButtonText || t('el.messagebox.cancel') }}\n </el-button>\n <el-button\n v-show=\"showConfirmButton\"\n ref=\"confirmRef\"\n type=\"primary\"\n :loading=\"confirmButtonLoading\"\n :class=\"[confirmButtonClasses]\"\n :round=\"roundButton\"\n :disabled=\"confirmButtonDisabled\"\n :size=\"buttonSize || ''\"\n @click=\"handleAction('confirm')\"\n @keydown.prevent.enter=\"handleAction('confirm')\"\n >\n {{ confirmButtonText || t('el.messagebox.confirm') }}\n </el-button>\n </div>\n </div>\n </el-overlay>\n </transition>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n nextTick,\n onMounted,\n onBeforeUnmount,\n computed,\n watch,\n reactive,\n ref,\n toRefs,\n} from 'vue'\nimport ElButton from '@element-plus/components/button'\nimport { TrapFocus } from '@element-plus/directives'\nimport {\n useModal,\n useLockscreen,\n useLocale,\n useRestoreActive,\n usePreventGlobal,\n} from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport { ElOverlay } from '@element-plus/components/overlay'\nimport { PopupManager } from '@element-plus/utils/popup-manager'\nimport { on, off } from '@element-plus/utils/dom'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { TypeComponents, TypeComponentsMap } from '@element-plus/utils/icon'\n\nimport type { ComponentPublicInstance, PropType } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type {\n Action,\n MessageBoxState,\n MessageBoxType,\n} from './message-box.type'\n\nexport default defineComponent({\n name: 'ElMessageBox',\n directives: {\n TrapFocus,\n },\n components: {\n ElButton,\n ElInput,\n ElOverlay,\n ElIcon,\n ...TypeComponents,\n },\n inheritAttrs: false,\n props: {\n buttonSize: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n modal: {\n type: Boolean,\n default: true,\n },\n lockScroll: {\n type: Boolean,\n default: true,\n },\n showClose: {\n type: Boolean,\n default: true,\n },\n closeOnClickModal: {\n type: Boolean,\n default: true,\n },\n closeOnPressEscape: {\n type: Boolean,\n default: true,\n },\n closeOnHashChange: {\n type: Boolean,\n default: true,\n },\n center: Boolean,\n roundButton: {\n default: false,\n type: Boolean,\n },\n container: {\n type: String, // default append to body\n default: 'body',\n },\n boxType: {\n type: String as PropType<MessageBoxType>,\n default: '',\n },\n },\n emits: ['vanish', 'action'],\n setup(props, { emit }) {\n // const popup = usePopup(props, doClose)\n const { t } = useLocale()\n const visible = ref(false)\n // s represents state\n const state = reactive<MessageBoxState>({\n beforeClose: null,\n callback: null,\n cancelButtonText: '',\n cancelButtonClass: '',\n confirmButtonText: '',\n confirmButtonClass: '',\n customClass: '',\n customStyle: {},\n dangerouslyUseHTMLString: false,\n distinguishCancelAndClose: false,\n icon: '',\n inputPattern: null,\n inputPlaceholder: '',\n inputType: 'text',\n inputValue: null,\n inputValidator: null,\n inputErrorMessage: '',\n message: null,\n modalFade: true,\n modalClass: '',\n showCancelButton: false,\n showConfirmButton: true,\n type: '',\n title: undefined,\n showInput: false,\n action: '' as Action,\n confirmButtonLoading: false,\n cancelButtonLoading: false,\n confirmButtonDisabled: false,\n editorErrorMessage: '',\n // refer to: https://github.com/ElemeFE/element/commit/2999279ae34ef10c373ca795c87b020ed6753eed\n // seemed ok for now without this state.\n // isOnComposition: false, // temporary remove\n validateError: false,\n zIndex: PopupManager.nextZIndex(),\n })\n\n const typeClass = computed(() => {\n const type = state.type\n return type && TypeComponentsMap[type]\n ? `el-message-box-icon--${type}`\n : ''\n })\n\n const iconComponent = computed(\n () => state.icon || TypeComponentsMap[state.type] || ''\n )\n const hasMessage = computed(() => !!state.message)\n const inputRef = ref<ComponentPublicInstance>(null)\n const confirmRef = ref<ComponentPublicInstance>(null)\n\n const confirmButtonClasses = computed(() => state.confirmButtonClass)\n\n watch(\n () => state.inputValue,\n async (val) => {\n await nextTick()\n if (props.boxType === 'prompt' && val !== null) {\n validate()\n }\n },\n { immediate: true }\n )\n\n watch(\n () => visible.value,\n (val) => {\n if (val) {\n if (props.boxType === 'alert' || props.boxType === 'confirm') {\n nextTick().then(() => {\n confirmRef.value?.$el?.focus?.()\n })\n }\n state.zIndex = PopupManager.nextZIndex()\n }\n if (props.boxType !== 'prompt') return\n if (val) {\n nextTick().then(() => {\n if (inputRef.value && inputRef.value.$el) {\n getInputElement().focus()\n }\n })\n } else {\n state.editorErrorMessage = ''\n state.validateError = false\n }\n }\n )\n\n onMounted(async () => {\n await nextTick()\n if (props.closeOnHashChange) {\n on(window, 'hashchange', doClose)\n }\n })\n\n onBeforeUnmount(() => {\n if (props.closeOnHashChange) {\n off(window, 'hashchange', doClose)\n }\n })\n\n function doClose() {\n if (!visible.value) return\n visible.value = false\n nextTick(() => {\n if (state.action) emit('action', state.action)\n })\n }\n\n const handleWrapperClick = () => {\n if (props.closeOnClickModal) {\n handleAction(state.distinguishCancelAndClose ? 'close' : 'cancel')\n }\n }\n\n const handleInputEnter = () => {\n if (state.inputType !== 'textarea') {\n return handleAction('confirm')\n }\n }\n\n const handleAction = (action: Action) => {\n if (props.boxType === 'prompt' && action === 'confirm' && !validate()) {\n return\n }\n\n state.action = action\n\n if (state.beforeClose) {\n state.beforeClose?.(action, state, doClose)\n } else {\n doClose()\n }\n }\n\n const validate = () => {\n if (props.boxType === 'prompt') {\n const inputPattern = state.inputPattern\n if (inputPattern && !inputPattern.test(state.inputValue || '')) {\n state.editorErrorMessage =\n state.inputErrorMessage || t('el.messagebox.error')\n state.validateError = true\n return false\n }\n const inputValidator = state.inputValidator\n if (typeof inputValidator === 'function') {\n const validateResult = inputValidator(state.inputValue)\n if (validateResult === false) {\n state.editorErrorMessage =\n state.inputErrorMessage || t('el.messagebox.error')\n state.validateError = true\n return false\n }\n if (typeof validateResult === 'string') {\n state.editorErrorMessage = validateResult\n state.validateError = true\n return false\n }\n }\n }\n state.editorErrorMessage = ''\n state.validateError = false\n return true\n }\n\n const getInputElement = () => {\n const inputRefs = inputRef.value.$refs\n return (inputRefs.input || inputRefs.textarea) as HTMLElement\n }\n\n const handleClose = () => {\n handleAction('close')\n }\n\n // when close on press escape is disabled, pressing esc should not callout\n // any other message box and close any other dialog-ish elements\n // e.g. Dialog has a close on press esc feature, and when it closes, it calls\n // props.beforeClose method to make a intermediate state by callout a message box\n // for some verification or alerting. then if we allow global event liek this\n // to dispatch, it could callout another message box.\n if (props.closeOnPressEscape) {\n useModal(\n {\n handleClose,\n },\n visible\n )\n } else {\n usePreventGlobal(\n visible,\n 'keydown',\n (e: KeyboardEvent) => e.code === EVENT_CODE.esc\n )\n }\n\n // locks the screen to prevent scroll\n if (props.lockScroll) {\n useLockscreen(visible)\n }\n\n // restore to prev active element.\n useRestoreActive(visible)\n\n return {\n ...toRefs(state),\n visible,\n hasMessage,\n typeClass,\n iconComponent,\n confirmButtonClasses,\n inputRef,\n confirmRef,\n doClose, // for outside usage\n handleClose, // for out side usage\n handleWrapperClick,\n handleInputEnter,\n handleAction,\n t,\n }\n },\n})\n</script>\n"],"names":["defineComponent","TrapFocus","ElButton","ElInput","ElOverlay","TypeComponents","useLocale","ref","PopupManager","computed","TypeComponentsMap","nextTick","off","useModal"],"mappings":"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"}
1
+ {"version":3,"file":"index.vue_vue_type_script_lang.js","sources":["../../../../../../packages/components/message-box/src/index.vue"],"sourcesContent":["<template>\n <transition name=\"fade-in-linear\" @after-leave=\"$emit('vanish')\">\n <el-overlay\n v-show=\"visible\"\n :z-index=\"zIndex\"\n :overlay-class=\"['is-message-box', modalClass]\"\n :mask=\"modal\"\n @click.self=\"handleWrapperClick\"\n >\n <div\n ref=\"root\"\n v-trap-focus\n role=\"dialog\"\n :aria-label=\"title || 'dialog'\"\n aria-modal=\"true\"\n :class=\"[\n 'el-message-box',\n customClass,\n { 'el-message-box--center': center },\n ]\"\n :style=\"customStyle\"\n >\n <div\n v-if=\"title !== null && title !== undefined\"\n class=\"el-message-box__header\"\n >\n <div class=\"el-message-box__title\">\n <el-icon\n v-if=\"iconComponent && center\"\n class=\"el-message-box__status\"\n :class=\"typeClass\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <span>{{ title }}</span>\n </div>\n <button\n v-if=\"showClose\"\n type=\"button\"\n class=\"el-message-box__headerbtn\"\n aria-label=\"Close\"\n @click=\"\n handleAction(distinguishCancelAndClose ? 'close' : 'cancel')\n \"\n @keydown.prevent.enter=\"\n handleAction(distinguishCancelAndClose ? 'close' : 'cancel')\n \"\n >\n <el-icon class=\"el-message-box__close\"><close /></el-icon>\n </button>\n </div>\n <div class=\"el-message-box__content\">\n <div class=\"el-message-box__container\">\n <el-icon\n v-if=\"iconComponent && !center && hasMessage\"\n class=\"el-message-box__status\"\n :class=\"typeClass\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <div v-if=\"hasMessage\" class=\"el-message-box__message\">\n <slot>\n <p v-if=\"!dangerouslyUseHTMLString\">{{ message }}</p>\n <p v-else v-html=\"message\"></p>\n </slot>\n </div>\n </div>\n <div v-show=\"showInput\" class=\"el-message-box__input\">\n <el-input\n ref=\"inputRef\"\n v-model=\"inputValue\"\n :type=\"inputType\"\n :placeholder=\"inputPlaceholder\"\n :class=\"{ invalid: validateError }\"\n @keydown.prevent.enter=\"handleInputEnter\"\n />\n <div\n class=\"el-message-box__errormsg\"\n :style=\"{\n visibility: !!editorErrorMessage ? 'visible' : 'hidden',\n }\"\n >\n {{ editorErrorMessage }}\n </div>\n </div>\n </div>\n <div class=\"el-message-box__btns\">\n <el-button\n v-if=\"showCancelButton\"\n :loading=\"cancelButtonLoading\"\n :class=\"[cancelButtonClass]\"\n :round=\"roundButton\"\n :size=\"buttonSize || ''\"\n @click=\"handleAction('cancel')\"\n @keydown.prevent.enter=\"handleAction('cancel')\"\n >\n {{ cancelButtonText || t('el.messagebox.cancel') }}\n </el-button>\n <el-button\n v-show=\"showConfirmButton\"\n ref=\"confirmRef\"\n type=\"primary\"\n :loading=\"confirmButtonLoading\"\n :class=\"[confirmButtonClasses]\"\n :round=\"roundButton\"\n :disabled=\"confirmButtonDisabled\"\n :size=\"buttonSize || ''\"\n @click=\"handleAction('confirm')\"\n @keydown.prevent.enter=\"handleAction('confirm')\"\n >\n {{ confirmButtonText || t('el.messagebox.confirm') }}\n </el-button>\n </div>\n </div>\n </el-overlay>\n </transition>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n nextTick,\n onMounted,\n onBeforeUnmount,\n computed,\n watch,\n reactive,\n ref,\n toRefs,\n} from 'vue'\nimport ElButton from '@element-plus/components/button'\nimport { TrapFocus } from '@element-plus/directives'\nimport {\n useModal,\n useLockscreen,\n useLocale,\n useRestoreActive,\n usePreventGlobal,\n} from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport { ElOverlay } from '@element-plus/components/overlay'\nimport { PopupManager } from '@element-plus/utils/popup-manager'\nimport { on, off } from '@element-plus/utils/dom'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { TypeComponents, TypeComponentsMap } from '@element-plus/utils/icon'\n\nimport type { ComponentPublicInstance, PropType } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type {\n Action,\n MessageBoxState,\n MessageBoxType,\n} from './message-box.type'\n\nexport default defineComponent({\n name: 'ElMessageBox',\n directives: {\n TrapFocus,\n },\n components: {\n ElButton,\n ElInput,\n ElOverlay,\n ElIcon,\n ...TypeComponents,\n },\n inheritAttrs: false,\n props: {\n buttonSize: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n modal: {\n type: Boolean,\n default: true,\n },\n lockScroll: {\n type: Boolean,\n default: true,\n },\n showClose: {\n type: Boolean,\n default: true,\n },\n closeOnClickModal: {\n type: Boolean,\n default: true,\n },\n closeOnPressEscape: {\n type: Boolean,\n default: true,\n },\n closeOnHashChange: {\n type: Boolean,\n default: true,\n },\n center: Boolean,\n roundButton: {\n default: false,\n type: Boolean,\n },\n container: {\n type: String, // default append to body\n default: 'body',\n },\n boxType: {\n type: String as PropType<MessageBoxType>,\n default: '',\n },\n },\n emits: ['vanish', 'action'],\n setup(props, { emit }) {\n // const popup = usePopup(props, doClose)\n const { t } = useLocale()\n const visible = ref(false)\n // s represents state\n const state = reactive<MessageBoxState>({\n beforeClose: null,\n callback: null,\n cancelButtonText: '',\n cancelButtonClass: '',\n confirmButtonText: '',\n confirmButtonClass: '',\n customClass: '',\n customStyle: {},\n dangerouslyUseHTMLString: false,\n distinguishCancelAndClose: false,\n icon: '',\n inputPattern: null,\n inputPlaceholder: '',\n inputType: 'text',\n inputValue: null,\n inputValidator: null,\n inputErrorMessage: '',\n message: null,\n modalFade: true,\n modalClass: '',\n showCancelButton: false,\n showConfirmButton: true,\n type: '',\n title: undefined,\n showInput: false,\n action: '' as Action,\n confirmButtonLoading: false,\n cancelButtonLoading: false,\n confirmButtonDisabled: false,\n editorErrorMessage: '',\n // refer to: https://github.com/ElemeFE/element/commit/2999279ae34ef10c373ca795c87b020ed6753eed\n // seemed ok for now without this state.\n // isOnComposition: false, // temporary remove\n validateError: false,\n zIndex: PopupManager.nextZIndex(),\n })\n\n const typeClass = computed(() => {\n const type = state.type\n return type && TypeComponentsMap[type]\n ? `el-message-box-icon--${type}`\n : ''\n })\n\n const iconComponent = computed(\n () => state.icon || TypeComponentsMap[state.type] || ''\n )\n const hasMessage = computed(() => !!state.message)\n const inputRef = ref<ComponentPublicInstance>(null)\n const confirmRef = ref<ComponentPublicInstance>(null)\n\n const confirmButtonClasses = computed(() => state.confirmButtonClass)\n\n watch(\n () => state.inputValue,\n async (val) => {\n await nextTick()\n if (props.boxType === 'prompt' && val !== null) {\n validate()\n }\n },\n { immediate: true }\n )\n\n watch(\n () => visible.value,\n (val) => {\n if (val) {\n if (props.boxType === 'alert' || props.boxType === 'confirm') {\n nextTick().then(() => {\n confirmRef.value?.$el?.focus?.()\n })\n }\n state.zIndex = PopupManager.nextZIndex()\n }\n if (props.boxType !== 'prompt') return\n if (val) {\n nextTick().then(() => {\n if (inputRef.value && inputRef.value.$el) {\n getInputElement().focus()\n }\n })\n } else {\n state.editorErrorMessage = ''\n state.validateError = false\n }\n }\n )\n\n onMounted(async () => {\n await nextTick()\n if (props.closeOnHashChange) {\n on(window, 'hashchange', doClose)\n }\n })\n\n onBeforeUnmount(() => {\n if (props.closeOnHashChange) {\n off(window, 'hashchange', doClose)\n }\n })\n\n function doClose() {\n if (!visible.value) return\n visible.value = false\n nextTick(() => {\n if (state.action) emit('action', state.action)\n })\n }\n\n const handleWrapperClick = () => {\n if (props.closeOnClickModal) {\n handleAction(state.distinguishCancelAndClose ? 'close' : 'cancel')\n }\n }\n\n const handleInputEnter = () => {\n if (state.inputType !== 'textarea') {\n return handleAction('confirm')\n }\n }\n\n const handleAction = (action: Action) => {\n if (props.boxType === 'prompt' && action === 'confirm' && !validate()) {\n return\n }\n\n state.action = action\n\n if (state.beforeClose) {\n state.beforeClose?.(action, state, doClose)\n } else {\n doClose()\n }\n }\n\n const validate = () => {\n if (props.boxType === 'prompt') {\n const inputPattern = state.inputPattern\n if (inputPattern && !inputPattern.test(state.inputValue || '')) {\n state.editorErrorMessage =\n state.inputErrorMessage || t('el.messagebox.error')\n state.validateError = true\n return false\n }\n const inputValidator = state.inputValidator\n if (typeof inputValidator === 'function') {\n const validateResult = inputValidator(state.inputValue)\n if (validateResult === false) {\n state.editorErrorMessage =\n state.inputErrorMessage || t('el.messagebox.error')\n state.validateError = true\n return false\n }\n if (typeof validateResult === 'string') {\n state.editorErrorMessage = validateResult\n state.validateError = true\n return false\n }\n }\n }\n state.editorErrorMessage = ''\n state.validateError = false\n return true\n }\n\n const getInputElement = () => {\n const inputRefs = inputRef.value.$refs\n return (inputRefs.input || inputRefs.textarea) as HTMLElement\n }\n\n const handleClose = () => {\n handleAction('close')\n }\n\n // when close on press escape is disabled, pressing esc should not callout\n // any other message box and close any other dialog-ish elements\n // e.g. Dialog has a close on press esc feature, and when it closes, it calls\n // props.beforeClose method to make a intermediate state by callout a message box\n // for some verification or alerting. then if we allow global event liek this\n // to dispatch, it could callout another message box.\n if (props.closeOnPressEscape) {\n useModal(\n {\n handleClose,\n },\n visible\n )\n } else {\n usePreventGlobal(\n visible,\n 'keydown',\n (e: KeyboardEvent) => e.code === EVENT_CODE.esc\n )\n }\n\n // locks the screen to prevent scroll\n if (props.lockScroll) {\n useLockscreen(visible)\n }\n\n // restore to prev active element.\n useRestoreActive(visible)\n\n return {\n ...toRefs(state),\n visible,\n hasMessage,\n typeClass,\n iconComponent,\n confirmButtonClasses,\n inputRef,\n confirmRef,\n doClose, // for outside usage\n handleClose, // for out side usage\n handleWrapperClick,\n handleInputEnter,\n handleAction,\n t,\n }\n },\n})\n</script>\n"],"names":["defineComponent","TrapFocus","ElButton","ElInput","ElOverlay","TypeComponents","useLocale","ref","PopupManager","computed","TypeComponentsMap","nextTick","off","useModal"],"mappings":"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"}
@@ -41,6 +41,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
41
41
  default: vue.withCtx(() => [
42
42
  vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
43
43
  ref: "root",
44
+ role: "dialog",
44
45
  "aria-label": _ctx.title || "dialog",
45
46
  "aria-modal": "true",
46
47
  class: vue.normalizeClass([
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue_vue_type_template_id_7035e868_lang.js","sources":["../../../../../../packages/components/message-box/src/index.vue?vue&type=template&id=7035e868&lang.js"],"sourcesContent":["<template>\n <transition name=\"fade-in-linear\" @after-leave=\"$emit('vanish')\">\n <el-overlay\n v-show=\"visible\"\n :z-index=\"zIndex\"\n :overlay-class=\"['is-message-box', modalClass]\"\n :mask=\"modal\"\n @click.self=\"handleWrapperClick\"\n >\n <div\n ref=\"root\"\n v-trap-focus\n :aria-label=\"title || 'dialog'\"\n aria-modal=\"true\"\n :class=\"[\n 'el-message-box',\n customClass,\n { 'el-message-box--center': center },\n ]\"\n :style=\"customStyle\"\n >\n <div\n v-if=\"title !== null && title !== undefined\"\n class=\"el-message-box__header\"\n >\n <div class=\"el-message-box__title\">\n <el-icon\n v-if=\"iconComponent && center\"\n class=\"el-message-box__status\"\n :class=\"typeClass\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <span>{{ title }}</span>\n </div>\n <button\n v-if=\"showClose\"\n type=\"button\"\n class=\"el-message-box__headerbtn\"\n aria-label=\"Close\"\n @click=\"\n handleAction(distinguishCancelAndClose ? 'close' : 'cancel')\n \"\n @keydown.prevent.enter=\"\n handleAction(distinguishCancelAndClose ? 'close' : 'cancel')\n \"\n >\n <el-icon class=\"el-message-box__close\"><close /></el-icon>\n </button>\n </div>\n <div class=\"el-message-box__content\">\n <div class=\"el-message-box__container\">\n <el-icon\n v-if=\"iconComponent && !center && hasMessage\"\n class=\"el-message-box__status\"\n :class=\"typeClass\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <div v-if=\"hasMessage\" class=\"el-message-box__message\">\n <slot>\n <p v-if=\"!dangerouslyUseHTMLString\">{{ message }}</p>\n <p v-else v-html=\"message\"></p>\n </slot>\n </div>\n </div>\n <div v-show=\"showInput\" class=\"el-message-box__input\">\n <el-input\n ref=\"inputRef\"\n v-model=\"inputValue\"\n :type=\"inputType\"\n :placeholder=\"inputPlaceholder\"\n :class=\"{ invalid: validateError }\"\n @keydown.prevent.enter=\"handleInputEnter\"\n />\n <div\n class=\"el-message-box__errormsg\"\n :style=\"{\n visibility: !!editorErrorMessage ? 'visible' : 'hidden',\n }\"\n >\n {{ editorErrorMessage }}\n </div>\n </div>\n </div>\n <div class=\"el-message-box__btns\">\n <el-button\n v-if=\"showCancelButton\"\n :loading=\"cancelButtonLoading\"\n :class=\"[cancelButtonClass]\"\n :round=\"roundButton\"\n :size=\"buttonSize || ''\"\n @click=\"handleAction('cancel')\"\n @keydown.prevent.enter=\"handleAction('cancel')\"\n >\n {{ cancelButtonText || t('el.messagebox.cancel') }}\n </el-button>\n <el-button\n v-show=\"showConfirmButton\"\n ref=\"confirmRef\"\n type=\"primary\"\n :loading=\"confirmButtonLoading\"\n :class=\"[confirmButtonClasses]\"\n :round=\"roundButton\"\n :disabled=\"confirmButtonDisabled\"\n :size=\"buttonSize || ''\"\n @click=\"handleAction('confirm')\"\n @keydown.prevent.enter=\"handleAction('confirm')\"\n >\n {{ confirmButtonText || t('el.messagebox.confirm') }}\n </el-button>\n </div>\n </div>\n </el-overlay>\n </transition>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n nextTick,\n onMounted,\n onBeforeUnmount,\n computed,\n watch,\n reactive,\n ref,\n toRefs,\n} from 'vue'\nimport ElButton from '@element-plus/components/button'\nimport { TrapFocus } from '@element-plus/directives'\nimport {\n useModal,\n useLockscreen,\n useLocale,\n useRestoreActive,\n usePreventGlobal,\n} from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport { ElOverlay } from '@element-plus/components/overlay'\nimport { PopupManager } from '@element-plus/utils/popup-manager'\nimport { on, off } from '@element-plus/utils/dom'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { TypeComponents, TypeComponentsMap } from '@element-plus/utils/icon'\n\nimport type { ComponentPublicInstance, PropType } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type {\n Action,\n MessageBoxState,\n MessageBoxType,\n} from './message-box.type'\n\nexport default defineComponent({\n name: 'ElMessageBox',\n directives: {\n TrapFocus,\n },\n components: {\n ElButton,\n ElInput,\n ElOverlay,\n ElIcon,\n ...TypeComponents,\n },\n inheritAttrs: false,\n props: {\n buttonSize: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n modal: {\n type: Boolean,\n default: true,\n },\n lockScroll: {\n type: Boolean,\n default: true,\n },\n showClose: {\n type: Boolean,\n default: true,\n },\n closeOnClickModal: {\n type: Boolean,\n default: true,\n },\n closeOnPressEscape: {\n type: Boolean,\n default: true,\n },\n closeOnHashChange: {\n type: Boolean,\n default: true,\n },\n center: Boolean,\n roundButton: {\n default: false,\n type: Boolean,\n },\n container: {\n type: String, // default append to body\n default: 'body',\n },\n boxType: {\n type: String as PropType<MessageBoxType>,\n default: '',\n },\n },\n emits: ['vanish', 'action'],\n setup(props, { emit }) {\n // const popup = usePopup(props, doClose)\n const { t } = useLocale()\n const visible = ref(false)\n // s represents state\n const state = reactive<MessageBoxState>({\n beforeClose: null,\n callback: null,\n cancelButtonText: '',\n cancelButtonClass: '',\n confirmButtonText: '',\n confirmButtonClass: '',\n customClass: '',\n customStyle: {},\n dangerouslyUseHTMLString: false,\n distinguishCancelAndClose: false,\n icon: '',\n inputPattern: null,\n inputPlaceholder: '',\n inputType: 'text',\n inputValue: null,\n inputValidator: null,\n inputErrorMessage: '',\n message: null,\n modalFade: true,\n modalClass: '',\n showCancelButton: false,\n showConfirmButton: true,\n type: '',\n title: undefined,\n showInput: false,\n action: '' as Action,\n confirmButtonLoading: false,\n cancelButtonLoading: false,\n confirmButtonDisabled: false,\n editorErrorMessage: '',\n // refer to: https://github.com/ElemeFE/element/commit/2999279ae34ef10c373ca795c87b020ed6753eed\n // seemed ok for now without this state.\n // isOnComposition: false, // temporary remove\n validateError: false,\n zIndex: PopupManager.nextZIndex(),\n })\n\n const typeClass = computed(() => {\n const type = state.type\n return type && TypeComponentsMap[type]\n ? `el-message-box-icon--${type}`\n : ''\n })\n\n const iconComponent = computed(\n () => state.icon || TypeComponentsMap[state.type] || ''\n )\n const hasMessage = computed(() => !!state.message)\n const inputRef = ref<ComponentPublicInstance>(null)\n const confirmRef = ref<ComponentPublicInstance>(null)\n\n const confirmButtonClasses = computed(() => state.confirmButtonClass)\n\n watch(\n () => state.inputValue,\n async (val) => {\n await nextTick()\n if (props.boxType === 'prompt' && val !== null) {\n validate()\n }\n },\n { immediate: true }\n )\n\n watch(\n () => visible.value,\n (val) => {\n if (val) {\n if (props.boxType === 'alert' || props.boxType === 'confirm') {\n nextTick().then(() => {\n confirmRef.value?.$el?.focus?.()\n })\n }\n state.zIndex = PopupManager.nextZIndex()\n }\n if (props.boxType !== 'prompt') return\n if (val) {\n nextTick().then(() => {\n if (inputRef.value && inputRef.value.$el) {\n getInputElement().focus()\n }\n })\n } else {\n state.editorErrorMessage = ''\n state.validateError = false\n }\n }\n )\n\n onMounted(async () => {\n await nextTick()\n if (props.closeOnHashChange) {\n on(window, 'hashchange', doClose)\n }\n })\n\n onBeforeUnmount(() => {\n if (props.closeOnHashChange) {\n off(window, 'hashchange', doClose)\n }\n })\n\n function doClose() {\n if (!visible.value) return\n visible.value = false\n nextTick(() => {\n if (state.action) emit('action', state.action)\n })\n }\n\n const handleWrapperClick = () => {\n if (props.closeOnClickModal) {\n handleAction(state.distinguishCancelAndClose ? 'close' : 'cancel')\n }\n }\n\n const handleInputEnter = () => {\n if (state.inputType !== 'textarea') {\n return handleAction('confirm')\n }\n }\n\n const handleAction = (action: Action) => {\n if (props.boxType === 'prompt' && action === 'confirm' && !validate()) {\n return\n }\n\n state.action = action\n\n if (state.beforeClose) {\n state.beforeClose?.(action, state, doClose)\n } else {\n doClose()\n }\n }\n\n const validate = () => {\n if (props.boxType === 'prompt') {\n const inputPattern = state.inputPattern\n if (inputPattern && !inputPattern.test(state.inputValue || '')) {\n state.editorErrorMessage =\n state.inputErrorMessage || t('el.messagebox.error')\n state.validateError = true\n return false\n }\n const inputValidator = state.inputValidator\n if (typeof inputValidator === 'function') {\n const validateResult = inputValidator(state.inputValue)\n if (validateResult === false) {\n state.editorErrorMessage =\n state.inputErrorMessage || t('el.messagebox.error')\n state.validateError = true\n return false\n }\n if (typeof validateResult === 'string') {\n state.editorErrorMessage = validateResult\n state.validateError = true\n return false\n }\n }\n }\n state.editorErrorMessage = ''\n state.validateError = false\n return true\n }\n\n const getInputElement = () => {\n const inputRefs = inputRef.value.$refs\n return (inputRefs.input || inputRefs.textarea) as HTMLElement\n }\n\n const handleClose = () => {\n handleAction('close')\n }\n\n // when close on press escape is disabled, pressing esc should not callout\n // any other message box and close any other dialog-ish elements\n // e.g. Dialog has a close on press esc feature, and when it closes, it calls\n // props.beforeClose method to make a intermediate state by callout a message box\n // for some verification or alerting. then if we allow global event liek this\n // to dispatch, it could callout another message box.\n if (props.closeOnPressEscape) {\n useModal(\n {\n handleClose,\n },\n visible\n )\n } else {\n usePreventGlobal(\n visible,\n 'keydown',\n (e: KeyboardEvent) => e.code === EVENT_CODE.esc\n )\n }\n\n // locks the screen to prevent scroll\n if (props.lockScroll) {\n useLockscreen(visible)\n }\n\n // restore to prev active element.\n useRestoreActive(visible)\n\n return {\n ...toRefs(state),\n visible,\n hasMessage,\n typeClass,\n iconComponent,\n confirmButtonClasses,\n inputRef,\n confirmRef,\n doClose, // for outside usage\n handleClose, // for out side usage\n handleWrapperClick,\n handleInputEnter,\n handleAction,\n t,\n }\n },\n})\n</script>\n"],"names":["_withModifiers","_createCommentVNode","_withCtx","_createTextVNode"],"mappings":";;;;;;;;;;EAuBU;;qBAEK,KAAK,EAAC;qBAyBR,KAAK,EAAC;;;;EASgB;;;;mDAO4B;eAmBlD,KAAK,EAAC,sBAAsB;;;;;;;;;;;IApF3B;;;;;QAGP,SAAOA;;QAEP;;;0BAGD;;YACE,KAAI;;;;;;;;sDASe;;;;;;;;;;+CAYb;;;;;;;;iCAKa;;;;;;;;;;;;;wBAWf;;;;;;;;;;;;;;;sBAOEC;;;;;;;;;;;0BAOY;8CAAV;;;8BACU,SAAgB;;;;;;;;kBAM5B;;;yCAEgB;;;;;;uBAMX,EAACC;kBACLC;;;;;;;;0CAQP;;;;;yBAIU;;;yFAGc;;;;;;;;;;;;;wBAUd;;;;;;;;;"}
1
+ {"version":3,"file":"index.vue_vue_type_template_id_7035e868_lang.js","sources":["../../../../../../packages/components/message-box/src/index.vue?vue&type=template&id=7035e868&lang.js"],"sourcesContent":["<template>\n <transition name=\"fade-in-linear\" @after-leave=\"$emit('vanish')\">\n <el-overlay\n v-show=\"visible\"\n :z-index=\"zIndex\"\n :overlay-class=\"['is-message-box', modalClass]\"\n :mask=\"modal\"\n @click.self=\"handleWrapperClick\"\n >\n <div\n ref=\"root\"\n v-trap-focus\n role=\"dialog\"\n :aria-label=\"title || 'dialog'\"\n aria-modal=\"true\"\n :class=\"[\n 'el-message-box',\n customClass,\n { 'el-message-box--center': center },\n ]\"\n :style=\"customStyle\"\n >\n <div\n v-if=\"title !== null && title !== undefined\"\n class=\"el-message-box__header\"\n >\n <div class=\"el-message-box__title\">\n <el-icon\n v-if=\"iconComponent && center\"\n class=\"el-message-box__status\"\n :class=\"typeClass\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <span>{{ title }}</span>\n </div>\n <button\n v-if=\"showClose\"\n type=\"button\"\n class=\"el-message-box__headerbtn\"\n aria-label=\"Close\"\n @click=\"\n handleAction(distinguishCancelAndClose ? 'close' : 'cancel')\n \"\n @keydown.prevent.enter=\"\n handleAction(distinguishCancelAndClose ? 'close' : 'cancel')\n \"\n >\n <el-icon class=\"el-message-box__close\"><close /></el-icon>\n </button>\n </div>\n <div class=\"el-message-box__content\">\n <div class=\"el-message-box__container\">\n <el-icon\n v-if=\"iconComponent && !center && hasMessage\"\n class=\"el-message-box__status\"\n :class=\"typeClass\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <div v-if=\"hasMessage\" class=\"el-message-box__message\">\n <slot>\n <p v-if=\"!dangerouslyUseHTMLString\">{{ message }}</p>\n <p v-else v-html=\"message\"></p>\n </slot>\n </div>\n </div>\n <div v-show=\"showInput\" class=\"el-message-box__input\">\n <el-input\n ref=\"inputRef\"\n v-model=\"inputValue\"\n :type=\"inputType\"\n :placeholder=\"inputPlaceholder\"\n :class=\"{ invalid: validateError }\"\n @keydown.prevent.enter=\"handleInputEnter\"\n />\n <div\n class=\"el-message-box__errormsg\"\n :style=\"{\n visibility: !!editorErrorMessage ? 'visible' : 'hidden',\n }\"\n >\n {{ editorErrorMessage }}\n </div>\n </div>\n </div>\n <div class=\"el-message-box__btns\">\n <el-button\n v-if=\"showCancelButton\"\n :loading=\"cancelButtonLoading\"\n :class=\"[cancelButtonClass]\"\n :round=\"roundButton\"\n :size=\"buttonSize || ''\"\n @click=\"handleAction('cancel')\"\n @keydown.prevent.enter=\"handleAction('cancel')\"\n >\n {{ cancelButtonText || t('el.messagebox.cancel') }}\n </el-button>\n <el-button\n v-show=\"showConfirmButton\"\n ref=\"confirmRef\"\n type=\"primary\"\n :loading=\"confirmButtonLoading\"\n :class=\"[confirmButtonClasses]\"\n :round=\"roundButton\"\n :disabled=\"confirmButtonDisabled\"\n :size=\"buttonSize || ''\"\n @click=\"handleAction('confirm')\"\n @keydown.prevent.enter=\"handleAction('confirm')\"\n >\n {{ confirmButtonText || t('el.messagebox.confirm') }}\n </el-button>\n </div>\n </div>\n </el-overlay>\n </transition>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n nextTick,\n onMounted,\n onBeforeUnmount,\n computed,\n watch,\n reactive,\n ref,\n toRefs,\n} from 'vue'\nimport ElButton from '@element-plus/components/button'\nimport { TrapFocus } from '@element-plus/directives'\nimport {\n useModal,\n useLockscreen,\n useLocale,\n useRestoreActive,\n usePreventGlobal,\n} from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport { ElOverlay } from '@element-plus/components/overlay'\nimport { PopupManager } from '@element-plus/utils/popup-manager'\nimport { on, off } from '@element-plus/utils/dom'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { TypeComponents, TypeComponentsMap } from '@element-plus/utils/icon'\n\nimport type { ComponentPublicInstance, PropType } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type {\n Action,\n MessageBoxState,\n MessageBoxType,\n} from './message-box.type'\n\nexport default defineComponent({\n name: 'ElMessageBox',\n directives: {\n TrapFocus,\n },\n components: {\n ElButton,\n ElInput,\n ElOverlay,\n ElIcon,\n ...TypeComponents,\n },\n inheritAttrs: false,\n props: {\n buttonSize: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n modal: {\n type: Boolean,\n default: true,\n },\n lockScroll: {\n type: Boolean,\n default: true,\n },\n showClose: {\n type: Boolean,\n default: true,\n },\n closeOnClickModal: {\n type: Boolean,\n default: true,\n },\n closeOnPressEscape: {\n type: Boolean,\n default: true,\n },\n closeOnHashChange: {\n type: Boolean,\n default: true,\n },\n center: Boolean,\n roundButton: {\n default: false,\n type: Boolean,\n },\n container: {\n type: String, // default append to body\n default: 'body',\n },\n boxType: {\n type: String as PropType<MessageBoxType>,\n default: '',\n },\n },\n emits: ['vanish', 'action'],\n setup(props, { emit }) {\n // const popup = usePopup(props, doClose)\n const { t } = useLocale()\n const visible = ref(false)\n // s represents state\n const state = reactive<MessageBoxState>({\n beforeClose: null,\n callback: null,\n cancelButtonText: '',\n cancelButtonClass: '',\n confirmButtonText: '',\n confirmButtonClass: '',\n customClass: '',\n customStyle: {},\n dangerouslyUseHTMLString: false,\n distinguishCancelAndClose: false,\n icon: '',\n inputPattern: null,\n inputPlaceholder: '',\n inputType: 'text',\n inputValue: null,\n inputValidator: null,\n inputErrorMessage: '',\n message: null,\n modalFade: true,\n modalClass: '',\n showCancelButton: false,\n showConfirmButton: true,\n type: '',\n title: undefined,\n showInput: false,\n action: '' as Action,\n confirmButtonLoading: false,\n cancelButtonLoading: false,\n confirmButtonDisabled: false,\n editorErrorMessage: '',\n // refer to: https://github.com/ElemeFE/element/commit/2999279ae34ef10c373ca795c87b020ed6753eed\n // seemed ok for now without this state.\n // isOnComposition: false, // temporary remove\n validateError: false,\n zIndex: PopupManager.nextZIndex(),\n })\n\n const typeClass = computed(() => {\n const type = state.type\n return type && TypeComponentsMap[type]\n ? `el-message-box-icon--${type}`\n : ''\n })\n\n const iconComponent = computed(\n () => state.icon || TypeComponentsMap[state.type] || ''\n )\n const hasMessage = computed(() => !!state.message)\n const inputRef = ref<ComponentPublicInstance>(null)\n const confirmRef = ref<ComponentPublicInstance>(null)\n\n const confirmButtonClasses = computed(() => state.confirmButtonClass)\n\n watch(\n () => state.inputValue,\n async (val) => {\n await nextTick()\n if (props.boxType === 'prompt' && val !== null) {\n validate()\n }\n },\n { immediate: true }\n )\n\n watch(\n () => visible.value,\n (val) => {\n if (val) {\n if (props.boxType === 'alert' || props.boxType === 'confirm') {\n nextTick().then(() => {\n confirmRef.value?.$el?.focus?.()\n })\n }\n state.zIndex = PopupManager.nextZIndex()\n }\n if (props.boxType !== 'prompt') return\n if (val) {\n nextTick().then(() => {\n if (inputRef.value && inputRef.value.$el) {\n getInputElement().focus()\n }\n })\n } else {\n state.editorErrorMessage = ''\n state.validateError = false\n }\n }\n )\n\n onMounted(async () => {\n await nextTick()\n if (props.closeOnHashChange) {\n on(window, 'hashchange', doClose)\n }\n })\n\n onBeforeUnmount(() => {\n if (props.closeOnHashChange) {\n off(window, 'hashchange', doClose)\n }\n })\n\n function doClose() {\n if (!visible.value) return\n visible.value = false\n nextTick(() => {\n if (state.action) emit('action', state.action)\n })\n }\n\n const handleWrapperClick = () => {\n if (props.closeOnClickModal) {\n handleAction(state.distinguishCancelAndClose ? 'close' : 'cancel')\n }\n }\n\n const handleInputEnter = () => {\n if (state.inputType !== 'textarea') {\n return handleAction('confirm')\n }\n }\n\n const handleAction = (action: Action) => {\n if (props.boxType === 'prompt' && action === 'confirm' && !validate()) {\n return\n }\n\n state.action = action\n\n if (state.beforeClose) {\n state.beforeClose?.(action, state, doClose)\n } else {\n doClose()\n }\n }\n\n const validate = () => {\n if (props.boxType === 'prompt') {\n const inputPattern = state.inputPattern\n if (inputPattern && !inputPattern.test(state.inputValue || '')) {\n state.editorErrorMessage =\n state.inputErrorMessage || t('el.messagebox.error')\n state.validateError = true\n return false\n }\n const inputValidator = state.inputValidator\n if (typeof inputValidator === 'function') {\n const validateResult = inputValidator(state.inputValue)\n if (validateResult === false) {\n state.editorErrorMessage =\n state.inputErrorMessage || t('el.messagebox.error')\n state.validateError = true\n return false\n }\n if (typeof validateResult === 'string') {\n state.editorErrorMessage = validateResult\n state.validateError = true\n return false\n }\n }\n }\n state.editorErrorMessage = ''\n state.validateError = false\n return true\n }\n\n const getInputElement = () => {\n const inputRefs = inputRef.value.$refs\n return (inputRefs.input || inputRefs.textarea) as HTMLElement\n }\n\n const handleClose = () => {\n handleAction('close')\n }\n\n // when close on press escape is disabled, pressing esc should not callout\n // any other message box and close any other dialog-ish elements\n // e.g. Dialog has a close on press esc feature, and when it closes, it calls\n // props.beforeClose method to make a intermediate state by callout a message box\n // for some verification or alerting. then if we allow global event liek this\n // to dispatch, it could callout another message box.\n if (props.closeOnPressEscape) {\n useModal(\n {\n handleClose,\n },\n visible\n )\n } else {\n usePreventGlobal(\n visible,\n 'keydown',\n (e: KeyboardEvent) => e.code === EVENT_CODE.esc\n )\n }\n\n // locks the screen to prevent scroll\n if (props.lockScroll) {\n useLockscreen(visible)\n }\n\n // restore to prev active element.\n useRestoreActive(visible)\n\n return {\n ...toRefs(state),\n visible,\n hasMessage,\n typeClass,\n iconComponent,\n confirmButtonClasses,\n inputRef,\n confirmRef,\n doClose, // for outside usage\n handleClose, // for out side usage\n handleWrapperClick,\n handleInputEnter,\n handleAction,\n t,\n }\n },\n})\n</script>\n"],"names":["_withModifiers","_createCommentVNode","_withCtx","_createTextVNode"],"mappings":";;;;;;;;;;EAwBU;;qBAEK,KAAK,EAAC;qBAyBR,KAAK,EAAC;;;;EASgB;;;;mDAO4B;eAmBlD,KAAK,EAAC,sBAAsB;;;;;;;;;;;IArF3B;;;;;QAGP,SAAOA;;QAEP;;;0BAGD;;YACE;YAEA;;;;;;;;sDAQmB;;;;;;;;;;+CAYb;;;;;;;;iCAKa;;;;;;;;;;;;;wBAWf;;;;;;;;;;;;;;;sBAOEC;;;;;;;;;;;0BAOY;8CAAV;;;8BACU,SAAgB;;;;;;;;kBAM5B;;;yCAEgB;;;;;;uBAMX,EAACC;kBACLC;;;;;;;;0CAQP;;;;;yBAIU;;;yFAGc;;;;;;;;;;;;;wBAUd;;;;;;;;;"}
@@ -45,8 +45,8 @@ export declare const ElPagination: import("../../utils/types").SFCWithInstall<im
45
45
  small: boolean;
46
46
  disabled: boolean;
47
47
  layout: string;
48
- popperClass: string;
49
48
  background: boolean;
49
+ popperClass: string;
50
50
  pagerCount: number;
51
51
  pageSizes: number[];
52
52
  prevText: string;
@@ -70,8 +70,8 @@ export declare const ElPagination: import("../../utils/types").SFCWithInstall<im
70
70
  small: boolean;
71
71
  disabled: boolean;
72
72
  layout: string;
73
- popperClass: string;
74
73
  background: boolean;
74
+ popperClass: string;
75
75
  pagerCount: number;
76
76
  pageSizes: number[];
77
77
  prevText: string;
@@ -74,8 +74,8 @@ declare const _default: import("vue").DefineComponent<{
74
74
  small: boolean;
75
75
  disabled: boolean;
76
76
  layout: string;
77
- popperClass: string;
78
77
  background: boolean;
78
+ popperClass: string;
79
79
  pagerCount: number;
80
80
  pageSizes: number[];
81
81
  prevText: string;
@@ -99,8 +99,8 @@ declare const _default: import("vue").DefineComponent<{
99
99
  small: boolean;
100
100
  disabled: boolean;
101
101
  layout: string;
102
- popperClass: string;
103
102
  background: boolean;
103
+ popperClass: string;
104
104
  pagerCount: number;
105
105
  pageSizes: number[];
106
106
  prevText: string;