1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-18 15:33:21 +01:00
metamask-extension/ui/app/pages/send/send-content/add-recipient/add-recipient.container.js
Patryk Łucka 128efc5b52
Add sort and search to AddRecipient accounts list (#9257)
* sort and search accounts in AddRecipient component

* Update AddRecipient unit test

Co-authored-by: Erik Marks <rekmarks@protonmail.com>
2020-11-06 15:16:51 -08:00

46 lines
1.2 KiB
JavaScript

import { connect } from 'react-redux'
import {
getSendEnsResolution,
getSendEnsResolutionError,
accountsWithSendEtherInfoSelector,
getAddressBook,
getAddressBookEntry,
} from '../../../../selectors'
import { updateSendTo } from '../../../../store/actions'
import AddRecipient from './add-recipient.component'
export default connect(mapStateToProps, mapDispatchToProps)(AddRecipient)
function mapStateToProps(state) {
const ensResolution = getSendEnsResolution(state)
let addressBookEntryName = ''
if (ensResolution) {
const addressBookEntry = getAddressBookEntry(state, ensResolution) || {}
addressBookEntryName = addressBookEntry.name
}
const addressBook = getAddressBook(state)
const ownedAccounts = accountsWithSendEtherInfoSelector(state).sort((a, b) =>
a.name.localeCompare(b.name),
)
return {
addressBook,
addressBookEntryName,
contacts: addressBook.filter(({ name }) => Boolean(name)),
ensResolution,
ensResolutionError: getSendEnsResolutionError(state),
nonContacts: addressBook.filter(({ name }) => !name),
ownedAccounts,
}
}
function mapDispatchToProps(dispatch) {
return {
updateSendTo: (to, nickname) => dispatch(updateSendTo(to, nickname)),
}
}