Files
oikos/public/locales/ru.json
T
Ulas Kalayci 7940ea4ded release: v0.31.0 — family-contacts integration & settings restructure
- Family member records now store phone, email, and birthday, auto-synced
  to Contacts and Birthdays modules (PR #99 by @rafaelfoster)
- Settings gets dedicated Family and API Tokens tabs (admin-only)
- Avatar editor redesigned with icon buttons; tab bar fits standard width
- Dentist calendar icon normalised to 'tooth'; theme reset bug fixed
- i18n: missing family field translations added to 12 locales

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 07:20:53 +02:00

901 lines
44 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.
{
"common": {
"save": "Сохранить",
"cancel": "Отмена",
"delete": "Удалить",
"edit": "Редактировать",
"close": "Закрыть",
"create": "Создать",
"add": "Добавить",
"back": "Назад",
"next": "Далее",
"loading": "Загрузка…",
"saving": "Сохранение…",
"required": "Это поле обязательно.",
"error": "Ошибка",
"allFieldsRequired": "Пожалуйста, заполните все поля.",
"today": "Сегодня",
"tomorrow": "Завтра",
"skipToContent": "Перейти к содержимому",
"reload": "Обновить",
"errorOccurred": "Что-то пошло не так.",
"unexpectedError": "Произошла непредвиденная ошибка.",
"errorGeneric": "Произошла ошибка.",
"updateAvailable": "Доступно обновление — перезагрузите страницу для получения последней версии.",
"titleRequired": "Заголовок обязателен",
"nameRequired": "Имя обязательно",
"contentRequired": "Содержимое обязательно",
"all": "Все",
"unknownError": "Неизвестная ошибка",
"confirm": "Подтвердить",
"undo": "Отменить",
"reset": "Сбросить к исходному"
},
"nav": {
"dashboard": "Обзор",
"tasks": "Задачи",
"calendar": "Календарь",
"meals": "Питание",
"shopping": "Покупки",
"notes": "Заметки",
"contacts": "Контакты",
"birthdays": "Дни рождения",
"budget": "Бюджет",
"settings": "Настройки",
"main": "Главная навигация",
"navigation": "Навигация",
"quickActions": "Быстрые действия",
"recipes": "Рецепты",
"more": "Ещё"
},
"dashboard": {
"title": "Обзор",
"greetingMorning": "Доброе утро, {{name}}",
"greetingDay": "Добрый день, {{name}}",
"greetingEvening": "Добрый вечер, {{name}}",
"allDone": "Всё готово",
"noEvents": "Нет событий",
"noPinnedNotes": "Нет закреплённых заметок",
"todayMeals": "Питание сегодня",
"allLink": "Все",
"weekLink": "Неделя",
"urgentTasksChip": "{{count}} задача скоро истекает",
"urgentTasksChipPlural": "{{count}} задач скоро истекает",
"eventsChip": "{{count}} событие сегодня",
"eventsChipPlural": "{{count}} событий сегодня",
"todayMealChip": "Сегодня: {{title}}",
"loadError": "Не удалось полностью загрузить панель управления.",
"weatherRefresh": "Обновить погоду",
"weatherRefreshTitle": "Обновить",
"weatherUpdated": "Погода обновлена",
"weatherFeelsLike": "Ощущается как {{temp}}° · {{humidity}}% · Ветер {{wind}} {{windUnit}}",
"fabTaskLabel": "Добавить задачу",
"fabCalendarLabel": "Добавить событие",
"fabShoppingLabel": "Добавить покупку",
"fabNoteLabel": "Добавить заметку",
"fabTask": "Задача",
"fabCalendar": "Событие",
"fabShopping": "Покупка",
"fabNote": "Заметка",
"overdue": "Просрочено",
"dueSoon": "Сегодня",
"dueToday": "Сегодня",
"dueTomorrow": "Завтра",
"allDay": "Весь день",
"shoppingMore": "+{{count}} ещё",
"weather": "Погода",
"familyMembers": "Члены семьи",
"participantsAdded": "участников добавлено",
"upcomingBirthdays": "Ближайшие дни рождения",
"noBirthdays": "Дней рождения пока нет",
"daysLeft": "{{count}} дн.",
"budgetOverview": "Обзор бюджета",
"monthlyIncome": "Доходы",
"monthlyExpenses": "Расходы",
"monthlyBalance": "Баланс",
"savingsRate": "Норма сбережений",
"topExpense": "Крупнейший расход",
"budgetEntries": "Записи",
"noBudgetData": "Нет данных бюджета за этот месяц.",
"customize": "Настроить",
"customizeTitle": "Настроить виджеты",
"customizeReset": "Сбросить",
"customizeSaved": "Панель сохранена",
"customizeMoveUp": "Вверх",
"customizeMoveDown": "Вниз",
"overdueTasksChip": "{{count}} просроченная задача",
"overdueTasksChipPlural": "{{count}} просроченных задач"
},
"tasks": {
"title": "Задачи",
"newTask": "Новая задача",
"editTask": "Редактировать задачу",
"emptyTitle": "Нет задач — всё готово?",
"emptyDescription": "Создайте новые задачи с помощью кнопки +.",
"titleLabel": "Заголовок *",
"titlePlaceholder": "Что нужно сделать?",
"descriptionLabel": "Заметка",
"descriptionPlaceholder": "Дополнительные сведения…",
"priorityLabel": "Приоритет",
"categoryLabel": "Категория",
"dueDateLabel": "Срок выполнения",
"dueTimeLabel": "Время",
"assignedLabel": "Назначено",
"assignedNobody": "- Никому -",
"statusLabel": "Статус",
"priorityUrgent": "Срочно",
"priorityHigh": "Высокий",
"priorityMedium": "Средний",
"priorityLow": "Низкий",
"priorityNone": "Нет",
"statusOpen": "Открыто",
"statusInProgress": "В процессе",
"statusDone": "Выполнено",
"categoryHousehold": "Домашнее хозяйство",
"categorySchool": "Школа",
"categoryShopping": "Покупки",
"categoryRepair": "Ремонт",
"categoryHealth": "Здоровье",
"categoryFinance": "Финансы",
"categoryLeisure": "Досуг",
"categoryMisc": "Разное",
"overdue": "Просрочено",
"overdueDay": "Просрочено на {{count}}д",
"dueToday": "Срок сегодня",
"dueTomorrow": "Срок завтра",
"groupOverdue": "Просрочено",
"groupToday": "Сегодня",
"groupThisWeek": "На этой неделе",
"groupNextWeek": "На следующей неделе",
"groupLater": "Позже",
"groupNoDate": "Без даты",
"markDone": "Отметить {{title}} как выполненное",
"markOpen": "Отметить {{title}} как открытое",
"editButton": "Редактировать задачу",
"swipeOpen": "Открыть снова",
"swipeDone": "Выполнено",
"swipeEdit": "Редактировать",
"subtaskAdd": "+ Добавить подзадачу",
"subtaskToggle": "Показать подзадачи",
"subtaskMarkDone": "Отметить {{title}} как выполненное",
"deleteConfirm": "Удалить задачу и все подзадачи?",
"savedToast": "Задача сохранена.",
"createdToast": "Задача создана.",
"deletedToast": "Задача удалена.",
"loadError": "Не удалось загрузить задачу.",
"subtaskPrompt": "Подзадача:",
"kanbanOpen": "Открыто",
"kanbanInProgress": "В процессе",
"kanbanDone": "Выполнено",
"kanbanMoveToInProgress": "Перевести в работу",
"kanbanMoveToDone": "Отметить как выполненное",
"kanbanMoveToOpen": "Открыть снова",
"recurring": "Повторяющееся",
"listView": "Список",
"kanbanView": "Канбан",
"filterBtn": "Фильтр",
"filterClearAll": "Сбросить все фильтры",
"filterGroupPerson": "Человек",
"filterGroupPriority": "Приоритет",
"filterGroupStatus": "Статус",
"swipedDoneToast": "Отмечено как выполненное.",
"swipedOpenToast": "Отмечено как открытое."
},
"shopping": {
"title": "Покупки",
"noLists": "Нет списков",
"noListsDescription": "Создайте список с помощью кнопки +.",
"emptyList": "Список пуст",
"emptyListDescription": "Добавьте товары через поле ввода выше.",
"newListPrompt": "Название нового списка:",
"newListButton": "Создать новый список",
"renameListPrompt": "Новое название списка:",
"deleteListConfirm": "Удалить список «{{name}}» и все товары?",
"deletedListToast": "Список удалён.",
"itemDeletedToast": "«{{name}}» удалено.",
"itemsRemovedToast": "{{count}} товаров удалено.",
"clearChecked": "Удалить отмеченные ({{count}})",
"itemNamePlaceholder": "Добавить товар…",
"itemQtyPlaceholder": "Количество",
"itemNameLabel": "Название товара",
"itemQtyLabel": "Количество",
"categoryLabel": "Категория",
"addItemLabel": "Добавить товар",
"renameListLabel": "Переименовать список",
"deleteListLabel": "Удалить список",
"swipeBack": "Отменить",
"swipeCheck": "Отметить",
"swipeDelete": "Удалить",
"markDoneLabel": "Отметить {{name}}",
"markUndoneLabel": "Снять отметку с {{name}}",
"deleteItemLabel": "Удалить {{name}}",
"listsLoadError": "Не удалось загрузить списки.",
"itemsLoadError": "Не удалось загрузить товары.",
"catFruitVeg": "Фрукты и овощи",
"catBakery": "Выпечка",
"catDairy": "Молочные продукты",
"catMeatFish": "Мясо и рыба",
"catFrozen": "Заморозка",
"catDrinks": "Напитки",
"catHousehold": "Хозтовары",
"catDrugstore": "Аптека",
"catMisc": "Разное"
},
"meals": {
"title": "План питания",
"noMealPlanned": "Питание не запланировано",
"addMeal": "Добавить {{type}}",
"editMeal": "Редактировать приём пищи",
"addMealTitle": "Добавить приём пищи",
"deleteMeal": "Удалить приём пищи",
"transferToShoppingList": "Добавить ингредиенты в список покупок",
"today": "Сегодня",
"prevWeek": "Предыдущая неделя",
"nextWeek": "Следующая неделя",
"loadError": "Не удалось загрузить план питания.",
"typeBreakfast": "Завтрак",
"typeLunch": "Обед",
"typeDinner": "Ужин",
"typeSnack": "Перекус",
"dayMo": "Пн",
"dayDi": "Вт",
"dayMi": "Ср",
"dayDo": "Чт",
"dayFr": "Пт",
"daySa": "Сб",
"daySo": "Вс",
"dateLabel": "Дата",
"mealTypeLabel": "Приём пищи",
"titleLabel": "Название *",
"titlePlaceholder": "напр. Борщ",
"notesLabel": "Заметки",
"notesPlaceholder": "Необязательно…",
"ingredientsLabel": "Ингредиенты",
"addIngredient": "Добавить ингредиент",
"ingredientNamePlaceholder": "Ингредиент",
"ingredientQtyPlaceholder": "Количество",
"ingredientCategoryLabel": "Категория",
"ingredientCategoryDefault": "Разное",
"removeIngredient": "Удалить ингредиент",
"transferLabel": "Перенести ингредиенты в список покупок",
"transferNow": "Перенести сейчас",
"noShoppingLists": "Нет списков покупок",
"transferSuccess": "{{count}} ингредиент перенесён",
"transferSuccessPlural": "{{count}} ингредиентов перенесено",
"transferAlreadyDone": "Все ингредиенты уже перенесены",
"ingredientCount": "{{count}} ингредиент",
"ingredientCountPlural": "{{count}} ингредиентов",
"titleRequired": "Название обязательно",
"loadingIndicator": "Загрузка…",
"recipeUrlLabel": "Ссылка на рецепт (необязательно)",
"recipeUrlPlaceholder": "https://…",
"openRecipe": "Открыть рецепт",
"savedRecipeLabel": "Saved recipe",
"savedRecipePlaceholder": "Select recipe",
"saveAsRecipe": "Save as recipe",
"recipeScaleLabel": "Scale ingredients",
"deletedToast": "Meal deleted"
},
"calendar": {
"title": "Календарь",
"newEvent": "Новое событие",
"editEvent": "Редактировать событие",
"addEvent": "Добавить событие",
"deleteEvent": "Удалить событие",
"noEvents": "Нет событий в выбранном периоде.",
"today": "Сегодня",
"back": "Назад",
"forward": "Вперёд",
"viewMonth": "Месяц",
"viewWeek": "Неделя",
"viewDay": "День",
"viewAgenda": "Повестка",
"allDay": "Весь день",
"allDayShort": "весь день",
"moreEvents": "+{{count}} ещё",
"weekNumberLabel": "Н{{week}} · {{month}} {{year}}",
"agendaFrom": "С {{date}}",
"titleLabel": "Заголовок *",
"titlePlaceholder": "напр. Врач",
"allDayToggle": "Весь день",
"startDateLabel": "Дата начала",
"startTimeLabel": "Время начала",
"endDateLabel": "Дата окончания",
"endTimeLabel": "Время окончания",
"fromLabel": "С",
"toLabel": "По",
"locationLabel": "Место",
"locationPlaceholder": "Необязательно",
"assignedLabel": "Назначено",
"assignedNobody": "- Никому -",
"colorLabel": "Цвет {{color}}",
"descriptionLabel": "Описание",
"descriptionPlaceholder": "Необязательно…",
"popupEdit": "Редактировать",
"deleteConfirm": "Удалить «{{title}}»?",
"createdToast": "Событие создано",
"savedToast": "Событие сохранено",
"deletedToast": "Событие удалено",
"loadError": "Не удалось загрузить события.",
"saveError": "Ошибка сохранения",
"deleteError": "Ошибка удаления",
"titleRequired": "Заголовок обязателен",
"monthJanuary": "Январь",
"monthFebruary": "Февраль",
"monthMarch": "Март",
"monthApril": "Апрель",
"monthMay": "Май",
"monthJune": "Июнь",
"monthJuly": "Июль",
"monthAugust": "Август",
"monthSeptember": "Сентябрь",
"monthOctober": "Октябрь",
"monthNovember": "Ноябрь",
"monthDecember": "Декабрь",
"dayShortSunday": "Вс",
"dayShortMonday": "Пн",
"dayShortTuesday": "Вт",
"dayShortWednesday": "Ср",
"dayShortThursday": "Чт",
"dayShortFriday": "Пт",
"dayShortSaturday": "Сб",
"dayLongSunday": "Воскресенье",
"dayLongMonday": "Понедельник",
"dayLongTuesday": "Вторник",
"dayLongWednesday": "Среда",
"dayLongThursday": "Четверг",
"dayLongFriday": "Пятница",
"dayLongSaturday": "Суббота",
"timeSuffix": "",
"ics": {
"reset": "Сбросить к исходному",
"resetToast": "Изменения сброшены."
},
"iconLabel": "Icon",
"invalidDate": "Use a valid date in the selected date format."
},
"notes": {
"title": "Заметки",
"newNote": "Новая заметка",
"editNote": "Редактировать заметку",
"addNoteLabel": "Новая заметка",
"searchPlaceholder": "Поиск по заметкам…",
"emptyTitle": "Нет заметок",
"emptyDescription": "Создайте новую заметку с помощью кнопки +.",
"noResultsTitle": "Нет результатов",
"noResultsDescription": "Ни одна заметка не содержит «{{query}}».",
"titleLabel": "Заголовок (необязательно)",
"titlePlaceholder": "Без заголовка",
"contentLabel": "Содержимое",
"contentMarkdownHint": "(Поддерживается Markdown-форматирование)",
"contentPlaceholder": "Введите заметку…",
"colorLabel": "Цвет",
"pinnedLabel": "Закрепить (отображается на панели)",
"pinAction": "Закрепить",
"unpinAction": "Открепить",
"deleteLabel": "Удалить заметку",
"deleteConfirm": "Удалить эту заметку?",
"createdToast": "Заметка создана",
"savedToast": "Заметка сохранена",
"deletedToast": "Заметка удалена",
"loadError": "Не удалось загрузить заметки.",
"formatBold": "Жирный (Ctrl+B)",
"formatItalic": "Курсив (Ctrl+I)",
"formatUnderline": "Подчёркнутый (Ctrl+U)",
"formatStrikethrough": "Зачёркнутый",
"formatHeading": "Заголовок",
"formatList": "Маркированный список",
"formatOrderedList": "Нумерованный список",
"formatChecklist": "Список задач",
"formatLink": "Ссылка",
"formatCode": "Код",
"formatQuote": "Цитата",
"formatDivider": "Разделитель"
},
"contacts": {
"title": "Контакты",
"newContact": "Новый контакт",
"editContact": "Редактировать контакт",
"addButton": "Новый",
"newContactLabel": "Новый контакт",
"searchPlaceholder": "Поиск по имени, телефону или email…",
"importButton": "Импорт",
"importLabel": "Импортировать контакт из vCard",
"importTooltip": "Импортировать vCard",
"emptyTitle": "Нет контактов",
"emptyDescription": "Добавьте новые контакты с помощью кнопки +.",
"filterAll": "Все",
"nameLabel": "Имя *",
"namePlaceholder": "Полное имя",
"categoryLabel": "Категория",
"phoneLabel": "Телефон",
"phonePlaceholder": "+7 …",
"emailLabel": "Email",
"emailPlaceholder": "имя@пример.ру",
"addressLabel": "Адрес",
"addressPlaceholder": "Улица, индекс Город",
"notesLabel": "Заметки",
"notesPlaceholder": "Необязательно…",
"callLabel": "Позвонить",
"emailActionLabel": "Email",
"mapsLabel": "Открыть в Картах",
"exportLabel": "Экспортировать в vCard",
"exportTooltip": "Экспорт vCard",
"deleteLabel": "Удалить контакт",
"deleteConfirm": "Удалить этот контакт?",
"deletePersonConfirm": "Удалить «{{name}}»?",
"savedToast": "Контакт сохранён",
"updatedToast": "Контакт обновлён",
"deletedToast": "Контакт удалён",
"importedToast": "{{name}} импортирован.",
"importError": "Ошибка импорта: {{error}}",
"vcardNoName": "В vCard нет имени.",
"catDoctor": "Врач",
"catSchool": "Школа/Детсад",
"catAuthority": "Гос. орган",
"catInsurance": "Страховая",
"catCraftsman": "Мастер",
"catEmergency": "Экстренная помощь",
"catMisc": "Разное",
"categoryDoctor": "Врач",
"categorySchool": "Школа/Детсад",
"categoryAuthority": "Гос. орган",
"categoryInsurance": "Страховая",
"categoryCraftsman": "Мастер",
"categoryEmergency": "Экстренная помощь",
"categoryOther": "Другое"
},
"budget": {
"title": "Бюджет",
"newEntry": "Новая запись",
"editEntry": "Редактировать запись",
"addEntryLabel": "Добавить запись",
"newEntryFabLabel": "Новая запись",
"currentMonth": "Текущий",
"prevMonth": "Предыдущий месяц",
"nextMonth": "Следующий месяц",
"income": "Доходы",
"expenses": "Расходы",
"balance": "Баланс",
"byCategory": "По категориям",
"transactions": "Транзакции",
"emptyTitle": "Нет записей за этот месяц",
"emptyDescription": "Добавьте записи бюджета с помощью кнопки +.",
"csvExport": "CSV",
"typeExpense": "Расход",
"typeIncome": "Доход",
"titleLabel": "Заголовок *",
"titlePlaceholder": "напр. Продукты",
"amountLabel": "Сумма *",
"amountPlaceholder": "0,00",
"categoryLabel": "Категория",
"dateLabel": "Дата *",
"recurringLabel": "Повторяющееся",
"deleteLabel": "Удалить запись",
"deleteConfirm": "Удалить эту запись?",
"deletePersonConfirm": "Удалить «{{title}}»?",
"addedToast": "Запись добавлена",
"savedToast": "Запись сохранена",
"deletedToast": "Запись удалена",
"loadError": "Не удалось загрузить бюджет.",
"trendNeutral": "— как в {{month}}",
"validAmountRequired": "Введите корректную сумму",
"dateRequired": "Дата обязательна",
"catFood": "Продукты",
"catRent": "Аренда",
"catInsurance": "Страховка",
"catMobility": "Транспорт",
"catLeisure": "Досуг",
"catClothing": "Одежда",
"catHealth": "Здоровье",
"catEducation": "Образование",
"catMisc": "Разное",
"catEarnedIncome": "Трудовой доход",
"catInvestmentIncome": "Инвестиционный доход",
"catTransferGiftIncome": "Переводы и подарки",
"catGovernmentBenefits": "Социальные пособия",
"catOtherIncome": "Прочие доходы",
"loadingIndicator": "Загрузка…",
"subcategoryLabel": "Subcategory",
"catHousing": "Housing / Home",
"catTransport": "Transport",
"catPersonalHealth": "Personal Care / Health",
"catShoppingClothing": "Shopping and Clothing",
"catFinancialOther": "Financial Services and Other",
"subcatRentMortgage": "Rent / Mortgage",
"subcatCondominium": "Condominium fees",
"subcatUtilities": "Electricity / Water / Gas",
"subcatInternetTvPhone": "Internet / TV / Phone",
"subcatRenovationMaintenance": "Renovation / Maintenance",
"subcatCleaning": "Cleaning",
"subcatGroceries": "Groceries",
"subcatRestaurantsBars": "Restaurants / Bars",
"subcatSnacksFastFood": "Snacks / Fast Food",
"subcatBakery": "Bakery",
"subcatFuel": "Fuel",
"subcatParkingTolls": "Parking / Tolls",
"subcatPublicTransport": "Public transport",
"subcatAppsTaxi": "Apps / Taxi",
"subcatMaintenanceInsurance": "Maintenance / Insurance",
"subcatPharmacy": "Pharmacy",
"subcatHealthInsurance": "Health insurance",
"subcatGymSports": "Gym / Sports",
"subcatBeautyCosmetics": "Beauty / Cosmetics",
"subcatTravel": "Travel",
"subcatStreaming": "Streaming",
"subcatEvents": "Events",
"subcatHobbies": "Hobbies",
"subcatClothesShoes": "Clothes / Shoes",
"subcatElectronics": "Electronics",
"subcatGifts": "Gifts",
"subcatCoursesCollege": "Courses / College",
"subcatSchoolSupplies": "School supplies",
"subcatLanguages": "Languages",
"subcatLoansInterest": "Loans / Interest",
"subcatBankFees": "Bank fees",
"subcatInsuranceOther": "Insurance",
"subcatInvestments": "Investments",
"subcatTaxes": "Taxes",
"metaLoadError": "Budget categories could not be loaded.",
"addCategory": "+ category",
"addSubcategory": "+ subcategory",
"newCategoryPrompt": "Name of the new category:",
"newSubcategoryPrompt": "Name of the new subcategory:",
"categoryAddedToast": "Category added.",
"subcategoryAddedToast": "Subcategory added."
},
"settings": {
"title": "Настройки",
"tabGeneral": "Общие",
"tabMeals": "Питание",
"tabBudget": "Бюджет",
"tabShopping": "Покупки",
"tabCalendar": "Календарь",
"tabFamily": "Управление семьей",
"tabApiTokens": "API-токены",
"tabAccount": "Аккаунт",
"tabsAriaLabel": "Разделы настроек",
"sectionDesign": "Внешний вид",
"sectionAppName": "Название приложения",
"sectionShopping": "Покупки",
"shoppingCategoriesLabel": "Категории покупок",
"shoppingCategoriesHint": "Добавляйте, переименовывайте, удаляйте или сортируйте категории.",
"shoppingCategoryPlaceholder": "Новая категория…",
"shoppingCategoryRenameHint": "Нажмите для переименования",
"shoppingCategoryRenamePrompt": "Новое название категории:",
"shoppingCategoryMoveUp": "Переместить категорию вверх",
"shoppingCategoryMoveDown": "Переместить категорию вниз",
"shoppingCategoryDelete": "Удалить категорию",
"shoppingCategoryDeleteConfirm": "Удалить категорию «{{name}}»? Существующие товары будут перемещены в следующую категорию.",
"shoppingCategoryAdded": "Категория добавлена.",
"shoppingCategoryRenamed": "Категория переименована.",
"shoppingCategoryDeleted": "Категория удалена.",
"sectionAccount": "Мой аккаунт",
"sectionCalendarSync": "Синхронизация календаря",
"sectionFamily": "Члены семьи",
"cardAppearance": "Отображение",
"appNameTitle": "Название приложения",
"appNameLabel": "Название приложения",
"appNameHint": "Это название отображается в боковом меню, заголовке браузера и на экране входа.",
"appNamePlaceholder": "Oikos",
"appNameSavedToast": "Название приложения сохранено.",
"sectionDate": "Дата",
"dateFormatTitle": "Формат даты",
"dateFormatLabel": "Предпочитаемый формат даты",
"dateFormatHint": "Выберите, как даты отображаются в приложении.",
"dateFormatSavedToast": "Формат даты сохранён.",
"themeSystem": "Система",
"themeSysLabel": "Использовать системную настройку",
"themeLight": "Светлая",
"themeLightLabel": "Светлая тема",
"themeDark": "Тёмная",
"themeDarkLabel": "Тёмная тема",
"changePassword": "Изменить пароль",
"currentPasswordLabel": "Текущий пароль",
"newPasswordLabel": "Новый пароль",
"confirmPasswordLabel": "Подтвердить новый пароль",
"savePassword": "Сохранить пароль",
"passwordMismatch": "Пароли не совпадают.",
"passwordSavedToast": "Пароль успешно изменён.",
"googleCalendar": "Google Календарь",
"appleCalendar": "Apple Calendar (iCloud)",
"syncNow": "Синхронизировать сейчас",
"disconnect": "Отключить",
"connectGoogle": "Подключить Google",
"connected": "Подключено",
"connectedLastSync": "Подключено · Последняя: {{date}}",
"notConnected": "Не подключено",
"notConfigured": "Не настроено (отсутствуют переменные .env)",
"configured": "Настроено (через .env)",
"configuredLastSync": "Настроено (через .env) · Последняя: {{date}}",
"syncSuccess": "{{provider}} синхронизирован.",
"disconnectedToast": "{{provider}} отключён.",
"googleOnlyAdmin": "Только администратор может подключить Google Календарь.",
"appleOnlyAdmin": "Только администратор может подключить Apple Calendar.",
"caldavUrlLabel": "URL сервера CalDAV",
"caldavUrlPlaceholder": "https://caldav.icloud.com",
"appleIdLabel": "Apple ID (email)",
"applePasswordLabel": "Пароль для приложения",
"applePasswordHint": "Создайте пароль на <strong>appleid.apple.com → Безопасность</strong>.",
"appleConnectBtn": "Подключить и протестировать",
"appleConnecting": "Подключение…",
"appleConnectedToast": "Apple Calendar подключён.",
"syncSuccessGoogle": "Синхронизация календаря с Google успешно подключена.",
"syncSuccessApple": "Синхронизация календаря с Apple успешно подключена.",
"syncErrorGoogle": "Не удалось подключиться к Google. Попробуйте ещё раз.",
"syncErrorApple": "Не удалось подключиться к Apple. Попробуйте ещё раз.",
"addMember": "+ Добавить участника",
"newMemberTitle": "Новый член семьи",
"usernameLabel": "Имя пользователя",
"displayNameLabel": "Отображаемое имя",
"memberPasswordLabel": "Пароль",
"colorLabel": "Цвет",
"profilePictureTitle": "Фото профиля",
"profilePictureLabel": "Загрузить фото",
"profilePictureHint": "PNG, JPEG или WebP. Большие изображения уменьшаются перед загрузкой.",
"profilePictureRemove": "Удалить фото",
"profilePictureTypeError": "Используйте изображение PNG, JPEG или WebP.",
"profilePictureFileTooLarge": "Файл изображения слишком большой.",
"profilePictureTooLarge": "Фото профиля всё ещё слишком большое после изменения размера.",
"profilePictureReadError": "Не удалось прочитать выбранное изображение.",
"profileSavedToast": "Профиль обновлён.",
"editMemberLabel": "Изменить",
"editMemberTitle": "Изменить члена семьи",
"saveMember": "Сохранить участника",
"memberUpdatedToast": "{{name}} обновлён.",
"familyRoleLabel": "Роль в семье",
"familyRoleDad": "Папа",
"familyRoleMom": "Мама",
"familyRoleParent": "Родитель",
"familyRoleChild": "Ребёнок",
"familyRoleGrandparent": "Дедушка/бабушка",
"familyRoleRelative": "Родственник",
"familyRoleOther": "Член семьи",
"systemAdminLabel": "Системный администратор",
"systemAdminHint": "Системные администраторы могут управлять настройками, интеграциями, API-токенами и семейными аккаунтами.",
"systemAdminBadge": "Системный администратор",
"roleLabel": "Роль",
"roleMember": "Участник",
"roleAdmin": "Администратор",
"createMember": "Создать",
"cancelAddMember": "Отмена",
"memberAddedToast": "{{name}} добавлен.",
"deleteMemberConfirm": "Удалить {{name}}?",
"memberDeletedToast": "{{name}} удалён.",
"deleteMemberLabel": "Удалить",
"logout": "Выйти",
"synchronizing": "Синхронизация…",
"googleDisconnectConfirm": "Отключить Google Календарь?",
"appleDisconnectConfirm": "Отключить Apple Calendar?",
"localeSystem": "Система",
"localeLabel": "Язык",
"languageTitle": "Язык",
"sectionMeals": "План питания",
"mealTypesLabel": "Видимые приёмы пищи",
"mealTypesHint": "В плане питания отображаются только выбранные типы приёмов пищи.",
"mealTypesSaved": "Настройки плана питания сохранены.",
"mealTypesMinOne": "Должен быть активен хотя бы один тип приёма пищи.",
"sectionBudget": "Бюджет",
"currencyLabel": "Валюта",
"currencyHint": "Устанавливает валюту для всего раздела бюджета.",
"currencySaved": "Валюта сохранена.",
"apiTokensTitle": "API Tokens",
"apiTokensCardTitle": "Access Tokens",
"apiTokensHint": "Create API tokens for external integrations. The full token is shown only once after creation.",
"apiTokenNameLabel": "Token name",
"apiTokenExpiresLabel": "Expiration date",
"apiTokenExpiresHint": "Leave empty to create a token without expiration.",
"apiTokenCreatedLabel": "New API token",
"apiTokenCreatedHint": "Store this token securely. It cannot be shown again.",
"apiTokenCreate": "Create token",
"apiTokenInvalidExpiration": "Please enter a valid expiration date.",
"apiTokenCreatedToast": "API token created.",
"apiTokenRevokedToast": "API token revoked.",
"apiTokenRevokeConfirm": "Revoke API token \"{{name}}\"?",
"apiTokenRevoke": "Revoke token",
"apiTokenRevoked": "Revoked",
"apiTokenExpired": "Expired",
"apiTokenActive": "Active",
"apiTokenPrefix": "Prefix",
"apiTokenExpires": "Expires",
"apiTokenNeverExpires": "No expiration",
"apiTokenLastUsed": "Last used",
"apiTokenNeverUsed": "Never used",
"ics": {
"title": "ICS-подписки",
"add": "Добавить подписку",
"addedToast": "Подписка добавлена.",
"deletedToast": "Подписка удалена.",
"syncedToast": "Подписка синхронизирована.",
"confirm_delete": "Вы действительно хотите удалить эту подписку? Все связанные события также будут удалены.",
"empty": "Подписок пока нет.",
"form": {
"name": "Название",
"url": "URL ICS",
"color": "Цвет",
"shared": "Видно всем"
},
"actions": {
"submit": "Добавить",
"save": "Сохранить",
"cancel": "Отмена",
"delete": "Удалить",
"edit": "Изменить",
"sync": "Синхронизировать сейчас"
},
"status": {
"lastSync": "Последняя синхронизация:",
"never": "Ещё не синхронизировано",
"syncing": "Синхронизация...",
"syncError": "Ошибка синхронизации"
},
"badges": {
"private": "Личное",
"shared": "Общее"
}
},
"memberPhoneLabel": "Номер телефона (необязательно)",
"memberEmailLabel": "Электронная почта (необязательно)",
"memberBirthDateLabel": "Дата рождения (необязательно)",
"memberContactBirthdayHint": "Этот участник автоматически синхронизируется с контактами и днями рождения.",
"memberBirthDateInvalid": "Используйте действительную дату рождения в выбранном формате.",
"memberPhoneMeta": "Телефон: {{value}}",
"memberBirthdayMeta": "День рождения: {{date}}"
},
"login": {
"tagline": "Семейное планирование. Безопасно. С уважением к приватности. Открытый исходный код.",
"usernameLabel": "Имя пользователя",
"usernamePlaceholder": "имяпользователя",
"passwordLabel": "Пароль",
"passwordPlaceholder": "••••••••",
"loginButton": "Войти",
"loggingIn": "Вход…",
"tooManyAttempts": "Слишком много попыток. Подождите немного.",
"invalidCredentials": "Неверные данные для входа.",
"version": "v{{version}}"
},
"install": {
"title": "Установить Oikos",
"subtitle": "Добавить на главный экран",
"iosTip1": "Нажмите ",
"iosTip2": " → «На экран Домой»",
"installButton": "Установить",
"dismissLabel": "Закрыть"
},
"modal": {
"closeLabel": "Закрыть",
"overlayLabel": "Фон модального диалога",
"unsavedChanges": "Отменить изменения?",
"discardChanges": "Отменить"
},
"rrule": {
"freqNone": "Без повтора",
"freqDaily": "Ежедневно",
"freqWeekly": "Еженедельно",
"freqMonthly": "Ежемесячно",
"dayMo": "Пн",
"dayTu": "Вт",
"dayWe": "Ср",
"dayTh": "Чт",
"dayFr": "Пт",
"daySa": "Сб",
"daySu": "Вс",
"labelRepeat": "Повтор",
"labelEvery": "Каждые",
"labelOnDays": "В эти дни",
"labelUntil": "Заканчивается (необязательно)",
"unitDay": "день",
"unitDays": "дней",
"unitWeek": "неделю",
"unitWeeks": "недель",
"unitMonth": "месяц",
"unitMonths": "месяцев"
},
"recipes": {
"title": "Рецепты",
"addRecipe": "Добавить рецепт",
"editRecipe": "Редактировать рецепт",
"emptyTitle": "Рецептов еще нет",
"emptyDescription": "Сохраняйте свои любимые рецепты и используйте их повторно при планировании питания.",
"titleLabel": "Название *",
"titlePlaceholder": "напр. Паста Карбонара",
"notesLabel": "Заметки",
"notesPlaceholder": "Необязательно...",
"urlLabel": "Ссылка на рецепт",
"urlPlaceholder": "https://...",
"ingredientsLabel": "Ингредиенты",
"addToMeals": "Добавить в план питания",
"openLink": "Открыть ссылку на рецепт",
"deleteConfirm": "Удалить рецепт \"{{title}}\"?",
"created": "Рецепт сохранен.",
"updated": "Рецепт обновлен.",
"deleted": "Рецепт удален.",
"titleRequired": "Название обязательно",
"duplicate": "Дублировать",
"duplicated": "Рецепт дублирован.",
"copySuffix": "копия"
},
"search": {
"title": "Поиск",
"open": "Открыть поиск",
"placeholder": "Поиск…",
"noResults": "Результаты не найдены."
},
"birthdays": {
"title": "Дни рождения",
"addButton": "Добавить день рождения",
"searchPlaceholder": "Поиск дней рождения…",
"upcomingTitle": "Ближайшие дни рождения",
"upcomingHint": "Ближайшие праздники, уже синхронизированные с календарём.",
"peopleTitle": "Люди",
"peopleHint": "Ищите, просматривайте и редактируйте все сохранённые дни рождения.",
"emptyTitle": "Дней рождения пока нет",
"emptyDescription": "Добавьте день рождения, чтобы он отображался в календаре и напоминаниях.",
"newTitle": "Новый день рождения",
"editTitle": "Редактировать день рождения",
"nameLabel": "Имя",
"birthDateLabel": "Дата рождения",
"photoLabel": "Фото профиля",
"removePhoto": "Удалить фото",
"notesLabel": "Заметки",
"notesPlaceholder": "Идеи подарков, любимый торт, семейные заметки…",
"calendarHint": "Каждый день рождения автоматически добавляется в календарь и систему напоминаний.",
"requiredFields": "Имя и дата рождения обязательны.",
"createdToast": "День рождения сохранён.",
"updatedToast": "День рождения обновлён.",
"deletedToast": "День рождения удалён.",
"deleteConfirm": "Удалить день рождения \"{{name}}\"?",
"ageNoteToday": "Исполняется {{age}} сегодня.",
"ageNoteTomorrow": "Исполнится {{age}} завтра.",
"ageNoteDays": "Исполнится {{age}} через {{days}} дн."
},
"reminders": {
"sectionTitle": "Напоминание",
"enableLabel": "Установить напоминание",
"offsetLabel": "Напомнить",
"offsetNone": "Нет",
"offsetAtTime": "В момент начала",
"offset15min": "За 15 минут",
"offset1hour": "За 1 час",
"offset1day": "За 1 день",
"dateLabel": "Дата",
"timeLabel": "Время",
"toastTitle": "Напоминание",
"dismiss": "Отклонить",
"pendingBadgeTitle": "{{count}} ожидающее напоминание",
"pendingBadgeTitlePlural": "{{count}} ожидающих напоминания",
"notificationPermission": "Уведомления браузера",
"notificationEnable": "Включить уведомления",
"notificationEnabled": "Уведомления активны",
"notificationDenied": "Уведомления заблокированы",
"notificationHint": "Получайте уведомления, даже когда приложение открыто.",
"offset2days": "2 days before",
"offset1week": "1 week before",
"offset2weeks": "2 weeks before",
"offsetCustom": "Custom...",
"customAmountLabel": "Number",
"customUnitLabel": "Unit",
"customMinutes": "Minutes",
"customHours": "Hours",
"customDays": "Days",
"customWeeks": "Weeks"
},
"onboarding": {
"step1Title": "Welcome to Oikos",
"step1Body": "Your personal family planner. Tasks, calendar, shopping and more all in one place.",
"step2Title": "Everything at a glance",
"step2Body": "Use the navigation below to reach all modules. The + button creates new entries quickly.",
"step3Title": "Ready to go",
"step3Body": "The dashboard shows you the most important information at a glance. Customize it under \"Customize\".",
"next": "Next",
"done": "Get started",
"skip": "Skip"
},
"offline": {
"banner": "Offline reconnecting…"
},
"emptyHint": {
"recipes": "Создавайте рецепты и связывайте их с вашим планом питания."
}
}