diff options
Diffstat (limited to 'src/view')
26 files changed, 71 insertions, 83 deletions
diff --git a/src/view/com/composer/Composer.tsx b/src/view/com/composer/Composer.tsx index 6009debdd..10a44542e 100644 --- a/src/view/com/composer/Composer.tsx +++ b/src/view/com/composer/Composer.tsx @@ -15,7 +15,7 @@ import LinearGradient from 'react-native-linear-gradient' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {RichText} from '@atproto/api' import {useAnalytics} from 'lib/analytics' -import {UserAutocompleteViewModel} from 'state/models/user-autocomplete-view' +import {UserAutocompleteModel} from 'state/models/discovery/user-autocomplete' import {ExternalEmbed} from './ExternalEmbed' import {Text} from '../util/text/Text' import * as Toast from '../util/Toast' @@ -69,8 +69,8 @@ export const ComposePost = observer(function ComposePost({ ) const [selectedPhotos, setSelectedPhotos] = React.useState<string[]>([]) - const autocompleteView = React.useMemo<UserAutocompleteViewModel>( - () => new UserAutocompleteViewModel(store), + const autocompleteView = React.useMemo<UserAutocompleteModel>( + () => new UserAutocompleteModel(store), [store], ) diff --git a/src/view/com/composer/text-input/TextInput.tsx b/src/view/com/composer/text-input/TextInput.tsx index 393d168fe..ec2186572 100644 --- a/src/view/com/composer/text-input/TextInput.tsx +++ b/src/view/com/composer/text-input/TextInput.tsx @@ -11,7 +11,7 @@ import PasteInput, { } from '@mattermost/react-native-paste-input' import {AppBskyRichtextFacet, RichText} from '@atproto/api' import isEqual from 'lodash.isequal' -import {UserAutocompleteViewModel} from 'state/models/user-autocomplete-view' +import {UserAutocompleteModel} from 'state/models/discovery/user-autocomplete' import {Autocomplete} from './mobile/Autocomplete' import {Text} from 'view/com/util/text/Text' import {useStores} from 'state/index' @@ -36,7 +36,7 @@ interface TextInputProps { richtext: RichText placeholder: string suggestedLinks: Set<string> - autocompleteView: UserAutocompleteViewModel + autocompleteView: UserAutocompleteModel setRichText: (v: RichText) => void onPhotoPasted: (uri: string) => void onSuggestedLinksChanged: (uris: Set<string>) => void diff --git a/src/view/com/composer/text-input/TextInput.web.tsx b/src/view/com/composer/text-input/TextInput.web.tsx index ad891fa5b..68d0d10ce 100644 --- a/src/view/com/composer/text-input/TextInput.web.tsx +++ b/src/view/com/composer/text-input/TextInput.web.tsx @@ -9,7 +9,7 @@ import {Paragraph} from '@tiptap/extension-paragraph' import {Placeholder} from '@tiptap/extension-placeholder' import {Text} from '@tiptap/extension-text' import isEqual from 'lodash.isequal' -import {UserAutocompleteViewModel} from 'state/models/user-autocomplete-view' +import {UserAutocompleteModel} from 'state/models/discovery/user-autocomplete' import {createSuggestion} from './web/Autocomplete' export interface TextInputRef { @@ -21,7 +21,7 @@ interface TextInputProps { richtext: RichText placeholder: string suggestedLinks: Set<string> - autocompleteView: UserAutocompleteViewModel + autocompleteView: UserAutocompleteModel setRichText: (v: RichText) => void onPhotoPasted: (uri: string) => void onSuggestedLinksChanged: (uris: Set<string>) => void diff --git a/src/view/com/composer/text-input/mobile/Autocomplete.tsx b/src/view/com/composer/text-input/mobile/Autocomplete.tsx index 293c89da5..879bac071 100644 --- a/src/view/com/composer/text-input/mobile/Autocomplete.tsx +++ b/src/view/com/composer/text-input/mobile/Autocomplete.tsx @@ -1,7 +1,7 @@ import React, {useEffect} from 'react' import {Animated, TouchableOpacity, StyleSheet, View} from 'react-native' import {observer} from 'mobx-react-lite' -import {UserAutocompleteViewModel} from 'state/models/user-autocomplete-view' +import {UserAutocompleteModel} from 'state/models/discovery/user-autocomplete' import {useAnimatedValue} from 'lib/hooks/useAnimatedValue' import {usePalette} from 'lib/hooks/usePalette' import {Text} from 'view/com/util/text/Text' @@ -11,7 +11,7 @@ export const Autocomplete = observer( view, onSelect, }: { - view: UserAutocompleteViewModel + view: UserAutocompleteModel onSelect: (item: string) => void }) => { const pal = usePalette('default') diff --git a/src/view/com/composer/text-input/web/Autocomplete.tsx b/src/view/com/composer/text-input/web/Autocomplete.tsx index fbe438969..7c6f8770b 100644 --- a/src/view/com/composer/text-input/web/Autocomplete.tsx +++ b/src/view/com/composer/text-input/web/Autocomplete.tsx @@ -11,7 +11,7 @@ import { SuggestionProps, SuggestionKeyDownProps, } from '@tiptap/suggestion' -import {UserAutocompleteViewModel} from 'state/models/user-autocomplete-view' +import {UserAutocompleteModel} from 'state/models/discovery/user-autocomplete' interface MentionListRef { onKeyDown: (props: SuggestionKeyDownProps) => boolean @@ -20,7 +20,7 @@ interface MentionListRef { export function createSuggestion({ autocompleteView, }: { - autocompleteView: UserAutocompleteViewModel + autocompleteView: UserAutocompleteModel }): Omit<SuggestionOptions, 'editor'> { return { async items({query}) { diff --git a/src/view/com/discover/SuggestedPosts.tsx b/src/view/com/discover/SuggestedPosts.tsx index 9c7745dfa..6d2f39636 100644 --- a/src/view/com/discover/SuggestedPosts.tsx +++ b/src/view/com/discover/SuggestedPosts.tsx @@ -2,7 +2,7 @@ import React from 'react' import {ActivityIndicator, StyleSheet, View} from 'react-native' import {observer} from 'mobx-react-lite' import {useStores} from 'state/index' -import {SuggestedPostsView} from 'state/models/suggested-posts-view' +import {SuggestedPostsModel} from 'state/models/discovery/suggested-posts' import {s} from 'lib/styles' import {FeedItem as Post} from '../posts/FeedItem' import {Text} from '../util/text/Text' @@ -11,8 +11,8 @@ import {usePalette} from 'lib/hooks/usePalette' export const SuggestedPosts = observer(() => { const pal = usePalette('default') const store = useStores() - const suggestedPostsView = React.useMemo<SuggestedPostsView>( - () => new SuggestedPostsView(store), + const suggestedPostsView = React.useMemo<SuggestedPostsModel>( + () => new SuggestedPostsModel(store), [store], ) diff --git a/src/view/com/modals/EditProfile.tsx b/src/view/com/modals/EditProfile.tsx index 0b81d7f39..4fbf7070b 100644 --- a/src/view/com/modals/EditProfile.tsx +++ b/src/view/com/modals/EditProfile.tsx @@ -12,7 +12,7 @@ import {PickedMedia} from '../../../lib/media/picker' import {Text} from '../util/text/Text' import {ErrorMessage} from '../util/error/ErrorMessage' import {useStores} from 'state/index' -import {ProfileViewModel} from 'state/models/profile-view' +import {ProfileModel} from 'state/models/content/profile' import {s, colors, gradients} from 'lib/styles' import {enforceLen} from 'lib/strings/helpers' import {MAX_DISPLAY_NAME, MAX_DESCRIPTION} from 'lib/constants' @@ -30,7 +30,7 @@ export function Component({ profileView, onUpdate, }: { - profileView: ProfileViewModel + profileView: ProfileModel onUpdate?: () => void }) { const store = useStores() diff --git a/src/view/com/notifications/Feed.tsx b/src/view/com/notifications/Feed.tsx index b2fba0fc9..83fa0a990 100644 --- a/src/view/com/notifications/Feed.tsx +++ b/src/view/com/notifications/Feed.tsx @@ -2,7 +2,7 @@ import React, {MutableRefObject} from 'react' import {observer} from 'mobx-react-lite' import {CenteredView, FlatList} from '../util/Views' import {ActivityIndicator, RefreshControl, StyleSheet, View} from 'react-native' -import {NotificationsViewModel} from 'state/models/notifications-view' +import {NotificationsFeedModel} from 'state/models/feeds/notifications' import {FeedItem} from './FeedItem' import {NotificationFeedLoadingPlaceholder} from '../util/LoadingPlaceholder' import {ErrorMessage} from '../util/error/ErrorMessage' @@ -19,7 +19,7 @@ export const Feed = observer(function Feed({ onPressTryAgain, onScroll, }: { - view: NotificationsViewModel + view: NotificationsFeedModel scrollElRef?: MutableRefObject<FlatList<any> | null> onPressTryAgain?: () => void onScroll?: OnScrollCb diff --git a/src/view/com/notifications/FeedItem.tsx b/src/view/com/notifications/FeedItem.tsx index 7d584e8e6..6bff48f08 100644 --- a/src/view/com/notifications/FeedItem.tsx +++ b/src/view/com/notifications/FeedItem.tsx @@ -14,8 +14,8 @@ import { FontAwesomeIconStyle, Props, } from '@fortawesome/react-native-fontawesome' -import {NotificationsViewItemModel} from 'state/models/notifications-view' -import {PostThreadViewModel} from 'state/models/post-thread-view' +import {NotificationsFeedItemModel} from 'state/models/feeds/notifications' +import {PostThreadModel} from 'state/models/content/post-thread' import {s, colors} from 'lib/styles' import {ago} from 'lib/strings/time' import {pluralize} from 'lib/strings/helpers' @@ -42,7 +42,7 @@ interface Author { export const FeedItem = observer(function FeedItem({ item, }: { - item: NotificationsViewItemModel + item: NotificationsFeedItemModel }) { const pal = usePalette('default') const [isAuthorsExpanded, setAuthorsExpanded] = React.useState<boolean>(false) @@ -338,7 +338,7 @@ function ExpandedAuthorsList({ function AdditionalPostText({ additionalPost, }: { - additionalPost?: PostThreadViewModel + additionalPost?: PostThreadModel }) { const pal = usePalette('default') if ( diff --git a/src/view/com/post-thread/PostLikedBy.tsx b/src/view/com/post-thread/PostLikedBy.tsx index 3ca147b8d..1b65c04fc 100644 --- a/src/view/com/post-thread/PostLikedBy.tsx +++ b/src/view/com/post-thread/PostLikedBy.tsx @@ -2,7 +2,7 @@ import React, {useEffect} from 'react' import {observer} from 'mobx-react-lite' import {ActivityIndicator, RefreshControl, StyleSheet, View} from 'react-native' import {CenteredView, FlatList} from '../util/Views' -import {LikesViewModel, LikeItem} from 'state/models/likes-view' +import {LikesModel, LikeItem} from 'state/models/lists/likes' import {ErrorMessage} from '../util/error/ErrorMessage' import {ProfileCardWithFollowBtn} from '../profile/ProfileCard' import {useStores} from 'state/index' @@ -11,10 +11,7 @@ import {usePalette} from 'lib/hooks/usePalette' export const PostLikedBy = observer(function ({uri}: {uri: string}) { const pal = usePalette('default') const store = useStores() - const view = React.useMemo( - () => new LikesViewModel(store, {uri}), - [store, uri], - ) + const view = React.useMemo(() => new LikesModel(store, {uri}), [store, uri]) useEffect(() => { view.loadMore().catch(err => store.log.error('Failed to fetch likes', err)) diff --git a/src/view/com/post-thread/PostRepostedBy.tsx b/src/view/com/post-thread/PostRepostedBy.tsx index 147d0271f..30f8fd445 100644 --- a/src/view/com/post-thread/PostRepostedBy.tsx +++ b/src/view/com/post-thread/PostRepostedBy.tsx @@ -2,10 +2,7 @@ import React, {useEffect} from 'react' import {observer} from 'mobx-react-lite' import {ActivityIndicator, RefreshControl, StyleSheet, View} from 'react-native' import {CenteredView, FlatList} from '../util/Views' -import { - RepostedByViewModel, - RepostedByItem, -} from 'state/models/reposted-by-view' +import {RepostedByModel, RepostedByItem} from 'state/models/lists/reposted-by' import {ProfileCardWithFollowBtn} from '../profile/ProfileCard' import {ErrorMessage} from '../util/error/ErrorMessage' import {useStores} from 'state/index' @@ -19,7 +16,7 @@ export const PostRepostedBy = observer(function PostRepostedBy({ const pal = usePalette('default') const store = useStores() const view = React.useMemo( - () => new RepostedByViewModel(store, {uri}), + () => new RepostedByModel(store, {uri}), [store, uri], ) diff --git a/src/view/com/post-thread/PostThread.tsx b/src/view/com/post-thread/PostThread.tsx index 569c6e392..40a6f48c8 100644 --- a/src/view/com/post-thread/PostThread.tsx +++ b/src/view/com/post-thread/PostThread.tsx @@ -9,9 +9,9 @@ import { } from 'react-native' import {CenteredView, FlatList} from '../util/Views' import { - PostThreadViewModel, - PostThreadViewPostModel, -} from 'state/models/post-thread-view' + PostThreadModel, + PostThreadItemModel, +} from 'state/models/content/post-thread' import { FontAwesomeIcon, FontAwesomeIconStyle, @@ -31,7 +31,7 @@ const BOTTOM_BORDER = { _reactKey: '__bottom_border__', _isHighlightedPost: false, } -type YieldedItem = PostThreadViewPostModel | typeof REPLY_PROMPT +type YieldedItem = PostThreadItemModel | typeof REPLY_PROMPT export const PostThread = observer(function PostThread({ uri, @@ -39,7 +39,7 @@ export const PostThread = observer(function PostThread({ onPressReply, }: { uri: string - view: PostThreadViewModel + view: PostThreadModel onPressReply: () => void }) { const pal = usePalette('default') @@ -109,7 +109,7 @@ export const PostThread = observer(function PostThread({ // I could find to get a border positioned directly under the last item // -prf return <View style={[styles.bottomBorder, pal.border]} /> - } else if (item instanceof PostThreadViewPostModel) { + } else if (item instanceof PostThreadItemModel) { return <PostThreadItem item={item} onPostReply={onRefresh} /> } return <></> @@ -187,14 +187,14 @@ export const PostThread = observer(function PostThread({ }) function* flattenThread( - post: PostThreadViewPostModel, + post: PostThreadItemModel, isAscending = false, ): Generator<YieldedItem, void> { if (post.parent) { if ('notFound' in post.parent && post.parent.notFound) { // TODO render not found } else { - yield* flattenThread(post.parent as PostThreadViewPostModel, true) + yield* flattenThread(post.parent as PostThreadItemModel, true) } } yield post @@ -206,7 +206,7 @@ function* flattenThread( if ('notFound' in reply && reply.notFound) { // TODO render not found } else { - yield* flattenThread(reply as PostThreadViewPostModel) + yield* flattenThread(reply as PostThreadItemModel) } } } else if (!isAscending && !post.parent && post.post.replyCount) { diff --git a/src/view/com/post-thread/PostThreadItem.tsx b/src/view/com/post-thread/PostThreadItem.tsx index cf2148060..5a983698c 100644 --- a/src/view/com/post-thread/PostThreadItem.tsx +++ b/src/view/com/post-thread/PostThreadItem.tsx @@ -7,7 +7,7 @@ import { FontAwesomeIcon, FontAwesomeIconStyle, } from '@fortawesome/react-native-fontawesome' -import {PostThreadViewPostModel} from 'state/models/post-thread-view' +import {PostThreadItemModel} from 'state/models/content/post-thread' import {Link} from '../util/Link' import {RichText} from '../util/text/RichText' import {Text} from '../util/text/Text' @@ -31,7 +31,7 @@ export const PostThreadItem = observer(function PostThreadItem({ item, onPostReply, }: { - item: PostThreadViewPostModel + item: PostThreadItemModel onPostReply: () => void }) { const pal = usePalette('default') diff --git a/src/view/com/post/Post.tsx b/src/view/com/post/Post.tsx index 6b3dc3ac6..3312762de 100644 --- a/src/view/com/post/Post.tsx +++ b/src/view/com/post/Post.tsx @@ -11,7 +11,7 @@ import {observer} from 'mobx-react-lite' import Clipboard from '@react-native-clipboard/clipboard' import {AtUri} from '../../../third-party/uri' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' -import {PostThreadViewModel} from 'state/models/post-thread-view' +import {PostThreadModel} from 'state/models/content/post-thread' import {Link} from '../util/Link' import {UserInfoText} from '../util/UserInfoText' import {PostMeta} from '../util/PostMeta' @@ -34,21 +34,21 @@ export const Post = observer(function Post({ style, }: { uri: string - initView?: PostThreadViewModel + initView?: PostThreadModel showReplyLine?: boolean hideError?: boolean style?: StyleProp<ViewStyle> }) { const pal = usePalette('default') const store = useStores() - const [view, setView] = useState<PostThreadViewModel | undefined>(initView) + const [view, setView] = useState<PostThreadModel | undefined>(initView) const [deleted, setDeleted] = useState(false) useEffect(() => { if (initView || view?.params.uri === uri) { return // no change needed? or trigger refresh? } - const newView = new PostThreadViewModel(store, {uri, depth: 0}) + const newView = new PostThreadModel(store, {uri, depth: 0}) setView(newView) newView.setup().catch(err => store.log.error('Failed to fetch post', err)) }, [initView, uri, view?.params.uri, store]) diff --git a/src/view/com/post/PostText.tsx b/src/view/com/post/PostText.tsx index a460b57c4..1a56a5dbf 100644 --- a/src/view/com/post/PostText.tsx +++ b/src/view/com/post/PostText.tsx @@ -4,7 +4,7 @@ import {StyleProp, StyleSheet, TextStyle, View} from 'react-native' import {LoadingPlaceholder} from '../util/LoadingPlaceholder' import {ErrorMessage} from '../util/error/ErrorMessage' import {Text} from '../util/text/Text' -import {PostModel} from 'state/models/post' +import {PostModel} from 'state/models/content/post' import {useStores} from 'state/index' export const PostText = observer(function PostText({ diff --git a/src/view/com/posts/Feed.tsx b/src/view/com/posts/Feed.tsx index d07afca34..ddebe5e09 100644 --- a/src/view/com/posts/Feed.tsx +++ b/src/view/com/posts/Feed.tsx @@ -11,7 +11,7 @@ import { import {FlatList} from '../util/Views' import {PostFeedLoadingPlaceholder} from '../util/LoadingPlaceholder' import {ErrorMessage} from '../util/error/ErrorMessage' -import {FeedModel} from 'state/models/feed-view' +import {PostsFeedModel} from 'state/models/feeds/posts' import {FeedSlice} from './FeedSlice' import {OnScrollCb} from 'lib/hooks/useOnMainScroll' import {s} from 'lib/styles' @@ -33,7 +33,7 @@ export const Feed = observer(function Feed({ testID, headerOffset = 0, }: { - feed: FeedModel + feed: PostsFeedModel style?: StyleProp<ViewStyle> showPostFollowBtn?: boolean scrollElRef?: MutableRefObject<FlatList<any> | null> diff --git a/src/view/com/posts/FeedItem.tsx b/src/view/com/posts/FeedItem.tsx index 734034a89..8a019a2ef 100644 --- a/src/view/com/posts/FeedItem.tsx +++ b/src/view/com/posts/FeedItem.tsx @@ -7,7 +7,7 @@ import { FontAwesomeIcon, FontAwesomeIconStyle, } from '@fortawesome/react-native-fontawesome' -import {FeedItemModel} from 'state/models/feed-view' +import {PostsFeedItemModel} from 'state/models/feeds/posts' import {Link, DesktopWebTextLink} from '../util/Link' import {Text} from '../util/text/Text' import {UserInfoText} from '../util/UserInfoText' @@ -30,7 +30,7 @@ export const FeedItem = observer(function ({ showFollowBtn, ignoreMuteFor, }: { - item: FeedItemModel + item: PostsFeedItemModel isThreadChild?: boolean isThreadParent?: boolean showReplyLine?: boolean diff --git a/src/view/com/posts/FeedSlice.tsx b/src/view/com/posts/FeedSlice.tsx index 806ced20c..7fcd1cd2d 100644 --- a/src/view/com/posts/FeedSlice.tsx +++ b/src/view/com/posts/FeedSlice.tsx @@ -1,6 +1,6 @@ import React from 'react' import {StyleSheet, View} from 'react-native' -import {FeedSliceModel} from 'state/models/feed-view' +import {PostsFeedSliceModel} from 'state/models/feeds/posts' import {AtUri} from '../../../third-party/uri' import {Link} from '../util/Link' import {Text} from '../util/text/Text' @@ -13,7 +13,7 @@ export function FeedSlice({ showFollowBtn, ignoreMuteFor, }: { - slice: FeedSliceModel + slice: PostsFeedSliceModel showFollowBtn?: boolean ignoreMuteFor?: string }) { @@ -66,7 +66,7 @@ export function FeedSlice({ ) } -function ViewFullThread({slice}: {slice: FeedSliceModel}) { +function ViewFullThread({slice}: {slice: PostsFeedSliceModel}) { const pal = usePalette('default') const itemHref = React.useMemo(() => { const urip = new AtUri(slice.rootItem.post.uri) diff --git a/src/view/com/profile/ProfileFollowers.tsx b/src/view/com/profile/ProfileFollowers.tsx index 8d489ad0a..0ef652a98 100644 --- a/src/view/com/profile/ProfileFollowers.tsx +++ b/src/view/com/profile/ProfileFollowers.tsx @@ -2,9 +2,9 @@ import React, {useEffect} from 'react' import {observer} from 'mobx-react-lite' import {ActivityIndicator, RefreshControl, StyleSheet, View} from 'react-native' import { - UserFollowersViewModel, + UserFollowersModel, FollowerItem, -} from 'state/models/user-followers-view' +} from 'state/models/lists/user-followers' import {CenteredView, FlatList} from '../util/Views' import {ErrorMessage} from '../util/error/ErrorMessage' import {ProfileCardWithFollowBtn} from './ProfileCard' @@ -19,7 +19,7 @@ export const ProfileFollowers = observer(function ProfileFollowers({ const pal = usePalette('default') const store = useStores() const view = React.useMemo( - () => new UserFollowersViewModel(store, {actor: name}), + () => new UserFollowersModel(store, {actor: name}), [store, name], ) diff --git a/src/view/com/profile/ProfileFollows.tsx b/src/view/com/profile/ProfileFollows.tsx index 849b33441..54b5a319a 100644 --- a/src/view/com/profile/ProfileFollows.tsx +++ b/src/view/com/profile/ProfileFollows.tsx @@ -2,7 +2,7 @@ import React, {useEffect} from 'react' import {observer} from 'mobx-react-lite' import {ActivityIndicator, RefreshControl, StyleSheet, View} from 'react-native' import {CenteredView, FlatList} from '../util/Views' -import {UserFollowsViewModel, FollowItem} from 'state/models/user-follows-view' +import {UserFollowsModel, FollowItem} from 'state/models/lists/user-follows' import {ErrorMessage} from '../util/error/ErrorMessage' import {ProfileCardWithFollowBtn} from './ProfileCard' import {useStores} from 'state/index' @@ -16,7 +16,7 @@ export const ProfileFollows = observer(function ProfileFollows({ const pal = usePalette('default') const store = useStores() const view = React.useMemo( - () => new UserFollowsViewModel(store, {actor: name}), + () => new UserFollowsModel(store, {actor: name}), [store, name], ) diff --git a/src/view/com/profile/ProfileHeader.tsx b/src/view/com/profile/ProfileHeader.tsx index 6294c627b..878d837c9 100644 --- a/src/view/com/profile/ProfileHeader.tsx +++ b/src/view/com/profile/ProfileHeader.tsx @@ -13,7 +13,7 @@ import { } from '@fortawesome/react-native-fontawesome' import {useNavigation} from '@react-navigation/native' import {BlurView} from '../util/BlurView' -import {ProfileViewModel} from 'state/models/profile-view' +import {ProfileModel} from 'state/models/content/profile' import {useStores} from 'state/index' import {ProfileImageLightbox} from 'state/models/ui/shell' import {pluralize} from 'lib/strings/helpers' @@ -34,13 +34,7 @@ import {isDesktopWeb} from 'platform/detection' const BACK_HITSLOP = {left: 30, top: 30, right: 30, bottom: 30} export const ProfileHeader = observer( - ({ - view, - onRefreshAll, - }: { - view: ProfileViewModel - onRefreshAll: () => void - }) => { + ({view, onRefreshAll}: {view: ProfileModel; onRefreshAll: () => void}) => { const pal = usePalette('default') // loading @@ -91,7 +85,7 @@ const ProfileHeaderLoaded = observer(function ProfileHeaderLoaded({ view, onRefreshAll, }: { - view: ProfileViewModel + view: ProfileModel onRefreshAll: () => void }) { const pal = usePalette('default') diff --git a/src/view/screens/Home.tsx b/src/view/screens/Home.tsx index 871aae9c7..1f9abdafa 100644 --- a/src/view/screens/Home.tsx +++ b/src/view/screens/Home.tsx @@ -4,7 +4,7 @@ import {useFocusEffect, useIsFocused} from '@react-navigation/native' import {observer} from 'mobx-react-lite' import useAppState from 'react-native-appstate-hook' import {NativeStackScreenProps, HomeTabNavigatorParams} from 'lib/routes/types' -import {FeedModel} from 'state/models/feed-view' +import {PostsFeedModel} from 'state/models/feeds/posts' import {withAuthRequired} from 'view/com/auth/withAuthRequired' import {Feed} from '../com/posts/Feed' import {FollowingEmptyState} from 'view/com/posts/FollowingEmptyState' @@ -26,7 +26,7 @@ export const HomeScreen = withAuthRequired((_opts: Props) => { const [selectedPage, setSelectedPage] = React.useState(0) const algoFeed = React.useMemo(() => { - const feed = new FeedModel(store, 'goodstuff', {}) + const feed = new PostsFeedModel(store, 'goodstuff', {}) feed.setup() return feed }, [store]) @@ -104,7 +104,7 @@ const FeedPage = observer( renderEmptyState, }: { testID?: string - feed: FeedModel + feed: PostsFeedModel isPageFocused: boolean renderEmptyState?: () => JSX.Element }) => { diff --git a/src/view/screens/PostThread.tsx b/src/view/screens/PostThread.tsx index 9bfdcc95a..e3ceb0bef 100644 --- a/src/view/screens/PostThread.tsx +++ b/src/view/screens/PostThread.tsx @@ -7,7 +7,7 @@ import {withAuthRequired} from 'view/com/auth/withAuthRequired' import {ViewHeader} from '../com/util/ViewHeader' import {PostThread as PostThreadComponent} from '../com/post-thread/PostThread' import {ComposePrompt} from 'view/com/composer/Prompt' -import {PostThreadViewModel} from 'state/models/post-thread-view' +import {PostThreadModel} from 'state/models/content/post-thread' import {useStores} from 'state/index' import {s} from 'lib/styles' import {useSafeAreaInsets} from 'react-native-safe-area-context' @@ -22,8 +22,8 @@ export const PostThreadScreen = withAuthRequired(({route}: Props) => { const safeAreaInsets = useSafeAreaInsets() const {name, rkey} = route.params const uri = makeRecordUri(name, 'app.bsky.feed.post', rkey) - const view = useMemo<PostThreadViewModel>( - () => new PostThreadViewModel(store, {uri}), + const view = useMemo<PostThreadModel>( + () => new PostThreadModel(store, {uri}), [store, uri], ) diff --git a/src/view/screens/Profile.tsx b/src/view/screens/Profile.tsx index 556578e77..e3158a973 100644 --- a/src/view/screens/Profile.tsx +++ b/src/view/screens/Profile.tsx @@ -8,7 +8,7 @@ import {ViewSelector} from '../com/util/ViewSelector' import {CenteredView} from '../com/util/Views' import {ProfileUiModel} from 'state/models/ui/profile' import {useStores} from 'state/index' -import {FeedSliceModel} from 'state/models/feed-view' +import {PostsFeedSliceModel} from 'state/models/feeds/posts' import {ProfileHeader} from '../com/profile/ProfileHeader' import {FeedSlice} from '../com/posts/FeedSlice' import {PostFeedLoadingPlaceholder} from '../com/util/LoadingPlaceholder' @@ -124,7 +124,7 @@ export const ProfileScreen = withAuthRequired( style={styles.emptyState} /> ) - } else if (item instanceof FeedSliceModel) { + } else if (item instanceof PostsFeedSliceModel) { return <FeedSlice slice={item} ignoreMuteFor={uiState.profile.did} /> } return <View /> diff --git a/src/view/screens/Search.tsx b/src/view/screens/Search.tsx index e6947013e..e1fb3ec0a 100644 --- a/src/view/screens/Search.tsx +++ b/src/view/screens/Search.tsx @@ -16,7 +16,7 @@ import { import {observer} from 'mobx-react-lite' import {Text} from 'view/com/util/text/Text' import {useStores} from 'state/index' -import {UserAutocompleteViewModel} from 'state/models/user-autocomplete-view' +import {UserAutocompleteModel} from 'state/models/discovery/user-autocomplete' import {SearchUIModel} from 'state/models/ui/search' import {FoafsModel} from 'state/models/discovery/foafs' import {SuggestedActorsModel} from 'state/models/discovery/suggested-actors' @@ -37,8 +37,8 @@ export const SearchScreen = withAuthRequired( const onMainScroll = useOnMainScroll(store) const [isInputFocused, setIsInputFocused] = React.useState<boolean>(false) const [query, setQuery] = React.useState<string>('') - const autocompleteView = React.useMemo<UserAutocompleteViewModel>( - () => new UserAutocompleteViewModel(store), + const autocompleteView = React.useMemo<UserAutocompleteModel>( + () => new UserAutocompleteModel(store), [store], ) const foafs = React.useMemo<FoafsModel>( diff --git a/src/view/shell/desktop/Search.tsx b/src/view/shell/desktop/Search.tsx index 101840b89..1bc12add1 100644 --- a/src/view/shell/desktop/Search.tsx +++ b/src/view/shell/desktop/Search.tsx @@ -1,7 +1,7 @@ import React from 'react' import {TextInput, View, StyleSheet, TouchableOpacity} from 'react-native' import {useNavigation, StackActions} from '@react-navigation/native' -import {UserAutocompleteViewModel} from 'state/models/user-autocomplete-view' +import {UserAutocompleteModel} from 'state/models/discovery/user-autocomplete' import {observer} from 'mobx-react-lite' import {useStores} from 'state/index' import {usePalette} from 'lib/hooks/usePalette' @@ -16,8 +16,8 @@ export const DesktopSearch = observer(function DesktopSearch() { const textInput = React.useRef<TextInput>(null) const [isInputFocused, setIsInputFocused] = React.useState<boolean>(false) const [query, setQuery] = React.useState<string>('') - const autocompleteView = React.useMemo<UserAutocompleteViewModel>( - () => new UserAutocompleteViewModel(store), + const autocompleteView = React.useMemo<UserAutocompleteModel>( + () => new UserAutocompleteModel(store), [store], ) const navigation = useNavigation<NavigationProp>() |