refactor: don't pass entire matchlist to frontend anymore

This commit is contained in:
Valentin Kaelin 2022-02-01 21:38:19 +01:00
parent 87972e4f4d
commit b2dc4c28d1
3 changed files with 21 additions and 18 deletions

View file

@ -23,8 +23,8 @@ export function getSecondaryRune(perks) {
}
/**
* Return all the infos about a list of matches built with the Riot API data
* @param {Object} RiotData : all data from the Riot API
* Return all the infos about a list of matches built with the api data
* @param {Object} matches : all data from the api matches endpoint
*/
export function createMatchData(matches) {
for (const match of matches) {
@ -43,29 +43,29 @@ export function createMatchData(matches) {
if (!match.gamemode) {
match.gamemode = { name: 'Unknown gamemode' }
}
} // end loop matches
}
return matches
}
/**
* Return the basic infos about a summoner built with the Riot API data
* @param {Object} RiotData : all data from the Riot API
* Return the formatted basic info for a summoner
* @param {Object} summonerBasic : all data from the api basic endpoint
*/
export function createBasicSummonerData(RiotData) {
export function createBasicSummonerData(summonerBasic) {
// Ranked Stats
RiotData.ranked.soloQ = getLeagueData(RiotData.ranked.soloQ, 'Solo/Duo')
if (!RiotData.ranked.soloQ) delete RiotData.ranked.soloQ
summonerBasic.ranked.soloQ = getLeagueData(summonerBasic.ranked.soloQ, 'Solo/Duo')
if (!summonerBasic.ranked.soloQ) delete summonerBasic.ranked.soloQ
RiotData.ranked.flex5v5 = getLeagueData(RiotData.ranked.flex5v5, 'Flex 5vs5')
if (!RiotData.ranked.flex5v5) delete RiotData.ranked.flex5v5
summonerBasic.ranked.flex5v5 = getLeagueData(summonerBasic.ranked.flex5v5, 'Flex 5vs5')
if (!summonerBasic.ranked.flex5v5) delete summonerBasic.ranked.flex5v5
RiotData.ranked.flex3v3 = getLeagueData(RiotData.ranked.flex3v3, 'Flex 3vs3')
if (!RiotData.ranked.flex3v3) delete RiotData.ranked.flex3v3
summonerBasic.ranked.flex3v3 = getLeagueData(summonerBasic.ranked.flex3v3, 'Flex 3vs3')
if (!summonerBasic.ranked.flex3v3) delete summonerBasic.ranked.flex3v3
// If Summoner is Unranked
if (Object.entries(RiotData.ranked).length === 0) {
RiotData.ranked.soloQ = {
if (Object.entries(summonerBasic.ranked).length === 0) {
summonerBasic.ranked.soloQ = {
fullRank: 'Unranked',
rankImgLink: 'https://res.cloudinary.com/kln/image/upload/v1571671133/ranks/unranked.png',
leaguePoints: 0,
@ -76,7 +76,7 @@ export function createBasicSummonerData(RiotData) {
}
}
return RiotData
return summonerBasic
}
/**
@ -101,6 +101,11 @@ export function createRecordsData(recordsDto) {
return records
}
/**
* Add rank img and ranked data
* @param {Object} leagueData
* @param {String} leagueName
*/
function getLeagueData(leagueData, leagueName) {
if (!leagueData) return null

View file

@ -7,7 +7,6 @@ export const state = {
basic: {
account: {},
currentSeason: null,
matchList: [],
ranked: {},
recentActivity: [],
seasons: [],
@ -95,7 +94,6 @@ export const mutations = {
},
SUMMONER_FOUND(state, infos) {
state.basic.account = infos.account
state.basic.matchList = infos.matchList
state.basic.ranked = infos.ranked
state.basic.recentActivity = infos.recentActivity
state.basic.seasons = infos.seasons.sort((a, b) => b - a)

View file

@ -48,7 +48,7 @@ export default class SummonersController {
finalJSON.account.names = await SummonerService.getAllSummonerNames(account, summonerDB)
// MATCH LIST
finalJSON.matchList = await MatchService.updateMatchList(account, region, summonerDB)
await MatchService.updateMatchList(account, region, summonerDB)
// All seasons the summoner has played
finalJSON.seasons = await this.getSeasons(account.puuid)