aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkumavis <kumavis@users.noreply.github.com>2017-05-27 03:19:51 +0800
committerGitHub <noreply@github.com>2017-05-27 03:19:51 +0800
commit5e9274d4d507a555020765954e05cbf7c6ed8aa2 (patch)
tree4a684ff7245d75d008f417fb2bbd836497c42206
parent3b253649a433f1f38fd86e0478f0b12592006776 (diff)
parent9d2844c7128c79314529e163b473353d42200e9c (diff)
downloadtangerine-wallet-browser-5e9274d4d507a555020765954e05cbf7c6ed8aa2.tar
tangerine-wallet-browser-5e9274d4d507a555020765954e05cbf7c6ed8aa2.tar.gz
tangerine-wallet-browser-5e9274d4d507a555020765954e05cbf7c6ed8aa2.tar.bz2
tangerine-wallet-browser-5e9274d4d507a555020765954e05cbf7c6ed8aa2.tar.lz
tangerine-wallet-browser-5e9274d4d507a555020765954e05cbf7c6ed8aa2.tar.xz
tangerine-wallet-browser-5e9274d4d507a555020765954e05cbf7c6ed8aa2.tar.zst
tangerine-wallet-browser-5e9274d4d507a555020765954e05cbf7c6ed8aa2.zip
Merge pull request #1507 from MetaMask/AddContractIconMap
Add contract name map
-rw-r--r--CHANGELOG.md1
-rw-r--r--package.json2
-rw-r--r--ui/lib/contract-namer.js12
-rw-r--r--ui/lib/icon-factory.js7
4 files changed, 14 insertions, 8 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index ca9cc6f5a..e050a7509 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,6 +9,7 @@
- Now enforce 95% of block's gasLimit to protect users.
- Removing provider-engine from the inpage provider. This fixes some error handling inconsistencies introduced in 3.7.0.
- Some contracts will now display logos instead of jazzicons.
+- Some contracts will now have names displayed in the confirmation view.
## 3.7.0 2017-5-23
diff --git a/package.json b/package.json
index 9f47d76cb..9efba3866 100644
--- a/package.json
+++ b/package.json
@@ -62,11 +62,11 @@
"end-of-stream": "^1.1.0",
"ensnare": "^1.0.0",
"eth-bin-to-ops": "^1.0.1",
+ "eth-contract-metadata": "^1.0.0",
"eth-hd-keyring": "^1.1.1",
"eth-query": "^2.1.1",
"eth-sig-util": "^1.1.1",
"eth-simple-keyring": "^1.1.1",
- "ethereum-contract-icons": "^1.0.0",
"ethereumjs-tx": "^1.3.0",
"ethereumjs-util": "ethereumjs/ethereumjs-util#ac5d0908536b447083ea422b435da27f26615de9",
"ethereumjs-wallet": "^0.6.0",
diff --git a/ui/lib/contract-namer.js b/ui/lib/contract-namer.js
index a94c62b62..f05e770cc 100644
--- a/ui/lib/contract-namer.js
+++ b/ui/lib/contract-namer.js
@@ -5,14 +5,18 @@
* otherwise returns null.
*/
-// Nickname keys must be stored in lower case.
-const nicknames = {}
+const contractMap = require('eth-contract-metadata')
+const ethUtil = require('ethereumjs-util')
module.exports = function (addr, identities = {}) {
+ const checksummed = ethUtil.toChecksumAddress(addr)
+ if (contractMap[checksummed] && contractMap[checksummed].name) {
+ return contractMap[checksummed].name
+ }
+
const address = addr.toLowerCase()
const ids = hashFromIdentities(identities)
-
- return addrFromHash(address, ids) || addrFromHash(address, nicknames)
+ return addrFromHash(address, ids)
}
function hashFromIdentities (identities) {
diff --git a/ui/lib/icon-factory.js b/ui/lib/icon-factory.js
index 4aed9109b..45be47b7a 100644
--- a/ui/lib/icon-factory.js
+++ b/ui/lib/icon-factory.js
@@ -1,7 +1,7 @@
var iconFactory
const isValidAddress = require('ethereumjs-util').isValidAddress
const toChecksumAddress = require('ethereumjs-util').toChecksumAddress
-const iconMap = require('ethereum-contract-icons')
+const contractMap = require('eth-contract-metadata')
module.exports = function (jazzicon) {
if (!iconFactory) {
@@ -43,11 +43,12 @@ IconFactory.prototype.generateNewIdenticon = function (address, diameter) {
// util
function iconExistsFor (address) {
- return (address in iconMap) && isValidAddress(address)
+ return (contractMap.address) && isValidAddress(address) && (contractMap[address].logo)
}
function imageElFor (address) {
- const fileName = iconMap[address]
+ const contract = contractMap[address]
+ const fileName = contract.logo
const path = `images/contract/${fileName}`
const img = document.createElement('img')
img.src = path