UNPKG

@alchemy/aa-core

Version:

viem based SDK that enables interactions with ERC-4337 Smart Accounts. ABIs are based off the definitions generated in @account-abstraction/contracts

37 lines 2.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.middlewareActions = void 0; const viem_1 = require("viem"); const userop_js_1 = require("../utils/userop.js"); const feeEstimator_js_1 = require("./defaults/feeEstimator.js"); const gasEstimator_js_1 = require("./defaults/gasEstimator.js"); const paymasterAndData_js_1 = require("./defaults/paymasterAndData.js"); const userOpSigner_js_1 = require("./defaults/userOpSigner.js"); const noopMiddleware_js_1 = require("./noopMiddleware.js"); const middlewareActions = (overrides) => (client) => ({ middleware: { customMiddleware: overrides.customMiddleware ?? noopMiddleware_js_1.noopMiddleware, dummyPaymasterAndData: overrides.paymasterAndData?.dummyPaymasterAndData ? async (struct, { account }) => { const data = overrides.paymasterAndData.dummyPaymasterAndData(); const paymasterOverrides = account.getEntryPoint().version === "0.7.0" ? (0, viem_1.isHex)(data) ? (0, userop_js_1.parsePaymasterAndData)(data) : data : { paymasterAndData: (0, viem_1.isHex)(data) ? data : (0, userop_js_1.concatPaymasterAndData)(data), }; return { ...struct, ...paymasterOverrides }; } : paymasterAndData_js_1.defaultPaymasterAndData, feeEstimator: overrides.feeEstimator ?? (0, feeEstimator_js_1.defaultFeeEstimator)(client), gasEstimator: overrides.gasEstimator ?? (0, gasEstimator_js_1.defaultGasEstimator)(client), paymasterAndData: overrides.paymasterAndData?.paymasterAndData ?? paymasterAndData_js_1.defaultPaymasterAndData, userOperationSimulator: overrides.userOperationSimulator ?? noopMiddleware_js_1.noopMiddleware, signUserOperation: overrides.signUserOperation ?? userOpSigner_js_1.defaultUserOpSigner, }, }); exports.middlewareActions = middlewareActions; //# sourceMappingURL=actions.js.map