add greeting

add locales
This commit is contained in:
mo
2026-02-22 00:09:27 +01:00
parent 453577f1b2
commit bc0a6f2526
25 changed files with 183 additions and 449 deletions

View File

@@ -0,0 +1,33 @@
import type { RolesServiceInterface } from "@avocadi/bot-core/entities/roles/roles.service";
import { createLogger } from "@avocadi/bot-core/lib/logger";
import type { GuildMember } from "discord.js";
export class RolesService implements RolesServiceInterface<GuildMember> {
private logger = createLogger("RolesService");
async assignRole(user: GuildMember, role: string) {
const roleToAssign = user.guild.roles.cache.find((r) => r.name === role);
if (!roleToAssign) {
this.logger.error(`Role ${role} not found in guild ${user.guild.name}.`);
return;
}
await user.roles.add(roleToAssign);
}
async removeRole(user: GuildMember, role: string) {
const roleToRemove = user.guild.roles.cache.find((r) => r.name === role);
if (!roleToRemove) {
this.logger.error(`Role ${role} not found in guild ${user.guild.name}.`);
return;
}
await user.roles.remove(roleToRemove);
}
async getRoles(user: GuildMember) {
return user.roles.cache.map((role) => role.name);
}
async hasRole(user: GuildMember, role: string) {
return user.roles.cache.some((r) => r.name === role);
}
}