import React, { useCallback } from 'react'; import { TransitionGroup, CSSTransition } from 'react-transition-group'; import { Wizard, Steps, Step } from 'react-albus'; import { useHistory } from "react-router-dom"; import { connect } from 'react-redux'; import WizardSetupSteps from './WizardSetupSteps'; import SetupSubscriptionForm from './SetupSubscriptionForm'; import SetupOrganizationForm from './SetupOrganizationForm'; import SetupInitializingForm from './SetupInitializingForm'; import withAuthentication from 'containers/Authentication/withAuthentication'; import withOrganization from 'containers/Organization/withOrganization' import { compose } from 'utils'; /** * Wizard setup right section. */ function SetupRightSection ({ // #withAuthentication currentOrganizationId, // #withOrganization isOrganizationInitialized, isOrganizationSubscribed: hasSubscriptions, isOrganizationSeeded }) { const history = useHistory(); const handleSkip = useCallback(({ step, push }) => { const scenarios = [ { condition: !hasSubscriptions, redirectTo: 'subscription' }, { condition: hasSubscriptions && !isOrganizationInitialized, redirectTo: 'initializing' }, { condition: hasSubscriptions && !isOrganizationSeeded, redirectTo: 'organization' }, ]; const scenario = scenarios.find((scenario) => scenario.condition); if (scenario) { push(scenario.redirectTo); } }, [ hasSubscriptions, isOrganizationInitialized, isOrganizationSeeded, ]); return (
(

Ice King

)} />
) } export default compose( withAuthentication(({ currentOrganizationId }) => ({ currentOrganizationId })), connect((state, props) => ({ organizationId: props.currentOrganizationId, })), withOrganization(({ organization, isOrganizationInitialized, isOrganizationSubscribed, isOrganizationSeeded, }) => ({ organization, isOrganizationInitialized, isOrganizationSubscribed, isOrganizationSeeded, })), )(SetupRightSection);