diff options
Diffstat (limited to 'src/view/shell/desktop')
-rw-r--r-- | src/view/shell/desktop/Feeds.tsx | 23 | ||||
-rw-r--r-- | src/view/shell/desktop/LeftNav.tsx | 23 |
2 files changed, 34 insertions, 12 deletions
diff --git a/src/view/shell/desktop/Feeds.tsx b/src/view/shell/desktop/Feeds.tsx index 3f2063887..3237d2cdd 100644 --- a/src/view/shell/desktop/Feeds.tsx +++ b/src/view/shell/desktop/Feeds.tsx @@ -1,16 +1,17 @@ import React from 'react' import {View, StyleSheet} from 'react-native' import {useNavigationState} from '@react-navigation/native' -import {AtUri} from '@atproto/api' import {observer} from 'mobx-react-lite' import {useStores} from 'state/index' import {usePalette} from 'lib/hooks/usePalette' +import {useDesktopRightNavItems} from 'lib/hooks/useDesktopRightNavItems' import {TextLink} from 'view/com/util/Link' import {getCurrentRoute} from 'lib/routes/helpers' export const DesktopFeeds = observer(function DesktopFeeds() { const store = useStores() const pal = usePalette('default') + const items = useDesktopRightNavItems(store.preferences.pinnedFeeds) const route = useNavigationState(state => { if (!state) { @@ -22,20 +23,22 @@ export const DesktopFeeds = observer(function DesktopFeeds() { return ( <View style={[styles.container, pal.view, pal.border]}> <FeedItem href="/" title="Following" current={route.name === 'Home'} /> - {store.me.savedFeeds.pinned.map(feed => { + {items.map(item => { try { - const {hostname, rkey} = new AtUri(feed.uri) - const href = `/profile/${hostname}/feed/${rkey}` const params = route.params as Record<string, string> + const routeName = + item.collection === 'app.bsky.feed.generator' + ? 'ProfileFeed' + : 'ProfileList' return ( <FeedItem - key={feed.uri} - href={href} - title={feed.displayName} + key={item.uri} + href={item.href} + title={item.displayName} current={ - route.name === 'CustomFeed' && - params.name === hostname && - params.rkey === rkey + route.name === routeName && + params.name === item.hostname && + params.rkey === item.rkey } /> ) diff --git a/src/view/shell/desktop/LeftNav.tsx b/src/view/shell/desktop/LeftNav.tsx index 2679a6648..39271605c 100644 --- a/src/view/shell/desktop/LeftNav.tsx +++ b/src/view/shell/desktop/LeftNav.tsx @@ -31,8 +31,9 @@ import { CogIcon, CogIconSolid, ComposeIcon2, - HandIcon, + ListIcon, HashtagIcon, + HandIcon, } from 'lib/icons' import {getCurrentRoute, isTab, isStateAtTabRoot} from 'lib/routes/helpers' import {NavigationProp, CommonNavigatorParams} from 'lib/routes/types' @@ -320,12 +321,30 @@ export const DesktopLeftNav = observer(function DesktopLeftNav() { label="Notifications" /> <NavItem + href="/lists" + icon={ + <ListIcon + style={pal.text} + size={isDesktop ? 26 : 30} + strokeWidth={2} + /> + } + iconFilled={ + <ListIcon + style={pal.text} + size={isDesktop ? 26 : 30} + strokeWidth={3} + /> + } + label="Lists" + /> + <NavItem href="/moderation" icon={ <HandIcon - strokeWidth={5.5} style={pal.text} size={isDesktop ? 24 : 27} + strokeWidth={5.5} /> } iconFilled={ |