diff --git a/app/components/ui/sheet/Sheet.vue b/app/components/ui/sheet/Sheet.vue new file mode 100644 index 0000000..8522f84 --- /dev/null +++ b/app/components/ui/sheet/Sheet.vue @@ -0,0 +1,19 @@ + + + diff --git a/app/components/ui/sheet/SheetClose.vue b/app/components/ui/sheet/SheetClose.vue new file mode 100644 index 0000000..39a942c --- /dev/null +++ b/app/components/ui/sheet/SheetClose.vue @@ -0,0 +1,15 @@ + + + diff --git a/app/components/ui/sheet/SheetContent.vue b/app/components/ui/sheet/SheetContent.vue new file mode 100644 index 0000000..e0c4b8f --- /dev/null +++ b/app/components/ui/sheet/SheetContent.vue @@ -0,0 +1,62 @@ + + + diff --git a/app/components/ui/sheet/SheetDescription.vue b/app/components/ui/sheet/SheetDescription.vue new file mode 100644 index 0000000..6c8ba0a --- /dev/null +++ b/app/components/ui/sheet/SheetDescription.vue @@ -0,0 +1,21 @@ + + + diff --git a/app/components/ui/sheet/SheetFooter.vue b/app/components/ui/sheet/SheetFooter.vue new file mode 100644 index 0000000..5fcf751 --- /dev/null +++ b/app/components/ui/sheet/SheetFooter.vue @@ -0,0 +1,16 @@ + + + diff --git a/app/components/ui/sheet/SheetHeader.vue b/app/components/ui/sheet/SheetHeader.vue new file mode 100644 index 0000000..b6305ab --- /dev/null +++ b/app/components/ui/sheet/SheetHeader.vue @@ -0,0 +1,15 @@ + + + diff --git a/app/components/ui/sheet/SheetOverlay.vue b/app/components/ui/sheet/SheetOverlay.vue new file mode 100644 index 0000000..220452a --- /dev/null +++ b/app/components/ui/sheet/SheetOverlay.vue @@ -0,0 +1,21 @@ + + + diff --git a/app/components/ui/sheet/SheetTitle.vue b/app/components/ui/sheet/SheetTitle.vue new file mode 100644 index 0000000..889ae54 --- /dev/null +++ b/app/components/ui/sheet/SheetTitle.vue @@ -0,0 +1,21 @@ + + + diff --git a/app/components/ui/sheet/SheetTrigger.vue b/app/components/ui/sheet/SheetTrigger.vue new file mode 100644 index 0000000..41b121d --- /dev/null +++ b/app/components/ui/sheet/SheetTrigger.vue @@ -0,0 +1,15 @@ + + + diff --git a/app/components/ui/sheet/index.ts b/app/components/ui/sheet/index.ts new file mode 100644 index 0000000..7c70e5d --- /dev/null +++ b/app/components/ui/sheet/index.ts @@ -0,0 +1,8 @@ +export { default as Sheet } from "./Sheet.vue" +export { default as SheetClose } from "./SheetClose.vue" +export { default as SheetContent } from "./SheetContent.vue" +export { default as SheetDescription } from "./SheetDescription.vue" +export { default as SheetFooter } from "./SheetFooter.vue" +export { default as SheetHeader } from "./SheetHeader.vue" +export { default as SheetTitle } from "./SheetTitle.vue" +export { default as SheetTrigger } from "./SheetTrigger.vue" diff --git a/app/layouts/default.vue b/app/layouts/default.vue index e7be7fd..04b5c11 100644 --- a/app/layouts/default.vue +++ b/app/layouts/default.vue @@ -4,56 +4,64 @@ import ThemeDropdown from "~/components/ui/ThemeDropdown.vue"; import LanguageSwitcher from "~/components/app/LanguageSwitcher.vue"; import "vue-sonner/style.css"; import { Toaster } from "@/components/ui/sonner"; +import { + Sheet, + SheetContent, + SheetHeader, + SheetTitle, + SheetTrigger, +} from "@/components/ui/sheet"; +import { Menu } from "lucide-vue-next"; const { t } = useI18n(); +const mobileMenuOpen = ref(false); + +const navLinks = [ + { to: "/", label: "home" }, + { to: "/stream", label: "stream" }, + { to: "/about", label: "about" }, + { to: "/presets", label: "presets", requiresAuth: true }, +];