1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-02-09 00:18:00 +01:00
unleash.unleash/frontend/src/component/admin/users/UsersAdmin.tsx

66 lines
2.4 KiB
TypeScript
Raw Normal View History

2022-01-27 16:03:03 +01:00
import { useContext } from 'react';
import UsersList from './UsersList/UsersList';
import AdminMenu from '../menu/AdminMenu';
2022-03-28 10:49:59 +02:00
import PageContent from 'component/common/PageContent/PageContent';
import AccessContext from 'contexts/AccessContext';
import ConditionallyRender from 'component/common/ConditionallyRender';
import { ADMIN } from 'component/providers/AccessProvider/permissions';
import { Alert } from '@material-ui/lab';
2022-03-28 10:49:59 +02:00
import HeaderTitle from 'component/common/HeaderTitle';
import { Button } from '@material-ui/core';
import { useStyles } from './UserAdmin.styles';
2022-01-27 16:03:03 +01:00
import { useHistory } from 'react-router-dom';
2022-01-27 16:03:03 +01:00
const UsersAdmin = () => {
const { hasAccess } = useContext(AccessContext);
2022-01-27 16:03:03 +01:00
const history = useHistory();
const styles = useStyles();
return (
<div>
<AdminMenu />
<PageContent
bodyClass={styles.userListBody}
headerContent={
<HeaderTitle
title="Users"
actions={
<ConditionallyRender
condition={hasAccess(ADMIN)}
show={
<Button
variant="contained"
color="primary"
onClick={() =>
history.push('/admin/create-user')
}
>
2022-02-23 00:10:48 +01:00
New user
</Button>
}
elseShow={
<small>
PS! Only admins can add/remove users.
</small>
}
/>
}
/>
}
>
<ConditionallyRender
condition={hasAccess(ADMIN)}
2022-01-27 16:03:03 +01:00
show={<UsersList />}
elseShow={
<Alert severity="error">
You need instance admin to access this section.
</Alert>
}
/>
</PageContent>
</div>
);
};
export default UsersAdmin;