chore: STLのdb fallbackでwithRepliesがtrueのときにすべてのリプライを除外しないように (#12075)

MiFollowingを見るのは実装コストが高いため現状実装していない

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
This commit is contained in:
anatawa12 2023-10-19 19:34:52 +09:00 committed by GitHub
parent 9afcdd10ed
commit 991fa054a6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -182,15 +182,17 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
.leftJoinAndSelect('reply.user', 'replyUser') .leftJoinAndSelect('reply.user', 'replyUser')
.leftJoinAndSelect('renote.user', 'renoteUser'); .leftJoinAndSelect('renote.user', 'renoteUser');
query.andWhere(new Brackets(qb => { if (!ps.withReplies) {
qb query.andWhere(new Brackets(qb => {
.where('note.replyId IS NULL') // 返信ではない qb
.orWhere(new Brackets(qb => { .where('note.replyId IS NULL') // 返信ではない
qb // 返信だけど投稿者自身への返信 .orWhere(new Brackets(qb => {
.where('note.replyId IS NOT NULL') qb // 返信だけど投稿者自身への返信
.andWhere('note.replyUserId = note.userId'); .where('note.replyId IS NOT NULL')
})); .andWhere('note.replyUserId = note.userId');
})); }));
}));
}
this.queryService.generateVisibilityQuery(query, me); this.queryService.generateVisibilityQuery(query, me);
this.queryService.generateMutedUserQuery(query, me); this.queryService.generateMutedUserQuery(query, me);