This commit is contained in:
ITOH
2021-04-06 22:25:26 +02:00
parent 484e995140
commit 96d26605ca
20 changed files with 143 additions and 80 deletions
+5 -3
View File
@@ -1,14 +1,16 @@
import { rest } from "../../rest/rest.ts";
import { CreateGuildEmoji } from "../../types/emojis/create_guild_emoji.ts";
import { Emoji } from "../../types/emojis/emoji.ts";
import { endpoints } from "../../util/constants.ts";
import { requireBotGuildPermissions } from "../../util/permissions.ts";
import { urlToBase64 } from "../../util/utils.ts";
import { snakeKeysToCamelCase, urlToBase64 } from "../../util/utils.ts";
/** Create an emoji in the server. Emojis and animated emojis have a maximum file size of 256kb. Attempting to upload an emoji larger than this limit will fail and return 400 Bad Request and an error message, but not a JSON status code. If a URL is provided to the image parameter, Discordeno will automatically convert it to a base64 string internally. */
export async function createEmoji(
guildId: string,
name: string,
image: string,
options: CreateEmojisOptions,
options: CreateGuildEmoji,
) {
await requireBotGuildPermissions(guildId, ["MANAGE_EMOJIS"]);
@@ -22,5 +24,5 @@ export async function createEmoji(
image,
});
return result;
return snakeKeysToCamelCase(result) as Emoji;
}
+1 -1
View File
@@ -7,7 +7,7 @@ export async function deleteEmoji(
guildId: string,
id: string,
reason?: string,
) {
): Promise<undefined> {
await requireBotGuildPermissions(guildId, ["MANAGE_EMOJIS"]);
const result = await rest.runMethod(
+2 -1
View File
@@ -1,4 +1,5 @@
import { rest } from "../../rest/rest.ts";
import { ModifyGuildEmoji } from "../../types/emojis/modify_guild_emoji.ts";
import { endpoints } from "../../util/constants.ts";
import { requireBotGuildPermissions } from "../../util/permissions.ts";
@@ -6,7 +7,7 @@ import { requireBotGuildPermissions } from "../../util/permissions.ts";
export async function editEmoji(
guildId: string,
id: string,
options: EditEmojisOptions,
options: ModifyGuildEmoji,
) {
await requireBotGuildPermissions(guildId, ["MANAGE_EMOJIS"]);
+2 -1
View File
@@ -1,5 +1,6 @@
import { cacheHandlers } from "../../cache.ts";
import { rest } from "../../rest/rest.ts";
import { Emoji } from "../../types/emojis/emoji.ts";
import { Errors } from "../../types/misc/errors.ts";
import { endpoints } from "../../util/constants.ts";
@@ -21,7 +22,7 @@ export async function getEmoji(
if (addToCache) {
const guild = await cacheHandlers.get("guilds", guildId);
if (!guild) throw new Error(Errors.GUILD_NOT_FOUND);
guild.emojis.set(result.id ?? result.name, result);
guild.emojis.set(emojiId, result);
cacheHandlers.set(
"guilds",
guildId,
+2 -1
View File
@@ -1,5 +1,6 @@
import { cacheHandlers } from "../../cache.ts";
import { rest } from "../../rest/rest.ts";
import { Emoji } from "../../types/emojis/emoji.ts";
import { Errors } from "../../types/misc/errors.ts";
import { endpoints } from "../../util/constants.ts";
@@ -16,7 +17,7 @@ export async function getEmojis(guildId: string, addToCache = true) {
const guild = await cacheHandlers.get("guilds", guildId);
if (!guild) throw new Error(Errors.GUILD_NOT_FOUND);
result.forEach((emoji) => guild.emojis.set(emoji.id ?? emoji.name, emoji));
result.forEach((emoji) => guild.emojis.set(emoji.id!, emoji));
cacheHandlers.set("guilds", guildId, guild);
}