'use client';
import { getTruncatedAmount } from '@/earn/utils/getTruncatedAmount';
import { Skeleton } from '@/internal/components/Skeleton';
import { useCallback, useMemo } from 'react';
import { useAccount } from 'wagmi';
import type { WithdrawBalanceProps } from '../types';
import { EarnBalance } from './EarnBalance';
import { useEarnContext } from './EarnProvider';
export function WithdrawBalance({ className }: WithdrawBalanceProps) {
const {
depositedBalance,
depositedBalanceStatus: status,
setWithdrawAmount,
vaultToken,
} = useEarnContext();
const { address } = useAccount();
const handleMaxPress = useCallback(() => {
if (depositedBalance) {
setWithdrawAmount(depositedBalance);
}
}, [depositedBalance, setWithdrawAmount]);
const balance = useMemo(() => {
if (!depositedBalance) {
return '0';
}
return getTruncatedAmount(depositedBalance.toString(), 4);
}, [depositedBalance]);
const title = useMemo(() => {
if (!address) {
return 'Wallet not connected';
}
if (!vaultToken) {
return