From 4a64280a7c8723fc9e15b7411e1e404d4054af78 Mon Sep 17 00:00:00 2001 From: syuilo Date: Mon, 3 Jan 2022 02:12:50 +0900 Subject: lint --- packages/backend/src/server/api/endpoints/admin/abuse-user-reports.ts | 1 + packages/backend/src/server/api/endpoints/admin/accounts/create.ts | 1 + packages/backend/src/server/api/endpoints/admin/accounts/delete.ts | 1 + packages/backend/src/server/api/endpoints/admin/ad/create.ts | 1 + packages/backend/src/server/api/endpoints/admin/ad/delete.ts | 1 + packages/backend/src/server/api/endpoints/admin/ad/list.ts | 1 + packages/backend/src/server/api/endpoints/admin/ad/update.ts | 1 + packages/backend/src/server/api/endpoints/admin/announcements/create.ts | 1 + packages/backend/src/server/api/endpoints/admin/announcements/delete.ts | 1 + packages/backend/src/server/api/endpoints/admin/announcements/list.ts | 1 + packages/backend/src/server/api/endpoints/admin/announcements/update.ts | 1 + .../backend/src/server/api/endpoints/admin/delete-all-files-of-a-user.ts | 1 + packages/backend/src/server/api/endpoints/admin/delete-logs.ts | 1 + .../backend/src/server/api/endpoints/admin/drive/clean-remote-files.ts | 1 + packages/backend/src/server/api/endpoints/admin/drive/cleanup.ts | 1 + packages/backend/src/server/api/endpoints/admin/drive/files.ts | 1 + packages/backend/src/server/api/endpoints/admin/drive/show-file.ts | 1 + packages/backend/src/server/api/endpoints/admin/emoji/add.ts | 1 + packages/backend/src/server/api/endpoints/admin/emoji/copy.ts | 1 + packages/backend/src/server/api/endpoints/admin/emoji/list-remote.ts | 1 + packages/backend/src/server/api/endpoints/admin/emoji/list.ts | 1 + packages/backend/src/server/api/endpoints/admin/emoji/remove.ts | 1 + packages/backend/src/server/api/endpoints/admin/emoji/update.ts | 1 + .../src/server/api/endpoints/admin/federation/delete-all-files.ts | 1 + .../api/endpoints/admin/federation/refresh-remote-instance-metadata.ts | 1 + .../src/server/api/endpoints/admin/federation/remove-all-following.ts | 1 + .../backend/src/server/api/endpoints/admin/federation/update-instance.ts | 1 + packages/backend/src/server/api/endpoints/admin/get-index-stats.ts | 1 + packages/backend/src/server/api/endpoints/admin/get-table-stats.ts | 1 + packages/backend/src/server/api/endpoints/admin/invite.ts | 1 + packages/backend/src/server/api/endpoints/admin/moderators/add.ts | 1 + packages/backend/src/server/api/endpoints/admin/moderators/remove.ts | 1 + packages/backend/src/server/api/endpoints/admin/promo/create.ts | 1 + packages/backend/src/server/api/endpoints/admin/queue/clear.ts | 1 + packages/backend/src/server/api/endpoints/admin/queue/deliver-delayed.ts | 1 + packages/backend/src/server/api/endpoints/admin/queue/inbox-delayed.ts | 1 + packages/backend/src/server/api/endpoints/admin/queue/jobs.ts | 1 + packages/backend/src/server/api/endpoints/admin/queue/stats.ts | 1 + packages/backend/src/server/api/endpoints/admin/relays/add.ts | 1 + packages/backend/src/server/api/endpoints/admin/relays/list.ts | 1 + packages/backend/src/server/api/endpoints/admin/relays/remove.ts | 1 + packages/backend/src/server/api/endpoints/admin/reset-password.ts | 1 + .../backend/src/server/api/endpoints/admin/resolve-abuse-user-report.ts | 1 + packages/backend/src/server/api/endpoints/admin/resync-chart.ts | 1 + packages/backend/src/server/api/endpoints/admin/send-email.ts | 1 + packages/backend/src/server/api/endpoints/admin/server-info.ts | 1 + packages/backend/src/server/api/endpoints/admin/show-moderation-logs.ts | 1 + packages/backend/src/server/api/endpoints/admin/show-user.ts | 1 + packages/backend/src/server/api/endpoints/admin/show-users.ts | 1 + packages/backend/src/server/api/endpoints/admin/silence-user.ts | 1 + packages/backend/src/server/api/endpoints/admin/suspend-user.ts | 1 + packages/backend/src/server/api/endpoints/admin/unsilence-user.ts | 1 + packages/backend/src/server/api/endpoints/admin/unsuspend-user.ts | 1 + packages/backend/src/server/api/endpoints/admin/update-meta.ts | 1 + packages/backend/src/server/api/endpoints/admin/vacuum.ts | 1 + 55 files changed, 55 insertions(+) (limited to 'packages/backend/src/server/api/endpoints/admin') diff --git a/packages/backend/src/server/api/endpoints/admin/abuse-user-reports.ts b/packages/backend/src/server/api/endpoints/admin/abuse-user-reports.ts index 774506bf0d..5d4cc2c044 100644 --- a/packages/backend/src/server/api/endpoints/admin/abuse-user-reports.ts +++ b/packages/backend/src/server/api/endpoints/admin/abuse-user-reports.ts @@ -110,6 +110,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const query = makePaginationQuery(AbuseUserReports.createQueryBuilder('report'), ps.sinceId, ps.untilId); diff --git a/packages/backend/src/server/api/endpoints/admin/accounts/create.ts b/packages/backend/src/server/api/endpoints/admin/accounts/create.ts index b1cdb29a56..edfac244f5 100644 --- a/packages/backend/src/server/api/endpoints/admin/accounts/create.ts +++ b/packages/backend/src/server/api/endpoints/admin/accounts/create.ts @@ -28,6 +28,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, _me) => { const me = _me ? await Users.findOneOrFail(_me.id) : null; const noUsers = (await Users.count({ diff --git a/packages/backend/src/server/api/endpoints/admin/accounts/delete.ts b/packages/backend/src/server/api/endpoints/admin/accounts/delete.ts index 3881e02bba..3ed6ac2f33 100644 --- a/packages/backend/src/server/api/endpoints/admin/accounts/delete.ts +++ b/packages/backend/src/server/api/endpoints/admin/accounts/delete.ts @@ -19,6 +19,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const user = await Users.findOne(ps.userId); diff --git a/packages/backend/src/server/api/endpoints/admin/ad/create.ts b/packages/backend/src/server/api/endpoints/admin/ad/create.ts index e41d015646..3388ef2726 100644 --- a/packages/backend/src/server/api/endpoints/admin/ad/create.ts +++ b/packages/backend/src/server/api/endpoints/admin/ad/create.ts @@ -34,6 +34,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { await Ads.insert({ id: genId(), diff --git a/packages/backend/src/server/api/endpoints/admin/ad/delete.ts b/packages/backend/src/server/api/endpoints/admin/ad/delete.ts index ab5cd96d0f..ab0458af6e 100644 --- a/packages/backend/src/server/api/endpoints/admin/ad/delete.ts +++ b/packages/backend/src/server/api/endpoints/admin/ad/delete.ts @@ -25,6 +25,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const ad = await Ads.findOne(ps.id); diff --git a/packages/backend/src/server/api/endpoints/admin/ad/list.ts b/packages/backend/src/server/api/endpoints/admin/ad/list.ts index f22dd0e961..04597ec7b5 100644 --- a/packages/backend/src/server/api/endpoints/admin/ad/list.ts +++ b/packages/backend/src/server/api/endpoints/admin/ad/list.ts @@ -26,6 +26,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const query = makePaginationQuery(Ads.createQueryBuilder('ad'), ps.sinceId, ps.untilId) .andWhere('ad.expiresAt > :now', { now: new Date() }); diff --git a/packages/backend/src/server/api/endpoints/admin/ad/update.ts b/packages/backend/src/server/api/endpoints/admin/ad/update.ts index 1d91cfd162..7fab745ef7 100644 --- a/packages/backend/src/server/api/endpoints/admin/ad/update.ts +++ b/packages/backend/src/server/api/endpoints/admin/ad/update.ts @@ -46,6 +46,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const ad = await Ads.findOne(ps.id); diff --git a/packages/backend/src/server/api/endpoints/admin/announcements/create.ts b/packages/backend/src/server/api/endpoints/admin/announcements/create.ts index 886cacff73..feb874db74 100644 --- a/packages/backend/src/server/api/endpoints/admin/announcements/create.ts +++ b/packages/backend/src/server/api/endpoints/admin/announcements/create.ts @@ -57,6 +57,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const announcement = await Announcements.save({ id: genId(), diff --git a/packages/backend/src/server/api/endpoints/admin/announcements/delete.ts b/packages/backend/src/server/api/endpoints/admin/announcements/delete.ts index ade9ef581e..81dd8cfc59 100644 --- a/packages/backend/src/server/api/endpoints/admin/announcements/delete.ts +++ b/packages/backend/src/server/api/endpoints/admin/announcements/delete.ts @@ -25,6 +25,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const announcement = await Announcements.findOne(ps.id); diff --git a/packages/backend/src/server/api/endpoints/admin/announcements/list.ts b/packages/backend/src/server/api/endpoints/admin/announcements/list.ts index f25b5e8efc..f6ad6d36f4 100644 --- a/packages/backend/src/server/api/endpoints/admin/announcements/list.ts +++ b/packages/backend/src/server/api/endpoints/admin/announcements/list.ts @@ -69,6 +69,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const query = makePaginationQuery(Announcements.createQueryBuilder('announcement'), ps.sinceId, ps.untilId); diff --git a/packages/backend/src/server/api/endpoints/admin/announcements/update.ts b/packages/backend/src/server/api/endpoints/admin/announcements/update.ts index 3fa8440ebd..6fb4b571ad 100644 --- a/packages/backend/src/server/api/endpoints/admin/announcements/update.ts +++ b/packages/backend/src/server/api/endpoints/admin/announcements/update.ts @@ -34,6 +34,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const announcement = await Announcements.findOne(ps.id); diff --git a/packages/backend/src/server/api/endpoints/admin/delete-all-files-of-a-user.ts b/packages/backend/src/server/api/endpoints/admin/delete-all-files-of-a-user.ts index 50979d53e8..82cbe7b194 100644 --- a/packages/backend/src/server/api/endpoints/admin/delete-all-files-of-a-user.ts +++ b/packages/backend/src/server/api/endpoints/admin/delete-all-files-of-a-user.ts @@ -17,6 +17,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const files = await DriveFiles.find({ userId: ps.userId, diff --git a/packages/backend/src/server/api/endpoints/admin/delete-logs.ts b/packages/backend/src/server/api/endpoints/admin/delete-logs.ts index 9d37ceb434..197ad01cb3 100644 --- a/packages/backend/src/server/api/endpoints/admin/delete-logs.ts +++ b/packages/backend/src/server/api/endpoints/admin/delete-logs.ts @@ -8,6 +8,7 @@ export const meta = { requireModerator: true, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { await Logs.clear(); // TRUNCATE }); diff --git a/packages/backend/src/server/api/endpoints/admin/drive/clean-remote-files.ts b/packages/backend/src/server/api/endpoints/admin/drive/clean-remote-files.ts index 76a6acff59..518535fdde 100644 --- a/packages/backend/src/server/api/endpoints/admin/drive/clean-remote-files.ts +++ b/packages/backend/src/server/api/endpoints/admin/drive/clean-remote-files.ts @@ -8,6 +8,7 @@ export const meta = { requireModerator: true, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { createCleanRemoteFilesJob(); }); diff --git a/packages/backend/src/server/api/endpoints/admin/drive/cleanup.ts b/packages/backend/src/server/api/endpoints/admin/drive/cleanup.ts index ae0e396b4f..a523c5b398 100644 --- a/packages/backend/src/server/api/endpoints/admin/drive/cleanup.ts +++ b/packages/backend/src/server/api/endpoints/admin/drive/cleanup.ts @@ -10,6 +10,7 @@ export const meta = { requireModerator: true, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const files = await DriveFiles.find({ userId: IsNull(), diff --git a/packages/backend/src/server/api/endpoints/admin/drive/files.ts b/packages/backend/src/server/api/endpoints/admin/drive/files.ts index ee07245db7..b90ad90440 100644 --- a/packages/backend/src/server/api/endpoints/admin/drive/files.ts +++ b/packages/backend/src/server/api/endpoints/admin/drive/files.ts @@ -54,6 +54,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const query = makePaginationQuery(DriveFiles.createQueryBuilder('file'), ps.sinceId, ps.untilId); diff --git a/packages/backend/src/server/api/endpoints/admin/drive/show-file.ts b/packages/backend/src/server/api/endpoints/admin/drive/show-file.ts index ab8e3d68e9..bc0857588c 100644 --- a/packages/backend/src/server/api/endpoints/admin/drive/show-file.ts +++ b/packages/backend/src/server/api/endpoints/admin/drive/show-file.ts @@ -161,6 +161,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const file = ps.fileId ? await DriveFiles.findOne(ps.fileId) : await DriveFiles.findOne({ where: [{ 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 407d9920d9..bafa658a57 100644 --- a/packages/backend/src/server/api/endpoints/admin/emoji/add.ts +++ b/packages/backend/src/server/api/endpoints/admin/emoji/add.ts @@ -30,6 +30,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const file = await DriveFiles.findOne(ps.fileId); 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 ae02df65e2..6dc7d1bd97 100644 --- a/packages/backend/src/server/api/endpoints/admin/emoji/copy.ts +++ b/packages/backend/src/server/api/endpoints/admin/emoji/copy.ts @@ -42,6 +42,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const emoji = await Emojis.findOne(ps.emojiId); diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/list-remote.ts b/packages/backend/src/server/api/endpoints/admin/emoji/list-remote.ts index 090ba2b64a..42b6cb1fcf 100644 --- a/packages/backend/src/server/api/endpoints/admin/emoji/list-remote.ts +++ b/packages/backend/src/server/api/endpoints/admin/emoji/list-remote.ts @@ -77,6 +77,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const q = makePaginationQuery(Emojis.createQueryBuilder('emoji'), ps.sinceId, ps.untilId); diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/list.ts b/packages/backend/src/server/api/endpoints/admin/emoji/list.ts index 89cb60acaf..5026af914a 100644 --- a/packages/backend/src/server/api/endpoints/admin/emoji/list.ts +++ b/packages/backend/src/server/api/endpoints/admin/emoji/list.ts @@ -72,6 +72,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const q = makePaginationQuery(Emojis.createQueryBuilder('emoji'), ps.sinceId, ps.untilId) .andWhere(`emoji.host IS NULL`); diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/remove.ts b/packages/backend/src/server/api/endpoints/admin/emoji/remove.ts index 78085470a9..440c1008c7 100644 --- a/packages/backend/src/server/api/endpoints/admin/emoji/remove.ts +++ b/packages/backend/src/server/api/endpoints/admin/emoji/remove.ts @@ -27,6 +27,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const emoji = await Emojis.findOne(ps.id); diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/update.ts b/packages/backend/src/server/api/endpoints/admin/emoji/update.ts index c61d8cb320..391887257a 100644 --- a/packages/backend/src/server/api/endpoints/admin/emoji/update.ts +++ b/packages/backend/src/server/api/endpoints/admin/emoji/update.ts @@ -38,6 +38,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const emoji = await Emojis.findOne(ps.id); diff --git a/packages/backend/src/server/api/endpoints/admin/federation/delete-all-files.ts b/packages/backend/src/server/api/endpoints/admin/federation/delete-all-files.ts index d9e003d35d..9046196838 100644 --- a/packages/backend/src/server/api/endpoints/admin/federation/delete-all-files.ts +++ b/packages/backend/src/server/api/endpoints/admin/federation/delete-all-files.ts @@ -16,6 +16,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const files = await DriveFiles.find({ userHost: ps.host, diff --git a/packages/backend/src/server/api/endpoints/admin/federation/refresh-remote-instance-metadata.ts b/packages/backend/src/server/api/endpoints/admin/federation/refresh-remote-instance-metadata.ts index 9e7a8ec476..d9e3900a29 100644 --- a/packages/backend/src/server/api/endpoints/admin/federation/refresh-remote-instance-metadata.ts +++ b/packages/backend/src/server/api/endpoints/admin/federation/refresh-remote-instance-metadata.ts @@ -17,6 +17,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const instance = await Instances.findOne({ host: toPuny(ps.host) }); diff --git a/packages/backend/src/server/api/endpoints/admin/federation/remove-all-following.ts b/packages/backend/src/server/api/endpoints/admin/federation/remove-all-following.ts index 8fc964fd2f..485bbe7d58 100644 --- a/packages/backend/src/server/api/endpoints/admin/federation/remove-all-following.ts +++ b/packages/backend/src/server/api/endpoints/admin/federation/remove-all-following.ts @@ -16,6 +16,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const followings = await Followings.find({ followerHost: ps.host, diff --git a/packages/backend/src/server/api/endpoints/admin/federation/update-instance.ts b/packages/backend/src/server/api/endpoints/admin/federation/update-instance.ts index 4ea1275f7c..3ddccecc6a 100644 --- a/packages/backend/src/server/api/endpoints/admin/federation/update-instance.ts +++ b/packages/backend/src/server/api/endpoints/admin/federation/update-instance.ts @@ -20,6 +20,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const instance = await Instances.findOne({ host: toPuny(ps.host) }); diff --git a/packages/backend/src/server/api/endpoints/admin/get-index-stats.ts b/packages/backend/src/server/api/endpoints/admin/get-index-stats.ts index f2b06d0ef2..877e67aa79 100644 --- a/packages/backend/src/server/api/endpoints/admin/get-index-stats.ts +++ b/packages/backend/src/server/api/endpoints/admin/get-index-stats.ts @@ -11,6 +11,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async () => { const stats = await getConnection().query(`SELECT * FROM pg_indexes;`) diff --git a/packages/backend/src/server/api/endpoints/admin/get-table-stats.ts b/packages/backend/src/server/api/endpoints/admin/get-table-stats.ts index 64f0292943..5d4ea9c444 100644 --- a/packages/backend/src/server/api/endpoints/admin/get-table-stats.ts +++ b/packages/backend/src/server/api/endpoints/admin/get-table-stats.ts @@ -22,6 +22,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async () => { const sizes = await getConnection().query(` diff --git a/packages/backend/src/server/api/endpoints/admin/invite.ts b/packages/backend/src/server/api/endpoints/admin/invite.ts index b9452c83d2..1c8c51434b 100644 --- a/packages/backend/src/server/api/endpoints/admin/invite.ts +++ b/packages/backend/src/server/api/endpoints/admin/invite.ts @@ -26,6 +26,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async () => { const code = rndstr({ length: 8, diff --git a/packages/backend/src/server/api/endpoints/admin/moderators/add.ts b/packages/backend/src/server/api/endpoints/admin/moderators/add.ts index 8e3419bf66..ea795895f2 100644 --- a/packages/backend/src/server/api/endpoints/admin/moderators/add.ts +++ b/packages/backend/src/server/api/endpoints/admin/moderators/add.ts @@ -16,6 +16,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const user = await Users.findOne(ps.userId as string); diff --git a/packages/backend/src/server/api/endpoints/admin/moderators/remove.ts b/packages/backend/src/server/api/endpoints/admin/moderators/remove.ts index 5a5a91e9ce..25f237d81f 100644 --- a/packages/backend/src/server/api/endpoints/admin/moderators/remove.ts +++ b/packages/backend/src/server/api/endpoints/admin/moderators/remove.ts @@ -16,6 +16,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const user = await Users.findOne(ps.userId as string); diff --git a/packages/backend/src/server/api/endpoints/admin/promo/create.ts b/packages/backend/src/server/api/endpoints/admin/promo/create.ts index 245780c2d1..1bd54ba890 100644 --- a/packages/backend/src/server/api/endpoints/admin/promo/create.ts +++ b/packages/backend/src/server/api/endpoints/admin/promo/create.ts @@ -36,6 +36,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, user) => { const note = await getNote(ps.noteId).catch(e => { if (e.id === '9725d0ce-ba28-4dde-95a7-2cbb2c15de24') throw new ApiError(meta.errors.noSuchNote); diff --git a/packages/backend/src/server/api/endpoints/admin/queue/clear.ts b/packages/backend/src/server/api/endpoints/admin/queue/clear.ts index 3a7ae6b4b0..8a91168ece 100644 --- a/packages/backend/src/server/api/endpoints/admin/queue/clear.ts +++ b/packages/backend/src/server/api/endpoints/admin/queue/clear.ts @@ -11,6 +11,7 @@ export const meta = { params: {}, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { destroy(); diff --git a/packages/backend/src/server/api/endpoints/admin/queue/deliver-delayed.ts b/packages/backend/src/server/api/endpoints/admin/queue/deliver-delayed.ts index cb2d1d0d79..2c867463e3 100644 --- a/packages/backend/src/server/api/endpoints/admin/queue/deliver-delayed.ts +++ b/packages/backend/src/server/api/endpoints/admin/queue/deliver-delayed.ts @@ -35,6 +35,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const jobs = await deliverQueue.getJobs(['delayed']); diff --git a/packages/backend/src/server/api/endpoints/admin/queue/inbox-delayed.ts b/packages/backend/src/server/api/endpoints/admin/queue/inbox-delayed.ts index d524002faf..974e680121 100644 --- a/packages/backend/src/server/api/endpoints/admin/queue/inbox-delayed.ts +++ b/packages/backend/src/server/api/endpoints/admin/queue/inbox-delayed.ts @@ -35,6 +35,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const jobs = await inboxQueue.getJobs(['delayed']); diff --git a/packages/backend/src/server/api/endpoints/admin/queue/jobs.ts b/packages/backend/src/server/api/endpoints/admin/queue/jobs.ts index ece1d46f3f..70649e0675 100644 --- a/packages/backend/src/server/api/endpoints/admin/queue/jobs.ts +++ b/packages/backend/src/server/api/endpoints/admin/queue/jobs.ts @@ -56,6 +56,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const queue = ps.domain === 'deliver' ? deliverQueue : diff --git a/packages/backend/src/server/api/endpoints/admin/queue/stats.ts b/packages/backend/src/server/api/endpoints/admin/queue/stats.ts index 1fc42ea0b5..5de871a60a 100644 --- a/packages/backend/src/server/api/endpoints/admin/queue/stats.ts +++ b/packages/backend/src/server/api/endpoints/admin/queue/stats.ts @@ -29,6 +29,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const deliverJobCounts = await deliverQueue.getJobCounts(); const inboxJobCounts = await inboxQueue.getJobCounts(); diff --git a/packages/backend/src/server/api/endpoints/admin/relays/add.ts b/packages/backend/src/server/api/endpoints/admin/relays/add.ts index 80609aee94..c4a0f13028 100644 --- a/packages/backend/src/server/api/endpoints/admin/relays/add.ts +++ b/packages/backend/src/server/api/endpoints/admin/relays/add.ts @@ -52,6 +52,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, user) => { try { if (new URL(ps.inbox).protocol !== 'https:') throw 'https only'; diff --git a/packages/backend/src/server/api/endpoints/admin/relays/list.ts b/packages/backend/src/server/api/endpoints/admin/relays/list.ts index ef103fbb31..1e8afd783d 100644 --- a/packages/backend/src/server/api/endpoints/admin/relays/list.ts +++ b/packages/backend/src/server/api/endpoints/admin/relays/list.ts @@ -42,6 +42,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, user) => { return await listRelay(); }); diff --git a/packages/backend/src/server/api/endpoints/admin/relays/remove.ts b/packages/backend/src/server/api/endpoints/admin/relays/remove.ts index e7ddef30fc..293de2b91b 100644 --- a/packages/backend/src/server/api/endpoints/admin/relays/remove.ts +++ b/packages/backend/src/server/api/endpoints/admin/relays/remove.ts @@ -15,6 +15,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, user) => { return await removeRelay(ps.inbox); }); diff --git a/packages/backend/src/server/api/endpoints/admin/reset-password.ts b/packages/backend/src/server/api/endpoints/admin/reset-password.ts index bdd7ef27b8..227bcbab91 100644 --- a/packages/backend/src/server/api/endpoints/admin/reset-password.ts +++ b/packages/backend/src/server/api/endpoints/admin/reset-password.ts @@ -31,6 +31,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const user = await Users.findOne(ps.userId as string); diff --git a/packages/backend/src/server/api/endpoints/admin/resolve-abuse-user-report.ts b/packages/backend/src/server/api/endpoints/admin/resolve-abuse-user-report.ts index 94158ecfdb..a189c3e99b 100644 --- a/packages/backend/src/server/api/endpoints/admin/resolve-abuse-user-report.ts +++ b/packages/backend/src/server/api/endpoints/admin/resolve-abuse-user-report.ts @@ -16,6 +16,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const report = await AbuseUserReports.findOne(ps.reportId); diff --git a/packages/backend/src/server/api/endpoints/admin/resync-chart.ts b/packages/backend/src/server/api/endpoints/admin/resync-chart.ts index e01dfce1b6..49d41cd8c2 100644 --- a/packages/backend/src/server/api/endpoints/admin/resync-chart.ts +++ b/packages/backend/src/server/api/endpoints/admin/resync-chart.ts @@ -9,6 +9,7 @@ export const meta = { requireModerator: true, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { insertModerationLog(me, 'chartResync'); diff --git a/packages/backend/src/server/api/endpoints/admin/send-email.ts b/packages/backend/src/server/api/endpoints/admin/send-email.ts index 4797aa7a2b..74ec98f75d 100644 --- a/packages/backend/src/server/api/endpoints/admin/send-email.ts +++ b/packages/backend/src/server/api/endpoints/admin/send-email.ts @@ -21,6 +21,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { await sendEmail(ps.to, ps.subject, ps.text, ps.text); }); diff --git a/packages/backend/src/server/api/endpoints/admin/server-info.ts b/packages/backend/src/server/api/endpoints/admin/server-info.ts index 4ddc39deb0..9346c5dd2c 100644 --- a/packages/backend/src/server/api/endpoints/admin/server-info.ts +++ b/packages/backend/src/server/api/endpoints/admin/server-info.ts @@ -90,6 +90,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async () => { const memStats = await si.mem(); const fsStats = await si.fsSize(); diff --git a/packages/backend/src/server/api/endpoints/admin/show-moderation-logs.ts b/packages/backend/src/server/api/endpoints/admin/show-moderation-logs.ts index 19d4be973f..0d3759a84b 100644 --- a/packages/backend/src/server/api/endpoints/admin/show-moderation-logs.ts +++ b/packages/backend/src/server/api/endpoints/admin/show-moderation-logs.ts @@ -65,6 +65,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { const query = makePaginationQuery(ModerationLogs.createQueryBuilder('report'), ps.sinceId, ps.untilId); diff --git a/packages/backend/src/server/api/endpoints/admin/show-user.ts b/packages/backend/src/server/api/endpoints/admin/show-user.ts index 21cc9e5abc..7ac922ca7e 100644 --- a/packages/backend/src/server/api/endpoints/admin/show-user.ts +++ b/packages/backend/src/server/api/endpoints/admin/show-user.ts @@ -159,6 +159,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const user = await Users.findOne(ps.userId as string); diff --git a/packages/backend/src/server/api/endpoints/admin/show-users.ts b/packages/backend/src/server/api/endpoints/admin/show-users.ts index 9c57917cb2..507183e876 100644 --- a/packages/backend/src/server/api/endpoints/admin/show-users.ts +++ b/packages/backend/src/server/api/endpoints/admin/show-users.ts @@ -74,6 +74,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const query = Users.createQueryBuilder('user'); diff --git a/packages/backend/src/server/api/endpoints/admin/silence-user.ts b/packages/backend/src/server/api/endpoints/admin/silence-user.ts index 9f5135b1a6..b4a1ddcc0f 100644 --- a/packages/backend/src/server/api/endpoints/admin/silence-user.ts +++ b/packages/backend/src/server/api/endpoints/admin/silence-user.ts @@ -17,6 +17,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const user = await Users.findOne(ps.userId as string); diff --git a/packages/backend/src/server/api/endpoints/admin/suspend-user.ts b/packages/backend/src/server/api/endpoints/admin/suspend-user.ts index c062dcc93f..95771e0c32 100644 --- a/packages/backend/src/server/api/endpoints/admin/suspend-user.ts +++ b/packages/backend/src/server/api/endpoints/admin/suspend-user.ts @@ -21,6 +21,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const user = await Users.findOne(ps.userId as string); diff --git a/packages/backend/src/server/api/endpoints/admin/unsilence-user.ts b/packages/backend/src/server/api/endpoints/admin/unsilence-user.ts index bc081c8487..e04960a4ec 100644 --- a/packages/backend/src/server/api/endpoints/admin/unsilence-user.ts +++ b/packages/backend/src/server/api/endpoints/admin/unsilence-user.ts @@ -17,6 +17,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const user = await Users.findOne(ps.userId as string); diff --git a/packages/backend/src/server/api/endpoints/admin/unsuspend-user.ts b/packages/backend/src/server/api/endpoints/admin/unsuspend-user.ts index 73a5bc739b..0a6ceadab9 100644 --- a/packages/backend/src/server/api/endpoints/admin/unsuspend-user.ts +++ b/packages/backend/src/server/api/endpoints/admin/unsuspend-user.ts @@ -18,6 +18,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const user = await Users.findOne(ps.userId as string); diff --git a/packages/backend/src/server/api/endpoints/admin/update-meta.ts b/packages/backend/src/server/api/endpoints/admin/update-meta.ts index e67088e0aa..0d5455cd33 100644 --- a/packages/backend/src/server/api/endpoints/admin/update-meta.ts +++ b/packages/backend/src/server/api/endpoints/admin/update-meta.ts @@ -299,6 +299,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const set = {} as Partial; diff --git a/packages/backend/src/server/api/endpoints/admin/vacuum.ts b/packages/backend/src/server/api/endpoints/admin/vacuum.ts index d08dfdd9ea..798a51acc5 100644 --- a/packages/backend/src/server/api/endpoints/admin/vacuum.ts +++ b/packages/backend/src/server/api/endpoints/admin/vacuum.ts @@ -19,6 +19,7 @@ export const meta = { }, }; +// eslint-disable-next-line import/no-default-export export default define(meta, async (ps, me) => { const params: string[] = []; -- cgit v1.2.3-freya From 6be1db00d11aea64c984f7df74be246ebd46c10a Mon Sep 17 00:00:00 2001 From: syuilo Date: Mon, 3 Jan 2022 02:20:30 +0900 Subject: refactor(server): use insert instead of save --- packages/backend/src/queue/processors/db/import-user-lists.ts | 4 ++-- packages/backend/src/remote/activitypub/models/note.ts | 4 ++-- packages/backend/src/server/api/common/signin.ts | 4 ++-- .../backend/src/server/api/endpoints/admin/announcements/create.ts | 4 ++-- packages/backend/src/server/api/endpoints/admin/emoji/add.ts | 4 ++-- packages/backend/src/server/api/endpoints/auth/session/generate.ts | 4 ++-- packages/backend/src/server/api/endpoints/pages/create.ts | 4 ++-- packages/backend/src/server/api/endpoints/users/report-abuse.ts | 4 ++-- packages/backend/src/services/create-notification.ts | 5 +++-- 9 files changed, 19 insertions(+), 18 deletions(-) (limited to 'packages/backend/src/server/api/endpoints/admin') diff --git a/packages/backend/src/queue/processors/db/import-user-lists.ts b/packages/backend/src/queue/processors/db/import-user-lists.ts index 8245010de0..e060e86dd8 100644 --- a/packages/backend/src/queue/processors/db/import-user-lists.ts +++ b/packages/backend/src/queue/processors/db/import-user-lists.ts @@ -46,13 +46,13 @@ export async function importUserLists(job: Bull.Job, done: }); if (list == null) { - list = await UserLists.save({ + list = await UserLists.insert({ id: genId(), createdAt: new Date(), userId: user.id, name: listName, userIds: [], - }); + }).then(x => UserLists.findOneOrFail(x.identifiers[0])); } let target = isSelfHost(host!) ? await Users.findOne({ diff --git a/packages/backend/src/remote/activitypub/models/note.ts b/packages/backend/src/remote/activitypub/models/note.ts index cca054b52e..a0fdf7f239 100644 --- a/packages/backend/src/remote/activitypub/models/note.ts +++ b/packages/backend/src/remote/activitypub/models/note.ts @@ -342,7 +342,7 @@ export async function extractEmojis(tags: IObject | IObject[], host: string): Pr logger.info(`register emoji host=${host}, name=${name}`); - return await Emojis.save({ + return await Emojis.insert({ id: genId(), host, name, @@ -350,6 +350,6 @@ export async function extractEmojis(tags: IObject | IObject[], host: string): Pr url: tag.icon!.url, updatedAt: new Date(), aliases: [], - } as Partial); + } as Partial).then(x => Emojis.findOneOrFail(x.identifiers[0])); })); } diff --git a/packages/backend/src/server/api/common/signin.ts b/packages/backend/src/server/api/common/signin.ts index b713260ac6..df986fc457 100644 --- a/packages/backend/src/server/api/common/signin.ts +++ b/packages/backend/src/server/api/common/signin.ts @@ -29,14 +29,14 @@ export default function(ctx: Koa.Context, user: ILocalUser, redirect = false) { (async () => { // Append signin history - const record = await Signins.save({ + const record = await Signins.insert({ id: genId(), createdAt: new Date(), userId: user.id, ip: ctx.ip, headers: ctx.headers, success: true, - }); + }).then(x => Signins.findOneOrFail(x.identifiers[0])); // Publish signin event publishMainStream(user.id, 'signin', await Signins.pack(record)); diff --git a/packages/backend/src/server/api/endpoints/admin/announcements/create.ts b/packages/backend/src/server/api/endpoints/admin/announcements/create.ts index feb874db74..7d169d6caf 100644 --- a/packages/backend/src/server/api/endpoints/admin/announcements/create.ts +++ b/packages/backend/src/server/api/endpoints/admin/announcements/create.ts @@ -59,14 +59,14 @@ export const meta = { // eslint-disable-next-line import/no-default-export export default define(meta, async (ps) => { - const announcement = await Announcements.save({ + const announcement = await Announcements.insert({ id: genId(), createdAt: new Date(), updatedAt: null, title: ps.title, text: ps.text, imageUrl: ps.imageUrl, - }); + }).then(x => Announcements.findOneOrFail(x.identifiers[0])); return announcement; }); 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 bafa658a57..f7a0fdb875 100644 --- a/packages/backend/src/server/api/endpoints/admin/emoji/add.ts +++ b/packages/backend/src/server/api/endpoints/admin/emoji/add.ts @@ -38,7 +38,7 @@ export default define(meta, async (ps, me) => { const name = file.name.split('.')[0].match(/^[a-z0-9_]+$/) ? file.name.split('.')[0] : `_${rndstr('a-z0-9', 8)}_`; - const emoji = await Emojis.save({ + const emoji = await Emojis.insert({ id: genId(), updatedAt: new Date(), name: name, @@ -47,7 +47,7 @@ export default define(meta, async (ps, me) => { aliases: [], url: file.url, type: file.type, - }); + }).then(x => Emojis.findOneOrFail(x.identifiers[0])); await getConnection().queryResultCache!.remove(['meta_emojis']); diff --git a/packages/backend/src/server/api/endpoints/auth/session/generate.ts b/packages/backend/src/server/api/endpoints/auth/session/generate.ts index 2b46c4828d..b9e5e84f6e 100644 --- a/packages/backend/src/server/api/endpoints/auth/session/generate.ts +++ b/packages/backend/src/server/api/endpoints/auth/session/generate.ts @@ -57,12 +57,12 @@ export default define(meta, async (ps) => { const token = uuid(); // Create session token document - const doc = await AuthSessions.save({ + const doc = await AuthSessions.insert({ id: genId(), createdAt: new Date(), appId: app.id, token: token, - }); + }).then(x => AuthSessions.findOneOrFail(x.identifiers[0])); return { token: doc.token, diff --git a/packages/backend/src/server/api/endpoints/pages/create.ts b/packages/backend/src/server/api/endpoints/pages/create.ts index 65e579e4ea..dcf916909d 100644 --- a/packages/backend/src/server/api/endpoints/pages/create.ts +++ b/packages/backend/src/server/api/endpoints/pages/create.ts @@ -107,7 +107,7 @@ export default define(meta, async (ps, user) => { } }); - const page = await Pages.save(new Page({ + const page = await Pages.insert(new Page({ id: genId(), createdAt: new Date(), updatedAt: new Date(), @@ -123,7 +123,7 @@ export default define(meta, async (ps, user) => { alignCenter: ps.alignCenter, hideTitleWhenPinned: ps.hideTitleWhenPinned, font: ps.font, - })); + })).then(x => Pages.findOneOrFail(x.identifiers[0])); return await Pages.pack(page); }); diff --git a/packages/backend/src/server/api/endpoints/users/report-abuse.ts b/packages/backend/src/server/api/endpoints/users/report-abuse.ts index a1d8376651..bd80710fec 100644 --- a/packages/backend/src/server/api/endpoints/users/report-abuse.ts +++ b/packages/backend/src/server/api/endpoints/users/report-abuse.ts @@ -62,7 +62,7 @@ export default define(meta, async (ps, me) => { throw new ApiError(meta.errors.cannotReportAdmin); } - const report = await AbuseUserReports.save({ + const report = await AbuseUserReports.insert({ id: genId(), createdAt: new Date(), targetUserId: user.id, @@ -70,7 +70,7 @@ export default define(meta, async (ps, me) => { reporterId: me.id, reporterHost: null, comment: ps.comment, - }); + }).then(x => AbuseUserReports.findOneOrFail(x.identifiers[0])); // Publish event to moderators setTimeout(async () => { diff --git a/packages/backend/src/services/create-notification.ts b/packages/backend/src/services/create-notification.ts index fc43ab29d7..1c1c1fcdff 100644 --- a/packages/backend/src/services/create-notification.ts +++ b/packages/backend/src/services/create-notification.ts @@ -20,7 +20,7 @@ export async function createNotification( const isMuted = profile?.mutingNotificationTypes.includes(type); // Create notification - const notification = await Notifications.save({ + const notification = await Notifications.insert({ id: genId(), createdAt: new Date(), notifieeId: notifieeId, @@ -28,7 +28,8 @@ export async function createNotification( // 相手がこの通知をミュートしているようなら、既読を予めつけておく isRead: isMuted, ...data, - } as Partial); + } as Partial) + .then(x => Notifications.findOneOrFail(x.identifiers[0])); const packed = await Notifications.pack(notification, {}); -- cgit v1.2.3-freya From 1f2dab0a839f9ee6d754243881d949988af7df55 Mon Sep 17 00:00:00 2001 From: syuilo Date: Thu, 13 Jan 2022 00:47:05 +0900 Subject: feat: multiple emojis editing --- .../api/endpoints/admin/emoji/add-aliases-bulk.ts | 39 +++ .../api/endpoints/admin/emoji/delete-bulk.ts | 37 +++ .../src/server/api/endpoints/admin/emoji/delete.ts | 43 +++ .../server/api/endpoints/admin/emoji/import-zip.ts | 21 ++ .../endpoints/admin/emoji/remove-aliases-bulk.ts | 39 +++ .../src/server/api/endpoints/admin/emoji/remove.ts | 43 --- .../api/endpoints/admin/emoji/set-aliases-bulk.ts | 35 +++ .../api/endpoints/admin/emoji/set-category-bulk.ts | 35 +++ .../client/src/pages/admin/emoji-edit-dialog.vue | 2 +- packages/client/src/pages/admin/emojis.vue | 341 +++++++++++++-------- packages/client/src/pages/admin/index.vue | 8 +- 11 files changed, 466 insertions(+), 177 deletions(-) create mode 100644 packages/backend/src/server/api/endpoints/admin/emoji/add-aliases-bulk.ts create mode 100644 packages/backend/src/server/api/endpoints/admin/emoji/delete-bulk.ts create mode 100644 packages/backend/src/server/api/endpoints/admin/emoji/delete.ts create mode 100644 packages/backend/src/server/api/endpoints/admin/emoji/import-zip.ts create mode 100644 packages/backend/src/server/api/endpoints/admin/emoji/remove-aliases-bulk.ts delete mode 100644 packages/backend/src/server/api/endpoints/admin/emoji/remove.ts create mode 100644 packages/backend/src/server/api/endpoints/admin/emoji/set-aliases-bulk.ts create mode 100644 packages/backend/src/server/api/endpoints/admin/emoji/set-category-bulk.ts (limited to 'packages/backend/src/server/api/endpoints/admin') diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/add-aliases-bulk.ts b/packages/backend/src/server/api/endpoints/admin/emoji/add-aliases-bulk.ts new file mode 100644 index 0000000000..ef0f315022 --- /dev/null +++ b/packages/backend/src/server/api/endpoints/admin/emoji/add-aliases-bulk.ts @@ -0,0 +1,39 @@ +import $ from 'cafy'; +import define from '../../../define'; +import { ID } from '@/misc/cafy-id'; +import { Emojis } from '@/models/index'; +import { getConnection, In } from 'typeorm'; +import { ApiError } from '../../../error'; + +export const meta = { + tags: ['admin'], + + requireCredential: true as const, + requireModerator: true, + + params: { + ids: { + validator: $.arr($.type(ID)), + }, + + aliases: { + validator: $.arr($.str), + }, + }, +}; + +// eslint-disable-next-line import/no-default-export +export default define(meta, async (ps) => { + const emojis = await Emojis.find({ + id: In(ps.ids), + }); + + for (const emoji of emojis) { + await Emojis.update(emoji.id, { + updatedAt: new Date(), + aliases: [...new Set(emoji.aliases.concat(ps.aliases))], + }); + } + + await getConnection().queryResultCache!.remove(['meta_emojis']); +}); diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/delete-bulk.ts b/packages/backend/src/server/api/endpoints/admin/emoji/delete-bulk.ts new file mode 100644 index 0000000000..a99cd3c978 --- /dev/null +++ b/packages/backend/src/server/api/endpoints/admin/emoji/delete-bulk.ts @@ -0,0 +1,37 @@ +import $ from 'cafy'; +import define from '../../../define'; +import { ID } from '@/misc/cafy-id'; +import { Emojis } from '@/models/index'; +import { getConnection, In } from 'typeorm'; +import { insertModerationLog } from '@/services/insert-moderation-log'; +import { ApiError } from '../../../error'; + +export const meta = { + tags: ['admin'], + + requireCredential: true as const, + requireModerator: true, + + params: { + ids: { + validator: $.arr($.type(ID)), + }, + }, +}; + +// eslint-disable-next-line import/no-default-export +export default define(meta, async (ps, me) => { + const emojis = await Emojis.find({ + id: In(ps.ids), + }); + + for (const emoji of emojis) { + await Emojis.delete(emoji.id); + + await getConnection().queryResultCache!.remove(['meta_emojis']); + + insertModerationLog(me, 'deleteEmoji', { + emoji: emoji, + }); + } +}); diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/delete.ts b/packages/backend/src/server/api/endpoints/admin/emoji/delete.ts new file mode 100644 index 0000000000..870245ac92 --- /dev/null +++ b/packages/backend/src/server/api/endpoints/admin/emoji/delete.ts @@ -0,0 +1,43 @@ +import $ from 'cafy'; +import define from '../../../define'; +import { ID } from '@/misc/cafy-id'; +import { Emojis } from '@/models/index'; +import { getConnection } from 'typeorm'; +import { insertModerationLog } from '@/services/insert-moderation-log'; +import { ApiError } from '../../../error'; + +export const meta = { + tags: ['admin'], + + requireCredential: true as const, + requireModerator: true, + + params: { + id: { + validator: $.type(ID), + }, + }, + + errors: { + noSuchEmoji: { + message: 'No such emoji.', + code: 'NO_SUCH_EMOJI', + id: 'be83669b-773a-44b7-b1f8-e5e5170ac3c2', + }, + }, +}; + +// eslint-disable-next-line import/no-default-export +export default define(meta, async (ps, me) => { + const emoji = await Emojis.findOne(ps.id); + + if (emoji == null) throw new ApiError(meta.errors.noSuchEmoji); + + await Emojis.delete(emoji.id); + + await getConnection().queryResultCache!.remove(['meta_emojis']); + + insertModerationLog(me, 'deleteEmoji', { + emoji: emoji, + }); +}); diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/import-zip.ts b/packages/backend/src/server/api/endpoints/admin/emoji/import-zip.ts new file mode 100644 index 0000000000..04895b8f20 --- /dev/null +++ b/packages/backend/src/server/api/endpoints/admin/emoji/import-zip.ts @@ -0,0 +1,21 @@ +import $ from 'cafy'; +import define from '../../../define'; +import { createImportCustomEmojisJob } from '@/queue/index'; +import ms from 'ms'; +import { ID } from '@/misc/cafy-id'; + +export const meta = { + secure: true, + requireCredential: true as const, + requireModerator: true, + params: { + fileId: { + validator: $.type(ID), + }, + }, +}; + +// eslint-disable-next-line import/no-default-export +export default define(meta, async (ps, user) => { + createImportCustomEmojisJob(user, ps.fileId); +}); diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/remove-aliases-bulk.ts b/packages/backend/src/server/api/endpoints/admin/emoji/remove-aliases-bulk.ts new file mode 100644 index 0000000000..4c771b4e42 --- /dev/null +++ b/packages/backend/src/server/api/endpoints/admin/emoji/remove-aliases-bulk.ts @@ -0,0 +1,39 @@ +import $ from 'cafy'; +import define from '../../../define'; +import { ID } from '@/misc/cafy-id'; +import { Emojis } from '@/models/index'; +import { getConnection, In } from 'typeorm'; +import { ApiError } from '../../../error'; + +export const meta = { + tags: ['admin'], + + requireCredential: true as const, + requireModerator: true, + + params: { + ids: { + validator: $.arr($.type(ID)), + }, + + aliases: { + validator: $.arr($.str), + }, + }, +}; + +// eslint-disable-next-line import/no-default-export +export default define(meta, async (ps) => { + const emojis = await Emojis.find({ + id: In(ps.ids), + }); + + for (const emoji of emojis) { + await Emojis.update(emoji.id, { + updatedAt: new Date(), + aliases: emoji.aliases.filter(x => !ps.aliases.includes(x)), + }); + } + + await getConnection().queryResultCache!.remove(['meta_emojis']); +}); diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/remove.ts b/packages/backend/src/server/api/endpoints/admin/emoji/remove.ts deleted file mode 100644 index 440c1008c7..0000000000 --- a/packages/backend/src/server/api/endpoints/admin/emoji/remove.ts +++ /dev/null @@ -1,43 +0,0 @@ -import $ from 'cafy'; -import define from '../../../define'; -import { ID } from '@/misc/cafy-id'; -import { Emojis } from '@/models/index'; -import { getConnection } from 'typeorm'; -import { insertModerationLog } from '@/services/insert-moderation-log'; -import { ApiError } from '../../../error'; - -export const meta = { - tags: ['admin'], - - requireCredential: true as const, - requireModerator: true, - - params: { - id: { - validator: $.type(ID), - }, - }, - - errors: { - noSuchEmoji: { - message: 'No such emoji.', - code: 'NO_SUCH_EMOJI', - id: 'be83669b-773a-44b7-b1f8-e5e5170ac3c2', - }, - }, -}; - -// eslint-disable-next-line import/no-default-export -export default define(meta, async (ps, me) => { - const emoji = await Emojis.findOne(ps.id); - - if (emoji == null) throw new ApiError(meta.errors.noSuchEmoji); - - await Emojis.delete(emoji.id); - - await getConnection().queryResultCache!.remove(['meta_emojis']); - - insertModerationLog(me, 'removeEmoji', { - emoji: emoji, - }); -}); diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/set-aliases-bulk.ts b/packages/backend/src/server/api/endpoints/admin/emoji/set-aliases-bulk.ts new file mode 100644 index 0000000000..33dccbc642 --- /dev/null +++ b/packages/backend/src/server/api/endpoints/admin/emoji/set-aliases-bulk.ts @@ -0,0 +1,35 @@ +import $ from 'cafy'; +import define from '../../../define'; +import { ID } from '@/misc/cafy-id'; +import { Emojis } from '@/models/index'; +import { getConnection, In } from 'typeorm'; +import { ApiError } from '../../../error'; + +export const meta = { + tags: ['admin'], + + requireCredential: true as const, + requireModerator: true, + + params: { + ids: { + validator: $.arr($.type(ID)), + }, + + aliases: { + validator: $.arr($.str), + }, + }, +}; + +// eslint-disable-next-line import/no-default-export +export default define(meta, async (ps) => { + await Emojis.update({ + id: In(ps.ids), + }, { + updatedAt: new Date(), + aliases: ps.aliases, + }); + + await getConnection().queryResultCache!.remove(['meta_emojis']); +}); diff --git a/packages/backend/src/server/api/endpoints/admin/emoji/set-category-bulk.ts b/packages/backend/src/server/api/endpoints/admin/emoji/set-category-bulk.ts new file mode 100644 index 0000000000..d40ed52da7 --- /dev/null +++ b/packages/backend/src/server/api/endpoints/admin/emoji/set-category-bulk.ts @@ -0,0 +1,35 @@ +import $ from 'cafy'; +import define from '../../../define'; +import { ID } from '@/misc/cafy-id'; +import { Emojis } from '@/models/index'; +import { getConnection, In } from 'typeorm'; +import { ApiError } from '../../../error'; + +export const meta = { + tags: ['admin'], + + requireCredential: true as const, + requireModerator: true, + + params: { + ids: { + validator: $.arr($.type(ID)), + }, + + category: { + validator: $.optional.nullable.str, + }, + }, +}; + +// eslint-disable-next-line import/no-default-export +export default define(meta, async (ps) => { + await Emojis.update({ + id: In(ps.ids), + }, { + updatedAt: new Date(), + category: ps.category, + }); + + await getConnection().queryResultCache!.remove(['meta_emojis']); +}); diff --git a/packages/client/src/pages/admin/emoji-edit-dialog.vue b/packages/client/src/pages/admin/emoji-edit-dialog.vue index a45d92fa16..2e3903426e 100644 --- a/packages/client/src/pages/admin/emoji-edit-dialog.vue +++ b/packages/client/src/pages/admin/emoji-edit-dialog.vue @@ -95,7 +95,7 @@ export default defineComponent({ }); if (canceled) return; - os.api('admin/emoji/remove', { + os.api('admin/emoji/delete', { id: this.emoji.id }).then(() => { this.$emit('done', { diff --git a/packages/client/src/pages/admin/emojis.vue b/packages/client/src/pages/admin/emojis.vue index df5d234d6f..f995460f11 100644 --- a/packages/client/src/pages/admin/emojis.vue +++ b/packages/client/src/pages/admin/emojis.vue @@ -6,11 +6,22 @@ - + + + +
+ Select all + Set category + Add tag + Remove tag + Set tag + Delete +
+