Update standings page to be division name/number agnostic as well
This commit is contained in:
parent
5f1bdbd34f
commit
4973659dd5
@ -13,20 +13,13 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Division Standings -->
|
<!-- Division Standings -->
|
||||||
<div class="row">
|
<div v-if="standingsByDivision.length && standingsByDivision[0].length" class="row">
|
||||||
<div class="col-md-6">
|
<template v-for="division in standingsByDivision" :key="division[0].divisionName">
|
||||||
<h3>International wOBA Grand Prix</h3>
|
<div class="col-md-6">
|
||||||
<StandingsTable :teams="iwgpTeams" :is-divisional=true />
|
<h3>{{ division[0].divisionName }}</h3>
|
||||||
<h3>Crabbers</h3>
|
<StandingsTable :teams="division" :is-divisional=true />
|
||||||
<StandingsTable :teams="balTeams" :is-divisional=true />
|
</div>
|
||||||
</div>
|
</template>
|
||||||
|
|
||||||
<div class="col-md-6">
|
|
||||||
<h3>Fun Diff</h3>
|
|
||||||
<StandingsTable :teams="fdTeams" :is-divisional=true />
|
|
||||||
<h3>NL West</h3>
|
|
||||||
<StandingsTable :teams="nlwTeams" :is-divisional=true />
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<h3>Wildcard</h3>
|
<h3>Wildcard</h3>
|
||||||
@ -60,11 +53,8 @@ export default {
|
|||||||
seasonNumber: CURRENT_SEASON as number,
|
seasonNumber: CURRENT_SEASON as number,
|
||||||
weekNumber: undefined as number | undefined,
|
weekNumber: undefined as number | undefined,
|
||||||
teamStandings: [] as TeamStanding[],
|
teamStandings: [] as TeamStanding[],
|
||||||
iwgpTeams: [] as TeamStanding[],
|
|
||||||
nlwTeams: [] as TeamStanding[],
|
|
||||||
wildcardTeams: [] as TeamStanding[],
|
wildcardTeams: [] as TeamStanding[],
|
||||||
balTeams: [] as TeamStanding[],
|
standingsByDivision: [[]] as TeamStanding[][]
|
||||||
fdTeams: [] as TeamStanding[]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
@ -76,14 +66,17 @@ export default {
|
|||||||
this.weekNumber = leagueInfo.week
|
this.weekNumber = leagueInfo.week
|
||||||
|
|
||||||
this.teamStandings = await fetchStandings(CURRENT_SEASON)
|
this.teamStandings = await fetchStandings(CURRENT_SEASON)
|
||||||
// TODO this could be made more robust to division/league structure changes by identifying the unique
|
|
||||||
// league/div abbreviations, then grouping on each into an array of arrays, then in the template above
|
|
||||||
// v-for over the structure to generate a dynamic standings page
|
|
||||||
this.iwgpTeams = this.teamStandings.filter(ts => ts.divisionAbbreviation === 'IWGP')
|
|
||||||
this.nlwTeams = this.teamStandings.filter(ts => ts.divisionAbbreviation === 'NLW')
|
|
||||||
this.balTeams = this.teamStandings.filter(ts => ts.divisionAbbreviation === 'BAL')
|
|
||||||
this.fdTeams = this.teamStandings.filter(ts => ts.divisionAbbreviation === 'FD')
|
|
||||||
this.wildcardTeams = this.teamStandings.filter(ts => ts.isWildcardTeam)
|
this.wildcardTeams = this.teamStandings.filter(ts => ts.isWildcardTeam)
|
||||||
|
|
||||||
|
const teamStandingsByDivisionAbbreviation: { [key: string]: TeamStanding[] } = {}
|
||||||
|
this.teamStandings.forEach(ts => {
|
||||||
|
if (!teamStandingsByDivisionAbbreviation[ts.divisionAbbreviation]) {
|
||||||
|
teamStandingsByDivisionAbbreviation[ts.divisionAbbreviation] = []
|
||||||
|
}
|
||||||
|
teamStandingsByDivisionAbbreviation[ts.divisionAbbreviation].push(ts)
|
||||||
|
})
|
||||||
|
|
||||||
|
this.standingsByDivision = Object.values(teamStandingsByDivisionAbbreviation)
|
||||||
},
|
},
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user