feat: implement Kependudukan menu with CRUD admin pages

- Add Distribusi Umur admin pages (list, create, edit)
- Add Data Banjar admin pages (list, create, edit)
- Add Migrasi Penduduk admin pages (list, create, edit)
- Update state management with full CRUD operations for all modules
- Add Kependudukan menu to admin sidebar (devBar, navBar, role1)
- Add public pages for Distribusi Umur with age range sorting
- Update Dinamika Penduduk to use real-time birth/death data
- Add Biome configuration for code linting
- Create API routes for all Kependudukan modules

Features:
- Pagination and search for all admin list pages
- Responsive design (table for desktop, cards for mobile)
- Delete confirmation modal
- Toast notifications for user feedback
- Zod validation for all forms
- Age range auto-sorting in public Distribusi Umur chart

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
2026-04-09 17:10:29 +08:00
parent 34a37dc63b
commit 5e822f0b05
51 changed files with 5964 additions and 0 deletions

View File

@@ -373,6 +373,33 @@ export const devBar = [
}
]
},
{
id: "Kependudukan",
name: "Kependudukan",
path: "",
children: [
{
id: "Kependudukan_1",
name: "Distribusi Agama",
path: "/admin/kependudukan/distribusi-agama"
},
{
id: "Kependudukan_2",
name: "Distribusi Umur",
path: "/admin/kependudukan/distribusi-umur"
},
{
id: "Kependudukan_3",
name: "Data Banjar",
path: "/admin/kependudukan/data-banjar"
},
{
id: "Kependudukan_4",
name: "Migrasi Penduduk",
path: "/admin/kependudukan/migrasi-penduduk"
}
]
},
{
id: "Musik",
name: "Musik",
@@ -777,6 +804,33 @@ export const navBar = [
}
]
},
{
id: "Kependudukan",
name: "Kependudukan",
path: "",
children: [
{
id: "Kependudukan_1",
name: "Distribusi Agama",
path: "/admin/kependudukan/distribusi-agama"
},
{
id: "Kependudukan_2",
name: "Distribusi Umur",
path: "/admin/kependudukan/distribusi-umur"
},
{
id: "Kependudukan_3",
name: "Data Banjar",
path: "/admin/kependudukan/data-banjar"
},
{
id: "Kependudukan_4",
name: "Migrasi Penduduk",
path: "/admin/kependudukan/migrasi-penduduk"
}
]
},
{
id: "Musik",
name: "Musik",
@@ -1098,6 +1152,33 @@ export const role1 = [
path: "/admin/lingkungan/konservasi-adat-bali/filosofi-tri-hita-karana"
}
]
},
{
id: "Kependudukan",
name: "Kependudukan",
path: "",
children: [
{
id: "Kependudukan_1",
name: "Distribusi Agama",
path: "/admin/kependudukan/distribusi-agama"
},
{
id: "Kependudukan_2",
name: "Distribusi Umur",
path: "/admin/kependudukan/distribusi-umur"
},
{
id: "Kependudukan_3",
name: "Data Banjar",
path: "/admin/kependudukan/data-banjar"
},
{
id: "Kependudukan_4",
name: "Migrasi Penduduk",
path: "/admin/kependudukan/migrasi-penduduk"
}
]
},
{
id: "Musik",