Browse Source

chore(i18n): New Crowdin Translations by GitHub Action (#748)

Co-authored-by: Crowdin Bot <[email protected]>
pull/750/head
github-actions[bot] 11 months ago
committed by GitHub
parent
commit
9833628867
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 66
      packages/web/public/i18n/locales/bg-BG/channels.json
  2. 97
      packages/web/public/i18n/locales/bg-BG/commandPalette.json
  3. 28
      packages/web/public/i18n/locales/bg-BG/common.json
  4. 16
      packages/web/public/i18n/locales/bg-BG/deviceConfig.json
  5. 51
      packages/web/public/i18n/locales/bg-BG/dialog.json
  6. 36
      packages/web/public/i18n/locales/bg-BG/moduleConfig.json
  7. 4
      packages/web/public/i18n/locales/bg-BG/nodes.json
  8. 36
      packages/web/public/i18n/locales/bg-BG/ui.json
  9. 97
      packages/web/public/i18n/locales/cs-CZ/commandPalette.json
  10. 2
      packages/web/public/i18n/locales/cs-CZ/dashboard.json
  11. 25
      packages/web/public/i18n/locales/cs-CZ/dialog.json
  12. 6
      packages/web/public/i18n/locales/cs-CZ/moduleConfig.json
  13. 97
      packages/web/public/i18n/locales/de-DE/commandPalette.json
  14. 4
      packages/web/public/i18n/locales/de-DE/deviceConfig.json
  15. 27
      packages/web/public/i18n/locales/de-DE/dialog.json
  16. 20
      packages/web/public/i18n/locales/es-ES/channels.json
  17. 97
      packages/web/public/i18n/locales/es-ES/commandPalette.json
  18. 4
      packages/web/public/i18n/locales/es-ES/common.json
  19. 4
      packages/web/public/i18n/locales/es-ES/dashboard.json
  20. 144
      packages/web/public/i18n/locales/es-ES/deviceConfig.json
  21. 27
      packages/web/public/i18n/locales/es-ES/dialog.json
  22. 2
      packages/web/public/i18n/locales/es-ES/messages.json
  23. 34
      packages/web/public/i18n/locales/es-ES/moduleConfig.json
  24. 8
      packages/web/public/i18n/locales/es-ES/ui.json
  25. 97
      packages/web/public/i18n/locales/fi-FI/commandPalette.json
  26. 23
      packages/web/public/i18n/locales/fi-FI/dialog.json
  27. 80
      packages/web/public/i18n/locales/fr-FR/channels.json
  28. 97
      packages/web/public/i18n/locales/fr-FR/commandPalette.json
  29. 126
      packages/web/public/i18n/locales/fr-FR/common.json
  30. 10
      packages/web/public/i18n/locales/fr-FR/dashboard.json
  31. 368
      packages/web/public/i18n/locales/fr-FR/deviceConfig.json
  32. 213
      packages/web/public/i18n/locales/fr-FR/dialog.json
  33. 28
      packages/web/public/i18n/locales/fr-FR/messages.json
  34. 416
      packages/web/public/i18n/locales/fr-FR/moduleConfig.json
  35. 44
      packages/web/public/i18n/locales/fr-FR/nodes.json
  36. 168
      packages/web/public/i18n/locales/fr-FR/ui.json
  37. 97
      packages/web/public/i18n/locales/it-IT/commandPalette.json
  38. 23
      packages/web/public/i18n/locales/it-IT/dialog.json
  39. 97
      packages/web/public/i18n/locales/ja-JP/commandPalette.json
  40. 23
      packages/web/public/i18n/locales/ja-JP/dialog.json
  41. 80
      packages/web/public/i18n/locales/ko-KR/channels.json
  42. 97
      packages/web/public/i18n/locales/ko-KR/commandPalette.json
  43. 116
      packages/web/public/i18n/locales/ko-KR/common.json
  44. 10
      packages/web/public/i18n/locales/ko-KR/dashboard.json
  45. 236
      packages/web/public/i18n/locales/ko-KR/deviceConfig.json
  46. 45
      packages/web/public/i18n/locales/ko-KR/dialog.json
  47. 32
      packages/web/public/i18n/locales/ko-KR/messages.json
  48. 30
      packages/web/public/i18n/locales/ko-KR/moduleConfig.json
  49. 50
      packages/web/public/i18n/locales/ko-KR/nodes.json
  50. 176
      packages/web/public/i18n/locales/ko-KR/ui.json
  51. 97
      packages/web/public/i18n/locales/nl-NL/commandPalette.json
  52. 23
      packages/web/public/i18n/locales/nl-NL/dialog.json
  53. 80
      packages/web/public/i18n/locales/pl-PL/channels.json
  54. 97
      packages/web/public/i18n/locales/pl-PL/commandPalette.json
  55. 32
      packages/web/public/i18n/locales/pl-PL/common.json
  56. 10
      packages/web/public/i18n/locales/pl-PL/deviceConfig.json
  57. 29
      packages/web/public/i18n/locales/pl-PL/dialog.json
  58. 30
      packages/web/public/i18n/locales/pl-PL/messages.json
  59. 26
      packages/web/public/i18n/locales/pl-PL/moduleConfig.json
  60. 42
      packages/web/public/i18n/locales/pl-PL/nodes.json
  61. 10
      packages/web/public/i18n/locales/pl-PL/ui.json
  62. 69
      packages/web/public/i18n/locales/pt-BR/channels.json
  63. 51
      packages/web/public/i18n/locales/pt-BR/commandPalette.json
  64. 141
      packages/web/public/i18n/locales/pt-BR/common.json
  65. 12
      packages/web/public/i18n/locales/pt-BR/dashboard.json
  66. 428
      packages/web/public/i18n/locales/pt-BR/deviceConfig.json
  67. 182
      packages/web/public/i18n/locales/pt-BR/dialog.json
  68. 39
      packages/web/public/i18n/locales/pt-BR/messages.json
  69. 448
      packages/web/public/i18n/locales/pt-BR/moduleConfig.json
  70. 63
      packages/web/public/i18n/locales/pt-BR/nodes.json
  71. 228
      packages/web/public/i18n/locales/pt-BR/ui.json
  72. 97
      packages/web/public/i18n/locales/pt-PT/commandPalette.json
  73. 10
      packages/web/public/i18n/locales/pt-PT/deviceConfig.json
  74. 23
      packages/web/public/i18n/locales/pt-PT/dialog.json
  75. 97
      packages/web/public/i18n/locales/sv-SE/commandPalette.json
  76. 23
      packages/web/public/i18n/locales/sv-SE/dialog.json
  77. 97
      packages/web/public/i18n/locales/tr-TR/commandPalette.json
  78. 2
      packages/web/public/i18n/locales/tr-TR/deviceConfig.json
  79. 23
      packages/web/public/i18n/locales/tr-TR/dialog.json
  80. 2
      packages/web/public/i18n/locales/tr-TR/messages.json
  81. 2
      packages/web/public/i18n/locales/tr-TR/ui.json
  82. 97
      packages/web/public/i18n/locales/uk-UA/commandPalette.json
  83. 12
      packages/web/public/i18n/locales/uk-UA/common.json
  84. 14
      packages/web/public/i18n/locales/uk-UA/deviceConfig.json
  85. 35
      packages/web/public/i18n/locales/uk-UA/dialog.json
  86. 30
      packages/web/public/i18n/locales/uk-UA/moduleConfig.json
  87. 2
      packages/web/public/i18n/locales/uk-UA/nodes.json
  88. 54
      packages/web/public/i18n/locales/uk-UA/ui.json
  89. 97
      packages/web/public/i18n/locales/zh-CN/commandPalette.json
  90. 4
      packages/web/public/i18n/locales/zh-CN/common.json
  91. 23
      packages/web/public/i18n/locales/zh-CN/dialog.json

66
packages/web/public/i18n/locales/bg-BG/channels.json

@ -2,68 +2,68 @@
"page": { "page": {
"sectionLabel": "Канали", "sectionLabel": "Канали",
"channelName": "Канал: {{channelName}}", "channelName": "Канал: {{channelName}}",
"broadcastLabel": "Primary", "broadcastLabel": "Първичен",
"channelIndex": "Ch {{index}}" "channelIndex": "Ch {{index}}"
}, },
"validation": { "validation": {
"pskInvalid": "Please enter a valid {{bits}} bit PSK." "pskInvalid": "Моля, въведете валиден {{bits}} bit PSK."
}, },
"settings": { "settings": {
"label": "Настройки на канала", "label": "Настройки на канала",
"description": "Crypto, MQTT & misc settings" "description": "Крипто, MQTT и други настройки"
}, },
"role": { "role": {
"label": "Роля", "label": "Роля",
"description": "Device telemetry is sent over PRIMARY. Only one PRIMARY allowed", "description": "Телеметрията на устройството се изпраща през ПЪРВИЧЕН. Разрешен е само един ПЪРВИЧЕН.",
"options": { "options": {
"primary": "PRIMARY", "primary": "ПЪРВИЧЕН",
"disabled": "DISABLED", "disabled": "ДЕЗАКТИВИРАН",
"secondary": "SECONDARY" "secondary": "ВТОРИЧЕН"
} }
}, },
"psk": { "psk": {
"label": "Pre-Shared Key", "label": "Предварително споделен ключ",
"description": "Supported PSK lengths: 256-bit, 128-bit, 8-bit, Empty (0-bit)", "description": "Поддържани дължини на PSK: 256-битова, 128-битова, 8-битова, празна (0-битова)",
"generate": "Генериране" "generate": "Генериране"
}, },
"name": { "name": {
"label": "Име", "label": "Име",
"description": "A unique name for the channel <12 bytes, leave blank for default" "description": "Уникално име за канала <12 байта, оставете празно за подразбиране"
}, },
"uplinkEnabled": { "uplinkEnabled": {
"label": "Uplink Enabled", "label": "Uplink Enabled",
"description": "Send messages from the local mesh to MQTT" "description": "Изпращане на съобщения от локалната mesh към MQTT"
}, },
"downlinkEnabled": { "downlinkEnabled": {
"label": "Downlink Enabled", "label": "Downlink Enabled",
"description": "Send messages from MQTT to the local mesh" "description": "Изпращане на съобщения от MQTT към локалната mesh"
}, },
"positionPrecision": { "positionPrecision": {
"label": "Местоположение", "label": "Местоположение",
"description": "The precision of the location to share with the channel. Can be disabled.", "description": "Точността на местоположението, което да се споделя с канала. Може да бъде дезактивирано.",
"options": { "options": {
"none": "Да не се споделя местоположението", "none": "Да не се споделя местоположението",
"precise": "Точно местоположение", "precise": "Точно местоположение",
"metric_km23": "Within 23 kilometers", "metric_km23": "В рамките на 23 километра",
"metric_km12": "Within 12 kilometers", "metric_km12": "В рамките на 12 километра",
"metric_km5_8": "Within 5.8 kilometers", "metric_km5_8": "В рамките на 5.8 километра",
"metric_km2_9": "Within 2.9 kilometers", "metric_km2_9": "В рамките на 2.9 километра",
"metric_km1_5": "Within 1.5 kilometers", "metric_km1_5": "В рамките на 1.5 километра",
"metric_m700": "Within 700 meters", "metric_m700": "В рамките на 700 метра",
"metric_m350": "Within 350 meters", "metric_m350": "В рамките на 350 метра",
"metric_m200": "Within 200 meters", "metric_m200": "В рамките на 200 метра",
"metric_m90": "Within 90 meters", "metric_m90": "В рамките на 90 метра",
"metric_m50": "Within 50 meters", "metric_m50": "В рамките на 50 метра",
"imperial_mi15": "Within 15 miles", "imperial_mi15": "В рамките на 15 мили",
"imperial_mi7_3": "Within 7.3 miles", "imperial_mi7_3": "В рамките на 7.3 мили",
"imperial_mi3_6": "Within 3.6 miles", "imperial_mi3_6": "В рамките на 3.6 мили",
"imperial_mi1_8": "Within 1.8 miles", "imperial_mi1_8": "В рамките на 1.8 мили",
"imperial_mi0_9": "Within 0.9 miles", "imperial_mi0_9": "В рамките на 0.9 мили",
"imperial_mi0_5": "Within 0.5 miles", "imperial_mi0_5": "В рамките на 0.5 мили",
"imperial_mi0_2": "Within 0.2 miles", "imperial_mi0_2": "В рамките на 0.2 мили",
"imperial_ft600": "Within 600 feet", "imperial_ft600": "В рамките на 600 фута",
"imperial_ft300": "Within 300 feet", "imperial_ft300": "В рамките на 300 фута",
"imperial_ft150": "Within 150 feet" "imperial_ft150": "В рамките на 150 фута"
} }
} }
} }

97
packages/web/public/i18n/locales/bg-BG/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "Няма намерени резултати.", "emptyState": "Няма намерени резултати.",
"page": { "page": {
"title": "Command Menu" "title": "Command Menu"
}, },
"pinGroup": { "pinGroup": {
"label": "Pin command group" "label": "Pin command group"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Unpin command group" "label": "Unpin command group"
}, },
"goto": { "goto": {
"label": "Goto", "label": "Goto",
"command": { "command": {
"messages": "Съобщения", "messages": "Съобщения",
"map": "Карта", "map": "Карта",
"config": "Конфигурация", "config": "Конфигурация",
"channels": "Канали", "channels": "Канали",
"nodes": "Възли" "nodes": "Възли"
} }
}, },
"manage": { "manage": {
"label": "Управление", "label": "Управление",
"command": { "command": {
"switchNode": "Switch Node", "switchNode": "Switch Node",
"connectNewNode": "Свързване на нов възел" "connectNewNode": "Свързване на нов възел"
} }
}, },
"contextual": { "contextual": {
"label": "Contextual", "label": "Contextual",
"command": { "command": {
"qrCode": "QR код", "qrCode": "QR код",
"qrGenerator": "Генератор", "qrGenerator": "Генератор",
"qrImport": "Импортиране", "qrImport": "Импортиране",
"scheduleShutdown": "Планирано изключване", "scheduleShutdown": "Планирано изключване",
"scheduleReboot": "Планирано рестартиране", "scheduleReboot": "Планирано рестартиране",
"rebootToOtaMode": "Рестартиране в режим OTA", "rebootToOtaMode": "Рестартиране в режим OTA",
"resetNodeDb": "Нулиране на базата данни с възли", "resetNodeDb": "Нулиране на базата данни с възли",
"factoryResetDevice": "Фабрично нулиране на устройството", "factoryResetDevice": "Фабрично нулиране на устройството",
"factoryResetConfig": "Фабрично нулиране на конфигурацията" "factoryResetConfig": "Фабрично нулиране на конфигурацията",
} "disconnect": "Прекъсване"
}, }
"debug": { },
"label": "Отстраняване на грешки", "debug": {
"command": { "label": "Отстраняване на грешки",
"reconfigure": "Преконфигуриране", "command": {
"clearAllStoredMessages": "Изчистване на всички съхранени съобщения" "reconfigure": "Преконфигуриране",
} "clearAllStoredMessages": "Изчистване на всички съхранени съобщения"
} }
}
} }

28
packages/web/public/i18n/locales/bg-BG/common.json

@ -1,7 +1,7 @@
{ {
"button": { "button": {
"apply": "Приложи", "apply": "Приложи",
"backupKey": "Backup Key", "backupKey": "Резервно копие на ключа",
"cancel": "Отказ", "cancel": "Отказ",
"clearMessages": "Изчистване на съобщенията", "clearMessages": "Изчистване на съобщенията",
"close": "Затвори", "close": "Затвори",
@ -19,7 +19,7 @@
"print": "Отпечатване", "print": "Отпечатване",
"rebootOtaNow": "Reboot to OTA Mode Now", "rebootOtaNow": "Reboot to OTA Mode Now",
"remove": "Изтрий", "remove": "Изтрий",
"requestNewKeys": "Request New Keys", "requestNewKeys": "Заявка за нови ключове",
"requestPosition": "Request Position", "requestPosition": "Request Position",
"reset": "Нулиране", "reset": "Нулиране",
"save": "Запис", "save": "Запис",
@ -93,7 +93,7 @@
} }
}, },
"security": { "security": {
"0bit": "Empty", "0bit": "Празен",
"8bit": "8 bit", "8bit": "8 bit",
"128bit": "128 bit", "128bit": "128 bit",
"256bit": "256 bit" "256bit": "256 bit"
@ -109,32 +109,32 @@
"fallbackName": "Meshtastic {{last4}}", "fallbackName": "Meshtastic {{last4}}",
"node": "Възел", "node": "Възел",
"formValidation": { "formValidation": {
"unsavedChanges": "Unsaved changes", "unsavedChanges": "Незапазени промени",
"tooBig": { "tooBig": {
"string": "Too long, expected less than or equal to {{maximum}} characters.", "string": "Твърде дълъг, очаква се по-малко или равно на {{maximum}} знака.",
"number": "Too big, expected a number smaller than or equal to {{maximum}}.", "number": "Твърде голям, очаква се число по-малко или равно на {{maximum}}.",
"bytes": "Too big, expected less than or equal to {{params.maximum}} bytes." "bytes": "Твърде голям, очаква се по-малък или равен на {{params.maximum}} байта."
}, },
"tooSmall": { "tooSmall": {
"string": "Too short, expected more than or equal to {{minimum}} characters.", "string": "Твърде кратък, очаква се повече или равно на {{minimum}} знака.",
"number": "Too small, expected a number larger than or equal to {{minimum}}." "number": "Твърде малък, очаква се число, по-голямо или равно на {{minimum}}."
}, },
"invalidFormat": { "invalidFormat": {
"ipv4": "Невалиден формат, очаква се IPv4 адрес.", "ipv4": "Невалиден формат, очаква се IPv4 адрес.",
"key": "Invalid format, expected a Base64 encoded pre-shared key (PSK)." "key": "Невалиден формат, очаква се предварително споделен ключ (PSK), кодиран с Base64."
}, },
"invalidType": { "invalidType": {
"number": "Невалиден тип, очаква се число." "number": "Невалиден тип, очаква се число."
}, },
"pskLength": { "pskLength": {
"0bit": "Ключът трябва да е празен.", "0bit": "Ключът трябва да е празен.",
"8bit": "Key is required to be an 8 bit pre-shared key (PSK).", "8bit": "Ключът трябва да бъде 8-битов предварително споделен ключ (PSK).",
"128bit": "Key is required to be a 128 bit pre-shared key (PSK).", "128bit": "Ключът трябва да бъде 128-битов предварително споделен ключ (PSK).",
"256bit": "Key is required to be a 256 bit pre-shared key (PSK)." "256bit": "Ключът трябва да бъде 256-битов предварително споделен ключ (PSK)."
}, },
"required": { "required": {
"generic": "Това поле е задължително.", "generic": "Това поле е задължително.",
"managed": "At least one admin key is requred if the node is managed.", "managed": "Изисква се поне един администраторски ключ, ако възелът е управляван.",
"key": "Ключът е задължителен." "key": "Ключът е задължителен."
} }
} }

16
packages/web/public/i18n/locales/bg-BG/deviceConfig.json

@ -102,8 +102,8 @@
"label": "GPS Display Units" "label": "GPS Display Units"
}, },
"oledType": { "oledType": {
"description": "Type of OLED screen attached to the device", "description": "Тип на OLED екрана, прикрепен към устройството",
"label": "OLED Type" "label": "Тип OLED"
}, },
"screenTimeout": { "screenTimeout": {
"description": "Turn off the display after this long", "description": "Turn off the display after this long",
@ -120,7 +120,7 @@
}, },
"lora": { "lora": {
"title": "Настройки на Mesh", "title": "Настройки на Mesh",
"description": "Settings for the LoRa mesh", "description": "Настройки за LoRa mesh",
"bandwidth": { "bandwidth": {
"description": "Широчина на канала в MHz", "description": "Широчина на канала в MHz",
"label": "Широчина на честотната лента" "label": "Широчина на честотната лента"
@ -146,8 +146,8 @@
"label": "Hop Limit" "label": "Hop Limit"
}, },
"ignoreMqtt": { "ignoreMqtt": {
"description": "Don't forward MQTT messages over the mesh", "description": "Да не се препращат MQTT съобщения през mesh",
"label": "Ignore MQTT" "label": "Игнориране на MQTT"
}, },
"modemPreset": { "modemPreset": {
"description": "Използване на предварително настроен модем", "description": "Използване на предварително настроен модем",
@ -186,7 +186,7 @@
"label": "Използване на предварително зададени настройки" "label": "Използване на предварително зададени настройки"
}, },
"meshSettings": { "meshSettings": {
"description": "Settings for the LoRa mesh", "description": "Настройки за LoRa mesh",
"label": "Настройки на Mesh" "label": "Настройки на Mesh"
}, },
"waveformSettings": { "waveformSettings": {
@ -329,7 +329,7 @@
"numSatellites": "Number of satellites", "numSatellites": "Number of satellites",
"sequenceNumber": "Sequence number", "sequenceNumber": "Sequence number",
"timestamp": "Времево клеймо", "timestamp": "Времево клеймо",
"unset": "Отказ", "unset": "Не е зададен",
"vehicleHeading": "Vehicle heading", "vehicleHeading": "Vehicle heading",
"vehicleSpeed": "Скорост на превозното средство" "vehicleSpeed": "Скорост на превозното средство"
} }
@ -379,7 +379,7 @@
"security": { "security": {
"description": "Settings for the Security configuration", "description": "Settings for the Security configuration",
"title": "Насртойки на сигурността", "title": "Насртойки на сигурността",
"button_backupKey": "Backup Key", "button_backupKey": "Резервно копие на ключа",
"adminChannelEnabled": { "adminChannelEnabled": {
"description": "Allow incoming device control over the insecure legacy admin channel", "description": "Allow incoming device control over the insecure legacy admin channel",
"label": "Allow Legacy Admin" "label": "Allow Legacy Admin"

51
packages/web/public/i18n/locales/bg-BG/dialog.json

@ -7,10 +7,16 @@
"description": "Устройството ще се рестартира, след като конфигурацията бъде запазена.", "description": "Устройството ще се рестартира, след като конфигурацията бъде запазена.",
"longName": "Дълго име", "longName": "Дълго име",
"shortName": "Кратко име", "shortName": "Кратко име",
"title": "Промяна на името на устройството" "title": "Промяна на името на устройството",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "The current LoRa configuration will be overridden.", "description": "Текущата конфигурация на LoRa ще бъде презаписана.",
"error": { "error": {
"invalidUrl": "Невалиден Meshtastic URL" "invalidUrl": "Невалиден Meshtastic URL"
}, },
@ -21,13 +27,14 @@
"title": "Import Channel Set" "title": "Import Channel Set"
}, },
"locationResponse": { "locationResponse": {
"title": "Местоположение: {{identifier}}",
"altitude": "Надморска височина: ", "altitude": "Надморска височина: ",
"coordinates": "Координати:", "coordinates": "Координати:",
"title": "Местоположение: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?", "title": "Регенериране на предварително споделения ключ?",
"description": "Are you sure you want to regenerate the pre-shared key?", "description": "Сигурни ли сте, че искате да регенерирате предварително споделения ключ?",
"regenerate": "Регенериране" "regenerate": "Регенериране"
}, },
"newDeviceDialog": { "newDeviceDialog": {
@ -36,7 +43,7 @@
"http": "http", "http": "http",
"tabHttp": "HTTP", "tabHttp": "HTTP",
"tabBluetooth": "Bluetooth", "tabBluetooth": "Bluetooth",
"tabSerial": "Serial", "tabSerial": "Серийна",
"useHttps": "Използване на HTTPS", "useHttps": "Използване на HTTPS",
"connecting": "Свързване...", "connecting": "Свързване...",
"connect": "Свързване", "connect": "Свързване",
@ -46,7 +53,7 @@
"httpsHint": "Ако използвате HTTPS, може да се наложи първо да приемете самоподписан сертификат. ", "httpsHint": "Ако използвате HTTPS, може да се наложи първо да приемете самоподписан сертификат. ",
"openLinkPrefix": "Моля, отворете", "openLinkPrefix": "Моля, отворете",
"openLinkSuffix": "в нов раздел", "openLinkSuffix": "в нов раздел",
"acceptTlsWarningSuffix": "", "acceptTlsWarningSuffix": ", accept any TLS warnings if prompted, then try again",
"learnMoreLink": "Научете повече" "learnMoreLink": "Научете повече"
}, },
"httpConnection": { "httpConnection": {
@ -60,13 +67,17 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "Все още няма сдвоени устройства.", "noDevicesPaired": "Все още няма сдвоени устройства.",
"newDeviceButton": "Ново устройство" "newDeviceButton": "Ново устройство",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "Този тип връзка изисква <0></0>. Моля, използвайте поддържан браузър, като Chrome или Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.", "requiresSecureContext": "Това приложение изисква <0>secure context</0>. Моля, свържете се чрез HTTPS или localhost.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.", "additionallyRequiresSecureContext": "Освен това, изисква <0>secure context</0>. Моля, свържете се чрез HTTPS или localhost."
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
} }
}, },
"nodeDetails": { "nodeDetails": {
@ -103,11 +114,11 @@
"title": "Backup Keys" "title": "Backup Keys"
}, },
"pkiBackupReminder": { "pkiBackupReminder": {
"description": "We recommend backing up your key data regularly. Would you like to back up now?", "description": "Препоръчваме редовно да правите резервни копия на данните с вашите ключове. Искате ли да направите резервно копие сега?",
"title": "Backup Reminder", "title": "Напомняне за резервно копие",
"remindLaterPrefix": "Remind me in", "remindLaterPrefix": "Remind me in",
"remindNever": "Never remind me", "remindNever": "Никога не ми напомняй",
"backupNow": "Back up now" "backupNow": "Създаване на резервно копие сега"
}, },
"pkiRegenerate": { "pkiRegenerate": {
"description": "Сигурни ли сте, че искате да регенерирате двойката ключове?", "description": "Сигурни ли сте, че искате да регенерирате двойката ключове?",
@ -136,7 +147,7 @@
"keyMismatchReasonSuffix": ". This is due to the remote node's current public key does not match the previously stored key for this node.", "keyMismatchReasonSuffix": ". This is due to the remote node's current public key does not match the previously stored key for this node.",
"unableToSendDmPrefix": "Your node is unable to send a direct message to node: " "unableToSendDmPrefix": "Your node is unable to send a direct message to node: "
}, },
"acceptNewKeys": "Accept New Keys", "acceptNewKeys": "риемане на нови ключове",
"title": "Keys Mismatch - {{identifier}}" "title": "Keys Mismatch - {{identifier}}"
}, },
"removeNode": { "removeNode": {
@ -159,13 +170,13 @@
"conjunction": " and the blog post about ", "conjunction": " and the blog post about ",
"postamble": " and understand the implications of changing the role.", "postamble": " and understand the implications of changing the role.",
"preamble": "I have read the ", "preamble": "I have read the ",
"choosingRightDeviceRole": "Choosing The Right Device Role", "choosingRightDeviceRole": "Избор на правилната роля на устройството",
"deviceRoleDocumentation": "Device Role Documentation", "deviceRoleDocumentation": "Документация за ролите на устройството",
"title": "Сигурни ли сте?" "title": "Сигурни ли сте?"
}, },
"managedMode": { "managedMode": {
"confirmUnderstanding": "Да, знам какво правя", "confirmUnderstanding": "Да, знам какво правя",
"title": "Сигурни ли сте?", "title": "Сигурни ли сте?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

36
packages/web/public/i18n/locales/bg-BG/moduleConfig.json

@ -8,8 +8,8 @@
"tabMqtt": "MQTT", "tabMqtt": "MQTT",
"tabNeighborInfo": "Neighbor Info", "tabNeighborInfo": "Neighbor Info",
"tabPaxcounter": "Paxcounter", "tabPaxcounter": "Paxcounter",
"tabRangeTest": "Range Test", "tabRangeTest": "Тест на обхвата",
"tabSerial": "Serial", "tabSerial": "Серийна",
"tabStoreAndForward": "S&F", "tabStoreAndForward": "S&F",
"tabTelemetry": "Телеметрия" "tabTelemetry": "Телеметрия"
}, },
@ -21,7 +21,7 @@
"description": "Sets LED to on or off" "description": "Sets LED to on or off"
}, },
"current": { "current": {
"label": "Current", "label": "Текущ",
"description": "Sets the current for the LED output. Default is 10" "description": "Sets the current for the LED output. Default is 10"
}, },
"red": { "red": {
@ -279,16 +279,16 @@
"metric_m200": "Within 200 m", "metric_m200": "Within 200 m",
"metric_m90": "Within 90 m", "metric_m90": "Within 90 m",
"metric_m50": "Within 50 m", "metric_m50": "Within 50 m",
"imperial_mi15": "Within 15 miles", "imperial_mi15": "В рамките на 15 мили",
"imperial_mi7_3": "Within 7.3 miles", "imperial_mi7_3": "В рамките на 7.3 мили",
"imperial_mi3_6": "Within 3.6 miles", "imperial_mi3_6": "В рамките на 3.6 мили",
"imperial_mi1_8": "Within 1.8 miles", "imperial_mi1_8": "В рамките на 1.8 мили",
"imperial_mi0_9": "Within 0.9 miles", "imperial_mi0_9": "В рамките на 0.9 мили",
"imperial_mi0_5": "Within 0.5 miles", "imperial_mi0_5": "В рамките на 0.5 мили",
"imperial_mi0_2": "Within 0.2 miles", "imperial_mi0_2": "В рамките на 0.2 мили",
"imperial_ft600": "Within 600 feet", "imperial_ft600": "В рамките на 600 фута",
"imperial_ft300": "Within 300 feet", "imperial_ft300": "В рамките на 300 фута",
"imperial_ft150": "Within 150 feet" "imperial_ft150": "В рамките на 150 фута"
} }
} }
} }
@ -301,7 +301,7 @@
"description": "Enable or disable Neighbor Info Module" "description": "Enable or disable Neighbor Info Module"
}, },
"updateInterval": { "updateInterval": {
"label": "Update Interval", "label": "Интервал на актуализиране",
"description": "Interval in seconds of how often we should try to send our Neighbor Info to the mesh" "description": "Interval in seconds of how often we should try to send our Neighbor Info to the mesh"
} }
}, },
@ -313,7 +313,7 @@
"description": "Активиране на Paxcounter" "description": "Активиране на Paxcounter"
}, },
"paxcounterUpdateInterval": { "paxcounterUpdateInterval": {
"label": "Update Interval (seconds)", "label": "Интервал на актуализиране (секунди)",
"description": "How long to wait between sending paxcounter packets" "description": "How long to wait between sending paxcounter packets"
}, },
"wifiThreshold": { "wifiThreshold": {
@ -329,7 +329,7 @@
"title": "Range Test Settings", "title": "Range Test Settings",
"description": "Settings for the Range Test module", "description": "Settings for the Range Test module",
"enabled": { "enabled": {
"label": "Module Enabled", "label": "Модулът е активиран",
"description": "Enable Range Test" "description": "Enable Range Test"
}, },
"sender": { "sender": {
@ -406,10 +406,10 @@
"description": "Настройки за модула за телеметрия", "description": "Настройки за модула за телеметрия",
"deviceUpdateInterval": { "deviceUpdateInterval": {
"label": "Device Metrics", "label": "Device Metrics",
"description": "Device metrics update interval (seconds)" "description": "Интервал на актуализиране на показателите на устройството (секунди)"
}, },
"environmentUpdateInterval": { "environmentUpdateInterval": {
"label": "Environment metrics update interval (seconds)", "label": "Интервал на актуализиране на показателите на околната среда (секунди)",
"description": "" "description": ""
}, },
"environmentMeasurementEnabled": { "environmentMeasurementEnabled": {

4
packages/web/public/i18n/locales/bg-BG/nodes.json

@ -25,7 +25,7 @@
"mqtt": "MQTT" "mqtt": "MQTT"
}, },
"elevation": { "elevation": {
"label": "Elevation" "label": "Височина"
}, },
"channelUtil": { "channelUtil": {
"label": "Channel Util" "label": "Channel Util"
@ -44,7 +44,7 @@
"macAddress": "MAC адрес" "macAddress": "MAC адрес"
}, },
"connectionStatus": { "connectionStatus": {
"direct": "Direct", "direct": "Директно",
"away": "away", "away": "away",
"unknown": "-", "unknown": "-",
"viaMqtt": ", чрез MQTT" "viaMqtt": ", чрез MQTT"

36
packages/web/public/i18n/locales/bg-BG/ui.json

@ -82,21 +82,21 @@
"description": "Промяната в конфигурацията {{case}} е запазена." "description": "Промяната в конфигурацията {{case}} е запазена."
}, },
"favoriteNode": { "favoriteNode": {
"title": "{{action}} {{nodeName}} {{direction}} favorites.", "title": "{{action}} {{nodeName}} {{direction}} любими.",
"action": { "action": {
"added": "Added", "added": "Добавен",
"removed": "Removed", "removed": "Премахнат",
"to": "to", "to": "в",
"from": "from" "from": "от"
} }
}, },
"ignoreNode": { "ignoreNode": {
"title": "{{action}} {{nodeName}} {{direction}} ignore list", "title": "{{action}} {{nodeName}} {{direction}} списък с игнорирани",
"action": { "action": {
"added": "Added", "added": "Добавен",
"removed": "Removed", "removed": "Премахнат",
"to": "to", "to": "в",
"from": "from" "from": "от"
} }
} }
}, },
@ -114,10 +114,10 @@
"label": "Показване на паролата" "label": "Показване на паролата"
}, },
"deliveryStatus": { "deliveryStatus": {
"delivered": "Delivered", "delivered": "Доставено",
"failed": "Delivery Failed", "failed": "Неуспешна доставка",
"waiting": "Изчакване", "waiting": "Изчакване",
"unknown": "Unknown" "unknown": "Неизвестно"
} }
}, },
"general": { "general": {
@ -163,13 +163,13 @@
"label": "Използване на канала (%)" "label": "Използване на канала (%)"
}, },
"hops": { "hops": {
"direct": "Direct", "direct": "Директно",
"label": "Number of hops", "label": "Number of hops",
"text": "Number of hops: {{value}}" "text": "Number of hops: {{value}}"
}, },
"lastHeard": { "lastHeard": {
"label": "Последно чут", "label": "Последно чут",
"labelText": "Last heard: {{value}}", "labelText": "Последно чут: {{value}}",
"nowLabel": "Сега" "nowLabel": "Сега"
}, },
"snr": { "snr": {
@ -204,9 +204,9 @@
"changeTheme": "Промяна на цветовата схема" "changeTheme": "Промяна на цветовата схема"
}, },
"errorPage": { "errorPage": {
"title": "This is a little embarrassing...", "title": "Това е малко смущаващо...",
"description1": "We are really sorry but an error occurred in the web client that caused it to crash. <br /> This is not supposed to happen, and we are working hard to fix it.", "description1": "Наистина съжаляваме, но възникна грешка в web клиента, която доведе до срив. <br /> Това не би трябвало да се случва и работим усилено, за да го поправим.",
"description2": "The best way to prevent this from happening again to you or anyone else is to report the issue to us.", "description2": "Най-добрият начин да предотвратите това да се случи отново с вас или с някой друг е да ни съобщите за проблема.",
"reportInstructions": "Моля, включете следната информация в доклада си:", "reportInstructions": "Моля, включете следната информация в доклада си:",
"reportSteps": { "reportSteps": {
"step1": "Какво правехте, когато възникна грешката", "step1": "Какво правехте, когато възникна грешката",

97
packages/web/public/i18n/locales/cs-CZ/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "No results found.", "emptyState": "No results found.",
"page": { "page": {
"title": "Command Menu" "title": "Command Menu"
}, },
"pinGroup": { "pinGroup": {
"label": "Pin command group" "label": "Pin command group"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Unpin command group" "label": "Unpin command group"
}, },
"goto": { "goto": {
"label": "Goto", "label": "Goto",
"command": { "command": {
"messages": "Zprávy", "messages": "Zprávy",
"map": "Mapa", "map": "Mapa",
"config": "Config", "config": "Config",
"channels": "Kanály", "channels": "Kanály",
"nodes": "Uzly" "nodes": "Uzly"
} }
}, },
"manage": { "manage": {
"label": "Manage", "label": "Manage",
"command": { "command": {
"switchNode": "Switch Node", "switchNode": "Switch Node",
"connectNewNode": "Connect New Node" "connectNewNode": "Connect New Node"
} }
}, },
"contextual": { "contextual": {
"label": "Contextual", "label": "Contextual",
"command": { "command": {
"qrCode": "QR Code", "qrCode": "QR Code",
"qrGenerator": "Generator", "qrGenerator": "Generator",
"qrImport": "Import", "qrImport": "Import",
"scheduleShutdown": "Schedule Shutdown", "scheduleShutdown": "Schedule Shutdown",
"scheduleReboot": "Schedule Reboot", "scheduleReboot": "Schedule Reboot",
"rebootToOtaMode": "Reboot To OTA Mode", "rebootToOtaMode": "Reboot To OTA Mode",
"resetNodeDb": "Reset Node DB", "resetNodeDb": "Reset Node DB",
"factoryResetDevice": "Factory Reset Device", "factoryResetDevice": "Factory Reset Device",
"factoryResetConfig": "Factory Reset Config" "factoryResetConfig": "Factory Reset Config",
} "disconnect": "Disconnect"
}, }
"debug": { },
"label": "Debug", "debug": {
"command": { "label": "Debug",
"reconfigure": "Reconfigure", "command": {
"clearAllStoredMessages": "Clear All Stored Message" "reconfigure": "Reconfigure",
} "clearAllStoredMessages": "Clear All Stored Message"
} }
}
} }

2
packages/web/public/i18n/locales/cs-CZ/dashboard.json

@ -3,7 +3,7 @@
"title": "Connected Devices", "title": "Connected Devices",
"description": "Manage your connected Meshtastic devices.", "description": "Manage your connected Meshtastic devices.",
"connectionType_ble": "BLE", "connectionType_ble": "BLE",
"connectionType_serial": "Sériová komunikace", "connectionType_serial": "Sériový",
"connectionType_network": "Síť", "connectionType_network": "Síť",
"noDevicesTitle": "No devices connected", "noDevicesTitle": "No devices connected",
"noDevicesDescription": "Connect a new device to get started.", "noDevicesDescription": "Connect a new device to get started.",

25
packages/web/public/i18n/locales/cs-CZ/dialog.json

@ -7,7 +7,13 @@
"description": "The Device will restart once the config is saved.", "description": "The Device will restart once the config is saved.",
"longName": "Long Name", "longName": "Long Name",
"shortName": "Short Name", "shortName": "Short Name",
"title": "Change Device Name" "title": "Change Device Name",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "The current LoRa configuration will be overridden.", "description": "The current LoRa configuration will be overridden.",
@ -21,9 +27,10 @@
"title": "Import Channel Set" "title": "Import Channel Set"
}, },
"locationResponse": { "locationResponse": {
"title": "Location: {{identifier}}",
"altitude": "Altitude: ", "altitude": "Altitude: ",
"coordinates": "Coordinates: ", "coordinates": "Coordinates: ",
"title": "Location: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?", "title": "Regenerate Pre-Shared Key?",
@ -36,7 +43,7 @@
"http": "http", "http": "http",
"tabHttp": "HTTP", "tabHttp": "HTTP",
"tabBluetooth": "Bluetooth", "tabBluetooth": "Bluetooth",
"tabSerial": "Sériová komunikace", "tabSerial": "Sériový",
"useHttps": "Use HTTPS", "useHttps": "Use HTTPS",
"connecting": "Connecting...", "connecting": "Connecting...",
"connect": "Connect", "connect": "Connect",
@ -60,11 +67,15 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "New device" "newDeviceButton": "New device",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "This connection type requires <0></0>. Please use a supported browser, like Chrome or Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.", "requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.",
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost." "additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
} }
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Yes, I know what I'm doing", "confirmUnderstanding": "Yes, I know what I'm doing",
"title": "Jste si jistý?", "title": "Jste si jistý?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

6
packages/web/public/i18n/locales/cs-CZ/moduleConfig.json

@ -9,7 +9,7 @@
"tabNeighborInfo": "Informace o sousedech", "tabNeighborInfo": "Informace o sousedech",
"tabPaxcounter": "Paxcounter", "tabPaxcounter": "Paxcounter",
"tabRangeTest": "Zkouška dosahu", "tabRangeTest": "Zkouška dosahu",
"tabSerial": "Sériová komunikace", "tabSerial": "Sériový",
"tabStoreAndForward": "S&F", "tabStoreAndForward": "S&F",
"tabTelemetry": "Telemetrie" "tabTelemetry": "Telemetrie"
}, },
@ -406,10 +406,10 @@
"description": "Settings for the Telemetry module", "description": "Settings for the Telemetry module",
"deviceUpdateInterval": { "deviceUpdateInterval": {
"label": "Device Metrics", "label": "Device Metrics",
"description": "Interval aktualizace měření spotřeby (v sekundách)" "description": "Interval aktualizace metrik zařízení (v sekundách)"
}, },
"environmentUpdateInterval": { "environmentUpdateInterval": {
"label": "Interval aktualizace měření životního prostředí (v sekundách)", "label": "Interval aktualizace metrik životního prostředí (v sekundách)",
"description": "" "description": ""
}, },
"environmentMeasurementEnabled": { "environmentMeasurementEnabled": {

97
packages/web/public/i18n/locales/de-DE/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "Keine Ergebnisse gefunden.", "emptyState": "Keine Ergebnisse gefunden.",
"page": { "page": {
"title": "Befehlsmenü" "title": "Befehlsmenü"
}, },
"pinGroup": { "pinGroup": {
"label": "Befehlsgruppe anheften" "label": "Befehlsgruppe anheften"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Befehlsgruppe lösen" "label": "Befehlsgruppe lösen"
}, },
"goto": { "goto": {
"label": "Gehe zu", "label": "Gehe zu",
"command": { "command": {
"messages": "Nachrichten", "messages": "Nachrichten",
"map": "Karte", "map": "Karte",
"config": "Einstellungen", "config": "Einstellungen",
"channels": "Kanäle", "channels": "Kanäle",
"nodes": "Knoten" "nodes": "Knoten"
} }
}, },
"manage": { "manage": {
"label": "Verwalten", "label": "Verwalten",
"command": { "command": {
"switchNode": "Knoten wechseln", "switchNode": "Knoten wechseln",
"connectNewNode": "Neuen Knoten verbinden" "connectNewNode": "Neuen Knoten verbinden"
} }
}, },
"contextual": { "contextual": {
"label": "Kontextabhängig", "label": "Kontextabhängig",
"command": { "command": {
"qrCode": "QR Code", "qrCode": "QR Code",
"qrGenerator": "Generator", "qrGenerator": "Generator",
"qrImport": "Importieren", "qrImport": "Importieren",
"scheduleShutdown": "Herunterfahren planen", "scheduleShutdown": "Herunterfahren planen",
"scheduleReboot": "Neustarten planen", "scheduleReboot": "Neustarten planen",
"rebootToOtaMode": "Neustart in den OTA Modus", "rebootToOtaMode": "Neustart in den OTA Modus",
"resetNodeDb": "Knotendatenbank zurücksetzen", "resetNodeDb": "Knotendatenbank zurücksetzen",
"factoryResetDevice": "Gerät auf Werkseinstellungen zurücksetzen", "factoryResetDevice": "Gerät auf Werkseinstellungen zurücksetzen",
"factoryResetConfig": "Auf Werkseinstellungen zurücksetzen" "factoryResetConfig": "Auf Werkseinstellungen zurücksetzen",
} "disconnect": "Verbindung trennen"
}, }
"debug": { },
"label": "Debug", "debug": {
"command": { "label": "Debug",
"reconfigure": "Neu einrichten", "command": {
"clearAllStoredMessages": "Alle gespeicherten Nachrichten löschen" "reconfigure": "Neu einrichten",
} "clearAllStoredMessages": "Alle gespeicherten Nachrichten löschen"
} }
}
} }

4
packages/web/public/i18n/locales/de-DE/deviceConfig.json

@ -7,7 +7,7 @@
"tabLora": "LoRa", "tabLora": "LoRa",
"tabNetwork": "Netzwerk", "tabNetwork": "Netzwerk",
"tabPosition": "Standort", "tabPosition": "Standort",
"tabPower": "Leistung", "tabPower": "Energie",
"tabSecurity": "Sicherheit" "tabSecurity": "Sicherheit"
}, },
"sidebar": { "sidebar": {
@ -369,7 +369,7 @@
}, },
"powerConfigSettings": { "powerConfigSettings": {
"description": "Einstellungen für das Energiemodul", "description": "Einstellungen für das Energiemodul",
"label": "Power Konfiguration" "label": "Energie Einstellungen"
}, },
"sleepSettings": { "sleepSettings": {
"description": "Einstellungen Ruhezustand für das Energiemodul", "description": "Einstellungen Ruhezustand für das Energiemodul",

27
packages/web/public/i18n/locales/de-DE/dialog.json

@ -7,7 +7,13 @@
"description": "Das Gerät wird neu gestartet, sobald die Einstellung gespeichert ist.", "description": "Das Gerät wird neu gestartet, sobald die Einstellung gespeichert ist.",
"longName": "Langer Name", "longName": "Langer Name",
"shortName": "Kurzname", "shortName": "Kurzname",
"title": "Gerätename ändern" "title": "Gerätename ändern",
"validation": {
"longNameMax": "Lange Name darf nicht mehr als 40 Zeichen lang sein",
"shortNameMax": "Kurzname darf nicht mehr als 4 Zeichen lang sein",
"longNameMin": "Langer Name muss mindestens 1 Zeichen lang sein",
"shortNameMin": "Kurzname muss mindestens 1 Zeichen lang sein"
}
}, },
"import": { "import": {
"description": "Die aktuelle LoRa Einstellung wird überschrieben.", "description": "Die aktuelle LoRa Einstellung wird überschrieben.",
@ -21,9 +27,10 @@
"title": "Kanalsammlung importieren" "title": "Kanalsammlung importieren"
}, },
"locationResponse": { "locationResponse": {
"title": "Standort: {{identifier}}",
"altitude": "Höhe: ", "altitude": "Höhe: ",
"coordinates": "Koordinaten: ", "coordinates": "Koordinaten: ",
"title": "Standort: {{identifier}}" "noCoordinates": "Keine Koordinaten"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Vorab verteilten Schlüssel (PSK) neu erstellen?", "title": "Vorab verteilten Schlüssel (PSK) neu erstellen?",
@ -60,11 +67,15 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "Noch keine Geräte gekoppelt.", "noDevicesPaired": "Noch keine Geräte gekoppelt.",
"newDeviceButton": "Neues Gerät" "newDeviceButton": "Neues Gerät",
"connectionFailed": "Verbindung fehlgeschlagen",
"deviceDisconnected": "Verbindung getrennt",
"unknownDevice": "Unbekanntes Gerät",
"errorLoadingDevices": "Fehler beim Laden der Geräte",
"unknownErrorLoadingDevices": "Unbekannter Fehler beim Laden der Geräte"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "Dieser Verbindungstyp erfordert <0>Bluetooth</0> im Browser. Bitte verwenden Sie einen unterstützten Browser, wie Chrome oder Edge.", "requiresFeatures": "Dieser Verbindungstyp erfordert <0></0>. Bitte verwenden Sie einen unterstützten Browser, wie Chrome oder Edge.",
"requiresWebSerial": "Dieser Verbindungstyp erfordert <0>Serielle Schnittstelle</0> im Browser. Bitte verwenden Sie einen unterstützten Browser, wie Chrome oder Edge.",
"requiresSecureContext": "Diese Anwendung erfordert einen <0>sicheren Kontext</0>. Bitte verbinden Sie sich über HTTPS oder localhost.", "requiresSecureContext": "Diese Anwendung erfordert einen <0>sicheren Kontext</0>. Bitte verbinden Sie sich über HTTPS oder localhost.",
"additionallyRequiresSecureContext": "Zusätzlich erfordert es einen <0>sicheren Kontext</0>. Bitte verbinden Sie sich über HTTPS oder localhost." "additionallyRequiresSecureContext": "Zusätzlich erfordert es einen <0>sicheren Kontext</0>. Bitte verbinden Sie sich über HTTPS oder localhost."
} }
@ -161,11 +172,11 @@
"preamble": "Ich habe die", "preamble": "Ich habe die",
"choosingRightDeviceRole": "Wahl der richtigen Geräterolle", "choosingRightDeviceRole": "Wahl der richtigen Geräterolle",
"deviceRoleDocumentation": "Dokumentation der Geräterolle", "deviceRoleDocumentation": "Dokumentation der Geräterolle",
"title": "Bist Du sicher?" "title": "Sind Sie sicher?"
}, },
"managedMode": { "managedMode": {
"confirmUnderstanding": "Ja, ich weiß, was ich tue!", "confirmUnderstanding": "Ja, ich weiß, was ich tue!",
"title": "Bist Du sicher?", "title": "Sind Sie sicher?",
"description": "Das Aktivieren des verwalteten Modus blockiert das Schreiben der Einstellungen in das Funkgerät durch alle Anwendungen (einschließlich der Webanwendung). Einmal aktiviert, können die Einstellungen <bold>nur</bold> durch administrative Nachrichten geändert werden. Diese Einstellung ist für die Fernverwaltung von abgesetzten Knoten nicht erforderlich." "description": "Das Aktivieren des verwalteten Modus blockiert das Schreiben der Einstellungen in das Funkgerät durch alle Anwendungen (einschließlich der Webanwendung). Einmal aktiviert, können die Einstellungen nur durch administrative Nachrichten geändert werden. Diese Einstellung ist für die Fernverwaltung von abgesetzten Knoten nicht erforderlich."
} }
} }

20
packages/web/public/i18n/locales/es-ES/channels.json

@ -1,24 +1,24 @@
{ {
"page": { "page": {
"sectionLabel": "Canales", "sectionLabel": "Canales",
"channelName": "Channel: {{channelName}}", "channelName": "Canal: {{channelName}}",
"broadcastLabel": "Primary", "broadcastLabel": "Primario",
"channelIndex": "Ch {{index}}" "channelIndex": "Cnl {{index}}"
}, },
"validation": { "validation": {
"pskInvalid": "Please enter a valid {{bits}} bit PSK." "pskInvalid": "Por favor, introduzca un PSK de {{bits}} bit válido."
}, },
"settings": { "settings": {
"label": "Ajustes del canal", "label": "Ajustes del canal",
"description": "Crypto, MQTT & misc settings" "description": "Criptografía, MQTT y otros ajustes"
}, },
"role": { "role": {
"label": "Role", "label": "Rol",
"description": "Device telemetry is sent over PRIMARY. Only one PRIMARY allowed", "description": "La telemetría del dispositivo se envía sobre PRIMARY. Solo se permite un PRIMARIO",
"options": { "options": {
"primary": "PRIMARY", "primary": "PRIMARIO",
"disabled": "DISABLED", "disabled": "DESHABILITADO",
"secondary": "SECONDARY" "secondary": "SECUNDARIO"
} }
}, },
"psk": { "psk": {

97
packages/web/public/i18n/locales/es-ES/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "No results found.", "emptyState": "No results found.",
"page": { "page": {
"title": "Command Menu" "title": "Command Menu"
}, },
"pinGroup": { "pinGroup": {
"label": "Pin command group" "label": "Pin command group"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Unpin command group" "label": "Unpin command group"
}, },
"goto": { "goto": {
"label": "Goto", "label": "Goto",
"command": { "command": {
"messages": "Mensajes", "messages": "Mensajes",
"map": "Mapa", "map": "Mapa",
"config": "Config", "config": "Config",
"channels": "Canales", "channels": "Canales",
"nodes": "Nodes" "nodes": "Nodos"
} }
}, },
"manage": { "manage": {
"label": "Manage", "label": "Manage",
"command": { "command": {
"switchNode": "Switch Node", "switchNode": "Switch Node",
"connectNewNode": "Connect New Node" "connectNewNode": "Connect New Node"
} }
}, },
"contextual": { "contextual": {
"label": "Contextual", "label": "Contextual",
"command": { "command": {
"qrCode": "QR Code", "qrCode": "QR Code",
"qrGenerator": "Generator", "qrGenerator": "Generator",
"qrImport": "Import", "qrImport": "Importar",
"scheduleShutdown": "Schedule Shutdown", "scheduleShutdown": "Schedule Shutdown",
"scheduleReboot": "Schedule Reboot", "scheduleReboot": "Schedule Reboot",
"rebootToOtaMode": "Reboot To OTA Mode", "rebootToOtaMode": "Reboot To OTA Mode",
"resetNodeDb": "Reset Node DB", "resetNodeDb": "Reset Node DB",
"factoryResetDevice": "Factory Reset Device", "factoryResetDevice": "Factory Reset Device",
"factoryResetConfig": "Factory Reset Config" "factoryResetConfig": "Factory Reset Config",
} "disconnect": "Desconectar"
}, }
"debug": { },
"label": "Debug", "debug": {
"command": { "label": "Depuración",
"reconfigure": "Reconfigure", "command": {
"clearAllStoredMessages": "Clear All Stored Message" "reconfigure": "Reconfigure",
} "clearAllStoredMessages": "Clear All Stored Message"
} }
}
} }

4
packages/web/public/i18n/locales/es-ES/common.json

@ -12,7 +12,7 @@
"export": "Export", "export": "Export",
"generate": "Generate", "generate": "Generate",
"regenerate": "Regenerate", "regenerate": "Regenerate",
"import": "Import", "import": "Importar",
"message": "Mensaje", "message": "Mensaje",
"now": "Now", "now": "Now",
"ok": "Vale", "ok": "Vale",
@ -23,7 +23,7 @@
"requestPosition": "Request Position", "requestPosition": "Request Position",
"reset": "Reiniciar", "reset": "Reiniciar",
"save": "Guardar", "save": "Guardar",
"scanQr": "Scan QR Code", "scanQr": "Escanear el código QR",
"traceRoute": "Trace Route", "traceRoute": "Trace Route",
"submit": "Submit" "submit": "Submit"
}, },

4
packages/web/public/i18n/locales/es-ES/dashboard.json

@ -3,8 +3,8 @@
"title": "Connected Devices", "title": "Connected Devices",
"description": "Manage your connected Meshtastic devices.", "description": "Manage your connected Meshtastic devices.",
"connectionType_ble": "BLE", "connectionType_ble": "BLE",
"connectionType_serial": "Serial", "connectionType_serial": "Conexión Serial",
"connectionType_network": "Red", "connectionType_network": "Conexión Red",
"noDevicesTitle": "No devices connected", "noDevicesTitle": "No devices connected",
"noDevicesDescription": "Connect a new device to get started.", "noDevicesDescription": "Connect a new device to get started.",
"button_newConnection": "New Connection" "button_newConnection": "New Connection"

144
packages/web/public/i18n/locales/es-ES/deviceConfig.json

@ -1,129 +1,129 @@
{ {
"page": { "page": {
"title": "Configuration", "title": "Configuración",
"tabBluetooth": "Bluetooth", "tabBluetooth": "Bluetooth",
"tabDevice": "Dispositivo", "tabDevice": "Dispositivo",
"tabDisplay": "Pantalla", "tabDisplay": "Pantalla",
"tabLora": "LoRa", "tabLora": "LoRa",
"tabNetwork": "Red", "tabNetwork": "Conexión Red",
"tabPosition": "Posición", "tabPosition": "Posición",
"tabPower": "Energía", "tabPower": "Consumo",
"tabSecurity": "Seguridad" "tabSecurity": "Seguridad"
}, },
"sidebar": { "sidebar": {
"label": "Modules" "label": "Módulos"
}, },
"device": { "device": {
"title": "Device Settings", "title": "Ajustes del dispositivo",
"description": "Settings for the device", "description": "Ajustes del dispositivo",
"buttonPin": { "buttonPin": {
"description": "Button pin override", "description": "Sobrescribir pin de botón",
"label": "Button Pin" "label": "Pin del botón"
}, },
"buzzerPin": { "buzzerPin": {
"description": "Buzzer pin override", "description": "Sobrescribir pin del zumbador",
"label": "Buzzer Pin" "label": "Pin del zumbador"
}, },
"disableTripleClick": { "disableTripleClick": {
"description": "Disable triple click", "description": "Deshabilitar clic triple",
"label": "Disable Triple Click" "label": "Deshabilitar clic triple"
}, },
"doubleTapAsButtonPress": { "doubleTapAsButtonPress": {
"description": "Treat double tap as button press", "description": "Tratar doble toque como botón presionado",
"label": "Double Tap as Button Press" "label": "Doble toque como botón presionado"
}, },
"ledHeartbeatDisabled": { "ledHeartbeatDisabled": {
"description": "Disable default blinking LED", "description": "Deshabilitar parpadeo del LED predeterminado",
"label": "LED Heartbeat Disabled" "label": "Deshabilitar LED de estado"
}, },
"nodeInfoBroadcastInterval": { "nodeInfoBroadcastInterval": {
"description": "How often to broadcast node info", "description": "Cada cuanto se transmite la información del nodo",
"label": "Node Info Broadcast Interval" "label": "Intervalo de transmisión de información del nodo"
}, },
"posixTimezone": { "posixTimezone": {
"description": "The POSIX timezone string for the device", "description": "La zona horaria para el dispositivo en formato de cadena POSIX",
"label": "POSIX Timezone" "label": "Zona horaria POSIX"
}, },
"rebroadcastMode": { "rebroadcastMode": {
"description": "How to handle rebroadcasting", "description": "Cómo manejar la retransmisión",
"label": "Rebroadcast Mode" "label": "Modo de retransmisión"
}, },
"role": { "role": {
"description": "What role the device performs on the mesh", "description": "Qué role realiza el dispositivo en la malla",
"label": "Role" "label": "Rol"
} }
}, },
"bluetooth": { "bluetooth": {
"title": "Bluetooth Settings", "title": "Ajustes de Bluetooth",
"description": "Settings for the Bluetooth module", "description": "Ajustes del módulo de Bluetooth",
"note": "Note: Some devices (ESP32) cannot use both Bluetooth and WiFi at the same time.", "note": "Nota: Algunos dispositivos (ESP32) no pueden usar Bluetooth y Wifi al mismo tiempo.",
"enabled": { "enabled": {
"description": "Enable or disable Bluetooth", "description": "Habilitar o deshabilitar Bluetooth",
"label": "Enabled" "label": "Habilitado"
}, },
"pairingMode": { "pairingMode": {
"description": "Pin selection behaviour.", "description": "Selección del comportamiento del Pin.",
"label": "Modo de emparejamiento" "label": "Modo de emparejamiento"
}, },
"pin": { "pin": {
"description": "Pin to use when pairing", "description": "Pin a usar al emparejar",
"label": "Pin" "label": "Pin"
} }
}, },
"display": { "display": {
"description": "Settings for the device display", "description": "Ajustes de la pantalla del dispositivo",
"title": "Display Settings", "title": "Ajustes de pantalla",
"headingBold": { "headingBold": {
"description": "Bolden the heading text", "description": "Negrita en el texto del encabezado",
"label": "Bold Heading" "label": "Encabezado en negrita"
}, },
"carouselDelay": { "carouselDelay": {
"description": "How fast to cycle through windows", "description": "Que tan rápido cambiar entre pantallas",
"label": "Carousel Delay" "label": "Retraso del carrusel"
}, },
"compassNorthTop": { "compassNorthTop": {
"description": "Fix north to the top of compass", "description": "Fijar el norte en la parte superior de la brújula",
"label": "Compass North Top" "label": "Norte arriba de la brújula"
}, },
"displayMode": { "displayMode": {
"description": "Screen layout variant", "description": "Variante del diseño de la pantalla",
"label": "Display Mode" "label": "Modo de visualización"
}, },
"displayUnits": { "displayUnits": {
"description": "Display metric or imperial units", "description": "Mostrar unidades de medidas métricas o imperiales",
"label": "Display Units" "label": "Unidades de medidas"
}, },
"flipScreen": { "flipScreen": {
"description": "Flip display 180 degrees", "description": "Rotar pantalla 180 grados",
"label": "Flip Screen" "label": "Rotar pantalla"
}, },
"gpsDisplayUnits": { "gpsDisplayUnits": {
"description": "Coordinate display format", "description": "Formato de visualización de las coordenadas",
"label": "GPS Display Units" "label": "Unidades de visualización del GPS"
}, },
"oledType": { "oledType": {
"description": "Type of OLED screen attached to the device", "description": "Tipo de pantalla OLED conectada al dispositivo",
"label": "OLED Type" "label": "Tipo de OLED"
}, },
"screenTimeout": { "screenTimeout": {
"description": "Turn off the display after this long", "description": "Apagar la pantalla después de este tiempo",
"label": "Screen Timeout" "label": "Tiempo de espera de la pantalla"
}, },
"twelveHourClock": { "twelveHourClock": {
"description": "Use 12-hour clock format", "description": "Usar reloj con formato de 12 horas",
"label": "12-Hour Clock" "label": "Reloj de 12 horas"
}, },
"wakeOnTapOrMotion": { "wakeOnTapOrMotion": {
"description": "Wake the device on tap or motion", "description": "Despertar dispositivo al tocar o mover",
"label": "Wake on Tap or Motion" "label": "Despertar al mover o tocar"
} }
}, },
"lora": { "lora": {
"title": "Mesh Settings", "title": "Ajustes de la Red",
"description": "Settings for the LoRa mesh", "description": "Settings for the LoRa mesh",
"bandwidth": { "bandwidth": {
"description": "Channel bandwidth in MHz", "description": "Channel bandwidth in MHz",
"label": "Bandwidth" "label": "Ancho de Banda"
}, },
"boostedRxGain": { "boostedRxGain": {
"description": "Boosted RX gain", "description": "Boosted RX gain",
@ -147,7 +147,7 @@
}, },
"ignoreMqtt": { "ignoreMqtt": {
"description": "Don't forward MQTT messages over the mesh", "description": "Don't forward MQTT messages over the mesh",
"label": "Ignore MQTT" "label": "Ignorar Paquetes MQTT"
}, },
"modemPreset": { "modemPreset": {
"description": "Modem preset to use", "description": "Modem preset to use",
@ -155,11 +155,11 @@
}, },
"okToMqtt": { "okToMqtt": {
"description": "When set to true, this configuration indicates that the user approves the packet to be uploaded to MQTT. If set to false, remote nodes are requested not to forward packets to MQTT", "description": "When set to true, this configuration indicates that the user approves the packet to be uploaded to MQTT. If set to false, remote nodes are requested not to forward packets to MQTT",
"label": "OK to MQTT" "label": "Permitir Subir Paquetes al MQTT"
}, },
"overrideDutyCycle": { "overrideDutyCycle": {
"description": "Override Duty Cycle", "description": "Sobreescribir el Tiempo de Trabajo",
"label": "Override Duty Cycle" "label": "Sobreescribir el Tiempo de Trabajo"
}, },
"overrideFrequency": { "overrideFrequency": {
"description": "Override frequency", "description": "Override frequency",
@ -187,7 +187,7 @@
}, },
"meshSettings": { "meshSettings": {
"description": "Settings for the LoRa mesh", "description": "Settings for the LoRa mesh",
"label": "Mesh Settings" "label": "Ajustes de la Red"
}, },
"waveformSettings": { "waveformSettings": {
"description": "Settings for the LoRa waveform", "description": "Settings for the LoRa waveform",
@ -201,7 +201,7 @@
"network": { "network": {
"title": "WiFi Config", "title": "WiFi Config",
"description": "WiFi radio configuration", "description": "WiFi radio configuration",
"note": "Note: Some devices (ESP32) cannot use both Bluetooth and WiFi at the same time.", "note": "Nota: Algunos dispositivos (ESP32) no pueden usar Bluetooth y Wifi al mismo tiempo.",
"addressMode": { "addressMode": {
"description": "Address assignment selection", "description": "Address assignment selection",
"label": "Address Mode" "label": "Address Mode"
@ -212,11 +212,11 @@
}, },
"ethernetEnabled": { "ethernetEnabled": {
"description": "Enable or disable the Ethernet port", "description": "Enable or disable the Ethernet port",
"label": "Enabled" "label": "Habilitado"
}, },
"gateway": { "gateway": {
"description": "Default Gateway", "description": "Default Gateway",
"label": "Gateway" "label": "Puerta enlace"
}, },
"ip": { "ip": {
"description": "IP Address", "description": "IP Address",
@ -224,19 +224,19 @@
}, },
"psk": { "psk": {
"description": "Network password", "description": "Network password",
"label": "PSK" "label": "PSK (Contraseña)"
}, },
"ssid": { "ssid": {
"description": "Network name", "description": "Network name",
"label": "SSID" "label": "SSID (Nombre la Red)"
}, },
"subnet": { "subnet": {
"description": "Subnet Mask", "description": "Subnet Mask",
"label": "Subnet" "label": "Subred"
}, },
"wifiEnabled": { "wifiEnabled": {
"description": "Enable or disable the WiFi radio", "description": "Enable or disable the WiFi radio",
"label": "Enabled" "label": "Habilitado"
}, },
"meshViaUdp": { "meshViaUdp": {
"label": "Mesh via UDP" "label": "Mesh via UDP"
@ -328,7 +328,7 @@
"hdopVdop": "If DOP is set, use HDOP / VDOP values instead of PDOP", "hdopVdop": "If DOP is set, use HDOP / VDOP values instead of PDOP",
"numSatellites": "Number of satellites", "numSatellites": "Number of satellites",
"sequenceNumber": "Sequence number", "sequenceNumber": "Sequence number",
"timestamp": "Timestamp", "timestamp": "Fecha",
"unset": "Sin configurar", "unset": "Sin configurar",
"vehicleHeading": "Vehicle heading", "vehicleHeading": "Vehicle heading",
"vehicleSpeed": "Vehicle speed" "vehicleSpeed": "Vehicle speed"
@ -357,7 +357,7 @@
}, },
"powerSavingEnabled": { "powerSavingEnabled": {
"description": "Select if powered from a low-current source (i.e. solar), to minimize power consumption as much as possible.", "description": "Select if powered from a low-current source (i.e. solar), to minimize power consumption as much as possible.",
"label": "Enable power saving mode" "label": "Activar el modo ahorro de energía"
}, },
"shutdownOnBatteryDelay": { "shutdownOnBatteryDelay": {
"description": "Automatically shutdown node after this long when on battery, 0 for indefinite", "description": "Automatically shutdown node after this long when on battery, 0 for indefinite",
@ -369,7 +369,7 @@
}, },
"powerConfigSettings": { "powerConfigSettings": {
"description": "Settings for the power module", "description": "Settings for the power module",
"label": "Power Config" "label": "Configuración de elecenergía "
}, },
"sleepSettings": { "sleepSettings": {
"description": "Sleep settings for the power module", "description": "Sleep settings for the power module",

27
packages/web/public/i18n/locales/es-ES/dialog.json

@ -7,7 +7,13 @@
"description": "The Device will restart once the config is saved.", "description": "The Device will restart once the config is saved.",
"longName": "Long Name", "longName": "Long Name",
"shortName": "Short Name", "shortName": "Short Name",
"title": "Change Device Name" "title": "Change Device Name",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "The current LoRa configuration will be overridden.", "description": "The current LoRa configuration will be overridden.",
@ -21,9 +27,10 @@
"title": "Import Channel Set" "title": "Import Channel Set"
}, },
"locationResponse": { "locationResponse": {
"title": "Location: {{identifier}}",
"altitude": "Altitude: ", "altitude": "Altitude: ",
"coordinates": "Coordinates: ", "coordinates": "Coordinates: ",
"title": "Location: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?", "title": "Regenerate Pre-Shared Key?",
@ -36,10 +43,10 @@
"http": "http", "http": "http",
"tabHttp": "HTTP", "tabHttp": "HTTP",
"tabBluetooth": "Bluetooth", "tabBluetooth": "Bluetooth",
"tabSerial": "Serial", "tabSerial": "Conexión Serial",
"useHttps": "Use HTTPS", "useHttps": "Use HTTPS",
"connecting": "Connecting...", "connecting": "Connecting...",
"connect": "Connect", "connect": "Conectar",
"connectionFailedAlert": { "connectionFailedAlert": {
"title": "Connection Failed", "title": "Connection Failed",
"descriptionPrefix": "Could not connect to the device. ", "descriptionPrefix": "Could not connect to the device. ",
@ -60,11 +67,15 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "New device" "newDeviceButton": "New device",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "This connection type requires <0></0>. Please use a supported browser, like Chrome or Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.", "requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.",
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost." "additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
} }
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Yes, I know what I'm doing", "confirmUnderstanding": "Yes, I know what I'm doing",
"title": "¿Estás seguro?", "title": "¿Estás seguro?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

2
packages/web/public/i18n/locales/es-ES/messages.json

@ -16,7 +16,7 @@
}, },
"actionsMenu": { "actionsMenu": {
"addReactionLabel": "Add Reaction", "addReactionLabel": "Add Reaction",
"replyLabel": "Reply" "replyLabel": "Respuesta"
}, },
"deliveryStatus": { "deliveryStatus": {
"delivered": { "delivered": {

34
packages/web/public/i18n/locales/es-ES/moduleConfig.json

@ -1,17 +1,17 @@
{ {
"page": { "page": {
"tabAmbientLighting": "Ambient Lighting", "tabAmbientLighting": "Luz Ambiental",
"tabAudio": "Audio", "tabAudio": "Audio",
"tabCannedMessage": "Canned", "tabCannedMessage": "Canned",
"tabDetectionSensor": "Detection Sensor", "tabDetectionSensor": "Sensor de Presencia",
"tabExternalNotification": "Ext Notif", "tabExternalNotification": "Ext Notif",
"tabMqtt": "MQTT", "tabMqtt": "MQTT",
"tabNeighborInfo": "Neighbor Info", "tabNeighborInfo": "Información de Vecinos",
"tabPaxcounter": "Paxcounter", "tabPaxcounter": "Contador de Paquetes",
"tabRangeTest": "Range Test", "tabRangeTest": "Test de Alcance",
"tabSerial": "Serial", "tabSerial": "Conexión Serial",
"tabStoreAndForward": "S&F", "tabStoreAndForward": "S&F",
"tabTelemetry": "Telemetry" "tabTelemetry": "Telemetría"
}, },
"ambientLighting": { "ambientLighting": {
"title": "Ambient Lighting Settings", "title": "Ambient Lighting Settings",
@ -25,15 +25,15 @@
"description": "Sets the current for the LED output. Default is 10" "description": "Sets the current for the LED output. Default is 10"
}, },
"red": { "red": {
"label": "Red", "label": "Rojo",
"description": "Sets the red LED level. Values are 0-255" "description": "Sets the red LED level. Values are 0-255"
}, },
"green": { "green": {
"label": "Green", "label": "Verde",
"description": "Sets the green LED level. Values are 0-255" "description": "Sets the green LED level. Values are 0-255"
}, },
"blue": { "blue": {
"label": "Blue", "label": "Azul",
"description": "Sets the blue LED level. Values are 0-255" "description": "Sets the blue LED level. Values are 0-255"
} }
}, },
@ -121,7 +121,7 @@
"title": "Detection Sensor Settings", "title": "Detection Sensor Settings",
"description": "Settings for the Detection Sensor module", "description": "Settings for the Detection Sensor module",
"enabled": { "enabled": {
"label": "Enabled", "label": "Habilitado",
"description": "Enable or disable Detection Sensor Module" "description": "Enable or disable Detection Sensor Module"
}, },
"minimumBroadcastSecs": { "minimumBroadcastSecs": {
@ -221,7 +221,7 @@
"title": "MQTT Settings", "title": "MQTT Settings",
"description": "Settings for the MQTT module", "description": "Settings for the MQTT module",
"enabled": { "enabled": {
"label": "Enabled", "label": "Habilitado",
"description": "Enable or disable MQTT" "description": "Enable or disable MQTT"
}, },
"address": { "address": {
@ -297,7 +297,7 @@
"title": "Neighbor Info Settings", "title": "Neighbor Info Settings",
"description": "Settings for the Neighbor Info module", "description": "Settings for the Neighbor Info module",
"enabled": { "enabled": {
"label": "Enabled", "label": "Habilitado",
"description": "Enable or disable Neighbor Info Module" "description": "Enable or disable Neighbor Info Module"
}, },
"updateInterval": { "updateInterval": {
@ -389,11 +389,11 @@
"description": "Enable Store & Forward heartbeat" "description": "Enable Store & Forward heartbeat"
}, },
"records": { "records": {
"label": "Number of records", "label": "Número de registros",
"description": "Number of records to store" "description": "Number of records to store"
}, },
"historyReturnMax": { "historyReturnMax": {
"label": "History return max", "label": "Historial máximo devuelto",
"description": "Max number of records to return" "description": "Max number of records to return"
}, },
"historyReturnWindow": { "historyReturnWindow": {
@ -406,10 +406,10 @@
"description": "Settings for the Telemetry module", "description": "Settings for the Telemetry module",
"deviceUpdateInterval": { "deviceUpdateInterval": {
"label": "Device Metrics", "label": "Device Metrics",
"description": "Device metrics update interval (seconds)" "description": "Periodo entre las actualizaciones de las medidas del dispositivo (segundos) "
}, },
"environmentUpdateInterval": { "environmentUpdateInterval": {
"label": "Environment metrics update interval (seconds)", "label": "Periodo de refresco para las medidas del entorno",
"description": "" "description": ""
}, },
"environmentMeasurementEnabled": { "environmentMeasurementEnabled": {

8
packages/web/public/i18n/locales/es-ES/ui.json

@ -7,7 +7,7 @@
"radioConfig": "Radio Config", "radioConfig": "Radio Config",
"moduleConfig": "Module Config", "moduleConfig": "Module Config",
"channels": "Canales", "channels": "Canales",
"nodes": "Nodes" "nodes": "Nodos"
}, },
"app": { "app": {
"title": "Meshtastic", "title": "Meshtastic",
@ -23,7 +23,7 @@
"deviceInfo": { "deviceInfo": {
"volts": "{{voltage}} volts", "volts": "{{voltage}} volts",
"firmware": { "firmware": {
"title": "Firmware", "title": "Software",
"version": "v{{version}}", "version": "v{{version}}",
"buildDate": "Build date: {{date}}" "buildDate": "Build date: {{date}}"
}, },
@ -108,7 +108,7 @@
"label": "Copy to clipboard" "label": "Copy to clipboard"
}, },
"hidePassword": { "hidePassword": {
"label": "Hide password" "label": "Ocultar contraseña"
}, },
"showPassword": { "showPassword": {
"label": "Mostrar contraseña" "label": "Mostrar contraseña"
@ -130,7 +130,7 @@
"label": "Metrics" "label": "Metrics"
}, },
"role": { "role": {
"label": "Role" "label": "Rol"
}, },
"filter": { "filter": {
"label": "Filtro" "label": "Filtro"

97
packages/web/public/i18n/locales/fi-FI/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "Tuloksia ei löytynyt.", "emptyState": "Tuloksia ei löytynyt.",
"page": { "page": {
"title": "Komentovalikko" "title": "Komentovalikko"
}, },
"pinGroup": { "pinGroup": {
"label": "Kiinnitä komentoryhmä" "label": "Kiinnitä komentoryhmä"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Irroita komentoryhmä" "label": "Irroita komentoryhmä"
}, },
"goto": { "goto": {
"label": "Siirry", "label": "Siirry",
"command": { "command": {
"messages": "Viestit", "messages": "Viestit",
"map": "Kartta", "map": "Kartta",
"config": "Asetukset", "config": "Asetukset",
"channels": "Kanavat", "channels": "Kanavat",
"nodes": "Laitteet" "nodes": "Laitteet"
} }
}, },
"manage": { "manage": {
"label": "Hallinnoi", "label": "Hallinnoi",
"command": { "command": {
"switchNode": "Vaihda laitetta", "switchNode": "Vaihda laitetta",
"connectNewNode": "Yhdistä uusi laite" "connectNewNode": "Yhdistä uusi laite"
} }
}, },
"contextual": { "contextual": {
"label": "Kontekstin mukainen", "label": "Kontekstin mukainen",
"command": { "command": {
"qrCode": "QR-koodi", "qrCode": "QR-koodi",
"qrGenerator": "QR-koodigeneraattori", "qrGenerator": "QR-koodigeneraattori",
"qrImport": "Tuo", "qrImport": "Tuo",
"scheduleShutdown": "Ajasta sammutus", "scheduleShutdown": "Ajasta sammutus",
"scheduleReboot": "Ajasta uudelleenkäynnistys", "scheduleReboot": "Ajasta uudelleenkäynnistys",
"rebootToOtaMode": "Uudelleenkäynnistä OTA-tilaan", "rebootToOtaMode": "Uudelleenkäynnistä OTA-tilaan",
"resetNodeDb": "Nollaa laitteen DB-tietokanta", "resetNodeDb": "Nollaa laitteen DB-tietokanta",
"factoryResetDevice": "Palauta tehdasasetukset", "factoryResetDevice": "Palauta tehdasasetukset",
"factoryResetConfig": "Tehdasasetusten palautusasetukset" "factoryResetConfig": "Tehdasasetusten palautusasetukset",
} "disconnect": "Katkaise yhteys"
}, }
"debug": { },
"label": "Vianetsintä", "debug": {
"command": { "label": "Vianetsintä",
"reconfigure": "Määritä uudelleen", "command": {
"clearAllStoredMessages": "Tyhjennä kaikki tallennetut viesti" "reconfigure": "Määritä uudelleen",
} "clearAllStoredMessages": "Tyhjennä kaikki tallennetut viesti"
} }
}
} }

23
packages/web/public/i18n/locales/fi-FI/dialog.json

@ -7,7 +7,13 @@
"description": "Laite käynnistyy uudelleen, kun asetus on tallennettu.", "description": "Laite käynnistyy uudelleen, kun asetus on tallennettu.",
"longName": "Pitkä nimi", "longName": "Pitkä nimi",
"shortName": "Lyhytnimi", "shortName": "Lyhytnimi",
"title": "Vaihda laitteen nimi" "title": "Vaihda laitteen nimi",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "Nykyinen LoRa-asetus ylikirjoitetaan.", "description": "Nykyinen LoRa-asetus ylikirjoitetaan.",
@ -21,9 +27,10 @@
"title": "Tuo kanava-asetukset" "title": "Tuo kanava-asetukset"
}, },
"locationResponse": { "locationResponse": {
"title": "Sijainti: {{identifier}}",
"altitude": "Korkeus: ", "altitude": "Korkeus: ",
"coordinates": "Koordinaatit: ", "coordinates": "Koordinaatit: ",
"title": "Sijainti: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Luodaanko ennalta jaettu avain uudelleen?", "title": "Luodaanko ennalta jaettu avain uudelleen?",
@ -60,11 +67,15 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "Yhtään laitetta ei ole vielä yhdistetty.", "noDevicesPaired": "Yhtään laitetta ei ole vielä yhdistetty.",
"newDeviceButton": "Uusi laite" "newDeviceButton": "Uusi laite",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "Tämä yhteystyyppi vaatii <0>Web-sarjaportti bluetooth</0> -tuen. Käytä tuettua selainta, kuten Chromea tai Edgeä.", "requiresFeatures": "Tämä yhteystyyppi vaatii <0></0>. Käytä tuettua selainta, kuten Chromea tai Edgeä.",
"requiresWebSerial": "Tämä yhteystyyppi vaatii <0>Web-sarjaportti</0> -tuen. Käytä tuettua selainta, kuten Chromea tai Edgeä.",
"requiresSecureContext": "Tämä sovellus vaatii <0>suojatun yhteyden</0>. Yhdistä käyttämällä HTTPS:ää tai localhostia.", "requiresSecureContext": "Tämä sovellus vaatii <0>suojatun yhteyden</0>. Yhdistä käyttämällä HTTPS:ää tai localhostia.",
"additionallyRequiresSecureContext": "Lisäksi se vaatii <0>suojatun yhteyden</0>. Yhdistä käyttämällä HTTPS:ää tai localhostia." "additionallyRequiresSecureContext": "Lisäksi se vaatii <0>suojatun yhteyden</0>. Yhdistä käyttämällä HTTPS:ää tai localhostia."
} }
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Kyllä, tiedän mitä teen", "confirmUnderstanding": "Kyllä, tiedän mitä teen",
"title": "Oletko varma?", "title": "Oletko varma?",
"description": "Hallintatilan käyttöönotto estää asiakassovelluksia (mukaan lukien verkkosovellus) kirjoittamasta asetuksia radioon. Kun tila on otettu käyttöön, radion asetuksia voidaan muuttaa <bold>vain</bold> etähallintaviestien kautta. Tämä asetus ei ole pakollinen etähallittavien laitteiden hallintaan." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

80
packages/web/public/i18n/locales/fr-FR/channels.json

@ -1,69 +1,69 @@
{ {
"page": { "page": {
"sectionLabel": "Canaux", "sectionLabel": "Canaux",
"channelName": "Channel: {{channelName}}", "channelName": "Canal {{channelName}}",
"broadcastLabel": "Principal", "broadcastLabel": "Principal",
"channelIndex": "Ch {{index}}" "channelIndex": "Ca {{index}}"
}, },
"validation": { "validation": {
"pskInvalid": "Please enter a valid {{bits}} bit PSK." "pskInvalid": "Veuillez entrer une clé PSK valide de {{bits}} bits."
}, },
"settings": { "settings": {
"label": "Paramètres du canal", "label": "Paramètres du canal",
"description": "Crypto, MQTT & misc settings" "description": "Paramètres Crypto, MQTT et divers"
}, },
"role": { "role": {
"label": "Rôle", "label": "Rôle",
"description": "Device telemetry is sent over PRIMARY. Only one PRIMARY allowed", "description": "La télémétrie de l’appareil est envoyée via le canal PRINCIPAL. Un seul canal PRINCIPAL est autorisé.",
"options": { "options": {
"primary": "PRIMARY", "primary": "PRINCIPAL",
"disabled": "DISABLED", "disabled": "DÉSACTIVÉ",
"secondary": "SECONDARY" "secondary": "SECONDAIRE"
} }
}, },
"psk": { "psk": {
"label": "Pre-Shared Key", "label": "Clé partagée",
"description": "Supported PSK lengths: 256-bit, 128-bit, 8-bit, Empty (0-bit)", "description": "Longueurs de clé PSK prises en charge : 256 bits, 128 bits, 8 bits, vide (0 bit)",
"generate": "Generate" "generate": "Générer"
}, },
"name": { "name": {
"label": "Nom", "label": "Nom",
"description": "A unique name for the channel <12 bytes, leave blank for default" "description": "Un nom unique pour le canal (<12 octets), laisser vide pour utiliser la valeur par défaut"
}, },
"uplinkEnabled": { "uplinkEnabled": {
"label": "Uplink Enabled", "label": "Liaison montante activée",
"description": "Send messages from the local mesh to MQTT" "description": "Envoyer les messages du maillage local vers MQTT"
}, },
"downlinkEnabled": { "downlinkEnabled": {
"label": "Downlink Enabled", "label": "Liaison descendante activée",
"description": "Send messages from MQTT to the local mesh" "description": "Envoyer les messages de MQTT vers le maillage local"
}, },
"positionPrecision": { "positionPrecision": {
"label": "Location", "label": "Position",
"description": "The precision of the location to share with the channel. Can be disabled.", "description": "La précision de la position à partager avec le canal. Peut être désactivée.",
"options": { "options": {
"none": "Do not share location", "none": "Ne pas partager la position",
"precise": "Precise Location", "precise": "Position précise",
"metric_km23": "Within 23 kilometers", "metric_km23": "À moins de 23 kilomètres",
"metric_km12": "Within 12 kilometers", "metric_km12": "À moins de 12 kilomètres",
"metric_km5_8": "Within 5.8 kilometers", "metric_km5_8": "À moins de 5,8 kilomètres",
"metric_km2_9": "Within 2.9 kilometers", "metric_km2_9": "À moins de 2,9 kilomètres",
"metric_km1_5": "Within 1.5 kilometers", "metric_km1_5": "À moins de 1,5 kilomètres",
"metric_m700": "Within 700 meters", "metric_m700": "À moins de 700 mètres",
"metric_m350": "Within 350 meters", "metric_m350": "À moins de 350 mètres",
"metric_m200": "Within 200 meters", "metric_m200": "À moins de 200 mètres",
"metric_m90": "Within 90 meters", "metric_m90": "À moins de 90 mètres",
"metric_m50": "Within 50 meters", "metric_m50": "À moins de 50 mètres",
"imperial_mi15": "Within 15 miles", "imperial_mi15": "À moins de 15 miles",
"imperial_mi7_3": "Within 7.3 miles", "imperial_mi7_3": "À moins de 7,3 miles",
"imperial_mi3_6": "Within 3.6 miles", "imperial_mi3_6": "À moins de 3,6 miles",
"imperial_mi1_8": "Within 1.8 miles", "imperial_mi1_8": "À moins de 1,8 miles",
"imperial_mi0_9": "Within 0.9 miles", "imperial_mi0_9": "À moins de 0,9 miles",
"imperial_mi0_5": "Within 0.5 miles", "imperial_mi0_5": "À moins de 0,5 miles",
"imperial_mi0_2": "Within 0.2 miles", "imperial_mi0_2": "À moins de 0,2 miles",
"imperial_ft600": "Within 600 feet", "imperial_ft600": "À moins de 600 pieds",
"imperial_ft300": "Within 300 feet", "imperial_ft300": "À moins de 300 pieds",
"imperial_ft150": "Within 150 feet" "imperial_ft150": "À moins de 150 pieds"
} }
} }
} }

97
packages/web/public/i18n/locales/fr-FR/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "No results found.", "emptyState": "Aucun résultat trouvé.",
"page": { "page": {
"title": "Command Menu" "title": "Menu des commandes"
}, },
"pinGroup": { "pinGroup": {
"label": "Pin command group" "label": "Attacher le groupe de commandes"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Unpin command group" "label": "Détacher le groupe de commandes"
}, },
"goto": { "goto": {
"label": "Goto", "label": "Aller à",
"command": { "command": {
"messages": "Messages", "messages": "Messages",
"map": "Carte", "map": "Carte",
"config": "Config", "config": "Config",
"channels": "Canaux", "channels": "Canaux",
"nodes": "Noeuds" "nodes": "Noeuds"
} }
}, },
"manage": { "manage": {
"label": "Manage", "label": "Gérer",
"command": { "command": {
"switchNode": "Switch Node", "switchNode": "Changer de nœud ",
"connectNewNode": "Connect New Node" "connectNewNode": "Connecter un nouveau noeud"
} }
}, },
"contextual": { "contextual": {
"label": "Contextual", "label": "Contextuel",
"command": { "command": {
"qrCode": "QR Code", "qrCode": "Code QR",
"qrGenerator": "Generator", "qrGenerator": "Générateur",
"qrImport": "Import", "qrImport": "Importer",
"scheduleShutdown": "Schedule Shutdown", "scheduleShutdown": "Planifier l'arrêt",
"scheduleReboot": "Schedule Reboot", "scheduleReboot": "Effacer tous les messages stockés",
"rebootToOtaMode": "Reboot To OTA Mode", "rebootToOtaMode": "Redémarrer en mode OTA",
"resetNodeDb": "Reset Node DB", "resetNodeDb": "Réinitialiser la DB des nœuds",
"factoryResetDevice": "Factory Reset Device", "factoryResetDevice": "Réinitialisation d'usine de l'appareil",
"factoryResetConfig": "Factory Reset Config" "factoryResetConfig": "Réinitialisation d'usine de la config",
} "disconnect": "Déconnecter"
}, }
"debug": { },
"label": "Debug", "debug": {
"command": { "label": "Debug",
"reconfigure": "Reconfigure", "command": {
"clearAllStoredMessages": "Clear All Stored Message" "reconfigure": "Reconfigurer",
} "clearAllStoredMessages": "Effacer tous les messages stockés"
} }
}
} }

126
packages/web/public/i18n/locales/fr-FR/common.json

@ -1,55 +1,55 @@
{ {
"button": { "button": {
"apply": "Appliquer", "apply": "Appliquer",
"backupKey": "Backup Key", "backupKey": "Clé de sauvegarde",
"cancel": "Annuler", "cancel": "Annuler",
"clearMessages": "Clear Messages", "clearMessages": "Effacer les messages",
"close": "Fermer", "close": "Fermer",
"confirm": "Confirm", "confirm": "Confirmer",
"delete": "Effacer", "delete": "Effacer",
"dismiss": "Annuler", "dismiss": "Annuler",
"download": "Download", "download": "Télécharger",
"export": "Export", "export": "Exporter",
"generate": "Generate", "generate": "Générer",
"regenerate": "Regenerate", "regenerate": "Regénérer",
"import": "Import", "import": "Importer",
"message": "Message", "message": "Message",
"now": "Now", "now": "Maintenant",
"ok": "D'accord", "ok": "D'accord",
"print": "Print", "print": "Imprimer",
"rebootOtaNow": "Reboot to OTA Mode Now", "rebootOtaNow": "Redémarrer en mode OTA",
"remove": "Supprimer", "remove": "Supprimer",
"requestNewKeys": "Request New Keys", "requestNewKeys": "Demander de nouvelles clés",
"requestPosition": "Request Position", "requestPosition": "Demander la position",
"reset": "Réinitialiser", "reset": "Réinitialiser",
"save": "Sauvegarder", "save": "Sauvegarder",
"scanQr": "Scan QR Code", "scanQr": "Scanner le code QR",
"traceRoute": "Trace Route", "traceRoute": "Analyse du trajet réseau",
"submit": "Submit" "submit": "Envoyer"
}, },
"app": { "app": {
"title": "Meshtastic", "title": "Meshtastic",
"fullTitle": "Meshtastic Web Client" "fullTitle": "Client Web Meshtastic"
}, },
"loading": "Loading...", "loading": "Chargement...",
"unit": { "unit": {
"cps": "CPS", "cps": "CPS",
"dbm": "dBm", "dbm": "dBm",
"hertz": "Hz", "hertz": "Hz",
"hop": { "hop": {
"one": "Hop", "one": "Saut",
"plural": "Hops" "plural": "Sauts"
}, },
"hopsAway": { "hopsAway": {
"one": "{{count}} hop away", "one": "À {{count}} saut",
"plural": "{{count}} hops away", "plural": "À {{count}} sauts",
"unknown": "Unknown hops away" "unknown": "Nombre de sauts inconnu"
}, },
"megahertz": "MHz", "megahertz": "MHz",
"raw": "raw", "raw": "brute",
"meter": { "meter": {
"one": "Meter", "one": "Mètre",
"plural": "Meters", "plural": "Mètres",
"suffix": "m" "suffix": "m"
}, },
"minute": { "minute": {
@ -57,29 +57,29 @@
"plural": "Minutes" "plural": "Minutes"
}, },
"hour": { "hour": {
"one": "Hour", "one": "Heure",
"plural": "Hours" "plural": "Heures"
}, },
"millisecond": { "millisecond": {
"one": "Millisecond", "one": "Milliseconde",
"plural": "Milliseconds", "plural": "Millisecondes",
"suffix": "ms" "suffix": "ms"
}, },
"second": { "second": {
"one": "Second", "one": "Seconde",
"plural": "Seconds" "plural": "Secondes"
}, },
"day": { "day": {
"one": "Day", "one": "Jour",
"plural": "Days" "plural": "Jours"
}, },
"month": { "month": {
"one": "Month", "one": "Mois",
"plural": "Months" "plural": "Mois"
}, },
"year": { "year": {
"one": "Year", "one": "Année",
"plural": "Years" "plural": "Années"
}, },
"snr": "SNR", "snr": "SNR",
"volt": { "volt": {
@ -88,54 +88,54 @@
"suffix": "V" "suffix": "V"
}, },
"record": { "record": {
"one": "Records", "one": "Enregistrement",
"plural": "Records" "plural": "Enregistrements"
} }
}, },
"security": { "security": {
"0bit": "Empty", "0bit": "Vide",
"8bit": "8 bit", "8bit": "8 bits",
"128bit": "128 bit", "128bit": "128 bits",
"256bit": "256 bit" "256bit": "256 bits"
}, },
"unknown": { "unknown": {
"longName": "Inconnu", "longName": "Inconnu",
"shortName": "UNK", "shortName": "UNK",
"notAvailable": "N/A", "notAvailable": "Indisponible",
"num": "??" "num": "??"
}, },
"nodeUnknownPrefix": "!", "nodeUnknownPrefix": "!",
"unset": "UNSET", "unset": "DÉSACTIVER",
"fallbackName": "Meshtastic {{last4}}", "fallbackName": "Meshtastic {{last4}}",
"node": "Node", "node": "Noeud",
"formValidation": { "formValidation": {
"unsavedChanges": "Unsaved changes", "unsavedChanges": "Modifications non enregistrées",
"tooBig": { "tooBig": {
"string": "Too long, expected less than or equal to {{maximum}} characters.", "string": "Trop long : {{maximum}} caractères maximum autorisés.",
"number": "Too big, expected a number smaller than or equal to {{maximum}}.", "number": "Trop grand, un nombre inférieur ou égal à {{maximum}} est attendu.",
"bytes": "Too big, expected less than or equal to {{params.maximum}} bytes." "bytes": "Taille trop grand : maximum {{params.maximum}} octets autorisés."
}, },
"tooSmall": { "tooSmall": {
"string": "Too short, expected more than or equal to {{minimum}} characters.", "string": "Trop court : au moins {{minimum}} caractères requis.",
"number": "Too small, expected a number larger than or equal to {{minimum}}." "number": "Valeur trop basse : minimum {{minimum}} requis."
}, },
"invalidFormat": { "invalidFormat": {
"ipv4": "Invalid format, expected an IPv4 address.", "ipv4": "Format invalide, adresse IPv4 attendue.",
"key": "Invalid format, expected a Base64 encoded pre-shared key (PSK)." "key": "Format incorrect, la clé PSK doit être encodée en Base64."
}, },
"invalidType": { "invalidType": {
"number": "Invalid type, expected a number." "number": "Type incorrect, nombre attendu."
}, },
"pskLength": { "pskLength": {
"0bit": "Key is required to be empty.", "0bit": "La clé doit être vide.",
"8bit": "Key is required to be an 8 bit pre-shared key (PSK).", "8bit": "La clé doit être une clé pré-partagée (PSK) de 8 bits.",
"128bit": "Key is required to be a 128 bit pre-shared key (PSK).", "128bit": "La clé doit être une clé pré-partagée (PSK) de 128 bits.",
"256bit": "Key is required to be a 256 bit pre-shared key (PSK)." "256bit": "La clé doit être une clé pré-partagée (PSK) de 256 bits."
}, },
"required": { "required": {
"generic": "This field is required.", "generic": "Ce champ est obligatoire.",
"managed": "At least one admin key is requred if the node is managed.", "managed": "Au moins une clé d’administration est requise si le nœud est géré.",
"key": "Key is required." "key": "Clé requise."
} }
} }
} }

10
packages/web/public/i18n/locales/fr-FR/dashboard.json

@ -1,12 +1,12 @@
{ {
"dashboard": { "dashboard": {
"title": "Connected Devices", "title": "Appareils connectés",
"description": "Manage your connected Meshtastic devices.", "description": "Gérez vos périphériques Meshtastic connectés.",
"connectionType_ble": "BLE", "connectionType_ble": "BLE",
"connectionType_serial": "Série", "connectionType_serial": "Série",
"connectionType_network": "Réseau", "connectionType_network": "Réseau",
"noDevicesTitle": "No devices connected", "noDevicesTitle": "Aucun appareil connecté",
"noDevicesDescription": "Connect a new device to get started.", "noDevicesDescription": "Connectez un nouvel appareil pour commencer.",
"button_newConnection": "New Connection" "button_newConnection": "Nouvelle connexion"
} }
} }

368
packages/web/public/i18n/locales/fr-FR/deviceConfig.json

@ -14,147 +14,147 @@
"label": "Modules" "label": "Modules"
}, },
"device": { "device": {
"title": "Device Settings", "title": "Paramètres de l'appareil",
"description": "Settings for the device", "description": "Paramètres de l'appareil",
"buttonPin": { "buttonPin": {
"description": "Button pin override", "description": "Redéfinition de la broche du bouton",
"label": "Button Pin" "label": "Broche du bouton"
}, },
"buzzerPin": { "buzzerPin": {
"description": "Buzzer pin override", "description": "Redéfinition de la broche du buzzer",
"label": "Buzzer Pin" "label": "Broche du buzzer"
}, },
"disableTripleClick": { "disableTripleClick": {
"description": "Disable triple click", "description": "Désactiver le triple clic",
"label": "Disable Triple Click" "label": "Désactiver le triple clic"
}, },
"doubleTapAsButtonPress": { "doubleTapAsButtonPress": {
"description": "Treat double tap as button press", "description": "Considérer le double tapotement comme un appui sur le bouton",
"label": "Double Tap as Button Press" "label": "Double tapotement comme appui bouton"
}, },
"ledHeartbeatDisabled": { "ledHeartbeatDisabled": {
"description": "Disable default blinking LED", "description": "Désactiver le clignotement LED par défaut",
"label": "LED Heartbeat Disabled" "label": "Clignotement LED désactivé"
}, },
"nodeInfoBroadcastInterval": { "nodeInfoBroadcastInterval": {
"description": "How often to broadcast node info", "description": "Fréquence de diffusion des informations du nœud",
"label": "Node Info Broadcast Interval" "label": "Intervalle de diffusion des infos nœud"
}, },
"posixTimezone": { "posixTimezone": {
"description": "The POSIX timezone string for the device", "description": "Chaîne de fuseau horaire POSIX pour l'appareil",
"label": "Zone horaire POSIX" "label": "Zone horaire POSIX"
}, },
"rebroadcastMode": { "rebroadcastMode": {
"description": "How to handle rebroadcasting", "description": "Mode de réémission des messages",
"label": "Rebroadcast Mode" "label": "Mode de réémission"
}, },
"role": { "role": {
"description": "What role the device performs on the mesh", "description": "Rôle de l'appareil dans le réseau mesh",
"label": "Rôle" "label": "Rôle"
} }
}, },
"bluetooth": { "bluetooth": {
"title": "Bluetooth Settings", "title": "Paramètres Bluetooth",
"description": "Settings for the Bluetooth module", "description": "Paramètres du module Bluetooth",
"note": "Note: Some devices (ESP32) cannot use both Bluetooth and WiFi at the same time.", "note": "Note: Certains appareils (ESP32) ne peuvent pas utiliser à la fois Bluetooth et WiFi en même temps.",
"enabled": { "enabled": {
"description": "Enable or disable Bluetooth", "description": "Activer ou désactiver le Bluetooth",
"label": "Activé" "label": "Activé"
}, },
"pairingMode": { "pairingMode": {
"description": "Pin selection behaviour.", "description": "Titre en gras",
"label": "Mode d'appariement" "label": "Mode d'appariement"
}, },
"pin": { "pin": {
"description": "Pin to use when pairing", "description": "Broche utilisée pour l'appairage",
"label": "Pin" "label": "Broche"
} }
}, },
"display": { "display": {
"description": "Settings for the device display", "description": "Paramètres d'affichage de l'appareil",
"title": "Display Settings", "title": "Paramètres d'affichage",
"headingBold": { "headingBold": {
"description": "Bolden the heading text", "description": "Mettre le titre en gras",
"label": "Bold Heading" "label": "Titre en gras"
}, },
"carouselDelay": { "carouselDelay": {
"description": "How fast to cycle through windows", "description": "Vitesse de défilement des fenêtres",
"label": "Carousel Delay" "label": "Délai du carrousel"
}, },
"compassNorthTop": { "compassNorthTop": {
"description": "Fix north to the top of compass", "description": "Fixer le nord en haut de la boussole",
"label": "Compass North Top" "label": "Nord en haut de la boussole"
}, },
"displayMode": { "displayMode": {
"description": "Screen layout variant", "description": "Variante de disposition d'affichage",
"label": "Display Mode" "label": "Mode d'affichage"
}, },
"displayUnits": { "displayUnits": {
"description": "Display metric or imperial units", "description": "Afficher en unités métriques ou impériales",
"label": "Display Units" "label": "Unités affichées"
}, },
"flipScreen": { "flipScreen": {
"description": "Flip display 180 degrees", "description": "Faire pivoter l'affichage de 180 degrés",
"label": "Flip Screen" "label": "Faire pivoter l'écran"
}, },
"gpsDisplayUnits": { "gpsDisplayUnits": {
"description": "Coordinate display format", "description": "Format d'affichage des coordonnées",
"label": "GPS Display Units" "label": "Unités GPS"
}, },
"oledType": { "oledType": {
"description": "Type of OLED screen attached to the device", "description": "Type d'écran OLED connecté à l'appareil",
"label": "OLED Type" "label": "Type d'OLED"
}, },
"screenTimeout": { "screenTimeout": {
"description": "Turn off the display after this long", "description": "Temps avant extinction de l'écran",
"label": "Screen Timeout" "label": "Délai d'extinction de l'écran"
}, },
"twelveHourClock": { "twelveHourClock": {
"description": "Use 12-hour clock format", "description": "Utiliser le format horaire 12 heures",
"label": "12-Hour Clock" "label": "Horloge 12 h"
}, },
"wakeOnTapOrMotion": { "wakeOnTapOrMotion": {
"description": "Wake the device on tap or motion", "description": "Réveiller l'appareil en cas de tapotement ou de mouvement",
"label": "Wake on Tap or Motion" "label": "Réveil par tapotement ou mouvement"
} }
}, },
"lora": { "lora": {
"title": "Mesh Settings", "title": "Paramètres maillage",
"description": "Settings for the LoRa mesh", "description": "Paramètres du réseau maillé LoRa",
"bandwidth": { "bandwidth": {
"description": "Channel bandwidth in MHz", "description": "Largeur de bande du canal en MHz",
"label": "Bande Passante" "label": "Bande Passante"
}, },
"boostedRxGain": { "boostedRxGain": {
"description": "Boosted RX gain", "description": "Gain de réception amplifié",
"label": "Boosted RX Gain" "label": "Gain RX amplifié"
}, },
"codingRate": { "codingRate": {
"description": "The denominator of the coding rate", "description": "Dénominateur du taux de codage",
"label": "Coding Rate" "label": "Taux de codage"
}, },
"frequencyOffset": { "frequencyOffset": {
"description": "Frequency offset to correct for crystal calibration errors", "description": "Décalage de fréquence pour corriger les erreurs d'étalonnage du cristal",
"label": "Frequency Offset" "label": "Décalage de fréquence"
}, },
"frequencySlot": { "frequencySlot": {
"description": "LoRa frequency channel number", "description": "Numéro du canal de fréquence LoRa",
"label": "Frequency Slot" "label": "Slot de fréquence"
}, },
"hopLimit": { "hopLimit": {
"description": "Maximum number of hops", "description": "Nombre maximum de sauts",
"label": "Hop Limit" "label": "Limite de sauts"
}, },
"ignoreMqtt": { "ignoreMqtt": {
"description": "Don't forward MQTT messages over the mesh", "description": "Ne pas transférer les messages MQTT sur le maillage",
"label": "Ignorer MQTT" "label": "Ignorer MQTT"
}, },
"modemPreset": { "modemPreset": {
"description": "Modem preset to use", "description": "Préréglage du modem à utiliser",
"label": "Modem Preset" "label": "Préréglage du modem"
}, },
"okToMqtt": { "okToMqtt": {
"description": "When set to true, this configuration indicates that the user approves the packet to be uploaded to MQTT. If set to false, remote nodes are requested not to forward packets to MQTT", "description": "Si activé, permet la publication du paquet sur MQTT. Sinon, les nœuds distants ne doivent pas relayer les paquets vers MQTT.",
"label": "OK vers MQTT" "label": "OK vers MQTT"
}, },
"overrideDutyCycle": { "overrideDutyCycle": {
@ -162,267 +162,267 @@
"label": "Ne pas prendre en compte la limite d'utilisation" "label": "Ne pas prendre en compte la limite d'utilisation"
}, },
"overrideFrequency": { "overrideFrequency": {
"description": "Override frequency", "description": "Remplacement de la fréquence",
"label": "Override Frequency" "label": "Fréquence personnalisée"
}, },
"region": { "region": {
"description": "Sets the region for your node", "description": "Définit la région pour votre nœud",
"label": "Région" "label": "Région"
}, },
"spreadingFactor": { "spreadingFactor": {
"description": "Indicates the number of chirps per symbol", "description": "Nombre de chirps par symbole",
"label": "Spreading Factor" "label": "Facteur d'étalement"
}, },
"transmitEnabled": { "transmitEnabled": {
"description": "Enable/Disable transmit (TX) from the LoRa radio", "description": "Activer/désactiver l'émission (TX) depuis la radio LoRa",
"label": "Transmit Enabled" "label": "Transmission activée"
}, },
"transmitPower": { "transmitPower": {
"description": "Max transmit power", "description": "Puissance maximale d'émission",
"label": "Transmit Power" "label": "Puissance d'émission"
}, },
"usePreset": { "usePreset": {
"description": "Use one of the predefined modem presets", "description": "Utiliser un des préréglages prédéfinis du modem",
"label": "Use Preset" "label": "Utiliser un préréglage"
}, },
"meshSettings": { "meshSettings": {
"description": "Settings for the LoRa mesh", "description": "Paramètres du maillage LoRa",
"label": "Mesh Settings" "label": "Paramètres du maillage"
}, },
"waveformSettings": { "waveformSettings": {
"description": "Settings for the LoRa waveform", "description": "Paramètres de la forme d’onde LoRa",
"label": "Waveform Settings" "label": "Paramètres de l’onde"
}, },
"radioSettings": { "radioSettings": {
"label": "Radio Settings", "label": "Paramètres radio",
"description": "Settings for the LoRa radio" "description": "Paramètres de la radio LoRa"
} }
}, },
"network": { "network": {
"title": "WiFi Config", "title": "Configuration WiFi",
"description": "WiFi radio configuration", "description": "Configuration de la radio WiFi",
"note": "Note: Some devices (ESP32) cannot use both Bluetooth and WiFi at the same time.", "note": "Remarque : certains appareils (ESP32) ne peuvent pas utiliser simultanément Bluetooth et WiFi.",
"addressMode": { "addressMode": {
"description": "Address assignment selection", "description": "Sélection du mode d’attribution d’adresse",
"label": "Address Mode" "label": "Mode d’adressage"
}, },
"dns": { "dns": {
"description": "DNS Server", "description": "Serveur DNS",
"label": "DNS" "label": "DNS"
}, },
"ethernetEnabled": { "ethernetEnabled": {
"description": "Enable or disable the Ethernet port", "description": "Activer ou désactiver le port Ethernet",
"label": "Activé" "label": "Activé"
}, },
"gateway": { "gateway": {
"description": "Default Gateway", "description": "Passerelle par défaut",
"label": "Passerelle" "label": "Passerelle"
}, },
"ip": { "ip": {
"description": "IP Address", "description": "Adresse IP",
"label": "IP" "label": "IP"
}, },
"psk": { "psk": {
"description": "Network password", "description": "Mot de passe du réseau",
"label": "PSK" "label": "PSK"
}, },
"ssid": { "ssid": {
"description": "Network name", "description": "Nom du réseau",
"label": "SSID" "label": "SSID"
}, },
"subnet": { "subnet": {
"description": "Subnet Mask", "description": "Masque de sous-réseau",
"label": "Sous-réseau" "label": "Sous-réseau"
}, },
"wifiEnabled": { "wifiEnabled": {
"description": "Enable or disable the WiFi radio", "description": "Activer ou désactiver la radio WiFi",
"label": "Activé" "label": "Activé"
}, },
"meshViaUdp": { "meshViaUdp": {
"label": "Mesh via UDP" "label": "Réseau maillé via UDP"
}, },
"ntpServer": { "ntpServer": {
"label": "NTP Server" "label": "Serveur NTP"
}, },
"rsyslogServer": { "rsyslogServer": {
"label": "Rsyslog Server" "label": "Serveur Rsyslog"
}, },
"ethernetConfigSettings": { "ethernetConfigSettings": {
"description": "Ethernet port configuration", "description": "Paramètres du port Ethernet",
"label": "Ethernet Config" "label": "Configuration Ethernet"
}, },
"ipConfigSettings": { "ipConfigSettings": {
"description": "IP configuration", "description": "Paramètres IP",
"label": "IP Config" "label": "Configuration IP"
}, },
"ntpConfigSettings": { "ntpConfigSettings": {
"description": "NTP configuration", "description": "Configuration NTP",
"label": "NTP Config" "label": "Configuration NTP"
}, },
"rsyslogConfigSettings": { "rsyslogConfigSettings": {
"description": "Rsyslog configuration", "description": "Paramètres Rsyslog",
"label": "Rsyslog Config" "label": "Configuration Rsyslog"
}, },
"udpConfigSettings": { "udpConfigSettings": {
"description": "UDP over Mesh configuration", "description": "Configuration du réseau maillé via UDP",
"label": "Configuration UDP" "label": "Configuration UDP"
} }
}, },
"position": { "position": {
"title": "Position Settings", "title": "Paramètres de position",
"description": "Settings for the position module", "description": "Paramètres du module de position",
"broadcastInterval": { "broadcastInterval": {
"description": "How often your position is sent out over the mesh", "description": "Fréquence d’envoi de votre position sur le réseau maillé",
"label": "Broadcast Interval" "label": "Intervalle de diffusion"
}, },
"enablePin": { "enablePin": {
"description": "GPS module enable pin override", "description": "Redéfinition de la broche d’activation du module GPS",
"label": "Enable Pin" "label": "Broche d’activation"
}, },
"fixedPosition": { "fixedPosition": {
"description": "Don't report GPS position, but a manually-specified one", "description": "Ne pas envoyer la position GPS mais une position saisie manuellement",
"label": "Fixed Position" "label": "Position fixe"
}, },
"gpsMode": { "gpsMode": {
"description": "Configure whether device GPS is Enabled, Disabled, or Not Present", "description": "Configuration du GPS : activé, désactivé ou non présent",
"label": "GPS Mode" "label": "Mode GPS"
}, },
"gpsUpdateInterval": { "gpsUpdateInterval": {
"description": "How often a GPS fix should be acquired", "description": "Fréquence d’acquisition d’une position GPS",
"label": "GPS Update Interval" "label": "Intervalle de mise à jour GPS"
}, },
"positionFlags": { "positionFlags": {
"description": "Optional fields to include when assembling position messages. The more fields are selected, the larger the message will be leading to longer airtime usage and a higher risk of packet loss.", "description": "Champs optionnels à inclure dans les messages de position. Plus il y en a, plus le message est grand, augmentant le risque de perte.",
"label": "Position Flags" "label": "Champs de position"
}, },
"receivePin": { "receivePin": {
"description": "GPS module RX pin override", "description": "Redéfinition de la broche RX du module GPS",
"label": "Receive Pin" "label": "Broche de réception"
}, },
"smartPositionEnabled": { "smartPositionEnabled": {
"description": "Only send position when there has been a meaningful change in location", "description": "N’envoyer la position qu’en cas de changement significatif",
"label": "Enable Smart Position" "label": "Activer la position intelligente"
}, },
"smartPositionMinDistance": { "smartPositionMinDistance": {
"description": "Minimum distance (in meters) that must be traveled before a position update is sent", "description": "Distance minimale (en mètres) à parcourir avant envoi de la nouvelle position",
"label": "Smart Position Minimum Distance" "label": "Distance minimale pour mise à jour"
}, },
"smartPositionMinInterval": { "smartPositionMinInterval": {
"description": "Minimum interval (in seconds) that must pass before a position update is sent", "description": "Délai minimal (en secondes) entre deux envois de position",
"label": "Smart Position Minimum Interval" "label": "Intervalle minimal de mise à jour"
}, },
"transmitPin": { "transmitPin": {
"description": "GPS module TX pin override", "description": "Redéfinition de la broche TX du module GPS",
"label": "Transmit Pin" "label": "Broche de transmission"
}, },
"intervalsSettings": { "intervalsSettings": {
"description": "How often to send position updates", "description": "Fréquence d’envoi des mises à jour de position",
"label": "Intervals" "label": "Intervalles"
}, },
"flags": { "flags": {
"placeholder": "Select position flags...", "placeholder": "Sélectionner les champs de position...",
"altitude": "Altitude", "altitude": "Altitude",
"altitudeGeoidalSeparation": "Altitude Geoidal Separation", "altitudeGeoidalSeparation": "Séparation géoïdale de l’altitude",
"altitudeMsl": "Altitude is Mean Sea Level", "altitudeMsl": "Altitude au-dessus du niveau moyen de la mer",
"dop": "Dilution of precision (DOP) PDOP used by default", "dop": "DOP (Dilution de la précision), PDOP utilisé par défaut",
"hdopVdop": "If DOP is set, use HDOP / VDOP values instead of PDOP", "hdopVdop": "Si DOP est activé, utiliser HDOP / VDOP au lieu de PDOP",
"numSatellites": "Number of satellites", "numSatellites": "Nombre de satellites",
"sequenceNumber": "Sequence number", "sequenceNumber": "Numéro de séquence",
"timestamp": "Horodatage", "timestamp": "Horodatage",
"unset": "Désactivé", "unset": "Désactivé",
"vehicleHeading": "Vehicle heading", "vehicleHeading": "Cap du véhicule",
"vehicleSpeed": "Vehicle speed" "vehicleSpeed": "Vitesse du véhicule"
} }
}, },
"power": { "power": {
"adcMultiplierOverride": { "adcMultiplierOverride": {
"description": "Used for tweaking battery voltage reading", "description": "Utilisé pour ajuster la lecture de la tension batterie",
"label": "ADC Multiplier Override ratio" "label": "Coefficient de correction ADC"
}, },
"ina219Address": { "ina219Address": {
"description": "Address of the INA219 battery monitor", "description": "Adresse du moniteur de batterie INA219",
"label": "INA219 Address" "label": "Adresse INA219"
}, },
"lightSleepDuration": { "lightSleepDuration": {
"description": "How long the device will be in light sleep for", "description": "Durée pendant laquelle l'appareil reste en veille légère",
"label": "Light Sleep Duration" "label": "Durée de veille légère"
}, },
"minimumWakeTime": { "minimumWakeTime": {
"description": "Minimum amount of time the device will stay awake for after receiving a packet", "description": "Temps minimal pendant lequel l'appareil reste éveillé après réception d’un paquet",
"label": "Minimum Wake Time" "label": "Temps d’éveil minimal"
}, },
"noConnectionBluetoothDisabled": { "noConnectionBluetoothDisabled": {
"description": "If the device does not receive a Bluetooth connection, the BLE radio will be disabled after this long", "description": "Si aucune connexion Bluetooth n’est reçue, la radio BLE sera désactivée après ce délai",
"label": "No Connection Bluetooth Disabled" "label": "Bluetooth désactivé si non connecté"
}, },
"powerSavingEnabled": { "powerSavingEnabled": {
"description": "Select if powered from a low-current source (i.e. solar), to minimize power consumption as much as possible.", "description": "À activer si l’appareil est alimenté par une source à faible courant (ex. : panneau solaire)..",
"label": "Activer le mode économie d'énergie" "label": "Activer le mode économie d'énergie"
}, },
"shutdownOnBatteryDelay": { "shutdownOnBatteryDelay": {
"description": "Automatically shutdown node after this long when on battery, 0 for indefinite", "description": "Éteindre automatiquement le nœud après ce délai sur batterie, 0 pour indéfini",
"label": "Shutdown on battery delay" "label": "Délai d’extinction sur batterie"
}, },
"superDeepSleepDuration": { "superDeepSleepDuration": {
"description": "How long the device will be in super deep sleep for", "description": "Durée pendant laquelle l’appareil reste en super veille",
"label": "Super Deep Sleep Duration" "label": "Durée de veille profonde"
}, },
"powerConfigSettings": { "powerConfigSettings": {
"description": "Settings for the power module", "description": "Paramètres du module d’alimentation",
"label": "Configuration de l'alimentation" "label": "Configuration de l'alimentation"
}, },
"sleepSettings": { "sleepSettings": {
"description": "Sleep settings for the power module", "description": "Paramètres de veille du module d’alimentation",
"label": "Sleep Settings" "label": "Paramètres de veille"
} }
}, },
"security": { "security": {
"description": "Settings for the Security configuration", "description": "Paramètres de configuration de la sécurité",
"title": "Security Settings", "title": "Paramètres de sécurité",
"button_backupKey": "Backup Key", "button_backupKey": "Clé de sauvegarde",
"adminChannelEnabled": { "adminChannelEnabled": {
"description": "Allow incoming device control over the insecure legacy admin channel", "description": "Autoriser le contrôle distant via le canal d’administration hérité non sécurisé",
"label": "Allow Legacy Admin" "label": "Autoriser l’administration héritée"
}, },
"enableDebugLogApi": { "enableDebugLogApi": {
"description": "Output live debug logging over serial, view and export position-redacted device logs over Bluetooth", "description": "Afficher en direct les journaux de débogage via le port série, consulter/exporter les journaux sans position via Bluetooth",
"label": "Enable Debug Log API" "label": "Activer l’API des journaux de debug"
}, },
"managed": { "managed": {
"description": "If enabled, device configuration options are only able to be changed remotely by a Remote Admin node via admin messages. Do not enable this option unless at least one suitable Remote Admin node has been setup, and the public key is stored in one of the fields above.", "description": "Si cette option est activée, les options de configuration de l'appareil ne peuvent être modifiées à distance que par un nœud d'administration distante via des messages d'administration. N'activez cette option que si au moins un nœud d'administration distant approprié a été configuré et que la clé publique est stockée dans l'un des champs ci-dessus.",
"label": "Managed" "label": "Géré"
}, },
"privateKey": { "privateKey": {
"description": "Used to create a shared key with a remote device", "description": "Utilisée pour créer une clé partagée avec un appareil distant",
"label": "Clé privée" "label": "Clé privée"
}, },
"publicKey": { "publicKey": {
"description": "Sent out to other nodes on the mesh to allow them to compute a shared secret key", "description": "Envoyée aux autres nœuds pour générer une clé secrète partagée",
"label": "Clé publique" "label": "Clé publique"
}, },
"primaryAdminKey": { "primaryAdminKey": {
"description": "The primary public key authorized to send admin messages to this node", "description": "Clé publique principale autorisée à envoyer des messages d’administration",
"label": "Primary Admin Key" "label": "Clé Admin principale"
}, },
"secondaryAdminKey": { "secondaryAdminKey": {
"description": "The secondary public key authorized to send admin messages to this node", "description": "Clé publique secondaire autorisée à envoyer des messages d’administration",
"label": "Secondary Admin Key" "label": "Clé Admin secondaire"
}, },
"serialOutputEnabled": { "serialOutputEnabled": {
"description": "Serial Console over the Stream API", "description": "Console série via l’API de flux",
"label": "Serial Output Enabled" "label": "Sortie série activée"
}, },
"tertiaryAdminKey": { "tertiaryAdminKey": {
"description": "The tertiary public key authorized to send admin messages to this node", "description": "Clé publique tertiaire autorisée à envoyer des messages d’administration",
"label": "Tertiary Admin Key" "label": "Clé Admin tertiaire"
}, },
"adminSettings": { "adminSettings": {
"description": "Settings for Admin", "description": "Paramètres liés à l’administration",
"label": "Admin Settings" "label": "Paramètres administrateur"
}, },
"loggingSettings": { "loggingSettings": {
"description": "Settings for Logging", "description": "Paramètres liés aux journaux",
"label": "Logging Settings" "label": "Paramètres de journalisation"
} }
} }
} }

213
packages/web/public/i18n/locales/fr-FR/dialog.json

@ -1,171 +1,182 @@
{ {
"deleteMessages": { "deleteMessages": {
"description": "This action will clear all message history. This cannot be undone. Are you sure you want to continue?", "description": "Cette action effacera tout l’historique des messages. Cette opération est irréversible. Voulez-vous vraiment continuer ?",
"title": "Clear All Messages" "title": "Supprimer tous les messages"
}, },
"deviceName": { "deviceName": {
"description": "The Device will restart once the config is saved.", "description": "L’appareil redémarrera une fois la configuration enregistrée.",
"longName": "Long Name", "longName": "Nom long",
"shortName": "Short Name", "shortName": "Nom court",
"title": "Change Device Name" "title": "Changer le nom de l’appareil",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "The current LoRa configuration will be overridden.", "description": "La configuration LoRa actuelle sera écrasée.",
"error": { "error": {
"invalidUrl": "Invalid Meshtastic URL" "invalidUrl": "URL Meshtastic invalide"
}, },
"channelPrefix": "Channel: ", "channelPrefix": "Canal: ",
"channelSetUrl": "Channel Set/QR Code URL", "channelSetUrl": "URL du set de canaux ou du QR code",
"channels": "Channels:", "channels": "Canaux:",
"usePreset": "Use Preset?", "usePreset": "Utiliser un préréglage?",
"title": "Import Channel Set" "title": "Importer un ensemble de canaux"
}, },
"locationResponse": { "locationResponse": {
"title": "Position : {{identifier}}",
"altitude": "Altitude: ", "altitude": "Altitude: ",
"coordinates": "Coordinates: ", "coordinates": "Coordonnées : ",
"title": "Location: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?", "title": "Régénérer la clé pré-partagée ?",
"description": "Are you sure you want to regenerate the pre-shared key?", "description": "Êtes-vous sûr de vouloir régénérer la clé pré-partagée ?",
"regenerate": "Regenerate" "regenerate": "Régénérer"
}, },
"newDeviceDialog": { "newDeviceDialog": {
"title": "Connect New Device", "title": "Connecter un nouvel appareil",
"https": "https", "https": "https",
"http": "http", "http": "http",
"tabHttp": "HTTP", "tabHttp": "HTTP",
"tabBluetooth": "Bluetooth", "tabBluetooth": "Bluetooth",
"tabSerial": "Série", "tabSerial": "Série",
"useHttps": "Use HTTPS", "useHttps": "Utiliser HTTPS",
"connecting": "Connecting...", "connecting": "Connexion...",
"connect": "Connect", "connect": "Connecter",
"connectionFailedAlert": { "connectionFailedAlert": {
"title": "Connection Failed", "title": "Échec de la connexion",
"descriptionPrefix": "Could not connect to the device. ", "descriptionPrefix": "Vous ne pouvez pas connecter l'appareil. ",
"httpsHint": "If using HTTPS, you may need to accept a self-signed certificate first. ", "httpsHint": "Si vous utilisez HTTPS, vous devrez peut-être accepter un certificat auto-signé. ",
"openLinkPrefix": "Please open ", "openLinkPrefix": "Veuillez ouvrir ",
"openLinkSuffix": " in a new tab", "openLinkSuffix": " dans un nouvel onglet",
"acceptTlsWarningSuffix": ", accept any TLS warnings if prompted, then try again", "acceptTlsWarningSuffix": ", acceptez les avertissements TLS si vous y êtes invité, puis réessayez",
"learnMoreLink": "Learn more" "learnMoreLink": "En savoir plus"
}, },
"httpConnection": { "httpConnection": {
"label": "IP Address/Hostname", "label": "Adresse IP / nom d'hôte",
"placeholder": "000.000.000.000 / meshtastic.local" "placeholder": "000.000.000.000 / meshtastic.local"
}, },
"serialConnection": { "serialConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "Aucun appareil appairé pour l’instant.",
"newDeviceButton": "New device", "newDeviceButton": "Nouvel appareil",
"deviceIdentifier": "# {{index}} - {{vendorId}} - {{productId}}" "deviceIdentifier": "# {{index}} - {{vendorId}} - {{productId}}"
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "Aucun appareil appairé pour l’instant.",
"newDeviceButton": "New device" "newDeviceButton": "Nouvel appareil",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "This connection type requires <0></0>. Please use a supported browser, like Chrome or Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.", "requiresSecureContext": "Cette application nécessite un <0>contexte sécurisé</0>. Veuillez vous connecter via HTTPS ou localhost.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.", "additionallyRequiresSecureContext": "Elle nécessite également un <0>contexte sécurisé</0>. Veuillez vous connecter via HTTPS ou localhost."
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
} }
}, },
"nodeDetails": { "nodeDetails": {
"message": "Message", "message": "Message",
"requestPosition": "Request Position", "requestPosition": "Demander la position",
"traceRoute": "Trace Route", "traceRoute": "Tracer la route",
"airTxUtilization": "Air TX utilization", "airTxUtilization": "Utilisation TX sur l’air",
"allRawMetrics": "All Raw Metrics:", "allRawMetrics": "Toutes les métriques brutes :",
"batteryLevel": "Battery level", "batteryLevel": "Niveau de batterie",
"channelUtilization": "Channel utilization", "channelUtilization": "Utilisation du canal",
"details": "Details:", "details": "Détails :",
"deviceMetrics": "Device Metrics:", "deviceMetrics": "Métriques de l’appareil :",
"hardware": "Hardware: ", "hardware": "Matériel : ",
"lastHeard": "Last Heard: ", "lastHeard": "Dernière écoute: ",
"nodeHexPrefix": "Node Hex: !", "nodeHexPrefix": "Hexa du nœud : !",
"nodeNumber": "Node Number: ", "nodeNumber": "Numéro de nœud: ",
"position": "Position:", "position": "Position:",
"role": "Role: ", "role": "Rôle: ",
"uptime": "Uptime: ", "uptime": "Temps de fonctionnement :",
"voltage": "Tension", "voltage": "Tension",
"title": "Node Details for {{identifier}}", "title": "Détails du nœud pour {{identifier}}",
"ignoreNode": "Ignore node", "ignoreNode": "Ignorer le nœud",
"removeNode": "Remove node", "removeNode": "Supprimer le nœud",
"unignoreNode": "Unignore node" "unignoreNode": "Ne plus ignorer le nœud"
}, },
"pkiBackup": { "pkiBackup": {
"loseKeysWarning": "If you lose your keys, you will need to reset your device.", "loseKeysWarning": "Si vous perdez vos clés, vous devrez réinitialiser votre appareil.",
"secureBackup": "Its important to backup your public and private keys and store your backup securely!", "secureBackup": "Il est important de sauvegarder vos clés publique et privée, et de stocker cette sauvegarde en lieu sûr !",
"footer": "=== END OF KEYS ===", "footer": "=== FIN DES CLÉS ===",
"header": "=== MESHTASTIC KEYS FOR {{longName}} ({{shortName}}) ===", "header": "=== CLÉS MESHTASTIC POUR {{longName}} ({{shortName}}) ===",
"privateKey": "Private Key:", "privateKey": "Clé privée :",
"publicKey": "Public Key:", "publicKey": "Clé publique :",
"fileName": "meshtastic_keys_{{longName}}_{{shortName}}.txt", "fileName": "meshtastic_cles_{{longName}}_{{shortName}}.txt",
"title": "Backup Keys" "title": "Sauvegarder les clés"
}, },
"pkiBackupReminder": { "pkiBackupReminder": {
"description": "We recommend backing up your key data regularly. Would you like to back up now?", "description": "Nous vous recommandons de sauvegarder régulièrement vos clés. Souhaitez-vous effectuer une sauvegarde maintenant ?",
"title": "Backup Reminder", "title": "Rappel de sauvegarde",
"remindLaterPrefix": "Remind me in", "remindLaterPrefix": "Me le rappeler dans",
"remindNever": "Never remind me", "remindNever": "Ne plus me le rappeler",
"backupNow": "Back up now" "backupNow": "Sauvegarder maintenant"
}, },
"pkiRegenerate": { "pkiRegenerate": {
"description": "Are you sure you want to regenerate key pair?", "description": "Êtes-vous sûr de vouloir régénérer la paire de clés ?",
"title": "Regenerate Key Pair" "title": "Régénérer la paire de clés"
}, },
"qr": { "qr": {
"addChannels": "Add Channels", "addChannels": "Ajouter des canaux",
"replaceChannels": "Replace Channels", "replaceChannels": "Remplacer les canaux",
"description": "The current LoRa configuration will also be shared.", "description": "La configuration LoRa actuelle sera également partagée.",
"sharableUrl": "Sharable URL", "sharableUrl": "URL partageable",
"title": "Générer un QR Code" "title": "Générer un QR Code"
}, },
"rebootOta": { "rebootOta": {
"title": "Schedule Reboot", "title": "Programmer un redémarrage",
"description": "Reboot the connected node after a delay into OTA (Over-the-Air) mode.", "description": "Redémarrer le nœud connecté après un délai en mode OTA (Over-the-Air).",
"enterDelay": "Enter delay (sec)", "enterDelay": "Entrer le délai (sec)",
"scheduled": "Reboot has been scheduled" "scheduled": "Le redémarrage a été programmé"
}, },
"reboot": { "reboot": {
"title": "Schedule Reboot", "title": "Programmer un redémarrage",
"description": "Reboot the connected node after x minutes." "description": "Redémarrer le nœud connecté après x minutes."
}, },
"refreshKeys": { "refreshKeys": {
"description": { "description": {
"acceptNewKeys": "This will remove the node from device and request new keys.", "acceptNewKeys": "Cela supprimera le nœud de l’appareil et demandera de nouvelles clés.",
"keyMismatchReasonSuffix": ". This is due to the remote node's current public key does not match the previously stored key for this node.", "keyMismatchReasonSuffix": ". Cela est dû au fait que la clé publique actuelle du nœud distant ne correspond pas à celle précédemment enregistrée pour ce nœud.",
"unableToSendDmPrefix": "Your node is unable to send a direct message to node: " "unableToSendDmPrefix": "Accepter les nouvelles clés"
}, },
"acceptNewKeys": "Accept New Keys", "acceptNewKeys": "Accepter les nouvelles clés",
"title": "Keys Mismatch - {{identifier}}" "title": "Clés non concordantes – {{identifier}}"
}, },
"removeNode": { "removeNode": {
"description": "Are you sure you want to remove this Node?", "description": "Êtes-vous sûr de vouloir supprimer ce nœud ?",
"title": "Remove Node?" "title": "Supprimer le nœud ?"
}, },
"shutdown": { "shutdown": {
"title": "Schedule Shutdown", "title": "Programmer un arrêt",
"description": "Turn off the connected node after x minutes." "description": "Éteindre le nœud connecté après x minutes."
}, },
"traceRoute": { "traceRoute": {
"routeToDestination": "Route to destination:", "routeToDestination": "Route vers la destination :",
"routeBack": "Route back:" "routeBack": "Route de retour :"
}, },
"tracerouteResponse": { "tracerouteResponse": {
"title": "Traceroute: {{identifier}}" "title": "Traceroute : {{identifier}}"
}, },
"unsafeRoles": { "unsafeRoles": {
"confirmUnderstanding": "Yes, I know what I'm doing", "confirmUnderstanding": "Oui, je sais ce que je fais",
"conjunction": " and the blog post about ", "conjunction": " et l’article de blog sur le ",
"postamble": " and understand the implications of changing the role.", "postamble": " et je comprends les implications du changement de rôle.",
"preamble": "I have read the ", "preamble": "J'ai lu les",
"choosingRightDeviceRole": "Choosing The Right Device Role", "choosingRightDeviceRole": "Choisir le rôle d’appareil approprié",
"deviceRoleDocumentation": "Device Role Documentation", "deviceRoleDocumentation": "Documentation sur les rôles d’appareil",
"title": "Êtes-vous sûr ?" "title": "Êtes-vous sûr ?"
}, },
"managedMode": { "managedMode": {
"confirmUnderstanding": "Yes, I know what I'm doing", "confirmUnderstanding": "Oui, je sais ce que je fais",
"title": "Êtes-vous sûr ?", "title": "Êtes-vous sûr ?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

28
packages/web/public/i18n/locales/fr-FR/messages.json

@ -1,39 +1,39 @@
{ {
"page": { "page": {
"title": "Messages: {{chatName}}", "title": "Messages: {{chatName}}",
"placeholder": "Enter Message" "placeholder": "Saisir message"
}, },
"emptyState": { "emptyState": {
"title": "Select a Chat", "title": "Sélectionnez un chat",
"text": "No messages yet." "text": "Aucun message pour le moment."
}, },
"selectChatPrompt": { "selectChatPrompt": {
"text": "Select a channel or node to start messaging." "text": "Sélectionnez un canal ou un nœud pour commencer à envoyer des messages."
}, },
"sendMessage": { "sendMessage": {
"placeholder": "Enter your message here...", "placeholder": "Entrez votre message ici...",
"sendButton": "Envoyer" "sendButton": "Envoyer"
}, },
"actionsMenu": { "actionsMenu": {
"addReactionLabel": "Add Reaction", "addReactionLabel": "Ajouter une réaction",
"replyLabel": "Répondre" "replyLabel": "Répondre"
}, },
"deliveryStatus": { "deliveryStatus": {
"delivered": { "delivered": {
"label": "Message delivered", "label": "Message délivré",
"displayText": "Message delivered" "displayText": "Message délivré"
}, },
"failed": { "failed": {
"label": "Message delivery failed", "label": "La transmission du message a échoué",
"displayText": "Delivery failed" "displayText": "Échec de l'envoi"
}, },
"unknown": { "unknown": {
"label": "Message status unknown", "label": "Statut du message inconnu",
"displayText": "Unknown state" "displayText": "Statut inconnu"
}, },
"waiting": { "waiting": {
"label": "Sending message", "label": "Envoi du message",
"displayText": "Waiting for delivery" "displayText": "En attente de réception"
} }
} }
} }

416
packages/web/public/i18n/locales/fr-FR/moduleConfig.json

@ -2,410 +2,410 @@
"page": { "page": {
"tabAmbientLighting": "Lumière ambiante", "tabAmbientLighting": "Lumière ambiante",
"tabAudio": "Audio", "tabAudio": "Audio",
"tabCannedMessage": "Canned", "tabCannedMessage": "Message pré-enregistré",
"tabDetectionSensor": "Capteur de détection", "tabDetectionSensor": "Capteur de détection",
"tabExternalNotification": "Ext Notif", "tabExternalNotification": "Notification externe",
"tabMqtt": "MQTT", "tabMqtt": "MQTT",
"tabNeighborInfo": "Informations sur les voisins", "tabNeighborInfo": "Informations sur les voisins",
"tabPaxcounter": "Paxcounter", "tabPaxcounter": "Paxcounter",
"tabRangeTest": "Test de portée", "tabRangeTest": "Test de portée",
"tabSerial": "Série", "tabSerial": "Série",
"tabStoreAndForward": "S&F", "tabStoreAndForward": "Stocker & Relayer",
"tabTelemetry": "Télémetrie (Capteurs)" "tabTelemetry": "Télémetrie (Capteurs)"
}, },
"ambientLighting": { "ambientLighting": {
"title": "Ambient Lighting Settings", "title": "Paramètres de l’éclairage ambiant",
"description": "Settings for the Ambient Lighting module", "description": "Paramètres du module d’éclairage ambiant",
"ledState": { "ledState": {
"label": "LED State", "label": "État des LED",
"description": "Sets LED to on or off" "description": "Définit les LED sur allumées ou éteintes"
}, },
"current": { "current": {
"label": "Actif", "label": "Actif",
"description": "Sets the current for the LED output. Default is 10" "description": "Définit le courant de sortie des LED. Par défaut : 10"
}, },
"red": { "red": {
"label": "Rouge", "label": "Rouge",
"description": "Sets the red LED level. Values are 0-255" "description": "Définit le niveau de LED rouge (valeurs 0–255)"
}, },
"green": { "green": {
"label": "Vert", "label": "Vert",
"description": "Sets the green LED level. Values are 0-255" "description": "Définit le niveau de LED vert (valeurs 0–255)"
}, },
"blue": { "blue": {
"label": "Bleu", "label": "Bleu",
"description": "Sets the blue LED level. Values are 0-255" "description": "Définit le niveau de LED bleu (valeurs 0–255)"
} }
}, },
"audio": { "audio": {
"title": "Audio Settings", "title": "Paramètres audio",
"description": "Settings for the Audio module", "description": "Paramètres du module audio",
"codec2Enabled": { "codec2Enabled": {
"label": "Codec 2 Enabled", "label": "Codec 2 activé",
"description": "Enable Codec 2 audio encoding" "description": "Active l'encodage audio Codec 2"
}, },
"pttPin": { "pttPin": {
"label": "PTT Pin", "label": "Broche PTT",
"description": "GPIO pin to use for PTT" "description": "Broche GPIO utilisée pour le PTT"
}, },
"bitrate": { "bitrate": {
"label": "Bitrate", "label": "Débit",
"description": "Bitrate to use for audio encoding" "description": "Débit utilisé pour l’encodage audio"
}, },
"i2sWs": { "i2sWs": {
"label": "i2S WS", "label": "i2S WS",
"description": "GPIO pin to use for i2S WS" "description": "Broche GPIO utilisée pour i2S WS"
}, },
"i2sSd": { "i2sSd": {
"label": "i2S SD", "label": "i2S SD",
"description": "GPIO pin to use for i2S SD" "description": "Broche GPIO utilisée pour i2S SD"
}, },
"i2sDin": { "i2sDin": {
"label": "i2S DIN", "label": "i2S DIN",
"description": "GPIO pin to use for i2S DIN" "description": "Broche GPIO utilisée pour i2S DIN"
}, },
"i2sSck": { "i2sSck": {
"label": "i2S SCK", "label": "i2S SCK",
"description": "GPIO pin to use for i2S SCK" "description": "Broche GPIO utilisée pour i2S SCK"
} }
}, },
"cannedMessage": { "cannedMessage": {
"title": "Canned Message Settings", "title": "Paramètres des messages pré-enregistrés",
"description": "Settings for the Canned Message module", "description": "Paramètres du module de messages pré-enregistrés\n",
"moduleEnabled": { "moduleEnabled": {
"label": "Module Enabled", "label": "Module activé",
"description": "Enable Canned Message" "description": "Active les messages pré-enregistrés"
}, },
"rotary1Enabled": { "rotary1Enabled": {
"label": "Rotary Encoder #1 Enabled", "label": "Encodeur rotatif #1 activé",
"description": "Enable the rotary encoder" "description": "Active l’encodeur rotatif"
}, },
"inputbrokerPinA": { "inputbrokerPinA": {
"label": "Encoder Pin A", "label": "Broche A de l’encodeur",
"description": "GPIO Pin Value (1-39) For encoder port A" "description": "Valeur GPIO (1-39) pour le port A de l’encodeur"
}, },
"inputbrokerPinB": { "inputbrokerPinB": {
"label": "Encoder Pin B", "label": "Broche B de l’encodeur",
"description": "GPIO Pin Value (1-39) For encoder port B" "description": "Valeur GPIO (1-39) pour le port B de l’encodeur"
}, },
"inputbrokerPinPress": { "inputbrokerPinPress": {
"label": "Encoder Pin Press", "label": "Broche de pression de l’encodeur",
"description": "GPIO Pin Value (1-39) For encoder Press" "description": "Valeur GPIO (1-39) pour la pression sur l’encodeur"
}, },
"inputbrokerEventCw": { "inputbrokerEventCw": {
"label": "Clockwise event", "label": "Événement horaire",
"description": "Select input event." "description": "Sélectionner l’événement d’entrée"
}, },
"inputbrokerEventCcw": { "inputbrokerEventCcw": {
"label": "Counter Clockwise event", "label": "Événement antihoraire",
"description": "Select input event." "description": "Sélectionner l’événement d’entrée"
}, },
"inputbrokerEventPress": { "inputbrokerEventPress": {
"label": "Press event", "label": "Événement pression",
"description": "Select input event" "description": "Sélectionner l’événement d’entrée"
}, },
"updown1Enabled": { "updown1Enabled": {
"label": "Up Down enabled", "label": "Encodeur haut/bas activé",
"description": "Enable the up / down encoder" "description": "Active l’encodeur haut/bas"
}, },
"allowInputSource": { "allowInputSource": {
"label": "Allow Input Source", "label": "Autoriser la source d’entrée",
"description": "Select from: '_any', 'rotEnc1', 'upDownEnc1', 'cardkb'" "description": "Sélectionner parmi : '_any', 'rotEnc1', 'upDownEnc1', 'cardkb'"
}, },
"sendBell": { "sendBell": {
"label": "Send Bell", "label": "Envoyer un bip",
"description": "Sends a bell character with each message" "description": "Envoie un caractère de cloche avec chaque message"
} }
}, },
"detectionSensor": { "detectionSensor": {
"title": "Detection Sensor Settings", "title": "Paramètres du capteur de détection",
"description": "Settings for the Detection Sensor module", "description": "Paramètres du module de capteur de détection",
"enabled": { "enabled": {
"label": "Activé", "label": "Activé",
"description": "Enable or disable Detection Sensor Module" "description": "Activer ou désactiver le module de détection"
}, },
"minimumBroadcastSecs": { "minimumBroadcastSecs": {
"label": "Minimum Broadcast Seconds", "label": "Intervalle minimum d’émission (s)",
"description": "The interval in seconds of how often we can send a message to the mesh when a state change is detected" "description": "L'intervalle en secondes de la fréquence à laquelle nous pouvons envoyer un message au maillage quand un changement d'état est détecté"
}, },
"stateBroadcastSecs": { "stateBroadcastSecs": {
"label": "State Broadcast Seconds", "label": "Intervalle d’état (s)",
"description": "The interval in seconds of how often we should send a message to the mesh with the current state regardless of changes" "description": "Temps entre deux messages d’état envoyés, même sans changement"
}, },
"sendBell": { "sendBell": {
"label": "Send Bell", "label": "Envoyer un bip",
"description": "Send ASCII bell with alert message" "description": "Envoyer un caractère ASCII 'bell' avec le message d’alerte"
}, },
"name": { "name": {
"label": "Friendly Name", "label": "Nom convivial",
"description": "Used to format the message sent to mesh, max 20 Characters" "description": "Utilisé pour formater le message envoyé au réseau, max. 20 caractères"
}, },
"monitorPin": { "monitorPin": {
"label": "Monitor Pin", "label": "Broche de monitoring",
"description": "The GPIO pin to monitor for state changes" "description": "Broche GPIO pour surveiller les changements d'état"
}, },
"detectionTriggerType": { "detectionTriggerType": {
"label": "Detection Triggered Type", "label": "Type du déclencheur de détection",
"description": "The type of trigger event to be used" "description": "Le type d'événement déclencheur à utiliser"
}, },
"usePullup": { "usePullup": {
"label": "Use Pullup", "label": "Utiliser Pullup",
"description": "Whether or not use INPUT_PULLUP mode for GPIO pin" "description": "Utiliser ou non le mode INPUT_PULLUP pour la broche GPIO"
} }
}, },
"externalNotification": { "externalNotification": {
"title": "External Notification Settings", "title": "Paramètres de la notification extérieure",
"description": "Configure the external notification module", "description": "Configurer le module de notification externe",
"enabled": { "enabled": {
"label": "Module Enabled", "label": "Module activé",
"description": "Enable External Notification" "description": "Activer les notifications externes"
}, },
"outputMs": { "outputMs": {
"label": "Output MS", "label": "Sortie MS",
"description": "Output MS" "description": "Sortie MS"
}, },
"output": { "output": {
"label": "Output", "label": "Sortie",
"description": "Output" "description": "Sortie"
}, },
"outputVibra": { "outputVibra": {
"label": "Output Vibrate", "label": "Sortie vibreur",
"description": "Output Vibrate" "description": "Sortie vibreur"
}, },
"outputBuzzer": { "outputBuzzer": {
"label": "Output Buzzer", "label": "Sortie buzzer",
"description": "Output Buzzer" "description": "Sortie buzzer"
}, },
"active": { "active": {
"label": "Active", "label": "Actif",
"description": "Active" "description": "Actif"
}, },
"alertMessage": { "alertMessage": {
"label": "Alert Message", "label": "Message d'alerte",
"description": "Alert Message" "description": "Message d'alerte"
}, },
"alertMessageVibra": { "alertMessageVibra": {
"label": "Alert Message Vibrate", "label": "Message d'alerte vibreur",
"description": "Alert Message Vibrate" "description": "Message d'alerte vibreur"
}, },
"alertMessageBuzzer": { "alertMessageBuzzer": {
"label": "Alert Message Buzzer", "label": "Message d'alerte buzzer",
"description": "Alert Message Buzzer" "description": "Message d'alerte buzzer"
}, },
"alertBell": { "alertBell": {
"label": "Alert Bell", "label": "Bip d'alerte",
"description": "Should an alert be triggered when receiving an incoming bell?" "description": "Une alerte doit-elle être déclenchée lors de la réception d'un bip entrant ?"
}, },
"alertBellVibra": { "alertBellVibra": {
"label": "Alert Bell Vibrate", "label": "Bip d'alerte vibreur",
"description": "Alert Bell Vibrate" "description": "Bip d'alerte vibreur"
}, },
"alertBellBuzzer": { "alertBellBuzzer": {
"label": "Alert Bell Buzzer", "label": "Bip d'alerte buzzer",
"description": "Alert Bell Buzzer" "description": "Bip d'alerte buzzer"
}, },
"usePwm": { "usePwm": {
"label": "Use PWM", "label": "Utiliser PWM",
"description": "Use PWM" "description": "Utiliser PWM"
}, },
"nagTimeout": { "nagTimeout": {
"label": "Nag Timeout", "label": "Délai d'expiration du message",
"description": "Nag Timeout" "description": "Délai d'expiration du message"
}, },
"useI2sAsBuzzer": { "useI2sAsBuzzer": {
"label": "Use I²S Pin as Buzzer", "label": "Utiliser la broche I2S comme Buzzer",
"description": "Designate I²S Pin as Buzzer Output" "description": "Désigner la broche I2S comme sortie Buzzer"
} }
}, },
"mqtt": { "mqtt": {
"title": "MQTT Settings", "title": "Paramètres MQTT",
"description": "Settings for the MQTT module", "description": "Paramètres du module MQTT",
"enabled": { "enabled": {
"label": "Activé", "label": "Activé",
"description": "Enable or disable MQTT" "description": "Activer ou désactiver MQTT"
}, },
"address": { "address": {
"label": "MQTT Server Address", "label": "Adresse du serveur MQTT",
"description": "MQTT server address to use for default/custom servers" "description": "Adresse du serveur MQTT à utiliser pour les serveurs par défaut/personnalisés"
}, },
"username": { "username": {
"label": "MQTT Username", "label": "Nom d'utilisateur MQTT",
"description": "MQTT username to use for default/custom servers" "description": "Nom d'utilisateur MQTT à utiliser pour les serveurs par défaut/personnalisés"
}, },
"password": { "password": {
"label": "MQTT Password", "label": "Mot de passe MQTT",
"description": "MQTT password to use for default/custom servers" "description": "Mot de passe MQTT à utiliser pour les serveurs par défaut/personnalisés"
}, },
"encryptionEnabled": { "encryptionEnabled": {
"label": "Encryption Enabled", "label": "Chiffrement activé",
"description": "Enable or disable MQTT encryption. Note: All messages are sent to the MQTT broker unencrypted if this option is not enabled, even when your uplink channels have encryption keys set. This includes position data." "description": "Activer ou désactiver le chiffrement MQTT. Remarque : Tous les messages sont envoyés au broker MQTT non chiffré si cette option n'est pas activée, même si vos canaux uplink ont des clés de chiffrement. Cela inclut les données de position."
}, },
"jsonEnabled": { "jsonEnabled": {
"label": "JSON Enabled", "label": "JSON activé",
"description": "Whether to send/consume JSON packets on MQTT" "description": "S'il faut envoyer/consommer des paquets JSON sur MQTT"
}, },
"tlsEnabled": { "tlsEnabled": {
"label": "TLS Enabled", "label": "TLS activé",
"description": "Enable or disable TLS" "description": "Activer ou désactiver TLS"
}, },
"root": { "root": {
"label": "Sujet principal", "label": "Sujet principal",
"description": "MQTT root topic to use for default/custom servers" "description": "Sujet racine MQTT à utiliser pour les serveurs par défaut/personnalisés"
}, },
"proxyToClientEnabled": { "proxyToClientEnabled": {
"label": "MQTT Client Proxy Enabled", "label": "Proxy client MQTT activé",
"description": "Utilizes the network connection to proxy MQTT messages to the client." "description": "Utilise la connexion réseau pour transmettre les messages MQTT au client."
}, },
"mapReportingEnabled": { "mapReportingEnabled": {
"label": "Map Reporting Enabled", "label": "Rapport cartographique activé",
"description": "Your node will periodically send an unencrypted map report packet to the configured MQTT server, this includes id, short and long name, approximate location, hardware model, role, firmware version, LoRa region, modem preset and primary channel name." "description": "Votre nœud enverra périodiquement un paquet de rapport de position non chiffré au serveur MQTT configuré. Ce paquet inclut l'identifiant, les noms long et court, la position approximative, le modèle matériel, le rôle, la version du micrologiciel, la région LoRa, le préréglage du modem et le nom du canal principal."
}, },
"mapReportSettings": { "mapReportSettings": {
"publishIntervalSecs": { "publishIntervalSecs": {
"label": "Map Report Publish Interval (s)", "label": "Intervalles de publication du rapport de carte",
"description": "Interval in seconds to publish map reports" "description": "Intervalle en secondes pour publier les rapports de carte"
}, },
"positionPrecision": { "positionPrecision": {
"label": "Approximate Location", "label": "Position approximative",
"description": "Position shared will be accurate within this distance", "description": "La position partagée sera précise dans cette distance",
"options": { "options": {
"metric_km23": "Within 23 km", "metric_km23": "A moins de 23 km",
"metric_km12": "Within 12 km", "metric_km12": "A moins de 12 km",
"metric_km5_8": "Within 5.8 km", "metric_km5_8": "A moins de 5.8 km",
"metric_km2_9": "Within 2.9 km", "metric_km2_9": "A moins de 2.9 km",
"metric_km1_5": "Within 1.5 km", "metric_km1_5": "A moins de 1.5 km",
"metric_m700": "Within 700 m", "metric_m700": "A moins de 700 m",
"metric_m350": "Within 350 m", "metric_m350": "A moins de 350 m",
"metric_m200": "Within 200 m", "metric_m200": "À moins de 200 m",
"metric_m90": "Within 90 m", "metric_m90": "A moins de 90 m",
"metric_m50": "Within 50 m", "metric_m50": "A moins de 50 m",
"imperial_mi15": "Within 15 miles", "imperial_mi15": "À moins de 15 miles",
"imperial_mi7_3": "Within 7.3 miles", "imperial_mi7_3": "À moins de 7,3 miles",
"imperial_mi3_6": "Within 3.6 miles", "imperial_mi3_6": "À moins de 3,6 miles",
"imperial_mi1_8": "Within 1.8 miles", "imperial_mi1_8": "À moins de 1,8 miles",
"imperial_mi0_9": "Within 0.9 miles", "imperial_mi0_9": "À moins de 0,9 miles",
"imperial_mi0_5": "Within 0.5 miles", "imperial_mi0_5": "À moins de 0,5 miles",
"imperial_mi0_2": "Within 0.2 miles", "imperial_mi0_2": "À moins de 0,2 miles",
"imperial_ft600": "Within 600 feet", "imperial_ft600": "À moins de 600 pieds",
"imperial_ft300": "Within 300 feet", "imperial_ft300": "À moins de 300 pieds",
"imperial_ft150": "Within 150 feet" "imperial_ft150": "À moins de 150 pieds"
} }
} }
} }
}, },
"neighborInfo": { "neighborInfo": {
"title": "Neighbor Info Settings", "title": "Paramètres des informations du voisinage",
"description": "Settings for the Neighbor Info module", "description": "Paramètres pour le module informations du voisinage",
"enabled": { "enabled": {
"label": "Activé", "label": "Activé",
"description": "Enable or disable Neighbor Info Module" "description": "Activer ou désactiver le module informations du voisinage"
}, },
"updateInterval": { "updateInterval": {
"label": "Update Interval", "label": "Intervalle de mise à jour",
"description": "Interval in seconds of how often we should try to send our Neighbor Info to the mesh" "description": "Intervalle en secondes de la fréquence à laquelle nous devrions essayer d'envoyer nos informations de Voisinage au maillage"
} }
}, },
"paxcounter": { "paxcounter": {
"title": "Paxcounter Settings", "title": "Paramètres Paxcounter",
"description": "Settings for the Paxcounter module", "description": "Paramètres du module Paxcounter",
"enabled": { "enabled": {
"label": "Module Enabled", "label": "Module activé",
"description": "Enable Paxcounter" "description": "Activer Paxcounter"
}, },
"paxcounterUpdateInterval": { "paxcounterUpdateInterval": {
"label": "Update Interval (seconds)", "label": "Intervalle de mise à jour (secondes)",
"description": "How long to wait between sending paxcounter packets" "description": "Durée d'attente entre l'envoi de paquets paxcounter"
}, },
"wifiThreshold": { "wifiThreshold": {
"label": "WiFi RSSI Threshold", "label": "Seuil RSSI WiFi",
"description": "At what WiFi RSSI level should the counter increase. Defaults to -80." "description": "A quel niveau de WiFi RSSI devrait augmenter le compteur. Par défaut, -80."
}, },
"bleThreshold": { "bleThreshold": {
"label": "BLE RSSI Threshold", "label": "Seuil RSSI BLE",
"description": "At what BLE RSSI level should the counter increase. Defaults to -80." "description": "A quel niveau de BLE RSSI devrait augmenter le compteur. Par défaut, -80."
} }
}, },
"rangeTest": { "rangeTest": {
"title": "Range Test Settings", "title": "Paramètres de test de portée",
"description": "Settings for the Range Test module", "description": "Paramètres du module de test de portée",
"enabled": { "enabled": {
"label": "Module Enabled", "label": "Module activé",
"description": "Enable Range Test" "description": "Activer le test de portée"
}, },
"sender": { "sender": {
"label": "Message Interval", "label": "Intervalle de message",
"description": "How long to wait between sending test packets" "description": "Durée d'attente entre l'envoi de paquets de test"
}, },
"save": { "save": {
"label": "Save CSV to storage", "label": "Enregistrer le CSV dans le stockage",
"description": "ESP32 Only" "description": "ESP32 seulement"
} }
}, },
"serial": { "serial": {
"title": "Serial Settings", "title": "Paramètres série",
"description": "Settings for the Serial module", "description": "Paramètres du module série",
"enabled": { "enabled": {
"label": "Module Enabled", "label": "Module activé",
"description": "Enable Serial output" "description": "Activer la sortie série"
}, },
"echo": { "echo": {
"label": "Écho", "label": "Écho",
"description": "Any packets you send will be echoed back to your device" "description": "Tous les paquets que vous envoyez seront renvoyés vers votre appareil"
}, },
"rxd": { "rxd": {
"label": "Receive Pin", "label": "Broche de réception",
"description": "Set the GPIO pin to the RXD pin you have set up." "description": "Réglez la broche GPIO sur la broche RXD que vous avez configurée."
}, },
"txd": { "txd": {
"label": "Transmit Pin", "label": "Broche de transmission",
"description": "Set the GPIO pin to the TXD pin you have set up." "description": "Réglez la broche GPIO sur la broche TXD que vous avez configurée."
}, },
"baud": { "baud": {
"label": "Baud Rate", "label": "Vitesse en bauds",
"description": "The serial baud rate" "description": "Vitesse de transmission série"
}, },
"timeout": { "timeout": {
"label": "Délai d'expiration", "label": "Délai d'expiration",
"description": "Seconds to wait before we consider your packet as 'done'" "description": "Secondes à attendre avant de considérer votre paquet comme \"fini\""
}, },
"mode": { "mode": {
"label": "Mode", "label": "Mode",
"description": "Select Mode" "description": "Sélection de mode"
}, },
"overrideConsoleSerialPort": { "overrideConsoleSerialPort": {
"label": "Override Console Serial Port", "label": "Outrepasser le port série de la console",
"description": "If you have a serial port connected to the console, this will override it." "description": "Si vous avez un port série connecté à la console, cela va le remplacer."
} }
}, },
"storeForward": { "storeForward": {
"title": "Store & Forward Settings", "title": "Paramètres de stockage et transfert",
"description": "Settings for the Store & Forward module", "description": "Paramètres du module stockage et transfert",
"enabled": { "enabled": {
"label": "Module Enabled", "label": "Module activé",
"description": "Enable Store & Forward" "description": "Activer stockage et transfert"
}, },
"heartbeat": { "heartbeat": {
"label": "Heartbeat Enabled", "label": "Pulsations activées",
"description": "Enable Store & Forward heartbeat" "description": "Activer les pulsations stockage et transfert"
}, },
"records": { "records": {
"label": "Nombre d'enregistrements", "label": "Nombre d'enregistrements",
"description": "Number of records to store" "description": "Nombre d'enregistrements à stocker"
}, },
"historyReturnMax": { "historyReturnMax": {
"label": "History return max", "label": "Limite d’historique renvoyé",
"description": "Max number of records to return" "description": "Nombre maximum d'enregistrements à retourner"
}, },
"historyReturnWindow": { "historyReturnWindow": {
"label": "History return window", "label": "Fenêtre de retour d’historique",
"description": "Max number of records to return" "description": "Nombre maximum d'enregistrements à retourner"
} }
}, },
"telemetry": { "telemetry": {
"title": "Telemetry Settings", "title": "Paramètres de télémétrie",
"description": "Settings for the Telemetry module", "description": "Paramètres du module télémétrie",
"deviceUpdateInterval": { "deviceUpdateInterval": {
"label": "Device Metrics", "label": "Métriques de l’appareil",
"description": "Intervalle de mise à jour des métriques de l'appareil (secondes)" "description": "Intervalle de mise à jour des métriques de l'appareil (secondes)"
}, },
"environmentUpdateInterval": { "environmentUpdateInterval": {
@ -413,36 +413,36 @@
"description": "" "description": ""
}, },
"environmentMeasurementEnabled": { "environmentMeasurementEnabled": {
"label": "Module Enabled", "label": "Module activé",
"description": "Enable the Environment Telemetry" "description": "Activer la télémétrie d'environnement"
}, },
"environmentScreenEnabled": { "environmentScreenEnabled": {
"label": "Displayed on Screen", "label": "Affiché à l'écran",
"description": "Show the Telemetry Module on the OLED" "description": "Afficher le module de télémétrie sur OLED"
}, },
"environmentDisplayFahrenheit": { "environmentDisplayFahrenheit": {
"label": "Display Fahrenheit", "label": "Afficher en Fahrenheit",
"description": "Display temp in Fahrenheit" "description": "Afficher la température en Fahrenheit"
}, },
"airQualityEnabled": { "airQualityEnabled": {
"label": "Air Quality Enabled", "label": "Qualité de l'air activée",
"description": "Enable the Air Quality Telemetry" "description": "Activer la télémétrie de qualité de l'air"
}, },
"airQualityInterval": { "airQualityInterval": {
"label": "Air Quality Update Interval", "label": "Intervalle de mise à jour de la qualité de l'air",
"description": "How often to send Air Quality data over the mesh" "description": "Fréquence d'envoi des données de qualité de l'air sur le maillage"
}, },
"powerMeasurementEnabled": { "powerMeasurementEnabled": {
"label": "Power Measurement Enabled", "label": "Mesure de puissance activée",
"description": "Enable the Power Measurement Telemetry" "description": "Activer la télémétrie de mesure d'énergie"
}, },
"powerUpdateInterval": { "powerUpdateInterval": {
"label": "Power Update Interval", "label": "Intervalle de mise à jour de l'alimentation",
"description": "How often to send Power data over the mesh" "description": "Fréquence d'envoi de données d'alimentation sur le maillage"
}, },
"powerScreenEnabled": { "powerScreenEnabled": {
"label": "Power Screen Enabled", "label": "Écran d'alimentation activé",
"description": "Enable the Power Telemetry Screen" "description": "Activer l'écran de télémétrie d'alimentation"
} }
} }
} }

44
packages/web/public/i18n/locales/fr-FR/nodes.json

@ -1,63 +1,63 @@
{ {
"nodeDetail": { "nodeDetail": {
"publicKeyEnabled": { "publicKeyEnabled": {
"label": "Public Key Enabled" "label": "Clé publique activée"
}, },
"noPublicKey": { "noPublicKey": {
"label": "No Public Key" "label": "Aucune clé publique"
}, },
"directMessage": { "directMessage": {
"label": "Direct Message {{shortName}}" "label": "Message direct à {{shortName}}"
}, },
"favorite": { "favorite": {
"label": "Favoris", "label": "Favoris",
"tooltip": "Add or remove this node from your favorites" "tooltip": "Ajouter ou retirer ce nœud de vos favoris"
}, },
"notFavorite": { "notFavorite": {
"label": "Not a Favorite" "label": "Non favori"
}, },
"error": { "error": {
"label": "Erreur", "label": "Erreur",
"text": "An error occurred while fetching node details. Please try again later." "text": "Une erreur est survenue lors du chargement des détails du nœud. Veuillez réessayer."
}, },
"status": { "status": {
"heard": "Capté", "heard": "Capté",
"mqtt": "MQTT" "mqtt": "MQTT"
}, },
"elevation": { "elevation": {
"label": "Elevation" "label": "Altitude"
}, },
"channelUtil": { "channelUtil": {
"label": "Channel Util" "label": "Utilisation du canal"
}, },
"airtimeUtil": { "airtimeUtil": {
"label": "Airtime Util" "label": "Utilisation du temps d’antenne"
} }
}, },
"nodesTable": { "nodesTable": {
"headings": { "headings": {
"longName": "Long Name", "longName": "Nom long",
"connection": "Connection", "connection": "Connexion",
"lastHeard": "Last Heard", "lastHeard": "Dernière écoute",
"encryption": "Encryption", "encryption": "Chiffrement",
"model": "Model", "model": "Modèle",
"macAddress": "MAC Address" "macAddress": "Adresse MAC"
}, },
"connectionStatus": { "connectionStatus": {
"direct": "Direk", "direct": "Direk",
"away": "away", "away": "distant",
"unknown": "-", "unknown": "-",
"viaMqtt": ", via MQTT" "viaMqtt": ", via MQTT"
}, },
"lastHeardStatus": { "lastHeardStatus": {
"never": "Never" "never": "Jamais"
} }
}, },
"actions": { "actions": {
"added": "Added", "added": "Ajouté",
"removed": "Removed", "removed": "Supprimé",
"ignoreNode": "Ignore Node", "ignoreNode": "Ignorer le nœud",
"unignoreNode": "Unignore Node", "unignoreNode": "Ne plus ignorer le nœud",
"requestPosition": "Request Position" "requestPosition": "Demander la position"
} }
} }

168
packages/web/public/i18n/locales/fr-FR/ui.json

@ -3,109 +3,109 @@
"title": "Navigation", "title": "Navigation",
"messages": "Messages", "messages": "Messages",
"map": "Carte", "map": "Carte",
"config": "Config", "config": "Configuration",
"radioConfig": "Radio Config", "radioConfig": "Configuration radio",
"moduleConfig": "Module Config", "moduleConfig": "Configuration du module",
"channels": "Canaux", "channels": "Canaux",
"nodes": "Noeuds" "nodes": "Noeuds"
}, },
"app": { "app": {
"title": "Meshtastic", "title": "Meshtastic",
"logo": "Meshtastic Logo" "logo": "Logo Meshtastic"
}, },
"sidebar": { "sidebar": {
"collapseToggle": { "collapseToggle": {
"button": { "button": {
"open": "Open sidebar", "open": "Ouvrir la barre latérale",
"close": "Close sidebar" "close": "Fermer la barre latérale"
} }
}, },
"deviceInfo": { "deviceInfo": {
"volts": "{{voltage}} volts", "volts": "{{voltage}} volts",
"firmware": { "firmware": {
"title": "Firmware", "title": "Micrologiciel",
"version": "v{{version}}", "version": "v{{version}}",
"buildDate": "Build date: {{date}}" "buildDate": "Date de compilation : {{date}}"
}, },
"deviceName": { "deviceName": {
"title": "Device Name", "title": "Nom de l'appareil",
"changeName": "Change Device Name", "changeName": "Changer le nom de l'appareil",
"placeholder": "Enter device name" "placeholder": "Saisissez le nom de l'appareil"
}, },
"editDeviceName": "Edit device name" "editDeviceName": "Éditer le nom de l'appareil"
} }
}, },
"batteryStatus": { "batteryStatus": {
"charging": "{{level}}% charging", "charging": "{{level}}% en charge",
"pluggedIn": "Plugged in", "pluggedIn": "Branché",
"title": "Batterie" "title": "Batterie"
}, },
"search": { "search": {
"nodes": "Search nodes...", "nodes": "Recherche de nœuds...",
"channels": "Search channels...", "channels": "Rechercher des canaux...",
"commandPalette": "Search commands..." "commandPalette": "Rechercher des commandes..."
}, },
"toast": { "toast": {
"positionRequestSent": { "positionRequestSent": {
"title": "Position request sent." "title": "Requête de position envoyée."
}, },
"requestingPosition": { "requestingPosition": {
"title": "Requesting position, please wait..." "title": "Requête de position en cours, veuillez patienter..."
}, },
"sendingTraceroute": { "sendingTraceroute": {
"title": "Sending Traceroute, please wait..." "title": "Envoi du traceroute en cours, veuillez patienter..."
}, },
"tracerouteSent": { "tracerouteSent": {
"title": "Traceroute sent." "title": "Traceroute envoyé."
}, },
"savedChannel": { "savedChannel": {
"title": "Saved Channel: {{channelName}}" "title": "Canal enregistré : {{channelName}}"
}, },
"messages": { "messages": {
"pkiEncryption": { "pkiEncryption": {
"title": "Chat is using PKI encryption." "title": "La discussion utilise un chiffrement PKI."
}, },
"pskEncryption": { "pskEncryption": {
"title": "Chat is using PSK encryption." "title": "La discussion utilise un chiffrement PSK."
} }
}, },
"configSaveError": { "configSaveError": {
"title": "Error Saving Config", "title": "Erreur lors de l’enregistrement",
"description": "An error occurred while saving the configuration." "description": "Une erreur est survenue lors de l’enregistrement de la configuration."
}, },
"validationError": { "validationError": {
"title": "Config Errors Exist", "title": "Des erreurs de configuration existent",
"description": "Please fix the configuration errors before saving." "description": "Veuillez corriger les erreurs de configuration avant d’enregistrer."
}, },
"saveSuccess": { "saveSuccess": {
"title": "Saving Config", "title": "Configuration enregistrée",
"description": "The configuration change {{case}} has been saved." "description": "Le changement de configuration {{case}} a été enregistré."
}, },
"favoriteNode": { "favoriteNode": {
"title": "{{action}} {{nodeName}} {{direction}} favorites.", "title": "{{action}} {{nodeName}} {{direction}} des favoris.",
"action": { "action": {
"added": "Added", "added": "Ajouté",
"removed": "Removed", "removed": "Supprimé",
"to": "to", "to": "à",
"from": "from" "from": "de"
} }
}, },
"ignoreNode": { "ignoreNode": {
"title": "{{action}} {{nodeName}} {{direction}} ignore list", "title": "{{action}} {{nodeName}} {{direction}} de la liste d’ignorés",
"action": { "action": {
"added": "Added", "added": "Ajouté",
"removed": "Removed", "removed": "Supprimé",
"to": "to", "to": "à",
"from": "from" "from": "de"
} }
} }
}, },
"notifications": { "notifications": {
"copied": { "copied": {
"label": "Copied!" "label": "Copié !"
}, },
"copyToClipboard": { "copyToClipboard": {
"label": "Copy to clipboard" "label": "Copier dans le presse-papiers"
}, },
"hidePassword": { "hidePassword": {
"label": "Masquer le mot de passe" "label": "Masquer le mot de passe"
@ -114,20 +114,20 @@
"label": "Afficher le mot de passe" "label": "Afficher le mot de passe"
}, },
"deliveryStatus": { "deliveryStatus": {
"delivered": "Delivered", "delivered": "Distribué",
"failed": "Delivery Failed", "failed": "Échec de l'envoi",
"waiting": "En attente . . .", "waiting": "En attente . . .",
"unknown": "Inconnu" "unknown": "Inconnu"
} }
}, },
"general": { "general": {
"label": "General" "label": "Général"
}, },
"hardware": { "hardware": {
"label": "Matériel" "label": "Matériel"
}, },
"metrics": { "metrics": {
"label": "Metrics" "label": "Métriques"
}, },
"role": { "role": {
"label": "Rôle" "label": "Rôle"
@ -136,93 +136,93 @@
"label": "Filtre" "label": "Filtre"
}, },
"advanced": { "advanced": {
"label": "Advanced" "label": "Avancé"
}, },
"clearInput": { "clearInput": {
"label": "Clear input" "label": "Effacer la saisie"
}, },
"resetFilters": { "resetFilters": {
"label": "Reset Filters" "label": "Réinitialiser les filtres"
}, },
"nodeName": { "nodeName": {
"label": "Node name/number", "label": "Nom/numéro de nœud",
"placeholder": "Meshtastic 1234" "placeholder": "Meshtastic 1234"
}, },
"airtimeUtilization": { "airtimeUtilization": {
"label": "Airtime Utilization (%)" "label": "Utilisation du temps d’antenne (%)"
}, },
"batteryLevel": { "batteryLevel": {
"label": "Battery level (%)", "label": "Niveau de batterie (%)",
"labelText": "Battery level (%): {{value}}" "labelText": "Niveau de batterie (%) : {{value}}"
}, },
"batteryVoltage": { "batteryVoltage": {
"label": "Battery voltage (V)", "label": "Tension de batterie (V)",
"title": "Tension" "title": "Tension"
}, },
"channelUtilization": { "channelUtilization": {
"label": "Channel Utilization (%)" "label": "Utilisation du canal (%)"
}, },
"hops": { "hops": {
"direct": "Direk", "direct": "Direk",
"label": "Number of hops", "label": "Nombre de sauts",
"text": "Number of hops: {{value}}" "text": "Nombre de sauts : {{value}}"
}, },
"lastHeard": { "lastHeard": {
"label": "Dernière écoute", "label": "Dernière écoute",
"labelText": "Last heard: {{value}}", "labelText": "Dernier signal reçu : {{value}}",
"nowLabel": "Now" "nowLabel": "Maintenant"
}, },
"snr": { "snr": {
"label": "SNR (db)" "label": "SNR (db)"
}, },
"favorites": { "favorites": {
"label": "Favorites" "label": "Favoris"
}, },
"hide": { "hide": {
"label": "Hide" "label": "Masquer"
}, },
"showOnly": { "showOnly": {
"label": "Show Only" "label": "Montrer seulement"
}, },
"viaMqtt": { "viaMqtt": {
"label": "Connected via MQTT" "label": "Connecté via MQTT"
}, },
"hopsUnknown": { "hopsUnknown": {
"label": "Unknown number of hops" "label": "Nombre de sauts inconnu"
}, },
"showUnheard": { "showUnheard": {
"label": "Never heard" "label": "Jamais entendu"
}, },
"language": { "language": {
"label": "Langue", "label": "Langue",
"changeLanguage": "Change Language" "changeLanguage": "Changer la langue"
}, },
"theme": { "theme": {
"dark": "Sombre", "dark": "Sombre",
"light": "Clair", "light": "Clair",
"system": "Automatic", "system": "Automatique",
"changeTheme": "Change Color Scheme" "changeTheme": "Changer le schéma de couleurs"
}, },
"errorPage": { "errorPage": {
"title": "This is a little embarrassing...", "title": "C'est un peu embarrassant...",
"description1": "We are really sorry but an error occurred in the web client that caused it to crash. <br /> This is not supposed to happen, and we are working hard to fix it.", "description1": "Nous sommes vraiment désolés mais une erreur est survenue dans le client web qui l'a fait planter. <br /> Ce n'est pas censé se produire, et nous travaillons dur pour le corriger.",
"description2": "The best way to prevent this from happening again to you or anyone else is to report the issue to us.", "description2": "La meilleure façon d'éviter que cela ne se reproduise à vous ou à qui que ce soit d'autre consiste à nous signaler le problème.",
"reportInstructions": "Please include the following information in your report:", "reportInstructions": "Veuillez inclure les informations suivantes dans votre rapport :",
"reportSteps": { "reportSteps": {
"step1": "What you were doing when the error occurred", "step1": "Ce que vous faisiez lorsque l'erreur s'est produite",
"step2": "What you expected to happen", "step2": "Ce que vous vous attendiez à se produire",
"step3": "What actually happened", "step3": "Ce qui s'est réellement passé",
"step4": "Any other relevant information" "step4": "Toute autre information pertinente"
}, },
"reportLink": "You can report the issue to our <0>GitHub</0>", "reportLink": "Vous pouvez signaler le problème à notre <0>GitHub</0>",
"dashboardLink": "Return to the <0>dashboard</0>", "dashboardLink": "Retourner au <0>tableau de bord</0>",
"detailsSummary": "Error Details", "detailsSummary": "Détails de l'erreur",
"errorMessageLabel": "Error message:", "errorMessageLabel": "Message d'erreur :",
"stackTraceLabel": "Stack trace:", "stackTraceLabel": "État de la pile :",
"fallbackError": "{{error}}" "fallbackError": "{{error}}"
}, },
"footer": { "footer": {
"text": "Powered by <0>▲ Vercel</0> | Meshtastic® is a registered trademark of Meshtastic LLC. | <1>Legal Information</1>", "text": "Propulsé par <0>▲ Vercel</0> | Meshtastic® est une marque déposée de Meshtastic LLC. | <1>Informations légales</1>",
"commitSha": "Commit SHA: {{sha}}" "commitSha": "SHA : {{sha}}"
} }
} }

97
packages/web/public/i18n/locales/it-IT/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "Nessun risultato trovato.", "emptyState": "Nessun risultato trovato.",
"page": { "page": {
"title": "Menu Comandi" "title": "Menu Comandi"
}, },
"pinGroup": { "pinGroup": {
"label": "Fissa gruppo comandi" "label": "Fissa gruppo comandi"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Rimuovi gruppo comandi" "label": "Rimuovi gruppo comandi"
}, },
"goto": { "goto": {
"label": "Vai a", "label": "Vai a",
"command": { "command": {
"messages": "Messaggi", "messages": "Messaggi",
"map": "Mappa", "map": "Mappa",
"config": "Configurazione", "config": "Configurazione",
"channels": "Canali", "channels": "Canali",
"nodes": "Nodi" "nodes": "Nodi"
} }
}, },
"manage": { "manage": {
"label": "Gestisci", "label": "Gestisci",
"command": { "command": {
"switchNode": "Cambia Nodo", "switchNode": "Cambia Nodo",
"connectNewNode": "Connetti Nuovo Nodo" "connectNewNode": "Connetti Nuovo Nodo"
} }
}, },
"contextual": { "contextual": {
"label": "Contestuale", "label": "Contestuale",
"command": { "command": {
"qrCode": "Codice QR", "qrCode": "Codice QR",
"qrGenerator": "Generatore", "qrGenerator": "Generatore",
"qrImport": "Importa", "qrImport": "Importa",
"scheduleShutdown": "Pianifica Spegnimento", "scheduleShutdown": "Pianifica Spegnimento",
"scheduleReboot": "Pianifica Riavvio", "scheduleReboot": "Pianifica Riavvio",
"rebootToOtaMode": "Riavvia In Modalità OTA", "rebootToOtaMode": "Riavvia In Modalità OTA",
"resetNodeDb": "Resetta DB dei Nodi", "resetNodeDb": "Resetta DB dei Nodi",
"factoryResetDevice": "Factory reset dispositivo", "factoryResetDevice": "Factory reset dispositivo",
"factoryResetConfig": "Factory reset impostazioni" "factoryResetConfig": "Factory reset impostazioni",
} "disconnect": "Disconnetti"
}, }
"debug": { },
"label": "Debug", "debug": {
"command": { "label": "Debug",
"reconfigure": "Riconfigura", "command": {
"clearAllStoredMessages": "Cancella Tutti i Messaggi Memorizzati" "reconfigure": "Riconfigura",
} "clearAllStoredMessages": "Cancella Tutti i Messaggi Memorizzati"
} }
}
} }

23
packages/web/public/i18n/locales/it-IT/dialog.json

@ -7,7 +7,13 @@
"description": "Il dispositivo verrà riavviato una volta salvata la configurazione.", "description": "Il dispositivo verrà riavviato una volta salvata la configurazione.",
"longName": "Nome Lungo", "longName": "Nome Lungo",
"shortName": "Nome Breve", "shortName": "Nome Breve",
"title": "Cambia Nome Dispositivo" "title": "Cambia Nome Dispositivo",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "La configurazione attuale di LoRa sarà sovrascritta.", "description": "La configurazione attuale di LoRa sarà sovrascritta.",
@ -21,9 +27,10 @@
"title": "Importa Set Canale" "title": "Importa Set Canale"
}, },
"locationResponse": { "locationResponse": {
"title": "Posizione: {{identifier}}",
"altitude": "Altitudine: ", "altitude": "Altitudine: ",
"coordinates": "Coordinate: ", "coordinates": "Coordinate: ",
"title": "Posizione: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Rigenerare La Chiave Pre-Condivisa?", "title": "Rigenerare La Chiave Pre-Condivisa?",
@ -60,11 +67,15 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "Nessun dispositivo ancora abbinato.", "noDevicesPaired": "Nessun dispositivo ancora abbinato.",
"newDeviceButton": "Nuovo dispositivo" "newDeviceButton": "Nuovo dispositivo",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "Questo tipo di connessione richiede <0></0>. Si prega di utilizzare un browser supportato, come Chrome o Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.",
"requiresSecureContext": "Questa applicazione richiede un <0>contesto sicuro</0>. Si prega di connettersi utilizzando HTTPS o localhost.", "requiresSecureContext": "Questa applicazione richiede un <0>contesto sicuro</0>. Si prega di connettersi utilizzando HTTPS o localhost.",
"additionallyRequiresSecureContext": "Inoltre, richiede un <0>contesto sicuro</0>. Si prega di connettersi utilizzando HTTPS o localhost." "additionallyRequiresSecureContext": "Inoltre, richiede un <0>contesto sicuro</0>. Si prega di connettersi utilizzando HTTPS o localhost."
} }
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Sì, so cosa sto facendo", "confirmUnderstanding": "Sì, so cosa sto facendo",
"title": "Sei sicuro?", "title": "Sei sicuro?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

97
packages/web/public/i18n/locales/ja-JP/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "No results found.", "emptyState": "No results found.",
"page": { "page": {
"title": "Command Menu" "title": "Command Menu"
}, },
"pinGroup": { "pinGroup": {
"label": "Pin command group" "label": "Pin command group"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Unpin command group" "label": "Unpin command group"
}, },
"goto": { "goto": {
"label": "Goto", "label": "Goto",
"command": { "command": {
"messages": "メッセージ", "messages": "メッセージ",
"map": "地図", "map": "地図",
"config": "Config", "config": "Config",
"channels": "チャンネル", "channels": "チャンネル",
"nodes": "ノード" "nodes": "ノード"
} }
}, },
"manage": { "manage": {
"label": "Manage", "label": "Manage",
"command": { "command": {
"switchNode": "Switch Node", "switchNode": "Switch Node",
"connectNewNode": "Connect New Node" "connectNewNode": "Connect New Node"
} }
}, },
"contextual": { "contextual": {
"label": "Contextual", "label": "Contextual",
"command": { "command": {
"qrCode": "QR Code", "qrCode": "QR Code",
"qrGenerator": "Generator", "qrGenerator": "Generator",
"qrImport": "インポート", "qrImport": "インポート",
"scheduleShutdown": "Schedule Shutdown", "scheduleShutdown": "Schedule Shutdown",
"scheduleReboot": "Schedule Reboot", "scheduleReboot": "Schedule Reboot",
"rebootToOtaMode": "Reboot To OTA Mode", "rebootToOtaMode": "Reboot To OTA Mode",
"resetNodeDb": "Reset Node DB", "resetNodeDb": "Reset Node DB",
"factoryResetDevice": "Factory Reset Device", "factoryResetDevice": "Factory Reset Device",
"factoryResetConfig": "Factory Reset Config" "factoryResetConfig": "Factory Reset Config",
} "disconnect": "Disconnect"
}, }
"debug": { },
"label": "Debug", "debug": {
"command": { "label": "Debug",
"reconfigure": "Reconfigure", "command": {
"clearAllStoredMessages": "Clear All Stored Message" "reconfigure": "Reconfigure",
} "clearAllStoredMessages": "Clear All Stored Message"
} }
}
} }

23
packages/web/public/i18n/locales/ja-JP/dialog.json

@ -7,7 +7,13 @@
"description": "The Device will restart once the config is saved.", "description": "The Device will restart once the config is saved.",
"longName": "Long Name", "longName": "Long Name",
"shortName": "Short Name", "shortName": "Short Name",
"title": "Change Device Name" "title": "Change Device Name",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "The current LoRa configuration will be overridden.", "description": "The current LoRa configuration will be overridden.",
@ -21,9 +27,10 @@
"title": "Import Channel Set" "title": "Import Channel Set"
}, },
"locationResponse": { "locationResponse": {
"title": "Location: {{identifier}}",
"altitude": "Altitude: ", "altitude": "Altitude: ",
"coordinates": "Coordinates: ", "coordinates": "Coordinates: ",
"title": "Location: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?", "title": "Regenerate Pre-Shared Key?",
@ -60,11 +67,15 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "New device" "newDeviceButton": "New device",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "This connection type requires <0></0>. Please use a supported browser, like Chrome or Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.", "requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.",
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost." "additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
} }
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Yes, I know what I'm doing", "confirmUnderstanding": "Yes, I know what I'm doing",
"title": "よろしいですか?", "title": "よろしいですか?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

80
packages/web/public/i18n/locales/ko-KR/channels.json

@ -1,69 +1,69 @@
{ {
"page": { "page": {
"sectionLabel": "채널", "sectionLabel": "채널",
"channelName": "Channel: {{channelName}}", "channelName": "채널 {{channelName}}",
"broadcastLabel": "Primary", "broadcastLabel": "주 채널",
"channelIndex": "Ch {{index}}" "channelIndex": "Ch {{index}}"
}, },
"validation": { "validation": {
"pskInvalid": "Please enter a valid {{bits}} bit PSK." "pskInvalid": "유효한 {{bits}} bit PSK를 입력해 주세요."
}, },
"settings": { "settings": {
"label": "채널 설정", "label": "채널 설정",
"description": "Crypto, MQTT & misc settings" "description": "암호화, MQTT 및 기타 설정"
}, },
"role": { "role": {
"label": "역할", "label": "역할",
"description": "Device telemetry is sent over PRIMARY. Only one PRIMARY allowed", "description": "장치 텔레메트리 데이터는 주 채널을 통해 전송됩니다. 주 채널은 하나만 허용됩니다",
"options": { "options": {
"primary": "PRIMARY", "primary": "주 채널",
"disabled": "DISABLED", "disabled": "비활성화",
"secondary": "SECONDARY" "secondary": "보조 채널"
} }
}, },
"psk": { "psk": {
"label": "Pre-Shared Key", "label": "사전 공유 키",
"description": "Supported PSK lengths: 256-bit, 128-bit, 8-bit, Empty (0-bit)", "description": "지원되는 PSK 길이: 256-bit, 128-bit, 8-bit, Empty (0-bit)",
"generate": "Generate" "generate": "생성"
}, },
"name": { "name": {
"label": "이름", "label": "이름",
"description": "A unique name for the channel <12 bytes, leave blank for default" "description": "채널의 고유 이름 12 바이트 미만, 기본 값을 사용하려면 빈칸으로 두세요"
}, },
"uplinkEnabled": { "uplinkEnabled": {
"label": "Uplink Enabled", "label": "업링크 활성화",
"description": "Send messages from the local mesh to MQTT" "description": "로컬 메쉬에서 MQTT로 메시지를 전송합니다"
}, },
"downlinkEnabled": { "downlinkEnabled": {
"label": "Downlink Enabled", "label": "다운링크 활성화",
"description": "Send messages from MQTT to the local mesh" "description": "MQTT를 통해 로컬 메쉬로 메시지를 전송합니다"
}, },
"positionPrecision": { "positionPrecision": {
"label": "Location", "label": "위치",
"description": "The precision of the location to share with the channel. Can be disabled.", "description": "채널에 공유할 위치 정확도. 비활성화 할 수 있습니다.",
"options": { "options": {
"none": "Do not share location", "none": "위치를 공유하지 않습니다",
"precise": "Precise Location", "precise": "정확한 위치",
"metric_km23": "Within 23 kilometers", "metric_km23": "23 km 이내",
"metric_km12": "Within 12 kilometers", "metric_km12": "12 km 이내",
"metric_km5_8": "Within 5.8 kilometers", "metric_km5_8": "5.8 km 이내",
"metric_km2_9": "Within 2.9 kilometers", "metric_km2_9": "2.9 km 이내",
"metric_km1_5": "Within 1.5 kilometers", "metric_km1_5": "1.5 km 이내",
"metric_m700": "Within 700 meters", "metric_m700": "700 m 이내",
"metric_m350": "Within 350 meters", "metric_m350": "350 m 이내",
"metric_m200": "Within 200 meters", "metric_m200": "200 m 이내",
"metric_m90": "Within 90 meters", "metric_m90": "90 m 이내",
"metric_m50": "Within 50 meters", "metric_m50": "50 m 이내",
"imperial_mi15": "Within 15 miles", "imperial_mi15": "15 miles 이내",
"imperial_mi7_3": "Within 7.3 miles", "imperial_mi7_3": "7.3 miles 이내",
"imperial_mi3_6": "Within 3.6 miles", "imperial_mi3_6": "3.6 miles 이내",
"imperial_mi1_8": "Within 1.8 miles", "imperial_mi1_8": "1.8 miles 이내",
"imperial_mi0_9": "Within 0.9 miles", "imperial_mi0_9": "0.9 miles 이내",
"imperial_mi0_5": "Within 0.5 miles", "imperial_mi0_5": "0.5 miles 이내",
"imperial_mi0_2": "Within 0.2 miles", "imperial_mi0_2": "0.2 miles 이내",
"imperial_ft600": "Within 600 feet", "imperial_ft600": "600 feet 이내",
"imperial_ft300": "Within 300 feet", "imperial_ft300": "300 feet 이내",
"imperial_ft150": "Within 150 feet" "imperial_ft150": "150 feet 이내"
} }
} }
} }

97
packages/web/public/i18n/locales/ko-KR/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "No results found.", "emptyState": "검색된 결과 없음.",
"page": { "page": {
"title": "Command Menu" "title": "명령 메뉴"
}, },
"pinGroup": { "pinGroup": {
"label": "Pin command group" "label": "명령 그룹 고정"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Unpin command group" "label": "명령 그룹 고정 해제"
}, },
"goto": { "goto": {
"label": "Goto", "label": "메뉴",
"command": { "command": {
"messages": "메시지", "messages": "메시지기기",
"map": "지도", "map": "지도",
"config": "Config", "config": "설정",
"channels": "채널", "channels": "채널",
"nodes": "Nodes" "nodes": "노드"
} }
}, },
"manage": { "manage": {
"label": "Manage", "label": "관리",
"command": { "command": {
"switchNode": "Switch Node", "switchNode": "노드 변경",
"connectNewNode": "Connect New Node" "connectNewNode": "새로운 노드 연결"
} }
}, },
"contextual": { "contextual": {
"label": "Contextual", "label": "관련 기능",
"command": { "command": {
"qrCode": "QR Code", "qrCode": "QR 코드",
"qrGenerator": "Generator", "qrGenerator": "생성",
"qrImport": "불러오기", "qrImport": "불러오기",
"scheduleShutdown": "Schedule Shutdown", "scheduleShutdown": "종료 예약",
"scheduleReboot": "Schedule Reboot", "scheduleReboot": "재부팅 예약",
"rebootToOtaMode": "Reboot To OTA Mode", "rebootToOtaMode": "OTA 모드로 재부팅",
"resetNodeDb": "Reset Node DB", "resetNodeDb": "노드 목록 초기화",
"factoryResetDevice": "Factory Reset Device", "factoryResetDevice": "공장 초기화",
"factoryResetConfig": "Factory Reset Config" "factoryResetConfig": "설정 초기",
} "disconnect": "연결 끊기"
}, }
"debug": { },
"label": "Debug", "debug": {
"command": { "label": "디버그",
"reconfigure": "Reconfigure", "command": {
"clearAllStoredMessages": "Clear All Stored Message" "reconfigure": "재설정",
} "clearAllStoredMessages": "저장된 모든 메시지 삭제"
} }
}
} }

116
packages/web/public/i18n/locales/ko-KR/common.json

@ -1,37 +1,37 @@
{ {
"button": { "button": {
"apply": "적용", "apply": "적용",
"backupKey": "Backup Key", "backupKey": "백업 키",
"cancel": "취소", "cancel": "취소",
"clearMessages": "Clear Messages", "clearMessages": "메시지 삭제",
"close": "닫기", "close": "닫기",
"confirm": "Confirm", "confirm": "확인",
"delete": "삭제", "delete": "삭제",
"dismiss": "Dismiss", "dismiss": "취소",
"download": "Download", "download": "다운로드",
"export": "Export", "export": "내보내기",
"generate": "Generate", "generate": "생성",
"regenerate": "Regenerate", "regenerate": "재생성",
"import": "불러오기", "import": "불러오기",
"message": "메시지", "message": "메시지",
"now": "Now", "now": "지금",
"ok": "확인", "ok": "확인",
"print": "Print", "print": "인쇄",
"rebootOtaNow": "Reboot to OTA Mode Now", "rebootOtaNow": "지금 OTA 모드로 재부팅",
"remove": "지우기", "remove": "지우기",
"requestNewKeys": "Request New Keys", "requestNewKeys": "새로운 키 요청",
"requestPosition": "Request Position", "requestPosition": "위치 요청",
"reset": "초기화", "reset": "초기화",
"save": "저장", "save": "저장",
"scanQr": " QR코드 스캔", "scanQr": " QR코드 스캔",
"traceRoute": "Trace Route", "traceRoute": "추적 루트",
"submit": "Submit" "submit": "제출"
}, },
"app": { "app": {
"title": "Meshtastic", "title": "Meshtastic",
"fullTitle": "Meshtastic Web Client" "fullTitle": "Meshtastic 웹 클라이언트"
}, },
"loading": "Loading...", "loading": "로딩 중...",
"unit": { "unit": {
"cps": "CPS", "cps": "CPS",
"dbm": "dBm", "dbm": "dBm",
@ -41,55 +41,55 @@
"plural": "Hops" "plural": "Hops"
}, },
"hopsAway": { "hopsAway": {
"one": "{{count}} hop away", "one": "{{count}} hop 떨어짐",
"plural": "{{count}} hops away", "plural": "{{count}} hops 떨어짐",
"unknown": "Unknown hops away" "unknown": "알 수 없는 hops 떨어짐"
}, },
"megahertz": "MHz", "megahertz": "MHz",
"raw": "raw", "raw": "raw",
"meter": { "meter": {
"one": "Meter", "one": "미터",
"plural": "Meters", "plural": "미터",
"suffix": "m" "suffix": "m"
}, },
"minute": { "minute": {
"one": "Minute", "one": "",
"plural": "Minutes" "plural": ""
}, },
"hour": { "hour": {
"one": "Hour", "one": "",
"plural": "Hours" "plural": ""
}, },
"millisecond": { "millisecond": {
"one": "Millisecond", "one": "밀리초",
"plural": "Milliseconds", "plural": "밀리초",
"suffix": "ms" "suffix": "ms"
}, },
"second": { "second": {
"one": "Second", "one": "",
"plural": "Seconds" "plural": ""
}, },
"day": { "day": {
"one": "Day", "one": "",
"plural": "Days" "plural": ""
}, },
"month": { "month": {
"one": "Month", "one": "",
"plural": "Months" "plural": ""
}, },
"year": { "year": {
"one": "Year", "one": "",
"plural": "Years" "plural": ""
}, },
"snr": "SNR", "snr": "SNR",
"volt": { "volt": {
"one": "Volt", "one": "볼트",
"plural": "Volts", "plural": "볼트",
"suffix": "V" "suffix": "V"
}, },
"record": { "record": {
"one": "Records", "one": "레코드",
"plural": "Records" "plural": "레코드"
} }
}, },
"security": { "security": {
@ -99,7 +99,7 @@
"256bit": "256 bit" "256bit": "256 bit"
}, },
"unknown": { "unknown": {
"longName": "Unknown", "longName": "알 수 없는",
"shortName": "UNK", "shortName": "UNK",
"notAvailable": "N/A", "notAvailable": "N/A",
"num": "??" "num": "??"
@ -107,35 +107,35 @@
"nodeUnknownPrefix": "!", "nodeUnknownPrefix": "!",
"unset": "UNSET", "unset": "UNSET",
"fallbackName": "Meshtastic {{last4}}", "fallbackName": "Meshtastic {{last4}}",
"node": "Node", "node": "노드",
"formValidation": { "formValidation": {
"unsavedChanges": "Unsaved changes", "unsavedChanges": "변경 내용이 저장되지 않았습니다",
"tooBig": { "tooBig": {
"string": "Too long, expected less than or equal to {{maximum}} characters.", "string": "너무 깁니다. {{maximum}} 문자 이하",
"number": "Too big, expected a number smaller than or equal to {{maximum}}.", "number": "너무 큽니다. {{maximum}} 이하",
"bytes": "Too big, expected less than or equal to {{params.maximum}} bytes." "bytes": "너무 큽니다. {{params.maximum}} 바이트 이하"
}, },
"tooSmall": { "tooSmall": {
"string": "Too short, expected more than or equal to {{minimum}} characters.", "string": "너무 짧습니다. {{minimum}} 이상",
"number": "Too small, expected a number larger than or equal to {{minimum}}." "number": "너무 작습니다. {{minimum}} 이상"
}, },
"invalidFormat": { "invalidFormat": {
"ipv4": "Invalid format, expected an IPv4 address.", "ipv4": "잘못된 형식입니다. IPv4 주소",
"key": "Invalid format, expected a Base64 encoded pre-shared key (PSK)." "key": "잘못된 형식입니다. Base64로 인코딩된 사전 공유키 (PSK)"
}, },
"invalidType": { "invalidType": {
"number": "Invalid type, expected a number." "number": "잘못된 타입입니다. 숫자"
}, },
"pskLength": { "pskLength": {
"0bit": "Key is required to be empty.", "0bit": "키는 비어있어야 합니다.",
"8bit": "Key is required to be an 8 bit pre-shared key (PSK).", "8bit": "8 bit 사전공유키 (PSK) 가 필요합니다.",
"128bit": "Key is required to be a 128 bit pre-shared key (PSK).", "128bit": "128 bit 사전공유키 (PSK) 가 필요합니다.",
"256bit": "Key is required to be a 256 bit pre-shared key (PSK)." "256bit": "256 bit 사전공유키 (PSK) 가 필요합니다."
}, },
"required": { "required": {
"generic": "This field is required.", "generic": "필수 입력 사항입니다.",
"managed": "At least one admin key is requred if the node is managed.", "managed": "노드 관리를 위해 최소 한 개의 관리자 키가 필요합니다.",
"key": "Key is required." "key": "키가 필요합니다."
} }
} }
} }

10
packages/web/public/i18n/locales/ko-KR/dashboard.json

@ -1,12 +1,12 @@
{ {
"dashboard": { "dashboard": {
"title": "Connected Devices", "title": "연결된 장치",
"description": "Manage your connected Meshtastic devices.", "description": "연결된 Meshtastic 장치를 관리하세요.",
"connectionType_ble": "BLE", "connectionType_ble": "BLE",
"connectionType_serial": "시리얼", "connectionType_serial": "시리얼",
"connectionType_network": "네트워크", "connectionType_network": "네트워크",
"noDevicesTitle": "No devices connected", "noDevicesTitle": "연결된 장치 없음",
"noDevicesDescription": "Connect a new device to get started.", "noDevicesDescription": "새로운 장치를 연결하여 시작하세요.",
"button_newConnection": "New Connection" "button_newConnection": "새 연결"
} }
} }

236
packages/web/public/i18n/locales/ko-KR/deviceConfig.json

@ -1,8 +1,8 @@
{ {
"page": { "page": {
"title": "Configuration", "title": "설정",
"tabBluetooth": "블루투스", "tabBluetooth": "블루투스",
"tabDevice": "기기", "tabDevice": "장치",
"tabDisplay": "화면", "tabDisplay": "화면",
"tabLora": "LoRa", "tabLora": "LoRa",
"tabNetwork": "네트워크", "tabNetwork": "네트워크",
@ -11,150 +11,150 @@
"tabSecurity": "보안" "tabSecurity": "보안"
}, },
"sidebar": { "sidebar": {
"label": "Modules" "label": "모듈"
}, },
"device": { "device": {
"title": "Device Settings", "title": "장치 설정",
"description": "Settings for the device", "description": "장치 설정",
"buttonPin": { "buttonPin": {
"description": "Button pin override", "description": "버튼 핀 오버라이드",
"label": "Button Pin" "label": "버튼 핀"
}, },
"buzzerPin": { "buzzerPin": {
"description": "Buzzer pin override", "description": "부저 핀 오버라이드",
"label": "Buzzer Pin" "label": "부저 핀"
}, },
"disableTripleClick": { "disableTripleClick": {
"description": "Disable triple click", "description": "세 번 클릭 끄기",
"label": "Disable Triple Click" "label": "세 번 클릭 끄기"
}, },
"doubleTapAsButtonPress": { "doubleTapAsButtonPress": {
"description": "Treat double tap as button press", "description": "더블 탭하여 버튼 누름",
"label": "Double Tap as Button Press" "label": "더블 탭하여 버튼 누름"
}, },
"ledHeartbeatDisabled": { "ledHeartbeatDisabled": {
"description": "Disable default blinking LED", "description": "기본 깜빡이는 LED를 비활성화",
"label": "LED Heartbeat Disabled" "label": "LED 깜빡임 비활성화"
}, },
"nodeInfoBroadcastInterval": { "nodeInfoBroadcastInterval": {
"description": "How often to broadcast node info", "description": "노드 정보의 발송 주기를 설정",
"label": "Node Info Broadcast Interval" "label": "노드 정보 발송 주기"
}, },
"posixTimezone": { "posixTimezone": {
"description": "The POSIX timezone string for the device", "description": "장치의 Posix Timezone String 입력",
"label": "POSIX 시간대" "label": "POSIX 시간대"
}, },
"rebroadcastMode": { "rebroadcastMode": {
"description": "How to handle rebroadcasting", "description": "중계를 처리하는 방법 설정",
"label": "Rebroadcast Mode" "label": "중계 모드"
}, },
"role": { "role": {
"description": "What role the device performs on the mesh", "description": "해당 장치가 메쉬에서 수행하는 역할을 설정",
"label": "역할" "label": "역할"
} }
}, },
"bluetooth": { "bluetooth": {
"title": "Bluetooth Settings", "title": "블루투스 설정",
"description": "Settings for the Bluetooth module", "description": "블루투스 설정",
"note": "Note: Some devices (ESP32) cannot use both Bluetooth and WiFi at the same time.", "note": "참고: 일부 장치(ESP32)는 블루투스와 와이파이를 동시에 사용할 수 없습니다.",
"enabled": { "enabled": {
"description": "Enable or disable Bluetooth", "description": "블루투스를 켜거나 끕니다.",
"label": "Enabled" "label": "활성화"
}, },
"pairingMode": { "pairingMode": {
"description": "Pin selection behaviour.", "description": "핀 선택",
"label": "페어링 모드" "label": "페어링 모드"
}, },
"pin": { "pin": {
"description": "Pin to use when pairing", "description": "페어링에 사용할 핀",
"label": "Pin" "label": ""
} }
}, },
"display": { "display": {
"description": "Settings for the device display", "description": "장치의 디스플레이 설정",
"title": "Display Settings", "title": "디스플레이 설정",
"headingBold": { "headingBold": {
"description": "Bolden the heading text", "description": "상태표시줄 볼드체 적용하기",
"label": "Bold Heading" "label": "상태표시줄 볼드체"
}, },
"carouselDelay": { "carouselDelay": {
"description": "How fast to cycle through windows", "description": "화면 전환 사이클 시간을 입력",
"label": "Carousel Delay" "label": "전환 시간"
}, },
"compassNorthTop": { "compassNorthTop": {
"description": "Fix north to the top of compass", "description": "나침반 상단을 북쪽으로 고정",
"label": "Compass North Top" "label": "나침반 북쪽 고정"
}, },
"displayMode": { "displayMode": {
"description": "Screen layout variant", "description": "스크린 레이아웃 변형",
"label": "Display Mode" "label": "디스플레이 모드"
}, },
"displayUnits": { "displayUnits": {
"description": "Display metric or imperial units", "description": "단위 표시 형식",
"label": "Display Units" "label": "단위 표시"
}, },
"flipScreen": { "flipScreen": {
"description": "Flip display 180 degrees", "description": "화면 180도 뒤집기",
"label": "Flip Screen" "label": "화면 뒤집기"
}, },
"gpsDisplayUnits": { "gpsDisplayUnits": {
"description": "Coordinate display format", "description": "좌표 표시 형식",
"label": "GPS Display Units" "label": "GPS 표시 단위"
}, },
"oledType": { "oledType": {
"description": "Type of OLED screen attached to the device", "description": "장치에 부착된 OLED 화면의 유형",
"label": "OLED Type" "label": "OLED 타입"
}, },
"screenTimeout": { "screenTimeout": {
"description": "Turn off the display after this long", "description": "디스플레이가 꺼지기까지 걸리는 시간",
"label": "Screen Timeout" "label": "화면 끄기 시간"
}, },
"twelveHourClock": { "twelveHourClock": {
"description": "Use 12-hour clock format", "description": "12시간제 보기",
"label": "12-Hour Clock" "label": "12시간제"
}, },
"wakeOnTapOrMotion": { "wakeOnTapOrMotion": {
"description": "Wake the device on tap or motion", "description": "탭하거나 모션으로 깨우기",
"label": "Wake on Tap or Motion" "label": "탭하거나 모션으로 깨우기"
} }
}, },
"lora": { "lora": {
"title": "Mesh Settings", "title": "Mesh 설정",
"description": "Settings for the LoRa mesh", "description": "LoRa mesh 설정",
"bandwidth": { "bandwidth": {
"description": "Channel bandwidth in MHz", "description": "채널 대역폭 MHz",
"label": "대역폭" "label": "대역폭"
}, },
"boostedRxGain": { "boostedRxGain": {
"description": "Boosted RX gain", "description": "수신 부스트 gain",
"label": "Boosted RX Gain" "label": "수신 부스트 Gain"
}, },
"codingRate": { "codingRate": {
"description": "The denominator of the coding rate", "description": "Coding rate의 분모",
"label": "Coding Rate" "label": "Coding rate"
}, },
"frequencyOffset": { "frequencyOffset": {
"description": "Frequency offset to correct for crystal calibration errors", "description": "크리스탈 교정 오차를 보정하기 위한 주파수 오프셋",
"label": "Frequency Offset" "label": "주파수 오프셋"
}, },
"frequencySlot": { "frequencySlot": {
"description": "LoRa frequency channel number", "description": "LoRa 주파수 채널 번호",
"label": "Frequency Slot" "label": "주파수 슬롯"
}, },
"hopLimit": { "hopLimit": {
"description": "Maximum number of hops", "description": "최고 hops 수",
"label": "Hop Limit" "label": "Hop 제한"
}, },
"ignoreMqtt": { "ignoreMqtt": {
"description": "Don't forward MQTT messages over the mesh", "description": "MQTT로 부터 mesh로 메시지를를 전달하지 않습니다",
"label": "MQTT로 부터 수신 무시" "label": "MQTT로 부터 수신 무시"
}, },
"modemPreset": { "modemPreset": {
"description": "Modem preset to use", "description": "모뎀 프리셋 사용",
"label": "모뎀 프리셋" "label": "모뎀 프리셋"
}, },
"okToMqtt": { "okToMqtt": {
"description": "When set to true, this configuration indicates that the user approves the packet to be uploaded to MQTT. If set to false, remote nodes are requested not to forward packets to MQTT", "description": "이 설정을 true로 하면 사용자가 패킷을 MQTT에 업로드하는 것을 허용하고, false 이면 원격 노드들은 패킷을 MQTT로 전달하지 않도록 요청됩니다",
"label": "MQTT로 전송 허용" "label": "MQTT로 전송 허용"
}, },
"overrideDutyCycle": { "overrideDutyCycle": {
@ -162,118 +162,118 @@
"label": "Duty Cycle 무시" "label": "Duty Cycle 무시"
}, },
"overrideFrequency": { "overrideFrequency": {
"description": "Override frequency", "description": "해당 주파수 강제 설정",
"label": "Override Frequency" "label": "주파수 오버라이드"
}, },
"region": { "region": {
"description": "Sets the region for your node", "description": "당신의 노드의 지역을 설정하세요",
"label": "지역" "label": "지역"
}, },
"spreadingFactor": { "spreadingFactor": {
"description": "Indicates the number of chirps per symbol", "description": "Indicates the number of chirps per symbol",
"label": "Spreading Factor" "label": "Spread factor"
}, },
"transmitEnabled": { "transmitEnabled": {
"description": "Enable/Disable transmit (TX) from the LoRa radio", "description": "LoRa 전송(TX)을 활성화/비활성화합니다",
"label": "Transmit Enabled" "label": "전송 활성화"
}, },
"transmitPower": { "transmitPower": {
"description": "Max transmit power", "description": "최대 전송 출력",
"label": "Transmit Power" "label": "전송 출력"
}, },
"usePreset": { "usePreset": {
"description": "Use one of the predefined modem presets", "description": "사전 정의된 모뎀프리셋을 사용하세요",
"label": "Use Preset" "label": "프리셋 사용"
}, },
"meshSettings": { "meshSettings": {
"description": "Settings for the LoRa mesh", "description": "LoRa mesh 설정",
"label": "Mesh Settings" "label": "Mesh 설정"
}, },
"waveformSettings": { "waveformSettings": {
"description": "Settings for the LoRa waveform", "description": "LoRa 파형 설정",
"label": "Waveform Settings" "label": "파형 설정"
}, },
"radioSettings": { "radioSettings": {
"label": "Radio Settings", "label": "무선 설정",
"description": "Settings for the LoRa radio" "description": "LoRa 무선 설정"
} }
}, },
"network": { "network": {
"title": "WiFi Config", "title": "WiFi 설정",
"description": "WiFi radio configuration", "description": "WiFi 설정",
"note": "Note: Some devices (ESP32) cannot use both Bluetooth and WiFi at the same time.", "note": "참고: 일부 장치(ESP32)는 블루투스와 와이파이를 동시에 사용할 수 없습니다.",
"addressMode": { "addressMode": {
"description": "Address assignment selection", "description": "주소 할당 선택",
"label": "Address Mode" "label": "주소 모드"
}, },
"dns": { "dns": {
"description": "DNS Server", "description": "DNS 서버",
"label": "DNS" "label": "DNS"
}, },
"ethernetEnabled": { "ethernetEnabled": {
"description": "Enable or disable the Ethernet port", "description": "이더넷 포트 활성화하거나 비활성화",
"label": "Enabled" "label": "활성화"
}, },
"gateway": { "gateway": {
"description": "Default Gateway", "description": "기본 게이트웨이",
"label": "게이트웨이" "label": "게이트웨이"
}, },
"ip": { "ip": {
"description": "IP Address", "description": "IP 주소",
"label": "IP" "label": "IP"
}, },
"psk": { "psk": {
"description": "Network password", "description": "네트워크 암호",
"label": "PSK" "label": "PSK"
}, },
"ssid": { "ssid": {
"description": "Network name", "description": "네트워크 이름",
"label": "SSID" "label": "SSID"
}, },
"subnet": { "subnet": {
"description": "Subnet Mask", "description": "서브넷 마스크",
"label": "서브넷" "label": "서브넷"
}, },
"wifiEnabled": { "wifiEnabled": {
"description": "Enable or disable the WiFi radio", "description": "WiFi를 활성화하거나 비활성화",
"label": "Enabled" "label": "활성화"
}, },
"meshViaUdp": { "meshViaUdp": {
"label": "Mesh via UDP" "label": "UDP를 통한 Mesh"
}, },
"ntpServer": { "ntpServer": {
"label": "NTP Server" "label": "NTP 서버"
}, },
"rsyslogServer": { "rsyslogServer": {
"label": "Rsyslog Server" "label": "Rsyslog 서버"
}, },
"ethernetConfigSettings": { "ethernetConfigSettings": {
"description": "Ethernet port configuration", "description": "이더넷 포트 설정",
"label": "Ethernet Config" "label": "이더넷 설정"
}, },
"ipConfigSettings": { "ipConfigSettings": {
"description": "IP configuration", "description": "IP 설정",
"label": "IP Config" "label": "IP 설정"
}, },
"ntpConfigSettings": { "ntpConfigSettings": {
"description": "NTP configuration", "description": "NTP 설정",
"label": "NTP Config" "label": "NTP 설정"
}, },
"rsyslogConfigSettings": { "rsyslogConfigSettings": {
"description": "Rsyslog configuration", "description": "Rsyslog 설정",
"label": "Rsyslog Config" "label": "Rsyslog 설정"
}, },
"udpConfigSettings": { "udpConfigSettings": {
"description": "UDP over Mesh configuration", "description": "UDP over Mesh 설정",
"label": "UDP 설정" "label": "UDP 설정"
} }
}, },
"position": { "position": {
"title": "Position Settings", "title": "위치 설정",
"description": "Settings for the position module", "description": "위치 설정",
"broadcastInterval": { "broadcastInterval": {
"description": "How often your position is sent out over the mesh", "description": "메쉬를 통해 당신의 위치 정보가 전송되는 빈도",
"label": "Broadcast Interval" "label": "전송 간격"
}, },
"enablePin": { "enablePin": {
"description": "GPS module enable pin override", "description": "GPS module enable pin override",
@ -357,7 +357,7 @@
}, },
"powerSavingEnabled": { "powerSavingEnabled": {
"description": "Select if powered from a low-current source (i.e. solar), to minimize power consumption as much as possible.", "description": "Select if powered from a low-current source (i.e. solar), to minimize power consumption as much as possible.",
"label": "저력 모드 설정" "label": "저력 모드 설정"
}, },
"shutdownOnBatteryDelay": { "shutdownOnBatteryDelay": {
"description": "Automatically shutdown node after this long when on battery, 0 for indefinite", "description": "Automatically shutdown node after this long when on battery, 0 for indefinite",
@ -379,7 +379,7 @@
"security": { "security": {
"description": "Settings for the Security configuration", "description": "Settings for the Security configuration",
"title": "Security Settings", "title": "Security Settings",
"button_backupKey": "Backup Key", "button_backupKey": "백업 키",
"adminChannelEnabled": { "adminChannelEnabled": {
"description": "Allow incoming device control over the insecure legacy admin channel", "description": "Allow incoming device control over the insecure legacy admin channel",
"label": "Allow Legacy Admin" "label": "Allow Legacy Admin"

45
packages/web/public/i18n/locales/ko-KR/dialog.json

@ -1,13 +1,19 @@
{ {
"deleteMessages": { "deleteMessages": {
"description": "This action will clear all message history. This cannot be undone. Are you sure you want to continue?", "description": "이 작업은 모든 메시지 기록을 삭제합니다. 이 작업은 되돌릴 수 없습니다. 계속하시겠습니까?",
"title": "Clear All Messages" "title": "모든 메시지 삭제"
}, },
"deviceName": { "deviceName": {
"description": "The Device will restart once the config is saved.", "description": "The Device will restart once the config is saved.",
"longName": "Long Name", "longName": "긴 이름",
"shortName": "Short Name", "shortName": "짧은 이름",
"title": "Change Device Name" "title": "장치 이름 변경",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "The current LoRa configuration will be overridden.", "description": "The current LoRa configuration will be overridden.",
@ -21,14 +27,15 @@
"title": "Import Channel Set" "title": "Import Channel Set"
}, },
"locationResponse": { "locationResponse": {
"title": "Location: {{identifier}}",
"altitude": "Altitude: ", "altitude": "Altitude: ",
"coordinates": "Coordinates: ", "coordinates": "Coordinates: ",
"title": "Location: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?", "title": "Regenerate Pre-Shared Key?",
"description": "Are you sure you want to regenerate the pre-shared key?", "description": "Are you sure you want to regenerate the pre-shared key?",
"regenerate": "Regenerate" "regenerate": "재생성"
}, },
"newDeviceDialog": { "newDeviceDialog": {
"title": "Connect New Device", "title": "Connect New Device",
@ -39,7 +46,7 @@
"tabSerial": "시리얼", "tabSerial": "시리얼",
"useHttps": "Use HTTPS", "useHttps": "Use HTTPS",
"connecting": "Connecting...", "connecting": "Connecting...",
"connect": "Connect", "connect": "연결",
"connectionFailedAlert": { "connectionFailedAlert": {
"title": "Connection Failed", "title": "Connection Failed",
"descriptionPrefix": "Could not connect to the device. ", "descriptionPrefix": "Could not connect to the device. ",
@ -60,19 +67,23 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "New device" "newDeviceButton": "New device",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "This connection type requires <0></0>. Please use a supported browser, like Chrome or Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.", "requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.",
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost." "additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
} }
}, },
"nodeDetails": { "nodeDetails": {
"message": "메시지", "message": "메시지",
"requestPosition": "Request Position", "requestPosition": "위치 요청",
"traceRoute": "Trace Route", "traceRoute": "추적 루트",
"airTxUtilization": "Air TX utilization", "airTxUtilization": "Air TX utilization",
"allRawMetrics": "All Raw Metrics:", "allRawMetrics": "All Raw Metrics:",
"batteryLevel": "Battery level", "batteryLevel": "Battery level",
@ -121,13 +132,13 @@
"title": "Generate QR Code" "title": "Generate QR Code"
}, },
"rebootOta": { "rebootOta": {
"title": "Schedule Reboot", "title": "재부팅 예약",
"description": "Reboot the connected node after a delay into OTA (Over-the-Air) mode.", "description": "Reboot the connected node after a delay into OTA (Over-the-Air) mode.",
"enterDelay": "Enter delay (sec)", "enterDelay": "Enter delay (sec)",
"scheduled": "Reboot has been scheduled" "scheduled": "Reboot has been scheduled"
}, },
"reboot": { "reboot": {
"title": "Schedule Reboot", "title": "재부팅 예약",
"description": "Reboot the connected node after x minutes." "description": "Reboot the connected node after x minutes."
}, },
"refreshKeys": { "refreshKeys": {
@ -144,7 +155,7 @@
"title": "Remove Node?" "title": "Remove Node?"
}, },
"shutdown": { "shutdown": {
"title": "Schedule Shutdown", "title": "종료 예약",
"description": "Turn off the connected node after x minutes." "description": "Turn off the connected node after x minutes."
}, },
"traceRoute": { "traceRoute": {
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Yes, I know what I'm doing", "confirmUnderstanding": "Yes, I know what I'm doing",
"title": "확실합니까?", "title": "확실합니까?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

32
packages/web/public/i18n/locales/ko-KR/messages.json

@ -1,39 +1,39 @@
{ {
"page": { "page": {
"title": "Messages: {{chatName}}", "title": "메시지: {{chatName}}",
"placeholder": "Enter Message" "placeholder": "메시지 입력"
}, },
"emptyState": { "emptyState": {
"title": "Select a Chat", "title": "채팅 선택",
"text": "No messages yet." "text": "아직 메시지가 없습니다."
}, },
"selectChatPrompt": { "selectChatPrompt": {
"text": "Select a channel or node to start messaging." "text": "채널 또는 노드를 선택하여 메시지 전송을 시작하세요."
}, },
"sendMessage": { "sendMessage": {
"placeholder": "Enter your message here...", "placeholder": "여기에 메시지를 입력하세요...",
"sendButton": "보내기" "sendButton": "보내기"
}, },
"actionsMenu": { "actionsMenu": {
"addReactionLabel": "Add Reaction", "addReactionLabel": "반응 추가",
"replyLabel": "Reply" "replyLabel": "답장"
}, },
"deliveryStatus": { "deliveryStatus": {
"delivered": { "delivered": {
"label": "Message delivered", "label": "메시지 전송",
"displayText": "Message delivered" "displayText": "메시지 전송됨"
}, },
"failed": { "failed": {
"label": "Message delivery failed", "label": "메시지 전송 실패",
"displayText": "Delivery failed" "displayText": "전송 실패"
}, },
"unknown": { "unknown": {
"label": "Message status unknown", "label": "메시지 상태 알 수 없음",
"displayText": "Unknown state" "displayText": "알 수 없는 상태"
}, },
"waiting": { "waiting": {
"label": "Sending message", "label": "메시지 전송 중",
"displayText": "Waiting for delivery" "displayText": "전송 대기 중"
} }
} }
} }

30
packages/web/public/i18n/locales/ko-KR/moduleConfig.json

@ -121,7 +121,7 @@
"title": "Detection Sensor Settings", "title": "Detection Sensor Settings",
"description": "Settings for the Detection Sensor module", "description": "Settings for the Detection Sensor module",
"enabled": { "enabled": {
"label": "Enabled", "label": "활성화",
"description": "Enable or disable Detection Sensor Module" "description": "Enable or disable Detection Sensor Module"
}, },
"minimumBroadcastSecs": { "minimumBroadcastSecs": {
@ -221,7 +221,7 @@
"title": "MQTT Settings", "title": "MQTT Settings",
"description": "Settings for the MQTT module", "description": "Settings for the MQTT module",
"enabled": { "enabled": {
"label": "Enabled", "label": "활성화",
"description": "Enable or disable MQTT" "description": "Enable or disable MQTT"
}, },
"address": { "address": {
@ -279,16 +279,16 @@
"metric_m200": "Within 200 m", "metric_m200": "Within 200 m",
"metric_m90": "Within 90 m", "metric_m90": "Within 90 m",
"metric_m50": "Within 50 m", "metric_m50": "Within 50 m",
"imperial_mi15": "Within 15 miles", "imperial_mi15": "15 miles 이내",
"imperial_mi7_3": "Within 7.3 miles", "imperial_mi7_3": "7.3 miles 이내",
"imperial_mi3_6": "Within 3.6 miles", "imperial_mi3_6": "3.6 miles 이내",
"imperial_mi1_8": "Within 1.8 miles", "imperial_mi1_8": "1.8 miles 이내",
"imperial_mi0_9": "Within 0.9 miles", "imperial_mi0_9": "0.9 miles 이내",
"imperial_mi0_5": "Within 0.5 miles", "imperial_mi0_5": "0.5 miles 이내",
"imperial_mi0_2": "Within 0.2 miles", "imperial_mi0_2": "0.2 miles 이내",
"imperial_ft600": "Within 600 feet", "imperial_ft600": "600 feet 이내",
"imperial_ft300": "Within 300 feet", "imperial_ft300": "300 feet 이내",
"imperial_ft150": "Within 150 feet" "imperial_ft150": "150 feet 이내"
} }
} }
} }
@ -297,7 +297,7 @@
"title": "Neighbor Info Settings", "title": "Neighbor Info Settings",
"description": "Settings for the Neighbor Info module", "description": "Settings for the Neighbor Info module",
"enabled": { "enabled": {
"label": "Enabled", "label": "활성화",
"description": "Enable or disable Neighbor Info Module" "description": "Enable or disable Neighbor Info Module"
}, },
"updateInterval": { "updateInterval": {
@ -365,7 +365,7 @@
"description": "The serial baud rate" "description": "The serial baud rate"
}, },
"timeout": { "timeout": {
"label": "시간 초과", "label": "시간 초과",
"description": "Seconds to wait before we consider your packet as 'done'" "description": "Seconds to wait before we consider your packet as 'done'"
}, },
"mode": { "mode": {
@ -406,7 +406,7 @@
"description": "Settings for the Telemetry module", "description": "Settings for the Telemetry module",
"deviceUpdateInterval": { "deviceUpdateInterval": {
"label": "Device Metrics", "label": "Device Metrics",
"description": "기기 메트릭 업데이트 간격 (초)" "description": "장치 메트릭 업데이트 간격 (초)"
}, },
"environmentUpdateInterval": { "environmentUpdateInterval": {
"label": "환경 메트릭 업데이트 간격 (초)", "label": "환경 메트릭 업데이트 간격 (초)",

50
packages/web/public/i18n/locales/ko-KR/nodes.json

@ -1,63 +1,63 @@
{ {
"nodeDetail": { "nodeDetail": {
"publicKeyEnabled": { "publicKeyEnabled": {
"label": "Public Key Enabled" "label": "공개 키 활성화"
}, },
"noPublicKey": { "noPublicKey": {
"label": "No Public Key" "label": "공개 키 없음"
}, },
"directMessage": { "directMessage": {
"label": "Direct Message {{shortName}}" "label": "DM {{shortName}}"
}, },
"favorite": { "favorite": {
"label": "즐겨찾기", "label": "즐겨찾기",
"tooltip": "Add or remove this node from your favorites" "tooltip": "이 노드를 즐겨찾기에 추가하거나 삭제"
}, },
"notFavorite": { "notFavorite": {
"label": "Not a Favorite" "label": "즐겨찾기 아님"
}, },
"error": { "error": {
"label": "오류", "label": "Error",
"text": "An error occurred while fetching node details. Please try again later." "text": "노드 정보를 가져오는 과정에서 오류가 발생했습니다. 나중에 다시 시도해 주세요."
}, },
"status": { "status": {
"heard": "Heard", "heard": "수신",
"mqtt": "MQTT" "mqtt": "MQTT"
}, },
"elevation": { "elevation": {
"label": "Elevation" "label": "고도"
}, },
"channelUtil": { "channelUtil": {
"label": "Channel Util" "label": "채널 사용률"
}, },
"airtimeUtil": { "airtimeUtil": {
"label": "Airtime Util" "label": "통신 사용률"
} }
}, },
"nodesTable": { "nodesTable": {
"headings": { "headings": {
"longName": "Long Name", "longName": "긴 이름",
"connection": "Connection", "connection": "연결",
"lastHeard": "Last Heard", "lastHeard": "최근 수신",
"encryption": "Encryption", "encryption": "암호화",
"model": "Model", "model": "하드웨어",
"macAddress": "MAC Address" "macAddress": "MAC 주소"
}, },
"connectionStatus": { "connectionStatus": {
"direct": "직접 연결", "direct": "직접 연결",
"away": "away", "away": "떨어짐",
"unknown": "-", "unknown": "-",
"viaMqtt": ", via MQTT" "viaMqtt": ", MQTT 경유"
}, },
"lastHeardStatus": { "lastHeardStatus": {
"never": "Never" "never": "수신 된 적 없음"
} }
}, },
"actions": { "actions": {
"added": "Added", "added": "추가됨",
"removed": "Removed", "removed": "삭제됨",
"ignoreNode": "Ignore Node", "ignoreNode": "노드 무시하기",
"unignoreNode": "Unignore Node", "unignoreNode": "노드 무시 해제",
"requestPosition": "Request Position" "requestPosition": "위치 요청"
} }
} }

176
packages/web/public/i18n/locales/ko-KR/ui.json

@ -1,111 +1,111 @@
{ {
"navigation": { "navigation": {
"title": "Navigation", "title": "메뉴",
"messages": "메시지", "messages": "메시지기기",
"map": "지도", "map": "지도",
"config": "Config", "config": "설정",
"radioConfig": "Radio Config", "radioConfig": "무선 설정",
"moduleConfig": "Module Config", "moduleConfig": "모듈 설정",
"channels": "채널", "channels": "채널",
"nodes": "Nodes" "nodes": "노드"
}, },
"app": { "app": {
"title": "Meshtastic", "title": "Meshtastic",
"logo": "Meshtastic Logo" "logo": "Meshtastic 로고"
}, },
"sidebar": { "sidebar": {
"collapseToggle": { "collapseToggle": {
"button": { "button": {
"open": "Open sidebar", "open": "사이드바 열기",
"close": "Close sidebar" "close": "사이드바 닫기"
} }
}, },
"deviceInfo": { "deviceInfo": {
"volts": "{{voltage}} volts", "volts": "{{voltage}} V",
"firmware": { "firmware": {
"title": "펌웨어", "title": "펌웨어",
"version": "v{{version}}", "version": "v{{version}}",
"buildDate": "Build date: {{date}}" "buildDate": "빌드 날짜: {{date}}"
}, },
"deviceName": { "deviceName": {
"title": "Device Name", "title": "장치 이름",
"changeName": "Change Device Name", "changeName": "장치 이름 변경",
"placeholder": "Enter device name" "placeholder": "장치 이름 입력"
}, },
"editDeviceName": "Edit device name" "editDeviceName": "장치 이름 수정"
} }
}, },
"batteryStatus": { "batteryStatus": {
"charging": "{{level}}% charging", "charging": "{{level}}% 충전중",
"pluggedIn": "Plugged in", "pluggedIn": "전원 연결됨",
"title": "배터리" "title": "배터리"
}, },
"search": { "search": {
"nodes": "Search nodes...", "nodes": "노드 검색...",
"channels": "Search channels...", "channels": "채널 검색...",
"commandPalette": "Search commands..." "commandPalette": "명령 검색..."
}, },
"toast": { "toast": {
"positionRequestSent": { "positionRequestSent": {
"title": "Position request sent." "title": "위치 요청 보냄."
}, },
"requestingPosition": { "requestingPosition": {
"title": "Requesting position, please wait..." "title": "위치 요청 중, 기다려주세요."
}, },
"sendingTraceroute": { "sendingTraceroute": {
"title": "Sending Traceroute, please wait..." "title": "추적 루트 요청, 기다려주세요."
}, },
"tracerouteSent": { "tracerouteSent": {
"title": "Traceroute sent." "title": "추적 루트 보냄."
}, },
"savedChannel": { "savedChannel": {
"title": "Saved Channel: {{channelName}}" "title": "저장된 채널: {{channelName}}"
}, },
"messages": { "messages": {
"pkiEncryption": { "pkiEncryption": {
"title": "Chat is using PKI encryption." "title": "채팅은 PKI 암호화를 사용하고 있습니다."
}, },
"pskEncryption": { "pskEncryption": {
"title": "Chat is using PSK encryption." "title": "채팅은 PSK 암호화를 사용하고 있습니다."
} }
}, },
"configSaveError": { "configSaveError": {
"title": "Error Saving Config", "title": "설정 저장 오류",
"description": "An error occurred while saving the configuration." "description": "설정을 저장하는 과정에서 오류가 발생했습니다."
}, },
"validationError": { "validationError": {
"title": "Config Errors Exist", "title": "설정 오류",
"description": "Please fix the configuration errors before saving." "description": "저장하기 전에 설정 오류를 수정해 주시기 바랍니다."
}, },
"saveSuccess": { "saveSuccess": {
"title": "Saving Config", "title": "설정 저장됨",
"description": "The configuration change {{case}} has been saved." "description": "설정 변경 사항 {{case}}가 저장되었습니다."
}, },
"favoriteNode": { "favoriteNode": {
"title": "{{action}} {{nodeName}} {{direction}} favorites.", "title": "{{nodeName}}이 즐겨찾기{{direction}} {{action}}",
"action": { "action": {
"added": "Added", "added": "추가됨",
"removed": "Removed", "removed": "삭제됨",
"to": "to", "to": "",
"from": "from" "from": "에서"
} }
}, },
"ignoreNode": { "ignoreNode": {
"title": "{{action}} {{nodeName}} {{direction}} ignore list", "title": "{{nodeName}}이 무시 목록{{direction}} {{action}}",
"action": { "action": {
"added": "Added", "added": "추가됨",
"removed": "Removed", "removed": "삭제됨",
"to": "to", "to": "",
"from": "from" "from": "에서"
} }
} }
}, },
"notifications": { "notifications": {
"copied": { "copied": {
"label": "Copied!" "label": "저장됨!"
}, },
"copyToClipboard": { "copyToClipboard": {
"label": "Copy to clipboard" "label": "클립보드에 복사"
}, },
"hidePassword": { "hidePassword": {
"label": "비밀번호 숨김" "label": "비밀번호 숨김"
@ -114,20 +114,20 @@
"label": "비밀번호 보기" "label": "비밀번호 보기"
}, },
"deliveryStatus": { "deliveryStatus": {
"delivered": "Delivered", "delivered": "전송됨",
"failed": "Delivery Failed", "failed": "전송 실패",
"waiting": "Waiting", "waiting": "대기 중",
"unknown": "Unknown" "unknown": "알 수 없는"
} }
}, },
"general": { "general": {
"label": "General" "label": "일반"
}, },
"hardware": { "hardware": {
"label": "하드웨어" "label": "하드웨어"
}, },
"metrics": { "metrics": {
"label": "Metrics" "label": "메트릭"
}, },
"role": { "role": {
"label": "역할" "label": "역할"
@ -136,93 +136,93 @@
"label": "필터" "label": "필터"
}, },
"advanced": { "advanced": {
"label": "Advanced" "label": "고급"
}, },
"clearInput": { "clearInput": {
"label": "Clear input" "label": "입력 지우기"
}, },
"resetFilters": { "resetFilters": {
"label": "Reset Filters" "label": "필터 초기화"
}, },
"nodeName": { "nodeName": {
"label": "Node name/number", "label": "노드 이름/숫자",
"placeholder": "Meshtastic 1234" "placeholder": "Meshtastic 1234"
}, },
"airtimeUtilization": { "airtimeUtilization": {
"label": "Airtime Utilization (%)" "label": "통신 사용률 (%)"
}, },
"batteryLevel": { "batteryLevel": {
"label": "Battery level (%)", "label": "배터리 잔량 (%)",
"labelText": "Battery level (%): {{value}}" "labelText": "배터리 잔량 (%): {{value}}"
}, },
"batteryVoltage": { "batteryVoltage": {
"label": "Battery voltage (V)", "label": "배터리 전압 (V)",
"title": "전압" "title": "전압"
}, },
"channelUtilization": { "channelUtilization": {
"label": "Channel Utilization (%)" "label": "채널 사용률 (%)"
}, },
"hops": { "hops": {
"direct": "직접 연결", "direct": "직접 연결",
"label": "Number of hops", "label": "Hops 수",
"text": "Number of hops: {{value}}" "text": "Hops 수: {{value}}"
}, },
"lastHeard": { "lastHeard": {
"label": "최근 수신", "label": "최근 수신",
"labelText": "Last heard: {{value}}", "labelText": "최근 수신: {{value}}",
"nowLabel": "Now" "nowLabel": "지금"
}, },
"snr": { "snr": {
"label": "SNR (db)" "label": "SNR (db)"
}, },
"favorites": { "favorites": {
"label": "Favorites" "label": "즐겨찾기"
}, },
"hide": { "hide": {
"label": "Hide" "label": "숨기기"
}, },
"showOnly": { "showOnly": {
"label": "Show Only" "label": "만 보이기"
}, },
"viaMqtt": { "viaMqtt": {
"label": "Connected via MQTT" "label": "MQTT로 연결된"
}, },
"hopsUnknown": { "hopsUnknown": {
"label": "Unknown number of hops" "label": "Hops 알 수 없음"
}, },
"showUnheard": { "showUnheard": {
"label": "Never heard" "label": "수신된 적 없음"
}, },
"language": { "language": {
"label": "언어", "label": "언어",
"changeLanguage": "Change Language" "changeLanguage": "언어 선택"
}, },
"theme": { "theme": {
"dark": "다크", "dark": "다크",
"light": "라이트", "light": "라이트",
"system": "Automatic", "system": "자동",
"changeTheme": "Change Color Scheme" "changeTheme": "컬러 선택"
}, },
"errorPage": { "errorPage": {
"title": "This is a little embarrassing...", "title": "이건 좀 부끄러운 일이에요...",
"description1": "We are really sorry but an error occurred in the web client that caused it to crash. <br /> This is not supposed to happen, and we are working hard to fix it.", "description1": "정말 죄송합니다. 웹 클라이언트에서 오류가 발생하여 강제 종료되었습니다. <br /> 이 문제는 발생하지 않아야 하는 것이며, 현재 이를 해결하기 위해 최선을 다하고 있습니다.",
"description2": "The best way to prevent this from happening again to you or anyone else is to report the issue to us.", "description2": "이 문제가 다시 발생하지 않도록 하는 가장 좋은 방법은 해당 문제를 저희에게 신고해 주시는 것입니다.",
"reportInstructions": "Please include the following information in your report:", "reportInstructions": "보고서에 다음 정보를 포함해 주시기 바랍니다:",
"reportSteps": { "reportSteps": {
"step1": "What you were doing when the error occurred", "step1": "오류가 발생했을 때 무엇을 하고 계셨나요?",
"step2": "What you expected to happen", "step2": "어떤 상황을 예상 하셨나요?",
"step3": "What actually happened", "step3": "실제로 무슨 일이 일어났나요?",
"step4": "Any other relevant information" "step4": "기타 관련 정보"
}, },
"reportLink": "You can report the issue to our <0>GitHub</0>", "reportLink": "이 문제를 저희 <0>GitHub</0>에 보고해주세요",
"dashboardLink": "Return to the <0>dashboard</0>", "dashboardLink": "<0>메인</0>으로 돌아가기",
"detailsSummary": "Error Details", "detailsSummary": "오류 세부 정보",
"errorMessageLabel": "Error message:", "errorMessageLabel": "오류 메시지:",
"stackTraceLabel": "Stack trace:", "stackTraceLabel": "스택 추적:",
"fallbackError": "{{error}}" "fallbackError": "{{error}}"
}, },
"footer": { "footer": {
"text": "Powered by <0>▲ Vercel</0> | Meshtastic® is a registered trademark of Meshtastic LLC. | <1>Legal Information</1>", "text": "Powered by <0>▲ Vercel</0> | Meshtastic®는 Meshtastic LLC의 등록 상표입니다. | <1>법적 정보</1>",
"commitSha": "Commit SHA: {{sha}}" "commitSha": "Commit SHA: {{sha}}"
} }
} }

97
packages/web/public/i18n/locales/nl-NL/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "No results found.", "emptyState": "No results found.",
"page": { "page": {
"title": "Command Menu" "title": "Command Menu"
}, },
"pinGroup": { "pinGroup": {
"label": "Pin command group" "label": "Pin command group"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Unpin command group" "label": "Unpin command group"
}, },
"goto": { "goto": {
"label": "Goto", "label": "Goto",
"command": { "command": {
"messages": "Berichten", "messages": "Berichten",
"map": "Kaart", "map": "Kaart",
"config": "Config", "config": "Config",
"channels": "Kanalen", "channels": "Kanalen",
"nodes": "Nodes" "nodes": "Nodes"
} }
}, },
"manage": { "manage": {
"label": "Manage", "label": "Manage",
"command": { "command": {
"switchNode": "Switch Node", "switchNode": "Switch Node",
"connectNewNode": "Connect New Node" "connectNewNode": "Connect New Node"
} }
}, },
"contextual": { "contextual": {
"label": "Contextual", "label": "Contextual",
"command": { "command": {
"qrCode": "QR Code", "qrCode": "QR Code",
"qrGenerator": "Generator", "qrGenerator": "Generator",
"qrImport": "Importeer", "qrImport": "Importeer",
"scheduleShutdown": "Schedule Shutdown", "scheduleShutdown": "Schedule Shutdown",
"scheduleReboot": "Schedule Reboot", "scheduleReboot": "Schedule Reboot",
"rebootToOtaMode": "Reboot To OTA Mode", "rebootToOtaMode": "Reboot To OTA Mode",
"resetNodeDb": "Reset Node DB", "resetNodeDb": "Reset Node DB",
"factoryResetDevice": "Factory Reset Device", "factoryResetDevice": "Factory Reset Device",
"factoryResetConfig": "Factory Reset Config" "factoryResetConfig": "Factory Reset Config",
} "disconnect": "Verbinding verbreken"
}, }
"debug": { },
"label": "Debug", "debug": {
"command": { "label": "Debug",
"reconfigure": "Reconfigure", "command": {
"clearAllStoredMessages": "Clear All Stored Message" "reconfigure": "Reconfigure",
} "clearAllStoredMessages": "Clear All Stored Message"
} }
}
} }

23
packages/web/public/i18n/locales/nl-NL/dialog.json

@ -7,7 +7,13 @@
"description": "The Device will restart once the config is saved.", "description": "The Device will restart once the config is saved.",
"longName": "Long Name", "longName": "Long Name",
"shortName": "Short Name", "shortName": "Short Name",
"title": "Change Device Name" "title": "Change Device Name",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "The current LoRa configuration will be overridden.", "description": "The current LoRa configuration will be overridden.",
@ -21,9 +27,10 @@
"title": "Import Channel Set" "title": "Import Channel Set"
}, },
"locationResponse": { "locationResponse": {
"title": "Location: {{identifier}}",
"altitude": "Altitude: ", "altitude": "Altitude: ",
"coordinates": "Coordinates: ", "coordinates": "Coordinates: ",
"title": "Location: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?", "title": "Regenerate Pre-Shared Key?",
@ -60,11 +67,15 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "New device" "newDeviceButton": "New device",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "This connection type requires <0></0>. Please use a supported browser, like Chrome or Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.", "requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.",
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost." "additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
} }
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Yes, I know what I'm doing", "confirmUnderstanding": "Yes, I know what I'm doing",
"title": "Weet u het zeker?", "title": "Weet u het zeker?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

80
packages/web/public/i18n/locales/pl-PL/channels.json

@ -1,69 +1,69 @@
{ {
"page": { "page": {
"sectionLabel": "Kanały", "sectionLabel": "Kanały",
"channelName": "Channel: {{channelName}}", "channelName": "Kanał: {{channelName}}",
"broadcastLabel": "Podstawowy", "broadcastLabel": "Podstawowy",
"channelIndex": "Ch {{index}}" "channelIndex": "Kan. {{index}}"
}, },
"validation": { "validation": {
"pskInvalid": "Please enter a valid {{bits}} bit PSK." "pskInvalid": "Musisz wprowadzić prawidłowy {{bits}} bitowy klucz."
}, },
"settings": { "settings": {
"label": "Ustawienia kanału", "label": "Ustawienia kanału",
"description": "Crypto, MQTT & misc settings" "description": "Kryptografia, MQTT i inne ustawienia"
}, },
"role": { "role": {
"label": "Rola", "label": "Rola",
"description": "Device telemetry is sent over PRIMARY. Only one PRIMARY allowed", "description": "Telemetria urządzenia jest tylko wysyłania przez GŁOWNY. Tylko jeden GŁOWNY jest dozwolony",
"options": { "options": {
"primary": "PRIMARY", "primary": "GŁOWNY",
"disabled": "DISABLED", "disabled": "WYŁĄCZONY",
"secondary": "SECONDARY" "secondary": "DODATKOWY"
} }
}, },
"psk": { "psk": {
"label": "Pre-Shared Key", "label": "Klucz współdzielony",
"description": "Supported PSK lengths: 256-bit, 128-bit, 8-bit, Empty (0-bit)", "description": "Wspierane długości klucza: 256, 128, 8, pusty (0) bitów",
"generate": "Generate" "generate": "Wygeneruj"
}, },
"name": { "name": {
"label": "Nazwa", "label": "Nazwa",
"description": "A unique name for the channel <12 bytes, leave blank for default" "description": "Unikalna nazwa kanału mniejsza niż 12 bajtów, pusty jako domyślny"
}, },
"uplinkEnabled": { "uplinkEnabled": {
"label": "Uplink Enabled", "label": "Wysył włączony",
"description": "Send messages from the local mesh to MQTT" "description": "Wysyłaj wiadomości z lokalnej sieci do MQTT"
}, },
"downlinkEnabled": { "downlinkEnabled": {
"label": "Downlink Enabled", "label": "Odbiór włączony",
"description": "Send messages from MQTT to the local mesh" "description": "Wysyłaj wiadomości z MQTT to lokalnej sieci"
}, },
"positionPrecision": { "positionPrecision": {
"label": "Location", "label": "Lokalizacja",
"description": "The precision of the location to share with the channel. Can be disabled.", "description": "Precyzja lokalizacji, która jest wysyłana na kanale. Może zostać wyłączona.",
"options": { "options": {
"none": "Do not share location", "none": "Nie udostępniaj lokalizacji",
"precise": "Precise Location", "precise": "Precyzyjna lokalizacja",
"metric_km23": "Within 23 kilometers", "metric_km23": "W zasięgu 23 kilometrów",
"metric_km12": "Within 12 kilometers", "metric_km12": "W zasięgu 12 kilometrów",
"metric_km5_8": "Within 5.8 kilometers", "metric_km5_8": "W zasięgu 5,8 kilometrów",
"metric_km2_9": "Within 2.9 kilometers", "metric_km2_9": "W zasięgu 2,9 kilometrów",
"metric_km1_5": "Within 1.5 kilometers", "metric_km1_5": "W zasięgu 1,5 kilometra",
"metric_m700": "Within 700 meters", "metric_m700": "W zasięgu 700 metrów",
"metric_m350": "Within 350 meters", "metric_m350": "W zasięgu 350 metrów",
"metric_m200": "Within 200 meters", "metric_m200": "W zasięgu 200 metrów",
"metric_m90": "Within 90 meters", "metric_m90": "W zasięgu 90 metrów",
"metric_m50": "Within 50 meters", "metric_m50": "W zasięgu 50 metrów",
"imperial_mi15": "Within 15 miles", "imperial_mi15": "W zasięgu 15 mil",
"imperial_mi7_3": "Within 7.3 miles", "imperial_mi7_3": "W zasięgu 7,3 mil",
"imperial_mi3_6": "Within 3.6 miles", "imperial_mi3_6": "W zasięgu 3,6 mil",
"imperial_mi1_8": "Within 1.8 miles", "imperial_mi1_8": "W zasięgu 1,8 mil",
"imperial_mi0_9": "Within 0.9 miles", "imperial_mi0_9": "W zasięgu 0,9 mil",
"imperial_mi0_5": "Within 0.5 miles", "imperial_mi0_5": "W zasięgu 0,5 mili",
"imperial_mi0_2": "Within 0.2 miles", "imperial_mi0_2": "W zasięgu 0,2 mil",
"imperial_ft600": "Within 600 feet", "imperial_ft600": "W zasięgu 600 stóp",
"imperial_ft300": "Within 300 feet", "imperial_ft300": "W zasięgu 300 stóp",
"imperial_ft150": "Within 150 feet" "imperial_ft150": "W zasięgu 150 stóp"
} }
} }
} }

97
packages/web/public/i18n/locales/pl-PL/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "No results found.", "emptyState": "No results found.",
"page": { "page": {
"title": "Command Menu" "title": "Command Menu"
}, },
"pinGroup": { "pinGroup": {
"label": "Pin command group" "label": "Pin command group"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Unpin command group" "label": "Unpin command group"
}, },
"goto": { "goto": {
"label": "Goto", "label": "Goto",
"command": { "command": {
"messages": "Wiadomości", "messages": "Wiadomości",
"map": "Mapa", "map": "Mapa",
"config": "Config", "config": "Config",
"channels": "Kanały", "channels": "Kanały",
"nodes": "Nodes" "nodes": "Nodes"
} }
}, },
"manage": { "manage": {
"label": "Manage", "label": "Manage",
"command": { "command": {
"switchNode": "Switch Node", "switchNode": "Switch Node",
"connectNewNode": "Connect New Node" "connectNewNode": "Connect New Node"
} }
}, },
"contextual": { "contextual": {
"label": "Contextual", "label": "Contextual",
"command": { "command": {
"qrCode": "QR Code", "qrCode": "QR Code",
"qrGenerator": "Generator", "qrGenerator": "Generator",
"qrImport": "Import", "qrImport": "Import",
"scheduleShutdown": "Schedule Shutdown", "scheduleShutdown": "Schedule Shutdown",
"scheduleReboot": "Schedule Reboot", "scheduleReboot": "Schedule Reboot",
"rebootToOtaMode": "Reboot To OTA Mode", "rebootToOtaMode": "Reboot To OTA Mode",
"resetNodeDb": "Reset Node DB", "resetNodeDb": "Reset Node DB",
"factoryResetDevice": "Factory Reset Device", "factoryResetDevice": "Factory Reset Device",
"factoryResetConfig": "Factory Reset Config" "factoryResetConfig": "Factory Reset Config",
} "disconnect": "Rozłącz"
}, }
"debug": { },
"label": "Debug", "debug": {
"command": { "label": "Debug",
"reconfigure": "Reconfigure", "command": {
"clearAllStoredMessages": "Clear All Stored Message" "reconfigure": "Reconfigure",
} "clearAllStoredMessages": "Clear All Stored Message"
} }
}
} }

32
packages/web/public/i18n/locales/pl-PL/common.json

@ -10,7 +10,7 @@
"dismiss": "Zamknij", "dismiss": "Zamknij",
"download": "Download", "download": "Download",
"export": "Export", "export": "Export",
"generate": "Generate", "generate": "Wygeneruj",
"regenerate": "Regenerate", "regenerate": "Regenerate",
"import": "Import", "import": "Import",
"message": "Wiadomość", "message": "Wiadomość",
@ -20,7 +20,7 @@
"rebootOtaNow": "Reboot to OTA Mode Now", "rebootOtaNow": "Reboot to OTA Mode Now",
"remove": "Usuń", "remove": "Usuń",
"requestNewKeys": "Request New Keys", "requestNewKeys": "Request New Keys",
"requestPosition": "Request Position", "requestPosition": "Poproś o pozycję",
"reset": "Zresetuj", "reset": "Zresetuj",
"save": "Zapisz", "save": "Zapisz",
"scanQr": "Scan QR Code", "scanQr": "Scan QR Code",
@ -88,15 +88,15 @@
"suffix": "V" "suffix": "V"
}, },
"record": { "record": {
"one": "Records", "one": "Rekordy",
"plural": "Records" "plural": "Rekordy"
} }
}, },
"security": { "security": {
"0bit": "Empty", "0bit": "Pusty",
"8bit": "8 bit", "8bit": "8-bitowy",
"128bit": "128 bit", "128bit": "128-bitowy",
"256bit": "256 bit" "256bit": "256-bitowy"
}, },
"unknown": { "unknown": {
"longName": "Nieznany", "longName": "Nieznany",
@ -107,9 +107,9 @@
"nodeUnknownPrefix": "!", "nodeUnknownPrefix": "!",
"unset": "UNSET", "unset": "UNSET",
"fallbackName": "Meshtastic {{last4}}", "fallbackName": "Meshtastic {{last4}}",
"node": "Node", "node": "Węzeł",
"formValidation": { "formValidation": {
"unsavedChanges": "Unsaved changes", "unsavedChanges": "Niezapisane zmiany",
"tooBig": { "tooBig": {
"string": "Too long, expected less than or equal to {{maximum}} characters.", "string": "Too long, expected less than or equal to {{maximum}} characters.",
"number": "Too big, expected a number smaller than or equal to {{maximum}}.", "number": "Too big, expected a number smaller than or equal to {{maximum}}.",
@ -120,22 +120,22 @@
"number": "Too small, expected a number larger than or equal to {{minimum}}." "number": "Too small, expected a number larger than or equal to {{minimum}}."
}, },
"invalidFormat": { "invalidFormat": {
"ipv4": "Invalid format, expected an IPv4 address.", "ipv4": "Nieprawidłowy format, oczekiwany adres IPv4.",
"key": "Invalid format, expected a Base64 encoded pre-shared key (PSK)." "key": "Invalid format, expected a Base64 encoded pre-shared key (PSK)."
}, },
"invalidType": { "invalidType": {
"number": "Invalid type, expected a number." "number": "Nieprawidłowy typ, oczekiwana liczba."
}, },
"pskLength": { "pskLength": {
"0bit": "Key is required to be empty.", "0bit": "Klucz musi być pusty.",
"8bit": "Key is required to be an 8 bit pre-shared key (PSK).", "8bit": "Key is required to be an 8 bit pre-shared key (PSK).",
"128bit": "Key is required to be a 128 bit pre-shared key (PSK).", "128bit": "Key is required to be a 128 bit pre-shared key (PSK).",
"256bit": "Key is required to be a 256 bit pre-shared key (PSK)." "256bit": "Key is required to be a 256 bit pre-shared key (PSK)."
}, },
"required": { "required": {
"generic": "This field is required.", "generic": "To pole jest wymagane.",
"managed": "At least one admin key is requred if the node is managed.", "managed": "Co najmniej jeden klucz administratora jest wymagany, jeśli węzeł jest zarządzany.",
"key": "Key is required." "key": "Klucz jest wymagany."
} }
} }
} }

10
packages/web/public/i18n/locales/pl-PL/deviceConfig.json

@ -1,6 +1,6 @@
{ {
"page": { "page": {
"title": "Configuration", "title": "Konfiguracja",
"tabBluetooth": "Bluetooth", "tabBluetooth": "Bluetooth",
"tabDevice": "Urządzenie", "tabDevice": "Urządzenie",
"tabDisplay": "Wyświetlacz", "tabDisplay": "Wyświetlacz",
@ -11,10 +11,10 @@
"tabSecurity": "Bezpieczeństwo" "tabSecurity": "Bezpieczeństwo"
}, },
"sidebar": { "sidebar": {
"label": "Modules" "label": "Moduły"
}, },
"device": { "device": {
"title": "Device Settings", "title": "Ustawienia Urządzenia",
"description": "Settings for the device", "description": "Settings for the device",
"buttonPin": { "buttonPin": {
"description": "Button pin override", "description": "Button pin override",
@ -54,7 +54,7 @@
} }
}, },
"bluetooth": { "bluetooth": {
"title": "Bluetooth Settings", "title": "Ustawienia Bluetooth",
"description": "Settings for the Bluetooth module", "description": "Settings for the Bluetooth module",
"note": "Note: Some devices (ESP32) cannot use both Bluetooth and WiFi at the same time.", "note": "Note: Some devices (ESP32) cannot use both Bluetooth and WiFi at the same time.",
"enabled": { "enabled": {
@ -63,7 +63,7 @@
}, },
"pairingMode": { "pairingMode": {
"description": "Pin selection behaviour.", "description": "Pin selection behaviour.",
"label": "Pairing mode" "label": "Tryb parowania"
}, },
"pin": { "pin": {
"description": "Pin to use when pairing", "description": "Pin to use when pairing",

29
packages/web/public/i18n/locales/pl-PL/dialog.json

@ -5,9 +5,15 @@
}, },
"deviceName": { "deviceName": {
"description": "The Device will restart once the config is saved.", "description": "The Device will restart once the config is saved.",
"longName": "Long Name", "longName": "Długa nazwa",
"shortName": "Short Name", "shortName": "Short Name",
"title": "Change Device Name" "title": "Change Device Name",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "The current LoRa configuration will be overridden.", "description": "The current LoRa configuration will be overridden.",
@ -21,9 +27,10 @@
"title": "Import Channel Set" "title": "Import Channel Set"
}, },
"locationResponse": { "locationResponse": {
"title": "Location: {{identifier}}",
"altitude": "Altitude: ", "altitude": "Altitude: ",
"coordinates": "Coordinates: ", "coordinates": "Coordinates: ",
"title": "Location: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?", "title": "Regenerate Pre-Shared Key?",
@ -39,7 +46,7 @@
"tabSerial": "Seryjny", "tabSerial": "Seryjny",
"useHttps": "Use HTTPS", "useHttps": "Use HTTPS",
"connecting": "Connecting...", "connecting": "Connecting...",
"connect": "Connect", "connect": "Połącz",
"connectionFailedAlert": { "connectionFailedAlert": {
"title": "Connection Failed", "title": "Connection Failed",
"descriptionPrefix": "Could not connect to the device. ", "descriptionPrefix": "Could not connect to the device. ",
@ -60,18 +67,22 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "New device" "newDeviceButton": "New device",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "This connection type requires <0></0>. Please use a supported browser, like Chrome or Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.", "requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.",
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost." "additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
} }
}, },
"nodeDetails": { "nodeDetails": {
"message": "Wiadomość", "message": "Wiadomość",
"requestPosition": "Request Position", "requestPosition": "Poproś o pozycję",
"traceRoute": "Trace Route", "traceRoute": "Trace Route",
"airTxUtilization": "Air TX utilization", "airTxUtilization": "Air TX utilization",
"allRawMetrics": "All Raw Metrics:", "allRawMetrics": "All Raw Metrics:",
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Yes, I know what I'm doing", "confirmUnderstanding": "Yes, I know what I'm doing",
"title": "Jesteś pewny?", "title": "Jesteś pewny?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

30
packages/web/public/i18n/locales/pl-PL/messages.json

@ -1,39 +1,39 @@
{ {
"page": { "page": {
"title": "Messages: {{chatName}}", "title": "Wiadomości: {{chatName}}",
"placeholder": "Enter Message" "placeholder": "Wpisz wiadomość"
}, },
"emptyState": { "emptyState": {
"title": "Select a Chat", "title": "Wybierz czat",
"text": "No messages yet." "text": "Brak wiadomości."
}, },
"selectChatPrompt": { "selectChatPrompt": {
"text": "Select a channel or node to start messaging." "text": "Wybierz kanał lub węzeł do wysyłania wiadomości."
}, },
"sendMessage": { "sendMessage": {
"placeholder": "Enter your message here...", "placeholder": "Wpisz tutaj swoją wiadomość...",
"sendButton": "Wyślij" "sendButton": "Wyślij"
}, },
"actionsMenu": { "actionsMenu": {
"addReactionLabel": "Add Reaction", "addReactionLabel": "Dodaj reakcję",
"replyLabel": "Odpowiedz" "replyLabel": "Odpowiedz"
}, },
"deliveryStatus": { "deliveryStatus": {
"delivered": { "delivered": {
"label": "Message delivered", "label": "Wiadomość doręczona",
"displayText": "Message delivered" "displayText": "Wiadomość doręczona"
}, },
"failed": { "failed": {
"label": "Message delivery failed", "label": "Nie udało się dostarczyć wiadomości",
"displayText": "Delivery failed" "displayText": "Dostawa nie powiodła się"
}, },
"unknown": { "unknown": {
"label": "Message status unknown", "label": "Status wiadomości nieznany",
"displayText": "Unknown state" "displayText": "Nieznany stan"
}, },
"waiting": { "waiting": {
"label": "Sending message", "label": "Wysyłanie wiadomości",
"displayText": "Waiting for delivery" "displayText": "Oczekiwanie na dostawę"
} }
} }
} }

26
packages/web/public/i18n/locales/pl-PL/moduleConfig.json

@ -25,15 +25,15 @@
"description": "Sets the current for the LED output. Default is 10" "description": "Sets the current for the LED output. Default is 10"
}, },
"red": { "red": {
"label": "Red", "label": "Czerwony",
"description": "Sets the red LED level. Values are 0-255" "description": "Sets the red LED level. Values are 0-255"
}, },
"green": { "green": {
"label": "Green", "label": "Zielony",
"description": "Sets the green LED level. Values are 0-255" "description": "Sets the green LED level. Values are 0-255"
}, },
"blue": { "blue": {
"label": "Blue", "label": "Niebieski",
"description": "Sets the blue LED level. Values are 0-255" "description": "Sets the blue LED level. Values are 0-255"
} }
}, },
@ -279,16 +279,16 @@
"metric_m200": "Within 200 m", "metric_m200": "Within 200 m",
"metric_m90": "Within 90 m", "metric_m90": "Within 90 m",
"metric_m50": "Within 50 m", "metric_m50": "Within 50 m",
"imperial_mi15": "Within 15 miles", "imperial_mi15": "W zasięgu 15 mil",
"imperial_mi7_3": "Within 7.3 miles", "imperial_mi7_3": "W zasięgu 7,3 mil",
"imperial_mi3_6": "Within 3.6 miles", "imperial_mi3_6": "W zasięgu 3,6 mil",
"imperial_mi1_8": "Within 1.8 miles", "imperial_mi1_8": "W zasięgu 1,8 mil",
"imperial_mi0_9": "Within 0.9 miles", "imperial_mi0_9": "W zasięgu 0,9 mil",
"imperial_mi0_5": "Within 0.5 miles", "imperial_mi0_5": "W zasięgu 0,5 mili",
"imperial_mi0_2": "Within 0.2 miles", "imperial_mi0_2": "W zasięgu 0,2 mil",
"imperial_ft600": "Within 600 feet", "imperial_ft600": "W zasięgu 600 stóp",
"imperial_ft300": "Within 300 feet", "imperial_ft300": "W zasięgu 300 stóp",
"imperial_ft150": "Within 150 feet" "imperial_ft150": "W zasięgu 150 stóp"
} }
} }
} }

42
packages/web/public/i18n/locales/pl-PL/nodes.json

@ -1,63 +1,63 @@
{ {
"nodeDetail": { "nodeDetail": {
"publicKeyEnabled": { "publicKeyEnabled": {
"label": "Public Key Enabled" "label": "Publiczny klucz włączony"
}, },
"noPublicKey": { "noPublicKey": {
"label": "No Public Key" "label": "Brak klucza publicznego"
}, },
"directMessage": { "directMessage": {
"label": "Direct Message {{shortName}}" "label": "Wiadomość bezpośrednia {{shortName}}"
}, },
"favorite": { "favorite": {
"label": "Ulubiony", "label": "Ulubiony",
"tooltip": "Add or remove this node from your favorites" "tooltip": "Dodaj lub usuń ten węzeł z ulubionych"
}, },
"notFavorite": { "notFavorite": {
"label": "Not a Favorite" "label": "Nie ulubiony"
}, },
"error": { "error": {
"label": "Błąd", "label": "Błąd",
"text": "An error occurred while fetching node details. Please try again later." "text": "Wystąpił błąd podczas pobierania danych węzła. Spróbuj ponownie później."
}, },
"status": { "status": {
"heard": "Usłyszano", "heard": "Usłyszano",
"mqtt": "MQTT" "mqtt": "MQTT"
}, },
"elevation": { "elevation": {
"label": "Elevation" "label": "Elewacja"
}, },
"channelUtil": { "channelUtil": {
"label": "Channel Util" "label": "Użycie kanału"
}, },
"airtimeUtil": { "airtimeUtil": {
"label": "Airtime Util" "label": "Użycie czasu ant"
} }
}, },
"nodesTable": { "nodesTable": {
"headings": { "headings": {
"longName": "Long Name", "longName": "Długa nazwa",
"connection": "Connection", "connection": "Połączenie",
"lastHeard": "Last Heard", "lastHeard": "Ostatnio słyszany",
"encryption": "Encryption", "encryption": "Szyfrowanie",
"model": "Model", "model": "Model",
"macAddress": "MAC Address" "macAddress": "Adres MAC"
}, },
"connectionStatus": { "connectionStatus": {
"direct": "Bezpośrednio", "direct": "Bezpośrednio",
"away": "away", "away": "away",
"unknown": "-", "unknown": "-",
"viaMqtt": ", via MQTT" "viaMqtt": ", przez MQTT"
}, },
"lastHeardStatus": { "lastHeardStatus": {
"never": "Never" "never": "Nigdy"
} }
}, },
"actions": { "actions": {
"added": "Added", "added": "Dodano",
"removed": "Removed", "removed": "Usunięto",
"ignoreNode": "Ignore Node", "ignoreNode": "Ignoruj węzeł",
"unignoreNode": "Unignore Node", "unignoreNode": "Od-ignoruj węzeł",
"requestPosition": "Request Position" "requestPosition": "Poproś o pozycję"
} }
} }

10
packages/web/public/i18n/locales/pl-PL/ui.json

@ -23,7 +23,7 @@
"deviceInfo": { "deviceInfo": {
"volts": "{{voltage}} volts", "volts": "{{voltage}} volts",
"firmware": { "firmware": {
"title": "Firmware", "title": "Oprogramowanie",
"version": "v{{version}}", "version": "v{{version}}",
"buildDate": "Build date: {{date}}" "buildDate": "Build date: {{date}}"
}, },
@ -84,8 +84,8 @@
"favoriteNode": { "favoriteNode": {
"title": "{{action}} {{nodeName}} {{direction}} favorites.", "title": "{{action}} {{nodeName}} {{direction}} favorites.",
"action": { "action": {
"added": "Added", "added": "Dodano",
"removed": "Removed", "removed": "Usunięto",
"to": "to", "to": "to",
"from": "from" "from": "from"
} }
@ -93,8 +93,8 @@
"ignoreNode": { "ignoreNode": {
"title": "{{action}} {{nodeName}} {{direction}} ignore list", "title": "{{action}} {{nodeName}} {{direction}} ignore list",
"action": { "action": {
"added": "Added", "added": "Dodano",
"removed": "Removed", "removed": "Usunięto",
"to": "to", "to": "to",
"from": "from" "from": "from"
} }

69
packages/web/public/i18n/locales/pt-BR/channels.json

@ -0,0 +1,69 @@
{
"page": {
"sectionLabel": "Canais",
"channelName": "Channel: {{channelName}}",
"broadcastLabel": "Primário",
"channelIndex": "Ch {{index}}"
},
"validation": {
"pskInvalid": "Please enter a valid {{bits}} bit PSK."
},
"settings": {
"label": "Configurações de Canal",
"description": "Crypto, MQTT & misc settings"
},
"role": {
"label": "Função",
"description": "Device telemetry is sent over PRIMARY. Only one PRIMARY allowed",
"options": {
"primary": "PRIMARY",
"disabled": "DISABLED",
"secondary": "SECONDARY"
}
},
"psk": {
"label": "Pre-Shared Key",
"description": "Supported PSK lengths: 256-bit, 128-bit, 8-bit, Empty (0-bit)",
"generate": "Generate"
},
"name": {
"label": "Nome",
"description": "A unique name for the channel <12 bytes, leave blank for default"
},
"uplinkEnabled": {
"label": "Uplink Enabled",
"description": "Send messages from the local mesh to MQTT"
},
"downlinkEnabled": {
"label": "Downlink Enabled",
"description": "Send messages from MQTT to the local mesh"
},
"positionPrecision": {
"label": "Location",
"description": "The precision of the location to share with the channel. Can be disabled.",
"options": {
"none": "Do not share location",
"precise": "Precise Location",
"metric_km23": "Within 23 kilometers",
"metric_km12": "Within 12 kilometers",
"metric_km5_8": "Within 5.8 kilometers",
"metric_km2_9": "Within 2.9 kilometers",
"metric_km1_5": "Within 1.5 kilometers",
"metric_m700": "Within 700 meters",
"metric_m350": "Within 350 meters",
"metric_m200": "Within 200 meters",
"metric_m90": "Within 90 meters",
"metric_m50": "Within 50 meters",
"imperial_mi15": "Within 15 miles",
"imperial_mi7_3": "Within 7.3 miles",
"imperial_mi3_6": "Within 3.6 miles",
"imperial_mi1_8": "Within 1.8 miles",
"imperial_mi0_9": "Within 0.9 miles",
"imperial_mi0_5": "Within 0.5 miles",
"imperial_mi0_2": "Within 0.2 miles",
"imperial_ft600": "Within 600 feet",
"imperial_ft300": "Within 300 feet",
"imperial_ft150": "Within 150 feet"
}
}
}

51
packages/web/public/i18n/locales/pt-BR/commandPalette.json

@ -0,0 +1,51 @@
{
"emptyState": "No results found.",
"page": {
"title": "Command Menu"
},
"pinGroup": {
"label": "Pin command group"
},
"unpinGroup": {
"label": "Unpin command group"
},
"goto": {
"label": "Goto",
"command": {
"messages": "Mensagens",
"map": "Mapa",
"config": "Config",
"channels": "Canais",
"nodes": "Nós"
}
},
"manage": {
"label": "Manage",
"command": {
"switchNode": "Switch Node",
"connectNewNode": "Connect New Node"
}
},
"contextual": {
"label": "Contextual",
"command": {
"qrCode": "QR Code",
"qrGenerator": "Generator",
"qrImport": "Importar",
"scheduleShutdown": "Schedule Shutdown",
"scheduleReboot": "Schedule Reboot",
"rebootToOtaMode": "Reboot To OTA Mode",
"resetNodeDb": "Reset Node DB",
"factoryResetDevice": "Factory Reset Device",
"factoryResetConfig": "Factory Reset Config",
"disconnect": "Desconectar"
}
},
"debug": {
"label": "Debug",
"command": {
"reconfigure": "Reconfigure",
"clearAllStoredMessages": "Clear All Stored Message"
}
}
}

141
packages/web/public/i18n/locales/pt-BR/common.json

@ -0,0 +1,141 @@
{
"button": {
"apply": "Aplicar",
"backupKey": "Backup Key",
"cancel": "Cancelar",
"clearMessages": "Clear Messages",
"close": "Fechar",
"confirm": "Confirm",
"delete": "Excluir",
"dismiss": "Ignorar",
"download": "Baixar",
"export": "Export",
"generate": "Generate",
"regenerate": "Regenerate",
"import": "Importar",
"message": "Mensagem",
"now": "Now",
"ok": "Ok",
"print": "Print",
"rebootOtaNow": "Reboot to OTA Mode Now",
"remove": "Excluir",
"requestNewKeys": "Request New Keys",
"requestPosition": "Request Position",
"reset": "Redefinir",
"save": "Salvar",
"scanQr": "Escanear Código QR",
"traceRoute": "Trace Route",
"submit": "Submit"
},
"app": {
"title": "Meshtastic",
"fullTitle": "Meshtastic Web Client"
},
"loading": "Loading...",
"unit": {
"cps": "CPS",
"dbm": "dBm",
"hertz": "Hz",
"hop": {
"one": "Hop",
"plural": "Hops"
},
"hopsAway": {
"one": "{{count}} hop away",
"plural": "{{count}} hops away",
"unknown": "Unknown hops away"
},
"megahertz": "MHz",
"raw": "raw",
"meter": {
"one": "Meter",
"plural": "Meters",
"suffix": "m"
},
"minute": {
"one": "Minute",
"plural": "Minutes"
},
"hour": {
"one": "Hour",
"plural": "Hours"
},
"millisecond": {
"one": "Millisecond",
"plural": "Milliseconds",
"suffix": "ms"
},
"second": {
"one": "Second",
"plural": "Seconds"
},
"day": {
"one": "Day",
"plural": "Days"
},
"month": {
"one": "Month",
"plural": "Months"
},
"year": {
"one": "Year",
"plural": "Years"
},
"snr": "SNR",
"volt": {
"one": "Volt",
"plural": "Volts",
"suffix": "V"
},
"record": {
"one": "Records",
"plural": "Records"
}
},
"security": {
"0bit": "Empty",
"8bit": "8 bit",
"128bit": "128 bit",
"256bit": "256 bit"
},
"unknown": {
"longName": "Desconhecido",
"shortName": "UNK",
"notAvailable": "N/A",
"num": "??"
},
"nodeUnknownPrefix": "!",
"unset": "UNSET",
"fallbackName": "Meshtastic {{last4}}",
"node": "Node",
"formValidation": {
"unsavedChanges": "Unsaved changes",
"tooBig": {
"string": "Too long, expected less than or equal to {{maximum}} characters.",
"number": "Too big, expected a number smaller than or equal to {{maximum}}.",
"bytes": "Too big, expected less than or equal to {{params.maximum}} bytes."
},
"tooSmall": {
"string": "Too short, expected more than or equal to {{minimum}} characters.",
"number": "Too small, expected a number larger than or equal to {{minimum}}."
},
"invalidFormat": {
"ipv4": "Invalid format, expected an IPv4 address.",
"key": "Invalid format, expected a Base64 encoded pre-shared key (PSK)."
},
"invalidType": {
"number": "Invalid type, expected a number."
},
"pskLength": {
"0bit": "Key is required to be empty.",
"8bit": "Key is required to be an 8 bit pre-shared key (PSK).",
"128bit": "Key is required to be a 128 bit pre-shared key (PSK).",
"256bit": "Key is required to be a 256 bit pre-shared key (PSK)."
},
"required": {
"generic": "This field is required.",
"managed": "At least one admin key is requred if the node is managed.",
"key": "Key is required."
}
}
}

12
packages/web/public/i18n/locales/pt-BR/dashboard.json

@ -0,0 +1,12 @@
{
"dashboard": {
"title": "Connected Devices",
"description": "Manage your connected Meshtastic devices.",
"connectionType_ble": "BLE",
"connectionType_serial": "Serial",
"connectionType_network": "Rede",
"noDevicesTitle": "No devices connected",
"noDevicesDescription": "Connect a new device to get started.",
"button_newConnection": "New Connection"
}
}

428
packages/web/public/i18n/locales/pt-BR/deviceConfig.json

@ -0,0 +1,428 @@
{
"page": {
"title": "Configuration",
"tabBluetooth": "Bluetooth",
"tabDevice": "Dispositivo",
"tabDisplay": "Tela",
"tabLora": "LoRa",
"tabNetwork": "Rede",
"tabPosition": "Posição",
"tabPower": "Energia",
"tabSecurity": "Segurança"
},
"sidebar": {
"label": "Modules"
},
"device": {
"title": "Device Settings",
"description": "Settings for the device",
"buttonPin": {
"description": "Button pin override",
"label": "Button Pin"
},
"buzzerPin": {
"description": "Buzzer pin override",
"label": "Buzzer Pin"
},
"disableTripleClick": {
"description": "Disable triple click",
"label": "Disable Triple Click"
},
"doubleTapAsButtonPress": {
"description": "Treat double tap as button press",
"label": "Double Tap as Button Press"
},
"ledHeartbeatDisabled": {
"description": "Disable default blinking LED",
"label": "LED Heartbeat Disabled"
},
"nodeInfoBroadcastInterval": {
"description": "How often to broadcast node info",
"label": "Node Info Broadcast Interval"
},
"posixTimezone": {
"description": "The POSIX timezone string for the device",
"label": "Fuso horário POSIX"
},
"rebroadcastMode": {
"description": "How to handle rebroadcasting",
"label": "Rebroadcast Mode"
},
"role": {
"description": "What role the device performs on the mesh",
"label": "Função"
}
},
"bluetooth": {
"title": "Bluetooth Settings",
"description": "Settings for the Bluetooth module",
"note": "Note: Some devices (ESP32) cannot use both Bluetooth and WiFi at the same time.",
"enabled": {
"description": "Enable or disable Bluetooth",
"label": "Enabled"
},
"pairingMode": {
"description": "Pin selection behaviour.",
"label": "Modo de pareamento"
},
"pin": {
"description": "Pin to use when pairing",
"label": "Pin"
}
},
"display": {
"description": "Settings for the device display",
"title": "Display Settings",
"headingBold": {
"description": "Bolden the heading text",
"label": "Bold Heading"
},
"carouselDelay": {
"description": "How fast to cycle through windows",
"label": "Carousel Delay"
},
"compassNorthTop": {
"description": "Fix north to the top of compass",
"label": "Compass North Top"
},
"displayMode": {
"description": "Screen layout variant",
"label": "Display Mode"
},
"displayUnits": {
"description": "Display metric or imperial units",
"label": "Display Units"
},
"flipScreen": {
"description": "Flip display 180 degrees",
"label": "Flip Screen"
},
"gpsDisplayUnits": {
"description": "Coordinate display format",
"label": "GPS Display Units"
},
"oledType": {
"description": "Type of OLED screen attached to the device",
"label": "OLED Type"
},
"screenTimeout": {
"description": "Turn off the display after this long",
"label": "Screen Timeout"
},
"twelveHourClock": {
"description": "Use 12-hour clock format",
"label": "12-Hour Clock"
},
"wakeOnTapOrMotion": {
"description": "Wake the device on tap or motion",
"label": "Wake on Tap or Motion"
}
},
"lora": {
"title": "Mesh Settings",
"description": "Settings for the LoRa mesh",
"bandwidth": {
"description": "Channel bandwidth in MHz",
"label": "Largura da banda"
},
"boostedRxGain": {
"description": "Boosted RX gain",
"label": "Boosted RX Gain"
},
"codingRate": {
"description": "The denominator of the coding rate",
"label": "Coding Rate"
},
"frequencyOffset": {
"description": "Frequency offset to correct for crystal calibration errors",
"label": "Frequency Offset"
},
"frequencySlot": {
"description": "LoRa frequency channel number",
"label": "Frequency Slot"
},
"hopLimit": {
"description": "Maximum number of hops",
"label": "Hop Limit"
},
"ignoreMqtt": {
"description": "Don't forward MQTT messages over the mesh",
"label": "Ignorar MQTT"
},
"modemPreset": {
"description": "Modem preset to use",
"label": "Predefinição do modem"
},
"okToMqtt": {
"description": "When set to true, this configuration indicates that the user approves the packet to be uploaded to MQTT. If set to false, remote nodes are requested not to forward packets to MQTT",
"label": "OK para MQTT"
},
"overrideDutyCycle": {
"description": "Ignorar ciclo de trabalho",
"label": "Ignorar ciclo de trabalho"
},
"overrideFrequency": {
"description": "Override frequency",
"label": "Override Frequency"
},
"region": {
"description": "Sets the region for your node",
"label": "Região"
},
"spreadingFactor": {
"description": "Indicates the number of chirps per symbol",
"label": "Spreading Factor"
},
"transmitEnabled": {
"description": "Enable/Disable transmit (TX) from the LoRa radio",
"label": "Transmit Enabled"
},
"transmitPower": {
"description": "Max transmit power",
"label": "Transmit Power"
},
"usePreset": {
"description": "Use one of the predefined modem presets",
"label": "Use Preset"
},
"meshSettings": {
"description": "Settings for the LoRa mesh",
"label": "Mesh Settings"
},
"waveformSettings": {
"description": "Settings for the LoRa waveform",
"label": "Waveform Settings"
},
"radioSettings": {
"label": "Radio Settings",
"description": "Settings for the LoRa radio"
}
},
"network": {
"title": "WiFi Config",
"description": "WiFi radio configuration",
"note": "Note: Some devices (ESP32) cannot use both Bluetooth and WiFi at the same time.",
"addressMode": {
"description": "Address assignment selection",
"label": "Address Mode"
},
"dns": {
"description": "DNS Server",
"label": "DNS"
},
"ethernetEnabled": {
"description": "Enable or disable the Ethernet port",
"label": "Enabled"
},
"gateway": {
"description": "Default Gateway",
"label": "Gateway"
},
"ip": {
"description": "IP Address",
"label": "IP"
},
"psk": {
"description": "Network password",
"label": "PSK"
},
"ssid": {
"description": "Network name",
"label": "SSID"
},
"subnet": {
"description": "Subnet Mask",
"label": "Subnet"
},
"wifiEnabled": {
"description": "Enable or disable the WiFi radio",
"label": "Enabled"
},
"meshViaUdp": {
"label": "Mesh via UDP"
},
"ntpServer": {
"label": "NTP Server"
},
"rsyslogServer": {
"label": "Rsyslog Server"
},
"ethernetConfigSettings": {
"description": "Ethernet port configuration",
"label": "Ethernet Config"
},
"ipConfigSettings": {
"description": "IP configuration",
"label": "IP Config"
},
"ntpConfigSettings": {
"description": "NTP configuration",
"label": "NTP Config"
},
"rsyslogConfigSettings": {
"description": "Rsyslog configuration",
"label": "Rsyslog Config"
},
"udpConfigSettings": {
"description": "UDP over Mesh configuration",
"label": "Configuração UDP"
}
},
"position": {
"title": "Position Settings",
"description": "Settings for the position module",
"broadcastInterval": {
"description": "How often your position is sent out over the mesh",
"label": "Broadcast Interval"
},
"enablePin": {
"description": "GPS module enable pin override",
"label": "Enable Pin"
},
"fixedPosition": {
"description": "Don't report GPS position, but a manually-specified one",
"label": "Fixed Position"
},
"gpsMode": {
"description": "Configure whether device GPS is Enabled, Disabled, or Not Present",
"label": "GPS Mode"
},
"gpsUpdateInterval": {
"description": "How often a GPS fix should be acquired",
"label": "GPS Update Interval"
},
"positionFlags": {
"description": "Optional fields to include when assembling position messages. The more fields are selected, the larger the message will be leading to longer airtime usage and a higher risk of packet loss.",
"label": "Position Flags"
},
"receivePin": {
"description": "GPS module RX pin override",
"label": "Receive Pin"
},
"smartPositionEnabled": {
"description": "Only send position when there has been a meaningful change in location",
"label": "Enable Smart Position"
},
"smartPositionMinDistance": {
"description": "Minimum distance (in meters) that must be traveled before a position update is sent",
"label": "Smart Position Minimum Distance"
},
"smartPositionMinInterval": {
"description": "Minimum interval (in seconds) that must pass before a position update is sent",
"label": "Smart Position Minimum Interval"
},
"transmitPin": {
"description": "GPS module TX pin override",
"label": "Transmit Pin"
},
"intervalsSettings": {
"description": "How often to send position updates",
"label": "Intervals"
},
"flags": {
"placeholder": "Select position flags...",
"altitude": "Altitude",
"altitudeGeoidalSeparation": "Altitude Geoidal Separation",
"altitudeMsl": "Altitude is Mean Sea Level",
"dop": "Dilution of precision (DOP) PDOP used by default",
"hdopVdop": "If DOP is set, use HDOP / VDOP values instead of PDOP",
"numSatellites": "Number of satellites",
"sequenceNumber": "Sequence number",
"timestamp": "Data e hora",
"unset": "Não definido",
"vehicleHeading": "Vehicle heading",
"vehicleSpeed": "Vehicle speed"
}
},
"power": {
"adcMultiplierOverride": {
"description": "Used for tweaking battery voltage reading",
"label": "ADC Multiplier Override ratio"
},
"ina219Address": {
"description": "Address of the INA219 battery monitor",
"label": "INA219 Address"
},
"lightSleepDuration": {
"description": "How long the device will be in light sleep for",
"label": "Light Sleep Duration"
},
"minimumWakeTime": {
"description": "Minimum amount of time the device will stay awake for after receiving a packet",
"label": "Minimum Wake Time"
},
"noConnectionBluetoothDisabled": {
"description": "If the device does not receive a Bluetooth connection, the BLE radio will be disabled after this long",
"label": "No Connection Bluetooth Disabled"
},
"powerSavingEnabled": {
"description": "Select if powered from a low-current source (i.e. solar), to minimize power consumption as much as possible.",
"label": "Ativar modo de economia de energia"
},
"shutdownOnBatteryDelay": {
"description": "Automatically shutdown node after this long when on battery, 0 for indefinite",
"label": "Shutdown on battery delay"
},
"superDeepSleepDuration": {
"description": "How long the device will be in super deep sleep for",
"label": "Super Deep Sleep Duration"
},
"powerConfigSettings": {
"description": "Settings for the power module",
"label": "Configuração de Energia"
},
"sleepSettings": {
"description": "Sleep settings for the power module",
"label": "Sleep Settings"
}
},
"security": {
"description": "Settings for the Security configuration",
"title": "Security Settings",
"button_backupKey": "Backup Key",
"adminChannelEnabled": {
"description": "Allow incoming device control over the insecure legacy admin channel",
"label": "Allow Legacy Admin"
},
"enableDebugLogApi": {
"description": "Output live debug logging over serial, view and export position-redacted device logs over Bluetooth",
"label": "Enable Debug Log API"
},
"managed": {
"description": "If enabled, device configuration options are only able to be changed remotely by a Remote Admin node via admin messages. Do not enable this option unless at least one suitable Remote Admin node has been setup, and the public key is stored in one of the fields above.",
"label": "Managed"
},
"privateKey": {
"description": "Used to create a shared key with a remote device",
"label": "Chave Privada"
},
"publicKey": {
"description": "Sent out to other nodes on the mesh to allow them to compute a shared secret key",
"label": "Chave Publica"
},
"primaryAdminKey": {
"description": "The primary public key authorized to send admin messages to this node",
"label": "Primary Admin Key"
},
"secondaryAdminKey": {
"description": "The secondary public key authorized to send admin messages to this node",
"label": "Secondary Admin Key"
},
"serialOutputEnabled": {
"description": "Serial Console over the Stream API",
"label": "Serial Output Enabled"
},
"tertiaryAdminKey": {
"description": "The tertiary public key authorized to send admin messages to this node",
"label": "Tertiary Admin Key"
},
"adminSettings": {
"description": "Settings for Admin",
"label": "Admin Settings"
},
"loggingSettings": {
"description": "Settings for Logging",
"label": "Logging Settings"
}
}
}

182
packages/web/public/i18n/locales/pt-BR/dialog.json

@ -0,0 +1,182 @@
{
"deleteMessages": {
"description": "This action will clear all message history. This cannot be undone. Are you sure you want to continue?",
"title": "Clear All Messages"
},
"deviceName": {
"description": "The Device will restart once the config is saved.",
"longName": "Long Name",
"shortName": "Short Name",
"title": "Change Device Name",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
},
"import": {
"description": "The current LoRa configuration will be overridden.",
"error": {
"invalidUrl": "Invalid Meshtastic URL"
},
"channelPrefix": "Channel: ",
"channelSetUrl": "Channel Set/QR Code URL",
"channels": "Channels:",
"usePreset": "Use Preset?",
"title": "Import Channel Set"
},
"locationResponse": {
"title": "Location: {{identifier}}",
"altitude": "Altitude: ",
"coordinates": "Coordinates: ",
"noCoordinates": "No Coordinates"
},
"pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?",
"description": "Are you sure you want to regenerate the pre-shared key?",
"regenerate": "Regenerate"
},
"newDeviceDialog": {
"title": "Connect New Device",
"https": "https",
"http": "http",
"tabHttp": "HTTP",
"tabBluetooth": "Bluetooth",
"tabSerial": "Serial",
"useHttps": "Use HTTPS",
"connecting": "Connecting...",
"connect": "Connect",
"connectionFailedAlert": {
"title": "Connection Failed",
"descriptionPrefix": "Could not connect to the device. ",
"httpsHint": "If using HTTPS, you may need to accept a self-signed certificate first. ",
"openLinkPrefix": "Please open ",
"openLinkSuffix": " in a new tab",
"acceptTlsWarningSuffix": ", accept any TLS warnings if prompted, then try again",
"learnMoreLink": "Learn more"
},
"httpConnection": {
"label": "IP Address/Hostname",
"placeholder": "000.000.000.000 / meshtastic.local"
},
"serialConnection": {
"noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "New device",
"deviceIdentifier": "# {{index}} - {{vendorId}} - {{productId}}"
},
"bluetoothConnection": {
"noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "New device",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
},
"validation": {
"requiresFeatures": "This connection type requires <0></0>. Please use a supported browser, like Chrome or Edge.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.",
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
}
},
"nodeDetails": {
"message": "Mensagem",
"requestPosition": "Request Position",
"traceRoute": "Trace Route",
"airTxUtilization": "Air TX utilization",
"allRawMetrics": "All Raw Metrics:",
"batteryLevel": "Battery level",
"channelUtilization": "Channel utilization",
"details": "Details:",
"deviceMetrics": "Device Metrics:",
"hardware": "Hardware: ",
"lastHeard": "Last Heard: ",
"nodeHexPrefix": "Node Hex: !",
"nodeNumber": "Node Number: ",
"position": "Position:",
"role": "Role: ",
"uptime": "Uptime: ",
"voltage": "Voltagem",
"title": "Node Details for {{identifier}}",
"ignoreNode": "Ignore node",
"removeNode": "Remove node",
"unignoreNode": "Unignore node"
},
"pkiBackup": {
"loseKeysWarning": "If you lose your keys, you will need to reset your device.",
"secureBackup": "Its important to backup your public and private keys and store your backup securely!",
"footer": "=== END OF KEYS ===",
"header": "=== MESHTASTIC KEYS FOR {{longName}} ({{shortName}}) ===",
"privateKey": "Private Key:",
"publicKey": "Public Key:",
"fileName": "meshtastic_keys_{{longName}}_{{shortName}}.txt",
"title": "Backup Keys"
},
"pkiBackupReminder": {
"description": "We recommend backing up your key data regularly. Would you like to back up now?",
"title": "Backup Reminder",
"remindLaterPrefix": "Remind me in",
"remindNever": "Never remind me",
"backupNow": "Back up now"
},
"pkiRegenerate": {
"description": "Are you sure you want to regenerate key pair?",
"title": "Regenerate Key Pair"
},
"qr": {
"addChannels": "Add Channels",
"replaceChannels": "Replace Channels",
"description": "The current LoRa configuration will also be shared.",
"sharableUrl": "Sharable URL",
"title": "Generate QR Code"
},
"rebootOta": {
"title": "Schedule Reboot",
"description": "Reboot the connected node after a delay into OTA (Over-the-Air) mode.",
"enterDelay": "Enter delay (sec)",
"scheduled": "Reboot has been scheduled"
},
"reboot": {
"title": "Schedule Reboot",
"description": "Reboot the connected node after x minutes."
},
"refreshKeys": {
"description": {
"acceptNewKeys": "This will remove the node from device and request new keys.",
"keyMismatchReasonSuffix": ". This is due to the remote node's current public key does not match the previously stored key for this node.",
"unableToSendDmPrefix": "Your node is unable to send a direct message to node: "
},
"acceptNewKeys": "Accept New Keys",
"title": "Keys Mismatch - {{identifier}}"
},
"removeNode": {
"description": "Are you sure you want to remove this Node?",
"title": "Remove Node?"
},
"shutdown": {
"title": "Schedule Shutdown",
"description": "Turn off the connected node after x minutes."
},
"traceRoute": {
"routeToDestination": "Route to destination:",
"routeBack": "Route back:"
},
"tracerouteResponse": {
"title": "Traceroute: {{identifier}}"
},
"unsafeRoles": {
"confirmUnderstanding": "Yes, I know what I'm doing",
"conjunction": " and the blog post about ",
"postamble": " and understand the implications of changing the role.",
"preamble": "I have read the ",
"choosingRightDeviceRole": "Choosing The Right Device Role",
"deviceRoleDocumentation": "Device Role Documentation",
"title": "Você tem certeza?"
},
"managedMode": {
"confirmUnderstanding": "Yes, I know what I'm doing",
"title": "Você tem certeza?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
}
}

39
packages/web/public/i18n/locales/pt-BR/messages.json

@ -0,0 +1,39 @@
{
"page": {
"title": "Messages: {{chatName}}",
"placeholder": "Enter Message"
},
"emptyState": {
"title": "Select a Chat",
"text": "No messages yet."
},
"selectChatPrompt": {
"text": "Select a channel or node to start messaging."
},
"sendMessage": {
"placeholder": "Enter your message here...",
"sendButton": "Enviar"
},
"actionsMenu": {
"addReactionLabel": "Add Reaction",
"replyLabel": "Responder"
},
"deliveryStatus": {
"delivered": {
"label": "Message delivered",
"displayText": "Message delivered"
},
"failed": {
"label": "Message delivery failed",
"displayText": "Delivery failed"
},
"unknown": {
"label": "Message status unknown",
"displayText": "Unknown state"
},
"waiting": {
"label": "Sending message",
"displayText": "Waiting for delivery"
}
}
}

448
packages/web/public/i18n/locales/pt-BR/moduleConfig.json

@ -0,0 +1,448 @@
{
"page": {
"tabAmbientLighting": "Luz Ambiente",
"tabAudio": "Áudio",
"tabCannedMessage": "Canned",
"tabDetectionSensor": "Sensor de Detecção",
"tabExternalNotification": "Ext Notif",
"tabMqtt": "MQTT",
"tabNeighborInfo": "Informações do Vizinho",
"tabPaxcounter": "Medidor de Fluxo de Pessoas",
"tabRangeTest": "Teste de Alcance",
"tabSerial": "Serial",
"tabStoreAndForward": "S&F",
"tabTelemetry": "Telemetria"
},
"ambientLighting": {
"title": "Ambient Lighting Settings",
"description": "Settings for the Ambient Lighting module",
"ledState": {
"label": "LED State",
"description": "Sets LED to on or off"
},
"current": {
"label": "Atual",
"description": "Sets the current for the LED output. Default is 10"
},
"red": {
"label": "Vermelho",
"description": "Sets the red LED level. Values are 0-255"
},
"green": {
"label": "Verde",
"description": "Sets the green LED level. Values are 0-255"
},
"blue": {
"label": "Azul",
"description": "Sets the blue LED level. Values are 0-255"
}
},
"audio": {
"title": "Audio Settings",
"description": "Settings for the Audio module",
"codec2Enabled": {
"label": "Codec 2 Enabled",
"description": "Enable Codec 2 audio encoding"
},
"pttPin": {
"label": "PTT Pin",
"description": "GPIO pin to use for PTT"
},
"bitrate": {
"label": "Bitrate",
"description": "Bitrate to use for audio encoding"
},
"i2sWs": {
"label": "i2S WS",
"description": "GPIO pin to use for i2S WS"
},
"i2sSd": {
"label": "i2S SD",
"description": "GPIO pin to use for i2S SD"
},
"i2sDin": {
"label": "i2S DIN",
"description": "GPIO pin to use for i2S DIN"
},
"i2sSck": {
"label": "i2S SCK",
"description": "GPIO pin to use for i2S SCK"
}
},
"cannedMessage": {
"title": "Canned Message Settings",
"description": "Settings for the Canned Message module",
"moduleEnabled": {
"label": "Module Enabled",
"description": "Enable Canned Message"
},
"rotary1Enabled": {
"label": "Rotary Encoder #1 Enabled",
"description": "Enable the rotary encoder"
},
"inputbrokerPinA": {
"label": "Encoder Pin A",
"description": "GPIO Pin Value (1-39) For encoder port A"
},
"inputbrokerPinB": {
"label": "Encoder Pin B",
"description": "GPIO Pin Value (1-39) For encoder port B"
},
"inputbrokerPinPress": {
"label": "Encoder Pin Press",
"description": "GPIO Pin Value (1-39) For encoder Press"
},
"inputbrokerEventCw": {
"label": "Clockwise event",
"description": "Select input event."
},
"inputbrokerEventCcw": {
"label": "Counter Clockwise event",
"description": "Select input event."
},
"inputbrokerEventPress": {
"label": "Press event",
"description": "Select input event"
},
"updown1Enabled": {
"label": "Up Down enabled",
"description": "Enable the up / down encoder"
},
"allowInputSource": {
"label": "Allow Input Source",
"description": "Select from: '_any', 'rotEnc1', 'upDownEnc1', 'cardkb'"
},
"sendBell": {
"label": "Send Bell",
"description": "Sends a bell character with each message"
}
},
"detectionSensor": {
"title": "Detection Sensor Settings",
"description": "Settings for the Detection Sensor module",
"enabled": {
"label": "Enabled",
"description": "Enable or disable Detection Sensor Module"
},
"minimumBroadcastSecs": {
"label": "Minimum Broadcast Seconds",
"description": "The interval in seconds of how often we can send a message to the mesh when a state change is detected"
},
"stateBroadcastSecs": {
"label": "State Broadcast Seconds",
"description": "The interval in seconds of how often we should send a message to the mesh with the current state regardless of changes"
},
"sendBell": {
"label": "Send Bell",
"description": "Send ASCII bell with alert message"
},
"name": {
"label": "Friendly Name",
"description": "Used to format the message sent to mesh, max 20 Characters"
},
"monitorPin": {
"label": "Monitor Pin",
"description": "The GPIO pin to monitor for state changes"
},
"detectionTriggerType": {
"label": "Detection Triggered Type",
"description": "The type of trigger event to be used"
},
"usePullup": {
"label": "Use Pullup",
"description": "Whether or not use INPUT_PULLUP mode for GPIO pin"
}
},
"externalNotification": {
"title": "External Notification Settings",
"description": "Configure the external notification module",
"enabled": {
"label": "Module Enabled",
"description": "Enable External Notification"
},
"outputMs": {
"label": "Output MS",
"description": "Output MS"
},
"output": {
"label": "Output",
"description": "Output"
},
"outputVibra": {
"label": "Output Vibrate",
"description": "Output Vibrate"
},
"outputBuzzer": {
"label": "Output Buzzer",
"description": "Output Buzzer"
},
"active": {
"label": "Active",
"description": "Active"
},
"alertMessage": {
"label": "Alert Message",
"description": "Alert Message"
},
"alertMessageVibra": {
"label": "Alert Message Vibrate",
"description": "Alert Message Vibrate"
},
"alertMessageBuzzer": {
"label": "Alert Message Buzzer",
"description": "Alert Message Buzzer"
},
"alertBell": {
"label": "Alert Bell",
"description": "Should an alert be triggered when receiving an incoming bell?"
},
"alertBellVibra": {
"label": "Alert Bell Vibrate",
"description": "Alert Bell Vibrate"
},
"alertBellBuzzer": {
"label": "Alert Bell Buzzer",
"description": "Alert Bell Buzzer"
},
"usePwm": {
"label": "Use PWM",
"description": "Use PWM"
},
"nagTimeout": {
"label": "Nag Timeout",
"description": "Nag Timeout"
},
"useI2sAsBuzzer": {
"label": "Use I²S Pin as Buzzer",
"description": "Designate I²S Pin as Buzzer Output"
}
},
"mqtt": {
"title": "MQTT Settings",
"description": "Settings for the MQTT module",
"enabled": {
"label": "Enabled",
"description": "Enable or disable MQTT"
},
"address": {
"label": "MQTT Server Address",
"description": "MQTT server address to use for default/custom servers"
},
"username": {
"label": "MQTT Username",
"description": "MQTT username to use for default/custom servers"
},
"password": {
"label": "MQTT Password",
"description": "MQTT password to use for default/custom servers"
},
"encryptionEnabled": {
"label": "Encryption Enabled",
"description": "Enable or disable MQTT encryption. Note: All messages are sent to the MQTT broker unencrypted if this option is not enabled, even when your uplink channels have encryption keys set. This includes position data."
},
"jsonEnabled": {
"label": "JSON Enabled",
"description": "Whether to send/consume JSON packets on MQTT"
},
"tlsEnabled": {
"label": "TLS Enabled",
"description": "Enable or disable TLS"
},
"root": {
"label": "Tópico principal",
"description": "MQTT root topic to use for default/custom servers"
},
"proxyToClientEnabled": {
"label": "MQTT Client Proxy Enabled",
"description": "Utilizes the network connection to proxy MQTT messages to the client."
},
"mapReportingEnabled": {
"label": "Map Reporting Enabled",
"description": "Your node will periodically send an unencrypted map report packet to the configured MQTT server, this includes id, short and long name, approximate location, hardware model, role, firmware version, LoRa region, modem preset and primary channel name."
},
"mapReportSettings": {
"publishIntervalSecs": {
"label": "Map Report Publish Interval (s)",
"description": "Interval in seconds to publish map reports"
},
"positionPrecision": {
"label": "Approximate Location",
"description": "Position shared will be accurate within this distance",
"options": {
"metric_km23": "Within 23 km",
"metric_km12": "Within 12 km",
"metric_km5_8": "Within 5.8 km",
"metric_km2_9": "Within 2.9 km",
"metric_km1_5": "Within 1.5 km",
"metric_m700": "Within 700 m",
"metric_m350": "Within 350 m",
"metric_m200": "Within 200 m",
"metric_m90": "Within 90 m",
"metric_m50": "Within 50 m",
"imperial_mi15": "Within 15 miles",
"imperial_mi7_3": "Within 7.3 miles",
"imperial_mi3_6": "Within 3.6 miles",
"imperial_mi1_8": "Within 1.8 miles",
"imperial_mi0_9": "Within 0.9 miles",
"imperial_mi0_5": "Within 0.5 miles",
"imperial_mi0_2": "Within 0.2 miles",
"imperial_ft600": "Within 600 feet",
"imperial_ft300": "Within 300 feet",
"imperial_ft150": "Within 150 feet"
}
}
}
},
"neighborInfo": {
"title": "Neighbor Info Settings",
"description": "Settings for the Neighbor Info module",
"enabled": {
"label": "Enabled",
"description": "Enable or disable Neighbor Info Module"
},
"updateInterval": {
"label": "Update Interval",
"description": "Interval in seconds of how often we should try to send our Neighbor Info to the mesh"
}
},
"paxcounter": {
"title": "Paxcounter Settings",
"description": "Settings for the Paxcounter module",
"enabled": {
"label": "Module Enabled",
"description": "Enable Paxcounter"
},
"paxcounterUpdateInterval": {
"label": "Update Interval (seconds)",
"description": "How long to wait between sending paxcounter packets"
},
"wifiThreshold": {
"label": "WiFi RSSI Threshold",
"description": "At what WiFi RSSI level should the counter increase. Defaults to -80."
},
"bleThreshold": {
"label": "BLE RSSI Threshold",
"description": "At what BLE RSSI level should the counter increase. Defaults to -80."
}
},
"rangeTest": {
"title": "Range Test Settings",
"description": "Settings for the Range Test module",
"enabled": {
"label": "Module Enabled",
"description": "Enable Range Test"
},
"sender": {
"label": "Message Interval",
"description": "How long to wait between sending test packets"
},
"save": {
"label": "Save CSV to storage",
"description": "ESP32 Only"
}
},
"serial": {
"title": "Serial Settings",
"description": "Settings for the Serial module",
"enabled": {
"label": "Module Enabled",
"description": "Enable Serial output"
},
"echo": {
"label": "Echo",
"description": "Any packets you send will be echoed back to your device"
},
"rxd": {
"label": "Receive Pin",
"description": "Set the GPIO pin to the RXD pin you have set up."
},
"txd": {
"label": "Transmit Pin",
"description": "Set the GPIO pin to the TXD pin you have set up."
},
"baud": {
"label": "Baud Rate",
"description": "The serial baud rate"
},
"timeout": {
"label": "Tempo esgotado",
"description": "Seconds to wait before we consider your packet as 'done'"
},
"mode": {
"label": "Mode",
"description": "Select Mode"
},
"overrideConsoleSerialPort": {
"label": "Override Console Serial Port",
"description": "If you have a serial port connected to the console, this will override it."
}
},
"storeForward": {
"title": "Store & Forward Settings",
"description": "Settings for the Store & Forward module",
"enabled": {
"label": "Module Enabled",
"description": "Enable Store & Forward"
},
"heartbeat": {
"label": "Heartbeat Enabled",
"description": "Enable Store & Forward heartbeat"
},
"records": {
"label": "Número de registros",
"description": "Number of records to store"
},
"historyReturnMax": {
"label": "Histórico de retorno máximo",
"description": "Max number of records to return"
},
"historyReturnWindow": {
"label": "Janela de retorno do histórico",
"description": "Max number of records to return"
}
},
"telemetry": {
"title": "Telemetry Settings",
"description": "Settings for the Telemetry module",
"deviceUpdateInterval": {
"label": "Device Metrics",
"description": "Intervalo de atualização das métricas do dispositivo (segundos)"
},
"environmentUpdateInterval": {
"label": "Intervalo de atualização das métricas de ambiente (segundos)",
"description": ""
},
"environmentMeasurementEnabled": {
"label": "Module Enabled",
"description": "Enable the Environment Telemetry"
},
"environmentScreenEnabled": {
"label": "Displayed on Screen",
"description": "Show the Telemetry Module on the OLED"
},
"environmentDisplayFahrenheit": {
"label": "Display Fahrenheit",
"description": "Display temp in Fahrenheit"
},
"airQualityEnabled": {
"label": "Air Quality Enabled",
"description": "Enable the Air Quality Telemetry"
},
"airQualityInterval": {
"label": "Air Quality Update Interval",
"description": "How often to send Air Quality data over the mesh"
},
"powerMeasurementEnabled": {
"label": "Power Measurement Enabled",
"description": "Enable the Power Measurement Telemetry"
},
"powerUpdateInterval": {
"label": "Power Update Interval",
"description": "How often to send Power data over the mesh"
},
"powerScreenEnabled": {
"label": "Power Screen Enabled",
"description": "Enable the Power Telemetry Screen"
}
}
}

63
packages/web/public/i18n/locales/pt-BR/nodes.json

@ -0,0 +1,63 @@
{
"nodeDetail": {
"publicKeyEnabled": {
"label": "Public Key Enabled"
},
"noPublicKey": {
"label": "No Public Key"
},
"directMessage": {
"label": "Direct Message {{shortName}}"
},
"favorite": {
"label": "Favorito",
"tooltip": "Add or remove this node from your favorites"
},
"notFavorite": {
"label": "Not a Favorite"
},
"error": {
"label": "Erro",
"text": "An error occurred while fetching node details. Please try again later."
},
"status": {
"heard": "Heard",
"mqtt": "MQTT"
},
"elevation": {
"label": "Elevation"
},
"channelUtil": {
"label": "Channel Util"
},
"airtimeUtil": {
"label": "Airtime Util"
}
},
"nodesTable": {
"headings": {
"longName": "Long Name",
"connection": "Connection",
"lastHeard": "Last Heard",
"encryption": "Encryption",
"model": "Model",
"macAddress": "MAC Address"
},
"connectionStatus": {
"direct": "Direto",
"away": "away",
"unknown": "-",
"viaMqtt": ", via MQTT"
},
"lastHeardStatus": {
"never": "Never"
}
},
"actions": {
"added": "Added",
"removed": "Removed",
"ignoreNode": "Ignore Node",
"unignoreNode": "Unignore Node",
"requestPosition": "Request Position"
}
}

228
packages/web/public/i18n/locales/pt-BR/ui.json

@ -0,0 +1,228 @@
{
"navigation": {
"title": "Navigation",
"messages": "Mensagens",
"map": "Mapa",
"config": "Config",
"radioConfig": "Radio Config",
"moduleConfig": "Module Config",
"channels": "Canais",
"nodes": "Nós"
},
"app": {
"title": "Meshtastic",
"logo": "Meshtastic Logo"
},
"sidebar": {
"collapseToggle": {
"button": {
"open": "Open sidebar",
"close": "Close sidebar"
}
},
"deviceInfo": {
"volts": "{{voltage}} volts",
"firmware": {
"title": "Firmware",
"version": "v{{version}}",
"buildDate": "Build date: {{date}}"
},
"deviceName": {
"title": "Device Name",
"changeName": "Change Device Name",
"placeholder": "Enter device name"
},
"editDeviceName": "Edit device name"
}
},
"batteryStatus": {
"charging": "{{level}}% charging",
"pluggedIn": "Plugged in",
"title": "Bateria"
},
"search": {
"nodes": "Search nodes...",
"channels": "Search channels...",
"commandPalette": "Search commands..."
},
"toast": {
"positionRequestSent": {
"title": "Position request sent."
},
"requestingPosition": {
"title": "Requesting position, please wait..."
},
"sendingTraceroute": {
"title": "Sending Traceroute, please wait..."
},
"tracerouteSent": {
"title": "Traceroute sent."
},
"savedChannel": {
"title": "Saved Channel: {{channelName}}"
},
"messages": {
"pkiEncryption": {
"title": "Chat is using PKI encryption."
},
"pskEncryption": {
"title": "Chat is using PSK encryption."
}
},
"configSaveError": {
"title": "Error Saving Config",
"description": "An error occurred while saving the configuration."
},
"validationError": {
"title": "Config Errors Exist",
"description": "Please fix the configuration errors before saving."
},
"saveSuccess": {
"title": "Saving Config",
"description": "The configuration change {{case}} has been saved."
},
"favoriteNode": {
"title": "{{action}} {{nodeName}} {{direction}} favorites.",
"action": {
"added": "Added",
"removed": "Removed",
"to": "to",
"from": "from"
}
},
"ignoreNode": {
"title": "{{action}} {{nodeName}} {{direction}} ignore list",
"action": {
"added": "Added",
"removed": "Removed",
"to": "to",
"from": "from"
}
}
},
"notifications": {
"copied": {
"label": "Copied!"
},
"copyToClipboard": {
"label": "Copy to clipboard"
},
"hidePassword": {
"label": "Ocultar senha"
},
"showPassword": {
"label": "Mostrar senha"
},
"deliveryStatus": {
"delivered": "Delivered",
"failed": "Delivery Failed",
"waiting": "Waiting",
"unknown": "Desconhecido"
}
},
"general": {
"label": "General"
},
"hardware": {
"label": "Hardware"
},
"metrics": {
"label": "Metrics"
},
"role": {
"label": "Função"
},
"filter": {
"label": "Filtro"
},
"advanced": {
"label": "Advanced"
},
"clearInput": {
"label": "Clear input"
},
"resetFilters": {
"label": "Reset Filters"
},
"nodeName": {
"label": "Node name/number",
"placeholder": "Meshtastic 1234"
},
"airtimeUtilization": {
"label": "Airtime Utilization (%)"
},
"batteryLevel": {
"label": "Battery level (%)",
"labelText": "Battery level (%): {{value}}"
},
"batteryVoltage": {
"label": "Battery voltage (V)",
"title": "Voltagem"
},
"channelUtilization": {
"label": "Channel Utilization (%)"
},
"hops": {
"direct": "Direto",
"label": "Number of hops",
"text": "Number of hops: {{value}}"
},
"lastHeard": {
"label": "Visto pela última vez",
"labelText": "Last heard: {{value}}",
"nowLabel": "Now"
},
"snr": {
"label": "SNR (db)"
},
"favorites": {
"label": "Favorites"
},
"hide": {
"label": "Hide"
},
"showOnly": {
"label": "Show Only"
},
"viaMqtt": {
"label": "Connected via MQTT"
},
"hopsUnknown": {
"label": "Unknown number of hops"
},
"showUnheard": {
"label": "Never heard"
},
"language": {
"label": "Idioma",
"changeLanguage": "Change Language"
},
"theme": {
"dark": "Escuro",
"light": "Claro",
"system": "Automatic",
"changeTheme": "Change Color Scheme"
},
"errorPage": {
"title": "This is a little embarrassing...",
"description1": "We are really sorry but an error occurred in the web client that caused it to crash. <br /> This is not supposed to happen, and we are working hard to fix it.",
"description2": "The best way to prevent this from happening again to you or anyone else is to report the issue to us.",
"reportInstructions": "Please include the following information in your report:",
"reportSteps": {
"step1": "What you were doing when the error occurred",
"step2": "What you expected to happen",
"step3": "What actually happened",
"step4": "Any other relevant information"
},
"reportLink": "You can report the issue to our <0>GitHub</0>",
"dashboardLink": "Return to the <0>dashboard</0>",
"detailsSummary": "Error Details",
"errorMessageLabel": "Error message:",
"stackTraceLabel": "Stack trace:",
"fallbackError": "{{error}}"
},
"footer": {
"text": "Powered by <0>▲ Vercel</0> | Meshtastic® is a registered trademark of Meshtastic LLC. | <1>Legal Information</1>",
"commitSha": "Commit SHA: {{sha}}"
}
}

97
packages/web/public/i18n/locales/pt-PT/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "No results found.", "emptyState": "No results found.",
"page": { "page": {
"title": "Command Menu" "title": "Command Menu"
}, },
"pinGroup": { "pinGroup": {
"label": "Pin command group" "label": "Pin command group"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Unpin command group" "label": "Unpin command group"
}, },
"goto": { "goto": {
"label": "Goto", "label": "Goto",
"command": { "command": {
"messages": "Mensagens", "messages": "Mensagens",
"map": "Mapa", "map": "Mapa",
"config": "Config", "config": "Config",
"channels": "Canal", "channels": "Canal",
"nodes": "Nodes" "nodes": "Nodes"
} }
}, },
"manage": { "manage": {
"label": "Manage", "label": "Manage",
"command": { "command": {
"switchNode": "Switch Node", "switchNode": "Switch Node",
"connectNewNode": "Connect New Node" "connectNewNode": "Connect New Node"
} }
}, },
"contextual": { "contextual": {
"label": "Contextual", "label": "Contextual",
"command": { "command": {
"qrCode": "QR Code", "qrCode": "QR Code",
"qrGenerator": "Generator", "qrGenerator": "Generator",
"qrImport": "Importar", "qrImport": "Importar",
"scheduleShutdown": "Schedule Shutdown", "scheduleShutdown": "Schedule Shutdown",
"scheduleReboot": "Schedule Reboot", "scheduleReboot": "Schedule Reboot",
"rebootToOtaMode": "Reboot To OTA Mode", "rebootToOtaMode": "Reboot To OTA Mode",
"resetNodeDb": "Reset Node DB", "resetNodeDb": "Reset Node DB",
"factoryResetDevice": "Factory Reset Device", "factoryResetDevice": "Factory Reset Device",
"factoryResetConfig": "Factory Reset Config" "factoryResetConfig": "Factory Reset Config",
} "disconnect": "Desligar"
}, }
"debug": { },
"label": "Depuração", "debug": {
"command": { "label": "Depuração",
"reconfigure": "Reconfigure", "command": {
"clearAllStoredMessages": "Clear All Stored Message" "reconfigure": "Reconfigure",
} "clearAllStoredMessages": "Clear All Stored Message"
} }
}
} }

10
packages/web/public/i18n/locales/pt-PT/deviceConfig.json

@ -1,6 +1,6 @@
{ {
"page": { "page": {
"title": "Configuration", "title": "Configuração",
"tabBluetooth": "Bluetooth", "tabBluetooth": "Bluetooth",
"tabDevice": "Dispositivo", "tabDevice": "Dispositivo",
"tabDisplay": "Ecrã", "tabDisplay": "Ecrã",
@ -11,11 +11,11 @@
"tabSecurity": "Segurança" "tabSecurity": "Segurança"
}, },
"sidebar": { "sidebar": {
"label": "Modules" "label": "Módulos"
}, },
"device": { "device": {
"title": "Device Settings", "title": "Definições do dispositivo",
"description": "Settings for the device", "description": "Configurações para o dispositivo",
"buttonPin": { "buttonPin": {
"description": "Button pin override", "description": "Button pin override",
"label": "Button Pin" "label": "Button Pin"
@ -111,7 +111,7 @@
}, },
"twelveHourClock": { "twelveHourClock": {
"description": "Use 12-hour clock format", "description": "Use 12-hour clock format",
"label": "12-Hour Clock" "label": "Relógio 12-Horas"
}, },
"wakeOnTapOrMotion": { "wakeOnTapOrMotion": {
"description": "Wake the device on tap or motion", "description": "Wake the device on tap or motion",

23
packages/web/public/i18n/locales/pt-PT/dialog.json

@ -7,7 +7,13 @@
"description": "The Device will restart once the config is saved.", "description": "The Device will restart once the config is saved.",
"longName": "Long Name", "longName": "Long Name",
"shortName": "Short Name", "shortName": "Short Name",
"title": "Change Device Name" "title": "Change Device Name",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "The current LoRa configuration will be overridden.", "description": "The current LoRa configuration will be overridden.",
@ -21,9 +27,10 @@
"title": "Import Channel Set" "title": "Import Channel Set"
}, },
"locationResponse": { "locationResponse": {
"title": "Location: {{identifier}}",
"altitude": "Altitude: ", "altitude": "Altitude: ",
"coordinates": "Coordinates: ", "coordinates": "Coordinates: ",
"title": "Location: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?", "title": "Regenerate Pre-Shared Key?",
@ -60,11 +67,15 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "New device" "newDeviceButton": "New device",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "This connection type requires <0></0>. Please use a supported browser, like Chrome or Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.", "requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.",
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost." "additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
} }
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Yes, I know what I'm doing", "confirmUnderstanding": "Yes, I know what I'm doing",
"title": "Confirma?", "title": "Confirma?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

97
packages/web/public/i18n/locales/sv-SE/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "Inga resultat hittades.", "emptyState": "Inga resultat hittades.",
"page": { "page": {
"title": "Snabbmeny" "title": "Snabbmeny"
}, },
"pinGroup": { "pinGroup": {
"label": "Lägg till grupp i favoriter" "label": "Lägg till grupp i favoriter"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Ta bort grupp från favoriter" "label": "Ta bort grupp från favoriter"
}, },
"goto": { "goto": {
"label": "Gå till", "label": "Gå till",
"command": { "command": {
"messages": "Meddelanden", "messages": "Meddelanden",
"map": "Karta", "map": "Karta",
"config": "Inställningar", "config": "Inställningar",
"channels": "Kanaler", "channels": "Kanaler",
"nodes": "Noder" "nodes": "Noder"
} }
}, },
"manage": { "manage": {
"label": "Hantera", "label": "Hantera",
"command": { "command": {
"switchNode": "Byt nod", "switchNode": "Byt nod",
"connectNewNode": "Anslut ny nod" "connectNewNode": "Anslut ny nod"
} }
}, },
"contextual": { "contextual": {
"label": "Kontextuell", "label": "Kontextuell",
"command": { "command": {
"qrCode": "QR-kod", "qrCode": "QR-kod",
"qrGenerator": "Generator", "qrGenerator": "Generator",
"qrImport": "Import", "qrImport": "Import",
"scheduleShutdown": "Schemalägg avstängning", "scheduleShutdown": "Schemalägg avstängning",
"scheduleReboot": "Schemalägg omstart", "scheduleReboot": "Schemalägg omstart",
"rebootToOtaMode": "Starta om till OTA-läge", "rebootToOtaMode": "Starta om till OTA-läge",
"resetNodeDb": "Töm noddatabasen", "resetNodeDb": "Töm noddatabasen",
"factoryResetDevice": "Fabriksåterställ enhet", "factoryResetDevice": "Fabriksåterställ enhet",
"factoryResetConfig": "Fabriksåterställ konfigurationen" "factoryResetConfig": "Fabriksåterställ konfigurationen",
} "disconnect": "Koppla från"
}, }
"debug": { },
"label": "Felsökning", "debug": {
"command": { "label": "Felsökning",
"reconfigure": "Konfigurera om", "command": {
"clearAllStoredMessages": "Radera alla sparade meddelanden" "reconfigure": "Konfigurera om",
} "clearAllStoredMessages": "Radera alla sparade meddelanden"
} }
}
} }

23
packages/web/public/i18n/locales/sv-SE/dialog.json

@ -7,7 +7,13 @@
"description": "Enheten kommer att starta om när inställningarna har sparats.", "description": "Enheten kommer att starta om när inställningarna har sparats.",
"longName": "Långt namn", "longName": "Långt namn",
"shortName": "Kort namn", "shortName": "Kort namn",
"title": "Ändra enhetens namn" "title": "Ändra enhetens namn",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "Den aktuella LoRa konfigurationen kommer att skrivas över.", "description": "Den aktuella LoRa konfigurationen kommer att skrivas över.",
@ -21,9 +27,10 @@
"title": "Importera kanaluppsättning" "title": "Importera kanaluppsättning"
}, },
"locationResponse": { "locationResponse": {
"title": "Plats: {{identifier}}",
"altitude": "Höjd:", "altitude": "Höjd:",
"coordinates": "Koordinater: ", "coordinates": "Koordinater: ",
"title": "Plats: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Förnya nyckel?", "title": "Förnya nyckel?",
@ -60,11 +67,15 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "Inga enheter parkopplade ännu.", "noDevicesPaired": "Inga enheter parkopplade ännu.",
"newDeviceButton": "Ny enhet" "newDeviceButton": "Ny enhet",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "Den här anslutningstypen kräver <0>Web Bluetooth</0>. Använd en webbläsare som stöds, till exempel Chrome eller Edge.", "requiresFeatures": "Den här anslutningstypen kräver <0></0>. Använd en webbläsare som stöds, till exempel Chrome eller Edge.",
"requiresWebSerial": "Den här anslutningstypen kräver <0>Web Serial</0>. Använd en webbläsare som stöds, till exempel Chrome eller Edge.",
"requiresSecureContext": "Denna applikation kräver en <0>säker kontext</0>. Anslut med HTTPS eller localhost.", "requiresSecureContext": "Denna applikation kräver en <0>säker kontext</0>. Anslut med HTTPS eller localhost.",
"additionallyRequiresSecureContext": "Dessutom kräver den ett <0>säker kontext</0>. Vänligen anslut med HTTPS eller localhost." "additionallyRequiresSecureContext": "Dessutom kräver den ett <0>säker kontext</0>. Vänligen anslut med HTTPS eller localhost."
} }
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Ja, jag vet vad jag gör", "confirmUnderstanding": "Ja, jag vet vad jag gör",
"title": "Är du säker?", "title": "Är du säker?",
"description": "Aktivering av fjärrhanterat läge blockerar klienter (inklusive webbklienten) från att skriva inställningar till en radio. När detta är aktiverat kan enhetens inställningar <bold>endast</bold> ändras via fjärradministratörsmeddelanden. Den här inställningen krävs inte för fjärradministration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

97
packages/web/public/i18n/locales/tr-TR/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "No results found.", "emptyState": "No results found.",
"page": { "page": {
"title": "Command Menu" "title": "Command Menu"
}, },
"pinGroup": { "pinGroup": {
"label": "Pin command group" "label": "Pin command group"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Unpin command group" "label": "Unpin command group"
}, },
"goto": { "goto": {
"label": "Goto", "label": "Goto",
"command": { "command": {
"messages": "Mesajlar", "messages": "Mesajlar",
"map": "Harita", "map": "Harita",
"config": "Config", "config": "Config",
"channels": "Kanallar", "channels": "Kanallar",
"nodes": "Nodes" "nodes": "Düğümler"
} }
}, },
"manage": { "manage": {
"label": "Manage", "label": "Manage",
"command": { "command": {
"switchNode": "Switch Node", "switchNode": "Switch Node",
"connectNewNode": "Connect New Node" "connectNewNode": "Connect New Node"
} }
}, },
"contextual": { "contextual": {
"label": "Contextual", "label": "Contextual",
"command": { "command": {
"qrCode": "QR Code", "qrCode": "QR Code",
"qrGenerator": "Generator", "qrGenerator": "Generator",
"qrImport": "İçeri aktar", "qrImport": "İçeri aktar",
"scheduleShutdown": "Schedule Shutdown", "scheduleShutdown": "Schedule Shutdown",
"scheduleReboot": "Schedule Reboot", "scheduleReboot": "Schedule Reboot",
"rebootToOtaMode": "Reboot To OTA Mode", "rebootToOtaMode": "Reboot To OTA Mode",
"resetNodeDb": "Reset Node DB", "resetNodeDb": "Reset Node DB",
"factoryResetDevice": "Factory Reset Device", "factoryResetDevice": "Factory Reset Device",
"factoryResetConfig": "Factory Reset Config" "factoryResetConfig": "Factory Reset Config",
} "disconnect": "Bağlantıyı Kes"
}, }
"debug": { },
"label": "Hata Ayıklama", "debug": {
"command": { "label": "Hata Ayıklama",
"reconfigure": "Reconfigure", "command": {
"clearAllStoredMessages": "Clear All Stored Message" "reconfigure": "Reconfigure",
} "clearAllStoredMessages": "Clear All Stored Message"
} }
}
} }

2
packages/web/public/i18n/locales/tr-TR/deviceConfig.json

@ -151,7 +151,7 @@
}, },
"modemPreset": { "modemPreset": {
"description": "Modem preset to use", "description": "Modem preset to use",
"label": "Modem Preset" "label": "Modem Ön Ayarı"
}, },
"okToMqtt": { "okToMqtt": {
"description": "When set to true, this configuration indicates that the user approves the packet to be uploaded to MQTT. If set to false, remote nodes are requested not to forward packets to MQTT", "description": "When set to true, this configuration indicates that the user approves the packet to be uploaded to MQTT. If set to false, remote nodes are requested not to forward packets to MQTT",

23
packages/web/public/i18n/locales/tr-TR/dialog.json

@ -7,7 +7,13 @@
"description": "The Device will restart once the config is saved.", "description": "The Device will restart once the config is saved.",
"longName": "Long Name", "longName": "Long Name",
"shortName": "Short Name", "shortName": "Short Name",
"title": "Change Device Name" "title": "Change Device Name",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "The current LoRa configuration will be overridden.", "description": "The current LoRa configuration will be overridden.",
@ -21,9 +27,10 @@
"title": "Import Channel Set" "title": "Import Channel Set"
}, },
"locationResponse": { "locationResponse": {
"title": "Location: {{identifier}}",
"altitude": "Altitude: ", "altitude": "Altitude: ",
"coordinates": "Coordinates: ", "coordinates": "Coordinates: ",
"title": "Location: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?", "title": "Regenerate Pre-Shared Key?",
@ -60,11 +67,15 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "New device" "newDeviceButton": "New device",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "This connection type requires <0></0>. Please use a supported browser, like Chrome or Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.", "requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.",
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost." "additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
} }
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Yes, I know what I'm doing", "confirmUnderstanding": "Yes, I know what I'm doing",
"title": "Emin misiniz?", "title": "Emin misiniz?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

2
packages/web/public/i18n/locales/tr-TR/messages.json

@ -16,7 +16,7 @@
}, },
"actionsMenu": { "actionsMenu": {
"addReactionLabel": "Add Reaction", "addReactionLabel": "Add Reaction",
"replyLabel": "Reply" "replyLabel": "Yanıtla"
}, },
"deliveryStatus": { "deliveryStatus": {
"delivered": { "delivered": {

2
packages/web/public/i18n/locales/tr-TR/ui.json

@ -7,7 +7,7 @@
"radioConfig": "Radio Config", "radioConfig": "Radio Config",
"moduleConfig": "Module Config", "moduleConfig": "Module Config",
"channels": "Kanallar", "channels": "Kanallar",
"nodes": "Nodes" "nodes": "Düğümler"
}, },
"app": { "app": {
"title": "Meshtastic", "title": "Meshtastic",

97
packages/web/public/i18n/locales/uk-UA/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "No results found.", "emptyState": "No results found.",
"page": { "page": {
"title": "Command Menu" "title": "Command Menu"
}, },
"pinGroup": { "pinGroup": {
"label": "Pin command group" "label": "Pin command group"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Unpin command group" "label": "Unpin command group"
}, },
"goto": { "goto": {
"label": "Goto", "label": "Goto",
"command": { "command": {
"messages": "Повідомлення", "messages": "Повідомлення",
"map": "Мапа", "map": "Мапа",
"config": "Config", "config": "Config",
"channels": "Канали", "channels": "Канали",
"nodes": "Вузли" "nodes": "Вузли"
} }
}, },
"manage": { "manage": {
"label": "Manage", "label": "Manage",
"command": { "command": {
"switchNode": "Switch Node", "switchNode": "Switch Node",
"connectNewNode": "Connect New Node" "connectNewNode": "Connect New Node"
} }
}, },
"contextual": { "contextual": {
"label": "Contextual", "label": "Contextual",
"command": { "command": {
"qrCode": "QR-код", "qrCode": "QR-код",
"qrGenerator": "Генератор", "qrGenerator": "Генератор",
"qrImport": "Import", "qrImport": "Імпортувати",
"scheduleShutdown": "Розклад вимкнення", "scheduleShutdown": "Розклад вимкнення",
"scheduleReboot": "Розклад перезавантаження", "scheduleReboot": "Розклад перезавантаження",
"rebootToOtaMode": "Reboot To OTA Mode", "rebootToOtaMode": "Reboot To OTA Mode",
"resetNodeDb": "Reset Node DB", "resetNodeDb": "Reset Node DB",
"factoryResetDevice": "Factory Reset Device", "factoryResetDevice": "Factory Reset Device",
"factoryResetConfig": "Factory Reset Config" "factoryResetConfig": "Factory Reset Config",
} "disconnect": "Disconnect"
}, }
"debug": { },
"label": "Debug", "debug": {
"command": { "label": "Debug",
"reconfigure": "Reconfigure", "command": {
"clearAllStoredMessages": "Clear All Stored Message" "reconfigure": "Reconfigure",
} "clearAllStoredMessages": "Clear All Stored Message"
} }
}
} }

12
packages/web/public/i18n/locales/uk-UA/common.json

@ -10,20 +10,20 @@
"dismiss": "Dismiss", "dismiss": "Dismiss",
"download": "Download", "download": "Download",
"export": "Export", "export": "Export",
"generate": "Generate", "generate": "Згенерувати",
"regenerate": "Regenerate", "regenerate": "Перегенерувати",
"import": "Import", "import": "Імпортувати",
"message": "Повідомлення", "message": "Повідомлення",
"now": "Now", "now": "Зараз",
"ok": "Гаразд", "ok": "Гаразд",
"print": "Print", "print": "Print",
"rebootOtaNow": "Reboot to OTA Mode Now", "rebootOtaNow": "Reboot to OTA Mode Now",
"remove": "Видалити", "remove": "Видалити",
"requestNewKeys": "Request New Keys", "requestNewKeys": "Request New Keys",
"requestPosition": "Request Position", "requestPosition": "Запитати позицію",
"reset": "Скинути", "reset": "Скинути",
"save": "Зберегти", "save": "Зберегти",
"scanQr": "Scan QR Code", "scanQr": "Сканувати QR-код",
"traceRoute": "Trace Route", "traceRoute": "Trace Route",
"submit": "Submit" "submit": "Submit"
}, },

14
packages/web/public/i18n/locales/uk-UA/deviceConfig.json

@ -42,7 +42,7 @@
}, },
"posixTimezone": { "posixTimezone": {
"description": "The POSIX timezone string for the device", "description": "The POSIX timezone string for the device",
"label": "POSIX Timezone" "label": "Часова зона POSIX"
}, },
"rebroadcastMode": { "rebroadcastMode": {
"description": "How to handle rebroadcasting", "description": "How to handle rebroadcasting",
@ -50,7 +50,7 @@
}, },
"role": { "role": {
"description": "What role the device performs on the mesh", "description": "What role the device performs on the mesh",
"label": "Role" "label": "Роль"
} }
}, },
"bluetooth": { "bluetooth": {
@ -212,7 +212,7 @@
}, },
"ethernetEnabled": { "ethernetEnabled": {
"description": "Enable or disable the Ethernet port", "description": "Enable or disable the Ethernet port",
"label": "Enabled" "label": "Увімкнено"
}, },
"gateway": { "gateway": {
"description": "Default Gateway", "description": "Default Gateway",
@ -220,7 +220,7 @@
}, },
"ip": { "ip": {
"description": "IP Address", "description": "IP Address",
"label": "IP" "label": "IP-адреса"
}, },
"psk": { "psk": {
"description": "Network password", "description": "Network password",
@ -236,7 +236,7 @@
}, },
"wifiEnabled": { "wifiEnabled": {
"description": "Увімкнути або вимкнути WiFi радіо", "description": "Увімкнути або вимкнути WiFi радіо",
"label": "Enabled" "label": "Увімкнено"
}, },
"meshViaUdp": { "meshViaUdp": {
"label": "Mesh via UDP" "label": "Mesh via UDP"
@ -328,7 +328,7 @@
"hdopVdop": "If DOP is set, use HDOP / VDOP values instead of PDOP", "hdopVdop": "If DOP is set, use HDOP / VDOP values instead of PDOP",
"numSatellites": "Number of satellites", "numSatellites": "Number of satellites",
"sequenceNumber": "Sequence number", "sequenceNumber": "Sequence number",
"timestamp": "Timestamp", "timestamp": "Мітка часу",
"unset": "Скинути", "unset": "Скинути",
"vehicleHeading": "Vehicle heading", "vehicleHeading": "Vehicle heading",
"vehicleSpeed": "Vehicle speed" "vehicleSpeed": "Vehicle speed"
@ -357,7 +357,7 @@
}, },
"powerSavingEnabled": { "powerSavingEnabled": {
"description": "Select if powered from a low-current source (i.e. solar), to minimize power consumption as much as possible.", "description": "Select if powered from a low-current source (i.e. solar), to minimize power consumption as much as possible.",
"label": "Enable power saving mode" "label": "Увімкнути енергоощадний режим"
}, },
"shutdownOnBatteryDelay": { "shutdownOnBatteryDelay": {
"description": "Automatically shutdown node after this long when on battery, 0 for indefinite", "description": "Automatically shutdown node after this long when on battery, 0 for indefinite",

35
packages/web/public/i18n/locales/uk-UA/dialog.json

@ -7,7 +7,13 @@
"description": "The Device will restart once the config is saved.", "description": "The Device will restart once the config is saved.",
"longName": "Довга назва", "longName": "Довга назва",
"shortName": "Коротка назва", "shortName": "Коротка назва",
"title": "Змінити назву пристрою" "title": "Змінити назву пристрою",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "The current LoRa configuration will be overridden.", "description": "The current LoRa configuration will be overridden.",
@ -21,9 +27,10 @@
"title": "Import Channel Set" "title": "Import Channel Set"
}, },
"locationResponse": { "locationResponse": {
"title": "Розташування: {{identifier}}",
"altitude": "Висота: ", "altitude": "Висота: ",
"coordinates": "Координати: ", "coordinates": "Координати: ",
"title": "Розташування: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?", "title": "Regenerate Pre-Shared Key?",
@ -36,7 +43,7 @@
"http": "http", "http": "http",
"tabHttp": "HTTP", "tabHttp": "HTTP",
"tabBluetooth": "Bluetooth", "tabBluetooth": "Bluetooth",
"tabSerial": "Serial", "tabSerial": "Серійний порт",
"useHttps": "Використовувати HTTPS", "useHttps": "Використовувати HTTPS",
"connecting": "Підключення...", "connecting": "Підключення...",
"connect": "Connect", "connect": "Connect",
@ -55,23 +62,27 @@
}, },
"serialConnection": { "serialConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "New device", "newDeviceButton": "Новий пристрій",
"deviceIdentifier": "# {{index}} - {{vendorId}} - {{productId}}" "deviceIdentifier": "# {{index}} - {{vendorId}} - {{productId}}"
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "Новий пристрій" "newDeviceButton": "Новий пристрій",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "This connection type requires <0></0>. Please use a supported browser, like Chrome or Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.", "requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.",
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost." "additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
} }
}, },
"nodeDetails": { "nodeDetails": {
"message": "Повідомлення", "message": "Повідомлення",
"requestPosition": "Request Position", "requestPosition": "Запитати позицію",
"traceRoute": "Trace Route", "traceRoute": "Trace Route",
"airTxUtilization": "Air TX utilization", "airTxUtilization": "Air TX utilization",
"allRawMetrics": "All Raw Metrics:", "allRawMetrics": "All Raw Metrics:",
@ -86,7 +97,7 @@
"position": "Position:", "position": "Position:",
"role": "Role: ", "role": "Role: ",
"uptime": "Uptime: ", "uptime": "Uptime: ",
"voltage": "Voltage", "voltage": "Напруга",
"title": "Node Details for {{identifier}}", "title": "Node Details for {{identifier}}",
"ignoreNode": "Ignore node", "ignoreNode": "Ignore node",
"removeNode": "Remove node", "removeNode": "Remove node",
@ -144,7 +155,7 @@
"title": "Remove Node?" "title": "Remove Node?"
}, },
"shutdown": { "shutdown": {
"title": "Schedule Shutdown", "title": "Розклад вимкнення",
"description": "Turn off the connected node after x minutes." "description": "Turn off the connected node after x minutes."
}, },
"traceRoute": { "traceRoute": {
@ -155,7 +166,7 @@
"title": "Traceroute: {{identifier}}" "title": "Traceroute: {{identifier}}"
}, },
"unsafeRoles": { "unsafeRoles": {
"confirmUnderstanding": "Yes, I know what I'm doing", "confirmUnderstanding": "Я знаю, що роблю",
"conjunction": " and the blog post about ", "conjunction": " and the blog post about ",
"postamble": " and understand the implications of changing the role.", "postamble": " and understand the implications of changing the role.",
"preamble": "I have read the ", "preamble": "I have read the ",
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Я знаю, що роблю", "confirmUnderstanding": "Я знаю, що роблю",
"title": "Ви впевнені?", "title": "Ви впевнені?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

30
packages/web/public/i18n/locales/uk-UA/moduleConfig.json

@ -9,7 +9,7 @@
"tabNeighborInfo": "Neighbor Info", "tabNeighborInfo": "Neighbor Info",
"tabPaxcounter": "Paxcounter", "tabPaxcounter": "Paxcounter",
"tabRangeTest": "Тест дальності", "tabRangeTest": "Тест дальності",
"tabSerial": "Serial", "tabSerial": "Серійний порт",
"tabStoreAndForward": "S&F", "tabStoreAndForward": "S&F",
"tabTelemetry": "Телеметрія" "tabTelemetry": "Телеметрія"
}, },
@ -121,7 +121,7 @@
"title": "Detection Sensor Settings", "title": "Detection Sensor Settings",
"description": "Settings for the Detection Sensor module", "description": "Settings for the Detection Sensor module",
"enabled": { "enabled": {
"label": "Enabled", "label": "Увімкнено",
"description": "Enable or disable Detection Sensor Module" "description": "Enable or disable Detection Sensor Module"
}, },
"minimumBroadcastSecs": { "minimumBroadcastSecs": {
@ -221,7 +221,7 @@
"title": "Налаштування MQTT", "title": "Налаштування MQTT",
"description": "Settings for the MQTT module", "description": "Settings for the MQTT module",
"enabled": { "enabled": {
"label": "Enabled", "label": "Увімкнено",
"description": "Enable or disable MQTT" "description": "Enable or disable MQTT"
}, },
"address": { "address": {
@ -279,16 +279,16 @@
"metric_m200": "Within 200 m", "metric_m200": "Within 200 m",
"metric_m90": "Within 90 m", "metric_m90": "Within 90 m",
"metric_m50": "Within 50 m", "metric_m50": "Within 50 m",
"imperial_mi15": "Within 15 miles", "imperial_mi15": "У межах 15 миль",
"imperial_mi7_3": "Within 7.3 miles", "imperial_mi7_3": "У межах 7,3 милі",
"imperial_mi3_6": "Within 3.6 miles", "imperial_mi3_6": "У межах 3,6 милі",
"imperial_mi1_8": "Within 1.8 miles", "imperial_mi1_8": "У межах 1,8 милі",
"imperial_mi0_9": "Within 0.9 miles", "imperial_mi0_9": "У межах 0,9 милі",
"imperial_mi0_5": "Within 0.5 miles", "imperial_mi0_5": "У межах 0,5 милі",
"imperial_mi0_2": "Within 0.2 miles", "imperial_mi0_2": "У межах 0,2 милі",
"imperial_ft600": "Within 600 feet", "imperial_ft600": "У межах 600 фт",
"imperial_ft300": "Within 300 feet", "imperial_ft300": "У межах 300 фт",
"imperial_ft150": "Within 150 feet" "imperial_ft150": "У межах 150 фт"
} }
} }
} }
@ -297,7 +297,7 @@
"title": "Neighbor Info Settings", "title": "Neighbor Info Settings",
"description": "Settings for the Neighbor Info module", "description": "Settings for the Neighbor Info module",
"enabled": { "enabled": {
"label": "Enabled", "label": "Увімкнено",
"description": "Enable or disable Neighbor Info Module" "description": "Enable or disable Neighbor Info Module"
}, },
"updateInterval": { "updateInterval": {
@ -365,7 +365,7 @@
"description": "The serial baud rate" "description": "The serial baud rate"
}, },
"timeout": { "timeout": {
"label": "Timeout", "label": "Таймаут",
"description": "Seconds to wait before we consider your packet as 'done'" "description": "Seconds to wait before we consider your packet as 'done'"
}, },
"mode": { "mode": {

2
packages/web/public/i18n/locales/uk-UA/nodes.json

@ -10,7 +10,7 @@
"label": "Direct Message {{shortName}}" "label": "Direct Message {{shortName}}"
}, },
"favorite": { "favorite": {
"label": "Favorite", "label": "Обране",
"tooltip": "Add or remove this node from your favorites" "tooltip": "Add or remove this node from your favorites"
}, },
"notFavorite": { "notFavorite": {

54
packages/web/public/i18n/locales/uk-UA/ui.json

@ -25,14 +25,14 @@
"firmware": { "firmware": {
"title": "Прошивка", "title": "Прошивка",
"version": "v{{version}}", "version": "v{{version}}",
"buildDate": "Build date: {{date}}" "buildDate": "Дата збірки: {{date}}"
}, },
"deviceName": { "deviceName": {
"title": "Device Name", "title": "Назва пристрою",
"changeName": "Change Device Name", "changeName": "Змінити назву пристрою",
"placeholder": "Enter device name" "placeholder": "Уведіть назву пристрою"
}, },
"editDeviceName": "Edit device name" "editDeviceName": "Змінити назву пристрою"
} }
}, },
"batteryStatus": { "batteryStatus": {
@ -41,13 +41,13 @@
"title": "Батарея" "title": "Батарея"
}, },
"search": { "search": {
"nodes": "Search nodes...", "nodes": "Пошук вузлів...",
"channels": "Search channels...", "channels": "Пошук каналів...",
"commandPalette": "Search commands..." "commandPalette": "Пошук команд..."
}, },
"toast": { "toast": {
"positionRequestSent": { "positionRequestSent": {
"title": "Position request sent." "title": "Запит на позицію надіслано."
}, },
"requestingPosition": { "requestingPosition": {
"title": "Requesting position, please wait..." "title": "Requesting position, please wait..."
@ -63,14 +63,14 @@
}, },
"messages": { "messages": {
"pkiEncryption": { "pkiEncryption": {
"title": "Chat is using PKI encryption." "title": "Чат використовує шифрування PKI."
}, },
"pskEncryption": { "pskEncryption": {
"title": "Chat is using PSK encryption." "title": "Чат використовує PSK шифрування."
} }
}, },
"configSaveError": { "configSaveError": {
"title": "Error Saving Config", "title": "Помилка збереження налаштувань",
"description": "An error occurred while saving the configuration." "description": "An error occurred while saving the configuration."
}, },
"validationError": { "validationError": {
@ -87,7 +87,7 @@
"added": "Додано", "added": "Додано",
"removed": "Видалено", "removed": "Видалено",
"to": "до", "to": "до",
"from": "from" "from": "від"
} }
}, },
"ignoreNode": { "ignoreNode": {
@ -96,7 +96,7 @@
"added": "Додано", "added": "Додано",
"removed": "Видалено", "removed": "Видалено",
"to": "до", "to": "до",
"from": "from" "from": "від"
} }
} }
}, },
@ -105,13 +105,13 @@
"label": "Скопійовано!" "label": "Скопійовано!"
}, },
"copyToClipboard": { "copyToClipboard": {
"label": "Copy to clipboard" "label": "Копіювати до буфера обміну"
}, },
"hidePassword": { "hidePassword": {
"label": "Hide password" "label": "Приховати пароль"
}, },
"showPassword": { "showPassword": {
"label": "Show password" "label": "Показати пароль"
}, },
"deliveryStatus": { "deliveryStatus": {
"delivered": "Доставлено", "delivered": "Доставлено",
@ -130,7 +130,7 @@
"label": "Метрики" "label": "Метрики"
}, },
"role": { "role": {
"label": "Role" "label": "Роль"
}, },
"filter": { "filter": {
"label": "Фільтри" "label": "Фільтри"
@ -142,7 +142,7 @@
"label": "Clear input" "label": "Clear input"
}, },
"resetFilters": { "resetFilters": {
"label": "Reset Filters" "label": "Скинути фільтри"
}, },
"nodeName": { "nodeName": {
"label": "Node name/number", "label": "Node name/number",
@ -152,11 +152,11 @@
"label": "Airtime Utilization (%)" "label": "Airtime Utilization (%)"
}, },
"batteryLevel": { "batteryLevel": {
"label": "Battery level (%)", "label": "Рівень заряду батареї (%)",
"labelText": "Battery level (%): {{value}}" "labelText": "Рівень заряду батареї (%): {{value}}"
}, },
"batteryVoltage": { "batteryVoltage": {
"label": "Battery voltage (V)", "label": "Напруга батареї (В)",
"title": "Напруга" "title": "Напруга"
}, },
"channelUtilization": { "channelUtilization": {
@ -176,7 +176,7 @@
"label": "SNR (дБ)" "label": "SNR (дБ)"
}, },
"favorites": { "favorites": {
"label": "Favorites" "label": "Обране"
}, },
"hide": { "hide": {
"label": "Сховати" "label": "Сховати"
@ -185,7 +185,7 @@
"label": "Show Only" "label": "Show Only"
}, },
"viaMqtt": { "viaMqtt": {
"label": "Connected via MQTT" "label": "Під'єднано за допомогою MQTT"
}, },
"hopsUnknown": { "hopsUnknown": {
"label": "Unknown number of hops" "label": "Unknown number of hops"
@ -214,8 +214,8 @@
"step3": "What actually happened", "step3": "What actually happened",
"step4": "Any other relevant information" "step4": "Any other relevant information"
}, },
"reportLink": "You can report the issue to our <0>GitHub</0>", "reportLink": "Ви можете повідомити про проблему на нашому <0>GitHub</0>",
"dashboardLink": "Return to the <0>dashboard</0>", "dashboardLink": "Поверніться до <0>панелі</0>",
"detailsSummary": "Інформація про помилку", "detailsSummary": "Інформація про помилку",
"errorMessageLabel": "Помилка:", "errorMessageLabel": "Помилка:",
"stackTraceLabel": "Stack trace:", "stackTraceLabel": "Stack trace:",
@ -223,6 +223,6 @@
}, },
"footer": { "footer": {
"text": "Powered by <0>▲ Vercel</0> | Meshtastic® is a registered trademark of Meshtastic LLC. | <1>Legal Information</1>", "text": "Powered by <0>▲ Vercel</0> | Meshtastic® is a registered trademark of Meshtastic LLC. | <1>Legal Information</1>",
"commitSha": "Commit SHA: {{sha}}" "commitSha": "SHA коміту: {{sha}}"
} }
} }

97
packages/web/public/i18n/locales/zh-CN/commandPalette.json

@ -1,50 +1,51 @@
{ {
"emptyState": "No results found.", "emptyState": "No results found.",
"page": { "page": {
"title": "Command Menu" "title": "Command Menu"
}, },
"pinGroup": { "pinGroup": {
"label": "Pin command group" "label": "Pin command group"
}, },
"unpinGroup": { "unpinGroup": {
"label": "Unpin command group" "label": "Unpin command group"
}, },
"goto": { "goto": {
"label": "Goto", "label": "Goto",
"command": { "command": {
"messages": "消息", "messages": "消息",
"map": "地图", "map": "地图",
"config": "配置", "config": "配置",
"channels": "频道", "channels": "频道",
"nodes": "节点" "nodes": "节点"
} }
}, },
"manage": { "manage": {
"label": "Manage", "label": "Manage",
"command": { "command": {
"switchNode": "Switch Node", "switchNode": "Switch Node",
"connectNewNode": "Connect New Node" "connectNewNode": "Connect New Node"
} }
}, },
"contextual": { "contextual": {
"label": "Contextual", "label": "Contextual",
"command": { "command": {
"qrCode": "QR Code", "qrCode": "QR Code",
"qrGenerator": "Generator", "qrGenerator": "Generator",
"qrImport": "导入", "qrImport": "导入",
"scheduleShutdown": "Schedule Shutdown", "scheduleShutdown": "Schedule Shutdown",
"scheduleReboot": "Schedule Reboot", "scheduleReboot": "Schedule Reboot",
"rebootToOtaMode": "Reboot To OTA Mode", "rebootToOtaMode": "Reboot To OTA Mode",
"resetNodeDb": "Reset Node DB", "resetNodeDb": "Reset Node DB",
"factoryResetDevice": "Factory Reset Device", "factoryResetDevice": "Factory Reset Device",
"factoryResetConfig": "Factory Reset Config" "factoryResetConfig": "Factory Reset Config",
} "disconnect": "断开"
}, }
"debug": { },
"label": "调试", "debug": {
"command": { "label": "调试",
"reconfigure": "Reconfigure", "command": {
"clearAllStoredMessages": "Clear All Stored Message" "reconfigure": "Reconfigure",
} "clearAllStoredMessages": "Clear All Stored Message"
} }
}
} }

4
packages/web/public/i18n/locales/zh-CN/common.json

@ -8,14 +8,14 @@
"confirm": "Confirm", "confirm": "Confirm",
"delete": "删除", "delete": "删除",
"dismiss": "收起键盘", "dismiss": "收起键盘",
"download": "Download", "download": "下载",
"export": "Export", "export": "Export",
"generate": "Generate", "generate": "Generate",
"regenerate": "Regenerate", "regenerate": "Regenerate",
"import": "导入", "import": "导入",
"message": "信息", "message": "信息",
"now": "Now", "now": "Now",
"ok": "好的", "ok": "确定",
"print": "Print", "print": "Print",
"rebootOtaNow": "Reboot to OTA Mode Now", "rebootOtaNow": "Reboot to OTA Mode Now",
"remove": "移除", "remove": "移除",

23
packages/web/public/i18n/locales/zh-CN/dialog.json

@ -7,7 +7,13 @@
"description": "The Device will restart once the config is saved.", "description": "The Device will restart once the config is saved.",
"longName": "长名称", "longName": "长名称",
"shortName": "短名称", "shortName": "短名称",
"title": "Change Device Name" "title": "Change Device Name",
"validation": {
"longNameMax": "Long name must not be more than 40 characters",
"shortNameMax": "Short name must not be more than 4 characters",
"longNameMin": "Long name must have at least 1 character",
"shortNameMin": "Short name must have at least 1 character"
}
}, },
"import": { "import": {
"description": "The current LoRa configuration will be overridden.", "description": "The current LoRa configuration will be overridden.",
@ -21,9 +27,10 @@
"title": "Import Channel Set" "title": "Import Channel Set"
}, },
"locationResponse": { "locationResponse": {
"title": "Location: {{identifier}}",
"altitude": "Altitude: ", "altitude": "Altitude: ",
"coordinates": "Coordinates: ", "coordinates": "Coordinates: ",
"title": "Location: {{identifier}}" "noCoordinates": "No Coordinates"
}, },
"pkiRegenerateDialog": { "pkiRegenerateDialog": {
"title": "Regenerate Pre-Shared Key?", "title": "Regenerate Pre-Shared Key?",
@ -60,11 +67,15 @@
}, },
"bluetoothConnection": { "bluetoothConnection": {
"noDevicesPaired": "No devices paired yet.", "noDevicesPaired": "No devices paired yet.",
"newDeviceButton": "New device" "newDeviceButton": "New device",
"connectionFailed": "Connection failed",
"deviceDisconnected": "Device disconnected",
"unknownDevice": "Unknown Device",
"errorLoadingDevices": "Error loading devices",
"unknownErrorLoadingDevices": "Unknown error loading devices"
}, },
"validation": { "validation": {
"requiresWebBluetooth": "This connection type requires <0>Web Bluetooth</0>. Please use a supported browser, like Chrome or Edge.", "requiresFeatures": "This connection type requires <0></0>. Please use a supported browser, like Chrome or Edge.",
"requiresWebSerial": "This connection type requires <0>Web Serial</0>. Please use a supported browser, like Chrome or Edge.",
"requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.", "requiresSecureContext": "This application requires a <0>secure context</0>. Please connect using HTTPS or localhost.",
"additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost." "additionallyRequiresSecureContext": "Additionally, it requires a <0>secure context</0>. Please connect using HTTPS or localhost."
} }
@ -166,6 +177,6 @@
"managedMode": { "managedMode": {
"confirmUnderstanding": "Yes, I know what I'm doing", "confirmUnderstanding": "Yes, I know what I'm doing",
"title": "是否确认?", "title": "是否确认?",
"description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can <bold>only</bold> be changed through Remote Admin messages. This setting is not required for remote node administration." "description": "Enabling Managed Mode blocks client applications (including the web client) from writing configurations to a radio. Once enabled, radio configurations can only be changed through Remote Admin messages. This setting is not required for remote node administration."
} }
} }

Loading…
Cancel
Save