@callisto-enterprise/assetslist
TypeScript icon, indicating that this package has built-in type declarations

1.9.3 • Public • Published

Callisto assets list library

This package contains multi chain asset lists with Tokens and NFTs

The package is created with TSDX tool

How to use

  1. Install the package npm i @callisto-enterprice/assetslist

  2. Get Token or NFT asset list for each supported chain, e.g.

import {
  CallistAssetChainId,
  CallistoNftList,
  CallistoTokenList,
  getCallistoNFT,
  getCallistoToken,
} from '@callisto-enterprise/assetslist'

const mainnetTokens = CallistoTokenList[CallistAssetChainId.Mainnet] // or just 820
const mainnetNFTs = CallistoNftList[CallistAssetChainId.Mainnet]

// Or find any specific asset by address
const nft = getCallistoNFT('0x...', CallistAssetChainId.Mainnet)
const token = getCallistoToken('0x...', CallistAssetChainId.Mainnet)

Here is the structure of the Asset interface

export interface CallistoAsset {
  address: string
  category: AssetType //NATIVE, ERC20, ERC223, ERC721, ERC1155, CALLISTONFT
  name: string
  symbol: string
  image: string // for the NFT it could be a fallback image
  audit: {
    isAudited: boolean
    reportUrl?: string
    riskLevel?: string
  }
  decimals: number
  platforms: string[]
  projectUrl: string
}

Here is the structure of the AssetNFT interface which extends the Asset interface

export interface CallistoAssetNFT extends CallistoAsset {
  collectionName: string
  placeholderName?: string // usually when it is undefined, it is filled by Asset.name
  placeholderId?: string // it can be filled by the contract tokenId() during the parsing
  placeholderTitle?: string // it can be filled by collectionName during the parsing
  placeholderDescription?: string
  placeholderMedia?: string // it cann be filled by specific standard, for example for ERC721 is used tokenURI()
}

The placeholder fields are used for the UI, especially for CallistoNFT standard, since we want to show different data accross different collections We decided to choose placeholder approach when the same UI placeholder can point to different NFT metadata as you can see at the image below

NFT placeholder

Commands

TSDX scaffolds your new library inside /src.

To run TSDX, use:

yarn start

This builds to /dist and runs the project in watch mode so any edits you save inside src causes a rebuild to /dist.

To do a one-off build, use npm run build or yarn build.

To run tests, use npm test or yarn test. If testing misbehaves, run npx jest --clearCache.

Note about DeprecationWarning [DEP0148]: tslib library, referenced by tsdx, has deprecated "./" key in package.json, see discussion in github. No safe fix was identified, manual edit within node_modules can be a temporary solution.

Rollup

TSDX uses Rollup as a bundler and generates multiple rollup configs for various module formats and build settings. See Optimizations for details.

Contribution

If you would like to add new Token or NFT collection, or fix some image assets feel free to create a new PR.

Readme

Keywords

none

Package Sidebar

Install

npm i @callisto-enterprise/assetslist

Weekly Downloads

0

Version

1.9.3

License

MIT

Unpacked Size

333 kB

Total Files

30

Last publish

Collaborators

  • mufmoto
  • kleinpetr