use deposit
const { deposit, isPending, isSuccess, hash } = useDeposit({ vault: 'yoETH' })Usage
import { useDeposit } from '@yo-protocol/react'
import { parseEther } from 'viem'
function DepositButton() {
const {
deposit,
isPending,
isSuccess,
hash,
error,
reset,
} = useDeposit({
vault: 'yoETH',
slippageBps: 50,
onSubmitted: (hash) => console.log('Deposited:', hash),
onError: (err) => console.error(err),
})
return (
<div>
<button onClick={() => deposit(parseEther('0.1'))} disabled={isPending}>
{isPending ? 'Depositing...' : 'Deposit 0.1 ETH'}
</button>
{isSuccess && <p>Confirmed! Tx: {hash}</p>}
{error && (
<p>
Error: {error.message}
<button onClick={reset}>Dismiss</button>
</p>
)}
</div>
)
}Options
Option
Type
Default
Description
Return Value
Field
Type
Description
Behavior
Behavior
Detail