diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/add.ts b/packages/backend/src/server/api/endpoints/admin/emoji/add.ts index 61b1b0c5db..4ae1b8aa11 100644 --- a/packages/backend/src/server/api/endpoints/admin/emoji/add.ts +++ b/packages/backend/src/server/api/endpoints/admin/emoji/add.ts @@ -73,15 +73,19 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint- const driveFile = await this.driveFilesRepository.findOneBy({ id: ps.fileId }); if (driveFile == null) throw new ApiError(meta.errors.noSuchFile); - const existEmoji = await this.emojisRepository.exist({ + const duplicationEmoji = await this.emojisRepository.find({ where: { name: ps.name, }, }); - if (existEmoji) { - throw new ApiError(meta.errors.duplicationEmojiAdd); - } + duplicationEmoji.forEach( + (emoji) => { + if (emoji.name === ps.name) { + throw new ApiError(meta.errors.duplicationEmojiAdd); + } + } + ) const emoji = await this.customEmojiService.add({ driveFile, diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/copy.ts b/packages/backend/src/server/api/endpoints/admin/emoji/copy.ts index f9a6016a6d..40f9f9e1e3 100644 --- a/packages/backend/src/server/api/endpoints/admin/emoji/copy.ts +++ b/packages/backend/src/server/api/endpoints/admin/emoji/copy.ts @@ -75,6 +75,20 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint- throw new ApiError(meta.errors.noSuchEmoji); } + const duplicationEmoji = await this.emojisRepository.find({ + where: { + name: emoji.name, + }, + }); + + duplicationEmoji.forEach( + (_emoji) => { + if (_emoji.name === emoji.name) { + throw new ApiError(meta.errors.duplicationEmojiAdd); + } + } + ) + let driveFile: MiDriveFile; try {