MetaMask / MetaMask/metamask-mobile

Replace deprecated EntypoIcon component with Icon from the component-library

Open
#8,120 0 comments 0 reactions 0 assignees View on GitHub
good first issue INVALID-ISSUE-TEMPLATE team-design-system
Dominant language
TypeScript
Stars
3k
Forks
1.7k
Avg merge
1d 14h
Merged PRs (30d)
669

Description

### Description

Currently, mobile is using an outdated `EntypoIcon` component, which needs to be replaced with the new `Icon` component.

### Technical Details

- Replace instances of `EntypoIcon` component with `Icon ` component (`app/component-library/components/Icons/Icon/Icon.tsx`)
- Component APIs are slightly different so ensure all props have been migrated appropriately

### Acceptance Criteria

- Instances of `EntypoIcon` component are completely replaced with the new `Icon` component
- The component APIs are updated to reflect the changes in the new `Icon` component and there is no functional changes or visual regression
- PR descriptions must adhere to the designated template, ensuring that all relevant sections are completed including before and after screenshots of UI.
- The code changes should pass Jest tests, e2e tests, linting, and Storybook without any errors.

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

### Difficulty: Beginner

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

Contributor guide

Open the contributing guide

Research direction

Search the mobile codebase for all EntypoIcon instances and compare their props with app/component-library/components/Icons/Icon/Icon.tsx. Migrate each usage without visual or functional changes, then run the Jest, e2e, lint, and Storybook checks named in the acceptance criteria, including required screenshots in the PR description.

Written by the indexing model from the issue text.

Assessment

Tech stack
react-native, storybook, typescript
Domain
frontend, mobile, testing
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.