|
| 1 | +import { UserData } from '../types/typeInterfaces'; |
| 2 | + |
| 3 | +export const formatUserData = (data: UserData) => ({ |
| 4 | + username: data.matchedUser.username, |
| 5 | + name: data.matchedUser.profile.realName, |
| 6 | + birthday: data.matchedUser.profile.birthday, |
| 7 | + avatar: data.matchedUser.profile.userAvatar, |
| 8 | + ranking: data.matchedUser.profile.ranking, |
| 9 | + reputation: data.matchedUser.profile.reputation, |
| 10 | + gitHub: data.matchedUser.githubUrl, |
| 11 | + twitter: data.matchedUser.twitterUrl, |
| 12 | + linkedIN: data.matchedUser.linkedinUrl, |
| 13 | + website: data.matchedUser.profile.websites, |
| 14 | + country: data.matchedUser.profile.countryName, |
| 15 | + company: data.matchedUser.profile.company, |
| 16 | + school: data.matchedUser.profile.school, |
| 17 | + skillTags: data.matchedUser.profile.skillTags, |
| 18 | + about: data.matchedUser.profile.aboutMe, |
| 19 | +}); |
| 20 | + |
| 21 | +export const formatBadgesData = (data: UserData) => ({ |
| 22 | + badgesCount: data.matchedUser.badges.length, |
| 23 | + badges: data.matchedUser.badges, |
| 24 | + upcomingBadges: data.matchedUser.upcomingBadges, |
| 25 | + activeBadge: data.matchedUser.activeBadge, |
| 26 | +}); |
| 27 | + |
| 28 | +export const formatContestData = (data: UserData) => ({ |
| 29 | + contestAttend: data.userContestRanking?.attendedContestsCount, |
| 30 | + contestRating: data.userContestRanking?.rating, |
| 31 | + contestGlobalRanking: data.userContestRanking?.globalRanking, |
| 32 | + totalParticipants: data.userContestRanking?.totalParticipants, |
| 33 | + contestTopPercentage: data.userContestRanking?.topPercentage, |
| 34 | + contestBadges: data.userContestRanking?.badge, |
| 35 | + contestParticipation: data.userContestRankingHistory.filter( |
| 36 | + (obj) => obj.attended === true |
| 37 | + ), |
| 38 | +}); |
| 39 | + |
| 40 | +export const formatContestHistoryData = (data: UserData) => ({ |
| 41 | + count: data.userContestRankingHistory.length, |
| 42 | + contestHistory: data.userContestRankingHistory, |
| 43 | +}); |
| 44 | + |
| 45 | +export const formatSolvedProblemsData = (data: UserData) => ({ |
| 46 | + solvedProblem: data.matchedUser.submitStats.acSubmissionNum[0].count, |
| 47 | + easySolved: data.matchedUser.submitStats.acSubmissionNum[1].count, |
| 48 | + mediumSolved: data.matchedUser.submitStats.acSubmissionNum[2].count, |
| 49 | + hardSolved: data.matchedUser.submitStats.acSubmissionNum[3].count, |
| 50 | + totalSubmissionNum: data.matchedUser.submitStats.totalSubmissionNum, |
| 51 | + acSubmissionNum: data.matchedUser.submitStats.acSubmissionNum, |
| 52 | +}); |
| 53 | + |
| 54 | +export const formatSubmissionData = (data: UserData) => ({ |
| 55 | + count: data.recentSubmissionList.length, |
| 56 | + submission: data.recentSubmissionList, |
| 57 | +}); |
| 58 | + |
| 59 | +export const formatAcSubmissionData = (data: UserData) => ({ |
| 60 | + count: data.recentAcSubmissionList.length, |
| 61 | + submission: data.recentAcSubmissionList, |
| 62 | +}); |
| 63 | + |
| 64 | +export const formatSubmissionCalendarData = (data: UserData) => ({ |
| 65 | + submissionCalendar: data.matchedUser.submissionCalendar, |
| 66 | +}); |
0 commit comments