Files
discordeno/transformers/reverse/member.ts
ITOH 03996c5f58 refactor: revert "feat: base plugin lib idea (#2308)" (#2336)
* Revert "feat: base plugin lib idea (#2308)"

This reverts commit ffe7cdbc6f.

* fmt
2022-07-02 14:24:43 +01:00

39 lines
1.6 KiB
TypeScript

import type { Bot } from "../../bot.ts";
import { DiscordMember, DiscordUser } from "../../types/discord.ts";
import { Member, User } from "../member.ts";
export function transformUserToDiscordUser(bot: Bot, payload: User): DiscordUser {
return {
id: bot.utils.bigintToSnowflake(payload.id),
username: payload.username,
discriminator: payload.discriminator,
avatar: payload.avatar ? bot.utils.iconBigintToHash(payload.avatar) : null,
locale: payload.locale,
email: payload.email ?? undefined,
flags: payload.flags,
premium_type: payload.premiumType,
public_flags: payload.publicFlags,
bot: payload.toggles.bot,
system: payload.toggles.system,
mfa_enabled: payload.toggles.mfaEnabled,
verified: payload.toggles.verified,
};
}
export function transformMemberToDiscordMember(bot: Bot, payload: Member): DiscordMember {
return {
nick: payload.nick ?? undefined,
roles: payload.roles.map((id) => bot.utils.bigintToSnowflake(id)),
joined_at: new Date(payload.joinedAt).toISOString(),
premium_since: payload.premiumSince ? new Date(payload.premiumSince).toISOString() : undefined,
avatar: payload.avatar ? bot.utils.iconBigintToHash(payload.avatar) : undefined,
permissions: payload.permissions ? bot.utils.bigintToSnowflake(payload.permissions) : undefined,
communication_disabled_until: payload.communicationDisabledUntil
? new Date(payload.communicationDisabledUntil).toISOString()
: undefined,
deaf: payload.toggles.deaf,
mute: payload.toggles.mute,
pending: payload.toggles.pending,
};
}