import React, { useState } from 'react'; import { updateUser } from '../helpers/userHelpers'; import styles from '../pages/Join.module.css'; // Import the module.css file const AccountUpdatePage = ({ user, showEmail, onSubmit }) => { const [formData, setFormData] = useState({ username: user.username || '', email: user.email || '', password: '●●●●●', }); const [errorMessage, setErrorMessage] = useState(''); const [successMessage, setSuccessMessage] = useState(''); // New state for success messages const [loading, setLoading] = useState(false); const [error, setError] = useState(false); const [wasInputtingPassword, setWasInputtingPassword] = useState(false); const [inputtingPassword, setInputtingPassword] = useState(false); const handleChange = (e) => { setFormData({ ...formData, [e.target.name]: e.target.value }); }; const handleSubmit = async (e) => { e.preventDefault(); // Validate password length on the frontend if (formData.password && formData.password.length < 6) { setErrorMessage('Password is too short'); return; } try { const response = await updateUser(formData); // Call the updated helper function // If there's a success message, display it if (response.message) { setSuccessMessage(response.message); // Set the success message from the response setErrorMessage(''); // Clear any previous error messages } } catch (error) { // Handle the error by displaying the error message setErrorMessage(error.message || 'Failed to update user. Please try again.'); setSuccessMessage(''); // Clear success message if there's an error } }; return (