diff --git a/src/app/(application)/(detail-division)/discussion/[id]/page.tsx b/src/app/(application)/(detail-division)/discussion/[id]/page.tsx
new file mode 100644
index 0000000..9069e10
--- /dev/null
+++ b/src/app/(application)/(detail-division)/discussion/[id]/page.tsx
@@ -0,0 +1,9 @@
+import { ViewDetailDiscussion } from "@/module/division_new"
+
+function Page() {
+ return (
+
+ )
+}
+
+export default Page
\ No newline at end of file
diff --git a/src/app/(application)/(detail-division)/discussion/edit/[id]/page.tsx b/src/app/(application)/(detail-division)/discussion/edit/[id]/page.tsx
new file mode 100644
index 0000000..2410256
--- /dev/null
+++ b/src/app/(application)/(detail-division)/discussion/edit/[id]/page.tsx
@@ -0,0 +1,9 @@
+import { ViewEditDiscussion } from "@/module/division_new";
+
+function Page() {
+ return (
+
+ )
+}
+
+export default Page;
\ No newline at end of file
diff --git a/src/module/division_new/_division_fitur/discussion/component/drawer_detail_discussion.tsx b/src/module/division_new/_division_fitur/discussion/component/drawer_detail_discussion.tsx
new file mode 100644
index 0000000..182a818
--- /dev/null
+++ b/src/module/division_new/_division_fitur/discussion/component/drawer_detail_discussion.tsx
@@ -0,0 +1,75 @@
+import { WARNA } from "@/module/_global";
+import LayoutModal from "@/module/_global/layout/layout_modal";
+import { Box, Stack, SimpleGrid, Flex, Text } from "@mantine/core";
+import { useState } from "react";
+import toast from "react-hot-toast";
+import { BsTrash3 } from "react-icons/bs";
+import { FaPencil } from "react-icons/fa6";
+import { MdClose } from "react-icons/md";
+
+export default function DrawerDetailDiscussion({ onSuccess }: { onSuccess: (val: boolean) => void }) {
+ const [isValModal, setValModal] = useState(false)
+ const [isValModalStatus, setValModalStatus] = useState(false)
+
+ function onTrue(val: boolean) {
+ if (val) {
+ onSuccess(true)
+ toast.success("Sukses! Data terhapus");
+ }
+ setValModal(false)
+ }
+
+ function onTrueStatus(val: boolean) {
+ if (val) {
+ onSuccess(true)
+ toast.success("Sukses! Data terupdate");
+ }
+ setValModalStatus(false)
+ }
+
+ return (
+
+
+
+ setValModal(true)} justify={'center'} align={'center'} direction={'column'} >
+
+
+
+
+ Hapus
+
+
+
+ window.location.href = "/discussion/edit/2"} justify={'center'} align={'center'} direction={'column'} >
+
+
+
+
+ Edit
+
+
+
+ setValModalStatus(true)} justify={'center'} align={'center'} direction={'column'} >
+
+
+
+
+ Tutup Diskusi
+
+
+
+
+
+ setValModal(false)}
+ description="Apakah Anda yakin ingin menghapus diskusi ini?"
+ onYes={(val) => { onTrue(val) }} />
+
+
+ setValModalStatus(false)}
+ description="Apakah Anda yakin ingin mengubah status diskusi ini?"
+ onYes={(val) => { onTrueStatus(val) }} />
+
+ )
+}
\ No newline at end of file
diff --git a/src/module/division_new/_division_fitur/discussion/component/form_edit_discussion.tsx b/src/module/division_new/_division_fitur/discussion/component/form_edit_discussion.tsx
new file mode 100644
index 0000000..e1f95a4
--- /dev/null
+++ b/src/module/division_new/_division_fitur/discussion/component/form_edit_discussion.tsx
@@ -0,0 +1,53 @@
+'use client'
+import { WARNA } from "@/module/_global"
+import LayoutModal from "@/module/_global/layout/layout_modal"
+import { Box, Group, Avatar, Textarea, Button } from "@mantine/core"
+import { useRouter } from "next/navigation"
+import { useState } from "react"
+import toast from "react-hot-toast"
+
+export default function FormEditDiscussion() {
+ const [isValModal, setValModal] = useState(false)
+ const router = useRouter()
+
+ function onTrue(val: boolean) {
+ if (val) {
+ toast.success("Sukses! Data tersimpan");
+ router.back()
+
+ }
+ setValModal(false)
+ }
+
+ return (
+
+
+
+
+
+
+
+
+
+
+
+
+
+ setValModal(false)}
+ description="Apakah Anda yakin ingin mengubah data?"
+ onYes={(val) => { onTrue(val) }} />
+
+ )
+}
\ No newline at end of file
diff --git a/src/module/division_new/_division_fitur/discussion/component/list_discussion.tsx b/src/module/division_new/_division_fitur/discussion/component/list_discussion.tsx
new file mode 100644
index 0000000..1662481
--- /dev/null
+++ b/src/module/division_new/_division_fitur/discussion/component/list_discussion.tsx
@@ -0,0 +1,92 @@
+'use client'
+import { WARNA } from "@/module/_global";
+import { Avatar, Badge, Box, Flex, Group, Text } from "@mantine/core";
+import { useRouter } from "next/navigation";
+import { GrChatOption } from "react-icons/gr";
+
+const dataAnggota = [
+ {
+ id: 1,
+ name: "Iqbal Ramadan",
+ image: "https://i.pravatar.cc/1000?img=5",
+ status: true,
+ jumlah: 16,
+ desc: 'is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industrys standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. '
+ },
+ {
+ id: 2,
+ name: "Doni Setiawan",
+ image: "https://i.pravatar.cc/1000?img=10",
+ status: true,
+ jumlah: 26,
+ desc: 'It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged.'
+ },
+ {
+ id: 3,
+ name: "Rangga Agung",
+ image: "https://i.pravatar.cc/1000?img=51",
+ status: false,
+ jumlah: 11,
+ desc: 'It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.'
+ },
+ {
+ id: 4,
+ name: "Ramadan Sananta",
+ image: "https://i.pravatar.cc/1000?img=15",
+ status: false,
+ jumlah: 30,
+ desc: 'It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. '
+ },
+ {
+ id: 5,
+ name: "Imam Baroni",
+ image: "https://i.pravatar.cc/1000?img=22",
+ status: false,
+ jumlah: 29,
+ desc: 'Contrary to popular belief, Lorem Ipsum is not simply random text'
+ },
+];
+
+export default function ListDiscussion() {
+ const router = useRouter()
+ return (
+
+ {dataAnggota.map((v, i) => {
+ return (
+ <>
+ {
+ router.push(`/discussion/${v.id}`)
+ }}
+ >
+
+
+
+
+ {v.name}
+
+ {(v.status) ? "BUKA" : "TUTUP"}
+
+
+ 1 Jam
+
+ {v.desc}
+
+
+
+ Diskusikan
+
+
+ {v.jumlah} Komentar
+
+
+ >
+ );
+ })}
+
+ )
+}
\ No newline at end of file
diff --git a/src/module/division_new/_division_fitur/discussion/component/navbar_detail_discussion.tsx b/src/module/division_new/_division_fitur/discussion/component/navbar_detail_discussion.tsx
new file mode 100644
index 0000000..5453e85
--- /dev/null
+++ b/src/module/division_new/_division_fitur/discussion/component/navbar_detail_discussion.tsx
@@ -0,0 +1,23 @@
+'use client'
+import { LayoutDrawer, LayoutNavbarNew, WARNA } from "@/module/_global";
+import { ActionIcon } from "@mantine/core";
+import { useState } from "react";
+import { HiMenu } from "react-icons/hi";
+import DrawerDetailDiscussion from "./drawer_detail_discussion";
+
+export default function NavbarDetailDiscussion() {
+ const [openDrawer, setOpenDrawer] = useState(false)
+ return (
+ <>
+ setOpenDrawer(true)} bg={WARNA.bgIcon} size="lg" radius="lg" aria-label="Settings">
+
+ }
+ />
+ setOpenDrawer(false)}>
+ setOpenDrawer(false)} />
+
+ >
+ );
+}
\ No newline at end of file
diff --git a/src/module/division_new/_division_fitur/discussion/view/view_detail_discussion.tsx b/src/module/division_new/_division_fitur/discussion/view/view_detail_discussion.tsx
new file mode 100644
index 0000000..0f6dedf
--- /dev/null
+++ b/src/module/division_new/_division_fitur/discussion/view/view_detail_discussion.tsx
@@ -0,0 +1,106 @@
+import { Avatar, Badge, Box, Flex, Group, Text } from "@mantine/core";
+import NavbarDetailDiscussion from "../component/navbar_detail_discussion";
+import { WARNA } from "@/module/_global";
+import { GrChatOption } from "react-icons/gr";
+
+const dataAnggota = [
+ {
+ id: 1,
+ name: "Iqbal Ramadan",
+ image: "https://i.pravatar.cc/1000?img=5",
+ status: true,
+ jumlah: 16,
+ desc: 'is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industrys standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. '
+ },
+ {
+ id: 2,
+ name: "Doni Setiawan",
+ image: "https://i.pravatar.cc/1000?img=10",
+ status: true,
+ jumlah: 26,
+ desc: 'It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged.'
+ },
+ {
+ id: 3,
+ name: "Rangga Agung",
+ image: "https://i.pravatar.cc/1000?img=51",
+ status: false,
+ jumlah: 11,
+ desc: 'It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.'
+ },
+ {
+ id: 4,
+ name: "Ramadan Sananta",
+ image: "https://i.pravatar.cc/1000?img=15",
+ status: false,
+ jumlah: 30,
+ desc: 'It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. '
+ },
+ {
+ id: 5,
+ name: "Imam Baroni",
+ image: "https://i.pravatar.cc/1000?img=22",
+ status: false,
+ jumlah: 29,
+ desc: 'Contrary to popular belief, Lorem Ipsum is not simply random text'
+ },
+];
+
+export default function ViewDetailDiscussion() {
+
+ return (
+ <>
+
+
+
+
+
+
+
+ Fibra Marcell
+
+ BUKA
+
+
+ 1 Jam
+
+ It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged
+
+
+
+ 10 Komentar
+
+
+
+
+ {dataAnggota.map((v, i) => {
+ return (
+
+
+
+
+
+
+ {v.name}
+
+
+
+ 1 Jam
+
+ {v.desc}
+
+ );
+ })}
+
+
+
+ >
+ )
+}
\ No newline at end of file
diff --git a/src/module/division_new/_division_fitur/discussion/view/view_edit_discussion.tsx b/src/module/division_new/_division_fitur/discussion/view/view_edit_discussion.tsx
new file mode 100644
index 0000000..67563fa
--- /dev/null
+++ b/src/module/division_new/_division_fitur/discussion/view/view_edit_discussion.tsx
@@ -0,0 +1,11 @@
+import { LayoutNavbarNew } from "@/module/_global";
+import FormEditDiscussion from "../component/form_edit_discussion";
+
+export default function ViewEditDiscussion() {
+ return (
+ <>
+ >} />
+
+ >
+ )
+}
\ No newline at end of file
diff --git a/src/module/division_new/_division_fitur/discussion/view/view_list_discussion.tsx b/src/module/division_new/_division_fitur/discussion/view/view_list_discussion.tsx
index b4570dc..c1ea3b2 100644
--- a/src/module/division_new/_division_fitur/discussion/view/view_list_discussion.tsx
+++ b/src/module/division_new/_division_fitur/discussion/view/view_list_discussion.tsx
@@ -1,9 +1,11 @@
+import ListDiscussion from "../component/list_discussion";
import NavbarListDiscussion from "../component/navbar_list_discussion";
export default function ViewListDiscussion() {
return (
+
);
}
\ No newline at end of file
diff --git a/src/module/division_new/index.ts b/src/module/division_new/index.ts
index 41508fa..226f055 100644
--- a/src/module/division_new/index.ts
+++ b/src/module/division_new/index.ts
@@ -1,6 +1,8 @@
import ViewCreateDivisionCalender from "./_division_fitur/calender/view/view_create_division_calender";
import ViewDivisionCalender from "./_division_fitur/calender/view/view_division_calender";
import ViewCreateDiscussion from "./_division_fitur/discussion/view/view_create_discussion";
+import ViewDetailDiscussion from "./_division_fitur/discussion/view/view_detail_discussion";
+import ViewEditDiscussion from "./_division_fitur/discussion/view/view_edit_discussion";
import ViewListDiscussion from "./_division_fitur/discussion/view/view_list_discussion";
import ViewCreateTaskDivision from "./_division_fitur/task/view/view_create_division_task";
import ViewDetailDivisionTask from "./_division_fitur/task/view/view_detail_division_task";
@@ -26,4 +28,6 @@ export { ViewDivisionCalender }
export { ViewCreateDivisionCalender }
export { ViewCreateTaskDivision }
export { ViewListDiscussion }
-export { ViewCreateDiscussion }
\ No newline at end of file
+export { ViewCreateDiscussion }
+export { ViewDetailDiscussion }
+export { ViewEditDiscussion }
\ No newline at end of file