Testing functionality of the workspace storing and receiving

This commit is contained in:
2026-02-27 21:37:42 +01:00
parent 1a51dc8467
commit 3c17c73390
6 changed files with 86 additions and 26 deletions
+21 -6
View File
@@ -2,25 +2,40 @@
import Router from "@/components/Router";
import AppSidebar, { SidebarTrigger } from "@/components/sidebar/AppSidebar";
import useWorkspace from "@/hooks/workspace";
import { useWorkspace } from "@/hooks/workspace";
import { ChevronRight } from "lucide-react";
import Cookies from "js-cookie";
import { useEffect, useState } from "react";
import { EntityId } from "@/lib/types";
export default function Workspace() {
const workspace = useWorkspace();
const [currentWorkspace, setCurrentWorkspace] = useState<string>();
return (
<AppSidebar workspace={workspace}>
const { workspace, loadWorkspace } = useWorkspace();
const [route, setRoute] = useState<EntityId>();
useEffect(() => {
setCurrentWorkspace(Cookies.get("workspace"));
}, []);
useEffect(() => {
loadWorkspace(currentWorkspace);
}, [currentWorkspace]);
return workspace ? (
<AppSidebar workspace={workspace} setRoute={setRoute}>
<SidebarTrigger className="w-full px-4">
<div className="px-4">
<header className="w-full border-b-2 pb-3 pt-2 hover:bg-accent/20 flex items-center text-foreground/90">
{workspace.name}
<ChevronRight className="h-5" />
{workspace.entities[workspace.route].name}
{workspace.entities[route || ""]?.name}
</header>
</div>
</SidebarTrigger>
<Router workspace={workspace} />
</AppSidebar>
);
) : null;
}