fix(clients): hide WireGuard config after detaching the WG inbound

The client info and QR modals rendered a WireGuard config whenever the
client still carried leftover WG key material (privateKey / publicKey /
allowedIPs / preSharedKey / keepAlive), regardless of whether a WireGuard
inbound was actually attached. After detaching the WG inbound the config
kept showing, built with an empty endpoint port and public key.

Gate wgConfigText on an attached WireGuard inbound (wgInbound) being
present, not just isWireguardClient(client), in both ClientInfoModal and
ClientQrModal.

Also rename the i18n key pages.clients.conf -> config and add the missing
pages.clients keys (wireguardConfig, config, bulkFlow, bulkFlowNoChange,
bulkFlowDisable) to all 12 non-English locales so each one matches en-US.
This commit is contained in:
MHSanaei
2026-06-29 01:15:37 +02:00
parent a329882e0e
commit 6c71b725da
15 changed files with 64 additions and 4 deletions
+5
View File
@@ -718,6 +718,8 @@
"tabBasics": "Básico",
"tabCredentials": "Credenciais",
"tabLinks": "Links",
"wireguardConfig": "Configuração do WireGuard",
"config": "Configuração",
"linksHint": "Adicione links de terceiros e URLs de assinatura remotas para incluir na assinatura deste cliente.",
"addExternalLink": "Adicionar link externo",
"addExternalSubscription": "Adicionar assinatura externa",
@@ -871,6 +873,9 @@
"bulkAdjustNothing": "Defina dias ou tráfego antes de aplicar.",
"addDays": "Adicionar dias",
"addTrafficGB": "Adicionar tráfego (GB)",
"bulkFlow": "Definir flow",
"bulkFlowNoChange": "Sem alteração",
"bulkFlowDisable": "Desativar (limpar flow)",
"delDepleted": "Excluir esgotados",
"delDepletedConfirmTitle": "Excluir clientes esgotados?",
"delDepletedConfirmContent": "Remove todos os clientes cuja cota de tráfego foi esgotada ou cuja expiração já passou. Não é possível desfazer.",