refactor of componentDidUpdate for accounts-dropdown

This commit is contained in:
Victor Baranov 2018-12-06 00:15:54 +03:00
parent 8bc4412981
commit 3b55292880
2 changed files with 8 additions and 23 deletions

View File

@ -352,25 +352,11 @@ class AccountDropdowns extends Component {
if (!isNaN(this.props.network)) {
const { selected, network, keyrings, identities } = this.props
if (network !== prevProps.network) {
const keyringsFiltered = keyrings.filter(keyring => {
if (ifContractAcc(keyring)) {
return keyring.network === this.props.network
}
return true
})
const keyring = getCurrentKeyring(selected, this.props.network, keyringsFiltered, identities)
if (!keyring) {
const firstKeyring = keyrings[0]
return this.props.actions.showAccountDetail(firstKeyring.accounts[0])
}
if (ifContractAcc(keyring)) {
if (keyring.network !== this.props.network) {
const firstKeyring = keyrings[0]
if (firstKeyring && firstKeyring.accounts && firstKeyring.accounts[0]) {
this.props.actions.showAccountDetail(firstKeyring.accounts[0])
}
}
const keyring = getCurrentKeyring(selected, this.props.network, keyrings, identities)
const firstKeyring = keyrings && keyrings[0]
const firstKeyRingAcc = firstKeyring && firstKeyring.accounts && firstKeyring.accounts[0]
if (!keyring || (ifContractAcc(keyring) && firstKeyRingAcc)) {
return this.props.actions.showAccountDetail(firstKeyRingAcc)
}
}
}

View File

@ -297,12 +297,11 @@ function getCurrentKeyring (address, network, keyrings, identities) {
const identity = identities[address]
const simpleAddress = identity && identity.address.substring(2).toLowerCase()
const keyring = keyrings && keyrings.find((kr) => {
const isAddressIncluded = kr.accounts.includes(simpleAddress) || kr.accounts.includes(address)
if (ifContractAcc(kr)) {
return kr.network === network && (kr.accounts.includes(simpleAddress) ||
kr.accounts.includes(address))
return kr.network === network && isAddressIncluded
} else {
return kr.accounts.includes(simpleAddress) ||
kr.accounts.includes(address)
return isAddressIncluded
}
})