mirror of
https://gitlab.massbug.com/massbug/judge4c.git
synced 2025-07-04 04:20:53 +00:00
feat(ui): add mobile sidebar with sheet component
This commit is contained in:
parent
fa30235172
commit
4c8aa5b264
30
src/components/mobile-sidebar.tsx
Normal file
30
src/components/mobile-sidebar.tsx
Normal file
@ -0,0 +1,30 @@
|
||||
"use client";
|
||||
|
||||
import { Sidebar } from "./sidebar";
|
||||
import { Button } from "./ui/button";
|
||||
import { MenuIcon } from "lucide-react";
|
||||
import { useEffect, useState } from "react";
|
||||
import { usePathname } from "next/navigation";
|
||||
import { Sheet, SheetContent, SheetTrigger } from "./ui/sheet";
|
||||
|
||||
export const MobileSidebar = () => {
|
||||
const [isOpen, setIsOpen] = useState(false);
|
||||
const pathname = usePathname();
|
||||
|
||||
useEffect(() => {
|
||||
setIsOpen(false);
|
||||
}, [pathname]);
|
||||
|
||||
return (
|
||||
<Sheet modal={false} open={isOpen} onOpenChange={setIsOpen}>
|
||||
<SheetTrigger asChild>
|
||||
<Button variant="secondary" className="lg:hidden">
|
||||
<MenuIcon className="size-4" />
|
||||
</Button>
|
||||
</SheetTrigger>
|
||||
<SheetContent side="left" className="p-0">
|
||||
<Sidebar />
|
||||
</SheetContent>
|
||||
</Sheet>
|
||||
);
|
||||
};
|
Loading…
Reference in New Issue
Block a user