feat: add restart core button

This commit is contained in:
GyDi 2023-03-16 20:56:37 +08:00
parent 66d93ea037
commit 9a29c9abdd
No known key found for this signature in database
GPG Key ID: 9C3AD40F1F99880A
3 changed files with 29 additions and 3 deletions

View File

@ -5,8 +5,15 @@ import { useTranslation } from "react-i18next";
import { useVerge } from "@/hooks/use-verge";
import { useLockFn } from "ahooks";
import { Lock } from "@mui/icons-material";
import { IconButton, List, ListItemButton, ListItemText } from "@mui/material";
import { changeClashCore } from "@/services/cmds";
import {
Box,
Button,
IconButton,
List,
ListItemButton,
ListItemText,
} from "@mui/material";
import { changeClashCore, restartSidecar } from "@/services/cmds";
import { closeAllConnections } from "@/services/api";
import { grantPermission } from "@/services/cmds";
import getSystem from "@/utils/get-system";
@ -58,10 +65,27 @@ export const ClashCoreViewer = forwardRef<DialogRef>((props, ref) => {
}
});
const onRestart = useLockFn(async () => {
try {
await restartSidecar();
Notice.success(`Successfully restart core`, 1000);
} catch (err: any) {
Notice.error(err?.message || err.toString());
}
});
return (
<BaseDialog
open={open}
title={t("Clash Core")}
title={
<Box display="flex" justifyContent="space-between">
{t("Clash Core")}
<Button variant="contained" size="small" onClick={onRestart}>
{t("Restart")}
</Button>
</Box>
}
contentSx={{
pb: 0,
width: 320,

View File

@ -91,6 +91,7 @@
"Clash Field": "Clash Field",
"Runtime Config": "Runtime Config",
"ReadOnly": "ReadOnly",
"Restart": "Restart",
"Back": "Back",
"Save": "Save",

View File

@ -95,6 +95,7 @@
"Clash Field": "Clash 字段",
"Runtime Config": "运行配置",
"ReadOnly": "只读",
"Restart": "重启内核",
"Back": "返回",
"Save": "保存",