'use client' import colors from '@/con/colors'; import { Stack, Box, Paper, Text, Title, SimpleGrid, Skeleton, Group, Badge, Center } from '@mantine/core'; import { IconUsers, IconHome, IconBasket, IconCoin, IconDatabaseOff } from '@tabler/icons-react'; import BackButton from '../../desa/layanan/_com/BackButto'; import { useProxy } from 'valtio/utils'; import kependudukanDashboard from '@/app/admin/(dashboard)/_state/kependudukan/dashboard'; import { useShallowEffect } from '@mantine/hooks'; function Page() { const state = useProxy(kependudukanDashboard) useShallowEffect(() => { state.summary.load() }, []) const summary = state.summary.data?.summary; if (state.summary.loading) { return ( ) } if (!summary) { return ( Dashboard Kependudukan Ringkasan data kependudukan Desa Darmasaba
Data Belum Tersedia Data kependudukan untuk tahun ini belum diperbarui. Silakan hubungi administrator desa untuk informasi lebih lanjut.
) } const stats = [ { title: 'Total Penduduk', value: summary.totalPenduduk, icon: IconUsers, color: colors['blue-button'], }, { title: 'Kepala Keluarga', value: summary.totalKK, icon: IconHome, color: '#6EDF9C', }, { title: 'Kelahiran Tahun Ini', value: summary.totalKelahiran, icon: IconBasket, color: '#FF9F43', }, { title: 'Penduduk Miskin', value: summary.totalKemiskinan, icon: IconCoin, color: '#EE5050', }, ]; return ( Dashboard Kependudukan Ringkasan data kependudukan Desa Darmasaba {stats.map((stat) => { const Icon = stat.icon; return (
{stat.title} {stat.value.toLocaleString('id-ID')}
); })}
{state.summary.data?.dinamika && ( Dinamika Penduduk Kelahiran {state.summary.data.dinamika.kelahiran} Kematian {state.summary.data.dinamika.kematian} Pindah Masuk {state.summary.data.dinamika.pindahMasuk} Pindah Keluar {state.summary.data.dinamika.pindahKeluar} )}
); } export default Page;