mirror of
https://github.com/Instadapp/trustwallet-assets.git
synced 2024-07-29 22:37:31 +00:00
Update config, make tag values central (#17535)
This commit is contained in:
parent
a915edc893
commit
c6f7f83e06
73
.github/assets.config.yaml
vendored
73
.github/assets.config.yaml
vendored
|
@ -5,7 +5,7 @@ client_urls:
|
||||||
binance:
|
binance:
|
||||||
dex: https://dex.binance.org
|
dex: https://dex.binance.org
|
||||||
explorer: https://explorer.binance.org
|
explorer: https://explorer.binance.org
|
||||||
backend_api: https://api.trustwallet.com
|
assets_manager_api: "https://assets-manager-api.herokuapp.com"
|
||||||
|
|
||||||
urls:
|
urls:
|
||||||
tw_assets_app: https://assets.trustwalletapp.com
|
tw_assets_app: https://assets.trustwalletapp.com
|
||||||
|
@ -64,74 +64,3 @@ validators_settings:
|
||||||
|
|
||||||
dapps_folder:
|
dapps_folder:
|
||||||
ext: ".png"
|
ext: ".png"
|
||||||
|
|
||||||
coin_info_file:
|
|
||||||
tags:
|
|
||||||
- id: stablecoin
|
|
||||||
name: Stablecoin
|
|
||||||
description: Tokens that are fixed to an external asset, e.g. the US dollar.
|
|
||||||
- id: wrapped
|
|
||||||
name: Wrapped
|
|
||||||
description: Tokens that are wrapped or peg representation of digital assets. Excluded
|
|
||||||
stablecoins
|
|
||||||
- id: synthetics
|
|
||||||
name: Synthetics
|
|
||||||
description: Synthetic assets created to track the value of another asset
|
|
||||||
- id: nft
|
|
||||||
name: NFT
|
|
||||||
description: Non-fungible tokens or tokens associated with the NFT ecosystem.
|
|
||||||
- id: governance
|
|
||||||
name: Governance
|
|
||||||
description: Tokens that used to participate in the governance process of the project.
|
|
||||||
- id: defi
|
|
||||||
name: DeFi
|
|
||||||
description: Tokens that are used for variety of decentralized financial applications.
|
|
||||||
- id: staking
|
|
||||||
name: Staking
|
|
||||||
description: Tokens that are used for staking to receive rewards.
|
|
||||||
- id: privacy
|
|
||||||
name: Privacy
|
|
||||||
description: Privacy tokens.
|
|
||||||
- id: nsfw
|
|
||||||
name: NSFW
|
|
||||||
description: Content Not suitable for work.
|
|
||||||
- id: binance-peg
|
|
||||||
name: Binance-Peg
|
|
||||||
description: Binance-Peg tokens.
|
|
||||||
- id: deflationary
|
|
||||||
name: Deflationary
|
|
||||||
description: Tokens that are deflationary or use mechanism to burn a token on transfer/swap.
|
|
||||||
- id: memes
|
|
||||||
name: Memes
|
|
||||||
description: A cryptocurrency that is associated with some theme, often as a joke rather than a serious product.
|
|
||||||
- id: gamefi
|
|
||||||
name: GameFi
|
|
||||||
description: Combination of gaming and DeFi, is the intersection of blockchain-based gaming and DeFi services.
|
|
||||||
# TW Specific
|
|
||||||
- id: staking-native
|
|
||||||
name: Staking Native
|
|
||||||
description: Coins/Blockchains that are used for staking to secure the network to
|
|
||||||
receive rewards. Supported by Trust Wallet.
|
|
||||||
|
|
||||||
trading_pair_settings:
|
|
||||||
uniswap:
|
|
||||||
url: https://api.thegraph.com/subgraphs/name/uniswap/uniswap-v2
|
|
||||||
|
|
||||||
primary_tokens: "WETH,ETH"
|
|
||||||
force_include_list: "TUSD,STAKE,YFI,BAT,MANA,1INCH,REP,KP3R,UNI,WBTC,HEX,CREAM,SLP,REN,XOR,Link,sUSD,HEGIC,RLC,DAI,SUSHI,FYZ,DYT,AAVE,LEND,UBT,DIA,RSR,SXP,OCEAN,MKR,USDC,CEL,BAL,BAND,COMP,SNX,OMG,AMPL,USDT,KNC,ZRX,AXS,ENJ,STMX,DPX,FTT,DPI,PAX"
|
|
||||||
force_exclude_list: "STARL,UFO"
|
|
||||||
|
|
||||||
min_liquidity: 2000000
|
|
||||||
min_vol_24: 1000000
|
|
||||||
min_tx_count_24: 480
|
|
||||||
|
|
||||||
pancakeswap:
|
|
||||||
url: https://api.bscgraph.org/subgraphs/name/cakeswap
|
|
||||||
|
|
||||||
primary_tokens: "WBNB,BNB"
|
|
||||||
force_include_list: "Cake,DAI,ETH,TWT,VAI,USDT,BLINK,BTCB,ALPHA,INJ,CTK,UNI,XVS,BUSD,HARD,BIFI,FRONT"
|
|
||||||
force_exclude_list:
|
|
||||||
|
|
||||||
min_liquidity: 1000000
|
|
||||||
min_vol_24: 500000
|
|
||||||
min_tx_count_24: 288
|
|
||||||
|
|
|
@ -29,4 +29,4 @@
|
||||||
"url": "https://www.binance.com/resources/ico/Binance_WhitePaper_en.pdf"
|
"url": "https://www.binance.com/resources/ico/Binance_WhitePaper_en.pdf"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -8,23 +8,22 @@ import (
|
||||||
|
|
||||||
type (
|
type (
|
||||||
Config struct {
|
Config struct {
|
||||||
App App `mapstructure:"app"`
|
App App `mapstructure:"app"`
|
||||||
ClientURLs ClientsURLs `mapstructure:"client_urls"`
|
ClientURLs ClientURLs `mapstructure:"client_urls"`
|
||||||
URLs URLs `mapstructure:"urls"`
|
URLs URLs `mapstructure:"urls"`
|
||||||
ValidatorsSettings ValidatorsSettings `mapstructure:"validators_settings"`
|
ValidatorsSettings ValidatorsSettings `mapstructure:"validators_settings"`
|
||||||
TradingPairSettings TradingPairSettings `mapstructure:"trading_pair_settings"`
|
|
||||||
}
|
}
|
||||||
|
|
||||||
App struct {
|
App struct {
|
||||||
LogLevel string `mapstructure:"log_level"`
|
LogLevel string `mapstructure:"log_level"`
|
||||||
}
|
}
|
||||||
|
|
||||||
ClientsURLs struct {
|
ClientURLs struct {
|
||||||
Binance struct {
|
Binance struct {
|
||||||
Dex string `mapstructure:"dex"`
|
Dex string `mapstructure:"dex"`
|
||||||
Explorer string `mapstructure:"explorer"`
|
Explorer string `mapstructure:"explorer"`
|
||||||
} `mapstructure:"binance"`
|
} `mapstructure:"binance"`
|
||||||
BackendAPI string `mapstructure:"backend_api"`
|
AssetsManagerAPI string `mapstructure:"assets_manager_api"`
|
||||||
}
|
}
|
||||||
|
|
||||||
URLs struct {
|
URLs struct {
|
||||||
|
@ -38,22 +37,6 @@ type (
|
||||||
ChainInfoFolder ChainInfoFolder `mapstructure:"chain_info_folder"`
|
ChainInfoFolder ChainInfoFolder `mapstructure:"chain_info_folder"`
|
||||||
ChainValidatorsAssetFolder ChainValidatorsAssetFolder `mapstructure:"chain_validators_asset_folder"`
|
ChainValidatorsAssetFolder ChainValidatorsAssetFolder `mapstructure:"chain_validators_asset_folder"`
|
||||||
DappsFolder DappsFolder `mapstructure:"dapps_folder"`
|
DappsFolder DappsFolder `mapstructure:"dapps_folder"`
|
||||||
CoinInfoFile CoinInfoFile `mapstructure:"coin_info_file"`
|
|
||||||
}
|
|
||||||
|
|
||||||
TradingPairSettings struct {
|
|
||||||
Uniswap TradingPairSetting `mapstructure:"uniswap"`
|
|
||||||
Pancakeswap TradingPairSetting `mapstructure:"pancakeswap"`
|
|
||||||
}
|
|
||||||
|
|
||||||
TradingPairSetting struct {
|
|
||||||
URL string `mapstructure:"url"`
|
|
||||||
PrimaryTokens string `mapstructure:"primary_tokens"`
|
|
||||||
ForceIncludeList string `mapstructure:"force_include_list"`
|
|
||||||
ForceExcludeList string `mapstructure:"force_exclude_list"`
|
|
||||||
MinLiquidity int `mapstructure:"min_liquidity"`
|
|
||||||
MinVol24 int `mapstructure:"min_vol_24"`
|
|
||||||
MinTxCount24 int `mapstructure:"min_tx_count_24"`
|
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -1,15 +1,21 @@
|
||||||
package processor
|
package processor
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"github.com/trustwallet/assets/internal/config"
|
||||||
"github.com/trustwallet/assets/internal/file"
|
"github.com/trustwallet/assets/internal/file"
|
||||||
|
assetsmanager "github.com/trustwallet/go-libs/client/api/assets-manager"
|
||||||
)
|
)
|
||||||
|
|
||||||
type Service struct {
|
type Service struct {
|
||||||
fileService *file.Service
|
fileService *file.Service
|
||||||
|
assetsManager assetsmanager.Client
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewService(fileProvider *file.Service) *Service {
|
func NewService(fileProvider *file.Service) *Service {
|
||||||
return &Service{fileService: fileProvider}
|
return &Service{
|
||||||
|
fileService: fileProvider,
|
||||||
|
assetsManager: assetsmanager.InitClient(config.Default.ClientURLs.AssetsManagerAPI, nil),
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *Service) GetValidator(f *file.AssetFile) []Validator {
|
func (s *Service) GetValidator(f *file.AssetFile) []Validator {
|
||||||
|
|
|
@ -234,8 +234,13 @@ func (s *Service) ValidateChainInfoFile(f *file.AssetFile) error {
|
||||||
return fmt.Errorf("%w: failed to decode", err)
|
return fmt.Errorf("%w: failed to decode", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
tags := make([]string, len(config.Default.ValidatorsSettings.CoinInfoFile.Tags))
|
receivedTags, err := s.assetsManager.GetTagValues()
|
||||||
for i, t := range config.Default.ValidatorsSettings.CoinInfoFile.Tags {
|
if err != nil {
|
||||||
|
return fmt.Errorf("failed to get tag values: %w", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
tags := make([]string, len(receivedTags.Tags))
|
||||||
|
for i, t := range receivedTags.Tags {
|
||||||
tags[i] = t.ID
|
tags[i] = t.ID
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user