mirror of
https://github.com/fromchat-messenger/web.git
synced 2026-09-24 12:05:05 +03:00
22 lines
551 B
TypeScript
22 lines
551 B
TypeScript
import { useEffect } from "react";
|
|
import { useAppState } from "./chat/state";
|
|
import { useNavigate } from "react-router-dom";
|
|
|
|
interface ProtectedRouteProps {
|
|
children: React.ReactNode;
|
|
}
|
|
|
|
export default function ProtectedRoute({ children }: ProtectedRouteProps) {
|
|
const { user } = useAppState();
|
|
const navigate = useNavigate();
|
|
|
|
useEffect(() => {
|
|
if (!user.authToken) {
|
|
navigate("/login");
|
|
return;
|
|
}
|
|
}, [user.authToken, user.currentUser, navigate]);
|
|
|
|
return <>{children}</>;
|
|
}
|