'use client'; import { cn } from '@/lib/utils'; import { BookOpenText, Home, Search, SquarePen, Settings, Plus, ArrowLeft, } from 'lucide-react'; import Link from 'next/link'; import { useSelectedLayoutSegments } from 'next/navigation'; import React, { useState, type ReactNode } from 'react'; import Layout from './Layout'; import { Description, Dialog, DialogPanel, DialogTitle, } from '@headlessui/react'; import SettingsButton from './Settings/SettingsButton'; const VerticalIconContainer = ({ children }: { children: ReactNode }) => { return
{children}
; }; const Sidebar = ({ children }: { children: React.ReactNode }) => { const segments = useSelectedLayoutSegments(); const [isOpen, setIsOpen] = useState(true); const navLinks = [ { icon: Home, href: '/', active: segments.length === 0 || segments.includes('c'), label: 'Home', }, { icon: Search, href: '/discover', active: segments.includes('discover'), label: 'Discover', }, { icon: BookOpenText, href: '/library', active: segments.includes('library'), label: 'Library', }, ]; return (
{navLinks.map((link, i) => (

{link.label}

))}
{navLinks.map((link, i) => ( {link.active && (
)}

{link.label}

))}
{children}
); }; export default Sidebar;