diff options
author | Paul Frazee <pfrazee@gmail.com> | 2023-04-12 18:26:38 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-12 18:26:38 -0700 |
commit | 2fed6c402159c6084dd481ab87c5e8b034e910ac (patch) | |
tree | 5907b2b67c900ef78de89e12ad9ae4c0d5ef6715 /src/lib/labeling/const.ts | |
parent | a20d034ba5b18c4512f3a36f733bb5cd2199424e (diff) | |
download | voidsky-2fed6c402159c6084dd481ab87c5e8b034e910ac.tar.zst |
Add first round of labeling tools (#467)
* Rework notifications to sync locally in full and give users better control * Fix positioning of load more btn on web * Improve behavior of load more notifications btn * Fix to post rendering * Fix notification fetch abort condition * Add start of post-hiding by labels * Create a standard postcontainer and improve show/hide UI on posts * Add content hiding to expanded post form * Improve label rendering to give more context to users when appropriate * Fix rendering bug * Add user/profile labeling * Implement content filtering preferences * Filter notifications by content prefs * Update test-pds config * Bump deps
Diffstat (limited to 'src/lib/labeling/const.ts')
-rw-r--r-- | src/lib/labeling/const.ts | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/src/lib/labeling/const.ts b/src/lib/labeling/const.ts new file mode 100644 index 000000000..8403fdf1a --- /dev/null +++ b/src/lib/labeling/const.ts @@ -0,0 +1,50 @@ +import {LabelPreferencesModel} from 'state/models/ui/preferences' + +export interface LabelValGroup { + id: keyof LabelPreferencesModel | 'illegal' | 'unknown' + title: string + values: string[] +} + +export const ILLEGAL_LABEL_GROUP: LabelValGroup = { + id: 'illegal', + title: 'Illegal Content', + values: ['csam', 'dmca-violation', 'nudity-nonconsentual'], +} + +export const UNKNOWN_LABEL_GROUP: LabelValGroup = { + id: 'unknown', + title: 'Unknown Label', + values: [], +} + +export const CONFIGURABLE_LABEL_GROUPS: Record< + keyof LabelPreferencesModel, + LabelValGroup +> = { + nsfw: { + id: 'nsfw', + title: 'Sexual Content', + values: ['porn', 'nudity', 'sexual'], + }, + gore: { + id: 'gore', + title: 'Violent / Bloody', + values: ['gore', 'self-harm', 'torture'], + }, + hate: { + id: 'hate', + title: 'Political Hate-Groups', + values: ['icon-kkk', 'icon-nazi', 'icon-confederate'], + }, + spam: { + id: 'spam', + title: 'Spam', + values: ['spam'], + }, + impersonation: { + id: 'impersonation', + title: 'Impersonation', + values: ['impersonation'], + }, +} |