feat: Add Bulgarian language (#1319)

* Add Bulgarian language

* changed a terminology word and fixed a typo

* add to readme

---------

Co-authored-by: Maxi Quoß <maxi@quoss.org>
This commit is contained in:
Georgi Ivanov
2025-08-22 10:35:25 +03:00
committed by GitHub
parent 9205590555
commit 7ef8ba64b7
5 changed files with 202 additions and 0 deletions

View File

@@ -138,6 +138,7 @@ Although UpSnap has user authorisation, it is **not recommended to expose it to
UpSnap is available in the following languages so far:
- 🇧🇬 **Bulgarian** (bg-BG)
- 🇩🇪 **German** (de-DE)
- 🇺🇸 **English** (en-US)
- 🇪🇸 **Spanish** (es-ES)

View File

@@ -2,6 +2,7 @@
"$schema": "https://inlang.com/schema/project-settings",
"baseLocale": "en-US",
"locales": [
"bg-BG",
"de-DE",
"en-US",
"es-ES",

View File

@@ -1,6 +1,7 @@
import { getLocale } from '$lib/paraglide/runtime';
import type { Locale } from 'date-fns';
import { id } from 'date-fns/locale';
import { bg } from 'date-fns/locale/bg';
import { de } from 'date-fns/locale/de';
import { enUS } from 'date-fns/locale/en-US';
import { es } from 'date-fns/locale/es';
@@ -23,6 +24,9 @@ export const dateFnsLocale: Writable<Locale> = writable(enUS);
localeStore.subscribe((l: string) => {
switch (l) {
case 'bg-BG':
dateFnsLocale.set(bg);
break;
case 'de-DE':
dateFnsLocale.set(de);
break;

View File

@@ -16,6 +16,7 @@
// locales
const languageEmojis = {
'bg-BG': '🇧🇬',
'de-DE': '🇩🇪',
'en-US': '🇺🇸',
'es-ES': '🇪🇸',

View File

@@ -0,0 +1,195 @@
{
"$schema": "https://inlang.com/schema/inlang-message-format",
"account_account_type_admin": "Администратор",
"account_account_type_user": "Потребител",
"account_avatar_title": "Аватар",
"account_change_password_body": "След като промените паролата си, ще трябва да влезете отново.",
"account_change_password_confirm": "Потвърдете паролата",
"account_change_password_label": "Стара парола",
"account_change_password_new": "Нова парола",
"account_change_password_title": "Промяна на паролата",
"account_language_title": "Език",
"account_page_title": "Профил",
"buttons_add": "Добавяне",
"buttons_cancel": "Отказ",
"buttons_change": "Промяна",
"buttons_confirm": "Потвърждение",
"buttons_delete": "Изтриване",
"buttons_reset": "Нулиране",
"buttons_save": "Запазване",
"device_card_btn_more_edit": "Редактиране",
"device_card_btn_more_reboot": "Рестартиране",
"device_card_btn_more_sleep": "Заспиване",
"device_card_btn_more": "...",
"device_card_nic_tooltip_pending": "Изчакване...",
"device_card_nic_tooltip_power_no_permission": "Нямате права за включване на това устройство",
"device_card_nic_tooltip_power": "Включване",
"device_card_nic_tooltip_shutdown_no_cmd": "Няма зададена команда за изключване",
"device_card_nic_tooltip_shutdown_no_permission": "Нямате права за изключване на това устройство",
"device_card_nic_tooltip_shutdown": "Изключване",
"device_card_password": "Парола",
"device_card_tooltip_last_status_change": "Последна промяна на статуса",
"device_card_tooltip_shutdown_cron": "Cron за изключване",
"device_card_tooltip_wake_cron": "Cron за събуждане",
"device_card_tooltip_wake_password": "Парола за събуждане",
"device_general_description_placeholder": "Описание на устройството",
"device_general_description": "Описание",
"device_general_ip": "IP адрес",
"device_general_mac": "MAC адрес",
"device_general_name": "Име",
"device_general_netmask": "Мрежова маска",
"device_general_required_field": "задължително поле",
"device_general": "Общи",
"device_groups_desc": "Можете да добавяте устройства към група, за да ги групирате заедно на началния екран.",
"device_groups_placeholder": "напр. „Мазе“ или „Офис“",
"device_groups": "Групи",
"device_link_desc": "Превръща името на устройството във връзка, идеална за свързване към уебсайт, например.",
"device_link_open_new_tab": "Нов таб",
"device_link_open_no": "Не",
"device_link_open_same_tab": "Същия таб",
"device_link_open": "Автоматично отваряне на връзка",
"device_link": "Връзка",
"device_modal_confirm_shutdown_desc": "Моля, потвърдете изключването на {device}.",
"device_modal_confirm_shutdown_title": "Изключване на {device}?",
"device_modal_confirm_wake_desc": "Моля, потвърдете събуждането на {device}.",
"device_modal_confirm_wake_title": "Събуждане на {device}?",
"device_network_scan_add_all": "Добавяне на всички устройства",
"device_network_scan_desc": "Автоматично сканиране на мрежата за устройства. За да работи, трябва да стартирате UpSnap като root/admin и да имате nmap инсталиран и наличен в $PATH променливата (за потребители на Docker това вече е така и не е необходимо да променяте нищо). Сканирането може да отнеме няколко секунди.",
"device_network_scan_include_unknown": "Включване на устройства с име „Неизвестно“",
"device_network_scan_ip_range": "IP диапазон",
"device_network_scan_ip": "IP:",
"device_network_scan_mac_vendor": "Доставчик на MAC адрес:",
"device_network_scan_mac": "MAC адрес:",
"device_network_scan_netmask": "Мрежова маска:",
"device_network_scan_new_netmask": "Нова мрежова маска",
"device_network_scan_no_range": "Няма диапазон на сканиране",
"device_network_scan_range_saved": "Запазен диапазон на сканиране",
"device_network_scan_replace_netmask": "Замяна на мрежовата маска за всички устройства?",
"device_network_scan_running": "Сканирането стартира...",
"device_network_scan_unsaved_changes": "Незапазени промени",
"device_network_scan": "Сканиране",
"device_page_title": "Ново устройство",
"device_password_desc": "Някои мрежови карти имат възможност да задават парола за Magic пакети, наричана още <span class=\"badge\">SecureON</span>. Паролата може да бъде дълга само 0, 4 или 6 знака.",
"device_password": "Парола",
"device_ping_cmd": "Персонализирана ping команда",
"device_ping_desc": "Можете да използвате персонализирана shell команда, за да проверите дали устройството е включено. Командата трябва да върне exit код <span class=\"badge\">0</span>, за да потвърди, че устройството е включено, докато всеки друг код показва, че устройството е изключено.",
"device_ping": "Ping",
"device_ports_add_new": "Добавяне на нов порт",
"device_ports_desc": "UpSnap може също да провери дали дадените портове са отворени.",
"device_ports_name": "Име",
"device_ports_number": "Номер",
"device_ports": "Портове",
"device_require_confirmation": "Изискване на потвърждение",
"device_shutdown_cmd": "Команда за изключване",
"device_shutdown_cron_desc": "Подобно на настройването на cron за събуждане на устройство, можете също да планирате cron задача за изключване на това устройство.",
"device_shutdown_cron_enable": "Активиране на изключване чрез cron",
"device_shutdown_cron": "Параметри за изключване за cron",
"device_shutdown_desc": "Тази <strong>shell команда</strong> ще се изпълни във вашия контейнер (ако използвате Docker) или на вашия хост (ако използвате двоичен файл). За да се уверите, че работи, първо можете да изпълните командата вътре в контейнера или в shell на хоста. Типични команди са <span class=\"badge\">net rpc</span> за Windows, <span class=\"badge\">sshpass</span> за Linux или <span class=\"badge\">curl</span> за отправяне на уеб заявки.",
"device_shutdown_examples_linux": "Изключване на отдалечена машина с Linux:",
"device_shutdown_examples_windows": "Изключване на отдалечена машина с Windows:",
"device_shutdown_examples": "Примери:",
"device_shutdown_timeout": "Време за изключване (секунди)",
"device_shutdown": "Изключване",
"device_sol_authorization": "Оторизация",
"device_sol_desc1": "Можете да изключите устройството си с помощта на инструмента <a class=\"link\" href=\"https://github.com/SR-G/sleep-on-lan\" target=\"_blank\">Sleep-On-LAN</a>. Sleep-On-LAN (SOL) е външен инструмент, който се изпълнява на устройството, което искате да изключите, предоставяйки REST крайна точка. За инструкции относно конфигурирането на Sleep-On-LAN, вижте раздела <a href=\"https://github.com/SR-G/sleep-on-lan#usage\" class=\"link\" target=\"_blank\">Използване</a>.",
"device_sol_desc2": "SOL е конфигуриран да изпраща заявки през HTTP вместо UDP, за да се даде възможност за оторизация и да се направят заявките по-надеждни.",
"device_sol_desc3": "Затова се уверете, че сте включили <span class=\"badge\">HTTP:&lt;ВАШИЯ-ПОРТ&gt;</span> в секцията <span class=\"badge\">Listeners</span> на вашата <a href=\"https://github.com/SR-G/sleep-on-lan#configuration\" class=\"link\" target=\"_blank\">SOL конфигурация</a>.",
"device_sol_enable": "Активиране на Sleep-On-LAN",
"device_sol_password": "SOL парола",
"device_sol_port": "SOL порт",
"device_sol_user": "SOL потребител",
"device_sol": "Sleep-On-LAN",
"device_tabs.0": "Ръчно",
"device_tabs.1": "Сканиране на мрежа",
"device_wake_cmd": "Персонализирана команда за събуждане",
"device_wake_cron_enable": "Активиране на cron за събуждане",
"device_wake_cron": "Cron за събуждане",
"device_wake_desc": "Можете да събудите това устройство чрез планирана cron задача.",
"device_wake_timeout": "Време за събуждане (секунди)",
"device_wake": "Събуждане",
"home_add_first_device": "Добавете първото си устройство",
"home_grant_permissions": "Моля, помолете вашия администратор да ви предостави необходимите права за добавяне и работа с устройства.",
"home_no_devices": "Тук няма устройства.",
"home_order_groups": "Групи",
"home_order_ip": "IP",
"home_order_name": "Име",
"home_order_tooltip": "Подредба",
"home_page_title": "Начало",
"home_search_placeholder": "Търсене на устройства",
"home_wake_group": "Събуждане на група",
"login_btn_login": "Влизане",
"login_btn_more": "...",
"login_email_label": "Имейл или потребителско име:",
"login_menu_title_auth_providers": "Други Auth доставчици",
"login_password_label": "Парола:",
"login_welcome": "Добре дошли",
"navbar_edit_account": "Редактиране на профил",
"navbar_logout": "Излизане",
"navbar_new": "Ново",
"navbar_theme": "Тема",
"settings_icon_desc": "Задайте персонализирана икона. Поддържани типове файлове:",
"settings_icon_title": "Икона",
"settings_invalid_cron": "❌ Невалиден cron синтаксис",
"settings_lazy_ping_desc": "Когато „мързелив ping“ е активиран, UpSnap ще ping-ва устройства само когато потребител действително посети сайта. Ако е деактивиран, UpSnap винаги ще ping-ва.",
"settings_lazy_ping_enable": "Активиране",
"settings_lazy_ping_title": "Мързелив ping",
"settings_page_title": "Настройки",
"settings_ping_interval_desc1": "Задава интервала, през който устройствата се ping-ват. Оставете празно, за да запазите стойността по подразбиране: <span class=\"badge\">*/3 * * * * *</span>.",
"settings_ping_interval_desc2": "Научете повече за правилния синтаксис на cron в <a class=\"link\" href=\"https://en.wikipedia.org/wiki/Cron\" target=\"_blank\">Уикипедия</a> или вижте <a class=\"link\" href=\"https://github.com/harrisiirak/cron-parser\" target=\"_blank\">документацията на пакета</a>.",
"settings_ping_interval_title": "Ping интервал",
"settings_upsnap_version": "UpSnap версия",
"settings_website_title_desc": "Задава името на уебсайта и таб на браузъра.",
"settings_website_title_title": "Име на сайта",
"toasts_admin_saved": "Администраторът е запазен",
"toasts_device_created": "Създадено устройство {device}",
"toasts_device_deleted": "Изтрито устройство {device}",
"toasts_device_updated": "Обновено устройство {device}",
"toasts_devices_created_multiple": "Създадени {count} устройства",
"toasts_group_created": "Създадена група {group}",
"toasts_group_deleted": "Изтрита група {group}",
"toasts_no_permission": "Нямате необходимите права за посещение на {url}",
"toasts_password_changed": "Паролата е променена. Моля, влезте отново.",
"toasts_passwords_missmatch": "Паролите не съвпадат",
"toasts_permissions_created": "Правата за потребител {username} са създадени",
"toasts_permissions_deleted": "Правата за потребител {username} са изтрити",
"toasts_permissions_updated_personal": "Вашите права са обновени",
"toasts_permissions_updated": "Правата за потребител {username} са обновени",
"toasts_settings_saved": "Настройките са запазени",
"toasts_user_created": "Потребител {username} е създаден",
"toasts_user_deleted": "Потребител {username} е изтрит",
"toasts_user_saved": "Потребителят е запазен",
"users_allow_create_devices": "Разрешаване на {username} да добавя устройства и да редактира групите с устройства",
"users_confirm_delete_desc": "Сигурни ли сте, че искате на изтриете {username}?",
"users_confirm_delete_title": "Потвърждаване на изтриване",
"users_create_new_device": "Създаване на ново устройство",
"users_create_new_user": "Създаване на нов потребител",
"users_delete": "Изтриване",
"users_device_permissions": "Права за устройства",
"users_page_title": "Потребители",
"users_password_confirm": "Потвърждение на парола",
"users_password": "Парола",
"users_power": "Включване",
"users_read": "Преглеждане",
"users_required_field": "задължително поле",
"users_toggle": "Обръщане",
"users_update": "Обновяване",
"users_username": "Потребителско име",
"welcome_not_expected_back": "Връщане обратно",
"welcome_not_expected_desc": "Инсталацията вече е завършена! Няма нужда от допълнителни стъпки.",
"welcome_not_expected_title": "Не те очаквах тук! 🧐",
"welcome_progress_step1": "Добре дошли",
"welcome_progress_step2": "Създаване на профил",
"welcome_progress_step3": "Готово",
"welcome_step1_page_title": "Добре дошли в UpSnap 🥳",
"welcome_step1_setup_btn_next": "Напред",
"welcome_step1_setup_desc": "Моля, изпълнете следните стъпки, за да завършите инсталацията.",
"welcome_step2_btn_create": "Създаване",
"welcome_step2_label_email": "Имейл:",
"welcome_step2_label_min_chars": "мин. 10 знака",
"welcome_step2_label_password_confirm": "Потвърждение на парола:",
"welcome_step2_label_password": "Парола:",
"welcome_step2_page_title": "Създаване на администраторски профил",
"welcome_step3_btn_done": "Напред!",
"welcome_step3_page_desc": "Добавете устройства към списъка си.",
"welcome_step3_page_title": "Свършихме! 🎉"
}