diff options
Diffstat (limited to 'src/screens/badge')
| -rw-r--r-- | src/screens/badge/BadgeSelection.tsx | 28 |
1 files changed, 23 insertions, 5 deletions
diff --git a/src/screens/badge/BadgeSelection.tsx b/src/screens/badge/BadgeSelection.tsx index a67206c4..755bb581 100644 --- a/src/screens/badge/BadgeSelection.tsx +++ b/src/screens/badge/BadgeSelection.tsx @@ -4,9 +4,13 @@ import {Alert, SafeAreaView, StatusBar, StyleSheet, View} from 'react-native'; import {Text} from 'react-native-animatable'; import {TouchableOpacity} from 'react-native-gesture-handler'; import LinearGradient from 'react-native-linear-gradient'; -import {useDispatch} from 'react-redux'; +import {useDispatch, useSelector} from 'react-redux'; import {MainStackParams} from '../../routes'; -import {addBadgesService, updateBadgesService} from '../../services'; +import { + addBadgesService, + getSuggestedPeopleProfile, + updateBadgesService, +} from '../../services'; import {BACKGROUND_GRADIENT_MAP} from '../../constants'; import {BADGE_DATA} from '../../constants/badges'; import {ERROR_BADGES_EXCEED_LIMIT} from '../../constants/strings'; @@ -16,6 +20,7 @@ import {SCREEN_HEIGHT, StatusBarHeight} from '../../utils'; import BadgeList from './BadgeList'; import BadgeScreenHeader from './BadgeScreenHeader'; import {useNavigation} from '@react-navigation/native'; +import {RootState} from '../../store/rootReducer'; /** * Home Screen for displaying Tagg Badge Selections @@ -28,14 +33,27 @@ type BadgeSelectionProps = { }; const BadgeSelection: React.FC<BadgeSelectionProps> = ({route}) => { - const prevSelectedBadges = route.params.prevSelectedBadges; + const {userId: loggedInUserId} = useSelector( + (state: RootState) => state.user.user, + ); const [selectedBadges, setSelectedBadges] = useState<string[]>([]); const dispatch = useDispatch(); const navigation = useNavigation(); useEffect(() => { - setSelectedBadges(prevSelectedBadges); - }, [prevSelectedBadges]); + const loadData = async () => { + const response = await getSuggestedPeopleProfile(loggedInUserId); + if (response) { + const data = response.badges; + let extractedBadgeNames: string[] = []; + data.forEach((badge) => { + extractedBadgeNames.push(badge.name); + }); + setSelectedBadges(extractedBadgeNames); + } + }; + loadData(); + }, []); navigation.setOptions({ headerRight: () => ( |
