diff options
author | Paul Frazee <pfrazee@gmail.com> | 2023-12-24 15:19:37 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-24 15:19:37 -0800 |
commit | 51506efca64d6a7aa12a8299eed4014d47d08c25 (patch) | |
tree | 9ee382cbc7632d2a8dadd9cb03d1399d5f2286f5 /src | |
parent | e3d9a4f782c960141f44d950caae238319ae7621 (diff) | |
download | voidsky-51506efca64d6a7aa12a8299eed4014d47d08c25.tar.zst |
Apply post-hide to quote posts (#2302)
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/moderatePost_wrapped.ts | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/src/lib/moderatePost_wrapped.ts b/src/lib/moderatePost_wrapped.ts index 286d47e1d..2195b2304 100644 --- a/src/lib/moderatePost_wrapped.ts +++ b/src/lib/moderatePost_wrapped.ts @@ -1,4 +1,8 @@ -import {moderatePost} from '@atproto/api' +import { + AppBskyEmbedRecord, + AppBskyEmbedRecordWithMedia, + moderatePost, +} from '@atproto/api' type ModeratePost = typeof moderatePost type Options = Parameters<ModeratePost>[1] & { @@ -25,5 +29,30 @@ export function moderatePost_wrapped( } } + if (subject.embed) { + let embedHidden = false + if (AppBskyEmbedRecord.isViewRecord(subject.embed.record)) { + embedHidden = hiddenPosts.includes(subject.embed.record.uri) + } + if ( + AppBskyEmbedRecordWithMedia.isView(subject.embed) && + AppBskyEmbedRecord.isViewRecord(subject.embed.record.record) + ) { + embedHidden = hiddenPosts.includes(subject.embed.record.record.uri) + } + if (embedHidden) { + moderations.embed.filter = true + moderations.embed.blur = true + if (!moderations.embed.cause) { + moderations.embed.cause = { + // @ts-ignore Temporary extension to the moderation system -prf + type: 'post-hidden', + source: {type: 'user'}, + priority: 1, + } + } + } + } + return moderations } |