UI: Fix streak modal, light mode contrast, state datalist, and plan mapping

This commit is contained in:
2026-07-07 14:41:04 +05:30
parent 22549edcdb
commit 8536196ac0
5 changed files with 102 additions and 32 deletions

View File

@@ -32,15 +32,15 @@ export default function DashboardLayout({ children }: { children: ReactNode }) {
return () => document.removeEventListener("mousedown", handleClickOutside)
}, [])
const userInitials = user ? user.name.split(" ").map(n => n[0]).join("").toUpperCase() : "DS"
const userInitials = user ? user.name.split(" ").filter(n => /^[a-zA-Z]/.test(n)).slice(0, 2).map(n => n[0]).join("").toUpperCase() : "DS"
const targetExamLabel = user?.target_exam === "JEE_Main" ? "JEE Main" : user?.target_exam === "JEE_Advanced" ? "JEE Advanced" : user?.target_exam === "NEET" ? "NEET" : "NEET/JEE"
return (
<div className="flex h-screen bg-background overflow-hidden text-foreground selection:bg-primary/20">
{/* Sidebar */}
<aside className="w-64 border-r border-border bg-background flex flex-col hidden md:flex">
<div className="p-6">
<Link href="/dashboard" className="block relative h-16 w-full hover:opacity-90 transition-opacity">
<div className="px-5 py-4">
<Link href="/dashboard" className="block relative h-10 w-full hover:opacity-90 transition-opacity">
<div className="absolute inset-0 dark:hidden">
<Image
src="/PragatiVeer_Logo/SVG_Logos/Rectangular_light_background.svg"
@@ -88,21 +88,21 @@ export default function DashboardLayout({ children }: { children: ReactNode }) {
icon={<LineChart size={18} />}
label="Performance Analytics"
active={pathname.startsWith("/dashboard/analytics")}
isLocked={!hasAccessTo("ai-mistake-tracking")}
isLocked={!hasAccessTo("detailed-performance-analytics")}
/>
<NavItem
href="/dashboard/rank-predictor"
icon={<Trophy size={18} />}
label="Rank Predictor"
active={pathname.startsWith("/dashboard/rank-predictor")}
isLocked={!hasAccessTo("ai-mistake-tracking")}
isLocked={!hasAccessTo("college-predictor")}
/>
<NavItem
href="/dashboard/ai-coach"
icon={<BrainCircuitIcon />}
label="AI Coach"
active={pathname.startsWith("/dashboard/ai-coach")}
isLocked={!hasAccessTo("ai-mistake-tracking")}
isLocked={!hasAccessTo("ai-tutor-chat")}
/>
</nav>