mirror of
https://github.com/danbulant/discord.js
synced 2026-05-27 14:02:02 +00:00
* Add support for new Invite events * Merge typings for events Co-Authored-By: Sugden <leoaustin675@gmail.com> * Add warning about requiring permissions * Null check channel and guild * fix: .guilds not .channels
28 lines
940 B
JavaScript
28 lines
940 B
JavaScript
'use strict';
|
|
|
|
const Action = require('./Action');
|
|
const Invite = require('../../structures/Invite');
|
|
const { Events } = require('../../util/Constants');
|
|
|
|
class InviteCreateAction extends Action {
|
|
handle(data) {
|
|
const client = this.client;
|
|
const channel = client.channels.get(data.channel_id);
|
|
const guild = client.guilds.get(data.guild_id);
|
|
if (!channel && !guild) return false;
|
|
|
|
const inviteData = Object.assign(data, { channel, guild });
|
|
const invite = new Invite(client, inviteData);
|
|
/**
|
|
* Emitted when an invite is created.
|
|
* <info> This event only triggers if the client has `MANAGE_GUILD` permissions for the guild,
|
|
* or `MANAGE_CHANNEL` permissions for the channel.</info>
|
|
* @event Client#inviteCreate
|
|
* @param {Invite} invite The invite that was created
|
|
*/
|
|
client.emit(Events.INVITE_CREATE, invite);
|
|
return { invite };
|
|
}
|
|
}
|
|
|
|
module.exports = InviteCreateAction;
|