2020-01-09 04:34:58 +01:00
|
|
|
import ethUtil from 'ethereumjs-util'
|
|
|
|
import { conversionUtil, multiplyCurrencies } from '../../helpers/utils/conversion-util'
|
2018-04-26 18:38:38 +02:00
|
|
|
|
2018-05-14 15:30:50 +02:00
|
|
|
const MIN_GAS_PRICE_DEC = '0'
|
|
|
|
const MIN_GAS_PRICE_HEX = (parseInt(MIN_GAS_PRICE_DEC)).toString(16)
|
2018-04-26 18:38:38 +02:00
|
|
|
const MIN_GAS_LIMIT_DEC = '21000'
|
|
|
|
const MIN_GAS_LIMIT_HEX = (parseInt(MIN_GAS_LIMIT_DEC)).toString(16)
|
|
|
|
|
|
|
|
const MIN_GAS_PRICE_GWEI = ethUtil.addHexPrefix(conversionUtil(MIN_GAS_PRICE_HEX, {
|
|
|
|
fromDenomination: 'WEI',
|
|
|
|
toDenomination: 'GWEI',
|
|
|
|
fromNumericBase: 'hex',
|
|
|
|
toNumericBase: 'hex',
|
|
|
|
numberOfDecimals: 1,
|
|
|
|
}))
|
|
|
|
|
|
|
|
const MIN_GAS_TOTAL = multiplyCurrencies(MIN_GAS_LIMIT_HEX, MIN_GAS_PRICE_HEX, {
|
|
|
|
toNumericBase: 'hex',
|
|
|
|
multiplicandBase: 16,
|
|
|
|
multiplierBase: 16,
|
|
|
|
})
|
|
|
|
|
|
|
|
const TOKEN_TRANSFER_FUNCTION_SIGNATURE = '0xa9059cbb'
|
|
|
|
|
2018-04-30 18:30:01 +02:00
|
|
|
const INSUFFICIENT_FUNDS_ERROR = 'insufficientFunds'
|
|
|
|
const INSUFFICIENT_TOKENS_ERROR = 'insufficientTokens'
|
|
|
|
const NEGATIVE_ETH_ERROR = 'negativeETH'
|
|
|
|
const INVALID_RECIPIENT_ADDRESS_ERROR = 'invalidAddressRecipient'
|
2019-02-13 21:30:46 +01:00
|
|
|
const INVALID_RECIPIENT_ADDRESS_NOT_ETH_NETWORK_ERROR = 'invalidAddressRecipientNotEthNetwork'
|
2018-04-30 18:30:01 +02:00
|
|
|
const REQUIRED_ERROR = 'required'
|
2019-01-22 20:05:59 +01:00
|
|
|
const KNOWN_RECIPIENT_ADDRESS_ERROR = 'knownAddressRecipient'
|
2018-04-30 18:30:01 +02:00
|
|
|
|
2018-05-22 10:10:06 +02:00
|
|
|
const ONE_GWEI_IN_WEI_HEX = ethUtil.addHexPrefix(conversionUtil('0x1', {
|
|
|
|
fromDenomination: 'GWEI',
|
|
|
|
toDenomination: 'WEI',
|
|
|
|
fromNumericBase: 'hex',
|
|
|
|
toNumericBase: 'hex',
|
|
|
|
}))
|
|
|
|
|
2018-05-22 17:16:53 +02:00
|
|
|
const SIMPLE_GAS_COST = '0x5208' // Hex for 21000, cost of a simple send.
|
2018-06-29 01:33:09 +02:00
|
|
|
const BASE_TOKEN_GAS_COST = '0x186a0' // Hex for 100000, a base estimate for token transfers.
|
2018-05-22 17:16:53 +02:00
|
|
|
|
2020-01-09 04:34:58 +01:00
|
|
|
export {
|
2018-04-30 18:30:01 +02:00
|
|
|
INSUFFICIENT_FUNDS_ERROR,
|
|
|
|
INSUFFICIENT_TOKENS_ERROR,
|
|
|
|
INVALID_RECIPIENT_ADDRESS_ERROR,
|
2019-01-22 20:05:59 +01:00
|
|
|
KNOWN_RECIPIENT_ADDRESS_ERROR,
|
2019-02-13 21:30:46 +01:00
|
|
|
INVALID_RECIPIENT_ADDRESS_NOT_ETH_NETWORK_ERROR,
|
2018-04-30 18:30:01 +02:00
|
|
|
MIN_GAS_LIMIT_DEC,
|
|
|
|
MIN_GAS_LIMIT_HEX,
|
|
|
|
MIN_GAS_PRICE_DEC,
|
2018-04-26 18:38:38 +02:00
|
|
|
MIN_GAS_PRICE_GWEI,
|
|
|
|
MIN_GAS_PRICE_HEX,
|
|
|
|
MIN_GAS_TOTAL,
|
2018-04-30 18:30:01 +02:00
|
|
|
NEGATIVE_ETH_ERROR,
|
2018-05-22 10:10:06 +02:00
|
|
|
ONE_GWEI_IN_WEI_HEX,
|
2018-04-30 18:30:01 +02:00
|
|
|
REQUIRED_ERROR,
|
2018-05-22 17:16:53 +02:00
|
|
|
SIMPLE_GAS_COST,
|
2018-04-26 18:38:38 +02:00
|
|
|
TOKEN_TRANSFER_FUNCTION_SIGNATURE,
|
2018-06-29 01:33:09 +02:00
|
|
|
BASE_TOKEN_GAS_COST,
|
2018-04-26 18:38:38 +02:00
|
|
|
}
|