diff options
author | Eric Bailey <git@esb.lol> | 2023-07-17 17:31:56 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-17 17:31:56 -0500 |
commit | aa4b79e77a52f612c5d62538270a138c8aac88b6 (patch) | |
tree | eb8367464272f66c9cf0ce9adca305959872899c /src | |
parent | bfed96bd7b75081a148322e2f7cd2b82095d59fe (diff) | |
download | voidsky-aa4b79e77a52f612c5d62538270a138c8aac88b6.tar.zst |
handle failed custom feeds on home screen (#1012)
* handle failed custom feeds on home screen * remove unnecessary edit * make sure edits to pinned feeds are handled and reloaded * fix lint
Diffstat (limited to 'src')
-rw-r--r-- | src/view/screens/Home.tsx | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/view/screens/Home.tsx b/src/view/screens/Home.tsx index 41459cfa5..b633e0e1c 100644 --- a/src/view/screens/Home.tsx +++ b/src/view/screens/Home.tsx @@ -36,13 +36,17 @@ export const HomeScreen = withAuthRequired( const pagerRef = React.useRef<PagerRef>(null) const [selectedPage, setSelectedPage] = React.useState(0) const [customFeeds, setCustomFeeds] = React.useState<PostsFeedModel[]>([]) + const [requestedCustomFeeds, setRequestedCustomFeeds] = React.useState< + string[] + >([]) React.useEffect(() => { const {pinned} = store.me.savedFeeds + if ( isEqual( pinned.map(p => p.uri), - customFeeds.map(f => (f.params as GetCustomFeed.QueryParams).feed), + requestedCustomFeeds, ) ) { // no changes @@ -57,12 +61,15 @@ export const HomeScreen = withAuthRequired( } pagerRef.current?.setPage(0) setCustomFeeds(feeds) + setRequestedCustomFeeds(pinned.map(p => p.uri)) }, [ store, store.me.savedFeeds.pinned, customFeeds, setCustomFeeds, pagerRef, + requestedCustomFeeds, + setRequestedCustomFeeds, ]) useFocusEffect( |