chore: use DiscordBitwisePermissionFlags and PermissionStrings

This commit is contained in:
ayntee
2021-03-29 23:57:06 +04:00
parent 79d57f0377
commit 8de973f650
2 changed files with 9 additions and 2 deletions

View File

@@ -1,4 +1,5 @@
import { getGatewayBot } from "./helpers/misc/get_gateway_bot.ts";
import { DiscordGatewayIntents } from "./types/gateway/gateway_intents.ts";
import { baseEndpoints, GATEWAY_VERSION } from "./util/constants.ts";
import { spawnShards } from "./ws/shard_manager.ts";

View File

@@ -1,6 +1,10 @@
import { botId } from "../bot.ts";
import { cacheHandlers } from "../cache.ts";
import { Channel, Guild, Member, Role } from "../structures/mod.ts";
import {
DiscordBitwisePermissionFlags,
PermissionStrings,
} from "../types/mod.ts";
async function getCached(
table: "guilds",
@@ -174,12 +178,14 @@ export function botHasChannelPermissions(
/** Returns the permissions that are not in the given permissionBits */
export function missingPermissions(
permissionBits: string,
permissions: Permission[],
permissions: PermissionStrings[],
) {
if (BigInt(permissionBits) & 8n) return [];
return permissions.filter(
(permission) => !(BigInt(permissionBits) & BigInt(Permissions[permission])),
(permission) =>
!(BigInt(permissionBits) &
BigInt(DiscordBitwisePermissionFlags[permission])),
);
}