All files / components/Reports ReportTable.jsx

100% Statements 59/59
100% Branches 9/9
100% Functions 5/5
100% Lines 59/59

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 661x 1x   1x 1x 12x 12x 12x 12x 12x   12x   12x 2x 2x 1x 1x 1x 1x 2x   12x 12x 12x 12x 12x 12x 12x 12x 12x 17x 17x 12x 12x 12x 12x 12x 12x 12x 12x 12x 12x 12x 12x 12x 17x 17x 12x 12x 12x 12x 12x 17x 17x 12x 12x   12x 5x 5x   5x 9x 9x  
import OurTable, { ButtonColumn } from "main/components/OurTable";
import { useNavigate } from "react-router-dom";
 
// should take in a players list from a commons
export default function ReportTable({
  reports,
  storybook = false,
  buttons = true,
}) {
  const testid = "ReportTable";
 
  const navigate = useNavigate();
 
  const reportCallback = (cell) => {
    const route = `/admin/report/${cell.row.values["id"]}`;
    if (storybook) {
      window.alert(`would navigate to ${route}`);
    } else {
      navigate(route);
    }
  };
 
  const columns = [
    {
      Header: "id",
      accessor: "id",
    },
    {
      Header: "commonsId",
      accessor: "commonsId",
      Cell: (props) => {
        return <div style={{ textAlign: "right" }}>{props.value}</div>;
      },
    },
    {
      Header: "Name",
      accessor: "name",
    },
    {
      Header: "Create Date",
      accessor: "createDate",
    },
    {
      Header: "Num Users",
      accessor: "numUsers",
      Cell: (props) => {
        return <div style={{ textAlign: "right" }}>{props.value}</div>;
      },
    },
    {
      Header: "Num Cows",
      accessor: "numCows",
      Cell: (props) => {
        return <div style={{ textAlign: "right" }}>{props.value}</div>;
      },
    },
  ];
 
  if (buttons) {
    columns.push(
      ButtonColumn("View Report", "secondary", reportCallback, testid),
    );
  }
  return <OurTable data={reports} columns={columns} testid={testid} />;
}