1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-23 01:39:44 +01:00

getBuyEthUrl - getDefaultServiceForNetwork then switch on service

This commit is contained in:
kumavis 2019-03-29 10:03:35 +08:00 committed by GitHub
parent ab5fe4d659
commit 0ae68d1a61
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -12,28 +12,34 @@ module.exports = getBuyEthUrl
*
*/
function getBuyEthUrl({ network, amount, address, service }) {
let url
if (typeof network !== 'undefined') {
switch (network) {
case '1':
url = `https://buy.coinbase.com/?code=9ec56d01-7e81-5017-930c-513daa27bb6a&amount=${amount}&address=${address}&crypto_currency=ETH`
break
case '3':
url = 'https://faucet.metamask.io/'
break
case '4':
url = 'https://www.rinkeby.io/'
break
case '42':
url = 'https://github.com/kovan-testnet/faucet'
break
}
} else {
switch (service) {
case 'coinswitch':
url = `https://metamask.coinswitch.co/?address=${address}&to=eth`
break
}
// default service by network if not specified
if (!service) service = getDefaultServiceForNetwork(network)
switch (service) {
case 'coinswitch':
return `https://metamask.coinswitch.co/?address=${address}&to=eth`
case 'coinbase':
return `https://buy.coinbase.com/?code=9ec56d01-7e81-5017-930c-513daa27bb6a&amount=${amount}&address=${address}&crypto_currency=ETH`
case 'metamask-faucet':
return 'https://faucet.metamask.io/'
case 'rinkeby-faucet':
return 'https://www.rinkeby.io/'
case 'kovan-faucet':
return 'https://github.com/kovan-testnet/faucet'
}
return url
throw new Error(`Unknown cryptocurrency exchange or faucet: "${service}"`)
}
function getDefaultServiceForNetwork (networkId) {
switch (network) {
case '1':
return 'coinbase'
case '3':
return 'metamask-faucet'
case '4':
return 'rinkeby-faucet'
case '42':
return 'kovan-faucet'
}
throw new Error(`No default cryptocurrency exchange or faucet for networkId: "${networkId}"`)
}