From a6fa4e28f53dd8e54d4c9621dec2340a934f601f Mon Sep 17 00:00:00 2001 From: pompurin404 Date: Sun, 1 Sep 2024 17:26:09 +0800 Subject: [PATCH] adjust style --- src/renderer/src/App.tsx | 45 +++++----------- .../src/components/base/base-page.tsx | 34 ++++++++++-- src/renderer/src/pages/connections.tsx | 43 ++++++++------- src/renderer/src/pages/override.tsx | 12 ++++- src/renderer/src/pages/profiles.tsx | 9 ++-- src/renderer/src/pages/proxies.tsx | 15 +++--- src/renderer/src/pages/settings.tsx | 2 + src/renderer/src/pages/syspeoxy.tsx | 18 +++++-- src/renderer/src/pages/tun.tsx | 53 +++++++++++-------- 9 files changed, 136 insertions(+), 95 deletions(-) diff --git a/src/renderer/src/App.tsx b/src/renderer/src/App.tsx index 0482079..a9fe438 100644 --- a/src/renderer/src/App.tsx +++ b/src/renderer/src/App.tsx @@ -5,7 +5,6 @@ import OutboundModeSwitcher from '@renderer/components/sider/outbound-mode-switc import SysproxySwitcher from '@renderer/components/sider/sysproxy-switcher' import TunSwitcher from '@renderer/components/sider/tun-switcher' import { Button, Divider } from '@nextui-org/react' -import { BsFillPinFill } from 'react-icons/bs' import { IoSettings } from 'react-icons/io5' import routes from '@renderer/routes' import { @@ -29,7 +28,7 @@ import MihomoCoreCard from '@renderer/components/sider/mihomo-core-card' import ResourceCard from '@renderer/components/sider/resource-card' import UpdaterButton from '@renderer/components/updater/updater-button' import { useAppConfig } from './hooks/use-app-config' -import { isAlwaysOnTop, setAlwaysOnTop, setNativeTheme, setTitleBarOverlay } from './utils/ipc' +import { setNativeTheme, setTitleBarOverlay } from './utils/ipc' import { platform } from './utils/init' import { TitleBarOverlayOptions } from 'electron' @@ -57,16 +56,11 @@ const App: React.FC = () => { } = appConfig || {} const [order, setOrder] = useState(siderOrder) const sensors = useSensors(useSensor(PointerSensor)) - const [onTop, setOnTop] = useState(false) const { setTheme, systemTheme } = useTheme() const navigate = useNavigate() const location = useLocation() const page = useRoutes(routes) - const updateAlwaysOnTop = async (): Promise => { - setOnTop(await isAlwaysOnTop()) - } - useEffect(() => { setOrder(siderOrder) }, [siderOrder]) @@ -147,33 +141,18 @@ const App: React.FC = () => { Mihomo Party -
-
+ + + + } > diff --git a/src/renderer/src/pages/override.tsx b/src/renderer/src/pages/override.tsx index 62ad548..362406f 100644 --- a/src/renderer/src/pages/override.tsx +++ b/src/renderer/src/pages/override.tsx @@ -23,6 +23,8 @@ import { SortableContext } from '@dnd-kit/sortable' import { useOverrideConfig } from '@renderer/hooks/use-override-config' import OverrideItem from '@renderer/components/override/override-item' import { FaPlus } from 'react-icons/fa6' +import { HiOutlineDocumentText } from 'react-icons/hi' +import { RiArchiveLine } from 'react-icons/ri' const Override: React.FC = () => { const { @@ -124,21 +126,27 @@ const Override: React.FC = () => { <> } diff --git a/src/renderer/src/pages/profiles.tsx b/src/renderer/src/pages/profiles.tsx index b1950fc..25be3d6 100644 --- a/src/renderer/src/pages/profiles.tsx +++ b/src/renderer/src/pages/profiles.tsx @@ -24,6 +24,7 @@ import { } from '@dnd-kit/core' import { SortableContext } from '@dnd-kit/sortable' import { FaPlus } from 'react-icons/fa6' +import { IoMdRefresh } from 'react-icons/io' const Profiles: React.FC = () => { const { @@ -114,6 +115,7 @@ const Profiles: React.FC = () => { <> } diff --git a/src/renderer/src/pages/proxies.tsx b/src/renderer/src/pages/proxies.tsx index 756c52c..b79d21e 100644 --- a/src/renderer/src/pages/proxies.tsx +++ b/src/renderer/src/pages/proxies.tsx @@ -8,7 +8,6 @@ import { mihomoProxyDelay } from '@renderer/utils/ipc' import { CgDetailsLess, CgDetailsMore } from 'react-icons/cg' -import { FaBoltLightning } from 'react-icons/fa6' import { TbCircleLetterD } from 'react-icons/tb' import { FaLocationCrosshairs } from 'react-icons/fa6' import { RxLetterCaseCapitalize } from 'react-icons/rx' @@ -113,6 +112,7 @@ const Proxies: React.FC = () => { diff --git a/src/renderer/src/pages/settings.tsx b/src/renderer/src/pages/settings.tsx index 7305b2d..6d59990 100644 --- a/src/renderer/src/pages/settings.tsx +++ b/src/renderer/src/pages/settings.tsx @@ -17,6 +17,7 @@ const Settings: React.FC = () => { + changed && ( + + ) } > {openPacEditor && ( diff --git a/src/renderer/src/pages/tun.tsx b/src/renderer/src/pages/tun.tsx index 125b05f..0b46d07 100644 --- a/src/renderer/src/pages/tun.tsx +++ b/src/renderer/src/pages/tun.tsx @@ -23,8 +23,8 @@ const Tun: React.FC = () => { 'strict-route': strictRoute = false, mtu = 1500 } = tun || {} - - const [values, setValues] = useState({ + const [changed, setChanged] = useState(false) + const [values, originSetValues] = useState({ device, stack, autoRoute, @@ -34,10 +34,15 @@ const Tun: React.FC = () => { strictRoute, mtu }) + const setValues = (v: typeof values): void => { + originSetValues(v) + setChanged(true) + } const onSave = async (patch: Partial): Promise => { await patchControledMihomoConfig(patch) await restartCore() + setChanged(false) } return ( @@ -60,27 +65,29 @@ const Tun: React.FC = () => { - onSave({ - tun: { - device: values.device, - stack: values.stack, - 'auto-route': values.autoRoute, - 'auto-redirect': values.autoRedirect, - 'auto-detect-interface': values.autoDetectInterface, - 'dns-hijack': values.dnsHijack, - 'strict-route': values.strictRoute, - mtu: values.mtu - } - }) - } - > - 保存 - + changed && ( + + ) } >