Panduan Migrasi
Migrasi RainbowKit
Kebergantungan peer wagmi dan viem telah mencapai 2.x.x dengan perubahan besar.
Ikut langkah di bawah untuk beralih.
1. Naik taraf RainbowKit, wagmi, dan viem ke versi terkini
2. Pasang kebergantungan rakan sebaya @tanstack/react-query
Dengan Wagmi v2, TanStack Query kini merupakan kebergantungan peer yang diperlukan.
Pasang ia dengan arahan berikut:
3. Naik taraf konfigurasi RainbowKit dan Wagmi anda
4. Semak perubahan besar dalam wagmi dan viem
Jika anda menggunakan wagmi hooks dan viem actions dalam dApp anda, anda perlu mengikuti panduan beralih untuk v2:
1. Kelakuan yang dipertingkatkan untuk dompet EIP-6963
Dompet yang menyokong standard sambungan EIP-6963 yang baru (termasuk Rainbow, MetaMask dan lain-lain) kini secara automatik akan dipaparkan dalam seksyen Dipasang semasa pengalaman Menghubungkan Wallet. Ini memastikan bahawa pengguna sentiasa dapat mencari dompet kegemaran mereka dan menghubungkan ke dApps tanpa konflik atau butang gantian.
Pembangun terus mempunyai kawalan penuh ke atas Senarai Dompet Khusus untuk menekankan dompet yang disukai untuk pengguna akhir. Adalah digalakkan agar anda terus menyertakan injectedWallet dan walletConnectWallet dalam senarai anda untuk menyokong semua platform.
2. Konfigurasi Wagmi dengan getDefaultConfig
API baru ini memudahkan pengalaman konfigurasi dan menggantikan keperluan untuk menggunakan secara langsung createConfig Wagmi. Konfigurasi rangkaian diperbaharui, termasuk penyedia awam yang disimpulkan untuk transports.
Senarai dompet lalai akan dipaparkan secara automatik, menghapuskan keperluan untuk menggunakan getDefaultWallets dan connectorsForWallets.
Anda boleh membuat Senarai Dompet Khusus dengan memajukan penyambung Dompet import atau Khusus ke wallets. Memulakan penyambung dompet dan memajukan projectId dan chains tidak lagi diperlukan.
3. RainbowKitProvider
Anda tidak lagi perlu menyampaikan chains kepada <RainbowKitProvider>.
4. Rangkaian Khusus
Jenis Chain telah berubah selaras dengan Wagmi v2, dan terus menyokong metadata iconUrl dan iconBackground RainbowKit.
Contoh dengan getDefaultConfig:
Contoh dengan createConfig:
5. Dompet Khusus
Penyambung dompet RainbowKit telah mengalami perubahan yang ketara untuk menyokong Wagmi v2. Rujuk dokumen yang dikemas kini dan penyambung contoh untuk menaik taraf sebarang Penyambung Dompet Khusus dalam dApp anda.
Penyambung dompet kini juga menyokong standard EIP-6963 dengan prop rdns. Pastikan bahawa ini diisi untuk mengelakkan rujukan berganda kepada dompet yang menyokong EIP-6963 dalam senarai dompet anda.
Kebergantungan rakan sebaya wagmi telah dikemaskini kepada 1.x.x.
Ikut langkah di bawah untuk beralih.
1. Naik taraf RainbowKit dan wagmi ke versi terkini
2. Pasang kebergantungan rakan sebaya viem
wagmi v1 memerlukan kebergantungan rakan sebaya viem. Pasang dengan arahan berikut:
3. Pastikan keserasian bundler dan polyfill
Rujuk sampel Next.js Webpack Config kami untuk bimbingan konfigurasi projek anda.
Panduan kerangka tambahan untuk Vite dan Remix tersedia di sini.
4. Semak perubahan besar dalam wagmi
Jika anda menggunakan cangkuk wagmi dalam aplikasi anda, anda perlu mengikuti panduan migrasi wagmi ke v1.
Anda boleh melihat panduan migrasi mereka di sini.
Kebergantungan rakan sebaya wagmi telah dikemaskini ke 0.12.x.
RainbowKit telah mengadopsi penyambung WalletConnectLegacyConnector dalam wagmi untuk meneruskan sokongan WalletConnect v1. Sokongan untuk WalletConnect v2 dan WalletConnectConnector akan tersedia sebagai pelepasan tampalan tanpa perubahan besar.
Dompet akan ditekan secara automatik dalam pelepasan masa depan.
Setiap dApp kini mesti menyediakan projectId WalletConnect Cloud untuk membolehkan WalletConnect v2. Ini mesti disiapkan sebelum pelayan jambatan WalletConnect v1 ditutup pada 28 Jun, 2023. RainbowKit akan lebih suka v1 untuk semua dompet jika projectId tidak disebutkan.
Ikut langkah di bawah untuk beralih.
Setiap dApp yang bergantung pada WalletConnect kini perlu mendapatkan projectId dari WalletConnect Cloud. Ini adalah percuma sepenuhnya dan hanya mengambil masa beberapa minit sahaja.
Sediakan projectId kepada getDefaultWallets dan penyambung dompet RainbowKit individu seperti berikut:
Kebergantungan rakan sebaya wagmi telah dikemaskini ke 0.11.x.
Ikut langkah di bawah untuk beralih.
Jika anda menggunakan cangkuk wagmi dalam aplikasi anda, anda perlu menyemak jika aplikasi anda terjejas oleh perubahan besar dalam wagmi.
Anda boleh melihat panduan migrasi mereka di sini.
Kebergantungan rakan sebaya wagmi telah dikemaskini ke 0.10.x.
Ikut langkah di bawah untuk beralih.
Jika anda menggunakan cangkuk wagmi dalam aplikasi anda, anda perlu menyemak jika aplikasi anda terjejas oleh perubahan besar dalam wagmi.
Anda boleh melihat panduan migrasi mereka di sini.
Kebergantungan rakan sebaya wagmi telah dikemaskini ke 0.9.x.
Ikut langkah di bawah untuk beralih.
Jika anda menggunakan cangkuk wagmi dalam aplikasi anda, anda perlu menyemak jika aplikasi anda terjejas oleh perubahan besar dalam wagmi.
Anda boleh melihat panduan migrasi mereka di sini.
Kebergantungan rakan sebaya wagmi telah dikemaskini ke 0.8.x.
Ikut langkah di bawah untuk beralih.
Jika anda menggunakan cangkuk wagmi dalam aplikasi anda, anda perlu menyemak jika aplikasi anda terjejas oleh perubahan besar dalam wagmi.
Anda boleh melihat panduan migrasi mereka di sini.
Jika anda membuat senarai dompet khsusus, anda kini mesti mengimport setiap dompet secara individu untuk mengurangkan saiz bundel. Perhatikan bahawa kerana dompet tidak lagi dilampirkan melalui objek wallet, semua dompet sekarang mempunyai akhiran Wallet.
Perhatikan juga bahawa lapisan keserasian kebelakang Steakwallet telah dikeluarkan. Omni harus digunakan sebaliknya.
RainbowKit telah mengemaskini kebergantungan rakan sebaya wagmi ke 0.5.x.
Ikut langkah di bawah untuk beralih.
Naik taraf RainbowKit dan wagmi ke versi terkini
Jika anda menggunakan cangkuk wagmi dalam aplikasi anda, anda perlu menyemak jika aplikasi anda terjejas oleh perubahan besar dalam wagmi.
Anda boleh melihat panduan migrasi mereka di sini.
Mengeluarkan parameter chainId dari createConnector pada jenis Wallet.
Perhatikan bahawa semua dompet terbina dalam menggunakan API baru. Kebanyakan pengguna tidak akan terjejas. Perubahan ini hanya mempengaruhi pengguna yang telah mencipta/menggunakan dompet khusus.
Jika anda sebelum ini memperoleh URL RPC dari chainId pada createConnector, anda kini boleh mengeluarkan logik tersebut kerana wagmi kini mengendalikan URL RPC secara dalaman semasa digunakan dengan configureChains.
RainbowKit telah mengemaskini kebergantungan rakan sebaya wagmi ke ^0.4.
Ikut langkah di bawah untuk beralih.
Naik taraf RainbowKit dan wagmi ke versi terkini
Import configureChains dari wagmi dan bukan RainbowKit:
RainbowKit tidak lagi mengeksport API apiProvider. Gantikannya dengan penyedia yang diingini dari wagmi.
Import alchemyProvider dari wagmi/providers/alchemy.
Import infuraProvider dari wagmi/providers/infura.
Import jsonRpcProvider dari wagmi/providers/jsonRpc.
Import publicProvider dari wagmi/providers/public.
Namakan semula WagmiProvider kepada WagmiConfig.
Dan anda selesai! 🌈