From 038f6f5ff5c611f490c6c6fda534078babc67e6f Mon Sep 17 00:00:00 2001 From: Amir Date: Thu, 2 May 2024 18:09:15 +0300 Subject: [PATCH] V2Wizard: Hide first boot from review step --- .../CreateImageWizardV2/CreateImageWizard.tsx | 5 ++-- .../steps/Review/ReviewStep.tsx | 26 +++++++++++-------- src/Utilities/useBetaFlag.ts | 11 ++++++++ 3 files changed, 28 insertions(+), 14 deletions(-) create mode 100644 src/Utilities/useBetaFlag.ts diff --git a/src/Components/CreateImageWizardV2/CreateImageWizard.tsx b/src/Components/CreateImageWizardV2/CreateImageWizard.tsx index 5dcb8cc2..9ba9d7f9 100644 --- a/src/Components/CreateImageWizardV2/CreateImageWizard.tsx +++ b/src/Components/CreateImageWizardV2/CreateImageWizard.tsx @@ -8,7 +8,6 @@ import { WizardStepType, useWizardContext, } from '@patternfly/react-core'; -import { useFlag } from '@unleash/proxy-client-react'; import { useNavigate, useSearchParams } from 'react-router-dom'; import DetailsStep from './steps/Details'; @@ -61,6 +60,7 @@ import { selectUseLatest, } from '../../store/wizardSlice'; import { resolveRelPath } from '../../Utilities/path'; +import useBetaFlag from '../../Utilities/useBetaFlag'; import { useGetEnvironment } from '../../Utilities/useGetEnvironment'; import { ImageBuilderHeader } from '../sharedComponents/ImageBuilderHeader'; @@ -128,8 +128,7 @@ const CreateImageWizard = ({ isEdit }: CreateImageWizardProps) => { // =========================TO REMOVE======================= - const firstbootFlag = useFlag('image-builder.firstboot.enabled'); - const isFirstBootEnabled = isBeta() && firstbootFlag; + const isFirstBootEnabled = useBetaFlag('image-builder.firstboot.enabled'); // IMPORTANT: Ensure the wizard starts with a fresh initial state useEffect(() => { dispatch(initializeWizard()); diff --git a/src/Components/CreateImageWizardV2/steps/Review/ReviewStep.tsx b/src/Components/CreateImageWizardV2/steps/Review/ReviewStep.tsx index ea0c7e4b..28dc72a6 100644 --- a/src/Components/CreateImageWizardV2/steps/Review/ReviewStep.tsx +++ b/src/Components/CreateImageWizardV2/steps/Review/ReviewStep.tsx @@ -33,6 +33,7 @@ import { selectProfile, selectRegistrationType, } from '../../../../store/wizardSlice'; +import useBetaFlag from '../../../../Utilities/useBetaFlag'; const Review = ({ snapshottingEnabled }: { snapshottingEnabled: boolean }) => { const blueprintName = useAppSelector(selectBlueprintName); @@ -68,6 +69,7 @@ const Review = ({ snapshottingEnabled }: { snapshottingEnabled: boolean }) => { const onToggleFirstBoot = (isExpandableFirstBoot: boolean) => setIsExpandedFirstBoot(isExpandableFirstBoot); + const isFirstBootEnabled = useBetaFlag('image-builder.firstboot.enabled'); return ( <> { {/* Intentional prop drilling for simplicity - To be removed */} - - onToggleFirstBoot(isExpandableFirstBoot) - } - isExpanded={isExpandableFirstBoot} - isIndented - data-testid="firstboot-expandable" - > - - + {isFirstBootEnabled && ( + + onToggleFirstBoot(isExpandableFirstBoot) + } + isExpanded={isExpandableFirstBoot} + isIndented + data-testid="firstboot-expandable" + > + + + )} {(blueprintName || blueprintDescription) && ( { + const getFlag = useFlag(flag); + const { isBeta } = useGetEnvironment(); + return isBeta() && getFlag; +}; + +export default useBetaFlag;