From 33c5891ba9ccd484546f34c937a4324d50cdb4a3 Mon Sep 17 00:00:00 2001 From: Kien Ngo Date: Sun, 8 Oct 2023 13:00:15 -0400 Subject: [PATCH] [SDK] Improve add/removeContract method for registry.ts --- .changeset/cuddly-gorillas-cheer.md | 5 ++++ packages/sdk/src/evm/core/classes/registry.ts | 24 +++++++------------ 2 files changed, 13 insertions(+), 16 deletions(-) create mode 100644 .changeset/cuddly-gorillas-cheer.md diff --git a/.changeset/cuddly-gorillas-cheer.md b/.changeset/cuddly-gorillas-cheer.md new file mode 100644 index 00000000000..6e770d142c0 --- /dev/null +++ b/.changeset/cuddly-gorillas-cheer.md @@ -0,0 +1,5 @@ +--- +"@thirdweb-dev/sdk": patch +--- + +Improve add/removeContract methods diff --git a/packages/sdk/src/evm/core/classes/registry.ts b/packages/sdk/src/evm/core/classes/registry.ts index c0c98071abf..6af608641a8 100644 --- a/packages/sdk/src/evm/core/classes/registry.ts +++ b/packages/sdk/src/evm/core/classes/registry.ts @@ -48,15 +48,11 @@ export class ContractRegistry extends ContractWrapper { ): Promise> => { const deployerAddress = await this.getSignerAddress(); const contractEncoder = new ContractEncoder(this); - const encoded: string[] = await Promise.all( - contractAddresses.map(async (address) => - contractEncoder.encode("add", [ - deployerAddress, - await resolveAddress(address), - ]), - ), + const encoded = ( + await Promise.all(contractAddresses.map((addr) => resolveAddress(addr))) + ).map((address) => + contractEncoder.encode("add", [deployerAddress, address]), ); - return Transaction.fromContractWrapper({ contractWrapper: this, method: "multicall", @@ -79,15 +75,11 @@ export class ContractRegistry extends ContractWrapper { ): Promise> => { const deployerAddress = await this.getSignerAddress(); const contractEncoder = new ContractEncoder(this); - const encoded: string[] = await Promise.all( - contractAddresses.map(async (address) => - contractEncoder.encode("remove", [ - deployerAddress, - await resolveAddress(address), - ]), - ), + const encoded = ( + await Promise.all(contractAddresses.map((addr) => resolveAddress(addr))) + ).map((address) => + contractEncoder.encode("remove", [deployerAddress, address]), ); - return Transaction.fromContractWrapper({ contractWrapper: this, method: "multicall",