3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-10 04:25:01 +00:00

Merge branch 'master' into 220601_docker_wip

This commit is contained in:
Dragory 2022-06-26 14:35:32 +03:00
commit b48b93a6de
No known key found for this signature in database
GPG key ID: 5F387BA66DF8AAC1
36 changed files with 242 additions and 178 deletions

View file

@ -1,8 +1,8 @@
import { GuildChannel, GuildMember } from "discord.js";
import { GuildMember, GuildTextBasedChannel } from "discord.js";
import { getMissingChannelPermissions } from "./getMissingChannelPermissions";
import { readChannelPermissions } from "./readChannelPermissions";
export function canReadChannel(channel: GuildChannel, member: GuildMember) {
export function canReadChannel(channel: GuildTextBasedChannel, member: GuildMember) {
// Not missing permissions required to read the channel = can read channel
return !getMissingChannelPermissions(member, channel, readChannelPermissions);
}

View file

@ -1,4 +1,4 @@
import { GuildChannel, GuildMember, ThreadChannel } from "discord.js";
import { GuildMember, GuildTextBasedChannel } from "discord.js";
import { getMissingPermissions } from "./getMissingPermissions";
/**
@ -7,7 +7,7 @@ import { getMissingPermissions } from "./getMissingPermissions";
*/
export function getMissingChannelPermissions(
member: GuildMember,
channel: GuildChannel | ThreadChannel,
channel: GuildTextBasedChannel,
requiredPermissions: number | bigint,
): bigint {
const memberChannelPermissions = channel.permissionsFor(member.id);

View file

@ -1,4 +1,4 @@
import { Snowflake, TextChannel } from "discord.js";
import { GuildTextBasedChannel, Snowflake, TextChannel } from "discord.js";
import { GuildPluginData } from "knub";
import { getChannelIdFromMessageId } from "../data/getChannelIdFromMessageId";
import { isSnowflake } from "../utils";
@ -7,7 +7,7 @@ const channelAndMessageIdRegex = /^(\d+)[\-\/](\d+)$/;
const messageLinkRegex = /^https:\/\/(?:\w+\.)?discord(?:app)?\.com\/channels\/\d+\/(\d+)\/(\d+)$/i;
export interface MessageTarget {
channel: TextChannel;
channel: GuildTextBasedChannel;
messageId: string;
}
@ -47,7 +47,7 @@ export async function resolveMessageTarget(pluginData: GuildPluginData<any>, val
}
const channel = pluginData.guild.channels.resolve(result.channelId as Snowflake);
if (!channel || !(channel instanceof TextChannel)) {
if (!channel?.isText()) {
return null;
}