summaryrefslogtreecommitdiff
path: root/src/server/api/common/get-friends.ts
blob: 7f548b3bbfd06c2fe718bc8772947d17a42fdcc7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import * as mongodb from 'mongodb';
import Following from '../models/following';

export default async (me: mongodb.ObjectID, includeMe: boolean = true) => {
	// Fetch relation to other users who the I follows
	// SELECT followee
	const myfollowing = await Following
		.find({
			followerId: me,
			// 削除されたドキュメントは除く
			deletedAt: { $exists: false }
		}, {
			fields: {
				followeeId: true
			}
		});

	// ID list of other users who the I follows
	const myfollowingIds = myfollowing.map(follow => follow.followeeId);

	if (includeMe) {
		myfollowingIds.push(me);
	}

	return myfollowingIds;
};