Rainbow logo
RainbowKit
2.2.4

Benutzerdefinierte Wallets

Benutzerdefinierte Wallets

Erstellen Sie ein benutzerdefiniertes Wallet

Hinweis: Diese API ist instabil und wird sich wahrscheinlich in naher Zukunft ändern. Wir werden im Laufe der Zeit weitere integrierte Wallets hinzufügen. Lassen Sie es uns wissen, wenn es bestimmte Wallets gibt, die Sie interessieren.

Der Wallet-Funktionstyp wird bereitgestellt, um Ihnen zu helfen, Ihre eigenen benutzerdefinierten Wallets zu definieren. Die folgenden Eigenschaften können auf dem Rückgabewert Ihrer Wallet-Funktion konfiguriert werden:

PropTypeDefault
id*string
name*string
rdnsstring
shortNamestring | undefined
iconUrl*string | (() => Promise<string>)
iconAccentstring
iconBackground*string
installedboolean | undefined
downloadUrlsDownloadUrls | undefined
hidden(args) => boolean | undefined
createConnector*RainbowKitConnector
mobileobject
desktopobject
qrCodeobject
extensionobject
createConnector*(details: WalletDetailsParams) => CreateConnectorFn
PropTypeDefault
androidstring
iosstring
mobilestring
qrCodestring
chromestring
edgestring
firefoxstring
operastring
safaristring
browserExtensionstring

Zum Beispiel, um ein benutzerdefiniertes Wallet mit WalletConnect zu erstellen:

import { Wallet, getWalletConnectConnector } from '@rainbow-me/rainbowkit';
export interface MyWalletOptions {
projectId: string;
}
export const rainbow = ({ projectId }: MyWalletOptions): Wallet => ({
id: 'my-wallet',
name: 'My Wallet',
iconUrl: 'https://my-image.xyz',
iconBackground: '#0c2f78',
downloadUrls: {
android: 'https://play.google.com/store/apps/details?id=my.wallet',
ios: 'https://apps.apple.com/us/app/my-wallet',
chrome: 'https://chrome.google.com/webstore/detail/my-wallet',
qrCode: 'https://my-wallet/qr',
},
mobile: {
getUri: (uri: string) => uri,
},
qrCode: {
getUri: (uri: string) => uri,
instructions: {
learnMoreUrl: 'https://my-wallet/learn-more',
steps: [
{
description:
'We recommend putting My Wallet on your home screen for faster access to your wallet.',
step: 'install',
title: 'Open the My Wallet app',
},
{
description:
'After you scan, a connection prompt will appear for you to connect your wallet.',
step: 'scan',
title: 'Tap the scan button',
},
],
},
},
extension: {
instructions: {
learnMoreUrl: 'https://my-wallet/learn-more',
steps: [
{
description:
'We recommend pinning My Wallet to your taskbar for quicker access to your wallet.',
step: 'install',
title: 'Install the My Wallet extension',
},
{
description:
'Be sure to back up your wallet using a secure method. Never share your secret phrase with anyone.',
step: 'create',
title: 'Create or Import a Wallet',
},
{
description:
'Once you set up your wallet, click below to refresh the browser and load up the extension.',
step: 'refresh',
title: 'Refresh your browser',
},
],
},
},
createConnector: getWalletConnectConnector({ projectId }),
});

Sie können dann Ihr benutzerdefiniertes Wallet in die Wallet-Liste aufnehmen.