From 4f03c81ca2a227e3fed187db79efc15ea97ce446 Mon Sep 17 00:00:00 2001 From: tiffanyvu Date: Thu, 16 Jan 2025 06:23:29 -0800 Subject: [PATCH] fix(login): Redirect after login based on user roles 2 (#1028) * check in dashboard loader func * rm space * extract --- react-app/src/features/dashboard/index.tsx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/react-app/src/features/dashboard/index.tsx b/react-app/src/features/dashboard/index.tsx index 14bdd64e42..e7bc5c73cf 100644 --- a/react-app/src/features/dashboard/index.tsx +++ b/react-app/src/features/dashboard/index.tsx @@ -3,6 +3,7 @@ import { Plus as PlusIcon } from "lucide-react"; import { getUser, useGetUser } from "@/api"; import { WaiversList } from "./Lists/waivers"; import { SpasList } from "./Lists/spas"; +import { UserRoles } from "shared-types"; import { OsProvider, type OsTab, @@ -40,7 +41,14 @@ export const Dashboard = () => { const { data: userObj } = useGetUser(); const osData = useOsData(); - if (userObj === undefined) { + const isAbleToAccessDashboard = () => { + return ( + userObj.user["custom:cms-roles"] && + Object.values(UserRoles).some((role) => userObj.user["custom:cms-roles"].includes(role)) + ); + }; + + if (userObj === undefined || !isAbleToAccessDashboard()) { return ; }