UNPKG

crypto-bot

Version:

multi-function tools for blockchain automation

63 lines (49 loc) 1.91 kB
const { logger } = require("./utils/logger"); const { Table } = require("console-table-printer"); //const { tokenTable } = require('./utils/tableheader'); class TokenList { chainId = undefined; status = undefined; list = undefined; table = undefined; constructor(_chainId, _list ){ //_defaultHttps, _https, _httpsProvider, _defaultWss, _wss, _wssProvider ){ this.chainId = _chainId this.status = 1 this.list = _list //this.table = this.buildDisplay() this.table = new Table({ title: "Supported TOKEN list", columns: [ {name: "index", alignment: "right"}, {name: "address", alignment: "center"}, {name: "symbol", alignment: "center"}, {name: "name", alignment: "left"}, {name: "decimals", alignment: "center"}, {name: "totalsuply", alignment: "center"}, ], }); this.buildDisplay(); } getChainId = function() { return this.chainId } getStatus = function() {return this.status } getCount = function() {return this.list.length } getTokens = function() { return this.list } listTokens = function() { for(let i = 0 ; i < this.list.length ; i++) { let _data = this.list[i] logger.info(` (${_data.symbol}) ${_data.name}`) } } displayTokens = function () { if(this.list.length > 0) this.table.printTable(); } buildDisplay = function () { for(let i = 0 ; i < this.list.length ; i++) { let Token = this.list[i] this.table.addRow({index: i, symbol: Token.symbol, name: Token.name, decimals: Token.decimals, address: Token.address}) } } } exports.TokenList = TokenList;