chore(i18n): components.settings.externalCors.*

This commit is contained in:
Slinetrac
2025-11-02 10:47:25 +08:00
Unverified
parent e2de2137a8
commit 4502d5e42c
16 changed files with 589 additions and 217 deletions

View File

@@ -56,12 +56,20 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
// 如果启用了外部控制器,则保存控制器地址和密钥
if (enableController) {
if (!controller.trim()) {
showNotice("error", t("Controller address cannot be empty"));
showNotice(
"error",
t(
"components.settings.externalController.messages.addressRequired",
),
);
return;
}
if (!secret.trim()) {
showNotice("error", t("Secret cannot be empty"));
showNotice(
"error",
t("components.settings.externalController.messages.secretRequired"),
);
return;
}
@@ -93,7 +101,10 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
setTimeout(() => setCopySuccess(null));
} catch (err) {
console.warn("[ControllerViewer] copy to clipboard failed:", err);
showNotice("error", t("Failed to copy"));
showNotice(
"error",
t("components.settings.externalController.messages.copyFailed"),
);
}
},
);
@@ -101,7 +112,7 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
return (
<BaseDialog
open={open}
title={t("External Controller")}
title={t("components.settings.externalController.title")}
contentSx={{ width: 400 }}
okBtn={
isSaving ? (
@@ -126,7 +137,9 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
justifyContent: "space-between",
}}
>
<ListItemText primary={t("Enable External Controller")} />
<ListItemText
primary={t("components.settings.externalController.fields.enable")}
/>
<Switch
edge="end"
checked={enableController}
@@ -142,7 +155,9 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
justifyContent: "space-between",
}}
>
<ListItemText primary={t("External Controller")} />
<ListItemText
primary={t("components.settings.externalController.fields.address")}
/>
<Box display="flex" alignItems="center" gap={1}>
<TextField
size="small"
@@ -152,11 +167,15 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
pointerEvents: enableController ? "auto" : "none",
}}
value={controller}
placeholder="Required"
placeholder={t(
"components.settings.externalController.placeholders.address",
)}
onChange={(e) => setController(e.target.value)}
disabled={isSaving || !enableController}
/>
<Tooltip title={t("Copy to clipboard")}>
<Tooltip
title={t("components.settings.externalController.tooltips.copy")}
>
<IconButton
size="small"
onClick={() => handleCopyToClipboard(controller, "controller")}
@@ -176,7 +195,9 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
justifyContent: "space-between",
}}
>
<ListItemText primary={t("Core Secret")} />
<ListItemText
primary={t("components.settings.externalController.fields.secret")}
/>
<Box display="flex" alignItems="center" gap={1}>
<TextField
size="small"
@@ -186,11 +207,15 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
pointerEvents: enableController ? "auto" : "none",
}}
value={secret}
placeholder={t("Recommended")}
placeholder={t(
"components.settings.externalController.placeholders.secret",
)}
onChange={(e) => setSecret(e.target.value)}
disabled={isSaving || !enableController}
/>
<Tooltip title={t("Copy to clipboard")}>
<Tooltip
title={t("components.settings.externalController.tooltips.copy")}
>
<IconButton
size="small"
onClick={() => handleCopyToClipboard(secret, "secret")}
@@ -211,8 +236,10 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
>
<Alert severity="success">
{copySuccess === "controller"
? t("Controller address copied to clipboard")
: t("Secret copied to clipboard")}
? t(
"components.settings.externalController.messages.controllerCopied",
)
: t("components.settings.externalController.messages.secretCopied")}
</Alert>
</Snackbar>
</BaseDialog>

View File

@@ -181,7 +181,7 @@ export const HeaderConfiguration = forwardRef<ClashHeaderConfigingRef>(
return (
<BaseDialog
open={open}
title={t("External Cors Configuration")}
title={t("components.settings.externalCors.title")}
contentSx={{ width: 500 }}
okBtn={loading ? t("Saving...") : t("Save")}
cancelBtn={t("Cancel")}
@@ -198,7 +198,9 @@ export const HeaderConfiguration = forwardRef<ClashHeaderConfigingRef>(
width="100%"
>
<span style={{ fontWeight: "normal" }}>
{t("Allow private network access")}
{t(
"components.settings.externalCors.fields.allowPrivateNetwork",
)}
</span>
<Switch
edge="end"
@@ -218,7 +220,7 @@ export const HeaderConfiguration = forwardRef<ClashHeaderConfigingRef>(
<ListItem sx={{ padding: "8px 0" }}>
<div style={{ width: "100%" }}>
<div style={{ marginBottom: 8, fontWeight: "bold" }}>
{t("Allowed Origins")}
{t("components.settings.externalCors.fields.allowedOrigins")}
</div>
{originEntries.map(({ origin, index, key }) => (
<div
@@ -235,7 +237,9 @@ export const HeaderConfiguration = forwardRef<ClashHeaderConfigingRef>(
sx={{ fontSize: 14, marginRight: 2 }}
value={origin}
onChange={(e) => handleUpdateOrigin(index, e.target.value)}
placeholder={t("Please enter a valid url")}
placeholder={t(
"components.settings.externalCors.placeholders.origin",
)}
inputProps={{ style: { fontSize: 14 } }}
/>
<Button
@@ -256,7 +260,7 @@ export const HeaderConfiguration = forwardRef<ClashHeaderConfigingRef>(
onClick={handleAddOrigin}
sx={addButtonStyle}
>
{t("Add")}
{t("components.settings.externalCors.actions.add")}
</Button>
<div
@@ -270,9 +274,12 @@ export const HeaderConfiguration = forwardRef<ClashHeaderConfigingRef>(
<div
style={{ color: "#666", fontSize: 12, fontStyle: "italic" }}
>
{t("Always included origins: {{urls}}", {
urls: DEV_URLS.join(", "),
})}
{t(
"components.settings.externalCors.messages.alwaysIncluded",
{
urls: DEV_URLS.join(", "),
},
)}
</div>
</div>
</div>

View File

@@ -221,7 +221,7 @@ const SettingClash = ({ onError }: Props) => {
label={<>{t("External")}</>}
extra={
<TooltipIcon
title={t("External Cors Settings")}
title={t("components.settings.externalCors.tooltips.open")}
icon={SettingsRounded}
onClick={(e) => {
e.stopPropagation();

View File

@@ -334,10 +334,6 @@
"Port settings saved": "Port settings saved",
"Failed to save port settings": "Failed to save port settings",
"External": "خارجي",
"Enable External Controller": "Enable External Controller",
"External Controller": "وحدة التحكم الخارجية",
"Core Secret": "المفتاح السري للنواة",
"Recommended": "موصى به",
"Open URL": "فتح الرابط",
"Replace host, port, secret with %host, %port, %secret": "استبدل المضيف والمنفذ والمفتاح بـ %host و%port و%secret",
"Support %host, %port, %secret": "يدعم %host و%port و%secret",
@@ -586,20 +582,9 @@
"AppQuitBody": "APP quit by hotkey",
"AppHiddenTitle": "APP Hidden",
"AppHiddenBody": "APP window hidden by hotkey",
"External Cors Settings": "External Cors Settings",
"External Cors Configuration": "External Cors Configuration",
"Allow private network access": "Allow private network access",
"Allowed Origins": "Allowed Origins",
"Please enter a valid url": "Please enter a valid url",
"Add": "Add",
"Always included origins: {{urls}}": "Always included origins: {{urls}}",
"Invalid regular expression": "Invalid regular expression",
"Controller address cannot be empty": "Controller address cannot be empty",
"Secret cannot be empty": "Secret cannot be empty",
"Configuration saved successfully": "Configuration saved successfully",
"Failed to save configuration": "Failed to save configuration",
"Controller address copied to clipboard": "Controller address copied to clipboard",
"Secret copied to clipboard": "Secret copied to clipboard",
"Saving...": "Saving...",
"Detection timeout or failed": "Detection timeout or failed",
"App Log Max Size": "App Log Max Size",
@@ -833,6 +818,47 @@
"uninstallService": "Uninstall Service"
}
},
"externalController": {
"title": "وحدة التحكم الخارجية",
"fields": {
"enable": "Enable External Controller",
"address": "وحدة التحكم الخارجية",
"secret": "المفتاح السري للنواة"
},
"placeholders": {
"address": "Required",
"secret": "موصى به"
},
"tooltips": {
"copy": "Copy to clipboard"
},
"messages": {
"addressRequired": "Controller address cannot be empty",
"secretRequired": "Secret cannot be empty",
"copyFailed": "Failed to copy",
"controllerCopied": "Controller address copied to clipboard",
"secretCopied": "Secret copied to clipboard"
}
},
"externalCors": {
"title": "External Cors Configuration",
"fields": {
"allowPrivateNetwork": "Allow private network access",
"allowedOrigins": "Allowed Origins"
},
"placeholders": {
"origin": "Please enter a valid url"
},
"actions": {
"add": "Add"
},
"messages": {
"alwaysIncluded": "Always included origins: {{urls}}"
},
"tooltips": {
"open": "External Cors Settings"
}
},
"verge": {
"basic": {
"title": "الإعدادات الأساسية Verge",

View File

@@ -334,10 +334,6 @@
"Port settings saved": "Port settings saved",
"Failed to save port settings": "Failed to save port settings",
"External": "Externe Steuerung",
"Enable External Controller": "Enable External Controller",
"External Controller": "Adresse des externen Controllers",
"Core Secret": "API-Zugangsschlüssel",
"Recommended": "Empfohlene Einstellung",
"Open URL": "Link öffnen",
"Replace host, port, secret with %host, %port, %secret": "Verwenden Sie %host, %port, %secret für Host, Port und Zugangsschlüssel",
"Support %host, %port, %secret": "Unterstützt %host, %port, %secret",
@@ -586,20 +582,9 @@
"AppQuitBody": "APP quit by hotkey",
"AppHiddenTitle": "APP Hidden",
"AppHiddenBody": "APP window hidden by hotkey",
"External Cors Settings": "External Cors Settings",
"External Cors Configuration": "External Cors Configuration",
"Allow private network access": "Allow private network access",
"Allowed Origins": "Allowed Origins",
"Please enter a valid url": "Please enter a valid url",
"Add": "Add",
"Always included origins: {{urls}}": "Always included origins: {{urls}}",
"Invalid regular expression": "Invalid regular expression",
"Controller address cannot be empty": "Controller address cannot be empty",
"Secret cannot be empty": "Secret cannot be empty",
"Configuration saved successfully": "Zufalls-Konfiguration erfolgreich gespeichert",
"Failed to save configuration": "Failed to save configuration",
"Controller address copied to clipboard": "API-Port in die Zwischenablage kopiert",
"Secret copied to clipboard": "API-Schlüssel in die Zwischenablage kopiert",
"Saving...": "Saving...",
"Detection timeout or failed": "Detection timeout or failed",
"App Log Max Size": "App Log Max Size",
@@ -833,6 +818,47 @@
"uninstallService": "Dienst deinstallieren"
}
},
"externalController": {
"title": "Adresse des externen Controllers",
"fields": {
"enable": "Enable External Controller",
"address": "Adresse des externen Controllers",
"secret": "API-Zugangsschlüssel"
},
"placeholders": {
"address": "Erforderlich",
"secret": "Empfohlene Einstellung"
},
"tooltips": {
"copy": "In die Zwischenablage kopieren"
},
"messages": {
"addressRequired": "Controller address cannot be empty",
"secretRequired": "Secret cannot be empty",
"copyFailed": "Kopieren fehlgeschlagen",
"controllerCopied": "API-Port in die Zwischenablage kopiert",
"secretCopied": "API-Schlüssel in die Zwischenablage kopiert"
}
},
"externalCors": {
"title": "Externe CORS-Konfiguration",
"fields": {
"allowPrivateNetwork": "Zugriff auf privates Netzwerk erlauben",
"allowedOrigins": "Erlaubte Ursprünge"
},
"placeholders": {
"origin": "Bitte eine gültige URL eingeben"
},
"actions": {
"add": "Hinzufügen"
},
"messages": {
"alwaysIncluded": "Immer enthaltene Ursprünge: {{urls}}"
},
"tooltips": {
"open": "Einstellungen für externe CORS"
}
},
"verge": {
"basic": {
"title": "Verge-Grundeinstellungen",

View File

@@ -334,10 +334,6 @@
"Port settings saved": "Port settings saved",
"Failed to save port settings": "Failed to save port settings",
"External": "External",
"Enable External Controller": "Enable External Controller",
"External Controller": "External Controller",
"Core Secret": "Core Secret",
"Recommended": "Recommended",
"Open URL": "Open URL",
"Replace host, port, secret with %host, %port, %secret": "Replace host, port, secret with %host, %port, %secret",
"Support %host, %port, %secret": "Support %host, %port, %secret",
@@ -586,20 +582,9 @@
"AppQuitBody": "APP quit by hotkey",
"AppHiddenTitle": "APP Hidden",
"AppHiddenBody": "APP window hidden by hotkey",
"External Cors Settings": "External Cors Settings",
"External Cors Configuration": "External Cors Configuration",
"Allow private network access": "Allow private network access",
"Allowed Origins": "Allowed Origins",
"Please enter a valid url": "Please enter a valid url",
"Add": "Add",
"Always included origins: {{urls}}": "Always included origins: {{urls}}",
"Invalid regular expression": "Invalid regular expression",
"Controller address cannot be empty": "Controller address cannot be empty",
"Secret cannot be empty": "Secret cannot be empty",
"Configuration saved successfully": "Configuration saved successfully",
"Failed to save configuration": "Failed to save configuration",
"Controller address copied to clipboard": "Controller address copied to clipboard",
"Secret copied to clipboard": "Secret copied to clipboard",
"Saving...": "Saving...",
"Detection timeout or failed": "Detection timeout or failed",
"App Log Max Size": "App Log Max Size",
@@ -833,6 +818,47 @@
"uninstallService": "Uninstall Service"
}
},
"externalController": {
"title": "External Controller",
"fields": {
"enable": "Enable External Controller",
"address": "External Controller",
"secret": "Core Secret"
},
"placeholders": {
"address": "Required",
"secret": "Recommended"
},
"tooltips": {
"copy": "Copy to clipboard"
},
"messages": {
"addressRequired": "Controller address cannot be empty",
"secretRequired": "Secret cannot be empty",
"copyFailed": "Failed to copy",
"controllerCopied": "Controller address copied to clipboard",
"secretCopied": "Secret copied to clipboard"
}
},
"externalCors": {
"title": "External Cors Configuration",
"fields": {
"allowPrivateNetwork": "Allow private network access",
"allowedOrigins": "Allowed Origins"
},
"placeholders": {
"origin": "Please enter a valid url"
},
"actions": {
"add": "Add"
},
"messages": {
"alwaysIncluded": "Always included origins: {{urls}}"
},
"tooltips": {
"open": "External Cors Settings"
}
},
"verge": {
"basic": {
"title": "Verge Basic Setting",

View File

@@ -334,10 +334,6 @@
"Port settings saved": "Port settings saved",
"Failed to save port settings": "Failed to save port settings",
"External": "Control externo",
"Enable External Controller": "Enable External Controller",
"External Controller": "Dirección de escucha del controlador externo",
"Core Secret": "Clave de acceso a la API",
"Recommended": "Configuración recomendada",
"Open URL": "Abrir enlace",
"Replace host, port, secret with %host, %port, %secret": "Utilice %host, %port, %secret para representar el host, el puerto y la clave de acceso.",
"Support %host, %port, %secret": "Soporta %host, %port, %secret",
@@ -586,20 +582,9 @@
"AppQuitBody": "APP quit by hotkey",
"AppHiddenTitle": "APP Hidden",
"AppHiddenBody": "APP window hidden by hotkey",
"External Cors Settings": "External Cors Settings",
"External Cors Configuration": "External Cors Configuration",
"Allow private network access": "Allow private network access",
"Allowed Origins": "Allowed Origins",
"Please enter a valid url": "Please enter a valid url",
"Add": "Add",
"Always included origins: {{urls}}": "Always included origins: {{urls}}",
"Invalid regular expression": "Invalid regular expression",
"Controller address cannot be empty": "Controller address cannot be empty",
"Secret cannot be empty": "Secret cannot be empty",
"Configuration saved successfully": "Configuración aleatoria guardada correctamente",
"Failed to save configuration": "Failed to save configuration",
"Controller address copied to clipboard": "El puerto API se copió al portapapeles",
"Secret copied to clipboard": "La clave API se copió al portapapeles",
"Saving...": "Saving...",
"Detection timeout or failed": "Detection timeout or failed",
"App Log Max Size": "App Log Max Size",
@@ -833,6 +818,47 @@
"uninstallService": "Desinstalar servicio"
}
},
"externalController": {
"title": "Dirección de escucha del controlador externo",
"fields": {
"enable": "Habilitar controlador externo",
"address": "Dirección de escucha del controlador externo",
"secret": "Clave de acceso a la API"
},
"placeholders": {
"address": "Requerido",
"secret": "Configuración recomendada"
},
"tooltips": {
"copy": "Copiar al portapapeles"
},
"messages": {
"addressRequired": "La dirección del controlador no puede estar vacía",
"secretRequired": "La clave secreta no puede estar vacía",
"copyFailed": "Error al copiar",
"controllerCopied": "El puerto API se copió al portapapeles",
"secretCopied": "La clave API se copió al portapapeles"
}
},
"externalCors": {
"title": "Configuración de CORS externo",
"fields": {
"allowPrivateNetwork": "Permitir acceso a red privada",
"allowedOrigins": "Orígenes permitidos"
},
"placeholders": {
"origin": "Introduce una URL válida"
},
"actions": {
"add": "Agregar"
},
"messages": {
"alwaysIncluded": "Orígenes siempre incluidos: {{urls}}"
},
"tooltips": {
"open": "Configuración de CORS externo"
}
},
"verge": {
"basic": {
"title": "Ajustes básicos de Verge",

View File

@@ -334,10 +334,6 @@
"Port settings saved": "Port settings saved",
"Failed to save port settings": "Failed to save port settings",
"External": "خارجی",
"Enable External Controller": "Enable External Controller",
"External Controller": "کنترل‌کننده خارجی",
"Core Secret": "رمز اصلی",
"Recommended": "توصیه شده",
"Open URL": "باز کردن آدرس اینترنتی",
"Replace host, port, secret with %host, %port, %secret": "جایگزین کردن میزبان، پورت و رمز با %host، %port، %secret",
"Support %host, %port, %secret": "پشتیبانی از %host، %port و %secret",
@@ -586,20 +582,9 @@
"AppQuitBody": "APP quit by hotkey",
"AppHiddenTitle": "APP Hidden",
"AppHiddenBody": "APP window hidden by hotkey",
"External Cors Settings": "External Cors Settings",
"External Cors Configuration": "External Cors Configuration",
"Allow private network access": "Allow private network access",
"Allowed Origins": "Allowed Origins",
"Please enter a valid url": "Please enter a valid url",
"Add": "Add",
"Always included origins: {{urls}}": "Always included origins: {{urls}}",
"Invalid regular expression": "Invalid regular expression",
"Controller address cannot be empty": "Controller address cannot be empty",
"Secret cannot be empty": "Secret cannot be empty",
"Configuration saved successfully": "Configuration saved successfully",
"Failed to save configuration": "Failed to save configuration",
"Controller address copied to clipboard": "Controller address copied to clipboard",
"Secret copied to clipboard": "Secret copied to clipboard",
"Saving...": "Saving...",
"Detection timeout or failed": "Detection timeout or failed",
"App Log Max Size": "App Log Max Size",
@@ -833,6 +818,47 @@
"uninstallService": "Uninstall Service"
}
},
"externalController": {
"title": "کنترل‌کننده خارجی",
"fields": {
"enable": "Enable External Controller",
"address": "کنترل‌کننده خارجی",
"secret": "رمز اصلی"
},
"placeholders": {
"address": "Required",
"secret": "توصیه شده"
},
"tooltips": {
"copy": "Copy to clipboard"
},
"messages": {
"addressRequired": "Controller address cannot be empty",
"secretRequired": "Secret cannot be empty",
"copyFailed": "Failed to copy",
"controllerCopied": "Controller address copied to clipboard",
"secretCopied": "Secret copied to clipboard"
}
},
"externalCors": {
"title": "External Cors Configuration",
"fields": {
"allowPrivateNetwork": "Allow private network access",
"allowedOrigins": "Allowed Origins"
},
"placeholders": {
"origin": "Please enter a valid url"
},
"actions": {
"add": "Add"
},
"messages": {
"alwaysIncluded": "Always included origins: {{urls}}"
},
"tooltips": {
"open": "External Cors Settings"
}
},
"verge": {
"basic": {
"title": "تنظیمات پایه Verge",

View File

@@ -334,10 +334,6 @@
"Port settings saved": "Port settings saved",
"Failed to save port settings": "Failed to save port settings",
"External": "Eksternal",
"Enable External Controller": "Enable External Controller",
"External Controller": "Alamat Pengendali Eksternal",
"Core Secret": "Rahasia Inti",
"Recommended": "Direkomendasikan",
"Open URL": "Buka URL",
"Replace host, port, secret with %host, %port, %secret": "Ganti host, port, rahasia dengan %host, %port, %secret",
"Support %host, %port, %secret": "Dukung %host, %port, %secret",
@@ -586,20 +582,9 @@
"AppQuitBody": "APP quit by hotkey",
"AppHiddenTitle": "APP Hidden",
"AppHiddenBody": "APP window hidden by hotkey",
"External Cors Settings": "External Cors Settings",
"External Cors Configuration": "External Cors Configuration",
"Allow private network access": "Allow private network access",
"Allowed Origins": "Allowed Origins",
"Please enter a valid url": "Please enter a valid url",
"Add": "Add",
"Always included origins: {{urls}}": "Always included origins: {{urls}}",
"Invalid regular expression": "Invalid regular expression",
"Controller address cannot be empty": "Controller address cannot be empty",
"Secret cannot be empty": "Secret cannot be empty",
"Configuration saved successfully": "Configuration saved successfully",
"Failed to save configuration": "Failed to save configuration",
"Controller address copied to clipboard": "Controller address copied to clipboard",
"Secret copied to clipboard": "Secret copied to clipboard",
"Saving...": "Saving...",
"Detection timeout or failed": "Detection timeout or failed",
"App Log Max Size": "App Log Max Size",
@@ -833,6 +818,47 @@
"uninstallService": "Uninstall Service"
}
},
"externalController": {
"title": "Alamat Pengendali Eksternal",
"fields": {
"enable": "Enable External Controller",
"address": "Alamat Pengendali Eksternal",
"secret": "Rahasia Inti"
},
"placeholders": {
"address": "Required",
"secret": "Direkomendasikan"
},
"tooltips": {
"copy": "Copy to clipboard"
},
"messages": {
"addressRequired": "Controller address cannot be empty",
"secretRequired": "Secret cannot be empty",
"copyFailed": "Failed to copy",
"controllerCopied": "Controller address copied to clipboard",
"secretCopied": "Secret copied to clipboard"
}
},
"externalCors": {
"title": "External Cors Configuration",
"fields": {
"allowPrivateNetwork": "Allow private network access",
"allowedOrigins": "Allowed Origins"
},
"placeholders": {
"origin": "Please enter a valid url"
},
"actions": {
"add": "Add"
},
"messages": {
"alwaysIncluded": "Always included origins: {{urls}}"
},
"tooltips": {
"open": "External Cors Settings"
}
},
"verge": {
"basic": {
"title": "Pengaturan Dasar Verge",

View File

@@ -334,10 +334,6 @@
"Port settings saved": "Port settings saved",
"Failed to save port settings": "Failed to save port settings",
"External": "外部制御",
"Enable External Controller": "Enable External Controller",
"External Controller": "外部コントローラーの監視アドレス",
"Core Secret": "APIアクセスキー",
"Recommended": "推奨設定",
"Open URL": "URLを開く",
"Replace host, port, secret with %host, %port, %secret": "%host, %port, %secretを使用してホスト、ポート、アクセスキーを表します。",
"Support %host, %port, %secret": "%host, %port, %secretをサポートします。",
@@ -586,20 +582,9 @@
"AppQuitBody": "APP quit by hotkey",
"AppHiddenTitle": "APP Hidden",
"AppHiddenBody": "APP window hidden by hotkey",
"External Cors Settings": "External Cors Settings",
"External Cors Configuration": "External Cors Configuration",
"Allow private network access": "Allow private network access",
"Allowed Origins": "Allowed Origins",
"Please enter a valid url": "Please enter a valid url",
"Add": "Add",
"Always included origins: {{urls}}": "Always included origins: {{urls}}",
"Invalid regular expression": "Invalid regular expression",
"Controller address cannot be empty": "Controller address cannot be empty",
"Secret cannot be empty": "Secret cannot be empty",
"Configuration saved successfully": "ランダム設定を保存完了",
"Failed to save configuration": "Failed to save configuration",
"Controller address copied to clipboard": "API ポートがクリップボードにコピーされました",
"Secret copied to clipboard": "API キーがクリップボードにコピーされました",
"Saving...": "Saving...",
"Detection timeout or failed": "Detection timeout or failed",
"App Log Max Size": "App Log Max Size",
@@ -833,6 +818,47 @@
"uninstallService": "サービスのアンインストール"
}
},
"externalController": {
"title": "外部コントローラーの監視アドレス",
"fields": {
"enable": "外部コントローラーを有効化",
"address": "外部コントローラーの監視アドレス",
"secret": "APIアクセスキー"
},
"placeholders": {
"address": "必須",
"secret": "推奨設定"
},
"tooltips": {
"copy": "クリップボードにコピー"
},
"messages": {
"addressRequired": "コントローラーのアドレスは空にできません",
"secretRequired": "シークレットを空にすることはできません",
"copyFailed": "コピーに失敗しました",
"controllerCopied": "API ポートがクリップボードにコピーされました",
"secretCopied": "API キーがクリップボードにコピーされました"
}
},
"externalCors": {
"title": "外部 CORS 設定",
"fields": {
"allowPrivateNetwork": "プライベートネットワークへのアクセスを許可",
"allowedOrigins": "許可されたオリジン"
},
"placeholders": {
"origin": "有効なURLを入力してください"
},
"actions": {
"add": "追加"
},
"messages": {
"alwaysIncluded": "常に含まれるオリジン: {{urls}}"
},
"tooltips": {
"open": "外部 CORS 設定"
}
},
"verge": {
"basic": {
"title": "Verge基本設定",

View File

@@ -334,10 +334,6 @@
"Port settings saved": "Port settings saved",
"Failed to save port settings": "Failed to save port settings",
"External": "External",
"Enable External Controller": "Enable External Controller",
"External Controller": "External Controller",
"Core Secret": "Core Secret",
"Recommended": "Recommended",
"Open URL": "Open URL",
"Replace host, port, secret with %host, %port, %secret": "Replace host, port, secret with %host, %port, %secret",
"Support %host, %port, %secret": "Support %host, %port, %secret",
@@ -586,20 +582,9 @@
"AppQuitBody": "APP quit by hotkey",
"AppHiddenTitle": "APP Hidden",
"AppHiddenBody": "APP window hidden by hotkey",
"External Cors Settings": "External Cors Settings",
"External Cors Configuration": "External Cors Configuration",
"Allow private network access": "Allow private network access",
"Allowed Origins": "Allowed Origins",
"Please enter a valid url": "Please enter a valid url",
"Add": "Add",
"Always included origins: {{urls}}": "Always included origins: {{urls}}",
"Invalid regular expression": "Invalid regular expression",
"Controller address cannot be empty": "Controller address cannot be empty",
"Secret cannot be empty": "Secret cannot be empty",
"Configuration saved successfully": "Configuration saved successfully",
"Failed to save configuration": "Failed to save configuration",
"Controller address copied to clipboard": "Controller address copied to clipboard",
"Secret copied to clipboard": "Secret copied to clipboard",
"Saving...": "Saving...",
"Detection timeout or failed": "Detection timeout or failed",
"App Log Max Size": "App Log Max Size",
@@ -833,6 +818,47 @@
"uninstallService": "Uninstall Service"
}
},
"externalController": {
"title": "External Controller",
"fields": {
"enable": "Enable External Controller",
"address": "External Controller",
"secret": "Core Secret"
},
"placeholders": {
"address": "Required",
"secret": "Recommended"
},
"tooltips": {
"copy": "Copy to clipboard"
},
"messages": {
"addressRequired": "Controller address cannot be empty",
"secretRequired": "Secret cannot be empty",
"copyFailed": "Failed to copy",
"controllerCopied": "Controller address copied to clipboard",
"secretCopied": "Secret copied to clipboard"
}
},
"externalCors": {
"title": "External Cors Configuration",
"fields": {
"allowPrivateNetwork": "Allow private network access",
"allowedOrigins": "Allowed Origins"
},
"placeholders": {
"origin": "Please enter a valid url"
},
"actions": {
"add": "Add"
},
"messages": {
"alwaysIncluded": "Always included origins: {{urls}}"
},
"tooltips": {
"open": "External Cors Settings"
}
},
"verge": {
"basic": {
"title": "Verge 기본 설정",

View File

@@ -334,10 +334,6 @@
"Port settings saved": "Port settings saved",
"Failed to save port settings": "Failed to save port settings",
"External": "Внешний контроллер",
"Enable External Controller": "Enable External Controller",
"External Controller": "Адрес прослушивания внешнего контроллера",
"Core Secret": "Секрет",
"Recommended": "Рекомендуется",
"Open URL": "Перейти по адресу",
"Replace host, port, secret with %host, %port, %secret": "Замените хост, порт и секрет на %host, %port, %secret",
"Support %host, %port, %secret": "Поддерживаются %host, %port, %secret",
@@ -586,20 +582,9 @@
"AppQuitBody": "APP quit by hotkey",
"AppHiddenTitle": "APP Hidden",
"AppHiddenBody": "APP window hidden by hotkey",
"External Cors Settings": "External Cors Settings",
"External Cors Configuration": "External Cors Configuration",
"Allow private network access": "Allow private network access",
"Allowed Origins": "Allowed Origins",
"Please enter a valid url": "Please enter a valid url",
"Add": "Add",
"Always included origins: {{urls}}": "Always included origins: {{urls}}",
"Invalid regular expression": "Invalid regular expression",
"Controller address cannot be empty": "Controller address cannot be empty",
"Secret cannot be empty": "Secret cannot be empty",
"Configuration saved successfully": "Configuration saved successfully",
"Failed to save configuration": "Failed to save configuration",
"Controller address copied to clipboard": "Controller address copied to clipboard",
"Secret copied to clipboard": "Secret copied to clipboard",
"Saving...": "Saving...",
"Detection timeout or failed": "Detection timeout or failed",
"App Log Max Size": "App Log Max Size",
@@ -833,6 +818,47 @@
"uninstallService": "Uninstall Service"
}
},
"externalController": {
"title": "Адрес прослушивания внешнего контроллера",
"fields": {
"enable": "Включить внешний контроллер",
"address": "Адрес прослушивания внешнего контроллера",
"secret": "Секрет"
},
"placeholders": {
"address": "Обязательно",
"secret": "Рекомендуется"
},
"tooltips": {
"copy": "Копировать в буфер обмена"
},
"messages": {
"addressRequired": "Адрес контроллера не может быть пустым",
"secretRequired": "Секрет не может быть пустым",
"copyFailed": "Не удалось скопировать",
"controllerCopied": "Адрес контроллера скопирован в буфер обмена",
"secretCopied": "Секрет скопирован в буфер обмена"
}
},
"externalCors": {
"title": "Конфигурация внешнего CORS",
"fields": {
"allowPrivateNetwork": "Разрешить доступ к частной сети",
"allowedOrigins": "Разрешённые источники"
},
"placeholders": {
"origin": "Введите корректный URL"
},
"actions": {
"add": "Добавить"
},
"messages": {
"alwaysIncluded": "Всегда включаемые источники: {{urls}}"
},
"tooltips": {
"open": "Настройки внешнего CORS"
}
},
"verge": {
"basic": {
"title": "Основные настройки Verge",

View File

@@ -334,10 +334,6 @@
"Port settings saved": "Port settings saved",
"Failed to save port settings": "Failed to save port settings",
"External": "Harici",
"Enable External Controller": "Enable External Controller",
"External Controller": "Harici Denetleyici",
"Core Secret": "Çekirdek Sırrı",
"Recommended": "Önerilen",
"Open URL": "URL Aç",
"Replace host, port, secret with %host, %port, %secret": "Ana bilgisayar, port, sırrı %host, %port, %secret ile değiştirin",
"Support %host, %port, %secret": "%host, %port, %secret destekler",
@@ -586,20 +582,9 @@
"AppQuitBody": "APP quit by hotkey",
"AppHiddenTitle": "APP Hidden",
"AppHiddenBody": "APP window hidden by hotkey",
"External Cors Settings": "External Cors Settings",
"External Cors Configuration": "External Cors Configuration",
"Allow private network access": "Allow private network access",
"Allowed Origins": "Allowed Origins",
"Please enter a valid url": "Please enter a valid url",
"Add": "Add",
"Always included origins: {{urls}}": "Always included origins: {{urls}}",
"Invalid regular expression": "Invalid regular expression",
"Controller address cannot be empty": "Controller address cannot be empty",
"Secret cannot be empty": "Secret cannot be empty",
"Configuration saved successfully": "Configuration saved successfully",
"Failed to save configuration": "Failed to save configuration",
"Controller address copied to clipboard": "Controller address copied to clipboard",
"Secret copied to clipboard": "Secret copied to clipboard",
"Saving...": "Saving...",
"Detection timeout or failed": "Detection timeout or failed",
"App Log Max Size": "App Log Max Size",
@@ -833,6 +818,47 @@
"uninstallService": "Uninstall Service"
}
},
"externalController": {
"title": "Harici Denetleyici",
"fields": {
"enable": "Harici denetleyiciyi etkinleştir",
"address": "Harici Denetleyici",
"secret": "Çekirdek Sırrı"
},
"placeholders": {
"address": "Gerekli",
"secret": "Önerilen"
},
"tooltips": {
"copy": "Panoya kopyala"
},
"messages": {
"addressRequired": "Denetleyici adresi boş olamaz",
"secretRequired": "Gizli anahtar boş olamaz",
"copyFailed": "Kopyalama başarısız",
"controllerCopied": "Denetleyici adresi panoya kopyalandı",
"secretCopied": "Gizli anahtar panoya kopyalandı"
}
},
"externalCors": {
"title": "Harici CORS yapılandırması",
"fields": {
"allowPrivateNetwork": "Özel ağ erişimine izin ver",
"allowedOrigins": "İzin verilen kökenler"
},
"placeholders": {
"origin": "Geçerli bir URL girin"
},
"actions": {
"add": "Ekle"
},
"messages": {
"alwaysIncluded": "Her zaman dahil edilen kökenler: {{urls}}"
},
"tooltips": {
"open": "Harici CORS ayarları"
}
},
"verge": {
"basic": {
"title": "Verge Temel Ayarı",

View File

@@ -334,10 +334,6 @@
"Port settings saved": "Port settings saved",
"Failed to save port settings": "Failed to save port settings",
"External": "Тышкы",
"Enable External Controller": "Enable External Controller",
"External Controller": "Тышкы контроллер адресы",
"Core Secret": "Серсүз",
"Recommended": "Тавсия ителә",
"Open URL": "URL ачарга",
"Replace host, port, secret with %host, %port, %secret": "Хост, порт, серсүзне %host, %port, %secret белән алмаштырыгыз",
"Support %host, %port, %secret": "%host, %port, %secret макросларын хуплау",
@@ -586,20 +582,9 @@
"AppQuitBody": "APP quit by hotkey",
"AppHiddenTitle": "APP Hidden",
"AppHiddenBody": "APP window hidden by hotkey",
"External Cors Settings": "External Cors Settings",
"External Cors Configuration": "External Cors Configuration",
"Allow private network access": "Allow private network access",
"Allowed Origins": "Allowed Origins",
"Please enter a valid url": "Please enter a valid url",
"Add": "Add",
"Always included origins: {{urls}}": "Always included origins: {{urls}}",
"Invalid regular expression": "Invalid regular expression",
"Controller address cannot be empty": "Controller address cannot be empty",
"Secret cannot be empty": "Secret cannot be empty",
"Configuration saved successfully": "Configuration saved successfully",
"Failed to save configuration": "Failed to save configuration",
"Controller address copied to clipboard": "Controller address copied to clipboard",
"Secret copied to clipboard": "Secret copied to clipboard",
"Saving...": "Saving...",
"Detection timeout or failed": "Detection timeout or failed",
"App Log Max Size": "App Log Max Size",
@@ -833,6 +818,47 @@
"uninstallService": "Uninstall Service"
}
},
"externalController": {
"title": "Тышкы контроллер адресы",
"fields": {
"enable": "Enable External Controller",
"address": "Тышкы контроллер адресы",
"secret": "Серсүз"
},
"placeholders": {
"address": "Required",
"secret": "Тавсия ителә"
},
"tooltips": {
"copy": "Copy to clipboard"
},
"messages": {
"addressRequired": "Controller address cannot be empty",
"secretRequired": "Secret cannot be empty",
"copyFailed": "Failed to copy",
"controllerCopied": "Controller address copied to clipboard",
"secretCopied": "Secret copied to clipboard"
}
},
"externalCors": {
"title": "External Cors Configuration",
"fields": {
"allowPrivateNetwork": "Allow private network access",
"allowedOrigins": "Allowed Origins"
},
"placeholders": {
"origin": "Please enter a valid url"
},
"actions": {
"add": "Add"
},
"messages": {
"alwaysIncluded": "Always included origins: {{urls}}"
},
"tooltips": {
"open": "External Cors Settings"
}
},
"verge": {
"basic": {
"title": "Verge Төп көйләүләр",

View File

@@ -334,10 +334,6 @@
"Port settings saved": "端口设置已保存",
"Failed to save port settings": "端口设置保存失败",
"External": "外部控制",
"Enable External Controller": "启用外部控制器",
"External Controller": "外部控制器监听地址",
"Core Secret": "API 访问密钥",
"Recommended": "建议设置",
"Open URL": "打开链接",
"Replace host, port, secret with %host, %port, %secret": "使用 %host, %port, %secret 表示 主机, 端口, 访问密钥",
"Support %host, %port, %secret": "支持 %host, %port, %secret",
@@ -586,20 +582,9 @@
"AppQuitBody": "已通过快捷键退出应用",
"AppHiddenTitle": "应用隐藏",
"AppHiddenBody": "已通过快捷键隐藏应用窗口",
"External Cors Settings": "外部控制跨域设置",
"External Cors Configuration": "外部控制跨域配置",
"Allow private network access": "允许专用网络访问",
"Allowed Origins": "允许的来源",
"Please enter a valid url": "请输入有效的网址",
"Add": "添加",
"Always included origins: {{urls}}": "始终包含来源:{{urls}}",
"Invalid regular expression": "无效的正则表达式",
"Controller address cannot be empty": "控制器地址不能为空",
"Secret cannot be empty": "访问密钥不能为空",
"Configuration saved successfully": "配置保存成功",
"Failed to save configuration": "配置保存失败",
"Controller address copied to clipboard": "控制器地址已复制到剪贴板",
"Secret copied to clipboard": "访问密钥已复制到剪贴板",
"Saving...": "保存中...",
"Detection timeout or failed": "检测超时或失败",
"App Log Max Size": "应用日志最大大小",
@@ -833,6 +818,47 @@
"uninstallService": "卸载服务"
}
},
"externalController": {
"title": "外部控制器监听地址",
"fields": {
"enable": "启用外部控制器",
"address": "外部控制器监听地址",
"secret": "API 访问密钥"
},
"placeholders": {
"address": "必填",
"secret": "建议设置"
},
"tooltips": {
"copy": "复制到剪贴板"
},
"messages": {
"addressRequired": "控制器地址不能为空",
"secretRequired": "访问密钥不能为空",
"copyFailed": "复制失败",
"controllerCopied": "控制器地址已复制到剪贴板",
"secretCopied": "访问密钥已复制到剪贴板"
}
},
"externalCors": {
"title": "外部控制跨域设置",
"fields": {
"allowPrivateNetwork": "允许专用网络访问",
"allowedOrigins": "允许的来源"
},
"placeholders": {
"origin": "请输入有效的网址"
},
"actions": {
"add": "添加"
},
"messages": {
"alwaysIncluded": "始终包含来源:{{urls}}"
},
"tooltips": {
"open": "外部控制跨域设置"
}
},
"verge": {
"basic": {
"title": "Verge 基础设置",

View File

@@ -334,10 +334,6 @@
"Port settings saved": "連結埠設定已儲存",
"Failed to save port settings": "連結埠設定儲存失敗",
"External": "外部控制",
"Enable External Controller": "啟用外部控制器",
"External Controller": "外部控制器監聽位址",
"Core Secret": "API 存取金鑰",
"Recommended": "建議設定",
"Open URL": "開啟網址",
"Replace host, port, secret with %host, %port, %secret": "使用 %host, %port, %secret 表示 主機, 連接埠, 存取金鑰",
"Support %host, %port, %secret": "支援 %host, %port, %secret",
@@ -586,20 +582,9 @@
"AppQuitBody": "已透過快速鍵退出應用程式",
"AppHiddenTitle": "應用程式隱藏",
"AppHiddenBody": "已透過快速鍵隱藏應用程式視窗",
"External Cors Settings": "外部跨來源資源共享設定",
"External Cors Configuration": "外部跨來源資源共享設定",
"Allow private network access": "允許專用網路存取",
"Allowed Origins": "允許的來源",
"Please enter a valid url": "請輸入有效的網址",
"Add": "新增",
"Always included origins: {{urls}}": "始終包含來源:{{urls}}",
"Invalid regular expression": "無效的正規表示式",
"Controller address cannot be empty": "控制器位址不能為空",
"Secret cannot be empty": "存取金鑰不能為空",
"Configuration saved successfully": "設定儲存完成",
"Failed to save configuration": "設定儲存失敗",
"Controller address copied to clipboard": "API 連接埠已複製到剪貼簿",
"Secret copied to clipboard": "API 金鑰已複製到剪貼簿",
"Saving...": "儲存中...",
"Detection timeout or failed": "檢測逾時或失敗",
"App Log Max Size": "應用程式日誌最大大小",
@@ -833,6 +818,47 @@
"uninstallService": "解除安裝服務"
}
},
"externalController": {
"title": "外部控制器監聽位址",
"fields": {
"enable": "啟用外部控制器",
"address": "外部控制器監聽位址",
"secret": "API 存取金鑰"
},
"placeholders": {
"address": "必填",
"secret": "建議設定"
},
"tooltips": {
"copy": "複製到剪貼簿"
},
"messages": {
"addressRequired": "控制器位址不能為空",
"secretRequired": "存取金鑰不能為空",
"copyFailed": "複製失敗",
"controllerCopied": "API 連接埠已複製到剪貼簿",
"secretCopied": "API 金鑰已複製到剪貼簿"
}
},
"externalCors": {
"title": "外部跨來源資源共享設定",
"fields": {
"allowPrivateNetwork": "允許專用網路存取",
"allowedOrigins": "允許的來源"
},
"placeholders": {
"origin": "請輸入有效的網址"
},
"actions": {
"add": "新增"
},
"messages": {
"alwaysIncluded": "始終包含來源:{{urls}}"
},
"tooltips": {
"open": "外部跨來源資源共享設定"
}
},
"verge": {
"basic": {
"title": "Verge 基礎設定",