mirror of
https://github.com/Unleash/unleash.git
synced 2025-02-23 00:22:19 +01:00
refactor: remove unused component UserSeats (#8757)
https://linear.app/unleash/issue/2-2974/remove-unused-component-userseats Removes the unused component `UserSeats`.
This commit is contained in:
parent
5a2663a451
commit
6db6cc2bd6
@ -1,31 +0,0 @@
|
|||||||
import { testServerRoute, testServerSetup } from '../../../../utils/testServer';
|
|
||||||
import { screen } from '@testing-library/react';
|
|
||||||
import { render } from 'utils/testRenderer';
|
|
||||||
import { UserSeats } from './UserSeats';
|
|
||||||
import { BILLING_PRO_DEFAULT_INCLUDED_SEATS } from 'component/admin/billing/BillingDashboard/BillingPlan/BillingPlan';
|
|
||||||
|
|
||||||
const server = testServerSetup();
|
|
||||||
const user1 = {};
|
|
||||||
const user2 = {};
|
|
||||||
|
|
||||||
const setupApi = () => {
|
|
||||||
testServerRoute(server, '/api/admin/user-admin', {
|
|
||||||
users: [user1, user2],
|
|
||||||
});
|
|
||||||
testServerRoute(server, '/api/admin/ui-config', {
|
|
||||||
flags: {
|
|
||||||
UNLEASH_CLOUD: true,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
test('User seats display when seats are available', async () => {
|
|
||||||
setupApi();
|
|
||||||
|
|
||||||
render(<UserSeats />);
|
|
||||||
|
|
||||||
await screen.findByText('User seats');
|
|
||||||
await screen.findByText(
|
|
||||||
`2/${BILLING_PRO_DEFAULT_INCLUDED_SEATS} seats used`,
|
|
||||||
);
|
|
||||||
});
|
|
@ -1,61 +0,0 @@
|
|||||||
import LicenseIcon from '@mui/icons-material/ReceiptLongOutlined';
|
|
||||||
import { Box, styled, Typography } from '@mui/material';
|
|
||||||
import LinearProgress from '@mui/material/LinearProgress';
|
|
||||||
import { useUsers } from 'hooks/api/getters/useUsers/useUsers';
|
|
||||||
import { BILLING_PRO_DEFAULT_INCLUDED_SEATS } from 'component/admin/billing/BillingDashboard/BillingPlan/BillingPlan';
|
|
||||||
|
|
||||||
const SeatsUsageBar = styled(LinearProgress)(({ theme }) => ({
|
|
||||||
marginTop: theme.spacing(0.5),
|
|
||||||
height: theme.spacing(0.5),
|
|
||||||
borderRadius: theme.shape.borderRadiusMedium,
|
|
||||||
}));
|
|
||||||
|
|
||||||
const TotalSeatsRow = styled(Box)(({ theme }) => ({
|
|
||||||
display: 'flex',
|
|
||||||
gap: 1,
|
|
||||||
alignItems: 'center',
|
|
||||||
}));
|
|
||||||
|
|
||||||
const TotalSeats = styled(Typography)(({ theme }) => ({
|
|
||||||
fontWeight: theme.typography.fontWeightBold,
|
|
||||||
fontSize: theme.typography.h1.fontSize,
|
|
||||||
color: theme.palette.primary.main,
|
|
||||||
}));
|
|
||||||
|
|
||||||
const SeatsUsageRow = styled(Box)(({ theme }) => ({
|
|
||||||
marginTop: theme.spacing(2),
|
|
||||||
}));
|
|
||||||
|
|
||||||
const SeatsUsageText = styled(Box)(({ theme }) => ({
|
|
||||||
textAlign: 'right',
|
|
||||||
}));
|
|
||||||
|
|
||||||
export const UserSeats = () => {
|
|
||||||
const { users } = useUsers();
|
|
||||||
const seats = BILLING_PRO_DEFAULT_INCLUDED_SEATS;
|
|
||||||
|
|
||||||
if (typeof seats === 'number') {
|
|
||||||
const percentageSeats = Math.floor((users.length / seats) * 100);
|
|
||||||
|
|
||||||
return (
|
|
||||||
<Box>
|
|
||||||
<TotalSeatsRow>
|
|
||||||
<LicenseIcon />
|
|
||||||
<Typography sx={{ flex: 1 }}>User seats</Typography>
|
|
||||||
<TotalSeats>{seats}</TotalSeats>
|
|
||||||
</TotalSeatsRow>
|
|
||||||
<SeatsUsageRow>
|
|
||||||
<SeatsUsageText>
|
|
||||||
{users.length}/{seats} seats used
|
|
||||||
</SeatsUsageText>
|
|
||||||
<SeatsUsageBar
|
|
||||||
variant='determinate'
|
|
||||||
value={Math.min(100, percentageSeats)}
|
|
||||||
/>
|
|
||||||
</SeatsUsageRow>
|
|
||||||
</Box>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
};
|
|
Loading…
Reference in New Issue
Block a user