From 61e7df77a72db73a9aace95b911152c95225d3c8 Mon Sep 17 00:00:00 2001
From: GyDi <segydi@foxmail.com>
Date: Mon, 16 May 2022 20:18:56 +0800
Subject: [PATCH] feat: script mode

---
 src/locales/en.json   | 1 +
 src/locales/zh.json   | 1 +
 src/pages/proxies.tsx | 7 ++++---
 3 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/locales/en.json b/src/locales/en.json
index 7d1b06b..e72831b 100644
--- a/src/locales/en.json
+++ b/src/locales/en.json
@@ -13,6 +13,7 @@
   "rule": "rule",
   "global": "global",
   "direct": "direct",
+  "script": "script",
   "Profiles": "Profiles",
   "Profile URL": "Profile URL",
   "Import": "Import",
diff --git a/src/locales/zh.json b/src/locales/zh.json
index 8894cfb..4264184 100644
--- a/src/locales/zh.json
+++ b/src/locales/zh.json
@@ -13,6 +13,7 @@
   "rule": "规则",
   "global": "全局",
   "direct": "ç›´è¿ž",
+  "script": "脚本",
   "Profiles": "配置",
   "Profile URL": "配置文件链接",
   "Import": "导入",
diff --git a/src/pages/proxies.tsx b/src/pages/proxies.tsx
index d848850..7001bd5 100644
--- a/src/pages/proxies.tsx
+++ b/src/pages/proxies.tsx
@@ -16,7 +16,7 @@ const ProxyPage = () => {
   const { data: proxiesData } = useSWR("getProxies", getProxies);
   const { data: clashConfig } = useSWR("getClashConfig", getClashConfig);
 
-  const modeList = ["rule", "global", "direct"];
+  const modeList = ["rule", "global", "direct", "script"];
   const curMode = clashConfig?.mode.toLowerCase();
   const { groups = [], proxies = [] } = proxiesData ?? {};
 
@@ -38,7 +38,8 @@ const ProxyPage = () => {
   });
 
   // difference style
-  const showGroup = curMode === "rule" && !!groups.length;
+  const showGroup =
+    (curMode === "rule" || curMode === "script") && !!groups.length;
   const pageStyle = showGroup ? {} : { height: "100%" };
   const paperStyle: any = showGroup
     ? { mb: 0.5 }
@@ -64,7 +65,7 @@ const ProxyPage = () => {
       }
     >
       <Paper sx={{ borderRadius: 1, boxShadow: 2, ...paperStyle }}>
-        {curMode === "rule" && !!groups.length && (
+        {(curMode === "rule" || curMode === "script") && !!groups.length && (
           <List>
             {groups.map((group) => (
               <ProxyGroup key={group.name} group={group} />
-- 
GitLab