diff --git a/public/data/appConfig.json b/public/data/appConfig.json index 6125250a..09d07ce9 100644 --- a/public/data/appConfig.json +++ b/public/data/appConfig.json @@ -1,6 +1,7 @@ { "networks": [ { + "order": 2, "type": "ethereum", "name": "Ethereum", "symbol": "ETH", @@ -21,6 +22,7 @@ } }, { + "order": 18, "type": "ethereum", "name": "Ethereum Classic", "symbol": "ETC", @@ -40,7 +42,8 @@ "address": "https://gastracker.io/addr/" } }, - { + { + "order": 2, "type": "ethereum", "name": "Ethereum Ropsten", "testnet": true, @@ -74,6 +77,7 @@ } }, { + "order": 3, "type": "ripple", "name": "Ripple", "symbol": "XRP", @@ -94,6 +98,7 @@ } }, { + "order": 3, "type": "ripple", "name": "Ripple Testnet", "testnet": true, diff --git a/src/constants/coins.js b/src/constants/coins.js index 589e55d2..b584b7ab 100644 --- a/src/constants/coins.js +++ b/src/constants/coins.js @@ -3,69 +3,82 @@ export default [ id: 'btc', coinName: 'Bitcoin', url: '../?coin=btc', + order: 1, }, { id: 'bch', coinName: 'Bitcoin Cash', url: '../?coin=bch', + order: 6, }, { id: 'btg', coinName: 'Bitcoin Gold', url: '../?coin=btg', + order: 27, }, { id: 'dash', coinName: 'Dash', url: '../?coin=dash', + order: 15, }, { id: 'dgb', coinName: 'DigiByte', url: '../?coin=dgb', + order: 42, }, { id: 'doge', coinName: 'Dogecoin', url: '../?coin=doge', + order: 26, }, { id: 'ltc', coinName: 'Litecoin', url: '../?coin=ltc', + order: 5, }, { id: 'nmc', coinName: 'Namecoin', url: '../?coin=nmc', + order: 255, }, { id: 'vtc', coinName: 'Vertcoin', url: '../?coin=vtc', + order: 154, }, { id: 'zec', coinName: 'Zcash', url: '../?coin=zec', + order: 20, }, { id: 'xem', coinName: 'NEM', url: 'https://nem.io/downloads/', external: true, + order: 19, }, { id: 'xlm', coinName: 'Stellar', url: 'https://trezor.io/stellar', external: true, + order: 9, }, { id: 'ada', coinName: 'Cardano', url: 'https://adalite.io/app', external: true, + order: 12, }, { id: 'xtz', diff --git a/src/reducers/LocalStorageReducer.js b/src/reducers/LocalStorageReducer.js index 3e3918dd..4c1c81bf 100644 --- a/src/reducers/LocalStorageReducer.js +++ b/src/reducers/LocalStorageReducer.js @@ -13,6 +13,7 @@ type NetworkFeeLevel = { }; export type Network = { + order: number, type: string, name: string, testnet?: boolean, diff --git a/src/views/Wallet/components/LeftNavigation/components/CoinMenu/index.js b/src/views/Wallet/components/LeftNavigation/components/CoinMenu/index.js index ae26a3de..30be38bb 100644 --- a/src/views/Wallet/components/LeftNavigation/components/CoinMenu/index.js +++ b/src/views/Wallet/components/LeftNavigation/components/CoinMenu/index.js @@ -37,55 +37,59 @@ class CoinMenu extends PureComponent { } getOtherCoins() { - return coins.map(coin => { - const row = ( - - ); + return coins + .sort((a, b) => a.order - b.order) + .map(coin => { + const row = ( + + ); - if (coin.external) + if (coin.external) + return ( + this.props.gotoExternalWallet(coin.id, coin.url)} + > + {row} + + ); return ( - this.props.gotoExternalWallet(coin.id, coin.url)} - > + {row} - + ); - return ( - - {row} - - ); - }); + }); } render() { const { config } = this.props.localStorage; return ( - {config.networks.map(item => ( - - - - ))} + {config.networks + .sort((a, b) => a.order - b.order) + .map(item => ( + + + + ))} }