File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
import type { Metadata } from 'next';
import { verifySession } from '@/lib/auth/dal';
import { fetchAdminMenus } from '@/lib/data/repositories/admin-menu-repository';
import { buildAdminMenuTree } from '@/lib/domain/admin-menu';
import { AdminMenuList } from './_components/admin-menu-list';
export const metadata: Metadata = {
title: '메뉴관리',
};
export const dynamic = 'force-dynamic';
export default async function Page() {
await verifySession();
const menus = await fetchAdminMenus();
// 이슈: 역할 목록 조회 API가 없어 메뉴에 쓰인 역할을 모아 선택지로 쓴다.
const roles = [...new Map(
menus
.filter((menu) => menu.roleId)
.map((menu) => [menu.roleId, { id: menu.roleId, name: menu.roleName || menu.roleId }])
).values()];
return (
<AdminMenuList
roots={buildAdminMenuTree(menus)}
totalCount={menus.length}
roles={roles}
/>
);
}