metamask-extension
metamask-extension copied to clipboard
Replace deprecated Chip component with Tag from the component-library
Description
Currently, the extension is using an outdated Chip
component, which needs to be replaced with the new Tag
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
Chip
component (ui/components/ui/chip/chip.js
) withTag
component (ui/components/component-library/tag/tag.tsx
) - Component APIs are slightly different so ensure all props have been migrated appropriately
Acceptance Criteria
- Instances of
Chip
component are completely replaced with the newTag
component - The component APIs are updated to reflect the changes in the new `Chip`` 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
I'd like to claim this one. Will submit a PR tomorrow evening
Hey @MaxwellDG, thats great! In doing a search for the <Chip in the code base the most effective intance replacement would be here https://github.com/MetaMask/metamask-extension/blob/92f04eb6e81366f3419fb20d3e07592786974c0c/ui/components/ui/new-network-info/new-network-info.js#L92-L115 I would suggest creating a storybook file for the NewNetworkInfo
component so it can be reviewed and worked on in isolation. You can create a basic story here https://metamask.github.io/metamask-storybook/?path=/docs/getting-started-documentation-guidelines--docs#creating-a-story
@georgewrmarshall Great, I'll get on that asap. I decided to start with #20485 instead since it often included the Chip component inside of it. When that's completed I'll switch to this
Sounds good thanks @MaxwellDG!
I'd like to claim this one. Will submit a PR tomorrow evening @georgewrmarshall
@georgewrmarshall Is it still open?
Hey @npismenkov, yes still open. I believe the last deprecated Chip
component to be replaced is in https://github.com/MetaMask/metamask-extension/blob/e775193ecde4b9da33d80350da06fb0ecedb1a80/ui/pages/institutional/confirm-add-custodian-token/confirm-add-custodian-token.js#L138-L146
@georgewrmarshall Could you assign it on me?
Usually these issues are left without an assignee because they cover a large task but seeing as there is only one instance left that I can see need replacing I've assigned it to you @npismenkov. Looking forward to your PR!
@georgewrmarshall I created PR - https://github.com/MetaMask/metamask-extension/pull/24477. Sorry if something is wrong. This is my first metamask PR
@georgewrmarshall I've failing e2e tests in this PR - https://github.com/MetaMask/metamask-extension/pull/24477. It seems like it's failed because of timeout. I just wanna retry this step but I don't know how. So, my question is - "How I can rerun tests manually?".
@georgewrmarshall ?