/* eslint-disable react-hooks/exhaustive-deps */ import { BadgeCustom, BaseBox, Grid, LoaderCustom, StackCustom, TextCustom, ViewWrapper, } from "@/components"; import AdminBackButtonAntTitle from "@/components/_ShareComponent/Admin/BackButtonAntTitle"; import { apiAdminEventListOfParticipants } from "@/service/api-admin/api-admin-event"; import dayjs, { Dayjs } from "dayjs"; import { useFocusEffect, useLocalSearchParams } from "expo-router"; import _ from "lodash"; import { View } from "moti"; import { useCallback, useState } from "react"; export default function AdminEventListOfParticipants() { const { id } = useLocalSearchParams(); const [listData, setListData] = useState(null); const [loadData, setLoadData] = useState(false); const [startDate, setStartDate] = useState(); useFocusEffect( useCallback(() => { onLoadData(); }, [id]) ); const onLoadData = async () => { try { setLoadData(true); const response = await apiAdminEventListOfParticipants({ id: id as string, }); console.log("[DATA]", JSON.stringify(response, null, 2)); if (response.success) { setListData(response.data); setStartDate(dayjs(response.data.Event.tanggal)); } } catch (error) { console.log("[ERROR]", error); } finally { setLoadData(false); } }; return ( <> } > {loadData ? ( ) : _.isEmpty(listData) ? ( Belum ada peserta ) : ( listData?.map((item: any, index: number) => ( {item?.User?.username} +{item?.User?.nomor} {startDate && startDate.subtract(1, "hour").diff(dayjs()) < 0 ? ( {item?.isPresent ? "Hadir" : "Tidak Hadir"} ) : ( - )} )) )} ); }