Add read-only Noya admin panel with assignments and UX polish.
Ship admin auth, user overview, assessments, chats, assignment filters/export, security hardening, and a separate desktop admin shell with clearer assessment answers. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -4,7 +4,7 @@ import { motion, AnimatePresence } from 'framer-motion';
|
||||
import { useAuth } from '@/hooks/useAuth';
|
||||
import { APP_NAME } from '@/utils/constants';
|
||||
import { BrandLogo } from '@/components/BrandLogo';
|
||||
import { ClipboardList, LogOut, Moon, Sun, User } from 'lucide-react';
|
||||
import { ClipboardList, LogOut, Moon, NotebookPen, Sun, User } from 'lucide-react';
|
||||
import { MOTION_DURATION, MOTION_EASE, fastTransition } from '@/lib/motion';
|
||||
import { useTheme } from '@/hooks/useTheme';
|
||||
import { cn } from '@/lib/utils';
|
||||
@@ -127,6 +127,26 @@ export function AppHeader() {
|
||||
<ClipboardList className="h-4 w-4 shrink-0 text-sky-600 dark:text-sky-400" />
|
||||
وضعیت دوره
|
||||
</Link>
|
||||
<Link
|
||||
to="/assignments"
|
||||
role="menuitem"
|
||||
className="header-menu-item"
|
||||
onClick={() => setMenuOpen(false)}
|
||||
>
|
||||
<NotebookPen className="h-4 w-4 shrink-0 text-sky-600 dark:text-sky-400" />
|
||||
تکالیف من
|
||||
</Link>
|
||||
{user?.role === 'admin' ? (
|
||||
<Link
|
||||
to="/admin"
|
||||
role="menuitem"
|
||||
className="header-menu-item"
|
||||
onClick={() => setMenuOpen(false)}
|
||||
>
|
||||
<ClipboardList className="h-4 w-4 shrink-0 text-sky-600 dark:text-sky-400" />
|
||||
پنل ادمین
|
||||
</Link>
|
||||
) : null}
|
||||
<button
|
||||
type="button"
|
||||
role="menuitem"
|
||||
|
||||
Reference in New Issue
Block a user