element-pe 2.14.2-3 → 2.14.2-4

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 (655) hide show
  1. package/dist/index.full.js +32 -110
  2. package/dist/index.full.min.js +8 -8
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +4 -4
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +32 -110
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar-eg.js +1 -1
  12. package/dist/locale/ar-eg.min.js +1 -1
  13. package/dist/locale/ar-eg.min.mjs +1 -1
  14. package/dist/locale/ar-eg.mjs +1 -1
  15. package/dist/locale/ar.js +1 -1
  16. package/dist/locale/ar.min.js +1 -1
  17. package/dist/locale/ar.min.mjs +1 -1
  18. package/dist/locale/ar.mjs +1 -1
  19. package/dist/locale/az.js +1 -1
  20. package/dist/locale/az.min.js +1 -1
  21. package/dist/locale/az.min.mjs +1 -1
  22. package/dist/locale/az.mjs +1 -1
  23. package/dist/locale/bg.js +1 -1
  24. package/dist/locale/bg.min.js +1 -1
  25. package/dist/locale/bg.min.mjs +1 -1
  26. package/dist/locale/bg.mjs +1 -1
  27. package/dist/locale/bn.js +1 -1
  28. package/dist/locale/bn.min.js +1 -1
  29. package/dist/locale/bn.min.mjs +1 -1
  30. package/dist/locale/bn.mjs +1 -1
  31. package/dist/locale/ca.js +1 -1
  32. package/dist/locale/ca.min.js +1 -1
  33. package/dist/locale/ca.min.mjs +1 -1
  34. package/dist/locale/ca.mjs +1 -1
  35. package/dist/locale/ckb.js +1 -1
  36. package/dist/locale/ckb.min.js +1 -1
  37. package/dist/locale/ckb.min.mjs +1 -1
  38. package/dist/locale/ckb.mjs +1 -1
  39. package/dist/locale/cs.js +1 -1
  40. package/dist/locale/cs.min.js +1 -1
  41. package/dist/locale/cs.min.mjs +1 -1
  42. package/dist/locale/cs.mjs +1 -1
  43. package/dist/locale/da.js +1 -1
  44. package/dist/locale/da.min.js +1 -1
  45. package/dist/locale/da.min.mjs +1 -1
  46. package/dist/locale/da.mjs +1 -1
  47. package/dist/locale/de.js +1 -1
  48. package/dist/locale/de.min.js +1 -1
  49. package/dist/locale/de.min.mjs +1 -1
  50. package/dist/locale/de.mjs +1 -1
  51. package/dist/locale/el.js +1 -1
  52. package/dist/locale/el.min.js +1 -1
  53. package/dist/locale/el.min.mjs +1 -1
  54. package/dist/locale/el.mjs +1 -1
  55. package/dist/locale/en.js +1 -1
  56. package/dist/locale/en.min.js +1 -1
  57. package/dist/locale/en.min.mjs +1 -1
  58. package/dist/locale/en.mjs +1 -1
  59. package/dist/locale/eo.js +1 -1
  60. package/dist/locale/eo.min.js +1 -1
  61. package/dist/locale/eo.min.mjs +1 -1
  62. package/dist/locale/eo.mjs +1 -1
  63. package/dist/locale/es.js +1 -1
  64. package/dist/locale/es.min.js +1 -1
  65. package/dist/locale/es.min.mjs +1 -1
  66. package/dist/locale/es.mjs +1 -1
  67. package/dist/locale/et.js +1 -1
  68. package/dist/locale/et.min.js +1 -1
  69. package/dist/locale/et.min.mjs +1 -1
  70. package/dist/locale/et.mjs +1 -1
  71. package/dist/locale/eu.js +1 -1
  72. package/dist/locale/eu.min.js +1 -1
  73. package/dist/locale/eu.min.mjs +1 -1
  74. package/dist/locale/eu.mjs +1 -1
  75. package/dist/locale/fa.js +1 -1
  76. package/dist/locale/fa.min.js +1 -1
  77. package/dist/locale/fa.min.mjs +1 -1
  78. package/dist/locale/fa.mjs +1 -1
  79. package/dist/locale/fi.js +1 -1
  80. package/dist/locale/fi.min.js +1 -1
  81. package/dist/locale/fi.min.mjs +1 -1
  82. package/dist/locale/fi.mjs +1 -1
  83. package/dist/locale/fr.js +1 -1
  84. package/dist/locale/fr.min.js +1 -1
  85. package/dist/locale/fr.min.mjs +1 -1
  86. package/dist/locale/fr.mjs +1 -1
  87. package/dist/locale/he.js +1 -1
  88. package/dist/locale/he.min.js +1 -1
  89. package/dist/locale/he.min.mjs +1 -1
  90. package/dist/locale/he.mjs +1 -1
  91. package/dist/locale/hi.js +1 -1
  92. package/dist/locale/hi.min.js +1 -1
  93. package/dist/locale/hi.min.mjs +1 -1
  94. package/dist/locale/hi.mjs +1 -1
  95. package/dist/locale/hr.js +1 -1
  96. package/dist/locale/hr.min.js +1 -1
  97. package/dist/locale/hr.min.mjs +1 -1
  98. package/dist/locale/hr.mjs +1 -1
  99. package/dist/locale/hu.js +1 -1
  100. package/dist/locale/hu.min.js +1 -1
  101. package/dist/locale/hu.min.mjs +1 -1
  102. package/dist/locale/hu.mjs +1 -1
  103. package/dist/locale/hy-am.js +1 -1
  104. package/dist/locale/hy-am.min.js +1 -1
  105. package/dist/locale/hy-am.min.mjs +1 -1
  106. package/dist/locale/hy-am.mjs +1 -1
  107. package/dist/locale/id.js +1 -1
  108. package/dist/locale/id.min.js +1 -1
  109. package/dist/locale/id.min.mjs +1 -1
  110. package/dist/locale/id.mjs +1 -1
  111. package/dist/locale/it.js +1 -1
  112. package/dist/locale/it.min.js +1 -1
  113. package/dist/locale/it.min.mjs +1 -1
  114. package/dist/locale/it.mjs +1 -1
  115. package/dist/locale/ja.js +1 -1
  116. package/dist/locale/ja.min.js +1 -1
  117. package/dist/locale/ja.min.mjs +1 -1
  118. package/dist/locale/ja.mjs +1 -1
  119. package/dist/locale/kk.js +1 -1
  120. package/dist/locale/kk.min.js +1 -1
  121. package/dist/locale/kk.min.mjs +1 -1
  122. package/dist/locale/kk.mjs +1 -1
  123. package/dist/locale/km.js +1 -1
  124. package/dist/locale/km.min.js +1 -1
  125. package/dist/locale/km.min.mjs +1 -1
  126. package/dist/locale/km.mjs +1 -1
  127. package/dist/locale/ko.js +1 -1
  128. package/dist/locale/ko.min.js +1 -1
  129. package/dist/locale/ko.min.mjs +1 -1
  130. package/dist/locale/ko.mjs +1 -1
  131. package/dist/locale/ku.js +1 -1
  132. package/dist/locale/ku.min.js +1 -1
  133. package/dist/locale/ku.min.mjs +1 -1
  134. package/dist/locale/ku.mjs +1 -1
  135. package/dist/locale/ky.js +1 -1
  136. package/dist/locale/ky.min.js +1 -1
  137. package/dist/locale/ky.min.mjs +1 -1
  138. package/dist/locale/ky.mjs +1 -1
  139. package/dist/locale/lo.js +1 -1
  140. package/dist/locale/lo.min.js +1 -1
  141. package/dist/locale/lo.min.mjs +1 -1
  142. package/dist/locale/lo.mjs +1 -1
  143. package/dist/locale/lt.js +1 -1
  144. package/dist/locale/lt.min.js +1 -1
  145. package/dist/locale/lt.min.mjs +1 -1
  146. package/dist/locale/lt.mjs +1 -1
  147. package/dist/locale/lv.js +1 -1
  148. package/dist/locale/lv.min.js +1 -1
  149. package/dist/locale/lv.min.mjs +1 -1
  150. package/dist/locale/lv.mjs +1 -1
  151. package/dist/locale/mg.js +1 -1
  152. package/dist/locale/mg.min.js +1 -1
  153. package/dist/locale/mg.min.mjs +1 -1
  154. package/dist/locale/mg.mjs +1 -1
  155. package/dist/locale/mn.js +1 -1
  156. package/dist/locale/mn.min.js +1 -1
  157. package/dist/locale/mn.min.mjs +1 -1
  158. package/dist/locale/mn.mjs +1 -1
  159. package/dist/locale/ms.js +1 -1
  160. package/dist/locale/ms.min.js +1 -1
  161. package/dist/locale/ms.min.mjs +1 -1
  162. package/dist/locale/ms.mjs +1 -1
  163. package/dist/locale/my.js +1 -1
  164. package/dist/locale/my.min.js +1 -1
  165. package/dist/locale/my.min.mjs +1 -1
  166. package/dist/locale/my.mjs +1 -1
  167. package/dist/locale/nb-no.js +1 -1
  168. package/dist/locale/nb-no.min.js +1 -1
  169. package/dist/locale/nb-no.min.mjs +1 -1
  170. package/dist/locale/nb-no.mjs +1 -1
  171. package/dist/locale/nl.js +1 -1
  172. package/dist/locale/nl.min.js +1 -1
  173. package/dist/locale/nl.min.mjs +1 -1
  174. package/dist/locale/nl.mjs +1 -1
  175. package/dist/locale/no.js +1 -1
  176. package/dist/locale/no.min.js +1 -1
  177. package/dist/locale/no.min.mjs +1 -1
  178. package/dist/locale/no.mjs +1 -1
  179. package/dist/locale/pa.js +1 -1
  180. package/dist/locale/pa.min.js +1 -1
  181. package/dist/locale/pa.min.mjs +1 -1
  182. package/dist/locale/pa.mjs +1 -1
  183. package/dist/locale/pl.js +1 -1
  184. package/dist/locale/pl.min.js +1 -1
  185. package/dist/locale/pl.min.mjs +1 -1
  186. package/dist/locale/pl.mjs +1 -1
  187. package/dist/locale/pt-br.js +1 -1
  188. package/dist/locale/pt-br.min.js +1 -1
  189. package/dist/locale/pt-br.min.mjs +1 -1
  190. package/dist/locale/pt-br.mjs +1 -1
  191. package/dist/locale/pt.js +1 -1
  192. package/dist/locale/pt.min.js +1 -1
  193. package/dist/locale/pt.min.mjs +1 -1
  194. package/dist/locale/pt.mjs +1 -1
  195. package/dist/locale/ro.js +1 -1
  196. package/dist/locale/ro.min.js +1 -1
  197. package/dist/locale/ro.min.mjs +1 -1
  198. package/dist/locale/ro.mjs +1 -1
  199. package/dist/locale/ru.js +1 -1
  200. package/dist/locale/ru.min.js +1 -1
  201. package/dist/locale/ru.min.mjs +1 -1
  202. package/dist/locale/ru.mjs +1 -1
  203. package/dist/locale/sk.js +1 -1
  204. package/dist/locale/sk.min.js +1 -1
  205. package/dist/locale/sk.min.mjs +1 -1
  206. package/dist/locale/sk.mjs +1 -1
  207. package/dist/locale/sl.js +1 -1
  208. package/dist/locale/sl.min.js +1 -1
  209. package/dist/locale/sl.min.mjs +1 -1
  210. package/dist/locale/sl.mjs +1 -1
  211. package/dist/locale/sr.js +1 -1
  212. package/dist/locale/sr.min.js +1 -1
  213. package/dist/locale/sr.min.mjs +1 -1
  214. package/dist/locale/sr.mjs +1 -1
  215. package/dist/locale/sv.js +1 -1
  216. package/dist/locale/sv.min.js +1 -1
  217. package/dist/locale/sv.min.mjs +1 -1
  218. package/dist/locale/sv.mjs +1 -1
  219. package/dist/locale/sw.js +1 -1
  220. package/dist/locale/sw.min.js +1 -1
  221. package/dist/locale/sw.min.mjs +1 -1
  222. package/dist/locale/sw.mjs +1 -1
  223. package/dist/locale/ta.js +1 -1
  224. package/dist/locale/ta.min.js +1 -1
  225. package/dist/locale/ta.min.mjs +1 -1
  226. package/dist/locale/ta.mjs +1 -1
  227. package/dist/locale/te.js +1 -1
  228. package/dist/locale/te.min.js +1 -1
  229. package/dist/locale/te.min.mjs +1 -1
  230. package/dist/locale/te.mjs +1 -1
  231. package/dist/locale/th.js +1 -1
  232. package/dist/locale/th.min.js +1 -1
  233. package/dist/locale/th.min.mjs +1 -1
  234. package/dist/locale/th.mjs +1 -1
  235. package/dist/locale/tk.js +1 -1
  236. package/dist/locale/tk.min.js +1 -1
  237. package/dist/locale/tk.min.mjs +1 -1
  238. package/dist/locale/tk.mjs +1 -1
  239. package/dist/locale/tr.js +1 -1
  240. package/dist/locale/tr.min.js +1 -1
  241. package/dist/locale/tr.min.mjs +1 -1
  242. package/dist/locale/tr.mjs +1 -1
  243. package/dist/locale/ug-cn.js +1 -1
  244. package/dist/locale/ug-cn.min.js +1 -1
  245. package/dist/locale/ug-cn.min.mjs +1 -1
  246. package/dist/locale/ug-cn.mjs +1 -1
  247. package/dist/locale/uk.js +1 -1
  248. package/dist/locale/uk.min.js +1 -1
  249. package/dist/locale/uk.min.mjs +1 -1
  250. package/dist/locale/uk.mjs +1 -1
  251. package/dist/locale/uz-uz.js +1 -1
  252. package/dist/locale/uz-uz.min.js +1 -1
  253. package/dist/locale/uz-uz.min.mjs +1 -1
  254. package/dist/locale/uz-uz.mjs +1 -1
  255. package/dist/locale/vi.js +1 -1
  256. package/dist/locale/vi.min.js +1 -1
  257. package/dist/locale/vi.min.mjs +1 -1
  258. package/dist/locale/vi.mjs +1 -1
  259. package/dist/locale/zh-cn.js +1 -1
  260. package/dist/locale/zh-cn.min.js +1 -1
  261. package/dist/locale/zh-cn.min.mjs +1 -1
  262. package/dist/locale/zh-cn.mjs +1 -1
  263. package/dist/locale/zh-hk.js +1 -1
  264. package/dist/locale/zh-hk.min.js +1 -1
  265. package/dist/locale/zh-hk.min.mjs +1 -1
  266. package/dist/locale/zh-hk.mjs +1 -1
  267. package/dist/locale/zh-mo.js +1 -1
  268. package/dist/locale/zh-mo.min.js +1 -1
  269. package/dist/locale/zh-mo.min.mjs +1 -1
  270. package/dist/locale/zh-mo.mjs +1 -1
  271. package/dist/locale/zh-tw.js +1 -1
  272. package/dist/locale/zh-tw.min.js +1 -1
  273. package/dist/locale/zh-tw.min.mjs +1 -1
  274. package/dist/locale/zh-tw.mjs +1 -1
  275. package/es/component.mjs +4 -4
  276. package/es/components/affix/src/affix.d.ts +1 -1
  277. package/es/components/affix/src/affix.vue.d.ts +3 -3
  278. package/es/components/alert/src/alert.d.ts +1 -1
  279. package/es/components/alert/src/alert.vue.d.ts +2 -2
  280. package/es/components/anchor/src/anchor.vue.d.ts +1 -1
  281. package/es/components/autocomplete/src/autocomplete.d.ts +3 -3
  282. package/es/components/autocomplete/src/autocomplete.vue.d.ts +3 -3
  283. package/es/components/avatar/src/avatar-group.d.ts +1 -1
  284. package/es/components/avatar/src/avatar.d.ts +1 -1
  285. package/es/components/backtop/src/backtop.vue.d.ts +2 -2
  286. package/es/components/button/src/button-group.d.ts +1 -1
  287. package/es/components/button/src/button-group.vue.d.ts +1 -1
  288. package/es/components/button/src/button.d.ts +1 -1
  289. package/es/components/button/src/button.vue.d.ts +3 -3
  290. package/es/components/button/src/use-button.d.ts +1 -1
  291. package/es/components/carousel/src/carousel.vue.d.ts +3 -3
  292. package/es/components/cascader/src/cascader.d.ts +2 -2
  293. package/es/components/cascader/src/cascader.vue.d.ts +14 -14
  294. package/es/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.mjs +2 -2
  295. package/es/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.mjs +1 -1
  296. package/es/components/checkbox/src/checkbox-button.vue.d.ts +2 -2
  297. package/es/components/checkbox/src/checkbox-group.vue.d.ts +3 -3
  298. package/es/components/checkbox/src/checkbox.vue.d.ts +2 -2
  299. package/es/components/col/src/col.vue.d.ts +1 -1
  300. package/es/components/collapse/src/collapse.d.ts +1 -1
  301. package/es/components/color-picker/src/color-picker.vue.d.ts +10 -10
  302. package/es/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.mjs +1 -1
  303. package/es/components/color-picker-panel/src/color-picker-panel.vue.d.ts +1 -1
  304. package/es/components/config-provider/src/config-provider.d.ts +2 -2
  305. package/es/components/countdown/src/countdown.vue.d.ts +1 -1
  306. package/es/components/countdown/src/countdown.vue_vue_type_script_setup_true_lang.mjs +1 -1
  307. package/es/components/date-picker/src/date-picker.d.ts +15 -15
  308. package/es/components/date-picker/src/props.d.ts +2 -2
  309. package/es/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +1 -1
  310. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +1 -1
  311. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.mjs +1 -1
  312. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.mjs +1 -1
  313. package/es/components/date-picker-panel/src/date-picker-panel.d.ts +4 -4
  314. package/es/components/date-picker-panel/src/panel-utils.d.ts +3 -3
  315. package/es/components/date-picker-panel/src/props/date-picker-panel.d.ts +1 -1
  316. package/es/components/descriptions/src/description-item.d.ts +9 -9
  317. package/es/components/descriptions/src/description.vue.d.ts +1 -1
  318. package/es/components/dialog/src/dialog-content.vue.d.ts +1 -1
  319. package/es/components/dialog/src/dialog.vue.d.ts +4 -4
  320. package/es/components/divider/src/divider.d.ts +1 -1
  321. package/es/components/divider/src/divider.vue.d.ts +1 -1
  322. package/es/components/drawer/src/drawer.vue.d.ts +5 -5
  323. package/es/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
  324. package/es/components/dropdown/src/dropdown.d.ts +3 -3
  325. package/es/components/dropdown/src/dropdown.vue.d.ts +62 -62
  326. package/es/components/form/src/form-item.d.ts +1 -1
  327. package/es/components/form/src/form.d.ts +2 -2
  328. package/es/components/image/src/image.vue.d.ts +4 -4
  329. package/es/components/image-viewer/src/image-viewer.vue.d.ts +4 -4
  330. package/es/components/index.mjs +10 -10
  331. package/es/components/input/src/input.d.ts +2 -2
  332. package/es/components/input/src/input.vue.d.ts +7 -7
  333. package/es/components/input-number/src/input-number.d.ts +3 -3
  334. package/es/components/input-number/src/input-number.vue.d.ts +8 -8
  335. package/es/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.mjs +1 -1
  336. package/es/components/input-otp/src/input-otp.vue.d.ts +1 -1
  337. package/es/components/input-tag/src/input-tag.d.ts +1 -1
  338. package/es/components/input-tag/src/input-tag.vue.d.ts +11 -11
  339. package/es/components/link/src/link.d.ts +1 -1
  340. package/es/components/link/src/link.vue.d.ts +2 -2
  341. package/es/components/mention/src/mention.d.ts +3 -3
  342. package/es/components/mention/src/mention.vue.d.ts +3 -3
  343. package/es/components/menu/src/menu.d.ts +3 -3
  344. package/es/components/menu/src/menu.mjs +1 -1
  345. package/es/components/menu/src/sub-menu.d.ts +1 -1
  346. package/es/components/menu/src/utils/menu-item.mjs +1 -1
  347. package/es/components/menu/src/utils/submenu.mjs +1 -1
  348. package/es/components/message/src/instance.d.ts +1 -1
  349. package/es/components/message/src/message.d.ts +1 -1
  350. package/es/components/message/src/message.vue.d.ts +6 -6
  351. package/es/components/message-box/src/index.vue.d.ts +33 -33
  352. package/es/components/message-box/src/index.vue_vue_type_script_lang.mjs +1 -1
  353. package/es/components/notification/src/notification.d.ts +1 -1
  354. package/es/components/notification/src/notification.vue.d.ts +4 -4
  355. package/es/components/page-header/src/page-header.vue.d.ts +1 -1
  356. package/es/components/pagination/src/components/sizes.vue.d.ts +1 -1
  357. package/es/components/pagination/src/pagination.d.ts +3 -3
  358. package/es/components/popconfirm/src/popconfirm.d.ts +2 -2
  359. package/es/components/popconfirm/src/popconfirm.vue.d.ts +2 -2
  360. package/es/components/popover/src/popover.d.ts +1 -1
  361. package/es/components/popover/src/popover.vue.d.ts +8 -8
  362. package/es/components/popper/src/composables/use-content.d.ts +4 -4
  363. package/es/components/popper/src/content.vue.d.ts +5 -5
  364. package/es/components/popper/src/popper.d.ts +2 -2
  365. package/es/components/progress/src/progress.d.ts +1 -1
  366. package/es/components/progress/src/progress.vue.d.ts +3 -3
  367. package/es/components/radio/src/radio-button.vue.d.ts +1 -1
  368. package/es/components/radio/src/radio-group.vue.d.ts +3 -3
  369. package/es/components/radio/src/radio.vue.d.ts +1 -1
  370. package/es/components/rate/src/rate.vue.d.ts +2 -2
  371. package/es/components/resizable-columns/index.d.ts +2 -2
  372. package/es/components/resizable-columns/src/resizable-column.vue.d.ts +1 -1
  373. package/es/components/result/src/result.vue.d.ts +1 -1
  374. package/es/components/row/src/row.d.ts +2 -2
  375. package/es/components/row/src/row.vue.d.ts +1 -1
  376. package/es/components/scrollbar/src/scrollbar.vue.d.ts +2 -2
  377. package/es/components/segmented/index.d.ts +1 -1
  378. package/es/components/select/src/select.d.ts +2 -2
  379. package/es/components/select/src/select.vue.d.ts +60 -60
  380. package/es/components/select/src/select.vue_vue_type_script_lang.mjs +1 -1
  381. package/es/components/select/src/useSelect.d.ts +1 -1
  382. package/es/components/select-v2/src/defaults.d.ts +2 -2
  383. package/es/components/select-v2/src/select.vue.d.ts +54 -54
  384. package/es/components/select-v2/src/select.vue_vue_type_script_lang.mjs +1 -1
  385. package/es/components/slider/src/button.vue.d.ts +1 -1
  386. package/es/components/slider/src/slider.vue.d.ts +5 -5
  387. package/es/components/space/src/space.d.ts +3 -3
  388. package/es/components/splitter/src/split-bar.vue.d.ts +1 -1
  389. package/es/components/statistic/src/statistic.vue.d.ts +2 -2
  390. package/es/components/steps/src/item.vue.d.ts +1 -1
  391. package/es/components/steps/src/steps.vue.d.ts +1 -1
  392. package/es/components/switch/src/switch.vue.d.ts +1 -1
  393. package/es/components/table/src/filter-panel.vue.d.ts +49 -49
  394. package/es/components/table/src/store/helper.d.ts +0 -12
  395. package/es/components/table/src/store/index.d.ts +0 -24
  396. package/es/components/table/src/store/watcher.d.ts +0 -2
  397. package/es/components/table/src/store/watcher.mjs +0 -64
  398. package/es/components/table/src/store/watcher.mjs.map +1 -1
  399. package/es/components/table/src/table/style-helper.d.ts +1 -1
  400. package/es/components/table/src/table/style-helper.mjs +0 -4
  401. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  402. package/es/components/table/src/table-body/defaults.d.ts +1 -2
  403. package/es/components/table/src/table-body/defaults.mjs +1 -2
  404. package/es/components/table/src/table-body/defaults.mjs.map +1 -1
  405. package/es/components/table/src/table-body/index.mjs +1 -1
  406. package/es/components/table/src/table-body/render-helper.mjs +2 -11
  407. package/es/components/table/src/table-body/render-helper.mjs.map +1 -1
  408. package/es/components/table/src/table-body/styles-helper.mjs.map +1 -1
  409. package/es/components/table/src/table-footer/index.d.ts +1 -1
  410. package/es/components/table/src/table-header/index.d.ts +7 -7
  411. package/es/components/table/src/table-header/index.mjs +1 -1
  412. package/es/components/table/src/table-header/index.mjs.map +1 -1
  413. package/es/components/table/src/table.mjs.map +1 -1
  414. package/es/components/table/src/table.vue.d.ts +4 -17
  415. package/es/components/table/src/table.vue_vue_type_script_setup_true_lang.mjs +5 -7
  416. package/es/components/table/src/table.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  417. package/es/components/tabs/src/tab-pane.vue.d.ts +1 -1
  418. package/es/components/tabs/src/tabs.d.ts +5 -5
  419. package/es/components/tag/src/tag.d.ts +1 -1
  420. package/es/components/time-picker/src/common/picker.vue.d.ts +17 -17
  421. package/es/components/time-picker/src/common/props.d.ts +2 -2
  422. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_setup_true_lang.mjs +1 -1
  423. package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +3 -3
  424. package/es/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +3 -3
  425. package/es/components/time-picker/src/time-picker.d.ts +15 -15
  426. package/es/components/time-select/src/time-select.vue.d.ts +7 -7
  427. package/es/components/timeline/src/timeline-item.d.ts +1 -1
  428. package/es/components/timeline/src/timeline-item.vue.d.ts +1 -1
  429. package/es/components/tooltip/src/content.vue.d.ts +4 -4
  430. package/es/components/tooltip/src/tooltip.d.ts +1 -1
  431. package/es/components/tooltip/src/tooltip.vue.d.ts +10 -10
  432. package/es/components/tour/src/content.d.ts +1 -1
  433. package/es/components/tour/src/content.vue.d.ts +1 -1
  434. package/es/components/tour/src/mask.vue.d.ts +1 -1
  435. package/es/components/tour/src/step.d.ts +1 -1
  436. package/es/components/tour/src/step.vue.d.ts +1 -1
  437. package/es/components/tour/src/tour.d.ts +1 -1
  438. package/es/components/tour/src/tour.vue.d.ts +4 -4
  439. package/es/components/tree/src/tree-node.vue.d.ts +6 -6
  440. package/es/components/tree/src/tree.vue.d.ts +9 -9
  441. package/es/components/tree-select/src/tree-select.vue.d.ts +26 -26
  442. package/es/components/tree-v2/src/composables/useTree.d.ts +6 -6
  443. package/es/components/upload/src/upload.vue.d.ts +1 -1
  444. package/es/components/virtual-list/src/builders/build-list.d.ts +3 -3
  445. package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +3 -3
  446. package/es/components/virtual-list/src/components/fixed-size-list.d.ts +3 -3
  447. package/es/constants/index.mjs +2 -2
  448. package/es/directives/trap-focus/index.mjs +1 -1
  449. package/es/hooks/use-floating/index.d.ts +20 -20
  450. package/es/hooks/use-popper/index.d.ts +4 -4
  451. package/es/index.mjs +17 -17
  452. package/es/plugin.mjs +1 -1
  453. package/es/utils/vue/size.d.ts +1 -1
  454. package/es/version.d.ts +1 -1
  455. package/es/version.mjs +1 -1
  456. package/es/version.mjs.map +1 -1
  457. package/lib/component.js +111 -111
  458. package/lib/components/affix/src/affix.d.ts +1 -1
  459. package/lib/components/affix/src/affix.vue.d.ts +3 -3
  460. package/lib/components/alert/src/alert.d.ts +1 -1
  461. package/lib/components/alert/src/alert.vue.d.ts +2 -2
  462. package/lib/components/anchor/src/anchor.vue.d.ts +1 -1
  463. package/lib/components/autocomplete/src/autocomplete.d.ts +3 -3
  464. package/lib/components/autocomplete/src/autocomplete.vue.d.ts +3 -3
  465. package/lib/components/avatar/src/avatar-group.d.ts +1 -1
  466. package/lib/components/avatar/src/avatar.d.ts +1 -1
  467. package/lib/components/backtop/src/backtop.vue.d.ts +2 -2
  468. package/lib/components/button/src/button-group.d.ts +1 -1
  469. package/lib/components/button/src/button-group.vue.d.ts +1 -1
  470. package/lib/components/button/src/button.d.ts +1 -1
  471. package/lib/components/button/src/button.vue.d.ts +3 -3
  472. package/lib/components/button/src/use-button.d.ts +1 -1
  473. package/lib/components/carousel/src/carousel.vue.d.ts +3 -3
  474. package/lib/components/cascader/src/cascader.d.ts +2 -2
  475. package/lib/components/cascader/src/cascader.vue.d.ts +14 -14
  476. package/lib/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.js +40 -40
  477. package/lib/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.js.map +1 -1
  478. package/lib/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.js +12 -12
  479. package/lib/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.js.map +1 -1
  480. package/lib/components/checkbox/src/checkbox-button.vue.d.ts +2 -2
  481. package/lib/components/checkbox/src/checkbox-group.vue.d.ts +3 -3
  482. package/lib/components/checkbox/src/checkbox.vue.d.ts +2 -2
  483. package/lib/components/col/src/col.vue.d.ts +1 -1
  484. package/lib/components/collapse/src/collapse.d.ts +1 -1
  485. package/lib/components/color-picker/src/color-picker.vue.d.ts +10 -10
  486. package/lib/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.js +18 -18
  487. package/lib/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  488. package/lib/components/color-picker-panel/src/color-picker-panel.vue.d.ts +1 -1
  489. package/lib/components/config-provider/src/config-provider.d.ts +2 -2
  490. package/lib/components/countdown/src/countdown.vue.d.ts +1 -1
  491. package/lib/components/countdown/src/countdown.vue_vue_type_script_setup_true_lang.js +1 -1
  492. package/lib/components/date-picker/src/date-picker.d.ts +15 -15
  493. package/lib/components/date-picker/src/props.d.ts +2 -2
  494. package/lib/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +1 -1
  495. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +1 -1
  496. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.js +18 -18
  497. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.js.map +1 -1
  498. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.js +23 -23
  499. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.js.map +1 -1
  500. package/lib/components/date-picker-panel/src/date-picker-panel.d.ts +4 -4
  501. package/lib/components/date-picker-panel/src/panel-utils.d.ts +3 -3
  502. package/lib/components/date-picker-panel/src/props/date-picker-panel.d.ts +1 -1
  503. package/lib/components/descriptions/src/description-item.d.ts +9 -9
  504. package/lib/components/descriptions/src/description.vue.d.ts +1 -1
  505. package/lib/components/dialog/src/dialog-content.vue.d.ts +1 -1
  506. package/lib/components/dialog/src/dialog.vue.d.ts +4 -4
  507. package/lib/components/divider/src/divider.d.ts +1 -1
  508. package/lib/components/divider/src/divider.vue.d.ts +1 -1
  509. package/lib/components/drawer/src/drawer.vue.d.ts +5 -5
  510. package/lib/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
  511. package/lib/components/dropdown/src/dropdown.d.ts +3 -3
  512. package/lib/components/dropdown/src/dropdown.vue.d.ts +62 -62
  513. package/lib/components/form/src/form-item.d.ts +1 -1
  514. package/lib/components/form/src/form.d.ts +2 -2
  515. package/lib/components/image/src/image.vue.d.ts +4 -4
  516. package/lib/components/image-viewer/src/image-viewer.vue.d.ts +4 -4
  517. package/lib/components/index.js +134 -134
  518. package/lib/components/input/src/input.d.ts +2 -2
  519. package/lib/components/input/src/input.vue.d.ts +7 -7
  520. package/lib/components/input-number/src/input-number.d.ts +3 -3
  521. package/lib/components/input-number/src/input-number.vue.d.ts +8 -8
  522. package/lib/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.js +12 -12
  523. package/lib/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.js.map +1 -1
  524. package/lib/components/input-otp/src/input-otp.vue.d.ts +1 -1
  525. package/lib/components/input-tag/src/input-tag.d.ts +1 -1
  526. package/lib/components/input-tag/src/input-tag.vue.d.ts +11 -11
  527. package/lib/components/link/src/link.d.ts +1 -1
  528. package/lib/components/link/src/link.vue.d.ts +2 -2
  529. package/lib/components/mention/src/mention.d.ts +3 -3
  530. package/lib/components/mention/src/mention.vue.d.ts +3 -3
  531. package/lib/components/menu/src/menu.d.ts +3 -3
  532. package/lib/components/menu/src/menu.js +7 -7
  533. package/lib/components/menu/src/menu.js.map +1 -1
  534. package/lib/components/menu/src/sub-menu.d.ts +1 -1
  535. package/lib/components/menu/src/utils/menu-item.js +11 -11
  536. package/lib/components/menu/src/utils/menu-item.js.map +1 -1
  537. package/lib/components/menu/src/utils/submenu.js +9 -9
  538. package/lib/components/menu/src/utils/submenu.js.map +1 -1
  539. package/lib/components/message/src/instance.d.ts +1 -1
  540. package/lib/components/message/src/message.d.ts +1 -1
  541. package/lib/components/message/src/message.vue.d.ts +6 -6
  542. package/lib/components/message-box/src/index.vue.d.ts +33 -33
  543. package/lib/components/message-box/src/index.vue_vue_type_script_lang.js +19 -19
  544. package/lib/components/message-box/src/index.vue_vue_type_script_lang.js.map +1 -1
  545. package/lib/components/notification/src/notification.d.ts +1 -1
  546. package/lib/components/notification/src/notification.vue.d.ts +4 -4
  547. package/lib/components/page-header/src/page-header.vue.d.ts +1 -1
  548. package/lib/components/pagination/src/components/sizes.vue.d.ts +1 -1
  549. package/lib/components/pagination/src/pagination.d.ts +3 -3
  550. package/lib/components/popconfirm/src/popconfirm.d.ts +2 -2
  551. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +2 -2
  552. package/lib/components/popover/src/popover.d.ts +1 -1
  553. package/lib/components/popover/src/popover.vue.d.ts +8 -8
  554. package/lib/components/popper/src/composables/use-content.d.ts +4 -4
  555. package/lib/components/popper/src/content.vue.d.ts +5 -5
  556. package/lib/components/popper/src/popper.d.ts +2 -2
  557. package/lib/components/progress/src/progress.d.ts +1 -1
  558. package/lib/components/progress/src/progress.vue.d.ts +3 -3
  559. package/lib/components/radio/src/radio-button.vue.d.ts +1 -1
  560. package/lib/components/radio/src/radio-group.vue.d.ts +3 -3
  561. package/lib/components/radio/src/radio.vue.d.ts +1 -1
  562. package/lib/components/rate/src/rate.vue.d.ts +2 -2
  563. package/lib/components/resizable-columns/index.d.ts +2 -2
  564. package/lib/components/resizable-columns/src/resizable-column.vue.d.ts +1 -1
  565. package/lib/components/result/src/result.vue.d.ts +1 -1
  566. package/lib/components/row/src/row.d.ts +2 -2
  567. package/lib/components/row/src/row.vue.d.ts +1 -1
  568. package/lib/components/scrollbar/src/scrollbar.vue.d.ts +2 -2
  569. package/lib/components/segmented/index.d.ts +1 -1
  570. package/lib/components/select/src/select.d.ts +2 -2
  571. package/lib/components/select/src/select.vue.d.ts +60 -60
  572. package/lib/components/select/src/select.vue_vue_type_script_lang.js +10 -10
  573. package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
  574. package/lib/components/select/src/useSelect.d.ts +1 -1
  575. package/lib/components/select-v2/src/defaults.d.ts +2 -2
  576. package/lib/components/select-v2/src/select.vue.d.ts +54 -54
  577. package/lib/components/select-v2/src/select.vue_vue_type_script_lang.js +10 -10
  578. package/lib/components/select-v2/src/select.vue_vue_type_script_lang.js.map +1 -1
  579. package/lib/components/slider/src/button.vue.d.ts +1 -1
  580. package/lib/components/slider/src/slider.vue.d.ts +5 -5
  581. package/lib/components/space/src/space.d.ts +3 -3
  582. package/lib/components/splitter/src/split-bar.vue.d.ts +1 -1
  583. package/lib/components/statistic/src/statistic.vue.d.ts +2 -2
  584. package/lib/components/steps/src/item.vue.d.ts +1 -1
  585. package/lib/components/steps/src/steps.vue.d.ts +1 -1
  586. package/lib/components/switch/src/switch.vue.d.ts +1 -1
  587. package/lib/components/table/src/filter-panel.vue.d.ts +49 -49
  588. package/lib/components/table/src/store/helper.d.ts +0 -12
  589. package/lib/components/table/src/store/index.d.ts +0 -24
  590. package/lib/components/table/src/store/watcher.d.ts +0 -2
  591. package/lib/components/table/src/store/watcher.js +0 -64
  592. package/lib/components/table/src/store/watcher.js.map +1 -1
  593. package/lib/components/table/src/table/style-helper.d.ts +1 -1
  594. package/lib/components/table/src/table/style-helper.js +0 -4
  595. package/lib/components/table/src/table/style-helper.js.map +1 -1
  596. package/lib/components/table/src/table-body/defaults.d.ts +1 -2
  597. package/lib/components/table/src/table-body/defaults.js +0 -2
  598. package/lib/components/table/src/table-body/defaults.js.map +1 -1
  599. package/lib/components/table/src/table-body/index.js +1 -1
  600. package/lib/components/table/src/table-body/render-helper.js +2 -11
  601. package/lib/components/table/src/table-body/render-helper.js.map +1 -1
  602. package/lib/components/table/src/table-body/styles-helper.js.map +1 -1
  603. package/lib/components/table/src/table-footer/index.d.ts +1 -1
  604. package/lib/components/table/src/table-header/index.d.ts +7 -7
  605. package/lib/components/table/src/table-header/index.js +1 -1
  606. package/lib/components/table/src/table-header/index.js.map +1 -1
  607. package/lib/components/table/src/table.js.map +1 -1
  608. package/lib/components/table/src/table.vue.d.ts +4 -17
  609. package/lib/components/table/src/table.vue_vue_type_script_setup_true_lang.js +13 -15
  610. package/lib/components/table/src/table.vue_vue_type_script_setup_true_lang.js.map +1 -1
  611. package/lib/components/tabs/src/tab-pane.vue.d.ts +1 -1
  612. package/lib/components/tabs/src/tabs.d.ts +5 -5
  613. package/lib/components/tag/src/tag.d.ts +1 -1
  614. package/lib/components/time-picker/src/common/picker.vue.d.ts +17 -17
  615. package/lib/components/time-picker/src/common/props.d.ts +2 -2
  616. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_setup_true_lang.js +10 -10
  617. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_setup_true_lang.js.map +1 -1
  618. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +3 -3
  619. package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +3 -3
  620. package/lib/components/time-picker/src/time-picker.d.ts +15 -15
  621. package/lib/components/time-select/src/time-select.vue.d.ts +7 -7
  622. package/lib/components/timeline/src/timeline-item.d.ts +1 -1
  623. package/lib/components/timeline/src/timeline-item.vue.d.ts +1 -1
  624. package/lib/components/tooltip/src/content.vue.d.ts +4 -4
  625. package/lib/components/tooltip/src/tooltip.d.ts +1 -1
  626. package/lib/components/tooltip/src/tooltip.vue.d.ts +10 -10
  627. package/lib/components/tour/src/content.d.ts +1 -1
  628. package/lib/components/tour/src/content.vue.d.ts +1 -1
  629. package/lib/components/tour/src/mask.vue.d.ts +1 -1
  630. package/lib/components/tour/src/step.d.ts +1 -1
  631. package/lib/components/tour/src/step.vue.d.ts +1 -1
  632. package/lib/components/tour/src/tour.d.ts +1 -1
  633. package/lib/components/tour/src/tour.vue.d.ts +4 -4
  634. package/lib/components/tree/src/tree-node.vue.d.ts +6 -6
  635. package/lib/components/tree/src/tree.vue.d.ts +9 -9
  636. package/lib/components/tree-select/src/tree-select.vue.d.ts +26 -26
  637. package/lib/components/tree-v2/src/composables/useTree.d.ts +6 -6
  638. package/lib/components/upload/src/upload.vue.d.ts +1 -1
  639. package/lib/components/virtual-list/src/builders/build-list.d.ts +3 -3
  640. package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +3 -3
  641. package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +3 -3
  642. package/lib/constants/index.js +2 -2
  643. package/lib/directives/trap-focus/index.js +5 -5
  644. package/lib/directives/trap-focus/index.js.map +1 -1
  645. package/lib/hooks/use-floating/index.d.ts +20 -20
  646. package/lib/hooks/use-popper/index.d.ts +4 -4
  647. package/lib/index.js +278 -278
  648. package/lib/plugin.js +12 -12
  649. package/lib/plugin.js.map +1 -1
  650. package/lib/utils/vue/size.d.ts +1 -1
  651. package/lib/version.d.ts +1 -1
  652. package/lib/version.js +1 -1
  653. package/lib/version.js.map +1 -1
  654. package/package.json +1 -1
  655. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"input-number.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../../../../../packages/components/input-number/src/input-number.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ns.b(),\n ns.m(inputNumberSize),\n ns.is('disabled', inputNumberDisabled),\n ns.is('view-mode', !!inputNumberViewMode),\n ns.is('table-input', isTableInput),\n ns.is('without-controls', !controls),\n ns.is('controls-right', controlsAtRight),\n ns.is(align, !!align),\n ]\"\n @dragstart.prevent\n >\n <span\n v-if=\"controls\"\n v-repeat-click=\"decrease\"\n role=\"button\"\n :aria-label=\"t('el.inputNumber.decrease')\"\n :class=\"[ns.e('decrease'), ns.is('disabled', minDisabled)]\"\n @keydown.enter=\"decrease\"\n >\n <slot name=\"decrease-icon\">\n <el-icon>\n <arrow-down v-if=\"controlsAtRight\" />\n <minus v-else />\n </el-icon>\n </slot>\n </span>\n <span\n v-if=\"controls\"\n v-repeat-click=\"increase\"\n role=\"button\"\n :aria-label=\"t('el.inputNumber.increase')\"\n :class=\"[ns.e('increase'), ns.is('disabled', maxDisabled)]\"\n @keydown.enter=\"increase\"\n >\n <slot name=\"increase-icon\">\n <el-icon>\n <arrow-up v-if=\"controlsAtRight\" />\n <plus v-else />\n </el-icon>\n </slot>\n </span>\n <el-input\n :id=\"id\"\n ref=\"input\"\n :type=\"formatter ? 'text' : 'number'\"\n :step=\"step\"\n :model-value=\"displayValue\"\n :placeholder=\"placeholder\"\n :readonly=\"readonly\"\n :disabled=\"inputNumberDisabled\"\n :view-mode=\"inputNumberViewMode\"\n :table-input=\"isTableInput\"\n :size=\"inputNumberSize\"\n :max=\"max\"\n :min=\"min\"\n :name=\"name\"\n :aria-label=\"ariaLabel\"\n :validate-event=\"false\"\n :inputmode=\"inputmode\"\n :formatter=\"formatter\"\n :parser=\"parser\"\n :tabindex=\"tabindex\"\n @keydown=\"handleKeydown\"\n @blur=\"handleBlur\"\n @focus=\"handleFocus\"\n @input=\"handleInput\"\n @change=\"handleInputChange\"\n >\n <template v-if=\"$slots.prefix\" #prefix>\n <slot name=\"prefix\" />\n </template>\n <template v-if=\"$slots.suffix\" #suffix>\n <slot name=\"suffix\" />\n </template>\n </el-input>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, onMounted, onUpdated, reactive, ref } from 'vue'\nimport { watch } from '../../config-provider'\nimport { isNil } from 'lodash-unified'\nimport { ElInput } from '@element-plus/components/input'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n useFormDisabled,\n useFormViewMode,\n useFormItem,\n useFormSize,\n} from '@element-plus/components/form'\nimport { vRepeatClick } from '@element-plus/directives'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport {\n NOOP,\n debugWarn,\n getEventCode,\n getEventKey,\n isNumber,\n isString,\n isUndefined,\n throwError,\n} from '@element-plus/utils'\nimport { ArrowDown, ArrowUp, Minus, Plus } from '@element-plus/icons-vue'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { inputNumberEmits } from './input-number'\nimport { TABLE_INJECTION_KEY } from '../../table/src/tokens'\n\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { InputNumberProps } from './input-number'\n\ndefineOptions({\n name: 'ElInputNumber',\n})\n\nconst props = withDefaults(defineProps<InputNumberProps>(), {\n id: undefined,\n disabled: undefined,\n step: 1,\n max: Number.MAX_SAFE_INTEGER,\n min: Number.MIN_SAFE_INTEGER,\n stepStrictly: false,\n readonly: false,\n controls: true,\n controlsPosition: '',\n valueOnClear: null,\n validateEvent: true,\n inputmode: undefined,\n align: 'center',\n tabindex: 0,\n})\nconst emit = defineEmits(inputNumberEmits)\n\nconst { t } = useLocale()\nconst ns = useNamespace('input-number')\nconst input = ref<InputInstance>()\nconst table = inject(TABLE_INJECTION_KEY, undefined)\n\ninterface Data {\n currentValue: number | null | undefined\n userInput: null | number | string\n}\nconst data = reactive<Data>({\n currentValue: props.modelValue,\n userInput: null,\n})\n\nconst { formItem } = useFormItem()\n\nconst minDisabled = computed(\n () => isNumber(props.modelValue) && props.modelValue <= props.min\n)\nconst maxDisabled = computed(\n () => isNumber(props.modelValue) && props.modelValue >= props.max\n)\n\nconst numPrecision = computed(() => {\n const stepPrecision = getPrecision(props.step)\n if (!isUndefined(props.precision)) {\n if (stepPrecision > props.precision) {\n debugWarn(\n 'InputNumber',\n 'precision should not be less than the decimal places of step'\n )\n }\n return props.precision\n } else {\n return Math.max(getPrecision(props.modelValue), stepPrecision)\n }\n})\nconst controlsAtRight = computed(() => {\n return props.controls && props.controlsPosition === 'right'\n})\n\nconst isTableInput = computed(() => table && props.tableInput)\nconst inputNumberSize = computed(() => {\n if (isTableInput.value) {\n return table!.props.size === 'small' ? 'small' : ''\n } else {\n const formSize = useFormSize()\n return formSize.value\n }\n})\nconst inputNumberDisabled = useFormDisabled()\nconst inputNumberViewMode = useFormViewMode() as any\n\nconst displayValue = computed(() => {\n if (data.userInput !== null) {\n return data.userInput\n }\n let currentValue: number | string | undefined | null = data.currentValue\n if (isNil(currentValue)) return ''\n if (isNumber(currentValue)) {\n if (Number.isNaN(currentValue)) return ''\n if (!isUndefined(props.precision)) {\n currentValue = currentValue.toFixed(props.precision)\n }\n }\n return currentValue\n})\nconst toPrecision = (num: number, pre?: number) => {\n if (isUndefined(pre)) pre = numPrecision.value\n if (pre === 0) return Math.round(num)\n let snum = String(num)\n const pointPos = snum.indexOf('.')\n if (pointPos === -1) return num\n const nums = snum.replace('.', '').split('')\n const datum = nums[pointPos + pre]\n if (!datum) return num\n const length = snum.length\n if (snum.charAt(length - 1) === '5') {\n snum = `${snum.slice(0, Math.max(0, length - 1))}6`\n }\n return Number.parseFloat(Number(snum).toFixed(pre))\n}\nconst getPrecision = (value: number | null | undefined) => {\n if (isNil(value)) return 0\n const valueString = value.toString()\n const dotPosition = valueString.indexOf('.')\n let precision = 0\n if (dotPosition !== -1) {\n precision = valueString.length - dotPosition - 1\n }\n return precision\n}\nconst ensurePrecision = (val: number, coefficient: 1 | -1 = 1) => {\n if (!isNumber(val)) return data.currentValue\n if (val >= Number.MAX_SAFE_INTEGER && coefficient === 1) {\n debugWarn(\n 'InputNumber',\n 'The value has reached the maximum safe integer limit.'\n )\n return val\n } else if (val <= Number.MIN_SAFE_INTEGER && coefficient === -1) {\n debugWarn(\n 'InputNumber',\n 'The value has reached the minimum safe integer limit.'\n )\n return val\n }\n\n // Solve the accuracy problem of JS decimal calculation by converting the value to integer.\n return toPrecision(val + props.step * coefficient)\n}\nconst handleKeydown = (event: KeyboardEvent | Event) => {\n const code = getEventCode(event as KeyboardEvent)\n const key = getEventKey(event as KeyboardEvent)\n\n if (props.disabledScientific && ['e', 'E'].includes(key)) {\n event.preventDefault()\n return\n }\n\n switch (code) {\n case EVENT_CODE.up: {\n event.preventDefault()\n increase()\n break\n }\n case EVENT_CODE.down: {\n event.preventDefault()\n decrease()\n break\n }\n }\n}\nconst increase = () => {\n if (props.readonly || inputNumberDisabled.value || inputNumberViewMode.value || maxDisabled.value) return\n const value = Number(displayValue.value) || 0\n const newVal = ensurePrecision(value)\n setCurrentValue(newVal)\n emit(INPUT_EVENT, data.currentValue)\n setCurrentValueToModelValue()\n}\nconst decrease = () => {\n if (props.readonly || inputNumberDisabled.value || inputNumberViewMode.value || minDisabled.value) return\n const value = Number(displayValue.value) || 0\n const newVal = ensurePrecision(value, -1)\n setCurrentValue(newVal)\n emit(INPUT_EVENT, data.currentValue)\n setCurrentValueToModelValue()\n}\nconst verifyValue = (\n value: number | string | null | undefined,\n update?: boolean\n): number | null | undefined => {\n const { max, min, step, precision, stepStrictly, valueOnClear } = props\n if (max < min) {\n throwError('InputNumber', 'min should not be greater than max.')\n }\n let newVal = !value ? Number(value) : Number.parseFloat(String(value))\n if (isNil(value) || Number.isNaN(newVal)) {\n return null\n }\n if (value === '') {\n if (valueOnClear === null) {\n return null\n }\n newVal = isString(valueOnClear) ? { min, max }[valueOnClear] : valueOnClear\n }\n if (stepStrictly) {\n newVal = toPrecision(\n Math.round(toPrecision(newVal / step)) * step,\n precision\n )\n if (newVal !== value) {\n update && emit(UPDATE_MODEL_EVENT, newVal)\n }\n }\n if (!isUndefined(precision)) {\n newVal = toPrecision(newVal, precision)\n }\n if (newVal > max || newVal < min) {\n newVal = newVal > max ? max : min\n update && emit(UPDATE_MODEL_EVENT, newVal)\n }\n return newVal\n}\nconst setCurrentValue = (\n value: number | string | null | undefined,\n emitChange = true\n) => {\n const oldVal = data.currentValue\n const newVal = verifyValue(value)\n if (!emitChange) {\n emit(UPDATE_MODEL_EVENT, newVal!)\n return\n }\n data.userInput = null\n if (oldVal === newVal && value) return\n emit(UPDATE_MODEL_EVENT, newVal!)\n if (oldVal !== newVal) {\n emit(CHANGE_EVENT, newVal!, oldVal!)\n }\n if (props.validateEvent) {\n formItem?.validate?.('change').catch(NOOP)\n }\n data.currentValue = newVal\n}\nconst handleInput = (value: string) => {\n data.userInput = value\n let newVal = value === '' ? null : Number.parseFloat(value)\n if (Number.isNaN(newVal)) {\n newVal = null\n }\n emit(INPUT_EVENT, newVal)\n setCurrentValue(newVal, false)\n}\nconst handleInputChange = (value: string) => {\n const newVal = value !== '' ? Number.parseFloat(value) : ''\n if (\n (isNumber(newVal) && !Number.isNaN(newVal)) ||\n (props.formatter && Number.isNaN(newVal)) ||\n newVal === ''\n ) {\n setCurrentValue(newVal)\n }\n setCurrentValueToModelValue()\n data.userInput = null\n}\n\nconst focus = () => {\n input.value?.focus?.()\n}\n\nconst blur = () => {\n input.value?.blur?.()\n}\n\nconst handleFocus = (event: MouseEvent | FocusEvent) => {\n emit('focus', event)\n}\n\nconst handleBlur = (event: MouseEvent | FocusEvent) => {\n data.userInput = null\n // When non-numeric content is entered into a numeric input box,\n // the content displayed on the page is not cleared after the value is cleared. #18533\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1398528\n if (data.currentValue === null && input.value?.input) {\n input.value.input.value = props.formatter?.('') ?? ''\n }\n emit('blur', event)\n if (props.validateEvent) {\n formItem?.validate?.('blur').catch(NOOP)\n }\n}\n\nconst setCurrentValueToModelValue = () => {\n if (data.currentValue !== props.modelValue) {\n data.currentValue = props.modelValue\n }\n}\nconst handleWheel = (e: WheelEvent) => {\n if (document.activeElement === e.target) e.preventDefault()\n}\n\nwatch(\n () => props.modelValue,\n (value, oldValue) => {\n const newValue = verifyValue(value, true)\n if (data.userInput === null && newValue !== oldValue) {\n data.currentValue = newValue\n }\n },\n { immediate: true }\n)\n\nwatch(\n () => props.precision,\n () => {\n data.currentValue = verifyValue(props.modelValue)\n }\n)\nonMounted(() => {\n const { min, max, modelValue } = props\n const innerInput = input.value?.input as HTMLInputElement\n innerInput.setAttribute('role', 'spinbutton')\n if (Number.isFinite(max)) {\n innerInput.setAttribute('aria-valuemax', String(max))\n } else {\n innerInput.removeAttribute('aria-valuemax')\n }\n if (Number.isFinite(min)) {\n innerInput.setAttribute('aria-valuemin', String(min))\n } else {\n innerInput.removeAttribute('aria-valuemin')\n }\n innerInput.setAttribute(\n 'aria-valuenow',\n data.currentValue || data.currentValue === 0\n ? String(data.currentValue)\n : ''\n )\n innerInput.setAttribute('aria-disabled', String(inputNumberDisabled.value))\n innerInput.setAttribute('aria-view-mode', String(inputNumberViewMode.value))\n if (!isNumber(modelValue) && modelValue != null) {\n let val: number | null = Number(modelValue)\n if (Number.isNaN(val)) {\n val = null\n }\n emit(UPDATE_MODEL_EVENT, val!)\n }\n innerInput.addEventListener('wheel', handleWheel, { passive: false })\n})\nonUpdated(() => {\n const innerInput = input.value?.input\n innerInput?.setAttribute('aria-valuenow', `${data.currentValue ?? ''}`)\n})\ndefineExpose({\n /** @description get focus the input component */\n focus,\n /** @description remove focus the input component */\n blur,\n})\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"input-number.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../../../../../packages/components/input-number/src/input-number.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ns.b(),\n ns.m(inputNumberSize),\n ns.is('disabled', inputNumberDisabled),\n ns.is('view-mode', !!inputNumberViewMode),\n ns.is('table-input', isTableInput),\n ns.is('without-controls', !controls),\n ns.is('controls-right', controlsAtRight),\n ns.is(align, !!align),\n ]\"\n @dragstart.prevent\n >\n <span\n v-if=\"controls\"\n v-repeat-click=\"decrease\"\n role=\"button\"\n :aria-label=\"t('el.inputNumber.decrease')\"\n :class=\"[ns.e('decrease'), ns.is('disabled', minDisabled)]\"\n @keydown.enter=\"decrease\"\n >\n <slot name=\"decrease-icon\">\n <el-icon>\n <arrow-down v-if=\"controlsAtRight\" />\n <minus v-else />\n </el-icon>\n </slot>\n </span>\n <span\n v-if=\"controls\"\n v-repeat-click=\"increase\"\n role=\"button\"\n :aria-label=\"t('el.inputNumber.increase')\"\n :class=\"[ns.e('increase'), ns.is('disabled', maxDisabled)]\"\n @keydown.enter=\"increase\"\n >\n <slot name=\"increase-icon\">\n <el-icon>\n <arrow-up v-if=\"controlsAtRight\" />\n <plus v-else />\n </el-icon>\n </slot>\n </span>\n <el-input\n :id=\"id\"\n ref=\"input\"\n :type=\"formatter ? 'text' : 'number'\"\n :step=\"step\"\n :model-value=\"displayValue\"\n :placeholder=\"placeholder\"\n :readonly=\"readonly\"\n :disabled=\"inputNumberDisabled\"\n :view-mode=\"inputNumberViewMode\"\n :table-input=\"isTableInput\"\n :size=\"inputNumberSize\"\n :max=\"max\"\n :min=\"min\"\n :name=\"name\"\n :aria-label=\"ariaLabel\"\n :validate-event=\"false\"\n :inputmode=\"inputmode\"\n :formatter=\"formatter\"\n :parser=\"parser\"\n :tabindex=\"tabindex\"\n @keydown=\"handleKeydown\"\n @blur=\"handleBlur\"\n @focus=\"handleFocus\"\n @input=\"handleInput\"\n @change=\"handleInputChange\"\n >\n <template v-if=\"$slots.prefix\" #prefix>\n <slot name=\"prefix\" />\n </template>\n <template v-if=\"$slots.suffix\" #suffix>\n <slot name=\"suffix\" />\n </template>\n </el-input>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, onMounted, onUpdated, reactive, ref } from 'vue'\nimport { watch } from '../../config-provider'\nimport { isNil } from 'lodash-unified'\nimport { ElInput } from '@element-plus/components/input'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n useFormDisabled,\n useFormViewMode,\n useFormItem,\n useFormSize,\n} from '@element-plus/components/form'\nimport { vRepeatClick } from '@element-plus/directives'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport {\n NOOP,\n debugWarn,\n getEventCode,\n getEventKey,\n isNumber,\n isString,\n isUndefined,\n throwError,\n} from '@element-plus/utils'\nimport { ArrowDown, ArrowUp, Minus, Plus } from '@element-plus/icons-vue'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { inputNumberEmits } from './input-number'\nimport { TABLE_INJECTION_KEY } from '../../table/src/tokens'\n\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { InputNumberProps } from './input-number'\n\ndefineOptions({\n name: 'ElInputNumber',\n})\n\nconst props = withDefaults(defineProps<InputNumberProps>(), {\n id: undefined,\n disabled: undefined,\n step: 1,\n max: Number.MAX_SAFE_INTEGER,\n min: Number.MIN_SAFE_INTEGER,\n stepStrictly: false,\n readonly: false,\n controls: true,\n controlsPosition: '',\n valueOnClear: null,\n validateEvent: true,\n inputmode: undefined,\n align: 'center',\n tabindex: 0,\n})\nconst emit = defineEmits(inputNumberEmits)\n\nconst { t } = useLocale()\nconst ns = useNamespace('input-number')\nconst input = ref<InputInstance>()\nconst table = inject(TABLE_INJECTION_KEY, undefined)\n\ninterface Data {\n currentValue: number | null | undefined\n userInput: null | number | string\n}\nconst data = reactive<Data>({\n currentValue: props.modelValue,\n userInput: null,\n})\n\nconst { formItem } = useFormItem()\n\nconst minDisabled = computed(\n () => isNumber(props.modelValue) && props.modelValue <= props.min\n)\nconst maxDisabled = computed(\n () => isNumber(props.modelValue) && props.modelValue >= props.max\n)\n\nconst numPrecision = computed(() => {\n const stepPrecision = getPrecision(props.step)\n if (!isUndefined(props.precision)) {\n if (stepPrecision > props.precision) {\n debugWarn(\n 'InputNumber',\n 'precision should not be less than the decimal places of step'\n )\n }\n return props.precision\n } else {\n return Math.max(getPrecision(props.modelValue), stepPrecision)\n }\n})\nconst controlsAtRight = computed(() => {\n return props.controls && props.controlsPosition === 'right'\n})\n\nconst isTableInput = computed(() => table && props.tableInput)\nconst inputNumberSize = computed(() => {\n if (isTableInput.value) {\n return table!.props.size === 'small' ? 'small' : ''\n } else {\n const formSize = useFormSize()\n return formSize.value\n }\n})\nconst inputNumberDisabled = useFormDisabled()\nconst inputNumberViewMode = useFormViewMode() as any\n\nconst displayValue = computed(() => {\n if (data.userInput !== null) {\n return data.userInput\n }\n let currentValue: number | string | undefined | null = data.currentValue\n if (isNil(currentValue)) return ''\n if (isNumber(currentValue)) {\n if (Number.isNaN(currentValue)) return ''\n if (!isUndefined(props.precision)) {\n currentValue = currentValue.toFixed(props.precision)\n }\n }\n return currentValue\n})\nconst toPrecision = (num: number, pre?: number) => {\n if (isUndefined(pre)) pre = numPrecision.value\n if (pre === 0) return Math.round(num)\n let snum = String(num)\n const pointPos = snum.indexOf('.')\n if (pointPos === -1) return num\n const nums = snum.replace('.', '').split('')\n const datum = nums[pointPos + pre]\n if (!datum) return num\n const length = snum.length\n if (snum.charAt(length - 1) === '5') {\n snum = `${snum.slice(0, Math.max(0, length - 1))}6`\n }\n return Number.parseFloat(Number(snum).toFixed(pre))\n}\nconst getPrecision = (value: number | null | undefined) => {\n if (isNil(value)) return 0\n const valueString = value.toString()\n const dotPosition = valueString.indexOf('.')\n let precision = 0\n if (dotPosition !== -1) {\n precision = valueString.length - dotPosition - 1\n }\n return precision\n}\nconst ensurePrecision = (val: number, coefficient: 1 | -1 = 1) => {\n if (!isNumber(val)) return data.currentValue\n if (val >= Number.MAX_SAFE_INTEGER && coefficient === 1) {\n debugWarn(\n 'InputNumber',\n 'The value has reached the maximum safe integer limit.'\n )\n return val\n } else if (val <= Number.MIN_SAFE_INTEGER && coefficient === -1) {\n debugWarn(\n 'InputNumber',\n 'The value has reached the minimum safe integer limit.'\n )\n return val\n }\n\n // Solve the accuracy problem of JS decimal calculation by converting the value to integer.\n return toPrecision(val + props.step * coefficient)\n}\nconst handleKeydown = (event: KeyboardEvent | Event) => {\n const code = getEventCode(event as KeyboardEvent)\n const key = getEventKey(event as KeyboardEvent)\n\n if (props.disabledScientific && ['e', 'E'].includes(key)) {\n event.preventDefault()\n return\n }\n\n switch (code) {\n case EVENT_CODE.up: {\n event.preventDefault()\n increase()\n break\n }\n case EVENT_CODE.down: {\n event.preventDefault()\n decrease()\n break\n }\n }\n}\nconst increase = () => {\n if (props.readonly || inputNumberDisabled.value || inputNumberViewMode.value || maxDisabled.value) return\n const value = Number(displayValue.value) || 0\n const newVal = ensurePrecision(value)\n setCurrentValue(newVal)\n emit(INPUT_EVENT, data.currentValue)\n setCurrentValueToModelValue()\n}\nconst decrease = () => {\n if (props.readonly || inputNumberDisabled.value || inputNumberViewMode.value || minDisabled.value) return\n const value = Number(displayValue.value) || 0\n const newVal = ensurePrecision(value, -1)\n setCurrentValue(newVal)\n emit(INPUT_EVENT, data.currentValue)\n setCurrentValueToModelValue()\n}\nconst verifyValue = (\n value: number | string | null | undefined,\n update?: boolean\n): number | null | undefined => {\n const { max, min, step, precision, stepStrictly, valueOnClear } = props\n if (max < min) {\n throwError('InputNumber', 'min should not be greater than max.')\n }\n let newVal = !value ? Number(value) : Number.parseFloat(String(value))\n if (isNil(value) || Number.isNaN(newVal)) {\n return null\n }\n if (value === '') {\n if (valueOnClear === null) {\n return null\n }\n newVal = isString(valueOnClear) ? { min, max }[valueOnClear] : valueOnClear\n }\n if (stepStrictly) {\n newVal = toPrecision(\n Math.round(toPrecision(newVal / step)) * step,\n precision\n )\n if (newVal !== value) {\n update && emit(UPDATE_MODEL_EVENT, newVal)\n }\n }\n if (!isUndefined(precision)) {\n newVal = toPrecision(newVal, precision)\n }\n if (newVal > max || newVal < min) {\n newVal = newVal > max ? max : min\n update && emit(UPDATE_MODEL_EVENT, newVal)\n }\n return newVal\n}\nconst setCurrentValue = (\n value: number | string | null | undefined,\n emitChange = true\n) => {\n const oldVal = data.currentValue\n const newVal = verifyValue(value)\n if (!emitChange) {\n emit(UPDATE_MODEL_EVENT, newVal!)\n return\n }\n data.userInput = null\n if (oldVal === newVal && value) return\n emit(UPDATE_MODEL_EVENT, newVal!)\n if (oldVal !== newVal) {\n emit(CHANGE_EVENT, newVal!, oldVal!)\n }\n if (props.validateEvent) {\n formItem?.validate?.('change').catch(NOOP)\n }\n data.currentValue = newVal\n}\nconst handleInput = (value: string) => {\n data.userInput = value\n let newVal = value === '' ? null : Number.parseFloat(value)\n if (Number.isNaN(newVal)) {\n newVal = null\n }\n emit(INPUT_EVENT, newVal)\n setCurrentValue(newVal, false)\n}\nconst handleInputChange = (value: string) => {\n const newVal = value !== '' ? Number.parseFloat(value) : ''\n if (\n (isNumber(newVal) && !Number.isNaN(newVal)) ||\n (props.formatter && Number.isNaN(newVal)) ||\n newVal === ''\n ) {\n setCurrentValue(newVal)\n }\n setCurrentValueToModelValue()\n data.userInput = null\n}\n\nconst focus = () => {\n input.value?.focus?.()\n}\n\nconst blur = () => {\n input.value?.blur?.()\n}\n\nconst handleFocus = (event: MouseEvent | FocusEvent) => {\n emit('focus', event)\n}\n\nconst handleBlur = (event: MouseEvent | FocusEvent) => {\n data.userInput = null\n // When non-numeric content is entered into a numeric input box,\n // the content displayed on the page is not cleared after the value is cleared. #18533\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1398528\n if (data.currentValue === null && input.value?.input) {\n input.value.input.value = props.formatter?.('') ?? ''\n }\n emit('blur', event)\n if (props.validateEvent) {\n formItem?.validate?.('blur').catch(NOOP)\n }\n}\n\nconst setCurrentValueToModelValue = () => {\n if (data.currentValue !== props.modelValue) {\n data.currentValue = props.modelValue\n }\n}\nconst handleWheel = (e: WheelEvent) => {\n if (document.activeElement === e.target) e.preventDefault()\n}\n\nwatch(\n () => props.modelValue,\n (value, oldValue) => {\n const newValue = verifyValue(value, true)\n if (data.userInput === null && newValue !== oldValue) {\n data.currentValue = newValue\n }\n },\n { immediate: true }\n)\n\nwatch(\n () => props.precision,\n () => {\n data.currentValue = verifyValue(props.modelValue)\n }\n)\nonMounted(() => {\n const { min, max, modelValue } = props\n const innerInput = input.value?.input as HTMLInputElement\n innerInput.setAttribute('role', 'spinbutton')\n if (Number.isFinite(max)) {\n innerInput.setAttribute('aria-valuemax', String(max))\n } else {\n innerInput.removeAttribute('aria-valuemax')\n }\n if (Number.isFinite(min)) {\n innerInput.setAttribute('aria-valuemin', String(min))\n } else {\n innerInput.removeAttribute('aria-valuemin')\n }\n innerInput.setAttribute(\n 'aria-valuenow',\n data.currentValue || data.currentValue === 0\n ? String(data.currentValue)\n : ''\n )\n innerInput.setAttribute('aria-disabled', String(inputNumberDisabled.value))\n innerInput.setAttribute('aria-view-mode', String(inputNumberViewMode.value))\n if (!isNumber(modelValue) && modelValue != null) {\n let val: number | null = Number(modelValue)\n if (Number.isNaN(val)) {\n val = null\n }\n emit(UPDATE_MODEL_EVENT, val!)\n }\n innerInput.addEventListener('wheel', handleWheel, { passive: false })\n})\nonUpdated(() => {\n const innerInput = input.value?.input\n innerInput?.setAttribute('aria-valuenow', `${data.currentValue ?? ''}`)\n})\ndefineExpose({\n /** @description get focus the input component */\n focus,\n /** @description remove focus the input component */\n blur,\n})\n</script>\n"],"mappings":"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"}
@@ -35,10 +35,10 @@ declare const __VLS_base: import("vue").DefineComponent<InputOtpProps, {
35
35
  }>, {
36
36
  type: "outlined" | "filled" | "underlined";
37
37
  length: number;
38
- validator: (char: string, index: number) => boolean;
39
38
  size: ComponentSize;
40
39
  disabled: boolean;
41
40
  validateEvent: boolean;
41
+ validator: (char: string, index: number) => boolean;
42
42
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
43
43
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
44
44
  declare const _default: typeof __VLS_export;
@@ -131,7 +131,7 @@ declare const inputTagProps: {
131
131
  readonly validator: ((val: unknown) => boolean) | undefined;
132
132
  readonly __epPropKey: true;
133
133
  };
134
- readonly tagEffect: EpPropFinalized<StringConstructor, "light" | "dark" | "plain", unknown, "light", boolean>;
134
+ readonly tagEffect: EpPropFinalized<StringConstructor, "dark" | "light" | "plain", unknown, "light", boolean>;
135
135
  readonly effect: EpPropFinalized<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown, "light", boolean>;
136
136
  readonly trigger: EpPropFinalized<(new (...args: any[]) => "Enter" | "Space") | (() => "Enter" | "Space") | (((new (...args: any[]) => "Enter" | "Space") | (() => "Enter" | "Space")) | null)[], unknown, unknown, string, boolean>;
137
137
  readonly draggable: BooleanConstructor;
@@ -22,39 +22,39 @@ declare const __VLS_base: import("vue").DefineComponent<InputTagProps, {
22
22
  focus: () => void;
23
23
  blur: () => void;
24
24
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
25
+ clear: () => void;
25
26
  "update:modelValue": (value?: string[] | undefined) => void;
26
27
  change: (value?: string[] | undefined) => void;
27
- input: (value: string) => void;
28
- clear: () => void;
29
28
  focus: (evt: FocusEvent) => void;
30
29
  blur: (evt: FocusEvent) => void;
30
+ input: (value: string) => void;
31
31
  "add-tag": (value: string | string[]) => void;
32
32
  "remove-tag": (value: string, index: number) => void;
33
33
  "drag-tag": (oldIndex: number, newIndex: number, value: string) => void;
34
34
  }, string, import("vue").PublicProps, Readonly<InputTagProps> & Readonly<{
35
+ onClear?: (() => any) | undefined;
35
36
  "onUpdate:modelValue"?: ((value?: string[] | undefined) => any) | undefined;
36
37
  onChange?: ((value?: string[] | undefined) => any) | undefined;
37
- onInput?: ((value: string) => any) | undefined;
38
- onClear?: (() => any) | undefined;
39
38
  onFocus?: ((evt: FocusEvent) => any) | undefined;
40
39
  onBlur?: ((evt: FocusEvent) => any) | undefined;
40
+ onInput?: ((value: string) => any) | undefined;
41
41
  "onAdd-tag"?: ((value: string | string[]) => any) | undefined;
42
42
  "onRemove-tag"?: ((value: string, index: number) => any) | undefined;
43
43
  "onDrag-tag"?: ((oldIndex: number, newIndex: number, value: string) => any) | undefined;
44
44
  }>, {
45
- effect: PopperEffect;
46
- id: string;
47
45
  disabled: boolean;
48
- autocomplete: string;
49
- clearIcon: IconPropType;
46
+ id: string;
50
47
  tabindex: string | number;
51
48
  validateEvent: boolean;
49
+ effect: PopperEffect;
50
+ autocomplete: string;
51
+ clearIcon: IconPropType;
52
+ saveOnBlur: boolean;
52
53
  trigger: "Enter" | "Space";
53
- maxCollapseTags: number;
54
54
  tagType: "info" | "primary" | "success" | "warning" | "danger";
55
- tagEffect: "light" | "dark" | "plain";
56
- saveOnBlur: boolean;
55
+ tagEffect: "dark" | "light" | "plain";
57
56
  delimiter: string | RegExp;
57
+ maxCollapseTags: number;
58
58
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
59
59
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
60
60
  declare const _default: typeof __VLS_export;
@@ -34,7 +34,7 @@ interface LinkProps {
34
34
  * @deprecated Removed after 3.0.0, Use `LinkProps` instead.
35
35
  */
36
36
  declare const linkProps: {
37
- readonly type: EpPropFinalized<StringConstructor, "default" | "info" | "primary" | "success" | "warning" | "danger", unknown, undefined, boolean>;
37
+ readonly type: EpPropFinalized<StringConstructor, "info" | "default" | "primary" | "success" | "warning" | "danger", unknown, undefined, boolean>;
38
38
  readonly underline: EpPropFinalized<readonly [BooleanConstructor, StringConstructor], boolean | "always" | "never" | "hover", unknown, undefined, boolean>;
39
39
  readonly disabled: BooleanConstructor;
40
40
  readonly href: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
@@ -12,10 +12,10 @@ declare const __VLS_base: import("vue").DefineComponent<LinkProps, {}, {}, {}, {
12
12
  }, string, import("vue").PublicProps, Readonly<LinkProps> & Readonly<{
13
13
  onClick?: ((evt: MouseEvent) => any) | undefined;
14
14
  }>, {
15
- underline: boolean | "always" | "never" | "hover";
16
15
  type: "primary" | "success" | "warning" | "info" | "danger" | "default";
17
- target: "_blank" | "_parent" | "_self" | "_top" | (string & NonNullable<unknown>);
16
+ underline: boolean | "always" | "never" | "hover";
18
17
  href: string;
18
+ target: "_blank" | "_parent" | "_self" | "_top" | (string & NonNullable<unknown>);
19
19
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
20
20
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
21
21
  declare const _default: typeof __VLS_export;
@@ -80,7 +80,7 @@ declare const mentionProps: {
80
80
  prefix: EpPropFinalized<(new (...args: any[]) => string | string[]) | (() => string | string[]) | (((new (...args: any[]) => string | string[]) | (() => string | string[])) | null)[], unknown, unknown, string, boolean>;
81
81
  split: EpPropFinalized<StringConstructor, unknown, unknown, string, boolean>;
82
82
  filterOption: EpPropFinalized<(new (...args: any[]) => false | (<T extends MentionOption = MentionOption>(pattern: string, option: T & MentionOption) => boolean)) | (() => false | (<T extends MentionOption = MentionOption>(pattern: string, option: T & MentionOption) => boolean)) | (((new (...args: any[]) => false | (<T extends MentionOption = MentionOption>(pattern: string, option: T & MentionOption) => boolean)) | (() => false | (<T extends MentionOption = MentionOption>(pattern: string, option: T & MentionOption) => boolean))) | null)[], unknown, unknown, () => <T extends MentionOption = MentionOption>(pattern: string, option: T & MentionOption) => boolean, boolean>;
83
- placement: EpPropFinalized<(new (...args: any[]) => "top" | "bottom") | (() => "top" | "bottom") | (((new (...args: any[]) => "top" | "bottom") | (() => "top" | "bottom")) | null)[], unknown, unknown, string, boolean>;
83
+ placement: EpPropFinalized<(new (...args: any[]) => "bottom" | "top") | (() => "bottom" | "top") | (((new (...args: any[]) => "bottom" | "top") | (() => "bottom" | "top")) | null)[], unknown, unknown, string, boolean>;
84
84
  showArrow: BooleanConstructor;
85
85
  offset: EpPropFinalized<NumberConstructor, unknown, unknown, number, boolean>;
86
86
  whole: BooleanConstructor;
@@ -197,7 +197,7 @@ declare const mentionProps: {
197
197
  popperStyle: EpPropFinalized<(new (...args: any[]) => string | false | import("vue").CSSProperties | import("vue").StyleValue[]) | (() => import("vue").StyleValue) | (((new (...args: any[]) => string | false | import("vue").CSSProperties | import("vue").StyleValue[]) | (() => import("vue").StyleValue)) | null)[], unknown, unknown, undefined, boolean>;
198
198
  popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | (((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>)) | null)[], unknown, unknown, () => Partial<Options>, boolean>;
199
199
  props: EpPropFinalized<(new (...args: any[]) => MentionOptionProps) | (() => MentionOptionProps) | (((new (...args: any[]) => MentionOptionProps) | (() => MentionOptionProps)) | null)[], unknown, unknown, () => Required<MentionOptionProps>, boolean>;
200
- inputmode: EpPropFinalized<(new (...args: any[]) => "text" | "email" | "search" | "tel" | "url" | "none" | "numeric" | "decimal") | (() => "text" | "email" | "search" | "tel" | "url" | "none" | "numeric" | "decimal" | undefined) | (((new (...args: any[]) => "text" | "email" | "search" | "tel" | "url" | "none" | "numeric" | "decimal") | (() => "text" | "email" | "search" | "tel" | "url" | "none" | "numeric" | "decimal" | undefined)) | null)[], unknown, unknown, undefined, boolean>;
200
+ inputmode: EpPropFinalized<(new (...args: any[]) => "text" | "search" | "email" | "tel" | "url" | "none" | "numeric" | "decimal") | (() => "text" | "search" | "email" | "tel" | "url" | "none" | "numeric" | "decimal" | undefined) | (((new (...args: any[]) => "text" | "search" | "email" | "tel" | "url" | "none" | "numeric" | "decimal") | (() => "text" | "search" | "email" | "tel" | "url" | "none" | "numeric" | "decimal" | undefined)) | null)[], unknown, unknown, undefined, boolean>;
201
201
  name: StringConstructor;
202
202
  ariaLabel: StringConstructor;
203
203
  id: EpPropFinalized<StringConstructor, unknown, unknown, undefined, boolean>;
@@ -230,7 +230,7 @@ declare const mentionProps: {
230
230
  };
231
231
  type: EpPropFinalized<(new (...args: any[]) => string) | (() => InputType) | (((new (...args: any[]) => string) | (() => InputType)) | null)[], unknown, unknown, "text", boolean>;
232
232
  resize: {
233
- readonly type: import("vue").PropType<EpPropMergeType<StringConstructor, "none" | "both" | "horizontal" | "vertical", unknown>>;
233
+ readonly type: import("vue").PropType<EpPropMergeType<StringConstructor, "horizontal" | "vertical" | "none" | "both", unknown>>;
234
234
  readonly required: false;
235
235
  readonly validator: ((val: unknown) => boolean) | undefined;
236
236
  __epPropKey: true;
@@ -7,11 +7,11 @@ import { MentionProps } from "./mention.js";
7
7
  declare const __VLS_export: <T extends MentionOption = MentionOption>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
8
8
  props: import("vue").PublicProps & __VLS_PrettifyLocal<MentionProps<T> & {
9
9
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
10
- onInput?: ((value: string) => any) | undefined;
11
10
  onFocus?: ((evt: FocusEvent) => any) | undefined;
12
11
  onBlur?: ((evt: FocusEvent) => any) | undefined;
13
- onSelect?: ((option: MentionOption, prefix: string) => any) | undefined;
14
12
  onSearch?: ((pattern: string, prefix: string) => any) | undefined;
13
+ onInput?: ((value: string) => any) | undefined;
14
+ onSelect?: ((option: MentionOption, prefix: string) => any) | undefined;
15
15
  "onWhole-remove"?: ((pattern: string, prefix: string) => any) | undefined;
16
16
  }> & (typeof globalThis extends {
17
17
  __VLS_PROPS_FALLBACK: infer P;
@@ -45,7 +45,7 @@ declare const __VLS_export: <T extends MentionOption = MentionOption>(__VLS_prop
45
45
  index: number;
46
46
  }) => any;
47
47
  };
48
- emit: ((event: "update:modelValue", value: string) => void) & ((event: "input", value: string) => void) & ((event: "focus", evt: FocusEvent) => void) & ((event: "blur", evt: FocusEvent) => void) & ((event: "select", option: MentionOption, prefix: string) => void) & ((event: "search", pattern: string, prefix: string) => void) & ((event: "whole-remove", pattern: string, prefix: string) => void);
48
+ emit: ((event: "update:modelValue", value: string) => void) & ((event: "focus", evt: FocusEvent) => void) & ((event: "blur", evt: FocusEvent) => void) & ((event: "search", pattern: string, prefix: string) => void) & ((event: "input", value: string) => void) & ((event: "select", option: MentionOption, prefix: string) => void) & ((event: "whole-remove", pattern: string, prefix: string) => void);
49
49
  }>) => import("vue").VNode & {
50
50
  __ctx?: Awaited<typeof __VLS_setup>;
51
51
  };
@@ -105,13 +105,13 @@ declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
105
105
  readonly persistent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
106
106
  readonly widget: StringConstructor;
107
107
  }>> & Readonly<{
108
- onClose?: ((index: string, indexPath: string[]) => any) | undefined;
109
- onSelect?: ((index: string, indexPath: string[], item: MenuItemClicked, routerResult?: Promise<void | NavigationFailure> | undefined) => any) | undefined;
110
108
  onOpen?: ((index: string, indexPath: string[]) => any) | undefined;
109
+ onSelect?: ((index: string, indexPath: string[], item: MenuItemClicked, routerResult?: Promise<void | NavigationFailure> | undefined) => any) | undefined;
110
+ onClose?: ((index: string, indexPath: string[]) => any) | undefined;
111
111
  }>, {
112
+ readonly persistent: EpPropMergeType<BooleanConstructor, unknown, unknown>;
112
113
  readonly collapse: boolean;
113
114
  readonly ellipsis: EpPropMergeType<BooleanConstructor, unknown, unknown>;
114
- readonly persistent: EpPropMergeType<BooleanConstructor, unknown, unknown>;
115
115
  readonly mode: EpPropMergeType<StringConstructor, "horizontal" | "vertical", unknown>;
116
116
  readonly showTimeout: number;
117
117
  readonly hideTimeout: number;
@@ -7,10 +7,10 @@ const require_runtime = require("../../../utils/vue/props/runtime.js");
7
7
  const require_icon = require("../../../utils/vue/icon.js");
8
8
  const require_vnode = require("../../../utils/vue/vnode.js");
9
9
  const require_typescript = require("../../../utils/typescript.js");
10
- const require_index = require("../../../directives/click-outside/index.js");
11
- const require_index$1 = require("../../../hooks/use-namespace/index.js");
10
+ const require_index = require("../../../hooks/use-namespace/index.js");
12
11
  const require_for_editor = require("../../config-provider/src/for-editor.js");
13
- const require_index$2 = require("../../icon/index.js");
12
+ const require_index$1 = require("../../icon/index.js");
13
+ const require_index$2 = require("../../../directives/click-outside/index.js");
14
14
  const require_menu_bar = require("./utils/menu-bar.js");
15
15
  const require_menu_collapse_transition = require("./menu-collapse-transition.js");
16
16
  const require_use_menu_css_var = require("./use-menu-css-var.js");
@@ -166,8 +166,8 @@ var menu_default = (0, vue.defineComponent)({
166
166
  const router = instance.appContext.config.globalProperties.$router;
167
167
  const menu = (0, vue.ref)();
168
168
  const subMenu = (0, vue.ref)();
169
- const nsMenu = require_index$1.useNamespace("menu");
170
- const nsSubMenu = require_index$1.useNamespace("sub-menu");
169
+ const nsMenu = require_index.useNamespace("menu");
170
+ const nsSubMenu = require_index.useNamespace("sub-menu");
171
171
  let moreItemWidth = DEFAULT_MORE_ITEM_WIDTH;
172
172
  const sliceIndex = (0, vue.ref)(-1);
173
173
  const openedMenus = (0, vue.ref)(props.defaultOpeneds && !props.collapse ? props.defaultOpeneds.slice(0) : []);
@@ -355,12 +355,12 @@ var menu_default = (0, vue.defineComponent)({
355
355
  class: nsSubMenu.e("hide-arrow"),
356
356
  popperOffset: props.popperOffset
357
357
  }, {
358
- title: () => (0, vue.h)(require_index$2.ElIcon, { class: nsSubMenu.e("icon-more") }, { default: () => (0, vue.h)(props.ellipsisIcon) }),
358
+ title: () => (0, vue.h)(require_index$1.ElIcon, { class: nsSubMenu.e("icon-more") }, { default: () => (0, vue.h)(props.ellipsisIcon) }),
359
359
  default: () => slotMore
360
360
  }));
361
361
  }
362
362
  }
363
- const directives = props.closeOnClickOutside ? [[require_index.default, () => {
363
+ const directives = props.closeOnClickOutside ? [[require_index$2.default, () => {
364
364
  if (!openedMenus.value.length) return;
365
365
  if (!mouseInChild.value) {
366
366
  openedMenus.value.forEach((openedMenu) => emit("close", openedMenu, getIndexPath(openedMenu)));
@@ -1 +1 @@
1
- {"version":3,"file":"menu.js","names":["buildProps","definePropType","mutable","iconPropType","More","isUndefined","useNamespace","MENU_INJECTION_KEY","SUB_MENU_INJECTION_KEY","Menubar","useMenuCssVar","flattedChildren","ElSubMenu","ElIcon","vClickoutside","ElMenuCollapseTransition"],"sources":["../../../../../../packages/components/menu/src/menu.ts"],"sourcesContent":["import {\n computed,\n defineComponent,\n getCurrentInstance,\n h,\n nextTick,\n onMounted,\n provide,\n reactive,\n ref,\n withDirectives,\n} from 'vue'\nimport { watch, watchEffect } from '../../config-provider'\nimport { unrefElement, useResizeObserver } from '@vueuse/core'\nimport { isNil } from 'lodash-unified'\nimport ElIcon from '@element-plus/components/icon'\nimport { More } from '@element-plus/icons-vue'\nimport {\n buildProps,\n definePropType,\n flattedChildren,\n iconPropType,\n isArray,\n isObject,\n isString,\n isUndefined,\n mutable,\n} from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { ClickOutside as vClickoutside } from '@element-plus/directives'\nimport Menubar from './utils/menu-bar'\nimport ElMenuCollapseTransition from './menu-collapse-transition.vue'\nimport ElSubMenu from './sub-menu'\nimport { useMenuCssVar } from './use-menu-css-var'\nimport { MENU_INJECTION_KEY, SUB_MENU_INJECTION_KEY } from './tokens'\n\nimport type { PopperEffect } from '@element-plus/components/popper'\nimport type { MenuItemClicked, MenuProvider, SubMenuProvider } from './types'\nimport type { NavigationFailure, Router } from 'vue-router'\nimport type {\n CSSProperties,\n Component,\n DirectiveArguments,\n ExtractPropTypes,\n ExtractPublicPropTypes,\n VNode,\n VNodeArrayChildren,\n} from 'vue'\nimport type { UseResizeObserverReturn } from '@vueuse/core'\n\nexport const menuProps = buildProps({\n /**\n * @description menu display mode\n */\n mode: {\n type: String,\n values: ['horizontal', 'vertical'],\n default: 'vertical',\n },\n /**\n * @description index of active menu on page load\n */\n defaultActive: {\n type: String,\n default: '',\n },\n /**\n * @description array that contains indexes of currently active sub-menus\n */\n defaultOpeneds: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n /**\n * @description whether only one sub-menu can be active\n */\n uniqueOpened: Boolean,\n /**\n * @description whether `vue-router` mode is activated. If true, index will be used as 'path' to activate the route action. Use with `default-active` to set the active item on load.\n */\n router: Boolean,\n /**\n * @description how sub-menus are triggered, only works when `mode` is 'horizontal'\n */\n menuTrigger: {\n type: String,\n values: ['hover', 'click'],\n default: 'hover',\n },\n /**\n * @description whether the menu is collapsed (available only in vertical mode)\n */\n collapse: Boolean,\n /**\n * @description background color of Menu (hex format) (deprecated, use `--bg-color` instead)\n * @deprecated use `--bg-color` instead\n */\n backgroundColor: String,\n /**\n * @description text color of Menu (hex format) (deprecated, use `--text-color` instead)\n * @deprecated use `--text-color` instead\n */\n textColor: String,\n /**\n * @description text color of currently active menu item (hex format) (deprecated, use `--active-color` instead)\n * @deprecated use `--active-color` instead\n */\n activeTextColor: String,\n /**\n * @description optional, whether menu is collapsed when clicking outside\n */\n closeOnClickOutside: Boolean,\n /**\n * @description whether to enable the collapse transition\n */\n collapseTransition: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether the menu is ellipsis (available only in horizontal mode)\n */\n ellipsis: {\n type: Boolean,\n default: true,\n },\n /**\n * @description offset of the popper (effective for all submenus)\n */\n popperOffset: {\n type: Number,\n default: 6,\n },\n /**\n * @description custom ellipsis icon (available only in horizontal mode and ellipsis is true)\n */\n ellipsisIcon: {\n type: iconPropType,\n default: () => More,\n },\n /**\n * @description Tooltip theme, built-in theme: `dark` / `light` when menu is collapsed\n */\n popperEffect: {\n type: definePropType<PopperEffect>(String),\n default: 'dark',\n },\n /**\n * @description custom class name for all popup menus\n */\n popperClass: String,\n /**\n * @description custom style for all popup menus\n */\n popperStyle: {\n type: definePropType<string | CSSProperties>([String, Object]),\n },\n /**\n * @description control timeout for all menus before showing\n */\n showTimeout: {\n type: Number,\n default: 300,\n },\n /**\n * @description control timeout for all menus before hiding\n */\n hideTimeout: {\n type: Number,\n default: 300,\n },\n /**\n * @description when menu inactive and `persistent` is `false` , dropdown menu will be destroyed\n */\n persistent: {\n type: Boolean,\n default: true,\n },\n widget: String,\n} as const)\nexport type MenuProps = ExtractPropTypes<typeof menuProps>\nexport type MenuPropsPublic = ExtractPublicPropTypes<typeof menuProps>\n\nconst checkIndexPath = (indexPath: unknown): indexPath is string[] =>\n 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 (isUndefined(routerResult) || routerResult instanceof Promise),\n}\nexport type MenuEmits = typeof menuEmits\n\nconst DEFAULT_MORE_ITEM_WIDTH = 64\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 const subMenu = ref<HTMLElement>()\n const nsMenu = useNamespace('menu')\n const nsSubMenu = useNamespace('sub-menu')\n let moreItemWidth = DEFAULT_MORE_ITEM_WIDTH\n\n // data\n const sliceIndex = ref(-1)\n\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 // computed\n const isMenuPopup = computed<MenuProvider['isMenuPopup']>(\n () =>\n props.mode === 'horizontal' ||\n (props.mode === 'vertical' && props.collapse)\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 close = (index: string) => {\n const i = openedMenus.value.indexOf(index)\n if (i !== -1) {\n openedMenus.value.splice(i, 1)\n }\n }\n\n const closeMenu: MenuProvider['closeMenu'] = (index, indexPath) => {\n close(index)\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 isOpened ? closeMenu(index, indexPath) : openMenu(index, indexPath)\n }\n\n const handleMenuItemClick: MenuProvider['handleMenuItemClick'] = (\n menuItem\n ) => {\n if (props.mode === 'horizontal' || props.collapse) {\n openedMenus.value = []\n }\n const { index, indexPath } = menuItem\n if (isNil(index) || isNil(indexPath)) 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 activeIndex.value = item?.index ?? val\n }\n\n const calcMenuItemWidth = (menuItem: HTMLElement) => {\n const computedStyle = getComputedStyle(menuItem)\n const marginLeft = Number.parseInt(computedStyle.marginLeft, 10)\n const marginRight = Number.parseInt(computedStyle.marginRight, 10)\n return menuItem.offsetWidth + marginLeft + marginRight || 0\n }\n\n const calcSliceIndex = () => {\n if (!menu.value) return -1\n\n const items = Array.from(menu.value.childNodes).filter(\n (item) =>\n item.nodeName !== '#comment' &&\n (item.nodeName !== '#text' || item.nodeValue)\n ) as HTMLElement[]\n\n const computedMenuStyle = getComputedStyle(menu.value)\n const paddingLeft = Number.parseInt(computedMenuStyle.paddingLeft, 10)\n const paddingRight = Number.parseInt(computedMenuStyle.paddingRight, 10)\n const menuWidth = menu.value.clientWidth - paddingLeft - paddingRight\n\n let calcWidth = 0\n let sliceIndex = 0\n items.forEach((item, index) => {\n calcWidth += calcMenuItemWidth(item)\n if (calcWidth <= menuWidth - moreItemWidth) {\n sliceIndex = index + 1\n }\n })\n return sliceIndex === items.length ? -1 : sliceIndex\n }\n\n const getIndexPath = (index: string) => subMenus.value[index].indexPath\n\n // Common computer monitor FPS is 60Hz, which means 60 redraws per second. Calculation formula: 1000ms/60 ≈ 16.67ms, In order to avoid a certain chance of repeated triggering when `resize`, set wait to 16.67 * 2 = 33.34\n const debounce = (fn: () => void, wait = 33.34) => {\n let timer: ReturnType<typeof setTimeout> | null\n return () => {\n timer && clearTimeout(timer)\n timer = setTimeout(() => {\n fn()\n }, wait)\n }\n }\n\n let isFirstTimeRender = true\n const handleResize = () => {\n const el = unrefElement(subMenu)\n if (el) moreItemWidth = calcMenuItemWidth(el) || DEFAULT_MORE_ITEM_WIDTH\n if (sliceIndex.value === calcSliceIndex()) return\n const callback = () => {\n sliceIndex.value = -1\n nextTick(() => {\n sliceIndex.value = calcSliceIndex()\n })\n }\n // execute callback directly when first time resize to avoid shaking\n isFirstTimeRender ? callback() : debounce(callback)()\n isFirstTimeRender = false\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(\n () => props.collapse,\n (value) => {\n if (value) openedMenus.value = []\n }\n )\n\n watch(items.value, initMenu)\n\n let resizeStopper: UseResizeObserverReturn['stop']\n watchEffect(() => {\n if (props.mode === 'horizontal' && props.ellipsis)\n resizeStopper = useResizeObserver(menu, handleResize).stop\n else resizeStopper?.()\n })\n\n const mouseInChild = ref(false)\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\n provide<MenuProvider>(\n MENU_INJECTION_KEY,\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\n provide<SubMenuProvider>(`${SUB_MENU_INJECTION_KEY}${instance.uid}`, {\n addSubMenu,\n removeSubMenu,\n mouseInChild,\n level: 0,\n })\n }\n\n // lifecycle\n onMounted(() => {\n if (props.mode === 'horizontal') {\n new Menubar(instance.vnode.el!, nsMenu.namespace.value)\n }\n })\n\n {\n const open = (index: string) => {\n const { indexPath } = subMenus.value[index]\n indexPath.forEach((i) => openMenu(i, indexPath))\n }\n\n expose({\n open,\n close,\n updateActiveIndex,\n handleResize,\n })\n }\n\n const ulStyle = useMenuCssVar(props, 0)\n\n return () => {\n let slot: VNodeArrayChildren = slots.default?.() ?? []\n const vShowMore: VNode[] = []\n\n if (props.mode === 'horizontal' && menu.value) {\n const originalSlot = (\n flattedChildren(slot) as VNodeArrayChildren\n ).filter((vnode) => {\n // Filter text and comment nodes (https://github.com/vuejs/core/blob/c875019d49b4c36a88d929ccadc31ad414747c7b/packages/shared/src/shapeFlags.ts#L5)\n return (vnode as VNode)?.shapeFlag !== 8\n })\n const slotDefault =\n sliceIndex.value === -1\n ? originalSlot\n : originalSlot.slice(0, sliceIndex.value)\n\n const slotMore =\n sliceIndex.value === -1 ? [] : originalSlot.slice(sliceIndex.value)\n\n if (slotMore?.length && props.ellipsis) {\n slot = slotDefault\n vShowMore.push(\n h(\n ElSubMenu,\n {\n ref: subMenu,\n index: 'sub-menu-more',\n class: nsSubMenu.e('hide-arrow'),\n popperOffset: props.popperOffset,\n },\n {\n title: () =>\n h(\n ElIcon,\n {\n class: nsSubMenu.e('icon-more'),\n },\n {\n default: () => h(props.ellipsisIcon as Component),\n }\n ),\n default: () => slotMore,\n }\n )\n )\n }\n }\n\n const directives: DirectiveArguments = props.closeOnClickOutside\n ? [\n [\n vClickoutside,\n () => {\n if (!openedMenus.value.length) return\n\n if (!mouseInChild.value) {\n openedMenus.value.forEach((openedMenu) =>\n emit('close', openedMenu, getIndexPath(openedMenu))\n )\n\n openedMenus.value = []\n }\n },\n ],\n ]\n : []\n\n const vMenu = withDirectives(\n h(\n 'ul',\n {\n key: String(props.collapse),\n role: 'menubar',\n ref: menu,\n style: ulStyle.value,\n class: {\n [nsMenu.b()]: true,\n [nsMenu.m(props.mode)]: true,\n [nsMenu.m('collapse')]: props.collapse,\n },\n widget: props.widget,\n },\n [...slot, ...vShowMore]\n ),\n directives\n )\n\n if (props.collapseTransition && props.mode === 'vertical') {\n return h(ElMenuCollapseTransition, () => vMenu)\n }\n\n return vMenu\n }\n },\n})\n"],"mappings":"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"}
1
+ {"version":3,"file":"menu.js","names":["buildProps","definePropType","mutable","iconPropType","More","isUndefined","useNamespace","MENU_INJECTION_KEY","SUB_MENU_INJECTION_KEY","Menubar","useMenuCssVar","flattedChildren","ElSubMenu","ElIcon","vClickoutside","ElMenuCollapseTransition"],"sources":["../../../../../../packages/components/menu/src/menu.ts"],"sourcesContent":["import {\n computed,\n defineComponent,\n getCurrentInstance,\n h,\n nextTick,\n onMounted,\n provide,\n reactive,\n ref,\n withDirectives,\n} from 'vue'\nimport { watch, watchEffect } from '../../config-provider'\nimport { unrefElement, useResizeObserver } from '@vueuse/core'\nimport { isNil } from 'lodash-unified'\nimport ElIcon from '@element-plus/components/icon'\nimport { More } from '@element-plus/icons-vue'\nimport {\n buildProps,\n definePropType,\n flattedChildren,\n iconPropType,\n isArray,\n isObject,\n isString,\n isUndefined,\n mutable,\n} from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { ClickOutside as vClickoutside } from '@element-plus/directives'\nimport Menubar from './utils/menu-bar'\nimport ElMenuCollapseTransition from './menu-collapse-transition.vue'\nimport ElSubMenu from './sub-menu'\nimport { useMenuCssVar } from './use-menu-css-var'\nimport { MENU_INJECTION_KEY, SUB_MENU_INJECTION_KEY } from './tokens'\n\nimport type { PopperEffect } from '@element-plus/components/popper'\nimport type { MenuItemClicked, MenuProvider, SubMenuProvider } from './types'\nimport type { NavigationFailure, Router } from 'vue-router'\nimport type {\n CSSProperties,\n Component,\n DirectiveArguments,\n ExtractPropTypes,\n ExtractPublicPropTypes,\n VNode,\n VNodeArrayChildren,\n} from 'vue'\nimport type { UseResizeObserverReturn } from '@vueuse/core'\n\nexport const menuProps = buildProps({\n /**\n * @description menu display mode\n */\n mode: {\n type: String,\n values: ['horizontal', 'vertical'],\n default: 'vertical',\n },\n /**\n * @description index of active menu on page load\n */\n defaultActive: {\n type: String,\n default: '',\n },\n /**\n * @description array that contains indexes of currently active sub-menus\n */\n defaultOpeneds: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n /**\n * @description whether only one sub-menu can be active\n */\n uniqueOpened: Boolean,\n /**\n * @description whether `vue-router` mode is activated. If true, index will be used as 'path' to activate the route action. Use with `default-active` to set the active item on load.\n */\n router: Boolean,\n /**\n * @description how sub-menus are triggered, only works when `mode` is 'horizontal'\n */\n menuTrigger: {\n type: String,\n values: ['hover', 'click'],\n default: 'hover',\n },\n /**\n * @description whether the menu is collapsed (available only in vertical mode)\n */\n collapse: Boolean,\n /**\n * @description background color of Menu (hex format) (deprecated, use `--bg-color` instead)\n * @deprecated use `--bg-color` instead\n */\n backgroundColor: String,\n /**\n * @description text color of Menu (hex format) (deprecated, use `--text-color` instead)\n * @deprecated use `--text-color` instead\n */\n textColor: String,\n /**\n * @description text color of currently active menu item (hex format) (deprecated, use `--active-color` instead)\n * @deprecated use `--active-color` instead\n */\n activeTextColor: String,\n /**\n * @description optional, whether menu is collapsed when clicking outside\n */\n closeOnClickOutside: Boolean,\n /**\n * @description whether to enable the collapse transition\n */\n collapseTransition: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether the menu is ellipsis (available only in horizontal mode)\n */\n ellipsis: {\n type: Boolean,\n default: true,\n },\n /**\n * @description offset of the popper (effective for all submenus)\n */\n popperOffset: {\n type: Number,\n default: 6,\n },\n /**\n * @description custom ellipsis icon (available only in horizontal mode and ellipsis is true)\n */\n ellipsisIcon: {\n type: iconPropType,\n default: () => More,\n },\n /**\n * @description Tooltip theme, built-in theme: `dark` / `light` when menu is collapsed\n */\n popperEffect: {\n type: definePropType<PopperEffect>(String),\n default: 'dark',\n },\n /**\n * @description custom class name for all popup menus\n */\n popperClass: String,\n /**\n * @description custom style for all popup menus\n */\n popperStyle: {\n type: definePropType<string | CSSProperties>([String, Object]),\n },\n /**\n * @description control timeout for all menus before showing\n */\n showTimeout: {\n type: Number,\n default: 300,\n },\n /**\n * @description control timeout for all menus before hiding\n */\n hideTimeout: {\n type: Number,\n default: 300,\n },\n /**\n * @description when menu inactive and `persistent` is `false` , dropdown menu will be destroyed\n */\n persistent: {\n type: Boolean,\n default: true,\n },\n widget: String,\n} as const)\nexport type MenuProps = ExtractPropTypes<typeof menuProps>\nexport type MenuPropsPublic = ExtractPublicPropTypes<typeof menuProps>\n\nconst checkIndexPath = (indexPath: unknown): indexPath is string[] =>\n 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 (isUndefined(routerResult) || routerResult instanceof Promise),\n}\nexport type MenuEmits = typeof menuEmits\n\nconst DEFAULT_MORE_ITEM_WIDTH = 64\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 const subMenu = ref<HTMLElement>()\n const nsMenu = useNamespace('menu')\n const nsSubMenu = useNamespace('sub-menu')\n let moreItemWidth = DEFAULT_MORE_ITEM_WIDTH\n\n // data\n const sliceIndex = ref(-1)\n\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 // computed\n const isMenuPopup = computed<MenuProvider['isMenuPopup']>(\n () =>\n props.mode === 'horizontal' ||\n (props.mode === 'vertical' && props.collapse)\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 close = (index: string) => {\n const i = openedMenus.value.indexOf(index)\n if (i !== -1) {\n openedMenus.value.splice(i, 1)\n }\n }\n\n const closeMenu: MenuProvider['closeMenu'] = (index, indexPath) => {\n close(index)\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 isOpened ? closeMenu(index, indexPath) : openMenu(index, indexPath)\n }\n\n const handleMenuItemClick: MenuProvider['handleMenuItemClick'] = (\n menuItem\n ) => {\n if (props.mode === 'horizontal' || props.collapse) {\n openedMenus.value = []\n }\n const { index, indexPath } = menuItem\n if (isNil(index) || isNil(indexPath)) 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 activeIndex.value = item?.index ?? val\n }\n\n const calcMenuItemWidth = (menuItem: HTMLElement) => {\n const computedStyle = getComputedStyle(menuItem)\n const marginLeft = Number.parseInt(computedStyle.marginLeft, 10)\n const marginRight = Number.parseInt(computedStyle.marginRight, 10)\n return menuItem.offsetWidth + marginLeft + marginRight || 0\n }\n\n const calcSliceIndex = () => {\n if (!menu.value) return -1\n\n const items = Array.from(menu.value.childNodes).filter(\n (item) =>\n item.nodeName !== '#comment' &&\n (item.nodeName !== '#text' || item.nodeValue)\n ) as HTMLElement[]\n\n const computedMenuStyle = getComputedStyle(menu.value)\n const paddingLeft = Number.parseInt(computedMenuStyle.paddingLeft, 10)\n const paddingRight = Number.parseInt(computedMenuStyle.paddingRight, 10)\n const menuWidth = menu.value.clientWidth - paddingLeft - paddingRight\n\n let calcWidth = 0\n let sliceIndex = 0\n items.forEach((item, index) => {\n calcWidth += calcMenuItemWidth(item)\n if (calcWidth <= menuWidth - moreItemWidth) {\n sliceIndex = index + 1\n }\n })\n return sliceIndex === items.length ? -1 : sliceIndex\n }\n\n const getIndexPath = (index: string) => subMenus.value[index].indexPath\n\n // Common computer monitor FPS is 60Hz, which means 60 redraws per second. Calculation formula: 1000ms/60 ≈ 16.67ms, In order to avoid a certain chance of repeated triggering when `resize`, set wait to 16.67 * 2 = 33.34\n const debounce = (fn: () => void, wait = 33.34) => {\n let timer: ReturnType<typeof setTimeout> | null\n return () => {\n timer && clearTimeout(timer)\n timer = setTimeout(() => {\n fn()\n }, wait)\n }\n }\n\n let isFirstTimeRender = true\n const handleResize = () => {\n const el = unrefElement(subMenu)\n if (el) moreItemWidth = calcMenuItemWidth(el) || DEFAULT_MORE_ITEM_WIDTH\n if (sliceIndex.value === calcSliceIndex()) return\n const callback = () => {\n sliceIndex.value = -1\n nextTick(() => {\n sliceIndex.value = calcSliceIndex()\n })\n }\n // execute callback directly when first time resize to avoid shaking\n isFirstTimeRender ? callback() : debounce(callback)()\n isFirstTimeRender = false\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(\n () => props.collapse,\n (value) => {\n if (value) openedMenus.value = []\n }\n )\n\n watch(items.value, initMenu)\n\n let resizeStopper: UseResizeObserverReturn['stop']\n watchEffect(() => {\n if (props.mode === 'horizontal' && props.ellipsis)\n resizeStopper = useResizeObserver(menu, handleResize).stop\n else resizeStopper?.()\n })\n\n const mouseInChild = ref(false)\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\n provide<MenuProvider>(\n MENU_INJECTION_KEY,\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\n provide<SubMenuProvider>(`${SUB_MENU_INJECTION_KEY}${instance.uid}`, {\n addSubMenu,\n removeSubMenu,\n mouseInChild,\n level: 0,\n })\n }\n\n // lifecycle\n onMounted(() => {\n if (props.mode === 'horizontal') {\n new Menubar(instance.vnode.el!, nsMenu.namespace.value)\n }\n })\n\n {\n const open = (index: string) => {\n const { indexPath } = subMenus.value[index]\n indexPath.forEach((i) => openMenu(i, indexPath))\n }\n\n expose({\n open,\n close,\n updateActiveIndex,\n handleResize,\n })\n }\n\n const ulStyle = useMenuCssVar(props, 0)\n\n return () => {\n let slot: VNodeArrayChildren = slots.default?.() ?? []\n const vShowMore: VNode[] = []\n\n if (props.mode === 'horizontal' && menu.value) {\n const originalSlot = (\n flattedChildren(slot) as VNodeArrayChildren\n ).filter((vnode) => {\n // Filter text and comment nodes (https://github.com/vuejs/core/blob/c875019d49b4c36a88d929ccadc31ad414747c7b/packages/shared/src/shapeFlags.ts#L5)\n return (vnode as VNode)?.shapeFlag !== 8\n })\n const slotDefault =\n sliceIndex.value === -1\n ? originalSlot\n : originalSlot.slice(0, sliceIndex.value)\n\n const slotMore =\n sliceIndex.value === -1 ? [] : originalSlot.slice(sliceIndex.value)\n\n if (slotMore?.length && props.ellipsis) {\n slot = slotDefault\n vShowMore.push(\n h(\n ElSubMenu,\n {\n ref: subMenu,\n index: 'sub-menu-more',\n class: nsSubMenu.e('hide-arrow'),\n popperOffset: props.popperOffset,\n },\n {\n title: () =>\n h(\n ElIcon,\n {\n class: nsSubMenu.e('icon-more'),\n },\n {\n default: () => h(props.ellipsisIcon as Component),\n }\n ),\n default: () => slotMore,\n }\n )\n )\n }\n }\n\n const directives: DirectiveArguments = props.closeOnClickOutside\n ? [\n [\n vClickoutside,\n () => {\n if (!openedMenus.value.length) return\n\n if (!mouseInChild.value) {\n openedMenus.value.forEach((openedMenu) =>\n emit('close', openedMenu, getIndexPath(openedMenu))\n )\n\n openedMenus.value = []\n }\n },\n ],\n ]\n : []\n\n const vMenu = withDirectives(\n h(\n 'ul',\n {\n key: String(props.collapse),\n role: 'menubar',\n ref: menu,\n style: ulStyle.value,\n class: {\n [nsMenu.b()]: true,\n [nsMenu.m(props.mode)]: true,\n [nsMenu.m('collapse')]: props.collapse,\n },\n widget: props.widget,\n },\n [...slot, ...vShowMore]\n ),\n directives\n )\n\n if (props.collapseTransition && props.mode === 'vertical') {\n return h(ElMenuCollapseTransition, () => vMenu)\n }\n\n return vMenu\n }\n },\n})\n"],"mappings":"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"}
@@ -137,8 +137,8 @@ declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
137
137
  __epPropKey: true;
138
138
  };
139
139
  }>> & Readonly<{}>, {
140
- readonly teleported: EpPropMergeType<BooleanConstructor, unknown, unknown>;
141
140
  readonly disabled: boolean;
141
+ readonly teleported: EpPropMergeType<BooleanConstructor, unknown, unknown>;
142
142
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
143
143
  //#endregion
144
144
  export { SubMenuProps, SubMenuPropsPublic, _default as default, subMenuProps };
@@ -2,8 +2,8 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- const require_aria = require("../../../../utils/dom/aria.js");
6
- const require_aria$1 = require("../../../../constants/aria.js");
5
+ const require_aria = require("../../../../constants/aria.js");
6
+ const require_aria$1 = require("../../../../utils/dom/aria.js");
7
7
  const require_event = require("../../../../utils/dom/event.js");
8
8
  const require_submenu = require("./submenu.js");
9
9
  //#region ../../packages/components/menu/src/utils/menu-item.ts
@@ -24,22 +24,22 @@ var MenuItem = class {
24
24
  const code = require_event.getEventCode(event);
25
25
  let prevDef = false;
26
26
  switch (code) {
27
- case require_aria$1.EVENT_CODE.down:
28
- require_aria.triggerEvent(event.currentTarget, "mouseenter");
27
+ case require_aria.EVENT_CODE.down:
28
+ require_aria$1.triggerEvent(event.currentTarget, "mouseenter");
29
29
  this.submenu?.gotoSubIndex(0);
30
30
  prevDef = true;
31
31
  break;
32
- case require_aria$1.EVENT_CODE.up:
33
- require_aria.triggerEvent(event.currentTarget, "mouseenter");
32
+ case require_aria.EVENT_CODE.up:
33
+ require_aria$1.triggerEvent(event.currentTarget, "mouseenter");
34
34
  this.submenu?.gotoSubIndex(this.submenu.subMenuItems.length - 1);
35
35
  prevDef = true;
36
36
  break;
37
- case require_aria$1.EVENT_CODE.tab:
38
- require_aria.triggerEvent(event.currentTarget, "mouseleave");
37
+ case require_aria.EVENT_CODE.tab:
38
+ require_aria$1.triggerEvent(event.currentTarget, "mouseleave");
39
39
  break;
40
- case require_aria$1.EVENT_CODE.enter:
41
- case require_aria$1.EVENT_CODE.numpadEnter:
42
- case require_aria$1.EVENT_CODE.space:
40
+ case require_aria.EVENT_CODE.enter:
41
+ case require_aria.EVENT_CODE.numpadEnter:
42
+ case require_aria.EVENT_CODE.space:
43
43
  prevDef = true;
44
44
  event.currentTarget.click();
45
45
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item.js","names":["SubMenu","getEventCode","EVENT_CODE"],"sources":["../../../../../../../packages/components/menu/src/utils/menu-item.ts"],"sourcesContent":["import { getEventCode, triggerEvent } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport SubMenu from './submenu'\n\nclass MenuItem {\n public submenu: SubMenu | null\n constructor(\n public domNode: HTMLElement,\n namespace: string\n ) {\n this.submenu = null\n this.init(namespace)\n }\n\n init(namespace: string): void {\n this.domNode.setAttribute('tabindex', '0')\n const menuChild = this.domNode.querySelector(`.${namespace}-menu`)\n if (menuChild) {\n this.submenu = new SubMenu(this, menuChild)\n }\n this.addListeners()\n }\n\n addListeners() {\n this.domNode.addEventListener('keydown', (event: KeyboardEvent) => {\n const code = getEventCode(event)\n let prevDef = false\n\n switch (code) {\n case EVENT_CODE.down: {\n triggerEvent(event.currentTarget as HTMLElement, 'mouseenter')\n this.submenu?.gotoSubIndex(0)\n prevDef = true\n break\n }\n case EVENT_CODE.up: {\n triggerEvent(event.currentTarget as HTMLElement, 'mouseenter')\n this.submenu?.gotoSubIndex(this.submenu.subMenuItems.length - 1)\n prevDef = true\n break\n }\n case EVENT_CODE.tab: {\n triggerEvent(event.currentTarget as HTMLElement, 'mouseleave')\n break\n }\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n case EVENT_CODE.space: {\n prevDef = true\n ;(event.currentTarget as HTMLElement).click()\n break\n }\n }\n if (prevDef) {\n event.preventDefault()\n }\n })\n }\n}\n\nexport default MenuItem\n"],"mappings":";;;;;;;;;AAIA,IAAM,WAAN,MAAe;CAEb,YACE,SACA,WACA;EAFO,KAAA,UAAA;EAGP,KAAK,UAAU;EACf,KAAK,KAAK,SAAS;CACrB;CAEA,KAAK,WAAyB;EAC5B,KAAK,QAAQ,aAAa,YAAY,GAAG;EACzC,MAAM,YAAY,KAAK,QAAQ,cAAc,IAAI,UAAU,MAAM;EACjE,IAAI,WACF,KAAK,UAAU,IAAIA,gBAAAA,QAAQ,MAAM,SAAS;EAE5C,KAAK,aAAa;CACpB;CAEA,eAAe;EACb,KAAK,QAAQ,iBAAiB,YAAY,UAAyB;GACjE,MAAM,OAAOC,cAAAA,aAAa,KAAK;GAC/B,IAAI,UAAU;GAEd,QAAQ,MAAR;IACE,KAAKC,eAAAA,WAAW;KACd,aAAA,aAAa,MAAM,eAA8B,YAAY;KAC7D,KAAK,SAAS,aAAa,CAAC;KAC5B,UAAU;KACV;IAEF,KAAKA,eAAAA,WAAW;KACd,aAAA,aAAa,MAAM,eAA8B,YAAY;KAC7D,KAAK,SAAS,aAAa,KAAK,QAAQ,aAAa,SAAS,CAAC;KAC/D,UAAU;KACV;IAEF,KAAKA,eAAAA,WAAW;KACd,aAAA,aAAa,MAAM,eAA8B,YAAY;KAC7D;IAEF,KAAKA,eAAAA,WAAW;IAChB,KAAKA,eAAAA,WAAW;IAChB,KAAKA,eAAAA,WAAW;KACd,UAAU;KACT,MAAO,cAA8B,MAAM;KAC5C;GAEJ;GACA,IAAI,SACF,MAAM,eAAe;EAEzB,CAAC;CACH;AACF"}
1
+ {"version":3,"file":"menu-item.js","names":["SubMenu","getEventCode","EVENT_CODE"],"sources":["../../../../../../../packages/components/menu/src/utils/menu-item.ts"],"sourcesContent":["import { getEventCode, triggerEvent } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport SubMenu from './submenu'\n\nclass MenuItem {\n public submenu: SubMenu | null\n constructor(\n public domNode: HTMLElement,\n namespace: string\n ) {\n this.submenu = null\n this.init(namespace)\n }\n\n init(namespace: string): void {\n this.domNode.setAttribute('tabindex', '0')\n const menuChild = this.domNode.querySelector(`.${namespace}-menu`)\n if (menuChild) {\n this.submenu = new SubMenu(this, menuChild)\n }\n this.addListeners()\n }\n\n addListeners() {\n this.domNode.addEventListener('keydown', (event: KeyboardEvent) => {\n const code = getEventCode(event)\n let prevDef = false\n\n switch (code) {\n case EVENT_CODE.down: {\n triggerEvent(event.currentTarget as HTMLElement, 'mouseenter')\n this.submenu?.gotoSubIndex(0)\n prevDef = true\n break\n }\n case EVENT_CODE.up: {\n triggerEvent(event.currentTarget as HTMLElement, 'mouseenter')\n this.submenu?.gotoSubIndex(this.submenu.subMenuItems.length - 1)\n prevDef = true\n break\n }\n case EVENT_CODE.tab: {\n triggerEvent(event.currentTarget as HTMLElement, 'mouseleave')\n break\n }\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n case EVENT_CODE.space: {\n prevDef = true\n ;(event.currentTarget as HTMLElement).click()\n break\n }\n }\n if (prevDef) {\n event.preventDefault()\n }\n })\n }\n}\n\nexport default MenuItem\n"],"mappings":";;;;;;;;;AAIA,IAAM,WAAN,MAAe;CAEb,YACE,SACA,WACA;EAFO,KAAA,UAAA;EAGP,KAAK,UAAU;EACf,KAAK,KAAK,SAAS;CACrB;CAEA,KAAK,WAAyB;EAC5B,KAAK,QAAQ,aAAa,YAAY,GAAG;EACzC,MAAM,YAAY,KAAK,QAAQ,cAAc,IAAI,UAAU,MAAM;EACjE,IAAI,WACF,KAAK,UAAU,IAAIA,gBAAAA,QAAQ,MAAM,SAAS;EAE5C,KAAK,aAAa;CACpB;CAEA,eAAe;EACb,KAAK,QAAQ,iBAAiB,YAAY,UAAyB;GACjE,MAAM,OAAOC,cAAAA,aAAa,KAAK;GAC/B,IAAI,UAAU;GAEd,QAAQ,MAAR;IACE,KAAKC,aAAAA,WAAW;KACd,eAAA,aAAa,MAAM,eAA8B,YAAY;KAC7D,KAAK,SAAS,aAAa,CAAC;KAC5B,UAAU;KACV;IAEF,KAAKA,aAAAA,WAAW;KACd,eAAA,aAAa,MAAM,eAA8B,YAAY;KAC7D,KAAK,SAAS,aAAa,KAAK,QAAQ,aAAa,SAAS,CAAC;KAC/D,UAAU;KACV;IAEF,KAAKA,aAAAA,WAAW;KACd,eAAA,aAAa,MAAM,eAA8B,YAAY;KAC7D;IAEF,KAAKA,aAAAA,WAAW;IAChB,KAAKA,aAAAA,WAAW;IAChB,KAAKA,aAAAA,WAAW;KACd,UAAU;KACT,MAAO,cAA8B,MAAM;KAC5C;GAEJ;GACA,IAAI,SACF,MAAM,eAAe;EAEzB,CAAC;CACH;AACF"}
@@ -2,8 +2,8 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- const require_aria = require("../../../../utils/dom/aria.js");
6
- const require_aria$1 = require("../../../../constants/aria.js");
5
+ const require_aria = require("../../../../constants/aria.js");
6
+ const require_aria$1 = require("../../../../utils/dom/aria.js");
7
7
  const require_event = require("../../../../utils/dom/event.js");
8
8
  //#region ../../packages/components/menu/src/utils/submenu.ts
9
9
  var SubMenu = class {
@@ -27,20 +27,20 @@ var SubMenu = class {
27
27
  const code = require_event.getEventCode(event);
28
28
  let prevDef = false;
29
29
  switch (code) {
30
- case require_aria$1.EVENT_CODE.down:
30
+ case require_aria.EVENT_CODE.down:
31
31
  this.gotoSubIndex(this.subIndex + 1);
32
32
  prevDef = true;
33
33
  break;
34
- case require_aria$1.EVENT_CODE.up:
34
+ case require_aria.EVENT_CODE.up:
35
35
  this.gotoSubIndex(this.subIndex - 1);
36
36
  prevDef = true;
37
37
  break;
38
- case require_aria$1.EVENT_CODE.tab:
39
- require_aria.triggerEvent(parentNode, "mouseleave");
38
+ case require_aria.EVENT_CODE.tab:
39
+ require_aria$1.triggerEvent(parentNode, "mouseleave");
40
40
  break;
41
- case require_aria$1.EVENT_CODE.enter:
42
- case require_aria$1.EVENT_CODE.numpadEnter:
43
- case require_aria$1.EVENT_CODE.space:
41
+ case require_aria.EVENT_CODE.enter:
42
+ case require_aria.EVENT_CODE.numpadEnter:
43
+ case require_aria.EVENT_CODE.space:
44
44
  prevDef = true;
45
45
  event.currentTarget.click();
46
46
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"submenu.js","names":["getEventCode","EVENT_CODE"],"sources":["../../../../../../../packages/components/menu/src/utils/submenu.ts"],"sourcesContent":["import { getEventCode, triggerEvent } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\n\nimport type MenuItem from './menu-item'\n\nclass SubMenu {\n public subMenuItems: NodeListOf<HTMLLIElement>\n public subIndex: number\n constructor(\n public parent: MenuItem,\n public domNode: ParentNode\n ) {\n this.subIndex = 0\n this.subMenuItems = this.domNode.querySelectorAll('li')\n this.addListeners()\n }\n\n gotoSubIndex(idx: number) {\n if (idx === this.subMenuItems.length) {\n idx = 0\n } else if (idx < 0) {\n idx = this.subMenuItems.length - 1\n }\n this.subMenuItems[idx].focus()\n this.subIndex = idx\n }\n\n addListeners() {\n const parentNode = this.parent.domNode\n this.subMenuItems.forEach((el) => {\n el.addEventListener('keydown', (event: KeyboardEvent) => {\n const code = getEventCode(event)\n let prevDef = false\n\n switch (code) {\n case EVENT_CODE.down: {\n this.gotoSubIndex(this.subIndex + 1)\n prevDef = true\n break\n }\n case EVENT_CODE.up: {\n this.gotoSubIndex(this.subIndex - 1)\n prevDef = true\n break\n }\n case EVENT_CODE.tab: {\n triggerEvent(parentNode, 'mouseleave')\n break\n }\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n case EVENT_CODE.space: {\n prevDef = true\n ;(event.currentTarget as HTMLElement).click()\n break\n }\n }\n if (prevDef) {\n event.preventDefault()\n event.stopPropagation()\n }\n return false\n })\n })\n }\n}\n\nexport default SubMenu\n"],"mappings":";;;;;;;;AAKA,IAAM,UAAN,MAAc;CAGZ,YACE,QACA,SACA;EAFO,KAAA,SAAA;EACA,KAAA,UAAA;EAEP,KAAK,WAAW;EAChB,KAAK,eAAe,KAAK,QAAQ,iBAAiB,IAAI;EACtD,KAAK,aAAa;CACpB;CAEA,aAAa,KAAa;EACxB,IAAI,QAAQ,KAAK,aAAa,QAC5B,MAAM;OACD,IAAI,MAAM,GACf,MAAM,KAAK,aAAa,SAAS;EAEnC,KAAK,aAAa,IAAI,CAAC,MAAM;EAC7B,KAAK,WAAW;CAClB;CAEA,eAAe;EACb,MAAM,aAAa,KAAK,OAAO;EAC/B,KAAK,aAAa,SAAS,OAAO;GAChC,GAAG,iBAAiB,YAAY,UAAyB;IACvD,MAAM,OAAOA,cAAAA,aAAa,KAAK;IAC/B,IAAI,UAAU;IAEd,QAAQ,MAAR;KACE,KAAKC,eAAAA,WAAW;MACd,KAAK,aAAa,KAAK,WAAW,CAAC;MACnC,UAAU;MACV;KAEF,KAAKA,eAAAA,WAAW;MACd,KAAK,aAAa,KAAK,WAAW,CAAC;MACnC,UAAU;MACV;KAEF,KAAKA,eAAAA,WAAW;MACd,aAAA,aAAa,YAAY,YAAY;MACrC;KAEF,KAAKA,eAAAA,WAAW;KAChB,KAAKA,eAAAA,WAAW;KAChB,KAAKA,eAAAA,WAAW;MACd,UAAU;MACT,MAAO,cAA8B,MAAM;MAC5C;IAEJ;IACA,IAAI,SAAS;KACX,MAAM,eAAe;KACrB,MAAM,gBAAgB;IACxB;IACA,OAAO;GACT,CAAC;EACH,CAAC;CACH;AACF"}
1
+ {"version":3,"file":"submenu.js","names":["getEventCode","EVENT_CODE"],"sources":["../../../../../../../packages/components/menu/src/utils/submenu.ts"],"sourcesContent":["import { getEventCode, triggerEvent } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\n\nimport type MenuItem from './menu-item'\n\nclass SubMenu {\n public subMenuItems: NodeListOf<HTMLLIElement>\n public subIndex: number\n constructor(\n public parent: MenuItem,\n public domNode: ParentNode\n ) {\n this.subIndex = 0\n this.subMenuItems = this.domNode.querySelectorAll('li')\n this.addListeners()\n }\n\n gotoSubIndex(idx: number) {\n if (idx === this.subMenuItems.length) {\n idx = 0\n } else if (idx < 0) {\n idx = this.subMenuItems.length - 1\n }\n this.subMenuItems[idx].focus()\n this.subIndex = idx\n }\n\n addListeners() {\n const parentNode = this.parent.domNode\n this.subMenuItems.forEach((el) => {\n el.addEventListener('keydown', (event: KeyboardEvent) => {\n const code = getEventCode(event)\n let prevDef = false\n\n switch (code) {\n case EVENT_CODE.down: {\n this.gotoSubIndex(this.subIndex + 1)\n prevDef = true\n break\n }\n case EVENT_CODE.up: {\n this.gotoSubIndex(this.subIndex - 1)\n prevDef = true\n break\n }\n case EVENT_CODE.tab: {\n triggerEvent(parentNode, 'mouseleave')\n break\n }\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n case EVENT_CODE.space: {\n prevDef = true\n ;(event.currentTarget as HTMLElement).click()\n break\n }\n }\n if (prevDef) {\n event.preventDefault()\n event.stopPropagation()\n }\n return false\n })\n })\n }\n}\n\nexport default SubMenu\n"],"mappings":";;;;;;;;AAKA,IAAM,UAAN,MAAc;CAGZ,YACE,QACA,SACA;EAFO,KAAA,SAAA;EACA,KAAA,UAAA;EAEP,KAAK,WAAW;EAChB,KAAK,eAAe,KAAK,QAAQ,iBAAiB,IAAI;EACtD,KAAK,aAAa;CACpB;CAEA,aAAa,KAAa;EACxB,IAAI,QAAQ,KAAK,aAAa,QAC5B,MAAM;OACD,IAAI,MAAM,GACf,MAAM,KAAK,aAAa,SAAS;EAEnC,KAAK,aAAa,IAAI,CAAC,MAAM;EAC7B,KAAK,WAAW;CAClB;CAEA,eAAe;EACb,MAAM,aAAa,KAAK,OAAO;EAC/B,KAAK,aAAa,SAAS,OAAO;GAChC,GAAG,iBAAiB,YAAY,UAAyB;IACvD,MAAM,OAAOA,cAAAA,aAAa,KAAK;IAC/B,IAAI,UAAU;IAEd,QAAQ,MAAR;KACE,KAAKC,aAAAA,WAAW;MACd,KAAK,aAAa,KAAK,WAAW,CAAC;MACnC,UAAU;MACV;KAEF,KAAKA,aAAAA,WAAW;MACd,KAAK,aAAa,KAAK,WAAW,CAAC;MACnC,UAAU;MACV;KAEF,KAAKA,aAAAA,WAAW;MACd,eAAA,aAAa,YAAY,YAAY;MACrC;KAEF,KAAKA,aAAAA,WAAW;KAChB,KAAKA,aAAAA,WAAW;KAChB,KAAKA,aAAAA,WAAW;MACd,UAAU;MACT,MAAO,cAA8B,MAAM;MAC5C;IAEJ;IACA,IAAI,SAAS;KACX,MAAM,eAAe;KACrB,MAAM,gBAAgB;IACxB;IACA,OAAO;GACT,CAAC;EACH,CAAC;CACH;AACF"}
@@ -10,7 +10,7 @@ type MessageContext = {
10
10
  vm: ComponentInternalInstance;
11
11
  props: Mutable<MessageProps>;
12
12
  };
13
- declare const placementInstances: import("vue").ShallowReactive<Record<"top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right", MessageContext[]>>;
13
+ declare const placementInstances: import("vue").ShallowReactive<Record<"bottom" | "top" | "top-right" | "top-left" | "bottom-right" | "bottom-left", MessageContext[]>>;
14
14
  declare const getOrCreatePlacementInstances: (placement: MessagePlacement) => MessageContext[];
15
15
  declare const getInstance: (id: string, placement: MessagePlacement) => {
16
16
  current: MessageContext;