asset.py 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #!/usr/bin/env python3
  2. #
  3. # MMGen Wallet, a terminal-based cryptocurrency wallet
  4. # Copyright (C)2013-2026 The MMGen Project <mmgen@tuta.io>
  5. # Licensed under the GNU General Public License, Version 3:
  6. # https://www.gnu.org/licenses
  7. # Public project repositories:
  8. # https://github.com/mmgen/mmgen-wallet
  9. # https://gitlab.com/mmgen/mmgen-wallet
  10. """
  11. swap.asset: THORChain swap asset class for the MMGen Wallet suite
  12. """
  13. from ...asset import SwapAsset
  14. class THORChainSwapAsset(SwapAsset):
  15. _ad = SwapAsset._ad
  16. assets_data = {
  17. 'BTC': _ad('Bitcoin', 'BTC', None, 'b', True),
  18. 'LTC': _ad('Litecoin', 'LTC', None, 'l', True),
  19. 'BCH': _ad('Bitcoin Cash', 'BCH', None, 'c', True),
  20. 'ETH': _ad('Ethereum', 'ETH', None, 'e', True),
  21. 'DOGE': _ad('Dogecoin', 'DOGE', None, 'd', False),
  22. 'RUNE': _ad('Rune (THORChain)', 'RUNE', 'THOR.RUNE', 'r', True),
  23. 'ETH.AAVE': _ad('Aave (ETH)', None, 'ETH.AAVE', None, True),
  24. 'ETH.DAI': _ad('MakerDAO USD (ETH)', None, 'ETH.DAI', None, True),
  25. 'ETH.DPI': _ad('DeFi Pulse Index (ETH)', None, 'ETH.DPI', None, True),
  26. 'ETH.FOX': _ad('ShapeShift FOX (ETH)', None, 'ETH.FOX', None, True),
  27. 'ETH.GUSD': _ad('Gemini Dollar (ETH)', None, 'ETH.GUSD', None, True),
  28. 'ETH.LINK': _ad('Chainlink (ETH)', None, 'ETH.LINK', None, True),
  29. 'ETH.LUSD': _ad('Liquity USD (ETH)', None, 'ETH.LUSD', None, True),
  30. 'ETH.SNX': _ad('Synthetix (ETH)', None, 'ETH.SNX', None, True),
  31. 'ETH.TGT': _ad('THORWallet (ETH)', None, 'ETH.TGT', None, True),
  32. 'ETH.THOR': _ad('THORSwap (ETH)', None, 'ETH.THOR', None, True),
  33. 'ETH.USDC': _ad('USDC (ETH)', None, 'ETH.USDC', None, True),
  34. 'ETH.USDP': _ad('Pax Dollar (ETH)', None, 'ETH.USDP', None, True),
  35. 'ETH.USDT': _ad('Tether (ETH)', None, 'ETH.USDT', None, True),
  36. 'ETH.vTHOR': _ad('THORSwap Staking (ETH)', None, 'ETH.vTHOR', None, True),
  37. 'ETH.WBTC': _ad('Wrapped BTC (ETH)', None, 'ETH.WBTC', None, True),
  38. 'ETH.XRUNE': _ad('Thorstarter (ETH)', None, 'ETH.XRUNE', None, True),
  39. 'ETH.YFI': _ad('yearn.finance (ETH)', None, 'ETH.YFI', None, True)}
  40. evm_contracts = {
  41. 'ETH.AAVE': '7fc66500c84a76ad7e9c93437bfc5ac33e2ddae9',
  42. 'ETH.DAI': '6b175474e89094c44da98b954eedeac495271d0f',
  43. 'ETH.DPI': '1494ca1f11d487c2bbe4543e90080aeba4ba3c2b',
  44. 'ETH.FOX': 'c770eefad204b5180df6a14ee197d99d808ee52d',
  45. 'ETH.GUSD': '056fd409e1d7a124bd7017459dfea2f387b6d5cd',
  46. 'ETH.LINK': '514910771af9ca656af840dff83e8264ecf986ca',
  47. 'ETH.LUSD': '5f98805a4e8be255a32880fdec7f6728c6568ba0',
  48. 'ETH.SNX': 'c011a73ee8576fb46f5e1c5751ca3b9fe0af2a6f',
  49. 'ETH.TGT': '108a850856db3f85d0269a2693d896b394c80325',
  50. 'ETH.THOR': 'a5f2211b9b8170f694421f2046281775e8468044',
  51. 'ETH.USDC': 'a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
  52. 'ETH.USDP': '8e870d67f660d95d5be530380d0ec0bd388289e1',
  53. 'ETH.USDT': 'dac17f958d2ee523a2206206994597c13d831ec7',
  54. 'ETH.vTHOR': '815c23eca83261b6ec689b60cc4a58b54bc24d8d',
  55. 'ETH.WBTC': '2260fac5e5542a773aa44fbcfedf7c193bc2c599',
  56. 'ETH.XRUNE': '69fa0fee221ad11012bab0fdb45d444d3d2ce71c',
  57. 'ETH.YFI': '0bc529c00c6401aef6d220be8c6ea1667f6ad93e'}
  58. unsupported = ('DOGE',)
  59. blacklisted = {}
  60. evm_chains = ('ETH', 'AVAX', 'BSC', 'BASE')