@abstract-foundation/agw-thirdweb
v0.1.0
Published
Abstract Global Wallet adapter for the thirdweb Connect SDK
Downloads
242
Readme
@abstract-foundation/agw-thirdweb
Abstract Global Wallet (AGW) adapter for the thirdweb Connect SDK.
Abstract Global Wallet (AGW)
Abstract Global Wallet (AGW) is a cross-application smart contract wallet that users can use to interact with any application built on Abstract, powered by Abstract's native account abstraction.
Installation
npm install @abstract-foundation/agw-thirdweb thirdwebthirdweb and viem are peer dependencies — install whichever versions are compatible with your app.
Quick Start
import { createThirdwebClient } from "thirdweb";
import { ConnectButton } from "thirdweb/react";
import { abstractWallet } from "@abstract-foundation/agw-thirdweb";
const client = createThirdwebClient({ clientId: "YOUR_CLIENT_ID" });
export function Connect() {
return <ConnectButton client={client} wallets={[abstractWallet()]} />;
}abstractWallet() returns a thirdweb Wallet that can be passed to any surface that accepts a Wallet — ConnectButton, ConnectEmbed, useConnect, etc.
API
abstractWallet(options?)
Creates a thirdweb Wallet backed by Abstract Global Wallet.
function abstractWallet(options?: AbstractWalletOptions): Wallet;Options
| Option | Type | Description |
| --- | --- | --- |
| customPaymasterHandler | CustomPaymasterHandler | Optional handler that returns paymaster + paymaster input for sponsoring user transactions. See @abstract-foundation/agw-client for the handler signature. |
Example: sponsoring gas
import type { CustomPaymasterHandler } from "@abstract-foundation/agw-client";
import { abstractWallet } from "@abstract-foundation/agw-thirdweb";
const sponsorGas: CustomPaymasterHandler = async () => ({
paymaster: "0xYourPaymasterAddress",
paymasterInput: "0x",
});
const wallet = abstractWallet({ customPaymasterHandler: sponsorGas });Relationship to @abstract-foundation/agw-react
Prior to @abstract-foundation/[email protected], this adapter shipped as the @abstract-foundation/agw-react/thirdweb subpath. It now lives in a dedicated package to keep thirdweb's transitive dependency tree out of applications that don't use it.
Migration:
- import { abstractWallet } from "@abstract-foundation/agw-react/thirdweb";
+ import { abstractWallet } from "@abstract-foundation/agw-thirdweb";No other changes are required — the abstractWallet() API is identical.
Documentation
For full AGW documentation, see the Abstract Global Wallet documentation.
