File tree Expand file tree Collapse file tree 4 files changed +409
-212
lines changed
plate-client/src/components Expand file tree Collapse file tree 4 files changed +409
-212
lines changed Original file line number Diff line number Diff line change 1+ import { LayoutDashboardIcon , MapPinned } from 'lucide-react' ;
2+
3+ import {
4+ Sidebar ,
5+ SidebarContent ,
6+ SidebarGroup ,
7+ SidebarGroupContent ,
8+ SidebarGroupLabel ,
9+ SidebarMenu ,
10+ SidebarMenuButton ,
11+ SidebarMenuItem ,
12+ } from '@/components/ui/sidebar' ;
13+ import { NavLink } from 'react-router' ;
14+
15+ // Menu items.
16+ const items = [
17+ {
18+ title : 'Home' ,
19+ url : 'ikhtisar' ,
20+ icon : LayoutDashboardIcon ,
21+ } ,
22+ {
23+ title : 'Region' ,
24+ url : 'region' ,
25+ icon : MapPinned ,
26+ } ,
27+ ] ;
28+
29+ export function AppSidebar ( ) {
30+ return (
31+ < Sidebar collapsible = "icon" variant = "floating" >
32+ < SidebarContent >
33+ < SidebarGroup >
34+ < SidebarGroupLabel className = "text-md font-black" >
35+ PlateFrom
36+ </ SidebarGroupLabel >
37+ < SidebarGroupContent >
38+ < SidebarMenu >
39+ { items . map ( ( item ) => (
40+ < SidebarMenuItem key = { item . title } >
41+ < NavLink to = { item . url } >
42+ { ( { isActive } ) => (
43+ < SidebarMenuButton asChild isActive = { isActive } >
44+ < span >
45+ < item . icon
46+ className = { isActive ? 'text-red-600' : '' }
47+ />
48+ < span
49+ className = { isActive ? 'font-bold text-red-600' : '' }
50+ >
51+ { item . title }
52+ </ span >
53+ </ span >
54+ </ SidebarMenuButton >
55+ ) }
56+ </ NavLink >
57+ </ SidebarMenuItem >
58+ ) ) }
59+ </ SidebarMenu >
60+ </ SidebarGroupContent >
61+ </ SidebarGroup >
62+ </ SidebarContent >
63+ </ Sidebar >
64+ ) ;
65+ }
Original file line number Diff line number Diff line change 1+ import { Outlet } from 'react-router' ;
2+ import { SidebarProvider , SidebarTrigger } from '../ui/sidebar' ;
3+ import { AppSidebar } from './app-sidebar' ;
4+
5+ export default function Layout ( ) {
6+ return (
7+ < SidebarProvider >
8+ < AppSidebar />
9+ < main >
10+ < SidebarTrigger />
11+ < div className = "ps-2 pe-3 py-3 w-full h-dvh" >
12+ < Outlet />
13+ </ div >
14+ </ main >
15+ </ SidebarProvider >
16+ ) ;
17+ }
You can’t perform that action at this time.
0 commit comments