aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/screens/suggestedPeople/SPBody.tsx70
-rw-r--r--src/screens/suggestedPeople/SuggestedPeopleScreen.tsx1
2 files changed, 17 insertions, 54 deletions
diff --git a/src/screens/suggestedPeople/SPBody.tsx b/src/screens/suggestedPeople/SPBody.tsx
index e0e29dbc..aa97dc94 100644
--- a/src/screens/suggestedPeople/SPBody.tsx
+++ b/src/screens/suggestedPeople/SPBody.tsx
@@ -1,76 +1,38 @@
-import {useFocusEffect, useNavigation} from '@react-navigation/native';
-import React, {
- memo,
- Fragment,
- useCallback,
- useEffect,
- useState,
- useMemo,
-} from 'react';
-import {
- FlatList,
- ListRenderItemInfo,
- RefreshControl,
- StatusBar,
- StyleSheet,
- Text,
- View,
- ViewToken,
-} from 'react-native';
+import {useNavigation} from '@react-navigation/native';
+import React, {Fragment, useMemo} from 'react';
+import {StyleSheet, Text, View} from 'react-native';
import {Image} from 'react-native-animatable';
import {TouchableOpacity} from 'react-native-gesture-handler';
import Animated from 'react-native-reanimated';
-import {useDispatch, useSelector, useStore} from 'react-redux';
-import {TabsGradient, TaggsBar} from '../../components';
-import {MutualFriends} from '../../components/suggestedPeople';
-import {SP_PAGE_SIZE} from '../../constants';
-import SuggestedPeopleOnboardingStackScreen from '../../routes/suggestedPeopleOnboarding/SuggestedPeopleOnboardingStackScreen';
-import {getSuggestedPeople} from '../../services/SuggestedPeopleService';
-import {cancelFriendRequest, resetScreenType} from '../../store/actions';
-import {RootState} from '../../store/rootReducer';
import RequestedButton from '../../assets/ionicons/requested-button.svg';
+import {TaggsBar} from '../../components';
+import {MutualFriends} from '../../components/suggestedPeople';
import {
- FriendshipStatusType,
- FriendshipType,
ProfilePreviewType,
ScreenType,
SuggestedPeopleDataType,
} from '../../types';
-import {
- fetchUserX,
- getUserAsProfilePreviewType,
- handleAddFriend,
- normalize,
- SCREEN_HEIGHT,
- SCREEN_WIDTH,
-} from '../../utils';
-import {userXInStore} from './../../utils/';
+import {normalize, SCREEN_HEIGHT, SCREEN_WIDTH} from '../../utils';
-/**
- * Bare bones for suggested people consisting of:
- * * Image, title, name, username, add friend button [w/o functionality]
- */
+interface SPBodyProps {
+ item: SuggestedPeopleDataType;
+ index: number;
+ onAddFriend: (user: ProfilePreviewType) => Promise<void>;
+ onCancelRequest: (user: ProfilePreviewType) => void;
+ loggedInUserId: string;
+}
-const SPBody: React.FC<SuggestedPeopleDataType> = ({
- item: {
- user,
- mutual_friends,
- badges,
- social_links,
- suggested_people_url,
- friendship,
- },
+const SPBody: React.FC<SPBodyProps> = ({
+ item: {user, mutual_friends, social_links, suggested_people_url, friendship},
index,
- onCancelRequest,
onAddFriend,
+ onCancelRequest,
loggedInUserId,
}) => {
const firstItem = index === 0;
const screenType = ScreenType.SuggestedPeople;
const displayButton = () => {
- // setDisplayedUser(suggested);
-
switch (friendship.status) {
case 'friends':
return <Fragment />;
diff --git a/src/screens/suggestedPeople/SuggestedPeopleScreen.tsx b/src/screens/suggestedPeople/SuggestedPeopleScreen.tsx
index 99af0716..1609543e 100644
--- a/src/screens/suggestedPeople/SuggestedPeopleScreen.tsx
+++ b/src/screens/suggestedPeople/SuggestedPeopleScreen.tsx
@@ -203,6 +203,7 @@ const SuggestedPeopleScreen: React.FC = () => {
renderItem={(item) => {
return (
<SPBody
+ index={item.index}
item={item.item}
onAddFriend={onAddFriend}
onCancelRequest={onCancelRequest}