diff --git a/frontend/components/layout/band-selector.tsx b/frontend/components/layout/band-selector.tsx index 36b8d2a..b2a5ed5 100644 --- a/frontend/components/layout/band-selector.tsx +++ b/frontend/components/layout/band-selector.tsx @@ -1,7 +1,7 @@ "use client" import { useRouter } from "next/navigation" -import { ChevronDown } from "lucide-react" +import { ChevronDown, Music } from "lucide-react" import { Button } from "@/components/ui/button" import { DropdownMenu, @@ -9,39 +9,93 @@ import { DropdownMenuItem, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu" +import { + Sheet, + SheetContent, + SheetHeader, + SheetTitle, + SheetTrigger, +} from "@/components/ui/sheet" import { useVertical, VERTICALS, VerticalSlug } from "@/contexts/vertical-context" +import { useState } from "react" export function BandSelector() { const { current, setCurrent } = useVertical() const router = useRouter() + const [sheetOpen, setSheetOpen] = useState(false) const handleSelect = (slug: VerticalSlug) => { setCurrent(slug) router.push(`/${slug}`) + setSheetOpen(false) } + // Desktop: Dropdown menu + // Mobile: Sheet drawer return ( - - - - - - {VERTICALS.map((vertical) => ( - handleSelect(vertical.slug)} - className={`cursor-pointer ${vertical.slug === current.slug ? "font-bold" : ""}`} - > - {vertical.name} - - ))} - - + <> + {/* Desktop Dropdown (hidden on mobile) */} +
+ + + + + + {VERTICALS.map((vertical) => ( + handleSelect(vertical.slug)} + className={`cursor-pointer ${vertical.slug === current.slug ? "font-bold" : ""}`} + > + {vertical.name} + + ))} + + +
+ + {/* Mobile Sheet (hidden on desktop) */} +
+ + + + + + + + + Switch Band + + +
+ {VERTICALS.map((vertical) => ( + + ))} +
+
+
+
+ ) }