UNPKG

@sapphire/framework

Version:

Discord bot framework built for advanced and amazing bots.

27 lines (25 loc) 1.05 kB
import { __name } from '../../chunk-PAWJFY3S.mjs'; import { RoleMentionRegex, SnowflakeRegex } from '@sapphire/discord-utilities'; import { Result } from '@sapphire/result'; import { Identifiers } from '../errors/Identifiers.mjs'; async function resolveRole(parameter, guild) { const role = await resolveById(parameter, guild) ?? resolveByQuery(parameter, guild); if (role) { return Result.ok(role); } return Result.err(Identifiers.ArgumentRoleError); } __name(resolveRole, "resolveRole"); async function resolveById(argument, guild) { const roleId = RoleMentionRegex.exec(argument) ?? SnowflakeRegex.exec(argument); return roleId ? guild.roles.fetch(roleId[1]) : null; } __name(resolveById, "resolveById"); function resolveByQuery(argument, guild) { const lowerCaseArgument = argument.toLowerCase(); return guild.roles.cache.find((role) => role.name.toLowerCase() === lowerCaseArgument) ?? null; } __name(resolveByQuery, "resolveByQuery"); export { resolveRole }; //# sourceMappingURL=role.mjs.map //# sourceMappingURL=role.mjs.map