- UsersPanel: 테이블+페이징+등록모달+상세모달(비밀번호초기화/잠금해제) - PermissionsPanel: 사용자별 역할 할당 탭 추가 - BoardMgmtPanel: 공지사항/게시판/QNA 관리자 일괄 삭제 - VesselSignalPanel: VTS/VTS-AIS/V-PASS/E-NAVI/S&P AIS 타임라인 모니터링 - AdminSidebar/AdminPlaceholder/adminMenuConfig 신규 - 권한 미들웨어 부모 리소스 fallback 로직 추가 - 조직 목록 API, 관리자 삭제 API 추가 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
26 lines
1.0 KiB
TypeScript
26 lines
1.0 KiB
TypeScript
export const DEFAULT_ROLE_COLORS: Record<string, string> = {
|
|
ADMIN: 'var(--red)',
|
|
HQ_CLEANUP: '#34d399',
|
|
MANAGER: 'var(--orange)',
|
|
USER: 'var(--cyan)',
|
|
VIEWER: 'var(--t3)',
|
|
}
|
|
|
|
export const CUSTOM_ROLE_COLORS = [
|
|
'#a78bfa', '#34d399', '#f472b6', '#fbbf24', '#60a5fa', '#2dd4bf',
|
|
]
|
|
|
|
export function getRoleColor(code: string, index: number): string {
|
|
return DEFAULT_ROLE_COLORS[code] || CUSTOM_ROLE_COLORS[index % CUSTOM_ROLE_COLORS.length]
|
|
}
|
|
|
|
export const statusLabels: Record<string, { label: string; color: string; dot: string }> = {
|
|
PENDING: { label: '승인대기', color: 'text-yellow-400', dot: 'bg-yellow-400' },
|
|
ACTIVE: { label: '활성', color: 'text-green-400', dot: 'bg-green-400' },
|
|
LOCKED: { label: '잠김', color: 'text-red-400', dot: 'bg-red-400' },
|
|
INACTIVE: { label: '비활성', color: 'text-text-3', dot: 'bg-text-3' },
|
|
REJECTED: { label: '거절됨', color: 'text-red-300', dot: 'bg-red-300' },
|
|
}
|
|
|
|
// PERM_RESOURCES 제거됨 — GET /api/roles/perm-tree에서 동적 로드 (PermissionsPanel)
|