refactor(i18n): consolidate duplicate per-feature translations into shared namespace

This commit is contained in:
Slinetrac
2025-11-06 09:49:21 +08:00
Unverified
parent 21fcada098
commit 03bc5b5d41
25 changed files with 46 additions and 277 deletions

View File

@@ -70,11 +70,11 @@ const InnerConnectionDetail = ({ data, onClose }: InnerProps) => {
const information = [
{ label: t("connections.components.fields.host"), value: host },
{
label: t("connections.components.fields.downloaded"),
label: t("shared.labels.downloaded"),
value: parseTraffic(data.download).join(" "),
},
{
label: t("connections.components.fields.uploaded"),
label: t("shared.labels.uploaded"),
value: parseTraffic(data.upload).join(" "),
},
{

View File

@@ -168,7 +168,7 @@ export const ConnectionTable = (props: Props) => {
},
{
field: "download",
headerName: t("connections.components.fields.downloaded"),
headerName: t("shared.labels.downloaded"),
width: columnWidths["download"] || 88,
align: "right",
headerAlign: "right",
@@ -176,7 +176,7 @@ export const ConnectionTable = (props: Props) => {
},
{
field: "upload",
headerName: t("connections.components.fields.uploaded"),
headerName: t("shared.labels.uploaded"),
width: columnWidths["upload"] || 88,
align: "right",
headerAlign: "right",

View File

@@ -240,14 +240,14 @@ export const EnhancedTrafficStats = () => {
},
{
icon: <CloudUploadRounded fontSize="small" />,
title: t("home.components.traffic.metrics.uploaded"),
title: t("shared.labels.uploaded"),
value: parsedData.uploadTotal,
unit: parsedData.uploadTotalUnit,
color: "secondary" as const,
},
{
icon: <CloudDownloadRounded fontSize="small" />,
title: t("home.components.traffic.metrics.downloaded"),
title: t("shared.labels.downloaded"),
value: parsedData.downloadTotal,
unit: parsedData.downloadTotalUnit,
color: "primary" as const,

View File

@@ -111,9 +111,7 @@ const ProfileDetails = ({
noWrap
sx={{ display: "flex", alignItems: "center" }}
>
<span style={{ flexShrink: 0 }}>
{t("profiles.components.card.labels.from")}:{" "}
</span>
<span style={{ flexShrink: 0 }}>{t("shared.labels.from")}: </span>
{current.home ? (
<Link
component="button"
@@ -188,7 +186,7 @@ const ProfileDetails = ({
sx={{ cursor: "pointer" }}
onClick={onUpdateProfile}
>
{t("profiles.components.card.labels.updateTime")}:{" "}
{t("shared.labels.updateTime")}:{" "}
<Box component="span" fontWeight="medium">
{dayjs(current.updated * 1000).format("YYYY-MM-DD HH:mm")}
</Box>
@@ -201,7 +199,7 @@ const ProfileDetails = ({
<Stack direction="row" alignItems="center" spacing={1}>
<SpeedOutlined fontSize="small" color="action" />
<Typography variant="body2" color="text.secondary">
{t("profiles.components.card.labels.usedTotal")}:{" "}
{t("shared.labels.usedTotal")}:{" "}
<Box component="span" fontWeight="medium">
{parseTraffic(usedTraffic)} /{" "}
{parseTraffic(current.extra.total)}
@@ -213,7 +211,7 @@ const ProfileDetails = ({
<Stack direction="row" alignItems="center" spacing={1}>
<EventOutlined fontSize="small" color="action" />
<Typography variant="body2" color="text.secondary">
{t("profiles.components.card.labels.expireTime")}:{" "}
{t("shared.labels.expireTime")}:{" "}
<Box component="span" fontWeight="medium">
{parseExpire(current.extra.expire)}
</Box>

View File

@@ -662,11 +662,7 @@ export const GroupsEditorViewer = (props: Props) => {
control={control}
render={({ field }) => (
<Item>
<ListItemText
primary={t(
"profiles.modals.groupsEditor.fields.timeout",
)}
/>
<ListItemText primary={t("shared.labels.timeout")} />
<TextField
autoComplete="new-password"
placeholder="5000"

View File

@@ -255,11 +255,7 @@ export function ProfileViewer({ onChange, ref }: ProfileViewerProps) {
name="name"
control={control}
render={({ field }) => (
<TextField
{...text}
{...field}
label={t("profiles.modals.profileForm.fields.name")}
/>
<TextField {...text} {...field} label={t("shared.labels.name")} />
)}
/>

View File

@@ -160,7 +160,7 @@ export const ProxyHead = ({
value={filterText}
size="small"
variant="outlined"
placeholder={t("proxies.page.placeholders.filter")}
placeholder={t("shared.placeholders.filter")}
onChange={(e) => onHeadState({ filterText: e.target.value })}
sx={{ ml: 0.5, flex: "1 1 auto", input: { py: 0.65, px: 1 } }}
/>

View File

@@ -177,7 +177,7 @@ export const BackupConfigViewer = memo(
</Grid>
<Grid size={{ xs: 6 }}>
<TextField
label={t("settings.modals.backup.fields.password")}
label={t("shared.labels.password")}
type={showPassword ? "text" : "password"}
variant="outlined"
size="small"

View File

@@ -431,7 +431,7 @@ export const LayoutViewer = forwardRef<DialogRef>((_, ref) => {
}}
>
{verge?.common_tray_icon
? t("settings.components.verge.basic.actions.clear")
? t("shared.actions.clear")
: t("settings.components.verge.basic.actions.browse")}
</Button>
</GuardState>
@@ -483,7 +483,7 @@ export const LayoutViewer = forwardRef<DialogRef>((_, ref) => {
}}
>
{verge?.sysproxy_tray_icon
? t("settings.components.verge.basic.actions.clear")
? t("shared.actions.clear")
: t("settings.components.verge.basic.actions.browse")}
</Button>
</GuardState>
@@ -531,7 +531,7 @@ export const LayoutViewer = forwardRef<DialogRef>((_, ref) => {
}}
>
{verge?.tun_tray_icon
? t("settings.components.verge.basic.actions.clear")
? t("shared.actions.clear")
: t("settings.components.verge.basic.actions.browse")}
</Button>
</GuardState>

View File

@@ -128,7 +128,7 @@ export function TunViewer({ ref }: { ref?: Ref<DialogRef> }) {
);
}}
>
{t("settings.modals.tun.actions.reset")}
{t("shared.actions.resetToDefault")}
</Button>
</Box>
}

View File

@@ -246,7 +246,7 @@ const SettingVergeBasic = ({ onError }: Props) => {
patchVerge({ startup_script: "" });
}}
>
{t("settings.components.verge.basic.actions.clear")}
{t("shared.actions.clear")}
</Button>
)}
</>

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "رابط الملف الشخصي",
"actions": {
"paste": "لصق",
"clear": "مسح"
"paste": "لصق"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "من",
"updateTime": "وقت التحديث",
"usedTotal": "المستخدم / الإجمالي",
"expireTime": "وقت الانتهاء",
"clickToImport": "Click to import subscription"
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "النوع",
"name": "الاسم",
"description": "الوصف",
"subscriptionUrl": "رابط الاشتراك",
"httpTimeout": "HTTP Request Timeout",
@@ -278,7 +272,6 @@
"healthCheckUrl": "رابط فحص الصحة",
"expectedStatus": "الحالة المتوقعة",
"interval": "الفاصل الزمني",
"timeout": "مهلة",
"maxFailedTimes": "الحد الأقصى لمحاولات الفشل",
"interfaceName": "اسم الواجهة",
"routingMark": "علامة التوجيه",
@@ -357,7 +350,6 @@
"filter": "تصفية"
},
"placeholders": {
"filter": "شروط التصفية",
"delayCheckUrl": "رابط فحص التأخير"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "المضيف",
"downloaded": "تم التنزيل",
"uploaded": "تم الرفع",
"dlSpeed": "سرعة التنزيل",
"ulSpeed": "سرعة الرفع",
"chains": "السلاسل",
@@ -675,8 +665,6 @@
"uploadSpeed": "سرعة الرفع",
"downloadSpeed": "سرعة التنزيل",
"activeConnections": "Active Connections",
"uploaded": "تم الرفع",
"downloaded": "تم التنزيل",
"memoryUsage": "استهلاك الذاكرة"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "الإعدادات الأساسية Verge",
"actions": {
"browse": "استعراض",
"clear": "مسح"
"browse": "استعراض"
},
"trayOptions": {
"showMainWindow": "إظهار النافذة الرئيسية",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "عنوان خادم WebDAV",
"username": "اسم المستخدم",
"password": "كلمة المرور",
"info": "Backups are stored locally in the application data directory. Use the list below to restore or delete backups."
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "وضع TUN",
"actions": {
"reset": "إعادة تعيين إلى الافتراضي"
},
"fields": {
"stack": "مكدس TUN",
"device": "Device Name",

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "Abonnement-Datei-Link",
"actions": {
"paste": "Einfügen",
"clear": "Löschen"
"paste": "Einfügen"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "Von",
"updateTime": "Aktualisierungszeit",
"usedTotal": "Verwendet / Gesamt",
"expireTime": "Ablaufzeit",
"clickToImport": "Klicken Sie hier, um ein Abonnement zu importieren."
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "Typ",
"name": "Name",
"description": "Beschreibung",
"subscriptionUrl": "Abonnement-Link",
"httpTimeout": "HTTP Request Timeout",
@@ -278,7 +272,6 @@
"healthCheckUrl": "URL für Gesundheitstest",
"expectedStatus": "Erwarteter Statuscode",
"interval": "Prüfintervall",
"timeout": "Timeout",
"maxFailedTimes": "Maximale Anzahl fehlgeschlagener Versuche",
"interfaceName": "Ausgangsschnittstelle",
"routingMark": "Routierungsmarkierung",
@@ -357,7 +350,6 @@
"filter": "Knoten filtern"
},
"placeholders": {
"filter": "Filterbedingungen",
"delayCheckUrl": "Latenztest-URL"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "Host",
"downloaded": "Heruntergeladen",
"uploaded": "Hochgeladen",
"dlSpeed": "Download-Geschwindigkeit",
"ulSpeed": "Upload-Geschwindigkeit",
"chains": "Ketten",
@@ -675,8 +665,6 @@
"uploadSpeed": "Upload-Geschwindigkeit",
"downloadSpeed": "Download-Geschwindigkeit",
"activeConnections": "Aktive Verbindungen",
"uploaded": "Hochgeladen",
"downloaded": "Heruntergeladen",
"memoryUsage": "Kern-Speichernutzung"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "Verge-Grundeinstellungen",
"actions": {
"browse": "Durchsuchen",
"clear": "Löschen"
"browse": "Durchsuchen"
},
"trayOptions": {
"showMainWindow": "Hauptfenster anzeigen",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "WebDAV-Serveradresse http(s)://",
"username": "Benutzername",
"password": "Passwort",
"info": "Backups are stored locally in the application data directory. Use the list below to restore or delete backups."
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "Virtual Network Interface-Modus",
"actions": {
"reset": "Auf Standardwerte zurücksetzen"
},
"fields": {
"stack": "TUN-Modus-Stack",
"device": "Device Name",

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "Profile URL",
"actions": {
"paste": "Paste",
"clear": "Clear"
"paste": "Paste"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "From",
"updateTime": "Update Time",
"usedTotal": "Used / Total",
"expireTime": "Expire Time",
"clickToImport": "Click to import subscription"
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "Type",
"name": "Name",
"description": "Descriptions",
"subscriptionUrl": "Subscription URL",
"httpTimeout": "HTTP Request Timeout",
@@ -278,7 +272,6 @@
"healthCheckUrl": "Health Check Url",
"expectedStatus": "Expected Status",
"interval": "Interval",
"timeout": "Timeout",
"maxFailedTimes": "Max Failed Times",
"interfaceName": "Interface Name",
"routingMark": "Routing Mark",
@@ -357,7 +350,6 @@
"filter": "Filter"
},
"placeholders": {
"filter": "Filter conditions",
"delayCheckUrl": "Delay check URL"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "Host",
"downloaded": "Downloaded",
"uploaded": "Uploaded",
"dlSpeed": "DL Speed",
"ulSpeed": "UL Speed",
"chains": "Chains",
@@ -675,8 +665,6 @@
"uploadSpeed": "Upload Speed",
"downloadSpeed": "Download Speed",
"activeConnections": "Active Connections",
"uploaded": "Uploaded",
"downloaded": "Downloaded",
"memoryUsage": "Core Usage"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "Verge Basic Setting",
"actions": {
"browse": "Browse",
"clear": "Clear"
"browse": "Browse"
},
"trayOptions": {
"showMainWindow": "Show Main Window",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "WebDAV Server URL",
"username": "Username",
"password": "Password",
"info": "Backups are stored locally in the application data directory. Use the list below to restore or delete backups."
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "Tun Mode",
"actions": {
"reset": "Reset to Default"
},
"fields": {
"stack": "Tun Stack",
"device": "Device Name",

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "Enlace del archivo de suscripción",
"actions": {
"paste": "Pegar",
"clear": "Limpiar"
"paste": "Pegar"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "De",
"updateTime": "Hora de actualización",
"usedTotal": "Utilizado / Total",
"expireTime": "Tiempo de expiración",
"clickToImport": "Haga clic para importar una suscripción"
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "Tipo",
"name": "Nombre",
"description": "Descripción",
"subscriptionUrl": "Enlace de suscripción",
"httpTimeout": "HTTP Request Timeout",
@@ -278,7 +272,6 @@
"healthCheckUrl": "URL de prueba de salud",
"expectedStatus": "Código de estado esperado",
"interval": "Intervalo de comprobación",
"timeout": "Tiempo de espera",
"maxFailedTimes": "Número máximo de fallos",
"interfaceName": "Nombre de la interfaz de salida",
"routingMark": "Marca de enrutamiento",
@@ -357,7 +350,6 @@
"filter": "Filtrar nodos"
},
"placeholders": {
"filter": "Condiciones de filtrado",
"delayCheckUrl": "URL de prueba de latencia"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "Host",
"downloaded": "Descargado",
"uploaded": "Subido",
"dlSpeed": "Velocidad de descarga",
"ulSpeed": "Velocidad de subida",
"chains": "Cadenas",
@@ -675,8 +665,6 @@
"uploadSpeed": "Velocidad de subida",
"downloadSpeed": "Velocidad de descarga",
"activeConnections": "Conexiones activas",
"uploaded": "Subido",
"downloaded": "Descargado",
"memoryUsage": "Uso de memoria del núcleo"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "Ajustes básicos de Verge",
"actions": {
"browse": "Examinar",
"clear": "Limpiar"
"browse": "Examinar"
},
"trayOptions": {
"showMainWindow": "Mostrar ventana principal",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "Dirección del servidor WebDAV http(s)://",
"username": "Nombre de usuario",
"password": "Contraseña",
"info": "Backups are stored locally in the application data directory. Use the list below to restore or delete backups."
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "Modo de interfaz virtual (TUN)",
"actions": {
"reset": "Restablecer a los valores predeterminados"
},
"fields": {
"stack": "Pila del modo TUN",
"device": "Device Name",

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "آدرس پروفایل",
"actions": {
"paste": "چسباندن",
"clear": "پاک کردن"
"paste": "چسباندن"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "از",
"updateTime": "زمان به‌روزرسانی",
"usedTotal": "استفاده‌شده / کل",
"expireTime": "زمان انقضا",
"clickToImport": "Click to import subscription"
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "نوع",
"name": "نام",
"description": "توضیحات",
"subscriptionUrl": "آدرس اشتراک",
"httpTimeout": "HTTP Request Timeout",
@@ -278,7 +272,6 @@
"healthCheckUrl": "آدرس بررسی سلامت",
"expectedStatus": "وضعیت مورد انتظار",
"interval": "فاصله زمانی",
"timeout": "زمان قطع",
"maxFailedTimes": "حداکثر تعداد شکست‌ها",
"interfaceName": "نام رابط",
"routingMark": "علامت مسیریابی",
@@ -357,7 +350,6 @@
"filter": "فیلتر"
},
"placeholders": {
"filter": "شرایط فیلتر",
"delayCheckUrl": "آدرس بررسی تأخیر"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "میزبان",
"downloaded": "دانلود شده",
"uploaded": "بارگذاری شده",
"dlSpeed": "سرعت دانلود",
"ulSpeed": "سرعت بارگذاری",
"chains": "زنجیره‌ها",
@@ -675,8 +665,6 @@
"uploadSpeed": "سرعت بارگذاری",
"downloadSpeed": "سرعت دانلود",
"activeConnections": "Active Connections",
"uploaded": "بارگذاری شده",
"downloaded": "دانلود شده",
"memoryUsage": "استفاده از حافظه"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "تنظیمات پایه Verge",
"actions": {
"browse": "مرور کردن",
"clear": "پاک کردن"
"browse": "مرور کردن"
},
"trayOptions": {
"showMainWindow": "نمایش پنجره اصلی",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "http(s):// URL سرور WebDAV",
"username": "نام کاربری",
"password": "رمز عبور",
"info": "Backups are stored locally in the application data directory. Use the list below to restore or delete backups."
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "Tun (کارت شبکه مجازی)",
"actions": {
"reset": "بازنشانی به پیش‌فرض"
},
"fields": {
"stack": "انباشته Tun",
"device": "Device Name",

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "URL Profil",
"actions": {
"paste": "Tempel",
"clear": "Bersihkan"
"paste": "Tempel"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "Dari",
"updateTime": "Waktu Pembaruan",
"usedTotal": "Digunakan / Total",
"expireTime": "Waktu Kedaluwarsa",
"clickToImport": "Click to import subscription"
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "Jenis",
"name": "Nama",
"description": "Deskripsi",
"subscriptionUrl": "URL Langganan",
"httpTimeout": "HTTP Request Timeout",
@@ -278,7 +272,6 @@
"healthCheckUrl": "URL Pemeriksaan Kesehatan",
"expectedStatus": "Status yang Diharapkan",
"interval": "Interval",
"timeout": "Waktu Habis",
"maxFailedTimes": "Jumlah Gagal Maksimal",
"interfaceName": "Nama Antarmuka",
"routingMark": "Tanda Routing",
@@ -357,7 +350,6 @@
"filter": "Filter"
},
"placeholders": {
"filter": "Kondisi Filter",
"delayCheckUrl": "URL Periksa Keterlambatan"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "Host",
"downloaded": "Diunduh",
"uploaded": "Diunggah",
"dlSpeed": "Kecepatan Unduh",
"ulSpeed": "Kecepatan Unggah",
"chains": "Rantai",
@@ -675,8 +665,6 @@
"uploadSpeed": "Kecepatan Unggah",
"downloadSpeed": "Kecepatan Unduh",
"activeConnections": "Active Connections",
"uploaded": "Diunggah",
"downloaded": "Diunduh",
"memoryUsage": "Penggunaan Memori"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "Pengaturan Dasar Verge",
"actions": {
"browse": "Jelajahi",
"clear": "Bersihkan"
"browse": "Jelajahi"
},
"trayOptions": {
"showMainWindow": "Tampilkan Jendela Utama",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "URL Server WebDAV",
"username": "Nama Pengguna",
"password": "Kata Sandi",
"info": "Backups are stored locally in the application data directory. Use the list below to restore or delete backups."
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "Mode Tun (NIC Virtual)",
"actions": {
"reset": "Setel Ulang ke Default"
},
"fields": {
"stack": "Tumpukan Tun",
"device": "Device Name",

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "プロファイルファイルのURL",
"actions": {
"paste": "貼り付け",
"clear": "クリア"
"paste": "貼り付け"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "から",
"updateTime": "更新時間",
"usedTotal": "使用済み / 合計",
"expireTime": "有効期限",
"clickToImport": "クリックしてサブスクリプションをインポート"
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "タイプ",
"name": "名前",
"description": "説明",
"subscriptionUrl": "サブスクリプションURL",
"httpTimeout": "HTTP Request Timeout",
@@ -278,7 +272,6 @@
"healthCheckUrl": "ヘルスチェックURL",
"expectedStatus": "期待するステータスコード",
"interval": "チェック間隔",
"timeout": "タイムアウト時間",
"maxFailedTimes": "最大失敗回数",
"interfaceName": "出力インターフェース",
"routingMark": "ルーティングマーク",
@@ -357,7 +350,6 @@
"filter": "ノードをフィルタリング"
},
"placeholders": {
"filter": "フィルタリング条件",
"delayCheckUrl": "遅延テストURL"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "ホスト",
"downloaded": "ダウンロード量",
"uploaded": "アップロード量",
"dlSpeed": "ダウンロード速度",
"ulSpeed": "アップロード速度",
"chains": "チェーン",
@@ -675,8 +665,6 @@
"uploadSpeed": "アップロード速度",
"downloadSpeed": "ダウンロード速度",
"activeConnections": "アクティブな接続",
"uploaded": "アップロード量",
"downloaded": "ダウンロード量",
"memoryUsage": "コアメモリ使用量"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "Verge基本設定",
"actions": {
"browse": "参照",
"clear": "クリア"
"browse": "参照"
},
"trayOptions": {
"showMainWindow": "メインウィンドウを表示",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "WebDAVサーバーのURL http(s)://",
"username": "ユーザー名",
"password": "パスワード",
"info": "Backups are stored locally in the application data directory. Use the list below to restore or delete backups."
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "仮想ネットワークカードモード",
"actions": {
"reset": "デフォルト値にリセット"
},
"fields": {
"stack": "TUNモードスタック",
"device": "Device Name",

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "프로필 URL",
"actions": {
"paste": "붙여넣기",
"clear": "지우기"
"paste": "붙여넣기"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "출처",
"updateTime": "업데이트 시간",
"usedTotal": "사용됨 / 전체",
"expireTime": "만료 시간",
"clickToImport": "Click to import subscription"
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "유형",
"name": "이름",
"description": "설명",
"subscriptionUrl": "구독 URL",
"httpTimeout": "HTTP Request Timeout",
@@ -278,7 +272,6 @@
"healthCheckUrl": "상태 확인 URL",
"expectedStatus": "예상 상태",
"interval": "간격",
"timeout": "타임아웃",
"maxFailedTimes": "최대 실패 횟수",
"interfaceName": "인터페이스 이름",
"routingMark": "라우팅 마크",
@@ -357,7 +350,6 @@
"filter": "필터"
},
"placeholders": {
"filter": "Filter conditions",
"delayCheckUrl": "지연 확인 URL"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "호스트",
"downloaded": "다운로드됨",
"uploaded": "업로드됨",
"dlSpeed": "다운로드 속도",
"ulSpeed": "업로드 속도",
"chains": "체인",
@@ -675,8 +665,6 @@
"uploadSpeed": "업로드 속도",
"downloadSpeed": "다운로드 속도",
"activeConnections": "활성 연결",
"uploaded": "업로드됨",
"downloaded": "다운로드됨",
"memoryUsage": "메모리 사용량"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "Verge 기본 설정",
"actions": {
"browse": "Browse",
"clear": "지우기"
"browse": "Browse"
},
"trayOptions": {
"showMainWindow": "메인 창 표시",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "WebDAV Server URL",
"username": "사용자 이름",
"password": "비밀번호",
"info": "Backups are stored locally in the application data directory. Use the list below to restore or delete backups."
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "Tun 모드",
"actions": {
"reset": "Reset to Default"
},
"fields": {
"stack": "스택",
"device": "Device Name",

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "URL профиля",
"actions": {
"paste": "Вставить",
"clear": "Очистить"
"paste": "Вставить"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "От",
"updateTime": "Время обновления",
"usedTotal": "Использовано / Всего",
"expireTime": "Время окончания",
"clickToImport": "Нажмите, чтобы импортировать подписку"
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "Тип",
"name": "Название",
"description": "Описание",
"subscriptionUrl": "URL подписки",
"httpTimeout": "HTTP Request Timeout",
@@ -278,7 +272,6 @@
"healthCheckUrl": "URL проверки здоровья",
"expectedStatus": "Ожидаемый статус",
"interval": "Интервал",
"timeout": "Таймаут",
"maxFailedTimes": "Максимальное количество неудач",
"interfaceName": "Имя интерфейса",
"routingMark": "Марка маршрутизации",
@@ -357,7 +350,6 @@
"filter": "Фильтр"
},
"placeholders": {
"filter": "Условия фильтрации",
"delayCheckUrl": "URL проверки задержки"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "Хост",
"downloaded": "Скачано",
"uploaded": "Загружено",
"dlSpeed": "Скорость скачивания",
"ulSpeed": "Скорость загрузки",
"chains": "Цепочки",
@@ -675,8 +665,6 @@
"uploadSpeed": "Скорость загрузки",
"downloadSpeed": "Скорость скачивания",
"activeConnections": "Активные соединения",
"uploaded": "Загружено",
"downloaded": "Скачано",
"memoryUsage": "Использование памяти"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "Основные настройки Verge",
"actions": {
"browse": "Просмотреть",
"clear": "Очистить"
"browse": "Просмотреть"
},
"trayOptions": {
"showMainWindow": "Показать главное окно",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "URL-адрес сервера WebDAV http(s)://",
"username": "Имя пользователя",
"password": "Пароль",
"info": "Backups are stored locally in the application data directory. Use the list below to restore or delete backups."
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "Режим TUN",
"actions": {
"reset": "Сбросить настройки"
},
"fields": {
"stack": "Стек",
"device": "Device Name",

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "Profil URL'si",
"actions": {
"paste": "Yapıştır",
"clear": "Temizle"
"paste": "Yapıştır"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "Kaynak",
"updateTime": "Güncelleme Zamanı",
"usedTotal": "Kullanılan / Toplam",
"expireTime": "Sona Erme Zamanı",
"clickToImport": "Abonelik içe aktarmak için tıklayın"
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "Tip",
"name": "İsim",
"description": "Açıklamalar",
"subscriptionUrl": "Abonelik URL'si",
"httpTimeout": "HTTP Request Timeout",
@@ -278,7 +272,6 @@
"healthCheckUrl": "Sağlık Kontrolü URL'si",
"expectedStatus": "Beklenen Durum",
"interval": "Aralık",
"timeout": "Zaman Aşımı",
"maxFailedTimes": "Maksimum Başarısız Deneme",
"interfaceName": "Arayüz Adı",
"routingMark": "Yönlendirme İşareti",
@@ -357,7 +350,6 @@
"filter": "Filtre"
},
"placeholders": {
"filter": "Filtre koşulları",
"delayCheckUrl": "Gecikme kontrol URL'si"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "Ana Bilgisayar",
"downloaded": "İndirilen",
"uploaded": "Yüklenen",
"dlSpeed": "İndirme Hızı",
"ulSpeed": "Yükleme Hızı",
"chains": "Zincirler",
@@ -675,8 +665,6 @@
"uploadSpeed": "Yükleme Hızı",
"downloadSpeed": "İndirme Hızı",
"activeConnections": "Aktif Bağlantılar",
"uploaded": "Yüklenen",
"downloaded": "İndirilen",
"memoryUsage": "Çekirdek Kullanımı"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "Verge Temel Ayarı",
"actions": {
"browse": "Gözat",
"clear": "Temizle"
"browse": "Gözat"
},
"trayOptions": {
"showMainWindow": "Ana Pencereyi Göster",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "WebDAV Sunucu URL'si",
"username": "Kullanıcı Adı",
"password": "Şifre",
"info": "Backups are stored locally in the application data directory. Use the list below to restore or delete backups."
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "Tun Modu",
"actions": {
"reset": "Varsayılana Sıfırla"
},
"fields": {
"stack": "Tun Yığını",
"device": "Device Name",

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "Профиль URL-ы",
"actions": {
"paste": "Кую",
"clear": "Чистарту"
"paste": "Кую"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "Каян",
"updateTime": "Яңарту вакыты",
"usedTotal": "Кулланылган / Барлыгы",
"expireTime": "Тамамлану вакыты",
"clickToImport": "Click to import subscription"
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "Төр",
"name": "Исем",
"description": "Тасвирламалар",
"subscriptionUrl": "Подписка URL-ы",
"httpTimeout": "HTTP Request Timeout",
@@ -278,7 +272,6 @@
"healthCheckUrl": "Сәламәтлекне тикшерү URL-ы",
"expectedStatus": "Көтелгән статус коды",
"interval": "Интервал",
"timeout": "Таймаут",
"maxFailedTimes": "Иң күп хаталы тикшерү саны",
"interfaceName": "Интерфейс исеме",
"routingMark": "Маршрут билгесе",
@@ -357,7 +350,6 @@
"filter": "Фильтр"
},
"placeholders": {
"filter": "Фильтр шартлары",
"delayCheckUrl": "Задержканы тикшерү URL-ы"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "Хост",
"downloaded": "Йөкләнгән",
"uploaded": "Чыгарылган",
"dlSpeed": "Йөкләү тизл.",
"ulSpeed": "Чыгару тизл.",
"chains": "Чылбырлар",
@@ -675,8 +665,6 @@
"uploadSpeed": "Йөкләү (чыгару) тизлеге",
"downloadSpeed": "Йөкләү тизлеге",
"activeConnections": "Active Connections",
"uploaded": "Чыгарылган",
"downloaded": "Йөкләнгән",
"memoryUsage": "Хәтер куллану"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "Verge Төп көйләүләр",
"actions": {
"browse": "Карау",
"clear": "Чистарту"
"browse": "Карау"
},
"trayOptions": {
"showMainWindow": "Төп тәрәзәне күрсәтү",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "WebDAV сервер URL-ы (http(s)://)",
"username": "Кулланучы исеме",
"password": "Пароль",
"info": "Backups are stored locally in the application data directory. Use the list below to restore or delete backups."
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "Tun режимы (виртуаль челтәр адаптеры)",
"actions": {
"reset": "Башлангычка кайтару"
},
"fields": {
"stack": "Стек",
"device": "Device Name",

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "订阅文件链接",
"actions": {
"paste": "粘贴",
"clear": "清除"
"paste": "粘贴"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "来自",
"updateTime": "更新时间",
"usedTotal": "已使用 / 总量",
"expireTime": "到期时间",
"clickToImport": "点击导入订阅"
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "类型",
"name": "名称",
"description": "描述",
"subscriptionUrl": "订阅链接",
"httpTimeout": "HTTP 请求超时",
@@ -278,7 +272,6 @@
"healthCheckUrl": "健康检查测试地址",
"expectedStatus": "期望状态码",
"interval": "检查间隔",
"timeout": "超时时间",
"maxFailedTimes": "最大失败次数",
"interfaceName": "出站接口",
"routingMark": "路由标记",
@@ -357,7 +350,6 @@
"filter": "过滤节点"
},
"placeholders": {
"filter": "过滤条件",
"delayCheckUrl": "延迟测试链接"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "主机",
"downloaded": "下载量",
"uploaded": "上传量",
"dlSpeed": "下载速度",
"ulSpeed": "上传速度",
"chains": "链路",
@@ -675,8 +665,6 @@
"uploadSpeed": "上传速度",
"downloadSpeed": "下载速度",
"activeConnections": "活跃连接",
"uploaded": "上传量",
"downloaded": "下载量",
"memoryUsage": "内核占用"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "Verge 基础设置",
"actions": {
"browse": "浏览",
"clear": "清除"
"browse": "浏览"
},
"trayOptions": {
"showMainWindow": "显示主窗口",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "WebDAV 服务器地址 http(s)://",
"username": "用户名",
"password": "密码",
"info": "在应用数据目录中创建本地备份,您可以通过下方列表进行恢复或删除。"
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "虚拟网卡模式",
"actions": {
"reset": "重置为默认值"
},
"fields": {
"stack": "TUN 模式堆栈",
"device": "虚拟网卡名称",

View File

@@ -151,8 +151,7 @@
"importForm": {
"placeholder": "訂閱檔網址",
"actions": {
"paste": "貼上",
"clear": "清除"
"paste": "貼上"
}
},
"feedback": {
@@ -180,10 +179,6 @@
"components": {
"card": {
"labels": {
"from": "來自",
"updateTime": "更新時間",
"usedTotal": "已使用 / 總量",
"expireTime": "到期時間",
"clickToImport": "點擊匯入訂閱"
}
},
@@ -236,7 +231,6 @@
},
"fields": {
"type": "類型",
"name": "名稱",
"description": "描述",
"subscriptionUrl": "訂閱網址",
"httpTimeout": "HTTP Request Timeout",
@@ -278,7 +272,6 @@
"healthCheckUrl": "健康檢查網址",
"expectedStatus": "預期狀態碼",
"interval": "檢查間隔",
"timeout": "逾時",
"maxFailedTimes": "最大失敗次數",
"interfaceName": "輸出介面",
"routingMark": "路由標記",
@@ -357,7 +350,6 @@
"filter": "篩選節點"
},
"placeholders": {
"filter": "篩選條件",
"delayCheckUrl": "延遲測試網址"
},
"chain": {
@@ -414,8 +406,6 @@
"components": {
"fields": {
"host": "主機",
"downloaded": "下載量",
"uploaded": "上傳量",
"dlSpeed": "下載速度",
"ulSpeed": "上傳速度",
"chains": "鏈路",
@@ -675,8 +665,6 @@
"uploadSpeed": "上傳速度",
"downloadSpeed": "下載速度",
"activeConnections": "作用中連線",
"uploaded": "上傳量",
"downloaded": "下載量",
"memoryUsage": "內核佔用"
},
"legends": {
@@ -847,8 +835,7 @@
"basic": {
"title": "Verge 基礎設定",
"actions": {
"browse": "瀏覽",
"clear": "清除"
"browse": "瀏覽"
},
"trayOptions": {
"showMainWindow": "顯示主視窗",
@@ -1009,7 +996,6 @@
"fields": {
"webdavUrl": "WebDAV 伺服器位址 http(s)://",
"username": "使用者名稱",
"password": "密碼",
"info": "在應用程式資料目錄中建立本機備份,您可以透過下方列表進行還原或刪除。"
},
"messages": {
@@ -1111,9 +1097,6 @@
},
"tun": {
"title": "虛擬網路介面卡模式",
"actions": {
"reset": "重設為預設值"
},
"fields": {
"stack": "虛擬網路介面卡模式堆疊",
"device": "Device Name",

View File

@@ -956,7 +956,7 @@ const ProfilePage = () => {
<IconButton
size="small"
sx={{ p: 0.5 }}
title={t("profiles.page.importForm.actions.clear")}
title={t("shared.actions.clear")}
onClick={() => setUrl("")}
>
<ClearRounded fontSize="inherit" />