MetaMask / MetaMask/metamask-extension
Resolve Menu component deprecation status
- Dominant language
- TypeScript
- Stars
- 13.2k
- Forks
- 5.6k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 451
Description
## **Description**
To unblock https://github.com/MetaMask/metamask-extension/pull/39728, we need to temporarily comment out `ui/menu` in the fitness function at `development/fitness-functions/rules/prevent-deprecated-imports.ts`.
MenuItem is currently used and not deprecated. We need to decide how to handle the Menu component going forward.
## **Technical Details**
The `ui/menu` component is currently listed as deprecated in the fitness function, but `MenuItem` is actively used and not deprecated. We need to either:
1. Refactor Menu to use Popover and make it a standard Design System component
2. Resolve how we use menus and update the deprecation status accordingly
3. Split the Menu component so MenuItem can be used independently
The temporary workaround is to comment out `ui/menu` from `DEPRECATED_COMPONENT_PATHS` in `development/fitness-functions/rules/prevent-deprecated-imports.ts`.
## **Acceptance Criteria**
- Determine the long-term strategy for the Menu component
- Either refactor Menu to use Popover as a DS component OR clarify its non-deprecated status
- Update the fitness function accordingly
- Ensure MenuItem remains available for use
## **References**
- PR that requires this resolution: https://github.com/MetaMask/metamask-extension/pull/39728
- Fitness function file: `development/fitness-functions/rules/prevent-deprecated-imports.ts`
Contributor guide
Research direction
Start with development/fitness-functions/rules/prevent-deprecated-imports.ts and review the ui/menu usage related to PR 39728. Determine the long-term status of Menu and MenuItem, then update the fitness function so the chosen strategy is reflected and MenuItem remains available.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100