swap_asset_data: add decimals field

This commit is contained in:
The MMGen Project 2026-09-29 09:23:31 +00:00
commit 16ac0df7f0
Signed by: mmgen
GPG key ID: 3F8B1861E32B7DA2
3 changed files with 31 additions and 27 deletions

View file

@ -18,7 +18,7 @@ from ..util import die
class SwapAsset:
_ad = namedtuple('swap_asset_data', ['desc', 'name', 'full_name', 'abbr', 'tested'])
_ad = namedtuple('swap_asset_data', ['desc', 'name', 'full_name', 'abbr', 'decimals', 'tested'])
assets_data = {}
evm_contracts = {}
unsupported = ()
@ -87,6 +87,10 @@ class SwapAsset:
def tokensym(self):
return None if self.data.name else self.data.full_name.split('.', 1)[1]
@property
def decimals(self):
return self.data.decimals
@property
def memo_asset_name(self):
return self.data.abbr or self.data.full_name

View file

@ -18,29 +18,29 @@ class THORChainSwapAsset(SwapAsset):
_ad = SwapAsset._ad
assets_data = {
'BTC': _ad('Bitcoin', 'BTC', None, 'b', True),
'LTC': _ad('Litecoin', 'LTC', None, 'l', True),
'BCH': _ad('Bitcoin Cash', 'BCH', None, 'c', True),
'ETH': _ad('Ethereum', 'ETH', None, 'e', True),
'DOGE': _ad('Dogecoin', 'DOGE', None, 'd', False),
'RUNE': _ad('Rune (THORChain)', 'RUNE', 'THOR.RUNE', 'r', True),
'ETH.AAVE': _ad('Aave (ETH)', None, 'ETH.AAVE', None, True),
'ETH.DAI': _ad('MakerDAO USD (ETH)', None, 'ETH.DAI', None, True),
'ETH.DPI': _ad('DeFi Pulse Index (ETH)', None, 'ETH.DPI', None, True),
'ETH.FOX': _ad('ShapeShift FOX (ETH)', None, 'ETH.FOX', None, True),
'ETH.GUSD': _ad('Gemini Dollar (ETH)', None, 'ETH.GUSD', None, True),
'ETH.LINK': _ad('Chainlink (ETH)', None, 'ETH.LINK', None, True),
'ETH.LUSD': _ad('Liquity USD (ETH)', None, 'ETH.LUSD', None, True),
'ETH.SNX': _ad('Synthetix (ETH)', None, 'ETH.SNX', None, True),
'ETH.TGT': _ad('THORWallet (ETH)', None, 'ETH.TGT', None, True),
'ETH.THOR': _ad('THORSwap (ETH)', None, 'ETH.THOR', None, True),
'ETH.USDC': _ad('USDC (ETH)', None, 'ETH.USDC', None, True),
'ETH.USDP': _ad('Pax Dollar (ETH)', None, 'ETH.USDP', None, True),
'ETH.USDT': _ad('Tether (ETH)', None, 'ETH.USDT', None, True),
'ETH.vTHOR': _ad('THORSwap Staking (ETH)', None, 'ETH.vTHOR', None, True),
'ETH.WBTC': _ad('Wrapped BTC (ETH)', None, 'ETH.WBTC', None, True),
'ETH.XRUNE': _ad('Thorstarter (ETH)', None, 'ETH.XRUNE', None, True),
'ETH.YFI': _ad('yearn.finance (ETH)', None, 'ETH.YFI', None, True)}
'BTC': _ad('Bitcoin', 'BTC', None, 'b', None, True),
'LTC': _ad('Litecoin', 'LTC', None, 'l', None, True),
'BCH': _ad('Bitcoin Cash', 'BCH', None, 'c', None, True),
'ETH': _ad('Ethereum', 'ETH', None, 'e', None, True),
'DOGE': _ad('Dogecoin', 'DOGE', None, 'd', None, False),
'RUNE': _ad('Rune (THORChain)', 'RUNE', 'THOR.RUNE', 'r', None, True),
'ETH.AAVE': _ad('Aave (ETH)', None, 'ETH.AAVE', None, 18, True),
'ETH.DAI': _ad('MakerDAO USD (ETH)', None, 'ETH.DAI', None, 18, True),
'ETH.DPI': _ad('DeFi Pulse Index (ETH)', None, 'ETH.DPI', None, 18, True),
'ETH.FOX': _ad('ShapeShift FOX (ETH)', None, 'ETH.FOX', None, 18, True),
'ETH.GUSD': _ad('Gemini Dollar (ETH)', None, 'ETH.GUSD', None, 2, True),
'ETH.LINK': _ad('Chainlink (ETH)', None, 'ETH.LINK', None, 18, True),
'ETH.LUSD': _ad('Liquity USD (ETH)', None, 'ETH.LUSD', None, 18, True),
'ETH.SNX': _ad('Synthetix (ETH)', None, 'ETH.SNX', None, 18, True),
'ETH.TGT': _ad('THORWallet (ETH)', None, 'ETH.TGT', None, 18, True),
'ETH.THOR': _ad('THORSwap (ETH)', None, 'ETH.THOR', None, 18, True),
'ETH.USDC': _ad('USDC (ETH)', None, 'ETH.USDC', None, 6, True),
'ETH.USDP': _ad('Pax Dollar (ETH)', None, 'ETH.USDP', None, 18, True),
'ETH.USDT': _ad('Tether (ETH)', None, 'ETH.USDT', None, 6, True),
'ETH.vTHOR': _ad('THORSwap Staking (ETH)', None, 'ETH.vTHOR', None, 18, True),
'ETH.WBTC': _ad('Wrapped BTC (ETH)', None, 'ETH.WBTC', None, 8, True),
'ETH.XRUNE': _ad('Thorstarter (ETH)', None, 'ETH.XRUNE', None, 18, True),
'ETH.YFI': _ad('yearn.finance (ETH)', None, 'ETH.YFI', None, 18, True)}
evm_contracts = {
'ETH.AAVE': '7fc66500c84a76ad7e9c93437bfc5ac33e2ddae9',

View file

@ -3,9 +3,9 @@ from .asset_orig import *
class overlay_fake_THORChainSwapAsset:
assets_data = {
'ETH.MM1': THORChainSwapAsset._ad('MM1 Token (ETH)', None, 'ETH.MM1', None, True),
'ETH.JUNK': THORChainSwapAsset._ad('Junk Token (ETH)', None, 'ETH.JUNK', None, True),
'ETH.NONE': THORChainSwapAsset._ad('Unavailable Token (ETH)', None, 'ETH.NONE', None, True)}
'ETH.MM1': THORChainSwapAsset._ad('MM1 Token (ETH)', None, 'ETH.MM1', None, 18, True),
'ETH.JUNK': THORChainSwapAsset._ad('Junk Token (ETH)', None, 'ETH.JUNK', None, 6, True),
'ETH.NONE': THORChainSwapAsset._ad('Unavailable Token (ETH)', None, 'ETH.NONE', None, 18, True)}
evm_contracts = {
'ETH.MM1': 'deadbeefdeadbeefdeadbeefdeadbeefdeadbeef'}