From 8c9b667e9925aebfa2f181767e3884e1a00cd987 Mon Sep 17 00:00:00 2001 From: Yuzu Date: Sun, 26 Jun 2022 19:12:26 -0500 Subject: [PATCH] feat: emoji url method --- structures/Emoji.ts | 4 +++- structures/GuildEmoji.ts | 5 +++++ util/Cdn.ts | 4 ++++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/structures/Emoji.ts b/structures/Emoji.ts index 35ab4a7..19ad7ed 100644 --- a/structures/Emoji.ts +++ b/structures/Emoji.ts @@ -1,4 +1,6 @@ -import { DiscordEmoji, Session, Snowflake } from "../mod.ts"; +import type { Session } from "../session/Session.ts"; +import type { Snowflake } from "../util/Snowflake.ts"; +import type { DiscordEmoji } from "../mod.ts"; export class Emoji { constructor(session: Session, data: DiscordEmoji) { diff --git a/structures/GuildEmoji.ts b/structures/GuildEmoji.ts index 6120329..a0cac18 100644 --- a/structures/GuildEmoji.ts +++ b/structures/GuildEmoji.ts @@ -5,6 +5,7 @@ import type { ModifyGuildEmoji } from "./Guild.ts"; import { Guild } from "./Guild.ts"; import { Emoji } from "./Emoji.ts"; import { User } from "./User.ts"; +import { Routes } from "../util/mod.ts"; export class GuildEmoji extends Emoji { constructor(session: Session, data: DiscordEmoji, guildId: Snowflake) { @@ -37,6 +38,10 @@ export class GuildEmoji extends Emoji { return this; } + + get url() { + return Routes.EMOJI_URL(this.id, this.animated); + } } export default GuildEmoji; diff --git a/util/Cdn.ts b/util/Cdn.ts index ed9d8e6..3debf56 100644 --- a/util/Cdn.ts +++ b/util/Cdn.ts @@ -5,6 +5,10 @@ export function USER_AVATAR(userId: Snowflake, icon: string) { return `${Endpoints.CDN_URL}/avatars/${userId}/${icon}`; } +export function EMOJI_URL(id: Snowflake, animated = false) { + return `https://cdn.discordapp.com/emojis/${id}.${animated ? "gif" : "png"}`; +} + export function USER_DEFAULT_AVATAR( /** user discriminator */ altIcon: number,