From 779416785febf1b5b825bbe4fcc8bcea2413c65c Mon Sep 17 00:00:00 2001 From: lucasgarfield Date: Sat, 6 Jan 2024 09:19:46 +0100 Subject: [PATCH] V2Wizard: Correctly enable/disable `Next` button for Image Output step The 'next' button is now disabled if no target environments are selected on the Image Output step. --- .../CreateImageWizardV2/CreateImageWizard.tsx | 17 ++++++++++++----- src/store/index.ts | 9 ++++++++- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/src/Components/CreateImageWizardV2/CreateImageWizard.tsx b/src/Components/CreateImageWizardV2/CreateImageWizard.tsx index 6fca9344..3e036b43 100644 --- a/src/Components/CreateImageWizardV2/CreateImageWizard.tsx +++ b/src/Components/CreateImageWizardV2/CreateImageWizard.tsx @@ -9,14 +9,14 @@ import { } from '@patternfly/react-core'; import { useNavigate } from 'react-router-dom'; -import { useAppDispatch } from '../../store/hooks'; +import ImageOutputStep from './steps/ImageOutput'; + +import { useAppDispatch, useAppSelector } from '../../store/hooks'; import './CreateImageWizard.scss'; -import { initializeWizard } from '../../store/wizardSlice'; +import { initializeWizard, selectImageTypes } from '../../store/wizardSlice'; import { resolveRelPath } from '../../Utilities/path'; import { ImageBuilderHeader } from '../sharedComponents/ImageBuilderHeader'; -import ImageOutputStep from './steps/ImageOutput'; - type CustomWizardFooterPropType = { disableNext: boolean; }; @@ -55,7 +55,14 @@ const CreateImageWizard = () => { } + footer={ + selectImageTypes(state)).length === + 0 + } + /> + } > diff --git a/src/store/index.ts b/src/store/index.ts index 3ca81c65..6b7fd618 100644 --- a/src/store/index.ts +++ b/src/store/index.ts @@ -8,7 +8,14 @@ import { imageBuilderApi } from './enhancedImageBuilderApi'; import { listenerMiddleware, startAppListening } from './listenerMiddleware'; import { provisioningApi } from './provisioningApi'; import { rhsmApi } from './rhsmApi'; -import wizardSlice, {changeArchitecture, changeDistribution, changeImageTypes, selectArchitecture, selectDistribution, selectImageTypes} from './wizardSlice'; +import wizardSlice, { + changeArchitecture, + changeDistribution, + changeImageTypes, + selectArchitecture, + selectDistribution, + selectImageTypes, +} from './wizardSlice'; export const reducer = { [contentSourcesApi.reducerPath]: contentSourcesApi.reducer,