"use server"; import { auth, isPermission, Permission } from '@/lib/auth'; import { headers } from 'next/headers'; import { AnyPermission, checkSinglePermission } from './auth-helpers'; import { skipAuth, mockUser } from './auth-mock'; export async function getPermissions() { if (skipAuth) { return mockUser.permissions.filter(isPermission); } const session = await auth.api.getSession({ headers: await headers(), }); if (!session) { return null; } return session.user.permissions.filter(isPermission); } export async function hasPermission(permission: AnyPermission) { const sessionPermissions = await getPermissions() ?? []; return checkSinglePermission(sessionPermissions)(permission); }