"use client"; import { RouterProfile } from "@/app/lib/router_hipmi/router_katalog"; import { ComponentGlobal_LoaderAvatar } from "@/app_modules/_global/component"; import ComponentGlobal_IsEmptyData from "@/app_modules/_global/component/is_empty_data"; import ComponentGlobal_Loader from "@/app_modules/_global/component/loader"; import { MODEL_USER } from "@/app_modules/home/model/interface"; import { ActionIcon, Box, Center, Grid, Group, Loader, Stack, Text, TextInput, } from "@mantine/core"; import { IconChevronRight, IconSearch } from "@tabler/icons-react"; import _ from "lodash"; import { ScrollOnly } from "next-scroll-loader"; import { useRouter } from "next/navigation"; import { useState } from "react"; import { userSearch_getAllUser } from "../fun/get/get_all_user"; export function UserSearch_UiView({ listUser }: { listUser: MODEL_USER[] }) { const [data, setData] = useState(listUser); const [activePage, setActivePage] = useState(1); const [isSearch, setIsSearch] = useState(""); async function onSearch(name: string) { setIsSearch(name); const loadData = await userSearch_getAllUser({ page: activePage, search: name, }); setData(loadData as any); setActivePage(1); } return ( <> } placeholder="Masukan nama pengguna " onChange={(val) => onSearch(val.target.value)} /> {_.isEmpty(data) ? ( ) : ( (
)} data={data} setData={setData} moreData={async () => { const loadData = await userSearch_getAllUser({ page: activePage + 1, search: isSearch, }); setActivePage((val) => val + 1); return loadData; }} > {(item) => }
)}
); } function CardView({ data }: { data: MODEL_USER }) { const router = useRouter(); const [loading, setLoading] = useState(false); return ( <> { setLoading(true); router.push(RouterProfile.katalog({ id: data.Profile.id })); }} > {data?.Profile.name} +{data?.nomor}
{/* PAKE LOADING */} {/* {loading ? ( ) : ( )} */} {/* GA PAKE LOADING */}
{/* { setLoading(true); router.push(RouterProfile.katalogOLD + `${data?.Profile?.id}`); }} > {data?.Profile.name}d sdasd sdas +{data?.nomor}
{loading ? ( ) : ( )}
*/} ); }