From f7d23174a5d8047e0195cdc15049ec11174d16ea Mon Sep 17 00:00:00 2001 From: HorizonCode Date: Sat, 4 Jan 2025 23:20:42 +0100 Subject: [PATCH] fix menu --- bun.lockb | Bin 107187 -> 107173 bytes package.json | 4 +- .../ui/background/background.svelte | 9 ++- src/lib/components/ui/badge/badge.svelte | 50 +++++++++++++++ src/lib/components/ui/badge/index.ts | 2 + .../dropdown-menu-checkbox-item.svelte | 40 ++++++++++++ .../dropdown-menu-content.svelte | 26 ++++++++ .../dropdown-menu-group-heading.svelte | 19 ++++++ .../dropdown-menu/dropdown-menu-item.svelte | 23 +++++++ .../dropdown-menu/dropdown-menu-label.svelte | 23 +++++++ .../dropdown-menu-radio-item.svelte | 30 +++++++++ .../dropdown-menu-separator.svelte | 16 +++++ .../dropdown-menu-shortcut.svelte | 20 ++++++ .../dropdown-menu-sub-content.svelte | 19 ++++++ .../dropdown-menu-sub-trigger.svelte | 28 +++++++++ src/lib/components/ui/dropdown-menu/index.ts | 50 +++++++++++++++ src/lib/components/ui/logo/logo.svelte | 59 +----------------- src/routes/+layout.ts | 1 + src/routes/+page.svelte | 48 ++++++++++++-- 19 files changed, 402 insertions(+), 65 deletions(-) create mode 100644 src/lib/components/ui/badge/badge.svelte create mode 100644 src/lib/components/ui/badge/index.ts create mode 100644 src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte create mode 100644 src/lib/components/ui/dropdown-menu/dropdown-menu-content.svelte create mode 100644 src/lib/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte create mode 100644 src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte create mode 100644 src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte create mode 100644 src/lib/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte create mode 100644 src/lib/components/ui/dropdown-menu/dropdown-menu-separator.svelte create mode 100644 src/lib/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte create mode 100644 src/lib/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte create mode 100644 src/lib/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte create mode 100644 src/lib/components/ui/dropdown-menu/index.ts diff --git a/bun.lockb b/bun.lockb index 8be036112e213246edd95a163f6f7cf8d6a3e9eb..401cccf3a098a35a7c1cca21f343b3246e119193 100644 GIT binary patch delta 9429 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 U6{}ec6Gc;)x&8TO_G`eu09g9mg8%>k diff --git a/package.json b/package.json index be7ec56..4a9c08d 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "@tauri-apps/plugin-shell": "^2", "@tauri-apps/plugin-sql": "^2.2.0", "ky": "^1.7.3", - "lucide-svelte": "^0.468.0", + "lucide-svelte": "^0.469.0", "osu-classes": "^3.1.0", "osu-parsers": "^4.1.7", "radix-icons-svelte": "^1.2.1" @@ -33,7 +33,7 @@ "@sveltejs/vite-plugin-svelte": "^4.0.0", "@tauri-apps/cli": "^2", "autoprefixer": "^10.4.20", - "bits-ui": "^1.0.0-next.70", + "bits-ui": "^1.0.0-next.74", "clsx": "^2.1.1", "sass-embedded": "^1.82.0", "svelte": "^5.0.0", diff --git a/src/lib/components/ui/background/background.svelte b/src/lib/components/ui/background/background.svelte index 660cad9..077076d 100644 --- a/src/lib/components/ui/background/background.svelte +++ b/src/lib/components/ui/background/background.svelte @@ -5,8 +5,13 @@
-
+
diff --git a/src/lib/components/ui/badge/badge.svelte b/src/lib/components/ui/badge/badge.svelte new file mode 100644 index 0000000..9c7457a --- /dev/null +++ b/src/lib/components/ui/badge/badge.svelte @@ -0,0 +1,50 @@ + + + + + + {@render children?.()} + diff --git a/src/lib/components/ui/badge/index.ts b/src/lib/components/ui/badge/index.ts new file mode 100644 index 0000000..64e0aa9 --- /dev/null +++ b/src/lib/components/ui/badge/index.ts @@ -0,0 +1,2 @@ +export { default as Badge } from "./badge.svelte"; +export { badgeVariants, type BadgeVariant } from "./badge.svelte"; diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte new file mode 100644 index 0000000..20e3777 --- /dev/null +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte @@ -0,0 +1,40 @@ + + + + {#snippet children({ checked, indeterminate })} + + {#if indeterminate} + + {:else} + + {/if} + + {@render childrenProp?.()} + {/snippet} + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-content.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-content.svelte new file mode 100644 index 0000000..fdbaa47 --- /dev/null +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-content.svelte @@ -0,0 +1,26 @@ + + + + + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte new file mode 100644 index 0000000..84d5cca --- /dev/null +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte @@ -0,0 +1,19 @@ + + + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte new file mode 100644 index 0000000..70a5236 --- /dev/null +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte @@ -0,0 +1,23 @@ + + + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte new file mode 100644 index 0000000..9837d5a --- /dev/null +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte @@ -0,0 +1,23 @@ + + +
+ {@render children?.()} +
diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte new file mode 100644 index 0000000..0f219da --- /dev/null +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte @@ -0,0 +1,30 @@ + + + + {#snippet children({ checked })} + + {#if checked} + + {/if} + + {@render childrenProp?.({ checked })} + {/snippet} + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-separator.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-separator.svelte new file mode 100644 index 0000000..32fac4b --- /dev/null +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-separator.svelte @@ -0,0 +1,16 @@ + + + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte new file mode 100644 index 0000000..053e2a2 --- /dev/null +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte @@ -0,0 +1,20 @@ + + + + {@render children?.()} + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte new file mode 100644 index 0000000..0bb6eea --- /dev/null +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte @@ -0,0 +1,19 @@ + + + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte new file mode 100644 index 0000000..c2dcd32 --- /dev/null +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte @@ -0,0 +1,28 @@ + + + + {@render children?.()} + + diff --git a/src/lib/components/ui/dropdown-menu/index.ts b/src/lib/components/ui/dropdown-menu/index.ts new file mode 100644 index 0000000..40c4502 --- /dev/null +++ b/src/lib/components/ui/dropdown-menu/index.ts @@ -0,0 +1,50 @@ +import { DropdownMenu as DropdownMenuPrimitive } from "bits-ui"; +import CheckboxItem from "./dropdown-menu-checkbox-item.svelte"; +import Content from "./dropdown-menu-content.svelte"; +import GroupHeading from "./dropdown-menu-group-heading.svelte"; +import Item from "./dropdown-menu-item.svelte"; +import Label from "./dropdown-menu-label.svelte"; +import RadioItem from "./dropdown-menu-radio-item.svelte"; +import Separator from "./dropdown-menu-separator.svelte"; +import Shortcut from "./dropdown-menu-shortcut.svelte"; +import SubContent from "./dropdown-menu-sub-content.svelte"; +import SubTrigger from "./dropdown-menu-sub-trigger.svelte"; + +const Sub = DropdownMenuPrimitive.Sub; +const Root = DropdownMenuPrimitive.Root; +const Trigger = DropdownMenuPrimitive.Trigger; +const Group = DropdownMenuPrimitive.Group; +const RadioGroup = DropdownMenuPrimitive.RadioGroup; + +export { + CheckboxItem, + Content, + Root as DropdownMenu, + CheckboxItem as DropdownMenuCheckboxItem, + Content as DropdownMenuContent, + Group as DropdownMenuGroup, + GroupHeading as DropdownMenuGroupHeading, + Item as DropdownMenuItem, + Label as DropdownMenuLabel, + RadioGroup as DropdownMenuRadioGroup, + RadioItem as DropdownMenuRadioItem, + Separator as DropdownMenuSeparator, + Shortcut as DropdownMenuShortcut, + Sub as DropdownMenuSub, + SubContent as DropdownMenuSubContent, + SubTrigger as DropdownMenuSubTrigger, + Trigger as DropdownMenuTrigger, + Group, + GroupHeading, + Item, + Label, + RadioGroup, + RadioItem, + Root, + Separator, + Shortcut, + Sub, + SubContent, + SubTrigger, + Trigger, +}; diff --git a/src/lib/components/ui/logo/logo.svelte b/src/lib/components/ui/logo/logo.svelte index d53e3db..d6031f9 100644 --- a/src/lib/components/ui/logo/logo.svelte +++ b/src/lib/components/ui/logo/logo.svelte @@ -1,9 +1,6 @@
(hovered = false)} onclick={() => { if (extended) { - playAudio("/audio/menuBack.wav", 1); + playAudio("/audio/menuBack.wav", 0.35); } else { - playAudio("/audio/menuHit.wav", 1); + playAudio("/audio/menuHit.wav", 0.35); } onclick(); }} diff --git a/src/routes/+layout.ts b/src/routes/+layout.ts index f4fb689..958328b 100644 --- a/src/routes/+layout.ts +++ b/src/routes/+layout.ts @@ -3,3 +3,4 @@ // See: https://v2.tauri.app/start/frontend/sveltekit/ for more info export const prerender = true; export const ssr = false; + diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index d0ae83c..f95d8ed 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -3,18 +3,56 @@ import Button from "@/components/ui/button/button.svelte"; import Logo from "@/components/ui/logo/logo.svelte"; import * as Avatar from "@/components/ui/avatar"; + import * as DropdownMenu from "@/components/ui/dropdown-menu"; import Progressbar from "@/components/ui/progressbar/progressbar.svelte"; + import Settings from "lucide-svelte/icons/settings"; + import LogOut from "lucide-svelte/icons/log-out"; + import Heart from "lucide-svelte/icons/heart"; + import { badgeVariants } from "@/components/ui/badge"; + import { twMerge } from "tailwind-merge"; let progress = $state(0); let extended = $state(false);
-
- - U - - +
+ + +
+

+ +

+ + U + + +
+
+ + + Hello, Quetzalcoatl! + + + + + Settings + + + + + + Log out + + + +