woocommerce-paypal-payments/modules/ppcp-settings/resources/js/Components/Screens/Onboarding/Onboarding.js

50 lines
1.1 KiB
JavaScript
Raw Normal View History

2024-10-25 06:45:01 +02:00
import Container, {
PAGE_ONBOARDING,
} from '../../ReusableComponents/Container.js';
2024-10-23 15:24:52 +02:00
import StepWelcome from './StepWelcome.js';
2024-10-24 13:54:50 +02:00
import StepBusiness from './StepBusiness.js';
import StepProducts from './StepProducts.js';
import { useOnboardingStep } from '../../../data';
2024-10-23 15:24:52 +02:00
const Onboarding = () => {
const { step, setStep, setCompleted } = useOnboardingStep();
2024-10-24 06:35:48 +02:00
2024-10-23 15:24:52 +02:00
return (
2024-10-25 06:45:01 +02:00
<Container page={ PAGE_ONBOARDING }>
2024-10-23 15:24:52 +02:00
<div className="ppcp-r-card">
<Stepper
currentStep={ step }
setStep={ setStep }
setCompleted={ setCompleted }
/>
2024-10-23 15:24:52 +02:00
</div>
</Container>
);
};
const Stepper = ( { currentStep, setStep, setCompleted } ) => {
2024-10-24 13:54:50 +02:00
const stepperOrder = [ StepWelcome, StepBusiness, StepProducts ];
2024-10-24 06:35:48 +02:00
2024-10-24 13:54:50 +02:00
const renderSteps = () => {
return stepperOrder.map( ( Step, index ) => {
return (
<div
key={ index }
style={ index !== currentStep ? { display: 'none' } : {} }
>
<Step
setStep={ setStep }
currentStep={ currentStep }
setCompleted={ setCompleted }
2024-10-24 13:54:50 +02:00
stepperOrder={ stepperOrder }
/>
</div>
);
} );
};
2024-10-24 06:35:48 +02:00
2024-10-24 13:54:50 +02:00
return <>{ renderSteps() }</>;
2024-10-24 06:35:48 +02:00
};
2024-10-23 15:24:52 +02:00
export default Onboarding;