import React, { useEffect, useMemo, useState } from 'react'; import Sidebar from '../../partials/Sidebar'; import Header from '../../partials/Header'; import DropdownTransaction from '../../components/DropdownTransaction'; import TransactionsTable from '../../partials/finance/TransactionsTable'; import PaginationClassic from '../../components/PaginationClassic'; import { observer } from 'mobx-react-lite'; import TransactionPanel from '../../partials/finance/TransactionPanel'; import { Filters } from '../../components/Filters'; const filters = { 'View All': 'all', Voted: 'Unvote', Pending: 'Pending', }; const Delegates = observer(() => { const [sidebarOpen, setSidebarOpen] = useState(false); const [currentDelegate, setCurrentDelegate] = useState(null); const [currentFilter, setCurrentFilter] = useState('View All'); const [lockedFor, setLockedFor] = useState('Voiting'); const delegates = useMemo(() => { if (filters[currentFilter] === 'all') return store.delegates; return store.delegates.filter((e) => e.status === filters[currentFilter]); }, [store.delegates, currentFilter]); const lockedLabel = ( lockedFor === 'Voiting' ? Object.values(store.accountSentVotes) : Object.values(store.accountLockedVotesCanReturn) .flat() .map((e) => e.amount) ) .reduce((sum, e) => sum + e, 0n) .toString(); useEffect(() => { store.fetchDelegates(0); }, []); return (