// 3단계 대시보드 시안의 좌측 메뉴. 아직 화면이 있는 것은 기관관리뿐이라
// 나머지 항목은 비활성(준비 중)으로 두고 자리만 잡는다 — 시안과 같은 골격을
// 먼저 세워 두면 다음 모듈(Mattermost 채팅 등)이 붙을 때 메뉴만 활성화하면 된다.
interface MenuItem {
key: string
label: string
enabled: boolean
icon: JSX.Element
}
const ICON_CLASS = 'h-4 w-4 shrink-0'
const MENU: MenuItem[] = [
{
key: 'dashboard',
label: 'Dashboard',
enabled: true,
icon: (
),
},
{
key: 'channels',
label: '채널관리',
enabled: true,
icon: (
),
},
{
key: 'orgs',
label: '기관관리',
enabled: true,
icon: (
),
},
{
key: 'contacts',
label: '담당자관리',
enabled: true,
icon: (
),
},
{
key: 'projects',
label: '사업관리',
enabled: true,
icon: (
),
},
{
key: 'rights-check',
label: '권리확인',
enabled: false,
icon: (
),
},
{
key: 'rights-process',
label: '권리처리',
enabled: false,
icon: (
),
},
{
key: 'files',
// 요구사항 [26]: 공용 양식 보관소. 기관에 딸리지 않는 서식을 여기 올려 둔다.
label: '자료실',
enabled: true,
icon: (
),
},
{
key: 'mattermost',
label: 'Mattermost',
enabled: false,
icon: (
),
},
{
key: 'system',
label: '시스템관리',
enabled: true,
icon: (
),
},
]
interface SidebarProps {
activeKey?: string
onSelect?: (key: string) => void
collapsed?: boolean
onToggle?: () => void
}
export default function Sidebar({
activeKey = 'orgs',
onSelect,
collapsed = false,
onToggle,
}: SidebarProps) {
return (
)
}