diff --git a/frontend/src/assets/icons/merge.svg b/frontend/src/assets/icons/merge.svg
deleted file mode 100644
index b7a15a8864..0000000000
--- a/frontend/src/assets/icons/merge.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
diff --git a/frontend/src/component/changeRequest/ChangeRequestOverview/ChangeRequestOverview.tsx b/frontend/src/component/changeRequest/ChangeRequestOverview/ChangeRequestOverview.tsx
index ec1f5c8825..ddcf4eb472 100644
--- a/frontend/src/component/changeRequest/ChangeRequestOverview/ChangeRequestOverview.tsx
+++ b/frontend/src/component/changeRequest/ChangeRequestOverview/ChangeRequestOverview.tsx
@@ -9,7 +9,6 @@ import {
import { type FC, useContext, useState } from 'react';
import { useChangeRequest } from 'hooks/api/getters/useChangeRequest/useChangeRequest';
import { ChangeRequestHeader } from './ChangeRequestHeader/ChangeRequestHeader.tsx';
-import { ReactComponent as ApprovedIcon } from 'assets/icons/merge.svg';
import {
ChangeRequestTimeline,
type ISuggestChangeTimelineProps,
@@ -42,6 +41,7 @@ import type { PlausibleChangeRequestState } from '../changeRequest.types';
import { useNavigate } from 'react-router-dom';
import { useActionableChangeRequests } from 'hooks/api/getters/useActionableChangeRequests/useActionableChangeRequests';
import { ChangeRequestRequestedApprovers } from './ChangeRequestRequestedApprovers/ChangeRequestRequestedApprovers.tsx';
+import { ChangeRequestIcon } from 'component/common/ChangeRequestIcon/ChangeRequestIcon.tsx';
const breakpoint = 'md';
@@ -522,11 +522,7 @@ export const ChangeRequestOverview: FC = () => {
-
+
diff --git a/frontend/src/component/changeRequest/ChangeRequestOverview/ChangeRequestReviewStatus/ChangeRequestReviewStatus.tsx b/frontend/src/component/changeRequest/ChangeRequestOverview/ChangeRequestReviewStatus/ChangeRequestReviewStatus.tsx
index 61357d9fa8..a23c5f5ecb 100644
--- a/frontend/src/component/changeRequest/ChangeRequestOverview/ChangeRequestReviewStatus/ChangeRequestReviewStatus.tsx
+++ b/frontend/src/component/changeRequest/ChangeRequestOverview/ChangeRequestReviewStatus/ChangeRequestReviewStatus.tsx
@@ -7,7 +7,6 @@ import {
Typography,
useTheme,
} from '@mui/material';
-import { ReactComponent as ChangesAppliedIcon } from 'assets/icons/merge.svg';
import { useLocationSettings } from 'hooks/useLocationSettings';
import {
StyledOuterContainer,
@@ -35,6 +34,7 @@ import type {
} from 'component/changeRequest/changeRequest.types';
import { getBrowserTimezone } from './utils.ts';
import { formatDateYMDHMS } from 'utils/formatDate';
+import { ChangeRequestIcon } from 'component/common/ChangeRequestIcon/ChangeRequestIcon.tsx';
interface ISuggestChangeReviewsStatusProps {
changeRequest: ChangeRequestType;
@@ -82,11 +82,7 @@ export const ChangeRequestReviewStatus: FC<
-
+
{
@@ -40,7 +39,6 @@ export const PrimaryNavigationList: FC<{
onClick: (activeItem: string) => void;
activeItem?: string;
}> = ({ mode, setMode, onClick, activeItem }) => {
- const { routes } = useRoutes();
const PrimaryListItem = ({
href,
text,
@@ -55,14 +53,23 @@ export const PrimaryNavigationList: FC<{
/>
);
- const { isOss } = useUiConfig();
+ const { isOss, isEnterprise } = useUiConfig();
const impactMetricsEnabled = useUiFlag('impactMetrics');
+ const globalChangeRequestListEnabled = useUiFlag('globalChangeRequestList');
+ const showChangeRequestList =
+ isEnterprise() && globalChangeRequestListEnabled;
return (
+ {showChangeRequestList ? (
+
+ ) : null}
{!isOss() ? (
diff --git a/frontend/src/component/menu/__tests__/__snapshots__/routes.test.tsx.snap b/frontend/src/component/menu/__tests__/__snapshots__/routes.test.tsx.snap
index 2ab1f09d71..bc9131845e 100644
--- a/frontend/src/component/menu/__tests__/__snapshots__/routes.test.tsx.snap
+++ b/frontend/src/component/menu/__tests__/__snapshots__/routes.test.tsx.snap
@@ -108,6 +108,17 @@ exports[`returns all baseRoutes 1`] = `
"title": "Flags overview",
"type": "protected",
},
+ {
+ "component": [Function],
+ "enterprise": true,
+ "flag": "globalChangeRequestList",
+ "menu": {
+ "primary": true,
+ },
+ "path": "/change-requests",
+ "title": "Change Requests",
+ "type": "protected",
+ },
{
"component": {
"$$typeof": Symbol(react.lazy),
diff --git a/frontend/src/component/menu/routes.ts b/frontend/src/component/menu/routes.ts
index aa859e02b0..ce6969a04d 100644
--- a/frontend/src/component/menu/routes.ts
+++ b/frontend/src/component/menu/routes.ts
@@ -142,6 +142,17 @@ export const routes: IRoute[] = [
menu: { primary: true },
},
+ // Global change request overview
+ {
+ path: '/change-requests',
+ title: 'Change Requests',
+ component: ChangeRequests,
+ type: 'protected',
+ menu: { primary: true },
+ flag: 'globalChangeRequestList',
+ enterprise: true,
+ },
+
// Playground
{
path: '/playground',
@@ -479,18 +490,6 @@ export const routes: IRoute[] = [
menu: {},
},
- // My change requests
- {
- path: '/change-requests',
- title: 'Change Requests',
- component: ChangeRequests,
- type: 'protected',
- menu: {},
- flag: 'globalChangeRequestList',
- hidden: true,
- enterprise: true,
- },
-
// Admin
{
path: '/admin/*',
diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx
index 5fffc40d02..ed58322c37 100644
--- a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx
+++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx
@@ -1,5 +1,4 @@
import { formatUnknownError } from 'utils/formatUnknownError';
-import { ReactComponent as ChangeRequestIcon } from 'assets/icons/merge.svg';
import EnvironmentsIcon from '@mui/icons-material/CloudCircle';
import StickinessIcon from '@mui/icons-material/FormatPaint';
import ProjectModeIcon from '@mui/icons-material/Adjust';
@@ -27,6 +26,7 @@ import { useStickinessOptions } from 'hooks/useStickinessOptions';
import { ChangeRequestTableConfigButton } from './ConfigButtons/ChangeRequestTableConfigButton.tsx';
import { StyledDefinitionList } from './CreateProjectDialog.styles';
import { ProjectIcon } from 'component/common/ProjectIcon/ProjectIcon';
+import { ChangeRequestIcon } from 'component/common/ChangeRequestIcon/ChangeRequestIcon.tsx';
interface ICreateProjectDialogProps {
open: boolean;