schon/storefront/i18n/locales/ru-ru.json
Alexandr SaVBaD Waltz c889c20b61 feat(storefront): enhance error handling and navigation across pages
Added a global error page to improve user experience during navigation issues, with localized messages and redirect options. Enhanced error handling for brand, product, and category slug composables by introducing explicit 404 responses.

- Introduced `/error.vue` template for custom error displays using `NuxtError`.
- Updated `useBrandBySlug`, `useProductBySlug`, `useCategoryBySlug` to throw 404 errors when data is not found.
- Expanded i18n files (`en-gb.json` and `ru-ru.json`) with additional error-related translations.
- Replaced plain text input with a `.search`-scoped class for cleaner styling.

Enhances robustness and user feedback during navigation errors. No breaking changes introduced.
2026-03-04 16:27:52 +03:00

372 lines
15 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.

{
"buttons": {
"login": "Войти",
"register": "Регистрация",
"createAccount": "Создать аккаунт",
"addToCart": "В корзину",
"removeFromCart": "Удалить из корзины",
"addAllToCart": "Добавить все в корзину",
"addToWishlist": "В избранное",
"removeFromWishlist": "Удалить из избранного",
"send": "Отправить",
"goEmail": "Перейти к почте",
"logout": "Выйти",
"checkout": "Оформить заказ",
"save": "Сохранить",
"sendLink": "Отправить ссылку для сброса",
"topUp": "Пополнить",
"shopNow": "КУПИТЬ СЕЙЧАС",
"shopTheSale": "Купить по акции",
"readMore": "Читать далее",
"sendMessage": "Отправить сообщение",
"saveChanges": "Сохранить изменения",
"clearAll": "Очистить всё",
"buyNow": "Купить Сейчас",
"backToHome": "Обратно на Главную"
},
"errors": {
"required": "Это поле обязательно!",
"mail": "Введите корректный email!",
"compare": "Пароли не совпадают!",
"needLower": "Добавьте строчную букву.",
"needUpper": "Добавьте заглавную букву.",
"needNumber": "Добавьте цифру.",
"needMin": "Мин. 8 символов",
"needSpecial": "Добавьте спецсимвол: #.?!$%^&*'()_+=:;\"'/>.<,|\\-",
"pageNotFound": "Страница не найдена",
"404": "Страница, которую вы ищете, не существует или была перемещена.",
"brandNotFound": "Бренд не найден",
"productNotFound": "Товар не найден",
"categoryNotFound": "Категория не найдена"
},
"fields": {
"search": "Поиск",
"searchOrder": "Поиск заказа",
"name": "Имя",
"firstName": "Имя",
"lastName": "Фамилия",
"phoneNumber": "Номер телефона",
"email": "Email",
"subject": "Тема",
"message": "Ваше сообщение",
"password": "Пароль",
"newPassword": "Новый пароль",
"confirmPassword": "Подтвердите пароль",
"confirmNewPassword": "Подтвердите новый пароль",
"brandsSearch": "Поиск брендов по названию...",
"promocode": "Введите промокод",
"address": "Начните вводить адрес"
},
"checkboxes": {
"remember": "Запомнить меня",
"chooseAll": "Выбрать все",
"agree": "Я согласен с {terms} и {policy}",
"subscribe": "Подписаться на рассылку новостей об эксклюзивных предложениях и обновлениях"
},
"popup": {
"errors": {
"main": "Ошибка!",
"defaultError": "Что-то пошло не так...",
"noDataToUpdate": "Нет данных для обновления.",
"loginFirst": "Войдите, чтобы выполнить это действие!",
"alreadyInWishlist": "{product} уже есть в избранном!"
},
"success": {
"login": "Вход выполнен",
"register": "Аккаунт успешно создан. Пожалуйста, подтвердите ваш Email перед входом!",
"confirmEmail": "Ссылка для подтверждения E-mail успешно отправлена!",
"reset": "Если указанный email существует в нашей системе, мы отправим на него письмо для восстановления пароля!",
"newPassword": "Вы успешно изменили пароль!",
"contactUs": "Ваше сообщение успешно отправлено!",
"createAddress": "Вы успешно добавили новый адрес!",
"deleteAddress": "Вы успешно удалили адрес!",
"addToCart": "{product} добавлен в корзину!",
"removeFromCart": "{product} удален из корзины!",
"removeAllFromCart": "Корзина успешно очищена!",
"addToWishlist": "{product} добавлен в избранное!",
"removeFromWishlist": "{product} удален из избранного!",
"removeAllFromWishlist": "Список избранного успешно очищен!",
"bulkRemoveWishlist": "Выбранные товары удалены из избранного!",
"bulkRemoveOrder": "Выбранные товары удалены из корзины!",
"bulkAddOrder": "Выбранные товары добавленны в корзину!",
"avatarUpload": "Аватар успешно загружен!",
"userUpdate": "Профиль успешно обновлен!",
"emailUpdate": "Проверьте вашу почту для перехода по ссылке подтверждения и завершения обновления email.",
"referralCopy": "Реферальная ссылка скопирована!",
"promocodeCopy": "Промокод скопирован!",
"configCopy": "Новая ui конфигурация скопирована!",
"addFeedback": "Ваш отзыв сохранен!"
},
"addToCartLimit": "Лимит общего количества составляет {quantity}!",
"failAdd": "Пожалуйста, войдите, чтобы совершить покупку",
"activationSuccess": "E-mail успешно подтвержден. Пожалуйста, войдите!",
"successUpdate": "Профиль успешно обновлен!",
"payment": "Ваш платеж обрабатывается! Пожалуйста, подождите",
"successCheckout": "Заказ успешно оплачен!"
},
"header": {
"nav": {
"shop": "Магазин",
"catalog": "Каталог",
"brands": "Бренды",
"blog": "Блог",
"contact": "Контакты"
},
"actions": {
"wishlist": "Избранное",
"cart": "Корзина",
"login": "Войти",
"profile": "Профиль"
},
"search": {
"empty": "Ничего не найдено"
},
"catalog": {
"title": "Каталог"
}
},
"footer": {
"address": "Адрес: ",
"email": "Email: ",
"phone": "Телефон: ",
"text": "Курируем вневременную роскошную моду для взыскательных личностей",
"shop": "Магазин",
"allProducts": "Все товары",
"catalog": "Каталог",
"brands": "Бренды",
"help": "Помощь",
"rights": "Все права защищены."
},
"home": {
"hero": {
"title": "Вневременная элегантность",
"text": "Откройте для себя нашу кураторскую коллекцию люксовой моды и аксессуаров, определяющих утонченный стиль"
},
"categories": {
"title": "Покупки по категориям"
},
"ad": {
"title": "Весенняя коллекция",
"text1": "Скидки до 40%",
"text2": "Откройте для себя последние тренды в мире люксовой моды"
},
"blog": {
"title": "Из журнала"
}
},
"forms": {
"login": {
"title": "С возвращением",
"subtitle": "Войдите в свой аккаунт, чтобы продолжить",
"forgot": "Забыли пароль?",
"or": "или"
},
"register": {
"title": "Создать аккаунт",
"subtitle": "Зарегистрируйтесь, чтобы начать ваше стильное путешествие",
"login": "Уже есть аккаунт?"
},
"reset": {
"title": "Сброс пароля",
"subtitle": "Введите ваш email, и мы отправим ссылку для сброса пароля.",
"backToLogin": "Назад к входу"
},
"newPassword": {
"title": "Новый пароль"
}
},
"cards": {
"product": {
"stock": "В наличии: "
}
},
"breadcrumbs": {
"home": "Главная",
"catalog": "Каталог",
"contact": "Контакты",
"orders": "Заказы",
"wishlist": "Избранное",
"cart": "Корзина",
"settings": "Настройки",
"balance": "Баланс",
"promocodes": "Промокоды",
"login": "Вход",
"register": "Регистрация",
"resetPassword": "Сброс пароля",
"newPassword": "Новый пароль",
"brands": "Бренды",
"blog": "Блог",
"search": "Поиск",
"categories": "Категории",
"shop": "Магазин",
"policy": "Политика конфиденциальности",
"terms": "Условия использования",
"return": "Политика возврата",
"faq": "Часто задаваемые вопросы",
"shipping": "Информация о доставке",
"about": "О нас",
"addresses": "Адреса"
},
"contact": {
"title": "Свяжитесь с нами",
"text": "Мы будем рады услышать вас. Отправьте нам сообщение, и мы ответим как можно скорее.",
"block": {
"title": "Давайте общаться",
"text": "Есть ли у вас вопросы о наших товарах, нужен совет по стилю или вы хотите сотрудничать с нами — мы здесь, чтобы помочь. Наша команда стремится предоставлять исключительный сервис и поддержку.",
"email": "Написать нам",
"call": "Позвонить нам",
"hours": "Часы работы"
},
"form": {
"title": "Отправить сообщение"
}
},
"store": {
"sorting": "Сортировать по:",
"filters": {
"title": "Фильтры",
"apply": "Применить",
"reset": "Сбросить",
"all": "Все",
"price": "Цена"
},
"empty": "По этим параметрам нет товаров."
},
"search": {
"title": "Результаты поиска",
"products": "Товары",
"categories": "Категории",
"brands": "Бренды",
"byRequest": "по запросу"
},
"product": {
"characteristics": "Все характеристики",
"similar": "Вам также может понравиться"
},
"profile": {
"settings": {
"title": "Настройки",
"joinData": "Дата регистрации",
"accountInfo": "Информация об аккаунте",
"copyReferral": "Скопировать реферальную ссылку",
"referralTooltip": "Вы получите реферальную ссылку после успешной покупки"
},
"orders": {
"title": "Заказы",
"chooseStatus": "Выберите статус",
"id": "№",
"price": "Цена",
"total": "Итого",
"empty": "Нет заказов по данным параметрам.",
"statuses": {
"all": "Все",
"failed": "Ошибка",
"payment": "Ожидает оплаты",
"created": "Создан",
"delivering": "Доставляется",
"finished": "Завершен",
"momental": "Моментальный"
},
"searchTooltip": "Введите номер заказа или название товара"
},
"wishlist": {
"title": "Избранное",
"total": "{quantity} товаров на сумму {amount}",
"deleteTooltip": "Удалить всё из избранного",
"empty": "Ваш список избранного пуст."
},
"cart": {
"title": "Корзина",
"quantity": "Количество: ",
"total": "Итого",
"empty": "Ваша корзина пуста."
},
"balance": {
"title": "Баланс"
},
"promocodes": {
"title": "Промокоды",
"until": "До",
"empty": "У вас нет промокодов."
},
"addresses": {
"title": "Адреса",
"title1": "Добавить Новый Адрес",
"title2": "Ваши сохраненные адреса",
"search": {
"empty": "Ничего не найдено"
}
},
"logout": "Выйти"
},
"demo": {
"settings": {
"title": "Демо-настройки",
"ui": "Настройки интерфейса"
},
"buttons": {
"reset": "Сбросить на умолчания",
"save": "Сохранить изменения",
"generateCode": "Сгенерировать код для 'app.config.ts'"
},
"preview": {
"text": "Замените объект UI в 'app.config.ts' на этот код"
},
"descriptions": {
"showBreadcrumbs": "Показывать цепочку навигации на страницах.",
"showSearchBar": "Показывать строку поиска в шапке сайта."
}
},
"docs": {
"faq": {
"title": "Часто задаваемые вопросы"
},
"shipping": {
"title": "Информация о доставке"
},
"return": {
"title": "Политика возврата"
},
"policy": {
"title": "Политика конфиденциальности"
},
"terms": {
"title": "Условия использования"
},
"about": {
"title": "О нас"
}
},
"brands": {
"title": "Люксовые бренды",
"text": "Откройте для себя самые престижные мировые модные дома и люксовые бренды, подобранные для взыскательного вкуса."
},
"catalog": {
"title": "Разнообразные категории",
"text": "Откройте для себя самые престижные мировые модные дома и люксовые категории, подобранные для взыскательного вкуса."
},
"blog": {
"title": "Модный журнал",
"text": "Узнавайте о последних трендах, источниках вдохновения для стиля и модных инсайтах от нашей редакции."
},
"cart": {
"totalPrice": "Итог",
"title": "Моя корзина",
"items": "нет товаров | {count} товар | {count} товара | {count} товаров",
"empty": "Ваша корзина пуста",
"checkout": "Оформление",
"promocode": {
"apply": "Примените промокод",
"empty": "У вас нет промокодов"
}
},
"wishlist": {
"title": "Мои Избранные",
"items": "нет товаров | {count} товар | {count} товара | {count} товаров",
"empty": "Список ваших избранных пуст"
},
"shop": {
"title": "Магазин",
"text": "Откройте для себя нашу кураторскую коллекцию люксовой моды и аксессуаров, определяющих утонченный стиль"
}
}