mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-01 16:30:08 +00:00
* fix: check new types idea * fix: type errors * fix: new style * fix: more cleanup * fix: more cleanup * fix: cleanup audit logs * fix: cleanup stickers * fix: cleanup integrations * fix: more cleanup * fix: organize into 1 place * fix: few errors * fix: some broken import fixes * fix: quite a lot of fixes across the board * fix: more fixes for broken imports * fix: more fixes for broken imports * fix: handler imports * fix: all remaining import errors * fix: more errors needing fixes * fix: clearing up transformers * fix: few moer types * fix: more cleanup of extra types * fix: fmt * fix: cleanup discordeno file * Nuke Base Types (#2102) * fix: cleanup snake stuff * convert camelCase to snake_case (#2103) * fix: add camelize * fix: finalize remaining errors * fix: imports in test Co-authored-by: LTS20050703 <87189679+lts20050703@users.noreply.github.com>
39 lines
1.4 KiB
TypeScript
39 lines
1.4 KiB
TypeScript
import { Bot } from "../bot.ts";
|
|
import { DiscordActivity } from "../types/discord.ts";
|
|
|
|
export function transformActivity(bot: Bot, payload: DiscordActivity) {
|
|
return {
|
|
name: payload.name,
|
|
type: payload.type,
|
|
url: payload.url ?? undefined,
|
|
createdAt: payload.created_at,
|
|
startedAt: payload.timestamps?.start,
|
|
endedAt: payload.timestamps?.end,
|
|
applicationId: payload.application_id ? bot.transformers.snowflake(payload.application_id) : undefined,
|
|
details: payload.details ?? undefined,
|
|
state: payload.state ?? undefined,
|
|
emoji: payload.emoji
|
|
? {
|
|
name: payload.emoji.name,
|
|
animated: payload.emoji.animated,
|
|
id: payload.emoji.id ? bot.transformers.snowflake(payload.emoji.id) : undefined,
|
|
}
|
|
: undefined,
|
|
partyId: payload.party?.id ? bot.transformers.snowflake(payload.party.id) : undefined,
|
|
partyCurrentSize: payload.party?.size?.[0],
|
|
partyMaxSize: payload.party?.size?.[1],
|
|
largeImage: payload.assets?.large_image,
|
|
largeText: payload.assets?.large_text,
|
|
smallImage: payload.assets?.small_image,
|
|
smallText: payload.assets?.small_text,
|
|
join: payload.secrets?.join,
|
|
spectate: payload.secrets?.spectate,
|
|
match: payload.secrets?.match,
|
|
instance: payload.instance,
|
|
flags: payload.flags,
|
|
buttons: payload.buttons,
|
|
};
|
|
}
|
|
|
|
export interface Activity extends ReturnType<typeof transformActivity> {}
|