Merge pull request #12019 from MetaMask/dev-olu-11148

Fix for: Confirmation screen should show local nicknames even when invoking a contract method
feature/default_network_editable
Akintayo A. Olusegun 3 years ago committed by GitHub
commit df69d2e5a8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 19
      ui/components/app/confirm-page-container/confirm-page-container.component.js
  2. 43
      ui/components/app/confirm-page-container/confirm-page-container.container.js
  3. 2
      ui/components/app/confirm-page-container/index.js

@ -4,6 +4,7 @@ import SenderToRecipient from '../../ui/sender-to-recipient';
import { PageContainerFooter } from '../../ui/page-container'; import { PageContainerFooter } from '../../ui/page-container';
import EditGasPopover from '../edit-gas-popover'; import EditGasPopover from '../edit-gas-popover';
import { EDIT_GAS_MODES } from '../../../../shared/constants/gas'; import { EDIT_GAS_MODES } from '../../../../shared/constants/gas';
import Dialog from '../../ui/dialog';
import { import {
ConfirmPageContainerHeader, ConfirmPageContainerHeader,
ConfirmPageContainerContent, ConfirmPageContainerContent,
@ -66,6 +67,8 @@ export default class ConfirmPageContainer extends Component {
handleCloseEditGas: PropTypes.func, handleCloseEditGas: PropTypes.func,
// Gas Popover // Gas Popover
currentTransaction: PropTypes.object.isRequired, currentTransaction: PropTypes.object.isRequired,
showAddToAddressBookModal: PropTypes.func,
contact: PropTypes.object,
}; };
render() { render() {
@ -114,9 +117,14 @@ export default class ConfirmPageContainer extends Component {
editingGas, editingGas,
handleCloseEditGas, handleCloseEditGas,
currentTransaction, currentTransaction,
showAddToAddressBookModal,
contact = {},
} = this.props; } = this.props;
const renderAssetImage = contentComponent || !identiconAddress; const renderAssetImage = contentComponent || !identiconAddress;
const showAddToAddressDialog =
contact.name === undefined && toAddress !== undefined;
return ( return (
<div className="page-container"> <div className="page-container">
<ConfirmPageContainerNavigation <ConfirmPageContainerNavigation
@ -149,6 +157,17 @@ export default class ConfirmPageContainer extends Component {
/> />
)} )}
</ConfirmPageContainerHeader> </ConfirmPageContainerHeader>
<div>
{showAddToAddressDialog && (
<Dialog
type="message"
className="send__dialog"
onClick={() => showAddToAddressBookModal()}
>
{this.context.t('newAccountDetectedDialogMessage')}
</Dialog>
)}
</div>
{contentComponent || ( {contentComponent || (
<ConfirmPageContainerContent <ConfirmPageContainerContent
action={action} action={action}

@ -0,0 +1,43 @@
import { connect } from 'react-redux';
import { getAddressBookEntry } from '../../../selectors';
import * as actions from '../../../store/actions';
import ConfirmPageContainer from './confirm-page-container.component';
function mapStateToProps(state, ownProps) {
const to = ownProps.toAddress;
const contact = getAddressBookEntry(state, to);
return {
contact,
toName: contact?.name || ownProps.name,
to,
};
}
function mapDispatchToProps(dispatch) {
return {
showAddToAddressBookModal: (recipient) =>
dispatch(
actions.showModal({
name: 'ADD_TO_ADDRESSBOOK',
recipient,
}),
),
};
}
function mergeProps(stateProps, dispatchProps, ownProps) {
const { to, ...restStateProps } = stateProps;
return {
...ownProps,
...restStateProps,
showAddToAddressBookModal: () =>
dispatchProps.showAddToAddressBookModal(to),
};
}
export default connect(
mapStateToProps,
mapDispatchToProps,
mergeProps,
)(ConfirmPageContainer);

@ -1,4 +1,4 @@
export { default } from './confirm-page-container.component'; export { default } from './confirm-page-container.container';
export { default as ConfirmPageContainerHeader } from './confirm-page-container-header'; export { default as ConfirmPageContainerHeader } from './confirm-page-container-header';
export { default as ConfirmDetailRow } from './confirm-detail-row'; export { default as ConfirmDetailRow } from './confirm-detail-row';
export { default as ConfirmPageContainerNavigation } from './confirm-page-container-navigation'; export { default as ConfirmPageContainerNavigation } from './confirm-page-container-navigation';

Loading…
Cancel
Save