MobileNav() — ui Function Reference
Architecture documentation for the MobileNav() function in mobile-nav.tsx from the ui codebase.
Entity Profile
Dependency Diagram
graph TD 4bf73cfb_f63d_9ff5_1cd2_4dd5ee20d1bf["MobileNav()"] 3ebe3c62_190a_09b6_acf9_05afe2221686["mobile-nav.tsx"] 4bf73cfb_f63d_9ff5_1cd2_4dd5ee20d1bf -->|defined in| 3ebe3c62_190a_09b6_acf9_05afe2221686 style 4bf73cfb_f63d_9ff5_1cd2_4dd5ee20d1bf fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
apps/v4/components/mobile-nav.tsx lines 55–184
export function MobileNav({
tree,
items,
className,
}: {
tree: typeof source.pageTree
items: { href: string; label: string }[]
className?: string
}) {
const [open, setOpen] = React.useState(false)
const pathname = usePathname()
const currentBase = getCurrentBase(pathname)
return (
<Popover open={open} onOpenChange={setOpen}>
<PopoverTrigger asChild>
<Button
variant="ghost"
className={cn(
"extend-touch-target h-8 touch-manipulation items-center justify-start gap-2.5 !p-0 hover:bg-transparent focus-visible:bg-transparent focus-visible:ring-0 active:bg-transparent dark:hover:bg-transparent",
className
)}
>
<div className="relative flex h-8 w-4 items-center justify-center">
<div className="relative size-4">
<span
className={cn(
"bg-foreground absolute left-0 block h-0.5 w-4 transition-all duration-100",
open ? "top-[0.4rem] -rotate-45" : "top-1"
)}
/>
<span
className={cn(
"bg-foreground absolute left-0 block h-0.5 w-4 transition-all duration-100",
open ? "top-[0.4rem] rotate-45" : "top-2.5"
)}
/>
</div>
<span className="sr-only">Toggle Menu</span>
</div>
<span className="flex h-8 items-center text-lg leading-none font-medium">
Menu
</span>
</Button>
</PopoverTrigger>
<PopoverContent
className="bg-background/90 no-scrollbar h-(--radix-popper-available-height) w-(--radix-popper-available-width) overflow-y-auto rounded-none border-none p-0 shadow-none backdrop-blur duration-100 data-open:animate-none!"
align="start"
side="bottom"
alignOffset={-16}
sideOffset={14}
>
<div className="flex flex-col gap-12 overflow-auto px-6 py-6">
<div className="flex flex-col gap-4">
<div className="text-muted-foreground text-sm font-medium">
Menu
</div>
<div className="flex flex-col gap-3">
<MobileLink href="/" onOpenChange={setOpen}>
Home
</MobileLink>
{items.map((item, index) => (
<MobileLink key={index} href={item.href} onOpenChange={setOpen}>
{item.label}
</MobileLink>
))}
</div>
</div>
<div className="flex flex-col gap-4">
<div className="text-muted-foreground text-sm font-medium">
Sections
</div>
<div className="flex flex-col gap-3">
{TOP_LEVEL_SECTIONS.map(({ name, href }) => {
if (!showMcpDocs && href.includes("/mcp")) {
return null
}
return (
<MobileLink key={name} href={href} onOpenChange={setOpen}>
{name}
{PAGES_NEW.includes(href) && (
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does MobileNav() do?
MobileNav() is a function in the ui codebase, defined in apps/v4/components/mobile-nav.tsx.
Where is MobileNav() defined?
MobileNav() is defined in apps/v4/components/mobile-nav.tsx at line 55.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free