import Styles from "@/constants/Styles"; import { apiGetDataHome } from "@/lib/api"; import { useAuthSession } from "@/providers/AuthProvider"; import { useEffect, useState } from "react"; import { View } from "react-native"; import { PieChart } from "react-native-gifted-charts"; import Skeleton from "../skeleton"; import Text from "../Text"; type Props = { value: number; text: string; color: string; }[] export default function ChartProgresHome({ refreshing }: { refreshing: boolean }) { const { decryptToken, token } = useAuthSession() const [data, setData] = useState([]) const [loading, setLoading] = useState(true) async function handleData(loading: boolean) { try { setLoading(loading) const hasil = await decryptToken(String(token?.current)) const response = await apiGetDataHome({ cat: "progress", user: hasil }) const convertedArray = response.data.map((item: { color: any; text: any; value: any; }) => ({ color: item.color, text: item.text, value: Number(item.value) })); setData(convertedArray) } catch (error) { console.error(error) } finally { setLoading(false) } } useEffect(() => { if (refreshing) handleData(false) }, [refreshing]); useEffect(() => { handleData(true) }, []); return ( PROGRES KEGIATAN { loading ? : <> Segera Dikerjakan Selesai Dikerjakan Dibatalkan } ) }