mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-07 00:09:51 +03:00
Update FR translations
This commit is contained in:
@@ -24,6 +24,7 @@ import { ReactComponent as GBflag } from './i18n/GB.svg';
|
||||
import { ReactComponent as SEflag } from './i18n/SE.svg';
|
||||
import { ReactComponent as PLflag } from './i18n/PL.svg';
|
||||
import { ReactComponent as NOflag } from './i18n/NO.svg';
|
||||
import { ReactComponent as FRflag } from './i18n/FR.svg';
|
||||
|
||||
const SignIn: FC = () => {
|
||||
const authenticationContext = useContext(AuthenticationContext);
|
||||
@@ -133,6 +134,10 @@ const SignIn: FC = () => {
|
||||
<NOflag style={{ width: 24 }} />
|
||||
NO
|
||||
</Button>
|
||||
<Button size="small" variant={locale === 'fr' ? 'contained' : 'outlined'} onClick={() => selectLocale('fr')}>
|
||||
<FRflag style={{ width: 24 }} />
|
||||
FR
|
||||
</Button>
|
||||
</Box>
|
||||
|
||||
<ValidatedTextField
|
||||
|
||||
@@ -29,6 +29,7 @@ import { ReactComponent as GBflag } from '../../i18n/GB.svg';
|
||||
import { ReactComponent as SEflag } from '../../i18n/SE.svg';
|
||||
import { ReactComponent as PLflag } from '../../i18n/PL.svg';
|
||||
import { ReactComponent as NOflag } from '../../i18n/NO.svg';
|
||||
import { ReactComponent as FRflag } from '../../i18n/FR.svg';
|
||||
|
||||
const ItemTypography = styled(Typography)<TypographyProps>({
|
||||
maxWidth: '250px',
|
||||
@@ -97,6 +98,10 @@ const LayoutAuthMenu: FC = () => {
|
||||
<NOflag style={{ width: 16, verticalAlign: 'middle' }} />
|
||||
NO
|
||||
</MenuItem>
|
||||
<MenuItem key="fr" value="fr">
|
||||
<FRflag style={{ width: 16, verticalAlign: 'middle' }} />
|
||||
FR
|
||||
</MenuItem>
|
||||
</TextField>
|
||||
|
||||
<IconButton
|
||||
|
||||
@@ -13,14 +13,14 @@ const fr: Translation = {
|
||||
PASSWORD: 'Mot de passe',
|
||||
SU_PASSWORD: 'Mot de passe su',
|
||||
DASHBOARD: 'Tableau de bord',
|
||||
SETTINGS_OF: '{0} Paramètres',
|
||||
SETTINGS_OF: 'Paramètres {0}',
|
||||
SAVED: 'sauvegardé',
|
||||
HELP_OF: '{0} Aide',
|
||||
HELP_OF: 'Aide {0}',
|
||||
LOGGED_IN: 'Connecté en tant que {name}',
|
||||
PLEASE_SIGNIN: 'Veuillez vous connecter pour continuer',
|
||||
UPLOAD_SUCCESSFUL: 'Upload terminée',
|
||||
DOWNLOAD_SUCCESSFUL: 'Download finished',
|
||||
INVALID_LOGIN: 'Invalid login details',
|
||||
DOWNLOAD_SUCCESSFUL: 'Téléchargement terminé',
|
||||
INVALID_LOGIN: 'Informations de connexion invalides',
|
||||
NETWORK: 'Réseau',
|
||||
SECURITY: 'Sécurité',
|
||||
ONOFF_CAP: 'ON/OFF',
|
||||
@@ -29,23 +29,23 @@ const fr: Translation = {
|
||||
DESCRIPTION: 'Description',
|
||||
ENTITIES: 'Entités',
|
||||
REFRESH: 'Rafraîchir',
|
||||
EXPORT: 'Export',
|
||||
EXPORT: 'Exporter',
|
||||
DEVICE_DETAILS: 'Détails de l\'appareil',
|
||||
ID_OF: '{0} ID',
|
||||
ID_OF: 'ID {0}',
|
||||
DEVICE: 'Appareil',
|
||||
PRODUCT: 'Produit',
|
||||
VERSION: 'Version',
|
||||
BRAND: 'Marque',
|
||||
ENTITY_NAME: 'Entity Name',
|
||||
ENTITY_NAME: 'Nom de l\'entité',
|
||||
VALUE: 'Valeur',
|
||||
SHOW_FAV: 'no montrer que les favoris',
|
||||
SHOW_FAV: 'ne montrer que les favoris',
|
||||
DEVICE_SENSOR_DATA: 'Données des appareils et capteurs',
|
||||
DEVICES_SENSORS: 'Appareils et capteurs',
|
||||
ATTACHED_SENSORS: 'Attached EMS-ESP Sensors',
|
||||
RUN_COMMAND: 'Call Command',
|
||||
CHANGE_VALUE: 'Change Value',
|
||||
ATTACHED_SENSORS: 'Capteurs EMS-ESP connectés',
|
||||
RUN_COMMAND: 'Lancer une commande',
|
||||
CHANGE_VALUE: 'Changer la valeur',
|
||||
CANCEL: 'Annuler',
|
||||
RESET: 'Reset',
|
||||
RESET: 'Réinitialiser',
|
||||
SEND: 'Envoyer',
|
||||
SAVE: 'Sauvegarder',
|
||||
REMOVE: 'Enlever',
|
||||
@@ -54,14 +54,14 @@ const fr: Translation = {
|
||||
ACCESS_DENIED: 'Accès refusé',
|
||||
ANALOG_SENSOR: 'Capteur analogique',
|
||||
ANALOG_SENSORS: 'Capteurs analogiques',
|
||||
UPDATED_OF: '{0} Updated',
|
||||
UPDATE_OF: '{0} Update',
|
||||
REMOVED_OF: '{0} Removed',
|
||||
DELETION_OF: '{0} Deletion',
|
||||
UPDATED_OF: '{0} mis à jour',
|
||||
UPDATE_OF: 'Mise à jour de {0}',
|
||||
REMOVED_OF: '{0} enlevé',
|
||||
DELETION_OF: '{0} supprimé',
|
||||
OFFSET: 'Offset',
|
||||
FACTOR: 'Facteur',
|
||||
FREQ: 'Fréquence',
|
||||
DUTY_CYCLE: 'Duty Cycle',
|
||||
DUTY_CYCLE: 'Cycle de fonctionnement',
|
||||
UNIT: 'Unité',
|
||||
STARTVALUE: 'Valeur de départ',
|
||||
WARN_GPIO: 'Attention: soyez vigilant en choisissant un GPIO!',
|
||||
@@ -69,43 +69,43 @@ const fr: Translation = {
|
||||
SENSOR: 'Capteur',
|
||||
TEMP_SENSOR: 'Capteur de température',
|
||||
TEMP_SENSORS: 'Capteurs de température',
|
||||
WRITE_COMMAND: 'Write command {cmd}',
|
||||
WRITE_COMMAND: 'Envoyer la commande {cmd}',
|
||||
EMS_BUS_WARNING: 'Bus EMS déconnecté. Si ce message persiste après quelques secondes, vérifiez les paramètres et la configuration de la carte.',
|
||||
EMS_BUS_SCANNING: 'Scan des appareils EMS...',
|
||||
CONNECTED: 'Connecté',
|
||||
TX_ISSUES: 'Tx issues - try a different Tx Mode',
|
||||
TX_ISSUES: 'Problèmes de transmission (Tx) - Essayez un autre mode Tx',
|
||||
DISCONNECTED: 'Déconnecté',
|
||||
EMS_SCAN: 'Etes-vous sûr de vouloir lancer un scan complet du bus EMS ?',
|
||||
EMS_BUS_STATUS: 'Statut du bus EMS',
|
||||
ACTIVE_DEVICES: 'Appareils et capteurs actifs',
|
||||
EMS_DEVICE: 'Appareils EMS',
|
||||
SUCCESS: 'SUCCèS',
|
||||
SUCCESS: 'SUCCÈS',
|
||||
FAIL: 'ÉCHEC',
|
||||
QUALITY: 'QUALITÉ',
|
||||
SCAN_DEVICES: 'Rechercher de nouveaux appareils',
|
||||
EMS_BUS_STATUS_TITLE: 'EMS Bus & Activity Status',
|
||||
EMS_BUS_STATUS_TITLE: 'Statut du bus et de l\'activité EMS',
|
||||
SCAN: 'Scan',
|
||||
STATUS_NAMES: [
|
||||
'EMS Telegrams Received (Rx)',
|
||||
'EMS Reads (Tx)',
|
||||
'EMS Writes (Tx)',
|
||||
'Temperature Sensor Reads',
|
||||
'Analog Sensor Reads',
|
||||
'MQTT Publishes',
|
||||
'API Calls',
|
||||
'Syslog Messages'
|
||||
'Télégrammes EMS reçus (Rx)',
|
||||
'Lectures EMS (Tx)',
|
||||
'Écritures EMS (Tx)',
|
||||
'Lectures capteurs de température',
|
||||
'Lectures capteurs analogiques',
|
||||
'Publications MQTT',
|
||||
'Appels à l\'API',
|
||||
'Messages Syslog'
|
||||
],
|
||||
NUM_DEVICES: '{num} Device{{s}}',
|
||||
NUM_TEMP_SENSORS: '{num} Temperature Sensor{{s}}',
|
||||
NUM_ANALOG_SENSORS: '{num} Analog Sensor{{s}}',
|
||||
NUM_DAYS: '{num} day{{s}}',
|
||||
NUM_SECONDS: '{num} second{{s}}',
|
||||
NUM_HOURS: '{num} hour{{s}}',
|
||||
NUM_DEVICES: '{num} Appareil{{s}}',
|
||||
NUM_TEMP_SENSORS: '{num} Capteur{{s}} de température',
|
||||
NUM_ANALOG_SENSORS: '{num} Capteur{{s}} analogique{{s}}',
|
||||
NUM_DAYS: '{num} jour{{s}}',
|
||||
NUM_SECONDS: '{num} seconde{{s}}',
|
||||
NUM_HOURS: '{num} heure{{s}}',
|
||||
NUM_MINUTES: '{num} minute{{s}}',
|
||||
APPLICATION_SETTINGS: 'Application Settings',
|
||||
CUSTOMIZATION: 'Customization',
|
||||
APPLICATION_RESTARTING: 'EMS-ESP is restarting',
|
||||
INTERFACE_BOARD_PROFILE: 'Interface Board Profile',
|
||||
APPLICATION_SETTINGS: 'Paramètres de l\'application',
|
||||
CUSTOMIZATION: 'Personnalisation',
|
||||
APPLICATION_RESTARTING: 'EMS-ESP redémarre',
|
||||
INTERFACE_BOARD_PROFILE: 'Profile de carte d\'interface',
|
||||
BOARD_PROFILE_TEXT: 'Sélectionnez un profil de carte d\'interface préconfiguré dans la liste ci-dessous ou choisissez Personnalisé pour configurer vos propres paramètres matériels',
|
||||
BOARD_PROFILE: 'Profil de carte',
|
||||
CUSTOM: 'Personnalisé',
|
||||
@@ -179,7 +179,7 @@ const fr: Translation = {
|
||||
SUCCESSFUL: 'réussi',
|
||||
SYSTEM: 'Système',
|
||||
LOG_OF: '{0} Log',
|
||||
STATUS_OF: '{0} Status',
|
||||
STATUS_OF: 'Statut {0}',
|
||||
UPLOAD_DOWNLOAD: 'Upload/Download',
|
||||
SYSTEM_VERSION_RUNNING: 'Vous utilisez actuellement la version',
|
||||
SYSTEM_APPLY_FIRMWARE: 'pour appliquer le nouveau firmware',
|
||||
@@ -214,7 +214,7 @@ const fr: Translation = {
|
||||
ERROR: 'Erreur inattendue, veuillez réessayer',
|
||||
TIME_SET: 'Time set',
|
||||
MANAGE_USERS: 'Gérer les utilisateurs',
|
||||
IS_ADMIN: 'est administrateur',
|
||||
IS_ADMIN: 'admin',
|
||||
USER_WARNING: 'Vous devez avoir au moins un utilisateur admin configuré',
|
||||
ADD: 'Ajouter',
|
||||
ACCESS_TOKEN_FOR: 'Jeton d\'accès pour',
|
||||
@@ -224,30 +224,30 @@ const fr: Translation = {
|
||||
MODIFY: 'Modifier',
|
||||
SU_TEXT: 'Le mot de passe su (super utilisateur) est utilisé pour signer les jetons d\'authentification et activer les privilèges d\'administrateur dans la console.',
|
||||
NOT_ENABLED: 'Non activé',
|
||||
ERRORS_OF: 'Erreurs de {0}',
|
||||
ERRORS_OF: 'Erreurs {0}',
|
||||
DISCONNECT_REASON: 'Raison de la déconnexion',
|
||||
ENABLE_MQTT: 'Activer le MQTT',
|
||||
BROKER: 'Broker',
|
||||
CLIENT: 'Client',
|
||||
BASE_TOPIC: 'Base',
|
||||
OPTIONAL: 'Optional',
|
||||
FORMATTING: 'Formatting',
|
||||
MQTT_FORMAT: 'Topic/Payload Format',
|
||||
MQTT_NEST_1: 'Nested in a single topic',
|
||||
MQTT_NEST_2: 'As individual topics',
|
||||
MQTT_RESPONSE: 'Publish command output to a `response` topic',
|
||||
MQTT_PUBLISH_TEXT_1: 'Publish single value topics on change',
|
||||
MQTT_PUBLISH_TEXT_2: 'Publish to command topics (ioBroker)',
|
||||
MQTT_PUBLISH_TEXT_3: 'Enable MQTT Discovery (Home Assistant, Domoticz)',
|
||||
MQTT_PUBLISH_TEXT_4: 'Prefix for the Discovery topics',
|
||||
OPTIONAL: 'Optionnel',
|
||||
FORMATTING: 'Mise en forme',
|
||||
MQTT_FORMAT: 'Format du Topic/Payload',
|
||||
MQTT_NEST_1: 'Englobé dans un topic unique',
|
||||
MQTT_NEST_2: 'En tant que topics individuels',
|
||||
MQTT_RESPONSE: 'Publier le résultat des commandes dans un topic `response`',
|
||||
MQTT_PUBLISH_TEXT_1: 'Publier des topics à valeur unique sur changement',
|
||||
MQTT_PUBLISH_TEXT_2: 'Publier vers des topics de commande (ioBroker)',
|
||||
MQTT_PUBLISH_TEXT_3: 'Activer la découverte MQTT (Home Assistant, Domoticz)',
|
||||
MQTT_PUBLISH_TEXT_4: 'Préfixe pour les topics découverte',
|
||||
MQTT_PUBLISH_INTERVALS: 'Intervalles de publication',
|
||||
MQTT_INT_BOILER: 'Chaudières et pompes à chaleur',
|
||||
MQTT_INT_THERMOSTATS: 'Thermostats',
|
||||
MQTT_INT_SOLAR: 'Solar Modules',
|
||||
MQTT_INT_MIXER: 'Mixer Modules',
|
||||
MQTT_QUEUE: 'MQTT Queue',
|
||||
DEFAULT: 'Defaut',
|
||||
MQTT_CLEAN_SESSION: 'Set Clean Session',
|
||||
MQTT_INT_SOLAR: 'Modules solaires',
|
||||
MQTT_INT_MIXER: 'Modules mélangeurs',
|
||||
MQTT_QUEUE: 'Queue MQTT',
|
||||
DEFAULT: 'Défaut',
|
||||
MQTT_CLEAN_SESSION: 'Flag Clean Session',
|
||||
MQTT_RETAIN_FLAG: 'Toujours activer le Retain Flag',
|
||||
INACTIVE: 'Inactif',
|
||||
ACTIVE: 'Actif',
|
||||
@@ -273,7 +273,7 @@ const fr: Translation = {
|
||||
IDLE: 'Inactif',
|
||||
LOST: 'Perdu',
|
||||
SCANNING: 'Scan en cours',
|
||||
SCAN_AGAIN: 'Re-scanner',
|
||||
SCAN_AGAIN: 'Rescanner',
|
||||
NETWORK_SCANNER: 'Scan réseau',
|
||||
NETWORK_NO_WIFI: 'Pas de réseau WiFi trouvé',
|
||||
NETWORK_BLANK_SSID: 'laisser vide pour désactiver le WiFi',
|
||||
|
||||
@@ -367,6 +367,7 @@ const SettingsApplication: FC = () => {
|
||||
<MenuItem value="se">Svenska (SE)</MenuItem>
|
||||
<MenuItem value="pl">Polski (PL)</MenuItem>
|
||||
<MenuItem value="no">Norsk (NO)</MenuItem>
|
||||
<MenuItem value="fr">Norsk (FR)</MenuItem>
|
||||
</ValidatedTextField>
|
||||
</Box>
|
||||
{data.led_gpio !== 0 && (
|
||||
|
||||
Reference in New Issue
Block a user