mirror of
https://github.com/oceanprotocol/ocean.js.git
synced 2024-11-26 20:39:05 +01:00
add estimategas optional parameter to functions
This commit is contained in:
parent
6a193ac88d
commit
2ec7bd7f70
@ -16,7 +16,8 @@
|
||||
"rules": {
|
||||
"no-empty": ["error", { "allowEmptyCatch": true }],
|
||||
"prefer-destructuring": ["warn", { "object": true, "array": false }],
|
||||
"no-dupe-class-members": ["warn"],
|
||||
"no-dupe-class-members": "off",
|
||||
"no-redeclare": "off",
|
||||
"no-useless-constructor": ["warn"],
|
||||
"no-unused-vars": ["warn"],
|
||||
"constructor-super": ["warn"]
|
||||
|
@ -33,7 +33,11 @@ export class NftFactory extends SmartContractWithAddress {
|
||||
* @param {NFTCreateData} nftData
|
||||
* @return {Promise<string>} NFT datatoken address
|
||||
*/
|
||||
public async createNFT(address: string, nftData: NftCreateData): Promise<string> {
|
||||
public async createNFT<G extends boolean = false>(
|
||||
address: string,
|
||||
nftData: NftCreateData,
|
||||
estimateGas?: G
|
||||
): Promise<G extends false ? string : number> {
|
||||
if (!nftData.templateIndex) nftData.templateIndex = 1
|
||||
|
||||
if (!nftData.name || !nftData.symbol) {
|
||||
@ -63,6 +67,7 @@ export class NftFactory extends SmartContractWithAddress {
|
||||
nftData.transferable,
|
||||
nftData.owner
|
||||
)
|
||||
if (estimateGas) return estGas
|
||||
|
||||
// Invoke createToken function of the contract
|
||||
const trxReceipt = await this.contract.methods
|
||||
@ -180,10 +185,11 @@ export class NftFactory extends SmartContractWithAddress {
|
||||
* @param {String} templateAddress template address to add
|
||||
* @return {Promise<TransactionReceipt>}
|
||||
*/
|
||||
public async addNFTTemplate(
|
||||
public async addNFTTemplate<G extends boolean = false>(
|
||||
address: string,
|
||||
templateAddress: string
|
||||
): Promise<TransactionReceipt> {
|
||||
templateAddress: string,
|
||||
estimateGas?: G
|
||||
): Promise<G extends false ? TransactionReceipt : number> {
|
||||
if ((await this.getOwner()) !== address) {
|
||||
throw new Error(`Caller is not Factory Owner`)
|
||||
}
|
||||
@ -196,6 +202,7 @@ export class NftFactory extends SmartContractWithAddress {
|
||||
this.contract.methods.add721TokenTemplate,
|
||||
templateAddress
|
||||
)
|
||||
if (estimateGas) return estGas
|
||||
|
||||
// Invoke add721TokenTemplate function of the contract
|
||||
const trxReceipt = await this.contract.methods
|
||||
|
Loading…
x
Reference in New Issue
Block a user