Files
mtdb_movie/resources/client/use-auth-click-capture.ts
maher 703f50a09d
Some checks failed
Build / run (push) Has been cancelled
first commit
2025-10-29 11:42:25 +01:00

27 lines
681 B
TypeScript
Executable File

import {MouseEvent, useCallback} from 'react';
import {useAuth} from '@common/auth/use-auth';
import {useNavigate} from '@common/utils/hooks/use-navigate';
import {useDialogContext} from '@common/ui/overlays/dialog/dialog-context';
export function useAuthClickCapture() {
const dialogContext = useDialogContext();
const {isLoggedIn} = useAuth();
const navigate = useNavigate();
return useCallback(
(e: MouseEvent) => {
if (!isLoggedIn) {
e.preventDefault();
e.stopPropagation();
if (dialogContext) {
dialogContext.close();
}
navigate('/login');
}
},
[navigate, isLoggedIn, dialogContext]
);
}