convert hashes to big ints + bools

This commit is contained in:
Skillz4Killz
2021-05-07 12:57:36 +00:00
committed by GitHub
parent d645b99287
commit a32f5b5ece
7 changed files with 173 additions and 29 deletions
+19 -5
View File
@@ -1,16 +1,30 @@
import type { DiscordImageFormat } from "../../types/misc/image_format.ts";
import type { DiscordImageSize } from "../../types/misc/image_size.ts";
import { endpoints } from "../../util/constants.ts";
import { iconBigintToHash } from "../../util/hash.ts";
import { formatImageURL } from "../../util/utils.ts";
/** The full URL of the icon from Discords CDN. Undefined when no icon is set. */
export function guildIconURL(
id: bigint,
icon?: string,
size: DiscordImageSize = 128,
format?: DiscordImageFormat,
options: {
icon?: string | bigint;
size?: DiscordImageSize;
format?: DiscordImageFormat;
animated?: boolean;
},
) {
return icon
? formatImageURL(endpoints.GUILD_ICON(id, icon), size, format)
return options.icon
? formatImageURL(
endpoints.GUILD_ICON(
id,
typeof options.icon === "string" ? options.icon : iconBigintToHash(
options.icon,
options.animated ?? true,
),
),
options.size || 128,
options.format,
)
: undefined;
}