import React, { useContext, useEffect, useState } from 'react'; import { FormControl, InputLabel, ListItemText, MenuItem, Select, SelectChangeEvent, Typography } from '@mui/material'; import { AppContext } from '../context/main'; export type TPoolOption = 'balance' | 'locked'; export const TokenPoolSelector: FCWithChildren<{ disabled: boolean; onSelect: (pool: TPoolOption) => void }> = ({ disabled, onSelect, }) => { const [value, setValue] = useState('balance'); const { userBalance: { tokenAllocation, balance, fetchBalance, fetchTokenAllocation }, clientDetails, } = useContext(AppContext); const fetchBalances = async () => { await fetchBalance(); await fetchTokenAllocation(); }; useEffect(() => { fetchBalances(); }, []); useEffect(() => { onSelect(value); }, [value]); const handleChange = (e: SelectChangeEvent) => setValue(e.target.value as TPoolOption); return ( Token pool ); };