Files
desa-darmasaba/tasks-sample.csv
nico ea70f6f6e9 feat(beasiswa): dynamic stats penerima & dana tersalurkan dari API + formatDana helper
- Ganti static dataBeasiswa dengan data live dari ringkasanBeasiswaState.findStats
- Tambah formatDana() untuk konversi angka ke Rb/Jt/M/T
- Tambah tasks ke tasks-sample.csv

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-07 11:34:59 +08:00

1.8 KiB

1titledescriptionkindprioritystartsAtdueAtestimateHoursassigneeEmailtagNames
2[Beasiswa] Import ringkasanBeasiswaState ke halaman publik beasiswa-desaImport ringkasanBeasiswaState dari src/app/admin/(dashboard)/_state/pendidikan/ringkasan-beasiswa.ts ke src/app/darmasaba/(pages)/pendidikan/beasiswa-desa/page.tsx untuk mengakses data stats beasiswa secara dinamis.TASKMEDIUM0.5nicoarya20@gmail.com
3[Beasiswa] Tambah useProxy + useShallowEffect fetch stats beasiswaTambah useProxy(ringkasanBeasiswaState.findStats) dan useShallowEffect untuk memanggil statsBeasiswa.load() saat komponen mount di halaman publik beasiswa-desa/page.tsx.TASKMEDIUM0.5nicoarya20@gmail.com
4[Beasiswa] Ubah dataBeasiswa dari static ke dynamic (penerima & dana tersalurkan)Pindahkan dataBeasiswa dari static array di luar komponen menjadi computed array di dalam Page(). Field 'Penerima Beasiswa' diambil dari statsBeasiswa.data.jumlahPenerima dan 'Dana Tersalurkan' dari statsBeasiswa.data.danaTersalurkan. Fallback '-' bila data belum tersedia.TASKMEDIUM0.5nicoarya20@gmail.com
5[Beasiswa] Buat fungsi formatDana untuk konversi angka ke format pendek IndonesiaBuat helper function formatDana(value: string | number) di halaman beasiswa-desa/page.tsx. Konversi: >= 1T → XT, >= 1M (miliar) → XM, >= 1Jt → XJt, >= 1Rb → XRb. Desimal 1 angka hanya muncul jika ada sisa (misal 1.5Jt), bilangan bulat tanpa desimal (misal 2Jt).TASKMEDIUM0.5nicoarya20@gmail.com
6[Beasiswa] Terapkan formatDana ke field Dana Tersalurkan di dataBeasiswaTerapkan formatDana(statsBeasiswa.data.danaTersalurkan) pada entry Dana Tersalurkan di array dataBeasiswa agar nilai dari API otomatis diformat ke representasi singkat (Rb/Jt/M/T).TASKMEDIUM0.5nicoarya20@gmail.com