mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-16 03:18:17 +00:00
a0a1554756
* 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>
34 lines
1006 B
TypeScript
34 lines
1006 B
TypeScript
import type { Bot } from "../../bot.ts";
|
|
|
|
/** The users custom avatar or the default avatar if you don't have a member object. */
|
|
export function avatarURL(
|
|
bot: Bot,
|
|
userId: bigint,
|
|
discriminator: number,
|
|
options?: {
|
|
avatar: bigint | undefined;
|
|
size?: ImageSize;
|
|
format?: ImageFormat;
|
|
},
|
|
) {
|
|
return options?.avatar
|
|
? bot.utils.formatImageURL(
|
|
bot.constants.endpoints.USER_AVATAR(
|
|
userId,
|
|
typeof options?.avatar === "string" ? options.avatar : bot.utils.iconBigintToHash(options?.avatar),
|
|
),
|
|
options?.size || 128,
|
|
options?.format,
|
|
)
|
|
: bot.constants.endpoints.USER_DEFAULT_AVATAR(Number(discriminator) % 5);
|
|
}
|
|
|
|
/**
|
|
* https://discord.com/developers/docs/reference#image-formatting
|
|
* json is only for stickers
|
|
*/
|
|
export type ImageFormat = "jpg" | "jpeg" | "png" | "webp" | "gif" | "json";
|
|
|
|
/** https://discord.com/developers/docs/reference#image-formatting */
|
|
export type ImageSize = 16 | 32 | 64 | 128 | 256 | 512 | 1024 | 2048;
|