import type { PermissionKey } from "@mrp/shared"; import { Navigate, Outlet } from "react-router-dom"; import { useAuth } from "../auth/AuthProvider"; export function ProtectedRoute({ requiredPermissions = [] }: { requiredPermissions?: PermissionKey[] }) { const { isReady, token, user } = useAuth(); if (!isReady) { return
Loading workspace...
; } if (!token || !user) { return ; } const permissionSet = new Set(user.permissions); const allowed = requiredPermissions.every((permission) => permissionSet.has(permission)); return allowed ? : ; }