Utilities
createWalletClientFromWallet
Summary
The createWalletClientFromWallet
utility function will take any Wallet from the Dynamic context and return a Viem WalletClient with the Account and Chain set.
This is useful if you want to interact with a particular wallet via viem or for other 3rd party packages that require a WalletClient from viem.
Example:
Signing message via viem with the primary wallet
import { useDynamicContext, createWalletClientFromWallet } from "@dynamic-labs/sdk-react-core";
const App = () => {
const { primaryWallet } = useDynamicContext();
const signMessage = async () => {
if (!primaryWallet) return;
const walletClient = await createWalletClientFromWallet(primaryWallet);
// No account is required by viem here, because the account is already setup.
const signedMessage = await walletClient.signMessage({
message: 'example message'
})
console.log({ signedMessage })
}
return (
<button onClick={() => signMessage()}>
Sign message
</button>
)
}
From the wallet client returned by the createWalletClientFromWallet
, you can use it with other 3rd party packages that are viem compatible to interact with your primary wallet.
Was this page helpful?