import React, { useState, useEffect } from "react"; import { Badge } from "@/components/ui/badge"; import { FileEdit } from "lucide-react"; import { isAdminLoggedIn, syncFromServer, getAllStatusOverrides } from "@/lib/admin"; import { allInteractives, type InteractiveStatus } from "@/lib/interactives"; interface AdminDraftCardsProps { theme?: string; subcategory?: string; } const AdminDraftCards: React.FC = ({ theme, subcategory }) => { const [isAdmin, setIsAdmin] = useState(false); const [drafts, setDrafts] = useState([]); useEffect(() => { const admin = isAdminLoggedIn(); setIsAdmin(admin); if (admin) { syncFromServer().finally(() => { const overrides = getAllStatusOverrides(); const filtered = allInteractives.filter((i) => { const effectiveStatus: InteractiveStatus = overrides[i.slug] || i.status; if (effectiveStatus !== "draft") return false; if (theme && !i.themes.includes(theme)) return false; if (subcategory && i.subcategory !== subcategory) return false; return true; }); setDrafts(filtered); }); } }, [theme, subcategory]); if (!isAdmin || drafts.length === 0) return null; return ( <> {drafts.map((item) => (

{item.title}

{item.description}

draft
))} ); }; export default AdminDraftCards;