UNPKG

773 BPlain TextView Raw
1const log = logger.withScope('discord:login:fetchWebhooks')
2
3import { Collection } from 'discord.js'
4
5export default async () => {
6 const guilds = discord.guilds.filter(
7 guild => guild.channels.some(
8 channel => connections.hasEndpoint(channel.id)
9 )
10 )
11 log.trace('used guilds', guilds, 1)
12
13 // get all webhooks
14 const webhooks = (await Promise.all(guilds
15 .filter(guild => {
16 const myself = guild.members.find(member => member.id === discord.client.user.id)
17 return myself.hasPermission('MANAGE_WEBHOOKS')
18 })
19 .map(guild => guild.fetchWebhooks())
20 )).reduce((a, b) => a.concat(b), new Collection())
21 discord.webhooks = webhooks.filter(webhook => webhook.name.startsWith('Miscord #'))
22
23 log.trace('webhooks', discord.webhooks, 1)
24}