قائمة المحافظ المخصصة
قائمة المحافظ المخصصة
تخصيص قائمة المحافظ
يمكنك استيراد المحافظ الفردية من '@rainbow-me/rainbowkit/wallets'
بالإضافة إلى وظيفة connectorsForWallets
لبناء قائمتك الخاصة من المحافظ مع موصلاتها الضرورية. بهذه الطريقة لديك التحكم الكامل في المحافظ التي ترغب في عرضها، وبالترتيب الذي ترغب فيه.
على سبيل المثال، يمكنك اختيار إظهار 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',
}
);
يمكنك بعد ذلك تمرير الموصلات الخاصة بك إلى 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';
للتطبيقات اللامركزية (dApps) التي تدعم التطبيقات الآمنة للسماح للمستخدمين بالاتصال بسهولة بمخزنهم الآمن أو التوقيع المتعدد، قم بتضمين خيار safeWallet
للاتصالات التلقائية. سيظهر خيار Safe فقط في بيئة متصفح المحفظة الآمنة.
import { safeWallet } from '@rainbow-me/rainbowkit/wallets';
المحافظ التالية متوفرة عبر الكائن wallet
(ترتيب أبجدي).
import { oneInchWallet } from '@rainbow-me/rainbowkit/wallets';
import { argentWallet } from '@rainbow-me/rainbowkit/wallets';
import { backpackWallet } from '@rainbow-me/rainbowkit/wallets';
import { berasigWallet } from '@rainbow-me/rainbowkit/wallets';
import { bestWallet } from '@rainbow-me/rainbowkit/wallets';
import { binanceWallet } from '@rainbow-me/rainbowkit/wallets';
import { bitgetWallet } from '@rainbow-me/rainbowkit/wallets';
import { bifrostWallet } 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';
يدعم هذا الموصل لمحفظات التطبيقات والامتدادات الخاصة بعملة Coinbase بالإضافة إلى محفظة Coinbase الذكية على الويب.
يتوفر برهان preference
للتحكم فيما إذا كانت محفظة Smart Wallet مفعّلة ومتاحة للمستخدمين. تم توثيق السلوك القائم على البرهان هنا.
سيتم تفعيل المحفظة الذكية بشكل افتراضي مع all
في أوائل يونيو دون ترقية إضافية.
يمكن للمطورين اختبار المحفظة الذكية مع سلاسل sepolia
وbaseSepolia
اليوم عن طريق ضبط smartWalletOnly
وتضمين coinbaseWallet
في قائمة المحافظ كالتالي:
import { coinbaseWallet } from '@rainbow-me/rainbowkit/wallets';
coinbaseWallet.preference = 'smartWalletOnly';
import { coin98Wallet } from '@rainbow-me/rainbowkit/wallets';
import { compassWallet } from '@rainbow-me/rainbowkit/compassWallet';
import { coreWallet } 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';
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 { mewWallet } from '@rainbow-me/rainbowkit/wallets';
import { metaMaskWallet } 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 { rabbyWallet } from '@rainbow-me/rainbowkit/wallets';
import { rainbowWallet } from '@rainbow-me/rainbowkit/wallets';
import { ramperWallet } 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 { xdefiWallet } 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';
import { wigwamWallet } from '@rainbow-me/rainbowkit/wallets';
فيما يلي بعض الأمثلة على عرض محافظ مختلفة، بترتيبات مختلفة.
عرض ميتا ماسك مع محافظ الوقوع العامة.
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' },
);
عرض Rainbow و MetaMask و Coinbase بالإضافة إلى المحافظ العامة الأخرى.
import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import {
rainbowWallet,
metaMaskWallet,
coinbaseWallet,
walletConnectWallet,
} from '@rainbow-me/rainbowkit/wallets';
const connectors = connectorsForWallets(
[
{
groupName: 'Suggested',
wallets: [
rainbowWallet,
metaMaskWallet,
coinbaseWallet,
walletConnectWallet,
],
},
],
{ appName: 'RainbowKit App', projectId: 'YOUR_PROJECT_ID' },
);
تذكير: تحدد ترتيب مصفوفة wallets
الترتيب الذي سيتم فيه عرض المحافظ في واجهة المستخدم.
يمكنك استخدام مفتاح groupName
لتسمية مجموعات المحفظة المختلفة. هذا مفيد إذا كنت ترغب في التواصل مع المستخدمين حول المحافظ التي توصي بها، بالإضافة إلى المحافظ الأخرى المحتملة.
أوصي بRainbow و MetaMask، ولكن أقدم أيضاً Coinbase بالإضافة إلى المحافظ العامة الأخرى.
import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import {
rainbowWallet,
metaMaskWallet,
coinbaseWallet,
walletConnectWallet,
} from '@rainbow-me/rainbowkit/wallets';
const connectors = connectorsForWallets(
[
{
groupName: 'Recommended',
wallets: [rainbowWallet, metaMaskWallet],
},
{
groupName: 'Others',
wallets: [coinbaseWallet, walletConnectWallet],
},
],
{ appName: 'RainbowKit App', projectId: 'YOUR_PROJECT_ID' },
);