"use client"; import { Bell, Menu, Moon, Sun } from "lucide-react"; import { SimulatorPanel } from "@/components/simulator/SimulatorPanel"; import { usePathname } from "next/navigation"; import Link from "next/link"; import { UserButton } from "@clerk/nextjs"; import { useTheme } from "next-themes"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { useAlarmCount } from "@/lib/alarm-context"; import { Sheet, SheetContent, SheetTrigger } from "@/components/ui/sheet"; import { Sidebar } from "./sidebar"; const pageTitles: Record = { "/dashboard": "Overview", "/floor-map": "Floor Map", "/power": "Power Management", "/generator": "Generator & Transfer", "/cooling": "Cooling & Optimisation", "/environmental": "Environmental Monitoring", "/leak": "Leak Detection", "/fire": "Fire & Safety", "/network": "Network Infrastructure", "/assets": "Asset Management", "/alarms": "Alarms & Events", "/capacity": "Capacity Planning", "/reports": "Reports", "/energy": "Energy & Sustainability", "/maintenance": "Maintenance Windows", "/settings": "Settings", }; export function Topbar() { const pathname = usePathname(); const pageTitle = pageTitles[pathname] ?? "DemoBMS"; const { active: activeAlarms } = useAlarmCount(); const { theme, setTheme } = useTheme(); return (
{/* Left: mobile menu + page title */}

{pageTitle}

{/* Right: alarm bell + user */}
{/* Alarm bell — single canonical alarm indicator */} {/* Scenario simulator */} {/* Theme toggle */} {/* Clerk user button */}
); }