From 74666ba44c6fa402822665c809cc675c168f11b5 Mon Sep 17 00:00:00 2001 From: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com> Date: Wed, 15 Jun 2022 13:37:57 +0000 Subject: [PATCH] fix(transformer): partial user in presence --- transformers/presence.ts | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/transformers/presence.ts b/transformers/presence.ts index 6159d5e7b..403ff7e3e 100644 --- a/transformers/presence.ts +++ b/transformers/presence.ts @@ -1,6 +1,7 @@ import { Bot } from "../bot.ts"; import { DiscordPresenceUpdate } from "../types/discord.ts"; import { Optionalize } from "../types/shared.ts"; +import { UserToggles } from "./toggles/user.ts"; export const statusTypes = Object.freeze({ online: 0, @@ -12,7 +13,18 @@ export const statusTypes = Object.freeze({ export function transformPresence(bot: Bot, payload: DiscordPresenceUpdate) { const presence = { - user: bot.transformers.user(bot, payload.user), + user: { + id: bot.transformers.snowflake(payload.user.id || ""), + username: payload.user.username ?? undefined, + discriminator: payload.user.discriminator ?? undefined, + avatar: payload.user.avatar ? bot.utils.iconHashToBigInt(payload.user.avatar) : undefined, + locale: payload.user.locale ?? undefined, + email: payload.user.email ?? undefined, + flags: payload.user.flags ?? undefined, + premiumType: payload.user.premium_type ?? undefined, + publicFlags: payload.user.public_flags ?? undefined, + toggles: new UserToggles(payload.user), + }, guildId: bot.transformers.snowflake(payload.guild_id), status: statusTypes[payload.status], activities: payload.activities.map((activity) => bot.transformers.activity(bot, activity)),