import DashboardHeader from "@/components/dashboard/dashboard-header"; import DashboardSidebar from "@/components/dashboard/dashboard-sidebar"; import { SidebarProvider } from "@/components/ui/sidebar"; import { useMeQuery } from "@/features/auth/queries/auth.queries"; import { sidebar } from "@/lib/constant/dashboard"; import { Navigate, Outlet, useLocation } from "react-router"; const AUTH_PATHS = ["/login", "/register", "/forgot-password", "/reset-password", "/verify-email"]; export default function DashboardLayout() { const { data: user, isLoading } = useMeQuery(); const { pathname } = useLocation(); if (isLoading) { return (
); } if (user && AUTH_PATHS.includes(pathname)) { const dest = user.role === "ADMIN" ? "/dashboard/admin" : "/dashboard"; return ; } if (!user) { return (
); } const role = user.role in sidebar ? (user.role as keyof typeof sidebar) : "USER"; return (
); }