import { UsersIcon, ServerIcon, BoxIcon, ServerCogIcon, SettingsIcon, } from "lucide-react"; import { useState, useEffect } from "react"; import { useTranslation } from "react-i18next"; import { CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, } from "@marzneshin/components"; import { useNavigate } from "@tanstack/react-router"; import { SearchBox } from "./search-box"; export function CommandBox() { const [open, setOpen] = useState(false); const { t } = useTranslation(); const navigate = useNavigate(); useEffect(() => { const down = (e: KeyboardEvent) => { if (e.key === "k" && (e.metaKey || e.ctrlKey)) { e.preventDefault(); setOpen((open) => !open); } }; document.addEventListener("keydown", down); return () => document.removeEventListener("keydown", down); }, []); return ( <> setOpen(true)} /> No results found. { navigate({ to: "/users" }); setOpen(false); }} > {t("users")} { navigate({ to: "/services" }); setOpen(false); }} > {t("services")} { navigate({ to: "/nodes" }); setOpen(false); }} > {t("nodes")} { navigate({ to: "/hosts" }); setOpen(false); }} > {t("hosts")} { navigate({ to: "/settings" }); setOpen(false); }} > {t("settings")} ); }