;
- stage: LifecycleStage;
- project: string;
- onArchive: () => void;
- onComplete: () => void;
- onUncomplete: () => void;
- loading: boolean;
-}> = ({
- children,
- stage,
- project,
- onArchive,
- onComplete,
- onUncomplete,
- loading,
-}) => (
-
- ({ padding: theme.spacing(2) })}>
-
- Lifecycle
-
-
- {stage.name}
-
-
-
-
-
- Stage entered at
-
-
-
-
- Time spent in stage
-
-
-
-
-
- {stage.name === 'initial' && }
- {stage.name === 'pre-live' && (
-
-
-
- )}
- {stage.name === 'live' && (
-
-
-
- )}
- {stage.name === 'completed' && (
-
-
-
- )}
- {stage.name === 'archived' && }
-
-
- }
- >
- {children}
-
-);
diff --git a/frontend/src/component/layout/MainLayout/NavigationSidebar/NewInUnleash/NewInUnleash.tsx b/frontend/src/component/layout/MainLayout/NavigationSidebar/NewInUnleash/NewInUnleash.tsx
index f8ce67e0da..6c7dabc292 100644
--- a/frontend/src/component/layout/MainLayout/NavigationSidebar/NewInUnleash/NewInUnleash.tsx
+++ b/frontend/src/component/layout/MainLayout/NavigationSidebar/NewInUnleash/NewInUnleash.tsx
@@ -19,10 +19,8 @@ import {
import { usePlausibleTracker } from 'hooks/usePlausibleTracker';
import { ReactComponent as SignalsPreview } from 'assets/img/signals.svg';
import LifecycleStagesImage from 'assets/img/lifecycle-stages.png';
-import LinearScaleIcon from '@mui/icons-material/LinearScale';
import MonitorHeartIcon from '@mui/icons-material/MonitorHeartOutlined';
import { useNavigate } from 'react-router-dom';
-import { useHighlightContext } from 'component/common/Highlight/HighlightContext';
import { formatAssetPath } from 'utils/formatPath';
const StyledNewInUnleash = styled('div')(({ theme }) => ({
@@ -75,10 +73,6 @@ const StyledSignalsIcon = styled(Signals)(({ theme }) => ({
color: theme.palette.primary.main,
}));
-const StyledLinearScaleIcon = styled(LinearScaleIcon)(({ theme }) => ({
- color: theme.palette.primary.main,
-}));
-
const StyledImg = styled('img')(() => ({
maxWidth: '100%',
}));
@@ -93,7 +87,6 @@ export const NewInUnleash = ({
onMiniModeClick,
}: INewInUnleashProps) => {
const navigate = useNavigate();
- const { highlight } = useHighlightContext();
const { trackEvent } = usePlausibleTracker();
const [seenItems, setSeenItems] = useLocalStorageState(
'new-in-unleash-seen:v1',
@@ -101,7 +94,6 @@ export const NewInUnleash = ({
);
const { isEnterprise } = useUiConfig();
const signalsEnabled = useUiFlag('signals');
- const improvedLifecycleEnabled = useUiFlag('lifecycleImprovements');
const items: NewInUnleashItemDetails[] = [
{
@@ -116,7 +108,7 @@ export const NewInUnleash = ({
),
docsLink:
'https://docs.getunleash.io/reference/feature-toggles#feature-flag-lifecycle',
- show: improvedLifecycleEnabled,
+ show: true,
longDescription: (
We have updated the names, icons, and colors for the
diff --git a/frontend/src/component/project/Project/ProjectStatus/ProjectLifecycleSummary.tsx b/frontend/src/component/project/Project/ProjectStatus/ProjectLifecycleSummary.tsx
index da3c0b75b3..eb4cdcfb74 100644
--- a/frontend/src/component/project/Project/ProjectStatus/ProjectLifecycleSummary.tsx
+++ b/frontend/src/component/project/Project/ProjectStatus/ProjectLifecycleSummary.tsx
@@ -9,7 +9,6 @@ import type { ProjectStatusSchemaLifecycleSummary } from 'openapi';
import { HtmlTooltip } from 'component/common/HtmlTooltip/HtmlTooltip';
import { lifecycleMessages } from './LifecycleMessages';
import InfoIcon from '@mui/icons-material/Info';
-import { useUiFlag } from 'hooks/useUiFlag';
import { getFeatureLifecycleName } from 'component/common/FeatureLifecycle/getFeatureLifecycleName';
const LifecycleBoxContent = styled('div')(({ theme }) => ({
@@ -145,8 +144,6 @@ const BigNumber: FC<{ value?: number }> = ({ value }) => {
export const ProjectLifecycleSummary = () => {
const projectId = useRequiredPathParam('projectId');
const { data, loading } = useProjectStatus(projectId);
- const isLifecycleImprovementsEnabled = useUiFlag('lifecycleImprovements');
-
const loadingRef = useLoading(
loading,
'[data-loading-project-lifecycle-summary=true]',
@@ -155,18 +152,10 @@ export const ProjectLifecycleSummary = () => {
const flagWord = (stage: keyof ProjectStatusSchemaLifecycleSummary) => {
const hasOneFlag = data?.lifecycleSummary[stage].currentFlags === 1;
- if (hasOneFlag) {
- return isLifecycleImprovementsEnabled ? 'Flag' : 'flag';
- }
-
- return isLifecycleImprovementsEnabled ? 'Flags' : 'flags';
+ return hasOneFlag ? 'Flag' : 'Flags';
};
const stageName = (stage: keyof ProjectStatusSchemaLifecycleSummary) => {
- if (!isLifecycleImprovementsEnabled) {
- return `${flagWord('initial')} in ${stage}`;
- }
-
const lifecycleStageName = stage === 'preLive' ? 'pre-live' : stage;
return (
diff --git a/frontend/src/interfaces/uiConfig.ts b/frontend/src/interfaces/uiConfig.ts
index 2f860737a7..306025aebc 100644
--- a/frontend/src/interfaces/uiConfig.ts
+++ b/frontend/src/interfaces/uiConfig.ts
@@ -92,7 +92,6 @@ export type UiFlags = {
flagOverviewRedesign?: boolean;
granularAdminPermissions?: boolean;
sortProjectRoles?: boolean;
- lifecycleImprovements?: boolean;
frontendHeaderRedesign?: boolean;
dataUsageMultiMonthView?: boolean;
uiGlobalFontSize?: Variant;
diff --git a/src/lib/types/experimental.ts b/src/lib/types/experimental.ts
index ff4f83abf0..1e49f65f30 100644
--- a/src/lib/types/experimental.ts
+++ b/src/lib/types/experimental.ts
@@ -62,7 +62,6 @@ export type IFlagKey =
| 'deltaApi'
| 'uniqueSdkTracking'
| 'sortProjectRoles'
- | 'lifecycleImprovements'
| 'frontendHeaderRedesign'
| 'dataUsageMultiMonthView'
| 'uiGlobalFontSize';
@@ -298,10 +297,6 @@ const flags: IFlags = {
process.env.UNLEASH_EXPERIMENTAL_SORT_PROJECT_ROLES,
false,
),
- lifecycleImprovements: parseEnvVarBoolean(
- process.env.UNLEASH_EXPERIMENTAL_LIFECYCLE_IMPROVEMENTS,
- false,
- ),
frontendHeaderRedesign: parseEnvVarBoolean(
process.env.UNLEASH_EXPERIMENTAL_FRONTEND_HEADER_REDESIGN,
false,
diff --git a/src/server-dev.ts b/src/server-dev.ts
index 7fe818dc5e..f9c178c129 100644
--- a/src/server-dev.ts
+++ b/src/server-dev.ts
@@ -57,7 +57,6 @@ process.nextTick(async () => {
sortProjectRoles: true,
deltaApi: true,
uniqueSdkTracking: true,
- lifecycleImprovements: true,
frontendHeaderRedesign: true,
dataUsageMultiMonthView: true,
},