import { FC, useCallback, useState } from 'react' import state from '../state' import { Flex, Input, Button } from '.' import fetchAccountInfo from '../utils/accountInfo' import { useSnapshot } from 'valtio' interface AccountSequenceProps { address?: string } const AccountSequence: FC = ({ address }) => { const { accounts } = useSnapshot(state) const account = accounts.find(acc => acc.address === address) const [isLoading, setIsLoading] = useState(false) const setSequence = useCallback( (sequence: number) => { const acc = state.accounts.find(acc => acc.address == address) if (!acc) return acc.sequence = sequence }, [address] ) const handleUpdateSequence = useCallback( async (silent?: boolean) => { if (!account) return setIsLoading(true) const info = await fetchAccountInfo(account.address, { silent }) if (info) { setSequence(info.Sequence) } setIsLoading(false) }, [account, setSequence] ) const disabled = !account return ( ) } export default AccountSequence