feat: implement authentication flow with login page, middleware protection, and session-based role management
This commit is contained in:
19
src/lib/auth.ts
Normal file
19
src/lib/auth.ts
Normal file
@@ -0,0 +1,19 @@
|
||||
export const isAuthenticated = (): boolean => {
|
||||
return typeof window !== 'undefined' && !!sessionStorage.getItem('authToken');
|
||||
};
|
||||
|
||||
export const getUserRole = (): string | null => {
|
||||
return typeof window !== 'undefined' ? sessionStorage.getItem('userRole') : null;
|
||||
};
|
||||
|
||||
export const getUserName = (): string | null => {
|
||||
return typeof window !== 'undefined' ? sessionStorage.getItem('userName') : null;
|
||||
};
|
||||
|
||||
export const logout = () => {
|
||||
if (typeof window !== 'undefined') {
|
||||
sessionStorage.removeItem('authToken');
|
||||
sessionStorage.removeItem('userRole');
|
||||
sessionStorage.removeItem('userName');
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user