All files / components/Users UsersTable.tsx

100% Statements 4/4
100% Branches 0/0
100% Functions 3/3
100% Lines 4/4

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                          1x                                           6x               6x                       3x    
import OurTable from "main/components/Common/OurTable";
import type { Cell } from "@tanstack/react-table";
import type { LegacyColumn } from "main/components/Common/OurTableUtils";
 
export type User = {
  id: number;
  givenName: string;
  familyName: string;
  email: string;
  admin: boolean;
  instructor: boolean;
};
 
const columns: LegacyColumn[] = [
  {
    Header: "id",
    accessor: "id", // accessor is the "key" in the data
  },
  {
    header: "First Name",
    accessorKey: "givenName",
  },
  {
    header: "Last Name",
    accessorKey: "familyName",
  },
  {
    header: "Email",
    accessorKey: "email",
  },
  {
    header: "Admin",
    id: "admin",
    accessorKey: "admin",
    cell: ({ cell }: { cell: Cell<User, unknown> }) => {
      return String(cell.getValue());
    }, // convert boolean to string for display
  },
  {
    header: "Instructor",
    id: "instructor",
    accessorKey: "instructor",
    cell: ({ cell }: { cell: Cell<User, unknown> }) => {
      return String(cell.getValue());
    }, // convert boolean to string for display
  },
];
 
type UsersTableProps = {
  users: User[];
};
 
export default function UsersTable({
  users,
}: UsersTableProps): React.JSX.Element {
  return <OurTable data={users} columns={columns} testid={"UsersTable"} />;
}