mirror of
https://github.com/Instadapp/trustwallet-assets.git
synced 2024-07-29 22:37:31 +00:00
d64a55e925
* Add checksum address to tezos validators * Rename tron validators and assets * Optimised images with calibre/image-actions * Uppercase BNB coins * Rename waves * Checksum TT addresses * Checksum POA addresses * Checksum ETC addresses * Checksum Ethreum and POA addresses * Add ethereum-checksum-address * Add BEP2 logos * remove * Fix Ethereum test * Checksum Tomo * Checksum Wanchain * Update ALGO logo * Update test * Update readme * Remove callisto from verify tokens * Update logo.png * Rename tezos * Add web3 * Add new BEP2 images * Uppercase blacklist BEp2 * pdate fetchin opensea nft addreses * test * new * to checksum * Update package * Exclude callisto from test * Checksum the rest * To checksum script * remove * remove * remove * Add * Add jest * Use jest * Breezecoin (BRZE) * Test using Jest * Remove mongoose * Update scritps * 999 * Move dep to dev * Optimised images with calibre/image-actions * Uppercase * To checksum * new * Add babel * Checksum * Move helper meethods to sepaarate file for future reuse * rename vthor * Move js => typescript * Add ts-node * Add default lists * Init blacklist * Fetch opensea assets * Add more helpers * fethc opensea nonerc20 for blacklist * Add list command * script: checksum BEP2 * Rename to ts * Remove old blacklist * Update whitelist and blacklist * Remove tezos validator due to end of service Closes https://github.com/trustwallet/assets/issues/581 * script: generate white and black lists * Add Stakenow to Tezos * Arch Crypton Game (ARCG) * Optimised images with calibre/image-actions * Update list * many updates * Optimised images with calibre/image-actions * Add daps * Optimised images with calibre/image-actions * Update Ethereum blacklist * Utilize trustwallet/types * Remove duplicate * Reflex (RFX) * Remove lowercased
66 lines
2.0 KiB
TypeScript
66 lines
2.0 KiB
TypeScript
const fs = require('fs')
|
|
import { getOpenseaCollectionAddresses } from "./opesea_contrats"
|
|
|
|
import {
|
|
Ethereum,
|
|
isPathExistsSync,
|
|
getChainAssetsPath,
|
|
chainsFolderPath,
|
|
readDirSync,
|
|
readFileSync,
|
|
isChainWhitelistExistSync,
|
|
isChainBlacklistExistSync,
|
|
getChainWhitelistPath,
|
|
getChainBlacklistPath,
|
|
writeFileSync,
|
|
sortDesc,
|
|
getUnique,
|
|
mapList
|
|
} from '../src/test/helpers'
|
|
|
|
const assetsChains = readDirSync(chainsFolderPath).filter(chain => isPathExistsSync(getChainAssetsPath(chain)))
|
|
|
|
assetsChains.forEach(async chain => {
|
|
const assets = readDirSync(getChainAssetsPath(chain))
|
|
|
|
const whitelistPath = getChainWhitelistPath(chain)
|
|
const blacklistPath = getChainBlacklistPath(chain)
|
|
|
|
//Create inital lists if they do not exists
|
|
if (!isChainWhitelistExistSync(chain)) {
|
|
writeFileSync(whitelistPath, `[]`)
|
|
}
|
|
|
|
if (!isChainBlacklistExistSync(chain)) {
|
|
writeFileSync(blacklistPath, `[]`)
|
|
}
|
|
|
|
const currentWhitelist = assets.concat(JSON.parse(readFileSync(whitelistPath)))
|
|
let currentBlacklist = JSON.parse(readFileSync(blacklistPath))
|
|
|
|
// Some chains required pulling lists from other sources
|
|
switch (chain) {
|
|
case Ethereum:
|
|
const nftList = await getOpenseaCollectionAddresses()
|
|
currentBlacklist = currentBlacklist.concat(nftList)
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
|
|
const mappedWhiteList = mapList(currentWhitelist)
|
|
const mappedBlackList = mapList(currentBlacklist)
|
|
|
|
// Make sure whitelist do not contain assets from blacklist and oposite
|
|
const filteredWhitelist = currentWhitelist.filter(a => !mappedBlackList[a])
|
|
const filteredBlacklist = currentBlacklist.filter(a => !mappedWhiteList[a])
|
|
|
|
const finalWhiteList = sortDesc(getUnique(filteredWhitelist))
|
|
const finalBlackList = sortDesc(getUnique(filteredBlacklist))
|
|
|
|
fs.writeFileSync(whitelistPath, JSON.stringify(finalWhiteList, null, 4))
|
|
fs.writeFileSync(blacklistPath, JSON.stringify(finalBlackList, null, 4))
|
|
})
|
|
|
|
|