From 0410735c2a4545fe9f792c748ca342256b848d1e Mon Sep 17 00:00:00 2001 From: Vasek Mlejnsky Date: Thu, 16 Aug 2018 11:29:14 +0200 Subject: [PATCH] Delete 'AsideRowCoinExternal' and 'AsideRowCoinWallet' and move its logic into 'AsideRowCoin' --- .../components/wallet/aside/AsideRowCoin.js | 24 ------- .../wallet/aside/AsideRowCoinExternal.js | 37 ----------- .../wallet/aside/AsideRowCoinWallet.js | 29 --------- .../components/wallet/aside/CoinSelection.js | 63 ++++++++++--------- .../wallet/aside/row/coin/AsideRowCoin.js | 49 +++++++++++++++ 5 files changed, 82 insertions(+), 120 deletions(-) delete mode 100644 src/js/components/wallet/aside/AsideRowCoin.js delete mode 100644 src/js/components/wallet/aside/AsideRowCoinExternal.js delete mode 100644 src/js/components/wallet/aside/AsideRowCoinWallet.js create mode 100644 src/js/components/wallet/aside/row/coin/AsideRowCoin.js diff --git a/src/js/components/wallet/aside/AsideRowCoin.js b/src/js/components/wallet/aside/AsideRowCoin.js deleted file mode 100644 index 33d072a9..00000000 --- a/src/js/components/wallet/aside/AsideRowCoin.js +++ /dev/null @@ -1,24 +0,0 @@ - -import styled from 'styled-components'; -import React from 'react'; -import colors from 'config/colors'; -import { FONT_SIZE } from 'config/variables'; - -const Wrapper = styled.div` - display: block; - height: 50px; - - font-size: ${FONT_SIZE.BASE}; - color: ${colors.TEXT_PRIMARY}; - &:hover { - background-color: ${colors.GRAY_LIGHT}; - } -`; - -const AsideRowCoin = ({ children }) => ( - - {children} - -); - -export default AsideRowCoin; diff --git a/src/js/components/wallet/aside/AsideRowCoinExternal.js b/src/js/components/wallet/aside/AsideRowCoinExternal.js deleted file mode 100644 index 8d425ed5..00000000 --- a/src/js/components/wallet/aside/AsideRowCoinExternal.js +++ /dev/null @@ -1,37 +0,0 @@ -import styled from 'styled-components'; -import React from 'react'; -import PropTypes from 'prop-types'; - -import ICONS from 'config/icons'; -import colors from 'config/colors'; - -import Icon from 'components/common/Icon'; -import AsideRow from './AsideRow'; -import AsideRowCoin from './AsideRowCoin'; -import CoinName from './CoinName'; - -import { coinProp } from './common'; - -const AsideRowCoinExternal = ({ coin, url }) => ( - - - - - - - - -); - -AsideRowCoinExternal.propTypes = { - ...coinProp, - url: PropTypes.string, -}; - -export default AsideRowCoinExternal; diff --git a/src/js/components/wallet/aside/AsideRowCoinWallet.js b/src/js/components/wallet/aside/AsideRowCoinWallet.js deleted file mode 100644 index c5435367..00000000 --- a/src/js/components/wallet/aside/AsideRowCoinWallet.js +++ /dev/null @@ -1,29 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; -import { NavLink } from 'react-router-dom'; - -import AsideRow from './AsideRow'; -import AsideRowCoin from './AsideRowCoin'; -import CoinName from './CoinName'; - -import { coinProp } from './common'; - -const AsideRowCoinWallet = ({ coin, url }) => ( - - - - - - - -); - -AsideRowCoinWallet.propTypes = { - ...coinProp, - url: PropTypes.string.isRequired, -}; - -export default AsideRowCoinWallet; diff --git a/src/js/components/wallet/aside/CoinSelection.js b/src/js/components/wallet/aside/CoinSelection.js index dff99a4b..671c38fa 100644 --- a/src/js/components/wallet/aside/CoinSelection.js +++ b/src/js/components/wallet/aside/CoinSelection.js @@ -1,21 +1,18 @@ /* @flow */ - -import React from 'react'; -import { NavLink } from 'react-router-dom'; - import coins from 'constants/coins'; +import colors from 'config/colors'; +import ICONS from 'config/icons'; +import { NavLink } from 'react-router-dom'; +import React from 'react'; import AsideDivider from './AsideDivider'; -import AsideRowCoinWallet from './AsideRowCoinWallet'; -import AsideRowCoinExternal from './AsideRowCoinExternal'; -import AsideSection from './AsideSection'; +import AsideRowCoin from './row/coin/AsideRowCoin'; + -import type { TrezorDevice } from 'flowtype'; import type { Props } from './index'; -const CoinSelection = (props: Props): React$Element => { - const { location } = props.router; +const CoinSelection = (props: Props) => { const { config } = props.localStorage; const { selectedDevice } = props.wallet; @@ -29,37 +26,43 @@ const CoinSelection = (props: Props): React$Element => { const walletCoins = config.coins.map((item) => { const url = `${baseUrl}/network/${item.network}/account/0`; - const className = `coin ${item.network}`; - let coinImg = item.network; + let imgName = item.network; if (item.network === 'ethereum') { - coinImg = 'eth'; - } else if (item.network === 'ethereum-classic' ) { - coinImg = 'etc'; + imgName = 'eth'; + } else if (item.network === 'ethereum-classic') { + imgName = 'etc'; } + const imgUrl = `../images/${imgName}-logo.png`; return ( - + + + ); }); const externalCoins = coins.map(coin => ( - + + + )); + return ( { walletCoins } diff --git a/src/js/components/wallet/aside/row/coin/AsideRowCoin.js b/src/js/components/wallet/aside/row/coin/AsideRowCoin.js new file mode 100644 index 00000000..ee7f5a3f --- /dev/null +++ b/src/js/components/wallet/aside/row/coin/AsideRowCoin.js @@ -0,0 +1,49 @@ + +import colors from 'config/colors'; +import { FONT_SIZE } from 'config/variables'; +import Icon from 'components/common/Icon'; +import PropTypes from 'prop-types'; +import React from 'react'; +import styled from 'styled-components'; + +import AsideRow from '../AsideRow'; +import CoinName from './CoinName'; +import { coinProp } from '../../common'; + +const Wrapper = styled.div` + display: block; + height: 50px; + + font-size: ${FONT_SIZE.BASE}; + color: ${colors.TEXT_PRIMARY}; + &:hover { + background-color: ${colors.GRAY_LIGHT}; + } +`; + +const AsideRowCoin = ({ coin, icon }) => ( + + + + {icon && ( + + )} + + +); + +AsideRowCoin.propTypes = { + ...coinProp, + icon: PropTypes.shape({ + type: PropTypes.string.isRequired, + color: PropTypes.string.isRequired, + }), +}; + +export default AsideRowCoin;