/* eslint-disable react-hooks/exhaustive-deps */ import colors from '@/con/colors'; import { Box, Container, Grid, GridCol, Skeleton, Stack, Tabs, TabsList, TabsPanel, TabsTab, Text, TextInput } from '@mantine/core'; import { IconSearch } from '@tabler/icons-react'; import BackButton from '../layanan/_com/BackButto'; import Budaya from './budaya/page'; import Ekonomi from './ekonomi/page'; import Pemerintahan from './pemerintahan/page'; import Semua from './semua/page'; import Sosial from './sosial/page'; import Teknologi from './teknologi/page'; import Pembangunan from './pembangunan/page'; import { useEffect, useState } from 'react'; import { useProxy } from 'valtio/utils'; import stateDashboardBerita from '@/app/admin/(dashboard)/_state/desa/berita'; function Page() { const [selectedKategori, setSelectedKategori] = useState('Semua'); const [loading, setLoading] = useState(false); const state = useProxy(stateDashboardBerita); useEffect(() => { state.kategoriBerita.findMany.load() const loadData = async () => { try { setLoading(true); await stateDashboardBerita.berita.findMany.load(1, 100); } catch (error) { console.error('Error loading data:', error); } finally { setLoading(false); } }; loadData(); }, []); const data = state.berita.findMany.data || []; const categories = [...new Set( data .filter(item => item.kategoriBerita?.name) .map(item => item.kategoriBerita?.name) )]; const filteredData = selectedKategori === 'Semua' ? data : data.filter(item => item.kategoriBerita?.name === selectedKategori); return ( {/* Header */} Portal Berita Darmasaba Temukan berbagai potensi dan keunggulan yang dimiliki Desa Darmasaba {/* Tabs Menu */} {categories.map((kategori) => ( {kategori} ))} {loading ? ( ) : filteredData.length > 0 ? ( } /> ) : ( Tidak ada data )} ); } export default Page;