3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-03-19 07:20:00 +00:00
zeppelin/backend/src/utils/getMissingChannelPermissions.ts

17 lines
600 B
TypeScript
Raw Normal View History

2021-05-31 03:30:55 +02:00
import { GuildMember, GuildChannel } from "discord.js";
import { getMissingPermissions } from "./getMissingPermissions";
/**
* @param requiredPermissions Bitmask of required permissions
* @return Bitmask of missing permissions
*/
export function getMissingChannelPermissions(
2021-05-31 03:30:55 +02:00
member: GuildMember,
channel: GuildChannel,
requiredPermissions: number | bigint,
): bigint {
2021-05-31 03:30:55 +02:00
const memberChannelPermissions = channel.permissionsFor(member.id);
if (!memberChannelPermissions) return BigInt(requiredPermissions);
return getMissingPermissions(memberChannelPermissions, requiredPermissions);
}