apps/bot/src/lib/db.ts (view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
import { User, type APIInteractionGuildMember } from "discord.js";
import { GuildMember } from "discord.js";
import { upsertUser as _upsertUser } from "@stealth-developers/db";
export async function upsertUser(input: APIInteractionGuildMember | GuildMember | User) {
if ("user" in input) {
const member = input;
const user = member.user;
const nick = member instanceof GuildMember ? member.nickname : member.nick;
const displayName = user instanceof User ? user.globalName : user.global_name;
return _upsertUser({
id: user.id,
avatar: member.avatar || member.user.avatar,
username: user.username,
displayName: nick || displayName,
});
}
const user = input;
return _upsertUser({
id: user.id,
avatar: user.avatar,
username: user.username,
displayName: user.displayName,
});
}
|