From 94476fae1deda01dee30a3412fadcecc1084441d Mon Sep 17 00:00:00 2001 From: GussevPM Date: Thu, 15 Aug 2024 17:36:22 +0200 Subject: [PATCH] Fix square size card 2 --- components/modules/stats/SquareSizeCard.vue | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/components/modules/stats/SquareSizeCard.vue b/components/modules/stats/SquareSizeCard.vue index feda887a..8930d48d 100644 --- a/components/modules/stats/SquareSizeCard.vue +++ b/components/modules/stats/SquareSizeCard.vue @@ -47,18 +47,22 @@ const getSquareSizes = async () => { squareSize.value.forEach((item, index) => { item.color = color(index) - let share = Math.floor((item.value / total.value * 100)) + let share = Math.round((item.value / total.value * 100)) totalSquares += Math.max(share, 1) item.share = share item.squares = Math.max(share, 1) }) - if (totalSquares > 100) { + if (totalSquares !== 100) { let maxSquaresIndex = squareSize.value.reduce((maxIndex, current, index, array) => { return (current.squares > array[maxIndex].squares) ? index : maxIndex }, 0) - squareSize.value[maxSquaresIndex].squares = squareSize.value[maxSquaresIndex].squares - (totalSquares - 100) + if (totalSquares > 100) { + squareSize.value[maxSquaresIndex].squares = squareSize.value[maxSquaresIndex].squares - (totalSquares - 100) + } else { + squareSize.value[maxSquaresIndex].squares = squareSize.value[maxSquaresIndex].squares + (100 - totalSquares) + } } squareSize.value.forEach(item => { @@ -166,7 +170,7 @@ onMounted(async () => { {{ `${s.size} x ${s.size}` }} - {{ `${s.share === 0 ? '<1' : s.share}%` }} + {{ `${s.share <= 1 ? '<1' : s.share}%` }} {{ comma(s.value) }}