diff options
| author | Aya Morisawa <AyaMorisawa4869@gmail.com> | 2018-12-11 20:36:55 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-12-11 20:36:55 +0900 |
| commit | 125849673a1aba46021852ee473d00f4520d1bd6 (patch) | |
| tree | e30d39490236df402b97a9963dafa44eaf549368 /src/server/api | |
| parent | Fix error (diff) | |
| download | sharkey-125849673a1aba46021852ee473d00f4520d1bd6.tar.gz sharkey-125849673a1aba46021852ee473d00f4520d1bd6.tar.bz2 sharkey-125849673a1aba46021852ee473d00f4520d1bd6.zip | |
Use for-of instead of forEach (#3583)
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
Diffstat (limited to 'src/server/api')
| -rw-r--r-- | src/server/api/endpoints/aggregation/hashtags.ts | 7 | ||||
| -rw-r--r-- | src/server/api/endpoints/drive/files/update.ts | 4 | ||||
| -rw-r--r-- | src/server/api/endpoints/games/reversi/games/show.ts | 3 | ||||
| -rw-r--r-- | src/server/api/endpoints/hashtags/trend.ts | 7 | ||||
| -rw-r--r-- | src/server/api/endpoints/i/update_widget.ts | 10 | ||||
| -rw-r--r-- | src/server/api/endpoints/notes/mentions.ts | 4 | ||||
| -rw-r--r-- | src/server/api/endpoints/notes/polls/vote.ts | 4 | ||||
| -rw-r--r-- | src/server/api/endpoints/users/get_frequently_replied_users.ts | 11 | ||||
| -rw-r--r-- | src/server/api/index.ts | 11 | ||||
| -rw-r--r-- | src/server/api/stream/channels/games/reversi-game.ts | 4 | ||||
| -rw-r--r-- | src/server/api/stream/index.ts | 6 |
11 files changed, 33 insertions, 38 deletions
diff --git a/src/server/api/endpoints/aggregation/hashtags.ts b/src/server/api/endpoints/aggregation/hashtags.ts index 45d709f772..7577711b5f 100644 --- a/src/server/api/endpoints/aggregation/hashtags.ts +++ b/src/server/api/endpoints/aggregation/hashtags.ts @@ -47,10 +47,7 @@ export default define(meta, (ps) => new Promise(async (res, rej) => { }> = []; // カウント - data.map(x => x._id).forEach(x => { - // ブラックリストに登録されているタグなら弾く - if (hidedTags.includes(x.tag)) return; - + for (const x of data.map(x => x._id).filter(x => !hidedTags.includes(x.tag))) { const i = tags.findIndex(tag => tag.name == x.tag); if (i != -1) { tags[i].count++; @@ -60,7 +57,7 @@ export default define(meta, (ps) => new Promise(async (res, rej) => { count: 1 }); } - }); + } // タグを人気順に並べ替え tags.sort((a, b) => b.count - a.count); diff --git a/src/server/api/endpoints/drive/files/update.ts b/src/server/api/endpoints/drive/files/update.ts index a5835c6d65..7f9eb7bad3 100644 --- a/src/server/api/endpoints/drive/files/update.ts +++ b/src/server/api/endpoints/drive/files/update.ts @@ -100,14 +100,14 @@ export default define(meta, (ps, user) => new Promise(async (res, rej) => { Note.find({ '_files._id': file._id }).then(notes => { - notes.forEach(note => { + for (const note of notes) { note._files[note._files.findIndex(f => f._id.equals(file._id))] = file; Note.update({ _id: note._id }, { $set: { _files: note._files } }); - }); + } }); // Serialize diff --git a/src/server/api/endpoints/games/reversi/games/show.ts b/src/server/api/endpoints/games/reversi/games/show.ts index c747202354..0882456102 100644 --- a/src/server/api/endpoints/games/reversi/games/show.ts +++ b/src/server/api/endpoints/games/reversi/games/show.ts @@ -25,9 +25,8 @@ export default define(meta, (ps, user) => new Promise(async (res, rej) => { loopedBoard: game.settings.loopedBoard }); - game.logs.forEach(log => { + for (const log of game.logs) o.put(log.color, log.pos); - }); const packed = await pack(game, user); diff --git a/src/server/api/endpoints/hashtags/trend.ts b/src/server/api/endpoints/hashtags/trend.ts index ed4c8e337f..a26dbf0941 100644 --- a/src/server/api/endpoints/hashtags/trend.ts +++ b/src/server/api/endpoints/hashtags/trend.ts @@ -58,10 +58,7 @@ export default define(meta, () => new Promise(async (res, rej) => { }> = []; // カウント - data.map(x => x._id).forEach(x => { - // ブラックリストに登録されているタグなら弾く - if (hidedTags.includes(x.tag)) return; - + for (const x of data.map(x => x._id).filter(x => !hidedTags.includes(x.tag))) { const i = tags.findIndex(tag => tag.name == x.tag); if (i != -1) { tags[i].count++; @@ -71,7 +68,7 @@ export default define(meta, () => new Promise(async (res, rej) => { count: 1 }); } - }); + } // 最低要求投稿者数を下回るならカットする const limitedTags = tags.filter(tag => tag.count >= requiredUsers); diff --git a/src/server/api/endpoints/i/update_widget.ts b/src/server/api/endpoints/i/update_widget.ts index 90fe8fbe23..da96ec6fc1 100644 --- a/src/server/api/endpoints/i/update_widget.ts +++ b/src/server/api/endpoints/i/update_widget.ts @@ -59,11 +59,11 @@ export default define(meta, (ps, user) => new Promise(async (res, rej) => { //#region Deck if (widget == null && user.clientSettings.deck && user.clientSettings.deck.columns) { const deck = user.clientSettings.deck; - deck.columns.filter((c: any) => c.type == 'widgets').forEach((c: any) => { - c.widgets.forEach((w: any) => { - if (w.id == ps.id) widget = w; - }); - }); + for (const c of deck.columns.filter((c: any) => c.type == 'widgets')) { + for (const w of c.widgets.filter((w: any) => w.id == ps.id)) { + widget = w; + } + } if (widget) { widget.data = ps.data; diff --git a/src/server/api/endpoints/notes/mentions.ts b/src/server/api/endpoints/notes/mentions.ts index 718f5e4403..a353165cd0 100644 --- a/src/server/api/endpoints/notes/mentions.ts +++ b/src/server/api/endpoints/notes/mentions.ts @@ -91,5 +91,7 @@ export default define(meta, (ps, user) => new Promise(async (res, rej) => { res(await packMany(mentions, user)); - mentions.forEach(note => read(user._id, note._id)); + for (const note of mentions) { + read(user._id, note._id); + } })); diff --git a/src/server/api/endpoints/notes/polls/vote.ts b/src/server/api/endpoints/notes/polls/vote.ts index dc012152c6..8de0eb420e 100644 --- a/src/server/api/endpoints/notes/polls/vote.ts +++ b/src/server/api/endpoints/notes/polls/vote.ts @@ -102,12 +102,12 @@ export default define(meta, (ps, user) => new Promise(async (res, rej) => { } }) .then(watchers => { - watchers.forEach(watcher => { + for (const watcher of watchers) { notify(watcher.userId, user._id, 'poll_vote', { noteId: note._id, choice: ps.choice }); - }); + } }); // この投稿をWatchする diff --git a/src/server/api/endpoints/users/get_frequently_replied_users.ts b/src/server/api/endpoints/users/get_frequently_replied_users.ts index cf123b82ba..353ccef1e9 100644 --- a/src/server/api/endpoints/users/get_frequently_replied_users.ts +++ b/src/server/api/endpoints/users/get_frequently_replied_users.ts @@ -2,6 +2,7 @@ import $ from 'cafy'; import ID, { transform } from '../../../../misc/cafy-id'; import Note from '../../../../models/note'; import User, { pack } from '../../../../models/user'; import define from '../../define'; +import { maximum } from '../../../../prelude/array'; export const meta = { requireCredential: false, @@ -77,20 +78,16 @@ export default define(meta, (ps, me) => new Promise(async (res, rej) => { const repliedUsers: any = {}; // Extract replies from recent notes - replyTargetNotes.forEach(note => { - const userId = note.userId.toString(); + for (const userId of replyTargetNotes.map(x => x.userId.toString())) { if (repliedUsers[userId]) { repliedUsers[userId]++; } else { repliedUsers[userId] = 1; } - }); + } // Calc peak - let peak = 0; - Object.keys(repliedUsers).forEach(user => { - if (repliedUsers[user] > peak) peak = repliedUsers[user]; - }); + const peak = maximum(Object.values(repliedUsers)); // Sort replies by frequency const repliedUsersSorted = Object.keys(repliedUsers).sort((a, b) => repliedUsers[b] - repliedUsers[a]); diff --git a/src/server/api/index.ts b/src/server/api/index.ts index ebb3d5a27f..04fc8759f9 100644 --- a/src/server/api/index.ts +++ b/src/server/api/index.ts @@ -41,10 +41,13 @@ const router = new Router(); /** * Register endpoint handlers */ -endpoints.forEach(endpoint => endpoint.meta.requireFile - ? router.post(`/${endpoint.name}`, upload.single('file'), handler.bind(null, endpoint)) - : router.post(`/${endpoint.name}`, handler.bind(null, endpoint)) -); +for (const endpoint of endpoints) { + if (endpoint.meta.requireFile) { + router.post(`/${endpoint.name}`, upload.single('file'), handler.bind(null, endpoint)); + } else { + router.post(`/${endpoint.name}`, handler.bind(null, endpoint)); + } +} router.post('/signup', require('./private/signup').default); router.post('/signin', require('./private/signin').default); diff --git a/src/server/api/stream/channels/games/reversi-game.ts b/src/server/api/stream/channels/games/reversi-game.ts index f287ad0107..1cb077c8c4 100644 --- a/src/server/api/stream/channels/games/reversi-game.ts +++ b/src/server/api/stream/channels/games/reversi-game.ts @@ -242,9 +242,9 @@ export default class extends Channel { loopedBoard: game.settings.loopedBoard }); - game.logs.forEach(log => { + for (const log of game.logs) { o.put(log.color, log.pos); - }); + } const myColor = (game.user1Id.equals(this.user._id) && game.black == 1) || (game.user2Id.equals(this.user._id) && game.black == 2) diff --git a/src/server/api/stream/index.ts b/src/server/api/stream/index.ts index 3119e20af8..22f7646cb9 100644 --- a/src/server/api/stream/index.ts +++ b/src/server/api/stream/index.ts @@ -213,8 +213,8 @@ export default class Connection { */ @autobind public dispose() { - this.channels.forEach(c => { - if (c.dispose) c.dispose(); - }); + for (const c of this.channels.filter(c => c.dispose)) { + c.dispose(); + } } } |