Skip to content
Snippets Groups Projects
Commit ff5768cf authored by Alexander Madsen's avatar Alexander Madsen
Browse files

Merge branch 'CE-2159-Minor-adjustments' into 'develop'

CE-2159: Minor-adjustments

See merge request !379
parents 0ae04924 cb4ad0fb
No related branches found
No related tags found
2 merge requests!407CE-2141: 3.0.0,!379CE-2159: Minor-adjustments
Pipeline #161918 passed
...@@ -107,7 +107,7 @@ const NavigationMenu = ({ children }) => { ...@@ -107,7 +107,7 @@ const NavigationMenu = ({ children }) => {
defaultTitle: applicationTitle(), defaultTitle: applicationTitle(),
defaultActionButton: <LoginControls />, defaultActionButton: <LoginControls />,
defaultOpen: false, defaultOpen: false,
widthOpen: "240px", widthOpen: "170px", // default size 240px
widthClosed: "57px", widthClosed: "57px",
defaultIconMenuButton: <CreateIOCButton />, defaultIconMenuButton: <CreateIOCButton />,
defaultHelpButton: <IconMenuButton {...helpButtonProps} /> defaultHelpButton: <IconMenuButton {...helpButtonProps} />
......
...@@ -66,7 +66,12 @@ export default function ActiveIOCChart({ title }) { ...@@ -66,7 +66,12 @@ export default function ActiveIOCChart({ title }) {
return activeIocs ? ( return activeIocs ? (
<> <>
<Typography variant="h2">{title}</Typography> <Typography
variant="h2"
sx={{ marginBottom: 4 }}
>
{title}
</Typography>
<ResponsiveContainer <ResponsiveContainer
width="100%" width="100%"
aspect={2} aspect={2}
......
...@@ -29,7 +29,12 @@ export default function DeploymentLineChart({ ...@@ -29,7 +29,12 @@ export default function DeploymentLineChart({
return iocDeployments ? ( return iocDeployments ? (
<> <>
<Typography variant="h2">{title}</Typography> <Typography
variant="h2"
sx={{ marginBottom: 4 }}
>
{title}
</Typography>
<ResponsiveContainer <ResponsiveContainer
width="100%" width="100%"
aspect={3} aspect={3}
......
import React, { useContext, useEffect } from "react"; import React, { useContext, useEffect } from "react";
import { Paper, Skeleton } from "@mui/material"; import { Box, Skeleton } from "@mui/material";
import { KeyValueTable, useAPIMethod } from "@ess-ics/ce-ui-common"; import { KeyValueTable, useAPIMethod } from "@ess-ics/ce-ui-common";
import { apiContext } from "../../../api/DeployApi"; import { apiContext } from "../../../api/DeployApi";
...@@ -38,7 +38,7 @@ export function HostStatistics() { ...@@ -38,7 +38,7 @@ export function HostStatistics() {
}; };
return ( return (
<Paper> <Box>
<KeyValueTable <KeyValueTable
obj={hostStats} obj={hostStats}
variant="table" variant="table"
...@@ -49,6 +49,6 @@ export function HostStatistics() { ...@@ -49,6 +49,6 @@ export function HostStatistics() {
}} }}
sx={{ border: 0 }} sx={{ border: 0 }}
/> />
</Paper> </Box>
); );
} }
import React, { useContext, useEffect } from "react"; import React, { useContext, useEffect } from "react";
import { Paper, Skeleton } from "@mui/material"; import { Box, Skeleton } from "@mui/material";
import { KeyValueTable } from "@ess-ics/ce-ui-common/dist/components/common/KeyValueTable"; import { KeyValueTable } from "@ess-ics/ce-ui-common/dist/components/common/KeyValueTable";
import { apiContext } from "../../../api/DeployApi"; import { apiContext } from "../../../api/DeployApi";
import { useAPIMethod } from "@ess-ics/ce-ui-common"; import { useAPIMethod } from "@ess-ics/ce-ui-common";
...@@ -39,7 +39,7 @@ export function IOCStatistics() { ...@@ -39,7 +39,7 @@ export function IOCStatistics() {
}; };
return ( return (
<Paper> <Box>
<KeyValueTable <KeyValueTable
obj={iocStats} obj={iocStats}
keyOptions={{ headerName: "IOC statistics" }} keyOptions={{ headerName: "IOC statistics" }}
...@@ -49,6 +49,6 @@ export function IOCStatistics() { ...@@ -49,6 +49,6 @@ export function IOCStatistics() {
}} }}
sx={{ border: 0 }} sx={{ border: 0 }}
/> />
</Paper> </Box>
); );
} }
import React, { useContext, useState, useCallback, useMemo } from "react"; import React, { useContext, useState, useCallback, useMemo } from "react";
import { import { Grid, Container, TextField, Autocomplete } from "@mui/material";
Grid,
FormControlLabel,
Switch,
Typography,
Container,
TextField,
Autocomplete
} from "@mui/material";
import Tabs from "@mui/material/Tabs"; import Tabs from "@mui/material/Tabs";
import Tab from "@mui/material/Tab"; import Tab from "@mui/material/Tab";
import { userContext, RootPaper, useAPIMethod } from "@ess-ics/ce-ui-common"; import { RootPaper, useAPIMethod } from "@ess-ics/ce-ui-common";
import { initRequestParams } from "../../components/common/Helper"; import { initRequestParams } from "../../components/common/Helper";
import { useEffect } from "react"; import { useEffect } from "react";
import { SearchBar } from "../../components/common/SearchBar/SearchBar"; import { SearchBar } from "../../components/common/SearchBar/SearchBar";
import AccessControl from "../../components/auth/AccessControl";
import useUrlState from "@ahooksjs/use-url-state"; import useUrlState from "@ahooksjs/use-url-state";
import { import {
serialize, serialize,
...@@ -40,7 +31,6 @@ export function JobListView() { ...@@ -40,7 +31,6 @@ export function JobListView() {
const [urlState, setUrlState] = useUrlState( const [urlState, setUrlState] = useUrlState(
{ {
tab: "0", tab: "0",
own: "false",
rows: "20", rows: "20",
page: "0", page: "0",
query: "", query: "",
...@@ -49,7 +39,6 @@ export function JobListView() { ...@@ -49,7 +39,6 @@ export function JobListView() {
{ navigateMode: "replace" } { navigateMode: "replace" }
); );
const { user } = useContext(userContext);
const [deploymentStatus, setDeploymentStatus] = useState(null); const [deploymentStatus, setDeploymentStatus] = useState(null);
const handleTabChange = (event, tab) => { const handleTabChange = (event, tab) => {
...@@ -76,11 +65,6 @@ export function JobListView() { ...@@ -76,11 +65,6 @@ export function JobListView() {
urlState.tab && changeTab(deserialize(urlState.tab)); urlState.tab && changeTab(deserialize(urlState.tab));
}, [urlState]); }, [urlState]);
const handleChangeOwn = (event) => {
const own = event.target.checked;
setUrlState({ own: serialize(own), page: "0" });
};
const urlPagination = useMemo(() => { const urlPagination = useMemo(() => {
return { return {
rows: deserialize(urlState.rows), rows: deserialize(urlState.rows),
...@@ -129,10 +113,6 @@ export function JobListView() { ...@@ -129,10 +113,6 @@ export function JobListView() {
deserialize(urlState.query) deserialize(urlState.query)
); );
if (deserialize(urlState.own)) {
requestParams.user = user?.loginName;
}
if (deploymentStatus) { if (deploymentStatus) {
requestParams.status = deploymentStatus; requestParams.status = deploymentStatus;
} }
...@@ -146,9 +126,7 @@ export function JobListView() { ...@@ -146,9 +126,7 @@ export function JobListView() {
getOperations, getOperations,
urlPagination, urlPagination,
urlState.query, urlState.query,
urlState.own,
urlState.job_type, urlState.job_type,
user,
deploymentStatus deploymentStatus
]); ]);
...@@ -244,29 +222,6 @@ export function JobListView() { ...@@ -244,29 +222,6 @@ export function JobListView() {
autoSelect autoSelect
/> />
</Grid> </Grid>
<Grid item>
<AccessControl
allowedRoles={["DeploymentToolAdmin", "DeploymentToolIntegrator"]}
renderNoAccess={() => <></>}
>
<FormControlLabel
control={
<Switch
checked={deserialize(urlState.own)}
onChange={handleChangeOwn}
/>
}
label={
<Typography
variant="body2"
fontWeight="bold"
>
Only my jobs
</Typography>
}
/>
</AccessControl>
</Grid>
</Grid> </Grid>
<Grid <Grid
item item
......
import React, { useContext, useEffect } from "react"; import React, { useContext, useEffect } from "react";
import { RootContainer } from "../../components/common/Container/RootContainer";
import AccessControl from "../../components/auth/AccessControl"; import AccessControl from "../../components/auth/AccessControl";
import { GlobalAppBarContext } from "@ess-ics/ce-ui-common"; import { GlobalAppBarContext } from "@ess-ics/ce-ui-common";
import { JobListView } from "./JobListView"; import { JobListView } from "./JobListView";
...@@ -10,10 +9,8 @@ export function JobLogAccessControl() { ...@@ -10,10 +9,8 @@ export function JobLogAccessControl() {
useEffect(() => setTitle(applicationTitle("Log")), [setTitle]); useEffect(() => setTitle(applicationTitle("Log")), [setTitle]);
return ( return (
<RootContainer> <AccessControl allowedRoles={[]}>
<AccessControl allowedRoles={[]}> <JobListView />
<JobListView /> </AccessControl>
</AccessControl>
</RootContainer>
); );
} }
import React, { useContext, useEffect } from "react"; import React, { useContext, useEffect } from "react";
import { styled } from "@mui/material/styles"; import { styled } from "@mui/material/styles";
import { Paper, Grid, useTheme } from "@mui/material"; import { Grid, useTheme, Box } from "@mui/material";
import { GlobalAppBarContext } from "@ess-ics/ce-ui-common"; import {
import { RootContainer } from "../../components/common/Container/RootContainer"; GlobalAppBarContext,
useAPIMethod,
RootPaper
} from "@ess-ics/ce-ui-common";
import ActiveIOCChart from "../../components/statistics/ActiveIOCChart"; import ActiveIOCChart from "../../components/statistics/ActiveIOCChart";
import DeploymentLineChart from "../../components/statistics/DeploymentLineChart"; import DeploymentLineChart from "../../components/statistics/DeploymentLineChart";
import { HostStatistics } from "../../components/statistics/HostStatistics"; import { HostStatistics } from "../../components/statistics/HostStatistics";
...@@ -10,16 +13,16 @@ import { IOCStatistics } from "../../components/statistics/IOCStatistics"; ...@@ -10,16 +13,16 @@ import { IOCStatistics } from "../../components/statistics/IOCStatistics";
import OperationChart from "../../components/statistics/OperationChart/OperationChart"; import OperationChart from "../../components/statistics/OperationChart/OperationChart";
import { applicationTitle } from "../../components/common/Helper"; import { applicationTitle } from "../../components/common/Helper";
import { apiContext } from "../../api/DeployApi"; import { apiContext } from "../../api/DeployApi";
import { useAPIMethod } from "@ess-ics/ce-ui-common";
const PREFIX = "StatisticsView"; const PREFIX = "StatisticsView";
const classes = { const classes = {
paper: `${PREFIX}-paper` box: `${PREFIX}-paper`
}; };
const StyledRootContainer = styled(RootContainer)(({ theme }) => ({ const StyledRootPaper = styled(RootPaper)(({ theme }) => ({
[`& .${classes.paper}`]: { padding: theme.spacing(0),
[`& .${classes.box}`]: {
padding: theme.spacing(4) padding: theme.spacing(4)
} }
})); }));
...@@ -43,10 +46,10 @@ export function StatisticsView() { ...@@ -43,10 +46,10 @@ export function StatisticsView() {
}); });
return ( return (
<StyledRootContainer> <StyledRootPaper>
<Grid <Grid
container container
spacing={theme.spacing(0.5)} spacing={theme.spacing(2)}
> >
<Grid <Grid
item item
...@@ -66,36 +69,36 @@ export function StatisticsView() { ...@@ -66,36 +69,36 @@ export function StatisticsView() {
item item
xs={12} xs={12}
> >
<Paper className={classes.paper}> <Box className={classes.box}>
<OperationChart <OperationChart
title="Operations over time" title="Operations over time"
iocDeployments={operationStatistics} iocDeployments={operationStatistics}
getIOCDeployments={getOperationStatistics} getIOCDeployments={getOperationStatistics}
/> />
</Paper> </Box>
</Grid> </Grid>
<Grid <Grid
item item
xs={12} xs={12}
> >
<Paper className={classes.paper}> <Box className={classes.box}>
<ActiveIOCChart title="Number of IOCs detected per network" /> <ActiveIOCChart title="Number of IOCs detected per network" />
</Paper> </Box>
</Grid> </Grid>
<Grid <Grid
item item
xs={12} xs={12}
> >
<Paper className={classes.paper}> <Box className={classes.box}>
<DeploymentLineChart <DeploymentLineChart
title="Number of IOCs detected over time" title="Number of IOCs detected over time"
chartLabel="Active IOCs over time" chartLabel="Active IOCs over time"
iocDeployments={iocsOverTime} iocDeployments={iocsOverTime}
getIOCDeployments={getIocsOverTime} getIOCDeployments={getIocsOverTime}
/> />
</Paper> </Box>
</Grid> </Grid>
</Grid> </Grid>
</StyledRootContainer> </StyledRootPaper>
); );
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment