diff --git a/src/commands/utils/info.ts b/src/commands/utils/info.ts index 8c5f917..1c5cade 100644 --- a/src/commands/utils/info.ts +++ b/src/commands/utils/info.ts @@ -12,6 +12,7 @@ import { import emoji from '../../../assets/emoji.json' assert { type: 'json' }; import { User as UserPrisma } from '@prisma/client'; import { Guild as GuildPrisma } from '@prisma/client'; +import { getUserRoles } from '@lib/roles'; import { log } from '@lib/log'; function getGuildRoles(guild: Guild): string { @@ -23,15 +24,6 @@ function getGuildRoles(guild: Guild): string { return roles.length > 0 ? roles.join(', ') : 'No role'; } -function getUserRoles(target: GuildMember): string { - const roles = target.roles.cache - .filter((role) => role.id !== target.guild.id) - .sort((a, b) => b.position - a.position) - .map((role) => roleMention(role.id)); - - return roles.length > 0 ? roles.join(', ') : 'No role'; -} - function getUserBadges(userData: { isDev?: boolean; isEnium?: boolean; diff --git a/src/lib/roles.ts b/src/lib/roles.ts new file mode 100644 index 0000000..bd0976f --- /dev/null +++ b/src/lib/roles.ts @@ -0,0 +1,10 @@ +import { GuildMember, roleMention } from 'discord.js'; + +export function getUserRoles(target: GuildMember): string { + const roles = target.roles.cache + .filter((role) => role.id !== target.guild.id) + .sort((a, b) => b.position - a.position) + .map((role) => roleMention(role.id)); + + return roles.length > 0 ? roles.join(', ') : 'No role'; +}