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/create/page.tsx b/src/app/(application)/(detail-division)/discussion/create/page.tsx
new file mode 100644
index 0000000..adbe0c1
--- /dev/null
+++ b/src/app/(application)/(detail-division)/discussion/create/page.tsx
@@ -0,0 +1,9 @@
+import { ViewCreateDiscussion } 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/app/(application)/(detail-division)/discussion/page.tsx b/src/app/(application)/(detail-division)/discussion/page.tsx
index 69da2f2..a7b8c80 100644
--- a/src/app/(application)/(detail-division)/discussion/page.tsx
+++ b/src/app/(application)/(detail-division)/discussion/page.tsx
@@ -1,10 +1,9 @@
+import { ViewListDiscussion } from '@/module/division_new';
import React from 'react';
function Page() {
return (
-
- Page
-
+
);
}
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/drawer_list_discussion.tsx b/src/module/division_new/_division_fitur/discussion/component/drawer_list_discussion.tsx
new file mode 100644
index 0000000..87c6d5f
--- /dev/null
+++ b/src/module/division_new/_division_fitur/discussion/component/drawer_list_discussion.tsx
@@ -0,0 +1,24 @@
+import { WARNA } from "@/module/_global";
+import { Box, Stack, SimpleGrid, Flex, Text } from "@mantine/core";
+import { IoAddCircle } from "react-icons/io5";
+
+export default function DrawerListDiscussion() {
+ return (
+
+
+
+ window.location.href = "/discussion/create"} justify={'center'} align={'center'} direction={'column'} >
+
+
+
+
+ Tambah Diskusi
+
+
+
+
+
+ )
+}
\ No newline at end of file
diff --git a/src/module/division_new/_division_fitur/discussion/component/form_create_discussion.tsx b/src/module/division_new/_division_fitur/discussion/component/form_create_discussion.tsx
new file mode 100644
index 0000000..b25b407
--- /dev/null
+++ b/src/module/division_new/_division_fitur/discussion/component/form_create_discussion.tsx
@@ -0,0 +1,50 @@
+'use client'
+import { WARNA } from "@/module/_global";
+import LayoutModal from "@/module/_global/layout/layout_modal";
+import { Avatar, Box, Button, Group, Text, Textarea } from "@mantine/core";
+import { useState } from "react";
+import toast from "react-hot-toast";
+
+export default function FormCreateDiscussion() {
+ const [isValModal, setValModal] = useState(false)
+
+ function onTrue(val: boolean) {
+ if (val) {
+ toast.success("Sukses! Data tersimpan");
+ }
+ setValModal(false)
+ }
+
+ return (
+
+
+
+
+
+
+
+
+
+
+
+
+
+ setValModal(false)}
+ description="Apakah Anda yakin ingin
+ menambah data?"
+ onYes={(val) => { onTrue(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/component/navbar_list_discussion.tsx b/src/module/division_new/_division_fitur/discussion/component/navbar_list_discussion.tsx
new file mode 100644
index 0000000..f4dadcd
--- /dev/null
+++ b/src/module/division_new/_division_fitur/discussion/component/navbar_list_discussion.tsx
@@ -0,0 +1,24 @@
+'use client'
+import { LayoutNavbarNew, WARNA, LayoutDrawer } from "@/module/_global";
+import { ActionIcon } from "@mantine/core";
+import { HiMenu } from "react-icons/hi";
+import { useState } from "react";
+import DrawerListDiscussion from "./drawer_list_discussion";
+
+export default function NavbarListDiscussion() {
+ const [openDrawer, setOpenDrawer] = useState(false)
+ return (
+ <>
+ setOpenDrawer(true)} bg={WARNA.bgIcon} size="lg" radius="lg" aria-label="Settings">
+
+
+ }
+ />
+ setOpenDrawer(false)}>
+
+
+ >
+ );
+}
\ No newline at end of file
diff --git a/src/module/division_new/_division_fitur/discussion/view/view_create_discussion.tsx b/src/module/division_new/_division_fitur/discussion/view/view_create_discussion.tsx
new file mode 100644
index 0000000..66a67cf
--- /dev/null
+++ b/src/module/division_new/_division_fitur/discussion/view/view_create_discussion.tsx
@@ -0,0 +1,11 @@
+import { LayoutNavbarNew } from "@/module/_global";
+import FormCreateDiscussion from "../component/form_create_discussion";
+
+export default function ViewCreateDiscussion() {
+ return (
+ <>
+ >} />
+
+ >
+ )
+}
\ 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
new file mode 100644
index 0000000..c1ea3b2
--- /dev/null
+++ b/src/module/division_new/_division_fitur/discussion/view/view_list_discussion.tsx
@@ -0,0 +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/components/detail_division/detail_division.tsx b/src/module/division_new/components/detail_division/detail_division.tsx
index e6b29d1..12eec49 100644
--- a/src/module/division_new/components/detail_division/detail_division.tsx
+++ b/src/module/division_new/components/detail_division/detail_division.tsx
@@ -3,6 +3,7 @@ import React from 'react';
import CarouselDivision from './carousel_division';
import { LayoutNavbarNew } from '@/module/_global';
import FeatureDetailDivision from './feature_detail_division';
+import ListDiscussionOnDetailDivision from './list_discussion';
export default function DetailDivision() {
return (
@@ -12,6 +13,7 @@ export default function DetailDivision() {
+
diff --git a/src/module/division_new/components/detail_division/list_discussion.tsx b/src/module/division_new/components/detail_division/list_discussion.tsx
new file mode 100644
index 0000000..1b5969e
--- /dev/null
+++ b/src/module/division_new/components/detail_division/list_discussion.tsx
@@ -0,0 +1,76 @@
+import { WARNA } from "@/module/_global"
+import { Box, Group, Text } from "@mantine/core"
+import { CiUser, CiClock2 } from "react-icons/ci"
+import { GoDiscussionClosed } from "react-icons/go"
+
+
+const dataDiskusi = [
+ {
+ id: 1,
+ judul: 'Mengatasi Limbah Makanan ',
+ user: 'Fibra Marcell',
+ date: '21 Juni 2024'
+ },
+ {
+ id: 2,
+ judul: 'Pentingnya Menjaga Kelestarian Hutan ',
+ user: 'Bayu Tegar',
+ date: '15 Juni 2024'
+ },
+ {
+ id: 3,
+ judul: 'Mengatasi Limbah Industri ',
+ user: 'Nian Putri',
+ date: '11 Mei 2024'
+ },
+ {
+ id: 4,
+ judul: 'Manfaat Sampah Plastik',
+ user: 'Budi Prasetyo',
+ date: '10 Mei 2024'
+ },
+]
+
+export default function ListDiscussionOnDetailDivision() {
+ return (
+ <>
+
+ Diskusi Terbaru
+
+ {
+ dataDiskusi.map((v, i) => {
+ return (
+
+
+
+
+ {v.judul}
+
+
+
+
+
+ {v.user}
+
+
+
+ {v.date}
+
+
+
+ )
+ })
+ }
+
+
+ >
+ )
+}
\ No newline at end of file
diff --git a/src/module/division_new/index.ts b/src/module/division_new/index.ts
index 9681368..226f055 100644
--- a/src/module/division_new/index.ts
+++ b/src/module/division_new/index.ts
@@ -1,5 +1,9 @@
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";
import ViewDivisionTask from "./_division_fitur/task/view/view_division_task";
@@ -22,4 +26,8 @@ export { ViewDetailDivisionTask }
export { ViewUpdateProgressDivisionTask }
export { ViewDivisionCalender }
export { ViewCreateDivisionCalender }
-export { ViewCreateTaskDivision }
\ No newline at end of file
+export { ViewCreateTaskDivision }
+export { ViewListDiscussion }
+export { ViewCreateDiscussion }
+export { ViewDetailDiscussion }
+export { ViewEditDiscussion }
\ No newline at end of file
diff --git a/src/module/home/components/chart_document.tsx b/src/module/home/components/chart_document.tsx
new file mode 100644
index 0000000..19c169c
--- /dev/null
+++ b/src/module/home/components/chart_document.tsx
@@ -0,0 +1,113 @@
+'use client'
+import { WARNA } from "@/module/_global";
+import { Box } from "@mantine/core";
+import { useShallowEffect } from "@mantine/hooks";
+import { EChartsOption } from "echarts";
+import EChartsReact from "echarts-for-react";
+import { useState } from "react";
+
+export default function ChartDocumentHome() {
+ const [options, setOptions] = useState({});
+
+ useShallowEffect(() => {
+ loadData()
+ }, [])
+
+ const loadData = () => {
+ const option: EChartsOption = {
+ title: {
+ text: "DOKUMEN",
+ top: '2%',
+ left: 'center',
+ textStyle: {
+ color: WARNA.biruTua
+ }
+ },
+ tooltip: {
+ trigger: 'axis',
+ axisPointer: {
+ type: 'shadow'
+ }
+ },
+ grid: {
+ left: '3%',
+ right: '4%',
+ bottom: '3%',
+ containLabel: true
+ },
+ xAxis: [
+ {
+ type: 'category',
+ data: ['File', 'Folder', 'Documen'],
+ axisLabel: {
+ fontSize: 14
+ },
+ axisTick: {
+ alignWithLabel: true
+ },
+ axisLine: {
+ show: true,
+ },
+ }
+ ],
+ yAxis: [
+ {
+ type: 'value',
+ show: true,
+ splitLine: {
+ lineStyle: {
+ color: "gray",
+ opacity: 0.1
+ }
+ },
+ }
+ ],
+ series: [
+ {
+ name: 'Direct',
+ type: 'bar',
+ barWidth: '70%',
+ data: [
+ {
+ value: 78,
+ name: 'Confidence',
+ itemStyle: {
+ color: "#F3C96B"
+ }
+ },
+ {
+ value: 35,
+ name: 'Supportive',
+ itemStyle: {
+ color: "#9EC97F"
+ }
+ },
+ {
+ value: 58,
+ name: 'Positive',
+ itemStyle: {
+ color: "#5971C0"
+ }
+ },
+
+ ],
+ }
+ ]
+ };
+ setOptions(option);
+ }
+
+ return (
+
+
+
+
+
+
+
+ );
+}
\ No newline at end of file
diff --git a/src/module/home/components/chart_progress_tugas.tsx b/src/module/home/components/chart_progress_tugas.tsx
new file mode 100644
index 0000000..dbbdc6c
--- /dev/null
+++ b/src/module/home/components/chart_progress_tugas.tsx
@@ -0,0 +1,77 @@
+'use client'
+import { WARNA } from "@/module/_global";
+import { Box, Text } from "@mantine/core";
+import { useShallowEffect } from "@mantine/hooks";
+import { EChartsOption } from "echarts";
+import EChartsReact from "echarts-for-react";
+import { useState } from "react";
+
+export default function ChartProgressHome() {
+ const [options, setOptions] = useState({});
+
+ useShallowEffect(() => {
+ loadData()
+ }, [])
+
+ const loadData = () => {
+ const option: EChartsOption = {
+ title: {
+ text: "PROGRES TUGAS",
+ top: '2%',
+ left: 'center',
+ textStyle: {
+ color: WARNA.biruTua
+ }
+ },
+ legend: {
+ top: 'bottom',
+ },
+ series: [
+ {
+ name: 'Progres Tugas',
+ type: 'pie',
+ radius: '70%',
+ avoidLabelOverlap: false,
+ itemStyle: {
+ borderRadius: 2,
+ borderWidth: 2
+ },
+ label: {
+ position: "inner",
+ formatter: (a) => {
+ return `${a.value + "%"}`;
+ },
+ },
+ data: [
+ { value: 25, name: 'Dikerjakan' },
+ { value: 35, name: 'Selesai dikerjakan' },
+ { value: 10, name: 'Segera dikerjakan' },
+ { value: 30, name: 'Batal dikerjakan' },
+ ],
+ emphasis: {
+ itemStyle: {
+ shadowBlur: 10,
+ shadowOffsetX: 0,
+ shadowColor: 'rgba(0, 0, 0, 0.5)'
+ }
+ }
+ }
+ ]
+ }
+ setOptions(option);
+ }
+
+ return (
+
+
+
+
+
+
+
+ )
+}
\ No newline at end of file
diff --git a/src/module/home/components/list_discussion.tsx b/src/module/home/components/list_discussion.tsx
new file mode 100644
index 0000000..b6b5d32
--- /dev/null
+++ b/src/module/home/components/list_discussion.tsx
@@ -0,0 +1,73 @@
+import { WARNA } from "@/module/_global";
+import { Box, Group, Text } from "@mantine/core";
+import { GoDiscussionClosed } from "react-icons/go";
+import { CiClock2, CiUser } from "react-icons/ci";
+
+const dataDiskusi = [
+ {
+ id: 1,
+ judul: 'Mengatasi Limbah Makanan ',
+ user: 'Fibra Marcell',
+ date: '21 Juni 2024'
+ },
+ {
+ id: 2,
+ judul: 'Pentingnya Menjaga Kelestarian Hutan ',
+ user: 'Bayu Tegar',
+ date: '15 Juni 2024'
+ },
+ {
+ id: 3,
+ judul: 'Mengatasi Limbah Industri ',
+ user: 'Nian Putri',
+ date: '11 Mei 2024'
+ },
+ {
+ id: 4,
+ judul: 'Manfaat Sampah Plastik',
+ user: 'Budi Prasetyo',
+ date: '10 Mei 2024'
+ },
+]
+
+export default function ListDiscussion() {
+ return (
+
+ Diskusi
+
+ {
+ dataDiskusi.map((v, i) => {
+ return (
+
+
+
+
+ {v.judul}
+
+
+
+
+
+ {v.user}
+
+
+
+ {v.date}
+
+
+
+ )
+ })
+ }
+
+
+ )
+}
\ No newline at end of file
diff --git a/src/module/home/components/list_event.tsx b/src/module/home/components/list_event.tsx
index 3c86a09..59ca5f6 100644
--- a/src/module/home/components/list_event.tsx
+++ b/src/module/home/components/list_event.tsx
@@ -1,72 +1,66 @@
-import { WARNA } from "@/module/_global";
-import { Box, Group, Text } from "@mantine/core";
-import { GoDiscussionClosed } from "react-icons/go";
-import { CiClock2, CiUser } from "react-icons/ci";
+import { WARNA } from "@/module/_global"
+import { Box, Divider, Group, Text } from "@mantine/core"
-const dataDiskusi = [
+const dataEvent = [
{
id: 1,
- judul: 'Mengatasi Limbah Makanan ',
- user: 'Fibra Marcell',
- date: '21 Juni 2024'
+ title: 'Pembahasan Mengenai Darmasaba',
+ jamAwal: "10.00",
+ jamAkhir: "11.00",
+ dibuat: "Jhon"
},
{
id: 2,
- judul: 'Pentingnya Menjaga Kelestarian Hutan ',
- user: 'Bayu Tegar',
- date: '15 Juni 2024'
+ title: 'Pembahasan Mengenai Darmasaba',
+ jamAwal: "11.00",
+ jamAkhir: "12.00",
+ dibuat: "Jhon"
},
{
id: 3,
- judul: 'Mengatasi Limbah Industri ',
- user: 'Nian Putri',
- date: '11 Mei 2024'
+ title: 'Pembahasan Mengenai Darmasaba',
+ jamAwal: "13.00",
+ jamAkhir: "14.00",
+ dibuat: "Jhon"
},
{
id: 4,
- judul: 'Manfaat Sampah Plastik',
- user: 'Budi Prasetyo',
- date: '10 Mei 2024'
+ title: 'Pembahasan Mengenai Darmasaba',
+ jamAwal: "15.00",
+ jamAkhir: "16.00",
+ dibuat: "Jhon"
},
]
-export default function ListEvent() {
+export default function ListEventHome() {
return (
- Diskusi
+ Event Hari Ini
- {
- dataDiskusi.map((v, i) => {
- return (
-
+ {dataEvent.map((event, index) => {
+ const bgColor = ['#D8D8F1', '#FED6C5'][index % 2]
+ const colorDivider = ['#535FCA', '#A7A7A7'][index % 2]
+ return (
+
+
-
-
- {v.judul}
+
+
+ {event.jamAwal} - {event.jamAkhir}
+ {event.title}
+ Dibuat oleh : {event.dibuat}
-
-
-
- {v.user}
-
-
-
- {v.date}
-
-
- )
- })
- }
+
+ )
+ })}
)
diff --git a/src/module/home/view/view_home.tsx b/src/module/home/view/view_home.tsx
index 1741590..f92273d 100644
--- a/src/module/home/view/view_home.tsx
+++ b/src/module/home/view/view_home.tsx
@@ -6,7 +6,10 @@ import Features from '../components/features';
import IconNavbar from '../components/ui/icon_navbar';
import ListProjects from '../components/list_project';
import ListDivisi from '../components/list_divisi';
-import ListEvent from '../components/list_event';
+import ListDiscussion from '../components/list_discussion';
+import ListEventHome from '../components/list_event';
+import ChartProgressHome from '../components/chart_progress_tugas';
+import ChartDocumentHome from '../components/chart_document';
export default function ViewHome() {
@@ -24,7 +27,10 @@ export default function ViewHome() {
-
+
+
+
+