import { Link, Navigate, Outlet, useLocation, useNavigate } from "react-router-dom"; import { useTranslation } from "react-i18next"; import { CircleUser, Home, Menu, Server, ShieldCheck, Workflow } from "lucide-react"; import LocaleToggle from "@/components/LocaleToggle"; import { ThemeToggle } from "@/components/ThemeToggle"; import { cn } from "@/components/ui/utils"; import { Button } from "@/components/ui/button"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from "@/components/ui/dropdown-menu"; import { Sheet, SheetContent, SheetTrigger } from "@/components/ui/sheet"; import { getPocketBase } from "@/repository/pocketbase"; import { ConfigProvider } from "@/providers/config"; import Version from "@/components/certimate/Version"; export default function Dashboard() { const navigate = useNavigate(); const location = useLocation(); const { t } = useTranslation(); if (!getPocketBase().authStore.isValid || !getPocketBase().authStore.isAdmin) { return ; } const currentPath = location.pathname; const getClass = (path: string) => { if (path == currentPath) { return "bg-muted text-primary"; } return "text-muted-foreground"; }; const handleLogoutClick = () => { getPocketBase().authStore.clear(); navigate("/login"); }; const handleSettingClick = () => { navigate("/setting/account"); }; return ( <> Certimate {t("dashboard.page.title")} {t("workflow.page.title")} {t("certificate.page.title")} {t("access.page.title")} Toggle navigation menu Certimate Certimate {t("dashboard.page.title")} {t("workflow.page.title")} {t("certificate.page.title")} {t("access.page.title")} Toggle user menu {t("common.menu.settings")} {t("common.menu.logout")} > ); }