// assets/js/pages/admin/tabs/ArchivesTabAdmin.js const ArchivesTabAdmin = ({ state, handlers }) => { const { archives, filteredArchives, archiveSearchTerm, setArchiveSearchTerm, archiveCategoryFilter, setArchiveCategoryFilter, } = state; const { handleViewArchiveDetail } = handlers; // Filter archives locally React.useEffect(() => { let filtered = archives.filter((item) => { const matchesSearch = item.name.toLowerCase().includes(archiveSearchTerm.toLowerCase()) || item.location.toLowerCase().includes(archiveSearchTerm.toLowerCase()) || (item.berita_acara_no && item.berita_acara_no .toLowerCase() .includes(archiveSearchTerm.toLowerCase())); const matchesCategory = !archiveCategoryFilter || Helpers.getCategoryValue(item.category_id) === archiveCategoryFilter; return matchesSearch && matchesCategory; }); state.setFilteredArchives(filtered); }, [archiveSearchTerm, archiveCategoryFilter, archives]); return (
📍 {item.location} • 📅{" "} {Helpers.formatDate(item.date_found)}
{archiveSearchTerm || archiveCategoryFilter ? "Tidak ada arsip yang sesuai filter" : "Belum ada arsip"}