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 0f22209818..76c49f2077 100644 --- a/frontend/src/component/menu/__tests__/__snapshots__/routes.test.tsx.snap +++ b/frontend/src/component/menu/__tests__/__snapshots__/routes.test.tsx.snap @@ -256,6 +256,14 @@ exports[`returns all baseRoutes 1`] = ` "title": "Environments", "type": "protected", }, + { + "component": [Function], + "flag": "feedbackPosting", + "menu": {}, + "path": "/feedback", + "title": "Feedback", + "type": "protected", + }, { "component": [Function], "enterprise": true, diff --git a/frontend/src/component/menu/routes.ts b/frontend/src/component/menu/routes.ts index cf9d207faf..ba5ae4c23c 100644 --- a/frontend/src/component/menu/routes.ts +++ b/frontend/src/component/menu/routes.ts @@ -43,6 +43,7 @@ import { ViewIntegration } from 'component/integrations/ViewIntegration/ViewInte import { PaginatedApplicationList } from '../application/ApplicationList/PaginatedApplicationList'; import { AddonRedirect } from 'component/integrations/AddonRedirect/AddonRedirect'; import { Insights } from '../insights/Insights'; +import { FeedbackList } from '../feedbackNew/FeedbackList'; import { Application } from 'component/application/Application'; import { Signals } from 'component/signals/Signals'; import { LazyCreateProject } from '../project/Project/CreateProject/LazyCreateProject'; @@ -271,6 +272,14 @@ export const routes: IRoute[] = [ menu: { mobile: true, advanced: true }, enterprise: true, }, + { + path: '/feedback', + title: 'Feedback', + component: FeedbackList, + type: 'protected', + flag: 'feedbackPosting', + menu: {}, + }, // Release management/plans { diff --git a/frontend/src/interfaces/uiConfig.ts b/frontend/src/interfaces/uiConfig.ts index 3f2d542a36..ba54e46280 100644 --- a/frontend/src/interfaces/uiConfig.ts +++ b/frontend/src/interfaces/uiConfig.ts @@ -75,6 +75,7 @@ export type UiFlags = { adminTokenKillSwitch?: boolean; feedbackComments?: Variant; showInactiveUsers?: boolean; + feedbackPosting?: boolean; userAccessUIEnabled?: boolean; outdatedSdksBanner?: boolean; estimateTrafficDataCost?: boolean; diff --git a/src/lib/types/experimental.ts b/src/lib/types/experimental.ts index c76b037dc0..98f739a347 100644 --- a/src/lib/types/experimental.ts +++ b/src/lib/types/experimental.ts @@ -28,6 +28,7 @@ export type IFlagKey = | 'signals' | 'automatedActions' | 'celebrateUnleash' + | 'feedbackPosting' | 'extendedUsageMetrics' | 'adminTokenKillSwitch' | 'feedbackComments' @@ -146,6 +147,10 @@ const flags: IFlags = { process.env.UNLEASH_EXPERIMENTAL_CELEBRATE_UNLEASH, false, ), + feedbackPosting: parseEnvVarBoolean( + process.env.UNLEASH_EXPERIMENTAL_FEEDBACK_POSTING, + false, + ), encryptEmails: parseEnvVarBoolean( process.env.UNLEASH_EXPERIMENTAL_ENCRYPT_EMAILS, false, diff --git a/src/server-dev.ts b/src/server-dev.ts index a621761ae0..1f8293df32 100644 --- a/src/server-dev.ts +++ b/src/server-dev.ts @@ -44,6 +44,7 @@ process.nextTick(async () => { userAccessUIEnabled: true, outdatedSdksBanner: true, disableShowContextFieldSelectionValues: false, + feedbackPosting: true, manyStrategiesPagination: true, enableLegacyVariants: false, extendedMetrics: true,