fix: final percentage

This commit is contained in:
DomWane 2024-10-03 16:41:44 +02:00
parent 9ef956fe63
commit bf333c66f4

View file

@ -61,10 +61,16 @@ export const useData = defineStore('data', () => {
ranks: Rank[]
}>('/api/data')
data.projects.forEach(project => project.ratings = generateProjectRating(project))
projects.value = data.projects.map(project => ({
projects.value = data.projects.map((project) => {
const totalPoints = project.ratings?.reduce((a, b) => a + b.percentagePoints, 0) || 0
const numberOfRatings = project.ratings?.length || 1 // Avoid division by zero
const averagePercentage = totalPoints / numberOfRatings
return {
...project,
percentage: Math.round((project.ratings?.reduce((a, b) => a + b.points, 0) || 0) / 1.5),
})).filter(p => p.name)
percentage: Math.min(Math.max(Math.round(averagePercentage), 0), 100), // Ensure within 0-100%
}
}).filter(p => p.name)
console.log(projects.value.filter(p => p.name === 'ETHBerlin'))
const projectCategories = projects.value.map(p => p.categories).flat()
categories.value = data.categories.filter(c => projectCategories.includes(c.id))
usecases.value = data.usecases