refactor: rewrite and organize project

still need to add other features from before rewrite
This commit is contained in:
trafficlunar 2024-12-12 22:38:53 +00:00
parent 025371bd79
commit de06203d31
20 changed files with 416 additions and 346 deletions

View file

@ -1,5 +1,5 @@
import { MenubarRadioGroup, MenubarRadioItem, MenubarSub, MenubarSubContent, MenubarSubTrigger } from '@/components/ui/menubar';
import { useTheme } from '../theme-provider';
import { useTheme } from '@/context/ThemeContext';
function ThemeChanger() {
const { setTheme, theme } = useTheme();
@ -8,7 +8,7 @@ function ThemeChanger() {
<MenubarSub>
<MenubarSubTrigger>Set theme...</MenubarSubTrigger>
<MenubarSubContent>
<MenubarRadioGroup value={theme} onValueChange={(value) => setTheme(value)}>
<MenubarRadioGroup value={theme} onValueChange={(value) => setTheme(value as Theme)}>
<MenubarRadioItem value='light'>Light</MenubarRadioItem>
<MenubarRadioItem value='dark'>Dark</MenubarRadioItem>
<MenubarRadioItem value='system'>System</MenubarRadioItem>

View file

@ -0,0 +1,51 @@
import {
Menubar as UIMenubar,
MenubarContent,
MenubarItem,
MenubarMenu,
MenubarSeparator,
MenubarSub,
MenubarSubContent,
MenubarSubTrigger,
MenubarTrigger,
} from "@/components/ui/menubar";
import ThemeChanger from "./ThemeChanger";
function Menubar() {
return (
<UIMenubar className="rounded-none border-t-0 border-x-0 col-span-2">
<MenubarMenu>
<a href="https://github.com/trafficlunar/blockmatic" className="ml-4 mr-2">
blockmatic
</a>
<MenubarTrigger>File</MenubarTrigger>
<MenubarContent>
<MenubarItem>Open Schematic</MenubarItem>
<MenubarItem>Open Image</MenubarItem>
<MenubarSeparator />
<MenubarSub>
<MenubarSubTrigger>Export to...</MenubarSubTrigger>
<MenubarSubContent>
<MenubarItem>.schematic</MenubarItem>
<MenubarItem>.litematic</MenubarItem>
<MenubarItem>image</MenubarItem>
</MenubarSubContent>
</MenubarSub>
</MenubarContent>
</MenubarMenu>
<MenubarMenu>
<MenubarTrigger>More</MenubarTrigger>
<MenubarContent>
<ThemeChanger />
</MenubarContent>
</MenubarMenu>
</UIMenubar>
);
}
export default Menubar;