Rainbow logo
RainbowKit
2.2.6

Перехід на WalletConnect v2

Підготуйте ваш dApp до оновлення до v2 за 5 хвилин або менше

Протокол WalletConnect v1 буде вимкнено 28 червня 2023 року, і RainbowKit допоможе вам зробити перехід надзвичайно простим.

Підтримка WalletConnect v2 тепер стандартна в RainbowKit, без змін, які можуть порушити роботу. Просто оновіть і зверніться до посібника нижче для додаткових деталей.

WalletConnect - це протокол, який дозволяє користувачам підключати свої мобільні гаманці до вашого dApp і є важливою основою RainbowKit. Останній випуск WalletConnect v2 приносить ряд важливих оновлень, щоб зробити досвід гаманця-dApp ще кращим.

З версією v2 ваші користувачі тепер можуть одночасно підключатися до декількох мереж, тому ви можете забути про ручне перемикання мереж. Він також розширює підтримку для більшої кількості мереж і приносить покращення, які роблять вхід з Ethereum ще швидшим.

Якщо ви вже слідували інструкціям по міграції для RainbowKit 0.12.x і 1.0.x, то ви майже завершили! Просто оновіть до останнього патч-релізу і спробуйте.

RainbowKit увімкнув WalletConnect v2 за замовчуванням з версіями 0.12.15 та 1.0.2. Ми продовжуємо підтримку 0.12.x на випадок, якщо ваш dApp ще не оновлено до wagmi v1 та RainbowKit v1.

1. Оновлення залежностей

npm i @rainbow-me/rainbowkit@^1.0.2 wagmi@^1.2

Якщо ви використовуєте версію RainbowKit до 0.12.x або 1.0.x, просто слідуйте Інструкціям по міграції, щоб оновитися.

Рекомендується, щоб dApp на базі 0.12.x почали оновлення до wagmi v1, оскільки покращення стабільності для WalletConnect v2 будуть включені лише у майбутніх версіях wagmi.

2. Надання projectId

Кожен dApp, який залежить від WalletConnect, тепер повинен отримати projectId з WalletConnect Cloud. Це абсолютно безкоштовно і займає лише кілька хвилин.

Надайте свій projectId до getDefaultWallets та індивідуальних конекторів гаманців RainbowKit наступним чином:

const projectId = 'YOUR_PROJECT_ID';
const { wallets } = getDefaultWallets({
appName: 'My RainbowKit App',
projectId,
chains,
});
const connectors = connectorsForWallets([
...wallets,
{
groupName: 'Other',
wallets: [
argentWallet({ projectId, chains }),
trustWallet({ projectId, chains }),
ledgerWallet({ projectId, chains }),
],
},
]);

RainbowKit є типо-безпечним і попередить вас, коли projectId відсутній. Зверніться до наших прикладів, щоб побачити v2 в дії:

Додаткові підтримувані параметри можна знайти в документації.