import Logger from "@App/pages/options/routes/Logger"; import ScriptEditor from "@App/pages/options/routes/script/ScriptEditor"; import ScriptList from "@App/pages/options/routes/ScriptList"; import Setting from "@App/pages/options/routes/Setting"; import SubscribeList from "@App/pages/options/routes/SubscribeList"; import Tools from "@App/pages/options/routes/Tools"; import { Layout, Menu } from "@arco-design/web-react"; import { IconCode, IconFile, IconGithub, IconLeft, IconLink, IconQuestion, IconRight, IconSettings, IconSubscribe, IconTool, } from "@arco-design/web-react/icon"; import React, { useRef, useState } from "react"; import { HashRouter, Route, Routes } from "react-router-dom"; import { useTranslation } from "react-i18next"; import { RiFileCodeLine, RiGuideLine, RiLinkM } from "react-icons/ri"; import SiderGuide from "./SiderGuide"; import CustomLink from "../CustomLink"; const MenuItem = Menu.Item; let { hash } = window.location; if (!hash.length) { hash = "/"; } else { hash = hash.substring(1); } const Sider: React.FC = () => { const [menuSelect, setMenuSelect] = useState(hash); const [collapsed, setCollapsed] = useState(localStorage.collapsed === "true"); const { t } = useTranslation(); const guideRef = useRef<{ open: () => void }>(null); return (
{ setMenuSelect(key); }} > {t("installed_scripts")} {t("subscribe")} {t("logs")} {t("tools")} {t("settings")} { setMenuSelect(key); }} mode="pop" > {t("helpcenter")} } triggerProps={{ trigger: "hover", }} > {t("external_links")} } > {t("api_docs")} {t("development_guide")} {t("script_gallery")} {t("community_forum")} GitHub { guideRef.current?.open(); }} > {t("guide")} {t("user_guide")} { localStorage.collapsed = !collapsed; setCollapsed(!collapsed); }} > {collapsed ? : } {t("collapsible")}
} /> } /> } /> } /> } /> } /> } />
); }; export default Sider;