import React from 'react'; import { connect } from 'react-redux'; import { compose } from 'recompose'; import { withRouter, RouteComponentProps, Redirect } from 'react-router'; import { Switch, Route, Link } from 'react-router-dom'; import { AppState } from 'store/reducers'; import { authActions } from 'modules/auth'; import Loader from 'components/Loader'; import ExceptionPage from 'components/ExceptionPage'; import SignIn from './SignIn'; import SignUp from './SignUp'; import AccountRecovery from './AccountRecovery'; import './index.less'; interface StateProps { authUser: AppState['auth']['user']; isCheckingUser: AppState['auth']['isCheckingUser']; } type Props = StateProps & RouteComponentProps; class AuthFlow extends React.Component { renderRecover = () => ( <>

Account Recovery

Please enter your details below

Already have an account?{' '} Sign in.
); renderSignUp = () => ( <>

Create your Account

Please enter your details below

Already have an account?{' '} Sign in.
); renderSignIn = () => ( <>

Sign in

No account?{' '} Create a new account.
); render() { const { isCheckingUser, match } = this.props; if (isCheckingUser) { return ; } return (
} /> } />
); } } const withConnect = connect( state => ({ authUser: state.auth.user, isCheckingUser: state.auth.isCheckingUser, }), { checkUser: authActions.checkUser, }, ); export default compose( withRouter, withConnect, )(AuthFlow);