Revert "CEC-2977 Filter portal access based on auth provider (#231)"

This reverts commit f2f046968e.
This commit is contained in:
jwu-fisker
2022-11-08 16:49:10 -08:00
parent f2f046968e
commit 33bfc4fb13
76 changed files with 912 additions and 1316 deletions

View File

@@ -1,17 +1,17 @@
import React from "react";
import { List } from "@material-ui/core";
import HomeIcon from "@material-ui/icons/Home";
import DirectionsCarIcon from "@material-ui/icons/DirectionsCar";
import CommuteIcon from "@material-ui/icons/Commute";
import CloudDownloadIcon from "@material-ui/icons/CloudDownload";
import AssessmentIcon from "@material-ui/icons/Assessment";
import BuildIcon from "@material-ui/icons/Build";
import CloudDownloadIcon from "@material-ui/icons/CloudDownload";
import CommuteIcon from "@material-ui/icons/Commute";
import DirectionsCarIcon from "@material-ui/icons/DirectionsCar";
import HomeIcon from "@material-ui/icons/Home";
import SettingsInputCompositeIcon from "@material-ui/icons/SettingsInputComposite";
import { default as React, useEffect, useState } from "react";
import { hasRole, Permissions } from "../../utils/roles";
import { useUserContext } from "../Contexts/UserContext";
import SupersetDashboardList from "../SupersetDashboardList/SupersetDashboardList";
import { Roles, hasRole } from "../../utils/roles";
import { ExpandableSideMenuItem, MenuItem } from "./MenuItem";
import SupersetDashboardList from "../SupersetDashboardList/SupersetDashboardList";
const menuData = [
{
@@ -24,60 +24,65 @@ const menuData = [
label: "Deployments",
to: "/packages",
icon: <CloudDownloadIcon />,
rolesPerProvider: Permissions.FiskerMagnaRead,
roles: [Roles.READ, Roles.CREATE],
},
{
label: "Vehicles",
to: "/vehicles",
icon: <DirectionsCarIcon />,
rolesPerProvider: Permissions.FiskerMagnaRead,
roles: [Roles.READ, Roles.CREATE],
},
{
label: "Fleets",
to: "/fleets",
icon: <CommuteIcon />,
rolesPerProvider: Permissions.FiskerRead,
roles: [Roles.READ, Roles.CREATE],
},
{
label: "Datascope",
to: null,
icon: <AssessmentIcon />,
rolesPerProvider: Permissions.FiskerRead,
component: SupersetDashboardList,
roles: [Roles.READ, Roles.CREATE],
component: SupersetDashboardList
},
{
label: "Suppliers",
to: "/suppliers",
icon: <SettingsInputCompositeIcon />,
rolesPerProvider: Permissions.FiskerSupplierAdmin,
roles: [Roles.APPROVESUPPLIERS],
},
{
label: "Tools",
to: "/tools/certificates/add",
icon: <BuildIcon />,
rolesPerProvider: Permissions.FiskerTools,
roles: [Roles.CERTIFICATES, Roles.APPROVESUPPLIERS],
submenus: [
{
label: "Certificate",
to: "/tools/certificates/add",
rolesPerProvider: Permissions.FiskerCertificate,
roles: [Roles.CERTIFICATES],
},
{
label: "SMS",
to: "/tools/sms/send",
rolesPerProvider: Permissions.FiskerCreate,
},
roles: [Roles.CREATE],
}
],
},
];
const SideMenu = () => {
const { groups, providers } = useUserContext();
const [menu, setMenu] = useState(menuData);
useEffect(() => {
filterAccessible(groups, providers, setMenu);
}, [groups, providers]);
const SideMenu = () => {
const { groups } = useUserContext();
const menu = menuData.reduce((result, item) => {
if (hasRole(item.roles, groups)) {
result.push(item);
}
return result;
}, []);
return (
<List>
@@ -91,14 +96,4 @@ const SideMenu = () => {
);
};
const filterAccessible = (groups, providers, setMenu) => {
const filteredMenu = menuData.reduce((result, item) => {
if (hasRole(groups, item.rolesPerProvider, providers)) {
result.push(item);
}
return result;
}, []);
setMenu(filteredMenu);
};
export default SideMenu;
export default SideMenu;