From 4cd9a4493e0477d27fbaca7ae024440460de4a8a Mon Sep 17 00:00:00 2001 From: Ansh Nanda Date: Thu, 25 May 2023 18:48:40 -0700 Subject: [PATCH] add empty state for custom feed --- src/state/models/feeds/custom-feed.ts | 8 ++++++++ src/view/screens/CustomFeed.tsx | 6 ++++++ 2 files changed, 14 insertions(+) diff --git a/src/state/models/feeds/custom-feed.ts b/src/state/models/feeds/custom-feed.ts index 9ac69ac2..8fc1eb1e 100644 --- a/src/state/models/feeds/custom-feed.ts +++ b/src/state/models/feeds/custom-feed.ts @@ -8,13 +8,19 @@ export class CustomFeedModel { // data _reactKey: string data: AppBskyFeedDefs.GeneratorView + isOnline: boolean + isValid: boolean constructor( public rootStore: RootStoreModel, view: AppBskyFeedDefs.GeneratorView, + isOnline?: boolean, + isValid?: boolean, ) { this._reactKey = view.uri this.data = view + this.isOnline = isOnline ?? true + this.isValid = isValid ?? true makeAutoObservable( this, { @@ -103,6 +109,8 @@ export class CustomFeedModel { }) runInAction(() => { this.data = res.data.view + this.isOnline = res.data.isOnline + this.isValid = res.data.isValid }) } diff --git a/src/view/screens/CustomFeed.tsx b/src/view/screens/CustomFeed.tsx index 79b10de0..4149cd49 100644 --- a/src/view/screens/CustomFeed.tsx +++ b/src/view/screens/CustomFeed.tsx @@ -30,6 +30,7 @@ import {FAB} from '../com/util/fab/FAB' import {LoadLatestBtn} from 'view/com/util/load-latest/LoadLatestBtn' import {DropdownButton, DropdownItem} from 'view/com/util/forms/DropdownButton' import {useOnMainScroll} from 'lib/hooks/useOnMainScroll' +import {EmptyState} from 'view/com/util/EmptyState' type Props = NativeStackScreenProps export const CustomFeedScreen = withAuthRequired( @@ -326,6 +327,10 @@ export const CustomFeedScreen = withAuthRequired( onTogglePinned, ]) + const renderEmptyState = React.useCallback(() => { + return + }, []) + return ( @@ -335,6 +340,7 @@ export const CustomFeedScreen = withAuthRequired( onScroll={onMainScroll} scrollEventThrottle={100} ListHeaderComponent={renderListHeaderComponent} + renderEmptyState={renderEmptyState} extraData={[uri, isPinned]} /> {isScrolledDown ? (