3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-03-15 05:41:51 +00:00

Tweaks to hasDiscordPermissions()

This commit is contained in:
Dragory 2021-08-14 16:30:40 +03:00
parent ddf9ee3078
commit 124bbfdc18
No known key found for this signature in database
GPG key ID: 5F387BA66DF8AAC1

View file

@ -1,4 +1,4 @@
import { Permissions } from "discord.js"; import { Permissions, PermissionString } from "discord.js";
/** /**
* @param resolvedPermissions A Permission object from e.g. GuildChannel#permissionsOf() or Member#permission * @param resolvedPermissions A Permission object from e.g. GuildChannel#permissionsOf() or Member#permission
@ -8,12 +8,14 @@ export function hasDiscordPermissions(
resolvedPermissions: Permissions | Readonly<Permissions> | null, resolvedPermissions: Permissions | Readonly<Permissions> | null,
requiredPermissions: number | bigint, requiredPermissions: number | bigint,
) { ) {
const allowedPermissions = resolvedPermissions; if (resolvedPermissions == null) {
const nRequiredPermissions = requiredPermissions; return false;
}
if (Boolean(allowedPermissions?.bitfield! & Permissions.FLAGS.ADMINISTRATOR)) { if (resolvedPermissions.has(Permissions.FLAGS.ADMINISTRATOR)) {
return true; return true;
} }
return Boolean((allowedPermissions?.bitfield! & BigInt(nRequiredPermissions)) === nRequiredPermissions); const nRequiredPermissions = BigInt(requiredPermissions);
return Boolean((resolvedPermissions?.bitfield! & nRequiredPermissions) === nRequiredPermissions);
} }