diff --git a/frontend/src/components/domain/setup-wizard/SetupWizard.tsx b/frontend/src/components/domain/setup-wizard/SetupWizard.tsx index 435de719..5f5a1f6c 100644 --- a/frontend/src/components/domain/setup-wizard/SetupWizard.tsx +++ b/frontend/src/components/domain/setup-wizard/SetupWizard.tsx @@ -45,6 +45,7 @@ export interface SetupStepProps { onPrevious: () => void; onComplete: (data?: any) => void; onSkip?: () => void; + onUpdate?: (state: { itemsCount?: number; canContinue?: boolean }) => void; isFirstStep: boolean; isLastStep: boolean; canContinue?: boolean; @@ -141,6 +142,13 @@ export const SetupWizard: React.FC = () => { const [isInitialized, setIsInitialized] = useState(false); const [canContinue, setCanContinue] = useState(false); + // Handle updates from step components + const handleStepUpdate = (state: { itemsCount?: number; canContinue?: boolean }) => { + if (state.canContinue !== undefined) { + setCanContinue(state.canContinue); + } + }; + // Get user progress from backend const { data: userProgress, isLoading: isLoadingProgress } = useUserProgress( user?.id || '', @@ -352,6 +360,7 @@ export const SetupWizard: React.FC = () => { onPrevious={handlePrevious} onComplete={handleStepComplete} onSkip={handleSkip} + onUpdate={handleStepUpdate} isFirstStep={currentStepIndex === 0} isLastStep={currentStepIndex === SETUP_STEPS.length - 1} canContinue={canContinue} diff --git a/frontend/src/components/domain/setup-wizard/steps/QualitySetupStep.tsx b/frontend/src/components/domain/setup-wizard/steps/QualitySetupStep.tsx index 83595c9d..024a1b83 100644 --- a/frontend/src/components/domain/setup-wizard/steps/QualitySetupStep.tsx +++ b/frontend/src/components/domain/setup-wizard/steps/QualitySetupStep.tsx @@ -262,8 +262,12 @@ export const QualitySetupStep: React.FC = ({ onUpdate }) => {