import { useEffect } from "@wordpress/element"; import { __ } from '@wordpress/i18n'; import Icon from "../utils/Icon"; import Placeholder from '../Placeholder/Placeholder'; import useFields from "../Settings/FieldsData"; import useOnboardingData from "./OnboardingData"; import OnboardingControls from "./OnboardingControls"; import StepEmail from "./Steps/StepEmail"; import StepConfig from "./Steps/StepConfig"; import StepLicense from "./Steps/StepLicense"; import StepFeatures from "./Steps/StepFeatures"; import StepPlugins from "./Steps/StepPlugins"; import StepPro from "./Steps/StepPro"; import './PremiumItem.scss'; import './checkbox.scss'; import './onboarding.scss'; import DOMPurify from 'dompurify'; const Onboarding = ({isModal}) => { const { fetchFieldsData, fieldsLoaded} = useFields(); const { getSteps, error, networkwide, sslEnabled, dataLoaded, processing, currentStep, currentStepIndex, networkActivationStatus, networkProgress, activateSSLNetworkWide, emailVerified } = useOnboardingData(); // Single effect to initialize useEffect(() => { getSteps(false); }, []); // Empty dependency array if (error){ return ( ) } let processingClass = ''; return ( <> { !dataLoaded && <>
} { dataLoaded &&
{ currentStep.id === 'activate_ssl' && <> } { currentStep.id === 'activate_license' && <> } { currentStep.id === 'features'&& <> } {currentStep.id === 'email' && !emailVerified && ( )} { currentStep.id === 'plugins' && <> } { currentStep.id === 'pro' && <> } { !isModal && }
} ) } export default Onboarding;