// Chrome — top header strip + left navigation rail
function EntityScopeSwitcher({ value, onChange }) {
const entities = window.AKEFIN_DATA.entities;
const [open, setOpen] = React.useState(false);
const current = entities.find(e => e.id === value);
return (
{open && (
{entities.map(e => (
))}
)}
);
}
function Header({ entity, onEntityChange, query, setQuery, statusLine, onOpenPalette, onImport }) {
return (
akefin
{statusLine}
);
}
function Sidebar({ screen, setScreen, counts }) {
const items = [
{ id: "dashboard", label: "Overview", icon: "spark", count: null },
{ id: "review", label: "Review queue", icon: "activity", count: counts.review },
{ id: "rules", label: "Rules", icon: "rule", count: counts.rules },
{ id: "ledger", label: "Ledger", icon: "ledger", count: null },
{ id: "import", label: "Import", icon: "import", count: counts.import },
];
return (
);
}
Object.assign(window, { Header, Sidebar });