UNPKG

@exoplay/exobot-adapter-discord

Version:
35 lines (29 loc) 881 B
const Action = require('./Action'); const Constants = require('../../util/Constants'); const cloneObject = require('../../util/CloneObject'); class GuildUpdateAction extends Action { handle(data) { const client = this.client; const guild = client.guilds.get(data.id); if (guild) { const oldGuild = cloneObject(guild); guild.setup(data); if (!oldGuild.equals(data)) client.emit(Constants.Events.GUILD_UPDATE, oldGuild, guild); return { old: oldGuild, updated: guild, }; } return { old: null, updated: null, }; } } /** * Emitted whenever a guild is updated - e.g. name change. * @event Client#guildUpdate * @param {Guild} oldGuild The guild before the update. * @param {Guild} newGuild The guild after the update. */ module.exports = GuildUpdateAction;