diff --git a/src/components/ItemTable/ItemTable.js b/src/components/ItemTable/ItemTable.js index 80ebc0a..2519a04 100644 --- a/src/components/ItemTable/ItemTable.js +++ b/src/components/ItemTable/ItemTable.js @@ -1,13 +1,16 @@ import React from "react"; import PropTypes from "prop-types"; import { useTable, useFilters, useFlexLayout, useSortBy } from "react-table"; -import { makeStyles, Table, TableBody, TableCell, TableHead, TableRow, TableContainer, TableSortLabel, - Paper, Grid, useTheme } from "@material-ui/core"; +import { + Table, TableBody, TableCell, TableHead, TableRow, TableContainer, + Paper, Grid, ButtonGroup, IconButton, makeStyles, useTheme +} from "@material-ui/core"; import { useHistory } from "react-router-dom"; import RelativeTime from "react-relative-time"; import ItemTableFilter from "../ItemTableFilter/" +import { ArrowDownward, ArrowUpward } from "@material-ui/icons"; -export default function ItemTable({ data, onRowClick }) { +export default function ItemTable({ data }) { const theme = useTheme(); const useStyles = makeStyles({ @@ -61,11 +64,11 @@ export default function ItemTable({ data, onRowClick }) { /> ); } - } + }, }, - useFilters, useFlexLayout, useSortBy + useFilters, useFlexLayout, useSortBy, ); - const { getTableProps, getTableBodyProps, headerGroups, rows, prepareRow } = tableInstance; + const { getTableProps, getTableBodyProps, headerGroups, rows, prepareRow, } = tableInstance; return ( @@ -81,14 +84,32 @@ export default function ItemTable({ data, onRowClick }) { {column.render("Filter")} - - + + { + const isSortedAsc = column.isSorted && !column.isSortedDesc; + isSortedAsc ? column.clearSortBy() : column.toggleSortBy(false) + })} + > + + + { + const isSortedDesc = column.isSorted && column.isSortedDesc; + isSortedDesc ? column.clearSortBy() : column.toggleSortBy(true) + })} + > + + + @@ -103,7 +124,8 @@ export default function ItemTable({ data, onRowClick }) { return ( history.push(`/${row.original.queue}/${row.original.number}`)} - className={classes.bandedRows} {...row.getRowProps()}> + className={classes.bandedRows} + {...row.getRowProps()} > {row.cells.map(cell => ( {cell.render("Cell")}