diff --git a/test/e2e/tests/send-eth.spec.js b/test/e2e/tests/send-eth.spec.js index b9500e22d..a50f21cfa 100644 --- a/test/e2e/tests/send-eth.spec.js +++ b/test/e2e/tests/send-eth.spec.js @@ -135,7 +135,7 @@ describe('Send ETH non-contract address with data that matches ERC20 transfer da await driver.clickElement({ text: 'Next', tag: 'button' }); - await driver.clickElement({ text: 'New contract' }); + await driver.clickElement({ text: '0xc42...cd28' }); const recipientAddress = await driver.findElements({ text: '0xc427D562164062a23a5cFf596A4a3208e72Acd28', diff --git a/ui/components/app/confirm-page-container/confirm-page-container-container.test.js b/ui/components/app/confirm-page-container/confirm-page-container-container.test.js index 7964f0645..2256f6e9c 100644 --- a/ui/components/app/confirm-page-container/confirm-page-container-container.test.js +++ b/ui/components/app/confirm-page-container/confirm-page-container-container.test.js @@ -92,7 +92,7 @@ describe('Confirm Page Container Container Test', () => { expect(senderRecipient).toBeInTheDocument(); }); it('should render recipient as address', () => { - const recipientName = screen.queryByText('New contract'); + const recipientName = screen.queryByText(shortenAddress(props.toAddress)); expect(recipientName).toBeInTheDocument(); }); @@ -118,7 +118,7 @@ describe('Confirm Page Container Container Test', () => { describe('Contact/AddressBook name should appear in recipient header', () => { it('should not show add to address dialog if recipient is in contact list and should display contact name', () => { - const addressBookName = 'New contract'; + const addressBookName = 'test save name'; const addressBook = { '0x5': { diff --git a/ui/components/app/confirm-page-container/confirm-page-container.component.js b/ui/components/app/confirm-page-container/confirm-page-container.component.js index c43233232..5bf6f91ad 100644 --- a/ui/components/app/confirm-page-container/confirm-page-container.component.js +++ b/ui/components/app/confirm-page-container/confirm-page-container.component.js @@ -68,6 +68,7 @@ export default class ConfirmPageContainer extends Component { toMetadataName: PropTypes.string, toEns: PropTypes.string, toNickname: PropTypes.string, + recipientIsOwnedAccount: PropTypes.bool, // Content contentComponent: PropTypes.node, errorKey: PropTypes.string, @@ -123,6 +124,7 @@ export default class ConfirmPageContainer extends Component { toMetadataName, toEns, toNickname, + recipientIsOwnedAccount, toAddress, disabled, errorKey, @@ -239,6 +241,7 @@ export default class ConfirmPageContainer extends Component { recipientAddress={toAddress} recipientEns={toEns} recipientNickname={toNickname} + recipientIsOwnedAccount={recipientIsOwnedAccount} /> )} diff --git a/ui/components/app/confirm-page-container/confirm-page-container.container.js b/ui/components/app/confirm-page-container/confirm-page-container.container.js index 0ce2790fc..f42ce50fc 100644 --- a/ui/components/app/confirm-page-container/confirm-page-container.container.js +++ b/ui/components/app/confirm-page-container/confirm-page-container.container.js @@ -19,7 +19,8 @@ function mapStateToProps(state, ownProps) { const defaultToken = getSwapsDefaultToken(state); const accountBalance = defaultToken.string; const identities = getMetaMaskIdentities(state); - const toName = getAccountName(identities, to); + const ownedAccountName = getAccountName(identities, to); + const toName = ownedAccountName || contact?.name; const toMetadataName = getMetadataContractName(state, to); return { @@ -27,9 +28,7 @@ function mapStateToProps(state, ownProps) { contact, toName, toMetadataName, - isOwnedAccount: getAccountsWithLabels(state) - .map((accountWithLabel) => accountWithLabel.address) - .includes(to), + recipientIsOwnedAccount: Boolean(ownedAccountName), to, networkIdentifier, accountBalance, diff --git a/ui/components/ui/sender-to-recipient/sender-to-recipient.component.js b/ui/components/ui/sender-to-recipient/sender-to-recipient.component.js index 6aec343be..3254c9299 100644 --- a/ui/components/ui/sender-to-recipient/sender-to-recipient.component.js +++ b/ui/components/ui/sender-to-recipient/sender-to-recipient.component.js @@ -104,6 +104,7 @@ export function RecipientWithAddress({ recipientEns, recipientName, recipientMetadataName, + recipientIsOwnedAccount, }) { const t = useI18nContext(); const [showNicknamePopovers, setShowNicknamePopovers] = useState(false); @@ -127,7 +128,7 @@ export function RecipientWithAddress({
{ - if (recipientName) { + if (recipientIsOwnedAccount) { setAddressCopied(true); copyToClipboard(checksummedRecipientAddress); } else { @@ -163,6 +164,7 @@ export function RecipientWithAddress({ recipientNickname || recipientMetadataName || recipientEns || + shortenAddress(checksummedRecipientAddress) || t('newContract')}
@@ -185,6 +187,7 @@ RecipientWithAddress.propTypes = { recipientNickname: PropTypes.string, addressOnly: PropTypes.bool, onRecipientClick: PropTypes.func, + recipientIsOwnedAccount: PropTypes.bool, }; function Arrow({ variant }) { @@ -218,6 +221,7 @@ export default function SenderToRecipient({ recipientAddress, variant, warnUserOnAccountMismatch, + recipientIsOwnedAccount, }) { const t = useI18nContext(); const checksummedSenderAddress = toChecksumHexAddress(senderAddress); @@ -246,6 +250,7 @@ export default function SenderToRecipient({ recipientEns={recipientEns} recipientName={recipientName} recipientMetadataName={recipientMetadataName} + recipientIsOwnedAccount={recipientIsOwnedAccount} /> ) : (
@@ -275,4 +280,5 @@ SenderToRecipient.propTypes = { onRecipientClick: PropTypes.func, onSenderClick: PropTypes.func, warnUserOnAccountMismatch: PropTypes.bool, + recipientIsOwnedAccount: PropTypes.bool, };