/* eslint-disable react-hooks/exhaustive-deps */ import { BaseBox, LoaderCustom, ScrollableCustom, TextCustom, ViewWrapper, } from "@/components"; import { useAuth } from "@/hooks/use-auth"; import { dummyMasterStatus } from "@/lib/dummy-data/_master/status"; import { apiJobGetByStatus } from "@/service/api-client/api-job"; import { useFocusEffect, useLocalSearchParams } from "expo-router"; import _ from "lodash"; import { useCallback, useState } from "react"; export default function Job_MainViewStatus() { const { user } = useAuth(); const { status } = useLocalSearchParams<{ status?: string }>(); console.log("STATUS", status); const [activeCategory, setActiveCategory] = useState( status || "publish" ); const [listData, setListData] = useState([]); const [isLoadList, setIsLoadList] = useState(false); useFocusEffect( useCallback(() => { onLoadData(); }, [user?.id, activeCategory]) ); const onLoadData = async () => { try { setIsLoadList(true); const response = await apiJobGetByStatus({ authorId: user?.id as string, status: activeCategory as string, }); setListData(response.data); } catch (error) { console.log("[ERROR]", error); } finally { setIsLoadList(false); } }; const handlePress = (item: any) => { setActiveCategory(item.value); // tambahkan logika lain seperti filter dsb. }; const scrollComponent = ( ({ id: i, label: e.label, value: e.value, }))} onButtonPress={handlePress} activeId={activeCategory as any} /> ); return ( <> {isLoadList ? ( ) : _.isEmpty(listData) ? ( Tidak ada data {activeCategory} ) : ( listData.map((e, i) => ( {e?.title} )) )} ); }