diff options
author | Eric Bailey <git@esb.lol> | 2023-12-07 16:00:09 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-07 14:00:09 -0800 |
commit | 1b5989ac51328b47779dffb7672e9d04885e43b0 (patch) | |
tree | 6fdeae020493c824cbb823084f2823a98be6ac06 /src/view | |
parent | b7a529412381c51f958b5f69e16b8f233e203ec2 (diff) | |
download | voidsky-1b5989ac51328b47779dffb7672e9d04885e43b0.tar.zst |
Allow blocking/muting to curational lists, unpinning to modlists (#2121)
* Add un-pinning of modlist * Allow muting/blocking of curational lists * Tweak icon --------- Co-authored-by: Paul Frazee <pfrazee@gmail.com>
Diffstat (limited to 'src/view')
-rw-r--r-- | src/view/screens/ProfileList.tsx | 69 |
1 files changed, 68 insertions, 1 deletions
diff --git a/src/view/screens/ProfileList.tsx b/src/view/screens/ProfileList.tsx index 923560efd..3dcc7121f 100644 --- a/src/view/screens/ProfileList.tsx +++ b/src/view/screens/ProfileList.tsx @@ -456,8 +456,75 @@ function Header({rkey, list}: {rkey: string; list: AppBskyGraphDefs.ListView}) { }, }) } + if (isModList && isPinned) { + items.push({label: 'separator'}) + items.push({ + testID: 'listHeaderDropdownUnpinBtn', + label: _(msg`Unpin moderation list`), + onPress: isPending ? undefined : () => unpinFeed({uri: list.uri}), + icon: { + ios: { + name: 'pin', + }, + android: '', + web: 'thumbtack', + }, + }) + } + if (isCurateList) { + items.push({label: 'separator'}) + + if (!isBlocking) { + items.push({ + testID: 'listHeaderDropdownMuteBtn', + label: isMuting ? _(msg`Un-mute list`) : _(msg`Mute list`), + onPress: isMuting ? onUnsubscribeMute : onSubscribeMute, + icon: { + ios: { + name: isMuting ? 'eye' : 'eye.slash', + }, + android: '', + web: isMuting ? 'eye' : ['far', 'eye-slash'], + }, + }) + } + + if (!isMuting) { + items.push({ + testID: 'listHeaderDropdownBlockBtn', + label: isBlocking ? _(msg`Un-block list`) : _(msg`Block list`), + onPress: isBlocking ? onUnsubscribeBlock : onSubscribeBlock, + icon: { + ios: { + name: 'person.fill.xmark', + }, + android: '', + web: 'user-slash', + }, + }) + } + } return items - }, [isOwner, onPressShare, onPressEdit, onPressDelete, onPressReport, _]) + }, [ + isOwner, + onPressShare, + onPressEdit, + onPressDelete, + onPressReport, + _, + isModList, + isPinned, + unpinFeed, + isPending, + list.uri, + isCurateList, + isMuting, + isBlocking, + onUnsubscribeMute, + onSubscribeMute, + onUnsubscribeBlock, + onSubscribeBlock, + ]) const subscribeDropdownItems: DropdownItem[] = useMemo(() => { return [ |