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 | 1x 1x 1x 1x 1x 1x 1x 15x 15x 1x 1x 1x 15x 15x 15x 15x 15x 15x 15x 2x 2x 2x 15x 15x 15x 15x 15x 15x 15x 15x 15x 15x 15x 15x 15x 15x 9x 9x 9x 9x 9x 15x 15x 15x 15x 15x 15x | import React from "react";
import OurTable, { ButtonColumn } from "main/components/OurTable";
import { useBackendMutation } from "main/utils/useBackend";
import {
cellToAxiosParamsDelete,
onDeleteSuccess,
} from "main/utils/HelpRequestUtils";
import { useNavigate } from "react-router";
import { hasRole } from "main/utils/useCurrentUser";
export default function HelpRequestTable({ helpRequests, currentUser }) {
const navigate = useNavigate();
const editCallback = (cell) => {
const id = cell.row.original.id;
navigate(`/helprequest/edit/${id}`);
};
// Stryker disable all : hard to test for query caching / invalidation key
const deleteMutation = useBackendMutation(
cellToAxiosParamsDelete,
{ onSuccess: onDeleteSuccess },
["/api/helprequest/all"],
);
// Stryker restore all
const deleteCallback = async (cell) => {
const id = cell.row.original.id;
deleteMutation.mutate({ row: { values: { id }, original: {} } });
};
const columns = [
{ header: "id", accessorKey: "id" },
{ header: "Requester Email", accessorKey: "requesterEmail" },
{ header: "Table Or Breakout Room", accessorKey: "tableOrBreakoutRoom" },
{ header: "Team ID", accessorKey: "teamId" },
{ header: "Request Time", accessorKey: "requestTime" },
{ header: "Explanation", accessorKey: "explanation" },
{
header: "Solved",
id: "solved",
cell: ({ row }) => row.original.solved.toString(),
},
];
if (hasRole(currentUser, "ROLE_ADMIN")) {
columns.push(
ButtonColumn("Edit", "primary", editCallback, "HelpRequestTable"),
);
columns.push(
ButtonColumn("Delete", "danger", deleteCallback, "HelpRequestTable"),
);
}
return (
<OurTable
data={helpRequests}
columns={columns}
testid={"HelpRequestTable"}
/>
);
}
|