import { Table, Tbody, Tr, Th, Link } from '@chakra-ui/react'; import React from 'react'; import type { Validator, ValidatorsSorting, ValidatorsSortingField, ValidatorsSortingValue } from 'types/api/validators'; import { ACTION_BAR_HEIGHT_DESKTOP } from 'ui/shared/ActionBar'; import IconSvg from 'ui/shared/IconSvg'; import getNextSortValue from 'ui/shared/sort/getNextSortValue'; import { default as Thead } from 'ui/shared/TheadSticky'; import { SORT_SEQUENCE } from './utils'; import ValidatorsTableItem from './ValidatorsTableItem'; interface Props { data: Array; sort: ValidatorsSortingValue | undefined; setSorting: (val: ValidatorsSortingValue | undefined) => void; isLoading?: boolean; } const ValidatorsTable = ({ data, sort, setSorting, isLoading }: Props) => { const sortIconTransform = sort?.includes('asc' as ValidatorsSorting['order']) ? 'rotate(-90deg)' : 'rotate(90deg)'; const onSortToggle = React.useCallback((field: ValidatorsSortingField) => () => { const value = getNextSortValue(SORT_SEQUENCE, field)(sort); setSorting(value); }, [ sort, setSorting ]); return ( { data.map((item, index) => ( )) }
Validator’s address { sort?.includes('state') && } Status { sort?.includes('blocks_validated') && } Blocks
); }; export default React.memo(ValidatorsTable);