From 64785e6527e521ce14e32edcc80adc6253b48657 Mon Sep 17 00:00:00 2001 From: Ivan Chen Date: Fri, 26 Mar 2021 22:40:00 -0400 Subject: renamed to UniversityType, applied to all --- src/components/profile/ProfileHeader.tsx | 16 ++++++-------- src/components/profile/UniversityIcon.tsx | 25 +++++++--------------- src/components/search/SearchBar.tsx | 21 ++++++++---------- src/components/search/SearchResultCell.tsx | 8 +++---- src/components/suggestedPeople/BadgesDropdown.tsx | 4 ++-- .../suggestedPeople/UniversityIconClicked.tsx | 8 +++---- 6 files changed, 33 insertions(+), 49 deletions(-) (limited to 'src/components') diff --git a/src/components/profile/ProfileHeader.tsx b/src/components/profile/ProfileHeader.tsx index 0b93de98..2c623c2b 100644 --- a/src/components/profile/ProfileHeader.tsx +++ b/src/components/profile/ProfileHeader.tsx @@ -1,14 +1,14 @@ import React, {useState} from 'react'; import {StyleSheet, Text, View} from 'react-native'; import {useSelector} from 'react-redux'; -import UniversityIcon from './UniversityIcon'; import {PROFILE_CUTOUT_TOP_Y} from '../../constants'; import {RootState} from '../../store/rootreducer'; -import {ScreenType, Universities} from '../../types'; +import {ScreenType} from '../../types'; import {normalize} from '../../utils'; import Avatar from './Avatar'; import FriendsCount from './FriendsCount'; import ProfileMoreInfoDrawer from './ProfileMoreInfoDrawer'; +import UniversityIcon from './UniversityIcon'; type ProfileHeaderProps = { userXId: string | undefined; @@ -24,11 +24,11 @@ const ProfileHeader: React.FC = ({ handleBlockUnblock, }) => { const { - profile: {name = '', university_class = 2021, university = Universities.cornell} = {}, + profile: {name = '', university_class = 2021, university}, user: {username: userXName = ''}, - } = userXId - ? useSelector((state: RootState) => state.userX[screenType][userXId]) - : useSelector((state: RootState) => state.user); + } = useSelector((state: RootState) => + userXId ? state.userX[screenType][userXId] : state.user, + ); const [drawerVisible, setDrawerVisible] = useState(false); const [firstName, lastName] = [...name.split(' ')]; return ( @@ -59,9 +59,7 @@ const ProfileHeader: React.FC = ({ )} - + diff --git a/src/components/profile/UniversityIcon.tsx b/src/components/profile/UniversityIcon.tsx index 1642b8f0..4cb1abe6 100644 --- a/src/components/profile/UniversityIcon.tsx +++ b/src/components/profile/UniversityIcon.tsx @@ -1,10 +1,11 @@ import React from 'react'; import {ImageStyle, StyleProp, StyleSheet, ViewProps} from 'react-native'; import {Image, Text, View} from 'react-native-animatable'; -import {getUniversityClass, normalize} from '../../utils'; -import {Universities} from '../../types'; +import {getUniversityBadge, getUniversityClass, normalize} from '../../utils'; +import {UniversityType} from '../../types'; + export interface UniversityIconProps extends ViewProps { - university: Universities; + university: UniversityType; university_class?: number; imageStyle?: StyleProp; } @@ -18,22 +19,12 @@ const UniversityIcon: React.FC = ({ university_class, imageStyle, }) => { - var universityIcon; - switch (university) { - case 'Cornell': - universityIcon = require('../../assets/universities/cornell.png'); - break; - case 'Brown': - universityIcon = require('../../assets/universities/brown.png'); - break; - default: - universityIcon = require('../../assets/universities/brown.png'); - break; - } - return ( - + {university_class && ( {getUniversityClass(university_class)} diff --git a/src/components/search/SearchBar.tsx b/src/components/search/SearchBar.tsx index 5008ff53..4824b56f 100644 --- a/src/components/search/SearchBar.tsx +++ b/src/components/search/SearchBar.tsx @@ -1,22 +1,21 @@ -import React, {useState, useEffect} from 'react'; +import React, {useEffect, useState} from 'react'; import { + Keyboard, + NativeSyntheticEvent, StyleSheet, - TextInput, - TouchableOpacity, Text, - View, + TextInput, TextInputProps, - Keyboard, - NativeSyntheticEvent, TextInputSubmitEditingEventData, + TouchableOpacity, + View, } from 'react-native'; +import {normalize} from 'react-native-elements'; import Animated, {interpolate} from 'react-native-reanimated'; import Icon from 'react-native-vector-icons/Feather'; -import {normalize} from 'react-native-elements'; -import {SCREEN_HEIGHT, getSearchSuggestions} from '../../utils'; import {useSelector} from 'react-redux'; import {RootState} from '../../store/rootReducer'; -import {Universities} from '../../types'; +import {getSearchSuggestions, SCREEN_HEIGHT} from '../../utils'; const AnimatedIcon = Animated.createAnimatedComponent(Icon); @@ -40,9 +39,7 @@ const SearchBar: React.FC = ({ e.preventDefault(); Keyboard.dismiss(); }; - const {profile: {university = Universities.cornell} = {}} = useSelector( - (state: RootState) => state.user, - ); + const {university} = useSelector((state: RootState) => state.user.profile); const DEFAULT_PLACEHOLDER: string = 'Search'; // the list of suggestions to cycle through. TODO: get this from the backend const SEARCH_SUGGESTIONS: string[] = getSearchSuggestions(university); diff --git a/src/components/search/SearchResultCell.tsx b/src/components/search/SearchResultCell.tsx index 6ebe19a6..5a6ea110 100644 --- a/src/components/search/SearchResultCell.tsx +++ b/src/components/search/SearchResultCell.tsx @@ -10,7 +10,7 @@ import { CategoryPreviewType, ProfilePreviewType, ScreenType, - Universities, + UniversityType, UserType, } from '../../types'; import { @@ -46,9 +46,7 @@ const SearchResultsCell: React.FC = ({ }) => { const [avatar, setAvatar] = useState(undefined); - const {profile: {university = Universities.cornell} = {}} = useSelector( - (state: RootState) => state.user, - ); + const {university} = useSelector((state: RootState) => state.user.profile); useEffect(() => { (async () => { @@ -157,7 +155,7 @@ const SearchResultsCell: React.FC = ({ ; } @@ -20,10 +20,10 @@ const UniversityIconClicked: React.FC = ({ }) => { var universityIcon; switch (university) { - case 'Cornell': + case UniversityType.Cornell: universityIcon = require('../../assets/universities/cornell-clicked.png'); break; - case 'Brown': + case UniversityType.Brown: universityIcon = require('../../assets/universities/brown-clicked.png'); break; default: -- cgit v1.2.3-70-g09d2