diff options
author | Whymarrh Whitby <whymarrh.whitby@gmail.com> | 2019-02-15 05:03:21 +0800 |
---|---|---|
committer | Whymarrh Whitby <whymarrh.whitby@gmail.com> | 2019-02-21 01:48:46 +0800 |
commit | 3c73781787f7aab6cdba0b738e4844a26aab5d8e (patch) | |
tree | 5a98f0acdcda6d3dd1a8368be6bb0ddf77c8fa6a /old-ui/app/add-suggested-token.js | |
parent | 41f89ac7edf994f3d15d32d3d82d8d2b03dec481 (diff) | |
download | tangerine-wallet-browser-3c73781787f7aab6cdba0b738e4844a26aab5d8e.tar tangerine-wallet-browser-3c73781787f7aab6cdba0b738e4844a26aab5d8e.tar.gz tangerine-wallet-browser-3c73781787f7aab6cdba0b738e4844a26aab5d8e.tar.bz2 tangerine-wallet-browser-3c73781787f7aab6cdba0b738e4844a26aab5d8e.tar.lz tangerine-wallet-browser-3c73781787f7aab6cdba0b738e4844a26aab5d8e.tar.xz tangerine-wallet-browser-3c73781787f7aab6cdba0b738e4844a26aab5d8e.tar.zst tangerine-wallet-browser-3c73781787f7aab6cdba0b738e4844a26aab5d8e.zip |
Delete old-ui folder
Diffstat (limited to 'old-ui/app/add-suggested-token.js')
-rw-r--r-- | old-ui/app/add-suggested-token.js | 202 |
1 files changed, 0 insertions, 202 deletions
diff --git a/old-ui/app/add-suggested-token.js b/old-ui/app/add-suggested-token.js deleted file mode 100644 index ea534b7da..000000000 --- a/old-ui/app/add-suggested-token.js +++ /dev/null @@ -1,202 +0,0 @@ -const inherits = require('util').inherits -const Component = require('react').Component -const h = require('react-hyperscript') -const connect = require('react-redux').connect -const actions = require('../../ui/app/actions') -const Tooltip = require('./components/tooltip.js') -const ethUtil = require('ethereumjs-util') -const Copyable = require('./components/copyable') -const addressSummary = require('./util').addressSummary - - -module.exports = connect(mapStateToProps)(AddSuggestedTokenScreen) - -function mapStateToProps (state) { - return { - identities: state.metamask.identities, - suggestedTokens: state.metamask.suggestedTokens, - } -} - -inherits(AddSuggestedTokenScreen, Component) -function AddSuggestedTokenScreen () { - this.state = { - warning: null, - } - Component.call(this) -} - -AddSuggestedTokenScreen.prototype.render = function () { - const state = this.state - const props = this.props - const { warning } = state - const key = Object.keys(props.suggestedTokens)[0] - const { address, symbol, decimals } = props.suggestedTokens[key] - - return ( - h('.flex-column.flex-grow', [ - - // subtitle and nav - h('.section-title.flex-row.flex-center', [ - h('h2.page-subtitle', 'Add Suggested Token'), - ]), - - h('.error', { - style: { - display: warning ? 'block' : 'none', - padding: '0 20px', - textAlign: 'center', - }, - }, warning), - - // conf view - h('.flex-column.flex-justify-center.flex-grow.select-none', [ - h('.flex-space-around', { - style: { - padding: '20px', - }, - }, [ - - h('div', [ - h(Tooltip, { - position: 'top', - title: 'The contract of the actual token contract. Click for more info.', - }, [ - h('a', { - style: { fontWeight: 'bold', paddingRight: '10px'}, - href: 'https://support.metamask.io/kb/article/24-what-is-a-token-contract-address', - target: '_blank', - }, [ - h('span', 'Token Contract Address '), - h('i.fa.fa-question-circle'), - ]), - ]), - ]), - - h('div', { - style: { display: 'flex' }, - }, [ - h(Copyable, { - value: ethUtil.toChecksumAddress(address), - }, [ - h('span#token-address', { - style: { - width: 'inherit', - flex: '1 0 auto', - height: '30px', - margin: '8px', - display: 'flex', - }, - }, addressSummary(address, 24, 4, false)), - ]), - ]), - - h('div', [ - h('span', { - style: { fontWeight: 'bold', paddingRight: '10px'}, - }, 'Token Symbol'), - ]), - - h('div', { style: {display: 'flex'} }, [ - h('p#token_symbol', { - style: { - width: 'inherit', - flex: '1 0 auto', - height: '30px', - margin: '8px', - }, - }, symbol), - ]), - - h('div', [ - h('span', { - style: { fontWeight: 'bold', paddingRight: '10px'}, - }, 'Decimals of Precision'), - ]), - - h('div', { style: {display: 'flex'} }, [ - h('p#token_decimals', { - type: 'number', - style: { - width: 'inherit', - flex: '1 0 auto', - height: '30px', - margin: '8px', - }, - }, decimals), - ]), - - h('button', { - style: { - alignSelf: 'center', - margin: '8px', - }, - onClick: (event) => { - this.props.dispatch(actions.removeSuggestedTokens()) - }, - }, 'Cancel'), - - h('button', { - style: { - alignSelf: 'center', - margin: '8px', - }, - onClick: (event) => { - const valid = this.validateInputs({ address, symbol, decimals }) - if (!valid) return - - this.props.dispatch(actions.addToken(address.trim(), symbol.trim(), decimals)) - .then(() => { - this.props.dispatch(actions.removeSuggestedTokens()) - }) - }, - }, 'Add'), - ]), - ]), - ]) - ) -} - -AddSuggestedTokenScreen.prototype.componentWillMount = function () { - if (typeof global.ethereumProvider === 'undefined') return -} - -AddSuggestedTokenScreen.prototype.validateInputs = function (opts) { - let msg = '' - const identitiesList = Object.keys(this.props.identities) - const { address, symbol, decimals } = opts - const standardAddress = ethUtil.addHexPrefix(address).toLowerCase() - - const validAddress = ethUtil.isValidAddress(address) - if (!validAddress) { - msg += 'Address is invalid.' - } - - const validDecimals = decimals >= 0 && decimals <= 36 - if (!validDecimals) { - msg += 'Decimals must be at least 0, and not over 36. ' - } - - const symbolLen = symbol.trim().length - const validSymbol = symbolLen > 0 && symbolLen < 10 - if (!validSymbol) { - msg += 'Symbol must be between 0 and 10 characters.' - } - - const ownAddress = identitiesList.includes(standardAddress) - if (ownAddress) { - msg = 'Personal address detected. Input the token contract address.' - } - - const isValid = validAddress && validDecimals && !ownAddress - - if (!isValid) { - this.setState({ - warning: msg, - }) - } else { - this.setState({ warning: null }) - } - - return isValid -} |