feat(xray/dns): align DNS settings with Xray docs + UI polish
- DNS server modal: rename expectIPs -> expectedIPs (per docs); add per-server tag, clientIP, serveStale, serveExpiredTTL, timeoutMs; flip skipFallback default to false; hydration still accepts legacy expectIPs for back-compat. - DNS tab: add hosts editor (domain -> IP/array), serveStale + serveExpiredTTL controls, "Use Preset" button bringing back the legacy preset gallery (Google / Cloudflare / AdGuard + Family variants — fixed AdGuard Family IPs that were wrong in legacy), and a "Delete All" button to wipe the server list at once. - i18n: add 15 new dns.* keys across all 13 locales. - Frontend-wide formatter pass on Vue components (whitespace and attribute layout only, no behavior changes). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -754,7 +754,22 @@
|
||||
"useSystemHostsDesc": "Использовать файл hosts из установленной системы",
|
||||
"usePreset": "Использовать шаблон",
|
||||
"dnsPresetTitle": "Шаблоны DNS",
|
||||
"dnsPresetFamily": "Семейный"
|
||||
"dnsPresetFamily": "Семейный",
|
||||
"serveStale": "Использовать устаревшие",
|
||||
"serveStaleDesc": "Возвращать устаревшие результаты из кэша во время обновления в фоне",
|
||||
"serveExpiredTTL": "TTL устаревших",
|
||||
"serveExpiredTTLDesc": "Срок действия (секунды) устаревших записей кэша; 0 = бессрочно",
|
||||
"timeoutMs": "Тайм-аут (мс)",
|
||||
"skipFallback": "Пропустить Fallback",
|
||||
"finalQuery": "Финальный запрос",
|
||||
"hosts": "Hosts",
|
||||
"hostsAdd": "Добавить Host",
|
||||
"hostsEmpty": "Host не определены",
|
||||
"hostsDomain": "Домен (напр. domain:example.com)",
|
||||
"hostsValues": "IP или домен — введите и нажмите Enter",
|
||||
"clearAll": "Удалить все",
|
||||
"clearAllTitle": "Удалить все DNS-серверы?",
|
||||
"clearAllConfirm": "Все DNS-серверы будут удалены из списка. Это действие нельзя отменить."
|
||||
},
|
||||
"fakedns": {
|
||||
"add": "Создать Fake DNS",
|
||||
|
||||
Reference in New Issue
Block a user