From 6f492a49452ac59bba7de4a21d891b113f833b18 Mon Sep 17 00:00:00 2001 From: Jannis R Date: Thu, 5 Jan 2017 17:19:26 +0100 Subject: [PATCH] address selector: use cached reverses --- js/src/ui/Form/AddressSelect/addressSelect.js | 5 +++- .../Form/AddressSelect/addressSelectStore.js | 27 +++++++++++++++++-- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/js/src/ui/Form/AddressSelect/addressSelect.js b/js/src/ui/Form/AddressSelect/addressSelect.js index 692ff4285..7b09b5b07 100644 --- a/js/src/ui/Form/AddressSelect/addressSelect.js +++ b/js/src/ui/Form/AddressSelect/addressSelect.js @@ -56,6 +56,7 @@ class AddressSelect extends Component { contacts: PropTypes.object, contracts: PropTypes.object, tokens: PropTypes.object, + reverse: PropTypes.object, // Optional props allowCopy: PropTypes.bool, @@ -584,10 +585,12 @@ class AddressSelect extends Component { function mapStateToProps (state) { const { accountsInfo } = state.personal; const { balances } = state.balances; + const { reverse } = state.registry; return { accountsInfo, - balances + balances, + reverse }; } diff --git a/js/src/ui/Form/AddressSelect/addressSelectStore.js b/js/src/ui/Form/AddressSelect/addressSelectStore.js index 26f9fe80e..ae868fb4b 100644 --- a/js/src/ui/Form/AddressSelect/addressSelectStore.js +++ b/js/src/ui/Form/AddressSelect/addressSelectStore.js @@ -30,7 +30,29 @@ export default class AddressSelectStore { @observable registryValues = []; initValues = []; - regLookups = []; + regLookups = [ + (address) => { + const name = this.reverse[address]; + + if (!name) { + return null; + } + + return { + address, + name, + description: ( + + ) + }; + } + ]; constructor (api) { this.api = api; @@ -114,7 +136,8 @@ export default class AddressSelectStore { } @action setValues (props) { - const { accounts = {}, contracts = {}, contacts = {} } = props; + const { accounts = {}, contracts = {}, contacts = {}, reverse = {} } = props; + this.reverse = reverse; const accountsN = Object.keys(accounts).length; const contractsN = Object.keys(contracts).length;