diff --git a/src/app/admin/(dashboard)/desa/berita/page.tsx b/src/app/admin/(dashboard)/desa/berita/page.tsx index 01a96511..0f98dedc 100644 --- a/src/app/admin/(dashboard)/desa/berita/page.tsx +++ b/src/app/admin/(dashboard)/desa/berita/page.tsx @@ -32,72 +32,6 @@ function Page() { ); } - - - - - -// function BeritaList() { -// const beritaState = useProxy(stateDashboardBerita) -// useShallowEffect(() => { -// beritaState.berita.findMany.load() -// }, []) - - - -// const router = useRouter() - -// if (!beritaState.berita.findMany.data) return -// {Array.from({ length: 10 }).map((v, k) => )} -// -// return ( -// -// -// -// List Berita -// -// {beritaState.berita.findMany.data?.map((item) => ( -// -// -// -// beritaState.berita.delete.byId(item.id)} -// disabled={beritaState.berita.delete.loading} -// color={colors['blue-button']} variant='transparent'> -// -// -// { -// router.push("/desa/berita/edit"); -// }} color={colors['blue-button']} variant='transparent'> -// -// -// -// -// Kategori -// -// {item.kategoriBerita?.name} -// -// Judul -// -// {item.judul} -// -// Deskripsi -// -// {item.deskripsi} -// -// Gambar -// -// gambar -// -// -// ))} -// -// -// -// -// ) -// } - function BeritaList() { const beritaState = useProxy(stateDashboardBerita) const [modalHapus, setModalHapus] = useState(false) diff --git a/src/app/admin/(dashboard)/desa/gallery/foto/create/page.tsx b/src/app/admin/(dashboard)/desa/gallery/foto/create/page.tsx new file mode 100644 index 00000000..6665ef5b --- /dev/null +++ b/src/app/admin/(dashboard)/desa/gallery/foto/create/page.tsx @@ -0,0 +1,46 @@ +'use client' +import { KeamananEditor } from '@/app/admin/(dashboard)/keamanan/_com/keamananEditor'; +import colors from '@/con/colors'; +import { Box, Button, Group, Paper, Stack, Text, TextInput, Title } from '@mantine/core'; +import { IconArrowBack } from '@tabler/icons-react'; +import { useRouter } from 'next/navigation'; + + + +function CreateFoto() { + const router = useRouter(); + return ( + + + + + + + + Create Foto + Judul Foto} + placeholder='Masukkan judul foto' + /> + Tanggal Foto} + placeholder='Masukkan tanggal foto' + /> + + Deskripsi Foto + + + + + + + + + ); +} + +export default CreateFoto; diff --git a/src/app/admin/(dashboard)/desa/gallery/foto/detail/page.tsx b/src/app/admin/(dashboard)/desa/gallery/foto/detail/page.tsx new file mode 100644 index 00000000..5df8ddb3 --- /dev/null +++ b/src/app/admin/(dashboard)/desa/gallery/foto/detail/page.tsx @@ -0,0 +1,62 @@ +'use client' +import colors from '@/con/colors'; +import { Box, Button, Flex, Paper, Stack, Text } from '@mantine/core'; +import { IconArrowBack, IconEdit, IconX } from '@tabler/icons-react'; +import { useRouter } from 'next/navigation'; +// import { ModalKonfirmasiHapus } from '../../../_com/modalKonfirmasiHapus'; + +function DetailFoto() { + const router = useRouter(); + return ( + + + + + + + Detail Foto + + + + + Judul Foto + Foto 1 + + + Tanggal Foto + 2022-01-01 + + + Deskripsi Foto + Deskripsi Foto 1 + + + + + + + + + + + + + {/* Modal Hapus + setModalHapus(false)} + onConfirm={handleHapus} + text="Apakah anda yakin ingin menghapus potensi ini?" + /> */} + + ); +} + +export default DetailFoto; + diff --git a/src/app/admin/(dashboard)/desa/gallery/foto/edit/page.tsx b/src/app/admin/(dashboard)/desa/gallery/foto/edit/page.tsx new file mode 100644 index 00000000..3912c2fe --- /dev/null +++ b/src/app/admin/(dashboard)/desa/gallery/foto/edit/page.tsx @@ -0,0 +1,46 @@ +'use client' +import { KeamananEditor } from '@/app/admin/(dashboard)/keamanan/_com/keamananEditor'; +import colors from '@/con/colors'; +import { Box, Button, Group, Paper, Stack, Text, TextInput, Title } from '@mantine/core'; +import { IconArrowBack } from '@tabler/icons-react'; +import { useRouter } from 'next/navigation'; + + + +function EditFoto() { + const router = useRouter(); + return ( + + + + + + + + Edit Foto + Judul Foto} + placeholder='Masukkan judul foto' + /> + Tanggal Foto} + placeholder='Masukkan tanggal foto' + /> + + Deskripsi Foto + + + + + + + + + ); +} + +export default EditFoto; diff --git a/src/app/admin/(dashboard)/desa/gallery/foto/page.tsx b/src/app/admin/(dashboard)/desa/gallery/foto/page.tsx new file mode 100644 index 00000000..4d32e6ab --- /dev/null +++ b/src/app/admin/(dashboard)/desa/gallery/foto/page.tsx @@ -0,0 +1,46 @@ +'use client' +import colors from '@/con/colors'; +import { Box, Button, Paper, Table, TableTbody, TableTd, TableTh, TableThead, TableTr } from '@mantine/core'; +import { IconDeviceImac, IconSearch } from '@tabler/icons-react'; +import { useRouter } from 'next/navigation'; +import JudulListTab from '../../../_com/jusulListTab'; + +function Foto() { + const router = useRouter(); + return ( + + + } + /> + + + + Judul Foto + Tanggal Foto + Deskripsi Foto + Detail + + + + + Foto 1 + 2022-01-01 + Deskripsi Foto 1 + + + + + +
+
+
+ ); +} + +export default Foto; diff --git a/src/app/admin/(dashboard)/desa/gallery/page.tsx b/src/app/admin/(dashboard)/desa/gallery/page.tsx index bb753607..cf0f58b8 100644 --- a/src/app/admin/(dashboard)/desa/gallery/page.tsx +++ b/src/app/admin/(dashboard)/desa/gallery/page.tsx @@ -1,8 +1,8 @@ import colors from '@/con/colors'; import { Box, Stack, Tabs, TabsList, TabsPanel, TabsTab, Title } from '@mantine/core'; import { IconPhoto, IconVideo } from '@tabler/icons-react'; -import Foto from './ui/foto/page'; -import Video from './ui/video/page'; +import Foto from './foto/page'; +import Video from './video/page'; function Gallery() { return ( diff --git a/src/app/admin/(dashboard)/desa/gallery/ui/foto/listPage.tsx b/src/app/admin/(dashboard)/desa/gallery/ui/foto/listPage.tsx deleted file mode 100644 index 4cecb3a0..00000000 --- a/src/app/admin/(dashboard)/desa/gallery/ui/foto/listPage.tsx +++ /dev/null @@ -1,17 +0,0 @@ -import colors from '@/con/colors'; -import { Box, Paper, Stack, Title } from '@mantine/core'; -import React from 'react'; - -function ListFoto() { - return ( - - - - List Foto - - - - ); -} - -export default ListFoto; diff --git a/src/app/admin/(dashboard)/desa/gallery/ui/foto/page.tsx b/src/app/admin/(dashboard)/desa/gallery/ui/foto/page.tsx deleted file mode 100644 index a696750c..00000000 --- a/src/app/admin/(dashboard)/desa/gallery/ui/foto/page.tsx +++ /dev/null @@ -1,52 +0,0 @@ -import colors from '@/con/colors'; -import { Box, Button, Center, Group, Paper, SimpleGrid, Stack, Text, TextInput, Title } from '@mantine/core'; -import { IconUpload } from '@tabler/icons-react'; -import { DesaEditor } from '../../../_com/desaEditor'; -import ListFoto from './listPage'; - -function Foto() { - return ( - - - - - - Foto - Tanggal Foto} - placeholder="2022-01-01" - /> - Judul Foto} - placeholder="Judul Foto" - /> - Upload Foto - -
- -
-
- - Deskripsi Foto - - - - - -
-
-
- -
-
- ); -} - -export default Foto; diff --git a/src/app/admin/(dashboard)/desa/gallery/ui/video/listPage.tsx b/src/app/admin/(dashboard)/desa/gallery/ui/video/listPage.tsx deleted file mode 100644 index 83880a4d..00000000 --- a/src/app/admin/(dashboard)/desa/gallery/ui/video/listPage.tsx +++ /dev/null @@ -1,17 +0,0 @@ -import colors from '@/con/colors'; -import { Box, Paper, Stack, Title } from '@mantine/core'; -import React from 'react'; - -function ListVideo() { - return ( - - - - List Video - - - - ); -} - -export default ListVideo; diff --git a/src/app/admin/(dashboard)/desa/gallery/ui/video/page.tsx b/src/app/admin/(dashboard)/desa/gallery/ui/video/page.tsx deleted file mode 100644 index f25c6873..00000000 --- a/src/app/admin/(dashboard)/desa/gallery/ui/video/page.tsx +++ /dev/null @@ -1,52 +0,0 @@ -import colors from '@/con/colors'; -import { Box, Button, Center, Group, Paper, SimpleGrid, Stack, Text, TextInput, Title } from '@mantine/core'; -import { IconUpload } from '@tabler/icons-react'; -import { DesaEditor } from '../../../_com/desaEditor'; -import ListVideo from './listPage'; - -function Video() { - return ( - - - - - - Video - Tanggal Video} - placeholder="2022-01-01" - /> - Judul Video} - placeholder="Judul Video" - /> - Upload Video - -
- -
-
- - Deskripsi Video - - - - - -
-
-
- -
-
- ); -} - -export default Video; diff --git a/src/app/admin/(dashboard)/desa/gallery/video/create/page.tsx b/src/app/admin/(dashboard)/desa/gallery/video/create/page.tsx new file mode 100644 index 00000000..d22037bf --- /dev/null +++ b/src/app/admin/(dashboard)/desa/gallery/video/create/page.tsx @@ -0,0 +1,46 @@ +'use client' +import { KeamananEditor } from '@/app/admin/(dashboard)/keamanan/_com/keamananEditor'; +import colors from '@/con/colors'; +import { Box, Button, Group, Paper, Stack, Text, TextInput, Title } from '@mantine/core'; +import { IconArrowBack } from '@tabler/icons-react'; +import { useRouter } from 'next/navigation'; + + + +function CreateVideo() { + const router = useRouter(); + return ( + + + + + + + + Create Video + Judul Video} + placeholder='Masukkan judul video' + /> + Tanggal Video} + placeholder='Masukkan tanggal video' + /> + + Deskripsi Video + + + + + + + + + ); +} + +export default CreateVideo; diff --git a/src/app/admin/(dashboard)/desa/gallery/video/detail/page.tsx b/src/app/admin/(dashboard)/desa/gallery/video/detail/page.tsx new file mode 100644 index 00000000..f8a1af21 --- /dev/null +++ b/src/app/admin/(dashboard)/desa/gallery/video/detail/page.tsx @@ -0,0 +1,62 @@ +'use client' +import colors from '@/con/colors'; +import { Box, Button, Flex, Paper, Stack, Text } from '@mantine/core'; +import { IconArrowBack, IconEdit, IconX } from '@tabler/icons-react'; +import { useRouter } from 'next/navigation'; +// import { ModalKonfirmasiHapus } from '../../../_com/modalKonfirmasiHapus'; + +function DetailVideo() { + const router = useRouter(); + return ( + + + + + + + Detail Video + + + + + Judul Video + Video 1 + + + Tanggal Video + 2022-01-01 + + + Deskripsi Video + Deskripsi Video 1 + + + + + + + + + + + + + {/* Modal Hapus + setModalHapus(false)} + onConfirm={handleHapus} + text="Apakah anda yakin ingin menghapus potensi ini?" + /> */} + + ); +} + +export default DetailVideo; + diff --git a/src/app/admin/(dashboard)/desa/gallery/video/edit/page.tsx b/src/app/admin/(dashboard)/desa/gallery/video/edit/page.tsx new file mode 100644 index 00000000..eecef4ac --- /dev/null +++ b/src/app/admin/(dashboard)/desa/gallery/video/edit/page.tsx @@ -0,0 +1,46 @@ +'use client' +import { KeamananEditor } from '@/app/admin/(dashboard)/keamanan/_com/keamananEditor'; +import colors from '@/con/colors'; +import { Box, Button, Group, Paper, Stack, Text, TextInput, Title } from '@mantine/core'; +import { IconArrowBack } from '@tabler/icons-react'; +import { useRouter } from 'next/navigation'; + + + +function EditVideo() { + const router = useRouter(); + return ( + + + + + + + + Edit Video + Judul Video} + placeholder='Masukkan judul video' + /> + Tanggal Video} + placeholder='Masukkan tanggal video' + /> + + Deskripsi Video + + + + + + + + + ); +} + +export default EditVideo; diff --git a/src/app/admin/(dashboard)/desa/gallery/video/page.tsx b/src/app/admin/(dashboard)/desa/gallery/video/page.tsx new file mode 100644 index 00000000..5b5437a7 --- /dev/null +++ b/src/app/admin/(dashboard)/desa/gallery/video/page.tsx @@ -0,0 +1,46 @@ +'use client' +import colors from '@/con/colors'; +import { Box, Button, Paper, Table, TableTbody, TableTd, TableTh, TableThead, TableTr } from '@mantine/core'; +import { IconDeviceImac, IconSearch } from '@tabler/icons-react'; +import { useRouter } from 'next/navigation'; +import JudulListTab from '../../../_com/jusulListTab'; + +function Video() { + const router = useRouter(); + return ( + + + } + /> + + + + Judul Video + Tanggal Video + Deskripsi Video + Detail + + + + + Video 1 + 2022-01-01 + Deskripsi Video 1 + + + + + +
+
+
+ ); +} + +export default Video; diff --git a/src/app/admin/(dashboard)/desa/pengumuman/create/page.tsx b/src/app/admin/(dashboard)/desa/pengumuman/create/page.tsx new file mode 100644 index 00000000..e33f7d23 --- /dev/null +++ b/src/app/admin/(dashboard)/desa/pengumuman/create/page.tsx @@ -0,0 +1,53 @@ +'use client' +import colors from '@/con/colors'; +import { Box, Button, Group, Paper, Stack, Text, TextInput, Title } from '@mantine/core'; +import { IconArrowBack } from '@tabler/icons-react'; +import { useRouter } from 'next/navigation'; +import { KeamananEditor } from '../../../keamanan/_com/keamananEditor'; + +function CreatePengumuman() { + const router = useRouter(); + return ( + + + + + + + + Create Pengumuman + Judul} + placeholder='Masukkan judul' + /> + Deskripsi Singkat} + placeholder='Masukkan deskripsi singkat' + /> + Tanggal} + placeholder='Masukkan tanggal' + /> + Waktu} + placeholder='Masukkan waktu' + /> + + Deskripsi + + + + + + + + + + ); +} + +export default CreatePengumuman; diff --git a/src/app/admin/(dashboard)/desa/pengumuman/detail/page.tsx b/src/app/admin/(dashboard)/desa/pengumuman/detail/page.tsx new file mode 100644 index 00000000..2cb0d7e1 --- /dev/null +++ b/src/app/admin/(dashboard)/desa/pengumuman/detail/page.tsx @@ -0,0 +1,116 @@ +'use client' + +import { Box, Button, Flex, Image, Paper, Stack, Text } from '@mantine/core'; +import { IconArrowBack, IconEdit, IconX } from '@tabler/icons-react'; +import { useRouter } from 'next/navigation'; + +import colors from '@/con/colors'; +// import { ModalKonfirmasiHapus } from '../../../_com/modalKonfirmasiHapus'; +// import stateDashboardBerita from '../../../_state/desa/berita'; + +function DetailPengumuman() { + // const pengumumanState = useProxy(stateDashboardpengumuman) + // const [modalHapus, setModalHapus] = useState(false) + // const [selectedId, setSelectedId] = useState(null) + // const params = useParams() + const router = useRouter() + + // useShallowEffect(() => { + // pengumumanState.pengumuman.findUnique.load(params?.id as string) + // }, []) + + + // const handleHapus = () => { + // if (selectedId) { + // pengumumanState.pengumuman.delete.byId(selectedId) + // setModalHapus(false) + // setSelectedId(null) + // router.push("/admin/desa/pengumuman") + // } + // } + + // if (!pengumumanState.pengumuman.findUnique.data) { + // return ( + // + // {Array.from({ length: 10 }).map((_, k) => ( + // + // ))} + // + // ) + // } + + return ( + + + + + + + Detail Pengumuman + + + + Kategori + Pendidikan + + + Judul + Pengumuman Pendidikan + + + Deskripsi Singkat + Pengumuman Pendidikan + + + Deskripsi + Pengumuman Pendidikan + + + Tanggal + 2025-06-04 + + + Waktu + 08:00 - 17:00 + + + Gambar + gambar + + + Konten + Pengumuman Pendidikan + + + + + + + + + + + {/* Modal Konfirmasi Hapus + setModalHapus(false)} + onConfirm={handleHapus} + text='Apakah anda yakin ingin menghapus berita ini?' + /> */} + + ); +} + +export default DetailPengumuman; \ No newline at end of file diff --git a/src/app/admin/(dashboard)/desa/pengumuman/edit/page.tsx b/src/app/admin/(dashboard)/desa/pengumuman/edit/page.tsx new file mode 100644 index 00000000..506ef58f --- /dev/null +++ b/src/app/admin/(dashboard)/desa/pengumuman/edit/page.tsx @@ -0,0 +1,53 @@ +'use client' +import colors from '@/con/colors'; +import { Box, Button, Group, Paper, Stack, Text, TextInput, Title } from '@mantine/core'; +import { IconArrowBack } from '@tabler/icons-react'; +import { useRouter } from 'next/navigation'; +import { KeamananEditor } from '../../../keamanan/_com/keamananEditor'; + +function EditPengumuman() { + const router = useRouter(); + return ( + + + + + + + + Edit Pengumuman + Judul} + placeholder='Masukkan judul' + /> + Deskripsi Singkat} + placeholder='Masukkan deskripsi singkat' + /> + Tanggal} + placeholder='Masukkan tanggal' + /> + Waktu} + placeholder='Masukkan waktu' + /> + + Deskripsi + + + + + + + + + + ); +} + +export default EditPengumuman; diff --git a/src/app/admin/(dashboard)/desa/pengumuman/page.tsx b/src/app/admin/(dashboard)/desa/pengumuman/page.tsx index 22ebd3d9..796ef3cd 100644 --- a/src/app/admin/(dashboard)/desa/pengumuman/page.tsx +++ b/src/app/admin/(dashboard)/desa/pengumuman/page.tsx @@ -1,102 +1,109 @@ 'use client' -import { Box, Group, Paper, Select, SimpleGrid, Skeleton, Stack, Text, TextInput, Title } from '@mantine/core'; -import React from 'react'; -import { useProxy } from 'valtio/utils'; -import stateDesaPengumuman from '../../_state/desa/pengumuman'; -import { useShallowEffect } from '@mantine/hooks'; -import { Prisma } from '@prisma/client'; -import { BeritaEditor } from '../berita/_com/BeritaEditor'; import colors from '@/con/colors'; +import { Box, Button, Grid, GridCol, Image, Paper, Stack, Table, TableTbody, TableTd, TableTh, TableThead, TableTr, Text } from '@mantine/core'; +import { IconCircleDashedPlus, IconDeviceImacCog, IconSearch } from '@tabler/icons-react'; +import { useRouter } from 'next/navigation'; +import HeaderSearch from '../../_com/header'; + function Page() { return ( - Pengumuman - - - - + } + /> + ); } -function PengumumanCreate() { - const pengumumanState = useProxy(stateDesaPengumuman) - - - return ( - - - - { - pengumumanState.pengumuman.create.form.categoryPengumumanId = val.id - }} /> - { - pengumumanState.pengumuman.create.form.judul = val.target.value - }} label={Judul} placeholder='masukkan judul' /> - { - pengumumanState.pengumuman.create.form.deskripsi = val.target.value - }} label={Deskripsi} placeholder='masukkan deskripsi' /> - { - pengumumanState.pengumuman.create.form.content = val - pengumumanState.pengumuman.create.create() - }} /> - - - - ) -} - function PengumumanList() { - const pengumumanState = useProxy(stateDesaPengumuman) - useShallowEffect(() => { - pengumumanState.pengumuman.findMany.load() - }, []) + // const pengumumanState = useProxy(stateDashboardPengumuman) + // const [modalHapus, setModalHapus] = useState(false) + // const [selectedId, setSelectedId] = useState(null) + + // useShallowEffect(() => { + // pengumumanState.pengumuman.findMany.load() + // }, []) + + const router = useRouter() + + // const handleHapus = () => { + // if (selectedId) { + // pengumumanState.pengumuman.delete.byId(selectedId) + // setModalHapus(false) + // setSelectedId(null) + // } + // } + + // if (!pengumumanState.pengumuman.findMany.data) { + // return ( + // + // + // + // ) + // } - if (!pengumumanState.pengumuman.findMany.data) return - {Array.from({ length: 10 }).map((v, k) => )} - return ( - - List Pengumuman - {pengumumanState.pengumuman.findMany.data?.map((item) => ( - {item.judul} - ))} + + + + List Pengumuman + + + + + + + + + + Judul + Kategori + Image + Detail + + + + + + + + + Judul + + + Kesehatan + + + + + + + + +
+
+ + {/* Modal Konfirmasi Hapus + setModalHapus(false)} + onConfirm={handleHapus} + text='Apakah anda yakin ingin menghapus berita ini?' + /> */}
) } -function SelectCategory({ onChange }: { - onChange: (value: Prisma.CategoryPengumumanGetPayload<{ - select: { - name: true, - id: true - } - }>) => void -}) { - const pengumumanState = useProxy(stateDesaPengumuman) - useShallowEffect(() => { - pengumumanState.category.findMany.load() - }, []) - - if (!pengumumanState.category.findMany.data) return - return - {/* {JSON.stringify(pengumumanState.category.findMany.data)} */} -