UNPKG

@zerodev/sdk

Version:

A utility library for working with ERC-4337

22 lines 1.06 kB
import { concat, encodeAbiParameters, parseAbiParameters, zeroAddress } from "viem"; import { CALL_TYPE } from "../../../../../constants.js"; export const getEncodedPluginsData = async ({ enableSignature, userOpSignature, action, enableData, hook }) => { return concat([ hook?.getIdentifier() ?? zeroAddress, // hook address 20 bytes encodeAbiParameters(parseAbiParameters("bytes validatorData, bytes hookData, bytes selectorData, bytes enableSig, bytes userOpSig"), [ enableData, (await hook?.getEnableData()) ?? "0x", concat([ action.selector, action.address, action.hook?.address ?? zeroAddress, encodeAbiParameters(parseAbiParameters("bytes selectorInitData, bytes hookInitData"), // [TODO]: Add support for other call_type [CALL_TYPE.DELEGATE_CALL, "0x0000"]) ]), enableSignature, userOpSignature ]) ]); }; //# sourceMappingURL=getEncodedPluginsData.js.map