Home / File/ sidebar-controlled.tsx — ui Source File

sidebar-controlled.tsx — ui Source File

Architecture documentation for sidebar-controlled.tsx, a tsx file in the ui codebase. 4 imports, 0 dependents.

File tsx DocumentationAtlas Changelog 4 imports 1 functions

Entity Profile

Dependency Diagram

graph LR
  7e9cd943_7b67_407d_ecda_466df25538f9["sidebar-controlled.tsx"]
  1d141819_425e_b5fd_4c8e_32f7c6a42cf2["react"]
  7e9cd943_7b67_407d_ecda_466df25538f9 --> 1d141819_425e_b5fd_4c8e_32f7c6a42cf2
  4b1d2128_46d9_46f0_b915_b6e1925b7876["button"]
  7e9cd943_7b67_407d_ecda_466df25538f9 --> 4b1d2128_46d9_46f0_b915_b6e1925b7876
  40190c4f_9641_df4b_7a22_e87f02982369["sidebar"]
  7e9cd943_7b67_407d_ecda_466df25538f9 --> 40190c4f_9641_df4b_7a22_e87f02982369
  d39cd1e4_1b2d_9aa2_1d29_fd0b4bfb61c3["lucide-react"]
  7e9cd943_7b67_407d_ecda_466df25538f9 --> d39cd1e4_1b2d_9aa2_1d29_fd0b4bfb61c3
  style 7e9cd943_7b67_407d_ecda_466df25538f9 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

"use client"

import * as React from "react"
import { Button } from "@/examples/radix/ui/button"
import {
  Sidebar,
  SidebarContent,
  SidebarGroup,
  SidebarGroupContent,
  SidebarGroupLabel,
  SidebarInset,
  SidebarMenu,
  SidebarMenuButton,
  SidebarMenuItem,
  SidebarProvider,
} from "@/examples/radix/ui/sidebar"
import {
  FrameIcon,
  LifeBuoyIcon,
  MapIcon,
  PanelLeftCloseIcon,
  PanelLeftOpenIcon,
  PieChartIcon,
  SendIcon,
} from "lucide-react"

const projects = [
  {
    name: "Design Engineering",
    url: "#",
    icon: FrameIcon,
  },
  {
    name: "Sales & Marketing",
    url: "#",
    icon: PieChartIcon,
  },
  {
    name: "Travel",
    url: "#",
    icon: MapIcon,
  },
  {
    name: "Support",
    url: "#",
    icon: LifeBuoyIcon,
  },
  {
    name: "Feedback",
    url: "#",
    icon: SendIcon,
  },
]

export default function AppSidebar() {
  const [open, setOpen] = React.useState(true)

  return (
    <SidebarProvider open={open} onOpenChange={setOpen}>
      <Sidebar>
        <SidebarContent>
          <SidebarGroup>
            <SidebarGroupLabel>Projects</SidebarGroupLabel>
            <SidebarGroupContent>
              <SidebarMenu>
                {projects.map((project) => (
                  <SidebarMenuItem key={project.name}>
                    <SidebarMenuButton asChild>
                      <a href={project.url}>
                        <project.icon />
                        <span>{project.name}</span>
                      </a>
                    </SidebarMenuButton>
                  </SidebarMenuItem>
                ))}
              </SidebarMenu>
            </SidebarGroupContent>
          </SidebarGroup>
        </SidebarContent>
      </Sidebar>
      <SidebarInset>
        <header className="flex h-12 items-center justify-between px-4">
          <Button
            onClick={() => setOpen((open) => !open)}
            size="sm"
            variant="ghost"
          >
            {open ? <PanelLeftCloseIcon /> : <PanelLeftOpenIcon />}
            <span>{open ? "Close" : "Open"} Sidebar</span>
          </Button>
        </header>
      </SidebarInset>
    </SidebarProvider>
  )
}

Subdomains

Functions

Dependencies

  • button
  • lucide-react
  • react
  • sidebar

Frequently Asked Questions

What does sidebar-controlled.tsx do?
sidebar-controlled.tsx is a source file in the ui codebase, written in tsx. It belongs to the DocumentationAtlas domain, Changelog subdomain.
What functions are defined in sidebar-controlled.tsx?
sidebar-controlled.tsx defines 1 function(s): AppSidebar.
What does sidebar-controlled.tsx depend on?
sidebar-controlled.tsx imports 4 module(s): button, lucide-react, react, sidebar.
Where is sidebar-controlled.tsx in the architecture?
sidebar-controlled.tsx is located at apps/v4/examples/radix/sidebar-controlled.tsx (domain: DocumentationAtlas, subdomain: Changelog, directory: apps/v4/examples/radix).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free