From 52341241c3c06f078a39e4c99d09e8193b93f97a Mon Sep 17 00:00:00 2001 From: Aabid Shamji Date: Fri, 19 Aug 2022 12:12:17 -0700 Subject: [PATCH] added option for custom provider for NFT contract --- src/interfaces/bridge-params.ts | 2 ++ src/nft/base-token.ts | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/interfaces/bridge-params.ts b/src/interfaces/bridge-params.ts index aa5ec14..4dd0ef3 100644 --- a/src/interfaces/bridge-params.ts +++ b/src/interfaces/bridge-params.ts @@ -1,5 +1,6 @@ import { Chain } from "./chain"; import {FireblocksSDK} from "fireblocks-sdk"; +import { Signer, providers } from "ethers"; export interface BridgeParams { fireblocksApiClient: FireblocksSDK; @@ -7,4 +8,5 @@ export interface BridgeParams { externalWalletId?: string; chain?: Chain; contractAddress?: string; + signerOrProvider?: Signer | providers.Provider; } diff --git a/src/nft/base-token.ts b/src/nft/base-token.ts index 0731055..c840794 100644 --- a/src/nft/base-token.ts +++ b/src/nft/base-token.ts @@ -29,7 +29,7 @@ export class BaseToken { this.contractABI = contractABI this.contract = new ethers.Contract(this.bridgeParams.contractAddress, JSON.stringify(this.contractABI), - ethers.getDefaultProvider(this.bridgeParams.chain)); + this.bridgeParams.signerOrProvider ?? ethers.getDefaultProvider(this.bridgeParams.chain)); this._allFunctions = this.contract.functions; }