import { User } from "../contexts/UserContext";

import { hasGroup } from "./has_group";
import { hasPermission } from "./has_permission";

export function hasAccess(
  user: User | null | undefined,
  permission: string | null | undefined,
  group: string | null | undefined,
): boolean {
  let access = false;
  if (user == null) access = false;
  if (permission == null && group == null) access = true;
  if (group != null) access = hasGroup(user, group);
  if (permission != null) access = hasPermission(user, permission);
  return access;
}
