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

View file

@ -7,7 +7,6 @@ export const state = {
basic: { basic: {
account: {}, account: {},
currentSeason: null, currentSeason: null,
matchList: [],
ranked: {}, ranked: {},
recentActivity: [], recentActivity: [],
seasons: [], seasons: [],
@ -95,7 +94,6 @@ export const mutations = {
}, },
SUMMONER_FOUND(state, infos) { SUMMONER_FOUND(state, infos) {
state.basic.account = infos.account state.basic.account = infos.account
state.basic.matchList = infos.matchList
state.basic.ranked = infos.ranked state.basic.ranked = infos.ranked
state.basic.recentActivity = infos.recentActivity state.basic.recentActivity = infos.recentActivity
state.basic.seasons = infos.seasons.sort((a, b) => b - a) 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) finalJSON.account.names = await SummonerService.getAllSummonerNames(account, summonerDB)
// MATCH LIST // MATCH LIST
finalJSON.matchList = await MatchService.updateMatchList(account, region, summonerDB) await MatchService.updateMatchList(account, region, summonerDB)
// All seasons the summoner has played // All seasons the summoner has played
finalJSON.seasons = await this.getSeasons(account.puuid) finalJSON.seasons = await this.getSeasons(account.puuid)