mango-v4-ui/hooks/useSolBalance.ts

24 lines
744 B
TypeScript
Raw Normal View History

2022-11-16 17:53:33 -08:00
import { TokenInstructions } from '@project-serum/serum'
import { useWallet } from '@solana/wallet-adapter-react'
2022-11-16 17:53:33 -08:00
import mangoStore from '@store/mangoStore'
import { useMemo } from 'react'
2022-11-17 20:43:23 -08:00
import { MIN_SOL_BALANCE } from 'utils/constants'
2022-11-16 17:53:33 -08:00
export default function useSolBalance() {
const walletTokens = mangoStore((s) => s.wallet.tokens)
const { connected } = useWallet()
2022-11-17 20:43:23 -08:00
const solBalance: number = useMemo(() => {
return connected
? walletTokens.find((t) =>
2023-07-21 11:47:53 -07:00
t.mint.equals(TokenInstructions.WRAPPED_SOL_MINT),
)?.uiAmount || 0
: 100
2022-11-16 17:53:33 -08:00
}, [walletTokens])
2022-11-17 20:43:23 -08:00
const maxSolDeposit: number = useMemo(() => {
return solBalance - MIN_SOL_BALANCE
}, [solBalance])
return { solBalance, maxSolDeposit }
2022-11-16 17:53:33 -08:00
}