Files
myeasycms-v2/apps/web/app/admin/lib/actions-utils.ts
giancarlo bce3479368 Cleanup
2024-03-24 02:23:22 +08:00

22 lines
524 B
TypeScript

import { notFound } from 'next/navigation';
import isUserSuperAdmin from '~/admin/utils/is-user-super-admin';
import { getSupabaseServerActionClient } from '@kit/supabase/server-actions-client';
export function withAdminSession<Args extends unknown[], Response>(
fn: (...params: Args) => Response,
) {
return async (...params: Args) => {
const isAdmin = await isUserSuperAdmin({
client: getSupabaseServerActionClient(),
});
if (!isAdmin) {
notFound();
}
return fn(...params);
};
}