From d4b4db4251c1508e79bbad44d35952a20bb4ba04 Mon Sep 17 00:00:00 2001 From: amaliadwiy Date: Fri, 17 Apr 2026 15:01:14 +0800 Subject: [PATCH] upd: fix: jumlah dokumen grafik pada home --- components/home/chartDokumenHome.tsx | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/components/home/chartDokumenHome.tsx b/components/home/chartDokumenHome.tsx index ee76ae2..8e21972 100644 --- a/components/home/chartDokumenHome.tsx +++ b/components/home/chartDokumenHome.tsx @@ -20,6 +20,7 @@ export default function ChartDokumenHome({ refreshing }: { refreshing: boolean } const { colors } = useTheme(); const [data, setData] = useState([]) const [maxValue, setMaxValue] = useState(5) + const [chartKey, setChartKey] = useState(0) const barData = [ { value: 23, label: 'Gambar', frontColor: '#fac858' }, { value: 12, label: 'Dokumen', frontColor: '#92cc76' }, @@ -32,8 +33,8 @@ export default function ChartDokumenHome({ refreshing }: { refreshing: boolean } setLoading(loading) const hasil = await decryptToken(String(token?.current)) const response = await apiGetDataHome({ cat: "dokumen", user: hasil }) - const maxValue = response.data.reduce((max: number, obj: { value: number; }) => Math.max(max, obj.value), -Infinity); - const roundUp = Math.ceil(maxValue / 10) * 10 + const maxVal = response.data.reduce((max: number, obj: { value: number; }) => Math.max(max, Number(obj.value)), 0); + const roundUp = maxVal > 0 ? Math.ceil(maxVal / 10) * 10 : 10; setMaxValue(roundUp) const convertedArray = response.data.map((item: { color: any; label: any; value: any; }) => ({ frontColor: item.color, @@ -41,6 +42,7 @@ export default function ChartDokumenHome({ refreshing }: { refreshing: boolean } value: Number(item.value) })); setData(convertedArray) + setChartKey((prev: number) => prev + 1) } catch (error) { console.error(error) } finally { @@ -49,8 +51,9 @@ export default function ChartDokumenHome({ refreshing }: { refreshing: boolean } } useEffect(() => { - if (refreshing) + if (refreshing) { handleData(false) + } }, [refreshing]); useEffect(() => { @@ -64,6 +67,7 @@ export default function ChartDokumenHome({ refreshing }: { refreshing: boolean } loading ? :