|
|
@@ -67,6 +67,7 @@ import { |
|
|
MAINTAIN_TEAM, |
|
|
MAINTAIN_TEAM, |
|
|
MAINTAIN_GROUP, |
|
|
MAINTAIN_GROUP, |
|
|
MAINTAIN_HOLIDAY, |
|
|
MAINTAIN_HOLIDAY, |
|
|
|
|
|
VIEW_PROJECT_RESOURCE_CONSUMPTION_RANKING, |
|
|
} from "@/middleware"; |
|
|
} from "@/middleware"; |
|
|
import { SessionWithAbilities } from "../AppBar/NavigationToggle"; |
|
|
import { SessionWithAbilities } from "../AppBar/NavigationToggle"; |
|
|
import { authOptions } from "@/config/authConfig"; |
|
|
import { authOptions } from "@/config/authConfig"; |
|
|
@@ -131,6 +132,9 @@ const NavigationContent: React.FC<Props> = ({ abilities, username }) => { |
|
|
icon: <AccountTreeIcon />, |
|
|
icon: <AccountTreeIcon />, |
|
|
label: "Project Resource Consumption Ranking", |
|
|
label: "Project Resource Consumption Ranking", |
|
|
path: "/dashboard/ProjectResourceConsumptionRanking", |
|
|
path: "/dashboard/ProjectResourceConsumptionRanking", |
|
|
|
|
|
isHidden: ![VIEW_PROJECT_RESOURCE_CONSUMPTION_RANKING].some((ability) => |
|
|
|
|
|
abilities!.includes(ability), |
|
|
|
|
|
) |
|
|
}, |
|
|
}, |
|
|
{ |
|
|
{ |
|
|
icon: <PeopleIcon />, |
|
|
icon: <PeopleIcon />, |
|
|
@@ -273,7 +277,7 @@ const NavigationContent: React.FC<Props> = ({ abilities, username }) => { |
|
|
abilities!.includes(ability), |
|
|
abilities!.includes(ability), |
|
|
), |
|
|
), |
|
|
children: [ |
|
|
children: [ |
|
|
{ |
|
|
|
|
|
|
|
|
{ |
|
|
icon: <GroupIcon />, |
|
|
icon: <GroupIcon />, |
|
|
label: "Client", |
|
|
label: "Client", |
|
|
path: "/settings/customer", |
|
|
path: "/settings/customer", |
|
|
@@ -285,19 +289,19 @@ const NavigationContent: React.FC<Props> = ({ abilities, username }) => { |
|
|
path: "/settings/subsidiary", |
|
|
path: "/settings/subsidiary", |
|
|
isHidden: ![VIEW_SUBSIDIARY, MAINTAIN_SUBSIDIARY].some((ability) => abilities!.includes(ability),), |
|
|
isHidden: ![VIEW_SUBSIDIARY, MAINTAIN_SUBSIDIARY].some((ability) => abilities!.includes(ability),), |
|
|
}, |
|
|
}, |
|
|
{ |
|
|
|
|
|
icon: <Staff />, |
|
|
|
|
|
label: "Staff", |
|
|
|
|
|
|
|
|
{ |
|
|
|
|
|
icon: <Staff />, |
|
|
|
|
|
label: "Staff", |
|
|
path: "/settings/staff", |
|
|
path: "/settings/staff", |
|
|
isHidden: ![VIEW_STAFF, MAINTAIN_STAFF].some((ability) => abilities!.includes(ability),), |
|
|
isHidden: ![VIEW_STAFF, MAINTAIN_STAFF].some((ability) => abilities!.includes(ability),), |
|
|
}, |
|
|
}, |
|
|
{ |
|
|
|
|
|
|
|
|
{ |
|
|
icon: <Company />, |
|
|
icon: <Company />, |
|
|
label: "Company", |
|
|
label: "Company", |
|
|
path: "/settings/company", |
|
|
path: "/settings/company", |
|
|
isHidden: ![VIEW_COMPANY, MAINTAIN_COMPANY].some((ability) => abilities!.includes(ability),), |
|
|
isHidden: ![VIEW_COMPANY, MAINTAIN_COMPANY].some((ability) => abilities!.includes(ability),), |
|
|
}, |
|
|
}, |
|
|
{ |
|
|
|
|
|
|
|
|
{ |
|
|
icon: <EmojiEventsIcon />, |
|
|
icon: <EmojiEventsIcon />, |
|
|
label: "Skill", |
|
|
label: "Skill", |
|
|
path: "/settings/skill", |
|
|
path: "/settings/skill", |
|
|
@@ -309,19 +313,19 @@ const NavigationContent: React.FC<Props> = ({ abilities, username }) => { |
|
|
path: "/settings/department", |
|
|
path: "/settings/department", |
|
|
isHidden: ![VIEW_DEPARTMENT, MAINTAIN_DEPARTMENT].some((ability) => abilities!.includes(ability),), |
|
|
isHidden: ![VIEW_DEPARTMENT, MAINTAIN_DEPARTMENT].some((ability) => abilities!.includes(ability),), |
|
|
}, |
|
|
}, |
|
|
{ |
|
|
|
|
|
|
|
|
{ |
|
|
icon: <Position />, |
|
|
icon: <Position />, |
|
|
label: "Position", |
|
|
label: "Position", |
|
|
path: "/settings/position", |
|
|
path: "/settings/position", |
|
|
isHidden: ![VIEW_POSITION, MAINTAIN_POSITION].some((ability) => abilities!.includes(ability),), |
|
|
isHidden: ![VIEW_POSITION, MAINTAIN_POSITION].some((ability) => abilities!.includes(ability),), |
|
|
}, |
|
|
}, |
|
|
{ |
|
|
|
|
|
|
|
|
{ |
|
|
icon: <Salary />, |
|
|
icon: <Salary />, |
|
|
label: "Salary", |
|
|
label: "Salary", |
|
|
path: "/settings/salary", |
|
|
path: "/settings/salary", |
|
|
isHidden: ![VIEW_SALARY, MAINTAIN_SALARY].some((ability) => abilities!.includes(ability),), |
|
|
isHidden: ![VIEW_SALARY, MAINTAIN_SALARY].some((ability) => abilities!.includes(ability),), |
|
|
}, |
|
|
}, |
|
|
{ |
|
|
|
|
|
|
|
|
{ |
|
|
icon: <Team />, |
|
|
icon: <Team />, |
|
|
label: "Team", |
|
|
label: "Team", |
|
|
path: "/settings/team", |
|
|
path: "/settings/team", |
|
|
@@ -334,7 +338,7 @@ const NavigationContent: React.FC<Props> = ({ abilities, username }) => { |
|
|
path: "/settings/group", |
|
|
path: "/settings/group", |
|
|
isHidden: ![VIEW_GROUP, MAINTAIN_GROUP].some((ability) => abilities!.includes(ability),), |
|
|
isHidden: ![VIEW_GROUP, MAINTAIN_GROUP].some((ability) => abilities!.includes(ability),), |
|
|
}, |
|
|
}, |
|
|
{ |
|
|
|
|
|
|
|
|
{ |
|
|
icon: <Holiday />, |
|
|
icon: <Holiday />, |
|
|
label: "Holiday", |
|
|
label: "Holiday", |
|
|
path: "/settings/holiday", |
|
|
path: "/settings/holiday", |
|
|
|