import React, { useState } from 'react'; import { useNavigate, Link } from 'react-router-dom'; import { authService, LoginData } from '../services/membershipService'; const Login: React.FC = () => { const navigate = useNavigate(); const [formData, setFormData] = useState({ email: '', password: '' }); const [error, setError] = useState(''); const [loading, setLoading] = useState(false); const handleChange = (e: React.ChangeEvent) => { setFormData({ ...formData, [e.target.name]: e.target.value }); }; const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); setError(''); setLoading(true); try { await authService.login(formData); navigate('/dashboard'); } catch (err: any) { console.error('Login error:', err.response?.data); // Debug log const errorDetail = err.response?.data?.detail; if (typeof errorDetail === 'string') { setError(errorDetail); } else if (errorDetail && typeof errorDetail === 'object') { // Handle validation error objects setError('Login failed. Please check your credentials.'); } else { setError('Login failed. Please check your credentials.'); } } finally { setLoading(false); } }; return (

Welcome to SASA

REPLACE WITH BOB WORDS: Swansea Airport Stakeholder's Association (SASA) is a community interest company run by volunteers, which holds the lease of Swansea Airport.

Join our community of aviation enthusiasts and support the future of Swansea Airport.

SASA Member Portal

Log in to your membership account

{error &&
{error}
}
Forgot your password?
); }; export default Login;