diff options
author | kumavis <kumavis@users.noreply.github.com> | 2019-03-29 10:03:35 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-29 10:03:35 +0800 |
commit | 0ae68d1a612ec3999ded2ba6887c0f3b73ef27cd (patch) | |
tree | da5aea93dea279ebbfe8f6c695ddb302ef16c72c | |
parent | ab5fe4d65994ce66ed6b796197eda349fbe5d145 (diff) | |
download | tangerine-wallet-browser-0ae68d1a612ec3999ded2ba6887c0f3b73ef27cd.tar.gz tangerine-wallet-browser-0ae68d1a612ec3999ded2ba6887c0f3b73ef27cd.tar.zst tangerine-wallet-browser-0ae68d1a612ec3999ded2ba6887c0f3b73ef27cd.zip |
getBuyEthUrl - getDefaultServiceForNetwork then switch on service
-rw-r--r-- | app/scripts/lib/buy-eth-url.js | 52 |
1 files changed, 29 insertions, 23 deletions
diff --git a/app/scripts/lib/buy-eth-url.js b/app/scripts/lib/buy-eth-url.js index d434473ee..46710a16f 100644 --- a/app/scripts/lib/buy-eth-url.js +++ b/app/scripts/lib/buy-eth-url.js @@ -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' + } + 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' } - return url + throw new Error(`No default cryptocurrency exchange or faucet for networkId: "${networkId}"`) } |