"use client" import { LayoutNavbarNew, WARNA } from '@/module/_global'; import { Box, Center, Flex, Grid, Group, Skeleton, Text, TextInput } from '@mantine/core'; import { useParams, useRouter } from 'next/navigation'; import React, { useState } from 'react'; import { HiMagnifyingGlass } from 'react-icons/hi2'; import { IDataCalender, IHistoryCalender } from '../lib/type_calender'; import { funGetAllCalender, funGetHostory } from '../lib/api_calender'; import { useShallowEffect } from '@mantine/hooks'; import moment from 'moment'; import "moment/locale/id"; import _ from 'lodash'; export default function HistoryDivisionCalender() { const [isData, setData] = useState([]) const router = useRouter() const param = useParams<{ id: string, detail: string }>() const [searchQuery, setSearchQuery] = useState('') const [loading, setLoading] = useState(true) const getData = async () => { try { setLoading(true) const response = await funGetHostory('?division=' + param.id + '&search=' + searchQuery) setData(response.data) setLoading(false) } catch (error) { console.error(error) } finally { setLoading(false) } } useShallowEffect(() => { getData() }, [searchQuery]) return ( } placeholder="Pencarian" value={searchQuery} onChange={(e) => setSearchQuery(e.target.value)} /> {loading ? Array(6) .fill(null) .map((_, i) => ( {[...Array(1)].map((_, x) => ( ))} )) : _.isEmpty(isData) ? Tidak ada history : isData.map((v, i) => { return ( {moment(v.dateStart).format('D MMM')} {moment(v.dateStart).format('dddd')} {v.data.map((d, x) => { return ( router.push(`/division/${param.id}/calender/${d.id}`)} > {d.title} {d.timeStart} | {d.timeEnd} ) })} ) }) } ); }