Changeset View
Changeset View
Standalone View
Standalone View
web/cashtab/src/components/Send/SendToken.js
Show First 20 Lines • Show All 246 Lines • ▼ Show 20 Lines | const handleTokenAddressChange = e => { | ||||
const { value, name } = e.target; | const { value, name } = e.target; | ||||
// validate for token address | // validate for token address | ||||
// validate for parameters | // validate for parameters | ||||
// show warning that query strings are not supported | // show warning that query strings are not supported | ||||
let error = false; | let error = false; | ||||
let addressString = value; | let addressString = value; | ||||
const isValid = isValidEtokenAddress(addressString); | |||||
const addressInfo = parseAddressForParams(addressString); | const addressInfo = parseAddressForParams(addressString); | ||||
/* | /* | ||||
Model | Model | ||||
addressInfo = | addressInfo = | ||||
{ | { | ||||
address: '', | address: '', | ||||
queryString: '', | queryString: '', | ||||
amount: null, | amount: null, | ||||
}; | }; | ||||
*/ | */ | ||||
const { address, queryString } = addressInfo; | const { address, queryString } = addressInfo; | ||||
// If query string, | // If query string, | ||||
// Show an alert that only amount and currency.ticker are supported | // Show an alert that only amount and currency.ticker are supported | ||||
setQueryStringText(queryString); | setQueryStringText(queryString); | ||||
const isValid = | |||||
isValidEtokenAddress(address) || isValidXecAddress(address); | |||||
// Is this valid address? | // Is this valid address? | ||||
if (!isValid) { | if (!isValid) { | ||||
error = 'Address is not a valid etoken: address'; | error = 'Address is not a valid ecash: address'; | ||||
// If valid address but xec format | |||||
if (isValidXecAddress(address)) { | |||||
error = `Cashtab does not support sending eTokens to XEC addresses. Please convert to an eToken address.`; | |||||
} | |||||
} | } | ||||
setSendTokenAddressError(error); | setSendTokenAddressError(error); | ||||
setFormData(p => ({ | setFormData(p => ({ | ||||
...p, | ...p, | ||||
[name]: value, | [name]: value, | ||||
})); | })); | ||||
}; | }; | ||||
▲ Show 20 Lines • Show All 502 Lines • Show Last 20 Lines |