2023-02-28 08:30:57 +00:00
|
|
|
import { GridColDef } from "@mui/x-data-grid";
|
|
|
|
import DataGrid from "@kitUI/datagrid";
|
2023-06-02 14:10:26 +00:00
|
|
|
import { Typography } from "@mui/material";
|
2023-06-08 14:01:40 +00:00
|
|
|
import { useCombinedPrivileges } from "@root/hooks/useCombinedPrivileges.hook";
|
|
|
|
import { addMergedPrivileges } from "@root/stores/mergedPrivileges";
|
2023-02-28 08:30:57 +00:00
|
|
|
|
|
|
|
const columns: GridColDef[] = [
|
2023-06-02 14:10:26 +00:00
|
|
|
{ field: "id", headerName: "id", width: 40 },
|
|
|
|
{ field: "name", headerName: "Привелегия", width: 150 },
|
|
|
|
{ field: "description", headerName: "Описание", width: 550 }, //инфо из гитлаба.
|
|
|
|
{ field: "type", headerName: "Тип", width: 150 },
|
|
|
|
{ field: "price", headerName: "Стоимость", width: 100 },
|
2023-03-06 13:26:55 +00:00
|
|
|
];
|
|
|
|
|
2023-05-23 12:21:54 +00:00
|
|
|
export default function Privileges() {
|
2023-06-08 14:01:40 +00:00
|
|
|
const { mergedPrivileges, isError, errorMessage } = useCombinedPrivileges();
|
2023-06-02 14:10:26 +00:00
|
|
|
const privilegesGridData = mergedPrivileges.map((privilege) => ({
|
|
|
|
id: privilege.privilegeId,
|
|
|
|
name: privilege.name,
|
|
|
|
description: privilege.description,
|
|
|
|
type: privilege.type,
|
|
|
|
price: privilege.price,
|
|
|
|
}));
|
2023-02-28 08:30:57 +00:00
|
|
|
|
2023-06-08 14:01:40 +00:00
|
|
|
addMergedPrivileges(mergedPrivileges, isError, errorMessage);
|
|
|
|
|
2023-06-02 14:10:26 +00:00
|
|
|
return (
|
|
|
|
<>
|
|
|
|
{isError ? (
|
|
|
|
<Typography>{errorMessage}</Typography>
|
|
|
|
) : (
|
2023-02-28 08:30:57 +00:00
|
|
|
<DataGrid
|
2023-06-02 14:10:26 +00:00
|
|
|
// checkboxSelection={true}
|
|
|
|
rows={privilegesGridData}
|
|
|
|
columns={columns}
|
2023-02-28 08:30:57 +00:00
|
|
|
/>
|
2023-06-02 14:10:26 +00:00
|
|
|
)}
|
|
|
|
</>
|
|
|
|
);
|
2023-02-28 08:30:57 +00:00
|
|
|
}
|