feat: Update login navigation and authentication flow

- Changed navigation from '/editor' to '/tests' after successful login.
- Introduced token state management in AuthContext for better handling of authentication.
- Updated login function to store JWT instead of Google token.
- Added error handling for login and test fetching processes.

style: Enhance UI with new footer and test list styles

- Added a footer component with copyright information.
- Created a new TestList component with improved styling and animations.
- Implemented responsive design for test cards and filter tabs.
- Added loading and error states for better user experience.

fix: Improve API interaction for test fetching and password verification

- Refactored API calls to use a centralized studentApi utility.
- Enhanced error handling for API responses, including unauthorized access.
- Implemented password verification for protected tests before starting them.
This commit is contained in:
2025-10-29 11:37:19 +05:30
parent 304761e258
commit 47f73681af
11 changed files with 1416 additions and 98 deletions

View File

@@ -14,7 +14,7 @@ const Login = () => {
useEffect(() => {
const token = localStorage.getItem('monaco_token');
if (token) {
navigate('/editor');
navigate('/tests');
}
}, [navigate]);
@@ -39,7 +39,7 @@ const Login = () => {
const success = await login(userInfo.email, credentialResponse.credential, userInfo);
if (success) {
navigate('/editor');
navigate('/tests');
} else {
throw new Error('Authentication failed');
}