epam / epam/UUI

[DropdownMenu]: submenu overlaps previous menu level when dropdown is positioned near the bottom of the page

Open
#2,752 0 comments 0 reactions 0 assignees View on GitHub
bug Dropdown Menu
Dominant language
TypeScript
Stars
247
Forks
78
Avg merge
14h 27m
Merged PRs (30d)
15

Description

## Description
When the component is placed near the bottom of the page, the first-level and second-level submenu open to the side as expected. However, if a third-level submenu is triggered from a low position, it overlaps the second submenu by opening upwards instead of staying aligned to the side.

## Steps to Reproduce
1. Open [DropdownMenu](https://uui.epam.com/documents?id=dropdownMenu&mode=doc&category=components) component.
2. Ensure the component is positioned near the bottom of the page.
3. Open the first-level submenu by clicking on a menu item ('Alex Smith').
4. Navigate to a menu item that triggers a second-level submenu.
5. Navigate further to a menu item that triggers a third-level submenu.
6. Observe the positioning of the third-level submenu.

## Actual result
The third-level submenu opens upwards, overlapping the second-level submenu.

https://github.com/user-attachments/assets/ca6a03b3-a103-46f9-9258-f41c9063a27d

## Expected result
The third-level submenu should maintain side alignment without overlapping the second-level submenu.

## Environment
* UUI version: 5.13.0
* Browser name: any
* Operating System: any

Contributor guide

Open the contributing guide

Research direction

Start with the DropdownMenu component in the linked UUI documentation and reproduce the nested-menu case near the bottom of the page. Trace how the third-level submenu chooses vertical versus side positioning. Done means the third-level submenu remains side-aligned without overlapping the second-level submenu in the reported scenario.

Written by the indexing model from the issue text.

Assessment

Tech stack
react, typescript
Domain
frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.