diff options
Diffstat (limited to 'src/view/screens')
-rw-r--r-- | src/view/screens/Notifications.tsx | 1 | ||||
-rw-r--r-- | src/view/screens/Profile.tsx | 96 | ||||
-rw-r--r-- | src/view/screens/ProfileMembers.tsx | 25 |
3 files changed, 4 insertions, 118 deletions
diff --git a/src/view/screens/Notifications.tsx b/src/view/screens/Notifications.tsx index 7c9fac402..dd6e07611 100644 --- a/src/view/screens/Notifications.tsx +++ b/src/view/screens/Notifications.tsx @@ -15,7 +15,6 @@ export const Notifications = ({navIdx, visible}: ScreenParams) => { return } store.log.debug('Updating notifications feed') - store.me.refreshMemberships() // needed for the invite notifications store.me.notifications .update() .catch(e => { diff --git a/src/view/screens/Profile.tsx b/src/view/screens/Profile.tsx index 64bb4f042..454ae8ade 100644 --- a/src/view/screens/Profile.tsx +++ b/src/view/screens/Profile.tsx @@ -1,16 +1,13 @@ import React, {useEffect, useState} from 'react' import {ActivityIndicator, StyleSheet, View} from 'react-native' import {observer} from 'mobx-react-lite' -import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {ViewSelector} from '../com/util/ViewSelector' import {ScreenParams} from '../routes' import {ProfileUiModel, Sections} from '../../state/models/profile-ui' -import {MembershipItem} from '../../state/models/memberships-view' import {useStores} from '../../state' import {ConfirmModal} from '../../state/models/shell-ui' import {ProfileHeader} from '../com/profile/ProfileHeader' import {FeedItem} from '../com/posts/FeedItem' -import {ProfileCard} from '../com/profile/ProfileCard' import {PostFeedLoadingPlaceholder} from '../com/util/LoadingPlaceholder' import {ErrorScreen} from '../com/util/error/ErrorScreen' import {ErrorMessage} from '../com/util/error/ErrorMessage' @@ -77,18 +74,6 @@ export const Profile = observer(({navIdx, visible, params}: ScreenParams) => { const onPressTryAgain = () => { uiState.setup() } - const onPressRemoveMember = (membership: MembershipItem) => { - store.shell.openModal( - new ConfirmModal( - `Remove ${membership.displayName || membership.handle}?`, - `You'll be able to invite them again if you change your mind.`, - async () => { - await uiState.members.removeMember(membership.did) - Toast.show(`User removed`) - }, - ), - ) - } const onPressCompose = () => { store.shell.openComposer({}) @@ -97,9 +82,6 @@ export const Profile = observer(({navIdx, visible, params}: ScreenParams) => { // rendering // = - const isSceneCreator = - uiState.isScene && store.me.did === uiState.profile.creator - const renderHeader = () => { if (!uiState) { return <View /> @@ -131,8 +113,7 @@ export const Profile = observer(({navIdx, visible, params}: ScreenParams) => { } else { if ( uiState.selectedView === Sections.Posts || - uiState.selectedView === Sections.PostsWithReplies || - uiState.selectedView === Sections.Trending + uiState.selectedView === Sections.PostsWithReplies ) { if (uiState.feed.hasContent) { if (uiState.selectedView === Sections.Posts) { @@ -153,80 +134,11 @@ export const Profile = observer(({navIdx, visible, params}: ScreenParams) => { } } else if (uiState.feed.isEmpty) { items = items.concat([EMPTY_ITEM]) - if (uiState.profile.isScene) { - renderItem = () => ( - <EmptyState - icon="user-group" - message="As members upvote posts, they will trend here. Follow the scene to see its trending posts in your timeline." - /> - ) - } else { - renderItem = () => ( - <EmptyState - icon={['far', 'message']} - message="No posts yet!" - style={{paddingVertical: 40}} - /> - ) - } - } - } else if (uiState.selectedView === Sections.Scenes) { - if (uiState.memberships.hasContent) { - items = uiState.memberships.memberships.slice() - renderItem = (item: any) => { - return ( - <ProfileCard - did={item.did} - handle={item.handle} - displayName={item.displayName} - avatar={item.avatar} - /> - ) - } - } else if (uiState.memberships.isEmpty) { - items = items.concat([EMPTY_ITEM]) - renderItem = () => ( - <EmptyState - icon="user-group" - message="This user hasn't joined any scenes." - /> - ) - } - } else if (uiState.selectedView === Sections.Members) { - if (uiState.members.hasContent) { - items = uiState.members.members.slice() - renderItem = (item: any) => { - const shouldAdmin = isSceneCreator && item.did !== store.me.did - const renderButton = shouldAdmin - ? () => ( - <> - <FontAwesomeIcon - testID="shouldAdminButton" - icon="user-xmark" - style={[s.mr5]} - size={14} - /> - <Text style={[s.fw400, s.f14]}>Remove</Text> - </> - ) - : undefined - return ( - <ProfileCard - did={item.did} - handle={item.handle} - displayName={item.displayName} - avatar={item.avatar} - renderButton={renderButton} - onPressButton={() => onPressRemoveMember(item)} - /> - ) - } - } else if (uiState.members.isEmpty) { - items = items.concat([EMPTY_ITEM]) renderItem = () => ( <EmptyState - icon="user-group" - message="This scene doesn't have any members." + icon={['far', 'message']} + message="No posts yet!" + style={{paddingVertical: 40}} /> ) } diff --git a/src/view/screens/ProfileMembers.tsx b/src/view/screens/ProfileMembers.tsx deleted file mode 100644 index 9d6723fe9..000000000 --- a/src/view/screens/ProfileMembers.tsx +++ /dev/null @@ -1,25 +0,0 @@ -import React, {useEffect} from 'react' -import {View} from 'react-native' -import {ViewHeader} from '../com/util/ViewHeader' -import {ProfileMembers as ProfileMembersComponent} from '../com/profile/ProfileMembers' -import {ScreenParams} from '../routes' -import {useStores} from '../../state' - -export const ProfileMembers = ({navIdx, visible, params}: ScreenParams) => { - const store = useStores() - const {name} = params - - useEffect(() => { - if (visible) { - store.nav.setTitle(navIdx, `Members of ${name}`) - store.shell.setMinimalShellMode(false) - } - }, [store, visible, name]) - - return ( - <View> - <ViewHeader title="Members" subtitle={`of ${name}`} /> - <ProfileMembersComponent name={name} /> - </View> - ) -} |