diff options
author | Amir Bandeali <abandeali1@gmail.com> | 2017-11-30 14:02:43 +0800 |
---|---|---|
committer | Amir Bandeali <abandeali1@gmail.com> | 2017-11-30 23:10:18 +0800 |
commit | 4b3e0383235ca4ca0127f24c2e05543bb45a56bb (patch) | |
tree | 7a9c1888f99b1121826b09ca28185565ed47cd50 /packages/contracts/util/token_registry_wrapper.ts | |
parent | c57190dead41846809effb8823bd4e486ca72512 (diff) | |
download | dexon-sol-tools-4b3e0383235ca4ca0127f24c2e05543bb45a56bb.tar.gz dexon-sol-tools-4b3e0383235ca4ca0127f24c2e05543bb45a56bb.tar.zst dexon-sol-tools-4b3e0383235ca4ca0127f24c2e05543bb45a56bb.zip |
Add contracts to packages, fix most linting errors
Diffstat (limited to 'packages/contracts/util/token_registry_wrapper.ts')
-rw-r--r-- | packages/contracts/util/token_registry_wrapper.ts | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/packages/contracts/util/token_registry_wrapper.ts b/packages/contracts/util/token_registry_wrapper.ts new file mode 100644 index 000000000..5065a1802 --- /dev/null +++ b/packages/contracts/util/token_registry_wrapper.ts @@ -0,0 +1,56 @@ +import {ContractInstance, Token} from './types'; + +export class TokenRegWrapper { + private tokenReg: ContractInstance; + constructor(tokenRegContractInstance: ContractInstance) { + this.tokenReg = tokenRegContractInstance; + } + public addTokenAsync(token: Token, from: string) { + const tx = this.tokenReg.addToken( + token.address, + token.name, + token.symbol, + token.decimals, + token.ipfsHash, + token.swarmHash, + {from}, + ); + return tx; + } + public async getTokenMetaDataAsync(tokenAddress: string) { + const data = await this.tokenReg.getTokenMetaData(tokenAddress); + const token: Token = { + address: data[0], + name: data[1], + symbol: data[2], + decimals: data[3].toNumber(), + ipfsHash: data[4], + swarmHash: data[5], + }; + return token; + } + public async getTokenByNameAsync(tokenName: string) { + const data = await this.tokenReg.getTokenByName(tokenName); + const token: Token = { + address: data[0], + name: data[1], + symbol: data[2], + decimals: data[3].toNumber(), + ipfsHash: data[4], + swarmHash: data[5], + }; + return token; + } + public async getTokenBySymbolAsync(tokenSymbol: string) { + const data = await this.tokenReg.getTokenBySymbol(tokenSymbol); + const token: Token = { + address: data[0], + name: data[1], + symbol: data[2], + decimals: data[3].toNumber(), + ipfsHash: data[4], + swarmHash: data[5], + }; + return token; + } +} |