UNPKG

viem

Version:

TypeScript Interface for Ethereum

30 lines 1.26 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getL2Output = void 0; const readContract_js_1 = require("../../../actions/public/readContract.js"); const abis_js_1 = require("../abis.js"); async function getL2Output(client, parameters) { const { chain = client.chain, l2BlockNumber, targetChain } = parameters; const l2OutputOracleAddress = (() => { if (parameters.l2OutputOracleAddress) return parameters.l2OutputOracleAddress; if (chain) return targetChain.contracts.l2OutputOracle[chain.id].address; return Object.values(targetChain.contracts.l2OutputOracle)[0].address; })(); const outputIndex = await (0, readContract_js_1.readContract)(client, { address: l2OutputOracleAddress, abi: abis_js_1.l2OutputOracleAbi, functionName: 'getL2OutputIndexAfter', args: [l2BlockNumber], }); const output = await (0, readContract_js_1.readContract)(client, { address: l2OutputOracleAddress, abi: abis_js_1.l2OutputOracleAbi, functionName: 'getL2Output', args: [outputIndex], }); return { outputIndex, ...output }; } exports.getL2Output = getL2Output; //# sourceMappingURL=getL2Output.js.map