'use client'; import type { UserRole } from '@/lib/constants/navigation'; import { useTranslation } from '@/lib/hooks/useTranslation'; import type { TranslationKeys } from '@/lib/i18n/translations'; interface RoleOption { role: UserRole; labelKey: keyof TranslationKeys['login']; descKey: keyof TranslationKeys['login']; } const roleOptions: RoleOption[] = [ { role: 'Client_Portal', labelKey: 'clientPortalLabel', descKey: 'clientPortalDesc', }, { role: 'Super_Admin', labelKey: 'superAdminLabel', descKey: 'superAdminDesc', }, { role: 'Publisher_Admin', labelKey: 'publisherAdminLabel', descKey: 'publisherAdminDesc', }, { role: 'Viewer', labelKey: 'viewerLabel', descKey: 'viewerDesc', }, ]; interface RoleSelectorProps { selectedRole: UserRole | null; onSelect: (role: UserRole) => void; } /** * Role selection cards for the login page. * * Displays three cards — one per role — with name, description, and a * visual selected state using the Divisi accent color. */ export default function RoleSelector({ selectedRole, onSelect }: RoleSelectorProps) { const t = useTranslation(); return (