import define from "../../../define.js"; import { Emojis } from "../../../../../models/index.js"; import { insertModerationLog } from "../../../../../services/insert-moderation-log.js"; import { ApiError } from "../../../error.js"; import { db } from "../../../../../db/postgre.js"; export const meta = { tags: [ "admin" ], requireCredential: true, requireModerator: true, errors: { noSuchEmoji: { message: "No such emoji.", code: "NO_SUCH_EMOJI", id: "be83669b-773a-44b7-b1f8-e5e5170ac3c2" } } }; export const paramDef = { type: "object", properties: { id: { type: "string", format: "misskey:id" } }, required: [ "id" ] }; export default define(meta, paramDef, async (ps, me)=>{ const emoji = await Emojis.findOneBy({ id: ps.id }); if (emoji == null) throw new ApiError(meta.errors.noSuchEmoji); await Emojis.delete(emoji.id); await db.queryResultCache.remove([ "meta_emojis" ]); insertModerationLog(me, "deleteEmoji", { emoji: emoji }); });