UNPKG

@sapphire/framework

Version:

Discord bot framework built for advanced and amazing bots.

23 lines (21 loc) 1.06 kB
"use strict"; const require_lib_errors_Identifiers = require('../errors/Identifiers.cjs'); let __sapphire_result = require("@sapphire/result"); let __sapphire_discord_utilities = require("@sapphire/discord-utilities"); //#region src/lib/resolvers/role.ts async function resolveRole(parameter, guild) { const role = await resolveById(parameter, guild) ?? resolveByQuery(parameter, guild); if (role) return __sapphire_result.Result.ok(role); return __sapphire_result.Result.err(require_lib_errors_Identifiers.Identifiers.ArgumentRoleError); } async function resolveById(argument, guild) { const roleId = __sapphire_discord_utilities.RoleMentionRegex.exec(argument) ?? __sapphire_discord_utilities.SnowflakeRegex.exec(argument); return roleId ? guild.roles.fetch(roleId[1]) : null; } function resolveByQuery(argument, guild) { const lowerCaseArgument = argument.toLowerCase(); return guild.roles.cache.find((role) => role.name.toLowerCase() === lowerCaseArgument) ?? null; } //#endregion exports.resolveRole = resolveRole; //# sourceMappingURL=role.cjs.map