aboutsummaryrefslogblamecommitdiffstats
path: root/src/contract_wrappers/contract_wrapper.ts
blob: 2a55b53d9724a481fd6e7a71727eb4dd8374e349 (plain) (tree)
1
2
3
4
5
6
7
8
9
                            
                             
                                            
                                               


                                     
                                        
                                           
                                        
     
                                                                                                          

                                                                                                                
                                
                                                                                                       
                                

     
import * as _ from 'lodash';
import * as Web3 from 'web3';
import {Web3Wrapper} from '../web3_wrapper';
import {ZeroExError, Artifact} from '../types';
import {utils} from '../utils/utils';

export class ContractWrapper {
    protected _web3Wrapper: Web3Wrapper;
    constructor(web3Wrapper: Web3Wrapper) {
        this._web3Wrapper = web3Wrapper;
    }
    protected async _instantiateContractIfExistsAsync<A extends Web3.ContractInstance>(artifact: Artifact,
                                                                                       addressIfExists?: string,
                                                                                      ): Promise<A> {
        const contractInstance =
            await this._web3Wrapper.getContractInstanceFromArtifactAsync<A>(artifact, addressIfExists);
        return contractInstance;
    }
}