Files
netrunner-landing/dictionaries/uk.json
T
nineap 32b4460b66 Локализует лендинг на 10 языков + RTL для арабского и персидского
Добавляет zh-CN, fa, ar, tr, uk, be, vi, uz словари (170 ключей, идентичная
вложенная структура) к существующим en/ru. lib/locales.ts — единый источник
списка локалей/дефолтной локали/RTL-набора вместо захардкоженного ["en","ru"]
в proxy.ts. language-switcher.tsx: переключение языка резало только
двухбуквенные коды регэкспом (/^\/[a-z]{2}/), из-за чего zh-CN никогда не
матчился и путь задваивался — заменено на honest-поиск по списку locales.

app/[lang]/layout.tsx — dir="rtl"/"ltr" на <html> по локали (SSR, в отличие
от реактивного клиентского переключения в netrunner-app). Header.tsx/
Footer.tsx — разбитое на три <span> имя бренда визуально переворачивалось
Flexbox'ом под dir=rtl ("VPNrunnerNet"), исправлено через dir="ltr" на
самом враппере.

BlogPreview/Faq/Pricing и обе blog-страницы: fallback на *_en-коллекцию
PocketBase, если для языка ещё нет переведённого контента (FAQ-ответы,
детали тарифов, посты блога не тянутся автоматически — это отдельный от
статических словарей CMS-контент), плюс i18n-ключи period1m/period6m/
period1y вместо захардкоженных ru/en-подписей периодов в Pricing.tsx.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-08 22:53:37 +07:00

243 lines
12 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"nav": {
"features": "Можливості",
"pricing": "Тарифи",
"faq": "Питання",
"blog": "Логи",
"terminal": "Термінал",
"docs": "Документація",
"cta": "Завантажити Netrunner",
"profile": "Профіль",
"menu": "Menu.exe",
"speedtest": "Діагностика",
"doom": "DOOM OS"
},
"hero": {
"badge": "Система стежить за всіма",
"badgeSecure": "Захищений тунель встановлено",
"titleStart": "Система стежить за всіма,",
"titleHighlight": "крім тебе.",
"subtitle": "Цифровий слід прихований. Логи знищені. Швидкість не обмежена.",
"switchLabel": "Netrunner VPN",
"ctaPrimary": "Завантажити клієнт",
"ctaSecondary": "Список вузлів"
},
"features": {
"title": "Технології доступу",
"items": [
{
"title": "Обхід DPI та uTLS",
"description": "Протокол Netrunner маскує трафік під звичайні HTTPS-запити. Системи глибокого аналізу пакетів бачать лише білий шум."
},
{
"title": "Криптографія ChaCha20-Poly1305",
"description": "Високошвидкісний потоковий шифр з Perfect Forward Secrecy. Ключі сесій змінюються динамічно."
},
{
"title": "Adaptive Backpressure",
"description": "Розмір буфера масштабується залежно від затримки з'єднання. Автоматично запобігає стрибкам латентності."
},
{
"title": "Multi-Platform Core",
"description": "Низькорівневе ядро на Rust гарантує бездоганну сумісність і нульовий оверхед на Android, Windows та Linux. Підтримка macOS та iOS у розробці."
},
{
"title": "Власна інфраструктура",
"description": "Ми використовуємо власні сервери, а не орендуємо їх у хмарних провайдерів — з мультиплексуванням потоків між вузлами для стабільного з'єднання, яке важко занести в чорний список."
}
]
},
"pricing": {
"badge": "Тарифні протоколи",
"title": "Оберіть свій Uplink",
"perMonth": "/міс",
"recommend": "Рекомендуємо",
"syncing": "Синхронізація_Вузлів...",
"empty": "0 доступних підключень.",
"discount": "ЗНИЖКА",
"mo": "/ міс",
"billedOnce": "Спишеться одразу:",
"period1m": "1 місяць",
"period6m": "6 місяців",
"period1y": "1 рік"
},
"faq": {
"title": "Системні запити (FAQ)",
"empty": "База знань порожня."
},
"blog": {
"badge": "Data Logs",
"title": "Мережеві Хроніки",
"more": "Усі записи",
"readMore": "Читати далі",
"empty": "Сигнали не знайдено.",
"archive": "Архів термінала",
"systemLogs": "Системні Логи",
"emptySector": "[Записи не знайдено в цьому секторі]",
"decrypt": "Дешифрувати →",
"backBtn": "cd ../logs",
"readTime": "Читання: 4 хв",
"verified": "Перевірено: Netrunner",
"endTransmission": "Кінець передачі // node_th_01"
},
"footer": {
"brand": "Netrunner VPN",
"tagline": "Система стежить за всіма, крім тебе.",
"sections": {
"product": "Продукт",
"resources": "Ресурси",
"legal": "Право"
},
"links": {
"features": "Можливості",
"pricing": "Тарифи",
"faq": "FAQ",
"protocol": "Протокол",
"comms": "Блог",
"privacy": "Приватність",
"terms": "Умови",
"profile": "Профіль"
},
"rights": "© 2026 Netrunner VPN. Усі пакети зашифровано.",
"protocolStatus": "ПРОТОКОЛ // ЗАХИЩЕНИЙ ДОСТУП",
"uplinkStatus": "Статус Uplink",
"activeNode": "Активний Вузол",
"latency": "Затримка (RTT)"
},
"download": {
"title": "Встановлення Вузла",
"subtitle": "Оберіть вашу платформу для завантаження клієнта Netrunner.",
"badges": {
"active": "Стабільна",
"dev": "У розробці"
},
"buttons": {
"direct": "Завантажити напряму",
"store": "У Store",
"github": "Source Code",
"notify": "Повідомити",
"soon": "Скоро в Store",
"pending": "Очікування збірки"
},
"platforms": {
"windows": "Windows 10 / 11",
"android": "Android 8.0+",
"linux": "Ubuntu / Debian / Arch",
"macos": "macOS 12.0+",
"ios": "iOS 15.0+"
},
"accessingBuild": "Доступ_до_Build_Сервера..."
},
"terminal": {
"title": "GLOBAL COMM-LINK",
"description": "Загальний канал зв'язку. Нескінченна історія.",
"alias": "ПОЗИВНИЙ",
"message": "ВВЕДЕННЯ ДАНИХ...",
"send": "НАДІСЛАТИ",
"systemReady": "SYSTEM_READY // UPLINK_SECURED",
"loadingHistory": "Завантаження архіву...",
"noMoreLogs": "ДОСЯГНУТО КІНЦЯ АРХІВУ",
"encrypting": "ШИФРУВАННЯ...",
"cooldown": "ОЧІКУВАННЯ: {{time}}с",
"manifestoTitle": "МАНІФЕСТ ВІЛЬНОГО ЗВ'ЯЗКУ // v1.0",
"manifestoText": "Цей термінал є прямим каналом зв'язку з ядром Netrunner. Ми транслюємо логи без цензури в реальному часі, тому що протокол, здатний обходити DPI, не повинен боятися правди.",
"rulesTitle": "ПРОТОКОЛ ПОВЕДІНКИ:",
"rule1": "— Жодної премодерації. Ваше повідомлення миттєво потрапляє в мережу.",
"rule2": "— Критика VPN, баг-репорти чи незручні питання — дозволено все.",
"rule3": "— Єдине обмеження: прямі образи інших учасників мережі та спам. Будьте кіберпанком, а не тролем.",
"statusReady": "UPLINK_ESTABLISHED // NO_FILTERS_DETECTED"
},
"loading": {
"establishing": "Встановлення з'єднання"
},
"notFound": {
"errorBadge": "[ Помилка: Вузол не знайдено ]",
"message": "У таблиці маршрутизації немає запитуваного вузла. Передачу перервано. Поверніться до захищеної мережі.",
"returnHome": "Повернутися на базу"
},
"nodes": {
"title": "Глобальна Мережа Вузлів",
"subtitle": "Топологія серверів Netrunner у реальному часі.",
"status": {
"online": "У мережі",
"full": "Перевантажено",
"maintenance": "Обслуговування"
},
"labels": {
"load": "Навантаження",
"latency": "Затримка"
}
},
"guestbook": {
"title": "COMM-LINK_",
"subtitle": "Термінал зв'язку",
"description": "Прямий канал зв'язку з вузлами Netrunner.",
"philosophyTitle": "Нам не потрібна модерація",
"philosophyText": "Ми створили Netrunner для обходу будь-яких бар'єрів, тому не боїмося того, що ви напишете. Ця стрічка — живий доказ свободи слова. Поки інші ховають негатив, ми виводимо його в реальному часі. Якщо наш протокол витримує атаки DPI, він витримає і вашу чесність.",
"liveFeed": "Пряма трансляція (Останні 50)",
"noTransmissions": "Активних передач не виявлено.",
"labelAlias": "Позивний",
"labelPayload": "Дані",
"placeholderAlias": "Guest_77",
"placeholderPayload": "Введіть повідомлення...",
"statusSuccess": "Дані успішно доставлено в мережу.",
"statusErrorBreach": "Порушення безпеки. З'єднання розірвано.",
"statusErrorEmpty": "Потрібні позивний і пакет даних.",
"statusErrorSize": "Розмір пакета перевищує ліміт.",
"statusErrorFirewall": "Файрвол активний. Зачекайте {{time}} с.",
"statusErrorOffline": "Передачу перервано. Вузол недоступний.",
"statusErrorFilter": "⛔ Відхилено: Ваше повідомлення порушує політику безпеки (лайка, спам чи токсичність). Будь ласка, змініть формулювання для проходження фільтра.",
"btnEncrypting": "Шифрування...",
"btnBroadcast": "Транслювати",
"cooldown": "Кулдаун: {{time}}с"
},
"auth": {
"title": "АВТОРИЗАЦІЯ UPLINK",
"processing": "Обробка облікових даних...",
"verifying": "Перевірка криптографічного підпису...",
"granted": "ДОСТУП ДОЗВОЛЕНО",
"denied": "У ДОСТУПІ ВІДМОВЛЕНО",
"noToken": "Токен авторизації не знайдено. Будь ласка, пройдіть автентифікацію через термінал Netrunner у Telegram.",
"redirecting": "Перенаправлення в захищений сектор...",
"toBot": "Відкрити термінал Telegram",
"awaiting": "ОЧІКУВАННЯ ОБЛІКОВИХ ДАНИХ",
"authPrompt": "Ініціалізуйте захищене з'єднання через Telegram для доступу до панелі керування.",
"logs": {
"waitInit": "> [ОЧІКУВАННЯ] ІНІЦІАЛІЗАЦІЯ ЗАХИЩЕНОГО ВХОДУ TELEGRAM...",
"sigValid": "> [OK] ПІДПИС ДІЙСНИЙ",
"apiRejected": "> [ПОМИЛКА] API ВІДХИЛИВ ТОКЕН",
"coreOffline": "> [ПОМИЛКА] ЯДРО НЕДОСТУПНЕ",
"authPayload": "> [AUTH] ОТРИМАНО ДАНІ TELEGRAM",
"verifyHmac": "> ПЕРЕВІРКА ПІДПИСУ HMAC-SHA256...",
"invalidSig": "> [ПОМИЛКА] НЕДІЙСНИЙ АБО ПРОСТРОЧЕНИЙ ПІДПИС",
"networkError": "> [ПОМИЛКА] МЕРЕЖЕВИЙ ЗБІЙ"
}
},
"docs": {
"establishing": "Встановлення_захищеного_з'єднання...",
"vaultTitle": "DATA_VAULT",
"vaultSubtitle": "Системні логи та документація // V4.2",
"searchPlaceholder": "root@nrxp:~# grep -i ...",
"empty": "0 записів знайдено за запитом",
"closeSession": "Закрити сесію",
"noContent": "ДАНІ_НЕ_ЗНАЙДЕНО",
"eof": "EOF"
},
"speedtest": {
"title": "Діагностика Uplink",
"mockMode": "Локальна симуляція",
"prodMode": "Пряме вимірювання до мережевого шлюзу Netrunner.",
"btnError": "ПОВТОРИТИ ЦИКЛ",
"btnDone": "ПЕРЕЗАПУСТИТИ",
"btnIdle": "ПОЧАТИ ТЕСТ",
"statusPinging": "ПІНГ",
"statusDownloading": "ЗАВАНТАЖЕННЯ",
"statusUploading": "ВІДДАЧА",
"latency": "Затримка",
"download": "Завантаження",
"upload": "Віддача",
"unitMs": "мс",
"unitMbps": "Мбіт/с"
}
}