mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-01 00:10:07 +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>
57 lines
1.6 KiB
TypeScript
57 lines
1.6 KiB
TypeScript
import { Bot } from "../bot.ts";
|
|
import { DiscordEmbed } from "../types/discord.ts";
|
|
|
|
export function transformEmbed(bot: Bot, payload: DiscordEmbed) {
|
|
return {
|
|
title: payload.title,
|
|
type: payload.type,
|
|
description: payload.description,
|
|
url: payload.url,
|
|
timestamp: payload.timestamp ? Date.parse(payload.timestamp) : undefined,
|
|
color: payload.color,
|
|
footer: payload.footer
|
|
? {
|
|
text: payload.footer.text,
|
|
iconUrl: payload.footer.icon_url,
|
|
proxyIconUrl: payload.footer.proxy_icon_url,
|
|
}
|
|
: undefined,
|
|
image: payload.image
|
|
? {
|
|
url: payload.image.url,
|
|
proxyUrl: payload.image.proxy_url,
|
|
height: payload.image.height,
|
|
width: payload.image.width,
|
|
}
|
|
: undefined,
|
|
thumbnail: payload.thumbnail
|
|
? {
|
|
url: payload.thumbnail.url,
|
|
proxyUrl: payload.thumbnail.proxy_url,
|
|
height: payload.thumbnail.height,
|
|
width: payload.thumbnail.width,
|
|
}
|
|
: undefined,
|
|
video: payload.video
|
|
? {
|
|
url: payload.video.url,
|
|
proxyUrl: payload.video.proxy_url,
|
|
height: payload.video.height,
|
|
width: payload.video.width,
|
|
}
|
|
: undefined,
|
|
provider: payload.provider,
|
|
author: payload.author
|
|
? {
|
|
name: payload.author.name,
|
|
url: payload.author.url,
|
|
iconUrl: payload.author.icon_url,
|
|
proxyIconUrl: payload.author.proxy_icon_url,
|
|
}
|
|
: undefined,
|
|
fields: payload.fields,
|
|
};
|
|
}
|
|
|
|
export interface Embed extends ReturnType<typeof transformEmbed> {}
|