@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
55 lines • 2.19 kB
JavaScript
import {} from "viem";
import { arbitrum, arbitrumGoerli, arbitrumSepolia, base, baseGoerli, baseSepolia, fraxtal, fraxtalSepolia, goerli, mainnet, optimism, optimismGoerli, optimismSepolia, polygon, polygonAmoy, polygonMumbai, sepolia, zora, zoraSepolia, } from "../chains/index.js";
import { defaultEntryPointVersion } from "../entrypoint/index.js";
import { DefaultFactoryNotDefinedError } from "../errors/account.js";
export const getDefaultSimpleAccountFactoryAddress = (chain, version = defaultEntryPointVersion) => {
switch (version) {
case "0.6.0":
switch (chain.id) {
case mainnet.id:
case polygon.id:
case polygonAmoy.id:
case optimism.id:
case optimismSepolia.id:
case arbitrum.id:
case arbitrumSepolia.id:
case base.id:
case baseGoerli.id:
case baseSepolia.id:
case fraxtal.id:
case fraxtalSepolia.id:
case zora.id:
case zoraSepolia.id:
return "0x15Ba39375ee2Ab563E8873C8390be6f2E2F50232";
case sepolia.id:
case goerli.id:
case polygonMumbai.id:
case optimismGoerli.id:
case arbitrumGoerli.id:
return "0x9406Cc6185a346906296840746125a0E44976454";
default:
break;
}
break;
case "0.7.0":
switch (chain.id) {
default:
return "0x91E60e0613810449d098b0b5Ec8b51A0FE8c8985";
}
}
throw new DefaultFactoryNotDefinedError("SimpleAccount", chain, version);
};
export const minPriorityFeePerBidDefaults = new Map([
[arbitrum.id, 10000000n],
[arbitrumGoerli.id, 10000000n],
[arbitrumSepolia.id, 10000000n],
]);
export const getDefaultUserOperationFeeOptions = (chain) => {
return {
maxPriorityFeePerGas: {
min: minPriorityFeePerBidDefaults.get(chain.id) ?? 100000000n,
multiplier: 1.33,
},
};
};
//# sourceMappingURL=defaults.js.map