Compare commits

..

No commits in common. "8d048908fac5524cc0e11f4acef18a940428db63" and "f0c5dc225770eabe3b75e88ed418305ff7546dea" have entirely different histories.

8 changed files with 488 additions and 4247 deletions

View File

@ -1,24 +1,18 @@
const networkIDs = { const networkIDs = {
ETH_MAINNET_CODE: 1, MAINNET_CODE: 1,
ETC_MAINNET_CODE: 61, CLASSIC_CODE: 61,
ETH_ROPSTEN_CODE: 3, ROPSTEN_CODE: 3,
ETH_RINKEBY_CODE: 4, RINKEBY_CODE: 4,
ETH_GOERLI_CODE: 5, GOERLI_CODE: 5,
ETH_SEPOLIA_CODE: 11155111, KOVAN_CODE: 42,
ETH_KOVAN_CODE: 42, SOKOL_CODE: 77,
POA_SOKOL_CODE: 77,
POA_CORE_CODE: 99, POA_CORE_CODE: 99,
GC_MAINNET_CODE: 100, XDAI_CODE: 100,
GC_OPTIMISM_CODE: 300, RSK_CODE: 30,
RSK_MAINNET_CODE: 30,
RSK_TESTNET_CODE: 31, RSK_TESTNET_CODE: 31,
OPTIMISM_GOERLI_CODE: 420,
ASTAR_CODE: 592,
SHIDEN_CODE: 336,
SHIBUYA_CODE: 81,
CELO_CODE: 42220, CELO_CODE: 42220,
CELO_ALFAJORES_TESTNET_CODE: 44787, CELO_ALFAJORES_TESTNET_CODE: 44787,
CELO_BAKLAVA_TESTNET_CODE: 62320 CELO_BAKLAVA_TESTNET_CODE: 62320,
} }
module.exports = { module.exports = {

View File

@ -1,34 +1,22 @@
const { networkIDs } = require('./enum') const { networkIDs } = require('./enum')
const { const {
ETH_MAINNET_CODE, MAINNET_CODE,
ETH_ROPSTEN_CODE, ROPSTEN_CODE,
ETH_RINKEBY_CODE, RINKEBY_CODE,
ETH_GOERLI_CODE, GOERLI_CODE,
ETH_SEPOLIA_CODE, KOVAN_CODE,
ETH_KOVAN_CODE, SOKOL_CODE,
POA_SOKOL_CODE,
POA_CORE_CODE, POA_CORE_CODE,
GC_MAINNET_CODE, XDAI_CODE,
GC_OPTIMISM_CODE, RSK_CODE,
RSK_MAINNET_CODE,
RSK_TESTNET_CODE, RSK_TESTNET_CODE,
ETC_MAINNET_CODE, CLASSIC_CODE,
OPTIMISM_GOERLI_CODE,
ASTAR_CODE,
SHIDEN_CODE,
SHIBUYA_CODE,
CELO_CODE, CELO_CODE,
CELO_ALFAJORES_TESTNET_CODE, CELO_ALFAJORES_TESTNET_CODE,
CELO_BAKLAVA_TESTNET_CODE, CELO_BAKLAVA_TESTNET_CODE,
} = networkIDs } = networkIDs
const blockScoutLink = (net, prefix) => { const blockScoutLink = (net, prefix) => `https://blockscout.com/${net}/${prefix}`
if (prefix) {
return `https://blockscout.com/${net}/${prefix}`
} else {
return `https://blockscout.com/${net}`
}
}
const etherscanLink = (prefix) => prefix === 'mainnet' ? 'https://etherscan.io' : `https://${prefix}.etherscan.io` const etherscanLink = (prefix) => prefix === 'mainnet' ? 'https://etherscan.io' : `https://${prefix}.etherscan.io`
const rskTestnetExplorerLink = 'https://explorer.testnet.rsk.co' const rskTestnetExplorerLink = 'https://explorer.testnet.rsk.co'
const celoExplorerLink = 'https://explorer.celo.org' const celoExplorerLink = 'https://explorer.celo.org'
@ -37,25 +25,19 @@ const celoBaklavaTestnetExplorerLink = 'https://baklava-blockscout.celo-testnet.
const explorerLink = (networkCode, net, prefix) => { const explorerLink = (networkCode, net, prefix) => {
switch (networkCode) { switch (networkCode) {
case POA_SOKOL_CODE: // POA Sokol testnet case SOKOL_CODE: // POA Sokol testnet
case POA_CORE_CODE: // POA Core case POA_CORE_CODE: // POA Core
case GC_MAINNET_CODE: // Gnosis chain case XDAI_CODE: // xDai chain
case GC_OPTIMISM_CODE: // GC Optimism case CLASSIC_CODE: // ETC mainnet
case ETC_MAINNET_CODE: // ETC mainnet case RSK_CODE: // RSK mainnet
case RSK_MAINNET_CODE: // RSK mainnet
case OPTIMISM_GOERLI_CODE: // Optimissm Goerli testnet
case ASTAR_CODE: // Astar
case SHIDEN_CODE: // Shiden
case SHIBUYA_CODE: // Shibuya
return blockScoutLink(net, prefix) return blockScoutLink(net, prefix)
case RSK_TESTNET_CODE: // RSK testnet case RSK_TESTNET_CODE: // RSK testnet
return rskTestnetExplorerLink return rskTestnetExplorerLink
case ETH_MAINNET_CODE: // main net case MAINNET_CODE: // main net
case ETH_ROPSTEN_CODE: // ropsten testnet case ROPSTEN_CODE: // ropsten testnet
case ETH_RINKEBY_CODE: // rinkeby testnet case RINKEBY_CODE: // rinkeby testnet
case ETH_KOVAN_CODE: // kovan testnet case KOVAN_CODE: // kovan testnet
case ETH_GOERLI_CODE: // Goerli testnet case GOERLI_CODE: // Goerli testnet
case ETH_SEPOLIA_CODE: // Sepolia testnet
return etherscanLink(prefix) return etherscanLink(prefix)
case CELO_CODE: // CELO case CELO_CODE: // CELO
return celoExplorerLink return celoExplorerLink
@ -77,25 +59,19 @@ const tokenLink = (networkCode, chain, prefix, tokenAddress, holderAddress) => {
const celoBaklavaTestnetExplorerLinkStr = `${celoBaklavaTestnetExplorerLink}/address/${holderAddress}/tokens/${tokenAddress}/token_transfers` const celoBaklavaTestnetExplorerLinkStr = `${celoBaklavaTestnetExplorerLink}/address/${holderAddress}/tokens/${tokenAddress}/token_transfers`
switch (networkCode) { switch (networkCode) {
case POA_SOKOL_CODE: // POA Sokol testnet case SOKOL_CODE: // POA Sokol testnet
case POA_CORE_CODE: // POA Core case POA_CORE_CODE: // POA Core
case GC_MAINNET_CODE: // Gnosis chain case XDAI_CODE: // xDai chain
case GC_OPTIMISM_CODE: // GC Optimism case CLASSIC_CODE: // ETC mainnet
case ETC_MAINNET_CODE: // ETC mainnet case RSK_CODE: // RSK mainnet
case RSK_MAINNET_CODE: // RSK mainnet
case OPTIMISM_GOERLI_CODE: // Optimism Goerli testnet
case ASTAR_CODE: // Astar
case SHIDEN_CODE: // Shiden
case SHIBUYA_CODE: // Shibuya
return blockscoutLinkStr return blockscoutLinkStr
case RSK_TESTNET_CODE: // RSK testnet case RSK_TESTNET_CODE: // RSK testnet
return rskTestnetExplorerLinkStr return rskTestnetExplorerLinkStr
case ETH_MAINNET_CODE: // main net case MAINNET_CODE: // main net
case ETH_ROPSTEN_CODE: // ropsten testnet case ROPSTEN_CODE: // ropsten testnet
case ETH_RINKEBY_CODE: // rinkeby testnet case RINKEBY_CODE: // rinkeby testnet
case ETH_KOVAN_CODE: // kovan testnet case KOVAN_CODE: // kovan testnet
case ETH_GOERLI_CODE: // Goerli testnet case GOERLI_CODE: // Goerli testnet
case ETH_SEPOLIA_CODE: // Sepolia testnet
return etherscanLinkStr return etherscanLinkStr
case CELO_CODE: // CELO case CELO_CODE: // CELO
return celoExplorerLinkStr return celoExplorerLinkStr
@ -130,40 +106,24 @@ function getExplorerChain (networkCode) {
const net = parseInt(networkCode) const net = parseInt(networkCode)
let chain let chain
switch (net) { switch (net) {
case ETH_MAINNET_CODE: // main net case MAINNET_CODE: // main net
case ETH_ROPSTEN_CODE: // ropsten testnet case ROPSTEN_CODE: // ropsten testnet
case ETH_RINKEBY_CODE: // rinkeby testnet case RINKEBY_CODE: // rinkeby testnet
case ETH_KOVAN_CODE: // kovan testnet case KOVAN_CODE: // kovan testnet
case ETH_GOERLI_CODE: // Goerli testnet case GOERLI_CODE: // Goerli testnet
case ETH_SEPOLIA_CODE: // Sepolia testnet
chain = 'eth' chain = 'eth'
break break
case POA_SOKOL_CODE: // POA Sokol testnet case SOKOL_CODE: // POA Sokol testnet
case POA_CORE_CODE: // POA Core case POA_CORE_CODE: // POA Core
case XDAI_CODE: // xDai chain
chain = 'poa' chain = 'poa'
break break
case GC_MAINNET_CODE: // Gnosis chain case CLASSIC_CODE: // ETC mainnet
case GC_OPTIMISM_CODE: // Optimism on Gnosis chain
chain = 'xdai'
break
case ETC_MAINNET_CODE: // ETC mainnet
chain = 'etc' chain = 'etc'
break break
case RSK_MAINNET_CODE: // RSK mainnet case RSK_CODE: // RSK mainnet
chain = 'rsk' chain = 'rsk'
break break
case OPTIMISM_GOERLI_CODE: // Optimism Goerli testnet
chain = 'optimism'
break
case ASTAR_CODE: // Astar
chain = 'astar'
break
case SHIDEN_CODE: // Shiden
chain = 'shiden'
break
case SHIBUYA_CODE: // Shibuya
chain = 'shibuya'
break
case CELO_CODE: // CELO case CELO_CODE: // CELO
chain = 'celo' chain = 'celo'
break break
@ -183,35 +143,30 @@ function getExplorerPrefix (networkCode) {
const net = parseInt(networkCode) const net = parseInt(networkCode)
let prefix let prefix
switch (net) { switch (net) {
case ETH_MAINNET_CODE: // main net case MAINNET_CODE: // main net
case ETC_MAINNET_CODE: // ETC mainnet case CLASSIC_CODE: // ETC mainnet
case RSK_MAINNET_CODE: // RSK mainnet case RSK_CODE: // RSK mainnet
case GC_MAINNET_CODE: // Gnosis chain
prefix = 'mainnet' prefix = 'mainnet'
break break
case ETH_ROPSTEN_CODE: // ropsten testnet case ROPSTEN_CODE: // ropsten testnet
prefix = 'ropsten' prefix = 'ropsten'
break break
case ETH_RINKEBY_CODE: // rinkeby testnet case RINKEBY_CODE: // rinkeby testnet
prefix = 'rinkeby' prefix = 'rinkeby'
break break
case ETH_SEPOLIA_CODE: // Sepolia testnet case KOVAN_CODE: // kovan testnet
prefix = 'sepolia'
break
case ETH_KOVAN_CODE: // kovan testnet
prefix = 'kovan' prefix = 'kovan'
break break
case POA_SOKOL_CODE: // POA Sokol testnet case SOKOL_CODE: // POA Sokol testnet
prefix = 'sokol' prefix = 'sokol'
break break
case POA_CORE_CODE: // POA Core case POA_CORE_CODE: // POA Core
prefix = 'core' prefix = 'core'
break break
case GC_OPTIMISM_CODE: // GC Optimism case XDAI_CODE: // xDai chain
prefix = 'optimism' prefix = 'xdai'
break break
case ETH_GOERLI_CODE: // Goerli testnet case GOERLI_CODE: // Goerli testnet
case OPTIMISM_GOERLI_CODE: // Optimism Goerli testnet
prefix = 'goerli' prefix = 'goerli'
break break
default: default:

View File

@ -1,11 +1,10 @@
const { networkIDs } = require('./enum') const { networkIDs } = require('./enum')
const { const {
ETH_ROPSTEN_CODE, ROPSTEN_CODE,
ETH_RINKEBY_CODE, RINKEBY_CODE,
ETH_GOERLI_CODE, GOERLI_CODE,
ETH_SEPOLIA_CODE, KOVAN_CODE,
ETH_KOVAN_CODE, SOKOL_CODE,
POA_SOKOL_CODE,
RSK_TESTNET_CODE, RSK_TESTNET_CODE,
CELO_ALFAJORES_TESTNET_CODE, CELO_ALFAJORES_TESTNET_CODE,
} = networkIDs } = networkIDs
@ -13,17 +12,15 @@ const {
function getFaucetLinks(network) { function getFaucetLinks(network) {
const netID = parseInt(network) const netID = parseInt(network)
switch (netID) { switch (netID) {
case ETH_ROPSTEN_CODE: case ROPSTEN_CODE:
return ['https://faucet.metamask.io/'] return ['https://faucet.metamask.io/']
case ETH_RINKEBY_CODE: case RINKEBY_CODE:
return ['https://faucet.rinkeby.io/'] return ['https://faucet.rinkeby.io/']
case ETH_GOERLI_CODE: case GOERLI_CODE:
return ['https://goerli-faucet.slock.it/'] return ['https://goerli-faucet.slock.it/']
case ETH_SEPOLIA_CODE: case KOVAN_CODE:
return ['https://faucet.sepolia.dev/']
case ETH_KOVAN_CODE:
return ['https://faucet.kovan.network/', 'https://gitter.im/kovan-testnet/faucet/'] return ['https://faucet.kovan.network/', 'https://gitter.im/kovan-testnet/faucet/']
case POA_SOKOL_CODE: case SOKOL_CODE:
return ['https://faucet.poa.network/'] return ['https://faucet.poa.network/']
case RSK_TESTNET_CODE: case RSK_TESTNET_CODE:
return ['https://faucet.rsk.co/'] return ['https://faucet.rsk.co/']

View File

@ -1,22 +1,16 @@
const { networkIDs } = require('./enum') const { networkIDs } = require('./enum')
const { const {
ETH_MAINNET_CODE, MAINNET_CODE,
ETH_ROPSTEN_CODE, ROPSTEN_CODE,
ETH_RINKEBY_CODE, RINKEBY_CODE,
ETH_GOERLI_CODE, GOERLI_CODE,
ETH_SEPOLIA_CODE, KOVAN_CODE,
ETH_KOVAN_CODE, SOKOL_CODE,
POA_SOKOL_CODE,
POA_CORE_CODE, POA_CORE_CODE,
GC_MAINNET_CODE, XDAI_CODE,
GC_OPTIMISM_CODE, RSK_CODE,
RSK_MAINNET_CODE,
RSK_TESTNET_CODE, RSK_TESTNET_CODE,
ETC_MAINNET_CODE, CLASSIC_CODE,
OPTIMISM_GOERLI_CODE,
ASTAR_CODE,
SHIDEN_CODE,
SHIBUYA_CODE,
CELO_CODE, CELO_CODE,
CELO_ALFAJORES_TESTNET_CODE, CELO_ALFAJORES_TESTNET_CODE,
CELO_BAKLAVA_TESTNET_CODE, CELO_BAKLAVA_TESTNET_CODE,
@ -25,40 +19,28 @@ const {
function getNetworkDisplayName(network) { function getNetworkDisplayName(network) {
const netID = parseInt(network) const netID = parseInt(network)
switch (netID) { switch (netID) {
case ETH_MAINNET_CODE: case MAINNET_CODE:
return 'Ethereum' return 'Ethereum'
case ETH_ROPSTEN_CODE: case ROPSTEN_CODE:
return 'Ropsten Testnet' return 'Ropsten Testnet'
case ETH_RINKEBY_CODE: case RINKEBY_CODE:
return 'Rinkeby Testnet' return 'Rinkeby Testnet'
case ETH_GOERLI_CODE: case GOERLI_CODE:
return 'Görli Testnet' return 'Görli Testnet'
case ETH_SEPOLIA_CODE: case KOVAN_CODE:
return 'Sepolia Testnet'
case ETH_KOVAN_CODE:
return 'Kovan Testnet' return 'Kovan Testnet'
case POA_SOKOL_CODE: case SOKOL_CODE:
return 'Sokol Testnet' return 'Sokol Testnet'
case POA_CORE_CODE: case POA_CORE_CODE:
return 'POA' return 'POA'
case GC_MAINNET_CODE: case XDAI_CODE:
return 'Gnosis Chain' return 'xDai'
case GC_OPTIMISM_CODE: case RSK_CODE:
return 'Optimism on Gnosis Chain'
case RSK_MAINNET_CODE:
return 'RSK' return 'RSK'
case RSK_TESTNET_CODE: case RSK_TESTNET_CODE:
return 'RSK Testnet' return 'RSK Testnet'
case ETC_MAINNET_CODE: case CLASSIC_CODE:
return 'Ethereum Classic' return 'Ethereum Classic'
case OPTIMISM_GOERLI_CODE:
return 'Optimism Goerli Testnet'
case ASTAR_CODE:
return 'Astar'
case SHIDEN_CODE:
return 'Shiden'
case SHIBUYA_CODE:
return 'Shibya'
case CELO_CODE: case CELO_CODE:
return 'CELO' return 'CELO'
case CELO_ALFAJORES_TESTNET_CODE: case CELO_ALFAJORES_TESTNET_CODE:
@ -73,27 +55,18 @@ function getNetworkDisplayName(network) {
function getNetworkCoinName(network) { function getNetworkCoinName(network) {
const netID = parseInt(network) const netID = parseInt(network)
switch (netID) { switch (netID) {
case POA_SOKOL_CODE: case SOKOL_CODE:
case POA_CORE_CODE: case POA_CORE_CODE:
return 'POA' return 'POA'
case RSK_MAINNET_CODE: case RSK_CODE:
case RSK_TESTNET_CODE: case RSK_TESTNET_CODE:
return 'RBTC' return 'RBTC'
case GC_MAINNET_CODE: case XDAI_CODE:
case GC_OPTIMISM_CODE:
return 'xDAI' return 'xDAI'
case ETH_GOERLI_CODE: case GOERLI_CODE:
return 'GöETH' return 'GöETH'
case ETH_SEPOLIA_CODE: case CLASSIC_CODE:
return 'SEP'
case ETC_MAINNET_CODE:
return 'ETC' return 'ETC'
case ASTAR_CODE:
return 'ASTR'
case SHIDEN_CODE:
return 'SDN'
case SHIBUYA_CODE:
return 'SBY'
case CELO_CODE: case CELO_CODE:
case CELO_ALFAJORES_TESTNET_CODE: case CELO_ALFAJORES_TESTNET_CODE:
case CELO_BAKLAVA_TESTNET_CODE: case CELO_BAKLAVA_TESTNET_CODE:
@ -106,12 +79,11 @@ function getNetworkCoinName(network) {
function isTestnet(network) { function isTestnet(network) {
const netID = parseInt(network) const netID = parseInt(network)
switch (netID) { switch (netID) {
case ETH_MAINNET_CODE: case MAINNET_CODE:
case POA_CORE_CODE: case POA_CORE_CODE:
case GC_MAINNET_CODE: case XDAI_CODE:
case GC_OPTIMISM_CODE: case RSK_CODE:
case RSK_MAINNET_CODE: case CLASSIC_CODE:
case ETC_MAINNET_CODE:
case CELO_CODE: case CELO_CODE:
return false return false
default: default:

View File

@ -1,22 +1,16 @@
const { networkIDs } = require('./enum') const { networkIDs } = require('./enum')
const { const {
ETH_MAINNET_CODE, MAINNET_CODE,
ETH_ROPSTEN_CODE, ROPSTEN_CODE,
ETH_RINKEBY_CODE, RINKEBY_CODE,
ETH_GOERLI_CODE, GOERLI_CODE,
ETH_SEPOLIA_CODE, KOVAN_CODE,
ETH_KOVAN_CODE, SOKOL_CODE,
POA_SOKOL_CODE,
POA_CORE_CODE, POA_CORE_CODE,
GC_MAINNET_CODE, XDAI_CODE,
GC_OPTIMISM_CODE, RSK_CODE,
RSK_MAINNET_CODE,
RSK_TESTNET_CODE, RSK_TESTNET_CODE,
ETC_MAINNET_CODE, CLASSIC_CODE,
OPTIMISM_GOERLI_CODE,
ASTAR_CODE,
SHIDEN_CODE,
SHIBUYA_CODE,
CELO_CODE, CELO_CODE,
CELO_ALFAJORES_TESTNET_CODE, CELO_ALFAJORES_TESTNET_CODE,
CELO_BAKLAVA_TESTNET_CODE, CELO_BAKLAVA_TESTNET_CODE,
@ -25,40 +19,28 @@ const {
function getRPCEndpoints(network) { function getRPCEndpoints(network) {
const netID = parseInt(network) const netID = parseInt(network)
switch (netID) { switch (netID) {
case ETH_MAINNET_CODE: case MAINNET_CODE:
return ['https://mainnet.infura.io/'] return ['https://mainnet.infura.io/']
case ETH_ROPSTEN_CODE: case ROPSTEN_CODE:
return ['https://ropsten.infura.io/'] return ['https://ropsten.infura.io/']
case ETH_RINKEBY_CODE: case RINKEBY_CODE:
return ['https://rinkeby.infura.io/'] return ['https://rinkeby.infura.io/']
case ETH_GOERLI_CODE: case GOERLI_CODE:
return ['https://rpc.slock.it/goerli/'] return ['https://rpc.slock.it/goerli/']
case ETH_SEPOLIA_CODE: case KOVAN_CODE:
return ['https://rpc.sepolia.org']
case ETH_KOVAN_CODE:
return ['https://kovan.poa.network/'] return ['https://kovan.poa.network/']
case POA_SOKOL_CODE: case SOKOL_CODE:
return ['https://sokol.poa.network/'] return ['https://sokol.poa.network/']
case POA_CORE_CODE: case POA_CORE_CODE:
return ['https://core.poanetwork.dev/'] return ['https://core.poanetwork.dev/']
case GC_MAINNET_CODE: case XDAI_CODE:
return ['https://rpc.gnosischain.com'] return ['https://xdai.poanetwork.dev/']
case GC_OPTIMISM_CODE: case RSK_CODE:
return ['https://optimism.gnosischain.com']
case RSK_MAINNET_CODE:
return ['https://public-node.rsk.co'] return ['https://public-node.rsk.co']
case RSK_TESTNET_CODE: case RSK_TESTNET_CODE:
return ['https://public-node.testnet.rsk.co'] return ['https://public-node.testnet.rsk.co']
case ETC_MAINNET_CODE: case CLASSIC_CODE:
return ['https://www.ethercluster.com/etc'] return ['https://www.ethercluster.com/etc']
case OPTIMISM_GOERLI_CODE:
return ['https://goerli.optimism.io/']
case ASTAR_CODE:
return ['https://rpc.astar.network:8545', 'https://astar.public.blastapi.io']
case SHIDEN_CODE:
return ['https://rpc.shiden.astar.network:8545', 'https://shiden.public.blastapi.io']
case SHIBUYA_CODE:
return ['https://shibuya.public.blastapi.io']
case CELO_CODE: case CELO_CODE:
return ['https://forno.celo.org'] return ['https://forno.celo.org']
case CELO_ALFAJORES_TESTNET_CODE: case CELO_ALFAJORES_TESTNET_CODE:

4378
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
{ {
"name": "eth-net-props", "name": "eth-net-props",
"version": "1.0.41", "version": "1.0.40",
"description": "Get properties of EMV-based network", "description": "Get properties of EMV-based network",
"main": "index.js", "main": "index.js",
"directories": { "directories": {
@ -12,7 +12,7 @@
"devDependencies": { "devDependencies": {
"coveralls": "^3.0.9", "coveralls": "^3.0.9",
"eslint": "^6.7.0", "eslint": "^6.7.0",
"mocha": "^10.0.0", "mocha": "^8.2.0",
"mocha-lcov-reporter": "^1.3.0", "mocha-lcov-reporter": "^1.3.0",
"nyc": "^15.0.0" "nyc": "^15.0.0"
}, },

View File

@ -18,7 +18,7 @@ describe('eth-net-props', () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0x15c40c6de9f2299680a4522d8635c9b394eded09', 99), 'https://blockscout.com/poa/core/address/0x15c40c6de9f2299680a4522d8635c9b394eded09') assert.equal(explorerLinks.getExplorerAccountLinkFor('0x15c40c6de9f2299680a4522d8635c9b394eded09', 99), 'https://blockscout.com/poa/core/address/0x15c40c6de9f2299680a4522d8635c9b394eded09')
}) })
it(`${claimPrefix} xDai`, () => { it(`${claimPrefix} xDai`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0x15c40c6de9f2299680a4522d8635c9b394eded09', 100), 'https://blockscout.com/xdai/mainnet/address/0x15c40c6de9f2299680a4522d8635c9b394eded09') assert.equal(explorerLinks.getExplorerAccountLinkFor('0x15c40c6de9f2299680a4522d8635c9b394eded09', 100), 'https://blockscout.com/poa/xdai/address/0x15c40c6de9f2299680a4522d8635c9b394eded09')
}) })
it(`${claimPrefix} Ethereum`, () => { it(`${claimPrefix} Ethereum`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0x70FDd102DDB03Dc55B1719E76DfeA784916621fd', 1), 'https://etherscan.io/address/0x70FDd102DDB03Dc55B1719E76DfeA784916621fd') assert.equal(explorerLinks.getExplorerAccountLinkFor('0x70FDd102DDB03Dc55B1719E76DfeA784916621fd', 1), 'https://etherscan.io/address/0x70FDd102DDB03Dc55B1719E76DfeA784916621fd')
@ -47,15 +47,6 @@ describe('eth-net-props', () => {
it(`${claimPrefix} Ethereum Classic`, () => { it(`${claimPrefix} Ethereum Classic`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0', '61'), 'https://blockscout.com/etc/mainnet/address/0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0') assert.equal(explorerLinks.getExplorerAccountLinkFor('0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0', '61'), 'https://blockscout.com/etc/mainnet/address/0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0')
}) })
it(`${claimPrefix} Optimism Goerli`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0', 300), 'https://blockscout.com/xdai/optimism/address/0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0')
})
it(`${claimPrefix} Optimism Goerli`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0', 420), 'https://blockscout.com/optimism/goerli/address/0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0')
})
it(`${claimPrefix} Astar`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0', 592), 'https://blockscout.com/astar/address/0xd8fe15886d2dcbc5d7c06394beb417aadaf1eee0')
})
it(`${claimPrefix} CELO`, () => { it(`${claimPrefix} CELO`, () => {
assert.equal(explorerLinks.getExplorerAccountLinkFor('0xff2c76ec831bc5c09c491d31abac7821a5ab6c26', 42220), 'https://explorer.celo.org/address/0xff2c76ec831bc5c09c491d31abac7821a5ab6c26') assert.equal(explorerLinks.getExplorerAccountLinkFor('0xff2c76ec831bc5c09c491d31abac7821a5ab6c26', 42220), 'https://explorer.celo.org/address/0xff2c76ec831bc5c09c491d31abac7821a5ab6c26')
}) })
@ -75,7 +66,7 @@ describe('eth-net-props', () => {
assert.equal(explorerLinks.getExplorerTxLinkFor('0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e', 99), 'https://blockscout.com/poa/core/tx/0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e') assert.equal(explorerLinks.getExplorerTxLinkFor('0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e', 99), 'https://blockscout.com/poa/core/tx/0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e')
}) })
it(`${claimPrefix} xDai`, () => { it(`${claimPrefix} xDai`, () => {
assert.equal(explorerLinks.getExplorerTxLinkFor('0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e', 100), 'https://blockscout.com/xdai/mainnet/tx/0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e') assert.equal(explorerLinks.getExplorerTxLinkFor('0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e', 100), 'https://blockscout.com/poa/xdai/tx/0xb3b01bcc1a73477cd86de989cc207fa59f87ea601dea298772f4b1b3f6f1407e')
}) })
it(`${claimPrefix} Ethereum`, () => { it(`${claimPrefix} Ethereum`, () => {
assert.equal(explorerLinks.getExplorerTxLinkFor('0x892c825d1ec25b0a1a27aa5dff5b54fc4488a45029d0087fc40d3d733ded7305', 1), 'https://etherscan.io/tx/0x892c825d1ec25b0a1a27aa5dff5b54fc4488a45029d0087fc40d3d733ded7305') assert.equal(explorerLinks.getExplorerTxLinkFor('0x892c825d1ec25b0a1a27aa5dff5b54fc4488a45029d0087fc40d3d733ded7305', 1), 'https://etherscan.io/tx/0x892c825d1ec25b0a1a27aa5dff5b54fc4488a45029d0087fc40d3d733ded7305')
@ -110,9 +101,6 @@ describe('eth-net-props', () => {
it(`${claimPrefix} CELO Bklava testnnet`, () => { it(`${claimPrefix} CELO Bklava testnnet`, () => {
assert.equal(explorerLinks.getExplorerTxLinkFor('0xf339b8687970623b532aca1cf76d02ffa0a82792a2de1fa0c1c89866efff2950', 62320), 'https://baklava-blockscout.celo-testnet.org/tx/0xf339b8687970623b532aca1cf76d02ffa0a82792a2de1fa0c1c89866efff2950') assert.equal(explorerLinks.getExplorerTxLinkFor('0xf339b8687970623b532aca1cf76d02ffa0a82792a2de1fa0c1c89866efff2950', 62320), 'https://baklava-blockscout.celo-testnet.org/tx/0xf339b8687970623b532aca1cf76d02ffa0a82792a2de1fa0c1c89866efff2950')
}) })
it(`${claimPrefix} Shiden`, () => {
assert.equal(explorerLinks.getExplorerTxLinkFor('0xe02a0bee75eb5754fb561d7965ae387213660ff1e344b6d6371b4724acf58ba0', 336), 'https://blockscout.com/shiden/tx/0xe02a0bee75eb5754fb561d7965ae387213660ff1e344b6d6371b4724acf58ba0')
})
}) })
describe ('getExplorerTokenLinkFor()', () => { describe ('getExplorerTokenLinkFor()', () => {
@ -123,7 +111,7 @@ describe('eth-net-props', () => {
assert.equal(explorerLinks.getExplorerTokenLinkFor('0xAb2f2Dd3120dE530d38936EE09A74a6d17e3Da44', '0x4C4b0F3fb93A33d58b07117ae079775496CF9c17', 99), 'https://blockscout.com/poa/core/address/0x4C4b0F3fb93A33d58b07117ae079775496CF9c17/tokens/0xAb2f2Dd3120dE530d38936EE09A74a6d17e3Da44/token-transfers') assert.equal(explorerLinks.getExplorerTokenLinkFor('0xAb2f2Dd3120dE530d38936EE09A74a6d17e3Da44', '0x4C4b0F3fb93A33d58b07117ae079775496CF9c17', 99), 'https://blockscout.com/poa/core/address/0x4C4b0F3fb93A33d58b07117ae079775496CF9c17/tokens/0xAb2f2Dd3120dE530d38936EE09A74a6d17e3Da44/token-transfers')
}) })
it(`${claimPrefix} xDai`, () => { it(`${claimPrefix} xDai`, () => {
assert.equal(explorerLinks.getExplorerTokenLinkFor('0xABE71e6a260C2eEa3C30864Dc50639100Aa315f6', '0xEca0f4Bd861713aF4f248CED18C15AF76440b00a', 100), 'https://blockscout.com/xdai/mainnet/address/0xEca0f4Bd861713aF4f248CED18C15AF76440b00a/tokens/0xABE71e6a260C2eEa3C30864Dc50639100Aa315f6/token-transfers') assert.equal(explorerLinks.getExplorerTokenLinkFor('0xABE71e6a260C2eEa3C30864Dc50639100Aa315f6', '0xEca0f4Bd861713aF4f248CED18C15AF76440b00a', 100), 'https://blockscout.com/poa/xdai/address/0xEca0f4Bd861713aF4f248CED18C15AF76440b00a/tokens/0xABE71e6a260C2eEa3C30864Dc50639100Aa315f6/token-transfers')
}) })
it(`${claimPrefix} Ethereum`, () => { it(`${claimPrefix} Ethereum`, () => {
assert.equal(explorerLinks.getExplorerTokenLinkFor('0x5a386eb0fcbfee3f0d759e263053c09162ff102d', '0x2C343e73A594DfD1808b930372A610071bAa9d0E', 1), 'https://etherscan.io/token/0x5a386eb0fcbfee3f0d759e263053c09162ff102d?a=0x2C343e73A594DfD1808b930372A610071bAa9d0E') assert.equal(explorerLinks.getExplorerTokenLinkFor('0x5a386eb0fcbfee3f0d759e263053c09162ff102d', '0x2C343e73A594DfD1808b930372A610071bAa9d0E', 1), 'https://etherscan.io/token/0x5a386eb0fcbfee3f0d759e263053c09162ff102d?a=0x2C343e73A594DfD1808b930372A610071bAa9d0E')
@ -149,9 +137,6 @@ describe('eth-net-props', () => {
it(`${claimPrefix} Ethereum Classic`, () => { it(`${claimPrefix} Ethereum Classic`, () => {
assert.equal(explorerLinks.getExplorerTokenLinkFor('0x1ac1c8b874c7b889113a036ba443b082554be5d0', '0xdb23145b64D0E1e15dedf47abd77cCaf3F2327d7', 61), 'https://blockscout.com/etc/mainnet/address/0xdb23145b64D0E1e15dedf47abd77cCaf3F2327d7/tokens/0x1ac1c8b874c7b889113a036ba443b082554be5d0/token-transfers') assert.equal(explorerLinks.getExplorerTokenLinkFor('0x1ac1c8b874c7b889113a036ba443b082554be5d0', '0xdb23145b64D0E1e15dedf47abd77cCaf3F2327d7', 61), 'https://blockscout.com/etc/mainnet/address/0xdb23145b64D0E1e15dedf47abd77cCaf3F2327d7/tokens/0x1ac1c8b874c7b889113a036ba443b082554be5d0/token-transfers')
}) })
it(`${claimPrefix} Shibuya`, () => {
assert.equal(explorerLinks.getExplorerTokenLinkFor('0xa4C17AD6bEC86e1233499A9B174D1E2D466c7198', '0xce51D1fa776C2941d4155E8FfCc585c5a1213d50', 81), 'https://blockscout.com/shibuya/address/0xce51D1fa776C2941d4155E8FfCc585c5a1213d50/tokens/0xa4C17AD6bEC86e1233499A9B174D1E2D466c7198/token-transfers')
})
it(`${claimPrefix} Celo`, () => { it(`${claimPrefix} Celo`, () => {
assert.equal(explorerLinks.getExplorerTokenLinkFor('0x765de816845861e75a25fca122bb6898b8b1282a', '0x63b4b616c5345e3DcC9e21dB69297e2129447f4e', 42220), 'https://explorer.celo.org/address/0x63b4b616c5345e3DcC9e21dB69297e2129447f4e/tokens/0x765de816845861e75a25fca122bb6898b8b1282a/token_transfers') assert.equal(explorerLinks.getExplorerTokenLinkFor('0x765de816845861e75a25fca122bb6898b8b1282a', '0x63b4b616c5345e3DcC9e21dB69297e2129447f4e', 42220), 'https://explorer.celo.org/address/0x63b4b616c5345e3DcC9e21dB69297e2129447f4e/tokens/0x765de816845861e75a25fca122bb6898b8b1282a/token_transfers')
}) })
@ -273,7 +258,7 @@ describe('eth-net-props', () => {
const xDaiRPCEndpoints = RPCEndpoints.getRPCEndpoints(100) const xDaiRPCEndpoints = RPCEndpoints.getRPCEndpoints(100)
assert.equal(xDaiRPCEndpoints.length, 1) assert.equal(xDaiRPCEndpoints.length, 1)
if (xDaiRPCEndpoints.length > 0) { if (xDaiRPCEndpoints.length > 0) {
assert.equal(xDaiRPCEndpoints[0], 'https://rpc.gnosischain.com') assert.equal(xDaiRPCEndpoints[0], 'https://xdai.poanetwork.dev/')
} }
}) })
it(`${claimPrefix} RSK`, () => { it(`${claimPrefix} RSK`, () => {
@ -336,7 +321,7 @@ describe('eth-net-props', () => {
assert.equal(netProps.getNetworkDisplayName(99), 'POA') assert.equal(netProps.getNetworkDisplayName(99), 'POA')
}) })
it(`${claimPrefix} xDAI`, () => { it(`${claimPrefix} xDAI`, () => {
assert.equal(netProps.getNetworkDisplayName(100), 'Gnosis Chain') assert.equal(netProps.getNetworkDisplayName(100), 'xDai')
}) })
it(`${claimPrefix} Ethereum`, () => { it(`${claimPrefix} Ethereum`, () => {
assert.equal(netProps.getNetworkDisplayName(1), 'Ethereum') assert.equal(netProps.getNetworkDisplayName(1), 'Ethereum')