import React, { useState } from 'react';
import Login from '../../components/Auth/Login';
import Register from '../../components/Auth/Register';

const AuthPage = () => {
  const [isRegister, setIsRegister] = useState(false);

  return (
    <div>
      {isRegister ? (
        <Register onLoginClick={() => setIsRegister(false)} />
      ) : (
        <Login onRegisterClick={() => setIsRegister(true)} />
      )}
    </div>
  );
};

export default AuthPage;