106 Commits

Author SHA1 Message Date
557d4a18d7 fix(components): [menu] skip comment nodes in ellipsis (#21751)
* fix(components): [menu] skip empty nodes in ellipsis

* fix: resolve #19161

* chore: trigger CI build

* fix: resolve #14657 & add test cases

* test: optimize case

* chore: revert CSS changes

* chore: add shapeFlag comments

* chore: format
2025-08-15 12:26:15 +02:00
74833b49bc fix(components): [menu] hide arrow right padding incorrect (#21292)
* fix(components): [menu] Hide Arrow Padding Right Value

* fix(components): [menu] Hide Arrow Padding Right Value

* feat: Hide Arrow Padding Right Value

* feat: dynamically calcMoreButtonWidth

* Revert "feat: dynamically calcMoreButtonWidth"

This reverts commit b46953e3338bf4a59141fdbf7207a1abeee82b82.

* chore: dynamic solution

* chore: fix

* Update packages/theme-chalk/src/menu.scss

---------

Co-authored-by: Dsaquel <291874700n@gmail.com>
Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>
2025-07-23 18:21:16 +08:00
bc9a95d9ba chore(components): fix typos (#21473) 2025-07-23 07:09:15 +08:00
cfc661c626 feat(types): [components] add public prop types (#21222)
* feat(types): [utils] add ExtractPublicPropTypes type

* feat(types): [components] add props public type

* chore(types): use type-only import for Prop from 'vue'

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>

---------

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>
2025-07-07 00:51:32 +08:00
514cf66fce fix(components): [menu] expose updateActiveIndex type (#21129)
feat(components): [Menu] expose updateActiveIndex type
2025-06-25 09:11:53 +02:00
2f17df1209 style(eslint-config): newline before import type (#21036)
* perf: change to import-x

* feat: add rules

* chore: fix rule

* chore: fix

* chore: fix

* chore: fix

* style: `pnpm lint:fix`

* Revert "style: `pnpm lint:fix`"

This reverts commit db0116a288299c507e3cfc4d7a22e2207265d920.

* Revert "chore: fix"

This reverts commit 69c82a90c01525e38180be4c21e8ef5602512318.

* chore: fix

* style: `pnpm lint:fix`

* fix: lint

* chore: `pnpm format`
2025-06-16 15:37:12 +08:00
8f380ce884 refactor(components): standardize injection keys (#20616) 2025-06-06 14:45:39 +08:00
0680399713 fix(types): [menu-item] make index attribute required (#19007)
* fix(types): [menuItem] Make 'index' attribute required

* feat: update doc

* Update docs/en-US/component/menu.md

Co-authored-by: qiang <qw13131wang@gmail.com>

* feat: remove required, use debugWarn to notify

* feat: update

---------

Co-authored-by: qiang <qw13131wang@gmail.com>
2025-06-05 15:51:36 +08:00
3a3db6e564 refactor(components): use built-in methods to check for undefined and null (#20537)
style(components): check the undefined type for unification
2025-04-24 22:51:58 +08:00
7ce338a1a7 feat(components): [menu] expose updateActiveIndex (#20430) 2025-04-16 09:52:07 +08:00
7be4a3765e chore: emits smaller declaration files (#20109)
* Revert "fix(types): packing unexpected types (#19419)"

This reverts commit 13506ffb814d2b1300bf57c06648b6b27281c7c5.

* Revert "chore: add explicit type annoation (#19352)"

* fix(typescript): borken import paths in declaration files

* chore: emits smaller declaration files
2025-03-18 10:08:44 +08:00
sea
244e811b44 chore(eslint-config): add line-between-blocks rules (#20051) 2025-03-08 08:55:02 +08:00
1bc0394190 feat(components): [menu] add persistent prop (#19874)
feat(components): [menu] add persistent prop
2025-02-16 09:07:28 +08:00
a3ca41aa1a refactor: [menu] add necessary braces (#19840) 2025-02-12 12:36:47 +08:00
7569227fe6 refactor(components): [menu] change to script setup writing and optimizing code (#19816)
* refactor(components): [menu] refactor

* Update packages/components/menu/src/menu-collapse-transition.vue

* refactor(components): migrate ElMenuItem to Composition API

* fix: update

* chore: chore

* refactor: refactor

* revert: revert

* refactor: refactor

* revert: revert

* fix: Expose

* Update packages/components/menu/src/menu-item.vue

Co-authored-by: sea <45450994+warmthsea@users.noreply.github.com>

---------

Co-authored-by: sea <45450994+warmthsea@users.noreply.github.com>
2025-02-12 10:30:44 +08:00
8b829ea7d3 fix(components): [menu] fix sliceIndex calculation error (#19164)
fix(components): [menu] Fix 'sliceIndex' calculation error

closed #19161
2024-12-16 18:53:03 +08:00
718ffcfb85 chore(components): improve type for popper effect (#17860)
* chore(components): improve type for popper effect

Abort #17758 #17751 #17040 #17030

* chore: use `NonNullable<unknown>` instead of `{}`

* chore(components): extract a common type for popper effect

---------

Co-authored-by: qiang <qw13131wang@gmail.com>
2024-12-05 09:44:47 +08:00
343cacf5cc fix(components): numpadEnter does not work like the Enter (#18855) 2024-11-14 21:14:51 +08:00
10fcc59ed4 refactor: replace Array.isArray with the built-in isArray (#18671)
chore(components): [descriptions] isArray replace Array.isArray
2024-10-28 15:36:44 +08:00
2d98ee4311 fix(components): [menu] move ulStyle from render to setup to fix memory leak (#18122)
fix(components): [menu] move ulStyle from render to setup
2024-09-07 11:56:44 +08:00
79938178dd build: use vue-tsc to generate dts (#16111)
* build: use vue-tsc to generate dts

* reduce inline type declaration

* fix: type checking failed

* apply suggestions from code review

* address PR comments
2024-08-07 12:01:46 +08:00
d94aa4cdb5 fix(components): [abort popper] fix effect type error (#17758)
closed #17751
2024-08-03 10:37:21 +08:00
7db060b7fb docs(components): [menu] use new display tag (#15385)
* docs(components): [menu] use new display tag

* docs(components): [menu] delete deprecated attr of sub-menu
2024-07-23 11:04:23 +08:00
877f5d4d6a fix(components): [menu] Fixing Menu component's flickering issue with surplus sub-items on insufficient page height. (#15953)
fix(components): [menu] fix #15308
2024-02-29 15:04:46 +08:00
d8a9f902b2 chore(components): clear deprecated API (#15922)
* chore(components): clear deprecated API

* docs: update
2024-02-28 12:42:17 +08:00
2d151119cd fix(components): [menu] Add menu-item margin when calculating calcSliceIndex (#15699)
* fix(components): [menu] Add menu-item margin when calculating `calcSliceIndex`(#15698)

* refactor(components): [menu] simplify code
2024-01-31 15:32:31 +08:00
9475922142 perf(components): [menu] popper close any levels in menu-trigger:hover (#15383) 2024-01-06 20:16:03 +08:00
c8a0dda159 fix(components): [menu] set teleported, parent menu popper not closed (#15342)
* fix(components): [menu] set `teleported`, parent menu poper not closed

* chore: update
2024-01-05 21:47:09 +08:00
b79defc452 feat(components): [menu] add popper-classsubMenuTimeout props (#15193)
* feat(components): [menu] add `popper-class`、`subMenuTimeout` props

closed #15149

* refactor(components): [menu] simplify timeout props naming

* docs(components): [menu] add description of timeout

* refactor(components): [menu] remove useless codes

* Update menu.md

* revert: Update sub-menu.ts

---------

Co-authored-by: zhixiaotong <zhixiaotong.me@qq.com>
2023-12-23 13:10:54 +08:00
7f687ae598 feat(components): [el-menu] allow user to hide menu when clicking outside (#14742)
* fix(components): allow user to hide menu when clicking outside

when user sets `menu-trigger` to `click` and then clicking outside, it should be close menu

closed #14738

* revert settings.json config

* fix: debounce hide menu when clicking out side

* fix: only trigger click outside when menu is open

* fix: hide parent menu

* fix: only trigger close menu when its opened

* refactor: remove redundant code

* refactor: remove redundant code

* fix(docs): `collapse-on-click-outside` prop

* fix(docs): `collapse-on-click-outside` prop

* fix: move `clickOutSide` to `menu.ts`

* fix: submenu does not emit `close` when clicking outside

* fix: submenu does not emit `close` when clicking outside

* fix: ts type

* fix: ts type

* fix: only close when passing `props.collapseOnClickOutside` to `true`

* refactor: create `directives` variable

* improvement: allow `recusiveMouseInSubMenu` to receive array

* refactor: remove redundant code

* fix: rename `recusiveMouseInSubMenu` to  `recursiveMouseInSubMenu`

* feat: add `hide-timeout` prop

* fix: revert code

* fix: code owner

* fix: coder owner

* fix: menu closed when clicking on submenu

* refactor: remove redundant code

* fix: get correct index path

* fix: build

* refactor: update docs and remove `unref`

* fix: change `collapseOnClickOutside` to `closeOnClickOutside`

* fix: remove `hideTimeout` prop
2023-12-15 13:34:22 +08:00
750088624e feat(components): [menu] add popperOffset and ellipsisIcon props(#14923) (#15051)
* feat(components): [menu] add popperOffset and ellipsisIcon props(#14923)

* Update docs/examples/menu/ellipsis.vue

Co-authored-by: kooriookami <38392315+kooriookami@users.noreply.github.com>

* Update docs/en-US/component/menu.md

Co-authored-by: kooriookami <38392315+kooriookami@users.noreply.github.com>

* Update docs/en-US/component/menu.md

Co-authored-by: kooriookami <38392315+kooriookami@users.noreply.github.com>

* docs(components): [menu] upgrade props

* Update docs/en-US/component/menu.md

Co-authored-by: kooriookami <38392315+kooriookami@users.noreply.github.com>

---------

Co-authored-by: zhixiaotong <zhixiaotong.me@qq.com>
Co-authored-by: kooriookami <38392315+kooriookami@users.noreply.github.com>
2023-12-06 10:34:47 +08:00
7f375f09af fix(components): [menu] remove excess inline styles (#13693)
* fix(components): [menu] remove excess inline styles

* fix(theme-chalk): [menu] fix styles
2023-10-13 10:37:03 +08:00
0f2699008d fix(components): [menu] export MenuInstance (#14284)
* fix(components): [menu] export MenuInstance

closed #14251

* chore: export other component instance

* refactor: extract instace type to instance file
2023-09-16 09:25:00 +08:00
9900f2aaeb refactor(components): [menu] adjust default value of fallbackPlacements (#13696)
closed #13682
2023-07-22 19:44:23 +08:00
Xc
213fdfb51e fix(components): [menu] calc slice index remove comment node (#12472) 2023-05-09 22:10:29 +08:00
20486bf545 fix(components): [menu] change declartion of ulStyle to setup function (#12319)
Co-authored-by: guoweijian <wudizhanche1000@gmail.com>
2023-04-15 09:48:31 +08:00
fc3be9dbdb fix(components): [menu] Avoid call router when index is not provided (#12206)
closed #9945
2023-04-06 18:01:45 +08:00
Xc
2726dc5c98 fix(components): adjust menu close api (#11682)
*When calling externally, you should only need to pass the index, and you don't need to execute emit.
2023-02-25 15:17:38 +08:00
5c95932769 refactor(components): [menu] add deprecated mark to popperAppendToBody (#11509) 2023-02-12 14:57:21 +08:00
0fb2dc950c feat(components): [menu] add popper-effect menu attribute (#10867) 2022-12-02 13:23:59 +08:00
zz
6dc77e3e93 Revert "fix(components): [menu] menus that are not in the expanded path do not open" (#10769)
Revert "fix(components): [menu] menus that are not in the expanded path do not open (#10480)"

This reverts commit 781b891c25c51e41ff0a907c721a30db4cbeeb5f.
2022-11-25 21:47:05 +08:00
781b891c25 fix(components): [menu] menus that are not in the expanded path do not open (#10480)
* fix(components): fix #10431

fix #10431 and unify the hooks into the hooks directory

closed #10431

* Revert "fix(components): fix #10431"

This reverts commit 76524b124c8efd17b08baf8100abae7af5d55d3f.

* fix(components): revert 76524b1

* fix: a bug in unique-opend

* chore: optimize code and test cases
2022-11-20 14:34:43 +08:00
ab19e8f2e6 perf(components): [tabs] improve order performance 2022-09-16 22:51:44 +08:00
1c94256c19 refactor(utils): refactor flattedChildren (#9748) 2022-09-14 11:23:46 +08:00
068df682de fix(components): [el-menu] compatible menu.value is null (#9566) 2022-08-31 19:33:52 +08:00
zz
3be8b536b8 fix(utils): fix iconPropType (#9506) 2022-08-28 19:13:58 +08:00
zz
f5fa7e741f refactor(utils): refactor iconPropType (#9502) 2022-08-28 13:20:07 +08:00
b121012a70 feat(components): [menu] add expand-close-iconexpand-open-iconcollapse-close-iconcollapse-open-icon props (#9444)
* feat(components): [menu] add some Icon prop

* chore: types update

* Update sub-menu.ts
2022-08-26 11:25:22 +08:00
88ba661f69 fix(components): [el-menu] childNodes is null (#9408) 2022-08-23 18:03:04 +08:00
zz
b7fe5df6f9 fix(components): [menu] resize event infinite invoke (#9342)
* fix(components): [menu] resize event infinite invoke

* chore: update

* Update menu.ts

* Update menu.ts

* chore: update

* chore: update

* chore: update test case

* chore: optimize

* Update menu.ts

Co-authored-by: RealityBoy <1923740402@qq.com>
2022-08-19 18:33:50 +08:00