UNPKG

@biconomy/abstractjs

Version:

SDK for Biconomy integration with support for account abstraction, smart accounts, ERC-4337.

24 lines 1.08 kB
import { readContract } from "viem/actions"; import { erc7579Reads } from "../../clients/decorators/erc7579/index.js"; import { ownableReads } from "../../modules/validators/ownable/decorators/index.js"; export const GLOBAL_COMPOSABLE_READS = { ...erc7579Reads, ...ownableReads }; export const multichainRead = async (baseParams, parameters) => { const { account } = baseParams; const { type, parameters: parametersForType } = parameters; // Cast GLOBAL_COMPOSABLE_READS to ReadDictionary to ensure all read functions have a consistent type const readFunctions = GLOBAL_COMPOSABLE_READS; const results = await Promise.all(account.deployments.map(async (account) => { const chainId = account.client.chain?.id; if (!chainId) { throw new Error("Chain ID is not set"); } const [readData] = await readFunctions[type](account, parametersForType); return (await readContract(account.client, readData)); })); return results; }; export default multichainRead; //# sourceMappingURL=multichainRead.js.map