diff options
author | Eric Bailey <git@esb.lol> | 2023-11-13 12:21:53 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-13 10:21:53 -0800 |
commit | c3edde8ac6f9c65eac1004cd8e2fc14b0493cba8 (patch) | |
tree | 5a22e384c386685769f99c28de1816d628b9b89e /src/view/shell/desktop/Feeds.tsx | |
parent | 37a2204483c019f8b85dafb7bafa3e6a5caec1a8 (diff) | |
download | voidsky-c3edde8ac6f9c65eac1004cd8e2fc14b0493cba8.tar.zst |
More prefs cleanup (#1882)
* Update useHomeTabs * Use queryClient to fetch * Replace useHomeTabs and useDesktopRightNavItems * Fix type error * Some cleanup
Diffstat (limited to 'src/view/shell/desktop/Feeds.tsx')
-rw-r--r-- | src/view/shell/desktop/Feeds.tsx | 52 |
1 files changed, 25 insertions, 27 deletions
diff --git a/src/view/shell/desktop/Feeds.tsx b/src/view/shell/desktop/Feeds.tsx index 3237d2cdd..9cb10517e 100644 --- a/src/view/shell/desktop/Feeds.tsx +++ b/src/view/shell/desktop/Feeds.tsx @@ -2,16 +2,14 @@ import React from 'react' import {View, StyleSheet} from 'react-native' import {useNavigationState} from '@react-navigation/native' 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' +import {usePinnedFeedsInfos} from '#/state/queries/feed' export const DesktopFeeds = observer(function DesktopFeeds() { - const store = useStores() const pal = usePalette('default') - const items = useDesktopRightNavItems(store.preferences.pinnedFeeds) + const feeds = usePinnedFeedsInfos() const route = useNavigationState(state => { if (!state) { @@ -23,29 +21,29 @@ export const DesktopFeeds = observer(function DesktopFeeds() { return ( <View style={[styles.container, pal.view, pal.border]}> <FeedItem href="/" title="Following" current={route.name === 'Home'} /> - {items.map(item => { - try { - const params = route.params as Record<string, string> - const routeName = - item.collection === 'app.bsky.feed.generator' - ? 'ProfileFeed' - : 'ProfileList' - return ( - <FeedItem - key={item.uri} - href={item.href} - title={item.displayName} - current={ - route.name === routeName && - params.name === item.hostname && - params.rkey === item.rkey - } - /> - ) - } catch { - return null - } - })} + {feeds + .filter(f => f.displayName !== 'Following') + .map(feed => { + try { + const params = route.params as Record<string, string> + const routeName = + feed.type === 'feed' ? 'ProfileFeed' : 'ProfileList' + return ( + <FeedItem + key={feed.uri} + href={feed.route.href} + title={feed.displayName} + current={ + route.name === routeName && + params.name === feed.route.params.name && + params.rkey === feed.route.params.rkey + } + /> + ) + } catch { + return null + } + })} <View style={{paddingTop: 8, paddingBottom: 6}}> <TextLink type="lg" |