20 lines
631 B
TypeScript
20 lines
631 B
TypeScript
import { redirect } from 'next/navigation'
|
|
import { auth } from '@/lib/auth'
|
|
import { headers } from 'next/headers'
|
|
import { BottomNav } from '@/components/bottom-nav'
|
|
import { isAdminEmail } from '@/lib/admin'
|
|
|
|
export default async function AppLayout({ children }: { children: React.ReactNode }) {
|
|
const session = await auth.api.getSession({ headers: await headers() })
|
|
if (!session) redirect('/login')
|
|
|
|
const isAdmin = isAdminEmail(session.user.email)
|
|
|
|
return (
|
|
<div className="flex min-h-screen flex-col">
|
|
<main className="flex-1 pb-20">{children}</main>
|
|
<BottomNav isAdmin={isAdmin} />
|
|
</div>
|
|
)
|
|
}
|