diff --git a/frontend/src/components/navbar/Header.tsx b/frontend/src/components/navbar/Header.tsx index 2e5f09d81..6896c7f44 100644 --- a/frontend/src/components/navbar/Header.tsx +++ b/frontend/src/components/navbar/Header.tsx @@ -1,10 +1,10 @@ import React, { useState } from 'react'; import { motion, AnimatePresence } from 'framer-motion'; -import { Link } from 'react-router-dom'; import { Button } from '@/src/components/buttons/button'; import { useIsMobile } from '@/src/hooks/use-mobile'; import UserIcon from '@/src/components/navbar/UserIcon'; import ThemeToggle from '@/src/components/theme/ThemeToggle'; +import { useNavigate } from 'react-router-dom'; interface HeaderProps { logoSrc?: string; @@ -19,6 +19,7 @@ const Header = ({ }: HeaderProps) => { const [mobileMenuOpen, setMobileMenuOpen] = useState(false); const isMobile = useIsMobile(); + const navigate = useNavigate(); const toggleMobileMenu = () => { setMobileMenuOpen(!mobileMenuOpen); @@ -28,7 +29,7 @@ const Header = ({ e.preventDefault(); e.stopPropagation(); console.log('🚀 Using window.location.href to navigate to: /'); - window.location.href = '/'; + navigate('/'); }; return ( <> @@ -52,15 +53,16 @@ const Header = ({ {/* Desktop Navigation - shown when not mobile */} {!isMobile && !isLoggedIn && ( )} {/* Show UserIcon only when logged in */} @@ -100,16 +102,26 @@ const Header = ({ transition={{ duration: 0.3 }} >
- setMobileMenuOpen(false)} + onClick={() => { + setMobileMenuOpen(false); + navigate('/auth/sign-in'); + }} > Sign In - - setMobileMenuOpen(false)}> + + - +
)} diff --git a/frontend/src/components/navbar/UserIcon.tsx b/frontend/src/components/navbar/UserIcon.tsx index 25bfc563f..5acf318d7 100644 --- a/frontend/src/components/navbar/UserIcon.tsx +++ b/frontend/src/components/navbar/UserIcon.tsx @@ -1,6 +1,6 @@ import React, { useEffect, useState } from 'react'; import { User, List, MessageCircle } from 'lucide-react'; -import { Link, useNavigate } from 'react-router-dom'; +import { useNavigate } from 'react-router-dom'; import { assessmentApi } from '@/src/pages/assessment/api'; import { getConversationsList } from '@/src/pages/chat/sidebar/api/get-list/getConversationsList'; import { useAuth } from '@/src/pages/auth/context/useAuthContext'; @@ -40,28 +40,32 @@ const UserIcon: React.FC = () => { e.preventDefault(); e.stopPropagation(); console.log('🚀 Using window.location.href to navigate to: /user/profile'); - window.location.href = '/user/profile'; + navigate('/user/profile'); }; const handleHistoryClick = (e: React.MouseEvent) => { e.preventDefault(); e.stopPropagation(); console.log('🚀 Using window.location.href to navigate to: /assessment/history'); - window.location.href = '/assessment/history'; + navigate('/assessment/history'); }; const handleChatClick = (e: React.MouseEvent) => { e.preventDefault(); e.stopPropagation(); console.log('🚀 Using window.location.href to navigate to: /chat'); - window.location.href = '/chat'; + navigate('/chat'); + }; + + const handleNavigation = () => { + navigate('/'); }; if (!isAuthenticated) { return ( - + ); } @@ -69,6 +73,7 @@ const UserIcon: React.FC = () => {
{!loading && hasConversations && ( )} -
{error ? ( @@ -104,7 +106,7 @@ export default function HistoryPage() {
- + ); })}