import classNames from 'classnames' import { useCallback, useMemo } from 'react' import NumberInput from 'components/NumberInput' import { formatValue } from 'utils/formatters' interface Props { label?: string max: BigNumber asset: Asset amount: BigNumber disabled: boolean maxButtonLabel: string assetUSDValue: BigNumber amountValueText?: string containerClassName?: string setAmount: (amount: BigNumber) => void onFocus?: () => void onBlur?: () => void } export default function AssetAmountInput(props: Props) { const { max, label, amount, asset, disabled, setAmount, assetUSDValue, maxButtonLabel, containerClassName, onFocus, onBlur, } = props const handleMaxClick = useCallback(() => { setAmount(max) }, [max, setAmount]) const maxValue = useMemo(() => { const val = max.shiftedBy(-asset.decimals) return val.isGreaterThan(1) ? val.toFixed(2) : val.toPrecision(2) }, [asset.decimals, max]) return (