28 lines
908 B
JavaScript
28 lines
908 B
JavaScript
import { useSelectedProject } from "../slices/apiDataManager";
|
|
import { useAllProjectLevelPermissions, useProfile } from "./useProfile";
|
|
|
|
export const useHasUserPermission = (permission) => {
|
|
const selectedProject = useSelectedProject();
|
|
const { profile } = useProfile();
|
|
const {
|
|
data: projectPermissions = [],
|
|
isLoading,
|
|
isError,
|
|
} = useAllProjectLevelPermissions();
|
|
// set selectedProject to call api- selectedProject
|
|
if (isLoading || !permission) return false;
|
|
|
|
const globalPerms = profile?.featurePermissions ?? [];
|
|
// const projectPerms = projectPermissions ?? [];
|
|
// if (selectedProject) {
|
|
// if (projectPerms.length === 0) {
|
|
// return projectPerms.includes(permission);
|
|
// } else {
|
|
// return projectPerms.includes(permission);
|
|
// }
|
|
// } else {
|
|
// return globalPerms.includes(permission);
|
|
// }
|
|
return globalPerms.includes(permission);
|
|
};
|