diff --git a/frontend/src/component/feedbackNew/FeedbackComponent.tsx b/frontend/src/component/feedbackNew/FeedbackComponent.tsx index 55d170a2fd66..671193931ec5 100644 --- a/frontend/src/component/feedbackNew/FeedbackComponent.tsx +++ b/frontend/src/component/feedbackNew/FeedbackComponent.tsx @@ -20,9 +20,9 @@ import type { IToast } from 'interfaces/toast'; import { useTheme } from '@mui/material/styles'; import type { FeedbackData, FeedbackMode } from './FeedbackContext'; import { usePlausibleTracker } from 'hooks/usePlausibleTracker'; -import { useUiFlag } from 'hooks/useUiFlag'; import useUserType from './useUserType'; import { BaseModal } from 'component/common/SidebarModal/SidebarModal'; +import useUiConfig from 'hooks/api/getters/useUiConfig/useUiConfig'; export const ParentContainer = styled('div')(({ theme }) => ({ position: 'relative', @@ -205,12 +205,13 @@ export const FeedbackComponent = ({ const userType = useUserType(); const { trackEvent } = usePlausibleTracker(); const theme = useTheme(); + const { uiConfig } = useUiConfig(); const { addFeedback } = useUserFeedbackApi(); const { setHasSubmittedFeedback } = useUserSubmittedFeedback( feedbackData.category, ); - const feedbackComments = useUiFlag('feedbackComments'); + const feedbackComments = uiConfig?.flags?.feedbackComments; function isProvideFeedbackSchema(data: any): data is ProvideFeedbackSchema { data.difficultyScore = data.difficultyScore @@ -329,8 +330,7 @@ export const FeedbackComponent = ({ - {feedbackComments !== false && - feedbackComments.enabled && + {feedbackComments?.enabled && feedbackComments.name === 'withoutComments' ? ( <> diff --git a/frontend/src/hooks/useUiFlag.ts b/frontend/src/hooks/useUiFlag.ts index e266aa159e6e..524813170288 100644 --- a/frontend/src/hooks/useUiFlag.ts +++ b/frontend/src/hooks/useUiFlag.ts @@ -2,8 +2,14 @@ import useUiConfig from 'hooks/api/getters/useUiConfig/useUiConfig'; type flags = ReturnType['uiConfig']['flags']; -export const useUiFlag = (flag: K) => { +export const useUiFlag = (flag: K): boolean => { const { uiConfig } = useUiConfig(); + const value = uiConfig?.flags?.[flag]; + if (typeof value === 'boolean') { + return value; + } else if (typeof value !== 'undefined') { + console.error(`Flag ${flag} does not return a boolean.`); + } - return uiConfig?.flags?.[flag] || false; + return false; };