EIP-7702 Support

Greg

Features 🚀

EIP-7702 Authorization Lists (Beta)

We've added beta support for EIP-7702 authorization lists. You can now construct and send 7702 authorizations with the following functions:

import {
signAuthorization,
prepareTransaction,
sendTransaction,
} from "thirdweb";
const authorization = await signAuthorization({
request: {
address: "0x...",
chainId: 911867,
nonce: 100n,
},
account: myAccount,
});
// Preparing a transaction with authorization
const transaction = prepareTransaction({
chain: chain,
client: client,
value: 100n,
to: recipient,
authorizationList: [authorization],
});
// Sending the authorization transaction
const result = await sendTransaction({
account,
transaction,
});

Manual Smart Account Deployment

Added deploySmartAccount function to explicitly deploy smart account contracts.

import { deploySmartAccount } from "thirdweb";
const account = await deploySmartAccount({
smartAccount,
chain,
client,
accountContract,
});

Improvements 🔧

Smart Account Signatures

Deployed smart accounts now use the legacy signature behavior (ERC-1271) rather than ERC-6492 pre-deploy signatures.