From 83c8b7bd0db63f3b463f360d48dd3e37afbbeb98 Mon Sep 17 00:00:00 2001 From: james-a-morris Date: Mon, 4 Nov 2024 14:36:35 -0500 Subject: [PATCH] feat(multicall): add for alephzero and zksync Signed-off-by: james-a-morris --- api/_constants.ts | 4 ++++ api/_utils.ts | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/api/_constants.ts b/api/_constants.ts index 967368a3c..0ed9fbb79 100644 --- a/api/_constants.ts +++ b/api/_constants.ts @@ -181,6 +181,10 @@ export const ENABLED_POOLS_UNDERLYING_TOKENS = [ export const SECONDS_PER_YEAR = 365 * 24 * 60 * 60; export const MULTICALL3_ADDRESS = "0xcA11bde05977b3631167028862bE2a173976CA11"; +export const MULTICALL3_ADDRESS_OVERRIDES = { + [CHAIN_IDs.ALEPH_ZERO]: "0x3CA11702f7c0F28e0b4e03C31F7492969862C569", + [CHAIN_IDs.ZK_SYNC]: "0xF9cda624FBC7e059355ce98a31693d299FACd963", +}; export const DEFI_LLAMA_POOL_LOOKUP: Record = { "0x36Be1E97eA98AB43b4dEBf92742517266F5731a3": diff --git a/api/_utils.ts b/api/_utils.ts index 208eab704..89b36ba8b 100644 --- a/api/_utils.ts +++ b/api/_utils.ts @@ -46,6 +46,7 @@ import { DOMAIN_CALLDATA_DELIMITER, EXTERNAL_POOL_TOKEN_EXCHANGE_RATE, MULTICALL3_ADDRESS, + MULTICALL3_ADDRESS_OVERRIDES, SECONDS_PER_YEAR, TOKEN_SYMBOLS_MAP, defaultRelayerAddressOverride, @@ -1621,8 +1622,9 @@ export async function callViaMulticall3( }[], overrides: ethers.CallOverrides = {} ): Promise { + const chainId = provider.network.chainId; const multicall3 = new ethers.Contract( - MULTICALL3_ADDRESS, + MULTICALL3_ADDRESS_OVERRIDES[chainId] ?? MULTICALL3_ADDRESS, MINIMAL_MULTICALL3_ABI, provider );