From 947f8114d2caf36838769cd2fc34cad2b495a25c Mon Sep 17 00:00:00 2001 From: Ravindranbit Date: Tue, 28 Apr 2026 15:32:09 +0530 Subject: [PATCH] fix(auth): sign-out clears auth and redirects to /login --- components/layouts/header.tsx | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/components/layouts/header.tsx b/components/layouts/header.tsx index 2e14c2c..99934ef 100644 --- a/components/layouts/header.tsx +++ b/components/layouts/header.tsx @@ -22,6 +22,7 @@ import IconUser from '@/components/icon/icon-user'; import IconMail from '@/components/icon/icon-mail'; import IconLockDots from '@/components/icon/icon-lock-dots'; import IconLogout from '@/components/icon/icon-logout'; +import Cookies from 'universal-cookie'; import IconMenuDashboard from '@/components/icon/menu/icon-menu-dashboard'; import IconCaretDown from '@/components/icon/icon-caret-down'; import IconMenuApps from '@/components/icon/menu/icon-menu-apps'; @@ -80,6 +81,29 @@ const Header = () => { router.refresh(); }; + const handleSignOut = () => { + try { + const cookies = new Cookies(); + // remove common auth cookies if present + cookies.remove('token', { path: '/' }); + cookies.remove('auth', { path: '/' }); + cookies.remove('i18nextLng', { path: '/' }); + } catch (e) { + // ignore + } + + // remove known localStorage keys (avoid removing theme prefs) + try { + localStorage.removeItem('authToken'); + localStorage.removeItem('user'); + } catch (e) { + // ignore + } + + // Redirect to the login page. app/(auth)/login maps to `/login` in the URL. + router.replace('/login'); + }; + function createMarkup(messages: any) { return { __html: messages }; } @@ -225,10 +249,10 @@ const Header = () => {
  • - +