add base layout

This commit is contained in:
yzned
2025-07-19 12:55:03 +03:00
committed by yzned
parent d249f0d291
commit de28d80769
13 changed files with 238 additions and 17 deletions

View File

@@ -0,0 +1,17 @@
import { Button } from "../ui/button";
import { observer } from "mobx-react-lite";
import { useAccountStore } from "@/contexts/AccountContext";
export const MainMenu = observer(() => {
const { isMainMenuOpen, setIsMainMenuOpen } = useAccountStore();
return (
<div
data-open={isMainMenuOpen}
className="w-[30px] data-[open=true]:w-[124px] transition-all border-r p-2"
>
<Button onClick={() => setIsMainMenuOpen(!isMainMenuOpen)}>
{isMainMenuOpen ? "Close" : "Open"}
</Button>
</div>
);
});

View File

@@ -0,0 +1,24 @@
import { useAccountStore } from "@/contexts/AccountContext";
import { Button } from "../ui/button";
import { observer } from "mobx-react-lite";
export const Chat = observer(() => {
const { isSandboxOpen, setIsSandboxOpen, isMainMenuOpen, setIsMainMenuOpen } =
useAccountStore();
return (
<div className="flex-1">
<Button
onClick={() => {
setIsSandboxOpen(!isSandboxOpen);
if (isMainMenuOpen && !isSandboxOpen) {
setIsMainMenuOpen(false);
}
}}
className="ml-10"
>
OPEN SANDBOX
</Button>
</div>
);
});

View File

@@ -0,0 +1,15 @@
import { useAccountStore } from "@/contexts/AccountContext";
import { observer } from "mobx-react-lite";
export const Sandbox = observer(() => {
const { isSandboxOpen } = useAccountStore();
return (
<div
data-open={isSandboxOpen}
className="w-0 data-[open=true]:w-[40svw] border-l-1 transition-all border-r p-0 bg-red-600"
>
SANDBOOOOX
</div>
);
});