diff --git a/src/view/screens/Feeds.tsx b/src/view/screens/Feeds.tsx
index 320876a4dd..820753f17f 100644
--- a/src/view/screens/Feeds.tsx
+++ b/src/view/screens/Feeds.tsx
@@ -6,6 +6,7 @@ import {
StyleSheet,
View,
} from 'react-native'
+import {AppBskyActorDefs} from '@atproto/api'
import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
import {FontAwesomeIconStyle} from '@fortawesome/react-native-fontawesome'
import {msg, Trans} from '@lingui/macro'
@@ -46,6 +47,7 @@ import {UserAvatar} from 'view/com/util/UserAvatar'
import {ViewHeader} from 'view/com/util/ViewHeader'
import {atoms as a, useTheme} from '#/alf'
import {IconCircle} from '#/components/IconCircle'
+import {FilterTimeline_Stroke2_Corner0_Rounded as FilterTimeline} from '#/components/icons/FilterTimeline'
import {ListMagnifyingGlass_Stroke2_Corner0_Rounded} from '#/components/icons/ListMagnifyingGlass'
import {ListSparkle_Stroke2_Corner0_Rounded} from '#/components/icons/ListSparkle'
@@ -74,6 +76,7 @@ type FlatlistSlice =
type: 'savedFeed'
key: string
feedUri: string
+ savedFeedConfig: AppBskyActorDefs.SavedFeed
}
| {
type: 'savedFeedsLoadMore'
@@ -246,6 +249,7 @@ export function FeedsScreen(_props: Props) {
key: `savedFeed:${feed.value}`,
type: 'savedFeed',
feedUri: feed.value,
+ savedFeedConfig: feed,
})),
)
slices = slices.concat(
@@ -257,6 +261,7 @@ export function FeedsScreen(_props: Props) {
key: `savedFeed:${feed.value}`,
type: 'savedFeed',
feedUri: feed.value,
+ savedFeedConfig: feed,
})),
)
}
@@ -487,7 +492,7 @@ export function FeedsScreen(_props: Props) {
)
} else if (item.type === 'savedFeed') {
- return
+ return
} else if (item.type === 'popularFeedsHeader') {
return (
<>
@@ -593,22 +598,75 @@ export function FeedsScreen(_props: Props) {
)
}
-function SavedFeed({
- feedUri,
- isPrimaryAlgo,
+function FeedOrFollowing({
+ savedFeedConfig: feed,
}: {
- feedUri: string
- isPrimaryAlgo?: boolean
+ savedFeedConfig: AppBskyActorDefs.SavedFeed
+}) {
+ return feed.type === 'timeline' ? (
+
+ ) : (
+
+ )
+}
+
+function FollowingFeed() {
+ const pal = usePalette('default')
+ const t = useTheme()
+ const {isMobile} = useWebMediaQueries()
+ return (
+
+
+
+
+
+
+ Following
+
+
+
+ )
+}
+
+function SavedFeed({
+ savedFeedConfig: feed,
+}: {
+ savedFeedConfig: AppBskyActorDefs.SavedFeed
}) {
const pal = usePalette('default')
const {isMobile} = useWebMediaQueries()
- const {data: info, error} = useFeedSourceInfoQuery({uri: feedUri})
- const typeAvatar = getAvatarTypeFromUri(feedUri)
+ const {data: info, error} = useFeedSourceInfoQuery({uri: feed.value})
+ const typeAvatar = getAvatarTypeFromUri(feed.value)
if (!info)
return (
)
@@ -647,11 +705,6 @@ function SavedFeed({
) : null}
- {isPrimaryAlgo && (
-
- Primary Algorithm
-
- )}
{isMobile && (