"use client"; import Link from "next/link"; import { usePathname } from "next/navigation"; import { curriculum } from "@/lib/curriculum"; import { cn } from "@/lib/utils"; import { useState } from "react"; const unitColorMap = { "unit-1": "text-unit-1-dark", "unit-2": "text-unit-2-dark", "unit-3": "text-unit-3-dark", "unit-4": "text-unit-4-dark", }; const unitDotColor = { "unit-1": "bg-unit-1", "unit-2": "bg-unit-2", "unit-3": "bg-unit-3", "unit-4": "bg-unit-4", }; export function MobileNav() { const pathname = usePathname(); const [isOpen, setIsOpen] = useState(false); return (
{isOpen && (
setIsOpen(false)} className="mb-4 flex items-center gap-2 rounded-xl px-3 py-2 text-sm font-medium text-muted transition-colors hover:bg-background hover:text-foreground" > All Topics
{curriculum.map((unit) => (

Unit {unit.number}: {unit.title}

{unit.topics.map((topic) => { const href = `/lessons/${unit.slug}/${topic.slug}`; return ( setIsOpen(false)} className={cn( "block rounded-lg px-3 py-1.5 text-sm transition-colors", pathname === href ? "bg-foreground text-background font-medium" : "text-muted hover:bg-background hover:text-foreground", )} > {topic.shortTitle} ); })}
))}
)}
); }