@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
30 lines • 1.22 kB
JavaScript
import { isBaseSmartAccountClient } from "../../client/isSmartAccountClient.js";
import { AccountNotFoundError } from "../../errors/account.js";
import { IncompatibleClientError } from "../../errors/client.js";
import { buildUserOperation } from "./buildUserOperation.js";
export function checkGasSponsorshipEligibility(client, args) {
const { account = client.account, overrides, context } = args;
if (!account) {
throw new AccountNotFoundError();
}
if (!isBaseSmartAccountClient(client)) {
throw new IncompatibleClientError("BaseSmartAccountClient", "checkGasSponsorshipEligibility", client);
}
return buildUserOperation(client, {
uo: args.uo,
account,
overrides,
context,
})
.then((userOperationStruct) => account.getEntryPoint().version === "0.6.0"
? userOperationStruct
.paymasterAndData !== "0x" &&
userOperationStruct
.paymasterAndData !== null
: userOperationStruct
.paymasterData !== "0x" &&
userOperationStruct
.paymasterData !== null)
.catch(() => false);
}
//# sourceMappingURL=checkGasSponsorshipEligibility.js.map