diff --git a/src/containers/internal/views/users/index.tsx b/src/containers/internal/views/users/index.tsx index c8e5302..433a68d 100644 --- a/src/containers/internal/views/users/index.tsx +++ b/src/containers/internal/views/users/index.tsx @@ -118,7 +118,7 @@ export const Users = () => {
User Name
-
Managed resource
+
Scope
 
{!hasValue(users) ? ( diff --git a/src/utils/use-scoped-redirect.ts b/src/utils/use-scoped-redirect.ts new file mode 100644 index 0000000..133816e --- /dev/null +++ b/src/utils/use-scoped-redirect.ts @@ -0,0 +1,23 @@ +import { useEffect } from "react"; +import { useNavigate } from "react-router-dom"; + +import { toastError } from "src/store"; + +import type { IMessage, Scope, UserData } from "src/store/types"; + +export const useScopedRedirect = ( + user: UserData, + access: Scope, + redirect: string, + message?: IMessage +) => { + const navigate = useNavigate(); + + useEffect(() => { + if (access >= user.access) { + if (message) toastError(message); + + navigate(redirect); + } + }, [user]); +};