mirror of
https://github.com/Unleash/unleash.git
synced 2025-09-19 17:52:45 +02:00
Follows up on https://github.com/Unleash/unleash/pull/4853 to add Biome to the frontend as well.  Added a few `biome-ignore` to speed up the process but we may want to check and fix them in the future.
44 lines
1.7 KiB
TypeScript
44 lines
1.7 KiB
TypeScript
import { useContext } from 'react';
|
||
import { PageContent } from 'component/common/PageContent/PageContent';
|
||
import useUiConfig from 'hooks/api/getters/useUiConfig/useUiConfig';
|
||
import { Alert } from '@mui/material';
|
||
import { PageHeader } from 'component/common/PageHeader/PageHeader';
|
||
import AccessContext from 'contexts/AccessContext';
|
||
import { UPDATE_PROJECT } from 'component/providers/AccessProvider/permissions';
|
||
import { useRequiredPathParam } from 'hooks/useRequiredPathParam';
|
||
import { usePageTitle } from 'hooks/usePageTitle';
|
||
import { ProjectAccessTable } from 'component/project/ProjectAccess/ProjectAccessTable/ProjectAccessTable';
|
||
import { useProjectNameOrId } from 'hooks/api/getters/useProject/useProject';
|
||
import { PremiumFeature } from 'component/common/PremiumFeature/PremiumFeature';
|
||
|
||
export const ProjectAccess = () => {
|
||
const projectId = useRequiredPathParam('projectId');
|
||
const projectName = useProjectNameOrId(projectId);
|
||
const { hasAccess } = useContext(AccessContext);
|
||
const { isOss } = useUiConfig();
|
||
usePageTitle(`Project access – ${projectName}`);
|
||
|
||
if (isOss()) {
|
||
return (
|
||
<PageContent
|
||
header={<PageHeader title='Access' />}
|
||
sx={{ justifyContent: 'center' }}
|
||
>
|
||
<PremiumFeature feature='access' />
|
||
</PageContent>
|
||
);
|
||
}
|
||
|
||
if (!hasAccess(UPDATE_PROJECT, projectId)) {
|
||
return (
|
||
<PageContent header={<PageHeader title='Access' />}>
|
||
<Alert severity='error'>
|
||
You need project owner permissions to access this section.
|
||
</Alert>
|
||
</PageContent>
|
||
);
|
||
}
|
||
|
||
return <ProjectAccessTable />;
|
||
};
|