"use client" import { useState, useEffect } from "react" import { useRouter } from "next/navigation" import Link from "next/link" import { cn } from "@/lib/utils" import { Button } from "@/components/ui/button" import { Badge } from "@/components/ui/badge" import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar" import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu" import { Building2, Home, TrendingUp, Map, BarChart3, Search, Settings, Bell, User, LogOut, Menu, X, Code2, Database, Wrench, FileText, LineChart } from "lucide-react" import DebugPanel from "@/components/debug-panel" const navigation = [ { name: "Overview", href: "/dashboard", icon: Home, current: true }, { name: "Professional Analytics", href: "/dashboard/professional", icon: LineChart }, { name: "Property Search", href: "/dashboard/search", icon: Search }, { name: "Market Analytics", href: "/dashboard/analytics", icon: BarChart3 }, { name: "Reports", href: "/dashboard/reports", icon: FileText }, { name: "Map View", href: "/dashboard/map", icon: Map }, { name: "Market Trends", href: "/dashboard/trends", icon: TrendingUp }, ] const developerNavigation = [ { name: "Developer Settings", href: "/dashboard/dev-settings", icon: Wrench }, { name: "API Explorer", href: "/dashboard/api-explorer", icon: Code2 }, { name: "Data Browser", href: "/dashboard/data-browser", icon: Database }, ] export default function DashboardLayout({ children, }: { children: React.ReactNode }) { const [user, setUser] = useState(null) const [sidebarOpen, setSidebarOpen] = useState(false) const router = useRouter() useEffect(() => { // Check authentication const authToken = localStorage.getItem("simpse-auth") const userData = localStorage.getItem("simpse-user") if (!authToken) { router.push("/") return } if (userData) { setUser(JSON.parse(userData)) } }, [router]) const handleLogout = () => { localStorage.removeItem("simpse-auth") localStorage.removeItem("simpse-user") router.push("/") } if (!user) { return (

Loading...

) } return (
{/* Mobile sidebar overlay */} {sidebarOpen && (
setSidebarOpen(false)} />
)} {/* Static sidebar for desktop */}
{/* Main content */}
{/* Top navigation */}
{/* Profile dropdown */} My Account Profile Settings Sign out
{/* Page content */}
{children}
{/* Debug Panel - Only show for enterprise users */} {user?.subscription === "enterprise" && }
) function SidebarContent() { return (
{/* Logo */}

Simpse

{/* Navigation */}
{/* User info */}
DU

{user.name}

{user.email}

) } }