}
render() {
+ const {
+ fieldProps: { id, alias },
+ t,
+ title,
+ hint
+ } = this.props
+
const idOnChange = (event) => {
- this.props.fieldProps.id.onChange(event.target.value)
- this.props.fieldProps.alias.onChange('')
+ id.onChange(event.target.value)
+ alias.onChange('')
}
const aliasOnChange = value => {
- this.props.fieldProps.alias.onChange(value)
- this.props.fieldProps.id.onChange('')
+ alias.onChange(value)
+ id.onChange('')
}
- const t = this.props.t
const alias_title = t('form.alias')
- const idProps = Object.assign({...this.props.fieldProps.id}, {onChange: idOnChange})
- const aliasProps = Object.assign({...this.props.fieldProps.alias}, {onChange: aliasOnChange})
+ const idProps = Object.assign({...id}, {onChange: idOnChange})
+ const aliasProps = Object.assign({...alias}, {onChange: aliasOnChange})
return(
<div className='form-group'>
- {this.props.title && <FieldLabel>{this.props.title}</FieldLabel>}
+ {title && <FieldLabel>{title}</FieldLabel>}
<div className='input-group'>
<div className={`input-group-btn ${this.state.showDropdown && 'open'}`}>
<DropdownButton
<this.props.aliasField
className={styles.aliasFieldGroupItem}
disabled={this.props.disabled}
- placeholder={ t('form.objectField.aliasPlaceholder' , {title: this.props.title.toLowerCase()}) }
+ placeholder={ t('form.objectField.aliasPlaceholder' , {title: title.toLowerCase()}) }
fieldProps={aliasProps} />}
</div>
- {this.props.hint && <span className='help-block'>{this.props.hint}</span>}
+ {hint && <span className='help-block'>{hint}</span>}
</div>
)
}
}
estimateNormalTransactionGas() {
- const transaction = this.props.fields
- const accountAlias = transaction.accountAlias.value
- const accountId = transaction.accountId.value
- const assetAlias = transaction.assetAlias.value
- const assetId = transaction.assetId.value
+ const transaction = this.props.values
+ const accountAlias = transaction.accountAlias
+ const accountId = transaction.accountId
+ const assetAlias = transaction.assetAlias
+ const assetId = transaction.assetId
const receivers = transaction.receivers
- const addresses = receivers.map(x => x.address.value)
- const amounts = receivers.map(x => Number(x.amount.value))
+ const addresses = receivers.map(x => x.address)
+ const amounts = receivers.map(x => Number(x.amount))
const {t, i18n} = this.props
return
}
- const actions = issueAssetTxActionBuilder(transaction, Math.pow(10, 7), 'amount.value' )
+ const actions = issueAssetTxActionBuilder(transaction, Math.pow(10, 7), 'amount' )
const body = {actions, ttl: 1}
this.connection.request('/build-transaction', body).then(resp => {
- if (resp.status === 'fail') {
- this.setState({estimateGas: null})
- const errorMsg = resp.code && i18n.exists(`btmError.${resp.code}`) && t(`btmError.${resp.code}`) || resp.msg
- this.props.showError(new Error(errorMsg))
- return
- }
-
return this.connection.request('/estimate-transaction-gas', {
transactionTemplate: resp.data
}).then(resp => {
- if (resp.status === 'fail') {
- this.setState({estimateGas: null})
- const errorMsg = resp.code && i18n.exists(`btmError.${resp.code}`) && t(`btmError.${resp.code}`) || resp.msg
- this.props.showError(new Error(errorMsg))
- return
- }
this.setState({estimateGas: Math.ceil(resp.data.totalNeu/100000)*100000})
+ }).catch(err =>{
+ throw err
})
+ }).catch(err=>{
+ this.setState({estimateGas: null, address: null})
+ const errorMsg = err.code && i18n.exists(`btmError.${err.code}`) && t(`btmError.${err.code}`) || err.msg
+ this.props.showError(new Error(errorMsg))
})
}
}
estimateNormalTransactionGas() {
- const transaction = this.props.fields
- const accountAlias = transaction.accountAlias.value
- const accountId = transaction.accountId.value
- const assetAlias = transaction.assetAlias.value
- const assetId = transaction.assetId.value
+ const transaction = this.props.values
+ const accountAlias = transaction.accountAlias
+ const accountId = transaction.accountId
+ const assetAlias = transaction.assetAlias
+ const assetId = transaction.assetId
const receivers = transaction.receivers
- const addresses = receivers.map(x => x.address.value)
- const amounts = receivers.map(x => Number(x.amount.value))
+ const addresses = receivers.map(x => x.address)
+ const amounts = receivers.map(x => Number(x.amount))
const {t, i18n} = this.props
return
}
- const actions = normalTxActionBuilder(transaction, Math.pow(10, 7), 'amount.value' )
+ const actions = normalTxActionBuilder(transaction, Math.pow(10, 7), 'amount' )
const body = {actions, ttl: 1}
this.connection.request('/build-transaction', body).then(resp => {
const showAvailableBalance = (accountAlias.value || accountId.value) &&
(assetAlias.value || assetId.value)
- const availableBalance = balance(this.props.fields, assetDecimal, this.props.balances, this.props.btmAmountUnit)
+ const availableBalance = balance(this.props.values, assetDecimal, this.props.balances, this.props.btmAmountUnit)
const showBtmAmountUnit = (assetAlias.value === 'BTM' || assetId.value === btmID)
export const balance = (values, assetDecimal, balances, btmAmountUnit) => {
let filteredBalances = balances
- if (values.accountAlias.value) {
- filteredBalances = filteredBalances.filter(balance => balance.accountAlias === values.accountAlias.value)
+ if (values.accountAlias) {
+ filteredBalances = filteredBalances.filter(balance => balance.accountAlias === values.accountAlias)
}
- if (values.accountId.value) {
- filteredBalances = filteredBalances.filter(balance => balance.accountId === values.accountId.value)
+ if (values.accountId) {
+ filteredBalances = filteredBalances.filter(balance => balance.accountId === values.accountId)
}
- if (values.assetAlias.value) {
- filteredBalances = filteredBalances.filter(balance => balance.assetAlias === values.assetAlias.value)
+ if (values.assetAlias) {
+ filteredBalances = filteredBalances.filter(balance => balance.assetAlias === values.assetAlias)
}
- if (values.assetId.value) {
- filteredBalances = filteredBalances.filter(balance => balance.assetId === values.assetId.value)
+ if (values.assetId) {
+ filteredBalances = filteredBalances.filter(balance => balance.assetId === values.assetId)
}
if(filteredBalances.length === 1){
}
export const normalTxActionBuilder = (transaction, gas, prop) =>{
- const accountAlias = transaction.accountAlias.value || transaction.accountAlias
- const accountId = transaction.accountId.value || transaction.accountId
- const assetAlias = transaction.assetAlias.value || transaction.assetAlias
- const assetId = transaction.assetId.value || transaction.assetId
+ const accountAlias = transaction.accountAlias
+ const accountId = transaction.accountId
+ const assetAlias = transaction.assetAlias
+ const assetId = transaction.assetId
const receivers = transaction.receivers
const totalAmount = sum(receivers, prop )
receivers.forEach((receiver)=>{
actions.push(
{
- address: receiver.address.value || receiver.address,
+ address: receiver.address,
assetAlias,
assetId,
- amount: Number(receiver.amount.value || receiver.amount),
+ amount: Number(receiver.amount),
type: 'control_address'
}
)
}
export const issueAssetTxActionBuilder = (transaction, gas,prop) =>{
- const accountAlias = transaction.accountAlias.value || transaction.accountAlias
- const accountId = transaction.accountId.value || transaction.accountId
- const assetAlias = transaction.assetAlias.value || transaction.assetAlias
- const assetId = transaction.assetId.value || transaction.assetId
+ const accountAlias = transaction.accountAlias
+ const accountId = transaction.accountId
+ const assetAlias = transaction.assetAlias
+ const assetId = transaction.assetId
const receivers = transaction.receivers
const totalAmount = sum(receivers, prop )
receivers.forEach((receiver)=>{
actions.push(
{
- address: receiver.address.value || receiver.address,
+ address: receiver.address,
assetAlias,
assetId,
- amount: Number(receiver.amount.value || receiver.amount),
+ amount: Number(receiver.amount),
type: 'control_address'
}
)