import { auth, signOut } from '../auth'
import { redirect } from 'next/navigation'
import PanelSidebar from './PanelSidebar'

interface PanelShellProps {
  children: React.ReactNode
}

export default async function PanelShell({ children }: PanelShellProps) {
  const session = await auth()
  if (!session) redirect('/login')

  async function handleSignOut() {
    'use server'
    await signOut({ redirectTo: '/login' })
  }

  return (
    <div className="flex min-h-screen">
      <PanelSidebar
        companyName={session.user.companyName}
        dealerCode={session.user.dealerCode}
        isAdmin={session.user.isAdmin}
        signOutAction={handleSignOut}
      />
      {/* lg:ml-64 → desktop sidebar genişliği, mobile'da mt-14 (sabit header yüksekliği) */}
      <main className="flex-1 min-h-screen bg-sand lg:ml-0">
        <div className="h-14 lg:hidden" />
        {children}
      </main>
    </div>
  )
}
