diff --git a/src/app/dev/event/detail/detail_sponsor/[id]/layout.tsx b/src/app/dev/event/detail/detail_sponsor/[id]/layout.tsx
new file mode 100644
index 00000000..6b363920
--- /dev/null
+++ b/src/app/dev/event/detail/detail_sponsor/[id]/layout.tsx
@@ -0,0 +1,12 @@
+import LayoutEvent_DetailSponsor from '@/app_modules/event/detail/detail_sponsor/layout';
+import React from 'react';
+
+function Layout({children} : {children: React.ReactNode}) {
+ return (
+ <>
+ {children}
+ >
+ );
+}
+
+export default Layout;
diff --git a/src/app/dev/event/detail/detail_sponsor/[id]/page.tsx b/src/app/dev/event/detail/detail_sponsor/[id]/page.tsx
new file mode 100644
index 00000000..1762e49e
--- /dev/null
+++ b/src/app/dev/event/detail/detail_sponsor/[id]/page.tsx
@@ -0,0 +1,12 @@
+import DetailSponsor_Event from '@/app_modules/event/detail/detail_sponsor';
+import React from 'react';
+
+function Page() {
+ return (
+ <>
+
+ >
+ );
+}
+
+export default Page;
diff --git a/src/app/dev/event/detail/peserta/[id]/layout.tsx b/src/app/dev/event/detail/peserta/[id]/layout.tsx
new file mode 100644
index 00000000..74bdbe58
--- /dev/null
+++ b/src/app/dev/event/detail/peserta/[id]/layout.tsx
@@ -0,0 +1,10 @@
+import { LayoutEvent_Peserta } from '@/app_modules/event';
+import React from 'react';
+
+export default async function Page({ children }: { children: React.ReactNode }) {
+ return (
+
+ {children}
+
+ )
+}
diff --git a/src/app/dev/event/detail/peserta/[id]/page.tsx b/src/app/dev/event/detail/peserta/[id]/page.tsx
new file mode 100644
index 00000000..c9fe9657
--- /dev/null
+++ b/src/app/dev/event/detail/peserta/[id]/page.tsx
@@ -0,0 +1,14 @@
+import Event_DaftarPeserta from '@/app_modules/event/detail/peserta';
+import { Event_countTotalPesertaById } from '@/app_modules/event/fun/count/count_total_peserta_by_id';
+import { event_getOneById } from '@/app_modules/event/fun/get/get_one_by_id';
+import React from 'react';
+
+export default async function Page() {
+ // const dataEvent = await event_getOneById(eventId);
+ // const totalPeserta = await Event_countTotalPesertaById(eventId);
+
+ return (
+
+ )
+
+}
diff --git a/src/app/dev/event/detail/sponsor/[id]/layout.tsx b/src/app/dev/event/detail/sponsor/[id]/layout.tsx
new file mode 100644
index 00000000..957a0527
--- /dev/null
+++ b/src/app/dev/event/detail/sponsor/[id]/layout.tsx
@@ -0,0 +1,14 @@
+import { LayoutEvent_Sponsor } from '@/app_modules/event';
+import React from 'react';
+
+function Layout({ children, }: {children: React.ReactNode}) {
+ return (
+ <>
+
+ {children}
+
+ >
+ );
+}
+
+export default Layout;
diff --git a/src/app/dev/event/detail/sponsor/[id]/page.tsx b/src/app/dev/event/detail/sponsor/[id]/page.tsx
new file mode 100644
index 00000000..d755e6bb
--- /dev/null
+++ b/src/app/dev/event/detail/sponsor/[id]/page.tsx
@@ -0,0 +1,11 @@
+import Event_DaftarSponsor from '@/app_modules/event/detail/sponsor';
+
+function Page() {
+ return (
+ <>
+
+ >
+ );
+}
+
+export default Page;
diff --git a/src/app/dev/event/detail/tambah_sponsor/layout.tsx b/src/app/dev/event/detail/tambah_sponsor/layout.tsx
new file mode 100644
index 00000000..24091745
--- /dev/null
+++ b/src/app/dev/event/detail/tambah_sponsor/layout.tsx
@@ -0,0 +1,12 @@
+import LayoutEvent_TambahSponsor from '@/app_modules/event/detail/tambah_sponsor/layout';
+import React from 'react';
+
+function Layout({children}: {children: React.ReactNode}) {
+ return (
+
+ {children}
+
+ );
+}
+
+export default Layout;
diff --git a/src/app/dev/event/detail/tambah_sponsor/page.tsx b/src/app/dev/event/detail/tambah_sponsor/page.tsx
new file mode 100644
index 00000000..f47e4cd3
--- /dev/null
+++ b/src/app/dev/event/detail/tambah_sponsor/page.tsx
@@ -0,0 +1,12 @@
+import Event_TambahSponsor from '@/app_modules/event/detail/tambah_sponsor';
+import React from 'react';
+
+function Page() {
+ return (
+ <>
+
+ >
+ );
+}
+
+export default Page;
diff --git a/src/app/lib/router_hipmi/router_event.ts b/src/app/lib/router_hipmi/router_event.ts
index fcbd0cd9..8dcd2de6 100644
--- a/src/app/lib/router_hipmi/router_event.ts
+++ b/src/app/lib/router_hipmi/router_event.ts
@@ -32,4 +32,19 @@ export const RouterEvent = {
detail_draft: "/dev/event/detail/draft/",
detail_reject: "/dev/event/detail/reject/",
detail_riwayat: "/dev/event/detail/riwayat/",
+
+ //peserta
+ daftar_peserta: ({ id }: { id: string }) =>
+ `/dev/event/detail/peserta/${id}`,
+
+ //sponsor
+ daftar_sponsor: ({ id }: { id: string }) =>
+ `/dev/event/detail/sponsor/${id}`,
+ tambah_sponsor: "/dev/event/detail/tambah_sponsor/",
+ detail_sponsor: ({ id }: { id: string }) =>
+ `/dev/event/detail/detail_sponsor/${id}`,
+
+
+
};
+
diff --git a/src/app_modules/event/component/detail/comp_box_daftar_peserta.tsx b/src/app_modules/event/component/detail/comp_box_daftar_peserta.tsx
new file mode 100644
index 00000000..df9cb765
--- /dev/null
+++ b/src/app_modules/event/component/detail/comp_box_daftar_peserta.tsx
@@ -0,0 +1,44 @@
+import { RouterEvent } from '@/app/lib/router_hipmi/router_event';
+import { AccentColor, MainColor } from '@/app_modules/_global/color';
+import { ActionIcon, Flex, Paper, Text, Loader } from '@mantine/core';
+import { IconUser } from '@tabler/icons-react';
+import { useParams, useRouter } from 'next/navigation';
+import React, { useState } from 'react';
+
+function Event_ComponentBoxDaftarPeserta({ eventId }: { eventId?: string }) {
+ const params = useParams<{ id: string }>()
+ const router = useRouter();
+ const [isLoading, setLoading] = useState(false);
+ return (
+ <>
+ {
+ setLoading(true);
+ router.push(RouterEvent.daftar_peserta({ id: params.id }), {
+ scroll: false,
+ });
+ // router.push(RouterInvestasi_OLD.detail_dokumen + investasiId, { scroll: false });
+ }}
+ >
+
+ Daftar Peserta
+
+ {isLoading ? (
+
+ ) : (
+
+ )}
+
+
+
+ >
+ );
+}
+export default Event_ComponentBoxDaftarPeserta;
diff --git a/src/app_modules/event/component/detail/comp_box_sponsor.tsx b/src/app_modules/event/component/detail/comp_box_sponsor.tsx
new file mode 100644
index 00000000..937a5f02
--- /dev/null
+++ b/src/app_modules/event/component/detail/comp_box_sponsor.tsx
@@ -0,0 +1,44 @@
+import { RouterEvent } from '@/app/lib/router_hipmi/router_event';
+import { AccentColor, MainColor } from '@/app_modules/_global/color';
+import { ActionIcon, Flex, Loader, Paper, Text } from '@mantine/core';
+import { useParams, useRouter } from 'next/navigation';
+import { useState } from 'react';
+import { TfiCup } from "react-icons/tfi";
+
+function Event_ComponentBoxDaftarSponsor() {
+ const router = useRouter();
+ const [isLoading, setLoading] = useState(false);
+ const params = useParams<{ id: string }>();
+ return (
+ <>
+ {
+ setLoading(true);
+ router.push(RouterEvent.daftar_sponsor({ id: params.id }), {
+ scroll: false,
+ });
+ // router.push(RouterInvestasi_OLD.detail_dokumen + investasiId, { scroll: false });
+ }}
+ >
+
+ Daftar Sponsor
+
+ {isLoading ? (
+
+ ) : (
+
+ )}
+
+
+
+ >
+ );
+}
+export default Event_ComponentBoxDaftarSponsor;
diff --git a/src/app_modules/event/component/detail/create_sponsor.tsx b/src/app_modules/event/component/detail/create_sponsor.tsx
new file mode 100644
index 00000000..13b6b86c
--- /dev/null
+++ b/src/app_modules/event/component/detail/create_sponsor.tsx
@@ -0,0 +1,108 @@
+'use client';
+import { MainColor } from '@/app_modules/_global/color';
+import { ComponentGlobal_BoxInformation, ComponentGlobal_BoxUploadImage } from '@/app_modules/_global/component';
+import { Investasi_ComponentButtonCreateNewInvestasi } from '@/app_modules/investasi/_component';
+import { Box, Stack, Loader, AspectRatio, Image, Button, TextInput, Group, Title } from '@mantine/core';
+import { IconCamera, IconPhoto } from '@tabler/icons-react';
+import React, { useState } from 'react';
+
+function Event_CreateSponsor() {
+ const [img, setImg] = useState(null);
+ const [isLoadingImg, setIsLoadingImg] = useState(false);
+ return (
+ <>
+
+
+
+
+
+
+ {isLoadingImg ? (
+
+
+
+ ) : img ? (
+
+
+
+
+ ) : (
+
+
+
+ )}
+
+
+ } color='yellow' c={"black"} bg={MainColor.yellow}>Upload Gambar
+
+
+
+ Sosial Media
+
+
+
+
+
+
+ >
+ );
+}
+
+export default Event_CreateSponsor;
diff --git a/src/app_modules/event/component/detail/detail_main.tsx b/src/app_modules/event/component/detail/detail_main.tsx
index 32183f32..e0f53bd7 100644
--- a/src/app_modules/event/component/detail/detail_main.tsx
+++ b/src/app_modules/event/component/detail/detail_main.tsx
@@ -4,7 +4,7 @@ import {
ComponentGlobal_AvatarAndUsername,
ComponentGlobal_CardStyles,
} from "@/app_modules/_global/component";
-import { Center, Grid, Skeleton, Stack, Text, Title } from "@mantine/core";
+import { Center, Grid, SimpleGrid, Skeleton, Stack, Text, Title } from "@mantine/core";
import { MODEL_EVENT } from "../../model/interface";
import { useShallowEffect } from "@mantine/hooks";
import { useState } from "react";
@@ -13,6 +13,8 @@ import { Event_ComponentSkeletonDetail } from "../skeleton/comp_skeleton_detail"
import moment from "moment";
import "moment/locale/id";
import { MainColor } from "@/app_modules/_global/color";
+import Event_ComponentBoxDaftarPeserta from "./comp_box_daftar_peserta";
+import Event_ComponentBoxDaftarSponsor from "./comp_box_sponsor";
export default function ComponentEvent_DetailMainData({
eventId,
@@ -105,6 +107,16 @@ export default function ComponentEvent_DetailMainData({
Deskripsi
{data ? data?.deskripsi : null}
+
+
+
+
diff --git a/src/app_modules/event/component/detail/list_peserta_new.tsx b/src/app_modules/event/component/detail/list_peserta_new.tsx
new file mode 100644
index 00000000..305d358a
--- /dev/null
+++ b/src/app_modules/event/component/detail/list_peserta_new.tsx
@@ -0,0 +1,43 @@
+import { AccentColor, MainColor } from '@/app_modules/_global/color';
+import { Avatar, Badge, Box, Card, Flex, Group, Stack, Text } from '@mantine/core';
+
+function ComponentEvent_ListPesertaNew({ backgroundColor, border, marginBottom, height, color }: {
+ backgroundColor?: string;
+ border?: string;
+ marginBottom?: string | number;
+ height?: string | number;
+ color?: string;
+}) {
+ return (
+ <>
+
+
+
+
+
+
+ Nico Arya Putra Laksana
+
+ HADIR
+
+
+
+ >
+ );
+}
+
+export default ComponentEvent_ListPesertaNew;
diff --git a/src/app_modules/event/component/detail/list_sponsor.tsx b/src/app_modules/event/component/detail/list_sponsor.tsx
new file mode 100644
index 00000000..f16a4902
--- /dev/null
+++ b/src/app_modules/event/component/detail/list_sponsor.tsx
@@ -0,0 +1,51 @@
+'use client'
+import { RouterEvent } from '@/app/lib/router_hipmi/router_event';
+import { AccentColor, MainColor } from '@/app_modules/_global/color';
+import { Avatar, Box, Card, Flex, Group, Image, Text } from '@mantine/core';
+import { useParams, useRouter } from 'next/navigation';
+
+function ComponentEvent_ListSponsor({ backgroundColor, border, marginBottom, height, color, }:
+ {
+ backgroundColor?: string;
+ border?: string;
+ marginBottom?: string | number;
+ height?: string | number;
+ color?: string;
+ })
+ {
+ const router = useRouter();
+ const params = useParams<{ id: string }>();
+ return (
+ <>
+
+ router.push(RouterEvent.detail_sponsor({id: params.id}))}
+ >
+
+
+
+
+
+ INACO
+
+ Rp. 100.000
+
+
+
+ >
+ );
+}
+
+export default ComponentEvent_ListSponsor;
diff --git a/src/app_modules/event/component/skeleton/comp_skeleton_detail.tsx b/src/app_modules/event/component/skeleton/comp_skeleton_detail.tsx
index 2b30756c..28ee1c46 100644
--- a/src/app_modules/event/component/skeleton/comp_skeleton_detail.tsx
+++ b/src/app_modules/event/component/skeleton/comp_skeleton_detail.tsx
@@ -1,6 +1,6 @@
import { ComponentGlobal_CardStyles } from "@/app_modules/_global/component";
import CustomSkeleton from "@/app_modules/components/CustomSkeleton";
-import { Center, Grid, Stack } from "@mantine/core";
+import { Center, Grid, SimpleGrid, Stack } from "@mantine/core";
export function Event_ComponentSkeletonDetail() {
return (
@@ -30,6 +30,16 @@ export function Event_ComponentSkeletonDetail() {
+
+
+
+
>
diff --git a/src/app_modules/event/detail/detail_sponsor/index.tsx b/src/app_modules/event/detail/detail_sponsor/index.tsx
new file mode 100644
index 00000000..a78d6fa6
--- /dev/null
+++ b/src/app_modules/event/detail/detail_sponsor/index.tsx
@@ -0,0 +1,55 @@
+'use client';
+import { AccentColor, MainColor } from '@/app_modules/_global/color';
+import { ComponentGlobal_CardStyles } from '@/app_modules/_global/component';
+import { Box, Flex, Image, Stack, Text, Title } from '@mantine/core';
+import { IconBrandWhatsapp } from '@tabler/icons-react';
+import React from 'react';
+import { TfiFacebook } from 'react-icons/tfi';
+
+function DetailSponsor_Event() {
+ return (
+ <>
+
+
+ Nominal Sponsor:
+
+ Rp. 100.000
+
+
+
+
+
+
+
+ INACO
+
+
+ Sosial Media:
+
+
+ InacoJellyku
+
+
+
+ +6289647038426
+
+
+
+
+
+
+ >
+ );
+}
+
+export default DetailSponsor_Event;
diff --git a/src/app_modules/event/detail/detail_sponsor/layout.tsx b/src/app_modules/event/detail/detail_sponsor/layout.tsx
new file mode 100644
index 00000000..52cd6fbe
--- /dev/null
+++ b/src/app_modules/event/detail/detail_sponsor/layout.tsx
@@ -0,0 +1,39 @@
+'use client';
+import { UIGlobal_Drawer, UIGlobal_LayoutHeaderTamplate, UIGlobal_LayoutTamplate } from '@/app_modules/_global/ui';
+import { ActionIcon } from '@mantine/core';
+import { IconDotsVertical, IconEdit, IconTrash } from '@tabler/icons-react';
+import React, { useState } from 'react';
+
+function LayoutEvent_DetailSponsor({ children }: { children: React.ReactNode }) {
+ const [openDrawer, setOpenDrawer] = useState(false);
+ return (
+ <>
+ setOpenDrawer(true)}>
+
+ } />}>
+ {children}
+
+ setOpenDrawer(false)}
+ component={[
+ {
+ id: 1,
+ name: 'Edit Sponsor',
+ icon: ,
+ // path: RouterEvent.tambah_sponsor,
+ },
+ {
+ id: 2,
+ name: 'Hapus Sponsor',
+ icon:
+ }
+ ]}
+ />
+ >
+ );
+}
+
+export default LayoutEvent_DetailSponsor;
diff --git a/src/app_modules/event/detail/main_detail/index.tsx b/src/app_modules/event/detail/main_detail/index.tsx
index 70768a65..48060303 100644
--- a/src/app_modules/event/detail/main_detail/index.tsx
+++ b/src/app_modules/event/detail/main_detail/index.tsx
@@ -79,11 +79,11 @@ export default function Event_DetailMain({
)}
-
+ /> */}
>
);
diff --git a/src/app_modules/event/detail/peserta/index.tsx b/src/app_modules/event/detail/peserta/index.tsx
new file mode 100644
index 00000000..2ddd15e8
--- /dev/null
+++ b/src/app_modules/event/detail/peserta/index.tsx
@@ -0,0 +1,25 @@
+"use client"
+
+import { Stack } from '@mantine/core';
+import ComponentEvent_ListPeserta from '../../component/detail/list_peserta';
+import { MODEL_EVENT_PESERTA } from '../../model/interface';
+import { useParams } from 'next/navigation';
+import ComponentEvent_ListPesertaNew from '../../component/detail/list_peserta_new';
+
+// function Event_DaftarPeserta({ totalPeserta, eventId, isNewPeserta }: {
+// totalPeserta?: number;
+// eventId?: string;
+// isNewPeserta?: boolean | null;
+// }) {
+ function Event_DaftarPeserta() {
+ return (
+ <>
+
+
+ {/* */}
+
+ >
+ );
+}
+
+export default Event_DaftarPeserta;
diff --git a/src/app_modules/event/detail/peserta/layout.tsx b/src/app_modules/event/detail/peserta/layout.tsx
new file mode 100644
index 00000000..47898ed0
--- /dev/null
+++ b/src/app_modules/event/detail/peserta/layout.tsx
@@ -0,0 +1,14 @@
+import { UIGlobal_LayoutHeaderTamplate, UIGlobal_LayoutTamplate } from '@/app_modules/_global/ui';
+import React from 'react';
+
+function LayoutEvent_Peserta({children}: {children: React.ReactNode}) {
+ return (
+ <>
+ }>
+ {children}
+
+ >
+ );
+}
+
+export default LayoutEvent_Peserta;
diff --git a/src/app_modules/event/detail/sponsor/index.tsx b/src/app_modules/event/detail/sponsor/index.tsx
new file mode 100644
index 00000000..07dc3767
--- /dev/null
+++ b/src/app_modules/event/detail/sponsor/index.tsx
@@ -0,0 +1,12 @@
+'use client';
+import ComponentEvent_ListSponsor from '../../component/detail/list_sponsor';
+
+function Event_DaftarSponsor() {
+ return (
+ <>
+
+ >
+ );
+}
+
+export default Event_DaftarSponsor;
diff --git a/src/app_modules/event/detail/sponsor/layout.tsx b/src/app_modules/event/detail/sponsor/layout.tsx
new file mode 100644
index 00000000..76c55f1d
--- /dev/null
+++ b/src/app_modules/event/detail/sponsor/layout.tsx
@@ -0,0 +1,44 @@
+'use client';
+import { RouterEvent } from '@/app/lib/router_hipmi/router_event';
+import { UIGlobal_Drawer, UIGlobal_LayoutHeaderTamplate, UIGlobal_LayoutTamplate } from '@/app_modules/_global/ui';
+import { ActionIcon } from '@mantine/core';
+import { IconDotsVertical } from '@tabler/icons-react';
+import React, { useState } from 'react';
+import { TfiCup } from "react-icons/tfi";
+
+function LayoutEvent_Sponsor({ children}: { children: React.ReactNode;}) {
+ const [openDrawer, setOpenDrawer] = useState(false);
+ return (
+ <>
+ setOpenDrawer(true)}
+ >
+
+
+ }
+ />}>
+ {children}
+
+ setOpenDrawer(false)}
+ component={[
+ {
+ id: 1,
+ name: 'Tambah Sponsor',
+ icon: ,
+ path: RouterEvent.tambah_sponsor,
+ },
+ ]}
+
+ />
+ >
+ );
+}
+
+export default LayoutEvent_Sponsor;
diff --git a/src/app_modules/event/detail/tambah_sponsor/index.tsx b/src/app_modules/event/detail/tambah_sponsor/index.tsx
new file mode 100644
index 00000000..c415942e
--- /dev/null
+++ b/src/app_modules/event/detail/tambah_sponsor/index.tsx
@@ -0,0 +1,12 @@
+import React from 'react';
+import CreateSponsor from '../../component/detail/create_sponsor';
+
+function Event_TambahSponsor() {
+ return (
+ <>
+
+ >
+ );
+}
+
+export default Event_TambahSponsor;
diff --git a/src/app_modules/event/detail/tambah_sponsor/layout.tsx b/src/app_modules/event/detail/tambah_sponsor/layout.tsx
new file mode 100644
index 00000000..464bae65
--- /dev/null
+++ b/src/app_modules/event/detail/tambah_sponsor/layout.tsx
@@ -0,0 +1,17 @@
+'use client';
+import { UIGlobal_LayoutHeaderTamplate, UIGlobal_LayoutTamplate } from '@/app_modules/_global/ui';
+import React from 'react';
+
+function LayoutEvent_TambahSponsor({ children }: { children: React.ReactNode }) {
+ return (
+ <>
+ }
+ >
+ {children}
+
+ >
+ );
+}
+
+export default LayoutEvent_TambahSponsor;
diff --git a/src/app_modules/event/index.ts b/src/app_modules/event/index.ts
index 1465e41a..d841ee6b 100644
--- a/src/app_modules/event/index.ts
+++ b/src/app_modules/event/index.ts
@@ -22,6 +22,8 @@ import LayoutEvent_DetailKontribusi from "./detail/kontribusi/layout";
import Event_Riwayat from "./main/riwayat";
import Event_DetailRiwayat from "./detail/riwayat";
import LayoutEvent_DetailRiwayat from "./detail/riwayat/layout";
+import LayoutEvent_Peserta from "./detail/peserta/layout";
+import LayoutEvent_Sponsor from "./detail/sponsor/layout";
export {
Event_SplashScreen,
@@ -47,5 +49,7 @@ export {
LayoutEvent_DetailKontribusi,
Event_Riwayat ,
Event_DetailRiwayat ,
- LayoutEvent_DetailRiwayat ,
+ LayoutEvent_DetailRiwayat,
+ LayoutEvent_Peserta,
+ LayoutEvent_Sponsor
};