Skip to content

<WalletProvider>

<WalletProvider> é o context provider React para a carteira embutida.

Exemplo

tsx
// src/index.tsx
import { createWallet } from '@money-sdk/core'
import { WalletProvider } from '@money-sdk/react'

const wallet = createWallet(/* ... */)

function Root() {
  return (
    <WalletProvider wallet={wallet}>
      <App />
    </WalletProvider>
  )
}

Referência

props.wallet

A carteira inicializada, conforme retornada por createWallet.

Hooks

Os hooks a seguir são exportados de @money-sdk/react e devem ser chamados dentro de um <WalletProvider>:

useWallet()

Retorna a instância Wallet passada para o provider. Use este hook quando precisar chamar métodos como getProvider, disconnect ou experimental_expand fora do widget.

tsx
import { useWallet } from '@money-sdk/react'

function ConnectButton() {
  const wallet = useWallet()

  const handleClick = async () => {
    const solana = await wallet.getProvider('solana')
    await solana?.connect()
  }

  return <button onClick={handleClick}>Connect</button>
}

useConnected()

Retorna um booleano indicando se o usuário conectou a carteira ao seu dApp. Útil para condicionar elementos da UI:

tsx
import { useConnected } from '@money-sdk/react'

function App() {
  const connected = useConnected()

  return connected ? <Dashboard /> : <Landing />
}

useObservable(observable)

Hook de baixo nível para se inscrever em um observable interno exposto pela instância da carteira. Em geral, você não precisará dele diretamente — prefira useConnected para o estado de conexão.