aboutsummaryrefslogtreecommitdiffstats
path: root/ui/app/add-token.js
diff options
context:
space:
mode:
authorThomas Huang <tmashuang@users.noreply.github.com>2018-03-03 10:26:52 +0800
committerGitHub <noreply@github.com>2018-03-03 10:26:52 +0800
commitd3a0a27c0caafb066e66e444d6fbe71243bd35f6 (patch)
tree771c6ac9263710611b73c8480daf0b654a398499 /ui/app/add-token.js
parentee254b4f6feeb040607472a0f4d69c7e4173c25e (diff)
parent0d97ff221017b78ccfa02defdb7a52ad701981a5 (diff)
downloadtangerine-wallet-browser-d3a0a27c0caafb066e66e444d6fbe71243bd35f6.tar
tangerine-wallet-browser-d3a0a27c0caafb066e66e444d6fbe71243bd35f6.tar.gz
tangerine-wallet-browser-d3a0a27c0caafb066e66e444d6fbe71243bd35f6.tar.bz2
tangerine-wallet-browser-d3a0a27c0caafb066e66e444d6fbe71243bd35f6.tar.lz
tangerine-wallet-browser-d3a0a27c0caafb066e66e444d6fbe71243bd35f6.tar.xz
tangerine-wallet-browser-d3a0a27c0caafb066e66e444d6fbe71243bd35f6.tar.zst
tangerine-wallet-browser-d3a0a27c0caafb066e66e444d6fbe71243bd35f6.zip
Merge branch 'master' into ImportAccountMessageV2
Diffstat (limited to 'ui/app/add-token.js')
-rw-r--r--ui/app/add-token.js28
1 files changed, 22 insertions, 6 deletions
diff --git a/ui/app/add-token.js b/ui/app/add-token.js
index 3a806d34b..a1729ba8e 100644
--- a/ui/app/add-token.js
+++ b/ui/app/add-token.js
@@ -52,13 +52,16 @@ function AddTokenScreen () {
isShowingConfirmation: false,
customAddress: '',
customSymbol: '',
- customDecimals: 0,
+ customDecimals: null,
searchQuery: '',
isCollapsed: true,
selectedTokens: {},
errors: {},
+ autoFilled: false,
}
this.tokenAddressDidChange = this.tokenAddressDidChange.bind(this)
+ this.tokenSymbolDidChange = this.tokenSymbolDidChange.bind(this)
+ this.tokenDecimalsDidChange = this.tokenDecimalsDidChange.bind(this)
this.onNext = this.onNext.bind(this)
Component.call(this)
}
@@ -103,6 +106,16 @@ AddTokenScreen.prototype.tokenAddressDidChange = function (e) {
}
}
+AddTokenScreen.prototype.tokenSymbolDidChange = function (e) {
+ const customSymbol = e.target.value.trim()
+ this.setState({ customSymbol })
+}
+
+AddTokenScreen.prototype.tokenDecimalsDidChange = function (e) {
+ const customDecimals = e.target.value.trim()
+ this.setState({ customDecimals })
+}
+
AddTokenScreen.prototype.checkExistingAddresses = function (address) {
if (!address) return false
const tokensList = this.props.tokens
@@ -125,7 +138,7 @@ AddTokenScreen.prototype.validate = function () {
errors.customAddress = 'Address is invalid. '
}
- const validDecimals = customDecimals >= 0 && customDecimals < 36
+ const validDecimals = customDecimals !== null && customDecimals >= 0 && customDecimals < 36
if (!validDecimals) {
errors.customDecimals = 'Decimals must be at least 0, and not over 36.'
}
@@ -166,12 +179,13 @@ AddTokenScreen.prototype.attemptToAutoFillTokenParams = async function (address)
this.setState({
customSymbol: symbol,
customDecimals: decimals.toString(),
+ autoFilled: true,
})
}
}
AddTokenScreen.prototype.renderCustomForm = function () {
- const { customAddress, customSymbol, customDecimals, errors } = this.state
+ const { autoFilled, customAddress, customSymbol, customDecimals, errors } = this.state
return !this.state.isCollapsed && (
h('div.add-token__add-custom-form', [
@@ -196,8 +210,9 @@ AddTokenScreen.prototype.renderCustomForm = function () {
h('div.add-token__add-custom-label', 'Token Symbol'),
h('input.add-token__add-custom-input', {
type: 'text',
+ onChange: this.tokenSymbolDidChange,
value: customSymbol,
- disabled: true,
+ disabled: autoFilled,
}),
h('div.add-token__add-custom-error-message', errors.customSymbol),
]),
@@ -209,8 +224,9 @@ AddTokenScreen.prototype.renderCustomForm = function () {
h('div.add-token__add-custom-label', 'Decimals of Precision'),
h('input.add-token__add-custom-input', {
type: 'number',
+ onChange: this.tokenDecimalsDidChange,
value: customDecimals,
- disabled: true,
+ disabled: autoFilled,
}),
h('div.add-token__add-custom-error-message', errors.customDecimals),
]),
@@ -240,7 +256,7 @@ AddTokenScreen.prototype.renderTokenList = function () {
}, [
h('div.add-token__token-icon', {
style: {
- backgroundImage: `url(images/contract/${logo})`,
+ backgroundImage: logo && `url(images/contract/${logo})`,
},
}),
h('div.add-token__token-data', [