/* Inbox / cases dashboard */ const InboxView = ({ data, onOpen, onNew }) => { const [filter, setFilter] = React.useState("all"); const [query, setQuery] = React.useState(""); const [selected, setSelected] = React.useState(new Set()); const counts = React.useMemo(() => { const c = { all: data.cases.length, processing: 0, review: 0, approved: 0, error: 0 }; data.cases.forEach((x) => (c[x.status] = (c[x.status] || 0) + 1)); return c; }, [data]); const rows = data.cases.filter( (c) => (filter === "all" || c.status === filter) && (query === "" || c.ref.toLowerCase().includes(query.toLowerCase()) || c.sender.toLowerCase().includes(query.toLowerCase()) || c.consignee.toLowerCase().includes(query.toLowerCase())) ); const toggle = (id) => { const n = new Set(selected); n.has(id) ? n.delete(id) : n.add(id); setSelected(n); }; return (