// =============================================================================
// HeadlineSift.com — Authenticated Admin Shell (Client)
// =============================================================================
"use client";

import { AdminHeader } from "@/components/admin/AdminHeader";
import { AdminSidebar } from "@/components/admin/AdminSidebar";
import { useSidebar } from "./sidebar-context";

interface AuthenticatedShellProps {
  userName: string;
  userEmail: string;
  userRole: string;
  children: React.ReactNode;
}

export function AuthenticatedShell({
  userName,
  userEmail,
  userRole,
  children,
}: AuthenticatedShellProps) {
  const { sidebarOpen, closeSidebar, toggleSidebar } = useSidebar();

  return (
    <div className="flex min-h-screen bg-surface-secondary">
      <AdminSidebar open={sidebarOpen} onClose={closeSidebar} />
      <div className="flex flex-1 flex-col lg:pl-64">
        <AdminHeader
          userName={userName}
          userEmail={userEmail}
          userRole={userRole}
          onMenuToggle={toggleSidebar}
        />
        <main className="flex-1 p-4 sm:p-6">{children}</main>
      </div>
    </div>
  );
}
