diff --git a/Client/src/Components/Label/index.jsx b/Client/src/Components/Label/index.jsx index c47b53cb8..d6c6adbd5 100644 --- a/Client/src/Components/Label/index.jsx +++ b/Client/src/Components/Label/index.jsx @@ -124,7 +124,7 @@ ColoredLabel.propTypes = { * */ -const StatusLabel = ({ status }) => { +const StatusLabel = ({ status, customStyles }) => { const theme = useTheme(); const colorLookup = { @@ -132,13 +132,15 @@ const StatusLabel = ({ status }) => { Waiting: theme.palette.labelRed.color, New: theme.palette.labelOrange.color, Active: theme.palette.labelGreen.color, + Down: theme.palette.error.main, // Assuming theme.palette.error.main is red + }; // Look up the color for the status, default to labelGray if not found const color = colorLookup[status] || theme.palette.labelGray.color; return ( - + { }; StatusLabel.propTypes = { - status: PropTypes.oneOf(["Seen", "Waiting", "New", "Active"]), + status: PropTypes.oneOf(["Seen", "Waiting", "New", "Active", "Down", "Cannot resolve"]), + customStyles: PropTypes.object, }; export { ColoredLabel, StatusLabel }; diff --git a/Client/src/Pages/Incidents/index.jsx b/Client/src/Pages/Incidents/index.jsx index e1aa44740..a2cb59517 100644 --- a/Client/src/Pages/Incidents/index.jsx +++ b/Client/src/Pages/Incidents/index.jsx @@ -1,9 +1,72 @@ -import React from 'react' +import { styled } from '@mui/material/styles'; +import Table from '@mui/material/Table'; +import TableBody from '@mui/material/TableBody'; +import TableCell, { tableCellClasses } from '@mui/material/TableCell'; +import TableContainer from '@mui/material/TableContainer'; +import TableHead from '@mui/material/TableHead'; +import TableRow from '@mui/material/TableRow'; +import Paper from '@mui/material/Paper'; +import { StatusLabel } from "../../Components/Label/"; -const Incidents = () => { - return ( -
Incidents
- ) + +const StyledTableCell = styled(TableCell)(({ theme }) => ({ + [`&.${tableCellClasses.head}`]: { + backgroundColor: theme.palette.action.hover, + color: theme.palette.common.black, + }, + [`&.${tableCellClasses.body}`]: { + fontSize: 14, + }, +})); + +const StyledTableRow = styled(TableRow)(({ theme }) => ({ + '&:nth-of-type(1)': { + backgroundColor: theme.palette.action.hover, + }, + '&:nth-of-type(n+1)': { + backgroundColor: theme.palette.common.white, + }, + '&:last-child td, &:last-child th': { + border: 0, + }, +})); + +function createData(name, calories, fat, carbs, protein) { + return { name, calories, fat, carbs, protein }; } -export default Incidents \ No newline at end of file +const rows = [ + createData(, '2024-03-14 21:41:09', 'HTTP 350 - NOK'), + createData(, '2024-03-14 21:41:09', 'timeout of 48000ms exceeded'), + createData(, '2024-03-14 21:41:09', 'timeout of 48000ms exceeded'), + createData(, '2024-03-14 21:41:09', 'timeout of 48000ms exceeded'), + createData(, '2024-03-14 21:41:09', 'HTTP 350 - NOK'), +]; + + +export default function CustomizedTables() { + return ( + + + + + Status + Date & Time + Message + + + + {rows.map((row, index) => ( + + + {row.name} + + {row.calories} + {row.fat} + + ))} + +
+
+ ); +}