trustwallet-assets/script/config.ts
Adam R 88f26b09d1
[Internal] Retrieve trading pairs from PancakeSwap (#5355)
* Retrieve trading pairs from PancakeSwap.

* Retrieve trading pairs from Uniswap.

* Add doc link

* Lint fix

* Include decimals

* Move binance tokenlist generation to BinanceAction.

* Generate smartChain tokenlist, from base and pancakeswap pairs.

* Fix array types in tokenlists.ts

* Common writeToFile method, sort.

* Type fixes

* Revert tokenlist.json to master

* Include pairs with allowlisted coins only.

* Move assetID functions to common asset.ts

* Use common assetID functions.

* Use dynamic generation time.

* Keep constant generation time; Version in tokenlist.

* Count additions

* Update tokenlist version and timestamp if needed before save.

* No counting is needed in addXxxIfNeeded() functions.

* Tokenlist timestamp: take over if previous

* Update ethereum tokenlist with pairs from Uniswap.

* Increase query limit to 400 pairs.

* iDecimals always number, add decimal fields to Eth also.

* Include only pairs with primary tokens, add pair info to primary token only.

* Update base tokenlist (BSC) to current full list, in order not to remove any coins.

* Update base tokenlist (ETH) to current full list, in order not to remove any coins.

* Move out pair checks into common code.

* Add checks for volume and txCount.

* Assets tokenlist: Adjust token names for added tokens.

* Move parameters to central config.ts

* Nicer query string, compact

* Prevent change if subgraph API fails

* Reduce max limit in Pancakeswap query, with 400 often times out.

* Stricter error handling

* Reduce code duplication.

* Minor comment

* Display number of original tokens

* Lint fix

Co-authored-by: Catenocrypt <catenocrypt@users.noreply.github.com>
2021-01-29 07:45:43 +01:00

45 lines
2.1 KiB
TypeScript

export const imageMaxLogoWidth = 512;
export const imageMaxLogoHeight = 512;
export const imageMinLogoWidth = 64;
export const imageMinLogoHeight = 64;
export const imageMaxLogoSizeKb = 100;
export const foldersRootdirAllowedFiles: string[] = [".github", "blockchains", "dapps", "media", "node_modules", "script-old", "script", "test", ".gitignore", "azure-pipelines.yml", "jest.config.js", "LICENSE", "package-lock.json", "package.json", "README.md", ".git", "dangerfile.ts", "Gemfile", "Gemfile.lock", ".eslintignore", ".eslintrc.js"];
export const binanceUrlTokenAssets = "https://explorer.binance.org/api/v1/assets?page=1&rows=1000";
export const binanceDexURL = 'https://dex-atlantic.binance.org/api'
export const assetsURL = 'https://raw.githubusercontent.com/trustwallet/assets/master'
export const PancakeSwap_TradingPairsUrl = "https://api.bscgraph.org/subgraphs/name/wowswap";
export const PancakeSwap_TradingPairsQuery = `
query pairs {
pairs(first: 200, orderBy: reserveUSD, orderDirection: desc) {
id reserveUSD trackedReserveETH volumeUSD txCount untrackedVolumeUSD __typename
token0 {
id symbol name decimals __typename
}
token1 {
id symbol name decimals __typename
}
}
}
`;
export const PancakeSwap_MinLiquidity = 1000000;
export const PancakeSwap_MinVol24 = 500000;
export const PancakeSwap_MinTxCount24 = 288;
export const Uniswap_TradingPairsUrl = "https://api.thegraph.com/subgraphs/name/uniswap/uniswap-v2"; // see https://thegraph.com/explorer/subgraph/uniswap/uniswap-v2
export const Uniswap_TradingPairsQuery = `
query pairs {
pairs(first: 400, orderBy: reserveUSD, orderDirection: desc) {
id reserveUSD trackedReserveETH volumeUSD txCount untrackedVolumeUSD __typename
token0 {
id symbol name decimals __typename
}
token1 {
id symbol name decimals __typename
}
}
}
`;
export const Uniswap_MinLiquidity = 2000000;
export const Uniswap_MinVol24 = 1000000;
export const Uniswap_MinTxCount24 = 480;