mirror of
https://github.com/zjs81/meshcore-open.git
synced 2026-07-28 06:26:39 +10:00
Merge remote-tracking branch 'origin/dev' into test-regions Also added fixes
This commit is contained in:
+331
-140
@@ -92,6 +92,24 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
@override
|
||||
String get common_disable => 'Выключить';
|
||||
|
||||
@override
|
||||
String get common_undo => 'Отменить';
|
||||
|
||||
@override
|
||||
String get messageStatus_sent => 'Отправлено';
|
||||
|
||||
@override
|
||||
String get messageStatus_delivered => 'Доставлено';
|
||||
|
||||
@override
|
||||
String get messageStatus_pending => 'Отправка';
|
||||
|
||||
@override
|
||||
String get messageStatus_failed => 'Не удалось отправить';
|
||||
|
||||
@override
|
||||
String get messageStatus_repeated => 'Услышал несколько раз';
|
||||
|
||||
@override
|
||||
String get common_reboot => 'Перезагрузить';
|
||||
|
||||
@@ -302,6 +320,10 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
@override
|
||||
String get scanner_enableBluetooth => 'Включите Bluetooth';
|
||||
|
||||
@override
|
||||
String get scanner_bluetoothWebUnsupported =>
|
||||
'Bluetooth недоступен в браузере. Подключитесь через USB.';
|
||||
|
||||
@override
|
||||
String get device_quickSwitch => 'Быстрое переключение';
|
||||
|
||||
@@ -834,11 +856,6 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
String get appSettings_maxMessageRetriesSubtitle =>
|
||||
'Количество попыток повторной отправки сообщения перед тем, как пометить его как неудачное.';
|
||||
|
||||
@override
|
||||
String path_routeWeight(String weight, String max) {
|
||||
return '$weight/$max';
|
||||
}
|
||||
|
||||
@override
|
||||
String get appSettings_battery => 'Батарея';
|
||||
|
||||
@@ -1039,6 +1056,15 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
@override
|
||||
String get contacts_newGroup => 'Новая группа';
|
||||
|
||||
@override
|
||||
String get contacts_moreOptions => 'Больше вариантов';
|
||||
|
||||
@override
|
||||
String get contacts_searchOpen => 'Найти контакты';
|
||||
|
||||
@override
|
||||
String get contacts_searchClose => 'Закрыть поиск';
|
||||
|
||||
@override
|
||||
String get contacts_groupName => 'Имя группы';
|
||||
|
||||
@@ -1532,35 +1558,6 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
@override
|
||||
String get debugFrame_hexDump => 'Шестнадцатеричный дамп:';
|
||||
|
||||
@override
|
||||
String get chat_pathManagement => 'Управление маршрутами';
|
||||
|
||||
@override
|
||||
String get chat_ShowAllPaths => 'Показать все пути';
|
||||
|
||||
@override
|
||||
String get chat_routingMode => 'Режим маршрутизации';
|
||||
|
||||
@override
|
||||
String get chat_autoUseSavedPath => 'Авто (использовать сохранённый маршрут)';
|
||||
|
||||
@override
|
||||
String get chat_forceFloodMode => 'Принудительный режим рассылки';
|
||||
|
||||
@override
|
||||
String get chat_recentAckPaths =>
|
||||
'Недавние подтверждённые маршруты (нажмите, чтобы использовать):';
|
||||
|
||||
@override
|
||||
String get chat_pathHistoryFull =>
|
||||
'История маршрутов заполнена. Удалите записи, чтобы добавить новые.';
|
||||
|
||||
@override
|
||||
String get chat_hopSingular => 'хоп';
|
||||
|
||||
@override
|
||||
String get chat_hopPlural => 'хопов';
|
||||
|
||||
@override
|
||||
String chat_hopsCount(int count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
@@ -1574,12 +1571,6 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
return '$count $_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String get chat_successes => 'успешно';
|
||||
|
||||
@override
|
||||
String get chat_score => 'Оценка';
|
||||
|
||||
@override
|
||||
String get chat_removePath => 'Удалить маршрут';
|
||||
|
||||
@@ -1587,54 +1578,150 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
String get chat_noPathHistoryYet =>
|
||||
'История маршрутов пока пуста.\nОтправьте сообщение, чтобы обнаружить маршруты.';
|
||||
|
||||
@override
|
||||
String get chat_pathActions => 'Действия с маршрутом:';
|
||||
|
||||
@override
|
||||
String get chat_setCustomPath => 'Указать маршрут вручную';
|
||||
|
||||
@override
|
||||
String get chat_setCustomPathSubtitle => 'Вручную задать маршрут передачи';
|
||||
|
||||
@override
|
||||
String get chat_clearPath => 'Очистить маршрут';
|
||||
|
||||
@override
|
||||
String get chat_clearPathSubtitle =>
|
||||
'Принудительно обновить маршрут при следующей отправке';
|
||||
|
||||
@override
|
||||
String get chat_pathCleared =>
|
||||
'Маршрут очищен. Следующее сообщение обновит маршрут.';
|
||||
|
||||
@override
|
||||
String get chat_floodModeSubtitle =>
|
||||
'Используйте переключатель маршрутизации в панели приложения';
|
||||
|
||||
@override
|
||||
String get chat_floodModeEnabled =>
|
||||
'Режим рассылки включён. Отключите через значок маршрутизации в панели приложения.';
|
||||
|
||||
@override
|
||||
String get chat_fullPath => 'Полный маршрут';
|
||||
|
||||
@override
|
||||
String get chat_pathDetailsNotAvailable =>
|
||||
'Детали маршрута ещё недоступны. Попробуйте отправить сообщение для обновления.';
|
||||
String get routing_title => 'Маршрутизация';
|
||||
|
||||
@override
|
||||
String chat_pathSetHops(int hopCount, String status) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
hopCount,
|
||||
locale: localeName,
|
||||
other: 'хопов',
|
||||
many: 'хопов',
|
||||
few: 'хопа',
|
||||
one: 'хоп',
|
||||
);
|
||||
return 'Маршрут установлен: $hopCount $_temp0 — $status';
|
||||
String get routing_modeAuto => 'Авто';
|
||||
|
||||
@override
|
||||
String get routing_modeFlood => 'Наводнение';
|
||||
|
||||
@override
|
||||
String get routing_modeManual => 'Инструкция';
|
||||
|
||||
@override
|
||||
String get routing_modeAutoHint =>
|
||||
'Автоматически выбирает наиболее известный путь, и если такой путь неизвестен, использует алгоритм поиска пути.';
|
||||
|
||||
@override
|
||||
String get routing_modeFloodHint =>
|
||||
'Передача сигнала через все ретрансляторы. Самый надежный способ, но требует больше времени на передачу.';
|
||||
|
||||
@override
|
||||
String get routing_modeManualHint =>
|
||||
'Всегда следует точно по указанному вами маршруту.';
|
||||
|
||||
@override
|
||||
String get routing_currentRoute => 'Текущий маршрут';
|
||||
|
||||
@override
|
||||
String get routing_directNoHops =>
|
||||
'Прямое соединение – без использования ретрансляторов';
|
||||
|
||||
@override
|
||||
String get routing_noPathYet =>
|
||||
'Пока нет пути. Следующее сообщение будет отправлено до тех пор, пока не будет обнаружен маршрут.';
|
||||
|
||||
@override
|
||||
String get routing_floodBroadcast => 'Транслируется через все ретрансляторы';
|
||||
|
||||
@override
|
||||
String get routing_editPath => 'Изменить путь';
|
||||
|
||||
@override
|
||||
String get routing_forgetPath => 'Забудьте о маршруте';
|
||||
|
||||
@override
|
||||
String get routing_knownPaths => 'Известные маршруты';
|
||||
|
||||
@override
|
||||
String get routing_knownPathsHint =>
|
||||
'Создайте маршрут для переключения на этот пункт.';
|
||||
|
||||
@override
|
||||
String get routing_inUse => 'В эксплуатации';
|
||||
|
||||
@override
|
||||
String get routing_qualityStrong => 'Сильный первый скачок';
|
||||
|
||||
@override
|
||||
String get routing_qualityGood => 'Хорошее начало';
|
||||
|
||||
@override
|
||||
String get routing_qualityFair => 'Первый хороший урожай';
|
||||
|
||||
@override
|
||||
String get routing_qualityWorked => 'Осуществлено';
|
||||
|
||||
@override
|
||||
String get routing_qualityFlood =>
|
||||
'Узнал из новостей, распространяющихся в интернете.';
|
||||
|
||||
@override
|
||||
String get routing_qualityUntested => 'Непроверенный';
|
||||
|
||||
@override
|
||||
String routing_lastWorked(String when) {
|
||||
return 'worked $when';
|
||||
}
|
||||
|
||||
@override
|
||||
String get routing_neverWorked => 'никогда не было подтверждено';
|
||||
|
||||
@override
|
||||
String routing_deliveryCounts(int successes, int failures) {
|
||||
return '$successes delivered, $failures failed';
|
||||
}
|
||||
|
||||
@override
|
||||
String get routing_floodDelivery => 'Доставка при затоплении';
|
||||
|
||||
@override
|
||||
String get pathEditor_title => 'Создать маршрут';
|
||||
|
||||
@override
|
||||
String pathEditor_hopCounter(int count) {
|
||||
return '$count из 64 хмеля';
|
||||
}
|
||||
|
||||
@override
|
||||
String get pathEditor_noHops =>
|
||||
'На данный момент хмель еще не добавлен. Чтобы добавить его, нажмите на соответствующие кнопки ниже в нужном порядке, или сохраните рецепт без хмеля, чтобы отправить его напрямую.';
|
||||
|
||||
@override
|
||||
String get pathEditor_addHops =>
|
||||
'Добавляйте хмель в соответствии с указанным порядком.';
|
||||
|
||||
@override
|
||||
String get pathEditor_searchRepeaters => 'Поиск повторителей';
|
||||
|
||||
@override
|
||||
String get pathEditor_advancedHex =>
|
||||
'Продвинутый уровень: прямой путь в шестнадцатеричном формате';
|
||||
|
||||
@override
|
||||
String get pathEditor_hexLabel => 'Префиксы шестнадцатеричной системы';
|
||||
|
||||
@override
|
||||
String get pathEditor_hexHelper =>
|
||||
'Два шестнадцатеричных символа на каждом шаге, разделенные запятыми.';
|
||||
|
||||
@override
|
||||
String pathEditor_invalidTokens(String tokens) {
|
||||
return 'Неверно: $tokens';
|
||||
}
|
||||
|
||||
@override
|
||||
String get pathEditor_tooManyHops =>
|
||||
'Максимальное количество ингредиентов – 64';
|
||||
|
||||
@override
|
||||
String get pathEditor_usePath => 'Используйте этот путь';
|
||||
|
||||
@override
|
||||
String get pathEditor_removeHop => 'Удалить хмель';
|
||||
|
||||
@override
|
||||
String get pathEditor_unknownHop => 'Неизвестный ретранслятор';
|
||||
|
||||
@override
|
||||
String get chat_pathSavedLocally =>
|
||||
'Сохранено локально. Подключитесь для синхронизации.';
|
||||
@@ -1709,6 +1796,39 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
@override
|
||||
String get map_title => 'Карта нод';
|
||||
|
||||
@override
|
||||
String get map_searchHint => 'Поиск по имени или ID узла';
|
||||
|
||||
@override
|
||||
String get map_activity => 'Активность';
|
||||
|
||||
@override
|
||||
String get map_online => 'Онлайн';
|
||||
|
||||
@override
|
||||
String get map_recent => 'Недавно';
|
||||
|
||||
@override
|
||||
String get map_stale => 'Устаревший';
|
||||
|
||||
@override
|
||||
String get map_visible => 'Видимый';
|
||||
|
||||
@override
|
||||
String get map_hidden => 'Скрытый';
|
||||
|
||||
@override
|
||||
String get map_centerOnNode => 'Центрировать на узле';
|
||||
|
||||
@override
|
||||
String get map_details => 'Детали';
|
||||
|
||||
@override
|
||||
String get map_noGps => 'Без GPS';
|
||||
|
||||
@override
|
||||
String get map_noResults => 'Не найдено соответствующих узлов';
|
||||
|
||||
@override
|
||||
String get map_lineOfSight => 'Линия видимости';
|
||||
|
||||
@@ -2102,66 +2222,12 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
@override
|
||||
String get common_clear => 'Очистить';
|
||||
|
||||
@override
|
||||
String path_currentPath(String path) {
|
||||
return 'Текущий маршрут: $path';
|
||||
}
|
||||
|
||||
@override
|
||||
String path_usingHopsPath(int count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: 'хопов',
|
||||
many: 'хопов',
|
||||
few: 'хопа',
|
||||
one: 'хоп',
|
||||
);
|
||||
return 'Используется маршрут из $count $_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String get path_enterCustomPath => 'Введите маршрут вручную';
|
||||
|
||||
@override
|
||||
String get path_currentPathLabel => 'Текущий маршрут';
|
||||
|
||||
@override
|
||||
String get path_hexPrefixInstructions =>
|
||||
'Введите 2-символьные шестнадцатеричные префиксы для каждого хопа, разделённые запятыми.';
|
||||
|
||||
@override
|
||||
String get path_hexPrefixExample =>
|
||||
'Пример: A1,F2,3C (каждый узел использует первый байт своего публичного ключа)';
|
||||
|
||||
@override
|
||||
String get path_labelHexPrefixes => 'Маршрут (шестнадцатеричные префиксы)';
|
||||
|
||||
@override
|
||||
String get path_helperMaxHops =>
|
||||
'Максимум 64 хопа. Каждый префикс — 2 шестнадцатеричных символа (1 байт)';
|
||||
|
||||
@override
|
||||
String get path_selectFromContacts => 'Или выберите из контактов:';
|
||||
|
||||
@override
|
||||
String get path_noRepeatersFound => 'Репитеры или серверы комнат не найдены.';
|
||||
|
||||
@override
|
||||
String get path_customPathsRequire =>
|
||||
'Пользовательские маршруты требуют промежуточных узлов, способных ретранслировать сообщения.';
|
||||
|
||||
@override
|
||||
String path_invalidHexPrefixes(String prefixes) {
|
||||
return 'Недопустимые шестнадцатеричные префиксы: $prefixes';
|
||||
}
|
||||
|
||||
@override
|
||||
String get path_tooLong => 'Маршрут слишком длинный. Максимум 64 хопа.';
|
||||
|
||||
@override
|
||||
String get path_setPath => 'Установить маршрут';
|
||||
|
||||
@override
|
||||
String get repeater_management => 'Управление репитером';
|
||||
|
||||
@@ -2226,16 +2292,6 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
@override
|
||||
String get repeater_routingMode => 'Режим маршрутизации';
|
||||
|
||||
@override
|
||||
String get repeater_autoUseSavedPath =>
|
||||
'Авто (использовать сохранённый маршрут)';
|
||||
|
||||
@override
|
||||
String get repeater_forceFloodMode => 'Принудительный режим рассылки';
|
||||
|
||||
@override
|
||||
String get repeater_pathManagement => 'Управление маршрутами';
|
||||
|
||||
@override
|
||||
String get repeater_refresh => 'Обновить';
|
||||
|
||||
@@ -4506,4 +4562,139 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
|
||||
@override
|
||||
String get contact_typeUnknown => 'Неизвестно';
|
||||
|
||||
@override
|
||||
String get map_zoomIn => 'Увеличить масштаб';
|
||||
|
||||
@override
|
||||
String get map_zoomOut => 'Увеличить масштаб';
|
||||
|
||||
@override
|
||||
String get map_centerMap => 'Карта центра';
|
||||
|
||||
@override
|
||||
String get chrome_bluetoothRequiresChromium =>
|
||||
'Для работы Web Bluetooth требуется браузер на основе Chromium.';
|
||||
|
||||
@override
|
||||
String channels_communityShortId(String id) {
|
||||
return 'Идентификатор: $id...';
|
||||
}
|
||||
|
||||
@override
|
||||
String get pathTrace_legendGpsConfirmed => 'GPS подтверждено';
|
||||
|
||||
@override
|
||||
String get pathTrace_legendInferred => 'Выведенная позиция';
|
||||
|
||||
@override
|
||||
String get pathMap_viewSingle => 'Одиночный';
|
||||
|
||||
@override
|
||||
String get pathMap_viewCombined => 'Объединённые';
|
||||
|
||||
@override
|
||||
String get pathMap_play => 'Воспроизвести';
|
||||
|
||||
@override
|
||||
String get pathMap_pause => 'Пауза';
|
||||
|
||||
@override
|
||||
String get pathMap_replay => 'Повтор';
|
||||
|
||||
@override
|
||||
String get pathMap_stepBack => 'Предыдущий хоп';
|
||||
|
||||
@override
|
||||
String get pathMap_stepForward => 'Следующий хоп';
|
||||
|
||||
@override
|
||||
String get pathMap_animationOn => 'Показать анимацию пакета';
|
||||
|
||||
@override
|
||||
String get pathMap_animationOff => 'Скрыть анимацию пакета';
|
||||
|
||||
@override
|
||||
String pathMap_hopOf(int current, int total) {
|
||||
return 'Хоп $current из $total';
|
||||
}
|
||||
|
||||
@override
|
||||
String pathMap_observedPaths(int count) {
|
||||
return 'Наблюдаемые маршруты: $count';
|
||||
}
|
||||
|
||||
@override
|
||||
String get pathMap_primary => 'Основной';
|
||||
|
||||
@override
|
||||
String pathMap_alternate(int index) {
|
||||
return 'Альт $index';
|
||||
}
|
||||
|
||||
@override
|
||||
String pathMap_hopCount(int count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: '$count хопов',
|
||||
many: '$count хопов',
|
||||
few: '$count хопа',
|
||||
one: '$count хоп',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String pathMap_gpsCount(int confirmed, int total) {
|
||||
return '$confirmed/$total GPS';
|
||||
}
|
||||
|
||||
@override
|
||||
String get pathMap_legendShared => 'Общий сегмент';
|
||||
|
||||
@override
|
||||
String get pathMap_legendEstimated => 'Расчётный сегмент';
|
||||
|
||||
@override
|
||||
String pathMap_sharedNodeCount(int count) {
|
||||
return 'Используется в $count маршрутах';
|
||||
}
|
||||
|
||||
@override
|
||||
String pathMap_partialAnimation(int count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: '$count хопов не имеют координат — показанный путь неполный',
|
||||
many: '$count хопов не имеют координат — показанный путь неполный',
|
||||
few: '$count хопа не имеют координат — показанный путь неполный',
|
||||
one: '$count хоп не имеет координат — показанный путь неполный',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String get pathMap_showAllPaths => 'Показать всё';
|
||||
|
||||
@override
|
||||
String get pathMap_hidePath => 'Скрыть путь';
|
||||
|
||||
@override
|
||||
String get pathMap_showPath => 'Показать маршрут';
|
||||
|
||||
@override
|
||||
String get pathMap_collapsePanel => 'Скрыть панель';
|
||||
|
||||
@override
|
||||
String get pathMap_expandPanel => 'Расширить панель';
|
||||
|
||||
@override
|
||||
String get pathMap_noLocation => 'Нет координат';
|
||||
|
||||
@override
|
||||
String get pathMap_followPacket => 'Следить за пакетом';
|
||||
|
||||
@override
|
||||
String get pathMap_unfollowPacket => 'Не следить за пакетом';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user