diff --git a/src/AppRoutes.tsx b/src/AppRoutes.tsx index b083d0e..f0b024d 100644 --- a/src/AppRoutes.tsx +++ b/src/AppRoutes.tsx @@ -18,10 +18,14 @@ import Home from "./pages/Home"; import CredentialPage from "./pages/scr/dashboard/credential/credential_page"; import DashboardHome from "./pages/scr/dashboard/dashboard_home"; import ListPelayananPage from "./pages/scr/dashboard/pelayanan-surat/list_pelayanan_page"; +import DetailPelayananPage from "./pages/scr/dashboard/pelayanan-surat/detail_pelayanan_page"; +import DetailWargaPage from "./pages/scr/dashboard/warga/detail_warga_page"; +import ListWargaPage from "./pages/scr/dashboard/warga/list_warga_page"; import ListPage from "./pages/scr/dashboard/pengaduan/list_page"; import DetailPage from "./pages/scr/dashboard/pengaduan/detail_page"; import ApikeyPage from "./pages/scr/dashboard/apikey/apikey_page"; import DashboardLayout from "./pages/scr/dashboard/dashboard_layout"; +import DetailSettingPage from "./pages/scr/dashboard/setting/detail_setting_page"; import ScrLayout from "./pages/scr/scr_layout"; import DirPage from "./pages/dir/dir_page"; import NotFound from "./pages/NotFound"; @@ -99,6 +103,18 @@ export default function AppRoutes() { path="/scr/dashboard/pelayanan-surat/list-pelayanan" element={} /> + } + /> + } + /> + } + /> } @@ -111,6 +127,10 @@ export default function AppRoutes() { path="/scr/dashboard/apikey/apikey" element={} /> + } + /> } /> diff --git a/src/clientRoutes.ts b/src/clientRoutes.ts index 42ce0b8..9329ce6 100644 --- a/src/clientRoutes.ts +++ b/src/clientRoutes.ts @@ -20,9 +20,13 @@ const clientRoutes = { "/scr/dashboard/credential/credential": "/scr/dashboard/credential/credential", "/scr/dashboard/dashboard-home": "/scr/dashboard/dashboard-home", "/scr/dashboard/pelayanan-surat/list-pelayanan": "/scr/dashboard/pelayanan-surat/list-pelayanan", + "/scr/dashboard/pelayanan-surat/detail-pelayanan": "/scr/dashboard/pelayanan-surat/detail-pelayanan", + "/scr/dashboard/warga/detail-warga": "/scr/dashboard/warga/detail-warga", + "/scr/dashboard/warga/list-warga": "/scr/dashboard/warga/list-warga", "/scr/dashboard/pengaduan/list": "/scr/dashboard/pengaduan/list", "/scr/dashboard/pengaduan/detail": "/scr/dashboard/pengaduan/detail", "/scr/dashboard/apikey/apikey": "/scr/dashboard/apikey/apikey", + "/scr/dashboard/setting/detail-setting": "/scr/dashboard/setting/detail-setting", "/dir/dir": "/dir/dir", "/*": "/*" } as const; diff --git a/src/pages/scr/dashboard/dashboard_layout.tsx b/src/pages/scr/dashboard/dashboard_layout.tsx index f4241b1..2fc3115 100644 --- a/src/pages/scr/dashboard/dashboard_layout.tsx +++ b/src/pages/scr/dashboard/dashboard_layout.tsx @@ -236,13 +236,13 @@ function NavigationDashboard() { description: "Manage pelayanan surat", }, { - path: "/scr/dashboard/user", + path: "/scr/dashboard/warga/list-warga", icon: , - label: "User", - description: "Manage user", + label: "Warga", + description: "Manage warga", }, { - path: "/scr/dashboard/setting", + path: "/scr/dashboard/setting/detail-setting", icon: , label: "Setting", description: diff --git a/src/pages/scr/dashboard/pelayanan-surat/detail_pelayanan_page.tsx b/src/pages/scr/dashboard/pelayanan-surat/detail_pelayanan_page.tsx new file mode 100644 index 0000000..c088207 --- /dev/null +++ b/src/pages/scr/dashboard/pelayanan-surat/detail_pelayanan_page.tsx @@ -0,0 +1,370 @@ +import apiFetch from "@/lib/apiFetch"; +import { + Anchor, + Badge, + Button, + Card, + Container, + Divider, + Flex, + Grid, + Group, + Modal, + Stack, + Table, + Text, + Textarea, + Title, +} from "@mantine/core"; +import { useDisclosure, useShallowEffect } from "@mantine/hooks"; +import { + IconAlignJustified, + IconCategory, + IconFileCertificate, + IconInfoTriangle, + IconMapPin, + IconMessageReport, + IconPhotoScan, + IconUser, +} from "@tabler/icons-react"; +import { useState } from "react"; +import { useLocation } from "react-router-dom"; +import useSwr from "swr"; + +export default function DetailPelayananPage() { + const { search } = useLocation(); + const query = new URLSearchParams(search); + const id = query.get("id"); + + return ( + + + + + + + + + + + + + + ); +} + +function DetailDataPelayanan() { + const [opened, { open, close }] = useDisclosure(false); + const [catModal, setCatModal] = useState<"tolak" | "terima">("tolak"); + + return ( + <> + + + {catModal === "tolak" ? ( + <> + + Anda yakin ingin menolak pengaduan ini? Berikan alasan penolakan + + +