MetaMask/metamask-extension

Replace deprecated Popover component with Modal from the component-library

Open

#19555 opened on Jun 9, 2023

View on GitHub
 (8 comments) (0 reactions) (0 assignees)JavaScript (11,014 stars) (4,848 forks)batch import
good first issueteam-design-system

Description

Description

Currently, the extension is using an outdated Popover component, which needs to be replaced with the new Modal component.

This is a massive undertaking by itself and creating a single PR would be too large. Smaller PRs can be submitted against this issue to ensure easier review and gradual improvements.

Technical Details

  • Replace instances of Popover component (ui/components/ui/popover/popover.component.js) with Modal component (ui/components/component-library/modal/modal.tsx)
  • Component architecture and APIs are different so ensure all components and props have been migrated appropriately

Acceptance Criteria

  • Instances of Popover component are completely replaced with the new Modal component
  • The component APIs are updated to reflect the changes in the new Popover component and there is no functional changes or visual regression
  • Each Pull Request (PR) should include no more than 3 files
  • The code changes should pass Jest tests, linting, and Storybook without any errors.
  • The PR must include before and after screenshots of the UI to ensure there are no visual regressions.

If the acceptance criteria is not met, PRs may be closed.

Difficulty: Intermediate

Good first issue for: External contributors who are familiar with running the extension locally, have knowledge of React, component props, Jest tests, linting, and Storybook, and want to contribute to improving the cohesiveness of UI in the extension

Contributor guide