mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-13 10:03:31 +01:00
Improved Guild#createChannel, added RoleResolvable and fixed a bit of Emoji stuff (#1754)
* Made creating channels with overwrites nicer and added ClientDataResolver#resolveRole * Renamed ChannelPermissionOverwrites to ChannelCreationOverwrites * Added RoleResolvables everywhere possible * Fixed Emoji#setName resetting restricted roles and Emoji#equals Which will lead to emojis not to update when roles are being added removed.
This commit is contained in:
@@ -8,6 +8,7 @@ const Message = require('../structures/Message');
|
||||
const Guild = require('../structures/Guild');
|
||||
const Channel = require('../structures/Channel');
|
||||
const GuildMember = require('../structures/GuildMember');
|
||||
const Role = require('../structures/Role');
|
||||
const Emoji = require('../structures/Emoji');
|
||||
const ReactionEmoji = require('../structures/ReactionEmoji');
|
||||
const { Error, TypeError } = require('../errors');
|
||||
@@ -101,6 +102,27 @@ class ClientDataResolver {
|
||||
return guild.members.get(user.id) || null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Data that can be resolved to a Role object. This can be:
|
||||
* * A Role
|
||||
* * A Snowflake
|
||||
* @typedef {Role|Snowflake} RoleResolvable
|
||||
*/
|
||||
|
||||
/**
|
||||
* Resolves a RoleResolvable to a Role object.
|
||||
* @param {GuildResolvable} guild The guild that this role is part of
|
||||
* @param {RoleResolvable} role The role resolvable to resolve
|
||||
* @returns {?Role}
|
||||
*/
|
||||
resolveRole(guild, role) {
|
||||
if (role instanceof Role) return role;
|
||||
guild = this.resolveGuild(guild);
|
||||
if (!guild) return null;
|
||||
if (typeof role === 'string') return guild.roles.get(role);
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Data that can be resolved to give a Channel object. This can be:
|
||||
* * A Channel object
|
||||
|
||||
Reference in New Issue
Block a user