맞춤형 지갑 목록
맞춤형 지갑 목록
지갑 목록 사용자 정의
필요한 커넥터들과 함께 '@rainbow-me/rainbowkit/wallets'에서 개별 지갑을 가져와 자신의 지갑 목록을 만들 수 있습니다. 이렇게 하면 표시할 지갑과 그 순서를 완전히 제어할 수 있습니다.
예를 들어 Rainbow와 일반 보조 지갑만 표시하도록 선택할 수 있습니다.
import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import {
rainbowWallet,
walletConnectWallet,
} from '@rainbow-me/rainbowkit/wallets';
const connectors = connectorsForWallets(
[
{
groupName: 'Recommended',
wallets: [rainbowWallet, walletConnectWallet],
},
],
{
appName: 'My RainbowKit App',
projectId: 'YOUR_PROJECT_ID',
}
);
그런 다음 커넥터를 Wagmi의 createConfig에 전달할 수 있습니다.
import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import { createConfig } from 'wagmi';
const connectors = connectorsForWallets();
const config = createConfig({
connectors,
{}
});
const queryClient = new QueryClient();
const App = () => (
<WagmiProvider config={config}>
<QueryClientProvider client={queryClient}>
<RainbowKitProvider {...etc}>
{}
</RainbowKitProvider>
</QueryClientProvider>
</WagmiProvider>
);
다음 지갑은 wallet 객체를 통해 제공됩니다.
다음 지갑은 특정 앱보다는 일반 연결 방법에 한정되어 있습니다. 결과적으로, 이러한 지갑은 항상 포함시키는 것이 좋습니다.
이 옵션은 목록에 제공되지 않은 WalletConnect 기반 지갑을 위한 보조 지갑 옵션입니다.
모든 WalletConnect 기반 지갑을 지원하기 위해 항상 이 지갑을 목록에 포함시키는 것이 좋습니다.
import { walletConnectWallet } from '@rainbow-me/rainbowkit/wallets';
이 옵션은 window.ethereum이 존재하지만 목록에 다른 지갑으로 제공되지 않은 시나리오를 위한 보조 지갑 옵션입니다. 보조 지갑이 필요하지 않거나 사용 가능한 인젝티드 지갑이 없을 경우 이 지갑은 자동으로 목록에서 숨겨질 것입니다.
모든 인젝티드 지갑을 지원하기 위해 항상 이 지갑을 목록에 포함시키는 것이 좋습니다.
import { injectedWallet } from '@rainbow-me/rainbowkit/wallets';
Safe Apps를 지원하여 사용자가 Safe 금고 또는 다중 서명에 쉽게 연결할 수 있도록 하려면, 자동 연결을 위한 safeWallet 옵션을 포함하세요. Safe 옵션은 Safe Wallet 브라우저 환경에서만 나타납니다.
import { safeWallet } from '@rainbow-me/rainbowkit/wallets';
다음 지갑은 wallet 객체를 통해 제공됩니다 (알파벳 순).
import { oneInchWallet } from '@rainbow-me/rainbowkit/wallets';
import { backpackWallet } from '@rainbow-me/rainbowkit/wallets';
이 지갑 커넥터는 베이스 계정을 지원하며, Coinbase 스마트 지갑의 진화된 형태입니다. 하위 계정 및 지출 권한과 같은 향상된 기능을 제공하며, 원활한 인증을 제공합니다.
구성 옵션은 베이스 계정 SDK 참고와 일치합니다.
import { baseAccount } from '@rainbow-me/rainbowkit/wallets';
baseAccount.preference = {
attribution: { auto: true },
};
baseAccount.preference = {
attribution: { dataSuffix: '0x1234567890abcdef' },
};
baseAccount.subAccounts = {
creation: 'on-connect',
defaultAccount: 'sub',
funding: 'spend-permissions',
};
baseAccount.paymasterUrls = {
[base.id]: 'https://api.developer.coinbase.com/rpc/v1/base/...',
};
import { berasigWallet } from '@rainbow-me/rainbowkit/wallets';
import { bestWallet } from '@rainbow-me/rainbowkit/wallets';
import { bifrostWallet } from '@rainbow-me/rainbowkit/wallets';
import { binanceWallet } from '@rainbow-me/rainbowkit/wallets';
import { bitgetWallet } from '@rainbow-me/rainbowkit/wallets';
import { bitskiWallet } from '@rainbow-me/rainbowkit/wallets';
import { bitverseWallet } from '@rainbow-me/rainbowkit/wallets';
import { bloomWallet } from '@rainbow-me/rainbowkit/wallets';
import { braveWallet } from '@rainbow-me/rainbowkit/wallets';
import { bybitWallet } from '@rainbow-me/rainbowkit/wallets';
import { coin98Wallet } from '@rainbow-me/rainbowkit/wallets';
import { compassWallet } from '@rainbow-me/rainbowkit/compassWallet';
import { coreWallet } from '@rainbow-me/rainbowkit/wallets';
import { ctrlWallet } from '@rainbow-me/rainbowkit/wallets';
import { dawnWallet } from '@rainbow-me/rainbowkit/wallets';
import { enkryptWallet } from '@rainbow-me/rainbowkit/wallets';
import { foxWallet } from '@rainbow-me/rainbowkit/wallets';
import { frameWallet } from '@rainbow-me/rainbowkit/wallets';
import { frontierWallet } from '@rainbow-me/rainbowkit/wallets';
import { gateWallet } from '@rainbow-me/rainbowkit/wallets';
이 스마트 지갑 커넥터는 keys.gemini.com에서 패스키를 통한 매끄러운 인증을 가능하게 합니다 – 다운로드, 확장 프로그램, 또는 API 키가 필요하지 않습니다. 기본 상태에서 바로 작동합니다.
appName 매개변수는 귀하의 dApp을 식별하기 위해 필요하며, appIcon은 연결 경험의 브랜딩을 위해 선택적으로 사용할 수 있습니다.
import { geminiWallet } from '@rainbow-me/rainbowkit/wallets';
const gemini = geminiWallet({
appName: 'My App',
appIcon: 'https://my-app.com/logo.png',
});
import { imTokenWallet } from '@rainbow-me/rainbowkit/wallets';
import { iopayWallet } from '@rainbow-me/rainbowkit/wallets';
import { kaiaWallet } from '@rainbow-me/rainbowkit/wallets';
import { kaikasWallet } from '@rainbow-me/rainbowkit/wallets';
import { krakenWallet } from '@rainbow-me/rainbowkit/wallets';
import { kresusWallet } from '@rainbow-me/rainbowkit/wallets';
import { ledgerWallet } from '@rainbow-me/rainbowkit/wallets';
import { magicEdenWallet } from '@rainbow-me/rainbowkit/wallets';
import { metaMaskWallet } from '@rainbow-me/rainbowkit/wallets';
import { mewWallet } from '@rainbow-me/rainbowkit/wallets';
import { novaWallet } from '@rainbow-me/rainbowkit/wallets';
import { okxWallet } from '@rainbow-me/rainbowkit/wallets';
import { omniWallet } from '@rainbow-me/rainbowkit/wallets';
import { oneKeyWallet } from '@rainbow-me/rainbowkit/wallets';
import { paraSwapWallet } from '@rainbow-me/rainbowkit/wallets';
import { phantomWallet } from '@rainbow-me/rainbowkit/wallets';
import { portoWallet } from '@rainbow-me/rainbowkit/wallets';
import { rabbyWallet } from '@rainbow-me/rainbowkit/wallets';
import { rainbowWallet } from '@rainbow-me/rainbowkit/wallets';
import { ramperWallet } from '@rainbow-me/rainbowkit/wallets';
import { readyWallet } from '@rainbow-me/rainbowkit/wallets';
import { roninWallet } from '@rainbow-me/rainbowkit/wallets';
import { safeheronWallet } from '@rainbow-me/rainbowkit/wallets';
import { tahoWallet } from '@rainbow-me/rainbowkit/wallets';
import { talismanWallet } from '@rainbow-me/rainbowkit/wallets';
import { tokenaryWallet } from '@rainbow-me/rainbowkit/wallets';
import { tokenPocketWallet } from '@rainbow-me/rainbowkit/wallets';
import { trustWallet } from '@rainbow-me/rainbowkit/wallets';
import { uniswapWallet } from '@rainbow-me/rainbowkit/wallets';
import { valoraWallet } from '@rainbow-me/rainbowkit/wallets';
import { wigwamWallet } from '@rainbow-me/rainbowkit/wallets';
import { xPortalWallet } from '@rainbow-me/rainbowkit/wallets';
import { zerionWallet } from '@rainbow-me/rainbowkit/wallets';
import { zilPayWallet } from '@rainbow-me/rainbowkit/wallets';
다른 순서로 다양한 지갑을 표시하는 몇 가지 예시가 있습니다.
일반 보조 지갑과 함께 MetaMask를 표시합니다.
import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import {
metaMaskWallet,
walletConnectWallet,
} from '@rainbow-me/rainbowkit/wallets';
const connectors = connectorsForWallets(
[
{
groupName: 'Recommended',
wallets: [metaMaskWallet, walletConnectWallet],
},
],
{ appName: 'RainbowKit App', projectId: 'YOUR_PROJECT_ID' },
);
레인보우, 메타마스크 및 베이스 계정을 일반적인 백업 지갑과 함께 표시합니다.
import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import {
rainbowWallet,
metaMaskWallet,
baseAccount,
walletConnectWallet,
} from '@rainbow-me/rainbowkit/wallets';
const connectors = connectorsForWallets(
[
{
groupName: 'Suggested',
wallets: [
rainbowWallet,
metaMaskWallet,
baseAccount,
walletConnectWallet,
],
},
],
{ appName: 'RainbowKit App', projectId: 'YOUR_PROJECT_ID' },
);
알림: wallets 배열의 순서는 UI에 지갑이 표시되는 순서를 정의합니다.
groupName 키를 사용하여 다양한 지갑 그룹의 이름을 지정할 수 있습니다. 이는 사용자가 추천하는 지갑 및 다른 가능한 지갑을 사용자에게 전달하려 할 때 유용합니다.
레인보우와 메타마스크를 추천하되, 일반적인 백업 지갑과 함께 베이스 계정도 제공합니다.
import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import {
rainbowWallet,
metaMaskWallet,
baseAccount,
walletConnectWallet,
} from '@rainbow-me/rainbowkit/wallets';
const connectors = connectorsForWallets(
[
{
groupName: 'Recommended',
wallets: [rainbowWallet, metaMaskWallet],
},
{
groupName: 'Others',
wallets: [baseAccount, walletConnectWallet],
},
],
{ appName: 'RainbowKit App', projectId: 'YOUR_PROJECT_ID' },
);