diff --git a/frontend/src/pages/settings/SubscriptionGeneralTab.tsx b/frontend/src/pages/settings/SubscriptionGeneralTab.tsx
index 67c3b2e5a..8ba2a048f 100644
--- a/frontend/src/pages/settings/SubscriptionGeneralTab.tsx
+++ b/frontend/src/pages/settings/SubscriptionGeneralTab.tsx
@@ -1,6 +1,6 @@
import { useMemo } from 'react';
-import { Divider, Input, InputNumber, Select, Space, Switch, Tabs } from 'antd';
-import { ClockCircleOutlined, InfoCircleOutlined, SafetyCertificateOutlined, SettingOutlined } from '@ant-design/icons';
+import { Input, InputNumber, Select, Space, Switch, Tabs } from 'antd';
+import { BranchesOutlined, IdcardOutlined, InfoCircleOutlined, NodeIndexOutlined, SafetyCertificateOutlined, SettingOutlined } from '@ant-design/icons';
import { useTranslation } from 'react-i18next';
import type { AllSetting } from '@/models/setting';
import { SettingListItem } from '@/components/ui';
@@ -139,8 +139,18 @@ export default function SubscriptionGeneralTab({ allSetting, updateSetting }: Su
- {t('pages.settings.subTitle')}
-
+
+ updateSetting({ subUpdates: Number(v) || 0 })} />
+
+ >
+ ),
+ },
+ {
+ key: '3',
+ label: catTabLabel(, t('pages.settings.profile'), isMobile),
+ children: (
+ <>
updateSetting({ subTitle: e.target.value })} />
@@ -156,7 +166,6 @@ export default function SubscriptionGeneralTab({ allSetting, updateSetting }: Su
updateSetting({ subAnnounce: e.target.value })} />
-
updateSetting({ subThemeDir: e.target.value })} />
-
- Happ
-
+ >
+ ),
+ },
+ {
+ key: '4',
+ label: catTabLabel(, t('pages.settings.certs'), isMobile),
+ children: (
+ <>
+
+ updateSetting({ subCertFile: e.target.value })} />
+
+
+ updateSetting({ subKeyFile: e.target.value })} />
+
+ >
+ ),
+ },
+ {
+ key: '5',
+ label: catTabLabel(, 'Happ', isMobile),
+ children: (
+ <>
updateSetting({ subEnableRouting: v })} />
@@ -186,9 +214,14 @@ export default function SubscriptionGeneralTab({ allSetting, updateSetting }: Su
updateSetting({ subRoutingRules: e.target.value })} />
-
- Clash / Mihomo
-
+ >
+ ),
+ },
+ {
+ key: '6',
+ label: catTabLabel(, 'Clash / Mihomo', isMobile),
+ children: (
+ <>
updateSetting({ subClashEnableRouting: v })} />
@@ -203,32 +236,6 @@ export default function SubscriptionGeneralTab({ allSetting, updateSetting }: Su
>
),
},
- {
- key: '3',
- label: catTabLabel(, t('pages.settings.certs'), isMobile),
- children: (
- <>
-
- updateSetting({ subCertFile: e.target.value })} />
-
-
- updateSetting({ subKeyFile: e.target.value })} />
-
- >
- ),
- },
- {
- key: '4',
- label: catTabLabel(, t('pages.settings.intervals'), isMobile),
- children: (
- <>
-
- updateSetting({ subUpdates: Number(v) || 0 })} />
-
- >
- ),
- },
]} />
);
}
diff --git a/internal/web/translation/ar-EG.json b/internal/web/translation/ar-EG.json
index d8acc4139..5b2bf785c 100644
--- a/internal/web/translation/ar-EG.json
+++ b/internal/web/translation/ar-EG.json
@@ -1151,6 +1151,7 @@
"proxyAndServer": "البروكسي والسيرفر",
"intervals": "الفترات",
"information": "المعلومات",
+ "profile": "الملف الشخصي",
"language": "اللغة",
"telegramBotLanguage": "لغة بوت Telegram",
"security": {
diff --git a/internal/web/translation/en-US.json b/internal/web/translation/en-US.json
index a4f0c9d44..d006059cf 100644
--- a/internal/web/translation/en-US.json
+++ b/internal/web/translation/en-US.json
@@ -1152,6 +1152,7 @@
"proxyAndServer": "Proxy and Server",
"intervals": "Intervals",
"information": "Information",
+ "profile": "Profile",
"language": "Language",
"telegramBotLanguage": "Telegram Bot Language",
"security": {
diff --git a/internal/web/translation/es-ES.json b/internal/web/translation/es-ES.json
index 3aa2b9c6c..08aeb42d2 100644
--- a/internal/web/translation/es-ES.json
+++ b/internal/web/translation/es-ES.json
@@ -1151,6 +1151,7 @@
"proxyAndServer": "Proxy y Servidor",
"intervals": "Intervalos",
"information": "Información",
+ "profile": "Perfil",
"language": "Idioma",
"telegramBotLanguage": "Idioma del Bot de Telegram",
"security": {
diff --git a/internal/web/translation/fa-IR.json b/internal/web/translation/fa-IR.json
index 66a7d62fd..b318fa24d 100644
--- a/internal/web/translation/fa-IR.json
+++ b/internal/web/translation/fa-IR.json
@@ -1151,6 +1151,7 @@
"proxyAndServer": "پراکسی و سرور",
"intervals": "فواصل",
"information": "اطلاعات",
+ "profile": "پروفایل",
"language": "زبان",
"telegramBotLanguage": "زبان ربات تلگرام",
"security": {
diff --git a/internal/web/translation/id-ID.json b/internal/web/translation/id-ID.json
index 373529d06..f97ea600d 100644
--- a/internal/web/translation/id-ID.json
+++ b/internal/web/translation/id-ID.json
@@ -1151,6 +1151,7 @@
"proxyAndServer": "Proxy dan Server",
"intervals": "Interval",
"information": "Informasi",
+ "profile": "Profil",
"language": "Bahasa",
"telegramBotLanguage": "Bahasa Bot Telegram",
"security": {
diff --git a/internal/web/translation/ja-JP.json b/internal/web/translation/ja-JP.json
index f6df1fe82..bf4f37e88 100644
--- a/internal/web/translation/ja-JP.json
+++ b/internal/web/translation/ja-JP.json
@@ -1151,6 +1151,7 @@
"proxyAndServer": "プロキシとサーバー",
"intervals": "間隔",
"information": "情報",
+ "profile": "プロフィール",
"language": "言語",
"telegramBotLanguage": "Telegram Botの言語",
"security": {
diff --git a/internal/web/translation/pt-BR.json b/internal/web/translation/pt-BR.json
index b6e80d246..c915340d2 100644
--- a/internal/web/translation/pt-BR.json
+++ b/internal/web/translation/pt-BR.json
@@ -1151,6 +1151,7 @@
"proxyAndServer": "Proxy e Servidor",
"intervals": "Intervalos",
"information": "Informação",
+ "profile": "Perfil",
"language": "Idioma",
"telegramBotLanguage": "Idioma do Bot do Telegram",
"security": {
diff --git a/internal/web/translation/ru-RU.json b/internal/web/translation/ru-RU.json
index 282614a14..871c28d55 100644
--- a/internal/web/translation/ru-RU.json
+++ b/internal/web/translation/ru-RU.json
@@ -1151,6 +1151,7 @@
"proxyAndServer": "Прокси и сервер",
"intervals": "Интервалы",
"information": "Информация",
+ "profile": "Профиль",
"language": "Язык интерфейса",
"telegramBotLanguage": "Язык Telegram-бота",
"security": {
diff --git a/internal/web/translation/tr-TR.json b/internal/web/translation/tr-TR.json
index 3a5806b4b..340acc257 100644
--- a/internal/web/translation/tr-TR.json
+++ b/internal/web/translation/tr-TR.json
@@ -1150,6 +1150,7 @@
"proxyAndServer": "Proxy ve Sunucu",
"intervals": "Aralıklar",
"information": "Bilgi",
+ "profile": "Profil",
"language": "Dil",
"telegramBotLanguage": "Telegram Bot Dili",
"security": {
diff --git a/internal/web/translation/uk-UA.json b/internal/web/translation/uk-UA.json
index b6e2566fd..d737fd151 100644
--- a/internal/web/translation/uk-UA.json
+++ b/internal/web/translation/uk-UA.json
@@ -1151,6 +1151,7 @@
"proxyAndServer": "Проксі та сервер",
"intervals": "Інтервали",
"information": "Інформація",
+ "profile": "Профіль",
"language": "Мова",
"telegramBotLanguage": "Мова Telegram-бота",
"security": {
diff --git a/internal/web/translation/vi-VN.json b/internal/web/translation/vi-VN.json
index 243d72907..212665598 100644
--- a/internal/web/translation/vi-VN.json
+++ b/internal/web/translation/vi-VN.json
@@ -1151,6 +1151,7 @@
"proxyAndServer": "Proxy và máy chủ",
"intervals": "Khoảng thời gian",
"information": "Thông tin",
+ "profile": "Hồ sơ",
"language": "Ngôn ngữ",
"telegramBotLanguage": "Ngôn ngữ của Bot Telegram",
"security": {
diff --git a/internal/web/translation/zh-CN.json b/internal/web/translation/zh-CN.json
index 0d651c1bc..7209a99aa 100644
--- a/internal/web/translation/zh-CN.json
+++ b/internal/web/translation/zh-CN.json
@@ -1151,6 +1151,7 @@
"proxyAndServer": "代理和服务器",
"intervals": "间隔",
"information": "信息",
+ "profile": "资料",
"language": "语言",
"telegramBotLanguage": "Telegram 机器人语言",
"security": {
diff --git a/internal/web/translation/zh-TW.json b/internal/web/translation/zh-TW.json
index bd2d75a46..f59ba7aae 100644
--- a/internal/web/translation/zh-TW.json
+++ b/internal/web/translation/zh-TW.json
@@ -1151,6 +1151,7 @@
"proxyAndServer": "代理和伺服器",
"intervals": "間隔",
"information": "資訊",
+ "profile": "資料",
"language": "語言",
"telegramBotLanguage": "Telegram 機器人語言",
"security": {