mirror of
https://github.com/vkaelin/LeagueStats.git
synced 2026-03-25 21:07:27 +00:00
refactor: don't pass entire matchlist to frontend anymore
This commit is contained in:
parent
87972e4f4d
commit
b2dc4c28d1
3 changed files with 21 additions and 18 deletions
|
|
@ -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
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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)
|
||||||
|
|
|
||||||
|
|
@ -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)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue