Files
nirvana-v3/packages/desktop/src/components/ProtectedRoute/index.tsx
T

23 lines
584 B
TypeScript

import { Route, useNavigate } from "react-router-dom";
import { useGetUserDetails } from "../../controller/index";
export default function ProtectedRoute({ ...children }) {
const { isLoading, isError } = useGetUserDetails();
const navigate = useNavigate();
if (isLoading) return <span>please wait while we authenticate you</span>;
if (isError) {
// toast.error("Please sign in first!");
navigate("/login");
return <span>you are not allowed here!</span>;
}
// if we can successfully get user details, we are good to continue
return <>{children}</>;
}