From 3f766995fb44c880f3957d934443cea8cf737d8f Mon Sep 17 00:00:00 2001 From: sighphyre Date: Thu, 12 May 2022 09:41:36 +0200 Subject: [PATCH] Disable default env in project view (#969) * fix: Block user from turning on default env in project view * fix: Allow changing environment state for default in a project if using non OSS Co-authored-by: Fredrik Strand Oseberg --- .../project/ProjectEnvironment/ProjectEnvironment.tsx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/frontend/src/component/project/ProjectEnvironment/ProjectEnvironment.tsx b/frontend/src/component/project/ProjectEnvironment/ProjectEnvironment.tsx index 19f5093df9..9843887a83 100644 --- a/frontend/src/component/project/ProjectEnvironment/ProjectEnvironment.tsx +++ b/frontend/src/component/project/ProjectEnvironment/ProjectEnvironment.tsx @@ -22,6 +22,7 @@ import { IProjectEnvironment } from 'interfaces/environments'; import { getEnabledEnvs } from './helpers'; import StringTruncator from 'component/common/StringTruncator/StringTruncator'; import { useThemeStyles } from 'themes/themeStyles'; +import { isDescendantOrSelf } from '@testing-library/user-event/dist/types/utils'; interface IProjectEnvironmentListProps { projectId: string; @@ -46,6 +47,7 @@ const ProjectEnvironmentList = ({ const [confirmName, setConfirmName] = useState(''); const ref = useLoading(loading); const { classes: styles } = useStyles(); + const { isOss } = useUiConfig(); useEffect(() => { const envs = environments.map(e => ({ @@ -146,6 +148,10 @@ const ProjectEnvironmentList = ({ ); + const envIsDisabled = (projectName: string) => { + return isOss() && projectName === 'default'; + }; + const renderEnvironments = () => { return ( @@ -159,6 +165,7 @@ const ProjectEnvironmentList = ({ env.enabled ? 'Disable' : 'Enable' } environment`} size="medium" + disabled={envIsDisabled(env.name)} projectId={projectId} permission={UPDATE_PROJECT} checked={env.enabled}