import { getSession } from '@zen/core/features/auth/actions'; import { hasPermission, PERMISSIONS } from '@zen/core/users'; import { redirect } from 'next/navigation'; export async function protectAdmin({ redirectTo = '/auth/login', forbiddenRedirect = '/' } = {}) { const session = await getSession(); if (!session) redirect(redirectTo); const allowed = await hasPermission(session.user.id, PERMISSIONS.ADMIN_ACCESS); if (!allowed) redirect(forbiddenRedirect); return session; } export async function isAdmin() { const session = await getSession(); if (!session) return false; return hasPermission(session.user.id, PERMISSIONS.ADMIN_ACCESS); }