Merge pull request #2370 from MetaMask/MoveOutEtherscanLinkGeneration

Move etherscan link logic into module
feature/default_network_editable
Kevin Serrano 7 years ago committed by GitHub
commit d9f5e6beb2
  1. 1
      package.json
  2. 16
      test/unit/account-link-test.js
  3. 14
      test/unit/explorer-link-test.js
  4. 2
      ui/app/components/account-dropdowns.js
  5. 2
      ui/app/components/shift-list-item.js
  6. 2
      ui/app/components/transaction-list-item.js
  7. 26
      ui/lib/account-link.js
  8. 6
      ui/lib/explorer-link.js

@ -82,6 +82,7 @@
"ethereumjs-tx": "^1.3.0",
"ethereumjs-util": "github:ethereumjs/ethereumjs-util#ac5d0908536b447083ea422b435da27f26615de9",
"ethereumjs-wallet": "^0.6.0",
"etherscan-link": "^1.0.2",
"ethjs-contract": "^0.1.9",
"ethjs-ens": "^2.0.0",
"ethjs-query": "^0.2.9",

@ -1,16 +0,0 @@
var assert = require('assert')
var linkGen = require('../../ui/lib/account-link')
describe('account-link', function () {
it('adds ropsten prefix to ropsten test network', function () {
var result = linkGen('account', '3')
assert.notEqual(result.indexOf('ropsten'), -1, 'ropsten included')
assert.notEqual(result.indexOf('account'), -1, 'account included')
})
it('adds kovan prefix to kovan test network', function () {
var result = linkGen('account', '42')
assert.notEqual(result.indexOf('kovan'), -1, 'kovan included')
assert.notEqual(result.indexOf('account'), -1, 'account included')
})
})

@ -1,14 +0,0 @@
var assert = require('assert')
var linkGen = require('../../ui/lib/explorer-link')
describe('explorer-link', function () {
it('adds ropsten prefix to ropsten test network', function () {
var result = linkGen('hash', '3')
assert.notEqual(result.indexOf('ropsten'), -1, 'ropsten injected')
})
it('adds kovan prefix to kovan test network', function () {
var result = linkGen('hash', '42')
assert.notEqual(result.indexOf('kovan'), -1, 'kovan injected')
})
})

@ -2,7 +2,7 @@ const Component = require('react').Component
const PropTypes = require('react').PropTypes
const h = require('react-hyperscript')
const actions = require('../actions')
const genAccountLink = require('../../lib/account-link.js')
const genAccountLink = require('etherscan-link').createAccountLink
const connect = require('react-redux').connect
const Dropdown = require('./dropdown').Dropdown
const DropdownMenuItem = require('./dropdown').DropdownMenuItem

@ -3,7 +3,7 @@ const Component = require('react').Component
const h = require('react-hyperscript')
const connect = require('react-redux').connect
const vreme = new (require('vreme'))()
const explorerLink = require('../../lib/explorer-link')
const explorerLink = require('etherscan-link').createExplorerLink
const actions = require('../actions')
const addressSummary = require('../util').addressSummary

@ -4,7 +4,7 @@ const inherits = require('util').inherits
const EthBalance = require('./eth-balance')
const addressSummary = require('../util').addressSummary
const explorerLink = require('../../lib/explorer-link')
const explorerLink = require('etherscan-link').createExplorerLink
const CopyButton = require('./copyButton')
const vreme = new (require('vreme'))()
const Tooltip = require('./tooltip')

@ -1,26 +0,0 @@
module.exports = function (address, network) {
const net = parseInt(network)
let link
switch (net) {
case 1: // main net
link = `https://etherscan.io/address/${address}`
break
case 2: // morden test net
link = `https://morden.etherscan.io/address/${address}`
break
case 3: // ropsten test net
link = `https://ropsten.etherscan.io/address/${address}`
break
case 4: // rinkeby test net
link = `https://rinkeby.etherscan.io/address/${address}`
break
case 42: // kovan test net
link = `https://kovan.etherscan.io/address/${address}`
break
default:
link = ''
break
}
return link
}

@ -1,6 +0,0 @@
const prefixForNetwork = require('./etherscan-prefix-for-network')
module.exports = function (hash, network) {
const prefix = prefixForNetwork(network)
return `http://${prefix}etherscan.io/tx/${hash}`
}
Loading…
Cancel
Save