Skip to content

fix (cherry-pick): Enable Save button on Add Contact page for address input#26456

Merged
darkwing merged 2 commits intoVersion-v12.1.0from
v12.1.0-cherrypick-add-contact
Aug 16, 2024
Merged

fix (cherry-pick): Enable Save button on Add Contact page for address input#26456
darkwing merged 2 commits intoVersion-v12.1.0from
v12.1.0-cherrypick-add-contact

Conversation

@darkwing
Copy link
Copy Markdown
Contributor

Description

Cherry pick PR for the fix #25601

Open in GitHub Codespaces

Related issues

fixes #25918
fixes #25889

Manual testing steps

  1. Go to Settings > Contacts > Add Contact
  2. Enter a name and a valid Ethereum address
  3. Observe the Save button getting enabled
  4. Edit the address to make it invalid, observe the Save button getting disabled
  5. Instead of an address, enter an ENS name and pick the resolved result
  6. Observe the Save button getting enabled
  7. Observe that the input is still editable (repeat 4.)

Screenshots/Recordings

Before

After

Pre-merge author checklist

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**

<!--
Write a short description of the changes included in this pull request,
also include relevant motivation and context. Have in mind the following
questions:
1. What is the reason for the change?
2. What is the improvement/solution?
-->

This patches an issue in `add-contact.component.js` where the disabled
state of the `Save` button would disappear only after a successful ENS
resolution, effectively preventing plain addresses to be entered.
I also added some extra unit tests to check for some of the cases that
weren't covered before.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/26155?quickstart=1)

## **Related issues**

fixes #25918
fixes #25889

## **Manual testing steps**

1. Go to Settings > Contacts > Add Contact
2. Enter a name and a valid Ethereum address
3. Observe the Save button getting enabled
4. Edit the address to make it invalid, observe the Save button getting
disabled
5. Instead of an address, enter an ENS name and pick the resolved result
6. Observe the Save button getting enabled
7. Observe that the input is still editable (repeat 4.)

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [X] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md).
- [X] I've completed the PR template to the best of my ability
- [X] I’ve included tests if applicable
- [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

---------

Signed-off-by: Mircea Nistor <mirceanis@gmail.com>
@darkwing darkwing requested a review from a team as a code owner August 15, 2024 22:00
@github-actions
Copy link
Copy Markdown
Contributor

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

@metamaskbot metamaskbot added the team-core-extension-ux Core Extension UX team label Aug 15, 2024
@vinnyhoward
Copy link
Copy Markdown
Contributor

I pulled it down tested it. It looks good to me! I did find one small issue with the styling of the error message where the margin is too tight. But this PR didn't introduce it so its no big deal. I think its been there for awhile.

Screenshot 2024-08-15 at 6 30 17 PM

@vinnyhoward vinnyhoward self-requested a review August 16, 2024 00:52
Copy link
Copy Markdown
Contributor

@mirceanis mirceanis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me (but I'm the one who made the changes)

@metamaskbot
Copy link
Copy Markdown
Collaborator

Builds ready [076a11d]
Page Load Metrics (214 ± 212 ms)
PlatformPageMetricMin (ms)Max (ms)Average (ms)StandardDeviation (ms)MarginOfError (ms)
ChromeHomefirstPaint601511022210
domContentLoaded95528147
load421592214442212
domInteractive95528147

@bergeron
Copy link
Copy Markdown
Contributor

PR description looks like it references a different PR for the chery pick, but the change looks ok

@darkwing darkwing merged commit b2a493b into Version-v12.1.0 Aug 16, 2024
@darkwing darkwing deleted the v12.1.0-cherrypick-add-contact branch August 16, 2024 16:24
@github-actions github-actions bot locked and limited conversation to collaborators Aug 16, 2024
@metamaskbot metamaskbot added the release-12.2.0 Issue or pull request that will be included in release 12.2.0 label Aug 28, 2024
@metamaskbot
Copy link
Copy Markdown
Collaborator

No release label on PR. Adding release label release-12.2.0 on PR, as PR was cherry-picked in branch 12.2.0.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

release-12.2.0 Issue or pull request that will be included in release 12.2.0 team-core-extension-ux Core Extension UX team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants